<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">#main_nav .menu_link,#search_form .field.search_button input{-moz-transition-property:background-color;-o-transition-property:background-color}.checkbox__text,caption,td,th{text-align:left}.ordered-list,.ugc ol{counter-reset:ol-counter}.ordered-list,ol,ul{list-style:none}.card__tag,.contact-details__icon,.footer__logo,.grid__item--align-start{-ms-flex-item-align:start;align-self:flex-start}.custom-select__arrow,.input-upload__label *,.modal__dialog,.slick-slide.dragging img{pointer-events:none}.slick-loading .slick-slide,.slick-loading .slick-track{visibility:hidden}#family_story_listing .article_stub_image_wrapper,.key_message_image,.main_image_wrapper{-ms-behavior:asset-url(../images/vendor/backgroundsize.min.htc)}#main_flash,a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}html{line-height:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}table{border-collapse:collapse;border-spacing:0}caption,td,th{font-weight:400;vertical-align:middle}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}a img{border:none}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}#basket_popup #basket_popup_link,#donate_block .button,#donate_reasons .button,#overview_container .button,#product_variations .button,.basic_form .button,.key_message_wrapper .button,.link_block_detail .button,.no_user_fields #proceed_as_guest .button,.page-text .button{-webkit-box-sizing:border-box;box-sizing:border-box;background-image:url(../images/icons/arrow_right.png);font-size:1.11111em;line-height:1.5em;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);background-position:right 30px center;background-repeat:no-repeat;display:inline-block;position:relative;width:100%;height:58px;border:none;margin:0;padding:0;cursor:pointer;background-color:#25408f;color:#fff}#event_basket_popup .button,#event_gallery .more_cta,.event_image_basket .checkout_cta{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.25);-moz-box-shadow:0 5px 10px rgba(0,0,0,.25)}#basket_popup .svg #basket_popup_link,#donate_block .svg .button,#donate_reasons .svg .button,#overview_container .svg .button,#product_variations .svg .button,.basic_form .svg .button,.key_message_wrapper .svg .button,.link_block_detail .svg .button,.no_user_fields #proceed_as_guest .svg .button,.page-text .svg .button,.svg #basket_popup #basket_popup_link,.svg #donate_block .button,.svg #donate_reasons .button,.svg #overview_container .button,.svg #product_variations .button,.svg .basic_form .button,.svg .key_message_wrapper .button,.svg .link_block_detail .button,.svg .no_user_fields #proceed_as_guest .button,.svg .page-text .button{background-image:url(../images/icons/arrow_right.svg);background-size:15px auto}#basket_popup #basket_popup_link span.btn_icon,#donate_block .button span.btn_icon,#donate_reasons .button span.btn_icon,#overview_container .button span.btn_icon,#product_variations .button span.btn_icon,.basic_form .button span.btn_icon,.key_message_wrapper .button span.btn_icon,.link_block_detail .button span.btn_icon,.no_user_fields #proceed_as_guest .button span.btn_icon,.page-text .button span.btn_icon{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition-property:background-color;transition-property:background-color;-webkit-transition-duration:.2s;transition-duration:.2s;background-color:#00aeef;width:calc(100% - 80px);padding:14px 0 16px 16px;display:inline-block;margin:0;position:absolute;top:0;left:0;height:100%;text-align:left}#basket_popup #basket_popup_link:hover span.btn_icon,#donate_block .button:hover span.btn_icon,#donate_reasons .button:hover span.btn_icon,#overview_container .button:hover span.btn_icon,#product_variations .button:hover span.btn_icon,.basic_form .button:hover span.btn_icon,.key_message_wrapper .button:hover span.btn_icon,.link_block_detail .button:hover span.btn_icon,.no_user_fields #proceed_as_guest .button:hover span.btn_icon,.page-text .button:hover span.btn_icon{background-color:#0176aa}#account_form .button,#article_tag_filter .button,#donate_reasons .button,#donation_form .button,#login_form .button,#main_checkout_form .button,#password_reset_form .button,#product_variations .button,#submit_event .button,#volunteer_form .button,.basic_form .input_btn{background-position:top right;background-repeat:no-repeat;background-color:#00aeef}#account_form .svg .button,#article_tag_filter .svg .button,#donate_reasons .svg .button,#donation_form .svg .button,#login_form .svg .button,#main_checkout_form .svg .button,#password_reset_form .svg .button,#product_variations .svg .button,#submit_event .svg .button,#volunteer_form .svg .button,.basic_form .svg .input_btn,.svg #account_form .button,.svg #article_tag_filter .button,.svg #donate_reasons .button,.svg #donation_form .button,.svg #login_form .button,.svg #main_checkout_form .button,.svg #password_reset_form .button,.svg #product_variations .button,.svg #submit_event .button,.svg #volunteer_form .button,.svg .basic_form .input_btn{background-image:url(../images/icons/input_btn_arrow_right.png);background-size:90px 60px;padding-right:90px}#account_form .button:hover,#article_tag_filter .button:hover,#donate_reasons .button:hover,#donation_form .button:hover,#login_form .button:hover,#main_checkout_form .button:hover,#password_reset_form .button:hover,#product_variations .button:hover,#submit_event .button:hover,#volunteer_form .button:hover,.basic_form .input_btn:hover{background-color:#0176aa}#event_basket_popup .button,.event_image_basket .checkout_cta{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.25);box-shadow:0 5px 10px rgba(0,0,0,.25);-webkit-box-sizing:border-box;box-sizing:border-box;font-size:.77778em;line-height:2.14286em;display:block;position:relative;background-color:#25408f;color:#fff;padding:1.07143em 75px 1.07143em 15px;margin-left:auto;margin-right:auto;text-decoration:none}#event_basket_popup .button:after,.event_image_basket .checkout_cta:after{font-size:4.57143em;line-height:.9375em;background-image:url(../images/icons/arrow_right.png);content:"";position:absolute;height:100%;width:60px;top:0;right:0;background-color:#00aeef;background-position:center center;background-repeat:no-repeat}.checkbox,.slick-list,.slick-slider,.slick-track{position:relative}#event_basket_popup .svg .button:after,.event_image_basket .svg .checkout_cta:after,.svg #event_basket_popup .button:after,.svg .event_image_basket .checkout_cta:after{background-image:url(../images/icons/arrow_right.svg);background-size:image-width("../images/icons/arrow_right.png")}#event_basket_popup .button:focus,#event_basket_popup .button:hover,.event_image_basket .checkout_cta:focus,.event_image_basket .checkout_cta:hover{background-color:#00649d}#family_story_listing .article_stub_item.blue,.key_message_info.blue,.link_block_content.blue,.shop-online #outer_wrapper{background-color:#00aeef;filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF00AEEF', endColorstr='#FF25408F');-pie-background:-pie-linear-gradient(top,#00aeef 40%,#25408f 100%);background:-webkit-gradient(linear,left top, left bottom,color-stop(40%, #00aeef),to(#25408f));background:linear-gradient(top,#00aeef 40%,#25408f 100%)}#family_story_listing .article_stub_item.yellow,.key_message_info.yellow,.link_block_content.yellow,.volunteer #outer_wrapper{background-color:#fff33e;filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFFFF33E', endColorstr='#FFFFAC12');-pie-background:-pie-linear-gradient(top,#fff33e 40%,#ffac12 100%);background:-webkit-gradient(linear,left top, left bottom,color-stop(40%, #fff33e),to(#ffac12));background:linear-gradient(top,#fff33e 40%,#ffac12 100%)}#back_to_wrapper,#contact_us_link_wrapper,#family_story_listing .article_stub_item.red,#text_footer,.enewsletter_wrapper,.fundraising_wrapper,.search #outer_wrapper{background-color:#d2232a;filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFD2232A', endColorstr='#FF7E0000');-pie-background:-pie-linear-gradient(top,#d2232a 40%,#7e0000 100%);background:-webkit-gradient(linear,left top, left bottom,color-stop(40%, #d2232a),to(#7e0000));background:linear-gradient(top,#d2232a 40%,#7e0000 100%)}#donate_block,#family_story_listing .article_stub_item.purple,#form_wrapper,.key_message_info.purple,.link_block_content.purple{background-color:#7c51a1;filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF7C51A1', endColorstr='#FF5E3784');-pie-background:-pie-linear-gradient(top,#7c51a1 40%,#5e3784 100%);background:-webkit-gradient(linear,left top, left bottom,color-stop(40%, #7c51a1),to(#5e3784));background:linear-gradient(top,#7c51a1 40%,#5e3784 100%)}.key_message_info.green,.link_block_content.green,.quote_block_wrapper.green{background-color:#7bc143;filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF7BC143', endColorstr='#FF338122');-pie-background:-pie-linear-gradient(top,#7bc143 40%,#338122 100%);background:-webkit-gradient(linear,left top, left bottom,color-stop(40%, #7bc143),to(#338122));background:linear-gradient(top,#7bc143 40%,#338122 100%)}.key_message_info.pink,.link_block_content.pink{background-color:#e8008a;filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFE8008A', endColorstr='#FFC50076');-pie-background:-pie-linear-gradient(top,#e8008a 40%,#c50076 100%);background:-webkit-gradient(linear,left top, left bottom,color-stop(40%, #e8008a),to(#c50076));background:linear-gradient(top,#e8008a 40%,#c50076 100%)}#google_map_wrapper,.center,.extend{overflow:hidden;margin:0 auto}@media (min-width:960px){#google_map_wrapper,.center,.extend{margin-left:auto;margin-right:auto;max-width:960px}}#family_story_listing .article_stub_image_wrapper,.key_message_image,.link_block_image{background:center center no-repeat;background-size:cover}#back_to_wrapper .back_to_listing_link,#back_to_wrapper .contact_us_link,#basket_popup #basket_popup_link,#contact_us_link_wrapper .back_to_listing_link,#contact_us_link_wrapper .contact_us_link,#donate_block .button,#donate_reasons .button,#event_basket_popup .button,#event_gallery .more_cta,#overview_container .button,#product_variations .button,#site_search input,#text_footer .back_to_listing_link,#text_footer .contact_us_link,.basic_form .button,.event_image_basket .checkout_cta,.has-js .toggle_boxes .wrap_label,.has-js .toggle_boxes label.r_on,.key_message_wrapper .button,.link_block_detail .button,.no_user_fields #proceed_as_guest .button,.page-text .button{text-transform:uppercase}.basic_form input,.basic_form textarea,.ugc{font-family:"Open Sans",Arial,sans-serif;font-weight:400;font-style:normal}.wysiwyg em,.wysiwyg i,em,i{font-style:italic}.basic_form span.required,.basket_order_view tr.total_row td,.event_image_basket #collection_total_cost{font-weight:700}.slick-slider{display:block;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{overflow:hidden;display:block;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{left:0;top:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-slide{float:left;height:100%;min-height:1px;display:none}.basic_form .button--right,[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-initialized .slick-slide{display:block}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.btn,.button{-webkit-appearance:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:#00acf1;border:0;border-radius:12px;color:#fff;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:1.125rem;font-weight:600;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;line-height:24px;padding:13px 15px}.btn:hover,.button:hover{color:#fff;opacity:.8}.btn__label,.button__label{cursor:pointer}.btn--secondary,.button--secondary{background:#e6007e}.btn--secondary:hover,.button--secondary:hover{color:#fff}.btn--tertiary,.button--tertiary{background:#41a335}.btn--tertiary:hover,.button--tertiary:hover{color:#fff}.btn--subtle,.button--subtle{background:#e3f7ff;color:#0071ab}.btn--subtle:hover,.button--subtle:hover{color:#0071ab}.btn--inverse,.button--inverse{background:#fff;border:2px solid #00acf1;color:#00acf1}.btn--inverse:hover,.button--inverse:hover{color:#00acf1}.btn--has-icon,.button--has-icon{display:-webkit-box;display:-ms-flexbox;display:flex;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.btn--has-icon .btn,.btn--has-icon .button__icon,.button--has-icon .btn,.button--has-icon .button__icon{fill:#00acf1;margin-right:5px}.btn--wide,.button--wide{max-width:100%;width:240px}.btn--full,.button--full{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%}.btn--link,.button--link{background:0 0;border:0;color:#00acf1;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-weight:500;padding:0;width:auto}.btn--link:hover,.button--link:hover{color:#0088be}.btn--link:hover .btn,.btn--link:hover .button__icon,.button--link:hover .btn,.button--link:hover .button__icon{fill:#0088be}.btn--inline,.button--inline{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}@media (min-width:568px){.btn,.button{width:auto}.btn--full,.button--full{width:100%}.btn--wide,.button--wide{width:240px}}.button-group .button{margin-bottom:10px}.button-group .button+.button{margin-left:10px}.checkbox__input{opacity:0;position:absolute}.checkbox__input:checked+.checkbox__label::before{background:url(../images/interface/tick.svg) center no-repeat #00acf1}.checkbox__label{cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:1rem;line-height:1.5}.checkbox__label::before{background-color:#fff;border:2px solid #00acf1;border-radius:3px;-webkit-box-sizing:border-box;box-sizing:border-box;content:'';display:inline-block;-webkit-box-flex:0;-ms-flex:none;flex:none;height:24px;margin-right:.4375em;margin-top:.125em;width:24px}.checkbox--radio .checkbox__label::before{border-radius:50%}.checkbox__link{display:contents}.checkbox__link:hover{text-decoration:underline}.checkbox--transparent .checkbox__label::before{background:0 0;border-color:#fff}.checkbox--transparent .checkbox__input:checked+.checkbox__label::before{background-color:transparent}.checkbox--transparent .checkbox__link{color:#fff;font-weight:700}.accordion-content__intro,.footer__logos{text-align:center}.checkbox--small .checkbox__label{font-size:.75rem}@media (min-width:768px){.checkbox--small .checkbox__label{font-size:1rem}.checkbox--small\@medium-min .checkbox__label{font-size:.75rem}}.control-label,.field-label{display:block;font-size:.75rem}.checkbox.parsley-error .checkbox__label:before{border-color:#cb2431}.field-label.parsley-error{color:#cb2431}.form-group{margin-bottom:15px}.form-group--spaced-top{margin-top:1.5em}@media (min-width:1024px){.form-group{margin-bottom:25px}}.form-group--date-picker input{background:#fff;border:2px solid #00acf1;border-radius:8px;-webkit-box-sizing:border-box;box-sizing:border-box;font-size:1rem;max-width:400px;padding:11px 9px;width:100%}.form-group--date-picker input::-webkit-input-placeholder{color:rgba(59,59,59,.3)}.form-group--date-picker input::-moz-placeholder{color:rgba(59,59,59,.3)}.form-group--date-picker input:-ms-input-placeholder{color:rgba(59,59,59,.3)}.form-group--date-picker input.parsley-error{border:2px solid #cb2431}.form-radio{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:left;-ms-flex-pack:left;justify-content:left;display:-webkit-box;display:-ms-flexbox;display:flex}.form-radio .parsley-errors-list{-webkit-box-ordinal-group:51;-ms-flex-order:50;order:50}.radio-group{display:-webkit-box;display:-ms-flexbox;display:flex;margin:5px}.hr{background-color:#d8d8d8;border:0;height:1px;margin:20px 0;width:100%}.input-password{max-width:400px;position:relative}.input-password~input{margin-top:10px}.input-password__toggle{position:absolute;top:25px;right:10px;cursor:pointer;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.input-password__toggle--hide-password{display:none}.input-toggle{border-radius:10em;display:inline-block;overflow:hidden;position:relative;vertical-align:middle}.input-toggle:hover{cursor:pointer}.input-toggle:before{color:#fff;content:'Yes';font-weight:700;left:0}.input-toggle:after{color:#009fe3;content:'No';font-weight:700;right:0}.input-toggle:after,.input-toggle:before{position:absolute;top:50%;font-size:.875rem;padding:12px;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:0}.input-toggle__input{position:absolute;top:0;right:0;bottom:0;left:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;z-index:1}.input-toggle__input:checked~.input-toggle__handle{-webkit-box-shadow:inset 0 1px rgba(0,0,0,.15),inset 0 0 0 1px #009fe3;box-shadow:inset 0 1px rgba(0,0,0,.15),inset 0 0 0 1px #009fe3}.input-toggle__input:checked~.input-toggle__handle:before{background:#fff;-webkit-box-shadow:inset 0 -1px rgba(0,0,0,.2),inset 0 0 0 1px #009fe3,0 1px 2px rgba(0,0,0,.1),0 6px 12px rgba(0,0,0,.1);box-shadow:inset 0 -1px rgba(0,0,0,.2),inset 0 0 0 1px #009fe3,0 1px 2px rgba(0,0,0,.1),0 6px 12px rgba(0,0,0,.1);left:calc(50% + 7px)}.input-toggle__handle{background-image:-webkit-gradient(linear,left top, left bottom,from(#009fe3),to(#009fe3));background-image:linear-gradient(#009fe3,#009fe3);border:2px solid #009fe3;border-radius:10em;-webkit-box-shadow:inset 0 1px rgba(0,159,227,.15),inset 0 0 0 1px rgba(0,159,227,.15),inset 0 1px 2px rgba(0,159,227,.15),inset 44px 44px #fff;box-shadow:inset 0 1px rgba(0,159,227,.15),inset 0 0 0 1px rgba(0,159,227,.15),inset 0 1px 2px rgba(0,159,227,.15),inset 44px 44px #fff;display:block;height:32px;pointer-events:none;-webkit-transition:.4s ease;transition:.4s ease;width:68px}.input-toggle__handle:before{position:absolute;top:6px;left:8px;background:#009fe3;border-radius:10em;content:'';height:24px;-webkit-transition:.4s ease;transition:.4s ease;width:24px;z-index:1}.anchor,.wysiwyg a:not(.button),a{text-decoration:none;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:background-color,color;transition-property:background-color,color}.input-upload:focus .input-upload__label,.input-upload:focus .input-upload__label:hover{background-color:#00acf1;color:#fff;outline:#3b3b3b dotted 1px;outline:-webkit-focus-ring-color auto 5px}.input-upload__input{height:.1px;opacity:0;overflow:hidden;position:absolute;width:.1px;z-index:-1}.input-upload__input.parsley-error+.input-upload__label{border-color:#cb2431;color:#cb2431}.input-upload__label{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:#fff;border:2px solid #00acf1;border-radius:14px;color:#00acf1;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:1.125rem;font-weight:700;padding:10px}.input-upload__icon{margin-right:10px}.input-upload__name,.input-upload__size{color:#3b3b3b;font-size:.75rem;margin-right:5px;opacity:.8}.input-upload__information{display:none}.input-upload__information--active{display:-webkit-box;display:-ms-flexbox;display:flex}.input-upload__name{display:inline-block;font-weight:600}.input-upload__size{display:inline-block}.c5-form .form-control,.input{border:2px solid #00acf1;-webkit-box-sizing:border-box;box-sizing:border-box;font-size:1rem;max-width:400px;width:100%}.input-upload__remove{cursor:pointer;display:inline-block}.input{background:#fff;border-radius:8px;font-family:inherit;padding:12px 9px 11px}.input::-webkit-input-placeholder{color:rgba(59,59,59,.3)}.input::-moz-placeholder{color:rgba(59,59,59,.3)}.input:-ms-input-placeholder{color:rgba(59,59,59,.3)}.input.parsley-error{border:2px solid #cb2431}.input--transparent{background:0 0;border-color:#fff;color:#fff}.input--transparent::-webkit-input-placeholder{color:rgba(255,255,255,.6)}.input--transparent::-moz-placeholder{color:rgba(255,255,255,.6)}.input--transparent:-ms-input-placeholder{color:rgba(255,255,255,.6)}.c5-form .form-control{background:#fff;border-radius:8px;padding:11px 9px}.wysiwyg .ordered-list{list-style:none;padding-left:0}.ordered-list li{counter-increment:ol-counter;font-size:1.25rem;margin-bottom:35px}.ordered-list li::before{color:#e6007e;content:counter(ol-counter) ". ";font-family:'Hayseed W00 Regular',Georgia,Times,Times New Roman,serif;font-size:2.25rem;font-weight:700}.custom-select,.textarea{font-family:inherit;max-width:400px;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.parsley-errors-list{color:#cb2431;font-size:.75rem}.select-flex{display:-webkit-box;display:-ms-flexbox;display:flex}.custom-select{background-color:#fff;border:2px solid #00acf1;border-radius:8px;position:relative}.custom-select__select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;background-image:none;border:none;-webkit-box-shadow:none;box-shadow:none;font-size:1.125rem;padding:10px 9px;width:100%}.custom-select__select::-ms-expand{display:none}.custom-select__select:focus{outline:0}.custom-select__select option[hidden]{color:rgba(59,59,59,.3);opacity:.5}.custom-select__arrow{position:absolute;top:50%;right:15px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.table{margin-bottom:1em;width:100%}.page_title,p{margin-bottom:1.5em}.table td{padding:0 15px 3px 0}.table td.no-wrap{white-space:nowrap}.table thead{color:rgba(59,59,59,.6);font-size:12px}.table tfoot{border-top:1px solid #d8d8d8;font-size:1.25rem}.table tfoot td{font-weight:600;padding-top:10px}.textarea{background:#fff;border:2px solid #00acf1;border-radius:8px;font-size:1rem;padding:11px 9px}.textarea::-webkit-input-placeholder{color:rgba(59,59,59,.3)}.textarea::-moz-placeholder{color:rgba(59,59,59,.3)}.textarea:-ms-input-placeholder{color:rgba(59,59,59,.3)}.textarea.parsley-error{border:2px solid #cb2431}body{font-family:"Open Sans",Arial,sans-serif;font-size:16px;font-weight:400;line-height:30px}#event-styling .events__date,#event-styling .events__location,.accordion-content__title,.c-featured-event__title,.heading--1,.heading--2,.heading--3,.heading--4,.wysiwyg h1,.wysiwyg h2,h1,h2,h3,h4,h5,h6{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif}h1,h2,h3,h4,h5,h6{color:#e6007e;line-height:1.5}.h1,h1{font-size:2.66667em}h2{font-size:1.66667em;line-height:1.5em}h3{font-size:1.33333em}h4{font-size:1.22222em;line-height:1.36364em}h5,h6{font-size:1em}.heading--1,.heading--2,.heading--3,.heading--4,.wysiwyg h1,.wysiwyg h2{font-weight:400;letter-spacing:0;line-height:1.5}.wysiwyg b,.wysiwyg strong,b,strong{font-weight:700}.heading--1{font-size:2.625rem}@media (min-width:1024px){.heading--1{font-size:3.125rem}}.heading--2{font-size:2.25rem}.heading--4{font-size:1.125rem}.heading--blue,.heading--secondary{color:#00acf1}.heading--blue .heading__icon,.heading--secondary .heading__icon{fill:#00acf1}.heading--deepcerulean{color:#0077b5}.heading--deepcerulean .heading__icon{fill:#0077b5}.heading--purple{color:#814997}.heading--purple .heading__icon{fill:#814997}.heading--orange{color:#ec6408}.heading--orange .heading__icon{fill:#ec6408}.heading--red,.heading--thunderbird{color:#cd1719}.heading--red .heading__icon,.heading--thunderbird .heading__icon{fill:#cd1719}.heading--rose .heading__icon,.text-link__icon--rose{fill:#e6007e}.heading--rose{color:#e6007e}.heading--rio-grande{color:#cbd400}.heading--light,.heading--white{color:#fff}.heading--has-icon{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.heading--has-icon .heading__icon{display:block;height:50px;margin-right:15px;width:65px}.anchor,a{color:#00649d;outline:0}.anchor:hover,a:hover{color:#25408f}.anchor--has-arrow,a--has-arrow{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.text-small{font-size:12px;line-height:1.5}.text--light{color:#fff}.text--large{font-size:18px}.text-link{background:0 0;border:none;cursor:pointer;padding:0}.text-link__icon{height:7px}.text-link__icon--deepcerulean{fill:#0077b5}.text-link__icon--cerulean2{fill:#009fe3}.text-link__icon--purple{fill:#814997}.text-link__icon--orange{fill:#ec6408}.text-link__icon--thunderbird{fill:#cd1719}.text-link--deepcerulean{color:#0077b5}.text-link--cerulean2{color:#009fe3}.text-link--purple{color:#814997}.text-link--orange{color:#ec6408}.text-link--thunderbird{color:#cd1719}.text-link--rose{color:#e6007e}.text-link--white{color:#fff}.text-link--small{font-size:.75rem}.text-link--large,.thank-you-text{font-size:1.125rem}.text-link--has-icon{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.sr-only{height:1px;width:1px;border:0;clip:rect(0,0,0,0);margin:-1px;overflow:hidden;padding:0;position:absolute}.container,.footer__nav-item,.wrapper{width:100%}.thank-you-title{font-size:2.25rem}.wysiwyg h1{font-size:3.125rem;margin-bottom:35px}.wysiwyg h2{font-size:2.25rem}.wysiwyg a:not(.button){color:#00649d;outline:0}.wysiwyg a:not(.button):hover{color:#25408f}.wysiwyg p{font-size:1.125rem;margin-bottom:1.5em}.wysiwyg p:last-child{margin-bottom:0}.wysiwyg img:not(.card__media){border-radius:14px;margin-bottom:70px;margin-top:70px}.wysiwyg img.video__image{margin-top:0;margin-bottom:0}.wysiwyg--clean h1,.wysiwyg--clean h2,.wysiwyg--clean h3,.wysiwyg--clean h4,.wysiwyg--clean p{margin:0}.wysiwyg ul{list-style:inherit;padding-left:22px}.wysiwyg ol{list-style:decimal;padding-left:22px}p iframe{max-width:100%}.container{margin-right:auto;margin-left:auto;padding-right:20px;padding-left:20px;-webkit-box-sizing:border-box;box-sizing:border-box;max-width:1180px}.container--small{max-width:790px}.container--medium{max-width:1040px}.container--large{max-width:1180px}.container--xlarge{max-width:1290px}.container--form{max-width:370px}@media (min-width:1024px){.container--form{max-width:430px}#content:not(.form-control){padding-top:5.625em}#content:not(.form-control).padding-bottom{padding-bottom:100px}}.container--styleguide{background-color:#ededed;border-radius:6px;min-height:50px}body{background-color:#f2f2f2;color:#3b3b3b;height:100%;overflow-x:hidden!important}.wrapper{background-color:#fff;margin:auto}img{display:block;height:auto;max-width:100%}.footer{background-color:#0071ab;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-bottom:50px;padding-bottom:0;padding-top:50px;position:relative}.footer::after{position:absolute;bottom:-50px;background:#0071ab;border-radius:0 0 80% 80%;-webkit-box-shadow:inset 0 -40px 40px -50px rgba(0,0,0,.25);box-shadow:inset 0 -40px 40px -50px rgba(0,0,0,.25);content:'';display:block;height:50px;width:100%}.footer__content{display:-webkit-box;display:-ms-flexbox;display:flex}.footer__copy{margin-bottom:20px}.footer__copy p{font-size:.75rem;line-height:2;margin-bottom:0}.footer__row--order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.footer__row--order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.footer__nh-logo{display:none}.footer__logos{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:auto;max-width:430px}.footer__logo{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;max-width:140px}.footer__social-nav{margin-bottom:30px}.footer__col{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.footer__col .footer__nav{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.footer__col .footer__copy{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.footer__nav{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-bottom:40px}.footer__nav-link{color:#fff;font-size:1rem;line-height:30px;margin-right:10px}.footer__nav-link:hover{color:#fff;text-decoration:underline}.card,.footer a{text-decoration:none}.footer a{color:inherit}@media (min-width:768px){.ordered-list{-webkit-columns:2;-moz-columns:2;columns:2}.footer__col .footer__copy,.footer__col .footer__nav,.footer__row--order-1,.footer__row--order-2{-webkit-box-ordinal-group:unset;-ms-flex-order:unset;order:unset}.footer__row{margin-bottom:40px}.footer__nh-logo{-ms-flex-item-align:start;align-self:flex-start;display:block;margin-right:20px;width:109px}.footer__social-nav{margin-bottom:0}.footer__nav-item{width:auto}.footer__nav-item:last-child .footer__nav-link{border-right:0}.footer__nav-link{border-right:1px solid #fff;padding-right:10px}.footer__footer-logos{margin:0 auto;max-width:380px;width:100%}.footer__col{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.footer__nav{margin-bottom:0}}.modal__content,.modal__dialog{padding:20px;-webkit-box-sizing:border-box;box-sizing:border-box}.grid__item,.grid__item--25,.grid__item--40,.grid__item--60,.grid__item--75{margin-bottom:20px;margin-right:20px}.grid{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.grid--align-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.grid--justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.grid--justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.grid--justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.grid--align-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.grid--justify-stretch{-webkit-box-pack:stretch;-ms-flex-pack:stretch;justify-content:stretch}.grid__item{-webkit-box-flex:0;-ms-flex:none;flex:none}.grid__item--align-end{-ms-flex-item-align:end;align-self:flex-end}.grid__item--align-center{-ms-flex-item-align:center;align-self:center}.grid__item--align-stretch{-ms-flex-item-align:stretch;align-self:stretch}@media (min-width:568px){.grid--1-col .grid__item{width:calc(100% - 20px)}.grid--2-col .grid__item{width:calc(50% - 20px)}.grid--3-col .grid__item{width:calc(33.33333% - 20px)}.grid--4-col .grid__item{width:calc(25% - 20px)}.grid--5-col .grid__item{width:calc(20% - 20px)}.grid--6-col .grid__item{width:calc(16.66667% - 20px)}}@media (max-width:568px){.grid--1-col .grid__item,.grid--2-col .grid__item,.grid--3-col .grid__item,.grid--4-col .grid__item,.grid--5-col .grid__item,.grid--6-col .grid__item{width:calc(100% - 20px)}}.grid--reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.grid__item--75{width:calc(75% - 20px)}.grid__item--25{width:calc(25% - 20px)}.grid__item--40,.grid__item--60{width:calc(100% - 20px)}.grid--space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.grid--align-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.grid--align-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.grid--no-wrap{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.grid--styleguide .grid__item{background-color:#ededed;border-radius:6px;min-height:50px}@media (min-width:1024px){.grid.grid--2-col .grid__item--50{width:calc(50% - 20px)}}@media (min-width:767px){.grid--medium-up{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.grid--medium-up--align-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.grid--medium-up--justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.grid--medium-up--align-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.grid--medium-up--justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.grid--medium-up--align-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.grid--medium-up--justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.grid--medium-up--align-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.grid--medium-up--justify-stretch{-webkit-box-pack:stretch;-ms-flex-pack:stretch;justify-content:stretch}.grid--medium-up__item{-webkit-box-flex:0;-ms-flex:none;flex:none;margin-bottom:20px;margin-right:20px}.grid--medium-up__item--align-start{-ms-flex-item-align:start;align-self:flex-start}.grid--medium-up__item--align-end{-ms-flex-item-align:end;align-self:flex-end}.grid--medium-up__item--align-center{-ms-flex-item-align:center;align-self:center}.grid--medium-up__item--align-stretch{-ms-flex-item-align:stretch;align-self:stretch}}@media (min-width:767px) and (min-width:568px){.grid--medium-up--1-col .grid--medium-up__item{width:calc(100% - 20px)}.grid--medium-up--2-col .grid--medium-up__item{width:calc(50% - 20px)}.grid--medium-up--3-col .grid--medium-up__item{width:calc(33.33333% - 20px)}.grid--medium-up--4-col .grid--medium-up__item{width:calc(25% - 20px)}.grid--medium-up--5-col .grid--medium-up__item{width:calc(20% - 20px)}.grid--medium-up--6-col .grid--medium-up__item{width:calc(16.66667% - 20px)}}@media (min-width:767px) and (max-width:568px){.grid--medium-up--1-col .grid--medium-up__item,.grid--medium-up--2-col .grid--medium-up__item,.grid--medium-up--3-col .grid--medium-up__item,.grid--medium-up--4-col .grid--medium-up__item,.grid--medium-up--5-col .grid--medium-up__item,.grid--medium-up--6-col .grid--medium-up__item{width:calc(100% - 20px)}}@media (max-width:1024px){.grid--break\@large .grid__item{width:calc(100% - 20px)}}@media (min-width:768px){.grid--medium-up{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.grid--medium-up--align-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.grid--medium-up--justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.grid--medium-up--align-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.grid--medium-up--justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.grid--medium-up--align-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.grid--medium-up--justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.grid--medium-up--align-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.grid--medium-up--justify-stretch{-webkit-box-pack:stretch;-ms-flex-pack:stretch;justify-content:stretch}.grid--medium-up__item{-webkit-box-flex:0;-ms-flex:none;flex:none;margin-bottom:20px;margin-right:20px}.grid--medium-up__item--align-start{-ms-flex-item-align:start;align-self:flex-start}.grid--medium-up__item--align-end{-ms-flex-item-align:end;align-self:flex-end}.grid--medium-up__item--align-center{-ms-flex-item-align:center;align-self:center}.grid--medium-up__item--align-stretch{-ms-flex-item-align:stretch;align-self:stretch}}@media (min-width:768px) and (min-width:568px){.grid--medium-up--1-col .grid--medium-up__item{width:calc(100% - 20px)}.grid--medium-up--2-col .grid--medium-up__item{width:calc(50% - 20px)}.grid--medium-up--3-col .grid--medium-up__item{width:calc(33.33333% - 20px)}.grid--medium-up--4-col .grid--medium-up__item{width:calc(25% - 20px)}.grid--medium-up--5-col .grid--medium-up__item{width:calc(20% - 20px)}.grid--medium-up--6-col .grid--medium-up__item{width:calc(16.66667% - 20px)}}@media (min-width:768px) and (max-width:568px){.grid--medium-up--1-col .grid--medium-up__item,.grid--medium-up--2-col .grid--medium-up__item,.grid--medium-up--3-col .grid--medium-up__item,.grid--medium-up--4-col .grid--medium-up__item,.grid--medium-up--5-col .grid--medium-up__item,.grid--medium-up--6-col .grid--medium-up__item{width:calc(100% - 20px)}}@media (min-width:1024px) and (min-width:568px){.grid--large-up--1-col .grid--large-up__item{width:calc(100% - 20px)}.grid--large-up--2-col .grid--large-up__item{width:calc(50% - 20px)}.grid--large-up--3-col .grid--large-up__item{width:calc(33.33333% - 20px)}.grid--large-up--4-col .grid--large-up__item{width:calc(25% - 20px)}.grid--large-up--5-col .grid--large-up__item{width:calc(20% - 20px)}.grid--large-up--6-col .grid--large-up__item{width:calc(16.66667% - 20px)}}@media (min-width:1024px) and (max-width:568px){.grid--large-up--1-col .grid--large-up__item,.grid--large-up--2-col .grid--large-up__item,.grid--large-up--3-col .grid--large-up__item,.grid--large-up--4-col .grid--large-up__item,.grid--large-up--5-col .grid--large-up__item,.grid--large-up--6-col .grid--large-up__item{width:calc(100% - 20px)}}@media (min-width:1024px){.grid--large-up{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.grid--large-up--align-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.grid--large-up--justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.grid--large-up--align-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.grid--large-up--justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.grid--large-up--align-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.grid--large-up--justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.grid--large-up--align-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.grid--large-up--justify-stretch{-webkit-box-pack:stretch;-ms-flex-pack:stretch;justify-content:stretch}.grid--large-up__item{-webkit-box-flex:0;-ms-flex:none;flex:none;margin-bottom:20px;margin-right:20px}.grid--large-up__item--align-start{-ms-flex-item-align:start;align-self:flex-start}.grid--large-up__item--align-end{-ms-flex-item-align:end;align-self:flex-end}.grid--large-up__item--align-center{-ms-flex-item-align:center;align-self:center}.grid--large-up__item--align-stretch{-ms-flex-item-align:stretch;align-self:stretch}.grid.grid--2-col .grid__item--50{width:calc(50% - 20px)}.grid__item--40{width:calc(40% - 20px)}.grid__item--60{width:calc(60% - 20px)}}.modal{position:fixed;top:0;right:0;bottom:0;left:0;display:none;overflow-x:hidden;overflow-y:auto;z-index:999}.modal__dialog{height:100%;position:relative;width:auto;z-index:200}.modal__content{position:absolute;top:50%;left:50%;background:#e3f7ff;background-clip:padding-box;border-radius:14px;-webkit-box-shadow:1px 2px 8px 8px rgba(0,0,0,.01);box-shadow:1px 2px 8px 8px rgba(0,0,0,.01);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:90vh;outline:0;overflow:hidden;pointer-events:auto;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:calc(100% - 40px)}@media (min-width:568px){.modal__content{margin:auto;width:80%}}@media (min-width:768px){.modal__content{max-height:80vh;padding:50px}}@media (min-width:1280px){.modal__content{width:1140px}}.modal__scroller{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto;max-height:80vh;max-width:720px;overflow:auto;padding:10px;position:relative;width:100%}.modal__close{position:absolute;top:25px;right:25px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:0 0;border:0;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;fill:#00acf1;height:40px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:40px}.modal__decoration{fill:#00acf1;height:250px;opacity:.2;pointer-events:none;width:250px}.modal__decoration--top-left{position:absolute;top:-110px;left:-110px}.modal__decoration--bottom-right{position:absolute;right:-110px;bottom:-110px}.header--nav-active:before,.modal:after{bottom:0;left:0;content:''}.modal:after{position:fixed;top:0;right:0;background-color:rgba(255,255,255,.9);z-index:100}.modal--open{display:block}.modal--styleguide{position:relative}.modal--styleguide .modal__dialog{min-height:500px}.section{padding-bottom:50px;padding-top:50px}.section+.section:not(.section--styled),.section--padding-top-none{padding-top:0}.section+.wysiwyg img{margin-bottom:0;margin-top:0}.section__no-padding{padding-bottom:0}.section__asset{position:absolute;top:-125px;right:-125px;z-index:-1}.section__asset--yellow{fill:#ffcd21}.section__asset--purple{fill:#7c51a1}.section__asset--lily-white{fill:#e3f7ff}.section__asset--offset{top:-65px}.section--styled{background:#e3f7ff}.section--overlap{position:relative}.section--overlap:before{position:absolute;top:0;left:0;background:#fff;content:'';display:block;height:200px;width:100%}.section--overlap .container{position:relative}.section--overlay:after{background-color:rgba(59,59,59,.75);content:''}.section--has-asset{overflow:hidden;position:relative;z-index:1}.section--v-double{padding-bottom:50px;padding-top:50px}@media (min-width:1024px){.section--fade{position:relative}.section--fade::after,.section--fade::before{content:'';height:100%;pointer-events:none;position:absolute;top:0;z-index:1}.section--fade::before{background-image:-webkit-gradient(linear,right top, left top,from(rgba(0,0,0,0)),to(#fff));background-image:linear-gradient(to left,rgba(0,0,0,0),#fff 100%);left:0;width:100px}.section--fade::after{background-image:-webkit-gradient(linear,left top, right top,from(rgba(0,0,0,0)),to(#fff));background-image:linear-gradient(to right,rgba(0,0,0,0),#fff 100%);right:0;width:300px}.section--v-double{padding-bottom:100px;padding-top:100px}}@media (max-width:1024px){.section__asset{display:none}}.header{background:#fff;height:95px;position:relative;z-index:9}.header:before{content:'';opacity:0;-webkit-transition:opacity .75s ease;transition:opacity .75s ease}.header--spaced{margin-bottom:50px}.header--nav-active:before{position:fixed;top:150px;right:0;background-color:rgba(42,47,47,.8);opacity:1;z-index:1}.header__container{margin-right:auto;margin-left:auto;padding-right:20px;padding-left:20px;background:#fff;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;max-width:1350px;position:relative;width:100%}.header__logo{position:absolute;bottom:-30%;left:7%;display:block;height:110px;z-index:750}.header__curve,.header__nav{position:absolute;left:0;width:100%}@media (min-width:1024px){.header__logo{height:180px}}.header__object{height:100%;pointer-events:none}.header__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;width:100%}.header__top{display:block}.header__top-button{display:none}.header__main{border-left:1px solid rgba(59,59,59,.26);margin-left:15px;padding-left:28px}.header__curve{top:100%;z-index:750}.header__search{cursor:pointer}.header__nav{top:95px;background:#e3f7ff;-webkit-box-sizing:border-box;box-sizing:border-box;height:calc(100vh - 90px);opacity:0;padding:50px 0;pointer-events:none;-webkit-transform:translateX(100%);transform:translateX(100%);-webkit-transition:opacity .75s ease,-webkit-transform .5s ease;transition:opacity .75s ease,-webkit-transform .5s ease;transition:transform .5s ease,opacity .75s ease;transition:transform .5s ease,opacity .75s ease,-webkit-transform .5s ease;z-index:500}.header--nav-active .header__nav{overflow:scroll}.header__nav--active{opacity:1;pointer-events:all;-webkit-transform:translateX(0);transform:translateX(0)}@media (min-width:1024px){.header__nav{position:absolute;top:150px;height:calc(100vh - 150px)}.header{height:150px}.header__top-button{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;margin-left:5px;min-height:48px}.header__top{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:20px;margin-top:20px}.header__search-form{overflow:hidden}.header__main{border-left:0}.header__content{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%}.header__nav{left:auto;right:0;width:420px}.header__search{margin-left:10px;margin-right:10px;padding-right:10px}.header__icon{margin-right:5px}.slider:not(.slick-initialized)&gt;*{aspect-ratio:2/1}}@media (min-width:1280px){.header__top{margin-bottom:15px;margin-top:10px}.header__main{margin:0;padding:0}.header__content{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.header__nav{background:0 0;height:auto;opacity:1;overflow:initial;padding:0;pointer-events:all;position:relative;top:0;-webkit-transform:none;transform:none;width:auto}.header__curve{z-index:500}}.accordion-content__title&gt;*,.c-mobile-filters button&gt;*,.c-modal,.c-modal button&gt;*{pointer-events:none}.slider:not(.slick-initialized){display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden}.slider:not(.slick-initialized)&gt;*{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}.slider .slick-slide&gt;div&gt;div{display:block!important}.slider .slick-arrow{background-color:#fff;-webkit-box-shadow:0 0 6px rgba(0,0,0,.1);box-shadow:0 0 6px rgba(0,0,0,.1)}.slider .slick-dots{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;list-style:none;margin:0;padding:0;width:100%}.slider .slick-dots button{border:0;cursor:pointer;font-size:0;margin:0 .3125rem;-webkit-transition:background .5s;transition:background .5s;width:11px;height:11px;border-radius:50%}.slider .slick-dots .slick-active button,.slider .slick-dots button:hover{background-color:#00acf1}.slider .slick-slide img,.slider .slick-slide picture{display:block;width:100%}.slider__icon{position:relative;top:2px;fill:#00acf1;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.slider__icon--reverse{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.slider .slick-next,.slider .slick-prev{border:none;cursor:pointer;height:44px;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:44px;z-index:1}.slider .slick-prev{position:absolute;top:calc(50% - 15px);left:-20px}.slider .slick-next{position:absolute;top:calc(50% - 15px);right:-20px}.slider--inside .slick-prev{bottom:4px;left:0;top:auto;-webkit-transform:none;transform:none}.slider--inside .slick-next{bottom:4px;right:0;top:auto;-webkit-transform:none;transform:none}.slider--inside .slick-dots{position:absolute;bottom:25px;width:100%}.slider--centered-arrows .slick-next,.slider--centered-arrows .slick-prev{bottom:auto;top:calc(50% - 15px)}.slider--fit{padding-bottom:40px}.slider--fit .slick-dots{position:absolute;bottom:20px}.slider--fit .slick-next,.slider--fit .slick-prev{position:absolute;top:auto;bottom:-42px}.slider--fit .slick-prev{left:-20px}.slider--fit .slick-next{right:-20px}.slider--resources .slick-track{display:-webkit-box;display:-ms-flexbox;display:flex}.slider--resources .slick-track .article{height:auto}.slider--resources .slick-prev{bottom:-30px;left:20px;top:auto;-webkit-transform:none;transform:none}.slider--resources .slick-next{bottom:-30px;right:20px;top:auto;-webkit-transform:none;transform:none}.slider--dots-round .slick-dots button{border:1px solid #00acf1;border-radius:50%;height:10px;padding:0;width:10px}.slider--dots-round .slick-dots .slick-active button{background-color:#fff!important}.slider--dots-inverse .slick-dots button{background:0 0;border:1px solid #00acf1}.slider--dots-white .slick-dots button{background:0 0;border:1px solid #fff}.slider--dots-white .slick-dots button:hover{background:#fff}.slider--dots-white .slick-dots .slick-active button{background-color:#fff!important}.slider--arrows-rounded .slick-arrow{border-radius:50%;height:78px;opacity:.85;padding:0;width:78px}.slider--arrows-rounded .slick-arrow.slick-prev{left:-39px}.slider--arrows-rounded .slick-arrow.slick-prev .slider__icon{right:-15px}.slider--arrows-rounded .slick-arrow.slick-next{right:-39px}.slider--arrows-rounded .slick-arrow.slick-next .slider__icon{left:-15px}.slider--arrows-rounded .slick-arrow:hover{opacity:1}.slider--arrows-rounded .slick-arrow .slider__icon{width:17px}.slider--overflow-hidden{overflow:hidden}@media (min-width:1024px){.slider--dots-inverse .slick-dots button{border:1px solid #fff}.slider--dots-inverse .slick-dots button:hover{background-color:#fff}.slider--dots-inverse .slick-dots .slick-active button{background-color:#fff!important}}.accordion-content{padding-top:60px;padding-bottom:80px}.accordion-content__intro+*{margin-top:85px}.accordion-content__intro h2{font-size:36px}@media (min-width:768px){.accordion-content{padding-top:90px;padding-bottom:90px}.accordion-content__intro h2{font-size:50px}}.accordion-content__intro h2+*{margin-top:32px}.accordion-content__item&gt;h2{margin-bottom:0}.accordion-content__list{border-bottom:1px solid #070707}.accordion-content__title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;text-align:left;font-size:28px;color:#e6007e;background-color:transparent;border:0;border-top:1px solid #070707;border-radius:0;padding:20px 0;cursor:pointer}.accordion-content__icon{position:relative;width:30px;height:30px;background-color:#e6007e;color:#fff;border-radius:50%}@media (min-width:768px){.accordion-content__title{font-size:36px;padding:30px 0}.accordion-content__icon{width:46px;height:46px}}.accordion-content__icon span:after,.accordion-content__icon span:before{content:'';position:absolute;top:50%;left:50%;width:18px;height:2px;background-color:currentColor;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:-webkit-transform 250ms ease-out;transition:-webkit-transform 250ms ease-out;transition:transform 250ms ease-out;transition:transform 250ms ease-out, -webkit-transform 250ms ease-out}@media (min-width:768px){.accordion-content__icon span:after,.accordion-content__icon span:before{width:25px}}.accordion-content__icon span:after{-webkit-transform:translate(-50%,-50%) rotate(-90deg);transform:translate(-50%,-50%) rotate(-90deg)}.accordion-content__item.is-active .accordion-content__icon span::after{-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition-duration:.4s;transition-duration:.4s}.accordion-content__container{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);height:0;will-change:height;overflow:hidden;-webkit-transition:height 250ms ease-out;transition:height 250ms ease-out}.accordion-content__item.is-active .accordion-content__container{height:auto;-webkit-transition-duration:.4s;transition-duration:.4s}.c-featured-event__container,.card{-webkit-transition:-webkit-box-shadow 250ms ease-in-out;transition:-webkit-box-shadow 250ms ease-in-out;transition:box-shadow 250ms ease-in-out;transition:box-shadow 250ms ease-in-out, -webkit-box-shadow 250ms ease-in-out}.accordion-content__content{padding-bottom:26px}.accordion{width:100%}.accordion__item{border-radius:20px;-webkit-box-shadow:0 2px 8px 0 rgba(0,0,0,.17);box-shadow:0 2px 8px 0 rgba(0,0,0,.17);position:relative}.accordion__item+.accordion__item{margin-top:15px}.accordion__item--error{margin-bottom:50px}.accordion__item--error .accordion__link{border:1px solid #cb2431;-webkit-box-sizing:border-box;box-sizing:border-box}.accordion__item--error::after{position:absolute;left:50%;color:#cb2431;content:'Sorry, there are errors with this participant';font-size:.75rem;-webkit-transform:translateX(-50%);transform:translateX(-50%)}#event-styling .events__image-wrap::before,.c-event-banner__image:after,.c-events-5050__content li::after,.c-events-5050__content li::before,.c-shops__results-title:before,.link-arrow:after,.progress-bar__complete,.video:before{content:''}.accordion__link{background-color:#814997;border-radius:12px;color:#fff;cursor:pointer;font-size:1.125rem;font-weight:600;line-height:1.5;padding:20px;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.accordion__link--active{background-color:#e6007e;border-bottom-left-radius:0;border-bottom-right-radius:0}.accordion__link--active .accordion__icon{-webkit-transform:translateY(-50%) rotate(180deg);transform:translateY(-50%) rotate(180deg);-webkit-transform-origin:center;transform-origin:center}.accordion__icon{position:absolute;top:50%;right:20px;fill:#fff;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transform-origin:center;transform-origin:center}.accordion__content{background:#fff;border-bottom-left-radius:20px;border-bottom-right-radius:20px;display:none}.accordion__wrap{padding:20px}.accordion__wrap p:last-child{margin-bottom:0}.arrow-icon--left{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.arrow-icon--right{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.arrow-icon--rose{fill:#e6007e}.c-background-flower{position:relative;padding-top:1px}.c-background-flower__container{background-color:#e3f7ff;bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0}.c-background-flower__image{fill:#0176aa;height:400px;left:100%;opacity:.38;position:absolute;top:100%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:400px}.c-background-flower--fixed .c-background-flower__container{height:850px}.basket-notification{position:relative}.basket-notification__count{position:absolute;top:0;right:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:#e6007e;border-radius:50%;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:.6875rem;height:25px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:5px;width:25px}.card,.card__media-container{overflow:hidden;position:relative}.card{background:#fff;border-radius:14px;-webkit-box-shadow:0 2px 8px 0 rgba(0,0,0,.13);box-shadow:0 2px 8px 0 rgba(0,0,0,.13);display:block;height:100%;margin-bottom:20px;margin-left:auto;margin-right:auto;max-width:425px;width:100%}.card:hover{-webkit-box-shadow:0 62px 17px 0 rgba(0,79,112,0),0 40px 16px 0 rgba(0,79,112,.04),0 22px 13px 0 rgba(0,79,112,.13),0 10px 10px 0 rgba(0,79,112,.22),0 2px 5px 0 rgba(0,79,112,.25);box-shadow:0 62px 17px 0 rgba(0,79,112,0),0 40px 16px 0 rgba(0,79,112,.04),0 22px 13px 0 rgba(0,79,112,.13),0 10px 10px 0 rgba(0,79,112,.22),0 2px 5px 0 rgba(0,79,112,.25)}.card:focus{border:none;outline:var(--Primary-Default,#00ACF1) solid 2px;outline-offset:4px}.card__article{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card__media-container{background:#f5f5f5;-ms-flex-negative:0;flex-shrink:0;height:210px}.card__media{position:absolute;top:50%;left:50%;display:block;height:100%;-o-object-fit:cover;object-fit:cover;-webkit-transform:translateY(-50%) translateX(-50%);transform:translateY(-50%) translateX(-50%);width:100%}.card--featured .card__article,.card--horizontal .card__article{display:-webkit-box;display:-ms-flexbox;display:flex}.card__tags{margin-bottom:15px;margin-top:-40px;z-index:10}.card__content{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%;padding:20px}.card__heading{color:#00acf1;font-size:2.25rem;margin-bottom:15px}.card__copy{color:#3b3b3b;font-size:1.125rem;margin-bottom:15px;word-wrap:break-word}.card__meta{margin-top:auto}.card__date{color:#3b3b3b;font-size:.875rem}.card--tile .card__article{position:relative}.card--tile .card__heading{color:#fff;font-size:2.25rem}.card--tile .card__content{position:absolute;top:0;left:0;background-color:rgba(59,59,59,.75);height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%}.card--tile .card__copy{color:#fff;font-size:.75rem;margin-bottom:0}.card--horizontal{max-width:950px}.card--horizontal .card__media-container{height:auto;width:407px}@media (max-width:1024px){.card--horizontal .card__article{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card--horizontal .card__media-container{height:210px;width:auto}}.card--featured{max-width:1139px}.card--featured .card__media-container{height:auto;width:754px}.card--featured .card__content{padding:40px}@media (max-width:1024px){.card--featured .card__article{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card--featured .card__media-container{height:210px;width:auto}.card-carousel .slick-arrow{display:none!important}}@media (min-width:1024px){.card--featured .card__content{width:385px}}.card--event-featured .card__article{background-color:#c40076}.card--event-featured .card__media-container{border-radius:10px 10px 0 0;margin:12px 12px 0;height:198px}.card--event-featured .card__content{background-color:#fff;border-radius:0 0 10px 10px;margin:0 12px 12px}@media (min-width:768px){.card--page-featured{max-width:none}.card--page-featured .card__article{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.card--page-featured .card__content,.card--page-featured .card__media-container{-webkit-box-flex:1;-ms-flex:1;flex:1}.card--page-featured .card__media-container{height:auto;-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}}.card-carousel .card{width:calc(100% - 20px)!important}.card-carousel{width:100%}.card-carousel .slick-list{overflow:visible}.card-carousel .slick-arrow{background-color:#fff;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1);box-shadow:0 0 2px rgba(0,0,0,.1)}.card-carousel .slick-next,.card-carousel .slick-prev{position:absolute;bottom:auto;left:auto;top:-135px;-webkit-transform:none;transform:none;z-index:10;text-indent:-99999px;border:none;cursor:pointer;height:44px;width:44px}.card-carousel .slick-prev{border-bottom-left-radius:12px;border-top-left-radius:12px;right:45px}.card-carousel .slick-next{border-bottom-right-radius:12px;border-top-right-radius:12px;right:0}.card-carousel__icon{fill:#e6007e;position:absolute;right:50%;top:50%;-webkit-transform:translateY(-50%) translateX(50%) rotate(90deg);transform:translateY(-50%) translateX(50%) rotate(90deg)}.card-carousel__icon--reverse{-webkit-transform:translateY(-50%) translateX(50%) rotate(-90deg);transform:translateY(-50%) translateX(50%) rotate(-90deg)}.card-carousel--match-height .slick-track{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.card-carousel--match-height .slick-slide{height:inherit!important;padding:10px}.card-carousel--match-height .slick-slide&gt;div{height:100%}.contact-details__item{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:30px}.contact-details__item:last-child{margin-bottom:0}.contact-details__icon{fill:#00acf1;-ms-flex-negative:0;flex-shrink:0;margin-right:20px;margin-top:3px;width:22px}.contact-details__detail{-ms-flex-item-align:start;align-self:flex-start;font-size:1.125rem}.cqc-widget.cleanslate{-webkit-box-sizing:border-box!important;box-sizing:border-box!important;margin:0 20px!important;max-width:calc(100% - 40px)!important;width:960px!important}.banner--has-info-panel,.banner__container,.banner__info,.c-people-listing__collection&gt;*,.event-form,.loading-ring__element,.media--contained,.primary-nav__subnav,.scroller__inner,.slider-card{-webkit-box-sizing:border-box;box-sizing:border-box}@media (min-width:768px){.cqc-widget.cleanslate{margin:auto!important}}.event-form,.event-form__button{margin:auto}.event-form{background:-webkit-gradient(linear,left bottom, left top,color-stop(0, #762282),to(#814997));background:linear-gradient(0deg,#762282 0,#814997 100%);border-radius:12px;color:#fff;height:calc(100% - 20px);max-width:444px;overflow:hidden;padding:20px;position:relative;width:100%}.event-form__asset{fill:#762282}.event-form__top-left{position:absolute;top:-120px;left:-120px}.event-form__bottom-right{position:absolute;right:-120px;bottom:-120px}.event-form__inner{position:relative;z-index:1}.event-form__heading{line-height:1.2}@media (min-width:1024px){.event-form{padding:43px 43px 63px}}.event-summary{color:#3b3b3b;font-size:.875rem;font-weight:600;text-align:left}.event-summary__icon{fill:#00acf1;margin-right:10px}.event-summary--light{color:#fff}.event-summary--light .event-summary__icon{fill:#fff}#event-styling .events{padding-top:75px;padding-bottom:80px;background-color:#e3f7ff}#event-styling .events__title{text-align:center;color:#e6007e}#event-styling .events__title+*{margin-top:50px}#event-styling .events__title h2{font-size:36px;margin-bottom:0}#event-styling .events__list{display:grid;grid-template-columns:minmax(0,1fr);gap:55px 50px}@media (min-width:768px){#event-styling .events__title+*{margin-top:90px}#event-styling .events__title h2{font-size:50px}#event-styling .events__list{grid-template-columns:repeat(2,minmax(0,1fr))}}#event-styling .events__list+*{margin-top:32px}#event-styling .events__item{border-radius:20px;overflow:hidden;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-shadow:0 10px 10px rgba(0,0,0,.16);box-shadow:0 10px 10px rgba(0,0,0,.16)}#event-styling .events__image{position:relative}#event-styling .events__image img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}#event-styling .events__image-wrap::before{display:block;padding-bottom:57.59494%}@media (min-width:768px){#event-styling .events__image-wrap::before{padding-bottom:57.52688%}}#event-styling .events__tag{position:absolute;left:15px;bottom:0;-webkit-transform:translateY(50%);transform:translateY(50%);background-color:#41a335;color:#fff;border-radius:23px;padding:6px 26px;font-size:12px;line-height:1}@media (min-width:768px){#event-styling .events__tag{left:30px;font-size:18px;padding:11px 40px}}#event-styling .events__content{background-color:#fff;padding:44px 15px 15px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}#event-styling .events__content h3{color:#e6007e;font-size:28px;margin-bottom:0}@media (min-width:768px){#event-styling .events__content{padding:52px 30px 30px}#event-styling .events__content h3{font-size:32px}}#event-styling .events__content h3+*{margin-top:13px}#event-styling .events__content .button,#event-styling .events__date+*,#event-styling .events__location+*{margin-top:20px}#event-styling .events__content p{margin-bottom:0}#event-styling .events__date{color:#e6007e;font-size:16px;margin-bottom:0}@media (min-width:768px){#event-styling .events__date{font-size:20px}}#event-styling .events__location{font-size:16px;color:#3b3b3b}@media (min-width:768px){#event-styling .events__location{font-size:20px}}#event-styling .events__price{font-weight:700;color:#e6007e;font-size:24px;margin-top:auto;padding-top:20px}@media (min-width:768px){#event-styling .events__price{padding-top:40px}.c-events-5050__container{grid-template-columns:repeat(2,minmax(0,1fr))}}#event-styling .events__price+*{margin-top:10px}.c-event-banner{position:relative}.c-event-banner__image{position:absolute;inset:0}.c-event-banner__image:after{position:absolute;inset:0;background-color:#000;opacity:.6}.c-event-banner__image img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center}.c-event-banner__content{position:relative;z-index:1;color:#fff;max-width:1180px;margin:0 auto;padding:207px 20px 142px}.c-featured-event__tagline,.c-featured-event__title{margin-bottom:16px;font-weight:400;font-style:normal}.c-event-banner__content h1{color:inherit}.c-event-banner__content h1+*{margin-top:22px}.c-featured-event{margin-top:7.5vh}@media (max-width:767px){.c-featured-event{margin-top:38px}}.c-featured-event__container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-shadow:0 2px 8px 0 rgba(0,0,0,.13);box-shadow:0 2px 8px 0 rgba(0,0,0,.13);border-radius:16px}@media (max-width:767.98px){.c-featured-event__container{-ms-flex-wrap:wrap;flex-wrap:wrap;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.c-featured-event__container:hover{-webkit-box-shadow:0 4px 16px 0 #AFC8D6;box-shadow:0 4px 16px 0 #AFC8D6;border-radius:16px}.c-featured-event__container:focus{border:none;outline:solid var(--Primary-Default,#00ACF1);outline-offset:4px}.c-featured-event__image{position:relative;border-radius:16px 0 0 16px;width:366px;height:321px;-ms-flex-negative:0;flex-shrink:0}@media (max-width:767.98px){.c-featured-event__image{width:100%!important;border-radius:16px 16px 0 0}}.c-featured-event__image img{border-radius:16px 0 0 16px;width:366px;height:321px}@media (max-width:767.98px){.c-featured-event__image img{width:100%!important;border-radius:16px 16px 0 0}}.c-featured-event__content,.c-featured-event__content:hover{border-radius:0 16px 16px 0}.c-featured-event__content{display:-webkit-box;display:-ms-flexbox;display:flex;padding:20px 20px 20px 30px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:top;-ms-flex-pack:top;justify-content:top;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-item-align:stretch;align-self:stretch;background-color:#fff}@media (max-width:767.98px){.c-featured-event__content{border-radius:0 0 16px 16px;padding:20px}}.c-featured-event__tagline{color:var(--Secondary-Default,#E6007E);font-size:14px;line-height:150%;letter-spacing:.98px;text-transform:uppercase}.c-featured-event__title{color:var(--Primary-Default,#00ACF1);font-size:36px;line-height:38px}.c-events-quote__container,.c-shops__filter .reset_filter,.c-shops__filter .submit,.quote{font-family:"Open Sans",Arial,sans-serif}.c-featured-event__body{color:#3B3B3B;font-size:18px;font-style:normal;font-weight:400;line-height:150%}.c-featured-event__meta-data{margin-top:auto}.c-featured-event__meta-data span{color:#3B3B3B;font-size:16px;font-style:normal;font-weight:400;line-height:26px}.c-featured-event__divider{background:#E6007E;border:0;border-bottom:2px solid #E6007E;margin-top:45px}.events-filter{display:-webkit-box;display:-ms-flexbox;display:flex}.events-filter .clear-all{margin-top:29px;height:20px}.events-filter .custom-select{width:16rem}.page-type-events .section{padding-bottom:0}.page-type-events .section--overlap:before{height:100px}.page-type-events .section.section--overlap{padding-bottom:20px}.no-results{padding:50px 0;text-align:center}.c-events-5050{max-width:1400px;margin:0 auto;padding:152px 16px}.c-events-5050__container{display:grid;gap:42px 92px}.c-events-5050 h2{font-size:40px;line-height:1}.c-events-5050 h2+*{margin-top:40px}.c-events-5050__media iframe{aspect-ratio:16/9;width:100%;height:auto}.c-events-5050__slider{position:relative}.c-events-5050__slider img{aspect-ratio:1024/768;-o-object-fit:cover;object-fit:cover;width:100%}.c-events-5050__slider .slick-list{max-width:calc(100vw - 46px);width:100%}.c-events-5050__slider-controls{position:absolute;bottom:16px;right:16px;background-color:#e6007e;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:16px}.c-events-5050__slider-controls button{padding:12px 16px;background-color:transparent;border:0;cursor:pointer}.c-events-5050__slider-controls button svg{width:24px;height:24px;-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out, -webkit-transform .2s ease-out}.c-events-5050__slider-controls button:hover{-webkit-transition-duration:350ms;transition-duration:350ms}.c-events-5050__slider-controls button:first-child svg{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.c-events-5050__slider-controls button:first-child:hover svg{-webkit-transform:rotate(180deg) translateX(5px);transform:rotate(180deg) translateX(5px)}.c-events-5050__slider-controls button:last-child svg{-webkit-transform:rotate(0);transform:rotate(0)}.c-events-5050__slider-controls button:last-child:hover svg{-webkit-transform:rotate(0) translateX(5px);transform:rotate(0) translateX(5px)}.c-events-5050 .slick-slide&gt;div&gt;div{display:block!important}.c-events-5050__content--dots li::before,.c-events-5050__content--flower-dots li::before{display:none}.c-events-5050__content li{position:relative;padding-left:48px}.c-events-5050__content li+li{margin-top:32px}.c-events-5050__content li::before{position:absolute;top:-1px;left:0;width:32px;height:32px;background-color:#FFC9F0;border-radius:50%}.c-events-5050__content li::after{position:absolute;top:9px;left:9px;background-image:url(../images/icons/check_small.svg);width:15px;height:12px;background-size:100%}.c-events-5050__content--dots li:after{background-image:url(../images/icons/swirl_purple.svg);width:32px;height:32px;top:-1px;left:0}.c-events-5050__content--flower-dots li:after{background-image:url(../images/icons/pink-flower2.svg);width:32px;height:32px;top:-1px;left:0}.c-events-btn{position:fixed;z-index:999;bottom:32px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);-webkit-transition:opacity .4s ease-in-out,-webkit-transform .4s ease-in-out;transition:opacity .4s ease-in-out,-webkit-transform .4s ease-in-out;transition:opacity .4s ease-in-out,transform .4s ease-in-out;transition:opacity .4s ease-in-out,transform .4s ease-in-out,-webkit-transform .4s ease-in-out}.c-events-btn.is-hidden{opacity:0;-webkit-transform:translateX(-50%) translateY(-10px);transform:translateX(-50%) translateY(-10px)}.c-events-btn__btn{-webkit-box-shadow:0 4px 10px rgba(0,0,0,.3);box-shadow:0 4px 10px rgba(0,0,0,.3);background-color:#00acf1;color:#fff!important;font-size:18px;line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:13px 24px;border-radius:16px;gap:10px;-webkit-transition:background-color 250ms ease-out;transition:background-color 250ms ease-out}.c-events-btn__btn:hover{background-color:#009fe3;-webkit-transition-duration:.4s;transition-duration:.4s}.c-events-btn svg{width:24px;height:24px;-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transition:-webkit-transform 250ms ease-out;transition:-webkit-transform 250ms ease-out;transition:transform 250ms ease-out;transition:transform 250ms ease-out, -webkit-transform 250ms ease-out}.c-events-btn__btn:hover svg{-webkit-transition-duration:.4s;transition-duration:.4s;-webkit-transform:translateY(3px) rotate(90deg);transform:translateY(3px) rotate(90deg)}.c-events-quote{background-color:#e3f7ff;position:relative;overflow:hidden}.c-events-quote__decoration svg{position:absolute;fill:#479DDC;opacity:.3;width:360px;height:360px}.c-events-quote__decoration svg:first-child{top:0;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.c-events-quote__decoration svg:last-child{bottom:0;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.c-events-quote__container{max-width:958px;margin:0 auto;padding:112px 16px;text-align:center}#main_nav .menu_link,#sub_nav,.basic_form legend,.messages__title,.sub_nav_trigger{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif}.c-events-quote__container p{color:#000;font-size:30px;line-height:1.2;margin-bottom:32px}.c-events-quote__container cite{color:#00acf1;font-weight:700;font-size:19px}.c-events-summary{max-width:1400px;margin:0 auto;padding:66px 16px 0;text-align:center}.u-icon-text{display:-webkit-box;display:-ms-flexbox;display:flex;gap:16px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.u-icon-text svg{width:24px;height:24px}.u-icon-text+.u-icon-text{margin-top:14px}.link-arrow{color:#00acf1;display:-webkit-box;display:-ms-flexbox;display:flex}.link-arrow:after{background:url(/application/themes/rawnet/app/images/interface/arrow-blue.svg) center center no-repeat;display:block;height:33px;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);width:30px}.loading-ring{height:40px;margin:auto;position:relative;width:40px}.loading-ring__element{-webkit-animation:lds-ring 1.2s cubic-bezier(.5,0,.5,1) infinite;animation:lds-ring 1.2s cubic-bezier(.5,0,.5,1) infinite;border:8px solid #814997;border-color:#814997 transparent transparent;border-radius:50%;display:block;height:64px;margin:8px;position:absolute;width:64px}.c-mobile-filters__back-btn svg,.c-mobile-filters__btn svg{width:24px;height:24px}.loading-ring__element:nth-child(1){-webkit-animation-delay:-.45s;animation-delay:-.45s}.loading-ring__element:nth-child(2){-webkit-animation-delay:-.3s;animation-delay:-.3s}.loading-ring__element:nth-child(3){-webkit-animation-delay:-.15s;animation-delay:-.15s}@-webkit-keyframes lds-ring{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lds-ring{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.media--contained{background-color:#e3f7ff;border-radius:14px;max-width:275px;min-height:190px;padding:30px}.media--top-overlap{position:relative}.media--top-overlap .media__img{position:absolute;bottom:30px;left:30px}.messages{padding:75px 25px 50px}.messages__content{margin:auto;max-width:960px}.messages__content--error{color:#cd1719}.messages__content--info{color:#00acf1}.messages__content--success{color:#2cbe4e}.messages__title{font-size:1.66667em;line-height:1.5em;margin-bottom:.83333em}@media (max-width:767px){.events-filter{display:none}body:has(.c-mobile-filters) .section--overlap:before{height:24px}}@media (min-width:768px){.c-mobile-filters{display:none}}.c-mobile-filters__btn-wrap{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.c-mobile-filters__btn{color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:16px;padding:12px 32px;border-radius:16px;border:0;background-color:#00acf1;cursor:pointer;font-size:18px;font-weight:600}.c-mobile-filters__btn:hover{background-color:#009fe3}.c-mobile-filters__title-wrap{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:16px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:40px}.c-mobile-filters__title-wrap span{font-size:21px}.c-mobile-filters__back-btn{font-size:16px;display:-webkit-box;display:-ms-flexbox;display:flex;gap:8px;color:#3d3d3d;background-color:transparent;border:0;cursor:pointer;-webkit-transition:opacity .4s cubic-bezier(.3,.15,.18,1);transition:opacity .4s cubic-bezier(.3,.15,.18,1)}.c-mobile-filters__back-btn:hover{color:#e6007e}.c-mobile-filters__back-btn.is-hidden{opacity:0;pointer-events:none;-webkit-transition-duration:250ms;transition-duration:250ms}.c-mobile-filters__options-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;gap:64px;-webkit-transition:-webkit-transform 250ms cubic-bezier(.3,.15,.18,1);transition:-webkit-transform 250ms cubic-bezier(.3,.15,.18,1);transition:transform 250ms cubic-bezier(.3,.15,.18,1);transition:transform 250ms cubic-bezier(.3,.15,.18,1), -webkit-transform 250ms cubic-bezier(.3,.15,.18,1)}.c-mobile-filters__options-wrapper&gt;*{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}.c-mobile-filters__options-wrapper.show-events{-webkit-transition-duration:.4s;transition-duration:.4s;-webkit-transform:translateX(calc(-100% - 64px));transform:translateX(calc(-100% - 64px))}.c-mobile-filters__options-title{font-size:16px;color:#3d3d3d}.c-mobile-filters__options-list{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:16px}.c-mobile-filters__option input{position:absolute;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.c-mobile-filters__option-btn{--trans-duration:250ms;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:16px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:18px;font-weight:600;color:#3d3d3d;background-color:#e3f7ff;padding:12px 16px;border-radius:16px;cursor:pointer;-webkit-transition:color var(--trans-duration) cubic-bezier(.3,.15,.18,1),background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1);transition:color var(--trans-duration) cubic-bezier(.3,.15,.18,1),background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1)}.c-mobile-filters__option-btn svg{width:24px;height:24px;color:#00acf1;-webkit-transition:color var(--trans-duration) cubic-bezier(.3,.15,.18,1);transition:color var(--trans-duration) cubic-bezier(.3,.15,.18,1)}.c-mobile-filters__option-btn:hover,input:checked+.c-mobile-filters__option-btn{--trans-duration:400ms;color:#e3f7ff;background-color:#3700B3}.c-mobile-filters__option-btn:hover svg,input:checked+.c-mobile-filters__option-btn svg{color:#e3f7ff}@-webkit-keyframes backdropIn{from{opacity:0}to{opacity:1}}@keyframes backdropIn{from{opacity:0}to{opacity:1}}.c-modal{--trans-duration:250ms;--max-height:600px;--max-width:600px;--padding:24px;position:fixed;z-index:60;top:50%;left:50%;height:100%;width:100%;-webkit-transform:translate(-50%,calc(-50% + 50px));transform:translate(-50%,calc(-50% + 50px));background-color:#fff;-webkit-box-shadow:0 6px 21px rgba(0,0,0,.55);box-shadow:0 6px 21px rgba(0,0,0,.55);overflow:visible;border:0;margin:0;padding:0;display:block;opacity:0;-webkit-transition:opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1),-webkit-transform var(--trans-duration) cubic-bezier(.3,.15,.18,1);transition:opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1),-webkit-transform var(--trans-duration) cubic-bezier(.3,.15,.18,1);transition:opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1),transform var(--trans-duration) cubic-bezier(.3,.15,.18,1);transition:opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1),transform var(--trans-duration) cubic-bezier(.3,.15,.18,1),-webkit-transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)}.c-modal::-webkit-backdrop, .c-modal[open]::-webkit-backdrop{background-color:rgba(0,0,0,.6)}.c-modal::backdrop,.c-modal[open]::backdrop{background-color:rgba(0,0,0,.6)}.c-modal--sm{max-height:calc(var(--1vh,1vh) * 100 - 24px);height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.is-ios .c-modal--sm{height:100%}@supports (-webkit-hyphens:none){.c-modal--sm{height:auto}@media (min-width:768px){.c-modal--sm{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}}}.c-modal--drawer{left:0;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%);height:100%;width:calc(100% - 35px);max-width:445px;max-height:none}.c-modal[open]{--trans-duration:400ms;pointer-events:auto;opacity:1;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.c-modal[open]::-webkit-backdrop{-webkit-animation-name:backdropIn;animation-name:backdropIn;-webkit-animation-duration:.4s;animation-duration:.4s;-webkit-animation-timing-function:cubic-bezier(.3,.15,.18,1);animation-timing-function:cubic-bezier(.3,.15,.18,1);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.c-modal[open]::backdrop{-webkit-animation-name:backdropIn;animation-name:backdropIn;-webkit-animation-duration:.4s;animation-duration:.4s;-webkit-animation-timing-function:cubic-bezier(.3,.15,.18,1);animation-timing-function:cubic-bezier(.3,.15,.18,1);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.c-modal--drawer[open]{-webkit-transform:none;transform:none}.c-modal__container{padding:var(--padding);height:100%}.c-modal__scroll-drawer{overflow-y:auto;max-height:100%}.c-modal__scroll-container{margin-left:calc(var(--padding) * -1);margin-right:calc(var(--padding) * -1);margin-bottom:calc(var(--padding) * -1);margin-top:14px!important;overflow-y:auto;width:100%;height:calc(100% - 120px);padding:var(--padding)}*+.c-modal__scroll-container{padding-top:0}.c-modal--drawer .c-modal__container{padding-top:calc(var(--padding) + 6px)}.c-modal__close-btn{--hover-duration:250ms;position:absolute;top:24px;right:24px;z-index:1;background-color:transparent;color:#3d3d3d;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:16px;gap:4px;cursor:pointer;border:0;-webkit-transition:color var(--hover-duration) cubic-bezier(.3,.15,.18,1);transition:color var(--hover-duration) cubic-bezier(.3,.15,.18,1)}.c-people-content&gt;.container,.c-people-listing&gt;.container,.nav-icon span,.progress-bar{position:relative}.c-modal__close-btn svg{width:24px;height:24px}.c-modal__close-btn:hover{--hover-duration:400ms;color:#e6007e}.nav-icon{background:0 0;border:0;cursor:pointer;display:block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1}.nav-icon span{background:#009fe3;border-radius:3px;display:block;height:4px;margin-bottom:4px;-webkit-transform-origin:4px 0;transform-origin:4px 0;-webkit-transition:background .5s cubic-bezier(.77,.2,.05,1),opacity .55s ease,-webkit-transform .5s cubic-bezier(.77,.2,.05,1);transition:background .5s cubic-bezier(.77,.2,.05,1),opacity .55s ease,-webkit-transform .5s cubic-bezier(.77,.2,.05,1);transition:transform .5s cubic-bezier(.77,.2,.05,1),background .5s cubic-bezier(.77,.2,.05,1),opacity .55s ease;transition:transform .5s cubic-bezier(.77,.2,.05,1),background .5s cubic-bezier(.77,.2,.05,1),opacity .55s ease,-webkit-transform .5s cubic-bezier(.77,.2,.05,1);width:32px;z-index:1}.nav-icon span:first-child{-webkit-transform-origin:0 0;transform-origin:0 0}.nav-icon span:nth-last-child(2){-webkit-transform-origin:0 100%;transform-origin:0 100%}.nav-icon--active span{background:#009fe3;opacity:1;-webkit-transform:rotate(45deg) translate(-5px,-16px);transform:rotate(45deg) translate(-5px,-16px)}.nav-icon--active span:nth-last-child(3){opacity:0;-webkit-transform:rotate(0) scale(.2,.2);transform:rotate(0) scale(.2,.2)}.nav-icon--active span:nth-last-child(2){-webkit-transform:rotate(-45deg) translate(-2px,15px);transform:rotate(-45deg) translate(-2px,15px)}@media (min-width:1280px){.nav-icon{display:none}}.pagination__list{text-align:center}.participant-management .participant-management__modal .grid{margin-right:0}.participant-management .participant-management__modal .grid__item{text-align:left}.banner--full .banner__content,.banner__event-title,.featured-events__copy,.progress,.radio-toggle__button,.slider-card,.sticky-cta{text-align:center}.c-people-content{padding:50px 0}@media (min-width:1024px){.c-people-content{padding:150px 0}}.c-people-content__title h2{font-size:40px;margin-bottom:30px}.c-people-content__text p{font-size:30px;line-height:38px}.c-people-content__text p+p{font-size:22px;line-height:36px}.c-people-content__button{padding-top:30px}.c-people-listing{margin-bottom:60px}.c-people-listing__title h2{font-size:40px;margin-bottom:40px;margin-top:60px}.c-people-listing__collection{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:-10px}.c-people-listing__collection&gt;*{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;padding:0 10px 40px}@media (min-width:767px){.c-people-listing__collection&gt;*{-ms-flex-preferred-size:50%;flex-basis:50%}.c-people-listing__item{margin:0}}@media (min-width:1024px){.c-people-listing__collection&gt;*{-ms-flex-preferred-size:33.33%;flex-basis:33.33%}.banner .slick-slider img,.banner .slick-slider picture{aspect-ratio:2/1}}.c-people-listing__item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.c-people-listing__item&gt;*{-webkit-box-flex:1;-ms-flex:1;flex:1}.c-people-listing__item-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:20px}.c-people-listing__item-name{margin:0}.c-people-listing__item-role{margin-bottom:40px}.c-people-listing__item-link{margin-top:auto}.progress-bar{background:#e3f7ff;border-radius:5px;height:10px;overflow:hidden;width:100%}.progress-bar__complete{position:absolute;top:0;left:0;background:#41a335;border-radius:5px;height:10px;width:10%}.quote{color:#3b3b3b;font-size:1.125rem;margin:20px auto;max-width:960px;padding:0 75px;position:relative}.quote__footer{color:#009fe3;font-size:1.125rem;font-style:normal}.quote__icon--open{position:absolute;top:0;left:0}.quote__icon--close{position:absolute;right:0;bottom:0;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.radio-toggle{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.radio-toggle__label{cursor:pointer;display:block;padding:13px 10px}.radio-toggle__button{background:#fff;border:2px solid #00acf1;color:#00acf1;font-weight:600;max-width:50%}.radio-toggle__button:first-child{border-radius:10px 0 0 10px}.radio-toggle__button:last-child{border-radius:0 10px 10px 0}.radio-toggle__button--active{background:#00acf1;color:#fff}@media (min-width:768px){.radio-toggle__button{width:300px}}.scroller{background-color:#fff;border-radius:12px;-webkit-box-shadow:0 2px 8px 0 rgba(0,0,0,.17);box-shadow:0 2px 8px 0 rgba(0,0,0,.17);font-size:.75rem;height:150px;line-height:18px;overflow:hidden}.scroller__inner{height:100%;overflow-y:scroll;padding:15px 20px 2px}.search-field{position:absolute;bottom:-115px;left:0;-ms-flex-line-pack:center;align-content:center;background:#e3f7ff;-webkit-box-shadow:0 8px 10px 0 rgba(0,0,0,.18);box-shadow:0 8px 10px 0 rgba(0,0,0,.18);-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;height:115px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0 20px 20px;pointer-events:none;-webkit-transform:translateX(100%);transform:translateX(100%);-webkit-transition:opacity .75s ease,-webkit-transform .5s ease;transition:opacity .75s ease,-webkit-transform .5s ease;transition:transform .5s ease,opacity .75s ease;transition:transform .5s ease,opacity .75s ease,-webkit-transform .5s ease;width:100%;z-index:100}.search-field__inner{-ms-flex-item-align:end;align-self:flex-end;max-width:400px;position:relative;width:100%}.search-field__button{position:absolute;top:50%;right:5px;background:0 0;border:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.search-field--active{opacity:1;pointer-events:all;-webkit-transform:translateX(0);transform:translateX(0)}@media (min-width:1280px){.search-field{position:relative;bottom:auto;left:auto;background:0 0;-webkit-box-shadow:none;box-shadow:none;height:auto;padding:0;-webkit-transform:translateX(100%);transform:translateX(100%);width:auto}.search-field__input{padding:10px 9px 11px}.search-field__input::-webkit-input-placeholder{color:#3b3b3b}.search-field__input::-moz-placeholder{color:#3b3b3b}.search-field__input:-ms-input-placeholder{color:#3b3b3b}.search-field__input::-ms-input-placeholder{color:#3b3b3b}.search-field__input::placeholder{color:#3b3b3b}.search-field--active{-webkit-transform:translateX(0);transform:translateX(0)}.search-field__button{display:none}}.c-shops-sticky-btn{position:fixed;z-index:999;bottom:32px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);-webkit-transition:opacity .4s ease-in-out,-webkit-transform .4s ease-in-out;transition:opacity .4s ease-in-out,-webkit-transform .4s ease-in-out;transition:opacity .4s ease-in-out,transform .4s ease-in-out;transition:opacity .4s ease-in-out,transform .4s ease-in-out,-webkit-transform .4s ease-in-out}.c-shops-sticky-btn.is-hidden{opacity:0;-webkit-transform:translateX(-50%) translateY(-10px);transform:translateX(-50%) translateY(-10px)}.c-shops-sticky-btn__btn{-webkit-box-shadow:0 4px 10px rgba(0,0,0,.3);box-shadow:0 4px 10px rgba(0,0,0,.3);background-color:#00acf1;color:#fff!important;font-size:18px;line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:13px 24px;border-radius:16px;gap:10px;-webkit-transition:background-color 250ms ease-out;transition:background-color 250ms ease-out}.c-shops-sticky-btn__btn:hover{background-color:#009fe3;-webkit-transition-duration:.4s;transition-duration:.4s}.c-shops-sticky-btn svg{width:24px;height:24px;-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transition:-webkit-transform 250ms ease-out;transition:-webkit-transform 250ms ease-out;transition:transform 250ms ease-out;transition:transform 250ms ease-out, -webkit-transform 250ms ease-out}.c-shops-sticky-btn__btn:hover svg{-webkit-transition-duration:.4s;transition-duration:.4s;-webkit-transform:translateY(3px) rotate(90deg);transform:translateY(3px) rotate(90deg)}.c-shops{overflow:visible;max-width:1228px;padding:0 15px}.c-shops__intro h2{font-size:36px}.c-shops__intro h2+*{margin-top:24px}.c-shops__intro+*{margin-top:40px}.c-shops__filter input{font-size:20px;padding:0}.c-shops__filter input::-webkit-input-placeholder{color:#000}.c-shops__filter input::-moz-placeholder{color:#000}.c-shops__filter input:-ms-input-placeholder{color:#000}.c-shops__filter input::-ms-input-placeholder{color:#000}.c-shops__filter input::placeholder{color:#000}.c-shops__filter #article_filter{gap:16px}@media (max-width:767px){.c-shops__filter #article_filter{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.c-shops__filter .input-container{display:-webkit-box;display:-ms-flexbox;display:flex;gap:16px;padding:5px 16px!important}.c-shops__filter .input-container:focus-within,.c-shops__filter .input-container:hover{border-color:#479DDC!important}.c-shops__filter .reset_filter,.c-shops__filter .submit{font-weight:600;font-size:18px;padding:17px 24px!important;height:auto!important;margin:0!important;text-align:center;-webkit-box-flex:1;-ms-flex:1 1 50%;flex:1 1 50%}.c-shops__location-btn{fill:#0171AB}.c-shops__location-btn:hover{fill:#283583}.c-shops__location-btn.active{fill:#E6007E}.c-shops__actions{display:-webkit-box;display:-ms-flexbox;display:flex;gap:16px}.c-shops__map{border-top-left-radius:16px;border-top-right-radius:16px;-webkit-box-shadow:0 15px 40px rgba(0,0,0,.15);box-shadow:0 15px 40px rgba(0,0,0,.15);max-width:none!important;width:100%;margin-top:80px!important;height:auto!important;overflow:clip!important}@media (max-width:767px){.c-shops__map{margin-top:44px!important;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.c-shops__map .google_map{display:none}.c-shops__item{margin:0!important}}.c-shops__map .google_map{position:sticky!important;top:0;max-height:100vh;max-height:100dvh}.c-shops__shops-list{width:430px!important;-webkit-box-flex:0!important;-ms-flex:0 0 430px!important;flex:0 0 430px!important;overflow:visible!important}.banner__slider,.featured-events,.image-background,.panel,.primary-nav__list,.slider-card,.video,.video__poster{overflow:hidden}@media (max-width:961px){.c-shops__shops-list{width:100%!important;-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important;padding:0!important}}.c-shops__results-title{padding:22px 24px!important;font-size:16px;position:sticky;top:0;background-color:#F4F4EF}.c-shops__results-title:before{position:absolute;top:50%;right:24px;width:24px;height:24px;background-image:url(../images/icons/circle-anim-3.svg);background-size:100%;-webkit-transform:translateY(-50%);transform:translateY(-50%);opacity:0;-webkit-transition:opacity .4s ease-out;transition:opacity .4s ease-out}.c-shops__results-title:has(.loading):before{opacity:1}.c-shops__item{width:100%!important;scroll-margin-top:74px;border:2px solid #fff;border-bottom:2px solid #F4F4EF}.c-shops__item:hover{border:2px solid #479DDC!important}.c-shops__item.selected{border:2px solid #E3F7FF!important}.c-shops__item .contact_directions,.c-shops__item .contact_number{font-size:18px;font-weight:600;padding:13px 24px!important;height:auto!important;cursor:pointer!important}.c-shops__item .contact_directions&gt;*,.c-shops__item .contact_number&gt;*{pointer-events:none}.c-shops__item .contact_directions:hover,.c-shops__item .contact_number:hover{opacity:.8}.c-shops__item-title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.c-shops__item-title h2{margin-bottom:0!important}.c-shops__item-title h2:hover{text-decoration:none!important}.c-shops__item-title+*{margin-top:16px}.c-shops [role=dialog]&gt;:first-child+div{margin-top:-32px}.slider-card{position:relative;background:#814997;border-radius:12px;height:calc(100% - 20px);max-width:568px;padding:150px 50px 50px;-webkit-transition:-webkit-box-shadow .3s;transition:-webkit-box-shadow .3s;transition:box-shadow .3s;transition:box-shadow .3s, -webkit-box-shadow .3s;width:100%;margin:0 auto}.slider-card__flower{position:absolute;width:240px;height:240px;fill:#762282}.slider-card__flower:first-child{top:0;left:0;-webkit-transform:translate(-45%,-45%);transform:translate(-45%,-45%)}.slider-card__flower:last-child{bottom:0;right:0;-webkit-transform:translate(45%,45%);transform:translate(45%,45%)}.slider-card__title{font-size:2.625rem;color:#cbd400;line-height:1.333}.slider-card__content{font-size:1.5rem;line-height:1.45;color:#fff;margin-top:20px}.slider-card .slider{padding:0}.social-nav{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.social-nav__icon{fill:#fff;height:32px;width:34px}.social-nav__item{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-ms-flexbox;display:flex;height:42px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0 7.5px;width:42px}.social-nav__item--instagram{background:linear-gradient(46.05deg,#ffcd21 0,#f80000 49.52%,#bc00b2 100%)}.social-nav__item--linkedin,.social-nav__item--youtube{background-color:#fff}.social-nav__item--linkedin .social-nav__icon{fill:#0077b5}.social-nav__item--twitter{background-color:#38a1f3}.social-nav__item--facebook{background-color:#3b5998}.tag{border-radius:14px;color:#fff;display:inline-block;font-size:.8125rem;font-weight:600;padding:0 20px;text-transform:uppercase}.tag--features{border:1px solid #eee;background-color:#fff;color:#3b3b3b}.tag--news{background-color:#e6007e}.tag--naomis-blog{background-color:#ec6408}.tag--charity-news{background-color:#41a335}.tag--fundraising-news{background-color:#e6007e}.tag--event{background-color:#41a335}.tag--story{background-color:#00acf1}.tag--incomplete{background-color:#898989}.tag--small{font-size:.5rem;line-height:1.5;padding:3px 10px}.video{background-color:#000;border-radius:12px;max-width:100%;position:relative}.video:before{display:block;padding-top:56.25%}.video__poster{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;-webkit-transition:opacity .3s,visibility 0 .3s;transition:opacity .3s,visibility 0 .3s;z-index:10}.video__poster:after,.video__poster:before{top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);content:'';position:absolute;pointer-events:none}.video__poster:before{background-color:rgba(0,172,241,.9);border-radius:50%;height:75px;max-height:75vw;max-width:75vh;width:75px}.video__poster:after{border-color:transparent transparent transparent #fff;border-radius:3px;border-style:solid;border-width:15px 0 15px 21px;height:0;margin-left:2px;width:0}.video__image,.video__picture:after{width:100%;display:block}.video__poster--hide{opacity:0;visibility:hidden}.video__picture:after{position:absolute;top:0;right:0;bottom:0;left:0;background:-webkit-gradient(linear,left bottom, left top,color-stop(0, rgba(0,0,0,.75)),color-stop(50%, rgba(255,255,255,0)));background:linear-gradient(0deg,rgba(0,0,0,.75) 0,rgba(255,255,255,0) 50%);content:'';height:100%;z-index:10}.video__info{position:absolute;bottom:15px;left:20px;color:#fff;z-index:15}.banner__image,.video__iframe{height:100%;left:0;top:0;width:100%}.video__title{display:block;font-weight:600}.video__iframe{position:absolute;border:0}@media (max-width:768px){.video__info{font-size:.75rem;line-height:1.5}}.banner{padding:100px 0;position:relative}.banner__picture{display:block}.banner__image{display:block;max-width:100%;-o-object-fit:cover;object-fit:cover;position:absolute}.banner__container{-webkit-box-align:left;-ms-flex-align:left;align-items:left;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 auto;max-width:1160px;padding:20px;position:relative;width:100%}.banner__slider{padding-bottom:60px}.banner__content{max-width:465px}.banner__heading{color:#fff;line-height:1;margin-bottom:20px}.banner__heading--has-icon{padding-left:85px;position:relative}.banner__title{color:#e6007e}.banner__copy{color:#fff;font-size:1.25rem;font-weight:600;line-height:1.6;margin-bottom:0}.banner__icon{position:absolute;top:-10%;left:0}.banner--has-overlay-half:before,.banner--has-overlay:before{position:absolute;top:0;bottom:0;left:0;content:'';right:0}.banner__info{position:absolute;bottom:0;background-color:#C30055;border-top-left-radius:100% 50%;border-top-right-radius:100% 50%;margin-left:-5%;margin-right:-5%;opacity:.85;padding:58px 5%;width:110%}.banner__event-summary{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:1.125rem;font-weight:600;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-bottom:10px}.banner__event-summary .event-summary__icon{height:25px;width:25px}.banner--graphic{padding:0}.banner--graphic .banner__content{margin-top:20px;z-index:2}.banner--align-left .banner__container{-webkit-box-align:left;-ms-flex-align:left;align-items:left}.banner--full .banner__content{max-width:none}.banner--has-border{border-bottom:6px solid #009fe3}.banner--has-info-panel{min-height:620px;overflow:hidden}.banner--has-overlay:before{background-color:rgba(59,59,59,.75);z-index:1}.banner--has-overlay .banner__content{z-index:2}.banner--has-overlay-half:before{background:-webkit-gradient(linear,left top, right top,color-stop(0, rgba(0,0,0,.3)),color-stop(75%, rgba(0,212,255,0)));background:linear-gradient(90deg,rgba(0,0,0,.3) 0,rgba(0,212,255,0) 75%);z-index:1}.banner--has-overlay-half .banner__content{z-index:2}.banner__event-title h1{color:#fff}@media (min-width:1024px){.banner--center-align .banner__picture+.container{position:static!important}.banner--center-align .banner__content{bottom:auto!important;margin-left:10%;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}}@media (min-width:1023px){.banner--graphic .banner__picture:before{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(60deg,rgba(0,0,0,.3) 0,rgba(255,255,255,0) 100%);content:'';opacity:60%;pointer-events:none;z-index:1}.banner__content{text-shadow:1px 1px rgba(0,0,0,.4)}}@media (min-width:1024px){.banner{padding:200px 0}.banner__summary{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.banner__event-summary{margin-right:45px}.banner__event-summary:last-child{margin-right:0}.banner__content--half{max-width:50%}.banner__slider{padding-bottom:0}.banner__title{color:#fff}.banner--graphic{padding:0}.banner--graphic .banner__content{bottom:100px;color:#fff;left:20px;margin-top:0;position:absolute}}.button-grid{display:-webkit-box;display:-ms-flexbox;display:flex}.button-grid .button+.button{margin-left:10px}.button-grid--align-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.button-grid--align-right{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.content-block__icon{position:absolute;top:-105px;right:0;fill:#ffcd21;height:210px;width:210px}.donate{padding-bottom:50px;padding-top:50px}.donate__title{margin-bottom:50px}.donate__item{margin:auto;max-width:240px}.donate__reasons{margin-bottom:30px}.donate__icon{margin-bottom:20px;width:100%}.donate__icon--green{fill:#41a335}.donate__icon--blue{fill:#009fe3}.donate__icon--purple{fill:#814997}.donate__copy{margin-bottom:0}.featured-events{background-color:#e3f7ff;padding:80px 0 130px;position:relative}.featured-events__bg{display:none}.featured-events__button{position:absolute;bottom:80px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media (min-width:1024px){.featured-events__bg{position:absolute;top:50%;right:0;display:block;height:100%;max-width:50%;-o-object-fit:cover;object-fit:cover;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:696px}.featured-events__copy{max-width:430px;text-align:left}.featured-events__content{max-width:calc(50% - 80px);position:relative}.featured-events__button{position:absolute;top:0;right:0;bottom:auto;left:auto;-webkit-transform:none;transform:none}.featured-events__card{width:200%}}.image-background{height:75vw;position:relative;margin-top:-50px}.image-background:after,.image-background:before{position:absolute;left:50%;background:#fff;display:block;max-width:calc(100% - 40px);-webkit-transform:translateX(-50%);transform:translateX(-50%);width:1330px;content:'';height:25px}.image-background:before{top:0;border-bottom-left-radius:14px;border-bottom-right-radius:14px}.image-background:after{bottom:0;border-top-left-radius:14px;border-top-right-radius:14px}@media (min-width:768px){.image-background{height:45vw}.image-background:after,.image-background:before{height:40px}.panel__media{margin-bottom:-40px;margin-top:-40px}}@media (min-width:1024px){.image-background:after,.image-background:before{height:65px}.media-cloud__group{min-height:500px}.media-cloud__item{position:absolute}.media-cloud__item--1{bottom:0;left:0;z-index:2}.media-cloud__item--2{left:70px;max-width:calc(100% - 70px);top:0;z-index:1}.media-cloud__item--3{bottom:0;right:30px;z-index:3}.media-cloud__item--4{bottom:25%;right:0;z-index:4}}@media (min-width:1280px){.image-background:after,.image-background:before{height:85px}}.image-background+.section{padding-top:0}.panel{background:#814997;border-radius:8px;position:relative}.panel--blue,.panel--brand{background:#e3f7ff}.panel__top-left{position:absolute;top:-62px;left:-62px;fill:#762282}.panel__bottom-right{position:absolute;right:-62px;bottom:-62px;fill:#762282}.panel__content{padding:20px;position:relative;z-index:1}.panel--brand .panel__bottom-right,.panel--brand .panel__top-left{fill:#009fe3;opacity:.2}.panel--large-asset .panel__top-left{position:absolute;top:-102px;left:-102px}.panel--large-asset .panel__bottom-right{position:absolute;right:-102px;bottom:-102px}.panel--form{max-width:658px}.panel--blue .panel__bottom-right{fill:rgba(0,172,241,.2)}.panel--large{padding:80px 20px}.card-carousel .panel{width:calc(100% - 20px)!important}.primary-nav__50{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.primary-nav__contact,.primary-nav__donate{margin-bottom:20px}.primary-nav__list{padding-bottom:50px;width:100%}.primary-nav__item{display:block}.primary-nav__link{border-bottom:1px solid #d1eaf6;color:#283583;display:block;font-size:1.25rem;font-weight:600;line-height:27px;padding:11px 60px;position:relative;margin-left:25px;margin-right:25px}.primary-nav__link--active{color:#e6007e}.primary-nav__arrow{position:absolute;top:50%;right:60px;fill:#e6007e;padding:20px 0}.primary-nav__arrow--right{-webkit-transform:translateY(-50%) rotate(-90deg);transform:translateY(-50%) rotate(-90deg)}.primary-nav__arrow--left{position:absolute;top:50%;left:30px;-webkit-transform:translateY(-50%) rotate(90deg);transform:translateY(-50%) rotate(90deg)}.primary-nav__subnav{position:absolute;top:0;left:0;background:#e3f7ff;height:calc(100vh - 95px);opacity:0;overflow:scroll;padding:50px 0;pointer-events:none;-webkit-transition:opacity .75s ease,-webkit-transform .5s ease;transition:opacity .75s ease,-webkit-transform .5s ease;transition:transform .5s ease,opacity .75s ease;transition:transform .5s ease,opacity .75s ease,-webkit-transform .5s ease;z-index:500}.primary-nav__subnav--active{opacity:1;pointer-events:all;-webkit-transform:translateX(0);transform:translateX(0);width:100%}.primary-nav__buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-left:60px;margin-right:60px}.primary-nav__links{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-bottom:30px}.primary-nav__links .primary-nav__link{border-bottom:0;margin-bottom:20px;font-size:1.125rem;font-weight:600;padding:0}.tabs__link,.u-weight-700{font-weight:700}@media (min-width:568px){.primary-nav__buttons{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.primary-nav__button{margin-bottom:0;margin-left:10px}.primary-nav__button:first-child{margin-left:0}}@media (min-width:1024px){.primary-nav__buttons{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.primary-nav__button{margin-bottom:10px;margin-left:0}}@media (min-width:1280px){.primary-nav__list{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;overflow:visible;padding:0 0 0 220px;width:100%}.primary-nav__item{border-radius:14px 14px 0 0;display:block;padding:14px 5px}.primary-nav__arrow--left,.primary-nav__buttons,.primary-nav__item--back,.primary-nav__links{display:none}.primary-nav__item:last-child{margin-right:0}.primary-nav__item .primary-nav__subnav{position:absolute;top:55px;left:auto;background:#e3f7ff;border-radius:0 14px 14px;height:auto;margin-left:-20px;overflow:visible;padding:0;pointer-events:none;visibility:hidden;width:150%;z-index:500}.primary-nav__item:hover .primary-nav__link{color:#e6007e}.primary-nav__item--has-dropdown{position:relative}.primary-nav__item--has-dropdown:hover{background:#e3f7ff}.primary-nav__item--has-dropdown:hover&gt;.primary-nav__subnav{opacity:1;pointer-events:all;visibility:visible}.primary-nav__item--has-dropdown:hover&gt;.primary-nav__subnav .primary-nav__item:hover{background-color:#C30055;border-radius:0}.primary-nav__item--has-dropdown:hover&gt;.primary-nav__subnav .primary-nav__item:hover&gt;.primary-nav__link{color:#fff}.primary-nav__item--has-dropdown:hover&gt;.primary-nav__subnav .primary-nav__link{color:#283583}.primary-nav__item--has-dropdown:hover&gt;.primary-nav__subnav .primary-nav__arrow--right{-webkit-transform:translateY(-50%) rotate(-90deg);transform:translateY(-50%) rotate(-90deg)}.primary-nav__item--has-dropdown:hover&gt;.primary-nav__subnav .primary-nav__subnav{border-radius:0 14px 14px 0;position:absolute;left:calc(100% + 20px);top:0}.primary-nav__item--has-dropdown:hover .primary-nav__link{color:#e6007e}.primary-nav__link{border:0;font-size:1.125rem;padding:0}.primary-nav__arrow--right{right:-20px;-webkit-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}}.sticky-cta,.tabs,.tabs-vertical__content{width:100%}.progress__label{color:rgba(59,59,59,.8);font-size:.875rem;margin-bottom:15px}.sticky-cta,.tabs__link{color:#fff;overflow:hidden;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box}.tabs__link,.u-size-18{font-size:1.125rem}.sticky-cta{background:-webkit-gradient(linear,left bottom, left top,color-stop(0, #762282),to(#814997));background:linear-gradient(0deg,#762282 0,#814997 100%);border-radius:12px;margin:-100px auto 0;max-width:290px;padding:20px}.tabs{border-bottom:1px solid #d8d8d8}.tabs__text{pointer-events:none;position:relative}.tabs__link{background:#814997;border-bottom:4px solid transparent;bottom:-1px;cursor:pointer;display:block;line-height:1.2;padding:15px 10px;text-decoration:none}.tabs__link--active,.tabs__link:hover{color:#814997}.tabs__content{height:0;opacity:0;pointer-events:none}.tabs__content--active{height:auto;opacity:1;pointer-events:all}.tabs--dark{border-color:rgba(255,255,255,.2)}.tabs--dark .tabs__link{color:#fff}.tabs--dark .tabs__link--active,.tabs--dark .tabs__link:hover{color:#814997}@media (min-width:medium){.tabs{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.tabs__link{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;text-align:center}.tabs__link--active{border-color:#814997;color:#814997}}.tabs-vertical .select{display:none}.tabs-vertical .tabs__link{background-color:#814997;border-radius:8px;bottom:0;color:#fff;overflow:hidden;padding:20px 65px 15px 20px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.tabs-vertical .tabs__link--active{background-color:#e6007e;border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:12px;position:relative}.tabs-vertical .tabs__link--active .tabs__arrow{-webkit-transform:translateY(-50%) rotate(180deg);transform:translateY(-50%) rotate(180deg)}.tabs-vertical .tabs__content--active{border-bottom-left-radius:8px;border-bottom-right-radius:8px;margin-bottom:12px;padding:30px 0;position:relative}.tabs-vertical .tabs__content--active:after{position:absolute;top:0;left:0;background:#fff;content:'';height:30px;width:100%}.tabs-vertical .tabs__group{border-radius:8px;-webkit-box-shadow:2px 3px 16px rgba(0,0,0,.23667);box-shadow:2px 3px 16px rgba(0,0,0,.23667);margin-bottom:12px}.tabs-vertical .tabs__arrow{position:absolute;top:50%;right:22px;fill:#fff;pointer-events:none;-webkit-transform:translateY(-50%);transform:translateY(-50%)}@media (min-width:768px){.tabs-vertical{border-radius:8px;-webkit-box-shadow:2px 3px 16px rgba(0,0,0,.23667);box-shadow:2px 3px 16px rgba(0,0,0,.23667);display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 15px;overflow:hidden;padding:0}.tabs-vertical .tabs{border-bottom:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.tabs-vertical .tabs__link{border:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none;margin-bottom:0;overflow:inherit;padding:20px 40px;text-overflow:inherit;white-space:inherit}.tabs-vertical .tabs__link--active{background:#e6007e}.tabs-vertical .tabs__link--active:after{content:none}.tabs-vertical .tabs__link .tabs__arrow{-webkit-transform:translateY(-50%) rotate(-90deg);transform:translateY(-50%) rotate(-90deg)}.tabs-vertical .tabs__content{width:auto}.tabs-vertical .tabs__content--active{-webkit-box-shadow:none;box-shadow:none}.tabs-vertical .tabs__group{border-radius:0;-webkit-box-shadow:none;box-shadow:none;margin-bottom:0}.tabs-vertical__container{background:#814997;min-width:330px;padding:40px 0}}.u-hidden,.u-hide{display:none}#main_nav:after,.basic_form:after{content:"\0020";visibility:hidden;clear:both;overflow:hidden}@media (min-width:1280px){.tabs-vertical__container{min-width:430px}.tabs-vertical .tabs__content--active{padding:8%}}.u-noscroll{overflow:hidden}.u-align-center{text-align:center}.u-align-right{text-align:right}.u-mb-15{margin-bottom:1.5em}.u-overflow-hidden{overflow:hidden}@media (max-width:768px){.u-mb-50\@medium{margin-bottom:50px}}.u-m-auto{margin-left:auto;margin-right:auto}.u-flex{display:-webkit-box;display:-ms-flexbox;display:flex}.u-flex-wrap{-ms-flex-wrap:wrap;flex-wrap:wrap}.u-justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.u-justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.u-w-full{width:100%}.u-rounded{border-radius:12px}.u-shadow{-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1)}.u-pos-rel{position:relative}.u-pos-sticky{position:sticky;top:0}.u-object-fit-cover{background-size:cover;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.u-white{color:#fff}.u-mine-shaft{color:#3b3b3b}.u-bg-white{background:#fff}.u-success{color:#2cbe4e}.u-error{color:#cb2431}@media (min-width:768px){.u--img-overlap{bottom:0;position:absolute}.u-pos-rel\@medium-only{position:relative}.u-hidden\@min-medium{display:none}}@media (min-width:1024px){.u-mb-100\@large-min{margin-bottom:100px}.u-ml\@large{margin-left:20px}.u-pos-rel\@medium-only{position:static}}.u-size-12{font-size:.75rem}.u-p{padding:20px}.u-p-half{padding:10px}.u-p-double{padding:40px}.u-p-tripple{padding:60px}.u-p-quadruple{padding:80px}.u-p0{padding:0}.u-pt{padding-top:20px}.u-pt-half{padding-top:10px}.u-pt-double{padding-top:40px}.u-pt-tripple{padding-top:60px}.u-pt-quadruple{padding-top:80px}.u-pt0{padding-top:0}.u-pr{padding-right:20px}.u-pr-half{padding-right:10px}.u-pr-double{padding-right:40px}.u-pr-tripple{padding-right:60px}.u-pr-quadruple{padding-right:80px}.u-pr0{padding-right:0}.u-pb{padding-bottom:20px}.u-pb-half{padding-bottom:10px}.u-pb-double{padding-bottom:40px}.u-pb-tripple{padding-bottom:60px}.u-pb-quadruple{padding-bottom:80px}.u-pb0{padding-bottom:0}.u-pl{padding-left:20px}.u-pl-half{padding-left:10px}.u-pl-double{padding-left:40px}.u-pl-tripple{padding-left:60px}.u-pl-quadruple{padding-left:80px}.u-pl0{padding-left:0}.u-ph{padding-left:20px;padding-right:20px}.u-ph-half{padding-left:10px;padding-right:10px}.u-ph-double{padding-left:40px;padding-right:40px}.u-ph-tripple{padding-left:60px;padding-right:60px}.u-ph-quadruple{padding-left:80px;padding-right:80px}.u-ph0{padding-left:0;padding-right:0}.u-pv{padding-top:20px;padding-bottom:20px}.u-pv-half{padding-top:10px;padding-bottom:10px}.u-pv-double{padding-top:40px;padding-bottom:40px}.u-pv-tripple{padding-top:60px;padding-bottom:60px}.u-pv-quadruple{padding-top:80px;padding-bottom:80px}.u-pv0{padding-top:0;padding-bottom:0}.u-m{margin:20px}.u-m-half{margin:10px}.u-m-double{margin:40px}.u-m-tripple{margin:60px}.u-m-quadruple{margin:80px}.u-m0{margin:0}.u-mt{margin-top:20px}.u-mt-half{margin-top:10px}.u-mt-double{margin-top:40px}.u-mt-tripple{margin-top:60px}.u-mt-quadruple{margin-top:80px}.u-mt0{margin-top:0}.u-mr{margin-right:20px}.u-mr-half{margin-right:10px}.u-mr-double{margin-right:40px}.u-mr-tripple{margin-right:60px}.u-mr-quadruple{margin-right:80px}.u-mr0{margin-right:0}.u-mb{margin-bottom:20px}.u-mb-half{margin-bottom:10px}.u-mb-double{margin-bottom:40px}.u-mb-tripple{margin-bottom:60px}.u-mb-quadruple{margin-bottom:80px}.u-mb0{margin-bottom:0}.u-ml{margin-left:20px}.u-ml-half{margin-left:10px}.u-ml-double{margin-left:40px}.u-ml-tripple{margin-left:60px}.u-ml-quadruple{margin-left:80px}.u-ml0{margin-left:0}.u-mh{margin-left:20px;margin-right:20px}.u-mh-half{margin-left:10px;margin-right:10px}.u-mh-double{margin-left:40px;margin-right:40px}.u-mh-tripple{margin-left:60px;margin-right:60px}.u-mh-quadruple{margin-left:80px;margin-right:80px}.u-mh0{margin-left:0;margin-right:0}#content_main.with_sub_nav,.full_width_column .page_title,.full_width_column .ugc,.single_column .page_title,.single_column .ugc{margin-left:1.69492%;margin-right:1.69492%}.u-mv{margin-top:20px;margin-bottom:20px}.u-mv-half{margin-top:10px;margin-bottom:10px}.u-mv-double{margin-top:40px;margin-bottom:40px}.u-mv-tripple{margin-top:60px;margin-bottom:60px}.u-mv-quadruple{margin-top:80px;margin-bottom:80px}.u-mv0{margin-top:0;margin-bottom:0}@media (max-width:1024px){.u-hidden\@large,.u-hide\@large{display:none}}@media (max-width:767px){.u-hidden\@medium{display:none}}#content_main{padding-top:3.75em}#content_main.with_sub_nav{padding-bottom:3.75em}@media (min-width:480px){#content_main.with_sub_nav,.full_width_column .page_title,.full_width_column .ugc,.single_column .page_title,.single_column .ugc{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){#content_main.with_sub_nav,.full_width_column .page_title,.full_width_column .ugc,.single_column .page_title,.single_column .ugc{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){#content_main.with_sub_nav{margin-left:5.71429%;margin-right:5.71429%}#content_main.full_width_column,#content_main.single_column{padding-top:9.375em;padding-bottom:3.75em}#content_main.full_width_column .page_title,#content_main.full_width_column .ugc,#content_main.single_column .page_title,#content_main.single_column .ugc{margin-left:auto;margin-right:auto;width:82.85714%}}#content_sub{margin-top:5em}@media (min-width:960px){#content_main.with_sub_nav{padding-top:0;margin-left:8.57136%;margin-right:0;width:65.71429%;display:inline-block;vertical-align:top}#content_main.full_width_column,#content_main.single_column{padding-top:0}#content_main.full_width_column .page_title,#content_main.full_width_column .ugc,#content_main.single_column .page_title,#content_main.single_column .ugc{width:71.42858%}#content_sub{padding-top:0;margin-top:0;width:20.00002%;margin-left:1.42856%;display:inline-block;vertical-align:top}}.nav-wrap{background-color:#00649d;display:none;width:100%;padding-top:5.625em;padding-bottom:1.875em}@media (min-width:960px){.nav-wrap{background:#fff;display:block!important;position:relative;padding:0}}.nav-wrap__center{max-width:960px;margin:0 auto;text-align:right}#main_nav .menu_link,#sub_nav a.menu_link{font-size:1.5em;margin-left:25px;margin-right:25px;line-height:1.25em}#main_nav li.level_1,#sub_nav li{margin-bottom:1.125em}.nav-wrap__curve{background-image:url(../images/backgrounds/header_curve.png);background-position:center top;background-repeat:no-repeat;position:absolute;top:100%;height:40px;left:0;right:0;pointer-events:none;display:none;z-index:2}.extend,.sub_nav_trigger{position:relative}.svg .nav-wrap__curve{background-image:url(../images/backgrounds/header_curve.svg);background-size:600px auto}@media (min-width:960px){.nav-wrap__curve{display:block;height:152px}.nav-wrap__curve,.svg .nav-wrap__curve{background-size:2560px auto}}#main_nav{overflow:visible;z-index:5}#main_nav:after{display:block;height:0}#main_nav .menu_link{-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:background-color;transition-property:background-color;border-radius:5px;padding-top:.1875em;padding-bottom:.1875em;display:block;color:#fff;background-color:#25408f;text-align:center}#main_nav .menu_link:hover{background-color:#00aeef;color:#fff}#main_nav .menu_link.active{background-color:#fff33e;color:#25408f}#header_items{margin-top:65px}#sub_nav_wrapper .level-1 a{color:#fff;padding-left:30px}@media (min-width:768px){#main_nav .menu_link,#sub_nav_wrapper .level-1{margin-left:auto;margin-right:auto;width:330px}}@media (min-width:960px){#main_nav{margin-top:0;width:100%}#main_nav li{display:inline-block}#main_nav .menu_link{-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:background-image;transition-property:background-image;border-radius:0;padding:0 15px;color:#00649d;width:auto;background:0 0;height:44px}#main_nav .menu_link span{-webkit-box-sizing:border-box;box-sizing:border-box;padding-top:5px;padding-bottom:5px}#main_nav .menu_link:hover{background:url(../images/backgrounds/primary_nav_line.png) bottom left no-repeat;color:#00649d}.svg #main_nav .menu_link:hover{background-image:url(../images/backgrounds/primary_nav_line.svg);background-size:100% 5px}#main_nav .menu_link.active{padding-left:0;height:54px;background:url(../images/backgrounds/menu_right_bkg.png) top right no-repeat}#main_nav .menu_link.active:hover{cursor:default;background:url(../images/backgrounds/menu_right_sml_bkg.png) top right no-repeat;background-size:15px 54px}#main_nav .menu_link.active span{padding-left:15px;display:inline-block;height:54px;padding-top:10px;padding-bottom:10px;color:#fff;background:url(../images/backgrounds/menu_left_bkg.png) top left no-repeat}#sub_nav_wrapper .level-1 a{color:#00649d;padding-left:0}}@media (min-width:1200px){#main_nav{width:100%}#main_nav .menu_link{padding-left:20px;padding-right:20px}#main_nav .menu_link.active:hover{background:url(../images/backgrounds/menu_right_bkg.png) top right no-repeat;background-size:20px 54px}#main_nav .menu_link.active span{padding-left:20px}}#sub_nav_trigger_wrapper,.sub_nav_trigger{background-color:#25408f}#search_form .field.search_button input,#site_search #site_search_submit{background-position:center center;border:none;background-repeat:no-repeat}.sub_nav_trigger{font-size:1.5em;line-height:1.25em;-webkit-box-sizing:border-box;box-sizing:border-box;padding:.75em 80px .75em 25px;display:block;color:#fff}.sub_nav_trigger span.icon,.sub_nav_trigger span.icon_holder{position:absolute}.sub_nav_trigger span.icon_holder{top:0;right:0;width:80px;height:100%;background-color:#00aeef}.sub_nav_trigger span.icon{-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform;background-image:url(../images/icons/sub_nav_trigger.png);background-position:center center;background-repeat:no-repeat;top:20px;right:24px;width:24px;height:24px}.svg .sub_nav_trigger span.icon{background-image:url(../images/icons/sub_nav_trigger.svg);background-size:image-width("../images/icons/sub_nav_trigger.png")}.sub_nav_trigger:hover{color:#fff}.sub_nav_trigger.active{background-color:#fff33e;color:#00649d}.sub_nav_trigger.active span.icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}#sub_nav_wrapper{padding-top:1.875em;padding-bottom:1.875em;display:none;background-color:#00649d}#sub_nav{display:block!important}#sub_nav a.menu_link{border-radius:5px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;background-color:#25408f;display:block;padding:.1875em 25px}#sub_nav li.level_1 a.menu_link.active{background-color:#fff33e;color:#25408f}#sub_nav .dropdown{margin-top:1.125em;margin-left:20px;margin-right:20px}@media (min-width:768px){.sub_nav_trigger{-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:background-color;transition-property:background-color;margin-left:auto;margin-right:auto;text-align:right;padding-right:45%}.sub_nav_trigger:hover{background-color:#fff33e;color:#00649d}.sub_nav_trigger span.icon_holder{width:40%}.sub_nav_trigger span.icon{left:20px}#sub_nav a.menu_link{width:330px;margin-left:auto;margin-right:auto}}@media (min-width:960px){.sub_nav_trigger{display:none}#sub_nav_wrapper{display:block!important;background:0 0}#sub_nav{margin-left:-5.71424%}#sub_nav a.menu_link{width:auto;color:#00649d;padding:0 5.71424%;background:0 0;display:block}#sub_nav a.menu_link:hover span{border-bottom:1px solid #00649d}#sub_nav li.level_1 a.menu_link.active{padding-top:.375em;padding-bottom:.375em;border-radius:8px;display:block;background-color:#00649d;color:#fff33e}#sub_nav .dropdown{margin-top:.9375em;margin-left:11.42848%}.shop-online #outer_wrapper #sub_nav a.menu_link{color:#fff}}.shop-online #article_tag_filter label{color:#fff}#article_tag_filter input{height:50px}#article_tag_filter label{color:#3b3b3b}#article_tag_filter .field{margin-left:0;margin-right:0}#article_tag_filter .button{background-position:right center}#article_tag_filter .reset_filter{margin-left:0}@media (min-width:768px){.shop-online #article_tag_filter #main_flash,.shop-online #article_tag_filter fieldset{margin-left:0;width:320px;display:inline-block;vertical-align:top;margin-right:2.85714%}.shop-online #article_tag_filter .buttons#main_flash,.shop-online #article_tag_filter fieldset.buttons{margin-top:1.9em}.shop-online #article_tag_filter .buttons#main_flash .button,.shop-online #article_tag_filter fieldset.buttons .button{width:100%}.shop-online #article_tag_filter .field{margin-left:0}}@media (min-width:960px){.shop-online #article_tag_filter #main_flash,.shop-online #article_tag_filter fieldset{width:280px}}#form_wrapper{padding-top:3.75em;padding-bottom:5.625em}.basic_form:after{display:block;height:0}.basic_form #main_flash,.basic_form fieldset{-webkit-box-sizing:border-box;box-sizing:border-box;width:80%;margin-left:5.71429%;margin-right:5.71429%}.basic_form .buttons#main_flash,.basic_form fieldset.buttons{margin-top:1.5em}.basic_form .with_border#main_flash,.basic_form fieldset.with_border{border-top:2px solid #5e3784}.basic_form #main_flash .inline_fs#main_flash,.basic_form #main_flash fieldset.inline_fs,.basic_form fieldset .inline_fs#main_flash,.basic_form fieldset fieldset.inline_fs{margin:0;padding:0}.basic_form .form-group{margin-bottom:10px}.basic_form .container{width:710px;max-width:100%;margin:0 auto}.basic_form .field,.basic_form legend{margin-left:1.69492%;margin-right:1.69492%}.basic_form legend{font-size:2.25em;line-height:1.25em;padding-bottom:.9375em;color:#fff}.basic_form label{margin-bottom:.375em;display:inline-block;color:#fff}.basic_form label a{color:#fff;text-decoration:underline}.basic_form span.text-muted.small{display:inline-block;font-size:0}.basic_form span.text-muted.small::after{content:'*';color:#fff;font-size:18px}.basic_form input,.basic_form textarea{font-size:1em;line-height:1.875em;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.2);box-shadow:0 10px 10px 0 rgba(0,0,0,.2);-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:.2s;transition-duration:.2s;width:100%;background-color:#fff;color:#3b3b3b;border:none;padding:12px 10px;margin:0;-webkit-appearance:none;-webkit-border-radius:0}.basic_form input:focus,.basic_form textarea:focus{border-color:#00649d;outline:0}.basic_form input.parsley-error,.basic_form select.parsley-error+.customSelect,.basic_form textarea.parsley-error{background:red}.basic_form input{height:50px}.basic_form input[type=checkbox],.basic_form input[type=radio]{-webkit-box-shadow:none;box-shadow:none;display:inline-block;height:auto;margin:0;padding:0;border:none;background-color:transparent}.basic_form input[type=radio]{position:relative;float:left;width:auto}.basic_form input[type=radio]::before{content:"";height:30px;width:30px;border-radius:50%;background:#fff;display:inline-block;vertical-align:middle;margin:-3px 10px 0 0;-webkit-box-shadow:0 8px 8px rgba(0,0,0,.3);box-shadow:0 8px 8px rgba(0,0,0,.3)}.basic_form input[type=radio]:checked::after{content:"";background:#233e91;height:15px;width:15px;display:block;border-radius:50%;position:absolute;top:8px;left:8px}.basic_form textarea{height:10.3125em}.basic_form select{max-width:100%;width:100%}.basic_form span.required{color:#7bc143;padding-left:3px}.basic_form input[type=file]{line-height:1em;font-size:16px}.basic_form .note{font-size:.875em;line-height:2.14286em;color:#fff;margin-top:6px;margin-bottom:-6px}.basic_form .field_with_errors input,.basic_form .field_with_errors select,.basic_form .field_with_errors textarea{border:3px solid #c40076;background-color:#f3d6e8}.basic_form .field{padding-bottom:.9375em;padding-top:.9375em}.basic_form .clear{clear:both}.basic_form .inline{display:inline-block;margin-right:1.69492%;vertical-align:top;width:auto}.basic_form .wrap_label{padding-left:1.5em;position:relative}.basic_form .wrap_label input{position:absolute;left:1px;top:3px;display:inline-block}.basic_form .button{font-size:1.25em;line-height:1.5em}.basic_form .button#google_map_wrapper,.basic_form .button.center,.basic_form .button.extend{display:block;margin:0 auto}.basic_form .button.secondary{background-color:#56d1ff}.basic_form .button.secondary:hover{background-color:#0176aa}.basic_form .custom_select{position:relative}.basic_form .custom_select select{background-color:#25408f;font-size:14px!important;color:#fff}.basic_form .customSelect{-webkit-box-sizing:border-box;box-sizing:border-box;max-width:100%;height:50px!important;background-color:#25408f}.basic_form .customSelectInner{-webkit-box-sizing:border-box;box-sizing:border-box;font-size:1em;line-height:1.875em;background-image:url(../images/icons/select_arrow.png);background-position:right center;background-repeat:no-repeat;height:50px!important;padding:12px 16px;text-align:left;color:#fff}.svg .basic_form .customSelectInner{background-image:url(../images/icons/select_arrow.svg);background-size:image-width("../images/icons/select_arrow.png")}.basic_form .hasCustomSelect option{color:#fff}.basic_form .breaker{background-color:#5e3784;display:block;height:2px;margin:1.875em 1.69492%}.form-input-radio input{height:50px}.form-input-radio input[type=checkbox],.form-input-radio input[type=radio]{display:none}.form-input-radio input[type=checkbox]+label,.form-input-radio input[type=radio]+label{-webkit-box-shadow:none;box-shadow:none;display:inline-block;height:auto;margin:0;padding:0;border:none;background-color:transparent}.form-input-radio input[type=checkbox]:checked+label::after,.form-input-radio input[type=radio]:checked+label::after{content:"";background:#233e91;height:15px;width:15px;display:block;border-radius:50%;position:absolute;top:8px;left:8px}.form-input-radio input[type=radio]+label{position:relative;float:left;width:auto}.form-input-radio input[type=radio]+label::before{content:'';height:30px;width:30px;border-radius:50%;background:#fff;display:inline-block;vertical-align:middle;margin:-3px 10px 0 0;-webkit-box-shadow:0 8px 8px rgba(0,0,0,.3);box-shadow:0 8px 8px rgba(0,0,0,.3)}.date_selector .customSelect{margin-bottom:.9375em}.custom_check{margin-bottom:15px}.custom_check.parsley-error label:before{background:red}.custom_check input[type=checkbox]{display:none}.custom_check input[type=checkbox]:checked+label:before{background-image:url(../images/icons/checkbox_tick.svg);background-position:center;background-repeat:no-repeat}.custom_check label{color:#000;padding-left:56px}.custom_check label:before{content:"";color:#000;display:block;float:left;width:36px;height:36px;background:#fff;margin-left:-56px;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4)}#form_wrapper .custom_check label{color:#fff}.wrap_label{padding-left:36px;background-position:1px 4px;background-repeat:no-repeat}.has-js .wrap_label{background-image:url(../images/backgrounds/radio_off.png)}.svg .has-js .wrap_label{background-image:url(../images/backgrounds/radio_off.svg);background-size:image-width("../images/backgrounds/radio_off.png")}.has-js .checks .wrap_label{background-image:url(../images/backgrounds/check_off.png)}.svg .has-js .checks .wrap_label{background-image:url(../images/backgrounds/check_off.svg);background-size:image-width("../images/backgrounds/check_off.png")}.has-js .checks label.c_on{background-image:url(../images/backgrounds/check_on.png)}.svg .has-js .checks label.c_on{background-image:url(../images/backgrounds/check_on.svg);background-size:image-width("../images/backgrounds/check_on.png")}.has-js label.r_on{background-image:url(../images/backgrounds/radio_on.png)}.svg .has-js label.r_on{background-image:url(../images/backgrounds/radio_on.svg);background-size:image-width("../images/backgrounds/radio_on.png")}.has-js .wrap_label input[type=checkbox],.has-js .wrap_label input[type=radio]{position:absolute;left:-9999em}.has-js .toggle_boxes .wrap_label,.has-js .toggle_boxes label.r_on{-webkit-transition-property:background-color,color;transition-property:background-color,color;-webkit-transition-duration:.2s;transition-duration:.2s;font-size:.875em;line-height:2.14286em;display:inline-block;vertical-align:top;text-align:center;background-image:none;cursor:pointer;padding:5px 15px;-webkit-box-sizing:border-box;box-sizing:border-box;margin-right:10px}#donation_form .card_details,.giftaid p .ccm-block-express-form,.toggle_boxes{margin-right:1.69492%;margin-left:1.69492%}.has-js .toggle_boxes .wrap_label.parsley-error,.has-js .toggle_boxes label.r_on.parsley-error{background:red}.has-js .toggle_boxes .wrap_label{background-color:#644082;color:#fff;width:100%}.has-js .toggle_boxes .wrap_label:hover{background-color:#5e3784}.has-js .toggle_boxes label.r_on{-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);background-color:#00aeef;color:#fff}.has-js .toggle_boxes label.r_on:hover{background-color:#00649d}.toggle_boxes{margin-bottom:.9375em}.giftaid{margin-bottom:3.75em}.giftaid .legend{background:url(../images/logos/giftaid.png) no-repeat;width:150px;height:0;display:block;padding-top:85px;overflow:hidden}.giftaid .field{padding-top:0;padding-bottom:0}.giftaid p{margin-top:.9375em}.giftaid p .ccm-block-express-form{color:#fff}.giftaid .giftaid_options,.giftaid .giftaid_options p{margin-top:1.875em;margin-bottom:1.875em}.download_application_form,.forgotten_password{margin-top:1.875em;text-decoration:underline;color:#fff;display:inline-block}.download_application_form:hover,.forgotten_password:hover{color:#fff;text-decoration:none}#event_image_navigation a,#family_story_listing .article_stub_item.blue h2:hover,#family_story_listing .article_stub_item.purple h2:hover,#family_story_listing .article_stub_item.red h2:hover,#family_story_listing .article_stub_item.yellow h2:hover,#show_basket_link:focus,#show_basket_link:hover,.article_listing h2.article_stub_title:hover,.complete p a,.contact-us #content a,.donation__link,.event_detail_info_block a,.just-giving p a{text-decoration:underline}.download_application_form{margin-left:1.69492%}.custom_upload input{height:auto;line-height:0}#donation_form .card_details{font-size:.875em;line-height:2.14286em;margin-bottom:1.875em;color:#fff}#donation_form .card_details span.title{font-size:18px;display:block}#donation_form .card_details span.cards{display:block;height:30px;width:auto;margin-top:10px;background:url(../images/backgrounds/cards.png) no-repeat;background-size:contain}.secured_by{margin-top:1.875em;margin-left:1.69492%;display:block;background:url(../images/logos/Securedby_Horizontal_2.png) no-repeat;width:189px;height:0;overflow:hidden;padding-top:70px}#main_flash .flash,.form_errors{margin-bottom:3.75em;background:#c40076;padding:1.875em;color:#fff;clear:both;margin-left:.84746%;margin-right:.84746%}.stepped_form .field.half:nth-of-type(2n+1),.ugc ul{clear:left}#main_flash .flash h2,.form_errors h2{margin-bottom:.9375em;color:#fff}#main_flash .flash ul,.form_errors ul{margin-bottom:0!important}#main_flash .flash li,.form_errors li{margin-bottom:.375em;list-style:none;background-image:none!important;padding-left:0!important}.error-paragraph{color:#f80000;margin-bottom:10px}@media (min-width:480px){.basic_form .inline,.basic_form legend{margin-right:3.125%}.basic_form legend,.download_application_form,.secured_by{margin-left:3.125%}#donation_form .card_details,#donation_form .giftaid p,#main_flash .flash,.basic_form .field,.form_errors{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){.basic_form .inline,.basic_form legend{margin-right:2.32558%}.basic_form legend,.download_application_form,.secured_by{margin-left:2.32558%}#donation_form .card_details,#donation_form .giftaid p,#main_flash .flash,.basic_form .field,.form_errors{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){.basic_form .inline,.basic_form legend{margin-right:2.85714%}.basic_form legend,.download_application_form,.secured_by{margin-left:2.85714%}#donation_form .card_details,#donation_form .giftaid p,#main_flash .flash,.basic_form .field,.form_errors{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){.basic_form .inline,.basic_form legend{margin-right:2.85712%}.basic_form legend,.download_application_form,.secured_by{margin-left:2.85712%}#donation_form .card_details,#donation_form .giftaid p,#main_flash .flash,.basic_form .field,.form_errors{margin-left:2.85712%;margin-right:2.85712%}}@media (min-width:768px){.basic_form #main_flash,.basic_form fieldset{margin-left:5.71429%;margin-right:5.71429%}.basic_form #main_flash .inset,.basic_form fieldset .inset{margin-left:8.57143%;margin-right:8.57143%}.basic_form #main_flash .inset .half,.basic_form fieldset .inset .half{vertical-align:bottom;margin-bottom:8px}.basic_form #main_flash .inset .toggle_boxes,.basic_form fieldset .inset .toggle_boxes{margin-bottom:0}.basic_form .field{margin-left:2.85714%;margin-right:2.85714%}.basic_form .field.half{width:44.28571%;display:inline-block;vertical-align:top}.basic_form .field.third{width:33%;display:inline-block;vertical-align:bottom}.basic_form .field.half.clear,.basic_form .field.third.clear{display:block}.basic_form .button{width:45.71429%;margin-left:2.85714%}#main_flash .flash,.form_errors{margin-left:8.57143%;margin-right:8.57143%}#main_flash{margin-left:5.71429%;margin-right:5.71429%}#main_flash .flash{margin-left:2.85714%;margin-right:2.85714%}.date_selector .custom_select{margin-bottom:0;display:inline-block;width:30%;margin-right:10px}}@media (min-width:960px){.basic_form #main_flash,.basic_form fieldset{width:77.14286%;margin-left:auto;margin-right:auto}.basic_form #main_flash .inset,.basic_form fieldset .inset{margin-left:11.42848%;margin-right:11.42848%}#main_flash .flash,.form_errors{-webkit-box-sizing:border-box;box-sizing:border-box;width:74.28574%;margin-left:auto;margin-right:auto}#main_flash .flash,.card_details,.giftaid p{margin-right:2.85712%;margin-left:2.85712%}#main_flash .flash{width:auto}.download_application_form{margin-left:2.85712%}}.enewsletter_wrapper{padding:3em .5em;-webkit-box-shadow:inset 0 0 20px rgba(0,0,0,.5);box-shadow:inset 0 0 20px rgba(0,0,0,.5);position:relative;overflow:hidden}.enewsletter_wrapper .bkg_icon{position:absolute;bottom:-30px;left:0;width:160px;height:160px;background-image:url(../images/icons/red_icon1.png)}.svg .enewsletter_wrapper .bkg_icon{background-image:url(../images/icons/red_icon1.svg);background-size:160px auto}.enewsletter_wrapper h2{margin-bottom:.9375em;font-size:1.625em;line-height:1.15385em;text-align:center;color:#fff}.enewsletter_wrapper p{color:#fff;text-align:center;margin-bottom:16px}#search_form,#search_results .info{margin-bottom:1.875em}.enewsletter_wrapper .ccm-block-express-form#form_wrapper{background-color:transparent;padding-top:1em;padding-bottom:3em}.enewsletter_wrapper .ccm-block-express-form .form-actions .button{display:block;margin-left:auto;margin-right:auto}#enewsletter_form *{-webkit-box-sizing:border-box;box-sizing:border-box}#enewsletter_form .field.buttons{margin-top:1.875em;margin-left:0;margin-right:0}#enewsletter_form .custom_check label{color:#fff}#enewsletter_form .custom_check{font-size:0}#enewsletter_form .custom_check .control-label{width:50%;display:inline-block;font-size:1rem}@media (min-width:768px){#enewsletter_form .custom_check .control-label{width:25%}.enewsletter_wrapper .ccm-block-express-form#form_wrapper{background-color:transparent;padding-top:1em;padding-bottom:3em}.enewsletter_wrapper .ccm-block-express-form .form-group{width:calc(33% - 2.77778%);float:left;padding-left:1.38889%;padding-right:1.38889%}#enewsletter_form .third{position:relative;left:5px;margin-left:0;margin-right:0;padding-left:1.42857%;padding-right:1.42857%}#enewsletter_form .half{display:inline-block;vertical-align:top}#enewsletter_form .buttons{text-align:center}#enewsletter_form .buttons .button{margin-left:auto;margin-right:auto}}@media (min-width:960px){.enewsletter_wrapper #google_map_wrapper,.enewsletter_wrapper .center,.enewsletter_wrapper .extend{position:relative}.enewsletter_wrapper .bkg_icon{bottom:-100px;left:-60px}#enewsletter_form{width:71.42853%;margin-left:auto;margin-right:auto}#password_reset_form .button{margin-left:0}}@media (min-width:480px){#password_reset_form .button{margin-left:0}}@media (min-width:600px){#password_reset_form .button{margin-left:0}}@media (min-width:768px){#password_reset_form .button{margin-left:0}}#article_filter{display:-webkit-box;display:-ms-flexbox;display:flex}#article_filter .input-container:active,#article_filter .input-container:hover{border-color:#479DDC}#article_filter .input-container{background:#F4F4EF;border-radius:16px;border:2px solid #F4F4EF;padding:0 16px}#article_filter .input-container #location_icon{vertical-align:text-top;border:none;background-color:transparent}#article_filter .input-container #search_icon{background:#F4F4EF;border-radius:16px;vertical-align:middle;margin-top:10px}#article_filter .input-container input{height:50px}#article_filter label{color:#3b3b3b}.events #article_filter label{color:#fff}#article_filter #article_postcode_field{border-radius:16px;background:#F4F4EF;width:370px;border:none}#article_filter #article_postcode_field:focus-visible{border:none;outline:0}#article_filter #article_postcode_field:focus-visible .input-container{border:2px solid #479DDC}#article_filter #article_postcode_field:placeholder{color:#3B3B3B;text-align:center;font-family:"Open Sans";font-size:20px;font-style:normal;font-weight:600;line-height:normal}#article_filter .submit{margin-left:16px;margin-right:16px;border-radius:16px;background:var(--Primary-Default,#00ACF1);-webkit-box-shadow:0 4px 10px 0 rgba(0,0,0,.3);box-shadow:0 4px 10px 0 rgba(0,0,0,.3);height:56px;padding:0 24px}#article_filter #article_postcode_field,#article_filter .submit{display:inline-block;vertical-align:top}.cat_filter .customSelect{-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4)}.reset_filter{background-color:#E3F7FF;border-radius:16px;color:#0171AB;padding:10px 24px;display:inline-block}.reset_filter:hover{background-color:#25408f;color:#fff}@media (min-width:600px){.events #article_filter{padding-left:6.97674%;padding-right:6.97674%}.events #article_filter #main_flash,.events #article_filter fieldset{width:auto}#article_filter #main_flash,#article_filter fieldset{margin:0}#article_filter .postcode_field{width:300px}#article_filter .postcode_field .submit{margin-left:0}#article_filter .postcode_field,#article_filter .reset_filter{display:inline-block;vertical-align:top}}@media (min-width:768px){.events #article_filter{padding-left:8.57143%;padding-right:8.57143%}.events #article_filter #main_flash,.events #article_filter fieldset{width:auto}.events #article_filter .cat_filter,.events #article_filter .postcode_field,.events #article_filter .reset_filter{margin-left:0}}@media (min-width:960px){.events #article_filter{padding-left:1.42856%;padding-right:1.42856%}.events #article_filter .cat_filter{width:330px}#article_filter .postcode_field{margin-left:1.42856%}}#search_form,#search_results{margin-left:1.69492%;margin-right:1.69492%}#search_results .info{color:#fff}#search_form .field{margin-left:0;margin-right:0;display:inline-block;vertical-align:top}#search_form .field.search_field{width:calc(100% - 80px)}#search_form .field.search_field input{height:54px}#search_form .field.search_button{width:80px}#search_form .field.search_button input{background-image:url(../images/icons/search.png);-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:background-color;transition-property:background-color;background-color:#00aeef;width:80px;height:0;padding-top:42px;overflow:hidden;cursor:pointer;text-indent:-9999px}#shop_listing .product_stub_link,#site_search #site_search_submit{-webkit-transition-duration:.2s;-moz-transition-duration:.2s;-o-transition-duration:.2s}#search_form .field.search_button input:hover,#site_search #site_search_submit:hover{background-color:#0176aa}.svg #search_form .field.search_button input{background-image:url(../images/icons/search.svg);background-size:image-width("../images/icons/search.png")}@media (min-width:768px){#search_form,#search_results{width:65.71429%;margin-left:auto;margin-right:auto}#search_form #main_flash,#search_form fieldset,#search_results #main_flash,#search_results fieldset{margin-left:0;margin-right:0}}@media (min-width:960px){#search_form,#search_results{-webkit-box-sizing:border-box;box-sizing:border-box;padding-left:30px;padding-right:30px}#search_form #main_flash,#search_form fieldset,#search_results #main_flash,#search_results fieldset{margin-left:0;margin-right:0}#search_form .field.search_field{width:220px}}#site_search{text-align:center;margin-bottom:2.8125em;-moz-placeholder-color:#fff;-moz-placeholder-opacity:1;-ms-input-placeholder-color:#fff;-ms-input-placeholder-opacity:1}#site_search #main_flash,#site_search fieldset{overflow:visible;display:inline-block;width:100%;max-width:330px;margin:0;padding:0 7%}#site_search label{display:none}#site_search #site_search_submit,#site_search input{margin:0;display:inline-block}#site_search input{font-size:.875em;line-height:2.14286em;-webkit-box-shadow:none;box-shadow:none;vertical-align:top;padding:1.125em 25px;height:50px;background-color:#25408f;color:#fff;width:calc(100% - 85px)}#site_search ::-webkit-input-placeholder{color:#fff}#site_search ::-moz-placeholder{color:#fff;opacity:1}#site_search .field{margin:0;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);height:50px;padding:0;width:100%}#site_search #site_search_submit{background-image:url(../images/icons/search.png);-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:background-color;transition-property:background-color;background-color:#00aeef;width:85px;height:0;padding-top:50px;padding-bottom:0;overflow:hidden;cursor:pointer;font-size:0}.svg #site_search #site_search_submit{background-image:url(../images/icons/search.svg);background-size:image-width("../images/icons/search.png")}@media (min-width:768px){#site_search #main_flash,#site_search fieldset{padding:0}#site_search{margin-top:40px}}@media (min-width:960px){#site_search{position:absolute;margin-top:0;top:-93px;left:40%;margin-left:-150px;width:300px}#site_search #main_flash,#site_search fieldset{width:100%}#site_search .field{float:right}}.stepped_form{padding-bottom:50px}.stepped_form label{color:#3b3b3b}.stepped_form h2{font-size:30px;margin-bottom:20px;color:#c70077}.stepped_form .customSelectInner,.user_form label,.user_form legend{color:#3b3b3b}.stepped_form .wrap{padding:0 20px;width:calc(75% + 40px);margin:0 auto;-webkit-box-sizing:border-box;box-sizing:border-box}.stepped_form .customSelect{background:#fff;color:#3b3b3b;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.2);box-shadow:0 10px 10px 0 rgba(0,0,0,.2)}.stepped_form .field{margin:20px 20px 0 0;display:block;width:calc(100% - 20px)}.stepped_form .field.half{width:calc(50% - 20px)}.stepped_form .basic_form_group{width:calc(100% + 20px);margin:-20px -20px 0 0}.stepped_form .basic_form_group:after{content:"";display:table-cell;clear:both}.stepped_form .group-clear{overflow:visible}.stepped_form .group-clear:after{clear:both;content:'';display:table}@media all and (max-width:767px){.stepped_form .wrap{width:100%}.stepped_form .field.half{width:calc(100% - 20px)}}#main_flash .user_form .flash,.user_form #main_flash,.user_form #main_flash .flash,.user_form .field,.user_form .form_errors,.user_form fieldset,.user_form legend{margin-left:0;margin-right:0}#main_flash .user_form .flash,.user_form #main_flash .flash,.user_form .form_errors{width:100%}.user_form #main_flash,.user_form fieldset{margin-bottom:.46875em;width:100%;min-width:0}.user_form legend{padding-top:.46875em;padding-bottom:0}.user_form .button{margin-left:0;max-width:100%}.user_form .check_box_fields .field,.user_form .check_box_fields label,.user_form .radio_button_fields .field,.user_form .radio_button_fields label{margin-bottom:0;padding-bottom:0}.remove-participant__container{position:relative}.remove-participant__link{position:absolute;bottom:-10px;left:0}#family_story_listing{padding:0}#family_story_listing .article_stub_item{position:relative;margin:0;width:100%}#family_story_listing .article_stub_item.blue a,#family_story_listing .article_stub_item.blue h2,#family_story_listing .article_stub_item.blue p,#family_story_listing .article_stub_item.purple a,#family_story_listing .article_stub_item.purple h2,#family_story_listing .article_stub_item.purple p,#family_story_listing .article_stub_item.red a,#family_story_listing .article_stub_item.red h2,#family_story_listing .article_stub_item.red p{color:#fff}#family_story_listing .article_stub_item.blue .article_stub_title span,#family_story_listing .article_stub_item.purple .article_stub_title span,#family_story_listing .article_stub_item.red .article_stub_title span{background-image:url(../images/icons/arrow_right.png)}.svg #family_story_listing .article_stub_item.blue .article_stub_title span,.svg #family_story_listing .article_stub_item.purple .article_stub_title span,.svg #family_story_listing .article_stub_item.red .article_stub_title span{background-image:url(../images/icons/arrow_right.svg);background-size:18px auto}#family_story_listing .article_stub_item.yellow a,#family_story_listing .article_stub_item.yellow h2,#family_story_listing .article_stub_item.yellow p{color:#7c51a1}#family_story_listing .article_stub_item.yellow .article_stub_title span{background-image:url(../images/icons/arrow_right_purple.png)}.svg #family_story_listing .article_stub_item.yellow .article_stub_title span{background-image:url(../images/icons/arrow_right_purple.svg);background-size:18px auto}#family_story_listing .article_stub_item.blue .icon{background-image:url(../images/icons/blue_icon1.png)}.svg #family_story_listing .article_stub_item.blue .icon{background-image:url(../images/icons/blue_icon1.svg);background-size:130px auto}#family_story_listing .article_stub_item.purple .icon{background-image:url(../images/icons/purple_icon1.png)}.svg #family_story_listing .article_stub_item.purple .icon{background-image:url(../images/icons/purple_icon1.svg);background-size:130px auto}#family_story_listing .article_stub_item.red .icon{background-image:url(../images/icons/red_icon1.png)}.svg #family_story_listing .article_stub_item.red .icon{background-image:url(../images/icons/red_icon1.svg);background-size:130px auto}#family_story_listing .article_stub_item.yellow .icon{background-image:url(../images/icons/yellow_icon2.png)}.svg #family_story_listing .article_stub_item.yellow .icon{background-image:url(../images/icons/yellow_icon2.svg);background-size:130px auto}#family_story_listing .article_stub_image_wrapper{margin-bottom:1.875em;height:220px}#family_story_listing .article_stub_content{height:240px;margin-left:1em;margin-right:1em;background-color:transparent;-webkit-box-shadow:none;box-shadow:none;-webkit-transition:none;transition:none;padding:0}#family_story_listing .article_stub_content:hover{background-color:transparent;margin-top:0}#family_story_listing .article_stub_title{margin-bottom:.9375em}#family_story_listing .article_stub_title span{background-position:right center;background-repeat:no-repeat;padding-right:30px}#family_story_listing .article_stub_abstract,#family_story_listing .article_stub_title{position:relative}#family_story_listing .article_stub_abstract{margin-top:0}#family_story_listing .icon{display:none;position:absolute;top:180px;right:-30px;width:130px;height:130px;background-position:right center;background-repeat:no-repeat;z-index:1}@media (min-width:480px){#family_story_listing .article_stub_content{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){#family_story_listing .article_stub_content{margin-left:2.32558%;margin-right:2.32558%}#family_story_listing .article_stub_image_wrapper{height:400px}}@media (min-width:768px){#family_story_listing .article_stub_content{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){#family_story_listing .article_stub_content{margin-left:2.85712%;margin-right:2.85712%}}@media (min-width:768px){#family_story_listing .article_stub_item{width:50%;display:inline-block;vertical-align:top}#family_story_listing .article_stub_image_wrapper{height:260px}#family_story_listing .article_stub_content{width:300px;margin-left:auto;margin-right:auto}#family_story_listing .icon{display:block}}@media (min-width:960px){#family_story_listing .article_stub_image_wrapper{height:350px}#family_story_listing .article_stub_item.blue,#family_story_listing .article_stub_item.red{text-align:right}#family_story_listing .article_stub_item.blue .article_stub_content,#family_story_listing .article_stub_item.red .article_stub_content{width:390px;margin-right:80px;text-align:left}#family_story_listing .article_stub_item.purple,#family_story_listing .article_stub_item.yellow{text-align:left}#family_story_listing .article_stub_item.purple .article_stub_content,#family_story_listing .article_stub_item.yellow .article_stub_content{width:390px;margin-left:80px}#family_story_listing .icon{top:270px}}.donation .u-align-center,.donation__heading--center,.event_shop_form{text-align:center}@media (min-width:1200px){#family_story_listing .article_stub_image_wrapper{height:460px}#family_story_listing .icon{top:380px}}@media (min-width:1600px){#family_story_listing .article_stub_image_wrapper{height:560px}#family_story_listing .icon{top:490px}}.search #outer_wrapper .ugc,.search #outer_wrapper h1{color:#fff}.search #outer_wrapper h1.page_title{color:#fff;margin-left:auto;margin-right:auto;padding-left:30px;padding-right:30px;width:63.88889%}.search #outer_wrapper .article_listing{padding:0;margin:0}.search #outer_wrapper .article_stub_item{width:100%;margin:0;padding:0}.search #outer_wrapper .article_stub_link{margin:0 4.54545% 1.66667em;padding:0}.search #outer_wrapper .article_stub_content{width:calc(100% - 40px)}@media (min-width:600px){.search #outer_wrapper #content{background-size:140px;background-image:url(../images/icons/yellow_sun.svg);background-repeat:no-repeat;background-position:0 0}.search #outer_wrapper .article_stub_item{width:100%}.search #outer_wrapper .article_stub_content,.search #outer_wrapper .article_stub_link{height:auto}}@media (min-width:768px){.search #outer_wrapper .article_stub_link{height:180px}.search #outer_wrapper .article_stub_content{height:calc(180px - 1.66667em)}.search #outer_wrapper .article_stub_content:hover{margin-top:0}}@media (min-width:960px){.search #outer_wrapper .article_stub_link{height:260px;width:75%;margin-left:auto;margin-right:auto}.search #outer_wrapper .article_stub_content{height:calc(260px - 80px);padding:40px 60px;width:calc(100% - 120px)}}#shop_location_listing{-webkit-box-flex:1;-ms-flex:1 1 70%;flex:1 1 70%;width:450px;padding-top:0!important;padding-bottom:0!important}#shop_location_listing .search_result_title{color:#0171AB;font-size:16px;font-style:normal;font-weight:700;line-height:165%}#shop_location_listing .location_results{padding:10px 24px;margin-bottom:0}#shop_location_listing .article_stub_item{-webkit-box-sizing:border-box;box-sizing:border-box;margin-bottom:1.875em;border-bottom:2px solid #F4F4EF;width:395px;margin-left:1.69492%;margin-right:1.69492%;padding:24px;line-height:1.4em;background:#fff}#shop_location_listing .article_stub_item.selected{background:#E3F7FF}#shop_location_listing .article_stub_item:hover{border:2px solid #479DDC}#shop_location_listing .article_stub_item .location_address{margin-bottom:24px}#shop_location_listing .article_stub_item .contact-directions-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}#shop_location_listing .article_stub_item .contact-directions-wrapper .contact_number{margin-right:8px;border-radius:16px;padding:10px;height:30px;color:#fff;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:var(--Primary-Default,#00ACF1);-webkit-box-shadow:0 4px 10px 0 rgba(0,0,0,.3);box-shadow:0 4px 10px 0 rgba(0,0,0,.3)}#shop_location_listing .article_stub_item .contact-directions-wrapper .contact_directions{margin-left:8px;border-radius:16px;padding:10px;height:30px;color:#fff;background:var(--Primary-Default,#E6007E);-webkit-box-shadow:0 4px 10px 0 rgba(0,0,0,.3);box-shadow:0 4px 10px 0 rgba(0,0,0,.3);-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}#shop_location_listing .article_stub_title{color:#0171AB}@media (min-width:480px){#shop_location_listing .article_stub_item{margin-bottom:0!important;margin-left:0!important;margin-right:0!important}}@media (min-width:768px){#shop_location_listing .article_stub_item{margin-bottom:0!important;margin-left:0!important;margin-right:0!important}}@media (min-width:960px){#shop_location_listing .article_stub_item{margin-bottom:0!important;margin-left:0!important;margin-right:0!important}}@media (min-width:600px){#shop_location_listing .article_stub_item{margin-bottom:0!important;margin-left:0!important;margin-right:0!important;display:inline-block;vertical-align:top}}.shop-online #outer_wrapper .ugc,.shop-online #outer_wrapper h1{color:#fff}#shop_listing{padding-bottom:3.75em}#shop_listing .product_stub_link{margin-bottom:1.875em;-webkit-transition-property:padding;transition-property:padding;-webkit-transition-duration:.2s;transition-duration:.2s;display:block;padding-top:5px;padding-bottom:5px}#shop_listing .product_stub_content,.article_listing .article_stub_content{-webkit-transition-duration:.2s;-moz-transition-duration:.2s;-o-transition-duration:.2s;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4)}#shop_listing .product_stub_content{-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);-webkit-transition-property:margin;transition-property:margin;-webkit-transition-duration:.2s;transition-duration:.2s;background-color:#f4f4ee;padding:20px;margin:0}#shop_listing .product_stub_content:hover{background-color:#fff;margin-top:-5px;margin-bottom:5px}#shop_listing .product_image_wrapper{width:100%;margin:0}#shop_listing .product_image_wrapper .product_stub_image{width:100%}#shop_listing .product_price,#shop_listing .product_title{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;font-size:2em;line-height:1.40625em}#shop_listing .abstract,#shop_listing .product_price{color:#3b3b3b}#shop_listing .product_title{color:#00649d;margin-bottom:.9375em}#shop_listing .product_price{margin-bottom:.9375em}@media (min-width:600px){#shop_listing{margin-left:-2.32558%;margin-right:-2.32558%}#shop_listing .product_item{margin-left:1.16279%;margin-right:1.16279%}#shop_listing .product_stub_content{overflow:auto}#shop_listing .product_image_wrapper{margin-bottom:0;float:left;width:200px;margin-right:2.32558%;padding:0}}@media (min-width:768px){#shop_listing{margin-left:-1.42857%;margin-right:-1.42857%}}.article_listing{padding-bottom:3.75em;overflow:hidden}.article_listing .article_stub_item{width:96.61017%;margin-left:1.69492%;margin-right:1.69492%}.article_listing .article_stub_link{margin-bottom:.9375em;display:block;padding-top:5px}.article_listing .article_stub_content{-webkit-transition-property:margin,padding;transition-property:margin,padding;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);background-color:#f4f4ee;padding:20px;overflow:hidden}.article_listing .article_stub_content:hover{background-color:#fff;margin-top:-5px}.article_listing h2.article_stub_title{margin-bottom:.375em;display:inline-block;color:#00649d;width:100%}#volunteer_opportunity_listing .article_stub_abstract,.article_listing .article_stub_abstract,.article_listing .article_stub_date,.article_listing .article_stub_meta dd,.article_listing .article_stub_meta dt,.article_listing .article_venue,.page-template-news-single .article_detail_meta dd,.page-template-news-single .article_detail_meta dt{color:#3b3b3b}.article_listing h2.article_stub_title span{background-image:url(../images/icons/arrow_right_blue.png);background-position:right center;background-repeat:no-repeat;padding-right:30px}.svg .article_listing h2.article_stub_title span{background-image:url(../images/icons/arrow_right_blue.svg);background-size:18px auto}.article_listing .article_stub_meta{margin-bottom:1.875em;font-size:1em;line-height:1.875em}.article_listing .article_stub_meta dt{float:left;padding-right:10px}.article_listing .article_stub_image_wrapper{margin-bottom:1.5em;height:166px;overflow:hidden}.article_listing .article_stub_image_wrapper img.article_stub_image{width:100%;height:auto;display:block}.events .article_listing .article_stub_image_wrapper{height:123px}.article_listing .article_stub_date,.article_listing .article_venue{font-size:1em;display:inline-block;line-height:1.4em}.event_detail_info_block dt,.page-template-news-single .article_detail_meta,.page-template-news-single time.article_stub_date{font-size:1.5em;line-height:1.25em;font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif}.article_listing .article_stub_abstract{margin-top:1.875em}@media (min-width:600px){.article_listing{padding-left:6.97674%;padding-right:6.97674%}.article_listing .article_stub_item{width:47.67442%;display:inline-block;vertical-align:top;margin-left:1.16279%;margin-right:1.16279%}.article_listing .article_stub_link{height:590px}.jobs .article_listing .article_stub_link,.volunteer .article_listing .article_stub_link{height:390px}.article_listing .article_stub_content{height:540px}.jobs .article_listing .article_stub_content,.volunteer .article_listing .article_stub_content{height:340px}}@media (min-width:960px){.article_listing{padding-left:0;padding-right:0}.article_listing .article_stub_item{width:30.14288%}.volunteer .article_listing .article_stub_item{width:47.14288%}}#volunteer_opportunity_listing{padding-bottom:3.75em}#volunteer_opportunity_listing .article_stub_link{margin-bottom:1.875em;-webkit-transition-property:padding;transition-property:padding;-webkit-transition-duration:.2s;transition-duration:.2s;display:block;padding-top:5px;padding-bottom:5px;margin-left:0;margin-right:0}#volunteer_opportunity_listing .article_stub_content{-webkit-transition-property:margin;transition-property:margin;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);background-color:#f4f4ee;padding:20px;margin:0}#volunteer_opportunity_listing .article_stub_content:hover{background-color:#fff;margin-top:-5px;margin-bottom:5px}#volunteer_opportunity_listing h2.article_stub_title{margin-bottom:.375em;display:inline-block}@media (min-width:960px){#volunteer_opportunity_listing .article_stub_content{height:180px;padding:40px 60px}}.page-template-news-single .article_detail_meta{margin-bottom:1.875em}.page-template-news-single .article_detail_meta dt{float:left;padding-right:10px}.page-template-news-single time.article_stub_date{margin-bottom:1.875em;display:block}.event_detail_info_block{margin-bottom:1.875em;border-radius:3px;background-color:#f0f0bc;padding:20px 1.69492%}.accounts_pages #outer_wrapper,.donation #content{background-color:#7c51a1}.event_detail_info_block dt{color:#c40076}#product_variations .quantity#main_flash label,#product_variations fieldset.quantity label,#product_variations label,#product_variations legend{color:#3b3b3b}.event_detail_info_block dd{margin-bottom:.9375em}.event_shop_form{margin-bottom:3.75em}.event_shop_form button{max-width:300px}.event_shop_form .quantity,.event_shop_form .variations{display:none}@media (min-width:480px){.event_detail_info_block{padding:20px 3.125%}}@media (min-width:600px){.event_detail_info_block{padding:20px 2.32558%}}@media (min-width:768px){.event_detail_info_block{padding:20px 2.85714%}}@media (min-width:960px){.event_detail_info_block{padding:20px 2.85712%}}@media (min-width:768px){.event_detail_info_block{padding:20px 5.71429%;margin-left:-5.71429%;margin-right:-5.71429%}}@media (min-width:960px){.event_detail_info_block{padding:20px 11.42848%;margin-left:-11.42848%;margin-right:-11.42848%}}.product_image_wrapper{margin-bottom:1.875em;margin-left:1.69492%;margin-right:1.69492%}.product_image_wrapper .product_detail_image{-webkit-transition-property:display;transition-property:display;-webkit-transition-duration:.2s;transition-duration:.2s;width:100%;display:none}.price_variables{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;font-size:2.125em;line-height:1.32353em}#product_variations{margin-top:1.875em}#product_variations .variations#main_flash .field,#product_variations fieldset.variations .field{margin-left:0;margin-right:0;display:block;padding-bottom:0}#product_variations .variations#main_flash .field label.r_on,#product_variations fieldset.variations .field label.r_on{background-image:url(../images/backgrounds/radio_on_alt.png)}.svg #product_variations .variations#main_flash .field label.r_on,.svg #product_variations fieldset.variations .field label.r_on{background-image:url(../images/backgrounds/radio_on_alt.svg);background-size:image-width("../images/backgrounds/radio_on_alt.png")}#product_variations .quantity#main_flash,#product_variations fieldset.quantity{margin-bottom:2.8125em;padding-top:1.875em}#product_variations .quantity#main_flash .field,#product_variations fieldset.quantity .field{width:100px}.accounts_pages #outer_wrapper .ugc,.accounts_pages #outer_wrapper h1,.donation h1,.donation p,.donation__heading,.donation__text{color:#fff}@media (min-width:768px){.product_image_wrapper,.product_price_column{display:inline-block;vertical-align:top;width:48.57143%}.product_image_wrapper{margin-left:0;margin-right:0}.product_price_column{margin-left:2.85714%}#product_variations #main_flash,#product_variations .button,#product_variations fieldset{margin-left:0;margin-right:0}#product_variations .button{width:100%}}.donation .grid:after,.social-media:after{clear:both;content:'';display:table}@media (min-width:960px){.page-template-product #content_main{width:665px}.product_image_wrapper{-webkit-box-sizing:border-box;box-sizing:border-box;width:310px;padding-right:20px}.product_price_column{width:300px;margin-left:10px}}.accounts_pages #content_main{padding-bottom:0}#login_form .forgotten_password{margin-left:1.69492%;margin-right:1.69492%}#account_form #main_flash,#account_form fieldset{margin-bottom:2.8125em}.donation__copy,.donation__heading--bottom-margin{margin-bottom:32px}@media (min-width:480px){#login_form .forgotten_password{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){#login_form .forgotten_password{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){#login_form .forgotten_password{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){#login_form .forgotten_password{margin-left:2.85712%;margin-right:2.85712%}}.donation__copy{margin-left:2.85712%;margin-right:2.85712%}.donation__link{color:#fff}.donation .button{font-size:16px}.donation .button span.btn_icon{padding-top:18px}.donation .donation__communication .custom_check{text-align:left;margin-left:24px}#donate_block,#donate_reasons,#event_image_navigation,.carousel .slide,.donation-cards,.fundraising_wrapper .target_amount,.newsletter_page #outer_wrapper h1,.page-text.text-center{text-align:center}.donation .odd .button{background-color:#00aeef}.donation .odd .button .btn_icon{background-color:#25408f}.donation__block{width:calc(50% - 40px);float:left;margin:0 20px}.donation .grid{overflow:visible}.donation .grid .half{float:left;padding:20px;width:calc(100% - 40px)}@media (min-width:768px){.donation .grid .half{width:calc(50% - 40px)}}@media (min-width:600px){.donation__communication .custom_check{width:calc(50% - 32px);display:inline-block}}@media (min-width:768px){.donation__communication .custom_check{margin-right:16px;margin-left:0;width:initial}}.event_image_basket #collection_total_cost{font-size:1.5em;line-height:1.25em;margin-bottom:1.25em}.event_image_basket .checkout_cta{display:inline-block;width:auto}#event_image_description,#event_image_image_column{margin-bottom:1.875em;margin-left:1.69492%;margin-right:1.69492%}#event_image_frame{background-color:#dedede}#event_gallery_image{display:block;max-width:100%;height:auto;margin:0 auto}#event_image_navigation{padding-top:.9375em;padding-bottom:.9375em;overflow:hidden}#event_image_navigation a{color:#3b3b3b}#event_image_navigation a:focus,#event_image_navigation a:hover{color:#00649d}#event_image_navigation .prev_image{display:inline;float:left}#event_image_navigation .next_image{display:inline;float:right}#event_image_description p{margin-bottom:1.875em}#event_image_description .button{-webkit-box-sizing:border-box;box-sizing:border-box;background-position:right 10px center;padding-right:40px;padding-left:10px}@media (min-width:480px){#event_image_description,#event_image_image_column{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){#event_image_description,#event_image_image_column{margin-left:2.32558%;margin-right:2.32558%;display:inline;float:left;width:46.51163%}}@media (min-width:768px){#event_image_description,#event_image_image_column{margin-left:2.85714%;margin-right:2.85714%}#event_image_image_column{width:62.85714%}#event_image_description{width:28.57143%}#event_image_description .button{width:100%;margin-left:0}}@media (min-width:960px){#event_image_image_column{margin-left:12.85713%;margin-right:1.42856%;width:54.28572%}#event_image_description{margin-left:1.42856%;margin-right:1.42856%;width:31.42859%}}.home #content{padding-top:0}.complete #content,.just-giving #content{background-color:#7c51a1}.page-text{padding:1em 20px;color:#fff}.page-text.green{background-color:#7bc143}.page-text.blue{background-color:#00aeef}.page-text.purple{background-color:#7c51a1}.page-text.red{background-color:#f80000}.page-text.yellow{background-color:#fff33e;color:#7c51a1}.page-text.yellow h2,.page-text.yellow h3{color:#7c51a1}.page-text h2{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;color:#fff;margin-bottom:32px;font-size:40px}.page-text h3{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;color:#fff;margin-bottom:16px;font-size:26px}.sitemap #sub_nav .dropdown,.sitemap #sub_nav a.menu_link{font-family:'Helvetica W01 Roman',Arial,sans-serif}.page-text ul{list-style:outside;margin-left:30px}.page-text .button{max-width:320px;margin:50px auto 0}.page-text .text-half{width:50%;display:inline-block}.page-text .page-header--no-margin h1,.page-text .page-header--no-margin h2,.page-text .page-header--no-margin h3{margin-bottom:0}.page-text--no-padding{padding:0!important}@media (min-width:768px){.page-text{padding:5em 20px 6.66667em}}.newsletter_page #outer_wrapper{padding-bottom:7.5em;background-color:#7c51a1}.newsletter_page #outer_wrapper .ugc,.newsletter_page #outer_wrapper h1{color:#fff}#overview_leader{padding-top:3.75em;padding-bottom:3.75em}#overview_container{background-color:#fff33e;filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFFFF33E', endColorstr='#FFFFAC12');-pie-background:-pie-linear-gradient(top,#fff33e 40%,#ffac12 100%);background:-webkit-gradient(linear,left top, left bottom,color-stop(40%, #fff33e),to(#ffac12));background:linear-gradient(top,#fff33e 40%,#ffac12 100%);overflow:hidden}#overview_container #google_map_wrapper,#overview_container .center,#overview_container .extend{padding-top:7.5em;padding-bottom:7.5em;position:relative}#overview_container .icon_bottom,#overview_container .icon_top{position:absolute;width:140px;height:140px;background-position:center center;background-repeat:no-repeat}#overview_container .icon_top{background-image:url(../images/icons/yellow_icon1.png);top:-30px;left:-30px}.svg #overview_container .icon_top{background-image:url(../images/icons/yellow_icon1.svg);background-size:image-width("../images/icons/yellow_icon1.png")}#overview_container .icon_bottom{background-image:url(../images/icons/yellow_icon2.png);bottom:-30px;right:-30px}.svg #overview_container .icon_bottom{background-image:url(../images/icons/yellow_icon2.svg);background-size:image-width("../images/icons/yellow_icon2.png")}#overview_container .overview_block{margin-bottom:3.75em;position:relative}#overview_container .overview_block .overview_abstract{margin-left:1.69492%;margin-right:1.69492%}#overview_container .button{margin-top:1.875em;font-size:1em;line-height:1.875em;width:100%}#overview_container .odd .button{background-color:#00aeef}#overview_container .odd .button span.btn_icon{background-color:#25408f}#overview_container .odd .button span.btn_icon:hover{background-color:#0176aa}@media (min-width:768px){#overview_leader.single_column{padding-top:5.625em}#overview_leader.single_column .page_title,#overview_leader.single_column .ugc{margin-left:auto;margin-right:auto;width:82.85714%}#overview_container .overview_block{margin-left:auto;margin-right:auto;width:65.71429%}#overview_container .overview_block .overview_abstract{margin-left:0;margin-right:0}}@media (min-width:960px){#overview_leader.single_column{padding-top:0}#overview_leader.single_column .page_title,#overview_leader.single_column .ugc{width:71.42858%}#overview_container .overview_block{margin-right:0;display:inline-block;vertical-align:top;width:37.14287%;margin-left:8.57145%}#overview_container .overview_block .overview_abstract{height:80px}#overview_container .button{margin-top:1.5em;font-size:1.25em;line-height:1.5em}}@media (min-width:1200px){#overview_container .icon_top{left:-90px}#overview_container .icon_bottom{right:-90px}}.sitemap #sub_nav li{min-height:30px}.sitemap #sub_nav a.menu_link{padding:0;font-size:18px}.sitemap #sub_nav .dropdown{margin-left:0}#show_basket_link,.double_link_block_wrapper .link_block_main_title,.fundraising_wrapper{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif}#donate_reasons{padding-top:3.75em;padding-bottom:5.625em;background-color:#7c51a1}#donate_reasons h2{margin-bottom:1.875em;margin-left:3.38983%;margin-right:3.38983%;color:#fff}#donate_reasons .donate_reason{margin-bottom:1.875em;margin-left:1.69492%;margin-right:1.69492%}#donate_reasons .donate_reason:nth-child(odd) h3{color:#fff33e}#donate_reasons .donate_reason:nth-child(odd).sun .donate_reason_image{background-image:url(../images/icons/yellow_sun.png)}.svg #donate_reasons .donate_reason:nth-child(odd).sun .donate_reason_image{background-image:url(../images/icons/yellow_sun.svg);background-size:image-width("../images/icons/yellow_sun.png")}#donate_reasons .donate_reason:nth-child(odd).leaf .donate_reason_image{background-image:url(../images/icons/yellow_leaf.png)}.svg #donate_reasons .donate_reason:nth-child(odd).leaf .donate_reason_image{background-image:url(../images/icons/yellow_leaf.svg);background-size:image-width("../images/icons/yellow_leaf.png")}#donate_reasons .donate_reason:nth-child(odd).flower .donate_reason_image{background-image:url(../images/icons/yellow_flower.png)}.svg #donate_reasons .donate_reason:nth-child(odd).flower .donate_reason_image{background-image:url(../images/icons/yellow_flower.svg);background-size:image-width("../images/icons/yellow_flower.png")}#donate_reasons .donate_reason:nth-child(even) h3{color:#7bc143}#donate_reasons .donate_reason:nth-child(even).sun .donate_reason_image{background-image:url(../images/icons/green_sun.png)}.svg #donate_reasons .donate_reason:nth-child(even).sun .donate_reason_image{background-image:url(../images/icons/green_sun.svg);background-size:image-width("../images/icons/green_sun.png")}#donate_reasons .donate_reason:nth-child(even).leaf .donate_reason_image{background-image:url(../images/icons/green_leaf.png)}.svg #donate_reasons .donate_reason:nth-child(even).leaf .donate_reason_image{background-image:url(../images/icons/green_leaf.svg);background-size:image-width("../images/icons/green_leaf.png")}#donate_reasons .donate_reason:nth-child(even).flower .donate_reason_image{background-image:url(../images/icons/green_flower.png)}.svg #donate_reasons .donate_reason:nth-child(even).flower .donate_reason_image{background-image:url(../images/icons/green_flower.svg);background-size:image-width("../images/icons/green_flower.png")}#donate_reasons .donate_reason_image{margin-bottom:.5625em;height:180px;display:block;background-position:center center;background-repeat:no-repeat}#donate_reasons .button{margin-top:1.875em;padding-top:.9375em}@media (min-width:480px){#donate_reasons .donate_reason{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){#donate_reasons .donate_reason{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){#donate_reasons .donate_reason{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){#donate_reasons .donate_reason{margin-left:2.85712%;margin-right:2.85712%}}@media (min-width:600px){#donate_reasons .donate_reason{width:48.83721%;vertical-align:top;display:inline-block;margin-left:0;margin-right:0}#donate_reasons .donate_reason h3{margin-left:4.65116%;margin-right:4.65116%}#donate_reasons .button{margin-left:0;margin-right:0;width:66.15385%}}.contact-us #content .contact_blocks_item,.fundraise .contact-us #content .title{margin-left:1.69492%;margin-right:1.69492%}@media (min-width:768px){#donate_reasons .donate_reason{width:31.42857%}#donate_reasons .button{width:37.78976%}}@media (min-width:960px){#donate_reasons .donate_reason{width:31.42859%}}.contact-us #content{color:#fff}.contact-us #content h2{margin-top:.9375em;margin-bottom:.375em;color:#fff}.contact-us #content a{color:#fff}.contact-us #content a:hover{text-decoration:none}.contact-us #content .sun_icon{background-image:url(../images/icons/yellow_sun.png);background-repeat:no-repeat;background-position:0 0;position:absolute;bottom:-280px;left:0;width:260px;height:260px}.svg .contact-us #content .sun_icon{background-image:url(../images/icons/yellow_sun.svg);background-size:260px auto}.contact-us #content #google_map_wrapper,.contact-us #content .center,.contact-us #content .extend{position:relative}.fundraise .contact-us #content{padding-bottom:11.25em;background-color:#7c51a1;overflow:hidden}.fundraise .contact-us #content .title{font-size:2.25em;line-height:1.25em;margin-bottom:1.875em}@media (min-width:480px){.contact-us #content .contact_blocks_item,.fundraise .contact-us #content .title{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){.contact-us #content .contact_blocks_item,.fundraise .contact-us #content .title{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){.contact-us #content .contact_blocks_item,.fundraise .contact-us #content .title{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){.contact-us #content .contact_blocks_item,.fundraise .contact-us #content .title{margin-left:2.85712%;margin-right:2.85712%}}@media (min-width:768px){.contact-us #content{margin-left:8.57143%;margin-right:8.57143%}.contact-us #content .contact_blocks_item{width:calc(50% - 30px);vertical-align:top;display:inline-block;margin-left:15px;margin-right:15px}.fundraise .contact-us #content{margin-left:0;margin-right:0}.fundraise .contact-us #content .title{margin-left:auto;margin-right:auto;text-align:center}.fundraise .contact-us #content .contact_blocks_item{margin-bottom:1.875em;width:88.67925%;display:block;margin-left:auto;margin-right:auto}.fundraise .contact-us #content .split_block_left,.fundraise .contact-us #content .split_block_right{display:inline-block;vertical-align:top;width:50%}}@media (min-width:960px){.contact-us #content{width:71.42858%;margin-left:auto;margin-right:auto}.contact-us #content .contact_blocks_item{margin-left:0;margin-right:2.85712%}.fundraise .contact-us #content{padding-bottom:3.75em;width:100%;margin-left:0;margin-right:0}.fundraise .contact-us #content .sun_icon{bottom:-150px;left:-100px}.fundraise .contact-us #content .contact_blocks_item{width:65.71429%}}#donate_block{padding-top:3.75em}#donate_block h2{font-size:1.625em;line-height:1.15385em;margin-bottom:2.8125em;color:#fff;margin-left:1.69492%;margin-right:1.69492%}#donate_block .button{font-size:1em;line-height:1.875em;display:block}@media (min-width:768px){#donate_block{padding-top:5.625em;padding-bottom:5.625em}#donate_block .button{font-size:1.25em;line-height:1.5em;margin-left:auto;margin-right:auto;width:40%}}@media (min-width:960px){#donate_block{padding-top:5.625em;padding-bottom:5.625em}#donate_block .button{width:31.42859%}}.donation-cards__card{background-color:#fff;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);display:inline-block;margin:0 auto 32px;max-width:400px;vertical-align:top}.donation-cards__media{display:block;width:100%}.donation-cards__text{color:#000;padding:30px 20px}@media (min-width:768px){.donation-cards__card{width:30.14288%;margin-left:1.16279%;margin-right:1.16279%}}.double_link_block_wrapper{position:relative;background-color:#3d3d3d;width:100%}.double_link_block_wrapper .link_block_main_title{-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:30px;font-size:1.5em;line-height:1.25em;background-color:#7c51a1;color:#fff;position:absolute;display:inline-block;padding:20px;z-index:3;width:240px;left:50%;margin-left:-120px;top:50px;text-align:center}.double_link_block_wrapper .link_block_detail{padding-top:.75em;position:relative;z-index:1;margin-left:1.69492%;margin-right:1.69492%}.double_link_block_wrapper .double_block_link,.double_link_block_wrapper .double_block_link h2{color:#fff}.double_link_block_wrapper .link_block_content.yellow .double_block_link,.double_link_block_wrapper .link_block_content.yellow h2{color:#7c51a1}@media (min-height:800px) and (min-width:961px){.double_link_block_wrapper .link_block_main_title{width:300px;margin-left:-150px;top:100px}.double_link_block_wrapper .link_block_wrapper{display:inline-block;width:50%;margin-bottom:-10px}.double_link_block_wrapper .link_block_wrapper.left_side,.double_link_block_wrapper .link_block_wrapper.right_side{width:50%}.double_link_block_wrapper .link_block_wrapper.left_side .link_block_reveal{right:50%}.double_link_block_wrapper .link_block_wrapper.left_side .link_block_content_inner{right:30px}.double_link_block_wrapper .link_block_wrapper.right_side .link_block_reveal{left:50%}.double_link_block_wrapper .link_block_wrapper.right_side .link_block_content_inner{left:30px}.double_link_block_wrapper .link_block_wrapper .link_block_icon{right:0;left:auto;top:-120px}.double_link_block_wrapper .link_block_content_inner{max-width:500px;position:absolute;top:0}.double_link_block_wrapper .link_block_content{height:160px}}#gallery_wrapper,.carousel,.carousel .slide .slide_inner{position:relative}.fundraising_wrapper{padding-top:5.625em;padding-bottom:5.625em;color:#fff}.fundraising_wrapper .text_column{margin-bottom:1.875em;margin-left:1.69492%;margin-right:1.69492%}.fundraising_wrapper .text_column h2{margin-bottom:.9375em;color:#fff}.fundraising_wrapper .text_column p{font-size:1.5em;line-height:1.25em}.fundraising_wrapper .target_amount{font-size:4.375em;line-height:1.07143em;background-image:url(../images/backgrounds/fundraising_bkg.png);padding-top:90px;background-position:center center;background-repeat:no-repeat;color:#fff33e;width:285px;height:185px;margin-left:auto;margin-right:auto;display:block}.svg .fundraising_wrapper .target_amount{background-image:url(../images/backgrounds/fundraising_bkg.svg);background-size:image-width("../images/backgrounds/fundraising_bkg.png")}@media (min-width:480px){.fundraising_wrapper .text_column{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){.fundraising_wrapper .text_column{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){.fundraising_wrapper .text_column{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){.fundraising_wrapper .target_amount,.fundraising_wrapper .text_column{display:inline-block;vertical-align:top}.fundraising_wrapper .target_amount{float:left;margin-left:2.85712%}.fundraising_wrapper .text_column{margin-right:2.85712%;width:54.28572%;margin-left:5.71424%}}#gallery_wrapper,#shadow{width:100%;display:block}#gallery_wrapper{padding-top:3.75em;margin:0 auto;padding-bottom:3em;overflow:hidden}#shadow{-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.2);box-shadow:0 10px 10px 0 rgba(0,0,0,.2);border-bottom:1px solid #fff}#carousel_container{position:relative;width:70%;margin:0 auto;overflow:visible}.carousel{width:100%;white-space:nowrap;background-color:#000}.carousel .slide{-webkit-transition-property:background;transition-property:background;-webkit-transition-duration:.1s;transition-duration:.1s;margin:0;padding:0;width:100%;height:auto;overflow:hidden;display:inline-block;vertical-align:top}.carousel .slide .overlay{-webkit-transition-property:background;transition-property:background;-webkit-transition-duration:.2s;transition-duration:.2s;position:absolute;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.9)}.carousel .slide.active .overlay{background-color:transparent}.gallery_image{width:100%;height:auto;display:block}.carousel_control_previous{background-image:url(../images/icons/arrow_left_blue.png);left:-50px}.svg .carousel_control_previous{background-image:url(../images/icons/arrow_left_blue.svg);background-size:30px auto}.carousel_control_next{background-image:url(../images/icons/arrow_right_blue.png);right:-50px}.svg .carousel_control_next{background-image:url(../images/icons/arrow_right_blue.svg);background-size:30px auto}.carousel_control_next,.carousel_control_previous{text-indent:-119988px;overflow:hidden;text-align:left;width:30px;height:30px;display:inline-block;position:absolute;top:45%;cursor:pointer;background-position:center center;background-repeat:no-repeat}#gallery_nav{margin-top:2.8125em;text-align:center}.gallery_toggle{border-radius:50%;width:20px;height:20px;margin:0 5px;cursor:pointer;display:inline-block;background-color:#3d3d3d}.gallery_toggle.active_tab,.gallery_toggle:hover{background-color:#00aeef}.gallery_toggle.clone{display:none}@media (min-width:600px){.carousel_control_next,.carousel_control_previous{top:40%}}@media (min-width:768px){.carousel_control_next,.carousel_control_previous{top:45%}#carousel_container{width:735px}}.ccm-image-slider-container{position:relative}.ccm-image-slider-container .rslides{margin:0 auto;position:relative}#security_ugc .ugc,.no_user_fields #proceed_as_guest{margin-right:1.69492%;margin-left:1.69492%}.ccm-image-slider-container .rslides li{background-size:cover;background-position:center;height:400px}.ccm-image-slider-container .rslides .mega-link-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.ccm-image-slider-container .ccm-image-slider-text{position:absolute;top:auto;bottom:32px;left:40px;color:#fff}.ccm-image-slider-container .rslides_nav{background-color:#25408f;background-position:center;background-size:15px}.ccm-image-slider-container .rslides_nav.prev{background-image:url(../images/icons/arrow_left.png)}.ccm-image-slider-container .rslides_nav.next{background-image:url(../images/icons/arrow_right.png)}@media (min-width:768px){.ccm-image-slider-container .rslides li{height:800px}.ccm-image-slider-container .ccm-image-slider-text{left:32px}}.link_block_wrapper{position:relative;background-color:#3d3d3d;width:100%;height:100vh}.link_block_image{height:100vh}.link_block_icon{position:absolute;top:-60px;left:-60px;width:140px;height:140px;z-index:1;background-repeat:no-repeat}.link_block_title{margin-top:2.8125em;margin-left:1.69492%;margin-right:1.69492%;position:relative;z-index:2}.link_block_reveal{height:250px;position:absolute;bottom:0;left:0;right:0;z-index:3}.link_block_content{height:250px}.link_block_content.yellow .link_block_icon{background-image:url(../images/icons/yellow_icon2.png)}.svg .link_block_content.yellow .link_block_icon{background-image:url(../images/icons/yellow_icon2.svg);background-size:140px auto}.link_block_content.yellow .link_block_title{color:#7c51a1}.link_block_content.blue .link_block_icon{background-image:url(../images/icons/blue_sun.png)}.svg .link_block_content.blue .link_block_icon{background-image:url(../images/icons/blue_sun.svg);background-size:140px auto}.link_block_content.blue .link_block_title{color:#3b3b3b}.link_block_content.green .link_block_title,.link_block_content.pink .link_block_title,.link_block_content.purple .link_block_title,.map-block__text a,.map-block__text h2,.map-block__text p,.text-image__text{color:#fff}.link_block_content.pink .link_block_icon{background-image:url(../images/icons/pink_icon1.png);top:-30px;left:auto;right:0}.svg .link_block_content.pink .link_block_icon{background-image:url(../images/icons/pink_icon1.svg);background-size:140px auto}.link_block_content.pink .link_block_detail .button{background-color:#c50076}.link_block_content.pink .link_block_detail .button .btn_icon{background-color:#e8008a}.link_block_content.pink .link_block_detail .button .btn_icon:hover{background-color:#c50076}.link_block_content.purple .link_block_icon{background-image:url(../images/icons/purple_sun.png)}.svg .link_block_content.purple .link_block_icon{background-image:url(../images/icons/purple_sun.svg);background-size:140px auto}.link_block_content.green .link_block_icon{background-image:url(../images/icons/green_sun.png)}.svg .link_block_content.green .link_block_icon{background-image:url(../images/icons/green_sun.svg);background-size:140px auto}.link_block_content #google_map_wrapper,.link_block_content .center,.link_block_content .extend{position:relative}.link_block_detail{height:215px}.link_block_detail .button{font-size:.875em;line-height:2.14286em;position:absolute;bottom:0;left:0;right:0;z-index:2}@media (min-width:480px){.link_block_title{margin-top:1.875em}.link_block_content,.link_block_reveal{height:150px}.link_block_detail{height:120px}}@media (min-width:600px){.link_block_title{margin-top:1.875em}.link_block_content,.link_block_reveal{height:250px}.link_block_detail{height:220px}}@media (min-width:768px){.link_block_content{height:auto}.link_block_content .button{margin-top:1.875em;position:relative;width:40%;margin-left:auto;margin-right:auto;left:auto;right:auto;display:block}}@media (min-height:800px) and (min-width:961px){.link_block_image{height:100vh}.link_block_detail,.link_block_reveal{height:160px}.link_block_reveal{position:fixed}.link_block_content{position:relative}.link_block_content p.link_block_title{margin-top:1.875em;font-size:1.375em;line-height:1.36364em;width:43.18182%;display:inline-block;vertical-align:top;margin-left:5.08475%}.link_block_content .button{margin-top:3.75em;position:absolute;top:0;right:0;font-size:1.25em;line-height:1.5em;display:inline-block;vertical-align:top}.link_block_icon{width:220px;height:220px;top:-70px;left:-160px}.blue .link_block_icon,.green .link_block_icon,.purple .link_block_icon,.yellow .link_block_icon{background-size:220px 220px!important}}.map-block,.map-block__map,.map-block__text{position:relative}.main_image_wrapper{height:220px;width:100%;background-position:center center;background-size:cover}@media (min-width:600px){.main_image_wrapper{height:300px}}@media (min-width:768px){.main_image_wrapper{height:400px}}@media (min-width:960px){.main_image_wrapper{height:600px}}@media (min-width:1200px){.main_image_wrapper{height:800px}}.map-block__text{padding:30px}.green .map-block__text{background-color:#7bc143}.blue .map-block__text{background-color:#00aeef}.purple .map-block__text{background-color:#7c51a1}.red .map-block__text{background-color:#f80000}.yellow .map-block__text{background-color:#fff33e}.yellow .map-block__text a,.yellow .map-block__text h2,.yellow .map-block__text p{color:#7c51a1}.map-block__text p{margin-bottom:20px}@media (min-width:768px){.map-block{height:33em;overflow:hidden}.map-block__text{height:calc(100% - 120px);padding:60px}.green .map-block__text{background:-webkit-gradient(linear,left top, right top,color-stop(0, #7bc143),color-stop(80%, #7bc143),to(rgba(0,0,0,0)));background:linear-gradient(to right,#7bc143 0,#7bc143 80%,rgba(0,0,0,0) 100%)}.blue .map-block__text{background:-webkit-gradient(linear,left top, right top,color-stop(0, #00aeef),color-stop(80%, #00aeef),to(rgba(0,0,0,0)));background:linear-gradient(to right,#00aeef 0,#00aeef 80%,rgba(0,0,0,0) 100%)}.purple .map-block__text{background:-webkit-gradient(linear,left top, right top,color-stop(0, #7c51a1),color-stop(80%, #7c51a1),to(rgba(0,0,0,0)));background:linear-gradient(to right,#7c51a1 0,#7c51a1 80%,rgba(0,0,0,0) 100%)}.red .map-block__text{background:-webkit-gradient(linear,left top, right top,color-stop(0, #f80000),color-stop(80%, #f80000),to(rgba(0,0,0,0)));background:linear-gradient(to right,#f80000 0,#f80000 80%,rgba(0,0,0,0) 100%)}.yellow .map-block__text{background:-webkit-gradient(linear,left top, right top,color-stop(0, #fff33e),color-stop(80%, #fff33e),to(rgba(0,0,0,0)));background:linear-gradient(to right,#fff33e 0,#fff33e 80%,rgba(0,0,0,0) 100%)}.map-block__map{position:absolute;top:0;left:0;height:100%!important;margin-left:295px;width:calc(100% - 295px)!important}.map-block__container{position:absolute;top:-300px;right:55%;bottom:-300px;left:0;border-bottom-right-radius:50%;border-top-right-radius:50%;padding:300px 50px 300px 0;z-index:999}.green .map-block__container{background-color:rgba(123,193,67,.9)}.blue .map-block__container{background-color:rgba(0,174,239,.9)}.purple .map-block__container{background-color:rgba(124,81,161,.9)}.red .map-block__container{background-color:rgba(248,0,0,.9)}.yellow .map-block__container{background-color:rgba(255,243,62,.9)}}.social-media,.text-image{overflow:visible}body{margin:0;padding:0}.social-media__tile{height:350px;background-repeat:no-repeat;background-size:cover;background-position:center;position:relative}.social-media__tile:before{background:#fff;width:44px;height:44px;position:absolute;top:25px;left:25px;content:"";border-radius:50%}.checkout-review:after,.text-image:after{content:'';clear:both}.social-media__tile--twitter{background-color:#4099ff}.social-media__tile--facebook{background-color:#3b5998}.social-media__tile--large,.social-media__tile--medium{display:none}.social-media__link{display:block}.social-media__content{position:absolute;bottom:0;top:40px;padding:40px 25px;color:#fff;word-break:break-word}.social-media__icon{width:26px;height:26px;position:absolute;fill:#000}.social-media__icon--instagram{top:34px;left:34px}.social-media__icon--facebook{top:34px;left:40px}.social-media__icon--twitter{top:30px;left:30px}@media (min-width:480px){.social-media__link{width:50%;float:left}}@media (min-width:800px){.social-media__link{width:33.3333%}}@media (min-width:1200px){.social-media__link{width:25%}.social-media__tile--medium{display:block}}@media (min-width:1500px){.social-media__link{width:20%}.social-media__tile--large{display:block}}.text-image:after{display:table}.text-image.green{background-color:#7bc143}.text-image.blue{background-color:#00aeef}.text-image.purple{background-color:#7c51a1}.text-image.red{background-color:#f80000}.text-image.yellow{background-color:#fff33e}.text-image__text{text-align:center;padding:50px}.yellow .text-image__text{color:#7c51a1}.text-image__text h2{color:#fff}.yellow .text-image__text h2{color:#7c51a1}.text-image__image{background-size:cover;background-repeat:no-repeat;background-position:center;height:360px}@media (min-width:768px){.text-image .text-image__text{float:left;padding:50px;width:calc(50% - 100px)}.text-image .text-image__image{float:left;width:50%;height:560px}}@media (min-width:960px){.text-image .text-image__text{padding:50px 120px;width:calc(50% - 240px)}}.basket #content_main,.checkout #content_main{position:relative}#content_main .basket-row--fade{-webkit-transition:opacity .5s ease-in-out;transition:opacity .5s ease-in-out;opacity:0}#content_main .basket-row--hide{display:none}#content_main .icon_flower1,#content_main .icon_flower2{position:absolute;width:188px;height:188px;background-position:center center;background-repeat:no-repeat}#content_main .icon_flower1{background-image:url(../images/icons/basket_flower1.png);right:-60px;top:20px;z-index:1}.svg #content_main .icon_flower1{background-image:url(../images/icons/basket_flower1.svg);background-size:image-width("../images/icons/basket_flower1.png")}#content_main .icon_flower2{background-image:url(../images/icons/basket_flower2.png);left:-100px;top:220px;z-index:1}.svg #content_main .icon_flower2{background-image:url(../images/icons/basket_flower2.svg);background-size:image-width("../images/icons/basket_flower2.png")}#basket_table_wrapper{-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);background-color:#f4f4ee;padding:20px;position:relative;z-index:2;margin:3.75em 1.69492%}#basket_table_wrapper h2{margin-bottom:.9375em}#basket_table_wrapper .stock-limit{padding:10px;color:#fff;background:#00aeef;border:1px solid #25408f;margin-bottom:1.25em}.basket_order_view th,.basket_order_view tr.single_item,.order_table tfoot td,.order_table th{border-bottom:2px solid #dedede}#basket_summary,#basket_table{overflow-x:auto;background-color:#f4f4ee;background-position:0 0,100% 0,0 0,100% 0;background-repeat:no-repeat;background-size:8em 100%,8em 100%,2em 100%,2em 100%;background-attachment:local,local,scroll,scroll}.donation #basket_summary,.donation #basket_table{color:#3b3b3b;background-color:#f4f4ee}.basket_order_view,.order_table{border-top:2px solid #dedede;display:table}.donation .basket_order_view,.donation .basket_order_view th,.donation .order_table,.donation .order_table th{border-top-color:#dedede}.basket_order_view td,.basket_order_view th,.order_table td,.order_table th{padding:20px 10px}.donation .basket_order_view tr.single_item,.donation .order_table tfoot td{border-top-color:#7c51a1}#basket_table .quantity_number{width:95px}.basket_order_view{font-size:.77778rem}@media (min-width:768px){.basket_order_view{font-size:1rem}}#event_basket_popup .heading,.no_user_fields #checkout_login_form legend,.no_user_fields #checkout_reg_form legend{font-size:1.5em;line-height:1.25em}.basket_order_view td.product_col{min-width:120px}.basket_order_view td.quantity_col,.basket_order_view td.remove_col,.basket_order_view td.total{min-width:50px}.basket_order_view td.remove_col input.remove_button{-webkit-box-shadow:none;box-shadow:none;cursor:pointer;width:50px;height:50px;text-indent:-9999px;background:url(../images/icons/close.png) center center no-repeat #f4f4ee}#event_basket_popup,#event_basket_popup:before{background-position:center top;background-repeat:no-repeat}.basket_order_view tr#basket_buttons .button{margin-left:0!important}.single_column .checkout_title{margin-left:2.54237%}.no_user_fields h2.no_user_checkout{margin-bottom:1.875em;margin-left:1.69492%;color:#fff}.no_user_fields #proceed_as_guest h3{color:#fff}.no_user_fields #proceed_as_guest .button{margin-top:1.875em}.no_user_fields #proceed_as_guest .button .btn_icon{text-align:center!important}.order_table .description{width:450px}.order_table .price,.order_table .quantity{width:100px}.order_table .num{font-weight:700}#security_ugc{padding-top:3.75em;padding-bottom:3.75em}@media (min-width:480px){.no_user_fields h2.no_user_checkout{margin-left:3.125%}.single_column .checkout_title{margin-left:4.6875%}#proceed_as_guest,#security_ugc .ugc{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){.no_user_fields h2.no_user_checkout{margin-left:2.32558%}.single_column .checkout_title{margin-left:3.48837%}#proceed_as_guest,#security_ugc .ugc{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){.no_user_fields h2.no_user_checkout{margin-left:2.85714%}.single_column .checkout_title{margin-left:4.28571%}#proceed_as_guest,#security_ugc .ugc{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){.no_user_fields h2.no_user_checkout{margin-left:2.85712%}.single_column .checkout_title{margin-left:4.28568%}#proceed_as_guest,#security_ugc .ugc{margin-left:2.85712%;margin-right:2.85712%}}@media (min-width:600px){#basket_summary,#basket_table{overflow-x:auto;background-image:none}.basket_order_view,.order_table{width:100%}.basket_order_view tr#basket_buttons td,.basket_order_view tr.continue_row td,.order_table tr#basket_buttons td,.order_table tr.continue_row td{text-align:right}.no_user_fields h2.no_user_checkout{margin-left:8.13953%}.no_user_fields #checkout_login_form input,.no_user_fields #checkout_reg_form input{margin-left:0}.no_user_fields #proceed_as_guest .button,.no_user_fields #proceed_as_guest h3{margin-left:4.65116%}.no_user_fields #proceed_as_guest .button{width:40.76923%}}@media (min-width:768px){#security_ugc .ugc{margin-left:auto;margin-right:auto;width:82.85714%}}@media (min-width:960px){.single_column .checkout_title{padding-left:2.85712%}.basket #content_main .icon_flower1,.checkout #content_main .icon_flower1{right:10px;top:-60px}#basket_table_wrapper{margin-left:11.42857%;margin-right:11.42857%}.no_user_fields h2.no_user_checkout{margin-left:1.42856%}.no_user_fields #checkout_login_form,.no_user_fields #checkout_reg_form{display:inline;float:left}.no_user_fields #checkout_login_form #main_flash,.no_user_fields #checkout_login_form fieldset,.no_user_fields #checkout_reg_form #main_flash,.no_user_fields #checkout_reg_form fieldset{display:inline-block;vertical-align:top;margin-left:15px;margin-right:12px;float:left;width:300px}.no_user_fields #checkout_login_form #main_flash .field,.no_user_fields #checkout_login_form fieldset .field,.no_user_fields #checkout_reg_form #main_flash .field,.no_user_fields #checkout_reg_form fieldset .field{margin-left:0;margin-right:0}.no_user_fields #checkout_login_form legend,.no_user_fields #checkout_reg_form legend{margin-left:0}.no_user_fields #checkout_login_form .input_btn,.no_user_fields #checkout_reg_form .input_btn{margin-left:0;width:300px}.no_user_fields #checkout_login_form .breaker,.no_user_fields #checkout_reg_form .breaker{float:left;width:2px;height:410px;margin:0}.no_user_fields #proceed_as_guest{display:inline-block;vertical-align:top;margin-left:15px;margin-right:0;float:left;width:280px}.no_user_fields #proceed_as_guest .button,.no_user_fields #proceed_as_guest h3{margin-left:0}.no_user_fields #proceed_as_guest .button{width:100%}.no_user_fields #proceed_as_guest h3{margin-bottom:35px}#security_ugc .ugc{width:71.42858%}}.checkout .ugc,.checkout-review{margin-bottom:48px}.checkout-review{overflow:visible}.checkout-review:after{display:table}#event_basket_popup.main_menu_visible:before,.event_sessions label .copy:before{content:""}.checkout-review__column{margin-bottom:16px}@media (min-width:600px){.checkout-review__column{float:left;margin-left:5px;margin-right:5px;width:calc(50% - 10px);word-break:break-word}}#event_basket_popup{background-image:url(../images/backgrounds/header_curve.png);position:relative;z-index:2;background-color:#5e3784;color:#fff;text-align:center}.svg #event_basket_popup{background-image:url(../images/backgrounds/header_curve.svg);background-size:600px auto}#event_basket_popup:before{background-image:url(../images/backgrounds/header_curve_blue.png);position:absolute;left:0;right:0;height:100%}.svg #event_basket_popup:before{background-image:url(../images/backgrounds/header_curve_blue.svg);background-size:600px auto}#event_basket_popup.main_menu_visible{background:#5e3784;z-index:1}#event_basket_popup.main_menu_visible #google_map_wrapper,#event_basket_popup.main_menu_visible .center,#event_basket_popup.main_menu_visible .extend{padding-top:1.875em}#event_basket_popup #event_basket_wrapper{position:relative;text-align:left;display:none}#event_basket_popup #google_map_wrapper,#event_basket_popup .center,#event_basket_popup .extend{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-property:padding-top;transition-property:padding-top;padding-top:4.6875em;padding-bottom:1.875em}.footer_social_item,.gallery_thumb{-webkit-transition-duration:.2s;-moz-transition-duration:.2s;-o-transition-duration:.2s}#event_basket_popup .event_order_summary{width:13.55932%;margin-left:auto;margin-right:auto}#event_basket_popup .heading{margin-bottom:.625em;color:#fff}#event_basket_popup .photo_count{background-image:url(../images/icons/photos.png);margin-bottom:.9375em;padding-left:40px;background-position:0 3px;background-repeat:no-repeat}.svg #event_basket_popup .photo_count{background-image:url(../images/icons/photos.svg);background-size:image-width("../images/icons/photos.png")}#event_basket_popup .button{width:13.55932%}#hide_basket_link{font-size:.875em;line-height:2.14286em;position:absolute;top:100%;left:75%;background:#5e3784;color:#fff;padding:0 15px}#hide_basket_link:focus,#hide_basket_link:hover{background:#7c51a1}#show_basket_wrapper{padding-top:.9375em;padding-bottom:.9375em;display:block;overflow:hidden}#show_basket_link{background-image:url(../images/icons/photos.png);color:#fff;padding-left:40px;background-position:0 3px;background-repeat:no-repeat;display:inline-block}.svg #show_basket_link{background-image:url(../images/icons/photos.svg);background-size:image-width("../images/icons/photos.png")}@media (min-width:480px){#event_basket_popup,#event_basket_popup:before,.svg #event_basket_popup,.svg #event_basket_popup:before{background-size:1000px auto}}@media (min-width:600px){#event_basket_popup #google_map_wrapper,#event_basket_popup .center,#event_basket_popup .extend{padding-top:1.875em}#event_basket_popup .button,#event_basket_popup .event_order_summary{width:48.83721%}}@media (min-width:768px){#event_basket_popup .button,#event_basket_popup .event_order_summary{width:48.57143%}}@media (min-width:960px){#event_basket_popup,#event_basket_popup:before,.svg #event_basket_popup,.svg #event_basket_popup:before{background-size:2560px auto}#event_basket_popup .event_order_summary{display:inline;float:left;width:31.42859%;margin-left:24.2857%;margin-right:1.42856%}#event_basket_popup .button{display:inline;float:left;width:31.42859%;margin-left:1.42856%}}#event_gallery{padding-top:1.875em;padding-bottom:1.875em;text-align:center;margin-left:1.69492%;margin-right:1.69492%}#event_gallery .heading{margin-bottom:1em;text-align:left}#event_gallery_images,.gallery_thumb_item{margin-bottom:1.875em}#event_gallery .more_cta{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.25);box-shadow:0 5px 10px rgba(0,0,0,.25);display:inline-block;padding:.9375em 30px;color:#fff;background-color:#0176aa}#event_gallery .more_cta:focus,#event_gallery .more_cta:hover{background-color:#00aeef}.gallery_thumb_item{display:inline-block;width:100%;text-align:center;vertical-align:center}.event-header__date,.event-header__title{margin-bottom:15px;color:#fff}.gallery_thumb_item .gallery_thumb_frame{position:relative;display:inline-block;vertical-align:middle}.gallery_thumb_item .gallery_thumb_frame .delete{background-image:url(../images/icons/delete.png);border-radius:50%;width:50px;padding-top:50px;height:0;overflow:hidden;position:absolute;right:-26px;top:-26px;background-color:#c40076;background-repeat:no-repeat;background-position:center center;border:3px solid #fff}.svg .gallery_thumb_item .gallery_thumb_frame .delete{background-image:url(../images/icons/delete.svg);background-size:image-width("../images/icons/delete.png")}.gallery_thumb_link:focus .gallery_thumb,.gallery_thumb_link:hover .gallery_thumb{-webkit-transform:scale(1.2,1.2);transform:scale(1.2,1.2)}.gallery_thumb{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.25);box-shadow:0 5px 10px rgba(0,0,0,.25);-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform;border:5px solid #fff;vertical-align:middle}@media (min-width:480px){#event_gallery{margin-left:3.125%;margin-right:3.125%}.gallery_thumb_item{width:50%}}@media (min-width:600px){#event_gallery{margin-left:2.32558%;margin-right:2.32558%}.gallery_thumb_item{width:33.3%}}@media (min-width:768px){#event_gallery{margin-left:auto;margin-right:auto;width:82.85714%}#event_gallery_images{margin-left:-5.71429%;margin-right:-5.71429%}}@media (min-width:960px){#event_gallery{width:71.42858%}#event_gallery_images{margin-left:-11.42848%;margin-right:-11.42848%}.gallery_thumb_item{width:25%}}.event-header{position:absolute;bottom:0;left:0;width:100%;text-align:center;padding-bottom:20px}.event-header__date,.event-header__session{padding:12px 40px;border-radius:100px;display:inline-block;font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif}.event-header__date{background:#233e91;font-size:22px}.event-header__copy{color:#fff;font-size:18px}.event-header__copy span{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;font-size:30px}.event-header__session{position:absolute;bottom:0;left:50%;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);background:#fff;font-size:22px;white-space:nowrap}@media (min-width:600px){.event-header{padding-bottom:80px}}.event_registration{background:#e9eff2;border-top:7px solid #c70077;padding-bottom:100px;margin-top:40px}.event_registration header{text-align:center;margin-top:-32px;padding:0 20px 40px}.event_registration h1{background:#c70077;color:#fff;font-size:30px;text-align:center;border-radius:100px;width:385px;max-width:100%;padding:10px 0;display:inline-block;margin-bottom:40px}.event_registration h2{text-align:center}@media all and (max-width:1023px){.event_registration{padding-bottom:50px}}.event_sessions{-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4)}.event_sessions--unavailable{opacity:.3}.event_sessions li{background:#1ab5f3}.event_sessions li:hover{cursor:pointer}.event_sessions li.parsley-error{background:red}.event_sessions li:nth-of-type(even){background:#00adf2}.event_sessions input[type=radio]{display:none}.event_sessions input[type=radio]:checked+label{background:#233e91}.event_sessions input[type=radio]:checked+label .copy:before{background:#233e91;-webkit-box-shadow:inset 0 0 0 8px #fff;box-shadow:inset 0 0 0 8px #fff}.event_sessions label{margin-bottom:0;overflow:hidden;padding:14px 20px;display:block}.event_sessions label .copy{font-size:20px;float:left;margin-bottom:0}.event_sessions label .copy:before{height:30px;width:30px;border-radius:50%;background:#fff;display:inline-block;vertical-align:middle;margin:-3px 10px 0 0;-webkit-box-shadow:0 8px 8px rgba(0,0,0,.3);box-shadow:0 8px 8px rgba(0,0,0,.3)}.event_sessions label .spaces{float:right}@media all and (max-width:767px){.event_sessions label .copy,.event_sessions label .spaces{float:none}.event_sessions label .copy:before{height:15px;width:15px;margin-right:5px}.event_sessions input[type=radio]:checked+label .copy:before{-webkit-box-shadow:inset 0 0 0 2px #fff;box-shadow:inset 0 0 0 2px #fff}}.submissions .ugc{margin-bottom:48px}.submissions .participant__heading{cursor:pointer;position:relative;border-bottom:1px solid #dedede;padding:0 0 12px;margin:12px 0}.submissions .participant__heading::after{content:'';display:inline-block;height:7px;width:7px;border-right:2px solid #000;border-bottom:2px solid #000;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);position:absolute;top:10px;left:110px}.submissions .participant__data{overflow:visible;margin-bottom:32px}.submissions .participant__data:after{clear:both;content:'';display:table}.submissions .participant__column{margin-bottom:16px}.submissions .participant--limit{color:#f80000}@media (min-width:600px){.submissions .participant__column{float:left;margin-left:5px;margin-right:5px;width:calc(50% - 10px);word-break:break-word}}#footer_social_nav{margin-top:2.8125em;margin-left:1.69492%;margin-right:1.69492%}#footer_social_nav li{display:inline-block;margin-left:-5px}.footer_social_item{-webkit-transition-property:background-size;transition-property:background-size;-webkit-transition-duration:.2s;transition-duration:.2s;background-image:url(../images/backgrounds/bkg_white_shape.png);background-position:center center;background-repeat:no-repeat;display:inline-block;width:59px;height:56px}.svg .footer_social_item{background-image:url(../images/backgrounds/bkg_white_shape.svg);background-size:44px auto}.footer_social_item:hover{background-image:url(../images/backgrounds/bkg_white_shape.png)}.svg .footer_social_item:hover{background-image:url(../images/backgrounds/bkg_white_shape.svg);background-size:59px auto}.footer_social_item span{background-image:url(../images/icons/footer_social.png);width:29px;padding-top:29px;height:0;display:inline-block;overflow:hidden;margin:14px 0 0 16px}.svg .footer_social_item span{background-image:url(../images/icons/footer_social.svg);background-size:image-width("../images/icons/footer_social.png")}.footer_social_item.youtube span{background-position:0 0}.footer_social_item.instagram span{background-position:-29px 0}.footer_social_item.linkedin span{background-position:-58px 0}.footer_social_item.facebook span{background-position:-87px 0}.footer_social_item.twitter span{background-position:-116px 0}@media (min-width:480px){#footer_social_nav{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){#footer_social_nav{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){#footer_social_nav{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){#footer_social_nav{margin-left:2.85712%;margin-right:2.85712%}}@media (min-width:768px){#footer_social_nav{float:right;margin:2.8125em 5.71429% 1.875em}}@media (min-width:960px){#footer_social_nav{margin-left:1.42856%;margin-right:1.42856%}#footer_social_nav li{margin-left:-5px}}.form-add{color:#c70077;font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;font-size:22px}.form-add:before{height:36px;width:36px;margin-top:-5px;margin-right:15px;border-radius:50%;content:"";display:inline-block;vertical-align:middle;-webkit-box-shadow:4px 4px 8px rgba(0,0,0,.2);box-shadow:4px 4px 8px rgba(0,0,0,.2);background-color:#00adf2;background-image:url(../images/backgrounds/form-add-plus.png);background-position:center;background-repeat:no-repeat}.form-add--disabled{cursor:not-allowed}#basket_popup{-webkit-box-shadow:0 6px 6px 0 rgba(0,0,0,.3);box-shadow:0 6px 6px 0 rgba(0,0,0,.3);-webkit-box-sizing:border-box;box-sizing:border-box;width:300px;background-color:#f4f4ee;left:50%;margin-left:-102px;top:50px;position:absolute;z-index:9999}#basket_popup .quantity-error{line-height:1.5;color:#f80000;padding:10px 0;display:block;border:1px solid #f80000;margin-top:15px}#basket_popup .order_summary{padding:20px}#basket_popup h2{font-size:20px!important;text-align:left}#basket_popup .basket_popup_arrow{position:absolute;top:-11px;left:135px;width:20px;height:11px;background:url(../images/backgrounds/basket_arrow.png) bottom center no-repeat}#basket_popup #close_basket_link{position:absolute;top:0;right:0;width:50px;height:0;padding-top:50px;text-indent:-9999px;background:url(../images/icons/close.png) center center no-repeat #f4f4ee}.key_message_wrapper,.key_message_wrapper .mobile_overlay{background-position:center center;background-repeat:no-repeat}#basket_popup .checkout_order{margin-top:1.875em;color:#3b3b3b;width:100%}#basket_popup .checkout_order span.item_name{font-size:17px!important}#basket_popup .checkout_order span.quantitym,#basket_popup .checkout_order span.total{font-size:16px!important}#basket_popup .checkout_order tfoot td,#basket_popup .checkout_order tr.order_item td{padding:10px 0;border-top:2px solid #dedede}#basket_popup #basket_popup_link{font-size:20px!important;margin-top:1.875em}.basket_link{-webkit-box-shadow:0 6px 6px 0 rgba(0,0,0,.3);box-shadow:0 6px 6px 0 rgba(0,0,0,.3);font-size:.77778em;line-height:2.14286em;color:#fff;padding:.5em 1em;display:inline-block;background-color:#c40076;text-align:center}@media (min-width:480px){.basket_link{display:inline-block}}@media (min-width:960px){.basket_link{text-transform:uppercase;padding:1em;position:relative;margin-left:20px;left:0}.basket_link:hover{color:#fff}#basket_popup{top:60px;left:auto;right:260px}#basket_popup .basket_popup_arrow{left:auto;right:55px}}.key_message_wrapper{background-color:#3d3d3d;background-size:cover;position:relative;width:100%}.key_message_wrapper .mobile_overlay{background-image:url(../images/backgrounds/key_message_overlay.png);position:absolute;top:40px;left:50%;margin-left:-127px;width:255px;height:240px;z-index:2}.svg .key_message_wrapper .mobile_overlay{background-image:url(../images/backgrounds/key_message_overlay.svg);background-size:image-width("../images/backgrounds/key_message_overlay.png")}.key_message_wrapper--text-center{text-align:center}.key_message_wrapper--vertical-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-moz-box;display:box;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.key_message_wrapper--vertical-center #google_map_wrapper,.key_message_wrapper--vertical-center .center,.key_message_wrapper--vertical-center .extend{padding-top:30px;padding-bottom:30px}.key_message_wrapper .button{width:320px}.key_message_wrapper h2{font-size:40px;line-height:1.5;display:block;color:#fff;margin:0 auto 1.5em}.key_message_image{height:90vw}.key_message_icon{position:absolute;top:-60px;left:-100px;width:140px;height:140px;background-repeat:no-repeat}.key_message_info,.key_message_info #google_map_wrapper,.key_message_info .button,.key_message_info .center,.key_message_info .extend,.key_message_link{position:relative}.key_message_info.yellow .key_message_icon{background-image:url(../images/icons/yellow_icon2.png)}.svg .key_message_info.yellow .key_message_icon{background-image:url(../images/icons/yellow_icon2.svg);background-size:140px auto}.key_message_info.yellow .key_message_link,.key_message_info.yellow .key_message_link:hover{color:#7c51a1}.key_message_info.blue .key_message_link,.key_message_info.blue .key_message_link:hover,.key_message_info.green .key_message_link,.key_message_info.green .key_message_link:hover,.key_message_info.pink .key_message_link,.key_message_info.pink .key_message_link:hover,.key_message_info.pink .link_block_detail p,.key_message_info.purple .key_message_link,.key_message_info.purple .key_message_link:hover{color:#fff}.key_message_info.blue .key_message_icon{background-image:url(../images/icons/blue_sun.png)}.svg .key_message_info.blue .key_message_icon{background-image:url(../images/icons/blue_sun.svg);background-size:140px auto}.key_message_info.pink .key_message_icon{background-image:url(../images/icons/pink_icon1.png)}.svg .key_message_info.pink .key_message_icon{background-image:url(../images/icons/pink_icon1.svg);background-size:140px auto}.key_message_info.purple .key_message_icon{background-image:url(../images/icons/purple_sun.png)}.svg .key_message_info.purple .key_message_icon{background-image:url(../images/icons/purple_sun.svg);background-size:140px auto}.key_message_info.green .key_message_icon{background-image:url(../images/icons/green_sun.png)}.svg .key_message_info.green .key_message_icon{background-image:url(../images/icons/green_sun.svg);background-size:140px auto}.key_message_info .button{margin:1em auto 2em;left:auto;right:auto;display:block;z-index:2;bottom:0;font-size:20px;line-height:2.14286em;float:right}.key_message_info .button span{line-height:1.5;display:block}.key_message_info .link_block_detail p{font-size:18px;line-height:1.36364em;display:inline-block;vertical-align:top;margin-left:13.63636%;margin-top:1.66667em;color:#3b3b3b;margin-right:4.54545%;position:relative;z-index:2}.key_message_link{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;font-size:1.75em;line-height:1.60714em;padding:2em;margin-left:1.69492%;margin-right:1.69492%;text-align:center;display:block;z-index:0}@media (min-width:768px){.key_message_wrapper{min-height:calc(100vh - 110px)}.key_message_wrapper .mobile_overlay{display:none}.key_message_link{margin-top:1.5em;padding:1em}.key_message_info{height:210px;position:absolute;bottom:0;left:0;right:0}.key_message_info .link_block_detail{font-size:1.22222em;width:90%;margin:auto}.key_message_info .link_block_detail p{width:40%}.key_message_info .button{width:40%;margin-top:3.33333em}.key_message_image{height:90vh}}@media (min-width:960px){.key_message_wrapper{min-height:calc(100vh - 170px)}.key_message_link{margin-top:2.8125em;font-size:1.875em;line-height:1.5em;padding:0}.key_message_icon{width:220px;height:220px;top:-70px;left:-140px}.svg .key_message_icon{background-size:220px 220px!important}}#google_map_wrapper{overflow:visible;margin-top:1.875em;margin-bottom:1.875em;background-color:#f3f3f3;display:-webkit-box;display:-ms-flexbox;display:flex;height:720px}#google_map_wrapper:after{clear:both;content:'';display:table}#google_map a.contact_number:after,.gm-style .gm-style-iw a a.contact_number:after,.gm-style .gm-style-iw div a.contact_number:after,.gm-style .gm-style-iw label a.contact_number:after,.gm-style .gm-style-iw span a.contact_number:after,.gm-style.gm-style-iw a.contact_number:after{content:" â€¢ "}#google_map_wrapper #shop_location_listing{width:450px;overflow-y:auto}#google_map{width:100%;height:18.75em;clear:both}.gm-style .gm-style-iw a,.gm-style .gm-style-iw div,.gm-style .gm-style-iw label,.gm-style .gm-style-iw span,.gm-style.gm-style-iw{font-size:1em;font-weight:inherit}@media (min-width:768px){#google_map{height:37.5em}}@media (min-width:960px){#google_map{height:45em}}#user_order_details{padding-bottom:3.75em;margin-left:1.69492%;margin-right:1.69492%}#user_order_details h2{margin-top:.9375em}#user_order_details dl dd{color:#3b3b3b}#user_order_details dl dt{font-weight:700}@media (min-width:600px){#user_order_details dl{padding-bottom:.9375em}#user_order_details dl dt{float:left;clear:left;width:150px}#user_order_details dl dd{margin:0 0 0 160px;padding:0 0 .5em}}blockquote{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;font-size:1.875em;line-height:1.5em;padding:2.8125em 10px;color:#7c51a1;background-repeat:no-repeat;margin:20px auto;max-width:960px}.multiplebgs blockquote{-pie-background:-pie-url(../images/icons/quote.png) scroll no-repeat left top,-pie-url(../images/icons/quote_end.png) scroll no-repeat right bottom;background:url(../images/icons/quote.png) left top no-repeat,url(../images/icons/quote_end.png) right bottom no-repeat}.multiplebgs.svg blockquote{background-image:url(../images/icons/quote.svg),url(../images/icons/quote_end.svg)}.quote_block_wrapper{padding-top:5.625em;padding-bottom:7.5em;position:relative;overflow:hidden}.quote_block_wrapper.green blockquote,.quote_block_wrapper.green cite{color:#fff}.quote_block_wrapper blockquote{font-size:1.5em;line-height:1.25em;padding:4.6875em 0 1.875em;max-width:100%;margin:0 1.69492%}.quote_block_wrapper blockquote,.quote_block_wrapper cite{position:relative;color:#7c51a1}.quote_block_wrapper cite{margin-top:1.875em;display:block}.quote_block_wrapper .bkg_icon{position:absolute;bottom:-50px;right:0;width:160px;height:160px;background-image:url(../images/icons/purple_sun.png)}.svg .quote_block_wrapper .bkg_icon{background-image:url(../images/icons/purple_sun.svg);background-size:160px auto}@media (min-width:480px){.quote_block_wrapper blockquote{margin-left:3.125%;margin-right:3.125%}}@media (min-width:600px){.quote_block_wrapper blockquote{margin-left:2.32558%;margin-right:2.32558%}}@media (min-width:768px){.quote_block_wrapper blockquote{margin-left:2.85714%;margin-right:2.85714%}}@media (min-width:960px){.quote_block_wrapper blockquote{margin-left:2.85712%;margin-right:2.85712%}}@media (min-width:768px){.quote_block_wrapper blockquote{margin-left:8.57143%;margin-right:8.57143%}.quote_block_wrapper #google_map_wrapper,.quote_block_wrapper .center,.quote_block_wrapper .extend{position:relative}.quote_block_wrapper .bkg_icon{background-image:url(../images/icons/purple_sun.png);width:260px;height:260px;background-repeat:no-repeat;bottom:-170px;left:-160px}.svg .quote_block_wrapper .bkg_icon{background-image:url(../images/icons/purple_sun.svg);background-size:260px auto}}.step_nav{display:-webkit-box;display:-moz-box;display:box;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-right:auto;margin-bottom:30px;margin-left:auto;width:75%;position:relative;z-index:1}.step_nav:after{position:absolute;top:50%;left:0;height:7px;width:100%;-webkit-transform:translateY(-50%);transform:translateY(-50%);content:"";display:block;background:#00acf1;z-index:-1}.step_nav li{-webkit-box-flex:0;-ms-flex:none;flex:none}.step_nav a{height:68px;width:68px;display:-webkit-box;display:-moz-box;display:box;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:50%;background:#00acf1;font-size:36px;font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;color:#fff;-webkit-box-shadow:4px 7px 8px 0 rgba(1,1,1,.3);box-shadow:4px 7px 8px 0 rgba(1,1,1,.3)}.step_nav a.active{background:#233e91}@media all and (max-width:767px){.step_nav{width:calc(100% - 40px)}.step_nav a{height:40px;width:40px;font-size:22px}}.tac .scroll{height:190px;overflow:auto;background:#fff;padding:20px;margin-bottom:30px;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4)}.tac p{font-size:16px;line-height:1.5}.tac .actions{max-width:380px;margin:0 auto}#back_to_wrapper,#contact_us_link_wrapper,#text_footer{padding-top:5.625em;padding-bottom:5.625em;clear:both}#back_to_wrapper .back_to_listing_link,#back_to_wrapper .contact_us_link,#contact_us_link_wrapper .back_to_listing_link,#contact_us_link_wrapper .contact_us_link,#text_footer .back_to_listing_link,#text_footer .contact_us_link{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.4);box-shadow:0 10px 10px 0 rgba(0,0,0,.4);margin-bottom:1.875em;background-image:url(../images/icons/arrow_left.png);background-position:left 25px center;background-repeat:no-repeat;background-color:#25408f;display:inline-block;position:relative;width:100%;text-align:center}.svg #back_to_wrapper .back_to_listing_link,.svg #back_to_wrapper .contact_us_link,.svg #contact_us_link_wrapper .back_to_listing_link,.svg #contact_us_link_wrapper .contact_us_link,.svg #text_footer .back_to_listing_link,.svg #text_footer .contact_us_link{background-image:url(../images/icons/arrow_left.svg);background-size:18px auto}#back_to_wrapper .back_to_listing_link span,#back_to_wrapper .contact_us_link span,#contact_us_link_wrapper .back_to_listing_link span,#contact_us_link_wrapper .contact_us_link span,#text_footer .back_to_listing_link span,#text_footer .contact_us_link span{-webkit-transition-property:background-color,color;transition-property:background-color,color;-webkit-transition-duration:.2s;transition-duration:.2s;width:calc(100% - 80px);margin-left:80px;display:inline-block;padding:1.125em 1.69492% .9375em 0;background-color:#00aeef;color:#fff}#back_to_wrapper .back_to_listing_link:hover span,#back_to_wrapper .contact_us_link:hover span,#contact_us_link_wrapper .back_to_listing_link:hover span,#contact_us_link_wrapper .contact_us_link:hover span,#text_footer .back_to_listing_link:hover span,#text_footer .contact_us_link:hover span{background-color:#0176aa}#back_to_wrapper .contact_us_link,#contact_us_link_wrapper .contact_us_link,#text_footer .contact_us_link{background-image:url(../images/icons/arrow_right.png);background-position:right 25px center}.svg #back_to_wrapper .contact_us_link,.svg #contact_us_link_wrapper .contact_us_link,.svg #text_footer .contact_us_link{background-image:url(../images/icons/arrow_right.svg);background-size:18px auto}#back_to_wrapper .contact_us_link span,#contact_us_link_wrapper .contact_us_link span,#text_footer .contact_us_link span{margin-left:0;margin-right:80px;padding:1.125em 0 .9375em 1.69492%}@media (min-width:768px){#back_to_wrapper .back_to_listing_link,#back_to_wrapper .contact_us_link,#contact_us_link_wrapper .back_to_listing_link,#contact_us_link_wrapper .contact_us_link,#text_footer .back_to_listing_link,#text_footer .contact_us_link{width:400px;display:block;margin-left:auto;margin-right:auto}}.label-tooltip:active .tooltip:after,.label-tooltip:focus .tooltip:after,.label-tooltip:hover .tooltip:after{opacity:1}.label-tooltip .tooltip{-webkit-box-sizing:border-box;box-sizing:border-box;background:#25408f;border-radius:50%;color:#fff;cursor:pointer;display:block;font-size:14px;height:25px;line-height:1;margin:0 5px;padding:5px 0 0;position:relative;text-align:center;width:25px}@media (min-width:600px){.label-tooltip .tooltip{display:inline-block}}.label-tooltip .tooltip:after{background:rgba(255,255,255,.8);border:1px solid #dedede;-webkit-box-shadow:3px 3px 3px 0 rgba(0,0,0,.1);box-shadow:3px 3px 3px 0 rgba(0,0,0,.1);color:#3b3b3b;content:attr(data-tooltip);left:100%;margin-left:5px;padding:5px 10px;position:absolute;text-align:left;top:0;opacity:0;-webkit-transition:.3s;transition:.3s;min-width:300px}.ugc{color:#3b3b3b}.ugc img{width:100%;height:auto}.ugc blockquote,.ugc ol,.ugc p,.ugc ul{margin-bottom:1.875em}.ugc ol li,.ugc ul li{margin-bottom:.9375em}.ugc ol,.ugc ul{margin-top:.375em}.ugc ul{list-style:none}.ugc ul li{background-image:url(../images/icons/bullet.png);background-repeat:no-repeat;background-position:0 9px;padding-left:20px}.svg .ugc ul li{background-image:url(../images/icons/bullet.svg);background-size:image-width("../images/icons/bullet.png")}.ugc ol{list-style-type:none;margin-left:15px}.ugc ol li{position:relative;padding-left:8px}.ugc ol&gt;li:before{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;font-size:1.25em;line-height:1.5em;content:counter(ol-counter);counter-increment:ol-counter;color:#c40076;left:-15px;position:absolute;top:0;width:15px}.ugc iframe.youtube-player,.ugc video{width:100%}.ugc .intro{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif;font-size:1.5em;line-height:1.25em;line-height:1.5em}.ugc video{height:auto;display:block}.ugc .img_center{width:101.69492%;height:auto;margin-left:-.84746%;margin-right:-.84746%}.ugc .custom-font{font-family:"Hayseed W00 Regular",Georgia,Times,Times New Roman,serif}@media (min-width:480px){.ugc .img_center{width:103.125%;margin-left:-1.5625%;margin-right:-1.5625%}}@media (min-width:600px){.ugc .img_center{width:102.32558%;margin-left:-1.16279%;margin-right:-1.16279%}}@media (min-width:768px){.ugc .img_center{width:102.85714%;margin-left:-1.42857%;margin-right:-1.42857%}}@media (min-width:960px){.ugc .img_center{width:102.85712%;margin-left:-1.42856%;margin-right:-1.42856%}}@media (min-width:768px){.ugc .img_center{width:105.71429%;margin-left:-2.85714%;margin-right:-2.85714%}}.people__header{background-color:#e3f7ff;position:relative}.people__header section{max-height:500px}.people__header .banner__picture{filter:blur(5px);-webkit-filter:blur(5px)}.people__header .banner__picture::before{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(60deg,rgba(0,0,0,.3) 0,rgba(255,255,255,0) 100%);content:'';opacity:60%;pointer-events:none;z-index:1}.people__header .banner__picture img{width:100%}.people__header .banner__content{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;margin-top:-270px;max-width:unset;z-index:100}.people__header .banner__content .banner__title{color:#fff}.people__header .banner__content .people__image .person__picture img{border-radius:1rem;overflow:hidden}.people__header .banner__content .people__meta{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-left:2rem}.people__header .banner__content .people__meta .banner__title{margin-bottom:0}@media (max-width:999px){.people__header .banner__content{bottom:40px}.people__header .banner__slider{padding-bottom:60px}.people__header .banner__picture::before{background-color:#000}.people__header .banner__picture img{max-width:unset}.people__header .slider .slick-slide img{width:unset}}@media (max-width:700px){.people__header .banner__picture img{height:500px}.people__header .people__meta{margin-left:0!important}.people__header .banner__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;top:0;bottom:unset;margin-top:60px}.people__header .person__picture,.people__header .person__picture img{max-width:300px}}.ui-widget-overlay{z-index:1000!important}.ui-dialog-buttons{z-index:2000!important}.cke_dialog{z-index:2300!important}.ui-dialog{z-index:3000!important}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9uYXZpZ2F0aW9uL21haW5fbmF2LnNhc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY29tcGFzcy1zYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL190cmFuc2l0aW9uLnNhc3MiLCJlbGVtZW50cy9jaGVja2JveC5zYXNzIiwiZWxlbWVudHMvaW5wdXQuc2FzcyIsImVsZW1lbnRzL29yZGVyZWQtbGlzdC5zYXNzIiwiY29tcG9uZW50cy9jYXJkLnNhc3MiLCJ1dGlscy9ncmlkLnNhc3MiLCJlbGVtZW50cy9zZWxlY3Quc2FzcyIsImxheW91dHMvc2l0ZS1oZWFkZXIuc2FzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NvbXBhc3Mtc2Fzcy1taXhpbnMvbGliL2NvbXBhc3MvdXRpbGl0aWVzL2dlbmVyYWwvX2NsZWFyZml4LnNhc3MiLCJfbWl4aW5zL2ltYWdlcy5zYXNzIiwiX2FydGljbGVzL2xpc3RzL19mYW1pbHkuc2FzcyIsIl9mb3Jtcy9fZGVmYXVsdC5zYXNzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NvbXBhc3Mtc2Fzcy1taXhpbnMvbGliL2NvbXBhc3MvcmVzZXQvX3V0aWxpdGllcy5zYXNzIiwibGF5b3V0cy9jb3JlLnNhc3MiLCJfZmVhdHVyZXMvaGVhZGVyX2Jhc2tldC5zYXNzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NvbXBhc3Mtc2Fzcy1taXhpbnMvbGliL2NvbXBhc3MvY3NzMy9fc2hhcmVkLnNhc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY29tcGFzcy1zYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL19ib3gtc2l6aW5nLnNhc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY29tcGFzcy1zYXNzLW1peGlucy9saWIvY29tcGFzcy90eXBvZ3JhcGh5L192ZXJ0aWNhbF9yaHl0aG0uc2FzcyIsIl9wbGFjZWhvbGRlcnMvYnV0dG9ucy5zYXNzIiwiX3NldHVwL3ZhcmlhYmxlcy5zYXNzIiwiX3BhZ2VzL2V2ZW50X2ltYWdlX2Jhc2tldC5zYXNzIiwiX2ZlYXR1cmVzL2V2ZW50X2Jhc2tldF9wb3B1cC5zYXNzIiwiX3BhZ2VzL2FjY291bnRfcGFnZXMuc2FzcyIsIl9wYWdlcy9zdXBwb3J0X3VzLnNhc3MiLCJlbGVtZW50cy9idXR0b24uc2FzcyIsIl9wbGFjZWhvbGRlcnMvZ3JhZGllbnRzLnNhc3MiLCJfYXJ0aWNsZXMvbGlzdHMvX3Nob3Auc2FzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jb21wYXNzLXNhc3MtbWl4aW5zL2xpYi9jb21wYXNzL3V0aWxpdGllcy9nZW5lcmFsL19oYWNrcy5zYXNzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NvbXBhc3Mtc2Fzcy1taXhpbnMvbGliL2NvbXBhc3MvZnVuY3Rpb25zL19jcm9zc19icm93c2VyX3N1cHBvcnQuc2FzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jb21wYXNzLXNhc3MtbWl4aW5zL2xpYi9jb21wYXNzL2NzczMvX2ltYWdlcy5zYXNzIiwiX2ZlYXR1cmVzL2tleV9tZXNzYWdlLnNhc3MiLCJfZmVhdHVyZXMvdGV4dF9mb290ZXIuc2FzcyIsIl9mZWF0dXJlcy9xdW90ZV9ibG9jay5zYXNzIiwiX3BsYWNlaG9sZGVycy9ncmlkLnNhc3MiLCJfZmVhdHVyZXMvbWFwcy5zYXNzIiwiX3BsYWNlaG9sZGVycy9pbWFnZXMuc2FzcyIsIl9wbGFjZWhvbGRlcnMvdHlwb2dyYXBoeS5zYXNzIiwiZWxlbWVudHMvd3lzaXd5Zy5zYXNzIiwiX2ZlYXR1cmVzL2NoZWNrb3V0X2Jhc2tldC5zYXNzIiwic2V0dGluZ3Mvc2V0dGluZ3Muc2FzcyIsIl9ib3VyYm9uL2Z1bmN0aW9ucy9fcHgtdG8tcmVtLnNjc3MiLCJjb21wb25lbnRzL2FjY29yZGlvbi1jb250ZW50LnNhc3MiLCJsYXlvdXRzL2Zvb3Rlci5zYXNzIiwiZWxlbWVudHMvZmllbGQtbGFiZWwuc2FzcyIsImVsZW1lbnRzL2Zvcm0uc2FzcyIsImVsZW1lbnRzL2hyLnNhc3MiLCJlbGVtZW50cy9pbnB1dC1wYXNzd29yZC5zYXNzIiwiX2JvdXJib24vYWRkb25zL19wb3NpdGlvbi5zY3NzIiwiZWxlbWVudHMvaW5wdXQtdG9nZ2xlLnNhc3MiLCJlbGVtZW50cy90eXBvZ3JhcGh5LnNhc3MiLCJlbGVtZW50cy9pbnB1dC11cGxvYWQuc2FzcyIsImVsZW1lbnRzL3RleHRhcmVhLnNhc3MiLCJlbGVtZW50cy9wYXJzbGV5LnNhc3MiLCJlbGVtZW50cy90YWJsZS5zYXNzIiwiY29tcG9uZW50cy9ldmVudHMuc2FzcyIsImNvbXBvbmVudHMvZXZlbnRzL2V2ZW50LWZlYXR1cmVkLnNhc3MiLCJfYm91cmJvbi9hZGRvbnMvX3NpemUuc2NzcyIsIl9ib3VyYm9uL2hlbHBlcnMvX2RpcmVjdGlvbmFsLXZhbHVlcy5zY3NzIiwibGF5b3V0cy9jb250YWluZXIuc2FzcyIsImxheW91dHMvZ3JpZC5zYXNzIiwibGF5b3V0cy9tb2RhbC5zYXNzIiwibGF5b3V0cy9zZWN0aW9uLnNhc3MiLCJsYXlvdXRzL3NsaWRlci5zYXNzIiwiY29tcG9uZW50cy9tb2RlbC5zY3NzIiwiY29tcG9uZW50cy9hY2NvcmRpb24uc2FzcyIsImNvbXBvbmVudHMvdmlkZW8uc2FzcyIsImNvbXBvbmVudHMvYXJyb3cuc2FzcyIsImNvbXBvbmVudHMvYmFja2dyb3VuZC1mbG93ZXIuc2FzcyIsImNvbXBvbmVudHMvYmFza2V0LW5vdGlmaWNhdGlvbi5zYXNzIiwiY29tcG9uZW50cy9jb250YWN0LWRldGFpbHMuc2FzcyIsImNvbXBvbmVudHMvY3FjLXdpZGdldC5zYXNzIiwiYmxvY2tzL2Jhbm5lci5zYXNzIiwiYmxvY2tzL3ByaW1hcnktbmF2LnNhc3MiLCJjb21wb25lbnRzL2V2ZW50LWZvcm0uc2FzcyIsImNvbXBvbmVudHMvZXZlbnQtc3VtbWFyeS5zYXNzIiwiY29tcG9uZW50cy9ldmVudHMvZXZlbnRzLTUwNTAuc2FzcyIsImNvbXBvbmVudHMvZXZlbnRzL2V2ZW50LWJhbm5lci5zYXNzIiwiX2FydGljbGVzL2xpc3RzL19zaG9wX2xvY2F0aW9uLnNhc3MiLCJjb21wb25lbnRzL2V2ZW50cy9ldmVudHMtcXVvdGUuc2FzcyIsImNvbXBvbmVudHMvZXZlbnRzL2V2ZW50cy1idG4uc2FzcyIsImNvbXBvbmVudHMvbWVzc2FnZXMuc2FzcyIsImNvbXBvbmVudHMvZXZlbnRzL2V2ZW50cy1zdW1tYXJ5LnNhc3MiLCJjb21wb25lbnRzL2V2ZW50cy9pY29uLXRleHQuc2FzcyIsImNvbXBvbmVudHMvbGluay1hcnJvdy5zYXNzIiwiY29tcG9uZW50cy9sb2FkaW5nLXJpbmcuc2FzcyIsImNvbXBvbmVudHMvbW9iaWxlLWV2ZW50cy1maWx0ZXIuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEuc2FzcyIsImNvbXBvbmVudHMvcGVvcGxlLWNvbnRlbnQuc2FzcyIsImNvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyLnNhc3MiLCJjb21wb25lbnRzL25hdi1pY29uLnNhc3MiLCJjb21wb25lbnRzL3BhZ2luYXRpb24uc2FzcyIsImNvbXBvbmVudHMvcGFydGljaXBhbnQtbWFuYWdlbWVudC5zYXNzIiwiYmxvY2tzL2ZlYXR1cmVkLWV2ZW50cy5zYXNzIiwiY29tcG9uZW50cy9wZW9wbGUtbGlzdGluZy5zYXNzIiwiY29tcG9uZW50cy9xdW90ZS5zYXNzIiwiY29tcG9uZW50cy9yYWRpby10b2dnbGUuc2FzcyIsImNvbXBvbmVudHMvc2Nyb2xsZXIuc2FzcyIsImNvbXBvbmVudHMvc2VhcmNoLWZpZWxkLnNhc3MiLCJjb21wb25lbnRzL3Nob3BzLXN0aWNreS1idG4uc2FzcyIsImNvbXBvbmVudHMvc2hvcHMuc2FzcyIsImNvbXBvbmVudHMvc2xpZGVyLWNhcmQuc2FzcyIsImNvbXBvbmVudHMvc29jaWFsLW5hdi5zYXNzIiwiY29tcG9uZW50cy90YWcuc2FzcyIsImJsb2Nrcy9jb250ZW50LWJsb2NrLnNhc3MiLCJibG9ja3MvYnV0dG9uLWdyaWQuc2FzcyIsImJsb2Nrcy9kb25hdGUuc2FzcyIsImJsb2Nrcy9pbWFnZS1iYWNrZ3JvdW5kLnNhc3MiLCJibG9ja3MvdmVydGljYWwtdGFicy5zYXNzIiwiYmxvY2tzL3BhbmVsLnNhc3MiLCJibG9ja3MvbWVkaWEtY2xvdWQuc2FzcyIsImhlbHBlcnMvdXRpbGl0aWVzLnNhc3MiLCJibG9ja3MvcHJvZ3Jlc3Muc2FzcyIsImJsb2Nrcy9zdGlja3ktY3RhLnNhc3MiLCJfZm9ybXMvX3NlYXJjaC5zYXNzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9fYnJlYWtwb2ludC5zY3NzIiwiX3N0cnVjdHVyZS9jb250ZW50X21haW4uc2FzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zaW5ndWxhcml0eWdzL3N0eWxlc2hlZXRzL3Npbmd1bGFyaXR5Z3MvbWF0aC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL3Npbmd1bGFyaXR5Z3Mvc3R5bGVzaGVldHMvc2luZ3VsYXJpdHlncy9tYXRoL19jb2x1bW5zLnNjc3MiLCJfc3RydWN0dXJlL2NvbnRlbnRfc3ViLnNhc3MiLCJfbmF2aWdhdGlvbi9zdWJfbmF2LnNhc3MiLCJfZm9ybXMvX3NlYXJjaF9yZXN1bHRzLnNhc3MiLCJfZm9ybXMvX3Bvc3Rjb2RlX3NlYXJjaC5zYXNzIiwiX2Zvcm1zL19hcnRpY2xlX3RhZ19maWx0ZXIuc2FzcyIsIl9mb3Jtcy9fc3RlcHBlZF9mb3JtLnNhc3MiLCJfZm9ybXMvX2VuZXdzbGV0dGVyLnNhc3MiLCJfZm9ybXMvX3Bhc3N3b3JkX3Jlc2V0LnNhc3MiLCJfZm9ybXMvX3VzZXJfZm9ybXMuc2FzcyIsIl9mb3Jtcy9yZW1vdmUtcGFydGljaXBhbnQuc2FzcyIsIl9wYWdlcy9kb25hdGUuc2FzcyIsIl9hcnRpY2xlcy9saXN0cy9fc2VhcmNoLnNhc3MiLCJfYXJ0aWNsZXMvbGlzdHMvX3RpbGVzLnNhc3MiLCJfYXJ0aWNsZXMvbGlzdHMvX3ZvbHVudGVlci5zYXNzIiwiX2FydGljbGVzL2RldGFpbHMvX2RlZmF1bHQuc2FzcyIsIl9wYWdlcy9sYW5kaW5nLXBhZ2Uuc2FzcyIsIl9hcnRpY2xlcy9kZXRhaWxzL19zaG9wLnNhc3MiLCJfYXJ0aWNsZXMvZGV0YWlscy9fZXZlbnQuc2FzcyIsIl9mZWF0dXJlcy9jaGVja291dF9yZXZpZXcuc2FzcyIsIl9jb250ZW50X2Jsb2Nrcy9fY29udGFjdF9kZXRhaWxzLnNhc3MiLCJfY29udGVudF9ibG9ja3MvX2dhbGxlcnkuc2FzcyIsIl9wYWdlcy9ldmVudF9pbWFnZS5zYXNzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NvbXBhc3Mtc2Fzcy1taXhpbnMvbGliL2NvbXBhc3MvdXRpbGl0aWVzL2dlbmVyYWwvX2Zsb2F0LnNhc3MiLCJfcGFnZXMvaG9tZS5zYXNzIiwiX3BhZ2VzL2p1c3RnaXZpbmcuc2FzcyIsIl9wYWdlcy9zaXRlbWFwLnNhc3MiLCJfcGFnZXMvbmV3c2xldHRlcl9wYWdlLnNhc3MiLCJfcGFnZXMvb3ZlcnZpZXcuc2FzcyIsIl9jb250ZW50X2Jsb2Nrcy9fZG9uYXRlLnNhc3MiLCJfY29udGVudF9ibG9ja3MvX2RvbmF0aW9uLWNhcmRzLnNhc3MiLCJfY29udGVudF9ibG9ja3MvX2RvdWJsZV9saW5rX2Jsb2NrLnNhc3MiLCJfY29udGVudF9ibG9ja3MvX2Z1bmRyYWlzaW5nLnNhc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY29tcGFzcy1zYXNzLW1peGlucy9saWIvY29tcGFzcy90eXBvZ3JhcGh5L3RleHQvX3JlcGxhY2VtZW50LnNhc3MiLCJfY29udGVudF9ibG9ja3MvX2ltYWdlLXNsaWRlci5zYXNzIiwiX2NvbnRlbnRfYmxvY2tzL19saW5rX2Jsb2NrLnNhc3MiLCJfY29udGVudF9ibG9ja3MvX21hcC5zYXNzIiwiX2NvbnRlbnRfYmxvY2tzL19tYWluX2ltYWdlLnNhc3MiLCJfY29udGVudF9ibG9ja3MvX3NvY2lhbC5zYXNzIiwiX2NvbnRlbnRfYmxvY2tzL190ZXh0LWltYWdlLnNhc3MiLCJfZmVhdHVyZXMvZXZlbnRfc2Vzc2lvbnMuc2FzcyIsIl9mZWF0dXJlcy9ldmVudF9nYWxsZXJ5LnNhc3MiLCJfZmVhdHVyZXMvZXZlbnRfaGVhZGVyLnNhc3MiLCJfZmVhdHVyZXMvZXZlbnRfcmVnaXN0cmF0aW9uLnNhc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY29tcGFzcy1zYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL190cmFuc2Zvcm0uc2FzcyIsIl9mZWF0dXJlcy91Z2Muc2FzcyIsIl9mZWF0dXJlcy9ldmVudF9zdWJtaXNzaW9ucy5zYXNzIiwiX2ZlYXR1cmVzL2Zvb3Rlcl9zb2NpYWwuc2FzcyIsIl9mZWF0dXJlcy9mb3JtX2FkZC5zYXNzIiwiX2JvdXJib24vY3NzMy9fZmxleC1ib3guc2NzcyIsIl9mZWF0dXJlcy9vcmRlcl9oaXN0b3J5LnNhc3MiLCJfZmVhdHVyZXMvc3RlcF9uYXYuc2FzcyIsIl9mZWF0dXJlcy90YWMuc2FzcyIsIl9mZWF0dXJlcy90b29sdGlwLnNhc3MiLCJfc3BlY2lhbC9fcGVyc29uX2hlYWRlci5zYXNzIiwiYXBwbGljYXRpb24uc2FzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0Q0UsNkRDVmUseUNBS2IsQ0FMYSx1Q0FPYixDQ2tCUSw4QkFBbUIsZUFHdkIsQ0NQTyxzQkFBTyx3QkMvQ2xCLENEK0NXLG9CQ2pEZixlQU1RLENDaUZBLHlFQ25FUSx5QkFwQkssQ0FvQkwscUJBcEJLLENDK0JBLHNGQzZDYixtQkFDQSxDQ0NPLHdEQzFEQyxpQkFBUyxDQ3ZCSCx5RkNxRHBCLCtEQUFBLENDNmJGLHVhQ3BiRSxRQUFTLENBQ1QsU0FBVSxDQUNWLFFBQVMsQ0FJVCxZQUFNLENBQ04sY0FBVyxDQUNYLHVCQUFnQixDQXZEUSxLQWdFeEIsYUFBYyxDQ2pGWixpQ0FBeUIsQ0FDekIsa0NBQXdCLENEc0JJLE1Ba0U5Qix3QkFBaUIsQ0FDakIsZ0JBQWlCLENBakVRLGNBc0V6QixlQUFhLENBQ2IscUJBQWdCLENBcEViLGFBd0VILFdBQVEsQ0F4RUwsb0RBMEVELFVBQVMsQ0FDVCxZQUFTLENBekVWLE1BNkVELFdBQUEsQ0E1RXVDLDJGQW9GckMsYUFBUyxDRXBIYixnUkNRSSw2QkNBRyxDRFVILHFCQ1ZHLENQUEwscURBQWtCLENBQXdDLG1CUXVGakQsQ0FBb0MsaUJBUWxDLENBTThELCtDQ2pHNUMsQ0RpRzRDLHVDQ2pHNUMsQ0FBZ0IscUNBQ3hCLENBQWlCLDJCQUNyQixDQUFXLG9CQUNyQixDQUFjLGlCQUNiLENBQVUsVUFDYixDQUFNLFdBQ0wsQ0FBTSxXQUFBLENBQ0EsUUFDTixDQUFHLFNBQ0YsQ0FBRyxjQUNKLENBQVMsd0JBQ0MsQ0MrQlUsVUQ5QnJCLENFWEwsdUZDaURBLDZDSFkwQixDQUFLLDBDQUFMLENKRlIsb29CTC9EWCxxREFDVyxDQUFFLHlCU0FxRCxDQWdCckUsNFpBQUEsNkJIWEYsQ0NBRyxxQkRVSCxDQ1ZHLDRDakI2QkgsQ0FIYSxvQ0FRZixDQVJlLCtCZ0IxQmIsQ0djNkIsdUJISjdCLENHSTZCLHdCQUM3QixDQ3FCaUIsdUJEcEJqQixDQUFPLHdCQUNFLENBQUEsb0JBQ1QsQ0FBUyxRQUNULENBQU0saUJBQ04sQ0FBVSxLQUNWLENBQUcsTUFDSCxDQUFJLFdBQ0osQ0FBUSxlQUNSLENBR0ksd2RBQUEsd0JBQ0YsQ0lwQkosK1FDa0NBLDZCTFBxQixDQUFBLDJCQUNyQixDQUFtQix3QkFDbkIsQ0lyQkEsNG9CQzBCQSwrRExWRSxDQUFrQix5QkFDRCxDQUFBLGtCQUNqQixDQUlELGlWQVpBLHdCQWFDLENFekNGLDhERjZEK0IsNkNBQUwsQ0FBSyxxQ0FBTCxDQUFLLDZCSDNEN0IsQ0c0RGtCLHFCSGxEbEIsQ0drRGtCLGtCRG9CcEIsQ0FBVyxxQkFRWCxDQU1TLGFDaENULENBQVMsaUJBQ1QsQ0FBVSx3QkFDVixDQ3pCbUIsVUQwQm5CLENBQU8scUNENkJFLENDNUJ5QyxnQkFDbEQsQ0FBYSxpQkFDYixDQUFjLG9CQUNkLENBQ0MsMEVBQUEsbUJEVUQsQ0FBVyxtQkFRWCxDQU1TLHFEUnJHVCxDQUFrQixVU2dGaEIsQ0FBQSxpQkFDQSxDQUFVLFdBQ1YsQ0FBQSxVQUFZLENBQ1osS0FBTyxDQUFJLE9BQ0wsQ0FDTix3QkFDQSxDQzNDaUIsaUNENENJLENBQUEsMkJBQ3JCLENNNkJRLGlEQUFvQixpQnhCM0c1QixDa0JtRUQsd0tBQUEscURUM0VDLENBQWtCLDhEQUNsQixDV0VGLG9KQ2lEQSx3QkhxQ0UsQ096RmtCLDBIQ0h0Qix3QkRDRSxDTjJDMEIscUhRdEJqQixDQ1FJLGtFQ1ZYLENEVVcsOEZDVGIsQ0RTYSx3RENUYixDSlpvQiw4SEs4Q3RCLHdCTDNDRSxDTjBDMEIscUhRaENqQixDQ1FJLGtFQ1ZYLENEVVcsOEZDVGIsQ0RTYSx3RENUYixDRW5CRixxS0FFQSx3Qk5hRSxDTnlDMEIscUhRcENqQixDQ1FJLGtFQ1ZYLENEVVcsOEZDVGIsQ0RTYSx3RENUYixDbkJsQkEsZ0lvQm9ERix3QkxqQ0UsQ051QzBCLHFIUXZDakIsQ0NRSSxrRUNWWCxDRFVXLDhGQ1RiLENEU2Esd0RDVGIsQ0pHMkUsNkVPWDdFLHdCUGNFLENOcUMwQixxSFExQ2pCLENDUUksa0VDVlgsQ0RVVyw4RkNUYixDRFNhLHdEQ1RiLENKUXlFLGdESzBCM0Usd0JMdkJFLENOaUIwQixxSFEzQmpCLENDUUksa0VDVlgsQ0RVVyw4RkNUYixDRFNhLHdEQ1RiLENJckJLLG9DQ0VQLGUxQlVFLENBQWdCLGF5QlRoQixDQUFBLHlCQUhLLG9DQ0VQLGdCRFNJLENBQUEsaUJBQ0EsQ0FBQSxlQUNBLENBQUEsQ0FBQSx1Rkg2Qkosa0NLbENFLENBQ3FCLHFCQUNyQixDSkNBLGdxQkFBQSx3QktSQSxDQUFnQiw0Q3pCOERoQix3Q1F0RDhCLENBQVMsZWlCS3ZDLENBQWEsaUJBQ2IsQ0NqQkYsNEJBaUNRLGlCQWpDUixDRGlCYyx3R0V5RlYsZUZ0RkYsQ0FBQSxjN0JqQlksYUFDVixDQUFPLDZCQUNQLENBRE8scUJBQ1AsQ0FBWSwwQkFDWixDQUFBLHdCQUNBLENBQ0EscUJBQ0EsQ0FBQSxvQkFDQSxDQUFBLGdCQUNBLENBQUEsc0JBQ0EsQ0FBZ0Isa0JBQ2hCLENBQVksdUNBQ1osQ0FBNkIsWUFHbkIsZUFDVixDQUFVLGFBQ1YsQ0FBTyxRQUNQLENB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RixtQkFWSixzQkFXRSxDQUNFLG1CQVpKLHNCQUFBLENBV0UsWUFHSSxzQkFBVyxDQzJJbkIsV0FDSSxzQkFBUyIsImZpbGUiOiJhcHBsaWNhdGlvbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAgTWFpbiBuYXZpZ2F0aW9uXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuLm5hdi13cmFwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlcigzKTtcbiAgQGluY2x1ZGUgcGFkZGluZy10cmFpbGVyKDEpO1xuICBAaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMDsgfVxuICAmX19jZW50ZXIge1xuICAgIG1heC13aWR0aDogOTYwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgJl9fY3VydmUge1xuICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvaGVhZGVyX2N1cnZlJywgJGJhY2tncm91bmQtc2l6ZTogNjAwcHggYXV0byk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDE1MnB4O1xuICAgICAgLnN2ZyAmLFxuICAgICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjU2MHB4IGF1dG87IH0gfSB9IH1cblxuI21haW5fbmF2IHtcbiAgQGluY2x1ZGUgbGVnYWN5LXBpZS1jbGVhcmZpeDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHotaW5kZXg6IDU7XG4gIGxpLmxldmVsXzEge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoLjYpOyB9XG5cbiAgLm1lbnVfbGluayB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtc3RhY2s7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigyMDBtcyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eSgnYmFja2dyb3VuZC1jb2xvcicpO1xuICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMjRweCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1cHgpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKC4xKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoLjEpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJpZ2h0Ymx1ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7IH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAkZGFya2JsdWU7IH0gfSB9XG5cbi5leHRlbmQge1xuICBAZXh0ZW5kIC5jZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4jaGVhZGVyX2l0ZW1zIHtcbiAgbWFyZ2luLXRvcDogNjVweDsgfVxuXG4jc3ViX25hdl93cmFwcGVyIHtcbiAgLmxldmVsLTEge1xuICAgIGEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDsgfSB9IH1cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjbWFpbl9uYXYge1xuICAgIC5tZW51X2xpbmsge1xuICAgICAgd2lkdGg6IDMzMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuXG4gICNzdWJfbmF2X3dyYXBwZXIge1xuICAgIC5sZXZlbC0xIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDMzMHB4OyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcblxuICAjbWFpbl9uYXYge1xuICAgIEBpbmNsdWRlIGxlYWRlcigwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvLyBmbG9hdDogcmlnaHRcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuICAgIC5tZW51X2xpbmsge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigyMDBtcyk7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KCdiYWNrZ3JvdW5kLWltYWdlJyk7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlciguMSk7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoLjEpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGhlaWdodDogNDRweDtcbiAgICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKCdib3JkZXItYm94Jyk7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7IH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9wcmltYXJ5X25hdl9saW5lJywgJGJhY2tncm91bmQtc2l6ZTogMTAwJSA1cHgpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gbGVmdDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yOyB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9tZW51X3JpZ2h0X2JrZy5wbmdcIikgdG9wIHJpZ2h0IG5vLXJlcGVhdDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vaW1hZ2VzL2JhY2tncm91bmRzL21lbnVfcmlnaHRfc21sX2JrZy5wbmdcIikgdG9wIHJpZ2h0IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggNTRweDsgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vaW1hZ2VzL2JhY2tncm91bmRzL21lbnVfbGVmdF9ia2cucG5nXCIpIHRvcCBsZWZ0IG5vLXJlcGVhdDsgfSB9IH0gfVxuXG4gICNzdWJfbmF2X3dyYXBwZXIge1xuICAgIC5sZXZlbC0xIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50KCAxMjAwcHggKSB7XG4gICNtYWluX25hdiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLm1lbnVfbGluayB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWFnZXMvYmFja2dyb3VuZHMvbWVudV9yaWdodF9ia2cucG5nXCIpIHRvcCByaWdodCBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDU0cHg7IH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH0gfSB9IH1cblxuXG4iLCJAaW1wb3J0IFwic2hhcmVkXCI7XG5cbi8vIENTUyBUcmFuc2l0aW9uc1xuLy8gQ3VycmVudGx5IG9ubHkgd29ya3MgaW4gV2Via2l0LlxuLy9cbi8vICogZXhwZWN0ZWQgaW4gQ1NTMywgRmlyZUZveCAzLjYvNyBhbmQgT3BlcmEgUHJlc3RvIDIuM1xuLy8gKiBXZSdsbCBiZSBwcmVwYXJlZC5cbi8vXG4vLyBJbmNsdWRpbmcgdGhpcyBzdWJtb2R1bGUgc2V0cyBmb2xsb3dpbmcgZGVmYXVsdHMgZm9yIHRoZSBtaXhpbnM6XG4vL1xuLy8gICAgICRkZWZhdWx0LXRyYW5zaXRpb24tcHJvcGVydHkgOiBhbGxcbi8vICAgICAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uIDogMXNcbi8vICAgICAkZGVmYXVsdC10cmFuc2l0aW9uLWZ1bmN0aW9uIDogZmFsc2Vcbi8vICAgICAkZGVmYXVsdC10cmFuc2l0aW9uLWRlbGF5ICAgIDogZmFsc2Vcbi8vXG4vLyBPdmVycmlkZSB0aGVtIGlmIHlvdSBsaWtlLiBUaW1pbmctZnVuY3Rpb24gYW5kIGRlbGF5IGFyZSBzZXQgdG8gZmFsc2UgZm9yIGJyb3dzZXIgZGVmYXVsdHMgKGVhc2UsIDBzKS5cblxuJGRlZmF1bHQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsICFkZWZhdWx0O1xuXG4kZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxcyAhZGVmYXVsdDtcblxuJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbjogZmFsc2UgIWRlZmF1bHQ7XG5cbiRkZWZhdWx0LXRyYW5zaXRpb24tZGVsYXk6IGZhbHNlICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbmFibGUtcHJlZml4ZWQtdmFsdWVzOiB0cmFuc2Zvcm0sIHRyYW5zZm9ybS1vcmlnaW4gIWRlZmF1bHQ7XG5cbi8vIE9uZSBvciBtb3JlIHByb3BlcnRpZXMgdG8gdHJhbnNpdGlvblxuLy9cbi8vICogZm9yIG11bHRpcGxlLCB1c2UgYSBjb21tYS1kZWxpbWl0ZWQgbGlzdFxuLy8gKiBhbHNvIGFjY2VwdHMgXCJhbGxcIiBvciBcIm5vbmVcIlxuXG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkcHJvcGVydHktMTogJGRlZmF1bHQtdHJhbnNpdGlvbi1wcm9wZXJ0eSwgJHByb3BlcnR5LTI6IGZhbHNlLCAkcHJvcGVydHktMzogZmFsc2UsICRwcm9wZXJ0eS00OiBmYWxzZSwgJHByb3BlcnR5LTU6IGZhbHNlLCAkcHJvcGVydHktNjogZmFsc2UsICRwcm9wZXJ0eS03OiBmYWxzZSwgJHByb3BlcnR5LTg6IGZhbHNlLCAkcHJvcGVydHktOTogZmFsc2UsICRwcm9wZXJ0eS0xMDogZmFsc2UpIHtcbiAgQGlmIHR5cGUtb2YoJHByb3BlcnR5LTEpID09IHN0cmluZyB7XG4gICAgJHByb3BlcnR5LTE6IHVucXVvdGUoJHByb3BlcnR5LTEpOyB9XG4gICRwcm9wZXJ0aWVzOiBjb21wYWN0KCRwcm9wZXJ0eS0xLCAkcHJvcGVydHktMiwgJHByb3BlcnR5LTMsICRwcm9wZXJ0eS00LCAkcHJvcGVydHktNSwgJHByb3BlcnR5LTYsICRwcm9wZXJ0eS03LCAkcHJvcGVydHktOCwgJHByb3BlcnR5LTksICRwcm9wZXJ0eS0xMCk7XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigtd2Via2l0LCAkcHJvcGVydGllcyk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSB7XG4gICAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiBwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigtbW96LCAkcHJvcGVydGllcyk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEge1xuICAgIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHByZWZpeGVkLWZvci10cmFuc2l0aW9uKC1vLCAkcHJvcGVydGllcyk7IH1cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHByb3BlcnRpZXM7IH1cblxuLy8gT25lIG9yIG1vcmUgZHVyYXRpb25zIGluIHNlY29uZHNcbi8vXG4vLyAqIGZvciBtdWx0aXBsZSwgdXNlIGEgY29tbWEtZGVsaW1pdGVkIGxpc3Rcbi8vICogdGhlc2UgZHVyYXRpb25zIHdpbGwgYWZmZWN0IHRoZSBwcm9wZXJ0aWVzIGluIHRoZSBzYW1lIGxpc3QgcG9zaXRpb25cblxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJGR1cmF0aW9uLTE6ICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbi0yOiBmYWxzZSwgJGR1cmF0aW9uLTM6IGZhbHNlLCAkZHVyYXRpb24tNDogZmFsc2UsICRkdXJhdGlvbi01OiBmYWxzZSwgJGR1cmF0aW9uLTY6IGZhbHNlLCAkZHVyYXRpb24tNzogZmFsc2UsICRkdXJhdGlvbi04OiBmYWxzZSwgJGR1cmF0aW9uLTk6IGZhbHNlLCAkZHVyYXRpb24tMTA6IGZhbHNlKSB7XG4gIEBpZiB0eXBlLW9mKCRkdXJhdGlvbi0xKSA9PSBzdHJpbmcge1xuICAgICRkdXJhdGlvbi0xOiB1bnF1b3RlKCRkdXJhdGlvbi0xKTsgfVxuICAkZHVyYXRpb25zOiBjb21wYWN0KCRkdXJhdGlvbi0xLCAkZHVyYXRpb24tMiwgJGR1cmF0aW9uLTMsICRkdXJhdGlvbi00LCAkZHVyYXRpb24tNSwgJGR1cmF0aW9uLTYsICRkdXJhdGlvbi03LCAkZHVyYXRpb24tOCwgJGR1cmF0aW9uLTksICRkdXJhdGlvbi0xMCk7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb25zLCAtbW96LCAtd2Via2l0LCAtbywgbm90IC1tcywgbm90IC1raHRtbCwgb2ZmaWNpYWwpOyB9XG5cbi8vIE9uZSBvciBtb3JlIHRpbWluZyBmdW5jdGlvbnNcbi8vXG4vLyAqIFsgZWFzZSB8IGxpbmVhciB8IGVhc2UtaW4gfCBlYXNlLW91dCB8IGVhc2UtaW4tb3V0IHwgY3ViaWMtYmV6aWVyKHgxLCB5MSwgeDIsIHkyKV1cbi8vICogRm9yIG11bHRpcGxlLCB1c2UgYSBjb21tYS1kZWxpbWl0ZWQgbGlzdFxuLy8gKiBUaGVzZSBmdW5jdGlvbnMgd2lsbCBlZmZlY3QgdGhlIHByb3BlcnRpZXMgaW4gdGhlIHNhbWUgbGlzdCBwb3NpdGlvblxuXG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJGZ1bmN0aW9uLTE6ICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb24sICRmdW5jdGlvbi0yOiBmYWxzZSwgJGZ1bmN0aW9uLTM6IGZhbHNlLCAkZnVuY3Rpb24tNDogZmFsc2UsICRmdW5jdGlvbi01OiBmYWxzZSwgJGZ1bmN0aW9uLTY6IGZhbHNlLCAkZnVuY3Rpb24tNzogZmFsc2UsICRmdW5jdGlvbi04OiBmYWxzZSwgJGZ1bmN0aW9uLTk6IGZhbHNlLCAkZnVuY3Rpb24tMTA6IGZhbHNlKSB7XG4gICRmdW5jdGlvbi0xOiB1bnF1b3RlKCRmdW5jdGlvbi0xKTtcbiAgJGZ1bmN0aW9uczogY29tcGFjdCgkZnVuY3Rpb24tMSwgJGZ1bmN0aW9uLTIsICRmdW5jdGlvbi0zLCAkZnVuY3Rpb24tNCwgJGZ1bmN0aW9uLTUsICRmdW5jdGlvbi02LCAkZnVuY3Rpb24tNywgJGZ1bmN0aW9uLTgsICRmdW5jdGlvbi05LCAkZnVuY3Rpb24tMTApO1xuICBAaW5jbHVkZSBleHBlcmltZW50YWwodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sICRmdW5jdGlvbnMsIC1tb3osIC13ZWJraXQsIC1vLCBub3QgLW1zLCBub3QgLWtodG1sLCBvZmZpY2lhbCk7IH1cblxuLy8gT25lIG9yIG1vcmUgdHJhbnNpdGlvbi1kZWxheXMgaW4gc2Vjb25kc1xuLy9cbi8vICogZm9yIG11bHRpcGxlLCB1c2UgYSBjb21tYS1kZWxpbWl0ZWQgbGlzdFxuLy8gKiB0aGVzZSBkZWxheXMgd2lsbCBlZmZlY3QgdGhlIHByb3BlcnRpZXMgaW4gdGhlIHNhbWUgbGlzdCBwb3NpdGlvblxuXG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkZGVsYXktMTogJGRlZmF1bHQtdHJhbnNpdGlvbi1kZWxheSwgJGRlbGF5LTI6IGZhbHNlLCAkZGVsYXktMzogZmFsc2UsICRkZWxheS00OiBmYWxzZSwgJGRlbGF5LTU6IGZhbHNlLCAkZGVsYXktNjogZmFsc2UsICRkZWxheS03OiBmYWxzZSwgJGRlbGF5LTg6IGZhbHNlLCAkZGVsYXktOTogZmFsc2UsICRkZWxheS0xMDogZmFsc2UpIHtcbiAgQGlmIHR5cGUtb2YoJGRlbGF5LTEpID09IHN0cmluZyB7XG4gICAgJGRlbGF5LTE6IHVucXVvdGUoJGRlbGF5LTEpOyB9XG4gICRkZWxheXM6IGNvbXBhY3QoJGRlbGF5LTEsICRkZWxheS0yLCAkZGVsYXktMywgJGRlbGF5LTQsICRkZWxheS01LCAkZGVsYXktNiwgJGRlbGF5LTcsICRkZWxheS04LCAkZGVsYXktOSwgJGRlbGF5LTEwKTtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHRyYW5zaXRpb24tZGVsYXksICRkZWxheXMsIC1tb3osIC13ZWJraXQsIC1vLCBub3QgLW1zLCBub3QgLWtodG1sLCBvZmZpY2lhbCk7IH1cblxuLy8gVHJhbnNpdGlvbiBhbGwtaW4tb25lIHNob3J0aGFuZFxuXG5AbWl4aW4gc2luZ2xlLXRyYW5zaXRpb24oJHByb3BlcnR5OiAkZGVmYXVsdC10cmFuc2l0aW9uLXByb3BlcnR5LCAkZHVyYXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24sICRmdW5jdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbiwgJGRlbGF5OiAkZGVmYXVsdC10cmFuc2l0aW9uLWRlbGF5KSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oY29tcGFjdCgkcHJvcGVydHkgJGR1cmF0aW9uICRmdW5jdGlvbiAkZGVsYXkpKTsgfVxuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi0xOiBkZWZhdWx0LCAkdHJhbnNpdGlvbi0yOiBmYWxzZSwgJHRyYW5zaXRpb24tMzogZmFsc2UsICR0cmFuc2l0aW9uLTQ6IGZhbHNlLCAkdHJhbnNpdGlvbi01OiBmYWxzZSwgJHRyYW5zaXRpb24tNjogZmFsc2UsICR0cmFuc2l0aW9uLTc6IGZhbHNlLCAkdHJhbnNpdGlvbi04OiBmYWxzZSwgJHRyYW5zaXRpb24tOTogZmFsc2UsICR0cmFuc2l0aW9uLTEwOiBmYWxzZSkge1xuICBAaWYgJHRyYW5zaXRpb24tMSA9PSBkZWZhdWx0IHtcbiAgICAkdHJhbnNpdGlvbi0xOiBjb21wYWN0KCRkZWZhdWx0LXRyYW5zaXRpb24tcHJvcGVydHkgJGRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbiAkZGVmYXVsdC10cmFuc2l0aW9uLWZ1bmN0aW9uICRkZWZhdWx0LXRyYW5zaXRpb24tZGVsYXkpOyB9XG4gICR0cmFuc2l0aW9uczogZmFsc2U7XG4gIEBpZiB0eXBlLW9mKCR0cmFuc2l0aW9uLTEpID09IGxpc3QgYW5kIHR5cGUtb2YobnRoKCR0cmFuc2l0aW9uLTEsIDEpKSA9PSBsaXN0IHtcbiAgICAkdHJhbnNpdGlvbnM6IGpvaW4oJHRyYW5zaXRpb24tMSwgY29tcGFjdCgkdHJhbnNpdGlvbi0yLCAkdHJhbnNpdGlvbi0zLCAkdHJhbnNpdGlvbi00LCAkdHJhbnNpdGlvbi01LCAkdHJhbnNpdGlvbi02LCAkdHJhbnNpdGlvbi03LCAkdHJhbnNpdGlvbi04LCAkdHJhbnNpdGlvbi05LCAkdHJhbnNpdGlvbi0xMCksIGNvbW1hKTsgfVxuICBAZWxzZSB7XG4gICAgJHRyYW5zaXRpb25zOiBjb21wYWN0KCR0cmFuc2l0aW9uLTEsICR0cmFuc2l0aW9uLTIsICR0cmFuc2l0aW9uLTMsICR0cmFuc2l0aW9uLTQsICR0cmFuc2l0aW9uLTUsICR0cmFuc2l0aW9uLTYsICR0cmFuc2l0aW9uLTcsICR0cmFuc2l0aW9uLTgsICR0cmFuc2l0aW9uLTksICR0cmFuc2l0aW9uLTEwKTsgfVxuICAkZGVsYXlzOiBjb21tYS1saXN0KCk7XG4gICRoYXMtZGVsYXlzOiBmYWxzZTtcbiAgJHdlYmtpdC12YWx1ZTogY29tbWEtbGlzdCgpO1xuICAkbW96LXZhbHVlOiBjb21tYS1saXN0KCk7XG4gICRvLXZhbHVlOiBjb21tYS1saXN0KCk7XG4gIC8vIFRoaXMgYmxvY2sgY2FuIGJlIG1hZGUgY29uc2lkZXJhYmx5IHNpbXBsZXIgYXQgdGhlIHBvaW50IGluIHRpbWUgdGhhdFxuICAvLyB3ZSBubyBsb25nZXIgbmVlZCB0byBkZWFsIHdpdGggdGhlIGRpZmZlcmVuY2VzIGluIGhvdyBkZWxheXMgYXJlIHRyZWF0ZWQuXG4gIEBlYWNoICR0cmFuc2l0aW9uIGluICR0cmFuc2l0aW9ucyB7XG4gICAgLy8gRXh0cmFjdCB0aGUgdmFsdWVzIGZyb20gdGhlIGxpc3RcbiAgICAvLyAodGhpcyB3b3VsZCBiZSBjbGVhbmVyIGlmIG50aCB0b29rIGEgM3JkIGFyZ3VtZW50IHRvIHByb3ZpZGUgYSBkZWZhdWx0IHZhbHVlKS5cbiAgICAkcHJvcGVydHk6IG50aCgkdHJhbnNpdGlvbiwgMSk7XG4gICAgJGR1cmF0aW9uOiBmYWxzZTtcbiAgICAkdGltaW5nLWZ1bmN0aW9uOiBmYWxzZTtcbiAgICAkZGVsYXk6IGZhbHNlO1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgICAkZHVyYXRpb246IG50aCgkdHJhbnNpdGlvbiwgMik7IH1cbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDIge1xuICAgICAgJHRpbWluZy1mdW5jdGlvbjogbnRoKCR0cmFuc2l0aW9uLCAzKTsgfVxuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMyB7XG4gICAgICAkZGVsYXk6IG50aCgkdHJhbnNpdGlvbiwgNCk7XG4gICAgICAkaGFzLWRlbGF5czogdHJ1ZTsgfVxuICAgIC8vIElmIGEgZGVsYXkgaXMgcHJvdmlkZWQgd2l0aG91dCBhIHRpbWluZyBmdW5jdGlvblxuICAgIEBpZiBpcy10aW1lKCR0aW1pbmctZnVuY3Rpb24pIGFuZCBub3QgJGRlbGF5IHtcbiAgICAgICRkZWxheTogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICR0aW1pbmctZnVuY3Rpb246IGZhbHNlO1xuICAgICAgJGhhcy1kZWxheXM6IHRydWU7IH1cbiAgICAvLyBLZWVwIGEgbGlzdCBvZiBkZWxheXMgaW4gY2FzZSBvbmUgaXMgc3BlY2lmaWVkXG4gICAgJGRlbGF5czogYXBwZW5kKCRkZWxheXMsIGlmKCRkZWxheSwgJGRlbGF5LCAwcykpO1xuICAgICR3ZWJraXQtdmFsdWU6IGFwcGVuZCgkd2Via2l0LXZhbHVlLCBjb21wYWN0KHByZWZpeGVkLWZvci10cmFuc2l0aW9uKC13ZWJraXQsICRwcm9wZXJ0eSkgJGR1cmF0aW9uICR0aW1pbmctZnVuY3Rpb24pKTtcbiAgICAkbW96LXZhbHVlOiBhcHBlbmQoJG1vei12YWx1ZSwgY29tcGFjdChwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigtbW96LCAkcHJvcGVydHkpICRkdXJhdGlvbiAkdGltaW5nLWZ1bmN0aW9uICRkZWxheSkpO1xuICAgICRvLXZhbHVlOiBhcHBlbmQoJG8tdmFsdWUsIGNvbXBhY3QocHJlZml4ZWQtZm9yLXRyYW5zaXRpb24oLW8sICRwcm9wZXJ0eSkgJGR1cmF0aW9uICR0aW1pbmctZnVuY3Rpb24gJGRlbGF5KSk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0IHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICR3ZWJraXQtdmFsdWU7XG4gICAgLy8gb2xkIHdlYmtpdCBkb2Vzbid0IHN1cHBvcnQgdGhlIGRlbGF5IHBhcmFtZXRlciBpbiB0aGUgc2hvcnRoYW5kIHNvIHdlIHByb2dyZXNzaXZlbHkgZW5oYW5jZSBpdC5cbiAgICBAaWYgJGhhcy1kZWxheXMge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXlzOyB9IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSB7XG4gICAgLW1vei10cmFuc2l0aW9uOiAkbW96LXZhbHVlOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhIHtcbiAgICAtby10cmFuc2l0aW9uOiAkby12YWx1ZTsgfVxuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbnM7IH1cblxuLy8gY29lcmNlIGEgbGlzdCB0byBiZSBjb21tYSBkZWxpbWl0ZWQgb3IgbWFrZSBhIG5ldywgZW1wdHkgY29tbWEgZGVsaW1pdGVkIGxpc3QuXG5AZnVuY3Rpb24gY29tbWEtbGlzdCgkbGlzdDogKCkpIHtcbiAgQHJldHVybiBqb2luKCgpLCAkbGlzdCwgY29tbWEpOyB9XG5cbi8vIFJldHVybnMgYCRwcm9wZXJ0eWAgd2l0aCB0aGUgZ2l2ZW4gcHJlZml4IGlmIGl0IGlzIGZvdW5kIGluIGAkdHJhbnNpdGlvbmFibGUtcHJlZml4ZWQtdmFsdWVzYC5cbkBmdW5jdGlvbiBwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigkcHJlZml4LCAkcHJvcGVydHkpIHtcbiAgQGlmIHR5cGUtb2YoJHByb3BlcnR5KSA9PSBsaXN0IHtcbiAgICAkbmV3LWxpc3Q6IGNvbW1hLWxpc3QoKTtcbiAgICBAZWFjaCAkdiBpbiAkcHJvcGVydHkge1xuICAgICAgJG5ldy1saXN0OiBhcHBlbmQoJG5ldy1saXN0LCBwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigkcHJlZml4LCAkdikpOyB9XG4gICAgQHJldHVybiAkbmV3LWxpc3Q7IH1cbiAgQGVsc2Uge1xuICAgIEBpZiBpbmRleCgkdHJhbnNpdGlvbmFibGUtcHJlZml4ZWQtdmFsdWVzLCAkcHJvcGVydHkpIHtcbiAgICAgIEByZXR1cm4gI3skcHJlZml4fS0jeyRwcm9wZXJ0eX07IH1cbiAgICBAZWxzZSB7XG4gICAgICBAcmV0dXJuICRwcm9wZXJ0eTsgfSB9IH1cblxuLy8gQ2hlY2tzIGlmIHRoZSB2YWx1ZSBnaXZlbiBpcyBhIHVuaXQgb2YgdGltZS5cbkBmdW5jdGlvbiBpcy10aW1lKCR2YWx1ZSkge1xuICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgQHJldHVybiBub3Qgbm90IGluZGV4KHMgbXMsIHVuaXQoJHZhbHVlKSk7IH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gZmFsc2U7IH0gfVxuIiwiLy8gY2hlY2tib3hcbi8vXG4vLyAuY2hlY2tib3gtLXJhZGlvIC0gTWFrZXMgY3VzdG9tIHJhZGlvIGJ1dHRvbnMgY2lyY3VsYXJcbi8vIC5jaGVja2JveC0tc21hbGwgLSBTbWFsbGVyIGZvbnQgc2l6ZSBvbiBtb2JpbGVcbi8vXG4vLyBNYXJrdXA6IC4vY2hlY2tib3guaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBlbGVtZW50cy5mb3JtLmNoZWNrYm94XG5cbi5jaGVja2JveCB7XG4gICAgJHRoaXM6ICY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJl9faW5wdXQge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuICAgICZfX2lucHV0OmNoZWNrZWQrLmNoZWNrYm94X19sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvaW50ZXJmYWNlL3RpY2suc3ZnJykgY2VudGVyIG5vLXJlcGVhdCAkY2VydWxlYW47IH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjZXJ1bGVhbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC40Mzc1ZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAuMTI1ZW07XG4gICAgICAgICAgICB3aWR0aDogMjRweDtcblxuICAgICAgICAgICAgI3skdGhpc30tLXJhZGlvICYge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfSB9IH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9IH1cblxuICAgICYtLXRyYW5zcGFyZW50IHtcbiAgICAgICAgI3skdGhpc31fX2xhYmVsIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7IH0gfVxuXG4gICAgICAgICN7JHRoaXN9X19pbnB1dDpjaGVja2VkKy5jaGVja2JveF9fbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4gICAgICAgICN7JHRoaXN9X19saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwOyB9IH1cblxuICAgICZfX3RleHQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbiAgICAmLS1zbWFsbCB7XG4gICAgICAgICN7JHRoaXN9X19sYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG5cbiAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNik7IH0gfSB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbWVkaXVtKSB7XG4gICAgICAgICYtLXNtYWxsXFxAbWVkaXVtLW1pbiB7XG4gICAgICAgICAgICAjeyR0aGlzfV9fbGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTsgfSB9IH1cblxuICAgICYucGFyc2xleS1lcnJvciB7XG4gICAgICAgICN7JHRoaXN9X19sYWJlbCB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3I7IH0gfSB9IH1cbiIsIi8vIGlucHV0XG4vL1xuLy8gLnBhcnNsZXktZXJyb3IgLSBFcnJvciBzdHlsaW5nXG4vL1xuLy8gTWFya3VwOiAuL2lucHV0Lmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMuZm9ybS5pbnB1dFxuXG4uaW5wdXQge1xuICAgICR0aGlzOiAmO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY2VydWxlYW47XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgcGFkZGluZzogMTJweCA5cHggMTFweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogcmdiYSgkbWluZS1zaGFmdCwgLjMpOyB9XG5cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoJG1pbmUtc2hhZnQsIC4zKTsgfVxuXG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogcmdiYSgkbWluZS1zaGFmdCwgLjMpOyB9XG5cbiAgICAmLnBhcnNsZXktZXJyb3Ige1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkZXJyb3I7IH1cblxuICAgICYtLXRyYW5zcGFyZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAuNik7IH1cblxuICAgICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjYpOyB9XG5cbiAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAuNik7IH0gfSB9XG5cbi5jNS1mb3JtIHtcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY2VydWxlYW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICBwYWRkaW5nOiAxMXB4IDlweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuIiwiLy8gb3JkZXJlZCBsaXN0XG4vL1xuLy8gTWFya3VwOiAuL29yZGVyZWQtbGlzdC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGVsZW1lbnRzLm9yZGVyZWQgbGlzdFxuXG4ub3JkZXJlZC1saXN0IHtcbiAgICAkdGhpczogJjtcbiAgICBjb3VudGVyLXJlc2V0OiBvbC1jb3VudGVyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAud3lzaXd5ZyAmIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbiAgICBsaSB7XG4gICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBvbC1jb3VudGVyO1xuICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcm9zZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIob2wtY291bnRlcikgJy4gJztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnSGF5c2VlZCBXMDAgUmVndWxhcicsIEdlb3JnaWEsIFRpbWVzLCBUaW1lcyBOZXcgUm9tYW4sIHNlcmlmO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMzYpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH0gfVxuXG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBjb2x1bW5zOiAyOyB9IH1cbiIsIi8vIGNhcmQgZGVmYXVsdFxuLy9cbi8vIFRoaXMgY2FyZCBjb250YWlucyB0aGUgbW9zdCBpbmZvcm1hdGlvbiBzZWVuIG9uIGFueSB0eXBlIG9mIGNhcmQuXG4vL1xuLy8gTWFya3VwOiAuL2NhcmQuaGJzXG4vL1xuLy8gYmFja2dyb3VuZDogI2UzZjdmZlxuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy5jYXJkLmRlZmF1bHRcblxuLy8gY2FyZCB0aWxlXG4vL1xuLy8gTWFya3VwOiAuL2NhcmQtdGlsZS5oYnNcbi8vXG4vLyBiYWNrZ3JvdW5kOiAjZTNmN2ZmXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLmNhcmQudGlsZVxuXG4vLyBjYXJkIGhvcml6b250YWxcbi8vXG4vLyBNYXJrdXA6IC4vY2FyZC1ob3Jpem9udGFsLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy5jYXJkLmhvcml6b250YWxcblxuLy8gY2FyZCBqb2Jcbi8vXG4vLyBNYXJrdXA6IC4vY2FyZC1qb2IuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLmNhcmQuam9iXG5cbi8vIGNhcmQgZmVhdHVyZWRcbi8vXG4vLyBNYXJrdXA6IC4vY2FyZC1mZWF0dXJlZC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMuY2FyZC5mZWF0dXJlZFxuXG4vLyBjYXJkIGZhbWlseSBzdG9yaWVzXG4vL1xuLy8gTWFya3VwOiAuL2NhcmQtZmFtaWx5LXN0b3JpZXMuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLmNhcmQuZmFtaWx5IHN0b3JpZXNcblxuLmNhcmQge1xuICAgICR0aGlzOiAmO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoJGJsYWNrLCAuMTMpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDQyNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDI1MG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA2MnB4IDE3cHggMHB4IHJnYmEoMCwgNzksIDExMiwgMC4wMCksIDBweCA0MHB4IDE2cHggMHB4IHJnYmEoMCwgNzksIDExMiwgMC4wNCksIDBweCAyMnB4IDEzcHggMHB4IHJnYmEoMCwgNzksIDExMiwgMC4xMyksIDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwgNzksIDExMiwgMC4yMiksIDBweCAycHggNXB4IDBweCByZ2JhKDAsIDc5LCAxMTIsIDAuMjUpOyB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tUHJpbWFyeS1EZWZhdWx0LCAjMDBBQ0YxKTtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDRweDsgfVxuXG4gICAgJl9fYXJ0aWNsZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4gICAgJl9fbWVkaWEtY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdpbGQtc2FuZDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGhlaWdodDogMjEwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTAlIG51bGwgbnVsbCA1MCUpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAmX190YWdzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwOyB9XG5cbiAgICAmX190YWcge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4OyB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgY29sb3I6ICRjZXJ1bGVhbjtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMzYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbiAgICAmX19jb3B5IHtcbiAgICAgICAgY29sb3I6ICRtaW5lLXNoYWZ0O1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxuXG4gICAgJl9fbWV0YSB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87IH1cblxuICAgICZfX2RhdGUge1xuICAgICAgICBjb2xvcjogJG1pbmUtc2hhZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTsgfVxuXG4gICAgJi0tdGlsZSB7XG4gICAgICAgICN7JHRoaXN9X19hcnRpY2xlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4gICAgICAgICN7JHRoaXN9X19oZWFkaW5nIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgzNik7IH1cblxuICAgICAgICAjeyR0aGlzfV9fY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtaW5lLXNoYWZ0LCAuNzUpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgICAgICN7JHRoaXN9X19jb3B5IHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuICAgICYtLWhvcml6b250YWwge1xuICAgICAgICBtYXgtd2lkdGg6IDk1MHB4O1xuXG4gICAgICAgICN7JHRoaXN9X19hcnRpY2xlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cblxuICAgICAgICAjeyR0aGlzfV9fbWVkaWEtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiA0MDdweDsgfVxuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgI3skdGhpc31fX2FydGljbGUge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuICAgICAgICAgICAgI3skdGhpc31fX21lZGlhLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bzsgfSB9IH1cblxuICAgICYtLWZlYXR1cmVkIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTM5cHg7XG5cbiAgICAgICAgI3skdGhpc31fX2FydGljbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDsgfVxuXG4gICAgICAgICN7JHRoaXN9X19tZWRpYS1jb250YWluZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDc1NHB4OyB9XG5cbiAgICAgICAgI3skdGhpc31fX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweDsgfVxuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgI3skdGhpc31fX2FydGljbGUge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuICAgICAgICAgICAgI3skdGhpc31fX21lZGlhLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAjeyR0aGlzfV9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM4NXB4OyB9IH0gfVxuXG5cbiAgICAkZmVhdHVyZWQtZ3V0dGVyOiAxMjtcblxuICAgICYtLWV2ZW50LWZlYXR1cmVkIHtcbiAgICAgICAgI3skdGhpc31fX2FydGljbGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBpbms7IH1cblxuICAgICAgICAjeyR0aGlzfV9fbWVkaWEtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDA7XG4gICAgICAgICAgICBtYXJnaW46ICN7JGZlYXR1cmVkLWd1dHRlcn1weCAjeyRmZWF0dXJlZC1ndXR0ZXJ9cHggMDtcbiAgICAgICAgICAgIGhlaWdodDogI3syMTAgLSAkZmVhdHVyZWQtZ3V0dGVyfXB4OyB9XG5cbiAgICAgICAgI3skdGhpc31fX2NvbnRlbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgI3skZmVhdHVyZWQtZ3V0dGVyfXB4ICN7JGZlYXR1cmVkLWd1dHRlcn1weDsgfSB9XG5cblxuICAgICYtLXBhZ2UtZmVhdHVyZWQge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgICAgICAjeyR0aGlzfV9fYXJ0aWNsZSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4gICAgICAgICAgICAjeyR0aGlzfV9fbWVkaWEtY29udGFpbmVyLCAjeyR0aGlzfV9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgZmxleDogMTsgfVxuXG4gICAgICAgICAgICAjeyR0aGlzfV9fbWVkaWEtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7IH0gfSB9XG5cbiAgICAuY2FyZC1jYXJvdXNlbCAmIHtcbiAgICAgICAgLy8gQmVjYXVzZSBTbGlja1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCkgIWltcG9ydGFudDsgfSB9XG5cbi5jYXJkLWNhcm91c2VsIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKCRibGFjaywgLjEpO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbGFyZ2UpIHtcbiAgICAgICAgICAgIC8vIEJlY2F1c2UgU2xpY2tcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbiAgICAuc2xpY2stcHJldixcbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB0b3A6IC0xMzVweDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICAgIHdpZHRoOiA0NHB4OyB9XG5cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEycHg7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEycHg7XG4gICAgICAgIHJpZ2h0OiA0NXB4OyB9XG5cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMnB4O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcbiAgICAgICAgcmlnaHQ6IDA7IH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBmaWxsOiAkcm9zZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoOTBkZWcpO1xuXG4gICAgICAgICYtLXJldmVyc2Uge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoLTkwZGVnKTsgfSB9XG5cbiAgICAmLS1tYXRjaC1oZWlnaHQge1xuICAgICAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IH0gfSB9IH1cbiIsIi8vIEdyaWRcbi8vXG4vLyBgK2dyaWRgIEdlbmVyYXRlcyBhIHNpbXBsZSBncmlkIHN5c3RlbVxuLy9cbi8vIFN0eWxlZ3VpZGUgdXRpbGl0aWVzLm1peGlucy5ncmlkXG5cbiRhbGlnbm1lbnRzOiAoc3RhcnQ6IGZsZXgtc3RhcnQsIGVuZDogZmxleC1lbmQsIGNlbnRlcjogY2VudGVyLCBzdHJldGNoOiBzdHJldGNoKTtcblxuQG1peGluIGdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgQGVhY2ggJG1vZGlmaWVyLCAkYWxpZ25tZW50IGluICRhbGlnbm1lbnRzIHtcbiAgICAgICAgJi0tYWxpZ24tI3skbW9kaWZpZXJ9IHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiAkYWxpZ25tZW50OyB9XG5cbiAgICAgICAgJi0tanVzdGlmeS0jeyRtb2RpZmllcn0ge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiAkYWxpZ25tZW50OyB9IH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBmbGV4OiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGdyaWQtZ3V0dGVyO1xuXG4gICAgICAgIEBlYWNoICRtb2RpZmllciwgJGFsaWdubWVudCBpbiAkYWxpZ25tZW50cyB7XG4gICAgICAgICAgICAmLS1hbGlnbi0jeyRtb2RpZmllcn0ge1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6ICRhbGlnbm1lbnQ7IH0gfSB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc21hbGwpIHtcblxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICAgICAgICAgICAgJi0tI3skaX0tY29sICYge1xuICAgICAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygjezEwMCUvJGl9IC0gI3skZ3JpZC1ndXR0ZXJ9KTsgfSB9IH0gfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNtYWxsKSB7XG5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA2IHtcbiAgICAgICAgICAgICYtLSN7JGl9LWNvbCAmIHtcbiAgICAgICAgICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JGdyaWQtZ3V0dGVyfSk7IH0gfSB9IH0gfVxuIiwiLy8gc2VsZWN0XG4vL1xuLy8gTWFya3VwOiAuL3NlbGVjdC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGVsZW1lbnRzLmZvcm0uc2VsZWN0XG5cbi5zZWxlY3QtZmxleCB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuXG4uY3VzdG9tLXNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjZXJ1bGVhbjtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICZfX3NlbGVjdCB7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgcGFkZGluZzogMTBweCA5cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6Oi1tcy1leHBhbmQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuXG4gICAgICAgIG9wdGlvbltoaWRkZW5dIHtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRtaW5lLXNoYWZ0LCAuMyk7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNTsgfSB9XG5cbiAgICAmX19hcnJvdyB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgMTVweCBudWxsIG51bGwpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9IH1cbiIsIiRoZWFkZXItaGVpZ2h0OiA5NXB4O1xuXG4uaGVhZGVyIHtcbiAgICAkdGhpczogJjtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgaGVpZ2h0OiA5NXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNzVzIGVhc2U7IH1cblxuICAgICYtLXNwYWNlZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuICAgICYtLW5hdi1hY3RpdmUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihmaXhlZCwgMTUwcHggMCAwIDApO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MiwgNDcsIDQ3LCAuOCk7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB6LWluZGV4OiAxOyB9IH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbihudWxsIGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKG51bGwgMjBweCk7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIG1heC13aWR0aDogMTM1MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgbnVsbCAtMzAlIDclKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgIHotaW5kZXg6IDc1MDtcblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTgwcHg7IH0gfVxuXG4gICAgJl9fb2JqZWN0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAmX190b3Age1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4gICAgJl9fdG9wLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoJG1pbmUtc2hhZnQsIC4yNik7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7IH1cblxuICAgICZfX2N1cnZlIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDEwMCUgbnVsbCBudWxsIDApO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogNzUwOyB9XG5cbiAgICAmX19zZWFyY2gge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA5NXB4IG51bGwgbnVsbCAwKTtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpbHktd2hpdGU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDkwcHgpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgZWFzZSwgb3BhY2l0eSAuNzVzIGVhc2U7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiA1MDA7XG5cbiAgICAgICAgI3skdGhpc30tLW5hdi1hY3RpdmUgJiB7XG4gICAgICAgICAgICBvdmVyZmxvdzogc2Nyb2xsOyB9XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMTUwcHggbnVsbCBudWxsIDApO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTUwcHgpOyB9XG5cbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuXG4gICAgICAgICZfX3RvcC1idXR0b24ge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDhweDsgfVxuXG4gICAgICAgICZfX3RvcCB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbiAgICAgICAgJl9fc2VhcmNoLWZvcm0ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAgICAgJl9fbmF2IHtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiA0MjBweDsgfVxuXG4gICAgICAgICZfX3NlYXJjaCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfSB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkeGxhcmdlKSB7XG4gICAgICAgICZfX3RvcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbiAgICAgICAgJl9fbmF2IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bzsgfVxuXG4gICAgICAgICZfX2N1cnZlIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDUwMDsgfSB9IH1cbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8vIEBkb2Mgb2ZmXG4vLyBFeHRlbmRzIHRoZSBib3R0b20gb2YgdGhlIGVsZW1lbnQgdG8gZW5jbG9zZSBhbnkgZmxvYXRzIGl0IGNvbnRhaW5zLlxuLy8gQGRvYyBvblxuXG5AaW1wb3J0IFwiaGFja3NcIjtcblxuLy8gVGhpcyBiYXNpYyBtZXRob2QgaXMgcHJlZmVycmVkIGZvciB0aGUgdXN1YWwgY2FzZSwgd2hlbiBwb3NpdGlvbmVkXG4vLyBjb250ZW50IHdpbGwgbm90IHNob3cgb3V0c2lkZSB0aGUgYm91bmRzIG9mIHRoZSBjb250YWluZXIuXG4vL1xuLy8gUmVjb21tZW5kYXRpb25zIGluY2x1ZGUgdXNpbmcgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGEgd2lkdGguXG4vLyBDcmVkaXQ6IFtxdWlya3Ntb2RlLm9yZ10oaHR0cDovL3d3dy5xdWlya3Ntb2RlLm9yZy9ibG9nL2FyY2hpdmVzLzIwMDUvMDMvY2xlYXJpbmdfZmxvYXRzLmh0bWwpXG5AbWl4aW4gY2xlYXJmaXgge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBoYXMtbGF5b3V0OyB9XG5cbi8vIFRoaXMgb2xkZXIgbWV0aG9kIGZyb20gUG9zaXRpb24gSXMgRXZlcnl0aGluZyBjYWxsZWRcbi8vIFtFYXN5IENsZWFyaW5nXShodHRwOi8vd3d3LnBvc2l0aW9uaXNldmVyeXRoaW5nLm5ldC9lYXN5Y2xlYXJpbmcuaHRtbClcbi8vIGhhcyB0aGUgYWR2YW50YWdlIG9mIGFsbG93aW5nIHBvc2l0aW9uZWQgZWxlbWVudHMgdG8gaGFuZ1xuLy8gb3V0c2lkZSB0aGUgYm91bmRzIG9mIHRoZSBjb250YWluZXIgYXQgdGhlIGV4cGVuc2Ugb2YgbW9yZSB0cmlja3kgQ1NTLlxuQG1peGluIGxlZ2FjeS1waWUtY2xlYXJmaXgge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICBAaW5jbHVkZSBoYXMtbGF5b3V0OyB9XG5cbi8vIFRoaXMgaXMgYW4gdXBkYXRlZCB2ZXJzaW9uIG9mIHRoZSBQSUUgY2xlYXJmaXggbWV0aG9kIHRoYXQgcmVkdWNlcyB0aGUgYW1vdW50IG9mIENTUyBvdXRwdXQuXG4vLyBJZiB5b3UgbmVlZCB0byBzdXBwb3J0IEZpcmVmb3ggYmVmb3JlIDMuNSB5b3UgbmVlZCB0byB1c2UgYGxlZ2FjeS1waWUtY2xlYXJmaXhgIGluc3RlYWQuXG4vL1xuLy8gQWRhcHRlZCBmcm9tOiBbQSBuZXcgbWljcm8gY2xlYXJmaXggaGFja10oaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svKVxuQG1peGluIHBpZS1jbGVhcmZpeCB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQGluY2x1ZGUgaGFzLWxheW91dDsgfVxuIiwiQG1peGluICBzdmctYmFja2dyb3VuZCgkaW1hZ2UtcGF0aCwgJGZhbGxiYWNrLWZvcm1hdDogXCIucG5nXCIsICRiYWNrZ3JvdW5kLXNpemU6IGltYWdlLXdpZHRoKCBcIiN7JGltYWdlLXBhdGh9I3skZmFsbGJhY2stZm9ybWF0fVwiKSApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skaW1hZ2UtcGF0aH0jeyRmYWxsYmFjay1mb3JtYXR9XCIpO1xuICAuc3ZnICYge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGltYWdlLXBhdGh9LnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRiYWNrZ3JvdW5kLXNpemU7IH0gfVxuIiwiI2ZhbWlseV9zdG9yeV9saXN0aW5nIHtcbiAgcGFkZGluZzogMDtcblxuICAuYXJ0aWNsZV9zdHViX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgJi5ibHVlIHtcbiAgICAgIEBleHRlbmQgJWdyYWRpZW50X2JsdWU7IH1cbiAgICAmLnllbGxvdyB7XG4gICAgICBAZXh0ZW5kICVncmFkaWVudF95ZWxsb3c7IH1cbiAgICAmLnJlZCB7XG4gICAgICBAZXh0ZW5kICVncmFkaWVudF9yZWQ7IH1cbiAgICAmLnB1cnBsZSB7XG4gICAgICBAZXh0ZW5kICVncmFkaWVudF9wdXJwbGU7IH1cblxuICAgICYuYmx1ZSxcbiAgICAmLnB1cnBsZSxcbiAgICAmLnJlZCwge1xuICAgICAgYSxcbiAgICAgIGgyLFxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7IH1cbiAgICAgIC5hcnRpY2xlX3N0dWJfdGl0bGUge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL2Fycm93X3JpZ2h0JywgJGJhY2tncm91bmQtc2l6ZTogMThweCBhdXRvKTsgfSB9IH1cbiAgICAmLnllbGxvdyB7XG4gICAgICBhLFxuICAgICAgaDIsXG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICRwdXJwbGU7IH1cbiAgICAgIC5hcnRpY2xlX3N0dWJfdGl0bGUge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL2Fycm93X3JpZ2h0X3B1cnBsZScsICRiYWNrZ3JvdW5kLXNpemU6IDE4cHggYXV0byk7IH0gfSB9XG5cbiAgICAmLmJsdWUsXG4gICAgJi5wdXJwbGUsXG4gICAgJi5yZWQsXG4gICAgJi55ZWxsb3cge1xuICAgICAgaDIge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfSB9IH1cblxuICAgICYuYmx1ZSB7XG4gICAgICAuaWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvYmx1ZV9pY29uMScsICRiYWNrZ3JvdW5kLXNpemU6IDEzMHB4IGF1dG8pOyB9IH1cbiAgICAmLnB1cnBsZSB7XG4gICAgICAuaWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvcHVycGxlX2ljb24xJywgJGJhY2tncm91bmQtc2l6ZTogMTMwcHggYXV0byk7IH0gfVxuICAgICYucmVkIHtcbiAgICAgIC5pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9yZWRfaWNvbjEnLCAkYmFja2dyb3VuZC1zaXplOiAxMzBweCBhdXRvKTsgfSB9XG4gICAgJi55ZWxsb3cge1xuICAgICAgLmljb24ge1xuICAgICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3llbGxvd19pY29uMicsICRiYWNrZ3JvdW5kLXNpemU6IDEzMHB4IGF1dG8pOyB9IH0gfVxuXG4gIC5hcnRpY2xlX3N0dWJfaW1hZ2Vfd3JhcHBlciB7XG4gICAgQGV4dGVuZCAlaW1hZ2VfY292ZXI7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIC1tcy1iZWhhdmlvcjogYXNzZXQtdXJsKCcuLi9pbWFnZXMvdmVuZG9yL2JhY2tncm91bmRzaXplLm1pbi5odGMnKTsgfVxuXG4gIC5hcnRpY2xlX3N0dWJfY29udGVudCB7XG4gICAgaGVpZ2h0OiAyNDBweDtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4gIC5hcnRpY2xlX3N0dWJfdGl0bGUge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoLjUpO1xuICAgIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuICAuYXJ0aWNsZV9zdHViX3RpdGxlLFxuICAuYXJ0aWNsZV9zdHViX2Fic3RyYWN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuICAuYXJ0aWNsZV9zdHViX2Fic3RyYWN0IHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbiAgLmljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTgwcHg7XG4gICAgcmlnaHQ6IC0zMHB4O1xuICAgIHdpZHRoOiAxMzBweDtcbiAgICBoZWlnaHQ6IDEzMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHotaW5kZXg6IDE7IH0gfVxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoICdhbGwnICkge1xuICAjZmFtaWx5X3N0b3J5X2xpc3Rpbmcge1xuICAgIC5hcnRpY2xlX3N0dWJfY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRtb2JpbGUtbGFuZHNjYXBlKTtcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRzbWFsbC10YWJsZXQpIHtcbiAgI2ZhbWlseV9zdG9yeV9saXN0aW5nIHtcbiAgICAuYXJ0aWNsZV9zdHViX2ltYWdlX3dyYXBwZXIge1xuICAgICAgaGVpZ2h0OiA0MDBweDsgfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgI2ZhbWlseV9zdG9yeV9saXN0aW5nIHtcbiAgICAuYXJ0aWNsZV9zdHViX2l0ZW0ge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAuYXJ0aWNsZV9zdHViX2ltYWdlX3dyYXBwZXIge1xuICAgICAgaGVpZ2h0OiAyNjBweDsgfVxuXG4gICAgLmFydGljbGVfc3R1Yl9jb250ZW50IHtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgLmljb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAjZmFtaWx5X3N0b3J5X2xpc3Rpbmcge1xuICAgIC5hcnRpY2xlX3N0dWJfaW1hZ2Vfd3JhcHBlciB7XG4gICAgICBoZWlnaHQ6IDM1MHB4OyB9XG5cbiAgICAuYXJ0aWNsZV9zdHViX2l0ZW0ge1xuICAgICAgJi5ibHVlLFxuICAgICAgJi5yZWQsXG4gICAgICAmLnllbGxvdyxcbiAgICAgICYucHVycGxlIHtcbiAgICAgICAgLmFydGljbGVfc3R1Yl9jb250ZW50IHtcbiAgICAgICAgICAvLyBtYXJnaW4tbGVmdDogMFxuIH0gfSAgICAgICAgICAvLyBtYXJnaW4tcmlnaHQ6IDBcblxuICAgICAgJi5ibHVlLFxuICAgICAgJi5yZWQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgLmFydGljbGVfc3R1Yl9jb250ZW50IHtcbiAgICAgICAgICB3aWR0aDogMzkwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4gICAgICAmLnllbGxvdyxcbiAgICAgICYucHVycGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgLmFydGljbGVfc3R1Yl9jb250ZW50IHtcbiAgICAgICAgICB3aWR0aDogMzkwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDgwcHg7IH0gfSB9XG5cbiAgICAuaWNvbiB7XG4gICAgICB0b3A6IDI3MHB4OyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50KDEyMDBweCkge1xuICAjZmFtaWx5X3N0b3J5X2xpc3Rpbmcge1xuICAgIC5hcnRpY2xlX3N0dWJfaW1hZ2Vfd3JhcHBlciB7XG4gICAgICBoZWlnaHQ6IDQ2MHB4OyB9XG5cbiAgICAuaWNvbiB7XG4gICAgICB0b3A6IDM4MHB4OyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50KDE2MDBweCkge1xuICAjZmFtaWx5X3N0b3J5X2xpc3Rpbmcge1xuICAgIC5hcnRpY2xlX3N0dWJfaW1hZ2Vfd3JhcHBlciB7XG4gICAgICBoZWlnaHQ6IDU2MHB4OyB9XG5cbiAgICAuaWNvbiB7XG4gICAgICB0b3A6IDQ5MHB4OyB9IH0gfVxuXG4iLCIvLyBEZWZhdWx0IGZvcm0gc3R5bGluZ1xuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiNmb3JtX3dyYXBwZXIge1xuICBAZXh0ZW5kICVncmFkaWVudF9wdXJwbGU7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDIpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMyk7IH1cblxuLmJhc2ljX2Zvcm0ge1xuICBAaW5jbHVkZSBsZWdhY3ktcGllLWNsZWFyZml4O1xuXG4gIGZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKCdib3JkZXItYm94Jyk7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW4tbGVmdDogNS43MTQyOSU7XG4gICAgbWFyZ2luLXJpZ2h0OiA1LjcxNDI5JTtcblxuICAgICYuYnV0dG9ucyB7XG4gICAgICBAaW5jbHVkZSBsZWFkZXIoLjgpOyB9XG5cbiAgICAmLndpdGhfYm9yZGVyIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkZGFya3B1cnBsZTsgfVxuXG4gICAgZmllbGRzZXQuaW5saW5lX2ZzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDcxMHB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuXG4gIGxlZ2VuZCB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtc3RhY2s7XG4gICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygzNnB4KTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoLjUpO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoLjIpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9IH1cblxuICBzcGFuLnRleHQtbXV0ZWQuc21hbGwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDA7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnKic7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4gIC5maWVsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICBAZXh0ZW5kICVkZWZhdWx0LWZvbnQ7XG4gICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygkYmFzZS1mb250LXNpemUsIDEpO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyggMHB4IDEwcHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjIpKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KCdhbGwnKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDIwMG1zKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMTJweCAxMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAmLnBhcnNsZXktZXJyb3Ige1xuICAgICAgYmFja2dyb3VuZDogcmVkOyB9IH1cblxuICBzZWxlY3Qge1xuICAgICYucGFyc2xleS1lcnJvciB7XG4gICAgICAmKyAuY3VzdG9tU2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZDogcmVkOyB9IH0gfVxuXG4gIGlucHV0IHtcbiAgICBoZWlnaHQ6IDUwcHg7XG5cbiAgICAmW3R5cGU9cmFkaW9dLFxuICAgICZbdHlwZT1jaGVja2JveF0ge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyggbm9uZSApO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbiAgICAmW3R5cGU9cmFkaW9dIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW46IC0zcHggMTBweCAwIDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDhweCByZ2JhKDAsMCwwLC4zKTsgfVxuXG4gICAgICAmOmNoZWNrZWQ6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZDogIzIzM2U5MTtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgbGVmdDogOHB4OyB9IH0gfVxuXG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IHJoeXRobSg1LjUpOyB9XG5cbiAgc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuICBzcGFuLnJlcXVpcmVkIHtcbiAgICBAZXh0ZW5kICVib2xkLWZvbnQ7XG4gICAgY29sb3I6ICRncmVlbjtcbiAgICBwYWRkaW5nLWxlZnQ6IDNweDsgfVxuXG4gIGlucHV0W3R5cGU9J2ZpbGUnXSB7XG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cblxuICAubm90ZSB7XG4gICAgQGluY2x1ZGUgYWRqdXN0X2ZvbnRfc2l6ZV90bygxNHB4KTtcbiAgICAvLyBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKVxuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xuICAgIG1hcmdpbi1ib3R0b206IC02cHg7IH1cblxuICAuZmllbGRfd2l0aF9lcnJvcnMge1xuICAgIGlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0IHtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICAkZXJyb3ItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFsZXBpbms7IH0gfVxuXG4gIC5maWVsZCB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy10cmFpbGVyKDAuNSk7XG4gICAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoMC41KTsgfVxuXG4gIC5jbGVhciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuICAuaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuICAud3JhcF9sYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW5wdXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgdG9wOiAzcHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG5cbiAgLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIEBpbmNsdWRlIGFkanVzdF9mb250X3NpemVfdG8oMjBweCk7XG5cbiAgICAmLmNlbnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMHB4IGF1dG87IH1cblxuICAgICYuc2Vjb25kYXJ5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJ1dHRvbi1jb2xvciwgMjAlKTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yOyB9IH1cblxuICAgICYtLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbiAgLmlucHV0X2J0biB7XG4gICAgQGV4dGVuZCAlaW5wdXRfYnRuX2Fycm93OyB9XG5cbiAgLy8gY3VzdG9tIHNlbGVjdHNcblxuICAuY3VzdG9tX3NlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya2JsdWU7XG4gICAgICBmb250LXNpemU6IDE0cHghaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICR3aGl0ZTsgfSB9XG5cbiAgLmN1c3RvbVNlbGVjdCB7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1MHB4IWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya2JsdWU7IH1cblxuICAuY3VzdG9tU2VsZWN0SW5uZXIge1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygxNnB4KTtcbiAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3NlbGVjdF9hcnJvdycpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGhlaWdodDogNTBweCFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTJweCAxNnB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY29sb3I6ICR3aGl0ZTsgfVxuXG4gIC5oYXNDdXN0b21TZWxlY3Qge1xuICAgIG9wdGlvbiB7XG4gICAgICBjb2xvcjogJHdoaXRlOyB9IH1cblxuICAuYnJlYWtlciB7XG4gICAgQGluY2x1ZGUgbGVhZGVyKDEpO1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtwdXJwbGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICAgIGhlaWdodDogMnB4OyB9IH1cblxuLmZvcm0taW5wdXQtcmFkaW8ge1xuICBpbnB1dCB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuXG4gICAgJlt0eXBlPXJhZGlvXSxcbiAgICAmW3R5cGU9Y2hlY2tib3hdIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICArIGxhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyggbm9uZSApO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAmOmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjMzZTkxO1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogOHB4O1xuICAgICAgICBsZWZ0OiA4cHg7IH0gfVxuXG4gICAgJlt0eXBlPXJhZGlvXStsYWJlbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW46IC0zcHggMTBweCAwIDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDhweCByZ2JhKDAsMCwwLC4zKTsgfSB9IH0gfVxuXG4uZGF0ZV9zZWxlY3RvciB7XG4gIC5jdXN0b21TZWxlY3Qge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoLjUpOyB9IH1cblxuLy8gY3VzdG9tIGNoZWNrYm94ZXMgJiByYWRpb3Ncbi5jdXN0b21fY2hlY2sge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICYucGFyc2xleS1lcnJvciB7XG4gICAgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJlZDsgfSB9XG5cbiAgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgJjpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9jaGVja2JveF90aWNrLnN2Z1wiKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG4gIGxhYmVsIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIHBhZGRpbmctbGVmdDogNTZweDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMzZweDtcbiAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNTZweDtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC40KTsgfSB9IH1cblxuI2Zvcm1fd3JhcHBlciB7XG4gIC5jdXN0b21fY2hlY2sge1xuICAgIGxhYmVsIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7IH0gfSB9XG5cbi5oYXMtanMge31cbi53cmFwX2xhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAzNnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxcHggNHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5oYXMtanMge1xuICAud3JhcF9sYWJlbCB7XG4gICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9yYWRpb19vZmYnKTsgfSB9XG4uaGFzLWpzIHtcbiAgLmNoZWNrcyB7XG4gICAgLndyYXBfbGFiZWwge1xuICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9jaGVja19vZmYnKTsgfSB9IH1cbi5oYXMtanMge1xuICAuY2hlY2tzIHtcbiAgICBsYWJlbC5jX29uIHtcbiAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvY2hlY2tfb24nKTsgfSB9IH1cbi5oYXMtanMge1xuICBsYWJlbC5yX29uIHtcbiAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2JhY2tncm91bmRzL3JhZGlvX29uJyk7IH0gfVxuXG5cbi5oYXMtanMge1xuICAud3JhcF9sYWJlbCB7XG4gICAgaW5wdXQge1xuICAgICAgJlt0eXBlPXJhZGlvXSxcbiAgICAgICZbdHlwZT1jaGVja2JveF0ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC05OTk5ZW07IH0gfSB9IH1cbi5oYXMtanMge1xuICAudG9nZ2xlX2JveGVzIHtcbiAgICAud3JhcF9sYWJlbCxcbiAgICBsYWJlbC5yX29uIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoXCJiYWNrZ3JvdW5kLWNvbG9yLCBjb2xvclwiKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oMjAwbXMpO1xuICAgICAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoLjY1KTtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlciguNik7XG4gICAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDE0cHgpO1xuICAgICAgQGV4dGVuZCAldXBjYXNlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICYucGFyc2xleS1lcnJvciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJlZDsgfSB9XG5cbiAgICAud3JhcF9sYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQ0MDgyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrcHVycGxlOyB9IH1cbiAgICBsYWJlbC5yX29uIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coIDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC40KSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWlkYmx1ZTsgfSB9IH0gfVxuXG4udG9nZ2xlX2JveGVzIHtcbiAgQGluY2x1ZGUgdHJhaWxlciguNSk7XG4gIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH1cblxuLmdpZnRhaWQge1xuICBAaW5jbHVkZSB0cmFpbGVyKDIpO1xuICAubGVnZW5kIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWFnZXMvbG9nb3MvZ2lmdGFpZC5wbmdcIikgMCAwIG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMTUwcHg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiA4NXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmZpZWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICBwIHtcbiAgICBAaW5jbHVkZSBsZWFkZXIoLjUpO1xuXG4gICAgLmNjbS1ibG9jay1leHByZXNzLWZvcm0ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH1cblxuICAuZ2lmdGFpZF9vcHRpb25zIHtcbiAgICBAaW5jbHVkZSBsZWFkZXIoMSk7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICBwIHtcbiAgICAgIEBpbmNsdWRlIGxlYWRlcigxKTtcbiAgICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7IH0gfSB9XG5cblxuXG4vLyB0ZXh0IGxpbmtzIHdpdGhpbiBmb3Jtc1xuXG4uZm9yZ290dGVuX3Bhc3N3b3JkLFxuLmRvd25sb2FkX2FwcGxpY2F0aW9uX2Zvcm0ge1xuICBAaW5jbHVkZSBsZWFkZXIoMSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogJHdoaXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9IH1cblxuLmRvd25sb2FkX2FwcGxpY2F0aW9uX2Zvcm0ge1xuICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTsgfVxuXG4jdm9sdW50ZWVyX2Zvcm0sXG4jZG9uYXRpb25fZm9ybSxcbiNtYWluX2NoZWNrb3V0X2Zvcm0sXG4jc3VibWl0X2V2ZW50IHtcbiAgLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXRfYnRuX2Fycm93OyB9IH1cblxuLmN1c3RvbV91cGxvYWQge1xuICBpbnB1dCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAwOyB9IH1cblxuI2RvbmF0aW9uX2Zvcm0ge1xuICAuY2FyZF9kZXRhaWxzIHtcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDE0cHgpO1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG4gICAgc3Bhbi50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIHNwYW4uY2FyZHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWFnZXMvYmFja2dyb3VuZHMvY2FyZHMucG5nXCIpIDAgMCBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47IH0gfSB9XG5cbi5zZWN1cmVkX2J5IHtcbiAgQGluY2x1ZGUgbGVhZGVyKDEpO1xuICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltYWdlcy9sb2dvcy9TZWN1cmVkYnlfSG9yaXpvbnRhbF8yLnBuZ1wiKSAwIDAgbm8tcmVwZWF0O1xuICB3aWR0aDogMTg5cHg7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDcwcHg7IH1cblxuXG5cbi8vIEVycm9yc1xuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4uZm9ybV9lcnJvcnMge1xuICBAaW5jbHVkZSB0cmFpbGVyKDIpO1xuICBiYWNrZ3JvdW5kOiAkZXJyb3ItY29sb3I7XG4gIHBhZGRpbmc6IHJoeXRobSgxKTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpLzI7XG4gIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKS8yO1xuICBoMiB7XG4gICAgQGluY2x1ZGUgdHJhaWxlciguNSk7XG4gICAgY29sb3I6ICR3aGl0ZTsgfVxuICB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQ7IH1cbiAgbGkge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoLjIpO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudDsgfSB9XG5cbi5lcnJvci1wYXJhZ3JhcGgge1xuICBjb2xvcjogJHJlZDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4jbWFpbl9mbGFzaCB7XG4gIEBleHRlbmQgZmllbGRzZXQ7XG4gIC5mbGFzaCB7XG4gICAgQGV4dGVuZCAuZm9ybV9lcnJvcnM7IH0gfVxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgnYWxsJykge1xuICAuYmFzaWNfZm9ybSB7XG4gICAgbGVnZW5kIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiAgICAuaW5saW5lIHtcbiAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfVxuXG4gICAgLmZpZWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiAgICAubm90ZSB7XG4gfSB9ICAgICAgLy8gbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKClcblxuICAuZm9ybV9lcnJvcnMge1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfVxuXG5cbiAgI2RvbmF0aW9uX2Zvcm0ge1xuICAgIC5naWZ0YWlkIHtcbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH1cblxuICAgIC5jYXJkX2RldGFpbHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH0gfVxuXG4gIC5kb3dubG9hZF9hcHBsaWNhdGlvbl9mb3JtIHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTsgfVxuXG5cbiAgLnNlY3VyZWRfYnkge1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpOyB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuXG4gIC5iYXNpY19mb3JtIHtcbiAgICBmaWVsZHNldCB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSoyO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpKjI7XG4gICAgICAuaW5zZXQge1xuICAgICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSozO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCkqMztcbiAgICAgICAgLmhhbGYge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG4gICAgICAgIC50b2dnbGVfYm94ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIHRyYWlsZXIoMCk7IH0gfSB9XG4gICAgLmZpZWxkIHtcbiAgICAgICRndXR0ZXItc3R5bGVzOiBzcGxpdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICAgICAgJi5oYWxmIHtcbiAgICAgICAgd2lkdGg6IDUwJSAtIGd1dHRlci1zcGFuKCkqMjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICAmLnRoaXJkIHtcbiAgICAgICAgd2lkdGg6IDMzJTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG4gICAgICAmLmhhbGYsXG4gICAgICAmLnRoaXJkIHtcbiAgICAgICAgJi5jbGVhciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfSB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiBjb2x1bW4tc3BhbigzLDAsNikgLSBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7IH0gfVxuXG4gIC5mb3JtX2Vycm9ycyB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCkqMztcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCkqMzsgfVxuXG4gICNtYWluX2ZsYXNoIHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSoyO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKSoyO1xuICAgIC5mbGFzaCB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9XG5cbiAgLmRhdGVfc2VsZWN0b3Ige1xuICAgIC5jdXN0b21fc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIHRyYWlsZXIoMCk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcblxuICAuYmFzaWNfZm9ybSB7XG4gICAgZmllbGRzZXQge1xuICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDcsMCw5KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgICAuaW5zZXQge1xuICAgICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSo0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCkqNDsgfSB9IH1cblxuICAuZm9ybV9lcnJvcnMge1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoJ2JvcmRlci1ib3gnKTtcbiAgICB3aWR0aDogY29sdW1uLXNwYW4oNywwLDkpIC0gZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuICAjbWFpbl9mbGFzaCB7XG4gICAgLmZsYXNoIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuXG4gIC5naWZ0YWlkIHtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH1cblxuICAuY2FyZF9kZXRhaWxzIHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH1cblxuICAuZG93bmxvYWRfYXBwbGljYXRpb25fZm9ybSB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7IH0gfVxuIiwiLy8gQmFzZWQgb24gW0VyaWMgTWV5ZXIncyByZXNldCAyLjBdKGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvaW5kZXguaHRtbClcbi8vIEdsb2JhbCByZXNldCBydWxlcy5cbi8vIEZvciBtb3JlIHNwZWNpZmljIHJlc2V0cywgdXNlIHRoZSByZXNldCBtaXhpbnMgcHJvdmlkZWQgYmVsb3dcbkBtaXhpbiBnbG9iYWwtcmVzZXQge1xuICBodG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbiAgYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuICBkZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG4gIHNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsXG4gIGIsIHUsIGksIGNlbnRlcixcbiAgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbiAgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG4gIHRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuICBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbiAgZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLFxuICBtZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbiAgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNldC1ib3gtbW9kZWw7XG4gICAgQGluY2x1ZGUgcmVzZXQtZm9udDsgfVxuICAvLyBVbmxpa2UgRXJpYydzIG9yaWdpbmFsIHJlc2V0LCB3ZSByZXNldCB0aGUgaHRtbCBlbGVtZW50IHRvIGJlIGNvbXBhdGlibGVcbiAgLy8gd2l0aCB0aGUgdmVydGljYWwgcmh5dGhtIG1peGlucy5cbiAgaHRtbCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtYm9keTsgfVxuICBvbCwgdWwge1xuICAgIEBpbmNsdWRlIHJlc2V0LWxpc3Qtc3R5bGU7IH1cbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHJlc2V0LXRhYmxlOyB9XG4gIGNhcHRpb24sIHRoLCB0ZCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtdGFibGUtY2VsbDsgfVxuICBxLCBibG9ja3F1b3RlIHtcbiAgICBAaW5jbHVkZSByZXNldC1xdW90YXRpb247IH1cbiAgYSBpbWcge1xuICAgIEBpbmNsdWRlIHJlc2V0LWltYWdlLWFuY2hvci1ib3JkZXI7IH1cbiAgQGluY2x1ZGUgcmVzZXQtaHRtbDU7IH1cblxuLy8gUmVzZXQgYWxsIGVsZW1lbnRzIHdpdGhpbiBzb21lIHNlbGVjdG9yIHNjb3BlLiBUbyByZXNldCB0aGUgc2VsZWN0b3IgaXRzZWxmLFxuLy8gbWl4aW4gdGhlIGFwcHJvcHJpYXRlIHJlc2V0IG1peGluIGZvciB0aGF0IGVsZW1lbnQgdHlwZSBhcyB3ZWxsLiBUaGlzIGNvdWxkIGJlXG4vLyB1c2VmdWwgaWYgeW91IHdhbnQgdG8gc3R5bGUgYSBwYXJ0IG9mIHlvdXIgcGFnZSBpbiBhIGRyYW1hdGljYWxseSBkaWZmZXJlbnQgd2F5LlxuQG1peGluIG5lc3RlZC1yZXNldCB7XG4gIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuICBhLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG4gIGRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcbiAgc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbiAgYiwgdSwgaSwgY2VudGVyLFxuICBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuICBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbiAgdGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG4gIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLFxuICBmaWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG4gIG1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxuICB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc2V0LWJveC1tb2RlbDtcbiAgICBAaW5jbHVkZSByZXNldC1mb250OyB9XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSByZXNldC10YWJsZTsgfVxuICBjYXB0aW9uLCB0aCwgdGQge1xuICAgIEBpbmNsdWRlIHJlc2V0LXRhYmxlLWNlbGw7IH1cbiAgcSwgYmxvY2txdW90ZSB7XG4gICAgQGluY2x1ZGUgcmVzZXQtcXVvdGF0aW9uOyB9XG4gIGEgaW1nIHtcbiAgICBAaW5jbHVkZSByZXNldC1pbWFnZS1hbmNob3ItYm9yZGVyOyB9IH1cblxuLy8gUmVzZXQgdGhlIGJveCBtb2RlbCBtZWFzdXJlbWVudHMuXG5AbWl4aW4gcmVzZXQtYm94LW1vZGVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxuLy8gUmVzZXQgdGhlIGZvbnQgYW5kIHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiByZXNldC1mb250IHtcbiAgZm9udDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLy8gUmVzZXRzIHRoZSBvdXRsaW5lIHdoZW4gZm9jdXMuXG4vLyBGb3IgYWNjZXNzaWJpbGl0eSB5b3UgbmVlZCB0byBhcHBseSBzb21lIHN0eWxpbmcgaW4gaXRzIHBsYWNlLlxuQG1peGluIHJlc2V0LWZvY3VzIHtcbiAgb3V0bGluZTogMDsgfVxuXG4vLyBSZXNldCBhIGJvZHkgZWxlbWVudC5cbkBtaXhpbiByZXNldC1ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLy8gUmVzZXQgdGhlIGxpc3Qgc3R5bGUgb2YgYW4gZWxlbWVudC5cbkBtaXhpbiByZXNldC1saXN0LXN0eWxlIHtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4vLyBSZXNldCBhIHRhYmxlXG5AbWl4aW4gcmVzZXQtdGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG4vLyBSZXNldCBhIHRhYmxlIGNlbGwgKGB0aGAsIGB0ZGApXG5AbWl4aW4gcmVzZXQtdGFibGUtY2VsbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLy8gUmVzZXQgYSBxdW90YXRpb24gKGBxYCwgYGJsb2NrcXVvdGVgKVxuQG1peGluIHJlc2V0LXF1b3RhdGlvbiB7XG4gIHF1b3Rlczogbm9uZTtcbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgY29udGVudDogbm9uZTsgfSB9XG5cbi8vIFJlc2V0cyB0aGUgYm9yZGVyLlxuQG1peGluIHJlc2V0LWltYWdlLWFuY2hvci1ib3JkZXIge1xuICBib3JkZXI6IG5vbmU7IH1cblxuLy8gVW5yZWNvZ25pemVkIGVsZW1lbnRzIGFyZSBkaXNwbGF5ZWQgaW5saW5lLlxuLy8gVGhpcyByZXNldCBwcm92aWRlcyBhIGJhc2ljIHJlc2V0IGZvciBibG9jayBodG1sNSBlbGVtZW50c1xuLy8gc28gdGhleSBhcmUgcmVuZGVyZWQgY29ycmVjdGx5IGluIGJyb3dzZXJzIHRoYXQgZG9uJ3QgcmVjb2duaXplIHRoZW1cbi8vIGFuZCByZXNldCBpbiBicm93c2VycyB0aGF0IGhhdmUgZGVmYXVsdCBzdHlsZXMgZm9yIHRoZW0uXG5AbWl4aW4gcmVzZXQtaHRtbDUge1xuICAje2VsZW1lbnRzLW9mLXR5cGUoaHRtbDUtYmxvY2spfSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4vLyBSZXNldHMgdGhlIGRpc3BsYXkgb2YgaW5saW5lIGFuZCBibG9jayBlbGVtZW50cyB0byB0aGVpciBkZWZhdWx0IGRpc3BsYXlcbi8vIGFjY29yZGluZyB0byB0aGVpciB0YWcgdHlwZS4gRWxlbWVudHMgdGhhdCBoYXZlIGEgZGVmYXVsdCBkaXNwbGF5IHRoYXQgdmFyaWVzIGFjcm9zc1xuLy8gdmVyc2lvbnMgb2YgaHRtbCBvciBicm93c2VyIGFyZSBub3QgaGFuZGxlZCBoZXJlLCBidXQgdGhpcyBjb3ZlcnMgdGhlIDkwJSB1c2UgY2FzZS5cbi8vIFVzYWdlIEV4YW1wbGU6XG4vL1xuLy8gICAgIC8vIFR1cm4gb2ZmIHRoZSBkaXNwbGF5IGZvciBib3RoIG9mIHRoZXNlIGNsYXNzZXNcbi8vICAgICAudW5yZWdpc3RlcmVkLW9ubHksIC5yZWdpc3RlcmVkLW9ubHlcbi8vICAgICAgIGRpc3BsYXk6IG5vbmVcbi8vICAgICAvLyBOb3cgdHVybiBvbmx5IG9uZSBvZiB0aGVtIGJhY2sgb24gZGVwZW5kaW5nIG9uIHNvbWUgb3RoZXIgY29udGV4dC5cbi8vICAgICBib2R5LnJlZ2lzdGVyZWRcbi8vICAgICAgICtyZXNldC1kaXNwbGF5KFwiLnJlZ2lzdGVyZWQtb25seVwiKVxuLy8gICAgIGJvZHkudW5yZWdpc3RlcmVkXG4vLyAgICAgICArcmVzZXQtZGlzcGxheShcIi51bnJlZ2lzdGVyZWQtb25seVwiKVxuQG1peGluIHJlc2V0LWRpc3BsYXkoJHNlbGVjdG9yOiBcIlwiLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAje2FwcGVuZC1zZWxlY3RvcihlbGVtZW50cy1vZi10eXBlKFwiaW5saW5lXCIpLCAkc2VsZWN0b3IpfSB7XG4gICAgQGlmICRpbXBvcnRhbnQge1xuICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7IH0gfVxuICAje2FwcGVuZC1zZWxlY3RvcihlbGVtZW50cy1vZi10eXBlKFwiYmxvY2tcIiksICRzZWxlY3Rvcil9IHtcbiAgICBAaWYgJGltcG9ydGFudCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfSB9XG4iLCJodG1sIHtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyB9XG5cbmJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25jcmV0ZTtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbiFpbXBvcnRhbnQ7IH1cblxuaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4ud3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogMTAwJTsgfVxuXG5pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRsYXJnZSkge1xuICAgICNjb250ZW50Om5vdCguZm9ybS1jb250cm9sKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1LjYyNWVtO1xuXG4gICAgICAgICYucGFkZGluZy1ib3R0b20ge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4OyB9IH0gfVxuIiwiI2Jhc2tldF9wb3B1cCB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coIDBweCA2cHggNnB4IDBweCByZ2JhKDAsMCwwLDAuMykpO1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKCdib3JkZXItYm94Jyk7XG4gIHdpZHRoOiAzMDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGVnZztcbiAgdG9wOiA1OHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMTAycHg7XG4gIHRvcDogNTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5OTk5O1xuXG4gIC5xdWFudGl0eS1lcnJvciB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogJHJlZDtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHJlZDtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG5cbiAgLm9yZGVyX3N1bW1hcnkge1xuICAgIHBhZGRpbmc6IDIwcHg7IH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4gIC5iYXNrZXRfcG9wdXBfYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMXB4O1xuICAgIGxlZnQ6IDEzNXB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMTFweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWFnZXMvYmFja2dyb3VuZHMvYmFza2V0X2Fycm93LnBuZ1wiKSBib3R0b20gY2VudGVyIG5vLXJlcGVhdDsgfVxuXG4gICNjbG9zZV9iYXNrZXRfbGluayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgYmFja2dyb3VuZDogJGVnZyB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvY2xvc2UucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbiAgLmNoZWNrb3V0X29yZGVyIHtcbiAgICBAaW5jbHVkZSBsZWFkZXIoMSk7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgc3Bhbi5pdGVtX25hbWUge1xuICAgICAgZm9udC1zaXplOiAxN3B4ICFpbXBvcnRhbnQ7IH1cbiAgICBzcGFuLnF1YW50aXR5bSxcbiAgICBzcGFuLnRvdGFsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9XG4gICAgdHIub3JkZXJfaXRlbSB7XG4gICAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRtaWQtZ3JleTsgfSB9XG5cbiAgICB0Zm9vdCB7XG4gICAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRtaWQtZ3JleTsgfSB9IH1cblxuICAjYmFza2V0X3BvcHVwX2xpbmsge1xuICAgIEBleHRlbmQgJWJ1dHRvbjtcbiAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgICBAaW5jbHVkZSBsZWFkZXIoMSk7IH0gfVxuXG4uYmFza2V0X2xpbmsge1xuICBib3gtc2hhZG93OiAwIDZweCA2cHggMCByZ2JhKDAsMCwwLC4zKTtcbiAgZm9udC1zaXplOiAuNzc3NzhlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMTQyODZlbTtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IC41ZW0gMWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNDAwNzY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAxZW07IH0gfVxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCggJ2FsbCcgKTtcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRtb2JpbGUtbGFuZHNjYXBlKSB7XG5cbiAgLmJhc2tldF9saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcblxuICAuYmFza2V0X2xpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICBsZWZ0OiAwO1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogd2hpdGU7IH0gfVxuXG4gICNiYXNrZXRfcG9wdXAge1xuICAgIHRvcDogNjBweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAyNjBweDtcblxuICAgIC5iYXNrZXRfcG9wdXBfYXJyb3cge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiA1NXB4OyB9IH0gfVxuIiwiQGltcG9ydCBcIi4uL3N1cHBvcnRcIjtcblxuLy8gVGhpcyBtaXhpbiBwcm92aWRlcyBiYXNpYyBzdXBwb3J0IGZvciBDU1MzIHByb3BlcnRpZXMgYW5kXG4vLyB0aGVpciBjb3JyZXNwb25kaW5nIGV4cGVyaW1lbnRhbCBDU1MyIHByb3BlcnRpZXMgd2hlblxuLy8gdGhlIGltcGxlbWVudGF0aW9ucyBhcmUgaWRlbnRpY2FsIGV4Y2VwdCBmb3IgdGhlIHByb3BlcnR5XG4vLyBwcmVmaXguXG5AbWl4aW4gZXhwZXJpbWVudGFsKCRwcm9wZXJ0eSwgJHZhbHVlLCAkbW96OiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEsICR3ZWJraXQ6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0LCAkbzogJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1vcGVyYSwgJG1zOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1pY3Jvc29mdCwgJGtodG1sOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLWtodG1sLCAkb2ZmaWNpYWw6IHRydWUpIHtcbiAgQGlmICR3ZWJraXQgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0IHtcbiAgICAtd2Via2l0LSN7JHByb3BlcnR5fTogJHZhbHVlOyB9XG4gIEBpZiAka2h0bWwgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Ita2h0bWwge1xuICAgIC1raHRtbC0jeyRwcm9wZXJ0eX06ICR2YWx1ZTsgfVxuICBAaWYgJG1veiBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1tb3ppbGxhIHtcbiAgICAtbW96LSN7JHByb3BlcnR5fTogJHZhbHVlOyB9XG4gIEBpZiAkbXMgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbWljcm9zb2Z0IHtcbiAgICAtbXMtI3skcHJvcGVydHl9OiAkdmFsdWU7IH1cbiAgQGlmICRvIGFuZCAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhIHtcbiAgICAtby0jeyRwcm9wZXJ0eX06ICR2YWx1ZTsgfVxuICBAaWYgJG9mZmljaWFsIHtcbiAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTsgfSB9XG5cbi8vIFNhbWUgYXMgZXhwZXJpbWVudGFsKCksIGJ1dCBmb3IgY2FzZXMgd2hlbiB0aGUgcHJvcGVydHkgaXMgdGhlIHNhbWUgYW5kIHRoZSB2YWx1ZSBpcyB2ZW5kb3JpemVkXG5AbWl4aW4gZXhwZXJpbWVudGFsLXZhbHVlKCRwcm9wZXJ0eSwgJHZhbHVlLCAkbW96OiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEsICR3ZWJraXQ6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0LCAkbzogJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1vcGVyYSwgJG1zOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1pY3Jvc29mdCwgJGtodG1sOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLWtodG1sLCAkb2ZmaWNpYWw6IHRydWUpIHtcbiAgQGlmICR3ZWJraXQgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0IHtcbiAgICAjeyRwcm9wZXJ0eX06IC13ZWJraXQtI3skdmFsdWV9OyB9XG4gIEBpZiAka2h0bWwgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Ita2h0bWwge1xuICAgICN7JHByb3BlcnR5fTogLWtodG1sLSN7JHZhbHVlfTsgfVxuICBAaWYgJG1veiBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1tb3ppbGxhIHtcbiAgICAjeyRwcm9wZXJ0eX06IC1tb3otI3skdmFsdWV9OyB9XG4gIEBpZiAkbXMgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbWljcm9zb2Z0IHtcbiAgICAjeyRwcm9wZXJ0eX06IC1tcy0jeyR2YWx1ZX07IH1cbiAgQGlmICRvIGFuZCAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhIHtcbiAgICAjeyRwcm9wZXJ0eX06IC1vLSN7JHZhbHVlfTsgfVxuICBAaWYgJG9mZmljaWFsIHtcbiAgICAjeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTsgfSB9XG4iLCJAaW1wb3J0IFwic2hhcmVkXCI7XG5cbi8vIENoYW5nZSB0aGUgYm94IG1vZGVsIGZvciBNb3ppbGxhLCBXZWJraXQsIElFOCBhbmQgdGhlIGZ1dHVyZVxuLy9cbi8vIEBwYXJhbSAkYnNcbi8vICAgWyBjb250ZW50LWJveCB8IGJvcmRlci1ib3ggXVxuXG5AbWl4aW4gYm94LXNpemluZygkYnMpIHtcbiAgJGJzOiB1bnF1b3RlKCRicyk7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbChib3gtc2l6aW5nLCAkYnMsIC1tb3osIC13ZWJraXQsIG5vdCAtbywgbm90IC1tcywgbm90IC1raHRtbCwgb2ZmaWNpYWwpOyB9XG4iLCJAaW1wb3J0IFwiLi4vbGF5b3V0L2dyaWQtYmFja2dyb3VuZFwiO1xuXG4vLyBUaGUgYmFzZSBmb250IHNpemUuXG4kYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBiYXNlIGxpbmUgaGVpZ2h0IGRldGVybWluZXMgdGhlIGJhc2ljIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtLlxuJGJhc2UtbGluZS1oZWlnaHQ6IDI0cHggIWRlZmF1bHQ7XG5cbi8vIFNldCB0aGUgZGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIHJoeXRobSBib3JkZXJzLlxuJGRlZmF1bHQtcmh5dGhtLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4kYnJvd3Nlci1kZWZhdWx0LWZvbnQtc2l6ZTogMTZweDtcblxuLy8gU2V0IHRvIGZhbHNlIGlmIHlvdSB3YW50IHRvIHVzZSBhYnNvbHV0ZSBwaXhlbHMgaW4gc2l6aW5nIHlvdXIgdHlwb2dyYXBoeS5cbiRyZWxhdGl2ZS1mb250LXNpemluZzogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIHRoZSBgYWRqdXN0LWZvbnQtc2l6ZS10b2AgbWl4aW4gYW5kIHRoZSBgbGluZXMtZm9yLWZvbnQtc2l6ZWAgZnVuY3Rpb25cbi8vIHRvIHJvdW5kIHRoZSBsaW5lIGhlaWdodCB0byB0aGUgbmVhcmVzdCBoYWxmIGxpbmUgaGVpZ2h0IGluc3RlYWQgb2YgdGhlXG4vLyBuZWFyZXN0IGludGVncmFsIGxpbmUgaGVpZ2h0IHRvIGF2b2lkIGxhcmdlIHNwYWNpbmcgYmV0d2VlbiBsaW5lcy5cbiRyb3VuZC10by1uZWFyZXN0LWhhbGYtbGluZTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEVuc3VyZSB0aGVyZSBpcyBhdCBsZWFzdCB0aGlzIG1hbnkgcGl4ZWxzXG4vLyBvZiB2ZXJ0aWNhbCBwYWRkaW5nIGFib3ZlIGFuZCBiZWxvdyB0aGUgdGV4dC5cbiRtaW4tbGluZS1wYWRkaW5nOiAycHggIWRlZmF1bHQ7XG5cbi8vICRiYXNlLWZvbnQtc2l6ZSBidXQgaW4geW91ciBvdXRwdXQgdW5pdCBvZiBjaG9pY2UuXG4vLyBEZWZhdWx0cyB0byAxZW0gd2hlbiBgJHJlbGF0aXZlLWZvbnQtc2l6aW5nYCBpcyB0cnVlLlxuJGZvbnQtdW5pdDogaWYoJHJlbGF0aXZlLWZvbnQtc2l6aW5nLCAxZW0sICRiYXNlLWZvbnQtc2l6ZSkgIWRlZmF1bHQ7XG5cbi8vIFRoZSBiYXNpYyB1bml0IG9mIGZvbnQgcmh5dGhtLlxuJGJhc2Utcmh5dGhtLXVuaXQ6ICRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplICogJGZvbnQtdW5pdDtcblxuLy8gVGhlIGxlYWRlciBpcyB0aGUgYW1vdW50IG9mIHdoaXRlc3BhY2UgaW4gYSBsaW5lLlxuLy8gSXQgbWlnaHQgYmUgdXNlZnVsIGluIHlvdXIgY2FsY3VsYXRpb25zLlxuJGJhc2UtbGVhZGVyOiAoJGJhc2UtbGluZS1oZWlnaHQgLSAkYmFzZS1mb250LXNpemUpICogJGZvbnQtdW5pdCAvICRiYXNlLWZvbnQtc2l6ZTtcblxuLy8gVGhlIGhhbGYtbGVhZGVyIGlzIHRoZSBhbW91bnQgb2Ygd2hpdGVzcGFjZSBhYm92ZSBhbmQgYmVsb3cgYSBsaW5lLlxuLy8gSXQgbWlnaHQgYmUgdXNlZnVsIGluIHlvdXIgY2FsY3VsYXRpb25zLlxuJGJhc2UtaGFsZi1sZWFkZXI6ICRiYXNlLWxlYWRlciAvIDI7XG5cbi8vIFRydWUgaWYgYSBudW1iZXIgaGFzIGEgcmVsYXRpdmUgdW5pdC5cbkBmdW5jdGlvbiByZWxhdGl2ZS11bml0KCRudW1iZXIpIHtcbiAgQHJldHVybiB1bml0KCRudW1iZXIpID09IFwiJVwiIG9yIHVuaXQoJG51bWJlcikgPT0gXCJlbVwiIG9yIHVuaXQoJG51bWJlcikgPT0gXCJyZW1cIjsgfVxuXG4vLyBUcnVlIGlmIGEgbnVtYmVyIGhhcyBhbiBhYnNvbHV0ZSB1bml0LlxuQGZ1bmN0aW9uIGFic29sdXRlLXVuaXQoJG51bWJlcikge1xuICBAcmV0dXJuIG5vdCAocmVsYXRpdmUtdW5pdCgkbnVtYmVyKSBvciB1bml0bGVzcygkbnVtYmVyKSk7IH1cblxuQGlmICRyZWxhdGl2ZS1mb250LXNpemluZyBhbmQgbm90IHJlbGF0aXZlLXVuaXQoJGZvbnQtdW5pdCkge1xuICBAd2FybiBcIiRyZWxhdGl2ZS1mb250LXNpemluZyBpcyB0cnVlIGJ1dCAkZm9udC11bml0IGlzIHNldCB0byAjeyRmb250LXVuaXR9IHdoaWNoIGlzIG5vdCBhIHJlbGF0aXZlIHVuaXQuXCI7IH1cblxuLy8gRXN0YWJsaXNoZXMgYSBmb250IGJhc2VsaW5lIGZvciB0aGUgZ2l2ZW4gZm9udC1zaXplLlxuQG1peGluIGVzdGFibGlzaC1iYXNlbGluZSgkZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUpIHtcbiAgLy8gSUUgNiByZWZ1c2VzIHRvIHJlc2l6ZSBmb250cyBzZXQgaW4gcGl4ZWxzIGFuZCBpdCB3ZWlyZGx5IHJlc2l6ZXMgZm9udHNcbiAgLy8gd2hvc2Ugcm9vdCBpcyBzZXQgaW4gZW1zLiBTbyB3ZSBzZXQgdGhlIHJvb3QgZm9udCBzaXplIGluIHBlcmNlbnRhZ2VzIG9mXG4gIC8vIHRoZSBkZWZhdWx0IGZvbnQgc2l6ZS5cbiAgKiBodG1sIHtcbiAgICBmb250LXNpemU6IDEwMCUgKiAkZm9udC1zaXplIC8gJGJyb3dzZXItZGVmYXVsdC1mb250LXNpemU7IH1cbiAgaHRtbCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIEBpbmNsdWRlIGFkanVzdC1sZWFkaW5nLXRvKDEsIGlmKCRyZWxhdGl2ZS1mb250LXNpemluZywgJGZvbnQtc2l6ZSwgJGJhc2UtZm9udC1zaXplKSk7IH0gfVxuXG4vLyBSZXNldHMgdGhlIGxpbmUtaGVpZ2h0IHRvIDEgdmVydGljYWwgcmh5dGhtIHVuaXQuXG4vLyBEb2VzIG5vdCB3b3JrIG9uIGVsZW1lbnRzIHdob3NlIGZvbnQtc2l6ZSBpcyBkaWZmZXJlbnQgZnJvbSAkYmFzZS1mb250LXNpemUuXG4vL1xuLy8gQGRlcHJlY2F0ZWQgVGhpcyBtaXhpbiB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgcmVsZWFzZS5cbi8vIFBsZWFzZSB1c2UgdGhlIGBhZGp1c3QtbGVhZGluZy10b2AgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiByZXNldC1iYXNlbGluZSB7XG4gIEBpbmNsdWRlIGFkanVzdC1sZWFkaW5nLXRvKDEsIGlmKCRyZWxhdGl2ZS1mb250LXNpemluZywgJGJhc2UtZm9udC1zaXplLCAkYmFzZS1mb250LXNpemUpKTsgfVxuXG4vLyBTaG93IGEgYmFja2dyb3VuZCBpbWFnZSB0aGF0IGNhbiBiZSB1c2VkIHRvIGRlYnVnIHlvdXIgYWxpZ25tZW50cy5cbi8vIEluY2x1ZGUgdGhlICRpbWcgYXJndW1lbnQgaWYgeW91IHdvdWxkIHJhdGhlciB1c2UgeW91ciBvd24gaW1hZ2UgdGhhbiB0aGVcbi8vIENvbXBhc3MgZGVmYXVsdCBncmFkaWVudCBpbWFnZS5cbkBtaXhpbiBkZWJ1Zy12ZXJ0aWNhbC1hbGlnbm1lbnQoJGltZzogZmFsc2UpIHtcbiAgQGlmICRpbWcge1xuICAgIGJhY2tncm91bmQ6IGltYWdlLXVybCgkaW1nKTsgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgYmFzZWxpbmUtZ3JpZC1iYWNrZ3JvdW5kKCRiYXNlLXJoeXRobS11bml0KTsgfSB9XG5cbi8vIEFkanVzdCBhIGJsb2NrIHRvIGhhdmUgYSBkaWZmZXJlbnQgZm9udCBzaXplIGFuZCBsaW5lIGhlaWdodCB0byBtYWludGFpbiB0aGVcbi8vIHJoeXRobS4gJGxpbmVzIHNwZWNpZmllcyBob3cgbWFueSBtdWx0aXBsZXMgb2YgdGhlIGJhc2VsaW5lIHJoeXRobSBlYWNoIGxpbmVcbi8vIG9mIHRoaXMgZm9udCBzaG91bGQgdXNlIHVwLiBJdCBkb2VzIG5vdCBoYXZlIHRvIGJlIGFuIGludGVnZXIsIGJ1dCBpdFxuLy8gZGVmYXVsdHMgdG8gdGhlIHNtYWxsZXN0IGludGVnZXIgdGhhdCBpcyBsYXJnZSBlbm91Z2ggdG8gZml0IHRoZSBmb250LlxuLy8gVXNlICRmcm9tLXNpemUgdG8gYWRqdXN0IGZyb20gYSBmb250LXNpemUgb3RoZXIgdGhhbiB0aGUgYmFzZSBmb250LXNpemUuXG5AbWl4aW4gYWRqdXN0LWZvbnQtc2l6ZS10bygkdG8tc2l6ZSwgJGxpbmVzOiBsaW5lcy1mb3ItZm9udC1zaXplKCR0by1zaXplKSwgJGZyb20tc2l6ZTogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpZiBub3QgJHJlbGF0aXZlLWZvbnQtc2l6aW5nIGFuZCAkZnJvbS1zaXplICE9ICRiYXNlLWZvbnQtc2l6ZSB7XG4gICAgQHdhcm4gXCIkcmVsYXRpdmUtZm9udC1zaXppbmcgaXMgZmFsc2UgYnV0IGEgcmVsYXRpdmUgZm9udCBzaXplIHdhcyBwYXNzZWQgdG8gYWRqdXN0LWZvbnQtc2l6ZS10b1wiOyB9XG4gIGZvbnQtc2l6ZTogJGZvbnQtdW5pdCAqICR0by1zaXplIC8gJGZyb20tc2l6ZTtcbiAgQGluY2x1ZGUgYWRqdXN0LWxlYWRpbmctdG8oJGxpbmVzLCBpZigkcmVsYXRpdmUtZm9udC1zaXppbmcsICR0by1zaXplLCAkYmFzZS1mb250LXNpemUpKTsgfVxuXG4vLyBBZGp1c3QgYSBibG9jayB0byBoYXZlIGRpZmZlcmVudCBsaW5lIGhlaWdodCB0byBtYWludGFpbiB0aGUgcmh5dGhtLlxuLy8gJGxpbmVzIHNwZWNpZmllcyBob3cgbWFueSBtdWx0aXBsZXMgb2YgdGhlIGJhc2VsaW5lIHJoeXRobSBlYWNoIGxpbmUgb2YgdGhpc1xuLy8gZm9udCBzaG91bGQgdXNlIHVwLiBJdCBkb2VzIG5vdCBoYXZlIHRvIGJlIGFuIGludGVnZXIsIGJ1dCBpdCBkZWZhdWx0cyB0byB0aGVcbi8vIHNtYWxsZXN0IGludGVnZXIgdGhhdCBpcyBsYXJnZSBlbm91Z2ggdG8gZml0IHRoZSBmb250LlxuQG1peGluIGFkanVzdC1sZWFkaW5nLXRvKCRsaW5lcywgJGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplKSB7XG4gIGxpbmUtaGVpZ2h0OiByaHl0aG0oJGxpbmVzLCAkZm9udC1zaXplKTsgfVxuXG4vLyBDYWxjdWxhdGUgcmh5dGhtIHVuaXRzLlxuQGZ1bmN0aW9uIHJoeXRobSgkbGluZXM6IDEsICRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSwgJG9mZnNldDogMCkge1xuICBAaWYgbm90ICRyZWxhdGl2ZS1mb250LXNpemluZyBhbmQgJGZvbnQtc2l6ZSAhPSAkYmFzZS1mb250LXNpemUge1xuICAgIEB3YXJuIFwiJHJlbGF0aXZlLWZvbnQtc2l6aW5nIGlzIGZhbHNlIGJ1dCBhIHJlbGF0aXZlIGZvbnQgc2l6ZSB3YXMgcGFzc2VkIHRvIHRoZSByaHl0aG0gZnVuY3Rpb25cIjsgfVxuICAkcmh5dGhtOiAkZm9udC11bml0ICogKCRsaW5lcyAqICRiYXNlLWxpbmUtaGVpZ2h0IC0gJG9mZnNldCkgLyAkZm9udC1zaXplO1xuICAvLyBSb3VuZCB0aGUgcGl4ZWxzIGRvd24gdG8gbmVhcmVzdCBpbnRlZ2VyLlxuICBAaWYgdW5pdCgkcmh5dGhtKSA9PSBweCB7XG4gICAgJHJoeXRobTogZmxvb3IoJHJoeXRobSk7IH1cbiAgQHJldHVybiAkcmh5dGhtOyB9XG5cbi8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSBtdWx0aXBsZSBvZiByaHl0aG0gdW5pdHMgbmVlZGVkIHRvIGNvbnRhaW4gdGhlIGZvbnQtc2l6ZS5cbkBmdW5jdGlvbiBsaW5lcy1mb3ItZm9udC1zaXplKCRmb250LXNpemUpIHtcbiAgJGxpbmVzOiBpZigkcm91bmQtdG8tbmVhcmVzdC1oYWxmLWxpbmUsIGNlaWwoMiAqICRmb250LXNpemUgLyAkYmFzZS1saW5lLWhlaWdodCkgLyAyLCBjZWlsKCRmb250LXNpemUgLyAkYmFzZS1saW5lLWhlaWdodCkpO1xuICBAaWYgJGxpbmVzICogJGJhc2UtbGluZS1oZWlnaHQgLSAkZm9udC1zaXplIDwgJG1pbi1saW5lLXBhZGRpbmcgKiAyIHtcbiAgICAkbGluZXM6ICRsaW5lcyArIGlmKCRyb3VuZC10by1uZWFyZXN0LWhhbGYtbGluZSwgMC41LCAxKTsgfVxuICBAcmV0dXJuICRsaW5lczsgfVxuXG4vLyBBcHBseSBsZWFkaW5nIHdoaXRlc3BhY2UuIFRoZSAkcHJvcGVydHkgY2FuIGJlIG1hcmdpbiBvciBwYWRkaW5nLlxuQG1peGluIGxlYWRlcigkbGluZXM6IDEsICRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSwgJHByb3BlcnR5OiBtYXJnaW4pIHtcbiAgI3skcHJvcGVydHl9LXRvcDogcmh5dGhtKCRsaW5lcywgJGZvbnQtc2l6ZSk7IH1cblxuLy8gQXBwbHkgbGVhZGluZyB3aGl0ZXNwYWNlIGFzIHBhZGRpbmcuXG5AbWl4aW4gcGFkZGluZy1sZWFkZXIoJGxpbmVzOiAxLCAkZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUpIHtcbiAgcGFkZGluZy10b3A6IHJoeXRobSgkbGluZXMsICRmb250LXNpemUpOyB9XG5cbi8vIEFwcGx5IGxlYWRpbmcgd2hpdGVzcGFjZSBhcyBtYXJnaW4uXG5AbWl4aW4gbWFyZ2luLWxlYWRlcigkbGluZXM6IDEsICRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBtYXJnaW4tdG9wOiByaHl0aG0oJGxpbmVzLCAkZm9udC1zaXplKTsgfVxuXG4vLyBBcHBseSB0cmFpbGluZyB3aGl0ZXNwYWNlLiBUaGUgJHByb3BlcnR5IGNhbiBiZSBtYXJnaW4gb3IgcGFkZGluZy5cbkBtaXhpbiB0cmFpbGVyKCRsaW5lczogMSwgJGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplLCAkcHJvcGVydHk6IG1hcmdpbikge1xuICAjeyRwcm9wZXJ0eX0tYm90dG9tOiByaHl0aG0oJGxpbmVzLCAkZm9udC1zaXplKTsgfVxuXG4vLyBBcHBseSB0cmFpbGluZyB3aGl0ZXNwYWNlIGFzIHBhZGRpbmcuXG5AbWl4aW4gcGFkZGluZy10cmFpbGVyKCRsaW5lczogMSwgJGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplKSB7XG4gIHBhZGRpbmctYm90dG9tOiByaHl0aG0oJGxpbmVzLCAkZm9udC1zaXplKTsgfVxuXG4vLyBBcHBseSB0cmFpbGluZyB3aGl0ZXNwYWNlIGFzIG1hcmdpbi5cbkBtaXhpbiBtYXJnaW4tdHJhaWxlcigkbGluZXM6IDEsICRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBtYXJnaW4tYm90dG9tOiByaHl0aG0oJGxpbmVzLCAkZm9udC1zaXplKTsgfVxuXG4vLyBTaG9ydGhhbmQgbWl4aW4gdG8gYXBwbHkgd2hpdGVzcGFjZSBmb3IgdG9wIGFuZCBib3R0b20gbWFyZ2lucyBhbmQgcGFkZGluZy5cbkBtaXhpbiByaHl0aG0oJGxlYWRlcjogMCwgJHBhZGRpbmctbGVhZGVyOiAwLCAkcGFkZGluZy10cmFpbGVyOiAwLCAkdHJhaWxlcjogMCwgJGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpbmNsdWRlIGxlYWRlcigkbGVhZGVyLCAkZm9udC1zaXplKTtcbiAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoJHBhZGRpbmctbGVhZGVyLCAkZm9udC1zaXplKTtcbiAgQGluY2x1ZGUgcGFkZGluZy10cmFpbGVyKCRwYWRkaW5nLXRyYWlsZXIsICRmb250LXNpemUpO1xuICBAaW5jbHVkZSB0cmFpbGVyKCR0cmFpbGVyLCAkZm9udC1zaXplKTsgfVxuXG4vLyBBcHBseSBhIGJvcmRlciBhbmQgd2hpdGVzcGFjZSB0byBhbnkgc2lkZSB3aXRob3V0IGRlc3Ryb3lpbmcgdGhlIHZlcnRpY2FsXG4vLyByaHl0aG0uIFRoZSB3aGl0ZXNwYWNlIG11c3QgYmUgZ3JlYXRlciB0aGFuIHRoZSB3aWR0aCBvZiB0aGUgYm9yZGVyLlxuQG1peGluIGFwcGx5LXNpZGUtcmh5dGhtLWJvcmRlcigkc2lkZSwgJHdpZHRoOiAxcHgsICRsaW5lczogMSwgJGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplLCAkYm9yZGVyLXN0eWxlOiAkZGVmYXVsdC1yaHl0aG0tYm9yZGVyLXN0eWxlKSB7XG4gIEBpZiBub3QgJHJlbGF0aXZlLWZvbnQtc2l6aW5nIGFuZCAkZm9udC1zaXplICE9ICRiYXNlLWZvbnQtc2l6ZSB7XG4gICAgQHdhcm4gXCIkcmVsYXRpdmUtZm9udC1zaXppbmcgaXMgZmFsc2UgYnV0IGEgcmVsYXRpdmUgZm9udCBzaXplIHdhcyBwYXNzZWQgdG8gYXBwbHktc2lkZS1yaHl0aG0tYm9yZGVyXCI7IH1cbiAgYm9yZGVyLSN7JHNpZGV9LXN0eWxlOiAkYm9yZGVyLXN0eWxlO1xuICBib3JkZXItI3skc2lkZX0td2lkdGg6ICRmb250LXVuaXQgKiAkd2lkdGggLyAkZm9udC1zaXplO1xuICBwYWRkaW5nLSN7JHNpZGV9OiByaHl0aG0oJGxpbmVzLCAkZm9udC1zaXplLCAkb2Zmc2V0OiAkd2lkdGgpOyB9XG5cbi8vIEFwcGx5IGJvcmRlcnMgYW5kIHdoaXRlc3BhY2UgZXF1YWxseSB0byBhbGwgc2lkZXMuXG5AbWl4aW4gcmh5dGhtLWJvcmRlcnMoJHdpZHRoOiAxcHgsICRsaW5lczogMSwgJGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplLCAkYm9yZGVyLXN0eWxlOiAkZGVmYXVsdC1yaHl0aG0tYm9yZGVyLXN0eWxlKSB7XG4gIEBpZiBub3QgJHJlbGF0aXZlLWZvbnQtc2l6aW5nIGFuZCAkZm9udC1zaXplICE9ICRiYXNlLWZvbnQtc2l6ZSB7XG4gICAgQHdhcm4gXCIkcmVsYXRpdmUtZm9udC1zaXppbmcgaXMgZmFsc2UgYnV0IGEgcmVsYXRpdmUgZm9udCBzaXplIHdhcyBwYXNzZWQgdG8gcmh5dGhtLWJvcmRlcnNcIjsgfVxuICBib3JkZXI6IHtcbiAgICBzdHlsZTogJGJvcmRlci1zdHlsZTtcbiAgICB3aWR0aDogJGZvbnQtdW5pdCAqICR3aWR0aCAvICRmb250LXNpemU7IH1cbiAgcGFkZGluZzogcmh5dGhtKCRsaW5lcywgJGZvbnQtc2l6ZSwgJG9mZnNldDogJHdpZHRoKTsgfVxuXG4vLyBBcHBseSBhIGxlYWRpbmcgYm9yZGVyLlxuQG1peGluIGxlYWRpbmctYm9yZGVyKCR3aWR0aDogMXB4LCAkbGluZXM6IDEsICRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSwgJGJvcmRlci1zdHlsZTogJGRlZmF1bHQtcmh5dGhtLWJvcmRlci1zdHlsZSkge1xuICBAaW5jbHVkZSBhcHBseS1zaWRlLXJoeXRobS1ib3JkZXIodG9wLCAkd2lkdGgsICRsaW5lcywgJGZvbnQtc2l6ZSwgJGJvcmRlci1zdHlsZSk7IH1cblxuLy8gQXBwbHkgYSB0cmFpbGluZyBib3JkZXIuXG5AbWl4aW4gdHJhaWxpbmctYm9yZGVyKCR3aWR0aDogMXB4LCAkbGluZXM6IDEsICRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSwgJGJvcmRlci1zdHlsZTogJGRlZmF1bHQtcmh5dGhtLWJvcmRlci1zdHlsZSkge1xuICBAaW5jbHVkZSBhcHBseS1zaWRlLXJoeXRobS1ib3JkZXIoYm90dG9tLCAkd2lkdGgsICRsaW5lcywgJGZvbnQtc2l6ZSwgJGJvcmRlci1zdHlsZSk7IH1cblxuLy8gQXBwbHkgYm90aCBsZWFkaW5nIGFuZCB0cmFpbGluZyBib3JkZXJzLlxuQG1peGluIGhvcml6b250YWwtYm9yZGVycygkd2lkdGg6IDFweCwgJGxpbmVzOiAxLCAkZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUsICRib3JkZXItc3R5bGU6ICRkZWZhdWx0LXJoeXRobS1ib3JkZXItc3R5bGUpIHtcbiAgQGluY2x1ZGUgbGVhZGluZy1ib3JkZXIoJHdpZHRoLCAkbGluZXMsICRmb250LXNpemUsICRib3JkZXItc3R5bGUpO1xuICBAaW5jbHVkZSB0cmFpbGluZy1ib3JkZXIoJHdpZHRoLCAkbGluZXMsICRmb250LXNpemUsICRib3JkZXItc3R5bGUpOyB9XG5cbi8vIEFsaWFzIGZvciBgaG9yaXpvbnRhbC1ib3JkZXJzYCBtaXhpbi5cbkBtaXhpbiBoLWJvcmRlcnMoJHdpZHRoOiAxcHgsICRsaW5lczogMSwgJGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplLCAkYm9yZGVyLXN0eWxlOiAkZGVmYXVsdC1yaHl0aG0tYm9yZGVyLXN0eWxlKSB7XG4gIEBpbmNsdWRlIGhvcml6b250YWwtYm9yZGVycygkd2lkdGgsICRsaW5lcywgJGZvbnQtc2l6ZSwgJGJvcmRlci1zdHlsZSk7IH1cbiIsIiVidXR0b24ge1xuICBAZXh0ZW5kICV1cGNhc2U7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoXCJib3JkZXItYm94XCIpO1xuICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL2Fycm93X3JpZ2h0JywgJGJhY2tncm91bmQtc2l6ZTogMTVweCBhdXRvKTtcbiAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygyMHB4KTtcbiAgYm94LXNoYWRvdzogMHB4IDEwcHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjQpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAzMHB4IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDU4cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrYmx1ZTtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICBzcGFuLmJ0bl9pY29uIHtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKFwiYm9yZGVyLWJveFwiKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KCdiYWNrZ3JvdW5kLWNvbG9yJyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigyMDBtcyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1jb2xvcjtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gICAgcGFkZGluZzogMTRweCAwIDE2cHggMTZweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4gICY6aG92ZXIge1xuICAgIHNwYW4uYnRuX2ljb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1ob3Zlci1jb2xvcjsgfSB9IH1cblxuJWlucHV0X2J0bl9hcnJvdyB7XG4gIC5zdmcgJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2lucHV0X2J0bl9hcnJvd19yaWdodC5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5MHB4IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogOTBweDsgfVxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmlnaHRibHVlO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yOyB9IH1cblxuXG4laW5wdXRfYnRuX2Rvd25fYXJyb3cge1xuICAuc3ZnICYge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9pbnB1dF9idG5fYXJyb3dfZG93bi5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5MHB4IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogOTBweDsgfVxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmlnaHRibHVlO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yOyB9IH1cblxuXG5cblxuXG4lZm9sbG93LW9uLWJ1dHRvbiB7XG4gIEBleHRlbmQgJXVwY2FzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDVweCAxMHB4IHJnYmEoMCwwLDAsMC4yNSkpO1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDE0cHgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IHJoeXRobSgwLjUsIDE0cHgpIDc1cHggcmh5dGhtKDAuNSwgMTRweCkgMTVweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAmOmFmdGVyIHtcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDY0cHgsIDIsIDE0cHgpO1xuICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvYXJyb3dfcmlnaHQnKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tY29sb3I7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWNvbG9yOyB9IH1cbiIsIi8vIFR5cG9ncmFwaHlcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4kYmFzZS1mb250LXNpemU6ICAgICAxOHB4O1xuJGJhc2UtbGluZS1oZWlnaHQ6ICAgMzBweDtcblxuLy8gSGVhZGluZ3NcbiRoZWFkaW5nLWZvbnQtc2l6ZXM6IDQ4cHgsIDMwcHgsIDI0cHgsIDIycHgsIDE4cHgsIDE4cHg7XG5cblxuLy8gRm9udHNcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4kZGVmYXVsdC1mb250LXN0YWNrOiAnT3BlbiBTYW5zJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kbW9uby1mb250LXN0YWNrOiAgJ0FuZGFsZSBNb25vJywgJ0x1Y2lkYSBDb25zb2xlJywgbW9ub3NwYWNlO1xuJGhlYWRpbmctZm9udC1zdGFjazogJ0hheXNlZWQgVzAwIFJlZ3VsYXInLCBHZW9yZ2lhLFRpbWVzLFRpbWVzIE5ldyBSb21hbixzZXJpZjtcbiRza2lwcHktZm9udC1zdGFjazogJ1NraXBweSBTaGFycCBXMDAgUmVnJywgR2VvcmdpYSxUaW1lcyxUaW1lcyBOZXcgUm9tYW4sc2VyaWY7XG5cblxuLy8gR3JpZFxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiRncmlkczogICAgICAgICAyO1xuJGd1dHRlcnM6ICAgICAgIDAuMTtcbiRndXR0ZXItc3R5bGVzOiBzcGxpdDtcblxuJG1vYmlsZS1sYW5kc2NhcGUtYnJlYWtwb2ludDogNDgwcHgsICduby1xdWVyeScgdHJ1ZTtcbiRzbWFsbC10YWJsZXQtYnJlYWtwb2ludDogNjAwcHgsICduby1xdWVyeScgdHJ1ZTtcbiR0YWJsZXQtYnJlYWtwb2ludDogNzY4cHgsICduby1xdWVyeScgdHJ1ZTtcbiRkZXNrdG9wLWJyZWFrcG9pbnQ6IDk2MHB4LCAnbm8tcXVlcnknIHRydWU7XG5cbiRtb2JpbGUtbGFuZHNjYXBlOiAkbW9iaWxlLWxhbmRzY2FwZS1icmVha3BvaW50LCAzLCAwLjE7XG4kc21hbGwtdGFibGV0OiAkc21hbGwtdGFibGV0LWJyZWFrcG9pbnQsIDQsIDAuMTtcbiR0YWJsZXQ6ICR0YWJsZXQtYnJlYWtwb2ludCwgNiwgMC4yO1xuJGRlc2t0b3A6ICRkZXNrdG9wLWJyZWFrcG9pbnQsIDksIDAuMzMzMzM7XG5cbiRicmVha3BvaW50LWNvbnRleHRzOiAkbW9iaWxlLWxhbmRzY2FwZSAkc21hbGwtdGFibGV0ICR0YWJsZXQgJGRlc2t0b3A7XG5cbkBlYWNoICRjb250ZXh0IGluICRicmVha3BvaW50LWNvbnRleHRzIHtcbiAgJGdyaWRzOiAgICAgICBhZGQtZ3JpZCggICBudGgoJGNvbnRleHQsMikgYXQgbnRoKG50aCgkY29udGV4dCwxKSwxKSApO1xuICAkZ3V0dGVyczogICAgIGFkZC1ndXR0ZXIoIG50aCgkY29udGV4dCwzKSBhdCBudGgobnRoKCRjb250ZXh0LDEpLDEpICk7IH1cblxuXG4vLyAgQmFzZSBjb2xvdXJzXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiRib2R5LWNvbG9yOiAgICAgICAgICNmZmY7XG5cbiRicmlnaHRibHVlOiAgICAgICAgICMwMGFlZWY7XG4kbGlnaHRibHVlOiAgICAgICAgICAjMDE3NmFhO1xuJG1pZGJsdWU6ICAgICAgICAgICAgIzAwNjQ5ZDtcbiRkYXJrYmx1ZTogICAgICAgICAgICMyNTQwOGY7XG5cbiRsaWdodHBpbms6ICAgICAgICAgICNlODAwOGE7XG4kcGluazogICAgICAgICAgICAgICAjYzQwMDc2O1xuJHBhbGVwaW5rOiAgICAgICAgICAgI2YzZDZlODtcbiRkYXJrcGluazogICAgICAgICAgICNjNTAwNzY7XG5cbiR5ZWxsb3c6ICAgICAgICAgICAgICNmZmYzM2U7XG4kZGFya3llbGxvdzogICAgICAgICAjZmZhYzEyO1xuJHBhbGV5ZWxsb3c6ICAgICAgICAgI2YwZjBiYztcblxuJHJlZDogICAgICAgICAgICAgICAgI2QyMjMyYTtcbiRkYXJrcmVkOiAgICAgICAgICAgICM3ZTAwMDA7XG5cbiRwdXJwbGU6ICAgICAgICAgICAgICM3YzUxYTE7XG4kZGFya3B1cnBsZTogICAgICAgICAjNWUzNzg0O1xuXG4kZ3JlZW46ICAgICAgICAgICAgICAjN2JjMTQzO1xuJGRhcmtncmVlbjogICAgICAgICAgIzMzODEyMjtcblxuJGVnZzogICAgICAgICAgICAgICAgI2Y0ZjRlZTtcbiR3aGl0ZTogICAgICAgICAgICAgICNmZmZmZmY7XG4kYmxhY2s6ICAgICAgICAgICAgICAjM2IzYjNiO1xuXG4kcHJpbWFyeS1jb2xvcjogICAgICAkbWlkYmx1ZTtcbiRzZWNvbmRhcnktY29sb3I6ICAgICRwaW5rO1xuJHRlcnRpYXJ5LWNvbG9yOiAgICAgJHllbGxvdztcblxuJGxpZ2h0LWdyZXk6ICAgICAgICAgI2YzZjNmMztcbiRtaWQtZ3JleTogICAgICAgICAgICNkZWRlZGU7XG4kZGFyay1ncmV5OiAgICAgICAgICAjYTBhOGFlO1xuJGNoYXJjb2FsOiAgICAgICAgICAgIzMzMztcblxuJHRleHQtY29sb3I6ICAgICAgICAgJGJsYWNrO1xuJGhlYWRlci1jb2xvcjogICAgICAgJHByaW1hcnktY29sb3I7XG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICRwcmltYXJ5LWNvbG9yO1xuJGxpbmstaG92ZXItY29sb3I6ICAgJGRhcmtibHVlO1xuXG4vLyBTcGVjaWFsIGNvbG91cnNcbiRlcnJvci1jb2xvcjogICAgICAgI2M0MDA3NjtcblxuLy8gU3BlY2lhbCB2YXJpYWJsZXNcbiRmb290ZXItaGVpZ2h0OiAgICAgMjU1cHg7XG4kdGhlcHVzaDogICAgICAgICAgIC0yNTVweDtcblxuLy8gIEZvcm1zXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiRidXR0b24tY29sb3I6ICAgICAgICRicmlnaHRibHVlO1xuJGJ1dHRvbi1ob3Zlci1jb2xvcjogJGxpZ2h0Ymx1ZTtcbiRpbnB1dC1ib3gtcmFkaXVzOiAgIDJweDtcbiIsIi5ldmVudF9pbWFnZV9iYXNrZXQge1xuICAjY29sbGVjdGlvbl90b3RhbF9jb3N0IHtcbiAgICBAZXh0ZW5kICVib2xkLWZvbnQ7XG4gICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10byhoKDMpKTtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKDEsIGgoMykpOyB9XG5cbiAgLmNoZWNrb3V0X2N0YSB7XG4gICAgQGV4dGVuZCAlZm9sbG93LW9uLWJ1dHRvbjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87IH0gfVxuIiwiI2V2ZW50X2Jhc2tldF9wb3B1cCB7XG4gIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvaGVhZGVyX2N1cnZlJywgJGJhY2tncm91bmQtc2l6ZTogNjAwcHggYXV0byk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtwdXJwbGU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvaGVhZGVyX2N1cnZlX2JsdWUnLCAkYmFja2dyb3VuZC1zaXplOiA2MDBweCBhdXRvKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbiAgJi5tYWluX21lbnVfdmlzaWJsZSB7XG4gICAgYmFja2dyb3VuZDogJGRhcmtwdXJwbGUgbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgICAuY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDEpOyB9IH1cblxuICAjZXZlbnRfYmFza2V0X3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICAuY2VudGVyIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKCc1MDBtcycpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkocGFkZGluZy10b3ApO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDIuNSk7XG4gICAgQGluY2x1ZGUgcGFkZGluZy10cmFpbGVyKDEpOyB9XG5cbiAgLmV2ZW50X29yZGVyX3N1bW1hcnkge1xuICAgIHdpZHRoOiBjb2x1bW4tc3BhbigyLDEpIC0gZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuICAuaGVhZGluZyB7XG4gICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10byhoKDMpKTtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKDAuNSwgaCgzKSk7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuICAucGhvdG9fY291bnQge1xuICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvcGhvdG9zJyk7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigwLjUpO1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDNweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlZm9sbG93LW9uLWJ1dHRvbjtcbiAgICB3aWR0aDogY29sdW1uLXNwYW4oMiwxKSAtIGd1dHRlci1zcGFuKCk7IH0gfVxuXG5cbiNoaWRlX2Jhc2tldF9saW5rIHtcbiAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygxNHB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDc1JTtcbiAgYmFja2dyb3VuZDogJGRhcmtwdXJwbGU7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICRwdXJwbGU7IH0gfVxuXG4jc2hvd19iYXNrZXRfd3JhcHBlciB7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDAuNSk7XG4gIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigwLjUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4jc2hvd19iYXNrZXRfbGluayB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3Bob3RvcycpO1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDNweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfSB9XG5cbi8vIFJlc3Bvc25pdmVcbi8vfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+XG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJG1vYmlsZS1sYW5kc2NhcGUpIHtcbiAgI2V2ZW50X2Jhc2tldF9wb3B1cCB7XG4gICAgLnN2ZyAmLFxuICAgICYsXG4gICAgLnN2ZyAmOmJlZm9yZSxcbiAgICAmOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMDBweCBhdXRvOyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCkge1xuICAjZXZlbnRfYmFza2V0X3BvcHVwIHtcbiAgICAuY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDEpOyB9XG4gICAgLmV2ZW50X29yZGVyX3N1bW1hcnksXG4gICAgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogY29sdW1uLXNwYW4oMiwxKTsgfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgI2V2ZW50X2Jhc2tldF9wb3B1cCB7XG4gICAgLmV2ZW50X29yZGVyX3N1bW1hcnksXG4gICAgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogY29sdW1uLXNwYW4oMywxKTsgfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG4gICNldmVudF9iYXNrZXRfcG9wdXAge1xuICAgIC5zdmcgJixcbiAgICAmLFxuICAgIC5zdmcgJjpiZWZvcmUsXG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNTYwcHggYXV0bzsgfSB9XG5cbiAgI2V2ZW50X2Jhc2tldF9wb3B1cCB7XG4gICAgLmV2ZW50X29yZGVyX3N1bW1hcnkge1xuICAgICAgQGluY2x1ZGUgZmxvYXQtbGVmdDtcbiAgICAgIHdpZHRoOiBjb2x1bW4tc3BhbigzLDEpO1xuICAgICAgbWFyZ2luLWxlZnQ6IGdyaWQtc3BhbigyLDEpICsgZ3V0dGVyLXNwYW4oKS8yO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpLzI7IH1cblxuICAgIC5idXR0b24ge1xuICAgICAgQGluY2x1ZGUgZmxvYXQtbGVmdDtcbiAgICAgIHdpZHRoOiBjb2x1bW4tc3BhbigzLDEpO1xuICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCkvMjsgfSB9IH1cbiIsIiNvdXRlcl93cmFwcGVyIHtcbiAgLmFjY291bnRzX3BhZ2VzICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG4gICAgaDEsXG4gICAgLnVnYyB7XG4gICAgICBjb2xvcjogJHdoaXRlOyB9IH0gfVxuXG4jY29udGVudF9tYWluIHtcbiAgLmFjY291bnRzX3BhZ2VzICYge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigwKTsgfSB9XG5cblxuI2xvZ2luX2Zvcm0ge1xuICAuZm9yZ290dGVuX3Bhc3N3b3JkIHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH1cbiAgLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXRfYnRuX2Fycm93OyB9IH1cblxuXG4jYWNjb3VudF9mb3JtIHtcbiAgZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMS41KTsgfVxuXG4gIC5idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0X2J0bl9hcnJvdzsgfSB9XG5cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJ2FsbCcpIHtcblxuICAjbG9naW5fZm9ybSB7XG4gICAgLmZvcmdvdHRlbl9wYXNzd29yZCB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCk7XG5cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKTtcbiIsIiNkb25hdGVfcmVhc29ucyB7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDIpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBoMiB7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSoyO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKSoyO1xuICAgIGNvbG9yOiAkd2hpdGU7IH1cblxuICAuZG9uYXRlX3JlYXNvbiB7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG5cbiAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGgzIHtcbiAgICAgICAgY29sb3I6ICR5ZWxsb3c7IH1cbiAgICAgICYuc3VuIHtcbiAgICAgICAgLmRvbmF0ZV9yZWFzb25faW1hZ2Uge1xuICAgICAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMveWVsbG93X3N1bicpOyB9IH1cbiAgICAgICYubGVhZiB7XG4gICAgICAgIC5kb25hdGVfcmVhc29uX2ltYWdlIHtcbiAgICAgICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3llbGxvd19sZWFmJyk7IH0gfVxuICAgICAgJi5mbG93ZXIge1xuICAgICAgICAuZG9uYXRlX3JlYXNvbl9pbWFnZSB7XG4gICAgICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy95ZWxsb3dfZmxvd2VyJyk7IH0gfSB9XG5cbiAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAkZ3JlZW47IH1cbiAgICAgICYuc3VuIHtcbiAgICAgICAgLmRvbmF0ZV9yZWFzb25faW1hZ2Uge1xuICAgICAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvZ3JlZW5fc3VuJyk7IH0gfVxuICAgICAgJi5sZWFmIHtcbiAgICAgICAgLmRvbmF0ZV9yZWFzb25faW1hZ2Uge1xuICAgICAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvZ3JlZW5fbGVhZicpOyB9IH1cbiAgICAgICYuZmxvd2VyIHtcbiAgICAgICAgLmRvbmF0ZV9yZWFzb25faW1hZ2Uge1xuICAgICAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvZ3JlZW5fZmxvd2VyJyk7IH0gfSB9IH1cblxuICAuZG9uYXRlX3JlYXNvbl9pbWFnZSB7XG4gICAgQGluY2x1ZGUgdHJhaWxlciguMyk7XG4gICAgaGVpZ2h0OiAxODBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuICAuYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgQGV4dGVuZCAlaW5wdXRfYnRuX2Fycm93O1xuICAgIEBpbmNsdWRlIGxlYWRlcigxKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlciguNSk7IH0gfVxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJ2FsbCcpIHtcbiAgI2RvbmF0ZV9yZWFzb25zIHtcbiAgICAuZG9uYXRlX3JlYXNvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRtb2JpbGUtbGFuZHNjYXBlKTtcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRzbWFsbC10YWJsZXQpIHtcbiAgI2RvbmF0ZV9yZWFzb25zIHtcbiAgICAuZG9uYXRlX3JlYXNvbiB7XG4gICAgICB3aWR0aDogY29sdW1uLXNwYW4oMiwwLDQpO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgaDMge1xuICAgICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSoyO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCkqMjsgfSB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDQsMCw2KTsgfSB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjZG9uYXRlX3JlYXNvbnMge1xuICAgIC5kb25hdGVfcmVhc29uIHtcbiAgICAgICRndXR0ZXItc3R5bGVzOiBzcGxpdDtcbiAgICAgIHdpZHRoOiBjb2x1bW4tc3BhbigyLDAsNik7IH1cblxuICAgIC5idXR0b24ge1xuICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDMsMCw5KSArIGd1dHRlci1zcGFuKCkqMjsgfSB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgI2RvbmF0ZV9yZWFzb25zIHtcbiAgICAuZG9uYXRlX3JlYXNvbiB7XG4gICAgICB3aWR0aDogY29sdW1uLXNwYW4oMywwLDkpOyB9IH0gfVxuIiwiLy8gYnV0dG9uXG4vL1xuLy8gLmJ1dHRvbi0tc2Vjb25kYXJ5IC0gU2Vjb25kYXJ5IGJ1dHRvbiBjb2xvdXJcbi8vIC5idXR0b24tLXRlcnRpYXJ5IC0gVGVydGlhcnkgYnV0dG9uIGNvbG91clxuLy8gLmJ1dHRvbi0taGFzLWljb24gLSBXaGVuIGEgYnV0dG9uIGhhcyBhbiBpY29uXG4vLyAuYnV0dG9uLS13aWRlIC0gQSB3aWRlIGJ1dHRvblxuLy8gLmJ1dHRvbi0taW5saW5lIC0gRmxleCBpbmxpbmVcbi8vXG4vLyBNYXJrdXA6IC4vYnV0dG9uLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMuYnV0dG9uXG5cbi8vIGJ1dHRvbiBsaW5rXG4vL1xuLy8gTWFya3VwOiAuL2J1dHRvbi1saW5rLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMuYnV0dG9uIGxpbmtcblxuLmJ0bixcbi5idXR0b24ge1xuICAgICR0aGlzOiAmO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICRjZXJ1bGVhbjtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBwYWRkaW5nOiAxM3B4IDE1cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgb3BhY2l0eTogLjg7IH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbiAgICAmLS1zZWNvbmRhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcm9zZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7IH0gfVxuXG4gICAgJi0tdGVydGlhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYXBwbGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlOyB9IH1cblxuICAgICYtLXN1YnRsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWx5LXdoaXRlO1xuICAgICAgICBjb2xvcjogJGFsbHBvcnRzO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRhbGxwb3J0czsgfSB9XG5cbiAgICAmLS1pbnZlcnNlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY2VydWxlYW47XG4gICAgICAgIGNvbG9yOiAkY2VydWxlYW47XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGNlcnVsZWFuOyB9IH1cblxuICAgICYtLWhhcy1pY29uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5cbiAgICAgICAgI3skdGhpc31fX2ljb24ge1xuICAgICAgICAgICAgZmlsbDogJGNlcnVsZWFuO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH0gfVxuXG4gICAgJi0td2lkZSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDI0MHB4OyB9XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICYtLWxpbmsge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogJGNlcnVsZWFuO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGNlcnVsZWFuLCAxMCUpO1xuXG4gICAgICAgICAgICAjeyR0aGlzfV9faWNvbiB7XG4gICAgICAgICAgICAgICAgZmlsbDogZGFya2VuKCRjZXJ1bGVhbiwgMTAlKTsgfSB9IH1cblxuICAgICYtLWlubGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc21hbGwpIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgJi0tZnVsbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgICAgICYtLXdpZGUge1xuICAgICAgICAgICAgd2lkdGg6IDI0MHB4OyB9IH0gfVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAmICsgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfSB9IH1cbiIsIiVncmFkaWVudF9kYXJrX2JsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJpZ2h0Ymx1ZTtcbiAgQGluY2x1ZGUgZmlsdGVyLWdyYWRpZW50KCRicmlnaHRibHVlLCAkZGFya2JsdWUsIHZlcnRpY2FsKTtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZChsaW5lYXItZ3JhZGllbnQodG9wLCAkYnJpZ2h0Ymx1ZSA0MCUsICRkYXJrYmx1ZSAxMDAlKSk7IH1cblxuXG4lZ3JhZGllbnRfYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmlnaHRibHVlO1xuICBAaW5jbHVkZSBmaWx0ZXItZ3JhZGllbnQoJGJyaWdodGJsdWUsICRkYXJrYmx1ZSwgdmVydGljYWwpO1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGxpbmVhci1ncmFkaWVudCh0b3AsICRicmlnaHRibHVlIDQwJSwgJGRhcmtibHVlIDEwMCUpKTsgfVxuXG4lZ3JhZGllbnRfeWVsbG93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgQGluY2x1ZGUgZmlsdGVyLWdyYWRpZW50KCR5ZWxsb3csICRkYXJreWVsbG93LCB2ZXJ0aWNhbCk7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQobGluZWFyLWdyYWRpZW50KHRvcCwgJHllbGxvdyA0MCUsICRkYXJreWVsbG93IDEwMCUpKTsgfVxuXG4lZ3JhZGllbnRfcmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgQGluY2x1ZGUgZmlsdGVyLWdyYWRpZW50KCRyZWQsICRkYXJrcmVkLCB2ZXJ0aWNhbCk7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQobGluZWFyLWdyYWRpZW50KHRvcCwgJHJlZCA0MCUsICRkYXJrcmVkIDEwMCUpKTsgfVxuXG4lZ3JhZGllbnRfcHVycGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgQGluY2x1ZGUgZmlsdGVyLWdyYWRpZW50KCRwdXJwbGUsICRkYXJrcHVycGxlLCB2ZXJ0aWNhbCk7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQobGluZWFyLWdyYWRpZW50KHRvcCwgJHB1cnBsZSA0MCUsICRkYXJrcHVycGxlIDEwMCUpKTsgfVxuXG4lZ3JhZGllbnRfZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG4gIEBpbmNsdWRlIGZpbHRlci1ncmFkaWVudCgkZ3JlZW4sICRkYXJrZ3JlZW4sIHZlcnRpY2FsKTtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZChsaW5lYXItZ3JhZGllbnQodG9wLCAkZ3JlZW4gNDAlLCAkZGFya2dyZWVuIDEwMCUpKTsgfVxuXG4lZ3JhZGllbnRfcGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaWdodHBpbms7XG4gIEBpbmNsdWRlIGZpbHRlci1ncmFkaWVudCgkbGlnaHRwaW5rLCAkZGFya3BpbmssIHZlcnRpY2FsKTtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZChsaW5lYXItZ3JhZGllbnQodG9wLCAkbGlnaHRwaW5rIDQwJSwgJGRhcmtwaW5rIDEwMCUpKTsgfVxuXG4iLCIjb3V0ZXJfd3JhcHBlciB7XG4gIC5zaG9wLW9ubGluZSAmIHtcbiAgICBAZXh0ZW5kICVncmFkaWVudF9kYXJrX2JsdWU7XG4gICAgaDEsXG4gICAgLnVnYyB7XG4gICAgICBjb2xvcjogJHdoaXRlOyB9IH0gfVxuXG4jc2hvcF9saXN0aW5nIHtcbiAgQGluY2x1ZGUgcGFkZGluZy10cmFpbGVyKDIpO1xuXG4gIC5wcm9kdWN0X3N0dWJfbGluayB7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KCdwYWRkaW5nJyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigyMDBtcyk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IDVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG5cbiAgLnByb2R1Y3Rfc3R1Yl9jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCAwcHggMTBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNCkpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoJ21hcmdpbicpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oMjAwbXMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRlZ2c7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9IH1cblxuICAucHJvZHVjdF9pbWFnZV93cmFwcGVyIHtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKC41KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgLnByb2R1Y3Rfc3R1Yl9pbWFnZSB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbiAgLnByb2R1Y3RfdGl0bGUsXG4gIC5wcm9kdWN0X3ByaWNlIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDMycHgpOyB9XG5cbiAgLnByb2R1Y3RfcHJpY2UsXG4gIC5hYnN0cmFjdCB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yOyB9XG5cbiAgLnByb2R1Y3RfdGl0bGUge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKC41KTsgfVxuXG4gIC5wcm9kdWN0X3ByaWNlIHtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKC41KTsgfSB9XG5cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCkge1xuICAjc2hvcF9saXN0aW5nIHtcbiAgICBtYXJnaW4tbGVmdDogLSBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogLSBndXR0ZXItc3BhbigpO1xuXG4gICAgLnByb2R1Y3RfaXRlbSB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKS8yO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpLzI7IH1cblxuICAgIC5wcm9kdWN0X3N0dWJfY29udGVudCB7XG4gICAgICBvdmVyZmxvdzogYXV0bzsgfVxuXG4gICAgLnByb2R1Y3RfaW1hZ2Vfd3JhcHBlciB7XG4gICAgICBAaW5jbHVkZSB0cmFpbGVyKDApO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG4gICAgICBwYWRkaW5nOiAwOyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjc2hvcF9saXN0aW5nIHtcbiAgICBtYXJnaW4tbGVmdDogLSBndXR0ZXItc3BhbigpLzI7XG4gICAgbWFyZ2luLXJpZ2h0OiAtIGd1dHRlci1zcGFuKCkvMjsgfSB9XG5cbiIsIkBpbXBvcnQgXCIuLi8uLi9zdXBwb3J0XCI7XG5cbi8vIFRoZSBgem9vbWAgYXBwcm9hY2ggZ2VuZXJhdGVzIGxlc3MgQ1NTIGJ1dCBkb2VzIG5vdCB2YWxpZGF0ZS5cbi8vIFNldCB0aGlzIHRvIGBibG9ja2AgdG8gdXNlIHRoZSBkaXNwbGF5LXByb3BlcnR5IHRvIGhhY2sgdGhlXG4vLyBlbGVtZW50IHRvIGdhaW4gbGF5b3V0LlxuJGRlZmF1bHQtaGFzLWxheW91dC1hcHByb2FjaDogem9vbSAhZGVmYXVsdDtcblxuLy8gVGhpcyBtaXhpbiBjYXVzZXMgYW4gZWxlbWVudCBtYXRjaGluZyB0aGUgc2VsZWN0b3Jcbi8vIHRvIGdhaW4gdGhlIFwiaGFzTGF5b3V0XCIgcHJvcGVydHkgaW4gaW50ZXJuZXQgZXhwbG9yZXIuXG4vLyBNb3JlIGluZm9ybWF0aW9uIG9uIFtoYXNMYXlvdXRdKGh0dHA6Ly9yZWZlcmVuY2Uuc2l0ZXBvaW50LmNvbS9jc3MvaGFzbGF5b3V0KS5cbkBtaXhpbiBoYXMtbGF5b3V0KCRhcHByb2FjaDogJGRlZmF1bHQtaGFzLWxheW91dC1hcHByb2FjaCkge1xuICBAaWYgJGxlZ2FjeS1zdXBwb3J0LWZvci1pZSB7XG4gICAgQGlmICRhcHByb2FjaCA9PSB6b29tIHtcbiAgICAgIEBpbmNsdWRlIGhhcy1sYXlvdXQtem9vbTsgfVxuICAgIEBlbHNlIGlmICRhcHByb2FjaCA9PSBibG9jayB7XG4gICAgICBAaW5jbHVkZSBoYXMtbGF5b3V0LWJsb2NrOyB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gXCJVbmtub3duIGhhcy1sYXlvdXQgYXBwcm9hY2g6ICN7JGFwcHJvYWNofVwiO1xuICAgICAgQGluY2x1ZGUgaGFzLWxheW91dC16b29tOyB9IH0gfVxuXG5AbWl4aW4gaGFzLWxheW91dC16b29tIHtcbiAgQGlmICRsZWdhY3ktc3VwcG9ydC1mb3ItaWU2IG9yICRsZWdhY3ktc3VwcG9ydC1mb3ItaWU3IHtcbiAgICAqem9vbTogMTsgfSB9XG5cbkBtaXhpbiBoYXMtbGF5b3V0LWJsb2NrIHtcbiAgQGlmICRsZWdhY3ktc3VwcG9ydC1mb3ItaWUge1xuICAgIC8vIFRoaXMgbWFrZXMgaWU2IGdldCBsYXlvdXRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLy8gYW5kIHRoaXMgcHV0cyBpdCBiYWNrIHRvIGJsb2NrXG4gICAgJiB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9IH1cblxuLy8gQSBoYWNrIHRvIHN1cHBseSBJRTYgKGFuZCBiZWxvdykgd2l0aCBhIGRpZmZlcmVudCBwcm9wZXJ0eSB2YWx1ZS5cbi8vIFtSZWFkIG1vcmVdKGh0dHA6Ly93d3cuY3NzcG9ydGFsLmNvbS9jc3MtaGFja3MvI2luX2Nzcy1pbXBvcnRhbnQpLlxuQG1peGluIGJhbmctaGFjaygkcHJvcGVydHksICR2YWx1ZSwgJGllNi12YWx1ZSkge1xuICBAaWYgJGxlZ2FjeS1zdXBwb3J0LWZvci1pZTYge1xuICAgICN7JHByb3BlcnR5fTogI3skdmFsdWV9ICFpbXBvcnRhbnQ7XG4gICAgI3skcHJvcGVydHl9OiAjeyRpZTYtdmFsdWV9OyB9IH1cbiIsIi8vXG4vLyBBIHBhcnRpYWwgaW1wbGVtZW50YXRpb24gb2YgdGhlIFJ1YnkgY3Jvc3MgYnJvd3NlciBzdXBwb3J0IGZ1bmN0aW9ucyBmcm9tIENvbXBhc3M6XG4vLyBodHRwczovL2dpdGh1Yi5jb20vQ29tcGFzcy9jb21wYXNzL2Jsb2Ivc3RhYmxlL2xpYi9jb21wYXNzL3Nhc3NfZXh0ZW5zaW9ucy9mdW5jdGlvbnMvY3Jvc3NfYnJvd3Nlcl9zdXBwb3J0LnJiXG4vL1xuXG5AZnVuY3Rpb24gcHJlZml4ZWQoJHByZWZpeCwgJHByb3BlcnR5MSwgJHByb3BlcnR5MjogbnVsbCwgJHByb3BlcnR5MzogbnVsbCwgJHByb3BlcnR5NDogbnVsbCwgJHByb3BlcnR5NTogbnVsbCwgJHByb3BlcnR5NjogbnVsbCwgJHByb3BlcnR5NzogbnVsbCwgJHByb3BlcnR5ODogbnVsbCwgJHByb3BlcnR5OTogbnVsbCkge1xuICAkcHJvcGVydGllczogJHByb3BlcnR5MSwgJHByb3BlcnR5MiwgJHByb3BlcnR5MywgJHByb3BlcnR5NCwgJHByb3BlcnR5NSwgJHByb3BlcnR5NiwgJHByb3BlcnR5NywgJHByb3BlcnR5OCwgJHByb3BlcnR5OTtcbiAgJHByZWZpeGVkOiBmYWxzZTtcbiAgQGVhY2ggJGl0ZW0gaW4gJHByb3BlcnRpZXMge1xuICAgIEBpZiB0eXBlLW9mKCRpdGVtKSA9PSBcInN0cmluZ1wiIHtcbiAgICAgICRwcmVmaXhlZDogJHByZWZpeGVkIG9yIHN0ci1pbmRleCgkaXRlbSwgXCJ1cmxcIikgIT0gMSBhbmQgc3RyLWluZGV4KCRpdGVtLCBcInJnYlwiKSAhPSAxIGFuZCBzdHItaW5kZXgoJGl0ZW0sIFwiI1wiKSAhPSAxOyB9XG4gICAgQGVsc2UgaWYgdHlwZS1vZigkaXRlbSkgPT0gXCJjb2xvclwiIHt9XG4gICAgQGVsc2UgaWYgJGl0ZW0gIT0gbnVsbCB7XG4gICAgICAkcHJlZml4ZWQ6IHRydWU7IH0gfVxuICBAcmV0dXJuICRwcmVmaXhlZDsgfVxuXG5AZnVuY3Rpb24gcHJlZml4KCRwcmVmaXgsICRwcm9wZXJ0eTEsICRwcm9wZXJ0eTI6IG51bGwsICRwcm9wZXJ0eTM6IG51bGwsICRwcm9wZXJ0eTQ6IG51bGwsICRwcm9wZXJ0eTU6IG51bGwsICRwcm9wZXJ0eTY6IG51bGwsICRwcm9wZXJ0eTc6IG51bGwsICRwcm9wZXJ0eTg6IG51bGwsICRwcm9wZXJ0eTk6IG51bGwpIHtcbiAgJHByb3BlcnRpZXM6IFwiXCI7XG4gIC8vIFN1cHBvcnQgZm9yIHBvbHltb3JwaGlzbS5cbiAgQGlmIHR5cGUtb2YoJHByb3BlcnR5MSkgPT0gXCJsaXN0XCIge1xuICAgIC8vIFBhc3NpbmcgYSBzaW5nbGUgYXJyYXkgb2YgcHJvcGVydGllcy5cbiAgICAkcHJvcGVydGllczogJHByb3BlcnR5MTsgfVxuICBAZWxzZSB7XG4gICAgLy8gUGFzc2luZyBtdWx0aXBsZSBwcm9wZXJ0aWVzLlxuICAgICRwcm9wZXJ0aWVzOiAkcHJvcGVydHkxLCAkcHJvcGVydHkyLCAkcHJvcGVydHkzLCAkcHJvcGVydHk0LCAkcHJvcGVydHk1LCAkcHJvcGVydHk2LCAkcHJvcGVydHk3LCAkcHJvcGVydHk4LCAkcHJvcGVydHk5OyB9XG4gICRwcm9wczogZmFsc2U7XG4gIEBlYWNoICRpdGVtIGluICRwcm9wZXJ0aWVzIHtcbiAgICBAaWYgJGl0ZW0gPT0gbnVsbCB7fVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiBwcmVmaXhlZCgkcHJlZml4LCAkaXRlbSkge1xuICAgICAgICAkaXRlbTogI3skcHJlZml4fS0jeyRpdGVtfTsgfVxuICAgICAgQGlmICRwcm9wcyB7XG4gICAgICAgICRwcm9wczogJHByb3BzLCAkaXRlbTsgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcHJvcHM6ICRpdGVtOyB9IH0gfVxuICBAcmV0dXJuICRwcm9wczsgfVxuXG5AZnVuY3Rpb24gLXN2ZygkcHJvcGVydHkxLCAkcHJvcGVydHkyOiBudWxsLCAkcHJvcGVydHkzOiBudWxsLCAkcHJvcGVydHk0OiBudWxsLCAkcHJvcGVydHk1OiBudWxsLCAkcHJvcGVydHk2OiBudWxsLCAkcHJvcGVydHk3OiBudWxsLCAkcHJvcGVydHk4OiBudWxsLCAkcHJvcGVydHk5OiBudWxsKSB7XG4gIEByZXR1cm4gcHJlZml4KFwiLXN2Z1wiLCAkcHJvcGVydHkxLCAkcHJvcGVydHkyLCAkcHJvcGVydHkzLCAkcHJvcGVydHk0LCAkcHJvcGVydHk1LCAkcHJvcGVydHk2LCAkcHJvcGVydHk3LCAkcHJvcGVydHk4LCAkcHJvcGVydHk5KTsgfVxuXG5AZnVuY3Rpb24gLW93ZygkcHJvcGVydHkxLCAkcHJvcGVydHkyOiBudWxsLCAkcHJvcGVydHkzOiBudWxsLCAkcHJvcGVydHk0OiBudWxsLCAkcHJvcGVydHk1OiBudWxsLCAkcHJvcGVydHk2OiBudWxsLCAkcHJvcGVydHk3OiBudWxsLCAkcHJvcGVydHk4OiBudWxsLCAkcHJvcGVydHk5OiBudWxsKSB7XG4gIEByZXR1cm4gcHJlZml4KFwiLW93Z1wiLCAkcHJvcGVydHkxLCAkcHJvcGVydHkyLCAkcHJvcGVydHkzLCAkcHJvcGVydHk0LCAkcHJvcGVydHk1LCAkcHJvcGVydHk2LCAkcHJvcGVydHk3LCAkcHJvcGVydHk4LCAkcHJvcGVydHk5KTsgfVxuXG5AZnVuY3Rpb24gLXdlYmtpdCgkcHJvcGVydHkxLCAkcHJvcGVydHkyOiBudWxsLCAkcHJvcGVydHkzOiBudWxsLCAkcHJvcGVydHk0OiBudWxsLCAkcHJvcGVydHk1OiBudWxsLCAkcHJvcGVydHk2OiBudWxsLCAkcHJvcGVydHk3OiBudWxsLCAkcHJvcGVydHk4OiBudWxsLCAkcHJvcGVydHk5OiBudWxsKSB7XG4gIEByZXR1cm4gcHJlZml4KFwiLXdlYmtpdFwiLCAkcHJvcGVydHkxLCAkcHJvcGVydHkyLCAkcHJvcGVydHkzLCAkcHJvcGVydHk0LCAkcHJvcGVydHk1LCAkcHJvcGVydHk2LCAkcHJvcGVydHk3LCAkcHJvcGVydHk4LCAkcHJvcGVydHk5KTsgfVxuXG5AZnVuY3Rpb24gLW1veigkcHJvcGVydHkxLCAkcHJvcGVydHkyOiBudWxsLCAkcHJvcGVydHkzOiBudWxsLCAkcHJvcGVydHk0OiBudWxsLCAkcHJvcGVydHk1OiBudWxsLCAkcHJvcGVydHk2OiBudWxsLCAkcHJvcGVydHk3OiBudWxsLCAkcHJvcGVydHk4OiBudWxsLCAkcHJvcGVydHk5OiBudWxsKSB7XG4gIEByZXR1cm4gcHJlZml4KFwiLW1velwiLCAkcHJvcGVydHkxLCAkcHJvcGVydHkyLCAkcHJvcGVydHkzLCAkcHJvcGVydHk0LCAkcHJvcGVydHk1LCAkcHJvcGVydHk2LCAkcHJvcGVydHk3LCAkcHJvcGVydHk4LCAkcHJvcGVydHk5KTsgfVxuXG5AZnVuY3Rpb24gLW8oJHByb3BlcnR5MSwgJHByb3BlcnR5MjogbnVsbCwgJHByb3BlcnR5MzogbnVsbCwgJHByb3BlcnR5NDogbnVsbCwgJHByb3BlcnR5NTogbnVsbCwgJHByb3BlcnR5NjogbnVsbCwgJHByb3BlcnR5NzogbnVsbCwgJHByb3BlcnR5ODogbnVsbCwgJHByb3BlcnR5OTogbnVsbCkge1xuICBAcmV0dXJuIHByZWZpeChcIi1vXCIsICRwcm9wZXJ0eTEsICRwcm9wZXJ0eTIsICRwcm9wZXJ0eTMsICRwcm9wZXJ0eTQsICRwcm9wZXJ0eTUsICRwcm9wZXJ0eTYsICRwcm9wZXJ0eTcsICRwcm9wZXJ0eTgsICRwcm9wZXJ0eTkpOyB9XG5cbkBmdW5jdGlvbiAtcGllKCRwcm9wZXJ0eTEsICRwcm9wZXJ0eTI6IG51bGwsICRwcm9wZXJ0eTM6IG51bGwsICRwcm9wZXJ0eTQ6IG51bGwsICRwcm9wZXJ0eTU6IG51bGwsICRwcm9wZXJ0eTY6IG51bGwsICRwcm9wZXJ0eTc6IG51bGwsICRwcm9wZXJ0eTg6IG51bGwsICRwcm9wZXJ0eTk6IG51bGwpIHtcbiAgQHJldHVybiBwcmVmaXgoXCItcGllXCIsICRwcm9wZXJ0eTEsICRwcm9wZXJ0eTIsICRwcm9wZXJ0eTMsICRwcm9wZXJ0eTQsICRwcm9wZXJ0eTUsICRwcm9wZXJ0eTYsICRwcm9wZXJ0eTcsICRwcm9wZXJ0eTgsICRwcm9wZXJ0eTkpOyB9XG4iLCJAaW1wb3J0IFwic2hhcmVkXCI7XG5AaW1wb3J0IFwiLi4vdXRpbGl0aWVzL2dlbmVyYWwvaGFja3NcIjtcbkBpbXBvcnQgXCIuLi9mdW5jdGlvbnNcIjtcblxuLy8gQmFja2dyb3VuZCBwcm9wZXJ0eSBzdXBwb3J0IGZvciB2ZW5kb3IgcHJlZml4aW5nIHdpdGhpbiB2YWx1ZXMuXG5AbWl4aW4gYmFja2dyb3VuZCgkYmFja2dyb3VuZC0xLCAkYmFja2dyb3VuZC0yOiBmYWxzZSwgJGJhY2tncm91bmQtMzogZmFsc2UsICRiYWNrZ3JvdW5kLTQ6IGZhbHNlLCAkYmFja2dyb3VuZC01OiBmYWxzZSwgJGJhY2tncm91bmQtNjogZmFsc2UsICRiYWNrZ3JvdW5kLTc6IGZhbHNlLCAkYmFja2dyb3VuZC04OiBmYWxzZSwgJGJhY2tncm91bmQtOTogZmFsc2UsICRiYWNrZ3JvdW5kLTEwOiBmYWxzZSkge1xuICAkYmFja2dyb3VuZHM6IGNvbXBhY3QoJGJhY2tncm91bmQtMSwgJGJhY2tncm91bmQtMiwgJGJhY2tncm91bmQtMywgJGJhY2tncm91bmQtNCwgJGJhY2tncm91bmQtNSwgJGJhY2tncm91bmQtNiwgJGJhY2tncm91bmQtNywgJGJhY2tncm91bmQtOCwgJGJhY2tncm91bmQtOSwgJGJhY2tncm91bmQtMTApO1xuICAkbXVsdC1iZ3M6IC1jb21wYXNzLWxpc3Qtc2l6ZSgkYmFja2dyb3VuZHMpID4gMTtcbiAgJGFkZC1waWUtYmc6IHByZWZpeGVkKC1waWUsICRiYWNrZ3JvdW5kcykgb3IgJG11bHQtYmdzO1xuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1zdmcgYW5kIHByZWZpeGVkKC1zdmcsICRiYWNrZ3JvdW5kcykge1xuICAgIGJhY2tncm91bmQ6IC1zdmcoJGJhY2tncm91bmRzKTsgfVxuICBAaWYgJHN1cHBvcnQtZm9yLW9yaWdpbmFsLXdlYmtpdC1ncmFkaWVudHMgYW5kIHByZWZpeGVkKC1vd2csICRiYWNrZ3JvdW5kcykge1xuICAgIGJhY2tncm91bmQ6IC1vd2coJGJhY2tncm91bmRzKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQgYW5kIHByZWZpeGVkKC13ZWJraXQsICRiYWNrZ3JvdW5kcykge1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQoJGJhY2tncm91bmRzKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1tb3ppbGxhIGFuZCBwcmVmaXhlZCgtbW96LCAkYmFja2dyb3VuZHMpIHtcbiAgICBiYWNrZ3JvdW5kOiAtbW96KCRiYWNrZ3JvdW5kcyk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEgYW5kIHByZWZpeGVkKC1vLCAkYmFja2dyb3VuZHMpIHtcbiAgICBiYWNrZ3JvdW5kOiAtbygkYmFja2dyb3VuZHMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXBpZSBhbmQgJGFkZC1waWUtYmcge1xuICAgIC1waWUtYmFja2dyb3VuZDogLXBpZSgkYmFja2dyb3VuZHMpOyB9XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kczsgfVxuXG5AbWl4aW4gYmFja2dyb3VuZC13aXRoLWNzczItZmFsbGJhY2soJGJhY2tncm91bmQtMSwgJGJhY2tncm91bmQtMjogZmFsc2UsICRiYWNrZ3JvdW5kLTM6IGZhbHNlLCAkYmFja2dyb3VuZC00OiBmYWxzZSwgJGJhY2tncm91bmQtNTogZmFsc2UsICRiYWNrZ3JvdW5kLTY6IGZhbHNlLCAkYmFja2dyb3VuZC03OiBmYWxzZSwgJGJhY2tncm91bmQtODogZmFsc2UsICRiYWNrZ3JvdW5kLTk6IGZhbHNlLCAkYmFja2dyb3VuZC0xMDogZmFsc2UpIHtcbiAgJGJhY2tncm91bmRzOiBjb21wYWN0KCRiYWNrZ3JvdW5kLTEsICRiYWNrZ3JvdW5kLTIsICRiYWNrZ3JvdW5kLTMsICRiYWNrZ3JvdW5kLTQsICRiYWNrZ3JvdW5kLTUsICRiYWNrZ3JvdW5kLTYsICRiYWNrZ3JvdW5kLTcsICRiYWNrZ3JvdW5kLTgsICRiYWNrZ3JvdW5kLTksICRiYWNrZ3JvdW5kLTEwKTtcbiAgJG11bHQtYmdzOiAtY29tcGFzcy1saXN0LXNpemUoJGJhY2tncm91bmRzKSA+IDE7XG4gICRzaW1wbGUtYmFja2dyb3VuZDogaWYoJG11bHQtYmdzIG9yIHByZWZpeGVkKC1jc3MyLCAkYmFja2dyb3VuZHMpLCAtY3NzMigtY29tcGFzcy1udGgoJGJhY2tncm91bmRzLCBsYXN0KSksIGZhbHNlKTtcbiAgQGlmIG5vdCBibGFuaygkc2ltcGxlLWJhY2tncm91bmQpIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2ltcGxlLWJhY2tncm91bmQ7IH1cbiAgQGluY2x1ZGUgYmFja2dyb3VuZCgkYmFja2dyb3VuZC0xLCAkYmFja2dyb3VuZC0yLCAkYmFja2dyb3VuZC0zLCAkYmFja2dyb3VuZC00LCAkYmFja2dyb3VuZC01LCAkYmFja2dyb3VuZC02LCAkYmFja2dyb3VuZC03LCAkYmFja2dyb3VuZC04LCAkYmFja2dyb3VuZC05LCAkYmFja2dyb3VuZC0xMCk7IH1cblxuLy8gQmFja2dyb3VuZCBpbWFnZSBwcm9wZXJ0eSBzdXBwb3J0IGZvciB2ZW5kb3IgcHJlZml4aW5nIHdpdGhpbiB2YWx1ZXMuXG5AbWl4aW4gYmFja2dyb3VuZC1pbWFnZSgkaW1hZ2UtMSwgJGltYWdlLTI6IGZhbHNlLCAkaW1hZ2UtMzogZmFsc2UsICRpbWFnZS00OiBmYWxzZSwgJGltYWdlLTU6IGZhbHNlLCAkaW1hZ2UtNjogZmFsc2UsICRpbWFnZS03OiBmYWxzZSwgJGltYWdlLTg6IGZhbHNlLCAkaW1hZ2UtOTogZmFsc2UsICRpbWFnZS0xMDogZmFsc2UpIHtcbiAgJGltYWdlczogY29tcGFjdCgkaW1hZ2UtMSwgJGltYWdlLTIsICRpbWFnZS0zLCAkaW1hZ2UtNCwgJGltYWdlLTUsICRpbWFnZS02LCAkaW1hZ2UtNywgJGltYWdlLTgsICRpbWFnZS05LCAkaW1hZ2UtMTApO1xuICAkYWRkLXBpZS1iZzogcHJlZml4ZWQoLXBpZSwgJGltYWdlcykgb3IgLWNvbXBhc3MtbGlzdC1zaXplKCRpbWFnZXMpID4gMTtcbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itc3ZnIGFuZCBwcmVmaXhlZCgtc3ZnLCAkaW1hZ2VzKSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXN2ZygkaW1hZ2VzKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7IH1cbiAgQGlmICRzdXBwb3J0LWZvci1vcmlnaW5hbC13ZWJraXQtZ3JhZGllbnRzIGFuZCBwcmVmaXhlZCgtb3dnLCAkaW1hZ2VzKSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW93ZygkaW1hZ2VzKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQgYW5kIHByZWZpeGVkKC13ZWJraXQsICRpbWFnZXMpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0KCRpbWFnZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEgYW5kIHByZWZpeGVkKC1tb3osICRpbWFnZXMpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96KCRpbWFnZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhIGFuZCBwcmVmaXhlZCgtbywgJGltYWdlcykge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vKCRpbWFnZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXBpZSBhbmQgJGFkZC1waWUtYmcge1xuICAgIEB3YXJuIFwiUElFIGRvZXMgbm90IHN1cHBvcnQgYmFja2dyb3VuZC1pbWFnZS4gVXNlIEBpbmNsdWRlIGJhY2tncm91bmQoI3skaW1hZ2VzfSkgaW5zdGVhZC5cIjsgfVxuICBiYWNrZ3JvdW5kLWltYWdlOiAkaW1hZ2VzOyB9XG5cbi8vIEVtaXQgYSBJRS1TcGVjaWZpYyBmaWx0ZXJzIHRoYXQgcmVuZGVycyBhIHNpbXBsZSBsaW5lYXIgZ3JhZGllbnQuXG4vLyBGb3IgdXNlIGluIElFIDYgLSA4LiBCZXN0IHByYWN0aWNlIHdvdWxkIGhhdmUgeW91IGFwcGx5IHRoaXMgdmlhIGFcbi8vIGNvbmRpdGlvbmFsIElFIHN0eWxlc2hlZXQsIGJ1dCBpZiB5b3UgbXVzdCwgeW91IHNob3VsZCBwbGFjZSB0aGlzIGJlZm9yZVxuLy8gYW55IGJhY2tncm91bmQtaW1hZ2UgcHJvcGVydGllcyB0aGF0IHlvdSBoYXZlIHNwZWNpZmllZC5cbi8vXG4vLyBGb3IgdGhlIGAkb3JpZW50YXRpb25gIHBhcmFtZXRlciwgeW91IGNhbiBwYXNzIGB2ZXJ0aWNhbGAgb3IgYGhvcml6b250YWxgLlxuQG1peGluIGZpbHRlci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRlbmQtY29sb3IsICRvcmllbnRhdGlvbjogdmVydGljYWwpIHtcbiAgQGluY2x1ZGUgaGFzLWxheW91dDtcbiAgJGdyYWRpZW50LXR5cGU6IGlmKCRvcmllbnRhdGlvbiA9PSB2ZXJ0aWNhbCwgMCwgMSk7XG4gIEBpZiAkbGVnYWN5LXN1cHBvcnQtZm9yLWllNiBvciAkbGVnYWN5LXN1cHBvcnQtZm9yLWllNyBvciAkbGVnYWN5LXN1cHBvcnQtZm9yLWllOCB7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZ3JhZGllbnRUeXBlPSN7JGdyYWRpZW50LXR5cGV9LCBzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScpOyB9IH1cblxuLy8gQm9yZGVyIGltYWdlIHByb3BlcnR5IHN1cHBvcnQgZm9yIHZlbmRvciBwcmVmaXhpbmcgcHJvcGVydGllcyBhbmQgdmFsdWVzLlxuQG1peGluIGJvcmRlci1pbWFnZSgkdmFsdWUpIHtcbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSB7XG4gICAgLW1vei1ib3JkZXItaW1hZ2U6IC1tb3oocmVqZWN0KC1jb21wYXNzLWxpc3QoJHZhbHVlKSwgZmlsbCkpOyB9XG4gIEBpZiAkc3VwcG9ydC1mb3Itb3JpZ2luYWwtd2Via2l0LWdyYWRpZW50cyB7XG4gICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IC1vd2cocmVqZWN0KC1jb21wYXNzLWxpc3QoJHZhbHVlKSwgZmlsbCkpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCB7XG4gICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IC13ZWJraXQocmVqZWN0KC1jb21wYXNzLWxpc3QoJHZhbHVlKSwgZmlsbCkpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhIHtcbiAgICAtby1ib3JkZXItaW1hZ2U6IC1vKHJlamVjdCgtY29tcGFzcy1saXN0KCR2YWx1ZSksIGZpbGwpKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1zdmcge1xuICAgIGJvcmRlci1pbWFnZTogLXN2ZyhyZWplY3QoLWNvbXBhc3MtbGlzdCgkdmFsdWUpLCBmaWxsKSk7IH1cbiAgYm9yZGVyLWltYWdlOiAkdmFsdWU7IH1cblxuLy8gTGlzdCBzdHlsZSBpbWFnZSBwcm9wZXJ0eSBzdXBwb3J0IGZvciB2ZW5kb3IgcHJlZml4aW5nIHdpdGhpbiB2YWx1ZXMuXG5AbWl4aW4gbGlzdC1zdHlsZS1pbWFnZSgkaW1hZ2UpIHtcbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSBhbmQgcHJlZml4ZWQoLW1veiwgJGltYWdlKSB7XG4gICAgbGlzdC1zdHlsZS1pbWFnZTogLW1veigkaW1hZ2UpOyB9XG4gIEBpZiAkc3VwcG9ydC1mb3Itb3JpZ2luYWwtd2Via2l0LWdyYWRpZW50cyBhbmQgcHJlZml4ZWQoLW93ZywgJGltYWdlKSB7XG4gICAgbGlzdC1zdHlsZS1pbWFnZTogLW93ZygkaW1hZ2UpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCBhbmQgcHJlZml4ZWQoLXdlYmtpdCwgJGltYWdlKSB7XG4gICAgbGlzdC1zdHlsZS1pbWFnZTogLXdlYmtpdCgkaW1hZ2UpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhIGFuZCBwcmVmaXhlZCgtbywgJGltYWdlKSB7XG4gICAgbGlzdC1zdHlsZS1pbWFnZTogLW8oJGltYWdlKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1zdmcgYW5kIHByZWZpeGVkKC1zdmcsICRpbWFnZSkge1xuICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IC1zdmcoJGltYWdlKTsgfVxuICBsaXN0LXN0eWxlLWltYWdlOiAkaW1hZ2U7IH1cblxuLy8gTGlzdCBzdHlsZSBwcm9wZXJ0eSBzdXBwb3J0IGZvciB2ZW5kb3IgcHJlZml4aW5nIHdpdGhpbiB2YWx1ZXMuXG5AbWl4aW4gbGlzdC1zdHlsZSgkdmFsdWUpIHtcbiAgJHZhbHVlOiAtY29tcGFzcy1saXN0KCR2YWx1ZSk7XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEgYW5kIHByZWZpeGVkKC1tb3osICR2YWx1ZSkge1xuICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IC1tb3ooJHZhbHVlKTsgfVxuICBAaWYgJHN1cHBvcnQtZm9yLW9yaWdpbmFsLXdlYmtpdC1ncmFkaWVudHMgYW5kIHByZWZpeGVkKC1vd2csICR2YWx1ZSkge1xuICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IC1vd2coJHZhbHVlKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQgYW5kIHByZWZpeGVkKC13ZWJraXQsICR2YWx1ZSkge1xuICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IC13ZWJraXQoJHZhbHVlKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1vcGVyYSBhbmQgcHJlZml4ZWQoLW8sICR2YWx1ZSkge1xuICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IC1vKCR2YWx1ZSk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itc3ZnIGFuZCBwcmVmaXhlZCgtc3ZnLCAkdmFsdWUpIHtcbiAgICBsaXN0LXN0eWxlLWltYWdlOiAtc3ZnKCR2YWx1ZSk7IH1cbiAgbGlzdC1zdHlsZS1pbWFnZTogJHZhbHVlOyB9XG5cbi8vIGNvbnRlbnQgcHJvcGVydHkgc3VwcG9ydCBmb3IgdmVuZG9yIHByZWZpeGluZyB3aXRoaW4gdmFsdWVzLlxuQG1peGluIGNvbnRlbnQoJHZhbHVlKSB7XG4gICR2YWx1ZTogLWNvbXBhc3MtbGlzdCgkdmFsdWUpO1xuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1tb3ppbGxhIGFuZCBwcmVmaXhlZCgtbW96LCAkdmFsdWUpIHtcbiAgICBjb250ZW50OiAtbW96KCR2YWx1ZSk7IH1cbiAgQGlmICRzdXBwb3J0LWZvci1vcmlnaW5hbC13ZWJraXQtZ3JhZGllbnRzIGFuZCBwcmVmaXhlZCgtb3dnLCAkdmFsdWUpIHtcbiAgICBjb250ZW50OiAtb3dnKCR2YWx1ZSk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0IGFuZCBwcmVmaXhlZCgtd2Via2l0LCAkdmFsdWUpIHtcbiAgICBjb250ZW50OiAtd2Via2l0KCR2YWx1ZSk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEgYW5kIHByZWZpeGVkKC1vLCAkdmFsdWUpIHtcbiAgICBjb250ZW50OiAtbygkdmFsdWUpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXN2ZyBhbmQgcHJlZml4ZWQoLXN2ZywgJHZhbHVlKSB7XG4gICAgY29udGVudDogLXN2ZygkdmFsdWUpOyB9XG4gIGNvbnRlbnQ6ICR2YWx1ZTsgfVxuIiwiLmtleV9tZXNzYWdlX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmV5O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5tb2JpbGVfb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9rZXlfbWVzc2FnZV9vdmVybGF5Jyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDQwcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTI3cHg7XG4gICAgd2lkdGg6IDI1NXB4O1xuICAgIGhlaWdodDogMjQwcHg7XG4gICAgei1pbmRleDogMjsgfVxuXG4gICYtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuICAmLS12ZXJ0aWNhbC1jZW50ZXIge1xuICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XG4gICAgQGluY2x1ZGUgZGlzcGxheShmbGV4KTtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpO1xuICAgIC5jZW50ZXIge1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIHdpZHRoOiAzMjBweDsgfVxuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbjogMCBhdXRvIDEuNWVtOyB9IH1cblxuLmtleV9tZXNzYWdlX2ltYWdlIHtcbiAgQGV4dGVuZCAlaW1hZ2VfY292ZXI7XG4gIGhlaWdodDogOTB2dztcbiAgLW1zLWJlaGF2aW9yOiBhc3NldC11cmwoJy4uL2ltYWdlcy92ZW5kb3IvYmFja2dyb3VuZHNpemUubWluLmh0YycpOyB9XG5cbi5rZXlfbWVzc2FnZV9pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC02MHB4O1xuICBsZWZ0OiAtMTAwcHg7XG4gIHdpZHRoOiAxNDBweDtcbiAgaGVpZ2h0OiAxNDBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4ua2V5X21lc3NhZ2VfaW5mbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJi55ZWxsb3cge1xuICAgIEBleHRlbmQgJWdyYWRpZW50X3llbGxvdztcbiAgICAua2V5X21lc3NhZ2VfaWNvbiB7XG4gICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3llbGxvd19pY29uMicsICRiYWNrZ3JvdW5kLXNpemU6IDE0MHB4IGF1dG8pOyB9XG4gICAgLmtleV9tZXNzYWdlX2xpbmsge1xuICAgICAgY29sb3I6ICRwdXJwbGU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwdXJwbGU7IH0gfSB9XG4gICYuYmx1ZSB7XG4gICAgQGV4dGVuZCAlZ3JhZGllbnRfYmx1ZTtcbiAgICAua2V5X21lc3NhZ2VfaWNvbiB7XG4gICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL2JsdWVfc3VuJywgJGJhY2tncm91bmQtc2l6ZTogMTQwcHggYXV0byk7IH1cbiAgICAua2V5X21lc3NhZ2VfbGluayB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7IH0gfSB9XG4gICYucGluayB7XG4gICAgQGV4dGVuZCAlZ3JhZGllbnRfcGluaztcbiAgICAua2V5X21lc3NhZ2VfaWNvbiB7XG4gICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3BpbmtfaWNvbjEnLCAkYmFja2dyb3VuZC1zaXplOiAxNDBweCBhdXRvKTsgfVxuICAgIC5rZXlfbWVzc2FnZV9saW5rIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTsgfSB9XG4gICAgLmxpbmtfYmxvY2tfZGV0YWlsIHtcbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogJHdoaXRlOyB9IH0gfVxuXG4gICYucHVycGxlIHtcbiAgICBAZXh0ZW5kICVncmFkaWVudF9wdXJwbGU7XG4gICAgLmtleV9tZXNzYWdlX2ljb24ge1xuICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9wdXJwbGVfc3VuJywgJGJhY2tncm91bmQtc2l6ZTogMTQwcHggYXV0byk7IH1cbiAgICAua2V5X21lc3NhZ2VfbGluayB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7IH0gfSB9XG4gICYuZ3JlZW4ge1xuICAgIEBleHRlbmQgJWdyYWRpZW50X2dyZWVuO1xuICAgIC5rZXlfbWVzc2FnZV9pY29uIHtcbiAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvZ3JlZW5fc3VuJywgJGJhY2tncm91bmQtc2l6ZTogMTQwcHggYXV0byk7IH1cbiAgICAua2V5X21lc3NhZ2VfbGluayB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7IH0gfSB9XG5cblxuICAuY2VudGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDFlbSBhdXRvIDJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiAyO1xuICAgIGJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDIuMTQyODZlbTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgc3BhbiB7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4gIC5saW5rX2Jsb2NrX2RldGFpbCB7XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4zNjM2NGVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMy42MzYzNiU7XG4gICAgICBtYXJnaW4tdG9wOiAxLjY2NjY3ZW07XG4gICAgICBjb2xvcjogIzNiM2IzYjtcbiAgICAgIG1hcmdpbi1yaWdodDogNC41NDU0NSU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyOyB9IH0gfVxuXG4ua2V5X21lc3NhZ2VfbGluayB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDI4cHgpO1xuICBwYWRkaW5nOiAyZW07XG4gIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDsgfVxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCggJ2FsbCcgKTtcblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJG1vYmlsZS1sYW5kc2NhcGUpO1xuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCk7XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gIC5rZXlfbWVzc2FnZV93cmFwcGVyIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTEwcHgpO1xuICAgIC5tb2JpbGVfb3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuICAua2V5X21lc3NhZ2VfbGluayB7XG4gICAgbWFyZ2luLXRvcDogMS41ZW07XG4gICAgcGFkZGluZzogMWVtOyB9XG5cbiAgLmtleV9tZXNzYWdlX2luZm8ge1xuICAgIGhlaWdodDogMjEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgLmxpbmtfYmxvY2tfZGV0YWlsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yMjIyMmVtO1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgcCB7XG4gICAgICAgIHdpZHRoOiA0MCU7IH0gfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgbWFyZ2luLXRvcDogMy4zMzMzM2VtOyB9IH1cblxuICAua2V5X21lc3NhZ2VfaW1hZ2Uge1xuICAgIGhlaWdodDogOTB2aDsgfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAua2V5X21lc3NhZ2Vfd3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDE3MHB4KTsgfVxuXG4gIC5rZXlfbWVzc2FnZV9saW5rIHtcbiAgICBAaW5jbHVkZSBsZWFkZXIoMS41KTtcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDMwcHgpO1xuICAgIHBhZGRpbmc6IDA7IH1cblxuICAua2V5X21lc3NhZ2VfaWNvbiB7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgIGhlaWdodDogMjIwcHg7XG4gICAgdG9wOiAtNzBweDtcbiAgICBsZWZ0OiAtMTQwcHg7XG4gICAgLnN2ZyAmIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjIwcHggMjIwcHghaW1wb3J0YW50OyB9IH0gfVxuIiwiLy8gIFRleHQgZm9vdGVyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiN0ZXh0X2Zvb3RlcixcbiNiYWNrX3RvX3dyYXBwZXIsXG4jY29udGFjdF91c19saW5rX3dyYXBwZXIge1xuICBAZXh0ZW5kICVncmFkaWVudF9yZWQ7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDMpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMyk7XG4gIGNsZWFyOiBib3RoO1xuXG4gIC5iYWNrX3RvX2xpc3RpbmdfbGluayxcbiAgLmNvbnRhY3RfdXNfbGluayB7XG4gICAgQGV4dGVuZCAldXBjYXNlO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoXCJib3JkZXItYm94XCIpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coIDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC40KSk7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL2Fycm93X2xlZnQnLCAkYmFja2dyb3VuZC1zaXplOiAxOHB4IGF1dG8pO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgMjVweCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya2JsdWU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgc3BhbiB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KFwiYmFja2dyb3VuZC1jb2xvciwgY29sb3JcIik7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDIwMG1zKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogcmh5dGhtKC42KSBndXR0ZXItc3BhbigpIHJoeXRobSguNSkgMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tY29sb3I7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICY6aG92ZXIge1xuICAgICAgc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24taG92ZXItY29sb3I7IH0gfSB9XG5cbiAgLmNvbnRhY3RfdXNfbGluayB7XG4gICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9hcnJvd19yaWdodCcsICRiYWNrZ3JvdW5kLXNpemU6IDE4cHggYXV0byk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMjVweCBjZW50ZXI7XG4gICAgc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICAgIHBhZGRpbmc6IHJoeXRobSguNikgMCByaHl0aG0oLjUpIGd1dHRlci1zcGFuKCk7IH0gfSB9XG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRtb2JpbGUtbGFuZHNjYXBlKTtcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRzbWFsbC10YWJsZXQpO1xuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjdGV4dF9mb290ZXIsXG4gICNiYWNrX3RvX3dyYXBwZXIsXG4gICNjb250YWN0X3VzX2xpbmtfd3JhcHBlciB7XG4gICAgLmJhY2tfdG9fbGlzdGluZ19saW5rLFxuICAgIC5jb250YWN0X3VzX2xpbmsge1xuICAgICAgd2lkdGg6IDQwMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKTtcbiIsImJsb2NrcXVvdGUge1xuICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygzMHB4KTtcbiAgcGFkZGluZzogcmh5dGhtKDEuNSkgMTBweCByaHl0aG0oMS41KTtcbiAgY29sb3I6ICRwdXJwbGU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICAubXVsdGlwbGViZ3MgJiB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZCggdXJsKFwiLi4vaW1hZ2VzL2ljb25zL3F1b3RlLnBuZ1wiKSBzY3JvbGwgbm8tcmVwZWF0IGxlZnQgdG9wLCB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvcXVvdGVfZW5kLnBuZ1wiKSBzY3JvbGwgbm8tcmVwZWF0IHJpZ2h0IGJvdHRvbSApOyB9XG4gIC5tdWx0aXBsZWJncy5zdmcgJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL3F1b3RlLnN2Z1wiKSwgdXJsKFwiLi4vaW1hZ2VzL2ljb25zL3F1b3RlX2VuZC5zdmdcIik7IH0gfVxuXG4ucXVvdGVfYmxvY2tfd3JhcHBlciB7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDMpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoNCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmLmdyZWVuIHtcbiAgICBAZXh0ZW5kICVncmFkaWVudF9ncmVlbjtcblxuICAgIGJsb2NrcXVvdGUsXG4gICAgY2l0ZSB7XG4gICAgICBjb2xvcjogJHdoaXRlOyB9IH1cblxuICBibG9ja3F1b3RlIHtcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDI0cHgpO1xuICAgIHBhZGRpbmc6IHJoeXRobSgyLjUpIDAgcmh5dGhtKDEpO1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbiAgYmxvY2txdW90ZSxcbiAgY2l0ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkcHVycGxlOyB9XG5cbiAgY2l0ZSB7XG4gICAgQGluY2x1ZGUgbGVhZGVyKDEpO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbiAgLmJrZ19pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtNTBweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgaGVpZ2h0OiAxNjBweDtcbiAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3B1cnBsZV9zdW4nLCAkYmFja2dyb3VuZC1zaXplOiAxNjBweCBhdXRvKTsgfSB9XG5cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCAnYWxsJyApIHtcbiAgLnF1b3RlX2Jsb2NrX3dyYXBwZXIge1xuICAgIGJsb2NrcXVvdGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH0gfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gIC5xdW90ZV9ibG9ja193cmFwcGVyIHtcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpKjM7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCkqMzsgfVxuICAgIC5jZW50ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiAgICAuYmtnX2ljb24ge1xuICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9wdXJwbGVfc3VuJywgJGJhY2tncm91bmQtc2l6ZTogMjYwcHggYXV0byk7XG4gICAgICB3aWR0aDogMjYwcHg7XG4gICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJvdHRvbTogLTE3MHB4O1xuICAgICAgbGVmdDogLTE2MHB4OyB9IH0gfVxuXG4iLCIuY2VudGVyIHtcbiAgLy8gK2JhY2tncm91bmQtZ3JpZCgkY29sb3I6ICNmZmJiYmIpXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG4gIC5jZW50ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDk2MHB4OyB9IH1cbiIsIi8vIE1hcHNcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuI2dvb2dsZV9tYXBfd3JhcHBlciB7XG4gIEBleHRlbmQgLmNlbnRlcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIEBpbmNsdWRlIGxlYWRlcigxKTtcbiAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogNzIwcHg7XG4gIC5nb29nbGVfbWFwIHt9XG5cbiAgI3Nob3BfbG9jYXRpb25fbGlzdGluZyB7XG4gICAgd2lkdGg6IDQ1MHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLmxvY2F0aW9uX3Jlc3VsdHMge30gfSB9XG5cblxuI2dvb2dsZV9tYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiByaHl0aG0oMTApO1xuICBjbGVhcjogYm90aDtcbiAgYS5jb250YWN0X251bWJlcjphZnRlciB7XG4gICAgY29udGVudDogXCIg4oCiIFwiOyB9IH1cblxuLmdtLXN0eWxlLmdtLXN0eWxlLWl3LFxuLmdtLXN0eWxlIC5nbS1zdHlsZS1pdyBhLFxuLmdtLXN0eWxlIC5nbS1zdHlsZS1pdyBzcGFuLFxuLmdtLXN0eWxlIC5nbS1zdHlsZS1pdyBsYWJlbCxcbi5nbS1zdHlsZSAuZ20tc3R5bGUtaXcgZGl2IHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBhLmNvbnRhY3RfbnVtYmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiDigKIgXCI7IH0gfVxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCggJ2FsbCcgKTtcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRtb2JpbGUtbGFuZHNjYXBlKTtcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRzbWFsbC10YWJsZXQpO1xuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjZ29vZ2xlX21hcCB7XG4gICAgaGVpZ2h0OiByaHl0aG0oMjApOyB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG4gICNnb29nbGVfbWFwIHtcbiAgICBoZWlnaHQ6IHJoeXRobSgyNCk7IH0gfVxuIiwiJXBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3N0b2NrL3BsYWNlaG9sZGVyLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG5cbiVpbWFnZV9jb3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuIiwiLy8gIENhc2UgY29udmVyc2lvblxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4ldXBjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4lZG93bmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG5cbiVub2Nhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG5cbi8vICBGb250IG1peGluc1xuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4lZGVmYXVsdC1mb250IHtcbiAgZm9udC1mYW1pbHk6ICRkZWZhdWx0LWZvbnQtc3RhY2s7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4lYm9sZC1mb250IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuJWl0YWxpYy1mb250IHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbiVib2xkLWl0YWxpYy1mb250IHtcbiAgQGV4dGVuZCAlYm9sZC1mb250O1xuICBAZXh0ZW5kICVpdGFsaWMtZm9udDsgfVxuXG4lc2tpcHB5LWZvbnQge1xuICBmb250LWZhbWlseTogJHNraXBweS1mb250LXN0YWNrOyB9XG4iLCIud3lzaXd5ZyB7XG4gICAgaDEge1xuICAgICAgICBAZXh0ZW5kICVoZWFkaW5nLS0xO1xuICAgICAgICBmb250LXNpemU6IHJlbSg1MCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cblxuICAgIGgyIHtcbiAgICAgICAgQGV4dGVuZCAlaGVhZGluZy0tMjtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMzYpOyB9XG5cbiAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIGNvbG9yO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yOyB9IH1cblxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuICAgIHN0cm9uZyxcbiAgICBiIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4gICAgZW0sXG4gICAgaSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4gICAgaW1nOm5vdCguY2FyZF9fbWVkaWEpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNzBweDsgfVxuXG4gICAgaW1nLnZpZGVvX19pbWFnZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuICAgICYtLWNsZWFuIHtcbiAgICAgICAgcCxcbiAgICAgICAgaDEsXG4gICAgICAgIGgyLFxuICAgICAgICBoMyxcbiAgICAgICAgaDQge1xuICAgICAgICAgICAgbWFyZ2luOiAwOyB9IH1cblxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogaW5oZXJpdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMnB4OyB9XG5cbiAgICBvbCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjJweDsgfSB9XG5cbnAgaWZyYW1lIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiIsIiNjb250ZW50X21haW4ge1xuICAuYmFza2V0ICYsXG4gIC5jaGVja291dCAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuICAuYmFza2V0LXJvdyB7XG4gICAgJi0tZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBlYXNlLWluLW91dDtcbiAgICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4gIC5iYXNrZXQtcm93IHtcbiAgICAmLS1oaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4gIC5pY29uX2Zsb3dlcjEsXG4gIC5pY29uX2Zsb3dlcjIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTg4cHg7XG4gICAgaGVpZ2h0OiAxODhweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuICAuaWNvbl9mbG93ZXIxIHtcbiAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL2Jhc2tldF9mbG93ZXIxJyk7XG4gICAgcmlnaHQ6IC02MHB4O1xuICAgIHRvcDogMjBweDtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5pY29uX2Zsb3dlcjIge1xuICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvYmFza2V0X2Zsb3dlcjInKTtcbiAgICBsZWZ0OiAtMTAwcHg7XG4gICAgdG9wOiAyMjBweDtcbiAgICB6LWluZGV4OiAxOyB9IH1cblxuI2Jhc2tldF90YWJsZV93cmFwcGVyIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyggMHB4IDEwcHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjQpKTtcbiAgQGluY2x1ZGUgbGVhZGVyKDIpO1xuICBAaW5jbHVkZSB0cmFpbGVyKDIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZWdnO1xuICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICBwYWRkaW5nOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGgyIHtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKC41KTsgfVxuXG4gIC5zdG9jay1saW1pdCB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQ6ICRicmlnaHRibHVlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrYmx1ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07IH0gfVxuXG4jYmFza2V0X3RhYmxlLFxuI2Jhc2tldF9zdW1tYXJ5IHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGVnZztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCAxMDAlIDAsIDAgMCwgMTAwJSAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDhlbSAxMDAlLCA4ZW0gMTAwJSwgMmVtIDEwMCUsIDJlbSAxMDAlO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGxvY2FsLCBsb2NhbCwgc2Nyb2xsLCBzY3JvbGw7XG4gIC5kb25hdGlvbiAmIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVnZzsgfSB9XG4uYmFza2V0X29yZGVyX3ZpZXcsXG4ub3JkZXJfdGFibGUge1xuICBib3JkZXItdG9wOiAycHggc29saWQgJG1pZC1ncmV5O1xuICAuZG9uYXRpb24gJiB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJG1pZC1ncmV5OyB9XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0ZCxcbiAgdGgge1xuICAgIHBhZGRpbmc6IDIwcHggMTBweDsgfVxuICB0aCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRtaWQtZ3JleTtcbiAgICAuZG9uYXRpb24gJiB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkbWlkLWdyZXk7IH0gfSB9XG5cbiNiYXNrZXRfdGFibGUge1xuICAucXVhbnRpdHlfbnVtYmVyIHtcbiAgICB3aWR0aDogOTVweDsgfSB9XG5cbi5iYXNrZXRfb3JkZXJfdmlldyB7XG4gIGZvbnQtc2l6ZTogKDE0LzE4KStyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIHRyLnNpbmdsZV9pdGVtIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJG1pZC1ncmV5O1xuICAgIC5kb25hdGlvbiAmIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwdXJwbGU7IH0gfVxuICB0ZC5wcm9kdWN0X2NvbCB7XG4gICAgbWluLXdpZHRoOiAxMjBweDsgfVxuICB0ZC5xdWFudGl0eV9jb2wge1xuICAgIG1pbi13aWR0aDogNTBweDsgfVxuICB0ZC50b3RhbCB7XG4gICAgbWluLXdpZHRoOiA1MHB4OyB9XG4gIHRkLnJlbW92ZV9jb2wge1xuICAgIG1pbi13aWR0aDogNTBweDtcbiAgICBpbnB1dC5yZW1vdmVfYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgYmFja2dyb3VuZDogJGVnZyB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvY2xvc2UucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9IH1cblxuICB0ci50b3RhbF9yb3cge1xuICAgIHRkIHtcbiAgICAgIEBleHRlbmQgJWJvbGQtZm9udDsgfSB9XG5cbiAgdHIjYmFza2V0X2J1dHRvbnMge1xuICAgIC5idXR0b24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfSB9IH1cblxuLnNpbmdsZV9jb2x1bW4ge1xuICAuY2hlY2tvdXRfdGl0bGUge1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpKjEuNTsgfSB9XG5cblxuLm5vX3VzZXJfZmllbGRzIHtcbiAgaDIubm9fdXNlcl9jaGVja291dCB7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBjb2xvcjogJHdoaXRlOyB9XG5cbiAgI2NoZWNrb3V0X2xvZ2luX2Zvcm0sXG4gICNjaGVja291dF9yZWdfZm9ybSB7XG4gICAgbGVnZW5kIHtcbiAgICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMjRweCk7IH0gfVxuXG4gICNwcm9jZWVkX2FzX2d1ZXN0IHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG4gICAgaDMge1xuICAgICAgY29sb3I6ICR3aGl0ZTsgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBsZWFkZXIoMSk7XG4gICAgICBAZXh0ZW5kICVidXR0b247XG4gICAgICAuYnRuX2ljb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIhaW1wb3J0YW50OyB9IH0gfSB9XG5cbi5vcmRlcl90YWJsZSB7XG4gIHRmb290IHtcbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJG1pZC1ncmV5O1xuICAgICAgLmRvbmF0aW9uICYge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkcHVycGxlOyB9IH0gfVxuICAuZGVzY3JpcHRpb24ge1xuICAgIHdpZHRoOiA0NTBweDsgfVxuICAucXVhbnRpdHkge1xuICAgIHdpZHRoOiAxMDBweDsgfVxuICAucHJpY2Uge1xuICAgIHdpZHRoOiAxMDBweDsgfVxuICAubnVtIHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfSB9XG5cblxuI3NlY3VyaXR5X3VnYyB7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDIpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMik7XG4gIC51Z2Mge1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9XG5cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCAnYWxsJyApIHtcblxuICAubm9fdXNlcl9maWVsZHMge1xuICAgIGgyLm5vX3VzZXJfY2hlY2tvdXQge1xuICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7IH0gfVxuXG4gIC5zaW5nbGVfY29sdW1uIHtcbiAgICAuY2hlY2tvdXRfdGl0bGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCkqMS41OyB9IH1cblxuICAjcHJvY2VlZF9hc19ndWVzdCB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiAgI3NlY3VyaXR5X3VnYyB7XG4gICAgLnVnYyB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCkge1xuXG4gICNiYXNrZXRfdGFibGUsXG4gICNiYXNrZXRfc3VtbWFyeSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbiAgLmJhc2tldF9vcmRlcl92aWV3LFxuICAub3JkZXJfdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyI2Jhc2tldF9idXR0b25zLFxuICAgIHRyLmNvbnRpbnVlX3JvdyB7XG4gICAgICB0ZCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH0gfVxuXG4gIC5ub191c2VyX2ZpZWxkcyB7XG5cbiAgICBoMi5ub191c2VyX2NoZWNrb3V0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpKjMuNTsgfVxuXG4gICAgI2NoZWNrb3V0X2xvZ2luX2Zvcm0sXG4gICAgI2NoZWNrb3V0X3JlZ19mb3JtIHtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4gICAgI3Byb2NlZWRfYXNfZ3Vlc3Qge1xuICAgICAgaDMsXG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCkqMjsgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiBjb2x1bW4tc3BhbigyLjUsMCw2KTsgfSB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjc2VjdXJpdHlfdWdjIHtcbiAgICAudWdjIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDUsMCw2KTsgfSB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgLnNpbmdsZV9jb2x1bW4ge1xuICAgIC5jaGVja291dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGd1dHRlci1zcGFuKCk7IH0gfVxuXG4gICNjb250ZW50X21haW4ge1xuICAgIC5iYXNrZXQgJixcbiAgICAuY2hlY2tvdXQgJiB7XG4gICAgICAuaWNvbl9mbG93ZXIxIHtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHRvcDogLTYwcHg7IH0gfSB9XG5cblxuICAjYmFza2V0X3RhYmxlX3dyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBjb2x1bW4tc3BhbigxLDAsOSkgKyBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogY29sdW1uLXNwYW4oMSwwLDkpICsgZ3V0dGVyLXNwYW4oKTsgfVxuXG4gIC5ub191c2VyX2ZpZWxkcyB7XG4gICAgaDIubm9fdXNlcl9jaGVja291dCB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKS8yOyB9XG5cbiAgICAjY2hlY2tvdXRfbG9naW5fZm9ybSxcbiAgICAjY2hlY2tvdXRfcmVnX2Zvcm0ge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBmaWVsZHNldCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgLmZpZWxkIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgbGVnZW5kIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgIC5pbnB1dF9idG4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDMwMHB4OyB9XG4gICAgICAuYnJlYWtlciB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICBoZWlnaHQ6IDQxMHB4O1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuXG4gICAgI3Byb2NlZWRfYXNfZ3Vlc3Qge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjgwcHg7XG4gICAgICBoMyxcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH0gfSB9XG5cbiAgI3NlY3VyaXR5X3VnYyB7XG4gICAgLnVnYyB7XG4gICAgICB3aWR0aDogY29sdW1uLXNwYW4oNi41LDAsOSk7IH0gfSB9XG4iLCIvLyBDb2xvcnNcbi8vXG4vLyBDb2xvciBwYWxsZXRlIGZvciB1c2UgdGhyb3VnaG91dCB0aGUgc2l0ZVxuLy9cbi8vIENvbG9yIG5hbWVzIGdlbmVyYXRlZCBmcm9tOiBodHRwOi8vY2hpci5hZy9wcm9qZWN0cy9uYW1lLXRoYXQtY29sb3IvXG4vL1xuLy8gJGJsYWNrIC0gIzAwMFxuLy8gJHdoaXRlIC0gI2ZmZlxuLy8gJGNlcnVsZWFuIC0gIzAwYWNmMVxuLy8gJGNlcnVsZWFuMiAtICMwMDlmZTNcbi8vICRkdWxsLWxpbWUgLSAjMmNiZTRlXG4vLyAkZmlyZS1lbmdpbmUtcmVkIC0gI2NiMjQzMVxuLy8gJG1pbmUtc2hhZnQgLSAjM2IzYjNiXG4vLyAkcm9zZSAtICNlNjAwN2Vcbi8vICRsaWx5LXdoaXRlIC0gI2UzZjdmZlxuLy8gJG1pbnQtdHVsaXAgLSAjZDFlYWY2XG4vLyAkYXBwbGUgLSAjNDFhMzM1XG4vLyAkd2lsZC1zYW5kIC0gI2Y1ZjVmNVxuLy8gJGNocmlzdGluZSAtICNlYzY0MDhcbi8vICR0aHVuZGVyYmlyZCAtICNjZDE3MTlcbi8vICRhbHRvIC0gI2Q4ZDhkOFxuLy8gJGFmZmFpciAtICM4MTQ5OTdcbi8vICRsaWdodG5pbmcteWVsbG93IC0gI2ZmY2QyMVxuLy8gJGFsbHBvcnRzIC0gIzAwNzFhYlxuLy8gJHJlZCAtICNmODAwMDBcbi8vICRob2xseXdvb2RjZXJpc2UgLSAjYmMwMGIyXG4vLyAkY2hhbWJyYXkgLSAjM2I1OTk4XG4vLyAkcGljdG9uYmx1ZSAtICMzOGExZjNcbi8vICRkZWVwY2VydWxlYW4gLSAjMDA3N2I1XG4vLyAkZ3JheSAtICM4OTg5ODlcbi8vICRiYXktb2YtbWFueSAtICMyODM1ODNcbi8vICRsaXBzdGljayAtICNjNDAwNzZcbi8vICRzZWFuY2UgLSAjNzYyMjgyXG4vLyAkY29uY3JldGUgLSAjZjJmMmYyXG4vLyAkbGlwc3RpY2sgLSAjQzMwMDU1XG4vLyAkcmlvLWdyYW5kZSAtICNDQkQ0MDBcbi8vXG4vLyBTdHlsZWd1aWRlIHV0aWxpdGllcy5Db2xvcnNcblxuJGJsYWNrOiAjMDAwO1xuJHdoaXRlOiAjZmZmO1xuJGNlcnVsZWFuOiAjMDBhY2YxO1xuJGNlcnVsZWFuMjogIzAwOWZlMztcbiRkYXJrLXByaW1hcnk6ICMzNzAwQjM7XG4kZHVsbC1saW1lOiAjMmNiZTRlO1xuJGZpcmUtZW5naW5lLXJlZDogI2NiMjQzMTtcbiRtaW5lLXNoYWZ0OiAjM2IzYjNiO1xuJGRhcmstZ3JleTogIzNkM2QzZDtcbiRyb3NlOiAjZTYwMDdlO1xuJGxpbHktd2hpdGU6ICNlM2Y3ZmY7XG4kYXBwbGU6ICM0MWEzMzU7XG4kd2lsZC1zYW5kOiAjZjVmNWY1O1xuJGNocmlzdGluZTogI2VjNjQwODtcbiR0aHVuZGVyYmlyZDogI2NkMTcxOTtcbiRhbHRvOiAjZDhkOGQ4O1xuJGFmZmFpcjogIzgxNDk5NztcbiRsaWdodG5pbmcteWVsbG93OiAjZmZjZDIxO1xuJGFsbHBvcnRzOiAjMDA3MWFiO1xuJHJlZDogI2Y4MDAwMDtcbiRob2xseXdvb2RjZXJpc2U6ICNiYzAwYjI7XG4kY2hhbWJyYXk6ICMzYjU5OTg7XG4kcGljdG9uYmx1ZTogIzM4YTFmMztcbiRkZWVwY2VydWxlYW46ICMwMDc3YjU7XG4kZ3JheTogIzg5ODk4OTtcbiRtaW50LXR1bGlwOiAjZDFlYWY2O1xuJGJheS1vZi1tYW55OiAjMjgzNTgzO1xuJGxpcHN0aWNrOiAjYzQwMDc2O1xuJHNlYW5jZTogIzc2MjI4MjtcbiRjb25jcmV0ZTogI2YyZjJmMjtcbiRsaXBzdGljazogI0MzMDA1NTtcbiRyaW8tZ3JhbmRlOiAjY2JkNDAwO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbi8vIFZhbGlkYXRpb24gU2hvcnRjdXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbiRlcnJvcjogJGZpcmUtZW5naW5lLXJlZDtcbiRzdWNjZXNzOiAkZHVsbC1saW1lO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbi8vIEJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbiRicmVha3BvaW50czogKHNtYWxsOiA1NjhweCwgbWVkaXVtOiA3NjhweCwgbWxhcmdlOiAxMTQwcHgsIHhsYXJnZTogMTI4MHB4KTtcblxuJHNtYWxsOiA1NjhweDtcbiRtZWRpdW06IDc2OHB4O1xuJGxhcmdlOiAxMDI0cHg7XG4keGxhcmdlOiAxMjgwcHg7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xuLy8gQ29udGFpbmVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbiRjb250YWluZXJzOiAoc21hbGw6IDc1MHB4LCBtZWRpdW06IDEwMDBweCwgbGFyZ2U6IDExNDBweCwgeGxhcmdlOiAxMjUwcHgpO1xuJGNvbnRhaW5lci13aWR0aDogOTgwcHg7XG4kY29udGFpbmVyLXBhZGRpbmc6IDIwcHg7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xuLy8gR3JpZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXG4kZ3JpZC1ndXR0ZXI6IDIwcHg7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xuLy8gQmFzZSBGb250IFN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXG4kYmFzZS1jb2xvcjogJGJsYWNrO1xuJGJhc2UtZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRiYXNlLWZvbnQtc2l6ZTogMTZweDtcbiRiYXNlLWZvbnQtd2VpZ2h0OiBub3JtYWw7XG4kYmFzZS1sZXR0ZXItc3BhY2luZzogMDtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXG4vLyBIZWFkaW5nIEZvbnQgU3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbiRoZWFkaW5nLWZvbnQtZmFtaWx5OiAnSGF5c2VlZCBXMDAgUmVndWxhcicsIEdlb3JnaWEsIFRpbWVzLCBUaW1lcyBOZXcgUm9tYW4sIHNlcmlmO1xuJGhlYWRpbmctZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuJGhlYWRpbmctbGV0dGVyLXNwYWNpbmc6ICRiYXNlLWxldHRlci1zcGFjaW5nO1xuJGhlYWRpbmctbGluZS1oZWlnaHQ6IDEuNTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXG4vLyBBbmltYXRpb24gY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXG4kYW5pbWF0ZS1jbGFzczogJy5wYWdlOm5vdCgucGFnZS1lZGl0LW1vZGUpIC5hbmltYXRlJztcbiRwYWdlLWVkaXQ6ICcucGFnZTpub3QoLnBhZ2UtZWRpdC1tb2RlKSc7XG4iLCIvLyBDb252ZXJ0IHBpeGVscyB0byByZW1zXG4vLyBlZy4gZm9yIGEgcmVsYXRpb25hbCB2YWx1ZSBvZiAxMnB4IHdyaXRlIHJlbSgxMilcbi8vIEFzc3VtZXMgJGVtLWJhc2UgaXMgdGhlIGZvbnQtc2l6ZSBvZiA8aHRtbD5cblxuQGZ1bmN0aW9uIHJlbSgkcHh2YWwpIHtcbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcbiAgICAkcHh2YWw6IHN0cmlwLXVuaXRzKCRweHZhbCk7XG4gIH1cblxuICAkYmFzZTogJGVtLWJhc2U7XG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xuICB9XG4gIEByZXR1cm4gKCRweHZhbCAvICRiYXNlKSAqIDFyZW07XG59XG4iLCIuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA5MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTBweDsgfVxuXG4gICAgJl9faW50cm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDg1cHg7IH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDsgfVxuXG4gICAgICAgICAgICArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMycHg7IH0gfSB9XG5cbiAgICAmX19pdGVtID4gaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwNzA3MDc7IH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICAgIGNvbG9yOiAkcm9zZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwNzA3MDc7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAwOyB9XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9IH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyb3NlO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ2cHg7IH1cblxuICAgICAgICBzcGFuOmJlZm9yZSxcbiAgICAgICAgc3BhbjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDI1MG1zIGVhc2Utb3V0O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDsgfSB9XG5cblxuICAgICAgICBzcGFuOmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtOTBkZWcpOyB9IH1cblxuICAgICZfX2l0ZW0uaXMtYWN0aXZlICZfX2ljb24gc3Bhbjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7IH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB3aWxsLWNoYW5nZTogaGVpZ2h0O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMjUwbXMgZWFzZS1vdXQ7IH1cblxuICAgICZfX2l0ZW0uaXMtYWN0aXZlICZfX2NvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7IH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjZweDsgfSB9XG4iLCIvLyBmb290ZXJcbi8vXG4vLyBNYXJrdXA6IC4vZm9vdGVyLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgbGF5b3V0cy5mb290ZXJcblxuLmZvb3RlciB7XG4gICAgJHRoaXM6ICY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFsbHBvcnRzO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCBudWxsIC01MHB4IG51bGwpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWxscG9ydHM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA4MCUgODAlO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIC00MHB4IDQwcHggLTUwcHggcmdiYSgkYmxhY2ssIC4yNSk7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cblxuICAgICZfX2NvcHkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuICAgICZfX3JvdyB7XG4gICAgICAgICYtLW9yZGVyLTEge1xuICAgICAgICAgICAgb3JkZXI6IDE7IH1cblxuICAgICAgICAmLS1vcmRlci0yIHtcbiAgICAgICAgICAgIG9yZGVyOiAyOyB9IH1cblxuICAgICZfX25oLWxvZ28ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAmX19sb2dvcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiA0MzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXgtd2lkdGg6IDE0MHB4OyB9XG5cbiAgICAmX19zb2NpYWwtbmF2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4gICAgJl9fY29sIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAjeyR0aGlzfV9fbmF2IHtcbiAgICAgICAgICAgIG9yZGVyOiAxOyB9XG5cbiAgICAgICAgI3skdGhpc31fX2NvcHkge1xuICAgICAgICAgICAgb3JkZXI6IDI7IH0gfVxuXG4gICAgJl9fbmF2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbiAgICAmX19uYXYtaXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAmX19uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfSB9XG5cbiAgICAvLyBGaXggZm9yIElPUyBzaG93aW5nIHJlZ2lzdHJhdGlvbiBudW1iZXIgYXMgYSBsaW5rXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRtZWRpdW0pIHtcbiAgICAgICAgJl9fcm93IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgICAgICYtLW9yZGVyLTEge1xuICAgICAgICAgICAgICAgIG9yZGVyOiB1bnNldDsgfVxuXG4gICAgICAgICAgICAmLS1vcmRlci0yIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogdW5zZXQ7IH0gfVxuXG4gICAgICAgICZfX25oLWxvZ28ge1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwOXB4OyB9XG5cbiAgICAgICAgJl9fc29jaWFsLW5hdiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgICAgICAgJl9fbmF2LWl0ZW0ge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgI3skdGhpc31fX25hdi1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9IH0gfVxuXG4gICAgICAgICZfX25hdi1saW5rIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cblxuICAgICAgICAmX19mb290ZXItbG9nb3Mge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM4MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICAgICAmX19jb2wge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICN7JHRoaXN9X19jb3B5IHtcbiAgICAgICAgICAgICAgICBvcmRlcjogdW5zZXQ7IH1cblxuICAgICAgICAgICAgI3skdGhpc31fX25hdiB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IHVuc2V0OyB9IH1cblxuICAgICAgICAmX19uYXYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9IH1cbiIsIi8vIGZpZWxkIGxhYmVsXG4vL1xuLy8gLnBhcnNsZXktZXJyb3IgLSBFcnJvciBzdHlsaW5nXG4vL1xuLy8gTWFya3VwOiAuL2ZpZWxkLWxhYmVsLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMuZm9ybS5maWVsZCBsYWJlbFxuXG4uZmllbGQtbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcblxuICAgICYucGFyc2xleS1lcnJvciB7XG4gICAgICAgIGNvbG9yOiAkZXJyb3I7IH0gfVxuXG4uY29udHJvbC1sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiByZW0oMTIpOyB9XG4iLCIvLyBmdWxsIGZvcm1cbi8vXG4vLyBGdWxsIGZvcm0gdXNpbmcgYWxsIHRoZSBmb3JtIGVsZW1lbnRzLCBpbmNsdWRpbmcgcGFyc2xleSB2YWxpZGF0aW9uLlxuLy9cbi8vIE1hcmt1cDogLi9mb3JtLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMuZm9ybS5mdWxsIGZvcm1cblxuLmZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAmLS1zcGFjZWQtdG9wIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41ZW07IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG5cbiAgICAmLS1kYXRlLXBpY2tlciB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICR0aGlzOiAmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNlcnVsZWFuO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDlweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkbWluZS1zaGFmdCwgLjMpOyB9XG5cbiAgICAgICAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRtaW5lLXNoYWZ0LCAuMyk7IH1cblxuICAgICAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRtaW5lLXNoYWZ0LCAuMyk7IH1cblxuICAgICAgICAgICAgJi5wYXJzbGV5LWVycm9yIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkZXJyb3I7IH0gfSB9IH1cbi5mb3JtLXJhZGlvIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLnBhcnNsZXktZXJyb3JzLWxpc3Qge1xuICAgICAgICBvcmRlcjogNTA7IH0gfVxuLnJhZGlvLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogNXB4OyB9XG5cbiIsIi8vIGhyXG4vL1xuLy8gTWFya3VwOiAuL2hyLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMuaHJcblxuLmhyIHtcbiAgICAkdGhpczogJjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0bztcbiAgICBib3JkZXI6IDA7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiIsIi8vIGlucHV0IC0gUGFzc3dvcmRcbi8vXG4vLyBNYXJrdXA6IC4vaW5wdXQtcGFzc3dvcmQuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBlbGVtZW50cy5mb3JtLmlucHV0IHBhc3N3b3JkXG5cbi5pbnB1dC1wYXNzd29yZCB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmIH4gaW5wdXQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbiAgICAmX190b2dnbGUge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMjVweCAxMHB4IG51bGwgbnVsbCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgICAgICYtLWhpZGUtcGFzc3dvcmQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9IH1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciBzZXR0aW5nIGFuIGVsZW1lbnTigJlzIHBvc2l0aW9uLiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXG4vLy9cbi8vLyBAcGFyYW0ge1Bvc2l0aW9ufSAkcG9zaXRpb24gW3JlbGF0aXZlXVxuLy8vICAgQSBDU1MgcG9zaXRpb24gdmFsdWVcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGNvb3JkaW5hdGVzIFtudWxsIG51bGwgbnVsbCBudWxsXVxuLy8vICAgTGlzdCBvZiB2YWx1ZXMgdGhhdCBjb3JyZXNwb25kIHRvIHRoZSA0LXZhbHVlIHN5bnRheCBmb3IgdGhlIGVkZ2VzIG9mIGEgYm94XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBsZWZ0OiAxMGVtO1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHRvcDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gaXMtbGVuZ3RoXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSB1bnBhY2tcblxuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbjogcmVsYXRpdmUsICRjb29yZGluYXRlczogbnVsbCBudWxsIG51bGwgbnVsbCkge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09IGxpc3Qge1xuICAgICRjb29yZGluYXRlczogJHBvc2l0aW9uO1xuICAgICRwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAkY29vcmRpbmF0ZXM6IHVucGFjaygkY29vcmRpbmF0ZXMpO1xuXG4gICRvZmZzZXRzOiAoXG4gICAgdG9wOiAgICBudGgoJGNvb3JkaW5hdGVzLCAxKSxcbiAgICByaWdodDogIG50aCgkY29vcmRpbmF0ZXMsIDIpLFxuICAgIGJvdHRvbTogbnRoKCRjb29yZGluYXRlcywgMyksXG4gICAgbGVmdDogICBudGgoJGNvb3JkaW5hdGVzLCA0KVxuICApO1xuXG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG5cbiAgQGVhY2ggJG9mZnNldCwgJHZhbHVlIGluICRvZmZzZXRzIHtcbiAgICBAaWYgaXMtbGVuZ3RoKCR2YWx1ZSkge1xuICAgICAgI3skb2Zmc2V0fTogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gaW5wdXQtdG9nZ2xlXG4vL1xuLy8gTWFya3VwOiAuL2lucHV0LXRvZ2dsZS5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGVsZW1lbnRzLmlucHV0LXRvZ2dsZVxuXG4uaW5wdXQtdG9nZ2xlIHtcbiAgICAkdGhpczogJjtcbiAgICBib3JkZXItcmFkaXVzOiAxMGVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBjb250ZW50OiAnWWVzJztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGVmdDogMDsgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbG9yOiAkY2VydWxlYW4yO1xuICAgICAgICBjb250ZW50OiAnTm8nO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICByaWdodDogMDsgfVxuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgbnVsbCBudWxsIG51bGwpO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgei1pbmRleDogMDsgfVxuXG4gICAgJl9faW5wdXQge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCAwIDAgMCk7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgJjpjaGVja2VkIH4gLmlucHV0LXRvZ2dsZV9faGFuZGxlIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IHJnYmEoJGJsYWNrLCAuMTUpLCBpbnNldCAwIDAgMCAxcHggJGNlcnVsZWFuMjtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggcmdiYSgkYmxhY2ssIC4yKSwgaW5zZXQgMCAwIDAgMXB4ICRjZXJ1bGVhbjIsIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjEpLCAwIDZweCAxMnB4IHJnYmEoJGJsYWNrLCAuMSk7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgKyA3cHgpOyB9IH0gfVxuXG4gICAgJl9faGFuZGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRjZXJ1bGVhbjIsICRjZXJ1bGVhbjIpO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY2VydWxlYW4yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMGVtO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCByZ2JhKCRjZXJ1bGVhbjIsIC4xNSksIGluc2V0IDAgMCAwIDFweCByZ2JhKCRjZXJ1bGVhbjIsIC4xNSksIGluc2V0IDAgMXB4IDJweCByZ2JhKCRjZXJ1bGVhbjIsIC4xNSksIGluc2V0IDQ0cHggNDRweCAkd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZTtcbiAgICAgICAgd2lkdGg6IDY4cHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDZweCBudWxsIG51bGwgOHB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjZXJ1bGVhbjI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMGVtO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZTtcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgei1pbmRleDogMTsgfSB9IH1cbiIsIi8vIHVuY2xhc3NlZCB0eXBvZ3JhcGh5XG4vL1xuLy8gRGVmYXVsdCB0eXBvZ3JhcGh5IHN0eWxlcywgYXBwbGllZCB0byB0aGUgYm9keVxuLy9cbi8vIE1hcmt1cDpcbi8vIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNpY2luZyBlbGl0LiBBbWV0IGxhYm9yZSwgcXVvIG9kaXQgZGViaXRpcyBuYXR1cyBzaXQgb21uaXMgYWxpcXVhbSBlYXJ1bSwgcGVyc3BpY2lhdGlzIHBvc3NpbXVzIVxuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMudHlwb2dyYXBoeS51bmNsYXNzZWRcblxuYm9keSB7XG4gICAgY29sb3I6ICRtaW5lLXNoYWZ0O1xuICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGJhc2UtZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0OyB9XG5cbi8vIGhlYWRpbmdzXG4vL1xuLy8gTi5CLiBUaGUgY2xhc3MgYC5oZWFkaW5nYCBkb2VzIG5vdCBleGlzdCwgcGxlYXNlIHVzZSBvbmUgb2YgdGhlIG1vZGlmaWVycyBiZWxvd1xuLy9cbi8vIC5oZWFkaW5nLS0xIC0gSGVhZGluZyAxXG4vLyAuaGVhZGluZy0tMiAtIEhlYWRpbmcgMlxuLy8gLmhlYWRpbmctLTMgLSBIZWFkaW5nIDNcbi8vIC5oZWFkaW5nLS00IC0gSGVhZGluZyA0XG4vLyAuaGVhZGluZy0tc2Vjb25kYXJ5IC0gSGVhZGluZyBzZWNvbmRhcnlcbi8vIC5oZWFkaW5nLS1wdXJwbGUgLSBIZWFkaW5nIHB1cnBsZVxuLy8gLmhlYWRpbmctLXRodW5kZXJiaXJkIC0gSGVhZGluZyB0aHVuZGVyYmlyZFxuLy8gLmhlYWRpbmctLW9yYW5nZSAtIEhlYWRpbmcgb3JhbmdlXG4vLyAuaGVhZGluZy0tbGlnaHQgLSBIZWFkaW5nIGxpZ2h0XG4vL1xuLy8gTWFya3VwOiA8aDEgY2xhc3M9XCJ7e21vZGlmaWVyX2NsYXNzfX1cIj5IZWFkaW5nIFRleHQ8L2gxPlxuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMudHlwb2dyYXBoeS5oZWFkaW5nc1xuXG4vLyBoZWFkaW5ncyBkZWNvcmF0aW9uXG4vL1xuLy8gLmhlYWRpbmctLXNlY29uZGFyeSAtIEhlYWRpbmcgc2Vjb25kYXJ5XG4vLyAuaGVhZGluZy0tcHVycGxlIC0gSGVhZGluZyBwdXJwbGVcbi8vIC5oZWFkaW5nLS1kZWVwY2VydWxlYW4gLSBIZWFkaW5nIGRlZXBjZXJ1bGVhblxuLy8gLmhlYWRpbmctLXRodW5kZXJiaXJkIC0gSGVhZGluZyB0aHVuZGVyYmlyZFxuLy8gLmhlYWRpbmctLW9yYW5nZSAtIEhlYWRpbmcgb3JhbmdlXG4vLyAuaGVhZGluZy0tcm9zZSAtIEhlYWRpbmcgcm9zZVxuLy9cbi8vIE1hcmt1cDogPGgxIGNsYXNzPVwiaGVhZGluZy0taGFzLWljb24ge3ttb2RpZmllcl9jbGFzc319XCI+PG9iamVjdCBkYXRhPVwiL2FwcGxpY2F0aW9uL3RoZW1lcy9yYXduZXQvYXBwL2ltYWdlcy9pY29ucy9mbG93ZXIuc3ZnXCIgdHlwZT1cImltYWdlL3N2Zyt4bWxcIiBjbGFzcz1cImhlYWRpbmdfX2ljb25cIj48L29iamVjdD5IZWFkaW5nIFRleHQ8L2gxPlxuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMudHlwb2dyYXBoeS5oZWFkaW5ncyBkZWNvcmF0aW9uXG5cbi8vIFRPRE86IFJlbW92ZSB0aGVzZSBsaW5lcyB3aGVuIGVsZW1lbnRzIGFyZSBjb252ZXJ0ZWRcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gICAgY29sb3I6ICRyb3NlO1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxuaDEsLmgxIHtcbiAgICBmb250LXNpemU6IDIuNjY2NjdlbTsgfVxuXG5oMiB7XG4gICAgZm9udC1zaXplOiAxLjY2NjY3ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG5cbmgzIHtcbiAgICBmb250LXNpemU6IDEuMzMzMzNlbTsgfVxuXG5oNCB7XG4gICAgZm9udC1zaXplOiAxLjIyMjIyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzYzNjRlbTsgfVxuXG5oNSxcbmg2IHtcbiAgICBmb250LXNpemU6IDFlbTsgfVxuXG4laGVhZGluZyB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGluZy1mb250LXdlaWdodDtcbiAgICBsZXR0ZXItc3BhY2luZzogJGhlYWRpbmctbGV0dGVyLXNwYWNpbmc7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLWxpbmUtaGVpZ2h0O1xuXG4gICAgJi0tMSB7XG4gICAgICAgIEBleHRlbmQgJWhlYWRpbmc7IH1cblxuICAgICYtLTIge1xuICAgICAgICBAZXh0ZW5kICVoZWFkaW5nOyB9XG5cbiAgICAmLS0zIHtcbiAgICAgICAgQGV4dGVuZCAlaGVhZGluZzsgfVxuXG4gICAgJi0tNCB7XG4gICAgICAgIEBleHRlbmQgJWhlYWRpbmc7IH0gfVxuXG4uaGVhZGluZyB7XG4gICAgJHRoaXM6ICY7XG5cbiAgICAmLS0xIHtcbiAgICAgICAgQGV4dGVuZCAlaGVhZGluZy0tMTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oNDIpO1xuXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oNTApOyB9IH1cblxuICAgICYtLTIge1xuICAgICAgICBAZXh0ZW5kICVoZWFkaW5nLS0yO1xuICAgICAgICBmb250LXNpemU6IHJlbSgzNik7IH1cblxuICAgICYtLTMge1xuICAgICAgICBAZXh0ZW5kICVoZWFkaW5nLS0zOyB9XG5cbiAgICAmLS00IHtcbiAgICAgICAgQGV4dGVuZCAlaGVhZGluZy0tNDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpOyB9XG5cbiAgICAmLS1zZWNvbmRhcnksXG4gICAgJi0tYmx1ZSB7XG4gICAgICAgIGNvbG9yOiAkY2VydWxlYW47XG5cbiAgICAgICAgLmhlYWRpbmdfX2ljb24ge1xuICAgICAgICAgICAgZmlsbDogJGNlcnVsZWFuOyB9IH1cblxuICAgICYtLWRlZXBjZXJ1bGVhbiB7XG4gICAgICAgIGNvbG9yOiAkZGVlcGNlcnVsZWFuO1xuXG4gICAgICAgIC5oZWFkaW5nX19pY29uIHtcbiAgICAgICAgICAgIGZpbGw6ICRkZWVwY2VydWxlYW47IH0gfVxuXG4gICAgJi0tcHVycGxlIHtcbiAgICAgICAgY29sb3I6ICRhZmZhaXI7XG5cbiAgICAgICAgLmhlYWRpbmdfX2ljb24ge1xuICAgICAgICAgICAgZmlsbDogJGFmZmFpcjsgfSB9XG5cbiAgICAmLS1vcmFuZ2Uge1xuICAgICAgICBjb2xvcjogJGNocmlzdGluZTtcblxuICAgICAgICAuaGVhZGluZ19faWNvbiB7XG4gICAgICAgICAgICBmaWxsOiAkY2hyaXN0aW5lOyB9IH1cblxuICAgICYtLXRodW5kZXJiaXJkLFxuICAgICYtLXJlZCB7XG4gICAgICAgIGNvbG9yOiAkdGh1bmRlcmJpcmQ7XG5cbiAgICAgICAgLmhlYWRpbmdfX2ljb24ge1xuICAgICAgICAgICAgZmlsbDogJHRodW5kZXJiaXJkOyB9IH1cblxuICAgICYtLXJvc2Uge1xuICAgICAgICBjb2xvcjogJHJvc2U7XG5cbiAgICAgICAgLmhlYWRpbmdfX2ljb24ge1xuICAgICAgICAgICAgZmlsbDogJHJvc2U7IH0gfVxuXG4gICAgJi0tcmlvLWdyYW5kZSB7XG4gICAgICAgIGNvbG9yOiAkcmlvLWdyYW5kZTsgfVxuXG4gICAgJi0tbGlnaHQsXG4gICAgJi0td2hpdGUge1xuICAgICAgICBjb2xvcjogJHdoaXRlOyB9XG5cbiAgICAmLS1oYXMtaWNvbiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgI3skdGhpc31fX2ljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB3aWR0aDogNjVweDsgfSB9IH1cblxuLy8gVE9ETzogUmVtb3ZlIHRoZXNlIDIgbGluZXMgd2hlbiBlbGVtZW50cyBhcmUgcmVwbGFjZWRcbi5wYWdlX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTsgfVxuXG4vLyBsaW5rc1xuLy9cbi8vIC5hbmNob3ItLWhhcy1hcnJvdyAtIEFuIGFuY2hvciBsaW5rIHdpdGggYW4gYXJyb3dcbi8vXG4vLyBNYXJrdXA6IC4vYW5jaG9yLWxpbmsuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBlbGVtZW50cy50eXBvZ3JhcGh5LmxpbmtzXG5cbmEsXG4uYW5jaG9yIHtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjsgfVxuXG4gICAgJi0taGFzLWFycm93IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfSB9XG5cbi8vIHBhcmFncmFwaFxuLy9cbi8vIE1hcmt1cDogPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2ljaW5nIGVsaXQuIEFtZXQgbGFib3JlLCBxdW8gb2RpdCBkZWJpdGlzIG5hdHVzIHNpdCBvbW5pcyBhbGlxdWFtIGVhcnVtLCBwZXJzcGljaWF0aXMgcG9zc2ltdXMhPC9wPlxuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMudHlwb2dyYXBoeS5wYXJhZ3JhcGhcblxucCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cblxuLy8gc3Ryb25nL2JvbGRcbi8vXG4vLyBNYXJrdXA6IDxwPjxzdHJvbmc+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L3N0cm9uZz4sIGNvbnNlY3RldHVyIGFkaXBpc2ljaW5nIGVsaXQuIDxiPkFtZXQgbGFib3JlPC9iPiwgcXVvIG9kaXQgZGViaXRpcyBuYXR1cyBzaXQgb21uaXMgYWxpcXVhbSBlYXJ1bSwgcGVyc3BpY2lhdGlzIHBvc3NpbXVzITwvcD5cbi8vXG4vLyBTdHlsZWd1aWRlIGVsZW1lbnRzLnR5cG9ncmFwaHkuc3Ryb25nL2JvbGRcblxuc3Ryb25nLFxuYiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4vLyBlbS9pXG4vL1xuLy8gTWFya3VwOiA8cD48ZW0+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2VtPiwgY29uc2VjdGV0dXIgYWRpcGlzaWNpbmcgZWxpdC4gPGk+QW1ldCBsYWJvcmU8L2k+LCBxdW8gb2RpdCBkZWJpdGlzIG5hdHVzIHNpdCBvbW5pcyBhbGlxdWFtIGVhcnVtLCBwZXJzcGljaWF0aXMgcG9zc2ltdXMhPC9wPlxuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMudHlwb2dyYXBoeS5lbS9pXG5cbmVtLFxuaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi50ZXh0LXNtYWxsIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG4udGV4dCB7XG4gICAgJi0tbGlnaHQge1xuICAgICAgICBjb2xvcjogJHdoaXRlOyB9XG5cbiAgICAmLS1sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbi8vIFJlc2V0cyBhIGJ1dHRvbiB0byBhIHRleHQgbGlua1xuLnRleHQtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgaGVpZ2h0OiA3cHg7XG5cbiAgICAgICAgJi0tcm9zZSB7XG4gICAgICAgICAgICBmaWxsOiAkcm9zZTsgfVxuXG4gICAgICAgICYtLWRlZXBjZXJ1bGVhbiB7XG4gICAgICAgICAgICBmaWxsOiAkZGVlcGNlcnVsZWFuOyB9XG5cbiAgICAgICAgJi0tY2VydWxlYW4yIHtcbiAgICAgICAgICAgIGZpbGw6ICRjZXJ1bGVhbjI7IH1cblxuICAgICAgICAmLS1wdXJwbGUge1xuICAgICAgICAgICAgZmlsbDogJGFmZmFpcjsgfVxuXG4gICAgICAgICYtLW9yYW5nZSB7XG4gICAgICAgICAgICBmaWxsOiAkY2hyaXN0aW5lOyB9XG5cbiAgICAgICAgJi0tdGh1bmRlcmJpcmQge1xuICAgICAgICAgICAgZmlsbDogJHRodW5kZXJiaXJkOyB9IH1cblxuICAgICYtLWRlZXBjZXJ1bGVhbiB7XG4gICAgICAgIGNvbG9yOiAkZGVlcGNlcnVsZWFuOyB9XG5cbiAgICAmLS1jZXJ1bGVhbjIge1xuICAgICAgICBjb2xvcjogJGNlcnVsZWFuMjsgfVxuXG4gICAgJi0tcHVycGxlIHtcbiAgICAgICAgY29sb3I6ICRhZmZhaXI7IH1cblxuICAgICYtLW9yYW5nZSB7XG4gICAgICAgIGNvbG9yOiAkY2hyaXN0aW5lOyB9XG5cbiAgICAmLS10aHVuZGVyYmlyZCB7XG4gICAgICAgIGNvbG9yOiAkdGh1bmRlcmJpcmQ7IH1cblxuICAgICYtLXJvc2Uge1xuICAgICAgICBjb2xvcjogJHJvc2U7IH1cblxuICAgICYtLXdoaXRlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTsgfVxuXG4gICAgJi0tc21hbGwge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7IH1cblxuICAgICYtLWxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpOyB9XG5cbiAgICAmLS1oYXMtaWNvbiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4vLyBTY3JlZW4gUmVhZGVyIE9ubHlcbi8vXG4vLyBBcHBseSB0aGlzIGNsYXNzIHdoZW4geW91IHJlcXVpcmUgc29tZXRoaW5nIGZvciBzY3JlZW4gcmVhZGVycyBidXQgZG8gbm90IHdhbnQgaXQgdmlzaWJsZSBvbiB0aGUgcGFnZVxuLy9cbi8vIE1hcmt1cDpcbi8vIDxoMSBjbGFzcz1cInNyLW9ubHlcIj5zY3JlZW4gcmVhZGVyIG9ubHk8L2gxPlxuLy9cbi8vIFN0eWxlZ3VpZGUgdXRpbGl0aWVzLnR5cG9ncmFwaHkuc2NyZWVuIHJlYWRlciBvbmx5XG4uc3Itb25seSB7XG4gICAgQGluY2x1ZGUgc2l6ZSgxcHgpO1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4udGhhbmsteW91LXRleHQge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbi50aGFuay15b3UtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfVxuIiwiLy8gaW5wdXQgdXBsb2FkXG4vL1xuLy8gTWFya3VwOiAuL2lucHV0LXVwbG9hZC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGVsZW1lbnRzLmZvcm0uaW5wdXQgdXBsb2FkXG5cbi5pbnB1dC11cGxvYWQge1xuICAgICR0aGlzOiAmO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgICN7JHRoaXN9X19sYWJlbCxcbiAgICAgICAgI3skdGhpc31fX2xhYmVsOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjZXJ1bGVhbjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkICRtaW5lLXNoYWZ0O1xuICAgICAgICAgICAgb3V0bGluZTogLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yIGF1dG8gNXB4OyB9IH1cblxuICAgICZfX2lucHV0IHtcbiAgICAgICAgaGVpZ2h0OiAuMXB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAuMXB4O1xuICAgICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgICAmLnBhcnNsZXktZXJyb3Ige1xuICAgICAgICAgICAgJiArICN7JHRoaXN9X19sYWJlbCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRlcnJvcjsgfSB9IH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY2VydWxlYW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gICAgICAgIGNvbG9yOiAkY2VydWxlYW47XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICAmICoge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH0gfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4gICAgJl9faW5mb3JtYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICYtLWFjdGl2ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuICAgICZfX25hbWUge1xuICAgICAgICBjb2xvcjogJG1pbmUtc2hhZnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgb3BhY2l0eTogLjg7IH1cblxuICAgICZfX3NpemUge1xuICAgICAgICBjb2xvcjogJG1pbmUtc2hhZnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgb3BhY2l0eTogLjg7IH1cblxuICAgICZfX3JlbW92ZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiIsIi8vIHRleHRhcmVhXG4vL1xuLy8gLnBhcnNsZXktZXJyb3IgLSBFcnJvciBzdHlsaW5nXG4vL1xuLy8gTWFya3VwOiAuL3RleHRhcmVhLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMuZm9ybS50ZXh0YXJlYVxuXG4udGV4dGFyZWEge1xuICAgICR0aGlzOiAmO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY2VydWxlYW47XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgcGFkZGluZzogMTFweCA5cHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoJG1pbmUtc2hhZnQsIC4zKTsgfVxuXG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCRtaW5lLXNoYWZ0LCAuMyk7IH1cblxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoJG1pbmUtc2hhZnQsIC4zKTsgfVxuXG4gICAgJi5wYXJzbGV5LWVycm9yIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGVycm9yOyB9IH1cbiIsIi5wYXJzbGV5LWVycm9ycy1saXN0IHtcbiAgICBjb2xvcjogJGVycm9yO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTsgfVxuIiwiLy8gdGFibGVcbi8vXG4vLyBNYXJrdXA6IC4vdGFibGUuaGJzXG4vL1xuLy8gYmFja2dyb3VuZDogI2UzZjdmZlxuLy9cbi8vIFN0eWxlZ3VpZGUgZWxlbWVudHMudGFibGVcblxuLnRhYmxlIHtcbiAgICAkdGhpczogJjtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweCAzcHggMDtcblxuICAgICAgICAmLm5vLXdyYXAge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfSB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCRtaW5lLXNoYWZ0LCAuNik7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuXG4gICAgdGZvb3Qge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGFsdG87XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7IH0gfSB9XG4iLCIjZXZlbnQtc3R5bGluZyB7XG4gICAgLmV2ZW50cyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3NXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbHktd2hpdGU7XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICRyb3NlO1xuXG4gICAgICAgICAgICArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOTBweDsgfSB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDUwcHg7IH0gfSB9XG5cbiAgICAgICAgJl9fbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTtcbiAgICAgICAgICAgIGdhcDogNTVweCA1MHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7IH1cblxuICAgICAgICAgICAgKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMnB4OyB9IH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMTYpOyB9XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH0gfVxuXG4gICAgICAgICZfX2ltYWdlLXdyYXAge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTgyIC8gMzE2ICogMTAwJTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzIxIC8gNTU4ICogMTAwJTsgfSB9IH1cblxuICAgICAgICAmX190YWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFwcGxlO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyM3B4O1xuICAgICAgICAgICAgcGFkZGluZzogNnB4IDI2cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTFweCA0MHB4OyB9IH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nOiA0NHB4IDE1cHggMTVweDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUycHggMzBweCAzMHB4OyB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJvc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4OyB9XG5cbiAgICAgICAgICAgICAgICArICoge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxM3B4OyB9IH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9IH1cblxuICAgICAgICAmX19kYXRlLFxuICAgICAgICAmX19sb2NhdGlvbiB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1mYW1pbHk7IH1cblxuICAgICAgICAmX19kYXRlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcm9zZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuXG4gICAgICAgICAgICArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG4gICAgICAgICZfX2xvY2F0aW9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGNvbG9yOiAkbWluZS1zaGFmdDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG5cbiAgICAgICAgICAgICsgKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG5cbiAgICAgICAgJl9fcHJpY2Uge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkcm9zZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7IH1cblxuICAgICAgICAgICAgKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9IH0gfSB9XG4iLCIuYy1mZWF0dXJlZC1ldmVudCB7XG4gICAgbWFyZ2luLXRvcDogNy41dmg7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzhweDsgfVxuXG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggMCByZ2JhKDAsMCwwLC4xMyk7XG4gICAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCA0cHggMTZweCAwcHggI0FGQzhENjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHggMTZweCAxNnB4IDE2cHg7IH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG91dGxpbmU6IHZhcigtLVByaW1hcnktRGVmYXVsdCwgIzAwQUNGMSkgc29saWQgMnB4O1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDRweDsgfSB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweCAwcHggMHB4IDE2cHg7XG4gICAgICAgIHdpZHRoOiAzNjZweDtcbiAgICAgICAgaGVpZ2h0OiAzMjFweDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweCAxNnB4IDBweCAwcHg7IH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweCAwcHggMHB4IDE2cHg7XG4gICAgICAgICAgICB3aWR0aDogMzY2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMyMXB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHggMTZweCAwcHggMHB4OyB9IH0gfVxuXG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggMzBweDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiB0b3A7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDE2cHggMTZweCAwcHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDE2cHggMTZweCAwOyB9XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDE2cHggMTZweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDIwcHg7IH0gfVxuXG5cbiAgICAmX190YWdsaW5lIHtcbiAgICAgICAgY29sb3I6IHZhcigtLVNlY29uZGFyeS1EZWZhdWx0LCAjRTYwMDdFKTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOyAvKiAyMXB4ICovO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC45OHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG5cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLVByaW1hcnktRGVmYXVsdCwgIzAwQUNGMSk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkhheXNlZWQgVzAwIFJlZ3VsYXJcIiwgR2VvcmdpYSwgVGltZXMsIFRpbWVzIE5ldyBSb21hbiwgc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMzhweDsgLyogMTA1LjU1NiUgKi87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cblxuXG4gICAgJl9fYm9keSB7XG4gICAgICAgIGNvbG9yOiAjM0IzQjNCO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7IC8qIDI3cHggKi87IH1cblxuXG5cbiAgICAmX19tZXRhLWRhdGEge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICMzQjNCM0I7XG4gICAgICAgICAgICAvKiBCb2R5IG1lZGl1bSAqL1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4OyAvKiAxNjIuNSUgKi87IH0gfSB9XG5cblxuXG4uYy1mZWF0dXJlZC1ldmVudF9fZGl2aWRlciB7XG4gICAgYmFja2dyb3VuZDogI0U2MDA3RTtcbiAgICBib3JkZXItY29sb3I6ICNFNjAwN0U7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRTYwMDdFO1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7IH1cblxuLmV2ZW50cy1maWx0ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuY2xlYXItYWxsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjlweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4OyB9XG5cbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICAgIHdpZHRoOiAxNnJlbTsgfSB9XG5cbi5wYWdlLXR5cGUtZXZlbnRzIHtcbiAgICAuc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbiAgICAuc2VjdGlvbi0tb3ZlcmxhcDpiZWZvcmUge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4OyB9XG5cbiAgICAuc2VjdGlvbi5zZWN0aW9uLS1vdmVybGFwIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH0gfVxuXG4ubm8tcmVzdWx0cyB7XG4gICAgcGFkZGluZzogNTBweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gU2V0cyB0aGUgYHdpZHRoYCBhbmQgYGhlaWdodGAgb2YgdGhlIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaXplXG4vLy8gICBBIGxpc3Qgb2YgYXQgbW9zdCAyIHNpemUgdmFsdWVzLlxuLy8vXG4vLy8gICBJZiB0aGVyZSBpcyBvbmx5IGEgc2luZ2xlIHZhbHVlIGluIGAkc2l6ZWAgaXQgaXMgdXNlZCBmb3IgYm90aCB3aWR0aCBhbmQgaGVpZ2h0LiBBbGwgdW5pdHMgYXJlIHN1cHBvcnRlZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKDJlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5zZWNvbmQtZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHNpemUoYXV0byAxMGVtKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5maXJzdC1lbGVtZW50IHtcbi8vLyAgICAgd2lkdGg6IDJlbTtcbi8vLyAgICAgaGVpZ2h0OiAyZW07XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5zZWNvbmQtZWxlbWVudCB7XG4vLy8gICAgIHdpZHRoOiBhdXRvO1xuLy8vICAgICBoZWlnaHQ6IDEwZW07XG4vLy8gICB9XG4vLy9cbi8vLyBAdG9kbyBSZWZhY3RvciBpbiA1LjAuMCB0byB1c2UgYSBjb21tYS1zZXBhcmF0ZWQgYXJndW1lbnRcblxuQG1peGluIHNpemUoJHZhbHVlKSB7XG4gICR3aWR0aDogbnRoKCR2YWx1ZSwgMSk7XG4gICRoZWlnaHQ6ICR3aWR0aDtcblxuICBAaWYgbGVuZ3RoKCR2YWx1ZSkgPiAxIHtcbiAgICAkaGVpZ2h0OiBudGgoJHZhbHVlLCAyKTtcbiAgfVxuXG4gIEBpZiBpcy1zaXplKCRoZWlnaHQpIHtcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiYCN7JGhlaWdodH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkaGVpZ2h0YCBwYXJhbWV0ZXIgaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcbiAgfVxuXG4gIEBpZiBpcy1zaXplKCR3aWR0aCkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiYCN7JHdpZHRofWAgaXMgbm90IGEgdmFsaWQgbGVuZ3RoIGZvciB0aGUgYCR3aWR0aGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIERpcmVjdGlvbmFsLXByb3BlcnR5IG1peGlucyBhcmUgc2hvcnRoYW5kcyBmb3Igd3JpdGluZyBwcm9wZXJ0aWVzIGxpa2UgdGhlIGZvbGxvd2luZ1xuLy8vXG4vLy8gQGlnbm9yZSBZb3UgY2FuIGFsc28gdXNlIGBmYWxzZWAgaW5zdGVhZCBvZiBgbnVsbGAuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICR2YWxzXG4vLy8gICBMaXN0IG9mIGRpcmVjdGlvbmFsIHZhbHVlc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1zdHlsZShkb3R0ZWQgbnVsbCk7XG4vLy8gICAgIEBpbmNsdWRlIG1hcmdpbihudWxsIDAgMTBweCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdHRlZDtcbi8vLyAgICAgYm9yZGVyLXRvcC1zdHlsZTogZG90dGVkO1xuLy8vICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuLy8vICAgICBtYXJnaW4tbGVmdDogMDtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWlucy1mYWxzeVxuLy8vXG4vLy8gQHJldHVybiB7TGlzdH1cblxuQGZ1bmN0aW9uIGNvbGxhcHNlLWRpcmVjdGlvbmFscygkdmFscykge1xuICAkb3V0cHV0OiBudWxsO1xuXG4gICRhOiBudGgoJHZhbHMsIDEpO1xuICAkYjogaWYobGVuZ3RoKCR2YWxzKSA8IDIsICRhLCBudGgoJHZhbHMsIDIpKTtcbiAgJGM6IGlmKGxlbmd0aCgkdmFscykgPCAzLCAkYSwgbnRoKCR2YWxzLCAzKSk7XG4gICRkOiBpZihsZW5ndGgoJHZhbHMpIDwgMiwgJGEsIG50aCgkdmFscywgaWYobGVuZ3RoKCR2YWxzKSA8IDQsIDIsIDQpKSk7XG5cbiAgQGlmICRhID09IDAgeyAkYTogMDsgfVxuICBAaWYgJGIgPT0gMCB7ICRiOiAwOyB9XG4gIEBpZiAkYyA9PSAwIHsgJGM6IDA7IH1cbiAgQGlmICRkID09IDAgeyAkZDogMDsgfVxuXG4gIEBpZiAkYSA9PSAkYiBhbmQgJGEgPT0gJGMgYW5kICRhID09ICRkIHsgJG91dHB1dDogJGE7ICAgICAgICAgIH1cbiAgQGVsc2UgaWYgJGEgPT0gJGMgYW5kICRiID09ICRkICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYjsgICAgICAgfVxuICBAZWxzZSBpZiAkYiA9PSAkZCAgICAgICAgICAgICAgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiICRjOyAgICB9XG4gIEBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgJG91dHB1dDogJGEgJGIgJGMgJGQ7IH1cblxuICBAcmV0dXJuICRvdXRwdXQ7XG59XG5cbi8vLyBPdXRwdXQgZGlyZWN0aW9uYWwgcHJvcGVydGllcywgZm9yIGluc3RhbmNlIGBtYXJnaW5gLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByZVxuLy8vICAgUHJlZml4IHRvIHVzZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3VmXG4vLy8gICBTdWZmaXggdG8gdXNlXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiB2YWx1ZXNcbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29sbGFwc2UtZGlyZWN0aW9uYWxzXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWlucy1mYWxzeVxuXG5AbWl4aW4gZGlyZWN0aW9uYWwtcHJvcGVydHkoJHByZSwgJHN1ZiwgJHZhbHMpIHtcbiAgLy8gUHJvcGVydHkgTmFtZXNcbiAgJHRvcDogICAgJHByZSArIFwiLXRvcFwiICAgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcbiAgJGJvdHRvbTogJHByZSArIFwiLWJvdHRvbVwiICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcbiAgJGxlZnQ6ICAgJHByZSArIFwiLWxlZnRcIiAgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcbiAgJHJpZ2h0OiAgJHByZSArIFwiLXJpZ2h0XCIgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcbiAgJGFsbDogICAgJHByZSArICAgICAgICAgICAgIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG5cbiAgJHZhbHM6IGNvbGxhcHNlLWRpcmVjdGlvbmFscygkdmFscyk7XG5cbiAgQGlmIGNvbnRhaW5zLWZhbHN5KCR2YWxzKSB7XG4gICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyR0b3B9OiBudGgoJHZhbHMsIDEpOyB9XG5cbiAgICBAaWYgbGVuZ3RoKCR2YWxzKSA9PSAxIHtcbiAgICAgIEBpZiBudGgoJHZhbHMsIDEpIHsgI3skcmlnaHR9OiBudGgoJHZhbHMsIDEpOyB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JHJpZ2h0fTogbnRoKCR2YWxzLCAyKTsgfVxuICAgIH1cblxuICAgIEBpZiBsZW5ndGgoJHZhbHMpID09IDIge1xuICAgICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyRib3R0b219OiBudGgoJHZhbHMsIDEpOyB9XG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JGxlZnR9OiAgIG50aCgkdmFscywgMik7IH1cbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFscykgPT0gMyB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAzKSB7ICN7JGJvdHRvbX06IG50aCgkdmFscywgMyk7IH1cbiAgICAgIEBpZiBudGgoJHZhbHMsIDIpIHsgI3skbGVmdH06ICAgbnRoKCR2YWxzLCAyKTsgfVxuICAgIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWxzKSA9PSA0IHtcbiAgICAgIEBpZiBudGgoJHZhbHMsIDMpIHsgI3skYm90dG9tfTogbnRoKCR2YWxzLCAzKTsgfVxuICAgICAgQGlmIG50aCgkdmFscywgNCkgeyAjeyRsZWZ0fTogICBudGgoJHZhbHMsIDQpOyB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAjeyRhbGx9OiAkdmFscztcbiAgfVxufVxuIiwiLy8gQ29udGFpbmVyXG4vL1xuLy8gTWFya3VwOiAuL2NvbnRhaW5lci5oYnNcbi8vXG4vLyAuY29udGFpbmVyLS14bGFyZ2UgLSB3aWR0aCB2YXJpYXRpb25cbi8vIC5jb250YWluZXItLWxhcmdlIC0gd2lkdGggdmFyaWF0aW9uXG4vLyAuY29udGFpbmVyLS1tZWRpdW0gLSB3aWR0aCB2YXJpYXRpb25cbi8vIC5jb250YWluZXItLXNtYWxsIC0gd2lkdGggdmFyaWF0aW9uXG4vL1xuLy8gU3R5bGVndWlkZSBsYXlvdXRzLkNvbnRhaW5lclxuXG4uY29udGFpbmVyIHtcbiAgICAkdGhpczogJjtcbiAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCBhdXRvKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKG51bGwgMjBweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXgtd2lkdGg6IDExODBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGNvbnRhaW5lcnMge1xuICAgICAgICAmLS0jeyRuYW1lfSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6ICR3aWR0aCArICRjb250YWluZXItcGFkZGluZyoyOyB9IH1cblxuICAgICYtLWZvcm0ge1xuICAgICAgICBtYXgtd2lkdGg6IDM3MHB4O1xuXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MzBweDsgfSB9XG5cbiAgICAmLS1zdHlsZWd1aWRlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA1MHB4OyB9IH1cbiIsIi8vIEdyaWRcbi8vXG4vLyBNYXJrdXA6IGdyaWQuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBsYXlvdXRzLkdyaWRcblxuLmdyaWQge1xuICAgICR0aGlzOiAmO1xuICAgIEBpbmNsdWRlIGdyaWQ7XG5cbiAgICAmLS1yZXZlcnNlIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgJi0tNzUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDIwcHgpOyB9XG5cbiAgICAgICAgJi0tMjUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIwcHgpOyB9XG5cbiAgICAgICAgJi0tNDAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTsgfVxuXG4gICAgICAgICYtLTYwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7IH0gfVxuXG4gICAgJi0tc3BhY2UtYmV0d2VlbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4gICAgJi0tYWxpZ24tZW5kIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbiAgICAmLS1hbGlnbi1jZW50ZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbiAgICAmLS1uby13cmFwIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cblxuICAgICYtLXN0eWxlZ3VpZGUge1xuICAgICAgICAjeyR0aGlzfV9faXRlbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogNTBweDsgfSB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgJi5ncmlkLS0yLWNvbCB7XG4gICAgICAgICAgICAuZ3JpZF9faXRlbS0tNTAge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpOyB9IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgJi0tbWVkaXVtLXVwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQ7IH0gfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICYtLWJyZWFrXFxAbGFyZ2Uge1xuICAgICAgICAgICAgI3skdGhpc31fX2l0ZW0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRncmlkLWd1dHRlcn0pOyB9IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICAmLS1tZWRpdW0tdXAge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZDsgfSB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcbiAgICAgICAgJi0tbGFyZ2UtdXAge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZDsgfVxuXG4gICAgICAgICYuZ3JpZC0tMi1jb2wge1xuICAgICAgICAgICAgI3skdGhpc31fX2l0ZW0ge1xuICAgICAgICAgICAgICAgICYtLTUwIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7IH0gfSB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAmLS00MCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNDAlIC0gMjBweCk7IH1cblxuICAgICAgICAgICAgJi0tNjAge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDYwJSAtIDIwcHgpOyB9IH0gfSB9XG4iLCIvLyBNb2RhbFxuLy9cbi8vIE1hcmt1cDogLi9tb2RhbC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGxheW91dHMubW9kYWxcblxuLm1vZGFsIHtcbiAgICAkdGhpczogJjtcbiAgICBAaW5jbHVkZSBwb3NpdGlvbihmaXhlZCwgMCAwIDAgMCk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICB6LWluZGV4OiA5OTk7XG5cbiAgICAmX19kaWFsb2cge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB6LWluZGV4OiAyMDA7IH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTAlIG51bGwgbnVsbCA1MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGlseS13aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDJweCA4cHggOHB4IHJnYmEoJGJsYWNrLCAuMDEpO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkc21hbGwpIHtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7IH1cblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkbWVkaXVtKSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA4MHZoO1xuICAgICAgICAgICAgcGFkZGluZzogNTBweDsgfVxuXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6ICR4bGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMTQwcHg7IH0gfVxuXG4gICAgJl9fc2Nyb2xsZXIge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogODB2aDtcbiAgICAgICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICZfX2Nsb3NlIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDI1cHggMjVweCBudWxsIG51bGwpO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZpbGw6ICRjZXJ1bGVhbjtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDQwcHg7IH1cblxuICAgICZfX2RlY29yYXRpb24ge1xuICAgICAgICBmaWxsOiAkY2VydWxlYW47XG4gICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgIG9wYWNpdHk6IC4yO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgd2lkdGg6IDI1MHB4O1xuXG4gICAgICAgICYtLXRvcC1sZWZ0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAtMTEwcHggbnVsbCBudWxsIC0xMTBweCk7IH1cblxuICAgICAgICAmLS1ib3R0b20tcmlnaHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgLTExMHB4IC0xMTBweCBudWxsKTsgfSB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIDAgMCAwIDApO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjkpO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgei1pbmRleDogMTAwOyB9XG5cbiAgICAmLS1vcGVuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuICAgICYtLXN0eWxlZ3VpZGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgI3skdGhpc31fX2RpYWxvZyB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1MDBweDsgfSB9IH1cbiIsIi8vIFNlY3Rpb25cbi8vXG4vLyAuc2VjdGlvbi0tc3R5bGVkIC0gU3R5bGVkIHZhcmlhdGlvblxuLy9cbi8vIE1hcmt1cDogLi9zZWN0aW9uLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgbGF5b3V0cy5zZWN0aW9uXG5cbi5zZWN0aW9uIHtcbiAgICAkdGhpczogJjtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcblxuICAgICYtLXBhZGRpbmctdG9wLW5vbmUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMHB4OyB9XG5cbiAgICArICN7JHRoaXN9Om5vdCguc2VjdGlvbi0tc3R5bGVkKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9XG5cbiAgICArIC53eXNpd3lnIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAmX19uby1wYWRkaW5nIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDsgfVxuICAgICZfX2Fzc2V0IHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIC0xMjVweCAtMTI1cHggbnVsbCBudWxsKTtcbiAgICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICAgJi0teWVsbG93IHtcbiAgICAgICAgICAgIGZpbGw6ICRsaWdodG5pbmcteWVsbG93OyB9XG5cbiAgICAgICAgJi0tcHVycGxlIHtcbiAgICAgICAgICAgIGZpbGw6ICRwdXJwbGU7IH1cblxuICAgICAgICAmLS1saWx5LXdoaXRlIHtcbiAgICAgICAgICAgIGZpbGw6ICRsaWx5LXdoaXRlOyB9XG5cbiAgICAgICAgJi0tb2Zmc2V0IHtcbiAgICAgICAgICAgIHRvcDogLTY1cHg7IH0gfVxuXG4gICAgJi0tc3R5bGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpbHktd2hpdGU7IH1cblxuICAgICYtLW92ZXJsYXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDApO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cblxuICAgICYtLW92ZXJsYXkge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTksNTksNTksLjc1KTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnOyB9IH1cblxuICAgICYtLWhhcy1hc3NldCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTsgfVxuXG4gICAgJi0tdi1kb3VibGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbGFyZ2UpIHtcbiAgICAgICAgJi0tZmFkZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoJGJsYWNrLCAwKSwgcmdiYSgkd2hpdGUsIDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7IH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgkYmxhY2ssIDApLCByZ2JhKCR3aGl0ZSwgMSkgMTAwJSk7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7IH0gfVxuXG4gICAgICAgICYtLXYtZG91YmxlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDsgfSB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGxhcmdlKSB7XG4gICAgICAgICZfX2Fzc2V0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfSB9XG4iLCIvLyBzbGlkZXJcbi8vXG4vLyBBIHZhcmlldHkgb2YgZGlmZmVyZW50IG9wdGlvbnMgYXJlIGF2YWlsYWJsZSBmb3Igc2xpZGVycy5cbi8vIFRoZXNlIGNhbiBiZSB0b2dnbGVkIGluIHRoZSBIVE1MIHVzaW5nIGRhdGEgYXR0cmlidXRlczogPGJyIC8+XG4vLyBgZGF0YS1kb3RzPVwidHJ1ZVwiYCAtIEFkZHMgZG90czxiciAvPlxuLy8gYGRhdGEtYXJyb3dzPVwidHJ1ZVwiYCAtIEFkZHMgYXJyb3dzPGJyIC8+XG4vLyBgZGF0YS1pbmZpbml0ZT1cInRydWVcImAgLSBBZGRzIGluZmluaXRlPGJyIC8+XG4vLyBgZGF0YS1zbGlkZXM9XCIzXCJgIC0gSG93IG1hbnkgc2xpZGVzIHRvIGRpc3BsYXk8YnIgLz5cbi8vIEFueSBjb21iaW5hdGlvbiBvZiB0aGUgYWJvdmUgY2FuIGJlIHVzZWQuXG4vL1xuLy8gTWFya3VwOiAuL3NsaWRlci5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGxheW91dHMuc2xpZGVyXG5cbi5zbGlkZXIge1xuICAgICR0aGlzOiAmO1xuXG4gICAgJjpub3QoLnNsaWNrLWluaXRpYWxpemVkKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAyIC8gMTsgfSB9IH1cblxuICAgIC5zbGljayB7XG4gICAgICAgICYtc2xpZGUge1xuICAgICAgICAgICAgPiBkaXYgPiBkaXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4gICAgICAgICYtYXJyb3cge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKCRibGFjaywgLjEpOyB9XG5cbiAgICAgICAgJi1kb3RzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIHJlbSg1KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC41cztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTFweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2VydWxlYW47IH0gfVxuXG4gICAgICAgICAgICAuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2VydWxlYW47IH0gfSB9XG5cbiAgICAgICAgJi1zbGlkZSB7XG4gICAgICAgICAgICBwaWN0dXJlLFxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9IH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSwgMnB4IG51bGwgbnVsbCBudWxsKTtcbiAgICAgICAgZmlsbDogJGNlcnVsZWFuO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cbiAgICAgICAgJi0tcmV2ZXJzZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9IH1cblxuICAgIC5zbGljay1wcmV2LFxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgei1pbmRleDogMTsgfVxuXG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgY2FsYyg1MCUgLSAxNXB4KSBudWxsIG51bGwgLTIwcHgpOyB9XG5cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBjYWxjKDUwJSAtIDE1cHgpIC0yMHB4IG51bGwgbnVsbCk7IH1cblxuICAgICYtLWluc2lkZSB7XG4gICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGJvdHRvbTogNHB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIGJvdHRvbTogNHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cblxuICAgICAgICAuc2xpY2stZG90cyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCBudWxsIDI1cHggbnVsbCk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbiAgICAmLS1jZW50ZXJlZC1hcnJvd3Mge1xuICAgICAgICAuc2xpY2stcHJldixcbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE1cHgpOyB9IH1cblxuICAgICYtLWZpdCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgMjBweCBudWxsKTsgfVxuXG4gICAgICAgIC5zbGljay1wcmV2LFxuICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgYXV0byBudWxsIC00MnB4IG51bGwpOyB9XG5cbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgbGVmdDogLTIwcHg7IH1cblxuICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICByaWdodDogLTIwcHg7IH0gfVxuXG4gICAgJi0tcmVzb3VyY2VzIHtcbiAgICAgICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIC5hcnRpY2xlIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuXG4gICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGJvdHRvbTogLTMwcHg7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG5cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYm90dG9tOiAtMzBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuICAgICYtLWRvdHMtcm91bmQge1xuICAgICAgICAuc2xpY2stZG90cyB7XG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjZXJ1bGVhbjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7IH1cblxuICAgICAgICAgICAgLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQmVjYXVzZSBTbGlja1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfSB9IH0gfVxuXG4gICAgJi0tZG90cy1pbnZlcnNlIHtcbiAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY2VydWxlYW47IH0gfSB9XG5cbiAgICAmLS1kb3RzLXdoaXRlIHtcbiAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlOyB9IH1cblxuICAgICAgICAgICAgLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQmVjYXVzZSBTbGlja1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfSB9IH0gfVxuXG4gICAgJi0tYXJyb3dzLXJvdW5kZWQge1xuICAgICAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA3OHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogLjg1O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHdpZHRoOiA3OHB4O1xuXG4gICAgICAgICAgICAmLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0zOXB4O1xuXG4gICAgICAgICAgICAgICAgLnNsaWRlcl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTVweDsgfSB9XG5cbiAgICAgICAgICAgICYuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0zOXB4O1xuXG4gICAgICAgICAgICAgICAgLnNsaWRlcl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xNXB4OyB9IH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTsgfVxuXG4gICAgICAgICAgICAuc2xpZGVyX19pY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTdweDsgfSB9IH1cblxuICAgICYtLW92ZXJmbG93LWhpZGRlbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xuICAgICAgICAmLS1kb3RzLWludmVyc2Uge1xuICAgICAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTsgfSB9XG5cbiAgICAgICAgICAgICAgICAuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEJlY2F1c2UgU2xpY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9IH0gfSB9IH0gfVxuIiwiJHVzZXJJbmFjdGl2ZTogMjUwbXM7XG4kdXNlckFjdGl2ZTogNDAwbXM7XG4kbW9kYWxMYXllcjogNjA7XG4kZWFzZU91dDogY3ViaWMtYmV6aWVyKDAuMywgMC4xNSwgMC4xOCwgMSk7XG5cbkBrZXlmcmFtZXMgYmFja2Ryb3BJbiB7XG4gICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLmMtbW9kYWwge1xuICAgIC0tdHJhbnMtZHVyYXRpb246ICN7JHVzZXJJbmFjdGl2ZX07XG4gICAgLS1tYXgtaGVpZ2h0OiA2MDBweDtcbiAgICAtLW1heC13aWR0aDogNjAwcHg7XG4gICAgLS1wYWRkaW5nOiAyNHB4O1xuXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6ICRtb2RhbExheWVyO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgY2FsYygtNTAlICsgNTBweCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMCA2cHggMjFweCByZ2JhKDAsIDAsIDAsIDAuNTUpO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnMtZHVyYXRpb24pICRlYXNlT3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnMtZHVyYXRpb24pICRlYXNlT3V0O1xuXG4gICAgYnV0dG9uID4gKiB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgICYtLXNtIHtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYyh2YXIoLS0xdmgsIDF2aCkgKiAxMDAgLSAyNHB4KTtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcblxuICAgICAgICAuaXMtaW9zICYge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQHN1cHBvcnRzICgtd2Via2l0LWh5cGhlbnM6IG5vbmUpIHtcbiAgICAgICAgLy9zYWZhcmkgb25seSBmaXggZm9yIGZpdC1jb250ZW50IG9uIG1vYmlsZVxuICAgICAgICAmLS1zbSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1kcmF3ZXIge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM1cHgpO1xuICAgICAgICBtYXgtd2lkdGg6IDQ0NXB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJhY2tkcm9wIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIH1cblxuICAgICZbb3Blbl0ge1xuICAgICAgICAtLXRyYW5zLWR1cmF0aW9uOiAjeyR1c2VyQWN0aXZlfTtcblxuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgICAgICAgJjo6YmFja2Ryb3Age1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJhY2tkcm9wSW47XG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246ICR1c2VyQWN0aXZlO1xuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJGVhc2VPdXQ7XG4gICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWRyYXdlcltvcGVuXXtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmcpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9fc2Nyb2xsLWRyYXdlciB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9fc2Nyb2xsLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmcpICogLTEpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZykgKiAtMSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tcGFkZGluZykgKiAtMSk7XG4gICAgICAgIG1hcmdpbi10b3A6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMTBweCB2YXIoLS1wYWRkaW5nKSB2YXIoLS1wYWRkaW5nKTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nKTtcbiAgICB9XG5cbiAgICAqICsgJl9fc2Nyb2xsLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cblxuICAgICYtLWRyYXdlciAmX19jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1wYWRkaW5nKSArIDZweCk7XG4gICAgfVxuXG4gICAgJl9fY2xvc2UtYnRuIHtcbiAgICAgICAgLS1ob3Zlci1kdXJhdGlvbjogI3skdXNlckluYWN0aXZlfTtcblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjRweDtcbiAgICAgICAgcmlnaHQ6IDI0cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JleTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBnYXA6IDRweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWhvdmVyLWR1cmF0aW9uKSAkZWFzZU91dDtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC0taG92ZXItZHVyYXRpb246ICN7JHVzZXJBY3RpdmV9O1xuXG4gICAgICAgICAgICBjb2xvcjogJHJvc2U7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBhY2NvcmRpb25cbi8vXG4vLyBBY2NvcmRpb25zIGNhbiBvcGVuIGEgcGFydGljdWxhciBwYXJ0aWNpcGFudCBieSB1c2luZyBgP3BhcnRpY2lwYW50PWpha2VgIGluXG4vLyB0aGUgVVJMIHF1ZXJ5IHN0cmluZywgYW5kIGFkZGluZyBgZGF0YS1wYXJ0aWNpcGFudD1cImpha2VcImAgdG8gdGhlXG4vLyBgLmFjY29yZGlvbl9faXRlbWAgZWxlbWVudCwgZm9yIGVheG1wbGUuXG4vLyA8YSBocmVmPVwiL3N0eWxlZ3VpZGUvaXRlbS1jb21wb25lbnRzLWFjY29yZGlvbi5odG1sP3BhcnRpY2lwYW50PWpha2VcIj5DbGljayBoZXJlIHRvIHRyeSBpdDwvYT5cbi8vXG4vLyBNYXJrdXA6IC4vYWNjb3JkaW9uLmhic1xuLy9cbi8vIGJhY2tncm91bmQ6ICNlM2Y3ZmZcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMuYWNjb3JkaW9uXG5cbi5hY2NvcmRpb24ge1xuICAgICR0aGlzOiAmO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoJGJsYWNrLCAuMTcpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgKyAjeyR0aGlzfV9faXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG5cbiAgICAgICAgJi0tZXJyb3Ige1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICAgICAgICAgICAgI3skdGhpc31fX2xpbmsge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRlcnJvcjtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCBudWxsIG51bGwgNTAlKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGVycm9yO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdTb3JyeSwgdGhlcmUgYXJlIGVycm9ycyB3aXRoIHRoaXMgcGFydGljaXBhbnQnO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH0gfSB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFmZmFpcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyb3NlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuXG4gICAgICAgICAgICAjeyR0aGlzfV9faWNvbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsgfSB9IH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTAlIDIwcHggbnVsbCBudWxsKTtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMjBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDIwcHg7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICZfX3dyYXAge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH0gfSB9XG4iLCIvLyB2aWRlb1xuLy9cbi8vIE1hcmt1cDogLi92aWRlby5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMudmlkZW9cblxuLnZpZGVvIHtcbiAgICAkdGhpczogJjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLy8gMTY6OVxuICAgICAgICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9XG5cbiAgICAmX19wb3N0ZXIge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCAwIDAgMCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MsIHZpc2liaWxpdHkgMCAuM3M7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgbnVsbCBudWxsIDUwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjZXJ1bGVhbiwgLjkpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDc1cHg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA3NXZ3O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NXZoO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIHdpZHRoOiA3NXB4OyB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTAlIG51bGwgbnVsbCA1MCUpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxNXB4IDAgMTVweCAyMXB4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIHdpZHRoOiAwOyB9XG5cbiAgICAgICAgJi0taGlkZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9IH1cblxuICAgICZfX3BpY3R1cmUge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDAgMCAwKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKCRibGFjaywgLjc1KSAwJSwgcmdiYSgkd2hpdGUsIDApIDUwJSk7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDsgfSB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgJl9faW5mbyB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgMTVweCAyMHB4KTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgei1pbmRleDogMTU7IH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuICAgICZfX2lmcmFtZSB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCAwKTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkbWVkaXVtKSB7XG4gICAgICAgICZfX2luZm8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfSB9IH1cbiIsIi8vIGFycm93XG4vL1xuLy8gLmFycm93LWljb24tLWxlZnQgLSBsZWZ0IGFycm93XG4vLyAuYXJyb3ctaWNvbi0tcmlnaHQgLSByaWdodCBhcnJvd1xuLy8gLmFycm93LWljb24tLXJvc2UgLSByb3NlIGNvbG91cmVkIGFycm93XG4vL1xuLy8gTWFya3VwOiAuL2Fycm93Lmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy5hcnJvd1xuXG4uYXJyb3ctaWNvbiB7XG4gICAgJi0tbGVmdCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuXG4gICAgJi0tcmlnaHQge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG5cbiAgICAmLS1yb3NlIHtcbiAgICAgICAgZmlsbDogJHJvc2U7IH0gfVxuIiwiLy8gYmFja2dyb3VuZCBmbG93ZXJcbi8vXG4vLyBNYXJrdXA6IC4vYmFja2dyb3VuZC1mbG93ZXIuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLmJhY2tncm91bmQtZmxvd2VyXG5cbi5jLWJhY2tncm91bmQtZmxvd2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogMXB4O1xuXG4gICZfX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbHktd2hpdGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwOyB9XG5cbiAgJl9faW1hZ2Uge1xuICAgIGZpbGw6ICRsaWdodGJsdWU7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDAuMzg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB3aWR0aDogNDAwcHg7IH1cblxuICAmLS1maXhlZCB7XG4gICAgLmMtYmFja2dyb3VuZC1mbG93ZXJfX2NvbnRhaW5lciB7XG4gICAgICBoZWlnaHQ6IDg1MHB4OyB9IH0gfVxuIiwiLy8gYmFza2V0IG5vdGlmaWNhdGlvblxuLy9cbi8vIE1hcmt1cDogLi9iYXNrZXQtbm90aWZpY2F0aW9uLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy5iYXNrZXQgbm90aWZpY2F0aW9uXG5cbi5iYXNrZXQtbm90aWZpY2F0aW9uIHtcbiAgICAkdGhpczogJjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19jb3VudCB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDAgbnVsbCBudWxsKTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogJHJvc2U7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTEpO1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIHdpZHRoOiAyNXB4OyB9IH1cbiIsIi8vIENvbnRhY3QtZGV0YWlsc1xuLy9cbi8vIE1hcmt1cDogLi9jb250YWN0LWRldGFpbHMuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLmNvbnRhY3QtZGV0YWlsc1xuXG4uY29udGFjdC1kZXRhaWxzIHtcbiAgICAkdGhpczogJjtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmaWxsOiAkY2VydWxlYW47XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgICAgd2lkdGg6IDIycHg7IH1cblxuICAgICZfX2RldGFpbCB7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTsgfSB9XG4iLCIvLyBjcWMgd2lkZ2V0XG4vL1xuLy8gM3JkIHBhcnR5IHdpZGdldFxuLy9cbi8vIE1hcmt1cDogLi9jcWMtd2lkZ2V0Lmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy5jcWMgd2lkZ2V0XG5cbi5jcWMtd2lkZ2V0IHtcbiAgICAmLmNsZWFuc2xhdGUge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCkgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDk2MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH0gfSB9XG4iLCIvLyBiYW5uZXJcbi8vXG4vLyBBIGdlbmVyaWMgYmFubmVyLCBjYW4gYmUgdXNlZCBvbiBhbnkgcGFnZS5cbi8vXG4vLyBNYXJrdXA6IC4vYmFubmVyLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgYmxvY2tzLmJhbm5lclxuXG4vLyBiYW5uZXIgLSBzdG9yeVxuLy9cbi8vIEJhbm5lciB0byBiZSB1c2VkIG9uIHRoZSBzdG9yeSBwYWdlcyB3aXRoIHNwZWNpZmljIGJyYW5kIHRoZW1lcy5cbi8vXG4vLyBNYXJrdXA6IC4vYmFubmVyLXN0b3J5Lmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgYmxvY2tzLmJhbm5lciBzdG9yeVxuXG4vLyBiYW5uZXIgLSBldmVudCBkZXRhaWxcbi8vXG4vLyBCYW5uZXIgZm9yIHRoZSBldmVudCBkZXRhaWwgcGFnZS5cbi8vXG4vLyBNYXJrdXA6IC4vYmFubmVyLWV2ZW50LWRldGFpbC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGJsb2Nrcy5iYW5uZXIgZXZlbnQgZGV0YWlsXG5cbi8vIGJhbm5lciAtIGV2ZW50IHJlZ2lzdHJhdGlvblxuLy9cbi8vIEJhbm5lciBmb3IgdGhlIHBhcnRpY2lwYW50IG1hbmFnZW1lbnQgc2VjdGlvbiBvZiB0aGUgZXZlbnRzIGFyZWEuXG4vL1xuLy8gTWFya3VwOiAuL2Jhbm5lci1ldmVudC1yZWdpc3RyYXRpb24uaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBibG9ja3MuYmFubmVyIGV2ZW50IHJlZ2lzdHJhdGlvblxuXG4uYmFubmVyIHtcbiAgICAkdGhpczogJjtcbiAgICBwYWRkaW5nOiAxMDBweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZfX3BpY3R1cmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBsZWZ0O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAxMTYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLnNsaWNrLXNsaWRlciB7XG4gICAgICAgICAgICBwaWN0dXJlLFxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDIgLyAxOyB9IH0gfVxuXG4gICAgJl9fc2xpZGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBtYXgtd2lkdGg6IDQ2NXB4OyB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgJi0taGFzLWljb24ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA4NXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6ICRyb3NlOyB9XG5cbiAgICAmX19jb3B5IHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIC0xMCUgbnVsbCBudWxsIDApOyB9XG5cbiAgICAmX19pbmZvIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgbnVsbCAwIG51bGwpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlwc3RpY2s7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwMCUgNTAlO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTAwJSA1MCU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTUlO1xuICAgICAgICBvcGFjaXR5OiAuODU7XG4gICAgICAgIHBhZGRpbmc6IDU4cHggNSU7XG4gICAgICAgIHdpZHRoOiAxMTAlOyB9XG5cbiAgICAmX19ldmVudC1zdW1tYXJ5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAuZXZlbnQtc3VtbWFyeV9faWNvbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB3aWR0aDogMjVweDsgfSB9XG5cbiAgICAmLS1ncmFwaGljIHtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAjeyR0aGlzfV9fY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMjsgfSB9XG5cbiAgICAmLS1hbGlnbi1sZWZ0IHtcbiAgICAgICAgI3skdGhpc31fX2NvbnRhaW5lciB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogbGVmdDsgfSB9XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgICAgI3skdGhpc31fX2NvbnRlbnQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuICAgICYtLWhhcy1ib3JkZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgJGNlcnVsZWFuMjsgfVxuXG4gICAgJi0taGFzLWluZm8tcGFuZWwge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBtaW4taGVpZ2h0OiA2MjBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4gICAgJi0taGFzLW92ZXJsYXkge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCAwIDAgMCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtaW5lLXNoYWZ0LCAuNzUpO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB6LWluZGV4OiAxOyB9XG5cbiAgICAgICAgI3skdGhpc31fX2NvbnRlbnQge1xuICAgICAgICAgICAgei1pbmRleDogMjsgfSB9XG5cbiAgICAmLS1oYXMtb3ZlcmxheS1oYWxmIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgMCAwIDApO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsMCwwLDAuMykgMCUsIHJnYmEoMCwyMTIsMjU1LDApIDc1JSk7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHotaW5kZXg6IDE7IH1cblxuICAgICAgICAjeyR0aGlzfV9fY29udGVudCB7XG4gICAgICAgICAgICB6LWluZGV4OiAyOyB9IH1cblxuICAgICZfX2V2ZW50LXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmOyB9IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAmLS1jZW50ZXItYWxpZ24ge1xuICAgICAgICAgICAgLmJhbm5lcl9fcGljdHVyZSArIC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDsgfVxuXG4gICAgICAgICAgICAuYmFubmVyX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTAlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfSB9IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjNweCkge1xuICAgICAgICAmLS1ncmFwaGljIHtcbiAgICAgICAgICAgICN7JHRoaXN9X19waWN0dXJlIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDAgMCAwKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDYwZGVnLCByZ2JhKDAsIDAsIDAsIC4zKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDYwJTtcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7IH0gfSB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDIwMHB4IDA7XG5cbiAgICAgICAgJl9fc3VtbWFyeSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuICAgICAgICAmX19ldmVudC1zdW1tYXJ5IHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNDVweDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgJi0taGFsZiB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuXG4gICAgICAgICZfX3NsaWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7IH1cblxuICAgICAgICAmLS1ncmFwaGljIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICN7JHRoaXN9X19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBib3R0b206IDEwMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9IH0gfVxuIiwiLy8gcHJpbWFyeSBuYXZcbi8vXG4vLyBNYXJrdXA6IC4vcHJpbWFyeS1uYXYuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBibG9ja3MucHJpbWFyeSBuYXZcblxuXG4ucHJpbWFyeS1uYXYge1xuICAgICR0aGlzOiAmO1xuICAgICZfXzUwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAmX19jb250YWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICZfX2RvbmF0ZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAmX19saXN0IHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1pbnQtdHVsaXA7XG4gICAgICAgIGNvbG9yOiAkYmF5LW9mLW1hbnk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgICAgICBwYWRkaW5nOiAxMXB4IDYwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcm9zZTsgfSB9XG5cbiAgICAmX19hcnJvdyB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgNjBweCBudWxsIG51bGwpO1xuICAgICAgICBmaWxsOiAkcm9zZTtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgICAgICYtLXJpZ2h0IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTkwZGVnKTsgfVxuXG4gICAgICAgICYtLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDUwJSBudWxsIG51bGwgMzBweCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDkwZGVnKTsgfSB9XG5cbiAgICAmX19zdWJuYXYge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWx5LXdoaXRlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA5NXB4KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cyBlYXNlLCBvcGFjaXR5IC43NXMgZWFzZTtcbiAgICAgICAgei1pbmRleDogNTAwO1xuXG4gICAgICAgICYtLWFjdGl2ZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuICAgICZfX2J1dHRvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA2MHB4OyB9XG5cbiAgICAmX19saW5rcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICN7JHRoaXN9X19saW5rIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNtYWxsKSB7XG4gICAgICAgICZfX2J1dHRvbnMge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4gICAgICAgICZfX2J1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XG4gICAgICAgICZfX2J1dHRvbnMge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4gICAgICAgICZfX2J1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHhsYXJnZSkge1xuICAgICAgICAmX19saXN0IHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNHB4IDE0cHggMCAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDVweCAxNHB4IDVweDtcblxuICAgICAgICAgICAgJi0tYmFjayB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4gICAgICAgICAgICAjeyR0aGlzfV9fc3VibmF2IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTVweCBudWxsIG51bGwgYXV0byk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpbHktd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1MCU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogNTAwOyB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICN7JHRoaXN9X19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRyb3NlOyB9IH1cblxuICAgICAgICAgICAgJi0taGFzLWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpbHktd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgPiAjeyR0aGlzfV9fc3VibmF2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgI3skdGhpc31fX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlwc3RpY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAjeyR0aGlzfV9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7IH0gfSB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICN7JHRoaXN9X19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJheS1vZi1tYW55OyB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIExldmVsIDNcbiAgICAgICAgICAgICAgICAgICAgICAgICN7JHRoaXN9X19hcnJvdyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi0tcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7IH0gfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAjeyR0aGlzfV9fc3VibmF2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDE0cHggMTRweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgKyAyMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7IH0gfVxuXG5cblxuICAgICAgICAgICAgICAgICAgICAjeyR0aGlzfV9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHJvc2U7IH0gfSB9IH1cblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7IH1cblxuICAgICAgICAmX19idXR0b25zLFxuICAgICAgICAmX19saW5rcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgJl9fYXJyb3cge1xuICAgICAgICAgICAgJi0tcmlnaHQge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDApOyB9XG5cbiAgICAgICAgICAgICYtLWxlZnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfSB9IH1cbiIsIi8vIGV2ZW50IGZvcm1cbi8vXG4vLyBNYXJrdXA6IC4vZXZlbnQtZm9ybS5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMuZXZlbnQgZm9ybVxuXG4uZXZlbnQtZm9ybSB7XG4gICAgJHRoaXM6ICY7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMTE4LDM0LDEzMCwxKSAwJSwgcmdiYSgxMjksNzMsMTUxLDEpIDEwMCUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1heC13aWR0aDogNDQ0cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICZfX2Fzc2V0IHtcbiAgICAgICAgZmlsbDogJHNlYW5jZTsgfVxuXG4gICAgJl9fdG9wLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgLTEyMHB4IG51bGwgbnVsbCAtMTIwcHgpOyB9XG5cbiAgICAmX19ib3R0b20tcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCAtMTIwcHggLTEyMHB4IG51bGwpOyB9XG5cbiAgICAmX19pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTsgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogYXV0bzsgfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDQzcHggNDNweCA2M3B4OyB9IH1cbiIsIi8vIGV2ZW50IHN1bW1hcnlcbi8vXG4vLyBNYXJrdXA6IC4vZXZlbnQtc3VtbWFyeS5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMuZXZlbnQgc3VtbWFyeVxuXG4uZXZlbnQtc3VtbWFyeSB7XG4gICAgJHRoaXM6ICY7XG4gICAgY29sb3I6ICRtaW5lLXNoYWZ0O1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgZmlsbDogJGNlcnVsZWFuO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuICAgICYtLWxpZ2h0IHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAjeyR0aGlzfV9faWNvbiB7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7IH0gfSB9XG4iLCIuYy1ldmVudHMtNTA1MCB7XG4gICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMTUycHggMTZweDtcblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogNDJweCA5MnB4O1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpOyB9IH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICArICoge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cblxuICAgICZfX3NsaWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxMDI0IC8gNzY4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDQ2cHgpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4gICAgJl9fc2xpZGVyLWNvbnRyb2xzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDE2cHg7XG4gICAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcm9zZTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1vdXQ7IH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzUwbXM7IH1cblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCBzdmcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZDpob3ZlciBzdmcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWCg1cHgpOyB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCBzdmcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZDpob3ZlciBzdmcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZVgoNXB4KTsgfSB9IH1cblxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgID4gZGl2ID4gZGl2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDhweDtcblxuICAgICAgICAgICAgKyBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzJweDsgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGQzlGMDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDlweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA5cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvaWNvbnMvY2hlY2tfc21hbGwuc3ZnJyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTsgfSB9XG5cbiAgICAgICAgJi0tZG90cyB7XG4gICAgICAgICAgICBsaTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgICAgIGxpOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9zd2lybF9wdXJwbGUuc3ZnJyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyB9IH1cblxuICAgICAgICAmLS1mbG93ZXItZG90cyB7XG4gICAgICAgICAgICBsaTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgICAgIGxpOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9waW5rLWZsb3dlcjIuc3ZnJyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyB9IH0gfSB9XG5cblxuIiwiLmMtZXZlbnQtYmFubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjsgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogdG9wIGNlbnRlcjsgfSB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTgwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAyMDdweCAyMHB4IDE0MnB4O1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAgICAgICArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIycHg7IH0gfSB9IH1cbiIsIiNzaG9wX2xvY2F0aW9uX2xpc3Rpbmcge1xuICBmbGV4OiAxIDEgNzAlO1xuICB3aWR0aDogNDUwcHg7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDIpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMik7XG5cbiAgLnNlYXJjaF9yZXN1bHRfdGl0bGUge1xuICAgIGNvbG9yOiAjMDE3MUFCO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTY1JTsgfVxuICAubG9jYXRpb25fcmVzdWx0cyB7XG4gICAgcGFkZGluZzogMTBweCAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmFydGljbGVfc3R1Yl9pdGVtIHtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKCdib3JkZXItYm94Jyk7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0Y0RjRFRjtcbiAgICB3aWR0aDogMzk1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVnZztcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG4gICAgcGFkZGluZzogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgIGJhY2tncm91bmQ6ICNFM0Y3RkY7IH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM0NzlEREM7IH1cbiAgICAubG9jYXRpb25fYWRkcmVzcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG4gICAgLmNvbnRhY3QtZGlyZWN0aW9ucy13cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAuY29udGFjdF9udW1iZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBjb2xvcjojZmZmIHt9XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1QcmltYXJ5LURlZmF1bHQsICMwMEFDRjEpO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggNHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4zMCk7IH1cbiAgICAgIC5jb250YWN0X2RpcmVjdGlvbnMge1xuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIGNvbG9yOiNmZmYge31cbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tUHJpbWFyeS1EZWZhdWx0LCAjRTYwMDdFKTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMzApO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9IH1cblxuICAuYXJ0aWNsZV9zdHViX3RpdGxlIHtcbiAgICBjb2xvcjogIzAxNzFBQjsgfVxuXG4gfSAgLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCdhbGwnKSB7XG4gICNzaG9wX2xvY2F0aW9uX2xpc3Rpbmcge1xuICAgIC5hcnRpY2xlX3N0dWJfaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAvLyBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKVxuICAgICAgLy8gbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpXG4gfSB9IH0gICAgICAvLyBwYWRkaW5nOiAyNXB4IGd1dHRlci1zcGFuKClcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRzbWFsbC10YWJsZXQpIHtcbiAgI3Nob3BfbG9jYXRpb25fbGlzdGluZyB7XG4gICAgLmFydGljbGVfc3R1Yl9pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAvLyBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKS8yXG4gfSB9IH0gICAgICAvLyBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCkvMlxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjc2hvcF9sb2NhdGlvbl9saXN0aW5nIHtcbiAgICAuYXJ0aWNsZV9zdHViX2l0ZW0ge30gfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAjc2hvcF9sb2NhdGlvbl9saXN0aW5nIHtcbiAgICAuYXJ0aWNsZV9zdHViX2l0ZW0ge1xuIH0gfSB9ICAgICAgLy8gd2lkdGg6IGNvbHVtbi1zcGFuKDIsMCw2KVxuIiwiLmMtZXZlbnRzLXF1b3RlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlseS13aGl0ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICZfX2RlY29yYXRpb24ge1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZmlsbDogIzQ3OUREQztcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgICAgIHdpZHRoOiAzNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzYwcHg7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgNTAlKTsgfSB9IH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogOTU4cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxMTJweCAxNnB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7IH1cblxuICAgICAgICBjaXRlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY2VydWxlYW47XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9IH1cbiIsIi5jLWV2ZW50cy1idG4ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgYm90dG9tOiAzMnB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDQwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtMTBweCk7IH1cblxuICAgICZfX2J0biB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2VydWxlYW47XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMjRweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zIGVhc2Utb3V0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNlcnVsZWFuMjtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zOyB9IH1cblxuICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDI1MG1zIGVhc2Utb3V0OyB9XG5cbiAgICAmX19idG46aG92ZXIgc3ZnIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpIHJvdGF0ZSg5MGRlZyk7IH0gfVxuXG5cbiIsIi8vIG1lc3NhZ2VzXG4vL1xuLy8gUGFyYWdyYXBoIHRhZ3MgYXJlIGFkZGVkIGJ5IEM1IGFuZCBzaG91bGQgYmUgdGhvdWdodCBvZiB3aGVuIG1ha2luZyBDU1MgY2hhbmdlcyBoZXJlLlxuLy9cbi8vIE1hcmt1cDogLi9tZXNzYWdlcy5oYnNcbi8vXG4vLyBiYWNrZ3JvdW5kOiAjZTNmN2ZmXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLm1lc3NhZ2VzXG5cbi5tZXNzYWdlcyB7XG4gICAgcGFkZGluZzogNzVweCAyNXB4IDUwcHg7XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDk2MHB4O1xuXG4gICAgICAgICYtLWVycm9yIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGh1bmRlcmJpcmQ7IH1cblxuICAgICAgICAmLS1pbmZvIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY2VydWxlYW47IH1cblxuICAgICAgICAmLS1zdWNjZXNzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZHVsbC1saW1lOyB9IH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDEuNjY2NjdlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuODMzMzNlbTsgfSB9XG4iLCIuYy1ldmVudHMtc3VtbWFyeSB7XG4gICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAxNnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogNjZweDsgfVxuIiwiLnUtaWNvbi10ZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTZweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDsgfVxuXG4gICAgJiArICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNHB4OyB9IH1cbiIsIi8vIGxpbmstYXJyb3dcbi8vXG4vLyBNYXJrdXA6IC4vbGluay1hcnJvdy5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMubGluay1hcnJvd1xuXG4ubGluay1hcnJvdyB7XG4gICAgJHRoaXM6ICY7XG4gICAgY29sb3I6ICRjZXJ1bGVhbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnL2FwcGxpY2F0aW9uL3RoZW1lcy9yYXduZXQvYXBwL2ltYWdlcy9pbnRlcmZhY2UvYXJyb3ctYmx1ZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDMzcHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIHdpZHRoOiAzMHB4OyB9IH1cbiIsIi8vIExvYWRpbmctcmluZ1xuLy9cbi8vIE1hcmt1cDogLi9sb2FkaW5nLXJpbmcuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLkxvYWRpbmctcmluZ1xuXG4ubG9hZGluZy1yaW5nIHtcbiAgICAkdGhpczogJjtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNDBweDtcblxuICAgICZfX2VsZW1lbnQge1xuICAgICAgICBhbmltYXRpb246IGxkcy1yaW5nIDEuMnMgY3ViaWMtYmV6aWVyKC41LCAwLCAuNSwgMSkgaW5maW5pdGU7XG4gICAgICAgIGJvcmRlcjogOHB4IHNvbGlkICRhZmZhaXI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGFmZmFpciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICBtYXJnaW46IDhweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNjRweDtcblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0uNDVzOyB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtLjNzOyB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtLjE1czsgfSB9IH1cblxuQGtleWZyYW1lcyBsZHMtcmluZyB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuIiwiJHVzZXJJbmFjdGl2ZTogMjUwbXM7XG4kdXNlckFjdGl2ZTogNDAwbXM7XG4kZWFzZU91dDogY3ViaWMtYmV6aWVyKDAuMywgMC4xNSwgMC4xOCwgMSk7XG5cbi5ldmVudHMtZmlsdGVyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbmJvZHk6aGFzKC5jLW1vYmlsZS1maWx0ZXJzKSAuc2VjdGlvbi0tb3ZlcmxhcDpiZWZvcmUge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgfVxufVxuXG4uYy1tb2JpbGUtZmlsdGVycyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgYnV0dG9uID4gKiB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgICZfX2J0bi13cmFwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9fYnRuIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgcGFkZGluZzogMTJweCAzMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjZXJ1bGVhbjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2VydWxlYW4yO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUtd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMTZweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmFjay1idG4ge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogOHB4O1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JleTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR1c2VyQWN0aXZlICRlYXNlT3V0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRyb3NlO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHVzZXJJbmFjdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX29wdGlvbnMtd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogNjRweDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR1c2VySW5hY3RpdmUgJGVhc2VPdXQ7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zaG93LWV2ZW50cyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdXNlckFjdGl2ZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xMDAlIC0gNjRweCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fb3B0aW9ucy10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyZXk7XG4gICAgfVxuXG4gICAgJl9fb3B0aW9ucy1saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAxNnB4O1xuICAgIH1cblxuICAgICZfX29wdGlvbiB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19vcHRpb24tYnRuIHtcbiAgICAgICAgLS10cmFucy1kdXJhdGlvbjogI3skdXNlckluYWN0aXZlfTtcblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDE2cHg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JleTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbHktd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFucy1kdXJhdGlvbikgJGVhc2VPdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnMtZHVyYXRpb24pICRlYXNlT3V0O1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGNvbG9yOiAkY2VydWxlYW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFucy1kdXJhdGlvbikgJGVhc2VPdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dDpjaGVja2VkICsgJixcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAtLXRyYW5zLWR1cmF0aW9uOiAjeyR1c2VyQWN0aXZlfTtcblxuICAgICAgICAgICAgY29sb3I6ICRsaWx5LXdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstcHJpbWFyeTtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpbHktd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBtZWRpYVxuLy9cbi8vIE1hcmt1cDogLi9tZWRpYS5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMubWVkaWFcblxuLm1lZGlhIHtcbiAgICAkdGhpczogJjtcblxuICAgICYtLWNvbnRhaW5lZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWx5LXdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBtYXgtd2lkdGg6IDI3NXB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAxOTBweDtcbiAgICAgICAgcGFkZGluZzogMzBweDsgfVxuXG4gICAgJi0tdG9wLW92ZXJsYXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgI3skdGhpc31fX2ltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCBudWxsIDMwcHggMzBweCk7IH0gfSB9XG4iLCIvLyBwZW9wbGUgY29udGVudFxuLy9cbi8vIE1hcmt1cDogLi9wZW9wbGUtY29udGVudC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMucGVvcGxlLWNvbnRlbnRcblxuLmMtcGVvcGxlLWNvbnRlbnQge1xuICBwYWRkaW5nOiA1MHB4IDA7XG5cbiAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgcGFkZGluZzogMTUwcHggMDsgfVxuXG4gID4gLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4gICZfX3RleHQge1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7IH1cblxuICAgIHAgKyBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4OyB9IH1cblxuICAmX19idXR0b24ge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cbiIsIi8vIHByb2dyZXNzIGJhclxuLy9cbi8vIE1hcmt1cDogLi9wcm9ncmVzcy1iYXIuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLnByb2dyZXNzIGJhclxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgICAkdGhpczogJjtcbiAgICBiYWNrZ3JvdW5kOiAkbGlseS13aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJl9fY29tcGxldGUge1xuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhcHBsZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTAlOyB9IH1cbiIsIi8vIG5hdiBpY29uXG4vL1xuLy8gTWFya3VwOiAuL25hdi1pY29uLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy5uYXYgaWNvblxuXG4ubmF2LWljb24ge1xuICAgICR0aGlzOiAmO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgei1pbmRleDogMTtcblxuICAgIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2VydWxlYW4yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDRweCAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzIGN1YmljLWJlemllciguNzcsIC4yLCAuMDUsIDEpLCBiYWNrZ3JvdW5kIC41cyBjdWJpYy1iZXppZXIoLjc3LCAuMiwgLjA1LCAxKSwgb3BhY2l0eSAuNTVzIGVhc2U7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7IH1cblxuXG4gICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMikge1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMTAwJTsgfSB9XG5cbiAgICAmLS1hY3RpdmUge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjZXJ1bGVhbjI7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgtNXB4LCAtMTZweCk7XG5cbiAgICAgICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgc2NhbGUoLjIsIC4yKTsgfVxuXG4gICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSgtMnB4LCAxNXB4KTsgfSB9IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6ICR4bGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4iLCIvLyBQYWdpbmF0aW9uXG4vL1xuLy8gTWFya3VwOiAuL3BhZ2luYXRpb24uaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLlBhZ2luYXRpb25cblxuLnBhZ2luYXRpb24ge1xuICAgICR0aGlzOiAmO1xuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4iLCIucGFydGljaXBhbnQtbWFuYWdlbWVudCB7XG4gICAgJHRoaXM6ICY7XG5cbiAgICAjeyR0aGlzfV9fbW9kYWwge1xuICAgICAgICAuZ3JpZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfSB9IH1cbiIsIi8vIGZlYXR1cmVkIGV2ZW50c1xuLy9cbi8vIE1hcmt1cDogLi9mZWF0dXJlZC1ldmVudHMuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBibG9ja3MuZmVhdHVyZWQgZXZlbnRzXG5cbi5mZWF0dXJlZC1ldmVudHMge1xuICAgICR0aGlzOiAmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWx5LXdoaXRlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogODBweCAwIDEzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZfX2JnIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgJl9fY29weSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgbnVsbCA4MHB4IDUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICZfX2JnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgMCBudWxsIG51bGwpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDY5NnB4OyB9XG5cbiAgICAgICAgJl9fY29weSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQzMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDUwJSAtIDgwcHgpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiAgICAgICAgJl9fYnV0dG9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDAgYXV0byBhdXRvKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuXG4gICAgICAgICZfX2NhcmQge1xuICAgICAgICAgICAgd2lkdGg6IDIwMCU7IH0gfSB9XG4iLCIvLyBwZW9wbGUgbGlzdGluZ1xuLy9cbi8vIE1hcmt1cDogLi9wZW9wbGUtbGlzdGluZy5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGNvbXBvbmVudHMucGVvcGxlLWxpc3RpbmdcblxuJHBlb3BsZUd1dHRlcjogMTBweDtcblxuLmMtcGVvcGxlLWxpc3Rpbmcge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG4gID4gLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4OyB9IH1cblxuICAmX19jb2xsZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgLSRwZW9wbGVHdXR0ZXI7XG5cbiAgICA+ICoge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgcGFkZGluZzogMCAkcGVvcGxlR3V0dGVyIDQwcHg7XG5cbiAgICAgIEBtZWRpYShtaW4td2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDUwJTsgfVxuXG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgZmxleC1iYXNpczogMzMuMzMlOyB9IH0gfVxuXG4gICZfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgID4gKiB7XG4gICAgICBmbGV4OiAxOyB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiA3NjdweCkge1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbiAgICAmLXRleHQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBwYWRkaW5nOiAyMHB4OyB9XG5cbiAgICAmLW5hbWUge1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbiAgICAmLXJvbGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4gICAgJi1saW5rIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87IH0gfSB9XG5cbiIsIi8vIHF1b3RlXG4vL1xuLy8gTWFya3VwOiAuL3F1b3RlLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy5xdW90ZVxuXG4ucXVvdGUge1xuICAgICR0aGlzOiAmO1xuICAgIGNvbG9yOiAkbWluZS1zaGFmdDtcbiAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgIG1heC13aWR0aDogOTYwcHg7XG4gICAgcGFkZGluZzogMCA3NXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZfX2Zvb3RlciB7XG4gICAgICAgIGNvbG9yOiAkY2VydWxlYW4yO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgICYtLW9wZW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDApOyB9XG5cbiAgICAgICAgJi0tY2xvc2Uge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgMCAwIG51bGwpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfSB9IH1cbiIsIi8vIHJhZGlvLXRvZ2dsZVxuLy9cbi8vIE1hcmt1cDogLi9yYWRpby10b2dnbGUuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLnJhZGlvLXRvZ2dsZVxuXG4ucmFkaW8tdG9nZ2xlIHtcbiAgICAkdGhpczogJjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTNweCAxMHB4OyB9XG5cbiAgICAmX19idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjZXJ1bGVhbjtcbiAgICAgICAgY29sb3I6ICRjZXJ1bGVhbjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7IH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAxMHB4IDEwcHggMDsgfVxuXG4gICAgICAgICYtLWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2VydWxlYW47XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlOyB9IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRtZWRpdW0pIHtcbiAgICAgICAgJl9fYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMDBweDsgfSB9IH1cbiIsIi8vIHNjcm9sbGVyXG4vL1xuLy8gTWFya3VwOiAuL3Njcm9sbGVyLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy5zY3JvbGxlclxuXG4uc2Nyb2xsZXIge1xuICAgICR0aGlzOiAmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoJGJsYWNrLCAuMTcpO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmX19pbm5lciB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHggMnB4OyB9IH1cbiIsIi8vIHNlYXJjaCBmaWVsZFxuLy9cbi8vIE1hcmt1cDogLi9zZWFyY2gtZmllbGQuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLnNlYXJjaCBmaWVsZFxuXG4uc2VhcmNoLWZpZWxkIHtcbiAgICAkdGhpczogJjtcbiAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCBudWxsIC0xMTVweCAwKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogJGxpbHktd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTBweCAwIHJnYmEoJGJsYWNrLCAuMTgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDExNXB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgMjBweCAyMHB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzIGVhc2UsIG9wYWNpdHkgLjc1cyBlYXNlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwMDtcblxuICAgICZfX2lubmVyIHtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgNXB4IG51bGwgbnVsbCk7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4gICAgJi0tYWN0aXZlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkeGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKHJlbGF0aXZlLCBudWxsIG51bGwgYXV0byBhdXRvKTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAmX19pbnB1dCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDlweCAxMXB4O1xuXG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRtaW5lLXNoYWZ0OyB9IH1cblxuICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbiAgICAgICAgJl9fYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfSB9XG4iLCIuYy1zaG9wcy1zdGlja3ktYnRuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGJvdHRvbTogMzJweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSA0MDBtcyBlYXNlLWluLW91dDtcblxuICAgICYuaXMtaGlkZGVuIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTEwcHgpOyB9XG5cbiAgICAmX19idG4ge1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNlcnVsZWFuO1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxM3B4IDI0cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcyBlYXNlLW91dDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjZXJ1bGVhbjI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtczsgfSB9XG5cbiAgICBzdmcge1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBlYXNlLW91dDsgfVxuXG4gICAgJl9fYnRuOmhvdmVyIHN2ZyB7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoM3B4KSByb3RhdGUoOTBkZWcpOyB9IH1cbiIsIi5jLXNob3BzIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBtYXgtd2lkdGg6IDEyMjhweDtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAmX19pbnRybyB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcblxuICAgICAgICAgICAgKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4OyB9IH1cblxuICAgICAgICArICoge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG5cbiAgICAmX19maWx0ZXIge1xuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7IH0gfVxuXG4gICAgICAgICNhcnRpY2xlX2ZpbHRlciB7XG4gICAgICAgICAgICBnYXA6IDE2cHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuXG4gICAgICAgIC5pbnB1dC1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjNDc5RERDICFpbXBvcnRhbnQ7IH0gfVxuXG4gICAgICAgIC5zdWJtaXQsXG4gICAgICAgIC5yZXNldF9maWx0ZXIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE3cHggMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGRlZmF1bHQtZm9udC1zdGFjazsgfSB9XG5cbiAgICAmX19sb2NhdGlvbi1idG4ge1xuICAgICAgICBmaWxsOiAjMDE3MUFCO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgZmlsbDogIzI4MzU4MzsgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGZpbGw6ICNFNjAwN0U7IH0gfVxuXG4gICAgJl9fYWN0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMTZweDsgfVxuXG4gICAgJl9fbWFwIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTZweDtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDE2cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogODBweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGNsaXAgIWltcG9ydGFudDtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQ0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgIC5nb29nbGVfbWFwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuICAgICAgICAuZ29vZ2xlX21hcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMGR2aDsgfSB9XG5cbiAgICAmX19zaG9wcy1saXN0IHtcbiAgICAgICAgd2lkdGg6IDQzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXg6IDAgMCA0MzBweCAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5NjFweCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH0gfVxuXG4gICAgJl9fcmVzdWx0cy10aXRsZSB7XG4gICAgICAgIHBhZGRpbmc6IDIycHggMjRweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRFRjtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IDI0cHg7XG4gICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2NpcmNsZS1hbmltLTMuc3ZnJyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLW91dDsgfVxuXG4gICAgICAgICY6aGFzKC5sb2FkaW5nKTpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTsgfSB9XG5cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBzY3JvbGwtbWFyZ2luLXRvcDogNzRweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGNEY0RUY7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzQ3OUREQyAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjRTNGN0ZGICFpbXBvcnRhbnQ7IH1cblxuICAgICAgICAuY29udGFjdF9udW1iZXIsXG4gICAgICAgIC5jb250YWN0X2RpcmVjdGlvbnMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEzcHggMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfSB9XG5cbiAgICAgICAgLmNvbnRhY3RfbnVtYmVyIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODsgfSB9XG5cbiAgICAgICAgLmNvbnRhY3RfZGlyZWN0aW9ucyB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7IH0gfSB9XG5cbiAgICAmX19pdGVtLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4gICAgICAgICsgKiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OyB9IH1cblxuICAgIFtyb2xlPWRpYWxvZ10gPiAqOmZpcnN0LWNoaWxkICsgZGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTMycHg7IH0gfVxuIiwiLy8gc2xpZGVyLWNhcmRcbi8vXG4vLyBNYXJrdXA6IC4vc2xpZGVyLWNhcmQuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLnNsaWRlci1jYXJkXG5cbi5zbGlkZXItY2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICRhZmZhaXI7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgIG1heC13aWR0aDogNTY4cHg7XG4gICAgcGFkZGluZzogMTUwcHggNTBweCA1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4zcztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAmX19mbG93ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAyNDBweDtcbiAgICAgICAgaGVpZ2h0OiAyNDBweDtcbiAgICAgICAgZmlsbDogJHNlYW5jZTsgfVxuXG4gICAgJl9fZmxvd2VyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNDUlLCAtNDUlKTsgfVxuXG4gICAgJl9fZmxvd2VyOmxhc3QtY2hpbGQge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0NSUsIDQ1JSk7IH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjYyNXJlbTtcbiAgICAgICAgY29sb3I6ICRyaW8tZ3JhbmRlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zMzM7IH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbiAgICAuc2xpZGVyIHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4iLCIvLyBzb2NpYWwgbmF2XG4vL1xuLy8gTWFya3VwOiAuL3NvY2lhbC1uYXYuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBjb21wb25lbnRzLnNvY2lhbCBuYXZcblxuLnNvY2lhbC1uYXYge1xuICAgICR0aGlzOiAmO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIHdpZHRoOiAzNHB4OyB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgNy41cHg7XG4gICAgICAgIHdpZHRoOiA0MnB4O1xuXG4gICAgICAgICYtLWluc3RhZ3JhbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDYuMDVkZWcsICRsaWdodG5pbmcteWVsbG93IDAlLCAkcmVkIDQ5LjUyJSwgJGhvbGx5d29vZGNlcmlzZSAxMDAlKTsgfVxuXG4gICAgICAgICYtLXlvdXR1YmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlOyB9XG5cbiAgICAgICAgJi0tbGlua2VkaW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAjeyR0aGlzfV9faWNvbiB7XG4gICAgICAgICAgICAgICAgZmlsbDogJGRlZXBjZXJ1bGVhbjsgfSB9XG5cbiAgICAgICAgJi0tdHdpdHRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGljdG9uYmx1ZTsgfVxuXG4gICAgICAgICYtLWZhY2Vib29rIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjaGFtYnJheTsgfSB9IH1cbiIsIi8vIHRhZ1xuLy9cbi8vIC50YWctLW5ld3MgLSBOZXdzIHRhZ1xuLy8gLnRhZy0tZXZlbnQgLSBFdmVudCB0YWdcbi8vIC50YWctLXN0b3J5IC0gU3RvcnkgdGFnXG4vLyAudGFnLS1pbmNvbXBsZXRlIC0gSW5jb21wbGV0ZSB0YWdcbi8vXG4vLyBNYXJrdXA6IC4vdGFnLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgY29tcG9uZW50cy50YWdcblxuLnRhZyB7XG4gICAgJHRoaXM6ICY7XG4gICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHJlbSgxMyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICYtLWZlYXR1cmVzIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgY29sb3I6ICMzYjNiM2I7IH1cblxuICAgICYtLW5ld3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcm9zZTsgfVxuXG4gICAgJi0tbmFvbWlzLWJsb2cge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hyaXN0aW5lOyB9XG5cbiAgICAmLS1jaGFyaXR5LW5ld3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYXBwbGU7IH1cblxuICAgICYtLWZ1bmRyYWlzaW5nLW5ld3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcm9zZTsgfVxuXG4gICAgJi0tZXZlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYXBwbGU7IH1cblxuICAgICYtLXN0b3J5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNlcnVsZWFuOyB9XG5cbiAgICAmLS1pbmNvbXBsZXRlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7IH1cblxuICAgICYtLXNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIHBhZGRpbmc6IDNweCAxMHB4OyB9IH1cbiIsIi8vIGNvbnRlbnQgYmxvY2tcbi8vXG4vLyBGbG93ZXIgZ3JhcGhpYyBpcyBvcHRpb25hbFxuLy9cbi8vIE1hcmt1cDogLi9jb250ZW50LWJsb2NrLmhic1xuLy9cbi8vIFN0eWxlZ3VpZGUgYmxvY2tzLmNvbnRlbnQgYmxvY2tcblxuLmNvbnRlbnQtYmxvY2sge1xuICAgICR0aGlzOiAmO1xuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAtMTA1cHggMCBudWxsIG51bGwpO1xuICAgICAgICBmaWxsOiAkbGlnaHRuaW5nLXllbGxvdztcbiAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgd2lkdGg6IDIxMHB4OyB9IH1cbiIsIi8vIGJ1dHRvbiBncmlkXG4vL1xuLy8gLmJ1dHRvbi1ncmlkLS1hbGlnbi1jZW50ZXIgLSBBbGlnbiBidXR0b25zIGNlbnRyYWxseVxuLy9cbi8vIE1hcmt1cDogLi9idXR0b24tZ3JpZC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGJsb2Nrcy5idXR0b24gZ3JpZFxuXG4uYnV0dG9uLWdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuYnV0dG9uICsgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbiAgICAmLS1hbGlnbi1jZW50ZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4gICAgJi0tYWxpZ24tcmlnaHQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9IH1cbiIsIi8vIGRvbmF0ZVxuLy9cbi8vIE1hcmt1cDogLi9kb25hdGUuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBibG9ja3MuZG9uYXRlXG5cbi5kb25hdGUge1xuICAgICR0aGlzOiAmO1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDI0MHB4OyB9XG5cbiAgICAmX19yZWFzb25zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICYtLWdyZWVuIHtcbiAgICAgICAgICAgIGZpbGw6ICRhcHBsZTsgfVxuXG4gICAgICAgICYtLWJsdWUge1xuICAgICAgICAgICAgZmlsbDogJGNlcnVsZWFuMjsgfVxuXG4gICAgICAgICYtLXB1cnBsZSB7XG4gICAgICAgICAgICBmaWxsOiAkYWZmYWlyOyB9IH1cblxuICAgICZfX2NvcHkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiIsIi8vIGltYWdlIGJhY2tncm91bmRcbi8vXG4vLyBNYXJrdXA6IC4vaW1hZ2UtYmFja2dyb3VuZC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGJsb2Nrcy5pbWFnZSBiYWNrZ3JvdW5kXG5cbi5pbWFnZS1iYWNrZ3JvdW5kIHtcbiAgICAkdGhpczogJjtcbiAgICBoZWlnaHQ6IDc1dnc7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogLTUwcHg7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OiAyNXB4OyB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCA1MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE0cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxNHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEzMzBweDsgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgMCA1MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDE0cHg7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEzMzBweDsgfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICBoZWlnaHQ6IDQ1dnc7XG5cbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4OyB9IH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDY1cHg7IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHhsYXJnZSkge1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDg1cHg7IH0gfVxuXG4gICAgKyAuc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiIsIi8vIHZlcnRpY2FsIHRhYnNcbi8vXG4vLyBNYXJrdXA6IC4vdmVydGljYWwtdGFicy5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGJsb2Nrcy52ZXJ0aWNhbCB0YWJzXG5cbi50YWJzIHtcbiAgICAkdGhpczogJjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGFsdG87XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhZmZhaXI7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYWZmYWlyOyB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGFmZmFpcjsgfSB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH0gfVxuXG4gICAgJi0tZGFyayB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkd2hpdGUsIC4yKTtcblxuICAgICAgICAjeyR0aGlzfV9fbGluayB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYWZmYWlyOyB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYWZmYWlyOyB9IH0gfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0sIG1pbikge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGFmZmFpcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGFmZmFpcjsgfSB9IH0gfVxuXG4udGFicy12ZXJ0aWNhbCB7XG4gICAgLnNlbGVjdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgLnRhYnMge1xuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhZmZhaXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggNjVweCAxNXB4IDIwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyb3NlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAudGFic19fYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7IH0gfSB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfSB9XG5cbiAgICAgICAgJl9fZ3JvdXAge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMnB4IDNweCAxNnB4IHJnYmEoJGJsYWNrLCAuMjM2NjcpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDsgfVxuXG4gICAgICAgICZfX2Fycm93IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgMjJweCBudWxsIG51bGwpO1xuICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBib3gtc2hhZG93OiAycHggM3B4IDE2cHggcmdiYSgkYmxhY2ssIC4yMzY2Nyk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC50YWJzIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCA0MHB4O1xuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGluaGVyaXQ7XG5cbiAgICAgICAgICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcm9zZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7IH0gfVxuXG4gICAgICAgICAgICAgICAgLnRhYnNfX2Fycm93IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtOTBkZWcpOyB9IH1cblxuICAgICAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lOyB9IH1cblxuICAgICAgICAgICAgJl9fZ3JvdXAge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuICAgICAgICAmX19jb250YWluZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGFmZmFpcjtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMzMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDA7IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDQzMHB4OyB9XG5cbiAgICAgICAgLnRhYnMge1xuICAgICAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOCU7IH0gfSB9IH0gfVxuIiwiLy8gcGFuZWxcbi8vXG4vLyAucGFuZWwtLWJsdWUgLSBCbHVlIHBhbmVsXG4vLyAucGFuZWwtLWxhcmdlIC0gTGFyZ2VyIHBhZGRpbmdcbi8vXG4vLyBNYXJrdXA6IC4vcGFuZWwuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBibG9ja3MucGFuZWxcblxuLnBhbmVsIHtcbiAgICAkdGhpczogJjtcbiAgICBiYWNrZ3JvdW5kOiAkYWZmYWlyO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZfX3RvcC1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIC02MnB4IG51bGwgbnVsbCAtNjJweCk7XG4gICAgICAgIGZpbGw6ICRzZWFuY2U7IH1cblxuICAgICZfX2JvdHRvbS1yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIC02MnB4IC02MnB4IG51bGwpO1xuICAgICAgICBmaWxsOiAkc2VhbmNlOyB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxOyB9XG5cbiAgICAmLS1icmFuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWx5LXdoaXRlO1xuXG4gICAgICAgICN7JHRoaXN9X190b3AtbGVmdCxcbiAgICAgICAgI3skdGhpc31fX2JvdHRvbS1yaWdodCB7XG4gICAgICAgICAgICBmaWxsOiAkY2VydWxlYW4yO1xuICAgICAgICAgICAgb3BhY2l0eTogLjI7IH0gfVxuXG4gICAgJi0tbGFyZ2UtYXNzZXQge1xuICAgICAgICAjeyR0aGlzfV9fdG9wLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIC0xMDJweCBudWxsIG51bGwgLTEwMnB4KTsgfVxuXG4gICAgICAgICN7JHRoaXN9X19ib3R0b20tcmlnaHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgLTEwMnB4IC0xMDJweCBudWxsKTsgfSB9XG5cbiAgICAmLS1mb3JtIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2NThweDsgfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNDBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC00MHB4OyB9IH1cbiAgICAmLS1ibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpbHktd2hpdGU7XG5cbiAgICAgICAgI3skdGhpc31fX2JvdHRvbS1yaWdodCB7XG4gICAgICAgICAgICBmaWxsOiByZ2JhKCRjZXJ1bGVhbiwgLjIpOyB9IH1cblxuICAgICYtLWxhcmdlIHtcbiAgICAgICAgcGFkZGluZzogODBweCAyMHB4OyB9XG5cbiAgICAuY2FyZC1jYXJvdXNlbCAmIHtcbiAgICAgICAgLy8gQmVjYXVzZSBTbGlja1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCkgIWltcG9ydGFudDsgfSB9XG4iLCIvLyBNZWRpYSBDbG91ZFxuLy9cbi8vIE1hcmt1cDogLi9tZWRpYS1jbG91ZC5oYnNcbi8vXG4vLyBTdHlsZWd1aWRlIGJsb2Nrcy5tZWRpYS1jbG91ZFxuXG4ubWVkaWEtY2xvdWQge1xuICAgICR0aGlzOiAmO1xuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XG4gICAgICAgICZfX2dyb3VwIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwMHB4OyB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgICAgICYtLTEge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7IH1cblxuICAgICAgICAgICAgJi0tMiB7XG4gICAgICAgICAgICAgICAgbGVmdDogNzBweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDcwcHgpO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxOyB9XG5cbiAgICAgICAgICAgICYtLTMge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAzOyB9XG5cbiAgICAgICAgICAgICYtLTQge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjUlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDQ7IH0gfSB9IH1cbiIsIiRiYXNlLXNwYWNpbmc6IDIwcHg7XG4kc3BhY2luZy1kaXJlY3Rpb25zOiAoIG51bGw6IG51bGwsICd0JzogJy10b3AnLCAncic6ICctcmlnaHQnLCAnYic6ICctYm90dG9tJywgJ2wnOiAnLWxlZnQnLCAnaCc6ICctbGVmdCcgJy1yaWdodCcsICd2JzogJy10b3AnICctYm90dG9tJyk7XG4kc3BhY2luZy1wcm9wZXJ0aWVzOiAoICdwJzogJ3BhZGRpbmcnLCAnbSc6ICdtYXJnaW4nKTtcbiRzcGFjaW5nLXNpemVzOiAoIG51bGw6ICRiYXNlLXNwYWNpbmcsICctaGFsZic6ICRiYXNlLXNwYWNpbmcvMiwgJy1kb3VibGUnOiAkYmFzZS1zcGFjaW5nKjIsICctdHJpcHBsZSc6ICRiYXNlLXNwYWNpbmcqMywgJy1xdWFkcnVwbGUnOiAkYmFzZS1zcGFjaW5nKjQsICcwJzogMCk7XG5cbi51IHtcblxuICAgICYtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgJi1ub3Njcm9sbCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuICAgICYtYWxpZ24tY2VudGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgICAmLWFsaWduLXJpZ2h0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuICAgICYtaGlkZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICYtbWItMTUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTsgfVxuXG4gICAgJi1vdmVyZmxvdy1oaWRkZW4ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkbWVkaXVtKSB7XG4gICAgICAgICYtbWItNTBcXEBtZWRpdW0ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcbiAgICAgICAgJi1tYi0xMDBcXEBsYXJnZS1taW4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7IH0gfVxuXG4gICAgJi1tLWF1dG8ge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbiAgICAmLWZsZXgge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG5cbiAgICAmLWZsZXgtd3JhcCB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuXG4gICAgJi1qdXN0aWZ5LWNlbnRlciB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbiAgICAmLWp1c3RpZnktc3BhY2UtYmV0d2VlbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4gICAgJi13LWZ1bGwge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgJi1yb3VuZGVkIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDsgfVxuXG4gICAgJi1zaGFkb3cge1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAuMSk7IH1cblxuICAgICYtcG9zLXJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4gICAgJi1wb3Mtc3RpY2t5IHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAwOyB9XG5cbiAgICAmLW9iamVjdC1maXQtY292ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgJi13aGl0ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7IH1cblxuICAgICYtbWluZS1zaGFmdCB7XG4gICAgICAgIGNvbG9yOiAkbWluZS1zaGFmdDsgfVxuXG4gICAgJi1iZy13aGl0ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTsgfVxuXG4gICAgJi1zdWNjZXNzIHtcbiAgICAgICAgY29sb3I6ICRzdWNjZXNzOyB9XG5cbiAgICAmLWVycm9yIHtcbiAgICAgICAgY29sb3I6ICRlcnJvcjsgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogJGxhcmdlKSB7XG4gICAgICAgICYtaGlkZVxcQGxhcmdlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICAmLS1pbWctb3ZlcmxhcCB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuICAgICAgICAmLXBvcy1yZWxcXEBtZWRpdW0tb25seSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XG4gICAgICAgICYtbWxcXEBsYXJnZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuXG4gICAgICAgICYtcG9zLXJlbFxcQG1lZGl1bS1vbmx5IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH0gfVxuXG4gICAgJi1zaXplLTE4IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpOyB9XG5cbiAgICAmLXNpemUtMTIge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7IH1cblxuICAgICYtd2VpZ2h0LTcwMCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH0gfVxuXG5AZWFjaCAkcHJvcGVydHktbmFtZXNwYWNlLCAkcHJvcGVydHkgaW4gJHNwYWNpbmctcHJvcGVydGllcyB7XG4gICAgQGVhY2ggJGRpcmVjdGlvbi1uYW1lc3BhY2UsICRkaXJlY3Rpb24tcnVsZXMgaW4gJHNwYWNpbmctZGlyZWN0aW9ucyB7XG4gICAgICAgIEBlYWNoICRzaXplLW5hbWVzcGFjZSwgJHNpemUgaW4gJHNwYWNpbmctc2l6ZXMge1xuICAgICAgICAgICAgLnUtI3skcHJvcGVydHktbmFtZXNwYWNlfSN7JGRpcmVjdGlvbi1uYW1lc3BhY2V9I3skc2l6ZS1uYW1lc3BhY2V9IHtcbiAgICAgICAgICAgICAgICBAZWFjaCAkZGlyZWN0aW9uIGluICRkaXJlY3Rpb24tcnVsZXMge1xuICAgICAgICAgICAgICAgICAgICAjeyRwcm9wZXJ0eX0jeyRkaXJlY3Rpb259OiAkc2l6ZTsgfSB9IH0gfSB9XG5cbkBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC51LWhpZGRlblxcQGxhcmdlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnUtaGlkZGVuXFxAbWVkaXVtIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYShtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnUtaGlkZGVuXFxAbWluLW1lZGl1bSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWl4aW4gY2xlYXJmaXgge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7IH0gfVxuIiwiLy8gcHJvZ3Jlc3Ncbi8vXG4vLyBNYXJrdXA6IC4vcHJvZ3Jlc3MuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBibG9ja3MucHJvZ3Jlc3NcblxuLnByb2dyZXNzIHtcbiAgICAkdGhpczogJjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCRtaW5lLXNoYWZ0LCAuOCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG4iLCIvLyBzdGlja3kgY3RhXG4vL1xuLy8gTWFya3VwOiAuL3N0aWNreS1jdGEuaGJzXG4vL1xuLy8gU3R5bGVndWlkZSBibG9ja3Muc3RpY2t5IGN0YVxuXG4uc3RpY2t5LWN0YSB7XG4gICAgJHRoaXM6ICY7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMTE4LDM0LDEzMCwxKSAwJSwgcmdiYSgxMjksNzMsMTUxLDEpIDEwMCUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbjogLTEwMHB4IGF1dG8gMDtcbiAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4iLCIjc2l0ZV9zZWFyY2gge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC5maWVsZCB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbiAgZmllbGRzZXQge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDMzMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDclO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cblxuICBAaW5jbHVkZSB0cmFpbGVyKDEuNSk7XG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbiAgaW5wdXQsXG4gICNzaXRlX3NlYXJjaF9zdWJtaXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuICBpbnB1dCB7XG4gICAgQGV4dGVuZCAldXBjYXNlO1xuICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMTRweCk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyggbm9uZSApO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcGFkZGluZzogcmh5dGhtKDAuNikgMjVweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDg1cHgpOyB9XG5cbiAgLy8gI1RPRE8gbWFrZSB0aGlzIHJldXNhYmxlXG4gIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICR3aGl0ZTsgfVxuICAtbW96LXBsYWNlaG9sZGVyOiB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC1tcy1pbnB1dC1wbGFjZWhvbGRlcjoge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4gIC5maWVsZCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyggMHB4IDEwcHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjQpKTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4gICNzaXRlX3NlYXJjaF9zdWJtaXQge1xuICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvc2VhcmNoJyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigyMDBtcyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eSgnYmFja2dyb3VuZC1jb2xvcicpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuICAgIHdpZHRoOiA4NXB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAwO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1ob3Zlci1jb2xvcjsgfSB9IH1cblxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICNzaXRlX3NlYXJjaCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuXG4gICNzaXRlX3NlYXJjaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgdG9wOiAtOTNweDtcbiAgICBsZWZ0OiA0MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNTBweDtcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgZmllbGRzZXQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZmllbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH0gfVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIiNjb250ZW50X21haW4ge1xuICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlcigyKTtcblxuICAmLndpdGhfc3ViX25hdiB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy10cmFpbGVyKDIpO1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9XG5cbi5zaW5nbGVfY29sdW1uLFxuLmZ1bGxfd2lkdGhfY29sdW1uIHtcbiAgLnBhZ2VfdGl0bGUsXG4gIC51Z2Mge1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9XG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCggJG1vYmlsZS1sYW5kc2NhcGUgKSB7XG4gICNjb250ZW50X21haW4ge1xuICAgICYud2l0aF9zdWJfbmF2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH1cblxuICAuc2luZ2xlX2NvbHVtbixcbiAgLmZ1bGxfd2lkdGhfY29sdW1uIHtcbiAgICAucGFnZV90aXRsZSxcbiAgICAudWdjIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH0gfVxuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkc21hbGwtdGFibGV0KSB7XG4gICNjb250ZW50X21haW4ge1xuICAgICYud2l0aF9zdWJfbmF2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH1cblxuICAuc2luZ2xlX2NvbHVtbixcbiAgLmZ1bGxfd2lkdGhfY29sdW1uIHtcbiAgICAucGFnZV90aXRsZSxcbiAgICAudWdjIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH0gfVxuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICNjb250ZW50X21haW4ge1xuICAgICYud2l0aF9zdWJfbmF2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjb2x1bW4tc3BhbiguNSwwLDYpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjb2x1bW4tc3BhbiguNSwwLDYpOyB9XG5cbiAgICAmLnNpbmdsZV9jb2x1bW4sXG4gICAgJi5mdWxsX3dpZHRoX2NvbHVtbiB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlcig1KTtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigyKTtcbiAgICAgIC5wYWdlX3RpdGxlLFxuICAgICAgLnVnYyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiBjb2x1bW4tc3Bhbig1LDAsNik7IH0gfSB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgI2NvbnRlbnRfbWFpbiB7XG4gICAgJi53aXRoX3N1Yl9uYXYge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoMCk7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSozO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDYsMCw5KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuICAgICYuc2luZ2xlX2NvbHVtbixcbiAgICAmLmZ1bGxfd2lkdGhfY29sdW1uIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDApO1xuICAgICAgLnBhZ2VfdGl0bGUsXG4gICAgICAudWdjIHtcbiAgICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDYuNSwwLDkpOyB9IH0gfSB9XG4iLCJAZnVuY3Rpb24gZ3V0dGVyLXNwYW4oJGd1dHRlcjogZmFsc2UsICRncmlkOiBmYWxzZSwgJGd1dHRlci1zdHlsZTogZmFsc2UpIHtcblxuICAvLyBGaW5kIHRoZSBjb2x1bW5zIGFuZCBndXR0ZXJzXG4gICRncmlkOiBmaW5kLWdyaWQoJGdyaWQpO1xuICAkZ3V0dGVyOiBmaW5kLWd1dHRlcigkZ3V0dGVyKTtcbiAgJGd1dHRlci1zdHlsZTogZmluZC1ndXR0ZXItc3R5bGUoJGd1dHRlci1zdHlsZSk7XG5cbiAgQGlmIGZpeGVkLWd1dHRlcigkZ3JpZCwgJGd1dHRlciwgJGd1dHRlci1zdHlsZSkge1xuICAgIEByZXR1cm4gbnRoKCRndXR0ZXIsIDEpO1xuICB9XG5cbiAgLy8gQ29tYmluZSB0aGUgY29sdW1ucyBhbmQgZ3V0dGVyc1xuICAkZ3JpZC1hbmQtZ3V0dGVyczogY29sdW1uLXN1bSgkZ3JpZCwgJGd1dHRlciwgJGd1dHRlci1zdHlsZSk7XG5cbiAgQHJldHVybiAobnRoKCRndXR0ZXIsIDEpIC8gJGdyaWQtYW5kLWd1dHRlcnMpICogMTAwJVxufSIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRmluZCB3aWR0aCwgaW4gcGVyY2VudGFnZXMsIG9mIHRoZSBjb2x1bW4gc3BhblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gY29sdW1uLXNwYW4oJHNwYW4sICRsb2NhdGlvbiwgJGdyaWQ6IG51bGwsICRndXR0ZXI6IG51bGwsICRndXR0ZXItc3R5bGU6IG51bGwpIHtcbiAgLy8gRmluZCB0aGUgZ3JpZCBhbmQgZ3V0dGVyc1xuICAkZ3JpZDogZmluZC1ncmlkKCRncmlkKTtcbiAgJGd1dHRlcjogZmluZC1ndXR0ZXIoJGd1dHRlcik7XG4gICRndXR0ZXItc3R5bGU6IGZpbmQtZ3V0dGVyLXN0eWxlKCRndXR0ZXItc3R5bGUpO1xuXG4gIEBpZiBmaXhlZC1ndXR0ZXIoJGdyaWQsICRndXR0ZXIsICRndXR0ZXItc3R5bGUpIHtcbiAgICAkZ3V0dGVyOiAwO1xuICB9XG5cbiAgLy8gQGRlYnVnICRncmlkO1xuICAvLyBAZGVidWcgJGd1dHRlcjtcblxuICAvLyBDb21iaW5lIHRoZSBncmlkIGFuZCBndXR0ZXJzXG4gICRncmlkLWFuZC1ndXR0ZXJzOiBjb2x1bW4tc3VtKCRncmlkLCAkZ3V0dGVyLCAkZ3V0dGVyLXN0eWxlKTtcblxuICAvLyBAZGVidWcgJGdyaWQtYW5kLWd1dHRlcnM7XG5cbiAgLy8gRXF1YWwgd2lkdGggZ3JpZCBhcmUgZWFzeSEgRGVhbCB3aXRoIHRoZW0hXG4gIEBpZiB0eXBlLW9mKCRncmlkKSA9PSAnbnVtYmVyJyBvciBsZW5ndGgoJGdyaWQpID09IDEge1xuICAgICRzcGFuLWFuZC1ndXR0ZXJzOiAkc3BhbiArICRndXR0ZXIgKiAoJHNwYW4gLSAxKTtcbiAgICBAcmV0dXJuICRzcGFuLWFuZC1ndXR0ZXJzIC8gJGdyaWQtYW5kLWd1dHRlcnMgKiAxMDAlO1xuICB9XG4gIC8vIEFzeW1tZXRyaWMgbGlzdHMgYXJlIGhhcmRlciwgc28gd2UncmUgZ29pbmcgdG8gdHJlYXQgdGhlbSBhcyB0aGVpciBvd24gZ3JpZFxuICBAZWxzZSBpZiB0eXBlLW9mKCRncmlkKSA9PSAnbGlzdCcgb3IgbGVuZ3RoKCRncmlkKSA+IDEge1xuICAgICRzcGFuLWFuZC1ndXR0ZXJzOiAwO1xuXG4gICAgQGlmICRsb2NhdGlvbiA9PSAxIGFuZCAkc3BhbiA+PSAxIHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHNwYW4ge1xuICAgICAgICAkc3Bhbi1hbmQtZ3V0dGVyczogJHNwYW4tYW5kLWd1dHRlcnMgKyBudGgoJGdyaWQsICRpKSArICRndXR0ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR0b3RhbDogJGxvY2F0aW9uICsgJHNwYW4gLSAxO1xuICAgICAgQGlmICR0b3RhbCAhPSAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tICRsb2NhdGlvbiB0aHJvdWdoICR0b3RhbCB7XG4gICAgICAgICAgJHNwYW4tYW5kLWd1dHRlcnM6ICRzcGFuLWFuZC1ndXR0ZXJzICsgbnRoKCRncmlkLCAkaSkgKyAkZ3V0dGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICRzcGFuLWFuZC1ndXR0ZXJzOiAkc3Bhbi1hbmQtZ3V0dGVycyAtICRndXR0ZXI7XG5cbiAgICBAcmV0dXJuICRzcGFuLWFuZC1ndXR0ZXJzIC8gJGdyaWQtYW5kLWd1dHRlcnMgKiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiBcIkNhbid0IGZpbmQgYSB3b3JraW5nIHNldCBvZiBncmlkISBUaGF0J3MgdGVycmlibGUhXCI7XG4gICAgQHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEZpbmQgdGhlIHRvdGFsIHN1bSBvZiB0aGUgZ3JpZFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gY29sdW1uLXN1bSgkZ3JpZCwgJGd1dHRlciwgJGd1dHRlci1zdHlsZSkge1xuICAkc3BsaXQ6IGlmKGluZGV4KCRndXR0ZXItc3R5bGUsICdzcGxpdCcpLCB0cnVlLCBmYWxzZSk7XG5cbiAgQGlmIHR5cGUtb2YoJGdyaWQpID09ICdudW1iZXInIG9yIGxlbmd0aCgkZ3JpZCkgPT0gMSB7XG4gICAgQGlmICRzcGxpdCB7XG4gICAgICBAcmV0dXJuIG50aCgkZ3JpZCwgMSkgKyAoKGNvbHVtbi1jb3VudChudGgoJGdyaWQsIDEpKSkgKiBudGgoJGd1dHRlciwgMSkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG50aCgkZ3JpZCwgMSkgKyAoKGNvbHVtbi1jb3VudChudGgoJGdyaWQsIDEpKSAtIDEpICogbnRoKCRndXR0ZXIsIDEpKTtcbiAgICB9XG5cbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRncmlkKSA9PSAnbGlzdCcge1xuICAgICRzdW06IDA7XG4gICAgQGVhY2ggJGNvbHVtbiBpbiAkZ3JpZCB7XG4gICAgICAkc3VtOiAkc3VtICsgbnRoKCRjb2x1bW4sIDEpO1xuICAgIH1cbiAgICBAaWYgJHNwbGl0IHtcbiAgICAgICRzdW06ICRzdW0gKyAoY29sdW1uLWNvdW50KCRncmlkKSkgKiBudGgoJGd1dHRlciwgMSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzdW06ICRzdW0gKyAoY29sdW1uLWNvdW50KCRncmlkKSAtIDEpICogbnRoKCRndXR0ZXIsIDEpO1xuICAgIH1cbiAgICBAcmV0dXJuICRzdW07XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBGaW5kIHRoZSBudW1iZXIgb2YgZ3JpZFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gY29sdW1uLWNvdW50KCRncmlkKSB7XG4gIEBpZiB0eXBlLW9mKCRncmlkKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkZ3JpZDtcbiAgfVxuICBAaWYgdHlwZS1vZigkZ3JpZCkgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRncmlkKSA9PSAxIHtcbiAgICAgIEByZXR1cm4gbnRoKCRncmlkLCAxKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHJldHVybiBsZW5ndGgoJGdyaWQpO1xuICAgIH1cbiAgfVxufSIsIlxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCdhbGwnKTtcblxuI2NvbnRlbnRfc3ViIHtcbiAgbWFyZ2luLXRvcDogNWVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlcigwKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHdpZHRoOiBjb2x1bW4tc3BhbigyLDAsOSk7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCkvMjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfSB9XG4iLCIvLyAgU3ViIG5hdmlnYXRpb25cbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuI3N1Yl9uYXZfdHJpZ2dlcl93cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlOyB9XG5cbi5zdWJfbmF2X3RyaWdnZXIge1xuICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygyNHB4KTtcbiAgQGluY2x1ZGUgYm94LXNpemluZygnYm9yZGVyLWJveCcpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHJoeXRobSguNCkgODBweCByaHl0aG0oLjQpIDI1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlO1xuICBzcGFuLmljb25faG9sZGVyLFxuICBzcGFuLmljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICBzcGFuLmljb25faG9sZGVyIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tY29sb3I7IH1cbiAgc3Bhbi5pY29uIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDIwMG1zKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KCd0cmFuc2Zvcm0nKTtcbiAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3N1Yl9uYXZfdHJpZ2dlcicpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB0b3A6IDIwcHg7XG4gICAgcmlnaHQ6IDI0cHg7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4OyB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVydGlhcnktY29sb3I7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHNwYW4uaWNvbiB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDE4MGRlZykpOyB9IH0gfVxuXG4jc3ViX25hdl93cmFwcGVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoMSk7XG4gIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigxKTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7IH1cblxuI3N1Yl9uYXYge1xuICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xuICBsaSB7XG4gICAgQGluY2x1ZGUgdHJhaWxlciguNik7IH1cblxuICBhLm1lbnVfbGluayB7XG4gICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygyNHB4KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDVweCk7XG4gICAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoLjEpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlciguMSk7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZygnYm9yZGVyLWJveCcpO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlO1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuXG4gIGxpLmxldmVsXzEge1xuICAgIGEubWVudV9saW5rIHtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgY29sb3I6ICRkYXJrYmx1ZTsgfSB9IH1cblxuICAuZHJvcGRvd24ge1xuICAgIEBpbmNsdWRlIGxlYWRlciguNik7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9IH1cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAuc3ViX25hdl90cmlnZ2VyIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDIwMG1zKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KCdiYWNrZ3JvdW5kLWNvbG9yJyk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ1JTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjsgfVxuXG4gICAgc3Bhbi5pY29uX2hvbGRlciB7XG4gICAgICB3aWR0aDogNDAlOyB9XG5cbiAgICBzcGFuLmljb24ge1xuICAgICAgbGVmdDogMjBweDsgfSB9XG5cbiAgI3N1Yl9uYXYge1xuICAgIGEubWVudV9saW5rIHtcbiAgICAgIHdpZHRoOiAzMzBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgLnN1Yl9uYXZfdHJpZ2dlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4gICNzdWJfbmF2X3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4gICNzdWJfbmF2IHtcbiAgICAkZ3V0dGVyLXN0eWxlczogb3Bwb3NpdGU7XG4gICAgbWFyZ2luLWxlZnQ6IC0gZ3V0dGVyLXNwYW4oKSoyO1xuXG4gICAgYS5tZW51X2xpbmsge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiBndXR0ZXItc3BhbigpKjI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBndXR0ZXItc3BhbigpKjI7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjsgfSB9IH1cblxuICAgIGxpLmxldmVsXzEge1xuICAgICAgYS5tZW51X2xpbmsge1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoLjIpO1xuICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlciguMik7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg4cHgpO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkeWVsbG93OyB9IH0gfVxuXG4gICAgLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGxlYWRlciguNSk7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSo0OyB9IH0gfVxuXG5cbi8vIGJvZHkgY29sb3Igb3ZlcnJpZGVzIGZvciBzdWJuYXZcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG5cbiAgI291dGVyX3dyYXBwZXIge1xuICAgIC5zaG9wLW9ubGluZSAmIHtcblxuICAgICAgI3N1Yl9uYXYge1xuICAgICAgICBhLm1lbnVfbGluayB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTsgfSB9IH0gfSB9XG5cblxuIiwiI3NlYXJjaF9yZXN1bHRzIHtcbiAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTtcbiAgLmluZm8ge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gICAgY29sb3I6ICR3aGl0ZTsgfSB9XG5cbiNzZWFyY2hfZm9ybSB7XG4gIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG5cbiAgLmZpZWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAmLnNlYXJjaF9maWVsZCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGhlaWdodDogNTRweDsgfSB9XG4gICAgJi5zZWFyY2hfYnV0dG9uIHtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgaW5wdXQge1xuICAgICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL3NlYXJjaCcpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDIwMG1zKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eSgnYmFja2dyb3VuZC1jb2xvcicpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MnB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yOyB9IH0gfSB9IH1cblxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCdhbGwnKTtcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgI3NlYXJjaF9yZXN1bHRzLFxuICAjc2VhcmNoX2Zvcm0ge1xuICAgIHdpZHRoOiBjb2x1bW4tc3Bhbig0LDAsNik7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGZpZWxkc2V0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH0gfVxuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAjc2VhcmNoX3Jlc3VsdHMsXG4gICNzZWFyY2hfZm9ybSB7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZygnYm9yZGVyLWJveCcpO1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIGZpZWxkc2V0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuICAjc2VhcmNoX2Zvcm0ge1xuICAgIC5maWVsZCB7XG4gICAgICAmLnNlYXJjaF9maWVsZCB7XG4gICAgICAgIHdpZHRoOiAyMjBweDsgfSB9IH0gfVxuIiwiI2FydGljbGVfZmlsdGVyIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAuaW5wdXQtY29udGFpbmVyOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICM0NzlEREM7IH1cblxuICAuaW5wdXQtY29udGFpbmVyOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNDc5RERDOyB9XG5cbiAgLmlucHV0LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogI0Y0RjRFRjtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNGNEY0RUY7XG4gICAgcGFkZGluZzogMCAxNnB4O1xuXG4gICAgI2xvY2F0aW9uX2ljb24ge1xuICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuICAgICNzZWFyY2hfaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRjRGNEVGO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbiAgICBpbnB1dCB7XG4gICAgICBoZWlnaHQ6IDUwcHg7IH0gfVxuICBsYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIC5ldmVudHMgJiB7XG4gICAgICBjb2xvcjogJHdoaXRlOyB9IH1cblxuICAjYXJ0aWNsZV9wb3N0Y29kZV9maWVsZCB7XG4gICAgLy8gd2lkdGg6IGNhbGMoIDEwMCUgLSA4MHB4KVxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgYmFja2dyb3VuZDogI0Y0RjRFRjtcbiAgICB3aWR0aDogMzcwcHg7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgIC5pbnB1dC1jb250YWluZXIge1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjNDc5RERDOyB9IH1cblxuICAgICY6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICMzQjNCM0I7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsOyB9IH1cblxuICAuc3VibWl0IHtcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1QcmltYXJ5LURlZmF1bHQsICMwMEFDRjEpO1xuICAgIGJveC1zaGFkb3c6IDBweCA0cHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjMwKTtcbiAgICAvLyArc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9zZWFyY2gnKVxuICAgIC8vIGZsZXg6IDEgMSAxMCVcbiAgICAvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyXG4gICAgLy8gYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdFxuICAgIC8vIHdpZHRoOiA4MHB4XG4gICAgLy8gdGV4dC1pbmRlbnQ6IC05OTlweFxuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICMwMEFDRjFcbiAgICBoZWlnaHQ6IDU2cHg7XG4gICAgcGFkZGluZzogMCAyNHB4OyB9XG5cbiAgI2FydGljbGVfcG9zdGNvZGVfZmllbGQsXG4gIC5zdWJtaXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9IH1cblxuLmNhdF9maWx0ZXIge1xuICAuY3VzdG9tU2VsZWN0IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCAwcHggMTBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNCkpOyB9IH1cblxuLnJlc2V0X2ZpbHRlciB7XG4gIC8vICtib3gtc2hhZG93KCAwcHggMTBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNCkpXG4gIC8vICtsZWFkZXIoMSlcbiAgLy8gK3RyYWlsZXIoMilcbiAgLy8gZmxleDogMSAxIDEwJVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNGN0ZGO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuXG4gIC8vIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpXG4gIGNvbG9yOiAjMDE3MUFCO1xuICBwYWRkaW5nOiAxMHB4IDI0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlO1xuICAgIGNvbG9yOiAkd2hpdGU7IH0gfVxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCdhbGwnKSB7XG4gIC5yZXNldF9maWx0ZXIge1xuIH0gfSAgICAvLyBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCkge1xuICAuZXZlbnRzIHtcbiAgICAjYXJ0aWNsZV9maWx0ZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiBndXR0ZXItc3BhbigpKjM7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBndXR0ZXItc3BhbigpKjM7XG4gICAgICBmaWVsZHNldCB7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH0gfVxuXG4gICNhcnRpY2xlX2ZpbHRlciB7XG4gICAgZmllbGRzZXQge1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbiAgICAucG9zdGNvZGVfZmllbGQge1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgLnN1Ym1pdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuICAgIC5wb3N0Y29kZV9maWVsZCxcbiAgICAucmVzZXRfZmlsdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuICAgIC5yZXNldF9maWx0ZXIge1xuIH0gfSB9ICAgICAgLy8gbWFyZ2luLXRvcDogNTBweFxuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG5cbiAgLmV2ZW50cyB7XG4gICAgI2FydGljbGVfZmlsdGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogZ3V0dGVyLXNwYW4oKSozO1xuICAgICAgcGFkZGluZy1yaWdodDogZ3V0dGVyLXNwYW4oKSozO1xuXG4gICAgICBmaWVsZHNldCB7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9XG5cbiAgICAgIC5jYXRfZmlsdGVyLFxuICAgICAgLnBvc3Rjb2RlX2ZpZWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuICAgICAgLnJlc2V0X2ZpbHRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH0gfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuXG4gIC5ldmVudHMge1xuICAgICNhcnRpY2xlX2ZpbHRlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGd1dHRlci1zcGFuKCkvMjtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGd1dHRlci1zcGFuKCkvMjtcblxuICAgICAgLmNhdF9maWx0ZXIge1xuICAgICAgICB3aWR0aDogMzMwcHg7IH0gfSB9XG5cbiAgI2FydGljbGVfZmlsdGVyIHtcbiAgICAucG9zdGNvZGVfZmllbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCkvMjsgfSB9IH1cbiIsIiNhcnRpY2xlX3RhZ19maWx0ZXIge1xuICBsYWJlbCB7XG4gICAgLnNob3Atb25saW5lICYge1xuICAgICAgY29sb3I6ICR3aGl0ZTsgfSB9IH1cblxuI2FydGljbGVfdGFnX2ZpbHRlciB7XG4gIGlucHV0IHtcbiAgICBoZWlnaHQ6IDUwcHg7IH1cbiAgbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjsgfVxuXG4gIC5maWVsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXRfYnRuX2Fycm93O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjsgfVxuXG4gIC5yZXNldF9maWx0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgnYWxsJyk7XG5cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgLnNob3Atb25saW5lIHtcbiAgICAjYXJ0aWNsZV90YWdfZmlsdGVyIHtcbiAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG4gICAgICAgICYuYnV0dG9ucyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMS45ZW07XG4gICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9IH1cbiAgICAgIC5maWVsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH0gfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAuc2hvcC1vbmxpbmUge1xuICAgICNhcnRpY2xlX3RhZ19maWx0ZXIge1xuICAgICAgZmllbGRzZXQge1xuICAgICAgICB3aWR0aDogMjgwcHg7IH0gfSB9IH1cbiIsIi5zdGVwcGVkX2Zvcm0ge1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcblxuICBsYWJlbCB7XG4gICAgY29sb3I6ICMzYjNiM2I7IH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgY29sb3I6ICNjNzAwNzc7IH1cblxuICAud3JhcCB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHdpZHRoOiBjYWxjKDc1JSArIDQwcHgpO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuICAuY3VzdG9tU2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjM2IzYjNiO1xuICAgIGJveC1zaGFkb3c6IDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4gIC5jdXN0b21TZWxlY3RJbm5lciB7XG4gICAgY29sb3I6ICMzYjNiM2I7IH1cblxuICAuZmllbGQge1xuICAgIG1hcmdpbjogMjBweCAyMHB4IDBweCAwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuXG4gICAgJi5oYWxmIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuXG4gICAgICAmOm50aC1vZi10eXBlKDJuICsgMSkge1xuICAgICAgICBjbGVhcjogbGVmdDsgfSB9IH1cblxuICAuYmFzaWNfZm9ybV9ncm91cCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuICAgIG1hcmdpbjogLTIwcHggLTIwcHggMHB4IDBweDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG4gIC5ncm91cC1jbGVhciB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7IH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC53cmFwIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAuZmllbGQuaGFsZiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7IH0gfSB9XG4iLCIuZW5ld3NsZXR0ZXJfd3JhcHBlciB7XG4gIEBleHRlbmQgJWdyYWRpZW50X3JlZDtcbiAgcGFkZGluZzogM2VtIDAuNWVtO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMCAyMHB4IHJnYmEoMCwwLDAsMC41KSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuYmtnX2ljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0zMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDE2MHB4O1xuICAgIGhlaWdodDogMTYwcHg7XG4gICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9yZWRfaWNvbjEnLCAkYmFja2dyb3VuZC1zaXplOiAxNjBweCBhdXRvKTsgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKC41KTtcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDI2cHgpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJHdoaXRlOyB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuXG4gIC5jY20tYmxvY2stZXhwcmVzcy1mb3JtIHtcbiAgICAmI2Zvcm1fd3JhcHBlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmctdG9wOiAxZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogM2VtOyB9XG5cbiAgICAuZm9ybS1hY3Rpb25zIHtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9IH0gfVxuXG4jZW5ld3NsZXR0ZXJfZm9ybSB7XG4gICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgLmZpZWxkIHtcbiAgICAmLmJ1dHRvbnMge1xuICAgICAgQGluY2x1ZGUgbGVhZGVyKDEpO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAuY3VzdG9tX2NoZWNrIGxhYmVsIHtcbiAgICBjb2xvcjogJHdoaXRlOyB9XG4gIC5jdXN0b21fY2hlY2sge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgICAgICAgd2lkdGg6IDI1JTsgfSB9IH0gfVxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgLmVuZXdzbGV0dGVyX3dyYXBwZXIge1xuXG4gICAgLmNjbS1ibG9jay1leHByZXNzLWZvcm0ge1xuICAgICAgJiNmb3JtX3dyYXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZy10b3A6IDFlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNlbTsgfVxuXG4gICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzJSAtIDIuNzc3NzglKTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4zODg4OSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMzg4ODklOyB9IH0gfVxuXG4gICNlbmV3c2xldHRlcl9mb3JtIHtcbiAgICAudGhpcmQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGd1dHRlci1zcGFuKCkvMjtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGd1dHRlci1zcGFuKCkvMjsgfVxuXG4gICAgLmhhbGYge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgIC5idXR0b25zIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH0gfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAuZW5ld3NsZXR0ZXJfd3JhcHBlciB7XG4gICAgLmNlbnRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmtnX2ljb24ge1xuICAgICAgYm90dG9tOiAtMTAwcHg7XG4gICAgICBsZWZ0OiAtNjBweDsgfSB9XG5cbiAgI2VuZXdzbGV0dGVyX2Zvcm0ge1xuICAgIHdpZHRoOiBjb2x1bW4tc3Bhbig2LDAsOSkgKyBndXR0ZXItc3BhbigpKjI7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cbiIsIiNwYXNzd29yZF9yZXNldF9mb3JtIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXRfYnRuX2Fycm93OyB9IH1cblxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCdhbGwnKSB7XG4gICNwYXNzd29yZF9yZXNldF9mb3JtIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCk7XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCk7XG4iLCIudXNlcl9mb3JtIHtcbiAgbGFiZWwsXG4gIGxlZ2VuZCB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yOyB9XG5cbiAgLmZpZWxkLFxuICAuZm9ybV9lcnJvcnMsXG4gIGxlZ2VuZCxcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4gIC5mb3JtX2Vycm9ycyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuICBmaWVsZHNldCB7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigwLjI1KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7IH1cblxuICBsZWdlbmQge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDAuMjUpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigwKTsgfVxuXG4gIC5idXR0b24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4gIC5jaGVja19ib3hfZmllbGRzLFxuICAucmFkaW9fYnV0dG9uX2ZpZWxkcyB7XG4gICAgbGFiZWwsXG4gICAgLmZpZWxkIHtcbiAgICAgIEBpbmNsdWRlIHRyYWlsZXIoMCk7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMCk7IH0gfSB9XG4iLCIucmVtb3ZlLXBhcnRpY2lwYW50IHtcbiAgJl9fY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgJl9fbGluayB7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgbnVsbCAtMTBweCAwKTsgfSB9XG4iLCIuZG9uYXRpb24ge1xuICAjY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTsgfVxuXG4gIGgxLFxuICBwIHtcbiAgICBjb2xvcjogJHdoaXRlOyB9XG5cbiAgJl9faGVhZGluZyB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICAmLS1jZW50ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgICAmLS1ib3R0b20tbWFyZ2luIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7IH0gfVxuXG4gICZfX2NvcHkge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgbWFyZ2luLWxlZnQ6IDIuODU3MTIlO1xuICAgIG1hcmdpbi1yaWdodDogMi44NTcxMiU7IH1cblxuICAmX19saW5rIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgLy8gQGV4dGVuZCAlYnV0dG9uXG4gICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgc3Bhbi5idG5faWNvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMThweDsgfSB9XG5cbiAgLnUtYWxpZ24tY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuICAuZG9uYXRpb25fX2NvbW11bmljYXRpb24ge1xuICAgIC5jdXN0b21fY2hlY2sge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9IH1cblxuICAub2RkIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmlnaHRibHVlO1xuICAgICAgLmJ0bl9pY29uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlOyB9IH0gfVxuXG4gICZfX2Jsb2NrIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSA0MHB4KTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMjBweDsgfVxuXG4gICZfX3RleHQge1xuICAgIGNvbG9yOiAkd2hpdGU7IH1cblxuICAuZ3JpZCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgLmhhbGYge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNDBweCk7IH0gfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRzbWFsbC10YWJsZXQpIHtcbiAgLmRvbmF0aW9uX19jb21tdW5pY2F0aW9uIHtcbiAgICAuY3VzdG9tX2NoZWNrIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDMycHgpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAuZG9uYXRpb25fX2NvbW11bmljYXRpb24ge1xuICAgIC5jdXN0b21fY2hlY2sge1xuXG4gICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHdpZHRoOiBpbml0aWFsOyB9IH0gfVxuIiwiI291dGVyX3dyYXBwZXIge1xuICAuc2VhcmNoICYge1xuICAgIEBleHRlbmQgJWdyYWRpZW50X3JlZDtcblxuICAgIGgxLFxuICAgIC51Z2Mge1xuICAgICAgY29sb3I6ICR3aGl0ZTsgfVxuXG4gICAgaDEucGFnZV90aXRsZSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgd2lkdGg6IDYzLjg4ODg5JTsgfVxuXG4gICAgLmFydGljbGVfbGlzdGluZyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbiAgICAuYXJ0aWNsZV9zdHViX2l0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwOyB9XG5cbiAgICAuYXJ0aWNsZV9zdHViX2xpbmsge1xuICAgICAgbWFyZ2luOiAwIDQuNTQ1NDUlIDEuNjY2NjdlbTtcbiAgICAgIHBhZGRpbmc6IDA7IH1cblxuICAgIC5hcnRpY2xlX3N0dWJfY29udGVudCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkc21hbGwtdGFibGV0KSB7XG4gICAgICAjY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTQwcHg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL3llbGxvd19zdW4uc3ZnJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuXG4gICAgICAuYXJ0aWNsZV9zdHViX2l0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgICAuYXJ0aWNsZV9zdHViX2xpbmsge1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH1cblxuICAgICAgLmFydGljbGVfc3R1Yl9jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICAgICAuYXJ0aWNsZV9zdHViX2xpbmsge1xuICAgICAgICBoZWlnaHQ6IDE4MHB4OyB9XG5cbiAgICAgIC5hcnRpY2xlX3N0dWJfY29udGVudCB7XG4gICAgICAgIGhlaWdodDogY2FsYygxODBweCAtIDEuNjY2NjdlbSk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9IH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAgICAgLmFydGljbGVfc3R1Yl9saW5rIHtcbiAgICAgICAgaGVpZ2h0OiAyNjBweDtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4gICAgICAuYXJ0aWNsZV9zdHViX2NvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMjYwcHggLSA4MHB4KTtcbiAgICAgICAgcGFkZGluZzogNDBweCA2MHB4O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpOyB9IH0gfSB9XG4iLCIuYXJ0aWNsZV9saXN0aW5nIHtcbiAgQGluY2x1ZGUgcGFkZGluZy10cmFpbGVyKDIpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5hcnRpY2xlX3N0dWJfaXRlbSB7XG4gICAgd2lkdGg6IDEwMCUgLSBndXR0ZXItc3BhbigpKjI7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiAgLmFydGljbGVfc3R1Yl9saW5rIHtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKC41KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogNXB4OyB9XG5cbiAgLmFydGljbGVfc3R1Yl9jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KCdtYXJnaW4sIHBhZGRpbmcnKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDIwMG1zKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCAwcHggMTBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRlZ2c7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4OyB9IH1cblxuICBoMi5hcnRpY2xlX3N0dWJfdGl0bGUge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoLjIpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgc3BhbiB7XG4gICAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL2Fycm93X3JpZ2h0X2JsdWUnLCAkYmFja2dyb3VuZC1zaXplOiAxOHB4IGF1dG8pO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9IH1cblxuICAuYXJ0aWNsZV9zdHViX21ldGEge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygxNnB4KTtcbiAgICBkdCxcbiAgICBkZCB7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7IH1cbiAgICBkdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgICBkZCB7fSB9XG5cbiAgLmFydGljbGVfdmVudWUsXG4gIC5hcnRpY2xlX3N0dWJfZGF0ZSxcbiAgLmFydGljbGVfc3R1Yl9hYnN0cmFjdCB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yOyB9XG5cbiAgLmFydGljbGVfc3R1Yl9pbWFnZV93cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgICBoZWlnaHQ6IDE2NnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcuYXJ0aWNsZV9zdHViX2ltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuICAgIC5ldmVudHMgJiB7XG4gICAgICBoZWlnaHQ6IDEyM3B4OyB9IH1cblxuICAuYXJ0aWNsZV92ZW51ZSxcbiAgLmFydGljbGVfc3R1Yl9kYXRlIHtcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDE2cHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogMS40ZW07IH1cblxuICAuYXJ0aWNsZV9zdHViX2Fic3RyYWN0IHtcbiAgICBAaW5jbHVkZSBsZWFkZXIoMSk7IH0gfVxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCkge1xuXG4gIC5hcnRpY2xlX2xpc3Rpbmcge1xuICAgIHBhZGRpbmctbGVmdDogZ3V0dGVyLXNwYW4oKSozO1xuICAgIHBhZGRpbmctcmlnaHQ6IGd1dHRlci1zcGFuKCkqMztcblxuICAgIC5hcnRpY2xlX3N0dWJfaXRlbSB7XG4gICAgICB3aWR0aDogNTAlIC0gZ3V0dGVyLXNwYW4oKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKS8yO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpLzI7IH1cblxuICAgIC5hcnRpY2xlX3N0dWJfbGluayB7XG4gICAgICBoZWlnaHQ6IDU5MHB4O1xuXG4gICAgICAuam9icyAmLFxuICAgICAgLnZvbHVudGVlciAmIHtcbiAgICAgICAgaGVpZ2h0OiAzOTBweDsgfSB9XG5cbiAgICAuYXJ0aWNsZV9zdHViX2NvbnRlbnQge1xuICAgICAgaGVpZ2h0OiA1NDBweDtcblxuICAgICAgLmpvYnMgJixcbiAgICAgIC52b2x1bnRlZXIgJiB7XG4gICAgICAgICAgaGVpZ2h0OiAzNDBweDsgfSB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgLmFydGljbGVfbGlzdGluZyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAuYXJ0aWNsZV9zdHViX2l0ZW0ge1xuICAgICAgd2lkdGg6IDMzJSAtIGd1dHRlci1zcGFuKCk7XG5cbiAgICAgIC52b2x1bnRlZXIgJiB7XG4gICAgICAgICAgd2lkdGg6IDUwJSAtIGd1dHRlci1zcGFuKCk7IH0gfSB9IH1cbiIsIiNvdXRlcl93cmFwcGVyIHtcbiAgLnZvbHVudGVlciAmIHtcbiAgICBAZXh0ZW5kICVncmFkaWVudF95ZWxsb3c7IH0gfVxuXG5cbiN2b2x1bnRlZXJfb3Bwb3J0dW5pdHlfbGlzdGluZyB7XG4gIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigyKTtcblxuICAuYXJ0aWNsZV9zdHViX2xpbmsge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eSgncGFkZGluZycpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oMjAwbXMpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuICAuYXJ0aWNsZV9zdHViX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoJ21hcmdpbicpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oMjAwbXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coIDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC40KSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVnZztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIG1hcmdpbjogMDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfSB9XG5cbiAgaDIuYXJ0aWNsZV9zdHViX3RpdGxlIHtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKC4yKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuICAuYXJ0aWNsZV9zdHViX2Fic3RyYWN0IHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7IH0gfVxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpO1xuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcblxuICAjdm9sdW50ZWVyX29wcG9ydHVuaXR5X2xpc3Rpbmcge1xuICAgIC5hcnRpY2xlX3N0dWJfY29udGVudCB7XG4gICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgICAgcGFkZGluZzogNDBweCA2MHB4OyB9IH0gfVxuIiwiLnBhZ2UtdGVtcGxhdGUtbmV3cy1zaW5nbGUge1xuXG4gIC5hcnRpY2xlX2RldGFpbF9tZXRhIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgICBAaW5jbHVkZSB0cmFpbGVyKDEpO1xuICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMjRweCk7XG4gICAgZHQsXG4gICAgZGQge1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yOyB9XG4gICAgZHQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gICAgZGQge30gfVxuXG4gIHRpbWUuYXJ0aWNsZV9zdHViX2RhdGUge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygyNHB4KTtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4iLCIucGFnZS10ZXh0IHtcbiAgcGFkZGluZzogMWVtIDIwcHg7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJi5ncmVlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuOyB9XG4gICYuYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyaWdodGJsdWU7IH1cbiAgJi5wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7IH1cbiAgJi5yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7IH1cbiAgJi55ZWxsb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgY29sb3I6ICRwdXJwbGU7XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAkcHVycGxlOyB9IH1cblxuICAmLnRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuICBoMiB7XG4gICAgZm9udC1mYW1pbHk6IFwiSGF5c2VlZCBXMDAgUmVndWxhclwiLEdlb3JnaWEsVGltZXMsVGltZXMgTmV3IFJvbWFuLHNlcmlmO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICBmb250LXNpemU6IDQwcHg7IH1cblxuICBoMyB7XG4gICAgZm9udC1mYW1pbHk6IFwiSGF5c2VlZCBXMDAgUmVndWxhclwiLEdlb3JnaWEsVGltZXMsVGltZXMgTmV3IFJvbWFuLHNlcmlmO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBmb250LXNpemU6IDI2cHg7IH1cblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogaW5pdGlhbDtcbiAgICBtYXJnaW4tbGVmdDogMzBweDsgfVxuXG4gIC5idXR0b24ge1xuICAgIEBleHRlbmQgJWJ1dHRvbjtcbiAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgIG1hcmdpbjogNTBweCBhdXRvIDA7IH1cblxuICAudGV4dC1oYWxmIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4gIC5wYWdlLWhlYWRlci0tbm8tbWFyZ2luIHtcbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuICAmLS1uby1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAwIWltcG9ydGFudDsgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICAgcGFkZGluZzogNWVtIDIwcHggNi42NjY2N2VtOyB9IH1cbiIsIi5wcm9kdWN0X2ltYWdlX3dyYXBwZXIge1xuICBAaW5jbHVkZSB0cmFpbGVyKDEpO1xuICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICAucHJvZHVjdF9kZXRhaWxfaW1hZ2Uge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoJ2Rpc3BsYXknKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDIwMG1zKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnByb2R1Y3RfcHJpY2VfY29sdW1uIHt9XG5cblxuLnByaWNlX3ZhcmlhYmxlcyB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDM0cHgpOyB9XG5cbiNwcm9kdWN0X3ZhcmlhdGlvbnMge1xuICBAaW5jbHVkZSBsZWFkZXIoMSk7XG4gIGxhYmVsLFxuICBsZWdlbmQge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjsgfVxuICBmaWVsZHNldC52YXJpYXRpb25zIHtcbiAgICAuZmllbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbGFiZWwucl9vbiB7XG4gICAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvcmFkaW9fb25fYWx0Jyk7IH0gfSB9XG5cbiAgZmllbGRzZXQucXVhbnRpdHkge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMS41KTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlcigxKTtcbiAgICAuZmllbGQge1xuICAgICAgd2lkdGg6IDEwMHB4OyB9XG4gICAgbGFiZWwge1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yOyB9IH1cblxuICAuYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgQGV4dGVuZCAlaW5wdXRfYnRuX2Fycm93OyB9IH1cblxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gIC5wcm9kdWN0X2ltYWdlX3dyYXBwZXIsXG4gIC5wcm9kdWN0X3ByaWNlX2NvbHVtbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IGNvbHVtbi1zcGFuKDMsMCw2KTsgfVxuXG4gIC5wcm9kdWN0X2ltYWdlX3dyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4gIC5wcm9kdWN0X3ByaWNlX2NvbHVtbiB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7IH1cblxuICAjcHJvZHVjdF92YXJpYXRpb25zIHtcbiAgICBmaWVsZHNldCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgI2NvbnRlbnRfbWFpbiB7XG4gICAgLnBhZ2UtdGVtcGxhdGUtcHJvZHVjdCAmIHtcbiAgICAgIHdpZHRoOiA2NjVweDsgfSB9XG5cbiAgLnByb2R1Y3RfaW1hZ2Vfd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZygnYm9yZGVyLWJveCcpO1xuICAgIHdpZHRoOiAzMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gIC5wcm9kdWN0X3ByaWNlX2NvbHVtbiB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH1cbiIsIi5ldmVudF9kZXRhaWxfaW5mb19ibG9jayB7XG4gIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoM3B4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbGV5ZWxsb3c7XG4gIHBhZGRpbmc6IDIwcHggZ3V0dGVyLXNwYW4oKTtcbiAgZHQge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMjRweCk7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7IH1cbiAgZGQge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoLjUpOyB9XG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9IH1cblxuLmV2ZW50X3Nob3BfZm9ybSB7XG4gIEBpbmNsdWRlIHRyYWlsZXIoMik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYnV0dG9uIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4OyB9XG5cbiAgLnZhcmlhdGlvbnMsIC5xdWFudGl0eSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCAnYWxsJyApIHtcbiAgLmV2ZW50X2RldGFpbF9pbmZvX2Jsb2NrIHtcbiAgICBwYWRkaW5nOiAyMHB4IGd1dHRlci1zcGFuKCk7IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJG1vYmlsZS1sYW5kc2NhcGUpO1xuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCk7XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gIC5ldmVudF9kZXRhaWxfaW5mb19ibG9jayB7XG4gICAgcGFkZGluZzogMjBweCBndXR0ZXItc3BhbigpKjI7XG4gICAgbWFyZ2luLWxlZnQ6IC0gZ3V0dGVyLXNwYW4oKSoyO1xuICAgIG1hcmdpbi1yaWdodDogLSBndXR0ZXItc3BhbigpKjI7IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApIHtcbiAgLmV2ZW50X2RldGFpbF9pbmZvX2Jsb2NrIHtcbiAgICBwYWRkaW5nOiAyMHB4IGd1dHRlci1zcGFuKCkqNDtcbiAgICBtYXJnaW4tbGVmdDogLSBndXR0ZXItc3BhbigpKjQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtIGd1dHRlci1zcGFuKCkqNDsgfSB9XG4iLCIuY2hlY2tvdXQge1xuICAudWdjIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4OyB9IH1cblxuLmNoZWNrb3V0LXJldmlldyB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHg7XG5cbiAgJl9fY29sdW1uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRzbWFsbC10YWJsZXQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkOyB9IH0gfVxuIiwiLmNvbnRhY3QtdXMge1xuICAjY29udGVudCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBoMiB7XG4gICAgICBAaW5jbHVkZSBsZWFkZXIoLjUpO1xuICAgICAgQGluY2x1ZGUgdHJhaWxlciguMik7XG4gICAgICBjb2xvcjogJHdoaXRlOyB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9IH1cblxuICAgIC5jb250YWN0X2Jsb2Nrc19pdGVtIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiAgICAuc3VuX2ljb24ge1xuICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy95ZWxsb3dfc3VuJywgJGJhY2tncm91bmQtc2l6ZTogMjYwcHggYXV0byk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMjgwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDI2MHB4O1xuICAgICAgaGVpZ2h0OiAyNjBweDsgfVxuXG4gICAgLmNlbnRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfSB9XG5cblxuLmNvbnRhY3QtdXMge1xuICAjY29udGVudCB7XG4gICAgLmZ1bmRyYWlzZSAmIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcig2KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAudGl0bGUge1xuICAgICAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDM2cHgpO1xuICAgICAgICBAaW5jbHVkZSB0cmFpbGVyKDEpO1xuICAgICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH0gfSB9XG5cbi8vIFJlc3BvbnNpdmVcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCggJ2FsbCcgKSB7XG4gIC5jb250YWN0LXVzIHtcbiAgICAjY29udGVudCB7XG4gICAgICAuY29udGFjdF9ibG9ja3NfaXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH0gfSB9XG5cbiAgLmNvbnRhY3QtdXMge1xuICAgICNjb250ZW50IHtcbiAgICAgIC5mdW5kcmFpc2UgJiB7XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH0gfSB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCk7XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gIC5jb250YWN0LXVzIHtcbiAgICAjY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogY29sdW1uLXNwYW4oLjUsMCkgKyBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjb2x1bW4tc3BhbiguNSwwKSArIGd1dHRlci1zcGFuKCk7XG4gICAgICAuY29udGFjdF9ibG9ja3NfaXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDMwcHgpO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH0gfSB9XG5cblxuICAuY29udGFjdC11cyB7XG4gICAgI2NvbnRlbnQge1xuICAgICAgLmZ1bmRyYWlzZSAmIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuICAgICAgICAuY29udGFjdF9ibG9ja3NfaXRlbSB7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhaWxlcigxKTtcbiAgICAgICAgICB3aWR0aDogY29sdW1uLXNwYW4oOCwwLDkpO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4gICAgICAgIC5zcGxpdF9ibG9ja19sZWZ0LFxuICAgICAgICAuc3BsaXRfYmxvY2tfcmlnaHQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgIHdpZHRoOiA1MCU7IH0gfSB9IH0gfVxuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuXG4gIC5jb250YWN0LXVzIHtcbiAgICAjY29udGVudCB7XG4gICAgICB3aWR0aDogY29sdW1uLXNwYW4oNi41LDAsOSk7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIC5jb250YWN0X2Jsb2Nrc19pdGVtIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9IH1cblxuXG4gIC5jb250YWN0LXVzIHtcbiAgICAjY29udGVudCB7XG4gICAgICAuZnVuZHJhaXNlICYge1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMik7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICAgIC5zdW5faWNvbiB7XG4gICAgICAgICAgYm90dG9tOiAtMTUwcHg7XG4gICAgICAgICAgbGVmdDogLTEwMHB4OyB9XG5cbiAgICAgICAgLmNvbnRhY3RfYmxvY2tzX2l0ZW0ge1xuICAgICAgICAgIHdpZHRoOiBjb2x1bW4tc3Bhbig2LDAsOSk7IH0gfSB9IH0gfVxuIiwiI2dhbGxlcnlfd3JhcHBlciB7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDIpO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiAzZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuI3NoYWRvdyB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coIDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC4yKSk7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTsgfVxuXG4jY2Fyb3VzZWxfY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNzAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLmNhcm91c2VsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXG4gIC5zbGlkZSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShiYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDEwMG1zKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAuc2xpZGVfaW5uZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiAgICAub3ZlcmxheSB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KGJhY2tncm91bmQpO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigyMDBtcyk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkYmxhY2ssIDAuMSk7IH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIC5vdmVybGF5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfSB9IH1cblxuLmdhbGxlcnlfaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY2Fyb3VzZWxfY29udHJvbF9wcmV2aW91cyB7XG4gIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvYXJyb3dfbGVmdF9ibHVlJywgJGJhY2tncm91bmQtc2l6ZTogMzBweCBhdXRvKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbGVmdDogLTUwcHg7IH1cblxuLmNhcm91c2VsX2NvbnRyb2xfbmV4dCB7XG4gIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvYXJyb3dfcmlnaHRfYmx1ZScsICRiYWNrZ3JvdW5kLXNpemU6IDMwcHggYXV0byk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHJpZ2h0OiAtNTBweDsgfVxuXG4uY2Fyb3VzZWxfY29udHJvbF9wcmV2aW91cyxcbi5jYXJvdXNlbF9jb250cm9sX25leHQge1xuICBAaW5jbHVkZSBoaWRlLXRleHQ7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDQ1JTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbiNnYWxsZXJ5X25hdiB7XG4gIEBpbmNsdWRlIGxlYWRlcigxLjUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmdhbGxlcnlfdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDAgNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JleTtcbiAgJjpob3ZlcixcbiAgJi5hY3RpdmVfdGFiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJpZ2h0Ymx1ZTsgfVxuICAmLmNsb25lIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuXG4vLyBSZXNwb25zaXZlXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCggJHNtYWxsLXRhYmxldCApIHtcbiAgLmNhcm91c2VsX2NvbnRyb2xfcHJldmlvdXMsXG4gIC5jYXJvdXNlbF9jb250cm9sX25leHQge1xuICAgIHRvcDogNDAlOyB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCAkdGFibGV0ICkge1xuICAjY2Fyb3VzZWxfY29udGFpbmVyIHtcbiAgICB3aWR0aDogNjAwcHg7IH1cblxuICAuY2Fyb3VzZWxfY29udHJvbF9wcmV2aW91cyxcbiAgLmNhcm91c2VsX2NvbnRyb2xfbmV4dCB7XG4gICAgdG9wOiA0NSU7IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoICR0YWJsZXQgKSB7XG4gICNjYXJvdXNlbF9jb250YWluZXIge1xuICAgIHdpZHRoOiA3MzVweDsgfSB9XG5cbiIsIiNldmVudF9pbWFnZV9pbWFnZV9jb2x1bW4sXG4jZXZlbnRfaW1hZ2VfZGVzY3JpcHRpb24ge1xuICBAaW5jbHVkZSB0cmFpbGVyKDEpO1xuICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiNldmVudF9pbWFnZV9mcmFtZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtaWQtZ3JleTsgfVxuXG4jZXZlbnRfZ2FsbGVyeV9pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuI2V2ZW50X2ltYWdlX25hdmlnYXRpb24ge1xuICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlcigwLjUpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMC41KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbGluay1jb2xvcjsgfSB9XG5cbiAgLnByZXZfaW1hZ2Uge1xuICAgIEBpbmNsdWRlIGZsb2F0LWxlZnQ7IH1cbiAgLm5leHRfaW1hZ2Uge1xuICAgIEBpbmNsdWRlIGZsb2F0LXJpZ2h0OyB9IH1cblxuXG4jZXZlbnRfaW1hZ2VfZGVzY3JpcHRpb24ge1xuICBwIHtcbiAgICBAaW5jbHVkZSB0cmFpbGVyKDEpOyB9XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH0gfVxuXG4vLyBSZXNwb25zaXZlXG4vL35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+flxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRtb2JpbGUtbGFuZHNjYXBlKSB7XG4gICNldmVudF9pbWFnZV9pbWFnZV9jb2x1bW4sXG4gICNldmVudF9pbWFnZV9kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRzbWFsbC10YWJsZXQpIHtcbiAgI2V2ZW50X2ltYWdlX2ltYWdlX2NvbHVtbixcbiAgI2V2ZW50X2ltYWdlX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH1cblxuICAjZXZlbnRfaW1hZ2VfaW1hZ2VfY29sdW1uLFxuICAjZXZlbnRfaW1hZ2VfZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIGZsb2F0LWxlZnQ7XG4gICAgd2lkdGg6IGNvbHVtbi1zcGFuKDIsMSkgLSBndXR0ZXItc3BhbigpOyB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjZXZlbnRfaW1hZ2VfaW1hZ2VfY29sdW1uLFxuICAjZXZlbnRfaW1hZ2VfZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfVxuXG4gICNldmVudF9pbWFnZV9pbWFnZV9jb2x1bW4ge1xuICAgIHdpZHRoOiBjb2x1bW4tc3Bhbig0LDEpIC0gZ3V0dGVyLXNwYW4oKTsgfVxuICAjZXZlbnRfaW1hZ2VfZGVzY3JpcHRpb24ge1xuICAgIHdpZHRoOiBjb2x1bW4tc3BhbigyLDEpIC0gZ3V0dGVyLXNwYW4oKTtcbiAgICAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfSB9XG5cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG4gICNldmVudF9pbWFnZV9pbWFnZV9jb2x1bW4ge1xuICAgIG1hcmdpbi1sZWZ0OiBncmlkLXNwYW4oMSwgMSkgKyBndXR0ZXItc3BhbigpLzI7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpLzI7XG4gICAgd2lkdGg6IGNvbHVtbi1zcGFuKDUsMik7IH1cblxuICAjZXZlbnRfaW1hZ2VfZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpLzI7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpLzI7XG4gICAgd2lkdGg6IGNvbHVtbi1zcGFuKDMsNyk7IH0gfVxuIiwiLy8gSW1wbGVtZW50YXRpb24gb2YgZmxvYXQ6bGVmdCB3aXRoIGZpeCBmb3IgdGhlXG4vLyBbZG91YmxlLW1hcmdpbiBidWcgaW4gSUU1LzZdKGh0dHA6Ly93d3cucG9zaXRpb25pc2V2ZXJ5dGhpbmcubmV0L2V4cGxvcmVyL2RvdWJsZWQtbWFyZ2luLmh0bWwpXG5AbWl4aW4gZmxvYXQtbGVmdCB7XG4gIEBpbmNsdWRlIGZsb2F0KGxlZnQpOyB9XG5cbi8vIEltcGxlbWVudGF0aW9uIG9mIGZsb2F0OnJpZ2h0IHdpdGggZml4IGZvciB0aGVcbi8vIFtkb3VibGUtbWFyZ2luIGJ1ZyBpbiBJRTUvNl0oaHR0cDovL3d3dy5wb3NpdGlvbmlzZXZlcnl0aGluZy5uZXQvZXhwbG9yZXIvZG91YmxlZC1tYXJnaW4uaHRtbClcbkBtaXhpbiBmbG9hdC1yaWdodCB7XG4gIEBpbmNsdWRlIGZsb2F0KHJpZ2h0KTsgfVxuXG4vLyBEaXJlY3Rpb24gaW5kZXBlbmRlbnQgZmxvYXQgbWl4aW4gdGhhdCBmaXhlcyB0aGVcbi8vIFtkb3VibGUtbWFyZ2luIGJ1ZyBpbiBJRTUvNl0oaHR0cDovL3d3dy5wb3NpdGlvbmlzZXZlcnl0aGluZy5uZXQvZXhwbG9yZXIvZG91YmxlZC1tYXJnaW4uaHRtbClcbkBtaXhpbiBmbG9hdCgkc2lkZTogbGVmdCkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiB1bnF1b3RlKCRzaWRlKTsgfVxuXG4vLyBSZXNldHMgZmxvYXRlZCBlbGVtZW50cyBiYWNrIHRvIHRoZWlyIGRlZmF1bHQgb2YgYGZsb2F0OiBub25lYCBhbmQgZGVmYXVsdHNcbi8vIHRvIGBkaXNwbGF5OiBibG9ja2AgdW5sZXNzIHlvdSBwYXNzIGBpbmxpbmVgIGFzIGFuIGFyZ3VtZW50XG4vL1xuLy8gVXNhZ2UgRXhhbXBsZTpcbi8vXG4vLyAgICAgYm9keS5ob21lcGFnZVxuLy8gICAgICAgI2Zvb3RlciBsaVxuLy8gICAgICAgICArZmxvYXQtbGVmdFxuLy8gICAgIGJvZHkuc2lnbnVwXG4vLyAgICAgICAjZm9vdGVyIGxpXG4vLyAgICAgICAgICtyZXNldC1mbG9hdFxuQG1peGluIHJlc2V0LWZsb2F0KCRkaXNwbGF5OiBibG9jaykge1xuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogJGRpc3BsYXk7IH1cbiIsIiNjb250ZW50IHtcbiAgLmhvbWUgJiB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoMCk7IH0gfVxuXG4iLCIuanVzdC1naXZpbmcsXG4uY29tcGxldGUge1xuICAjY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTsgfVxuXG4gIHAge1xuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH0gfSB9XG4iLCIuc2l0ZW1hcCB7XG4gICNzdWJfbmF2IHtcbiAgICBsaSB7XG4gICAgICBtaW4taGVpZ2h0OiAzMHB4OyB9XG5cbiAgICBhIHtcbiAgICAgICYubWVudV9saW5rIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgVzAxIFJvbWFuJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbiAgICAuZHJvcGRvd24ge1xuICAgICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgVzAxIFJvbWFuJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9IH1cbiIsIiNvdXRlcl93cmFwcGVyIHtcbiAgLm5ld3NsZXR0ZXJfcGFnZSAmIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoNCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgICBoMSxcbiAgICAudWdjIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7IH1cblxuICAgIGgxIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9IH1cblxuIiwiI292ZXJ2aWV3X2xlYWRlciB7XG4gIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDIpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMik7IH1cblxuI292ZXJ2aWV3X2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7IC8vIE9sZCBicm93c2Vyc1xuICBAaW5jbHVkZSBmaWx0ZXItZ3JhZGllbnQoJHllbGxvdywgJGRhcmt5ZWxsb3csIHZlcnRpY2FsKTsgLy8gSUU2LTlcbiAgQGluY2x1ZGUgYmFja2dyb3VuZChsaW5lYXItZ3JhZGllbnQodG9wLCAkeWVsbG93IDQwJSwgJGRhcmt5ZWxsb3cgMTAwJSkpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5jZW50ZXIge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDQpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcig0KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuICAuaWNvbl90b3AsXG4gIC5pY29uX2JvdHRvbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxNDBweDtcbiAgICBoZWlnaHQ6IDE0MHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4gIC5pY29uX3RvcCB7XG4gICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoXCIuLi9pbWFnZXMvaWNvbnMveWVsbG93X2ljb24xXCIpO1xuICAgIHRvcDogLTMwcHg7XG4gICAgbGVmdDogLTMwcHg7IH1cblxuICAuaWNvbl9ib3R0b20ge1xuICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKFwiLi4vaW1hZ2VzL2ljb25zL3llbGxvd19pY29uMlwiKTtcbiAgICBib3R0b206IC0zMHB4O1xuICAgIHJpZ2h0OiAtMzBweDsgfVxuXG4gIC5vdmVydmlld19ibG9jayB7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigyKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLm92ZXJ2aWV3X2Fic3RyYWN0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9IH1cblxuICAuYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgQGluY2x1ZGUgbGVhZGVyKDEpO1xuICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMTZweCk7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuXG4gIC5vZGQge1xuICAgIC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1jb2xvcjtcbiAgICAgIHNwYW4uYnRuX2ljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya2JsdWU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24taG92ZXItY29sb3I7IH0gfSB9IH0gfVxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoICdhbGwnICk7XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICNvdmVydmlld19sZWFkZXIge1xuICAgICYuc2luZ2xlX2NvbHVtbiB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlcigzKTtcbiAgICAgIC5wYWdlX3RpdGxlLFxuICAgICAgLnVnYyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiBjb2x1bW4tc3Bhbig1LDAsNik7IH0gfSB9XG5cblxuICAjb3ZlcnZpZXdfY29udGFpbmVyIHtcbiAgICAub3ZlcnZpZXdfYmxvY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogY29sdW1uLXNwYW4oNCwwLDYpO1xuXG4gICAgICAub3ZlcnZpZXdfYWJzdHJhY3Qge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH0gfSB9XG5cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG5cbiAgI292ZXJ2aWV3X2xlYWRlciB7XG4gICAgJi5zaW5nbGVfY29sdW1uIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDApO1xuICAgICAgLnBhZ2VfdGl0bGUsXG4gICAgICAudWdjIHtcbiAgICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDYuNSwwLDkpOyB9IH0gfVxuXG5cbiAgI292ZXJ2aWV3X2NvbnRhaW5lciB7XG4gICAgLm92ZXJ2aWV3X2Jsb2NrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHdpZHRoOiBjb2x1bW4tc3BhbigzLjUsMCw5KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjb2x1bW4tc3BhbigxLDAsOSk7XG5cbiAgICAgIC5vdmVydmlld19hYnN0cmFjdCB7XG4gICAgICAgIGhlaWdodDogODBweDsgfSB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGxlYWRlciguOCk7XG4gICAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDIwcHgpOyB9IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50KCAxMjAwcHggKSB7XG4gICNvdmVydmlld19jb250YWluZXIge1xuICAgIC5pY29uX3RvcCB7XG4gICAgICBsZWZ0OiAtOTBweDsgfVxuICAgIC5pY29uX2JvdHRvbSB7XG4gICAgICByaWdodDogLTkwcHg7IH0gfSB9XG4iLCIjZG9uYXRlX2Jsb2NrIHtcbiAgQGV4dGVuZCAlZ3JhZGllbnRfcHVycGxlO1xuICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlcigyKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDI2cHgpO1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMS41KTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfVxuXG4gIC5idXR0b24ge1xuICAgIEBleHRlbmQgJWJ1dHRvbjtcbiAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDE2cHgpO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICNkb25hdGVfYmxvY2sge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDMpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigzKTtcbiAgICAuYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMjBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiBjb2x1bW4tc3BhbigyLjUsMCw2KTsgfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG4gICNkb25hdGVfYmxvY2sge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctbGVhZGVyKDMpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigzKTtcbiAgICAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiBjb2x1bW4tc3BhbigzLDAsOSk7IH0gfSB9XG5cbiIsIi5kb25hdGlvbi1jYXJkcyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmX19jYXJkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDEwcHggMCByZ2JhKCRibGFjaywgLjQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAzMnB4O1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4gICZfX21lZGlhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4gICZfX3RleHQge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgcGFkZGluZzogMzBweCAyMHB4OyB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgICAmX19jYXJkIHtcbiAgICAgIHdpZHRoOiAzMC4xNDI4OCU7XG4gICAgICBtYXJnaW4tbGVmdDogMS4xNjI3OSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMTYyNzklOyB9IH0gfVxuIiwiLmRvdWJsZV9saW5rX2Jsb2NrX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZXk7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5saW5rX2Jsb2NrX21haW5fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoJ2JvcmRlci1ib3gnKTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMjRweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICB6LWluZGV4OiAzO1xuICAgIHdpZHRoOiAyNDBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMjBweDtcbiAgICB0b3A6IDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgLmxpbmtfYmxvY2tfZGV0YWlsIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLWxlYWRlciguNCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG5cbiAgLmRvdWJsZV9ibG9ja19saW5rIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7IH0gfVxuXG5cbiAgLmxpbmtfYmxvY2tfY29udGVudCB7XG4gICAgJi55ZWxsb3cge1xuICAgICAgaDIsXG4gICAgICAuZG91YmxlX2Jsb2NrX2xpbmsge1xuICAgICAgICBjb2xvcjogJHB1cnBsZTsgfSB9IH0gfVxuXG5cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCAnYWxsJyApO1xuXG5cbkBtZWRpYSAobWluLWhlaWdodDogODAwcHgpIGFuZCAobWluLXdpZHRoOiA5NjFweCkge1xuXG4gIC5kb3VibGVfbGlua19ibG9ja193cmFwcGVyIHtcblxuICAgIC5saW5rX2Jsb2NrX21haW5fdGl0bGUge1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xNTBweDtcbiAgICAgIHRvcDogMTAwcHg7IH1cblxuICAgIC5saW5rX2Jsb2NrX3dyYXBwZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuXG4gICAgICAmLmxlZnRfc2lkZSxcbiAgICAgICYucmlnaHRfc2lkZSB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH1cblxuICAgICAgJi5sZWZ0X3NpZGUge1xuICAgICAgICAubGlua19ibG9ja19yZXZlYWwge1xuICAgICAgICAgIHJpZ2h0OiA1MCU7IH1cbiAgICAgICAgLmxpbmtfYmxvY2tfY29udGVudF9pbm5lciB7XG4gICAgICAgICAgcmlnaHQ6IDMwcHg7IH0gfVxuXG4gICAgICAmLnJpZ2h0X3NpZGUge1xuICAgICAgICAubGlua19ibG9ja19yZXZlYWwge1xuICAgICAgICAgIGxlZnQ6IDUwJTsgfVxuICAgICAgICAubGlua19ibG9ja19jb250ZW50X2lubmVyIHtcbiAgICAgICAgICBsZWZ0OiAzMHB4OyB9IH1cbiAgICAgIC5saW5rX2Jsb2NrX2ljb24ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgdG9wOiAtMTIwcHg7IH0gfVxuXG4gICAgLmxpbmtfYmxvY2tfY29udGVudF9pbm5lciB7XG4gICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwOyB9XG5cbiAgICAubGlua19ibG9ja19jb250ZW50IHtcbiAgICAgIGhlaWdodDogMTYwcHg7IH0gfSB9XG5cbiIsIi5mdW5kcmFpc2luZ193cmFwcGVyIHtcbiAgQGV4dGVuZCAlZ3JhZGllbnRfcmVkO1xuICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoMyk7XG4gIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigzKTtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAudGV4dF9jb2x1bW4ge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIHRyYWlsZXIoLjUpO1xuICAgICAgY29sb3I6ICR3aGl0ZTsgfVxuICAgIHAge1xuICAgICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygyNHB4KTsgfSB9XG5cbiAgLnRhcmdldF9hbW91bnQge1xuICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oNzBweCk7XG4gICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9mdW5kcmFpc2luZ19ia2cnKTtcbiAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgd2lkdGg6IDI4NXB4O1xuICAgIGhlaWdodDogMTg1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJ2FsbCcpIHtcbiAgLmZ1bmRyYWlzaW5nX3dyYXBwZXIge1xuICAgIC50ZXh0X2NvbHVtbiB7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTsgfSB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpO1xuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAuZnVuZHJhaXNpbmdfd3JhcHBlciB7XG4gICAgLnRleHRfY29sdW1uLFxuICAgIC50YXJnZXRfYW1vdW50IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuICAgIC50YXJnZXRfYW1vdW50IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7IH1cbiAgICAudGV4dF9jb2x1bW4ge1xuICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDUsMCw5KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpKjI7IH0gfSB9XG5cbiIsIi8vIEluZGljYXRlcyB0aGUgZGlyZWN0aW9uIHlvdSBwcmVmZXIgdG8gbW92ZSB5b3VyIHRleHRcbi8vIHdoZW4gaGlkaW5nIGl0LlxuLy9cbi8vIGBsZWZ0YCBpcyBtb3JlIHJvYnVzdCwgZXNwZWNpYWxseSBpbiBvbGRlciBicm93c2Vycy5cbi8vIGByaWdodGAgc2VlbXMgaGF2ZSBiZXR0ZXIgcnVudGltZSBwZXJmb3JtYW5jZS5cbiRoaWRlLXRleHQtZGlyZWN0aW9uOiBsZWZ0ICFkZWZhdWx0O1xuXG4vLyBIaWRlcyBodG1sIHRleHQgYW5kIHJlcGxhY2VzIGl0IHdpdGggYW4gaW1hZ2UuXG4vLyBJZiB5b3UgdXNlIHRoaXMgb24gYW4gaW5saW5lIGVsZW1lbnQsIHlvdSB3aWxsIG5lZWQgdG8gY2hhbmdlIHRoZSBkaXNwbGF5IHRvIGJsb2NrIG9yIGlubGluZS1ibG9jay5cbi8vIEFsc28sIGlmIHRoZSBzaXplIG9mIHRoZSBpbWFnZSBkaWZmZXJzIHNpZ25pZmljYW50bHkgZnJvbSB0aGUgZm9udCBzaXplLCB5b3UnbGwgbmVlZCB0byBzZXQgdGhlIHdpZHRoIGFuZC9vciBoZWlnaHQuXG4vL1xuLy8gUGFyYW1ldGVyczpcbi8vXG4vLyAqIGBpbWdgIC0tIHRoZSByZWxhdGl2ZSBwYXRoIGZyb20gdGhlIHByb2plY3QgaW1hZ2UgZGlyZWN0b3J5IHRvIHRoZSBpbWFnZSwgb3IgYSB1cmwgbGl0ZXJhbC5cbi8vICogYHhgIC0tIHRoZSB4IHBvc2l0aW9uIG9mIHRoZSBiYWNrZ3JvdW5kIGltYWdlLlxuLy8gKiBgeWAgLS0gdGhlIHkgcG9zaXRpb24gb2YgdGhlIGJhY2tncm91bmQgaW1hZ2UuXG5AbWl4aW4gcmVwbGFjZS10ZXh0KCRpbWcsICR4OiA1MCUsICR5OiA1MCUpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xuICBiYWNrZ3JvdW5kOiB7XG4gICAgQGlmIGlzLXVybCgkaW1nKSB7XG4gICAgICBpbWFnZTogdXJsKCRpbWcpOyB9XG4gICAgQGVsc2Uge1xuICAgICAgaW1hZ2U6IGltYWdlLXVybCgkaW1nKTsgfVxuICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBvc2l0aW9uOiAkeCAkeTsgfSB9XG5cbi8vIExpa2UgdGhlIGByZXBsYWNlLXRleHRgIG1peGluLCBidXQgYWxzbyBzZXRzIHRoZSB3aWR0aFxuLy8gYW5kIGhlaWdodCBvZiB0aGUgZWxlbWVudCBhY2NvcmRpbmcgdGhlIGRpbWVuc2lvbnMgb2YgdGhlIGltYWdlLlxuLy9cbi8vIElmIHlvdSBzZXQgYCRpbmxpbmVgIHRvIHRydWUsIHRoZW4gYW4gaW5saW5lIGltYWdlIChkYXRhIHVyaSkgd2lsbCBiZSB1c2VkLlxuQG1peGluIHJlcGxhY2UtdGV4dC13aXRoLWRpbWVuc2lvbnMoJGltZywgJHg6IDUwJSwgJHk6IDUwJSwgJGlubGluZTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmVwbGFjZS10ZXh0KGlmKCRpbmxpbmUsIGlubGluZS1pbWFnZSgkaW1nKSwgJGltZyksICR4LCAkeSk7XG4gIHdpZHRoOiBpbWFnZS13aWR0aCgkaW1nKTtcbiAgaGVpZ2h0OiBpbWFnZS1oZWlnaHQoJGltZyk7IH1cblxuLy8gSGlkZXMgdGV4dCBpbiBhbiBlbGVtZW50IHNvIHlvdSBjYW4gc2VlIHRoZSBiYWNrZ3JvdW5kLlxuLy9cbi8vIFRoZSBkaXJlY3Rpb24gaW5kaWNhdGVzIGhvdyB0aGUgdGV4dCBzaG91bGQgYmUgbW92ZWQgb3V0IG9mIHZpZXcuXG4vL1xuLy8gU2VlIGAkaGlkZS10ZXh0LWRpcmVjdGlvbmAgZm9yIG1vcmUgaW5mb3JtYXRpb24gYW5kIHRvIHNldCB0aGlzIGdsb2JhbGx5XG4vLyBmb3IgeW91ciBhcHBsaWNhdGlvbi5cbkBtaXhpbiBoaWRlLXRleHQoJGRpcmVjdGlvbjogJGhpZGUtdGV4dC1kaXJlY3Rpb24pIHtcbiAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgJGFwcHJveGltYXRlLWVtLXZhbHVlOiAxMnB4O1xuICAgICR3aWRlci10aGFuLWFueS1zY3JlZW46IC05OTk5O1xuICAgIHRleHQtaW5kZW50OiAkd2lkZXItdGhhbi1hbnktc2NyZWVuICogJGFwcHJveGltYXRlLWVtLXZhbHVlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICBAZWxzZSB7XG4gICAgLy8gc2xpZ2h0bHkgd2lkZXIgdGhhbiB0aGUgYm94IHByZXZlbnRzIGlzc3VlcyB3aXRoIGlubGluZS1ibG9jayBlbGVtZW50c1xuICAgIHRleHQtaW5kZW50OiAxMTAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbi8vIEhpZGVzIHRleHQgaW4gYW4gZWxlbWVudCBieSBzcXVpc2hpbmcgdGhlIHRleHQgaW50byBvYmxpdmlvbi5cbi8vIFVzZSB0aGlzIGlmIHlvdSBuZWVkIHRvIGhpZGUgdGV4dCBjb250YWluZWQgaW4gYW4gaW5saW5lIGVsZW1lbnRcbi8vIGJ1dCBzdGlsbCBoYXZlIGl0IHJlYWQgYnkgYSBzY3JlZW4gcmVhZGVyLlxuQG1peGluIHNxdWlzaC10ZXh0IHtcbiAgZm9udDogMC8wIHNlcmlmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG4iLCIuY2NtLWltYWdlLXNsaWRlci1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnJzbGlkZXMge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGxpIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDQwMHB4OyB9XG5cbiAgICAubWVnYS1saW5rLW92ZXJsYXkge1xuICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgMCAwIDApOyB9IH1cblxuICAuY2NtLWltYWdlLXNsaWRlci10ZXh0IHtcbiAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgYXV0byBudWxsIDMycHggNDBweCk7XG4gICAgY29sb3I6ICR3aGl0ZTsgfVxuXG4gIC5yc2xpZGVzX25hdiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHg7XG5cbiAgICAmLnByZXYge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9hcnJvd19sZWZ0LnBuZyk7IH1cblxuICAgICYubmV4dCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2Fycm93X3JpZ2h0LnBuZyk7IH0gfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KSB7XG4gICAgLnJzbGlkZXMge1xuICAgICAgbGkge1xuICAgICAgICBoZWlnaHQ6IDgwMHB4OyB9IH1cblxuICAgIC5jY20taW1hZ2Utc2xpZGVyLXRleHQge1xuICAgICAgbGVmdDogMzJweDsgfSB9IH1cbiIsIi5saW5rX2Jsb2NrX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZXk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoOyB9XG5cbi5saW5rX2Jsb2NrX2ltYWdlIHtcbiAgQGV4dGVuZCAlaW1hZ2VfY292ZXI7XG4gIGhlaWdodDogMTAwdmg7IH1cblxuLmxpbmtfYmxvY2tfaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNjBweDtcbiAgbGVmdDogLTYwcHg7XG4gIHdpZHRoOiAxNDBweDtcbiAgaGVpZ2h0OiAxNDBweDtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4ubGlua19ibG9ja190aXRsZSB7XG4gIEBpbmNsdWRlIGxlYWRlcigxLjUpO1xuICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cblxuLmxpbmtfYmxvY2tfcmV2ZWFsIHtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAzOyB9XG5cbi5saW5rX2Jsb2NrX2NvbnRlbnQge1xuICBoZWlnaHQ6IDI1MHB4O1xuICAmLnllbGxvdyB7XG4gICAgQGV4dGVuZCAlZ3JhZGllbnRfeWVsbG93O1xuICAgIC5saW5rX2Jsb2NrX2ljb24ge1xuICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy95ZWxsb3dfaWNvbjInLCAkYmFja2dyb3VuZC1zaXplOiAxNDBweCBhdXRvKTsgfVxuICAgIC5saW5rX2Jsb2NrX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAkcHVycGxlOyB9IH1cbiAgJi5ibHVlIHtcbiAgICBAZXh0ZW5kICVncmFkaWVudF9ibHVlO1xuICAgIC5saW5rX2Jsb2NrX2ljb24ge1xuICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9ibHVlX3N1bicsICRiYWNrZ3JvdW5kLXNpemU6IDE0MHB4IGF1dG8pOyB9XG4gICAgLmxpbmtfYmxvY2tfdGl0bGUge1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yOyB9IH1cbiAgJi5waW5rIHtcbiAgICBAZXh0ZW5kICVncmFkaWVudF9waW5rO1xuICAgIC5saW5rX2Jsb2NrX2ljb24ge1xuICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9waW5rX2ljb24xJywgJGJhY2tncm91bmQtc2l6ZTogMTQwcHggYXV0byk7XG4gICAgICB0b3A6IC0zMHB4O1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmxpbmtfYmxvY2tfdGl0bGUge1xuICAgICAgY29sb3I6ICR3aGl0ZTsgfVxuXG4gICAgLmxpbmtfYmxvY2tfZGV0YWlsIHtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya3Bpbms7XG4gICAgICAgIC5idG5faWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0cGluaztcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrcGluazsgfSB9IH0gfSB9XG5cbiAgJi5wdXJwbGUge1xuICAgIEBleHRlbmQgJWdyYWRpZW50X3B1cnBsZTtcbiAgICAubGlua19ibG9ja19pY29uIHtcbiAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvcHVycGxlX3N1bicsICRiYWNrZ3JvdW5kLXNpemU6IDE0MHB4IGF1dG8pOyB9XG4gICAgLmxpbmtfYmxvY2tfdGl0bGUge1xuICAgICAgY29sb3I6ICR3aGl0ZTsgfSB9XG4gICYuZ3JlZW4ge1xuICAgIEBleHRlbmQgJWdyYWRpZW50X2dyZWVuO1xuICAgIC5saW5rX2Jsb2NrX2ljb24ge1xuICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoJy4uL2ltYWdlcy9pY29ucy9ncmVlbl9zdW4nLCAkYmFja2dyb3VuZC1zaXplOiAxNDBweCBhdXRvKTsgfVxuICAgIC5saW5rX2Jsb2NrX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7IH0gfVxuXG4gIC5jZW50ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cblxuLmxpbmtfYmxvY2tfZGV0YWlsIHtcbiAgaGVpZ2h0OiAyMTVweDtcbiAgLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMTRweCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7IH0gfVxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoICdhbGwnICk7XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkbW9iaWxlLWxhbmRzY2FwZSkge1xuXG4gIC5saW5rX2Jsb2NrX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBsZWFkZXIoMSk7IH1cbiAgLmxpbmtfYmxvY2tfcmV2ZWFsLFxuICAubGlua19ibG9ja19jb250ZW50IHtcbiAgICBoZWlnaHQ6IDE1MHB4OyB9XG5cbiAgLmxpbmtfYmxvY2tfZGV0YWlsIHtcbiAgICBoZWlnaHQ6IDEyMHB4OyB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCkge1xuXG4gIC5saW5rX2Jsb2NrX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBsZWFkZXIoMSk7IH1cbiAgLmxpbmtfYmxvY2tfcmV2ZWFsLFxuICAubGlua19ibG9ja19jb250ZW50IHtcbiAgICBoZWlnaHQ6IDI1MHB4OyB9XG5cbiAgLmxpbmtfYmxvY2tfZGV0YWlsIHtcbiAgICBoZWlnaHQ6IDIyMHB4OyB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcblxuICAubGlua19ibG9ja19jb250ZW50IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLmJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBsZWFkZXIoMSk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogY29sdW1uLXNwYW4oMi41LDAsNik7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH0gfVxuXG5AbWVkaWEgKG1pbi1oZWlnaHQ6IDgwMHB4KSBhbmQgKG1pbi13aWR0aDogOTYxcHgpIHtcblxuICAubGlua19ibG9ja19pbWFnZSB7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfVxuXG4gIC5saW5rX2Jsb2NrX2RldGFpbCxcbiAgLmxpbmtfYmxvY2tfcmV2ZWFsIHtcbiAgICBoZWlnaHQ6IDE2MHB4OyB9XG5cbiAgLmxpbmtfYmxvY2tfcmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuICAubGlua19ibG9ja19jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcC5saW5rX2Jsb2NrX3RpdGxlLCB7XG4gICAgICBAaW5jbHVkZSBsZWFkZXIoMSk7IH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGxlYWRlcigyKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwOyB9XG5cblxuICAgIHAubGlua19ibG9ja190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBhZGp1c3QtZm9udC1zaXplLXRvKDIycHgpO1xuICAgICAgd2lkdGg6IGNvbHVtbi1zcGFuKDQsMCw5KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSozOyB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGFkanVzdC1mb250LXNpemUtdG8oMjBweCk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9IH1cblxuICAubGlua19ibG9ja19pY29uIHtcbiAgICB3aWR0aDogMjIwcHg7XG4gICAgaGVpZ2h0OiAyMjBweDtcbiAgICB0b3A6IC03MHB4O1xuICAgIGxlZnQ6IC0xNjBweDtcbiAgICAueWVsbG93ICYsXG4gICAgLmJsdWUgJixcbiAgICAucHVycGxlICYsXG4gICAgLmdyZWVuICYsIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjIwcHggMjIwcHghaW1wb3J0YW50OyB9IH0gfVxuIiwiLm1hcC1ibG9jayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuZ3JlZW4gJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47IH1cblxuICAgICAgICAuYmx1ZSAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmlnaHRibHVlOyB9XG5cbiAgICAgICAgLnB1cnBsZSAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7IH1cblxuICAgICAgICAucmVkICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDsgfVxuXG4gICAgICAgIC55ZWxsb3cgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93OyB9XG5cbiAgICAgICAgaDIsXG4gICAgICAgIHAsXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgLnllbGxvdyAmIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHB1cnBsZTsgfSB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cblxuICAgICZfX21hcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgICAgICAgaGVpZ2h0OiAzM2VtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4O1xuXG4gICAgICAgICAgICAuZ3JlZW4gJiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKCRncmVlbiwgMSkgMCUsIHJnYmEoJGdyZWVuLCAxKSA4MCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7IH1cblxuICAgICAgICAgICAgLmJsdWUgJiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKCRicmlnaHRibHVlLCAxKSAwJSwgcmdiYSgkYnJpZ2h0Ymx1ZSwgMSkgODAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpOyB9XG5cbiAgICAgICAgICAgIC5wdXJwbGUgJiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKCRwdXJwbGUsIDEpIDAlLCByZ2JhKCRwdXJwbGUsIDEpIDgwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTsgfVxuXG4gICAgICAgICAgICAucmVkICYge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgkcmVkLCAxKSAwJSwgcmdiYSgkcmVkLCAxKSA4MCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7IH1cblxuICAgICAgICAgICAgLnllbGxvdyAmIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoJHllbGxvdywgMSkgMCUsIHJnYmEoJHllbGxvdywgMSkgODAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpOyB9IH1cblxuICAgICAgICAmX19tYXAge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDApO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjk1cHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjk1cHgpICFpbXBvcnRhbnQ7IH1cblxuICAgICAgICAmX19jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIC0zMDBweCA1NSUgLTMwMHB4IDApO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMDBweCA1MHB4IDMwMHB4IDA7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk7XG5cbiAgICAgICAgICAgIC5ncmVlbiAmIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRncmVlbiwgLjkpOyB9XG5cbiAgICAgICAgICAgIC5ibHVlICYge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJyaWdodGJsdWUsIC45KTsgfVxuXG4gICAgICAgICAgICAucHVycGxlICYge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHB1cnBsZSwgLjkpOyB9XG5cbiAgICAgICAgICAgIC5yZWQgJiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcmVkLCAuOSk7IH1cblxuICAgICAgICAgICAgLnllbGxvdyAmIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR5ZWxsb3csIC45KTsgfSB9IH0gfVxuIiwiLm1haW5faW1hZ2Vfd3JhcHBlciB7XG4gIGhlaWdodDogMjIwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAtbXMtYmVoYXZpb3I6IGFzc2V0LXVybCgnLi4vaW1hZ2VzL3ZlbmRvci9iYWNrZ3JvdW5kc2l6ZS5taW4uaHRjJyk7IH1cblxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoICdhbGwnICk7XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkc21hbGwtdGFibGV0KSB7XG4gIC5tYWluX2ltYWdlX3dyYXBwZXIge1xuICAgIGhlaWdodDogMzAwcHg7IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAubWFpbl9pbWFnZV93cmFwcGVyIHtcbiAgICBoZWlnaHQ6IDQwMHB4OyB9IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCRkZXNrdG9wKSB7XG4gIC5tYWluX2ltYWdlX3dyYXBwZXIge1xuICAgIGhlaWdodDogNjAwcHg7IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50KCAxMjAwcHggKSB7XG4gIC5tYWluX2ltYWdlX3dyYXBwZXIge1xuICAgIGhlaWdodDogODAwcHg7IH0gfVxuIiwiYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uc29jaWFsLW1lZGlhIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICZfX3RpbGUge1xuICAgIGhlaWdodDogMzUwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICB3aWR0aDogNDRweDtcbiAgICAgIGhlaWdodDogNDRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjVweDtcbiAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbiAgICAmLS10d2l0dGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MDk5ZmY7IH1cblxuICAgICYtLWZhY2Vib29rIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYjU5OTg7IH1cblxuICAgICYtLW1lZGl1bSxcbiAgICAmLS1sYXJnZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiA0MHB4O1xuICAgIHBhZGRpbmc6IDQwcHggMjVweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuICAmX19pY29uIHtcbiAgICB3aWR0aDogMjZweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZpbGw6ICRibGFjaztcblxuICAgICYtLWluc3RhZ3JhbSB7XG4gICAgICB0b3A6IDM0cHg7XG4gICAgICBsZWZ0OiAzNHB4OyB9XG5cbiAgICAmLS1mYWNlYm9vayB7XG4gICAgICB0b3A6IDM0cHg7XG4gICAgICBsZWZ0OiA0MHB4OyB9XG5cbiAgICAmLS10d2l0dGVyIHtcbiAgICAgIHRvcDogMzBweDtcbiAgICAgIGxlZnQ6IDMwcHg7IH0gfSB9XG5cbkBtZWRpYShtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5zb2NpYWwtbWVkaWEge1xuICAgICZfX2xpbmsge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9IH0gfVxuXG5AbWVkaWEobWluLXdpZHRoOiA4MDBweCkge1xuICAuc29jaWFsLW1lZGlhIHtcbiAgICAmX19saW5rIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzJTsgfSB9IH1cblxuQG1lZGlhKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zb2NpYWwtbWVkaWEge1xuICAgICZfX2xpbmsge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgICZfX3RpbGUge1xuICAgICAgJi0tbWVkaXVtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfSB9IH1cblxuXG5AbWVkaWEobWluLXdpZHRoOiAxNTAwcHgpIHtcbiAgLnNvY2lhbC1tZWRpYSB7XG4gICAgJl9fbGluayB7XG4gICAgICB3aWR0aDogMjAlOyB9XG5cbiAgICAmX190aWxlIHtcbiAgICAgICAgJi0tbGFyZ2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH0gfSB9XG4iLCIudGV4dC1pbWFnZSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICAmLmdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47IH1cbiAgJi5ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJpZ2h0Ymx1ZTsgfVxuICAmLnB1cnBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTsgfVxuICAmLnJlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDsgfVxuICAmLnllbGxvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdzsgfVxuXG4gICZfX3RleHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDUwcHg7XG5cbiAgICAueWVsbG93ICYge1xuICAgICAgICBjb2xvcjogJHB1cnBsZTsgfVxuXG4gICAgaDIge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgLnllbGxvdyAmIHtcbiAgICAgICAgICBjb2xvcjogJHB1cnBsZTsgfSB9IH1cblxuICAmX19pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDM2MHB4OyB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCR0YWJsZXQpIHtcbiAgICAudGV4dC1pbWFnZSB7XG4gICAgICAmX190ZXh0IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwMHB4KTsgfVxuXG4gICAgICAmX19pbWFnZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBoZWlnaHQ6IDU2MHB4OyB9IH0gfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAgIC50ZXh0LWltYWdlIHtcbiAgICAgICZfX3RleHQge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDEyMHB4O1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyNDBweCk7IH0gfSB9IH1cbiIsIi5ldmVudF9zZXNzaW9ucyB7XG4gIGJveC1zaGFkb3c6IDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcblxuICAmLS11bmF2YWlsYWJsZSB7XG4gICAgb3BhY2l0eTogLjM7IH1cblxuICBsaSB7XG4gICAgYmFja2dyb3VuZDogIzFhYjVmMztcblxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbiAgICAmLnBhcnNsZXktZXJyb3Ige1xuICAgICAgYmFja2dyb3VuZDogcmVkOyB9XG5cbiAgICAmOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMGFkZjI7IH0gfVxuXG4gIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgYmFja2dyb3VuZDogIzIzM2U5MTtcblxuICAgICAgLmNvcHk6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIzM2U5MTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAwcHggOHB4ICNmZmY7IH0gfSB9XG5cbiAgbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDE0cHggMjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC5jb3B5IHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBzaXplKDMwcHgpO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luOiAtM3B4IDEwcHggMHB4IDBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDhweCA4cHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9IH1cblxuICAgIC5zcGFjZXMge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGxhYmVsIHtcbiAgICAgIC5zcGFjZXMsIC5jb3B5IHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7IH1cblxuICAgICAgLmNvcHk6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgxNXB4KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH0gfVxuXG4gICAgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsIC5jb3B5OmJlZm9yZSB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAycHggI2ZmZjsgfSB9IH1cbiIsIiNldmVudF9nYWxsZXJ5IHtcbiAgQGluY2x1ZGUgcGFkZGluZy1sZWFkZXIoMSk7XG4gIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlcigxKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpO1xuICAuaGVhZGluZyB7XG4gICAgQGluY2x1ZGUgdHJhaWxlcigxLCBoKDIpKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tb3JlX2N0YSB7XG4gICAgQGV4dGVuZCAldXBjYXNlO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTBweCByZ2JhKDAsMCwwLDAuMjUpKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogcmh5dGhtKDAuNSkgMzBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWNvbG9yOyB9IH0gfVxuXG4jZXZlbnRfZ2FsbGVyeV9pbWFnZXMge1xuICBAaW5jbHVkZSB0cmFpbGVyKDEpOyB9XG5cbi5nYWxsZXJ5X3RodW1iX2l0ZW0ge1xuICBAaW5jbHVkZSB0cmFpbGVyKDEpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBjZW50ZXI7XG5cbiAgLmdhbGxlcnlfdGh1bWJfZnJhbWUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAuZGVsZXRlIHtcbiAgICAgIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvaWNvbnMvZGVsZXRlJyk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAtMjZweDtcbiAgICAgIHRvcDogLTI2cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7IH0gfSB9XG5cbi5nYWxsZXJ5X3RodW1iX2xpbms6aG92ZXIsXG4uZ2FsbGVyeV90aHVtYl9saW5rOmZvY3VzIHtcbiAgLmdhbGxlcnlfdGh1bWIge1xuICAgIEBpbmNsdWRlIHNjYWxlKDEuMik7IH0gfVxuXG4uZ2FsbGVyeV90aHVtYiB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTBweCByZ2JhKDAsMCwwLDAuMjUpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigyMDBtcyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkodHJhbnNmb3JtKTtcbiAgYm9yZGVyOiA1cHggc29saWQgI2ZmZjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG5cbi8vIFJlc3BvbnNpdmVcbi8vfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+XG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoICRtb2JpbGUtbGFuZHNjYXBlICkge1xuICAjZXZlbnRfZ2FsbGVyeSB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpOyB9XG4gIC5nYWxsZXJ5X3RodW1iX2l0ZW0ge1xuICAgIHdpZHRoOiA1MCU7IH0gfVxuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkc21hbGwtdGFibGV0KSB7XG4gICNldmVudF9nYWxsZXJ5IHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH1cbiAgLmdhbGxlcnlfdGh1bWJfaXRlbSB7XG4gICAgd2lkdGg6IDMzLjMlOyB9IH1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAjZXZlbnRfZ2FsbGVyeSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBjb2x1bW4tc3Bhbig1LDAsNik7IH1cbiAgI2V2ZW50X2dhbGxlcnlfaW1hZ2VzIHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKSotMjtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCkqLTI7IH0gfVxuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkZGVza3RvcCkge1xuICAjZXZlbnRfZ2FsbGVyeSB7XG4gICAgd2lkdGg6IGNvbHVtbi1zcGFuKDYuNSwwLDkpOyB9XG4gICNldmVudF9nYWxsZXJ5X2ltYWdlcyB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCkqLTQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXItc3BhbigpKi00OyB9XG5cbiAgLmdhbGxlcnlfdGh1bWJfaXRlbSB7XG4gICAgd2lkdGg6IDI1JTsgfSB9XG5cbiIsIi5ldmVudC1oZWFkZXIge1xuICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCBudWxsIDBweCAwcHgpO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuXG4uZXZlbnQtaGVhZGVyX190aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbi5ldmVudC1oZWFkZXJfX2RhdGUge1xuICBwYWRkaW5nOiAxMnB4IDQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMjMzZTkxO1xuICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgZm9udC1zaXplOiAyMnB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbi5ldmVudC1oZWFkZXJfX2NvcHkge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxOHB4O1xuXG4gIHNwYW4ge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG5cblxuLmV2ZW50LWhlYWRlcl9fc2Vzc2lvbiB7XG4gIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgMHB4IDUwJSk7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwgNTAlKSk7XG4gIHBhZGRpbmc6IDEycHggNDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtc3RhY2s7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCkge1xuICAuZXZlbnQtaGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDsgfSB9XG4iLCIuZXZlbnRfcmVnaXN0cmF0aW9uIHtcbiAgYmFja2dyb3VuZDogI2U5ZWZmMjtcbiAgYm9yZGVyLXRvcDogN3B4IHNvbGlkICNjNzAwNzc7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgbWFyZ2luLXRvcDogNDBweDtcblxuICBoZWFkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAtMzJweDtcbiAgICBwYWRkaW5nOiAwcHggMjBweCA0MHB4OyB9XG5cbiAgaDEge1xuICAgIGJhY2tncm91bmQ6ICNjNzAwNzc7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICB3aWR0aDogMzg1cHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHggMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9IH1cbiIsIkBpbXBvcnQgXCJzaGFyZWRcIjtcblxuLy8gQGRvYyBvZmZcbi8vIE5vdGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2FmYXJpLCBDaHJvbWUsIGFuZCBGaXJlZm94IGFsbCBzdXBwb3J0IDNEIHRyYW5zZm9ybXMuIEhvd2V2ZXIsXG4vLyBvbmx5IGluIHRoZSBtb3N0IHJlY2VudCBidWlsZHMuIFlvdSBzaG91bGQgYWxzbyBwcm92aWRlIGZhbGxiYWNrIDJkIHN1cHBvcnQgZm9yXG4vLyBPcGVyYSBhbmQgSUUuIElFMTAgaXMgc2xhdGVkIHRvIGhhdmUgM2QgZW5hYmxlZCwgYnV0IGlzIGN1cnJlbnRseSB1bnJlbGVhc2VkLlxuLy8gVG8gbWFrZSB0aGF0IGVhc3ksIGFsbCAyRCB0cmFuc2Zvcm1zIGluY2x1ZGUgYW4gYnJvd3Nlci10YXJnZXRpbmcgdG9nZ2xlICgkb25seTNkKVxuLy8gdG8gc3dpdGNoIGJldHdlZW4gdGhlIHR3byBzdXBwb3J0IGxpc3RzLiBUaGUgdG9nZ2xlIGRlZmF1bHRzIHRvICdmYWxzZScgKDJEKSxcbi8vIGFuZCBhbHNvIGFjY2VwdHMgJ3RydWUnICgzRCkuIEN1cnJlbnRseSB0aGUgbGlzdHMgYXJlIGFzIGZvbGxvd3M6XG4vLyAyRDogTW96aWxsYSwgV2Via2l0LCBPcGVyYSwgT2ZmaWNpYWxcbi8vIDNEOiBXZWJraXQsIEZpcmVmb3guXG5cbi8vIEF2YWlsYWJsZSBUcmFuc2Zvcm1zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBTY2FsZSAoMmQgYW5kIDNkKVxuLy8gLSBSb3RhdGUgKDJkIGFuZCAzZClcbi8vIC0gVHJhbnNsYXRlICgyZCBhbmQgM2QpXG4vLyAtIFNrZXcgKDJkIG9ubHkpXG5cbi8vIFRyYW5zZm9ybSBQYXJhbWV0ZXJzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBUcmFuc2Zvcm0gT3JpZ2luICgyZCBhbmQgM2QpXG4vLyAtIFBlcnNwZWN0aXZlICgzZClcbi8vIC0gUGVyc3BlY3RpdmUgT3JpZ2luICgzZClcbi8vIC0gVHJhbnNmb3JtIFN0eWxlICgzZClcbi8vIC0gQmFja2ZhY2UgVmlzaWJpbGl0eSAoM2QpXG5cbi8vIE1peGlucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gdHJhbnNmb3JtLW9yaWdpblxuLy8gIC0gc2hvcnRjdXRzOiAgdHJhbnNmb3JtLW9yaWdpbjJkLCB0cmFuc2Zvcm0tb3JpZ2luM2Rcbi8vICAtIGhlbHBlcnM6ICAgIGFwcGx5LW9yaWdpblxuLy8gdHJhbnNmb3JtXG4vLyAgLSBzaG9ydGN1dHM6ICB0cmFuc2Zvcm0yZCwgdHJhbnNmb3JtM2Rcbi8vICAtIGhlbHBlcnM6ICAgIHNpbXBsZS10cmFuc2Zvcm0sIGNyZWF0ZS10cmFuc2Zvcm1cbi8vIHBlcnNwZWN0aXZlXG4vLyAgLSBoZWxwZXJzOiAgICBwZXJzcGVjdGl2ZS1vcmlnaW5cbi8vIHRyYW5zZm9ybS1zdHlsZVxuLy8gYmFja2ZhY2UtdmlzaWJpbGl0eVxuLy8gc2NhbGVcbi8vICAtIHNob3J0Y3V0czogIHNjYWxlWCwgc2NhbGVZLCBzY2FsZVosIHNjYWxlM2Rcbi8vIHJvdGF0ZVxuLy8gIC0gc2hvcnRjdXRzOiAgcm90YXRlWCwgcm90YXRlWSwgcm90YXRlM2Rcbi8vIHRyYW5zbGF0ZVxuLy8gIC0gc2hvcnRjdXRzOiAgdHJhbnNsYXRlWCwgdHJhbnNsYXRlWSwgdHJhbnNsYXRlWiwgdHJhbnNsYXRlM2Rcbi8vIHNrZXdcbi8vICAtIHNob3J0Y3V0czogIHNrZXdYLCBza2V3WVxuXG4vLyBEZWZhdWx0cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBkb2Mgb25cblxuLy8gVGhlIGRlZmF1bHQgeC1vcmlnaW4gZm9yIHRyYW5zZm9ybXNcbiRkZWZhdWx0LW9yaWdpbi14OiA1MCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IHktb3JpZ2luIGZvciB0cmFuc2Zvcm1zXG4kZGVmYXVsdC1vcmlnaW4teTogNTAlICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCB6LW9yaWdpbiBmb3IgdHJhbnNmb3Jtc1xuJGRlZmF1bHQtb3JpZ2luLXo6IDUwJSAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgeC1tdWx0aXBsaWVyIGZvciBzY2FsaW5nXG4kZGVmYXVsdC1zY2FsZS14OiAxLjI1ICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCB5LW11bHRpcGxpZXIgZm9yIHNjYWxpbmdcbiRkZWZhdWx0LXNjYWxlLXk6ICRkZWZhdWx0LXNjYWxlLXggIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IHotbXVsdGlwbGllciBmb3Igc2NhbGluZ1xuJGRlZmF1bHQtc2NhbGUtejogJGRlZmF1bHQtc2NhbGUteCAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgYW5nbGUgZm9yIHJvdGF0aW9uc1xuJGRlZmF1bHQtcm90YXRlOiA0NWRlZyAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgeC12ZWN0b3IgZm9yIHRoZSBheGlzIG9mIDNkIHJvdGF0aW9uc1xuJGRlZmF1bHQtdmVjdG9yLXg6IDEgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IHktdmVjdG9yIGZvciB0aGUgYXhpcyBvZiAzZCByb3RhdGlvbnNcbiRkZWZhdWx0LXZlY3Rvci15OiAxICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCB6LXZlY3RvciBmb3IgdGhlIGF4aXMgb2YgM2Qgcm90YXRpb25zXG4kZGVmYXVsdC12ZWN0b3ItejogMSAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgeC1sZW5ndGggZm9yIHRyYW5zbGF0aW9uc1xuJGRlZmF1bHQtdHJhbnNsYXRlLXg6IDFlbSAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgeS1sZW5ndGggZm9yIHRyYW5zbGF0aW9uc1xuJGRlZmF1bHQtdHJhbnNsYXRlLXk6ICRkZWZhdWx0LXRyYW5zbGF0ZS14ICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCB6LWxlbmd0aCBmb3IgdHJhbnNsYXRpb25zXG4kZGVmYXVsdC10cmFuc2xhdGUtejogJGRlZmF1bHQtdHJhbnNsYXRlLXggIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IHgtYW5nbGUgZm9yIHNrZXdpbmdcbiRkZWZhdWx0LXNrZXcteDogNWRlZyAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgeS1hbmdsZSBmb3Igc2tld2luZ1xuJGRlZmF1bHQtc2tldy15OiA1ZGVnICFkZWZhdWx0O1xuXG4vLyAqKlRyYW5zZm9ybS1vcmlnaW4qKlxuLy8gVHJhbnNmb3JtLW9yaWdpbiBzZW50IGFzIGEgY29tcGxldGUgc3RyaW5nXG4vL1xuLy8gICAgIEBpbmNsdWRlIGFwcGx5LW9yaWdpbiggb3JpZ2luIFssIDNELW9ubHkgXSApXG4vL1xuLy8gd2hlcmUgJ29yaWdpbicgaXMgYSBzcGFjZSBzZXBhcmF0ZWQgbGlzdCBjb250YWluaW5nIDEtMyAoeC95L3opIGNvb3JkaW5hdGVzXG4vLyBpbiBwZXJjZW50YWdlcywgYWJzb2x1dGUgKHB4LCBjbSwgaW4sIGVtIGV0Yy4uKSBvciByZWxhdGl2ZVxuLy8gKGxlZnQsIHRvcCwgcmlnaHQsIGJvdHRvbSwgY2VudGVyKSB1bml0c1xuLy9cbi8vIEBwYXJhbSBvbmx5M2QgU2V0IHRoaXMgdG8gdHJ1ZSB0byBvbmx5IGFwcGx5IHRoaXNcbi8vIG1peGluIHdoZXJlIGJyb3dzZXJzIGhhdmUgM0Qgc3VwcG9ydC5cbkBtaXhpbiBhcHBseS1vcmlnaW4oJG9yaWdpbiwgJG9ubHkzZCkge1xuICAkb25seTNkOiAkb25seTNkIG9yIC1jb21wYXNzLWxpc3Qtc2l6ZSgtY29tcGFzcy1saXN0KCRvcmlnaW4pKSA+IDI7XG4gIEBpZiAkb25seTNkIHtcbiAgICBAaW5jbHVkZSBleHBlcmltZW50YWwodHJhbnNmb3JtLW9yaWdpbiwgJG9yaWdpbiwgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90IC1raHRtbCwgb2ZmaWNpYWwpOyB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBleHBlcmltZW50YWwodHJhbnNmb3JtLW9yaWdpbiwgJG9yaWdpbiwgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90IC1raHRtbCwgb2ZmaWNpYWwpOyB9IH1cblxuLy8gVHJhbnNmb3JtLW9yaWdpbiBzZW50IGFzIGluZGl2aWR1YWwgYXJndW1lbnRzOlxuLy9cbi8vICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKCBbIG9yaWdpbi14LCBvcmlnaW4teSwgb3JpZ2luLXosIDNELW9ubHkgXSApXG4vL1xuLy8gd2hlcmUgdGhlIDMgJ29yaWdpbi0nIGFyZ3VtZW50cyByZXByZXNlbnQgeC95L3ogY29vcmRpbmF0ZXMuXG4vL1xuLy8gKipOT1RFOioqIHNldHRpbmcgeiBjb29yZGluYXRlcyB0cmlnZ2VycyAzRCBzdXBwb3J0IGxpc3QsIGxlYXZlIGZhbHNlIGZvciAyRCBzdXBwb3J0XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luLXg6ICRkZWZhdWx0LW9yaWdpbi14LCAkb3JpZ2luLXk6ICRkZWZhdWx0LW9yaWdpbi15LCAkb3JpZ2luLXo6IGZhbHNlLCAkb25seTNkOiBpZigkb3JpZ2luLXosIHRydWUsIGZhbHNlKSkge1xuICAkb3JpZ2luOiB1bnF1b3RlKFwiXCIpO1xuICBAaWYgJG9yaWdpbi14IG9yICRvcmlnaW4teSBvciAkb3JpZ2luLXoge1xuICAgIEBpZiAkb3JpZ2luLXgge1xuICAgICAgJG9yaWdpbjogJG9yaWdpbi14OyB9XG4gICAgQGVsc2Uge1xuICAgICAgJG9yaWdpbjogNTAlOyB9XG4gICAgQGlmICRvcmlnaW4teSB7XG4gICAgICAkb3JpZ2luOiAkb3JpZ2luICRvcmlnaW4teTsgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkb3JpZ2luLXoge1xuICAgICAgICAkb3JpZ2luOiAkb3JpZ2luIDUwJTsgfSB9XG4gICAgQGlmICRvcmlnaW4teiB7XG4gICAgICAkb3JpZ2luOiAkb3JpZ2luICRvcmlnaW4tejsgfVxuICAgIEBpbmNsdWRlIGFwcGx5LW9yaWdpbigkb3JpZ2luLCAkb25seTNkKTsgfSB9XG5cbi8vIFRyYW5zZm9ybSBzZW50IGFzIGEgY29tcGxldGUgc3RyaW5nOlxuLy9cbi8vICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zZm9ybXMgWywgM0Qtb25seSBdIClcbi8vXG4vLyB3aGVyZSAndHJhbnNmb3JtcycgaXMgYSBzcGFjZSBzZXBhcmF0ZWQgbGlzdCBvZiBhbGwgdGhlIHRyYW5zZm9ybXMgdG8gYmUgYXBwbGllZC5cbkBtaXhpbiB0cmFuc2Zvcm0oJHRyYW5zZm9ybSwgJG9ubHkzZDogZmFsc2UpIHtcbiAgQGlmICRvbmx5M2Qge1xuICAgIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh0cmFuc2Zvcm0sICR0cmFuc2Zvcm0sIC1tb3osIC13ZWJraXQsIC1vLCAtbXMsIG5vdCAta2h0bWwsIG9mZmljaWFsKTsgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHRyYW5zZm9ybSwgJHRyYW5zZm9ybSwgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90IC1raHRtbCwgb2ZmaWNpYWwpOyB9IH1cblxuLy8gU2hvcnRjdXQgdG8gdGFyZ2V0IGFsbCBicm93c2VycyB3aXRoIDJEIHRyYW5zZm9ybSBzdXBwb3J0XG5AbWl4aW4gdHJhbnNmb3JtMmQoJHRyYW5zKSB7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsIGZhbHNlKTsgfVxuXG4vLyBTaG9ydGN1dCB0byB0YXJnZXQgb25seSBicm93c2VycyB3aXRoIDNEIHRyYW5zZm9ybSBzdXBwb3J0XG5AbWl4aW4gdHJhbnNmb3JtM2QoJHRyYW5zKSB7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsIHRydWUpOyB9XG5cbi8vIEBkb2Mgb2ZmXG4vLyAzRCBQYXJhbWV0ZXJzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBkb2Mgb25cblxuLy8gU2V0IHRoZSBwZXJzcGVjdGl2ZSBvZiAzRCB0cmFuc2Zvcm1zIG9uIHRoZSBjaGlsZHJlbiBvZiBhbiBlbGVtZW50OlxuLy9cbi8vICAgICAgQGluY2x1ZGUgcGVyc3BlY3RpdmUoIHBlcnNwZWN0aXZlIClcbi8vXG4vLyB3aGVyZSAncGVyc3BlY3RpdmUnIGlzIGEgdW5pdGxlc3MgbnVtYmVyIHJlcHJlc2VudGluZyB0aGUgZGVwdGggb2YgdGhlXG4vLyB6LWF4aXMuIFRoZSBoaWdoZXIgdGhlIHBlcnNwZWN0aXZlLCB0aGUgbW9yZSBleGFnZ2VyYXRlZCB0aGUgZm9yZXNob3J0ZW5pbmcuXG4vLyB2YWx1ZXMgZnJvbSA1MDAgdG8gMTAwMCBhcmUgbW9yZS1vci1sZXNzIFwibm9ybWFsXCIgLSBhIGdvb2Qgc3RhcnRpbmctcG9pbnQuXG5AbWl4aW4gcGVyc3BlY3RpdmUoJHApIHtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHBlcnNwZWN0aXZlLCAkcCwgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90IC1raHRtbCwgb2ZmaWNpYWwpOyB9XG5cbi8vIFNldCB0aGUgb3JpZ2luIHBvc2l0aW9uIGZvciB0aGUgcGVyc3BlY3RpdmVcbi8vXG4vLyAgICAgIEBpbmNsdWRlIHBlcnNwZWN0aXZlLW9yaWdpbihvcmlnaW4teCBbb3JpZ2luLXldKVxuLy9cbi8vIHdoZXJlIHRoZSB0d28gYXJndW1lbnRzIHJlcHJlc2VudCB4L3kgY29vcmRpbmF0ZXNcbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJG9yaWdpbjogNTAlKSB7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbChwZXJzcGVjdGl2ZS1vcmlnaW4sICRvcmlnaW4sIC1tb3osIC13ZWJraXQsIC1vLCAtbXMsIG5vdCAta2h0bWwsIG9mZmljaWFsKTsgfVxuXG4vLyBEZXRlcm1pbmUgd2hldGhlciBhIDNEIG9iamVjdHMgY2hpbGRyZW4gYWxzbyBsaXZlIGluIHRoZSBnaXZlbiAzRCBzcGFjZVxuLy9cbi8vICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtLXN0eWxlKCBbIHN0eWxlIF0gKVxuLy9cbi8vIHdoZXJlIGBzdHlsZWAgY2FuIGJlIGVpdGhlciBgZmxhdGAgb3IgYHByZXNlcnZlLTNkYC5cbi8vIEJyb3dzZXJzIGRlZmF1bHQgdG8gYGZsYXRgLCBtaXhpbiBkZWZhdWx0cyB0byBgcHJlc2VydmUtM2RgLlxuQG1peGluIHRyYW5zZm9ybS1zdHlsZSgkc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh0cmFuc2Zvcm0tc3R5bGUsICRzdHlsZSwgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90IC1raHRtbCwgb2ZmaWNpYWwpOyB9XG5cbi8vIERldGVybWluZSB0aGUgdmlzaWJpbGl0eSBvZiBhbiBlbGVtZW50IHdoZW4gaXQncyBiYWNrIGlzIHR1cm5lZFxuLy9cbi8vICAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KCBbIHZpc2liaWxpdHkgXSApXG4vL1xuLy8gd2hlcmUgYHZpc2liaWxpdHlgIGNhbiBiZSBlaXRoZXIgYHZpc2libGVgIG9yIGBoaWRkZW5gLlxuLy8gQnJvd3NlcnMgZGVmYXVsdCB0byB2aXNpYmxlLCBtaXhpbiBkZWZhdWx0cyB0byBoaWRkZW5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5OiBoaWRkZW4pIHtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKGJhY2tmYWNlLXZpc2liaWxpdHksICR2aXNpYmlsaXR5LCAtbW96LCAtd2Via2l0LCAtbywgLW1zLCBub3QgLWtodG1sLCBvZmZpY2lhbCk7IH1cblxuLy8gQGRvYyBvZmZcbi8vIFRyYW5zZm9ybSBQYXJ0aWFscyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhlc2Ugd29yayB3ZWxsIG9uIHRoZWlyIG93biwgYnV0IHRoZXkgZG9uJ3QgYWRkIHRvIGVhY2ggb3RoZXIsIHRoZXkgb3ZlcnJpZGUuXG4vLyBVc2UgYWxvbmcgd2l0aCB0cmFuc2Zvcm0gcGFyYW1ldGVyIG1peGlucyB0byBhZGp1c3Qgb3JpZ2luLCBwZXJzcGVjdGl2ZSBhbmQgc3R5bGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTY2FsZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBkb2Mgb25cblxuLy8gU2NhbGUgYW4gb2JqZWN0IGFsb25nIHRoZSB4IGFuZCB5IGF4aXM6XG4vL1xuLy8gICAgICBAaW5jbHVkZSBzY2FsZSggWyBzY2FsZS14LCBzY2FsZS15LCBwZXJzcGVjdGl2ZSwgM0Qtb25seSBdIClcbi8vXG4vLyB3aGVyZSB0aGUgJ3NjYWxlLScgYXJndW1lbnRzIGFyZSB1bml0bGVzcyBtdWx0aXBsaWVycyBvZiB0aGUgeCBhbmQgeSBkaW1lbnNpb25zXG4vLyBhbmQgcGVyc3BlY3RpdmUsIHdoaWNoIHdvcmtzIHRoZSBzYW1lIGFzIHRoZSBzdGFuZC1hbG9uZSBwZXJzcGVjdGl2ZSBwcm9wZXJ0eS9taXhpblxuLy8gYnV0IGFwcGxpZXMgdG8gdGhlIGluZGl2aWR1YWwgZWxlbWVudCAobXVsdGlwbGllZCB3aXRoIGFueSBwYXJlbnQgcGVyc3BlY3RpdmUpXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNjYWxlKCRzY2FsZS14OiAkZGVmYXVsdC1zY2FsZS14LCAkc2NhbGUteTogJHNjYWxlLXgsICRwZXJzcGVjdGl2ZTogZmFsc2UsICRvbmx5M2Q6IGZhbHNlKSB7XG4gICR0cmFuczogc2NhbGUoJHNjYWxlLXgsICRzY2FsZS15KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7XG4gICAgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0oJHRyYW5zLCAkb25seTNkKTsgfVxuXG4vLyBTY2FsZSBhbiBvYmplY3QgYWxvbmcgdGhlIHggYXhpc1xuLy8gQGluY2x1ZGUgc2NhbGVYKCBbIHNjYWxlLXgsIHBlcnNwZWN0aXZlLCAzRC1vbmx5IF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBzY2FsZVgoJHNjYWxlOiAkZGVmYXVsdC1zY2FsZS14LCAkcGVyc3BlY3RpdmU6IGZhbHNlLCAkb25seTNkOiBmYWxzZSkge1xuICAkdHJhbnM6IHNjYWxlWCgkc2NhbGUpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHtcbiAgICAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpOyB9XG5cbi8vIFNjYWxlIGFuIG9iamVjdCBhbG9uZyB0aGUgeSBheGlzXG4vLyBAaW5jbHVkZSBzY2FsZVkoIFsgc2NhbGUteSwgcGVyc3BlY3RpdmUsIDNELW9ubHkgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNjYWxlWSgkc2NhbGU6ICRkZWZhdWx0LXNjYWxlLXksICRwZXJzcGVjdGl2ZTogZmFsc2UsICRvbmx5M2Q6IGZhbHNlKSB7XG4gICR0cmFuczogc2NhbGVZKCRzY2FsZSk7XG4gIEBpZiAkcGVyc3BlY3RpdmUge1xuICAgICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7IH1cblxuLy8gU2NhbGUgYW4gb2JqZWN0IGFsb25nIHRoZSB6IGF4aXNcbi8vIEBpbmNsdWRlIHNjYWxlWiggWyBzY2FsZS16LCBwZXJzcGVjdGl2ZSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gc2NhbGVaKCRzY2FsZTogJGRlZmF1bHQtc2NhbGUteiwgJHBlcnNwZWN0aXZlOiBmYWxzZSkge1xuICAkdHJhbnM6IHNjYWxlWigkc2NhbGUpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHtcbiAgICAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybTNkKCR0cmFucyk7IH1cblxuLy8gU2NhbGUgYW5kIG9iamVjdCBhbG9uZyBhbGwgdGhyZWUgYXhpc1xuLy8gQGluY2x1ZGUgc2NhbGUzZCggWyBzY2FsZS14LCBzY2FsZS15LCBzY2FsZS16LCBwZXJzcGVjdGl2ZSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gc2NhbGUzZCgkc2NhbGUteDogJGRlZmF1bHQtc2NhbGUteCwgJHNjYWxlLXk6ICRkZWZhdWx0LXNjYWxlLXksICRzY2FsZS16OiAkZGVmYXVsdC1zY2FsZS16LCAkcGVyc3BlY3RpdmU6IGZhbHNlKSB7XG4gICR0cmFuczogc2NhbGUzZCgkc2NhbGUteCwgJHNjYWxlLXksICRzY2FsZS16KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7XG4gICAgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0zZCgkdHJhbnMpOyB9XG5cbi8vIEBkb2Mgb2ZmXG4vLyBSb3RhdGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBkb2Mgb25cblxuLy8gUm90YXRlIGFuIG9iamVjdCBhcm91bmQgdGhlIHogYXhpcyAgKDJEKVxuLy8gQGluY2x1ZGUgcm90YXRlKCBbIHJvdGF0aW9uLCBwZXJzcGVjdGl2ZSwgM0Qtb25seSBdIClcbi8vIHdoZXJlICdyb3RhdGlvbicgaXMgYW4gYW5nbGUgc2V0IGluIGRlZ3JlZXMgKGRlZykgb3IgcmFkaWFuIChyYWQpIHVuaXRzXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHJvdGF0ZSgkcm90YXRlOiAkZGVmYXVsdC1yb3RhdGUsICRwZXJzcGVjdGl2ZTogZmFsc2UsICRvbmx5M2Q6IGZhbHNlKSB7XG4gICR0cmFuczogcm90YXRlKCRyb3RhdGUpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHtcbiAgICAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpOyB9XG5cbi8vIEEgbG9uZ2N1dCBmb3IgJ3JvdGF0ZScgaW4gY2FzZSB5b3UgZm9yZ2V0IHRoYXQgJ3onIGlzIGltcGxpZWRcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gcm90YXRlWigkcm90YXRlOiAkZGVmYXVsdC1yb3RhdGUsICRwZXJzcGVjdGl2ZTogZmFsc2UsICRvbmx5M2Q6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJvdGF0ZSgkcm90YXRlLCAkcGVyc3BlY3RpdmUsICRvbmx5M2QpOyB9XG5cbi8vIFJvdGF0ZSBhbiBvYmplY3QgYXJvdW5kIHRoZSB4IGF4aXMgKDNEKVxuLy8gQGluY2x1ZGUgcm90YXRlWCggWyByb3RhdGlvbiwgcGVyc3BlY3RpdmUgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHJvdGF0ZVgoJHJvdGF0ZTogJGRlZmF1bHQtcm90YXRlLCAkcGVyc3BlY3RpdmU6IGZhbHNlKSB7XG4gICR0cmFuczogcm90YXRlWCgkcm90YXRlKTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7XG4gICAgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0zZCgkdHJhbnMpOyB9XG5cbi8vIFJvdGF0ZSBhbiBvYmplY3QgYXJvdW5kIHRoZSB5IGF4aXMgKDNEKVxuLy8gQGluY2x1ZGUgcm90YXRlKCBbIHJvdGF0aW9uLCBwZXJzcGVjdGl2ZSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gcm90YXRlWSgkcm90YXRlOiAkZGVmYXVsdC1yb3RhdGUsICRwZXJzcGVjdGl2ZTogZmFsc2UpIHtcbiAgJHRyYW5zOiByb3RhdGVZKCRyb3RhdGUpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHtcbiAgICAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybTNkKCR0cmFucyk7IH1cblxuLy8gUm90YXRlIGFuIG9iamVjdCBhcm91bmQgYW4gYXJiaXRyYXJ5IGF4aXMgKDNEKVxuLy8gQGluY2x1ZGUgcm90YXRlKCBbIHZlY3Rvci14LCB2ZWN0b3IteSwgdmVjdG9yLXosIHJvdGF0aW9uLCBwZXJzcGVjdGl2ZSBdIClcbi8vIHdoZXJlIHRoZSAndmVjdG9yLScgYXJndW1lbnRzIGFjY2VwdCB1bml0bGVzcyBudW1iZXJzLlxuLy8gVGhlc2UgbnVtYmVycyBhcmUgbm90IGltcG9ydGFudCBvbiB0aGVpciBvd24sIGJ1dCBpbiByZWxhdGlvbiB0byBvbmUgYW5vdGhlclxuLy8gY3JlYXRpbmcgYW4gYXhpcyBmcm9tIHlvdXIgdHJhbnNmb3JtLW9yaWdpbiwgYWxvbmcgdGhlIGF4aXMgb2YgWHggPSBZeSA9IFp6LlxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiByb3RhdGUzZCgkdmVjdG9yLXg6ICRkZWZhdWx0LXZlY3Rvci14LCAkdmVjdG9yLXk6ICRkZWZhdWx0LXZlY3Rvci15LCAkdmVjdG9yLXo6ICRkZWZhdWx0LXZlY3Rvci16LCAkcm90YXRlOiAkZGVmYXVsdC1yb3RhdGUsICRwZXJzcGVjdGl2ZTogZmFsc2UpIHtcbiAgJHRyYW5zOiByb3RhdGUzZCgkdmVjdG9yLXgsICR2ZWN0b3IteSwgJHZlY3Rvci16LCAkcm90YXRlKTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7XG4gICAgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0zZCgkdHJhbnMpOyB9XG5cbi8vIEBkb2Mgb2ZmXG4vLyBUcmFuc2xhdGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBkb2Mgb25cblxuLy8gTW92ZSBhbiBvYmplY3QgYWxvbmcgdGhlIHggb3IgeSBheGlzICgyRClcbi8vIEBpbmNsdWRlIHRyYW5zbGF0ZSggWyB0cmFuc2xhdGUteCwgdHJhbnNsYXRlLXksIHBlcnNwZWN0aXZlLCAzRC1vbmx5IF0gKVxuLy8gd2hlcmUgdGhlICd0cmFuc2xhdGUtJyBhcmd1bWVudHMgYWNjZXB0IGFueSBkaXN0YW5jZSBpbiBwZXJjZW50YWdlcyBvciBhYnNvbHV0ZSAocHgsIGNtLCBpbiwgZW0gZXRjLi4pIHVuaXRzLlxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiB0cmFuc2xhdGUoJHRyYW5zbGF0ZS14OiAkZGVmYXVsdC10cmFuc2xhdGUteCwgJHRyYW5zbGF0ZS15OiAkZGVmYXVsdC10cmFuc2xhdGUteSwgJHBlcnNwZWN0aXZlOiBmYWxzZSwgJG9ubHkzZDogZmFsc2UpIHtcbiAgJHRyYW5zOiB0cmFuc2xhdGUoJHRyYW5zbGF0ZS14LCAkdHJhbnNsYXRlLXkpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHtcbiAgICAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpOyB9XG5cbi8vIE1vdmUgYW4gb2JqZWN0IGFsb25nIHRoZSB4IGF4aXMgKDJEKVxuLy8gQGluY2x1ZGUgdHJhbnNsYXRlKCBbIHRyYW5zbGF0ZS14LCBwZXJzcGVjdGl2ZSwgM0Qtb25seSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gdHJhbnNsYXRlWCgkdHJhbnMteDogJGRlZmF1bHQtdHJhbnNsYXRlLXgsICRwZXJzcGVjdGl2ZTogZmFsc2UsICRvbmx5M2Q6IGZhbHNlKSB7XG4gICR0cmFuczogdHJhbnNsYXRlWCgkdHJhbnMteCk7XG4gIEBpZiAkcGVyc3BlY3RpdmUge1xuICAgICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7IH1cblxuLy8gTW92ZSBhbiBvYmplY3QgYWxvbmcgdGhlIHkgYXhpcyAoMkQpXG4vLyBAaW5jbHVkZSB0cmFuc2xhdGUoIFsgdHJhbnNsYXRlLXksIHBlcnNwZWN0aXZlLCAzRC1vbmx5IF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiB0cmFuc2xhdGVZKCR0cmFucy15OiAkZGVmYXVsdC10cmFuc2xhdGUteSwgJHBlcnNwZWN0aXZlOiBmYWxzZSwgJG9ubHkzZDogZmFsc2UpIHtcbiAgJHRyYW5zOiB0cmFuc2xhdGVZKCR0cmFucy15KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7XG4gICAgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0oJHRyYW5zLCAkb25seTNkKTsgfVxuXG4vLyBNb3ZlIGFuIG9iamVjdCBhbG9uZyB0aGUgeiBheGlzICgzRClcbi8vIEBpbmNsdWRlIHRyYW5zbGF0ZSggWyB0cmFuc2xhdGUteiwgcGVyc3BlY3RpdmUgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHRyYW5zbGF0ZVooJHRyYW5zLXo6ICRkZWZhdWx0LXRyYW5zbGF0ZS16LCAkcGVyc3BlY3RpdmU6IGZhbHNlKSB7XG4gICR0cmFuczogdHJhbnNsYXRlWigkdHJhbnMteik7XG4gIEBpZiAkcGVyc3BlY3RpdmUge1xuICAgICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtM2QoJHRyYW5zKTsgfVxuXG4vLyBNb3ZlIGFuIG9iamVjdCBhbG9uZyB0aGUgeCwgeSBhbmQgeiBheGlzICgzRClcbi8vIEBpbmNsdWRlIHRyYW5zbGF0ZSggWyB0cmFuc2xhdGUteCwgdHJhbnNsYXRlLXksIHRyYW5zbGF0ZS16LCBwZXJzcGVjdGl2ZSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gdHJhbnNsYXRlM2QoJHRyYW5zbGF0ZS14OiAkZGVmYXVsdC10cmFuc2xhdGUteCwgJHRyYW5zbGF0ZS15OiAkZGVmYXVsdC10cmFuc2xhdGUteSwgJHRyYW5zbGF0ZS16OiAkZGVmYXVsdC10cmFuc2xhdGUteiwgJHBlcnNwZWN0aXZlOiBmYWxzZSkge1xuICAkdHJhbnM6IHRyYW5zbGF0ZTNkKCR0cmFuc2xhdGUteCwgJHRyYW5zbGF0ZS15LCAkdHJhbnNsYXRlLXopO1xuICBAaWYgJHBlcnNwZWN0aXZlIHtcbiAgICAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybTNkKCR0cmFucyk7IH1cblxuLy8gQGRvYyBvZmZcbi8vIFNrZXcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQGRvYyBvblxuXG4vLyBTa2V3IGFuIGVsZW1lbnQ6XG4vL1xuLy8gICAgIEBpbmNsdWRlIHNrZXcoIFsgc2tldy14LCBza2V3LXksIDNELW9ubHkgXSApXG4vL1xuLy8gd2hlcmUgdGhlICdza2V3LScgYXJndW1lbnRzIGFjY2VwdCBjc3MgYW5nbGVzIGluIGRlZ3JlZXMgKGRlZykgb3IgcmFkaWFuIChyYWQpIHVuaXRzLlxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBza2V3KCRza2V3LXg6ICRkZWZhdWx0LXNrZXcteCwgJHNrZXcteTogJGRlZmF1bHQtc2tldy15LCAkb25seTNkOiBmYWxzZSkge1xuICAkdHJhbnM6IHNrZXcoJHNrZXcteCwgJHNrZXcteSk7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpOyB9XG5cbi8vIFNrZXcgYW4gZWxlbWVudCBhbG9uZyB0aGUgeCBheGl6XG4vL1xuLy8gICAgIEBpbmNsdWRlIHNrZXcoIFsgc2tldy14LCAzRC1vbmx5IF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBza2V3WCgkc2tldy14OiAkZGVmYXVsdC1za2V3LXgsICRvbmx5M2Q6IGZhbHNlKSB7XG4gICR0cmFuczogc2tld1goJHNrZXcteCk7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpOyB9XG5cbi8vIFNrZXcgYW4gZWxlbWVudCBhbG9uZyB0aGUgeSBheGlzXG4vL1xuLy8gICAgIEBpbmNsdWRlIHNrZXcoIFsgc2tldy15LCAzRC1vbmx5IF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBza2V3WSgkc2tldy15OiAkZGVmYXVsdC1za2V3LXksICRvbmx5M2Q6IGZhbHNlKSB7XG4gICR0cmFuczogc2tld1koJHNrZXcteSk7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpOyB9XG5cbi8vIEZ1bGwgdHJhbnNmb3JtIG1peGluc1xuLy8gRm9yIHNldHRpbmdzIGFueSBjb21iaW5hdGlvbiBvZiB0cmFuc2Zvcm1zIGFzIGFyZ3VtZW50c1xuLy8gVGhlc2UgYXJlIGNvbXBsZXggYW5kIG5vdCBoaWdobHkgcmVjb21tZW5kZWQgZm9yIGRhaWx5IHVzZS4gVGhleSBhcmUgbWFpbmx5XG4vLyBoZXJlIGZvciBiYWNrd2FyZC1jb21wYXRpYmlsaXR5IHB1cnBvc2VzLlxuLy9cbi8vICogdGhleSBpbmNsdWRlIG9yaWdpbiBhZGp1c3RtZW50c1xuLy8gKiBzY2FsZSB0YWtlcyBhIG11bHRpcGxpZXIgKHVuaXRsZXNzKSwgcm90YXRlIGFuZCBza2V3IHRha2UgZGVncmVlcyAoZGVnKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBjcmVhdGUtdHJhbnNmb3JtKCRwZXJzcGVjdGl2ZTogZmFsc2UsICRzY2FsZS14OiBmYWxzZSwgJHNjYWxlLXk6IGZhbHNlLCAkc2NhbGUtejogZmFsc2UsICRyb3RhdGUteDogZmFsc2UsICRyb3RhdGUteTogZmFsc2UsICRyb3RhdGUtejogZmFsc2UsICRyb3RhdGUzZDogZmFsc2UsICR0cmFucy14OiBmYWxzZSwgJHRyYW5zLXk6IGZhbHNlLCAkdHJhbnMtejogZmFsc2UsICRza2V3LXg6IGZhbHNlLCAkc2tldy15OiBmYWxzZSwgJG9yaWdpbi14OiBmYWxzZSwgJG9yaWdpbi15OiBmYWxzZSwgJG9yaWdpbi16OiBmYWxzZSwgJG9ubHkzZDogZmFsc2UpIHtcbiAgJHRyYW5zOiB1bnF1b3RlKFwiXCIpO1xuICAvLyBwZXJzcGVjdGl2ZVxuICBAaWYgJHBlcnNwZWN0aXZlIHtcbiAgICAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSk7IH1cbiAgLy8gc2NhbGVcbiAgQGlmICRzY2FsZS14IGFuZCAkc2NhbGUteSB7XG4gICAgQGlmICRzY2FsZS16IHtcbiAgICAgICR0cmFuczogJHRyYW5zIHNjYWxlM2QoJHNjYWxlLXgsICRzY2FsZS15LCAkc2NhbGUteik7IH1cbiAgICBAZWxzZSB7XG4gICAgICAkdHJhbnM6ICR0cmFucyBzY2FsZSgkc2NhbGUteCwgJHNjYWxlLXkpOyB9IH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkc2NhbGUteCB7XG4gICAgICAkdHJhbnM6ICR0cmFucyBzY2FsZVgoJHNjYWxlLXgpOyB9XG4gICAgQGlmICRzY2FsZS15IHtcbiAgICAgICR0cmFuczogJHRyYW5zIHNjYWxlWSgkc2NhbGUteSk7IH1cbiAgICBAaWYgJHNjYWxlLXoge1xuICAgICAgJHRyYW5zOiAkdHJhbnMgc2NhbGVaKCRzY2FsZS16KTsgfSB9XG4gIC8vIHJvdGF0ZVxuICBAaWYgJHJvdGF0ZS14IHtcbiAgICAkdHJhbnM6ICR0cmFucyByb3RhdGVYKCRyb3RhdGUteCk7IH1cbiAgQGlmICRyb3RhdGUteSB7XG4gICAgJHRyYW5zOiAkdHJhbnMgcm90YXRlWSgkcm90YXRlLXkpOyB9XG4gIEBpZiAkcm90YXRlLXoge1xuICAgICR0cmFuczogJHRyYW5zIHJvdGF0ZVooJHJvdGF0ZS16KTsgfVxuICBAaWYgJHJvdGF0ZTNkIHtcbiAgICAkdHJhbnM6ICR0cmFucyByb3RhdGUzZCgkcm90YXRlM2QpOyB9XG4gIC8vIHRyYW5zbGF0ZVxuICBAaWYgJHRyYW5zLXggYW5kICR0cmFucy15IHtcbiAgICBAaWYgJHRyYW5zLXoge1xuICAgICAgJHRyYW5zOiAkdHJhbnMgdHJhbnNsYXRlM2QoJHRyYW5zLXgsICR0cmFucy15LCAkdHJhbnMteik7IH1cbiAgICBAZWxzZSB7XG4gICAgICAkdHJhbnM6ICR0cmFucyB0cmFuc2xhdGUoJHRyYW5zLXgsICR0cmFucy15KTsgfSB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHRyYW5zLXgge1xuICAgICAgJHRyYW5zOiAkdHJhbnMgdHJhbnNsYXRlWCgkdHJhbnMteCk7IH1cbiAgICBAaWYgJHRyYW5zLXkge1xuICAgICAgJHRyYW5zOiAkdHJhbnMgdHJhbnNsYXRlWSgkdHJhbnMteSk7IH1cbiAgICBAaWYgJHRyYW5zLXoge1xuICAgICAgJHRyYW5zOiAkdHJhbnMgdHJhbnNsYXRlWigkdHJhbnMteik7IH0gfVxuICAvLyBza2V3XG4gIEBpZiAkc2tldy14IGFuZCAkc2tldy15IHtcbiAgICAkdHJhbnM6ICR0cmFucyBza2V3KCRza2V3LXgsICRza2V3LXkpOyB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHNrZXcteCB7XG4gICAgICAkdHJhbnM6ICR0cmFucyBza2V3WCgkc2tldy14KTsgfVxuICAgIEBpZiAkc2tldy15IHtcbiAgICAgICR0cmFuczogJHRyYW5zIHNrZXdZKCRza2V3LXkpOyB9IH1cbiAgLy8gYXBwbHkgaXQhXG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xuICBAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4teCwgJG9yaWdpbi15LCAkb3JpZ2luLXosICRvbmx5M2QpOyB9XG5cbi8vIEEgc2ltcGxpZmllZCBzZXQgb2Ygb3B0aW9uc1xuLy8gYmFja3dhcmRzLWNvbXBhdGlibGUgd2l0aCB0aGUgcHJldmlvdXMgdmVyc2lvbiBvZiB0aGUgJ3RyYW5zZm9ybScgbWl4aW5cbkBtaXhpbiBzaW1wbGUtdHJhbnNmb3JtKCRzY2FsZTogZmFsc2UsICRyb3RhdGU6IGZhbHNlLCAkdHJhbnMteDogZmFsc2UsICR0cmFucy15OiBmYWxzZSwgJHNrZXcteDogZmFsc2UsICRza2V3LXk6IGZhbHNlLCAkb3JpZ2luLXg6IGZhbHNlLCAkb3JpZ2luLXk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGNyZWF0ZS10cmFuc2Zvcm0oZmFsc2UsICRzY2FsZSwgJHNjYWxlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAkcm90YXRlLCBmYWxzZSwgJHRyYW5zLXgsICR0cmFucy15LCBmYWxzZSwgJHNrZXcteCwgJHNrZXcteSwgJG9yaWdpbi14LCAkb3JpZ2luLXksIGZhbHNlLCBmYWxzZSk7IH1cbiIsIi51Z2Mge1xuICAgIEBleHRlbmQgJWRlZmF1bHQtZm9udDtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG5cbiAgICBwLHVsLG9sLGJsb2NrcXVvdGUge1xuICAgICAgICBAaW5jbHVkZSB0cmFpbGVyKDEpOyB9XG5cbiAgICB1bCxvbCB7XG4gICAgICAgIEBpbmNsdWRlIGxlYWRlciguMik7IH1cblxuICAgIHVsIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3ZnLWJhY2tncm91bmQoXCIuLi9pbWFnZXMvaWNvbnMvYnVsbGV0XCIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhaWxlciguNSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA5cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuXG4gICAgb2wge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIGNvdW50ZXItcmVzZXQ6IG9sLWNvdW50ZXI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYWlsZXIoLjUpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH0gfVxuXG4gICAgb2wgPiBsaTpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgICAgICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygyMHB4KTtcbiAgICAgICAgY29udGVudDogY291bnRlcihvbC1jb3VudGVyKTtcbiAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IG9sLWNvdW50ZXI7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBsZWZ0OiAtMTVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxNXB4OyB9XG5cbiAgICAuaW50cm8ge1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjaztcbiAgICAgICAgQGluY2x1ZGUgYWRqdXN0LWZvbnQtc2l6ZS10bygyNHB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG5cbiAgICBpZnJhbWUueW91dHViZS1wbGF5ZXIge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgdmlkZW8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4gICAgLmltZ19jZW50ZXIge1xuICAgICAgICB3aWR0aDogMTAwJSArIGd1dHRlci1zcGFuKCk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0gZ3V0dGVyLXNwYW4oKS8yO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gZ3V0dGVyLXNwYW4oKS8yOyB9XG5cbiAgICAuY3VzdG9tLWZvbnQge1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1zdGFjazsgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZVxuICAgIC8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoICdhbGwnICkge1xuICAgICAgICAuaW1nX2NlbnRlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSArIGd1dHRlci1zcGFuKCk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSBndXR0ZXItc3BhbigpLzI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gZ3V0dGVyLXNwYW4oKS8yOyB9IH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkbW9iaWxlLWxhbmRzY2FwZSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHNtYWxsLXRhYmxldCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJHRhYmxldCkge1xuICAgICAgICAuaW1nX2NlbnRlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSArIGd1dHRlci1zcGFuKCkqMjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtIGd1dHRlci1zcGFuKCk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gZ3V0dGVyLXNwYW4oKTsgfSB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoJGRlc2t0b3ApOyB9XG4iLCIuc3VibWlzc2lvbnMge1xuICAudWdjIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4OyB9XG5cbiAgLnBhcnRpY2lwYW50IHtcbiAgICAmX19oZWFkaW5nIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWlkLWdyZXk7XG4gICAgICBwYWRkaW5nOiAwIDAgMTJweDtcbiAgICAgIG1hcmdpbjogMTJweCAwO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGhlaWdodDogN3B4O1xuICAgICAgICAgIHdpZHRoOiA3cHg7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgYmxhY2s7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGJsYWNrO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICBsZWZ0OiAxMTBweDsgfSB9XG5cbiAgICAmX19kYXRhIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMnB4OyB9XG5cbiAgICAmX19jb2x1bW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuXG4gICAgJi0tbGltaXQge1xuICAgICAgY29sb3I6ICRyZWQ7IH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkc21hbGwtdGFibGV0KSB7XG4gICAgICAmX19jb2x1bW4ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkOyB9IH0gfSB9XG4iLCIjZm9vdGVyX3NvY2lhbF9uYXYge1xuICBAaW5jbHVkZSBsZWFkZXIoMS41KTtcbiAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCk7XG4gIG1hcmdpbi1yaWdodDogZ3V0dGVyLXNwYW4oKTtcbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogLTVweDsgfSB9XG5cbi5mb290ZXJfc29jaWFsX2l0ZW0ge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KCdiYWNrZ3JvdW5kLXNpemUnKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigyMDBtcyk7XG4gIEBpbmNsdWRlIHN2Zy1iYWNrZ3JvdW5kKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvYmtnX3doaXRlX3NoYXBlJywgJGJhY2tncm91bmQtc2l6ZTogNDRweCBhdXRvKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTlweDtcbiAgaGVpZ2h0OiA1NnB4O1xuICAmOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2JhY2tncm91bmRzL2JrZ193aGl0ZV9zaGFwZScsICRiYWNrZ3JvdW5kLXNpemU6IDU5cHggYXV0byk7IH1cblxuICBzcGFuIHtcbiAgICBAaW5jbHVkZSBzdmctYmFja2dyb3VuZCgnLi4vaW1hZ2VzL2ljb25zL2Zvb3Rlcl9zb2NpYWwnKTtcbiAgICB3aWR0aDogMjlweDtcbiAgICBwYWRkaW5nLXRvcDogMjlweDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAxNHB4IDAgMCAxNnB4OyB9XG5cbiAgJi55b3V0dWJlIHtcbiAgICBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfSB9XG4gICYuaW5zdGFncmFtIHtcbiAgICBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yOXB4IDA7IH0gfVxuICAmLmxpbmtlZGluIHtcbiAgICBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01OHB4IDA7IH0gfVxuICAmLmZhY2Vib29rIHtcbiAgICBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04N3B4IDA7IH0gfVxuICAmLnR3aXR0ZXIge1xuICAgIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExNnB4IDA7IH0gfSB9XG5cblxuLy8gUmVzcG9uc2l2ZVxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQGluY2x1ZGUgYnJlYWtwb2ludC1jb250ZXh0KCAnYWxsJyApIHtcbiAgI2Zvb3Rlcl9zb2NpYWxfbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogZ3V0dGVyLXNwYW4oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7IH0gfVxuXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQgKCAkdGFibGV0ICkge1xuICAjZm9vdGVyX3NvY2lhbF9uYXYge1xuICAgIEBpbmNsdWRlIHRyYWlsZXIoMSk7XG4gICAgQGluY2x1ZGUgbGVhZGVyKDEuNSk7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiBjb2x1bW4tc3BhbiguNSwwLDYpO1xuICAgIG1hcmdpbi1yaWdodDogY29sdW1uLXNwYW4oLjUsMCw2KTsgfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCggJGRlc2t0b3AgKSB7XG4gICNmb290ZXJfc29jaWFsX25hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IGd1dHRlci1zcGFuKCkvMjtcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCkvMjtcbiAgICBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTVweDsgfSB9IH1cblxuIiwiLmZvcm0tYWRkIHtcbiAgY29sb3I6ICNjNzAwNzc7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICBmb250LXNpemU6IDIycHg7XG5cbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIHNpemUoMzZweCk7XG4gICAgQGluY2x1ZGUgbWFyZ2luKC01cHggMTVweCBudWxsIG51bGwpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJveC1zaGFkb3c6IDRweCA0cHggOHB4IHJnYmEoIzAwMCwgMC4yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhZGYyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2JhY2tncm91bmRzL2Zvcm0tYWRkLXBsdXMucG5nJyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuICAmLS1kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfSB9XG4iLCIvLyBDU1MzIEZsZXhpYmxlIEJveCBNb2RlbCBhbmQgcHJvcGVydHkgZGVmYXVsdHNcblxuLy8gQ3VzdG9tIHNob3J0aGFuZCBub3RhdGlvbiBmb3IgZmxleGJveFxuQG1peGluIGJveCgkb3JpZW50OiBpbmxpbmUtYXhpcywgJHBhY2s6IHN0YXJ0LCAkYWxpZ246IHN0cmV0Y2gpIHtcbiAgQGluY2x1ZGUgZGlzcGxheS1ib3g7XG4gIEBpbmNsdWRlIGJveC1vcmllbnQoJG9yaWVudCk7XG4gIEBpbmNsdWRlIGJveC1wYWNrKCRwYWNrKTtcbiAgQGluY2x1ZGUgYm94LWFsaWduKCRhbGlnbik7XG59XG5cbkBtaXhpbiBkaXNwbGF5LWJveCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbW96LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7IC8vIElFIDEwXG4gIGRpc3BsYXk6IGJveDtcbn1cblxuQG1peGluIGJveC1vcmllbnQoJG9yaWVudDogaW5saW5lLWF4aXMpIHtcbi8vIGhvcml6b250YWx8dmVydGljYWx8aW5saW5lLWF4aXN8YmxvY2stYXhpc3xpbmhlcml0XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmllbnQsICRvcmllbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBib3gtcGFjaygkcGFjazogc3RhcnQpIHtcbi8vIHN0YXJ0fGVuZHxjZW50ZXJ8anVzdGlmeVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtcGFjaywgJHBhY2ssIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LXBhY2s6ICRwYWNrOyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWFsaWduKCRhbGlnbjogc3RyZXRjaCkge1xuLy8gc3RhcnR8ZW5kfGNlbnRlcnxiYXNlbGluZXxzdHJldGNoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1hbGlnbiwgJGFsaWduLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1hbGlnbjogJGFsaWduOyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWRpcmVjdGlvbigkZGlyZWN0aW9uOiBub3JtYWwpIHtcbi8vIG5vcm1hbHxyZXZlcnNlfGluaGVyaXRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWRpcmVjdGlvbiwgJGRpcmVjdGlvbiwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uOyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWxpbmVzKCRsaW5lczogc2luZ2xlKSB7XG4vLyBzaW5nbGV8bXVsdGlwbGVcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWxpbmVzLCAkbGluZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBib3gtb3JkaW5hbC1ncm91cCgkaW50OiAxKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmRpbmFsLWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1vcmRlcjogJGludDsgLy8gSUUgMTBcbn1cblxuQG1peGluIGJveC1mbGV4KCR2YWx1ZTogMCkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZmxleCwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleDogJHZhbHVlOyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWZsZXgtZ3JvdXAoJGludDogMSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZmxleC1ncm91cCwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuLy8gQ1NTMyBGbGV4aWJsZSBCb3ggTW9kZWwgYW5kIHByb3BlcnR5IGRlZmF1bHRzXG4vLyBVbmlmaWVkIGF0dHJpYnV0ZXMgZm9yIDIwMDksIDIwMTEsIGFuZCAyMDEyIGZsYXZvdXJzLlxuXG4vLyAyMDA5IC0gZGlzcGxheSAoYm94IHwgaW5saW5lLWJveClcbi8vIDIwMTEgLSBkaXNwbGF5IChmbGV4Ym94IHwgaW5saW5lLWZsZXhib3gpXG4vLyAyMDEyIC0gZGlzcGxheSAoZmxleCB8IGlubGluZS1mbGV4KVxuQG1peGluIGRpc3BsYXkoJHZhbHVlKSB7XG4vLyBmbGV4IHwgaW5saW5lLWZsZXhcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXhcIiB7XG4gICAgLy8gMjAwOVxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IGJveDtcblxuICAgIC8vIDIwMTJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OyAvLyAyMDExIChJRSAxMClcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImlubGluZS1mbGV4XCIge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWlubGluZS1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWJveDtcblxuICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1pbmxpbmUtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH0gQGVsc2Uge1xuICAgIGRpc3BsYXk6ICR2YWx1ZTtcbiAgfVxufVxuXG4vLyAyMDA5IC0gYm94LWZsZXggKGludGVnZXIpXG4vLyAyMDExIC0gZmxleCAoZGVjaW1hbCB8IHdpZHRoIGRlY2ltYWwpXG4vLyAyMDEyIC0gZmxleCAoaW50ZWdlciBpbnRlZ2VyIHdpZHRoKVxuQG1peGluIGZsZXgoJHZhbHVlKSB7XG5cbiAgLy8gR3JhYiBmbGV4LWdyb3cgZm9yIG9sZGVyIGJyb3dzZXJzLlxuICAkZmxleC1ncm93OiBudGgoJHZhbHVlLCAxKTtcblxuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LCAkZmxleC1ncm93LCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTEgKElFIDEwKSwgMjAxMlxuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XG59XG5cbi8vIDIwMDkgLSBib3gtb3JpZW50ICggaG9yaXpvbnRhbCB8IHZlcnRpY2FsIHwgaW5saW5lLWF4aXMgfCBibG9jay1heGlzKVxuLy8gICAgICAtIGJveC1kaXJlY3Rpb24gKG5vcm1hbCB8IHJldmVyc2UpXG4vLyAyMDExIC0gZmxleC1kaXJlY3Rpb24gKHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2UpXG4vLyAyMDEyIC0gZmxleC1kaXJlY3Rpb24gKHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2UpXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJHZhbHVlOiByb3cpIHtcblxuICAvLyBBbHQgdmFsdWVzLlxuICAkdmFsdWUtMjAwOTogJHZhbHVlO1xuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xuICAkZGlyZWN0aW9uOiBub3JtYWw7XG5cbiAgQGlmICR2YWx1ZSA9PSByb3cge1xuICAgICR2YWx1ZS0yMDA5OiBob3Jpem9udGFsO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInJvdy1yZXZlcnNlXCIge1xuICAgICR2YWx1ZS0yMDA5OiBob3Jpem9udGFsO1xuICAgICRkaXJlY3Rpb246IHJldmVyc2U7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IGNvbHVtbiB7XG4gICAgJHZhbHVlLTIwMDk6IHZlcnRpY2FsO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImNvbHVtbi1yZXZlcnNlXCIge1xuICAgICR2YWx1ZS0yMDA5OiB2ZXJ0aWNhbDtcbiAgICAkZGlyZWN0aW9uOiByZXZlcnNlO1xuICB9XG5cbiAgLy8gMjAwOVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtb3JpZW50LCAkdmFsdWUtMjAwOSwgd2Via2l0IG1veiBzcGVjKTtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWRpcmVjdGlvbiwgJGRpcmVjdGlvbiwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtZGlyZWN0aW9uLCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogJHZhbHVlO1xufVxuXG4vLyAyMDA5IC0gYm94LWxpbmVzIChzaW5nbGUgfCBtdWx0aXBsZSlcbi8vIDIwMTEgLSBmbGV4LXdyYXAgKG5vd3JhcCB8IHdyYXAgfCB3cmFwLXJldmVyc2UpXG4vLyAyMDEyIC0gZmxleC13cmFwIChub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlKVxuQG1peGluIGZsZXgtd3JhcCgkdmFsdWU6IG5vd3JhcCkge1xuICAvLyBBbHQgdmFsdWVzXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcbiAgQGlmICR2YWx1ZSA9PSBub3dyYXAge1xuICAgICRhbHQtdmFsdWU6IHNpbmdsZTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gd3JhcCB7XG4gICAgJGFsdC12YWx1ZTogbXVsdGlwbGU7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwid3JhcC1yZXZlcnNlXCIge1xuICAgICRhbHQtdmFsdWU6IG11bHRpcGxlO1xuICB9XG5cbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWxpbmVzLCAkYWx0LXZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LXdyYXAsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcbn1cblxuLy8gMjAwOSAtIFRPRE86IHBhcnNlIHZhbHVlcyBpbnRvIGZsZXgtZGlyZWN0aW9uL2ZsZXgtd3JhcFxuLy8gMjAxMSAtIFRPRE86IHBhcnNlIHZhbHVlcyBpbnRvIGZsZXgtZGlyZWN0aW9uL2ZsZXgtd3JhcFxuLy8gMjAxMiAtIGZsZXgtZmxvdyAoZmxleC1kaXJlY3Rpb24gfHwgZmxleC13cmFwKVxuQG1peGluIGZsZXgtZmxvdygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1mbG93LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbi8vIDIwMDkgLSBib3gtb3JkaW5hbC1ncm91cCAoaW50ZWdlcilcbi8vIDIwMTEgLSBmbGV4LW9yZGVyIChpbnRlZ2VyKVxuLy8gMjAxMiAtIG9yZGVyIChpbnRlZ2VyKVxuQG1peGluIG9yZGVyKCRpbnQ6IDApIHtcbiAgLy8gMjAwOVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtb3JkaW5hbC1ncm91cCwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKG9yZGVyLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTEgKElFIDEwKVxuICAtbXMtZmxleC1vcmRlcjogJGludDtcbn1cblxuLy8gMjAxMiAtIGZsZXgtZ3JvdyAobnVtYmVyKVxuQG1peGluIGZsZXgtZ3JvdygkbnVtYmVyOiAwKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtZ3JvdywgJG51bWJlciwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6ICRudW1iZXI7XG59XG5cbi8vIDIwMTIgLSBmbGV4LXNocmluayAobnVtYmVyKVxuQG1peGluIGZsZXgtc2hyaW5rKCRudW1iZXI6IDEpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1zaHJpbmssICRudW1iZXIsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAkbnVtYmVyO1xufVxuXG4vLyAyMDEyIC0gZmxleC1iYXNpcyAobnVtYmVyKVxuQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoOiBhdXRvKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtYmFzaXMsICR3aWR0aCwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ICR3aWR0aDtcbn1cblxuLy8gMjAwOSAtIGJveC1wYWNrIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGp1c3RpZnkpXG4vLyAyMDExIC0gZmxleC1wYWNrIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGp1c3RpZnkpXG4vLyAyMDEyIC0ganVzdGlmeS1jb250ZW50IChmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kKVxuQG1peGluIGp1c3RpZnktY29udGVudCgkdmFsdWU6IGZsZXgtc3RhcnQpIHtcblxuICAvLyBBbHQgdmFsdWVzLlxuICAkYWx0LXZhbHVlOiAkdmFsdWU7XG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xuICAgICRhbHQtdmFsdWU6IHN0YXJ0O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xuICAgICRhbHQtdmFsdWU6IGVuZDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1iZXR3ZWVuXCIge1xuICAgICRhbHQtdmFsdWU6IGp1c3RpZnk7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwic3BhY2UtYXJvdW5kXCIge1xuICAgICRhbHQtdmFsdWU6IGRpc3RyaWJ1dGU7XG4gIH1cblxuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1wYWNrLCAkYWx0LXZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoanVzdGlmeS1jb250ZW50LCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtcGFjazogJGFsdC12YWx1ZTtcbn1cblxuLy8gMjAwOSAtIGJveC1hbGlnbiAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXG4vLyAyMDExIC0gZmxleC1hbGlnbiAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXG4vLyAyMDEyIC0gYWxpZ24taXRlbXMgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbkBtaXhpbiBhbGlnbi1pdGVtcygkdmFsdWU6IHN0cmV0Y2gpIHtcblxuICAkYWx0LXZhbHVlOiAkdmFsdWU7XG5cbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XG4gICAgJGFsdC12YWx1ZTogc3RhcnQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XG4gICAgJGFsdC12YWx1ZTogZW5kO1xuICB9XG5cbiAgLy8gMjAwOVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtYWxpZ24sICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMlxuICBAaW5jbHVkZSBwcmVmaXhlcihhbGlnbi1pdGVtcywgJHZhbHVlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApXG4gIC1tcy1mbGV4LWFsaWduOiAkYWx0LXZhbHVlO1xufVxuXG4vLyAyMDExIC0gZmxleC1pdGVtLWFsaWduIChhdXRvIHwgc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXG4vLyAyMDEyIC0gYWxpZ24tc2VsZiAoYXV0byB8IGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbkBtaXhpbiBhbGlnbi1zZWxmKCR2YWx1ZTogYXV0bykge1xuXG4gICR2YWx1ZS0yMDExOiAkdmFsdWU7XG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xuICAgICR2YWx1ZS0yMDExOiBzdGFydDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcbiAgICAkdmFsdWUtMjAxMTogZW5kO1xuICB9XG5cbiAgLy8gMjAxMlxuICBAaW5jbHVkZSBwcmVmaXhlcihhbGlnbi1zZWxmLCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApXG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246ICR2YWx1ZS0yMDExO1xufVxuXG4vLyAyMDExIC0gZmxleC1saW5lLXBhY2sgKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwganVzdGlmeSB8IGRpc3RyaWJ1dGUgfCBzdHJldGNoKVxuLy8gMjAxMiAtIGFsaWduLWNvbnRlbnQgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQgfCBzdHJldGNoKVxuQG1peGluIGFsaWduLWNvbnRlbnQoJHZhbHVlOiBzdHJldGNoKSB7XG5cbiAgJHZhbHVlLTIwMTE6ICR2YWx1ZTtcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XG4gICAgJHZhbHVlLTIwMTE6IHN0YXJ0O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xuICAgICR2YWx1ZS0yMDExOiBlbmQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwic3BhY2UtYmV0d2VlblwiIHtcbiAgICAkdmFsdWUtMjAxMToganVzdGlmeTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1hcm91bmRcIiB7XG4gICAgJHZhbHVlLTIwMTE6IGRpc3RyaWJ1dGU7XG4gIH1cblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLWNvbnRlbnQsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtbGluZS1wYWNrOiAkdmFsdWUtMjAxMTtcbn1cbiIsIiN1c2VyX29yZGVyX2RldGFpbHMge1xuICBAaW5jbHVkZSBwYWRkaW5nLXRyYWlsZXIoMik7XG4gIG1hcmdpbi1sZWZ0OiBndXR0ZXItc3BhbigpO1xuICBtYXJnaW4tcmlnaHQ6IGd1dHRlci1zcGFuKCk7XG4gIGgyIHtcbiAgICBAaW5jbHVkZSBsZWFkZXIoLjUpOyB9XG4gIGRsIHtcbiAgICBkZCB7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7IH1cbiAgICBkdCB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfSB9IH1cblxuXG4vLyBSZXNwb25zaXZlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW5jbHVkZSBicmVha3BvaW50LWNvbnRleHQoICdhbGwnICk7XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkc21hbGwtdGFibGV0KSB7XG4gICN1c2VyX29yZGVyX2RldGFpbHMge1xuICAgIGRsIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctdHJhaWxlciguNSk7XG4gICAgICBkdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgd2lkdGg6IDE1MHB4OyB9XG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwLjVlbSAwOyB9IH0gfSB9XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkdGFibGV0KTtcbiIsIi5zdGVwX25hdiB7XG4gIEBpbmNsdWRlIGRpc3BsYXkoZmxleCk7XG4gIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1iZXR3ZWVuKTtcbiAgQGluY2x1ZGUgbWFyZ2luKG51bGwgYXV0byAzMHB4KTtcbiAgd2lkdGg6IDc1JTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuXG4gICY6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgbnVsbCBudWxsIDBweCk7XG4gICAgQGluY2x1ZGUgc2l6ZSgxMDAlIDdweCk7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkpO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogIzAwYWNmMTtcbiAgICB6LWluZGV4OiAtMTsgfVxuXG4gIGxpIHtcbiAgICBAaW5jbHVkZSBmbGV4KG5vbmUpOyB9XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgc2l6ZSg2OHB4KTtcbiAgICBAaW5jbHVkZSBkaXNwbGF5KGZsZXgpO1xuICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XG4gICAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KGNlbnRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICMwMGFjZjE7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXN0YWNrO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDRweCA3cHggOHB4IDBweCByZ2JhKDEsIDEsIDEsIDAuMyk7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMjMzZTkxOyB9IH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgc2l6ZSg0MHB4KTtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9IH1cbiIsIi50YWMge1xuICAuc2Nyb2xsIHtcbiAgICBoZWlnaHQ6IDE5MHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAxMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XG5cbiAgLmFjdGlvbnMge1xuICAgIG1heC13aWR0aDogMzgwcHg7XG4gICAgbWFyZ2luOiAwcHggYXV0bzsgfSB9XG4iLCIubGFiZWwtdG9vbHRpcCB7XG4gICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAudG9vbHRpcCB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfSB9IH1cbiAgLnRvb2x0aXAge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYmFja2dyb3VuZDogJGRhcmtibHVlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgcGFkZGluZzogNXB4IDAgMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtY29udGV4dCgkc21hbGwtdGFibGV0KSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAuOCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkbWlkLWdyZXk7XG4gICAgICBib3gtc2hhZG93OiAzcHggM3B4IDNweCAwcHggcmdiYSgwLDAsMCwuMSk7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICBjb250ZW50OiBhdHRyKGRhdGEtdG9vbHRpcCk7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHRvcDogMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiAuM3M7XG4gICAgICBtaW4td2lkdGg6IDMwMHB4OyB9IH0gfVxuXG4iLCIucGVvcGxlX19oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNmN2ZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHNlY3Rpb24ge1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4OyB9XG4gIC5iYW5uZXJfX3BpY3R1cmUge1xuICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgIC13ZWJraXQtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDAgMCAwKTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg2MGRlZywgcmdiYSgwLCAwLCAwLCAuMykgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIG9wYWNpdHk6IDYwJTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5iYW5uZXJfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgbWFyZ2luLXRvcDogLTI3MHB4O1xuICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgei1pbmRleDogMTAwO1xuICAgIC5iYW5uZXJfX3RpdGxlIHtcbiAgICAgIGNvbG9yOiBXaGl0ZTsgfVxuXG4gICAgLnBlb3BsZV9faW1hZ2Uge1xuICAgICAgLnBlcnNvbl9fcGljdHVyZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH0gfVxuXG4gICAgLnBlb3BsZV9fbWV0YSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgLmJhbm5lcl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH0gfSB9XG5cbkBtZWRpYShtYXgtd2lkdGg6IDk5OXB4KSB7XG4gIC5wZW9wbGVfX2hlYWRlciB7XG4gICAgLmJhbm5lcl9fY29udGVudCB7XG4gICAgICBib3R0b206IDQwcHg7IH1cbiAgICAuYmFubmVyX19zbGlkZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7IH1cbiAgICAuYmFubmVyX19waWN0dXJlIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0OyB9IH1cbiAgICAuc2xpZGVyIHtcbiAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IHVuc2V0OyB9IH0gfSB9IH1cblxuQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgLnBlb3BsZV9faGVhZGVyIHtcbiAgICAuYmFubmVyX19waWN0dXJlIHtcbiAgICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogNTAwcHg7IH0gfVxuICAgIC5wZW9wbGVfX21ldGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50OyB9XG4gICAgLmJhbm5lcl9fY29udGVudCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgICAucGVyc29uX19waWN0dXJlIHtcbiAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4OyB9IH0gfSB9XG4iLCJAaW1wb3J0IFwiX2JvdXJib24vYm91cmJvblwiO1xuQGltcG9ydCBcImJyZWFrcG9pbnQtc2Fzc1wiO1xuXG4vLyBTZXR1cFxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW1wb3J0IFwiYnJlYWtwb2ludC1zYXNzXCI7XG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL2NvbXBhc3Mtc2Fzcy1taXhpbnMvbGliL19jb21wYXNzXCI7XG5AaW1wb3J0IFwic2luZ3VsYXJpdHlnc1wiO1xuXG5AaW1wb3J0IFwiX3NldHVwL2NvbmZpZ1wiO1xuQGltcG9ydCBcIl9zZXR1cC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJfc2V0dXAvZnVuY3Rpb25zXCI7XG5cbi8vIE1peGluc1xuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5AaW1wb3J0IFwiX21peGlucy9ncmlkXCI7XG5AaW1wb3J0IFwiX21peGlucy9pbWFnZXNcIjtcblxuQGluY2x1ZGUgZ2xvYmFsLXJlc2V0O1xuXG4vLyBQbGFjZWhvbGRlciBjbGFzc2VzXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBpbXBvcnQgXCJfcGxhY2Vob2xkZXJzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJfcGxhY2Vob2xkZXJzL2dyYWRpZW50c1wiO1xuQGltcG9ydCBcIl9wbGFjZWhvbGRlcnMvZ3JpZFwiO1xuQGltcG9ydCBcIl9wbGFjZWhvbGRlcnMvaW1hZ2VzXCI7XG5AaW1wb3J0IFwiX3BsYWNlaG9sZGVycy90eXBvZ3JhcGh5XCI7XG5cbi8vIEBpbXBvcnQgJy4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2NvcmUvX2JvdXJib24uc2NzcydcbkBpbXBvcnQgJy4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay5zY3NzJztcblxuQGltcG9ydCBcInNldHRpbmdzL3NldHRpbmdzLnNhc3NcIjtcbkBpbXBvcnQgXCJ1dGlscy9ncmlkLnNhc3NcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9idXR0b24uc2Fzc1wiO1xuQGltcG9ydCBcImVsZW1lbnRzL2NoZWNrYm94LnNhc3NcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9maWVsZC1sYWJlbC5zYXNzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvZm9ybS5zYXNzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvaHIuc2Fzc1wiO1xuQGltcG9ydCBcImVsZW1lbnRzL2lucHV0LXBhc3N3b3JkLnNhc3NcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9pbnB1dC10b2dnbGUuc2Fzc1wiO1xuQGltcG9ydCBcImVsZW1lbnRzL2lucHV0LXVwbG9hZC5zYXNzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvaW5wdXQuc2Fzc1wiO1xuQGltcG9ydCBcImVsZW1lbnRzL29yZGVyZWQtbGlzdC5zYXNzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvcGFyc2xleS5zYXNzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvc2VsZWN0LnNhc3NcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy90YWJsZS5zYXNzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvdGV4dGFyZWEuc2Fzc1wiO1xuQGltcG9ydCBcImVsZW1lbnRzL3R5cG9ncmFwaHkuc2Fzc1wiO1xuQGltcG9ydCBcImVsZW1lbnRzL3Vub3JkZXJlZC1saXN0LnNhc3NcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy93eXNpd3lnLnNhc3NcIjtcbkBpbXBvcnQgXCJsYXlvdXRzL2NvbnRhaW5lci5zYXNzXCI7XG5AaW1wb3J0IFwibGF5b3V0cy9jb3JlLnNhc3NcIjtcbkBpbXBvcnQgXCJsYXlvdXRzL2Zvb3Rlci5zYXNzXCI7XG5AaW1wb3J0IFwibGF5b3V0cy9ncmlkLnNhc3NcIjtcbkBpbXBvcnQgXCJsYXlvdXRzL2xpc3Rpbmcuc2Fzc1wiO1xuQGltcG9ydCBcImxheW91dHMvbW9kYWwuc2Fzc1wiO1xuQGltcG9ydCBcImxheW91dHMvc2VjdGlvbi5zYXNzXCI7XG5AaW1wb3J0IFwibGF5b3V0cy9zaXRlLWhlYWRlci5zYXNzXCI7XG5AaW1wb3J0IFwibGF5b3V0cy9zbGlkZXIuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYWNjb3JkaW9uLWNvbnRlbnQuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYWNjb3JkaW9uLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Fycm93LnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2JhY2tncm91bmQtZmxvd2VyLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jhc2tldC1ub3RpZmljYXRpb24uc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY2FyZC5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jb250YWN0LWRldGFpbHMuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY3FjLXdpZGdldC5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ldmVudC1mb3JtLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2V2ZW50LXN1bW1hcnkuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZXZlbnRzLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2V2ZW50cy9ldmVudC1iYW5uZXIuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZXZlbnRzL2V2ZW50LWZlYXR1cmVkLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2V2ZW50cy9ldmVudHMtNTA1MC5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ldmVudHMvZXZlbnRzLWJ0bi5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ldmVudHMvZXZlbnRzLXF1b3RlLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2V2ZW50cy9ldmVudHMtc3VtbWFyeS5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ldmVudHMvaWNvbi10ZXh0LnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ZpbHRlci5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9saW5rLWFycm93LnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xvYWRpbmctcmluZy5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9tZWRpYS5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9tZXNzYWdlcy5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9tb2JpbGUtZXZlbnRzLWZpbHRlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9tb2RlbC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9uYXYtaWNvbi5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYWdpbmF0aW9uLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhcnRpY2lwYW50LW1hbmFnZW1lbnQuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGVvcGxlLWNvbnRlbnQuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGVvcGxlLWxpc3Rpbmcuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3F1b3RlLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3JhZGlvLXRvZ2dsZS5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zY3JvbGxlci5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zZWFyY2gtZmllbGQuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvc2hvcHMtc3RpY2t5LWJ0bi5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zaG9wcy5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zbGlkZXItY2FyZC5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zb2NpYWwtbmF2LnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3RhZy5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy90b2dnbGUuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdmlkZW8uc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9hcHBsaWNhdGlvbi1mb3JtLnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvYmFubmVyLnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvYnV0dG9uLWdyaWQuc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9jYXJkLWdyaWQuc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9jYXJvdXNlbC5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2NvbnRhY3QtZm9ybS5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2NvbnRhY3QtaW5mby5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2NvbnRhY3QtbGlzdC5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2NvbnRlbnQtYmxvY2suc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9jdGEuc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9kb25hdGUuc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9kb25hdGlvbi1mb3JtLnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvZG9uYXRpb24tcmVhc29ucy5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2ZhbWlseS1zdG9yaWVzLnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvZmVhdHVyZWQtYXJ0aWNsZS5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2ZlYXR1cmVkLWV2ZW50cy5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2Z1bmRyYWlzaW5nLWZvcm0uc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9pbWFnZS1iYWNrZ3JvdW5kLnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvaW1hZ2UtcG9wb3V0LnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvbWVkaWEtY2xvdWQuc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9tZWRpYS1xdW90ZS5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL21lZGlhLXZpZGVvLnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvbmV3c2xldHRlci5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL29yZGVyZWQtbGlzdC1ibG9jay5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3BhbmVsLnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvcHJpbWFyeS1uYXYuc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9wcm9ncmVzcy5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3N0aWNreS1jdGEuc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy90ZXh0LW1lZGlhLXBvcG91dC5zYXNzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3RleHQtbWVkaWEuc2Fzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy90aXRsZS1jb250ZW50LnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvdXBjb21pbmctZXZlbnQtc3Vic2NyaXB0aW9uLnNhc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvdmVydGljYWwtdGFicy5zYXNzXCI7XG5AaW1wb3J0IFwiaGVscGVycy91dGlsaXRpZXMuc2Fzc1wiO1xuXG5AaW1wb3J0IFwiX3N0cnVjdHVyZS9jb250ZW50X21haW4uc2Fzc1wiO1xuQGltcG9ydCBcIl9zdHJ1Y3R1cmUvY29udGVudF9zdWIuc2Fzc1wiO1xuQGltcG9ydCBcIl9uYXZpZ2F0aW9uL21haW5fbmF2LnNhc3NcIjtcbkBpbXBvcnQgXCJfbmF2aWdhdGlvbi9zdWJfbmF2LnNhc3NcIjtcbkBpbXBvcnQgXCJfZm9ybXMvX2FydGljbGVfdGFnX2ZpbHRlci5zYXNzXCI7XG5AaW1wb3J0IFwiX2Zvcm1zL19kZWZhdWx0LnNhc3NcIjtcbkBpbXBvcnQgXCJfZm9ybXMvX2VuZXdzbGV0dGVyLnNhc3NcIjtcbkBpbXBvcnQgXCJfZm9ybXMvX3Bhc3N3b3JkX3Jlc2V0LnNhc3NcIjtcbkBpbXBvcnQgXCJfZm9ybXMvX3Bvc3Rjb2RlX3NlYXJjaC5zYXNzXCI7XG5AaW1wb3J0IFwiX2Zvcm1zL19zZWFyY2hfcmVzdWx0cy5zYXNzXCI7XG5AaW1wb3J0IFwiX2Zvcm1zL19zZWFyY2guc2Fzc1wiO1xuQGltcG9ydCBcIl9mb3Jtcy9fc3RlcHBlZF9mb3JtLnNhc3NcIjtcbkBpbXBvcnQgXCJfZm9ybXMvX3VzZXJfZm9ybXMuc2Fzc1wiO1xuQGltcG9ydCBcIl9mb3Jtcy9yZW1vdmUtcGFydGljaXBhbnQuc2Fzc1wiO1xuXG5AaW1wb3J0IFwiX2FydGljbGVzL2xpc3RzL19ldmVudC5zYXNzXCI7XG5AaW1wb3J0IFwiX2FydGljbGVzL2xpc3RzL19mYW1pbHkuc2Fzc1wiO1xuQGltcG9ydCBcIl9hcnRpY2xlcy9saXN0cy9fc2VhcmNoLnNhc3NcIjtcbkBpbXBvcnQgXCJfYXJ0aWNsZXMvbGlzdHMvX3Nob3BfbG9jYXRpb24uc2Fzc1wiO1xuQGltcG9ydCBcIl9hcnRpY2xlcy9saXN0cy9fc2hvcC5zYXNzXCI7XG5AaW1wb3J0IFwiX2FydGljbGVzL2xpc3RzL190aWxlcy5zYXNzXCI7XG5AaW1wb3J0IFwiX2FydGljbGVzL2xpc3RzL192b2x1bnRlZXIuc2Fzc1wiO1xuQGltcG9ydCBcIl9hcnRpY2xlcy9kZXRhaWxzL19kZWZhdWx0LnNhc3NcIjtcbkBpbXBvcnQgXCJfYXJ0aWNsZXMvZGV0YWlscy9fZXZlbnQuc2Fzc1wiO1xuQGltcG9ydCBcIl9hcnRpY2xlcy9kZXRhaWxzL19zaG9wLnNhc3NcIjtcblxuQGltcG9ydCBcIl9wYWdlcy9hY2NvdW50X3BhZ2VzLnNhc3NcIjtcbkBpbXBvcnQgXCJfcGFnZXMvZG9uYXRlLnNhc3NcIjtcbkBpbXBvcnQgXCJfcGFnZXMvZXZlbnRfaW1hZ2VfYmFza2V0LnNhc3NcIjtcbkBpbXBvcnQgXCJfcGFnZXMvZXZlbnRfaW1hZ2Uuc2Fzc1wiO1xuQGltcG9ydCBcIl9wYWdlcy9ob21lLnNhc3NcIjtcbkBpbXBvcnQgXCJfcGFnZXMvanVzdGdpdmluZy5zYXNzXCI7XG5AaW1wb3J0IFwiX3BhZ2VzL2xhbmRpbmctcGFnZS5zYXNzXCI7XG5AaW1wb3J0IFwiX3BhZ2VzL25ld3NsZXR0ZXJfcGFnZS5zYXNzXCI7XG5AaW1wb3J0IFwiX3BhZ2VzL292ZXJ2aWV3LnNhc3NcIjtcbkBpbXBvcnQgXCJfcGFnZXMvc2l0ZW1hcC5zYXNzXCI7XG5AaW1wb3J0IFwiX3BhZ2VzL3N1cHBvcnRfdXMuc2Fzc1wiO1xuXG5AaW1wb3J0IFwiX2NvbnRlbnRfYmxvY2tzL19jb250YWN0X2RldGFpbHMuc2Fzc1wiO1xuQGltcG9ydCBcIl9jb250ZW50X2Jsb2Nrcy9fZG9uYXRlLnNhc3NcIjtcbkBpbXBvcnQgXCJfY29udGVudF9ibG9ja3MvX2RvbmF0aW9uLWNhcmRzLnNhc3NcIjtcbkBpbXBvcnQgXCJfY29udGVudF9ibG9ja3MvX2RvdWJsZV9saW5rX2Jsb2NrLnNhc3NcIjtcbkBpbXBvcnQgXCJfY29udGVudF9ibG9ja3MvX2Z1bmRyYWlzaW5nLnNhc3NcIjtcbkBpbXBvcnQgXCJfY29udGVudF9ibG9ja3MvX2dhbGxlcnkuc2Fzc1wiO1xuQGltcG9ydCBcIl9jb250ZW50X2Jsb2Nrcy9faW1hZ2Utc2xpZGVyLnNhc3NcIjtcbkBpbXBvcnQgXCJfY29udGVudF9ibG9ja3MvX2xpbmtfYmxvY2suc2Fzc1wiO1xuQGltcG9ydCBcIl9jb250ZW50X2Jsb2Nrcy9fbWFpbl9pbWFnZS5zYXNzXCI7XG5AaW1wb3J0IFwiX2NvbnRlbnRfYmxvY2tzL19tYXAuc2Fzc1wiO1xuQGltcG9ydCBcIl9jb250ZW50X2Jsb2Nrcy9fc29jaWFsLnNhc3NcIjtcbkBpbXBvcnQgXCJfY29udGVudF9ibG9ja3MvX3RleHQtaW1hZ2Uuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy9jaGVja291dF9iYXNrZXQuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy9jaGVja291dF9yZXZpZXcuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy9ldmVudF9iYXNrZXRfcG9wdXAuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy9ldmVudF9nYWxsZXJ5LnNhc3NcIjtcbkBpbXBvcnQgXCJfZmVhdHVyZXMvZXZlbnRfaGVhZGVyLnNhc3NcIjtcbkBpbXBvcnQgXCJfZmVhdHVyZXMvZXZlbnRfcmVnaXN0cmF0aW9uLnNhc3NcIjtcbkBpbXBvcnQgXCJfZmVhdHVyZXMvZXZlbnRfc2Vzc2lvbnMuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy9ldmVudF9zdWJtaXNzaW9ucy5zYXNzXCI7XG5AaW1wb3J0IFwiX2ZlYXR1cmVzL2Zvb3Rlcl9zb2NpYWwuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy9mb3JtX2FkZC5zYXNzXCI7XG5AaW1wb3J0IFwiX2ZlYXR1cmVzL2hlYWRlcl9iYXNrZXQuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy9rZXlfbWVzc2FnZS5zYXNzXCI7XG5AaW1wb3J0IFwiX2ZlYXR1cmVzL21hcHMuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy9vcmRlcl9oaXN0b3J5LnNhc3NcIjtcbkBpbXBvcnQgXCJfZmVhdHVyZXMvcGFnaW5hdGlvbi5zYXNzXCI7XG5AaW1wb3J0IFwiX2ZlYXR1cmVzL3F1b3RlX2Jsb2NrLnNhc3NcIjtcbkBpbXBvcnQgXCJfZmVhdHVyZXMvc3RlcF9uYXYuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy90YWMuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy90ZXh0X2Zvb3Rlci5zYXNzXCI7XG5AaW1wb3J0IFwiX2ZlYXR1cmVzL3Rvb2x0aXAuc2Fzc1wiO1xuQGltcG9ydCBcIl9mZWF0dXJlcy91Z2Muc2Fzc1wiO1xuXG5AaW1wb3J0IFwiX3NwZWNpYWwvX3BlcnNvbl9oZWFkZXIuc2Fzc1wiO1xuXG4udWktd2lkZ2V0LW92ZXJsYXkge1xuICAgIHotaW5kZXg6IDEwMDAgIWltcG9ydGFudDsgfVxuXG4udWktZGlhbG9nLWJ1dHRvbnMge1xuICAgIHotaW5kZXg6IDIwMDAgIWltcG9ydGFudDsgfVxuXG4udWktd2lkZ2V0LW92ZXJsYXkge1xuICAgIHotaW5kZXg6IDEwMDAgIWltcG9ydGFudDsgfVxuXG4udWktZGlhbG9nLWJ1dHRvbnMge1xuICAgIHotaW5kZXg6IDIwMDAgIWltcG9ydGFudDsgfVxuXG4uY2tlX2RpYWxvZyB7XG4gICAgei1pbmRleDogMjMwMCAhaW1wb3J0YW50OyB9XG5cbi51aS1kaWFsb2cge1xuICAgIHotaW5kZXg6IDMwMDAgIWltcG9ydGFudDsgfVxuXG4iXX0= */
</pre></body></html>