body{font-family:"Lucida Grande","Lucida Sans Unicode","Lucida Sans",Verdana,Tahoma,sans-serif;font-size:12px;margin:0}.hf-button,.hf-caption,.hf-carousel,.hf-carousel-selector,.hf-chart,.hf-chart-axis,.hf-chart-axis-caption,.hf-chart-axis-title,.hf-chart-legend,.hf-chart-legend-item,.hf-chart-series-caption,.hf-component,.hf-control,.hf-error,.hf-figure,.hf-gravity-vertical-stack-container,.hf-image,.hf-image-area,.hf-image-map,.hf-list-divider,.hf-mask,.hf-media-audio,.hf-placeholder,.hf-popup,.hf-popup-content,.hf-progress-bar,.hf-progress-pie,.hf-scrollbar,.hf-separator,.hf-slider,.hf-tooltip,.hf-tooltip-content,.hf-ui-clock{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-component-disabled,.hf-component-disabled-ie{color:#ccc!important}.hf-error-error,.hf-error-warning{color:red}.hf-control-focused{border:1px solid orange}.hf-app-view-busy-indicator{position:absolute;top:50%;left:50%;width:100%;height:100%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.hf-avatar-preview{padding:0 10px;display:inline-block;vertical-align:top}.hf-avatar-caption{display:inline-block;vertical-align:top}.hf-avatar-image{position:absolute;background-size:100% 100%}.hf-avatar-blur{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;width:100%;height:100%;border:0 solid rgba(0,0,0,.5)}.hf-avatar-selector{position:absolute}.hf-button{position:relative;overflow:hidden;text-overflow:-o-ellipsis-lastline;-o-text-overflow:-o-ellipsis-lastline;outline:0!important}.hf-button.hf-button-busy{color:transparent!important}.hf-button.hf-button-busy::after,.hf-button.hf-button-busy::before{visibility:hidden!important}.hf-button-set .hf-button{display:inline-block}body .hf-caption-ellipsis-default{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.hf-caption-multiline-ellipsis{position:absolute;right:0;padding-left:1em}.hf-caption-multiline-internal-ellipsis{padding-left:1em;padding-right:.2em;display:inline-block}.hf-caption-ellipsis-internal-toggle-control{cursor:pointer;display:inline-block;color:#0645ad}.hf-caption-ellipsis-internal-toggle-control:hover{text-decoration:underline}.hf-caption-internal-toggle-container{position:absolute;bottom:0;right:0;left:0;height:1.5em;overflow:hidden;background-color:#fff}.expanded>.hf-caption-internal-toggle-container{position:relative}.hf-carousel{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;outline:0;padding:0;overflow:hidden;list-style-type:none;cursor:default;text-align:center}.hf-carousel>.hf-list-container{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;z-index:0}.hf-carousel>.hf-scroller{max-height:100%;max-width:100%;z-index:0}.hf-carousel>.hf-scroller>.hf-scrollbar-horizontal{height:0;overflow:visible;position:absolute;top:50%;-webkit-transform:translate(0,-50%);-moz-transform:translate(0,-50%);-ms-transform:translate(0,-50%);-o-transform:translate(0,-50%);transform:translate(0,-50%)}.hf-carousel>.hf-scroller>.hf-scrollbar-horizontal>.hf-scrollbar-nav-btn{-webkit-transform:translate(0,-50%);-moz-transform:translate(0,-50%);-ms-transform:translate(0,-50%);-o-transform:translate(0,-50%);transform:translate(0,-50%)}.hf-carousel>.hf-scroller>.hf-scrollbar-vertical{width:0;overflow:visible}.hf-carousel .hf-list-loader{display:none!important}.hf-carousel.hf-list-error{min-height:60px}.hf-carousel.hf-list-error>.hf-scroller{visibility:hidden}.hf-carousel.hf-list-error .hf-list-error-indicator{background-color:#fff;background-position:50% 5px;border:none;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-carousel.hf-list-error .hf-list-error-message{position:absolute;top:auto;left:0;right:0;bottom:5px}.hf-carousel-item{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;cursor:pointer}.hf-carousel-item.hf-carousel-item-selected{-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);-o-transform:scale(1.2);transform:scale(1.2);position:relative;z-index:1;margin:-3px}.hf-progress-circular{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.hf-progress-circular svg{transform:rotate(-90deg)}.hf-progress-circular-value{stroke-linecap:round;transition:all ease-out .3s}.hf-progress-circular-meter,.hf-progress-circular-value{fill:none}.hf-progress-circular-meter{stroke:hsla(0,0%,100%,.2)}.hf-progress-circular-value{stroke:#fff}.hf-progress-circular-indeterminate{display:none}.hf-progress-circular-xsmall,.hf-progress-circular-xsmall>canvas{width:16px;height:16px}.hf-progress-circular-small,.hf-progress-circular-small>canvas{width:24px;height:24px}.hf-progress-circular-medium,.hf-progress-circular-medium>canvas{width:32px;height:32px}.hf-progress-circular-large,.hf-progress-circular-large>canvas{width:48px;height:48px}.hf-progress-circular-xlarge,.hf-progress-circular-xlarge>canvas{width:96px;height:96px}.hf-gravity-vertical-stack-container{overflow:hidden}.hf-gravity-vertical-stack-container-item{position:relative;overflow:auto}.hf-form-row{clear:both;overflow:hidden}.hf-form-row-items{position:relative;overflow:hidden;display:inline-block;float:left}.hf-form-row-items-horizontal .hf-form-field-base-component{float:left}.hf-form-row .hf-form-field-label-left{padding-right:15px}.hf-form-row .hf-form-field-hint-right{display:inline-block;width:90px}.hf-gravity-vertical-stack-container{position:relative;outline:0}.hf-gravity-vertical-stack-container-content{height:auto;max-height:100%;overflow:hidden}.hf-calendar{outline:0;position:relative;background:#fff;border:1px solid #afafaf;float:left;padding:0;color:#6b6b6b;cursor:default;font-size:14px}.hf-calendar,.hf-calendar td,.hf-calendar th{font-size:11px;font-family:Arial,sans-serif}.hf-calendar-monthyear{font-size:12px}.hf-calendar th{font-weight:400;text-transform:uppercase;text-align:center}.hf-calendar td{text-align:center;width:36px;height:36px}.hf-calendar tbody{outline:0}.hf-calendar tbody tr{background:#fff}.hf-calendar tbody tr:first-child{background:#f9fdff}.hf-calendar thead tr{height:31px}.hf-calendar tr:after,.hf-calendar tr:before{content:"\00a0"}.hf-calendar-head{font-size:12px;font-weight:700;text-transform:uppercase}.hf-calendar-head .hf-calendar-btn{background-image:url(../images/goog-ui-datepicker-arrows.png);outline:0;cursor:pointer;overflow:hidden;width:5px;height:8px}.hf-calendar-head .hf-calendar-btn:first-child{padding-left:5px;margin-left:10px}.hf-calendar-head td:first-child{text-align:left}.hf-calendar-head td:nth-child(3) .hf-calendar-btn{background-position:5px 0;margin-left:17px}.hf-calendar button{display:inline-block;padding:0;border:0;background:0 0}.hf-calendar-date{height:25px;border:1px solid #fff}.hf-calendar-date:hover{cursor:pointer;-webkit-border-radius:99px;-moz-border-radius:99px;border-radius:99px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background:#f9fdff;border:1px solid #246797}.hf-calendar-wday{height:18px}.hf-calendar-other-month{color:#a5a5a5}.hf-calendar-selected{-webkit-border-radius:99px;-moz-border-radius:99px;border-radius:99px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;color:#fff;background:#246797;border:1px solid #185270}.hf-calendar-selected:hover{background:#185270;border:1px solid #355273}.hf-calendar-today{-webkit-border-radius:99px;-moz-border-radius:99px;border-radius:99px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;color:#444;background:#f7f7f7;border:1px solid #ddd}.hf-calendar-today.hf-calendar-selected{color:#fff;background:#246797;border:1px solid #185270}.hf-calendar-today.hf-calendar-selected:hover{background:#185270;border:1px solid #355273}.hf-calendar-today:hover{background:#f7f7f7;border:1px solid #246797}.hf-calendar-foot{height:7px;background-color:#fff}.hf-calendar-foot td{display:none}tr.hf-calendar-foot:after,tr.hf-calendar-foot:before{content:''}.hf-calendar-separator td{vertical-align:top;padding-left:10px;background:#fff;height:6px}tr.hf-calendar-separator:after,tr.hf-calendar-separator:before{content:''}.hf-calendar-separator-div{position:absolute;left:0;right:0;border:0;border-color:#cacccd;border-style:solid;border-top-width:1px}.hf-calendar-arrow{border-bottom:0;border-right:0;position:absolute;top:-5px;left:7px;width:7px;height:7px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);background:#f9fdff;border:1px solid #afafaf}.hf-form-field-datepicker-disabled .hf-form-field-datepicker-trigger-button-disabled{cursor:default!important}.hf-dialog{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:inline-block;position:absolute}.hf-dialog-background{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#000;opacity:.2}.hf-dialog-content{display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;outline:0}.hf-dialog-close-button{float:right}.hf-dialog-footer-container>.hf-button-set{position:absolute;right:0;top:50%;margin-top:-12px}.hf-fx-dragger-ghost{opacity:.75;-moz-opacity:.75;-webkit-opacity:.75;-webkit-box-shadow:0 0 5px 5px #878787;-moz-box-shadow:0 0 5px 5px #878787;box-shadow:0 0 5px 5px #878787}.hf-fx-dragger-dragged{opacity:.25;-moz-opacity:.25;-webkit-opacity:.25}.hf-file-list-item{text-align:center}.hf-file-list-item-name,.hf-file-list-item-size{float:left}.hf-file-list-item-size{font-style:italic}.hf-file-list-item-progress{display:inline-block}.hf-file-list-item-progress .hf-progress-bar-thumb{float:left;color:#0d8611}.hf-button.hf-file-list-item-delete{float:right;background:url(../images/hf-file-list-item-delete.png);border-width:0;padding:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.hf-button.hf-file-list-item-delete.hf-button-hover{background:url(../images/hf-file-list-item-delete-hover.png)}.hf-formfile-filelist-list{list-style-type:none;margin:0;padding:0}.hf-formfile-filelist-listitem{list-style-type:none;display:block;margin:5px 0 0 2px;padding:2px 2px 2px 2px;background:#cecece;font-family:Arial,Helvetica,sans-serif;border:1px solid #000;margin:5px 0 0 2px;padding:2px}.hf-formfile-filelist-listitem-name{float:left;font-size:11px;font-weight:700;color:#000;width:50%;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;margin:0;padding:0}.hf-formfile-filelist-listitem-type{font-size:10px;font-weight:400;color:#606060}.hf-formfile-filelist-listitem-size{font-size:11px;font-weight:400;color:#212121}.hf-formfile-filelist-listitem-progressbar{float:left;width:10%;margin:5px 5px 0 5px;padding:0}.hf-formfile-filelist-listitem-progressbar .progress-bar-horizontal{width:100%}.hf-formfile-filelist-listitem-removebtn{float:right;font-size:10px;color:#444;cursor:pointer;width:30px;background:0 0;border:none;margin:0;padding:0}.hf-formfile-filedropzone{margin:5px;padding:5px;background:0 0;border:none}.hf-formfile-filedropzone-overlay{margin:0;position:absolute;z-index:99}.hf-formfile-filedropzone-droparrow{background-image:url(data:image/gif;base64,R0lGODlhLAAsAIABANra2v///yH5BAEAAAEALAAAAAAsACwAAAJxjI+py+0P4wO02gukxLzq2HUfFHLjVF6nk6or01ovHFPzUtt3kmc70vsBc8JDsBg4FpVC5s+5g96kMyqth3UZs1wc1/qtocIhENm0Ocs+at1IXQ1Hu08s0voSI7elPa/s94cR6LVGqGB4iOij2OiYUAAAOw==);margin:0 auto;padding:0;width:44px;height:44px}.hf-formfile-filedropzone-marker{border:2px dashed;background:0 0;border-color:#aaa;background:#efefef;background:rgba(240,240,240,.7);width:100%;height:100%}.hf-formfile-filedropzone-hover .hf-formfile-filedropzone-marker{border-color:#000}.hf-formfile-filedropzone-vertical-wrapper{display:table;width:100%;height:100%}.hf-formfile-filedropzone-content{font-family:Arial,Helvetica,sans-serif;font-size:36px;font-weight:700;display:table-cell;vertical-align:middle;text-align:center;color:#545454;width:100%;height:100%}.hf-formfile-filedropzone-hover .hf-formfile-filedropzone-content{color:#000}input[type=text]::-ms-clear{display:none}.hf-form-field{display:block;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:auto;margin:5px 0;overflow:visible}.hf-form-field-hidden{display:none;margin:0;padding:0}.hf-form-field-value-wrapper{display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:auto;margin:0;padding:0}.hf-form-field-value-editor{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:inline-block;vertical-align:middle;width:100%;height:auto;margin:0;padding:3px 0;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;text-indent:6px}.hf-form-field-value-editor-hidden{display:none}.hf-form-field-value-read-only-displayer{position:relative;text-align:left;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.hf-form-field .hf-label-left{width:120px}.hf-form-field-trigger-editor-wrapper{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:auto;-webkit-flex-grow:1;-moz-flex-grow:1;-ms-flex-grow:1;flex-grow:1}.hf-form-field-trigger-trigger-button{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-flex-shrink:0;-moz-flex-shrink:0;-ms-flex-shrink:0;flex-shrink:0;line-height:inherit;font:inherit;margin:0;width:2em;cursor:pointer}.hf-form-field-trigger-trigger-button-content{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.hf-form-field-picker-popup{min-height:20px;max-height:150px;height:auto}.hf-form-field-picker-popup-busy{height:20px}.hf-form-field-picker-popup-content{min-height:inherit;max-height:inherit;width:100%;margin:0}.hf-form-field-picker-popup>.hf-popup-content>.hf-selector>.hf-scroller{min-height:inherit;max-height:inherit;-webkit-transform:none}.hf-form-field-dropdownlist-editor-wrapper>.hf-form-field-value-editor-hidden{display:inline-block;visibility:hidden}.hf-form-field-dropdownlist-value-editor{position:absolute;top:0;left:0;right:0;bottom:0;cursor:pointer;padding-right:0!important;white-space:nowrap}.hf-form-field-dropdownlist-trigger-button{cursor:pointer}.hf-form-field-dropdownlist-trigger-button-disabled{cursor:default}.hf-form-field-search>.hf-form-field-search-value-editor{padding-right:0!important}.hf-form-field-search-clear-trigger-button,.hf-form-field-search-search-trigger-button{cursor:pointer}.hf-form-field-search-clear-trigger-button-disabled,.hf-form-field-search-search-trigger-button-disabled{cursor:default}.hf-form-field-search-clear-trigger-button{width:1.5em}.hf-form-field-checkbox .hf-label-left,.hf-form-field-radio .hf-label-left{padding-top:3px}.hf-form-field-checkbox-content-wrapper,.hf-form-field-radio-content-wrapper{display:block;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;height:auto;overflow:visible;white-space:nowrap}.hf-form-field-checkbox-value-wrapper,.hf-form-field-radio-value-wrapper{display:inline-block;vertical-align:middle}.hf-form-field-checkbox-value-editor,.hf-form-field-radio-value-editor{display:none}.hf-form-field-checkable-input-label{display:inline-block;vertical-align:middle;padding-left:5px;cursor:default}.hf-form-field-number-editor.hf-form-field-number-with-buttons{padding-right:20px}.hf-form-field-number .hf-button{padding:2px}.hf-form-field-textarea-value-editor{margin:0;padding:0 13px 0 0;overflow-y:auto}.hf-form-field-textarea-value-editor-hidden{display:none}.hf-form-field-smileytextarea-value-editor{margin:0;padding:0;min-height:300px;word-wrap:break-word}.hf-form-field,.hf-form-field-value-editor,.hf-form-field-value-wrapper{color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;border:none;outline:0}.hf-form-field-value-wrapper{border:1px solid #bababa}.hf-form-field-value-editor{background:none repeat scroll 0 0 transparent;-webkit-border-radius:inherit;-moz-border-radius:inherit;border-radius:inherit;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-form-field-value-editor:-webkit-autofill{-webkit-box-shadow:0 0 0 100px transparent inset;-moz-box-shadow:0 0 0 100px transparent inset;box-shadow:0 0 0 100px transparent inset}.hf-form-field-value-wrapper-focused{-webkit-box-shadow:0 0 2px #55a90f;-moz-box-shadow:0 0 2px #55a90f;box-shadow:0 0 2px #55a90f}.hf-form-field-value-wrapper-focused-ie{border:1px solid #54a80e}.hf-form-field-value-editor:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 100px transparent inset;-moz-box-shadow:0 0 0 100px transparent inset;box-shadow:0 0 0 100px transparent inset}.hf-form-field-value-wrapper-invalid-error{background:#fdede6;border:1px solid #d71a08;-webkit-box-shadow:0 0 2px #d71a09;-moz-box-shadow:0 0 2px #d71a09;box-shadow:0 0 2px #d71a09}.hf-form-field-value-wrapper-invalid-error.hf-form-field-value-wrapper-focused{background:#fdede6;border:1px solid #d71a08;-webkit-box-shadow:0 0 4px #d71a09;-moz-box-shadow:0 0 4px #d71a09;box-shadow:0 0 4px #d71a09}.hf-form-field-error{color:#ff1919;font-size:11px}.hf-form-field-errors-tooltip{padding:5px;background:#d24432;z-index:99999!important}.hf-form-field-errors-tooltip .hf-form-field-error{color:#faedea}.hf-form-field-errors-tooltip .hf-popup-arrow-right-to-left{border-right-color:#d24432}.hf-form-field-errors-tooltip .hf-popup-arrow-left-to-right{border-left-color:#d24432}.hf-form-field-errors-tooltip .hf-popup-arrow-top-to-bottom{border-top-color:#d24432}.hf-form-field-errors-tooltip .hf-popup-arrow-bottom-to-top{border-bottom-color:#d24432}.hf-form-field-readonly{overflow:hidden}.hf-form-field-value-wrapper-disabled,.hf-form-field-value-wrapper-readonly{background:#f4f4f4;border:1px solid #e8e8e8;-webkit-box-shadow:1px 1px 2px #f4f4f4 inset;-moz-box-shadow:1px 1px 2px #f4f4f4 inset;box-shadow:1px 1px 2px #f4f4f4 inset}.hf-form-field-value-wrapper-disabled-ie,.hf-form-field-value-wrapper-readonly-ie{background:#f4f4f4;border:1px solid #e8e8e8;-webkit-box-shadow:1px 1px 2px #f4f4f4 inset;-moz-box-shadow:1px 1px 2px #f4f4f4 inset;box-shadow:1px 1px 2px #f4f4f4 inset;color:#bababa}.hf-form-field-value-editor-disabled,.hf-form-field-value-editor-disabled-ie,.hf-form-field-value-editor-readonly,.hf-form-field-value-editor-readonly-ie{color:#bababa}.hf-form-field-trigger-trigger-button{outline:0}.hf-form-field-trigger-trigger-button-content{background:no-repeat transparent;outline:0}.hf-form-field-picker-popup{background:#f1f1f2;border:1px solid #d9d9dc}.hf-form-field-dropdownlist-value-wrapper{background-color:#efefef}.hf-form-field-combobox-trigger-button-content,.hf-form-field-dropdownlist-trigger-button-content{width:15px;height:15px;background-image:url(../images/hf-form-field-combobox-trigger-default-icon.png);background-position:50% 50%}.hf-form-field-combobox-open .hf-form-field-combobox-trigger-button-content,.hf-form-field-dropdownlist-open .hf-form-field-dropdownlist-trigger-button-content{background-image:url(../images/hf-form-field-combobox-trigger-open-icon.png);background-position:50% 40%}.hf-form-field-combobox-busy .hf-form-field-combobox-trigger-button-content,.hf-form-field-dropdownlist-busy .hf-form-field-dropdownlist-trigger-button-content{background-image:url(../images/hf-busy_tiny.gif);background-position:50% 40%}.hf-form-field-dropdownlist-placeholder{font:inherit;line-height:inherit;letter-spacing:inherit;color:#a8a8a8}.hf-form-field-datepicker-trigger-button-content{width:12px;height:12px;background-image:url(../images/hf-calendar-sprite.png);background-position:50% 50%}.hf-form-field-search-search-trigger-button-content{width:22px;height:24px;background-image:url(../images/hf-form-field-search-icon.png);background-position:-5px 0}.hf-form-field-search-busy .hf-form-field-search-search-trigger-button-content{background-image:url(../images/hf-busy_tiny.gif);background-position:-5px 0}.hf-form-field-search-disabled .hf-form-field-search-search-trigger-button-content,.hf-form-field-search-readonly .hf-form-field-search-search-trigger-button-content{width:22px;height:24px;background-image:url(../images/hf-form-field-search-icon-disabled.png)}.hf-form-field-search-clear-trigger-button-content{width:10px;height:10px;background-image:url(../images/hf-form-field-clear-icon.png);background-position:center}.hf-form-field-checkable-input-label{color:#606060}.hf-form-field-checkable-input-label-disabled{color:#ccc}.hf-form-field-checkbox-value-wrapper,.hf-form-field-radio-value-wrapper{border-style:none}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-focused,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-focused{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-focused-ie,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-focused-ie{border-style:none}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-invalid-error,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-invalid-error{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-disabled,.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-readonly,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-disabled,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-readonly{border-style:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-disabled-ie,.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-readonly-ie,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-disabled-ie,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-readonly-ie{border-style:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.hf-form-field-checkbox-value-wrapper{background:url(../images/hf-checkbox.png) no-repeat scroll 0 0 transparent;width:18px;height:18px}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-focused{background-position:0 -38px}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-checked{background-position:0 -19px}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-focused.hf-form-field-value-wrapper-checked{background-position:0 -57px}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-disabled,.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-hover.hf-form-field-value-wrapper-disabled{background-position:0 0}.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-checked.hf-form-field-value-wrapper-disabled,.hf-form-field-checkbox-value-wrapper.hf-form-field-value-wrapper-hover.hf-form-field-value-wrapper-checked.hf-form-fieldvalue-wrapper-disabled{background-position:0 -19px}.hf-form-field-radio-value-wrapper{background:url(../images/hf-radio.png) no-repeat scroll 0 0 transparent;width:18px;height:18px}.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-focused{background-position:0 -38px}.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-checked{background-position:0 -19px}.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-focused.hf-form-field-value-wrapper-checked{background-position:0 -57px}.hf-form-field-radio-value-wrapper .hf-form-field-value-wrapper-hover.hf-form-field-value-wrapper-disabled,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-disabled{background:url(../images/hf-radio-disabled.png) 0 0}.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-checked.hf-form-field-value-wrapper-disabled,.hf-form-field-radio-value-wrapper.hf-form-field-value-wrapper-hover.hf-form-field-value-wrapper-checked.hf-form-field-value-wrapper-disabled{background-position:0 -19px}.hf-form-field-password-content-wrapper{display:block;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;height:auto;overflow:visible}.hf-form-field-password-strength-bar{display:block;white-space:nowrap;font-size:0;overflow:hidden;margin-top:8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-form-field-password-strength-bar:before{content:'';display:inline-block;height:100%;vertical-align:middle}.hf-form-field-password-strength-caption{display:inline-block;vertical-align:middle;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:50%;padding:0 10px;text-align:right;font-size:12px}.hf-form-field-password-strength-indicator{display:inline-block;vertical-align:middle;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:50%;height:5px;background-color:#ededed}.hf-form-field-password-strength-indicator-thumb{width:0;height:100%}.hf-form-field-password-strength-indicator-thumb.strength-very-weak{width:20%;background-color:#ec2737}.hf-form-field-password-strength-indicator-thumb.strength-weak{width:40%;background-color:#ed9d25}.hf-form-field-password-strength-indicator-thumb.strength-medium{width:60%;background-color:#f1e12c}.hf-form-field-password-strength-indicator-thumb.strength-strong{width:80%;background-color:#62cf76}.hf-form-field-password-strength-indicator-thumb.strength-very-strong{width:100%;background-color:#019c7a}.hf-form-field-password-tips-header{font-size:15px;font-weight:500;color:#095e8f;margin-bottom:10px}.hf-form-field-password-tip{color:#a8a8a8;font-size:14px}.hf-form-field-password-tip::before{content:'';margin:0 8px 0 0;display:inline-block;vertical-align:middle;border-radius:50%;background-color:#a8a8a8;width:8px;height:8px}.hf-form-field-number .hf-button{position:absolute;right:0}.hf-form-field-number .hf-form-field-number-decrement-button{bottom:1px}.hf-form-field-file-content{position:relative;overflow:hidden;display:inline-block;zoom:1;color:#ff1919;padding:2px}.hf-form-field-file-browse{background:none repeat scroll 0 0 #fff;border:1px dashed #aaa;padding:3px 2px;background:#fff;overflow:hidden;position:relative;width:200px;height:20px;-webkit-box-shadow:1px 1px 2px #e5e5e5 inset;-moz-box-shadow:1px 1px 2px #e5e5e5 inset;box-shadow:1px 1px 2px #e5e5e5 inset}.hf-form-field-file-browse-icon{background-image:url(../images/hf-form-field-file-browse-icon.png);background-position:bottom left;background-repeat:no-repeat;position:absolute;top:0;left:0;width:30px;height:30px}.hf-form-field-file-browse-label{color:#878787;padding-top:5px;text-decoration:underline;position:absolute;top:0;left:30px}.hf-form-field-base-component-disabled .hf-form-field-file-browse{background:#f4f4f4;border:1px dashed #e8e8e8}.hf-form-field-base-component-disabled .hf-form-field-file-browse-icon{background-image:url(../images/hf-form-field-file-browse-icon-disabled.png)}.hf-form-field-base-component-disabled .hf-form-field-file-browse-label{color:#ccc}.hf-form-field-file-browse-hover{-webkit-box-shadow:0 0 2px 0 #54a80e;-moz-box-shadow:0 0 2px 0 #54a80e;box-shadow:0 0 2px 0 #54a80e}.hf-form-field-file-space{height:3px;clear:both}.hf-form-field-file-name{position:relative;clear:both;float:none;background:#efefef;overflow:hidden;width:196px;margin:5px;padding:5px}.hf-form-field-file-name-icon{background-image:url(../images/hf-form-field-clear-icon.png);background-position:bottom left;background-repeat:no-repeat;width:12px;height:12px;padding-right:5px;padding-top:1px;float:left}.hf-form-field-file-name-icon-over{background-image:url(../images/hf-form-field-clear-icon.png)}.hf-form-field-file-name-name{left:30px;float:left;font-size:10px;color:#777;-moz-binding:url(../ellipsis.xml#ellipsis);overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;width:99px;height:12px}.hf-form-field-file-name-upload{float:right;position:relative;width:80px;height:12px}.hf-form-field-file-name-loader{border-radius:4px 4px;background:#fff;height:6px;padding:4px;position:relative}.hf-form-field-file-name-loader-inner{background:#d8d8d8;border-radius:4px 4px;position:absolute;top:2px;left:2px;right:2px;bottom:2px;-webkit-box-shadow:inset 0 0 1px 0 #999;-moz-box-shadow:inset 0 0 1px 0 #999;box-shadow:inset 0 0 1px 0 #999}.hf-form-field-file-name-loader-thumb{background:-moz-linear-gradient(top,#a9e8b2 1%,#49c534 8%,#46b333 49%,#0d8711 94%,#0e6024 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(1%,#a9e8b2),color-stop(8%,#49c534),color-stop(49%,#46b333),color-stop(94%,#0d8711),color-stop(100%,#0e6024));background:-webkit-linear-gradient(top,#a9e8b2 1%,#49c534 8%,#46b333 49%,#0d8711 94%,#0e6024 100%);background:-o-linear-gradient(top,#a9e8b2 1%,#49c534 8%,#46b333 49%,#0d8711 94%,#0e6024 100%);background:-ms-linear-gradient(top,#a9e8b2 1%,#49c534 8%,#46b333 49%,#0d8711 94%,#0e6024 100%);background:linear-gradient(top,#a9e8b2 1%,#49c534 8%,#46b333 49%,#0d8711 94%,#0e6024 100%);width:60%;bottom:1px;border-radius:3px 3px;position:absolute;top:1px;left:1px}.hf-form-field-display-span{display:inline-block;margin-top:8px;vertical-align:middle}.hf-form-fieldgroup-fields-container-hlayout>.hf-form-fieldgroup-fields-container-content>.hf-form-fieldgroup-fields-container-item{display:inline-block}.hf-form-fieldgroup>.hf-label-left{width:120px}.hf-required{display:inline;margin-left:2px;color:red;float:right}.hf-required-ie{vertical-align:top;padding:0;float:none}.hf-form-checkboxgroup,.hf-form-radiogroup{overflow:hidden;padding-right:5px}.hf-form-checkboxgroup-columns,.hf-form-radiogroup-columns{display:inline-block;padding-top:5px}.hf-form-checkboxgroup-column,.hf-form-radiogroup-column{display:inline;float:left}.hf-form-fieldlist>.hf-form-fieldgroup-fields-container,.hf-form-fieldlist>.hf-form-fieldgroup-fields-container>.hf-list-container{overflow:visible}.hf-form-fieldlist-item{display:table;position:relative;overflow:visible}.hf-form-fieldlist-item-content-container{display:table-cell;width:100%;text-align:left;vertical-align:middle;font-size:0;white-space:nowrap}.hf-form-fieldlist-item-action-btn-container{display:table-cell;width:auto;text-align:center;vertical-align:middle}.hf-form-fieldlist-item-btn{display:inline-block;width:11px;height:11px}.hf-label{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;overflow:hidden;height:auto;border:none;outline:0}.hf-label-top{padding-left:2px}.hf-label-left{float:left;padding-right:5px;padding-top:5px}.hf-label,.hf-label-ie{color:#606060}.hf-label-disabled,.hf-label-disabled-ie{color:#ccc}.hf-editable .hf-form-field-display-control,.hf-editable .hf-form-field-text-control{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-editable-mark{position:absolute;top:0;bottom:0;right:0;display:none;cursor:pointer}.hf-form-field-display-hover .hf-editable-mark{display:inline-block}.hf-editable .hf-form-field-textarea-input,.hf-editable.hf-editor .hf-form-field-text-input{padding-right:40px;margin:0}.hf-editable-cancel,.hf-editable-submit{display:inline-block;position:absolute;top:0;bottom:0;cursor:pointer;border:0;margin:1px 0;padding:0}.hf-editable-cancel{right:1px}.hf-editable-submit{right:22px}.hf-form-button-wrapper{padding-bottom:10px}.hf-form-button-wrapper-right{float:right}.hf-form-button-wrapper-left{margin-left:-3px}.hf-form-button-wrapper-center{text-align:center}.hf-form-field-hint-tooltip{padding:5px;background:#fff;border:1px solid #000}.hf-form-field-hint-tooltip .hf-popup-arrow-bottom-to-top,.hf-form-field-hint-tooltip .hf-popup-arrow-left-to-right,.hf-form-field-hint-tooltip .hf-popup-arrow-right-to-left,.hf-form-field-hint-tooltip .hf-popup-arrow-top-to-bottom{border-right-color:#fff}.hf-editable .hf-form-field-display-span{margin-right:22px}.hf-editable .hf-form-field-display-control{border:1px solid transparent}.hf-editable.hf-form-field-display-hover .hf-form-field-display-control{border:1px solid #d3d3d3}.hf-editable-mark{width:20px;background:#f2f2f2 url(../images/hf-form-field-editable-edit.png) no-repeat center}.hf-editable-cancel,.hf-editable-submit{width:20px;outline:0}.hf-editable-submit{background:#f2f2f2 url(../images/hf-form-field-editable-accept.png) no-repeat center}.hf-editable-submit-hover{background:#f2f2f2 url(../images/hf-form-field-editable-accept-active.png) no-repeat center}.hf-editable-cancel{background:#f2f2f2 url(../images/hf-form-field-editable-cancel.png) no-repeat center}.hf-editable-cancel-hover{background:#f2f2f2 url(../images/hf-form-field-editable-cancel-active.png) no-repeat center}.hf-form-field-multi-select .hf-form-field-value-editor{padding:4px 0}.hf-form-field-multi-select>.hf-form-field-value-wrapper{-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding:2px 8px;max-height:100px;min-height:32px}.hf-form-field-multi-select .hf-form-field-multi-select-items-container{display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;-webkit-flex-flow:row wrap;-moz-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;cursor:text}.hf-form-field-multi-select .hf-form-field-multi-select-items-container>.hf-form-field-multi-select-item{display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;-webkit-flex-flow:row;-moz-flex-flow:row;-ms-flex-flow:row;flex-flow:row;align-items:center;margin:3px 4px 3px 0;line-height:1.2;max-width:100%}.hf-form-field-multi-select .hf-form-field-multi-select-items-container>.hf-form-field-multi-select-item .hf-form-field-multi-select-item-caption{-webkit-flex-grow:1;-moz-flex-grow:1;-ms-flex-grow:1;flex-grow:1;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;max-width:100%;white-space:nowrap;line-height:inherit;font-size:inherit;color:inherit}.hf-form-field-multi-select .hf-form-field-multi-select-items-container>.hf-form-field-multi-select-item>.hf-form-field-multi-select-item-delete-btn{-webkit-flex-shrink:0;-moz-flex-shrink:0;-ms-flex-shrink:0;flex-shrink:0;margin-left:5px;line-height:inherit}.hf-form-field-multi-select .hf-form-field-multi-select-value-editor-control{overflow:hidden}.hf-form-field-multi-select .hf-form-field-multi-select-value-editor-control:only-child{width:100%!important}.hf-form-field-multi-select .hf-form-field-multi-select-value-editor-control:only-child>.hf-form-field-multi-select-value-editor{width:100%!important}.hf-form-field-multi-select .hf-form-field-multi-select-value-editor-control:not(:only-child)>.hf-form-field-multi-select-value-editor::-webkit-input-placeholder{color:transparent;font-size:inherit;font-style:inherit;font-weight:inherit;text-align:inherit}.hf-form-field-multi-select .hf-form-field-multi-select-value-editor-control:not(:only-child)>.hf-form-field-multi-select-value-editor:-moz-placeholder{color:transparent;font-size:inherit;font-style:inherit;font-weight:inherit;text-align:inherit}.hf-form-field-multi-select .hf-form-field-multi-select-value-editor-control:not(:only-child)>.hf-form-field-multi-select-value-editor::-moz-placeholder{color:transparent;font-size:inherit;font-style:inherit;font-weight:inherit;text-align:inherit}.hf-form-field-multi-select .hf-form-field-multi-select-value-editor-control:not(:only-child)>.hf-form-field-multi-select-value-editor:-ms-input-placeholder{color:transparent;font-size:inherit;font-style:inherit;font-weight:inherit;text-align:inherit}input-file{height:22px;font-size:1000px;position:absolute;right:0;outline:0;opacity:0;-moz-opacity:0;-webkit-opacity:0}input-file[disabled]{cursor:auto}.hf-speciallayer{position:absolute;top:60px;left:0;right:0;bottom:0;background:#fff}.hf-speciallayer-left{position:absolute;top:0;bottom:0;left:0;width:50%;background:#efefef;border:1px solid #fff}.hf-speciallayer-middle{background:#ccc;width:1px;top:0;bottom:0;left:50%;position:absolute;z-index:100}.hf-speciallayer-center{position:absolute;top:0;left:0;right:0;bottom:0;background:#efefef}.hf-speciallayer-right{position:absolute;top:0;bottom:0;right:0;width:50%;background:#efefef}.hf-speciallayer-center-title,.hf-speciallayer-left-title{font-size:20px;color:#666;font-weight:400;text-align:center;padding:50px}.hf-speciallayer-center-title{padding-top:30px;padding-bottom:20px}.hf-speciallayer-center-content,.hf-speciallayer-left-content{padding-top:30px;position:relative;padding:50px;margin:auto}.hf-speciallayer-center-content{overflow:hidden;padding-top:10px}.hf-speciallayer-center-content1{padding-top:10px}.hf-speciallayer-interactive{margin:auto;width:auto;width:250px;position:relative}.hf-speciallayer-interactive-small{margin:auto;width:auto;width:330px;position:relative}.hf-speciallayer-interactive-layer{width:150px;height:150px;text-align:center}.hf-speciallayer-interactive-layer .text{color:#fff;font-weight:700;font-size:16px;position:absolute;bottom:5px;left:50%;margin-left:-25px}.hf-speciallayer-interactive-layer-small{width:60px;height:60px;text-align:center}.hf-speciallayer-interactive-layer-small .text{color:#999;font-weight:400;font-size:13px;position:absolute;bottom:5px;left:50%;margin-left:-25px}.hf-speciallayer-interactive-layer-small-disabled{background:#d8d8d8}.hf-speciallayer-interactive-layer-small-hover{background:#fb7c0d;border:1px solid #cf6406;-webkit-box-shadow:0 0 1px 1px #878787;-moz-box-shadow:0 0 1px 1px #878787;box-shadow:0 0 1px 1px #878787;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-speciallayer-interactive-layer-small-hover .text{color:#fff}.hf-speciallayer-interactive-layer-hover{background:#d96906;border:1px solid #c55f06;-webkit-box-shadow:0 0 3px 1px #444;-moz-box-shadow:0 0 3px 1px #444;box-shadow:0 0 3px 1px #444;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;opacity:100}.hf-speciallayer-interactive-layer-disabled{background:#d8d8d8;border:1px solid #999;-webkit-box-shadow:0 0 1px 0 #999;-moz-box-shadow:0 0 1px 0 #999;box-shadow:0 0 1px 0 #999}.hf-speciallayer-interactive-view-small{width:60px;height:60px;text-align:center;display:inline;float:left}.hf-speciallayer-interactive-view-small-disabled{background:#d8d8d8;border:1px solid #999;-webkit-box-shadow:0 0 1px 0 #999;-moz-box-shadow:0 0 1px 0 #999;box-shadow:0 0 1px 0 #999}.hf-speciallayer-interactive-view-small-disabled .text{color:#999}.hf-speciallayer-interactive-view-small-hover{background:#dd6803;border:1px solid #c55f06;-webkit-box-shadow:0 0 2px 1px #666;-moz-box-shadow:0 0 2px 1px #666;box-shadow:0 0 2px 1px #666}.hf-speciallayer-interactive-view1-small .text,.hf-speciallayer-interactive-view2-small .text,.hf-speciallayer-interactive-view3-small .text,.hf-speciallayer-interactive-view4-small .text{color:#fff;font-size:18px;font-weight:700;padding-top:15px}.hf-speciallayer-interactive-view-small,.hf-speciallayer-interactive-view1-small,.hf-speciallayer-interactive-view2-small,.hf-speciallayer-interactive-view3-small{background:#fb7c0d;border:1px solid #cf6406;-webkit-box-shadow:0 0 1px 0 #666;-moz-box-shadow:0 0 1px 0 #666;box-shadow:0 0 1px 0 #666;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;margin-right:20px}.hf-speciallayer-interactive-layer3{right:0;top:0;z-index:30;background:#fb7c0d;border:1px solid #cf6406;position:absolute;-webkit-box-shadow:0 0 2px 0 #777;-moz-box-shadow:0 0 2px 0 #777;box-shadow:0 0 2px 0 #777;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;opacity:.8}.hf-speciallayer-interactive-layer3-small{right:0;top:0;z-index:30;border:1px solid #999;position:absolute;-webkit-box-shadow:0 0 1px 0 #999;-moz-box-shadow:0 0 1px 0 #999;box-shadow:0 0 1px 0 #999;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-speciallayer-interactive-layer2{right:50px;top:50px;z-index:20;background:#fb7c0d;border:1px solid #cf6406;position:absolute;-webkit-box-shadow:0 0 2px 0 #777;-moz-box-shadow:0 0 2px 0 #777;box-shadow:0 0 2px 0 #777;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;opacity:.8}.hf-speciallayer-interactive-layer2-small{right:30px;top:30px;z-index:20;border:1px solid #999;position:absolute;-webkit-box-shadow:0 0 1px 0 #999;-moz-box-shadow:0 0 1px 0 #999;box-shadow:0 0 1px 0 #999;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-speciallayer-interactive-layer1{right:100px;top:100px;z-index:10;position:absolute;background:#fb7c0d;border:1px solid #cf6406;-webkit-box-shadow:0 0 2px 0 #777;-moz-box-shadow:0 0 2px 0 #777;box-shadow:0 0 2px 0 #777;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;opacity:.8}.hf-speciallayer-interactive-layer1-small{right:60px;top:60px;z-index:10;position:absolute;border:1px solid #999;-webkit-box-shadow:0 0 1px 1px #d8d8d8;-moz-box-shadow:0 0 1px 1px #d8d8d8;box-shadow:0 0 1px 1px #d8d8d8;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-speciallayer-interactive-small-unit{float:left;position:relative}.hf-speciallayer-interactive-small-unit-text{color:#666;font-size:20px;text-align:center}.hf-speciallayer-interactive-small-unit-button{-webkit-box-shadow:0 0 1px 0 #999;-moz-box-shadow:0 0 1px 0 #999;box-shadow:0 0 1px 0 #999;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background:#69b32c;border:1px solid #50931a;width:100px;height:25px;margin:auto;text-align:center;padding-top:2px;color:#fff;font-size:14px}.hf-speciallayer-interactive-small-unit-button-hover{background:#529819;border:1px solid #417f0f;cursor:pointer}.hf-speciallayer-automatic-button{-webkit-box-shadow:0 0 3px 1px #999;-moz-box-shadow:0 0 3px 1px #999;box-shadow:0 0 3px 1px #999;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background:#69b32c;border:1px solid #50931a;width:200px;height:50px;margin:auto;text-align:center;padding-top:20px;color:#fff;font-weight:700;font-size:16px}.hf-speciallayer-automatic-button-hover{background:#5aa020;border:1px solid #468513;cursor:pointer}.hf-speciallayer-message{font-size:12px;color:#999;text-align:center;padding-top:30px}.hf-speciallayer-flex{position:absolute;top:10%;left:10%;right:10%;bottom:10%}.hf-speciallayer-flex-border{position:absolute;top:0;left:0;right:0;bottom:0;-webkit-border-radius:10px 10px;-moz-border-radius:10px 10px;border-radius:10px 10px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;-webkit-box-shadow:0 0 3px 1px #333;-moz-box-shadow:0 0 3px 1px #333;box-shadow:0 0 3px 1px #333}.hf-speciallayer-flex-content{clear:both;position:absolute;top:0;left:0;right:0;bottom:0;border:1px solid #545454}.hf-speciallayer-flex-content-inner1-border{position:absolute;top:6px;left:6px;right:6px;bottom:6px}.hf-speciallayer-flex-content-inner2-border{border:1px solid #d8d8d8;position:absolute;top:0;left:0;right:0;bottom:0}.hf-speciallayer-flex-title{height:27px;border-bottom:1px solid #fff;position:relative}.hf-speciallayer-flex-title-right{padding-top:2px;color:#fff;font-weight:700;font-size:13px;text-align:center;margin:auto;padding-right:30px}.hf-layer{width:100%;height:100%}.hf-mask-background-color-speciallayer{background-color:#241}.hf-flex-title-speciallayer{height:60px;padding-top:13px;height:27px;border-bottom:1px solid #fff;position:relative}.hf-flex-title-speciallayer .hf-speciallayer-flex-title-right{font-size:18px}.hf-layout-container{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;outline:0}.hf-layout-container-content{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-layout-single-content-container{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;outline:0}.hf-layout-vertical-stack{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;outline:0;height:auto}.hf-layout-vertical-stack-child{display:block}.hf-layout-horizontal-stack{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;outline:0;white-space:nowrap}.hf-layout-horizontal-stack:before{content:'';display:inline-block;height:100%;vertical-align:middle}.hf-layout-horizontal-stack-child{display:inline-block;vertical-align:middle}.hf-layout-horizontal-wrap{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;outline:0;height:auto;white-space:normal}.hf-layout-horizontal-wrap-child{display:inline-block;vertical-align:middle}.hf-split-pane{display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex}.hf-split-pane.horizontal{-webkit-flex-flow:row;-moz-flex-flow:row;-ms-flex-flow:row;flex-flow:row}.hf-split-pane.vertical{-webkit-flex-flow:column;-moz-flex-flow:column;-ms-flex-flow:column;flex-flow:column}.hf-split-pane>.hf-split-pane-first-child-container{-webkit-flex-grow:1;-moz-flex-grow:1;-ms-flex-grow:1;flex-grow:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-split-pane>.hf-split-pane-second-child-container{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-split-pane>.hf-split-pane-splitter{-webkit-flex-shrink:0;-moz-flex-shrink:0;-ms-flex-shrink:0;flex-shrink:0;position:relative;overflow:visible}.hf-split-pane.horizontal>.hf-split-pane-splitter{width:1px;background-color:#d3d3d3;cursor:ew-resize}.hf-split-pane.vertical>.hf-split-pane-splitter{height:1px;background-color:#d3d3d3;cursor:ns-resize}.hf-split-pane.vertical>.hf-split-pane-splitter>.hf-split-pane.vertical>.hf-split-pane-splitter-handle{position:relative;margin:0 auto}.hf-split-pane>.hf-split-pane-splitter>.hf-split-pane-splitter-handle{width:9px;height:9px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #dedede;background:#fff;z-index:100}.hf-split-pane.horizontal>.hf-split-pane-splitter>.hf-split-pane-splitter-handle{position:absolute;top:50%;-webkit-transform:translate(0,-50%);-moz-transform:translate(0,-50%);-ms-transform:translate(0,-50%);-o-transform:translate(0,-50%);transform:translate(0,-50%);left:-5px}.hf-split-pane.vertical>.hf-split-pane-splitter>.hf-split-pane-splitter-handle{position:relative;margin:0 auto;margin-top:-5px}.hf-list,.hf-selector{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}.hf-list-item,.hf-selector-item{position:relative}.hf-list>.hf-scroller,.hf-selector>.hf-scroller{max-height:100%;max-width:100%;width:100%;height:100%}.hf-list>.hf-list-container,.hf-selector>.hf-list-container{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-list-loader{z-index:1;background:#fff}.hf-list-loader-fill{position:absolute;top:0;left:0;right:0;bottom:0}.hf-list-loader-horizontal{height:34px}.hf-list-loader-vertical{width:34px}.hf-list-loader-horizontal,.hf-list-loader-vertical{position:relative}.hf-list-empty-indicator{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;top:0;left:0;right:0;bottom:0;z-index:2;overflow:hidden}.hf-list-empty-message{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;text-align:center;white-space:normal}.hf-list-error-indicator{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;top:0;left:0;right:0;bottom:0;z-index:3;overflow:hidden;background:#edeff4 url(../images/hf-list-error-indicator.png) no-repeat center;border:1px solid #d8dfea}.hf-list-error-banner{display:inline-block;position:absolute;top:0;left:0;right:0;bottom:auto;z-index:10;color:#fff;background-color:#ffbf00;font-size:13px;text-align:center;white-space:pre-line;padding:0;opacity:0;-webkit-transition:padding .35s ease-in,opacity .35s ease-in;-moz-transition:padding .35s ease-in,opacity .35s ease-in;-ms-transition:padding .35s ease-in,opacity .35s ease-in;-o-transition:padding .35s ease-in,opacity .35s ease-in;transition:padding .35s ease-in,opacity .35s ease-in}.hf-list-error-banner:not(:empty){padding:10px;opacity:1}.hf-list-error-banner .hf-list-error-message{background-color:inherit}.hf-list-error-banner .hf-list-error-message::before{margin-bottom:0}.hf-list-error-message{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;text-align:center;white-space:normal}.hf-selector{outline:0;background:#fff;-webkit-box-shadow:1px 1px 2px #e5e5e5 inset;-moz-box-shadow:1px 1px 2px #e5e5e5 inset;box-shadow:1px 1px 2px #e5e5e5 inset}.hf-selector-item{cursor:pointer;padding-top:6px;padding-bottom:6px;padding-left:10px;padding-right:10px;font-size:11px;position:relative;white-space:nowrap;-moz-binding:url(ellipsis.xml#ellipsis);overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;border:1px solid #bbb;background:-moz-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(48%,#e5e6e3),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-o-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-ms-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%)}.hf-selector-item-selected{background:-moz-linear-gradient(top,#f6fff2 0,#cdebbb 47%,#f6fff2 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#f6fff2),color-stop(47%,#cdebbb),color-stop(100%,#f6fff2));background:-webkit-linear-gradient(top,#f6fff2 0,#cdebbb 47%,#f6fff2 100%);background:-o-linear-gradient(top,#f6fff2 0,#cdebbb 47%,#f6fff2 100%);background:-ms-linear-gradient(top,#f6fff2 0,#cdebbb 47%,#f6fff2 100%);background:linear-gradient(top,#f6fff2 0,#cdebbb 47%,#f6fff2 100%)}.hf-selector-item-hover-ie.hf-selector-item-selected-ie,.hf-selector-item-hover.hf-selector-item-selected{background:-moz-linear-gradient(top,#c9de96 0,#8ab66b 44%,#398235 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#c9de96),color-stop(44%,#8ab66b),color-stop(100%,#398235));background:-webkit-linear-gradient(top,#c9de96 0,#8ab66b 44%,#398235 100%);background:-o-linear-gradient(top,#c9de96 0,#8ab66b 44%,#398235 100%);background:-ms-linear-gradient(top,#c9de96 0,#8ab66b 44%,#398235 100%);background:linear-gradient(to bottom,#c9de96 0,#8ab66b 44%,#398235 100%)}.hf-selector-item-hover,.hf-selector-item-hover-ie{background:-moz-linear-gradient(top,#eaeaea 0,#d9dbd9 47%,#eaeaea 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#eaeaea),color-stop(47%,#d9dbd9),color-stop(100%,#eaeaea));background:-webkit-linear-gradient(top,#eaeaea 0,#d9dbd9 47%,#eaeaea 100%);background:-o-linear-gradient(top,#eaeaea 0,#d9dbd9 47%,#eaeaea 100%);background:-ms-linear-gradient(top,#eaeaea 0,#d9dbd9 47%,#eaeaea 100%);background:linear-gradient(top,#eaeaea 0,#d9dbd9 47%,#eaeaea 100%)}.hf-selector-item-active,.hf-selector-item-active-ie{background:-moz-linear-gradient(top,#d1d1d1 0,#bdc2bd 47%,#d1d1d1 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#d1d1d1),color-stop(47%,#bdc2bd),color-stop(100%,#d1d1d1));background:-webkit-linear-gradient(top,#d1d1d1 0,#bdc2bd 47%,#d1d1d1 100%);background:-o-linear-gradient(top,#d1d1d1 0,#bdc2bd 47%,#d1d1d1 100%);background:-ms-linear-gradient(top,#d1d1d1 0,#bdc2bd 47%,#d1d1d1 100%);background:linear-gradient(top,#d1d1d1 0,#bdc2bd 47%,#d1d1d1 100%)}.hf-selector-item-disabled,.hf-selector-item-disabled-ie{background:#dfdfdf;cursor:default!important}.hf-loader-new{position:absolute;text-align:center;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.hf-loader-new.liniar:before{content:'';display:inline-block;height:100%;vertical-align:middle}.hf-loader-new.liniar>.hf-loader-new-dot{background-color:gray;border-radius:100%;vertical-align:middle;float:left;-webkit-animation:loader_animation .8s infinite ease-in-out both;-moz-animation:loader_animation .8s infinite ease-in-out both;-o-animation:loader_animation .8s infinite ease-in-out both;animation:loader_animation .8s infinite ease-in-out both}.hf-loader-new.liniar.grayscheme>.hf-loader-new-dot{background-color:#fff}.hf-loader-new.liniar>.hf-loader-new-dot.dot-2{animation-delay:-.12s;-o-animation-delay:-.12s;-webkit-animation-delay:-.12s;-moz-animation-delay:-.12s}.hf-loader-new.liniar>.hf-loader-new-dot.dot-3{animation-delay:-.24s;-o-animation-delay:-.24s;-webkit-animation-delay:-.24s;-moz-animation-delay:-.24s}.hf-loader-new.liniar>.hf-loader-new-dot.dot-4{animation-delay:-.36s;-o-animation-delay:-.36s;-webkit-animation-delay:-.36s;-moz-animation-delay:-.36s}.hf-loader-new.liniar>.hf-loader-new-dot.dot-5{animation-delay:-.48s;-o-animation-delay:-.48s;-webkit-animation-delay:-.48s;-moz-animation-delay:-.48s}.hf-loader-new.liniar>.hf-loader-new-dot.dot-6{animation-delay:-.6s;-o-animation-delay:-.6s;-webkit-animation-delay:-.6s;-moz-animation-delay:-.6s}.hf-loader-new.liniar>.hf-loader-new-dot.dot-7{animation-delay:-.72s;-o-animation-delay:-.72s;-webkit-animation-delay:-.72s;-moz-animation-delay:-.72s}.hf-loader-new.liniar>.hf-loader-new-dot.dot-8{animation-delay:-.84s;-o-animation-delay:-.84s;-webkit-animation-delay:-.84s;-moz-animation-delay:-.84s}.hf-loader-new.liniar>.hf-loader-new-dot.dot-9{animation-delay:-.96s;-o-animation-delay:-.96s;-webkit-animation-delay:-.96s;-moz-animation-delay:-.96s}.hf-loader-new.liniar>.hf-loader-new-dot.dot-10{animation-delay:-1.08s;-o-animation-delay:-1.08s;-webkit-animation-delay:-1.08s;-moz-animation-delay:-1.08s}.hf-loader-new.liniar.xsmall{min-width:25px}.hf-loader-new.liniar.xsmall .hf-loader-new-dot{width:7px;height:7px;margin-right:2px}.hf-loader-new.liniar.xsmall .hf-loader-new-dot:last-child{margin-right:0}.hf-loader-new.liniar.small{min-width:28px}.hf-loader-new.liniar.small .hf-loader-new-dot{width:8px;height:8px;margin-right:2px}.hf-loader-new.liniar.small .hf-loader-new-dot:last-child{margin-right:0}.hf-loader-new.liniar.medium{min-width:34px}.hf-loader-new.liniar.medium .hf-loader-new-dot{width:14px;height:14px;margin-right:3px}.hf-loader-new.liniar.medium .hf-loader-new-dot:last-child{margin-right:0}.hf-loader-new.liniar.large{min-width:64px}.hf-loader-new.liniar.large .hf-loader-new-dot{width:19px;height:19px;margin-right:3px}.hf-loader-new.liniar.large .hf-loader-new-dot:last-child{margin-right:0}.hf-loader-new.liniar.xlarge{min-width:66px}.hf-loader-new.liniar.xlarge .hf-loader-new-dot{width:27px;height:27px;margin-right:6px}.hf-loader-new.liniar.xlarge .hf-loader-new-dot:last-child{margin-right:0}.hf-loader-new.circular.xsmall{width:16px;height:16px}.hf-loader-new.circular.small{width:24px;height:24px}.hf-loader-new.circular.medium{width:32px;height:32px}.hf-loader-new.circular.large{width:48px;height:48px}.hf-loader-new.circular.xlarge{width:96px;height:96px}.hf-loader-new.circular>.hf-loader-new-dot{width:100%;height:100%;position:absolute}.hf-loader-new.circular>.hf-loader-new-dot:before{background-color:gray;content:'';display:block;margin:0 auto;width:25%;height:25%;border-radius:50%;-webkit-animation:loader_animation .7s infinite ease-in-out both;-moz-animation:loader_animation .7s infinite ease-in-out both;-o-animation:loader_animation .7s infinite ease-in-out both;animation:loader_animation .7s infinite ease-in-out both}.hf-loader-new.circular.grayscheme>.hf-loader-new-dot:before{background-color:#fff}.hf-loader-new.circular>.hf-loader-new-dot.dot-7{-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.hf-loader-new.circular>.hf-loader-new-dot.dot-7:before{animation-delay:-.7s;-o-animation-delay:-.7s;-webkit-animation-delay:-.7s;-moz-animation-delay:-.7s}.hf-loader-new.circular>.hf-loader-new-dot.dot-6{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.hf-loader-new.circular>.hf-loader-new-dot.dot-6:before{animation-delay:-.6s;-o-animation-delay:-.6s;-webkit-animation-delay:-.6s;-moz-animation-delay:-.6s}.hf-loader-new.circular>.hf-loader-new-dot.dot-5{-webkit-transform:rotate(135deg);-moz-transform:rotate(135deg);-ms-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.hf-loader-new.circular>.hf-loader-new-dot.dot-5:before{animation-delay:-.5s;-o-animation-delay:-.5s;-webkit-animation-delay:-.5s;-moz-animation-delay:-.5s}.hf-loader-new.circular>.hf-loader-new-dot.dot-4{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.hf-loader-new.circular>.hf-loader-new-dot.dot-4:before{animation-delay:-.4s;-o-animation-delay:-.4s;-webkit-animation-delay:-.4s;-moz-animation-delay:-.4s}.hf-loader-new.circular>.hf-loader-new-dot.dot-3{-webkit-transform:rotate(225deg);-moz-transform:rotate(225deg);-ms-transform:rotate(225deg);-o-transform:rotate(225deg);transform:rotate(225deg)}.hf-loader-new.circular>.hf-loader-new-dot.dot-3:before{animation-delay:-.3s;-o-animation-delay:-.3s;-webkit-animation-delay:-.3s;-moz-animation-delay:-.3s}.hf-loader-new.circular>.hf-loader-new-dot.dot-2{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.hf-loader-new.circular>.hf-loader-new-dot.dot-2:before{animation-delay:-.2s;-o-animation-delay:-.2s;-webkit-animation-delay:-.2s;-moz-animation-delay:-.2s}.hf-loader-new.circular>.hf-loader-new-dot.dot-1{-webkit-transform:rotate(315deg);-moz-transform:rotate(315deg);-ms-transform:rotate(315deg);-o-transform:rotate(315deg);transform:rotate(315deg)}.hf-loader-new.circular>.hf-loader-new-dot.dot-1:before{animation-delay:-.1s;-o-animation-delay:-.1s;-webkit-animation-delay:-.1s;-moz-animation-delay:-.1s}.hf-loader-new.circular-line.xxsmall{width:10px;height:10px}.hf-loader-new.circular-line.xxsmall>.spinner{width:10px;height:10px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.xxsmall>.spinner circle{stroke-dashoffset:0;stroke-width:1px;stroke:hsla(197,100%,60%,.3);fill:transparent}.hf-loader-new.circular-line.xxsmall>.spinner circle.spinner-bar{stroke:#32c5ff;stroke-dashoffset:850;stroke-dasharray:13px}.hf-loader-new.circular-line.xsmall{width:16px;height:16px}.hf-loader-new.circular-line.xsmall>.spinner{width:16px;height:16px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.xsmall>.spinner circle{stroke-dashoffset:0;stroke-width:2px;stroke:hsla(197,100%,60%,.3);fill:transparent}.hf-loader-new.circular-line.xsmall>.spinner circle.spinner-bar{stroke:#32c5ff;stroke-dashoffset:850;stroke-dasharray:19px}.hf-loader-new.circular-line.small{width:24px;height:24px}.hf-loader-new.circular-line.small>.spinner{width:24px;height:24px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.small>.spinner circle{stroke-dashoffset:0;stroke-width:3px;stroke:hsla(197,100%,60%,.3);fill:transparent}.hf-loader-new.circular-line.small>.spinner circle.spinner-bar{stroke:#32c5ff;stroke-dashoffset:850;stroke-dasharray:29px}.hf-loader-new.circular-line.medium{width:32px;height:32px}.hf-loader-new.circular-line.medium>.spinner{width:32px;height:32px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.medium>.spinner circle{stroke-dashoffset:0;stroke-width:4px;stroke:hsla(197,100%,60%,.3);fill:transparent}.hf-loader-new.circular-line.medium>.spinner circle.spinner-bar{stroke:#32c5ff;stroke-dashoffset:850;stroke-dasharray:39px}.hf-loader-new.circular-line.large{width:48px;height:48px}.hf-loader-new.circular-line.large>.spinner{width:48px;height:48px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.large>.spinner circle{stroke-dashoffset:0;stroke-width:6px;stroke:hsla(197,100%,60%,.3);fill:transparent}.hf-loader-new.circular-line.large>.spinner circle.spinner-bar{stroke:#32c5ff;stroke-dashoffset:850;stroke-dasharray:58px}.hf-loader-new.circular-line.xlarge{width:96px;height:96px}.hf-loader-new.circular-line.xlarge>.spinner{width:96px;height:96px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.xlarge>.spinner circle{stroke-dashoffset:0;stroke-width:12px;stroke:hsla(197,100%,60%,.3);fill:transparent}.hf-loader-new.circular-line.xlarge>.spinner circle.spinner-bar{stroke:#32c5ff;stroke-dashoffset:850;stroke-dasharray:117px}.hf-loader-new.circular-line.grayscheme.xxsmall,.hf-loader-new.circular-line.white.xxsmall{width:10px;height:10px}.hf-loader-new.circular-line.grayscheme.xxsmall>.spinner,.hf-loader-new.circular-line.white.xxsmall>.spinner{width:10px;height:10px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.grayscheme.xxsmall>.spinner circle,.hf-loader-new.circular-line.white.xxsmall>.spinner circle{stroke-dashoffset:0;stroke-width:1px;stroke:hsla(0,0%,100%,.3);fill:transparent}.hf-loader-new.circular-line.grayscheme.xxsmall>.spinner circle.spinner-bar,.hf-loader-new.circular-line.white.xxsmall>.spinner circle.spinner-bar{stroke:#fff;stroke-dashoffset:850;stroke-dasharray:13px}.hf-loader-new.circular-line.grayscheme.xsmall,.hf-loader-new.circular-line.white.xsmall{width:16px;height:16px}.hf-loader-new.circular-line.grayscheme.xsmall>.spinner,.hf-loader-new.circular-line.white.xsmall>.spinner{width:16px;height:16px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.grayscheme.xsmall>.spinner circle,.hf-loader-new.circular-line.white.xsmall>.spinner circle{stroke-dashoffset:0;stroke-width:2px;stroke:hsla(0,0%,100%,.3);fill:transparent}.hf-loader-new.circular-line.grayscheme.xsmall>.spinner circle.spinner-bar,.hf-loader-new.circular-line.white.xsmall>.spinner circle.spinner-bar{stroke:#fff;stroke-dashoffset:850;stroke-dasharray:19px}.hf-loader-new.circular-line.grayscheme.small,.hf-loader-new.circular-line.white.small{width:24px;height:24px}.hf-loader-new.circular-line.grayscheme.small>.spinner,.hf-loader-new.circular-line.white.small>.spinner{width:24px;height:24px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.grayscheme.small>.spinner circle,.hf-loader-new.circular-line.white.small>.spinner circle{stroke-dashoffset:0;stroke-width:3px;stroke:hsla(0,0%,100%,.3);fill:transparent}.hf-loader-new.circular-line.grayscheme.small>.spinner circle.spinner-bar,.hf-loader-new.circular-line.white.small>.spinner circle.spinner-bar{stroke:#fff;stroke-dashoffset:850;stroke-dasharray:29px}.hf-loader-new.circular-line.grayscheme.medium,.hf-loader-new.circular-line.white.medium{width:32px;height:32px}.hf-loader-new.circular-line.grayscheme.medium>.spinner,.hf-loader-new.circular-line.white.medium>.spinner{width:32px;height:32px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.grayscheme.medium>.spinner circle,.hf-loader-new.circular-line.white.medium>.spinner circle{stroke-dashoffset:0;stroke-width:4px;stroke:hsla(0,0%,100%,.3);fill:transparent}.hf-loader-new.circular-line.grayscheme.medium>.spinner circle.spinner-bar,.hf-loader-new.circular-line.white.medium>.spinner circle.spinner-bar{stroke:#fff;stroke-dashoffset:850;stroke-dasharray:39px}.hf-loader-new.circular-line.grayscheme.large,.hf-loader-new.circular-line.white.large{width:48px;height:48px}.hf-loader-new.circular-line.grayscheme.large>.spinner,.hf-loader-new.circular-line.white.large>.spinner{width:48px;height:48px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.grayscheme.large>.spinner circle,.hf-loader-new.circular-line.white.large>.spinner circle{stroke-dashoffset:0;stroke-width:6px;stroke:hsla(0,0%,100%,.3);fill:transparent}.hf-loader-new.circular-line.grayscheme.large>.spinner circle.spinner-bar,.hf-loader-new.circular-line.white.large>.spinner circle.spinner-bar{stroke:#fff;stroke-dashoffset:850;stroke-dasharray:58px}.hf-loader-new.circular-line.grayscheme.xlarge,.hf-loader-new.circular-line.white.xlarge{width:96px;height:96px}.hf-loader-new.circular-line.grayscheme.xlarge>.spinner,.hf-loader-new.circular-line.white.xlarge>.spinner{width:96px;height:96px;animation:rotate-clockwise 1s linear infinite;transform-origin:center center;outline:0}.hf-loader-new.circular-line.grayscheme.xlarge>.spinner circle,.hf-loader-new.circular-line.white.xlarge>.spinner circle{stroke-dashoffset:0;stroke-width:12px;stroke:hsla(0,0%,100%,.3);fill:transparent}.hf-loader-new.circular-line.grayscheme.xlarge>.spinner circle.spinner-bar,.hf-loader-new.circular-line.white.xlarge>.spinner circle.spinner-bar{stroke:#fff;stroke-dashoffset:850;stroke-dasharray:117px}@-webkit-keyframes loader_animation{0%,100%,80%{-webkit-transform:scale(.3)}40%{-webkit-transform:scale(1)}}@-moz-keyframes loader_animation{0%,100%,80%{-moz-transform:scale(.3)}40%{-moz-transform:scale(1)}}@-o-keyframes loader_animation{0%,100%,80%{-o-transform:scale(.3)}40%{-o-transform:scale(1)}}@keyframes loader_animation{0%,100%,80%{transform:scale(.3)}40%{transform:scale(1)}}@-webkit-keyframes rotate-clockwise{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotate-clockwise{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.hf-mask{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;text-align:center}.hf-mask-wrapper{margin-left:auto;margin-right:auto}.hf-mask-text-icon-wrapper-vertical{display:inline-block;vertical-align:middle}.hf-mask-progress-vertical{display:inline-block;vertical-align:middle;margin:0 5px}.hf-mask-progress-horizontal{margin:5px 0}.hf-mask-label{margin:4px;vertical-align:middle}.hf-mask .hf-image{vertical-align:middle}video::-webkit-media-controls{display:none!important}.hf-media .hf-media-slider-middle-over{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.hf-media .hf-button,.hf-media .hf-button-active.hf-button-hover,.hf-media .hf-button-focus,.hf-media .hf-button-hover,.hf-media .hf-button:focus,.hf-media .hf-button:hover{background:0 0;border:0;padding:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.hf-media .hf-media-slider-middle-horizontal,.hf-media .hf-media-slider-middle-vertical{border-width:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-media-audio .hf-media-slider-horizontal-thumb,.hf-media-audio .hf-media-slider-vertical-thumb{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-media .hf-media-slider-horizontal-current{display:none}.hf-media .hf-media-slider.hf-media-slider-horizontal{font-family:Arial,sans-serif;font-size:13px}.hf-media.audio .hf-media-play-error{position:absolute;top:0;left:0}.hf-media .hf-button{filter:none}.hf-media,.hf-media-content-container{max-width:450px;position:relative}.hf-media>.hf-media-content-container>video{max-width:100%;height:100%;margin:auto;display:block}.hf-media.hf-media-fullscreen>.hf-media-content-container>video{min-height:290px}.hf-media-icon-pause,.hf-media-icon-play{height:100%;min-height:30px;min-width:30px}.hf-media-icon-pause>.hf-button-outer-box>.hf-button-inner-box,.hf-media-icon-play>.hf-button-outer-box>.hf-button-inner-box{width:34px;height:34px}.hf-media-icon-pause.hf-button-focused::before,.hf-media-icon-pause::before,.hf-media-icon-pause:focus::before,.hf-media-icon-play.hf-button-focused::before,.hf-media-icon-play::before,.hf-media-icon-play:focus::before{background-position:0 0}.hf-media-icon-pause.hf-button-hover::before,.hf-media-icon-pause:hover::before,.hf-media-icon-play.hf-button-hover::before,.hf-media-icon-play:hover::before{background-position:-34px 0}.hf-media-icon-pause.hf-button-disabled::before,.hf-media-icon-pause:disabled::before,.hf-media-icon-play.hf-button-disabled::before,.hf-media-icon-play:disabled::before{background-position:-68px 0}.hf-media-icon-play::before{content:'';display:block;position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:auto;width:34px;height:34px;background-image:url(../images/hf-media-play.png);background-repeat:no-repeat}.hf-media-icon-pause::before{content:'';display:block;position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:auto;width:34px;height:34px;background-image:url(../images/hf-media-pause.png);background-repeat:no-repeat}.hf-media-ui-controls>.hf-layout-horizontal-stack{background-color:#87cefa}.hf-media-ui-controls-content{cursor:default}.hf-media-duration-control,.hf-media-source-name{font-size:13px}.hf-media.video>.hf-media-content-container>.hf-media-ui-controls{position:absolute;bottom:0;width:100%;z-index:1}.hf-media.video,.hf-media.video .hf-media-content-container{height:250px;background-color:#000}.hf-media.video .hf-media-icon-pause>.hf-button-outer-box>.hf-button-inner-box,.hf-media.video .hf-media-icon-play>.hf-button-outer-box>.hf-button-inner-box{width:12px;height:12px}.hf-media.video .hf-media-icon-pause.hf-button-focused::before,.hf-media.video .hf-media-icon-pause::before,.hf-media.video .hf-media-icon-pause:focus::before,.hf-media.video .hf-media-icon-play.hf-button-focused::before,.hf-media.video .hf-media-icon-play::before,.hf-media.video .hf-media-icon-play:focus::before{background-position:0 0}.hf-media.video .hf-media-icon-pause.hf-button-hover::before,.hf-media.video .hf-media-icon-pause:hover::before,.hf-media.video .hf-media-icon-play.hf-button-hover::before,.hf-media.video .hf-media-icon-play:hover::before{background-position:-12px 0}.hf-media.video .hf-media-icon-pause.hf-button-disabled::before,.hf-media.video .hf-media-icon-pause:disabled::before,.hf-media.video .hf-media-icon-play.hf-button-disabled::before,.hf-media.video .hf-media-icon-play:disabled::before{background-position:-24px 0}.hf-media.video .hf-media-icon-play::before{content:'';display:block;position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:auto;width:12px;height:12px;background-image:url(../images/hf-media-video-play.png);background-repeat:no-repeat}.hf-media.video .hf-media-icon-pause::before{content:'';display:block;position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:auto;width:12px;height:12px;background-image:url(../images/hf-media-video-pause.png);background-repeat:no-repeat}.hf-media.video .hf-media-play-mask>.hf-button>.hf-button-outer-box>.hf-button-inner-box{width:70px;height:70px}.hf-media.video .hf-media-play-mask.play>.hf-button::before{content:'';display:block;position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:auto;width:70px;height:70px;background-image:url(../images/hf-media-video-play-mask.png);background-repeat:no-repeat}.hf-media.video .hf-media-play-mask.pause>.hf-button::before{content:'';display:block;position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:auto;width:70px;height:70px;background-image:url(../images/hf-media-video-pause-mask.png);background-repeat:no-repeat}.hf-media.video .hf-media-play-mask>.hf-button.hf-button-focused::before,.hf-media.video .hf-media-play-mask>.hf-button::before,.hf-media.video .hf-media-play-mask>.hf-button:focus::before{background-position:0 0}.hf-media.video .hf-media-play-mask>.hf-button.hf-button-hover::before,.hf-media.video .hf-media-play-mask>.hf-button:hover::before{background-position:-70px 0}.hf-media-volume-button.hf-button-hover>.hf-button-outer-box>.hf-button-inner-box,.hf-media-volume-button:hover>.hf-button-outer-box>.hf-button-inner-box{background-position:0 16px}.hf-media-volume-button-mute,.hf-media-volume-button-mute.hf-button-focused,.hf-media-volume-button-mute.hf-button-hover,.hf-media-volume-button-mute:focus,.hf-media-volume-button-mute:hover{background-image:url(../images/hf-media-volume-mute.png);background-repeat:repeat-y}.hf-media-volume-button-no-mark,.hf-media-volume-button-no-mark.hf-button-focused,.hf-media-volume-button-no-mark.hf-button-hover,.hf-media-volume-button-no-mark:focus,.hf-media-volume-button-no-mark:hover{background-image:url(../images/hf-media-volume-no-mark.png);background-repeat:repeat-y}.hf-media-volume-button-one-mark,.hf-media-volume-button-one-mark.hf-button-focused,.hf-media-volume-button-one-mark.hf-button-hover,.hf-media-volume-button-one-mark:focus,.hf-media-volume-button-one-mark:hover{background-image:url(../images/hf-media-volume-one-mark.png);background-repeat:repeat-y}.hf-media-volume-button-two-marks,.hf-media-volume-button-two-marks.hf-button-focused,.hf-media-volume-button-two-marks.hf-button-hover,.hf-media-volume-button-two-marks:focus,.hf-media-volume-button-two-marks:hover{background-image:url(../images/hf-media-volume-two-marks.png);background-repeat:repeat-y}.hf-media-volume-button-three-marks,.hf-media-volume-button-three-marks.hf-button-focused,.hf-media-volume-button-three-marks.hf-button-hover,.hf-media-volume-button-three-marks:focus,.hf-media-volume-button-three-marks:hover{background-image:url(../images/hf-media-volume-three-marks.png);background-repeat:repeat-y}.hf-media .hf-media-slider-horizontal-thumb,.hf-media .hf-media-slider-vertical-thumb{background-image:url(../images/hf-media-thumb.png)}.hf-media-fullscreen-btn::before{content:'';display:block;position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:auto;width:12px;height:12px;background-image:url(../images/hf-expand-fullscreen.png);background-repeat:no-repeat}.hf-media-fullscreen-btn.hf-button-focused::before,.hf-media-fullscreen-btn.hf-button-hover::before{background-position:-12px 0}.hf-media-fullscreen-btn.hf-button-checked::before{content:'';display:block;position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:auto;width:20px;height:20px;background-image:url(../images/hf-fullscreen-normal.png);background-repeat:no-repeat}.hf-media-fullscreen-btn.hf-button-checked.hf-button-focused::before,.hf-media-fullscreen-btn.hf-button-checked.hf-button-hover::before{background-position:-20px 0}.hf-media .hf-media-slider-middle-horizontal,.hf-media .hf-media-slider-middle-vertical{background:#d9d9d9}.hf-media .hf-media-slider-colored-value{background-color:#999}.hf-media .hf-media-slider-horizontal-maximum,.hf-media .hf-media-slider-vertical-maximum{color:#a7a7a7}.hf-media .hf-media-slider-horizontal-minimum,.hf-media .hf-media-slider-vertical-minimum{color:#6b6b6b}.hf-media-audio-volume-slider .hf-media-slider-thumb{background:#738293}.hf-media.hf-media-fullscreen{z-index:2147483647;height:100%;background-color:#000}.hf-media.hf-media-fullscreen,.hf-media.hf-media-fullscreen>.hf-media-content-container{width:100%;max-width:none}.hf-media.video.hf-media-fullscreen>.hf-media-content-container{height:100%}.hf-media.video .hf-media-source-name{position:absolute;top:10px;left:10px;color:#fff}.hf-media-play-mask{display:block;position:absolute;width:100%;height:100%;cursor:pointer}.hf-media-play-mask>.hf-button{display:block;margin:auto;width:70px;height:70px;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.hf-media .hf-media-slider-middle.hf-media-slider-middle-horizontal{width:100%}.hf-media .hf-media-slider-middle.hf-media-slider-middle-vertical{width:100%;height:100%;position:absolute;left:0;bottom:0;margin-left:0}.hf-media .hf-media-slider.hf-media-slider-horizontal{height:auto}.hf-media .hf-media-slider.hf-media-slider-vertical{width:auto}.hf-media .hf-media-slider-horizontal-maximum-center,.hf-media .hf-media-slider-horizontal-minimum-center{top:-1px}.hf-media-volume-slider .hf-media-slider-middle-horizontal-with-minmax-center{top:5px}.hf-media-volume-slider .hf-media-slider-vertical-thumb{width:100%;height:2px;left:0}.hf-media-volume-slider .hf-media-slider-vertical-current{display:none}.hf-media .hf-media-slider-horizontal-thumb{width:12px;height:12px}.hf-media-fullscreen-btn>.hf-button-outer-box>.hf-button-inner-box{width:12px;height:12px}.hf-media-fullscreen-btn.hf-button-checked>.hf-button-outer-box>.hf-button-inner-box{width:20px;height:20px}.hf-media.video.hf-media-fullscreen .hf-media-play-mask>.hf-button{width:140px;height:140px}.hf-button.hf-media-volume-button{width:16px;height:16px;margin-right:10px;margin-left:5px}.hf-media-slider{outline:0}.hf-media-slider-disabled{color:#ccc}.hf-media-slider-disabled .hf-media-slider-middle-horizontal{background:none repeat scroll 0 0 #f5f5f5;border:1px solid #e8e8e8}.hf-media-slider-disabled .hf-media-slider-middle-over{-webkit-box-shadow:0 0 0 0 #55a90f;-moz-box-shadow:0 0 0 0 #55a90f;box-shadow:0 0 0 0 #55a90f}.hf-media-slider-disabled .hf-media-slider-horizontal-thumb{background-image:url(../images/hf-slider-arrow-h-disabled.png)}.hf-media-slider-disabled .hf-media-slider-middle-vertical{background:none repeat scroll 0 0 #f5f5f5;border:1px solid #e8e8e8}.hf-media-slider-disabled .hf-media-slider-vertical-thumb{background-image:url(../images/hf-slider-arrow-v-disabled.png)}.hf-media-slider-middle:focus{outline:0}.hf-media-slider-colored-value{position:absolute;background-color:#55a90f;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-media-slider-horizontal{font-family:Verdana,Arial,sans-serif;font-size:9px}.hf-media-slider-horizontal .hf-media-slider-content{height:22px}.hf-media-slider-horizontal-maximum,.hf-media-slider-horizontal-minimum{line-height:22px}.hf-media-slider-horizontal-maximum-front,.hf-media-slider-horizontal-minimum-center,.hf-media-slider-horizontal-minimum-front{float:left;margin-right:5px}.hf-media-slider-horizontal-maximum-behind,.hf-media-slider-horizontal-maximum-center,.hf-media-slider-horizontal-minimum-behind{float:right;margin-left:10px}.hf-media-slider-horizontal-inner{overflow:hidden;position:relative;min-height:2px;width:auto;height:100%}.hf-media-slider-horizontal .hf-media-slider-colored-value{left:0;width:9px;height:100%}.hf-media-slider-horizontal-current{position:relative;top:22px;cursor:auto}.hf-media-slider-middle-horizontal{background:-moz-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(48%,#e5e6e3),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-o-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-ms-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);position:absolute;top:50%;width:100%;height:3px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);border:1px solid #bbb}.hf-media-slider-middle-over{-webkit-box-shadow:0 0 2px 0 #55a90f;-moz-box-shadow:0 0 2px 0 #55a90f;box-shadow:0 0 2px 0 #55a90f}.hf-media-slider-thumb{cursor:pointer}.hf-media-slider-horizontal-thumb{background-image:url(../images/hf-slider-arrow-h.png);position:absolute;top:50%!important;width:18px;height:18px;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}.hf-media-slider-horizontal-thumb-over{background-image:url(../images/hf-slider-arrow-h-over.png)}.hf-media-slider-vertical{font-family:Verdana,Arial,sans-serif;font-size:9px}.hf-media-slider-vertical .hf-media-slider-content{min-width:10px;height:100%}.hf-media-slider-vertical-inner{flex-grow:1;position:relative}.hf-media-slider-vertical-maximum,.hf-media-slider-vertical-minimum{text-align:center}.hf-media-slider-vertical-thumb{background-image:url(../images/hf-slider-arrow-v.png);position:absolute;left:-5px;width:18px;height:18px;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-media-slider-vertical-thumb-over{background-image:url(../images/hf-slider-arrow-v-over.png)}.hf-media-slider-vertical-current{position:relative;left:20px;top:2px;width:50px;text-align:left;cursor:auto}.hf-media-slider-vertical .hf-media-slider-colored-value{width:100%;height:9px;bottom:0}.hf-media-slider-content-vertical{display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.hf-media-slider-middle-vertical{border:1px solid #bbb;background:-moz-linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);background:-webkit-gradient(linear,left top,right top,color-stop(0,#fff),color-stop(48%,#e5e6e3),color-stop(100%,#fff));background:-webkit-linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);background:-o-linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);background:-ms-linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);background:linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);position:absolute;left:50%;margin-left:-4px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:6px;height:100%}.hf-popup{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-popup .hf-tooltip-shadow,.hf-popup-shadow{-webkit-box-shadow:5px 5px 5px #666;-moz-box-shadow:5px 5px 5px #666;box-shadow:5px 5px 5px #666}.hf-popup-content{display:block;overflow:hidden;outline:0;margin:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;min-height:inherit;max-height:inherit}.hf-popup-arrow{position:absolute}.hf-tooltip{pointer-events:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-tooltip,.hf-tooltip .hf-list-tooltip{border-style:solid}.hf-tooltip-content{display:block;overflow:hidden;margin:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;min-height:inherit;max-height:inherit;-webkit-border-radius:inherit;-moz-border-radius:inherit;border-radius:inherit;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-tooltip-arrow{position:absolute;border:5px solid transparent}.hf-tooltip-arrow-right-to-left{border-right-color:#000}.hf-tooltip-arrow-left-to-right{border-left-color:#000}.hf-tooltip-top-to-bottom{border-top-color:#000}.hf-tooltip-bottom-to-top{border-bottom-color:#000}progress{color:#a0a0a0}progress,progress[role]{appearance:none;-moz-appearance:none;-webkit-appearance:none;border:none;background-size:auto;vertical-align:0}progress[role]:after{background-image:none}progress strong{display:none}progress,progress[role][aria-valuenow]{background:#d0d0d0!important}progress::-webkit-progress-bar{background:#d0d0d0}progress::-moz-progress-bar{background:#a0a0a0}progress::-webkit-progress-bar-value,progress::-webkit-progress-value{background:#a0a0a0}progress[aria-valuenow]:before{background:#a0a0a0}.hf-progress-bar{background:#d0d0d0;border:1px solid #000;position:relative;padding:2px}.hf-progress-bar-horizontal{width:100%;height:20px}.hf-progress-bar-vertical{width:20px;height:100%}.hf-progress-bar-indeterminate{background-image:url(../images/hf-list-loader.gif);background-position:center;background-repeat:no-repeat}.hf-progress-bar-indeterminate .hf-progress-bar-thumb,.hf-progress-bar-indeterminate .hf-progress-bar-thumb-status{display:none}.hf-progress-bar-thumb{background:#a0a0a0;width:100%;height:100%;position:relative;overflow:hidden}.hf-progress-bar-thumb-status{z-index:1;position:absolute;width:100%;height:100%;text-align:center;cursor:default}.hf-relative-date{cursor:default}.hf-relative-date-can-toggle-date-display{cursor:pointer;color:#666}.hf-fx-resizer-top{position:absolute;top:0;left:50%;margin-left:-13px;background-image:url(../images/drag-horizontal.png);background-repeat:no-repeat;background-position:bottom left;width:26px;height:5px}.hf-fx-resizer-topright{position:absolute;top:5px;right:5px;background-image:url(../images/drag-top-right.png);background-repeat:no-repeat;background-position:top left;width:11px;height:11px}.hf-fx-resizer-topleft{position:absolute;top:5px;left:5px;background-image:url(../images/drag-top-left.png);background-repeat:no-repeat;background-position:top left;width:11px;height:11px}.hf-fx-resizer-bottom{position:absolute;bottom:0;left:50%;margin-left:-13px;background-image:url(../images/drag-horizontal.png);background-repeat:no-repeat;background-position:bottom left;width:26px;height:5px}.hf-fx-resizer-bottomright{position:absolute;bottom:5px;right:5px;background-image:url(../images/drag-bottom-right.png);background-repeat:no-repeat;background-position:bottom right;width:11px;height:11px}.hf-fx-resizer-bottomleft{position:absolute;bottom:5px;left:5px;background-image:url(../images/drag-bottom-left.png);background-repeat:no-repeat;background-position:bottom left;width:11px;height:11px}.hf-fx-resizer-right{position:absolute;right:0;top:50%;margin-top:-13px;background-image:url(../images/drag-vertical.png);background-repeat:no-repeat;background-position:bottom left;width:5px;height:26px}.hf-fx-resizer-left{position:absolute;left:0;top:50%;margin-top:-13px;background-image:url(../images/drag-vertical.png);background-repeat:no-repeat;background-position:bottom left;width:5px;height:26px}.hf-fx-resizer-wrapper-top{position:absolute;top:5px;height:5px}.hf-fx-resizer-wrapper-right{position:absolute;right:5px;width:5px}.hf-fx-resizer-wrapper-bottom{position:absolute;bottom:5px;height:5px}.hf-fx-resizer-wrapper-left{position:absolute;left:5px;width:5px}.hf-fx-resizer-ghost{position:absolute;border-style:solid;border-width:2px 2px 2px 2px;background-color:transparent}.hf-fx-resizer-mark{border-style:solid;border-width:2px;border-color:#000}.hf-fx-resizer-visible-handle{filter:inherit}.hf-resize-border-hidden{display:none}.hf-resize-border-visible{display:block}::-webkit-scrollbar{width:10px;height:10px;background-color:transparent}::-webkit-scrollbar-track{background-color:transparent}::-webkit-scrollbar-track:hover{background-color:#f4f4f5}::-webkit-scrollbar-thumb{background:#bababa;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;border:2px solid transparent}::-webkit-scrollbar-thumb:hover{background-color:#8a9097}::-webkit-resizer,::-webkit-scrollbar-button,::-webkit-scrollbar-corner,::-webkit-scrollbar-track-piece{display:none}.grayscheme ::-webkit-scrollbar-track:hover{background-color:#4a4e53}.grayscheme ::-webkit-scrollbar-thumb{background:#8a9097;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;border:2px solid transparent}.grayscheme ::-webkit-scrollbar-thumb:hover{background-color:#70777f}.hf-scrollbar-vertical{position:absolute;top:0;bottom:0;width:8px;height:100%;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;overflow:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background-color:#f4f4f5}.hf-scrollbar-vertical-track{-webkit-flex-grow:1;-moz-flex-grow:1;-ms-flex-grow:1;flex-grow:1;width:100%;position:relative}.hf-scrollbar-vertical:not(:hover):not(:active){background-color:transparent!important;-webkit-transition:width .3s ease-in .7s,background-color .3s ease-in .7s;-moz-transition:width .3s ease-in .7s,background-color .3s ease-in .7s;-ms-transition:width .3s ease-in .7s,background-color .3s ease-in .7s;-o-transition:width .3s ease-in .7s,background-color .3s ease-in .7s;transition:width .3s ease-in .7s,background-color .3s ease-in .7s}.hf-scrollbar-vertical:active,.hf-scrollbar-vertical:hover{width:10px;-webkit-transition:background-color .3s ease-out .15s,width .3s ease-out .15s;-moz-transition:background-color .3s ease-out .15s,width .3s ease-out .15s;-ms-transition:background-color .3s ease-out .15s,width .3s ease-out .15s;-o-transition:background-color .3s ease-out .15s,width .3s ease-out .15s;transition:background-color .3s ease-out .15s,width .3s ease-out .15s}.hf-scrollbar-vertical:focus{outline:0;border:0}.hf-scrollbar-vertical-thumb{position:absolute;left:0;right:0;width:100%;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background-color:#bababa}.hf-scrollbar-vertical-thumb:active,.hf-scrollbar-vertical-thumb:hover{background:#8a9097}.hf-scrollbar-vertical .hf-scrollbar-nav-btn{width:100%;height:16px;position:relative;text-align:center;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;cursor:pointer}.hf-scrollbar-vertical .hf-scrollbar-nav-btn:before{content:'';display:inline-block;vertical-align:middle;height:100%}.hf-scrollbar-vertical .hf-scrollbar-nav-btn:after{content:'';display:inline-block;vertical-align:middle}.hf-scrollbar-vertical .hf-scrollbar-nav-btn-backward:after{border:4px solid transparent;border-top:none;border-bottom-color:#bababa}.hf-scrollbar-vertical .hf-scrollbar-nav-btn-backward:active:after,.hf-scrollbar-vertical .hf-scrollbar-nav-btn-backward:hover:after{border:4px solid transparent;border-top:none;border-bottom-color:#8a9097}.hf-scrollbar-vertical .hf-scrollbar-nav-btn-forward:after{border:4px solid transparent;border-bottom:none;border-top-color:#bababa}.hf-scrollbar-vertical .hf-scrollbar-nav-btn-forward:active:after,.hf-scrollbar-vertical .hf-scrollbar-nav-btn-forward:hover:after{border:4px solid transparent;border-bottom:none;border-top-color:#8a9097}.hf-scrollbar-horizontal{position:absolute;left:0;right:0;width:100%;height:8px;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;-webkit-flex-direction:row;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;overflow:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background-color:#f4f4f5}.hf-scrollbar-horizontal-track{-webkit-flex-grow:1;-moz-flex-grow:1;-ms-flex-grow:1;flex-grow:1;height:100%;position:relative}.hf-scrollbar-horizontal:not(:hover):not(:active){background-color:transparent!important;-webkit-transition:height .3s ease-in .7s,background-color .3s ease-in .7s;-moz-transition:height .3s ease-in .7s,background-color .3s ease-in .7s;-ms-transition:height .3s ease-in .7s,background-color .3s ease-in .7s;-o-transition:height .3s ease-in .7s,background-color .3s ease-in .7s;transition:height .3s ease-in .7s,background-color .3s ease-in .7s}.hf-scrollbar-horizontal:active,.hf-scrollbar-horizontal:hover{height:10px;-webkit-transition:background-color .3s ease-out .15s,height .3s ease-out .15s;-moz-transition:background-color .3s ease-out .15s,height .3s ease-out .15s;-ms-transition:background-color .3s ease-out .15s,height .3s ease-out .15s;-o-transition:background-color .3s ease-out .15s,height .3s ease-out .15s;transition:background-color .3s ease-out .15s,height .3s ease-out .15s}.hf-scrollbar-horizontal:focus{outline:0;border:0}.hf-scrollbar-horizontal-thumb{position:absolute;top:0;bottom:0;height:100%;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background-color:#bababa}.hf-scrollbar-horizontal-thumb:active,.hf-scrollbar-horizontal-thumb:hover{background:#8a9097}.hf-scrollbar-horizontal .hf-scrollbar-nav-btn{height:100%;width:16px;position:relative;text-align:center;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;cursor:pointer}.hf-scrollbar-horizontal .hf-scrollbar-nav-btn:before{content:'';display:inline-block;vertical-align:middle;height:100%}.hf-scrollbar-horizontal .hf-scrollbar-nav-btn:after{content:'';display:inline-block;vertical-align:middle}.hf-scrollbar-horizontal .hf-scrollbar-nav-btn-backward:after{border:4px solid transparent;border-left:none;border-right-color:#bababa}.hf-scrollbar-horizontal .hf-scrollbar-nav-btn-backward:active:after,.hf-scrollbar-horizontal .hf-scrollbar-nav-btn-backward:hover:after{border:4px solid transparent;border-left:none;border-right-color:#8a9097}.hf-scrollbar-horizontal .hf-scrollbar-nav-btn-forward:after{border:4px solid transparent;border-right:none;border-left-color:#bababa}.hf-scrollbar-horizontal .hf-scrollbar-nav-btn-forward:active:after,.hf-scrollbar-horizontal .hf-scrollbar-nav-btn-forward:hover:after{border:4px solid transparent;border-right:none;border-left-color:#8a9097}.hf-scrollbar-vertical-right{right:0}.hf-scrollbar-vertical-wrapper{position:absolute;overflow:hidden}.hf-scrollbar-vertical-content{display:inline-block;width:100%;height:100%;overflow:hidden}.hf-scrollbar-vertical.hf-scrollbar-unattached{margin:0 2px}.hf-scrollbar-horizontal-bottom{bottom:0}.hf-scrollbar-horizontal-wrapper{position:absolute;overflow:hidden}.hf-scrollbar-horizontal-content{display:inline-block;width:100%;height:100%;overflow:hidden}.hf-scrollbar-horizontal.hf-scrollbar-unattached{margin:2px 0}.hf-scroller{position:relative;overflow:hidden;outline:0;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;scrollbar-color:#bababa #f4f4f5;scrollbar-width:thin}.hf-scroller>.hf-scroller-content-wrapper{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hf-scroller.vertical-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.hf-scroller.vertical-scroll>.hf-scroller-content-wrapper{display:block}.hf-scroller.horizontal-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.hf-scroller.horizontal-scroll>.hf-scroller-content-wrapper{display:inline-block;height:100%}.hf-scroller.vertical-scroll.inverted{-webkit-transform:scaleY(-1);-moz-transform:scaleY(-1);-ms-transform:scaleY(-1);-o-transform:scaleY(-1);transform:scaleY(-1);display:flex;flex-direction:column}.hf-scroller.vertical-scroll.inverted>.hf-scroller-content-wrapper{-webkit-transform:scaleY(-1);-moz-transform:scaleY(-1);-ms-transform:scaleY(-1);-o-transform:scaleY(-1);transform:scaleY(-1);flex:1 1 0%;display:flex;flex-direction:column;justify-content:flex-end;position:relative}.hf-scroller.horizontal-scroll.inverted{-webkit-transform:scaleX(-1);-moz-transform:scaleX(-1);-ms-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1);flex-direction:row}.hf-scroller.horizontal-scroll.inverted>.hf-scroller-content-wrapper{-webkit-transform:scaleX(-1);-moz-transform:scaleX(-1);-ms-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1);flex-direction:row}.hf-scroller.grayscheme{scrollbar-color:#8a9097 #4a4e53}.hf-button-scroll-to-home{display:block;z-index:3;width:32px;height:32px;position:absolute;right:30px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background:url(../images/hf-button-jump-to-latest.png) #bababa no-repeat center}.hf-button-scroll-to-home:hover{background-color:#8a9097}.hf-button-scroll-to-home.bottom{bottom:7px}.hf-button-scroll-to-home.top{top:7px;-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.hf-button-scroll-to-home.right{left:7px;bottom:30px;-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.hf-button-scroll-to-home.left{bottom:30px;right:7px;-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.hf-separator{background-color:gray}.hf-separator-vertical{display:inline-block;width:1px;background-color:gray;padding:0}.hf-separator-horizontal{display:block;height:1px;padding:0}.hf-slider{position:relative;outline:0;font-family:Verdana,Arial,sans-serif;font-size:9px;overflow:visible}.hf-slider-horizontal{width:100%;height:3px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background:-moz-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(48%,#e5e6e3),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-o-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:-ms-linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);background:linear-gradient(top,#fff 0,#e5e6e3 48%,#fff 100%);border:1px solid #bbb;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-slider-horizontal-thumb{cursor:pointer;background-image:url(../images/hf-slider-arrow-h.png);position:absolute;top:50%!important;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);width:18px;height:18px;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-slider-horizontal-thumb-over{background-image:url(../images/hf-slider-arrow-h-over.png)}.hf-slider-vertical{width:3px;height:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background:-moz-linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);background:-webkit-gradient(linear,left top,right top,color-stop(0,#fff),color-stop(48%,#e5e6e3),color-stop(100%,#fff));background:-webkit-linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);background:-o-linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);background:-ms-linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);background:linear-gradient(left,#fff 0,#e5e6e3 48%,#fff 100%);border:1px solid #bbb;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-slider-vertical-thumb{background-image:url(../images/hf-slider-arrow-v.png);position:absolute;left:-5px;width:18px;height:18px;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-slider-focused,.hf-slider:focus{outline:0}.hf-slider-hover{-webkit-box-shadow:0 0 2px 0 #55a90f;-moz-box-shadow:0 0 2px 0 #55a90f;box-shadow:0 0 2px 0 #55a90f}.hf-slider-hover.hf-slider-horizontal .hf-slider-thumb{background-image:url(../images/hf-slider-arrow-h-over.png)}.hf-slider-hover.hf-slider-vertical .hf-slider-thumb{background-image:url(../images/hf-slider-arrow-v-over.png)}.hf-slider-disabled.hf-slider-horizontal{color:#ccc;background:none repeat scroll 0 0 #f5f5f5;border:1px solid #e8e8e8}.hf-slider-disabled.hf-slider-horizontal .hf-slider-thumb{background-image:url(../images/hf-slider-arrow-h-disabled.png)}.hf-slider-disabled.hf-slider-vertical{color:#ccc;background:none repeat scroll 0 0 #f5f5f5;border:1px solid #e8e8e8}.hf-slider-disabled.hf-slider-vertical .hf-slider-thumb{background-image:url(../images/hf-slider-arrow-v-disabled.png)}.hf-tab-pane{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex}.hf-tab-pane.tabs-position-bottom,.hf-tab-pane.tabs-position-top{-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.hf-tab-pane.tabs-position-left,.hf-tab-pane.tabs-position-right{-webkit-flex-direction:row;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.hf-tab-pane-tabs-host{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:0;border:0;padding:0;outline:0;cursor:default;list-style:none}.hf-tab-pane-tabs-host-top{border-top:0!important}.hf-tab-pane-tabs-host-bottom{border-bottom:0!important}.hf-tab-pane-tabs-host-left{border-left:0!important}.hf-tab-pane-tabs-host-right{border-right:0!important}.hf-tab-pane-content-host{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-flex-grow:1;-moz-flex-grow:1;-ms-flex-grow:1;flex-grow:1;margin:0;border:0;padding:0;overflow:hidden;outline:0}.hf-tab-item{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;cursor:default;padding:6px 10px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.hf-window-container{position:absolute}.hf-window.hf-window-border{position:absolute;top:0;left:0;right:0;bottom:0;-webkit-border-radius:10px 10px;-moz-border-radius:10px 10px;border-radius:10px 10px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.hf-window.hf-window-content{position:absolute;top:7px;left:7px;right:7px;bottom:7px;z-index:0;background-color:#fff}.hf-window.hf-window-iframes{top:72px;left:0;right:0;bottom:0;position:absolute;left:10px;top:6px;width:30px;height:30px}.hf-window.hf-window-iframes.hf-window.hf-window-iframes-info{border-bottom-style:solid;border-bottom-width:1px;padding-bottom:5px;padding-left:10px;padding-top:5px}.hf-window.hf-window-iframes.hf-window.hf-window-iframes-control{float:left;margin-left:10px;margin-top:6px;background:url(../images/hf-window-control.png) no-repeat;width:29px;height:26px}.hf-window.hf-window-title{position:relative;text-align:center;background-position:top left;-moz-binding:url(ellipsis.xml#ellipsis);color:#fff;border-bottom:1px solid #fff;font-size:13px;font-weight:700;padding-top:4px;width:100%;height:27px;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.hf-window.hf-window-container.hf-window-drag-over .hf-window.hf-window-border{background-color:red}.hf-window.hf-window-border{-webkit-box-shadow:0 0 3px 1px #333;-moz-box-shadow:0 0 3px 1px #333;box-shadow:0 0 3px 1px #333}.hf-window.hf-window-content{background:#fff;border:1px solid #555}.hf-window.hf-window-info{background-color:#ffdd9c;border-bottom-color:#c18717}.hf-window.hf-window-control{background:url(../images/hf-window-control.png) no-repeat}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2Jhc2UubGVzcyIsIi4uL191dGlsLmxlc3MiLCIuLi9hcHAubGVzcyIsIi4uL2F2YXRhci5sZXNzIiwiLi4vYnV0dG9uLmxlc3MiLCIuLi9jYXB0aW9uLmxlc3MiLCIuLi9jYXJvdXNlbC5sZXNzIiwiLi4vY2lyY3VsYXIubGVzcyIsIi4uL2NvbnRhaW5lci5sZXNzIiwiLi4vZGF0ZXBpY2tlci5sZXNzIiwiLi4vZGlhbG9nLmxlc3MiLCIuLi9kcmFnZ2VyLmxlc3MiLCIuLi9maWxlLmxlc3MiLCIuLi9mb3JtZmlsZS5sZXNzIiwiLi4vZm9ybXMubGVzcyIsIi4uL2xheWVyLmxlc3MiLCIuLi9sYXlvdXQubGVzcyIsIi4uL2xpc3QubGVzcyIsIi4uL2xvYWRlci5sZXNzIiwiLi4vbWFzay5sZXNzIiwiLi4vbWVkaWEubGVzcyIsIi4uL3BvcHVwLmxlc3MiLCIuLi9wcm9ncmVzcy5sZXNzIiwiLi4vcmVsYXRpdmVkYXRlLmxlc3MiLCIuLi9yZXNpemVyLmxlc3MiLCIuLi9zY3JvbGxiYXIubGVzcyIsIi4uL3Njcm9sbGVyLmxlc3MiLCIuLi9zZXBhcmF0b3IubGVzcyIsIi4uL3NsaWRlci5sZXNzIiwiLi4vdGFicy5sZXNzIiwiLi4vd2luZG93Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsS0FDQyxZQUFhLGVBQUEsQ0FBZ0IscUJBQUEsQ0FBc0IsYUFBQSxDQUFBLE9BQUEsQ0FBQSxNQUFBLENBQUEsV0FDaEQsVUFBQSxLQUNILE9BQUEsRUFLRCxXQUNBLFlBS0EsYUFDQSxzQkFDQSxVQUNBLGVBQ0EsdUJBQ0EscUJBRUEsaUJBREEsc0JBRUEseUJBaEJBLGNBQ0EsWUFpQkEsVUFiQSxXQWNBLHFDQUVBLFVBREEsZUFFQSxjQUNBLGlCQUNBLFNBQ0EsZ0JBUkEsZ0JBU0EsVUFDQSxrQkFHQSxpQkFDQSxpQkF6QkEsY0FDQSxjQXlCQSxXQUpBLFlBQ0Esb0JBekJBLGFDaVRFLG1CQUFBLFdBQTZCLGdCQUFBLFdBQ04sV0FBQSxXRGxS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QmlLSCxVaUJqS0csY0FFWCx3RGpCZ1JYLGdCQUFBLEtBQ00sbUJBQUEsS0FHSSx3QkFBQSxLQUNXLHFCQUFBLEtpQmhSZCxpRGpCbUptQixrQmlCbEpKLGNqQnNKTCxlaUJ0SkssY2pCdUpQLGNpQnZKTyxjakJ3Sk4sYWlCeEpNLGNqQnlKSCxVaUJ6SkcsY0FFWCx3RGpCd1FYLGdCQUFBLEtBQ00sbUJBQUEsS0FHSSx3QkFBQSxLQUNXLHFCQUFBLEtpQnhRZCxpRGpCMkltQixrQmlCMUlKLGVqQjhJTCxlaUI5SUssZWpCK0lQLGNpQi9JTyxlakJnSk4sYWlCaEpNLGVqQmlKSCxVaUJqSkcsZUFFWCx3RGpCZ1FYLGdCQUFBLEtBQ00sbUJBQUEsS0FHSSx3QkFBQSxLQUNXLHFCQUFBLEtpQmhRZCxpRGpCbUltQixrQmlCbElKLGVqQnNJTCxlaUJ0SUssZWpCdUlQLGNpQnZJTyxlakJ3SU4sYWlCeElNLGVqQnlJSCxVaUJ6SUcsZUFFWCx3RGpCd1BYLGdCQUFBLEtBQ00sbUJBQUEsS0FHSSx3QkFBQSxLQUNXLHFCQUFBLEtpQnhQZCxpRGpCMkhtQixrQmlCMUhKLGVqQjhITCxlaUI5SEssZWpCK0hQLGNpQi9ITyxlakJnSU4sYWlCaElNLGVqQmlJSCxVaUJqSUcsZUFFWCx3RGpCZ1BYLGdCQUFBLEtBQ00sbUJBQUEsS0FHSSx3QkFBQSxLQUNXLHFCQUFBLEtpQmhQZCxpRGpCbUhtQixrQmlCbEhKLGVqQnNITCxlaUJ0SEssZWpCdUhQLGNpQnZITyxlakJ3SE4sYWlCeEhNLGVqQnlISCxVaUJ6SEcsZUFFWCx3RGpCd09YLGdCQUFBLEtBQ00sbUJBQUEsS0FHSSx3QkFBQSxLQUNXLHFCQUFBLEtpQnhPZCxpRGpCMkdtQixrQmlCMUdKLGVqQjhHTCxlaUI5R0ssZWpCK0dQLGNpQi9HTyxlakJnSE4sYWlCaEhNLGVqQmlISCxVaUJqSEcsZUFFWCx3RGpCZ09YLGdCQUFBLEtBQ00sbUJBQUEsS0FHSSx3QkFBQSxLQUNXLHFCQUFBLEtpQjdOZCxxQ2pCL0tKLE1BQUEsS0FBaUIsT0FBQSxLaUJzU2pCLDhDakJ0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QUFBLFFBQ0Esb0JBQUEsUUFJRCw2QkFDQyxXQUFBLHFDQUFxQiIsImZpbGUiOiJoZi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBiYXNlIENTUyBpbmRlcGVuZGVudCBvZiBkZXZpY2UgZm9yIHdvcmtzcGFjZVxuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6IDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuLyogRGVmYXVsdCBVSSB3b3Jrc3BhY2UgKi9cblxuQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xuQGRlZmF1bHQtZm9udC1zaXplOiAxMnB4O1xuXG5ib2R5IHtcblx0Zm9udC1mYW1pbHk6IFwiTHVjaWRhIEdyYW5kZVwiLFwiTHVjaWRhIFNhbnMgVW5pY29kZVwiLFwiTHVjaWRhIFNhbnNcIixWZXJkYW5hLFRhaG9tYSxzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogQGRlZmF1bHQtZm9udC1zaXplO1xuXHRtYXJnaW46IDBweDtcbn1cblxuLmhmLWNvbXBvbmVudCxcbi5oZi1jb250cm9sLFxuLmhmLWJ1dHRvbixcbi5oZi1jYXB0aW9uLFxuLmhmLXVpLWNsb2NrLFxuLmhmLWZpZ3VyZSxcbi5oZi1zY3JvbGxiYXIsXG4uaGYtc2VwYXJhdG9yLFxuLmhmLWNhcm91c2VsLFxuLmhmLWNhcm91c2VsLXNlbGVjdG9yLFxuLmhmLWNoYXJ0LFxuLmhmLWNoYXJ0LWF4aXMsXG4uaGYtY2hhcnQtYXhpcy1jYXB0aW9uLFxuLmhmLWNoYXJ0LWF4aXMtdGl0bGUsXG4uaGYtY2hhcnQtbGVnZW5kLWl0ZW0sXG4uaGYtY2hhcnQtbGVnZW5kLFxuLmhmLWNoYXJ0LXNlcmllcy1jYXB0aW9uLFxuLmhmLXBsYWNlaG9sZGVyLFxuLmhmLWVycm9yLFxuLmhmLWdyYXZpdHktdmVydGljYWwtc3RhY2stY29udGFpbmVyLFxuLmhmLWltYWdlLWFyZWEsXG4uaGYtaW1hZ2UsXG4uaGYtaW1hZ2UtbWFwLFxuLmhmLWxpc3QtZGl2aWRlcixcbi5oZi1tYXNrLFxuLmhmLW1lZGlhLWF1ZGlvLFxuLmhmLXBvcHVwLFxuLmhmLXBvcHVwLWNvbnRlbnQsXG4uaGYtdG9vbHRpcCxcbi5oZi10b29sdGlwLWNvbnRlbnQsXG4uaGYtcHJvZ3Jlc3MtYmFyLFxuLmhmLXByb2dyZXNzLXBpZSxcbi5oZi1zbGlkZXIge1xuXHQuYm94LXNpemluZygpO1xufVxuXG4uaGYtY29tcG9uZW50LWRpc2FibGVkLCAuaGYtY29tcG9uZW50LWRpc2FibGVkLWllIHtcblx0Y29sb3I6ICNjY2MgIWltcG9ydGFudDtcbn1cblxuLmhmLWVycm9yLWVycm9yLCAuaGYtZXJyb3Itd2FybmluZyB7XG5cdGNvbG9yOiByZWQ7XG59XG5cbi5oZi1jb250cm9sLWZvY3VzZWQge1xuXHRib3JkZXI6IDFweCBzb2xpZCBvcmFuZ2U7XG59IiwiLyoqXHJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogNFBTQSBIdWJmcm9udFxyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqIEBsaWNlbnNlIENvcHlyaWdodCAoYykgMjAxNCA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKiBAYXV0aG9yIHJhbHVjYWMgYXQgMjMvMTAvMTRcclxuICpcclxuICogU3RhbmRhcmQgc3R5bGUgZm9yIGdlbmVyYWwgYXBwbGljYXRpb24gZWxlbWVudHNcclxuICovXHJcblxyXG4vKiBIZWxwZXIgZm9yIHNldHRpbmcgcHJvcGVydGllcyBmb3IgaW5wdXRzIHBsYWNlaG9sZGVycyAqL1xyXG4uaW5wdXQtcGxhY2Vob2xkZXIoQGNvbG9yOiBpbmhlcml0OyBAZm9udC1zaXplOiBpbmhlcml0OyBAZm9udC1zdHlsZTogaW5oZXJpdDsgQGZvbnQtd2VpZ2h0OiBpbmhlcml0OyBAdGV4dC1hbGlnbjogaW5oZXJpdCkge1xyXG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6IEBjb2xvcjtcclxuICAgICAgICBmb250LXNpemU6IEBmb250LXNpemU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogQGZvbnQtc3R5bGU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IEBmb250LXdlaWdodDtcclxuXHJcbiAgICAgICAgdGV4dC1hbGlnbjogQHRleHQtYWxpZ247XHJcblxyXG4gICAgfVxyXG5cclxuICAgICY6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6IEBjb2xvcjtcclxuICAgICAgICBmb250LXNpemU6IEBmb250LXNpemU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogQGZvbnQtc3R5bGU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IEBmb250LXdlaWdodDtcclxuXHJcbiAgICAgICAgdGV4dC1hbGlnbjogQHRleHQtYWxpZ247XHJcbiAgICB9XHJcblxyXG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6IEBjb2xvcjtcclxuICAgICAgICBmb250LXNpemU6IEBmb250LXNpemU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogQGZvbnQtc3R5bGU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IEBmb250LXdlaWdodDtcclxuXHJcbiAgICAgICAgdGV4dC1hbGlnbjogQHRleHQtYWxpZ247XHJcbiAgICB9XHJcblxyXG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiBAY29sb3I7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZm9udC1zaXplO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IEBmb250LXN0eWxlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBAZm9udC13ZWlnaHQ7XHJcblxyXG4gICAgICAgIHRleHQtYWxpZ246IEB0ZXh0LWFsaWduO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBDcm9zcyBicm93c2VyIGNsZWFyZml4IG1peGluXHJcbi5jbGVhcmZpeCgpIHtcclxuICAmOjpiZWZvcmUsICY6OmFmdGVyIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgY29udGVudDogXCIgXCI7XHJcbiAgfVxyXG5cclxuICAmOjphZnRlciB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEhlbHBlciBmb3Igc2V0dGluZyB3aWR0aCBhbmQgaGVpZ2h0XHJcbi5zaXplKEB3aWR0aDsgQGhlaWdodCkge1xyXG4gIHdpZHRoOiBAd2lkdGg7XHJcbiAgaGVpZ2h0OiBAaGVpZ2h0O1xyXG59XHJcblxyXG4uc2l6ZShAc2l6ZTogYXV0bykgd2hlbiAoZGVmYXVsdCgpKSB7XHJcbiAgLmV4dHJhY3Qtd2goQHNpemUpO1xyXG4gIC5zaXplKEB3aWR0aDsgQGhlaWdodCk7XHJcbn1cclxuXHJcbi8vIGRvbid0IHJlc2V0IHNpemUgaWYgaXQgaXNuJ3QgZGVmaW5lZFxyXG4vLyB1c2VmdWwgd2l0aCBkZWZhdWx0IHBhcmFtZXRlcnNcclxuLnNpemUoQHNpemUpIHdoZW4gKEBzaXplID0gbnVsbCkge31cclxuXHJcblxyXG4vLyBIZWxwZXIgZm9yIHNldHRpbmcgYWJzb2x1dGUgcG9zaXRpb24gb24gYWxsIHNpZGVzIHdpdGhvdXQgb3ZlcnJpZGluZyB1bnNldCB2YWx1ZXMuXHJcbi5wb3NpdGlvbihAdG9wOiBudWxsOyBAcmlnaHQ6IG51bGw7IEBib3R0b206IG51bGw7IEBsZWZ0OiBudWxsKSB3aGVuKGRlZmF1bHQoKSkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAuZGVmYXVsdCh0b3A7IEB0b3ApO1xyXG4gIC5kZWZhdWx0KGxlZnQ7IEBsZWZ0KTtcclxuICAuZGVmYXVsdChyaWdodDsgQHJpZ2h0KTtcclxuICAuZGVmYXVsdChib3R0b207IEBib3R0b20pO1xyXG59XHJcblxyXG4vLyBIZWxwZXIgZm9yIHNldHRpbmcgYWJzb2x1dGUgcG9zaXRpb24gYW5kIHRvcCBhbmQgbGVmdFxyXG4ucG9zaXRpb24oQHBvc2l0aW9uKSB3aGVuIChsZW5ndGgoQHBvc2l0aW9uKSA9IDIpIHtcclxuICAucG9zaXRpb24oXHJcbiAgICBAdG9wOiBleHRyYWN0KEBwb3NpdGlvbiwgMSk7XHJcbiAgICBAbGVmdDogZXh0cmFjdChAcG9zaXRpb24sIDIpXHJcbiAgKTtcclxufVxyXG5cclxuLy9IZWxwZXIgZm9yIHNldHRpbmcgYWJzb2x1dGUgcG9zaXRpb24gb24gYWxsIHNpZGVzXHJcbi5wb3NpdGlvbihAcG9zaXRpb24pIHdoZW4gKGxlbmd0aChAcG9zaXRpb24pID0gNCkge1xyXG4gIC5wb3NpdGlvbihcclxuICAgIEB0b3A6IGV4dHJhY3QoQHBvc2l0aW9uLCAxKTtcclxuICAgIEByaWdodDogZXh0cmFjdChAcG9zaXRpb24sIDIpO1xyXG4gICAgQGJvdHRvbTogZXh0cmFjdChAcG9zaXRpb24sIDMpO1xyXG4gICAgQGxlZnQ6IGV4dHJhY3QoQHBvc2l0aW9uLCA0KVxyXG4gICk7XHJcbn1cclxuXHJcbi5ib3gtc2hhZG93KEBzaGFkb3c6IDFweCAxcHggMXB4IDAgcmdiYSgxMDAsIDEwMCwgMTAwLCAuMik7IEBjb25jYXQ6IGZhbHNlKSB3aGVuIChAY29uY2F0ID0gZmFsc2UpIHtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IEBzaGFkb3c7XHJcbiAgLW1vei1ib3gtc2hhZG93OiBAc2hhZG93O1xyXG4gIGJveC1zaGFkb3c6IEBzaGFkb3c7XHJcbn1cclxuXHJcbi5ib3gtc2hhZG93KEBzaGFkb3c7IEBjb25jYXQpIHdoZW4gKEBjb25jYXQgPSB0cnVlKSB7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93KzogQHNoYWRvdztcclxuICAtbW96LWJveC1zaGFkb3crOiBAc2hhZG93O1xyXG4gIGJveC1zaGFkb3crOiBAc2hhZG93O1xyXG59XHJcblxyXG4ucmVtb3ZlLWJveC1zaGFkb3coKSB7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xyXG4gIC1tb3otYm94LXNoYWRvdzogbm9uZTtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4uZmxleChAdmFsKSB7XHJcbiAgLXdlYmtpdC1mbGV4OiBAdmFsO1xyXG4gIC1tb3otZmxleDogQHZhbDtcclxuICAtbXMtZmxleDogQHZhbDtcclxuICBmbGV4OiBAdmFsO1xyXG59XHJcbi5mbGV4LWdyb3coQHZhbCkge1xyXG4gIC13ZWJraXQtZmxleC1ncm93OiBAdmFsO1xyXG4gIC1tb3otZmxleC1ncm93OiBAdmFsO1xyXG4gIC1tcy1mbGV4LWdyb3c6IEB2YWw7XHJcbiAgZmxleC1ncm93OiBAdmFsO1xyXG59XHJcbi5mbGV4LXNocmluayhAdmFsKSB7XHJcbiAgLXdlYmtpdC1mbGV4LXNocmluazogQHZhbDtcclxuICAtbW96LWZsZXgtc2hyaW5rOiBAdmFsO1xyXG4gIC1tcy1mbGV4LXNocmluazogQHZhbDtcclxuICBmbGV4LXNocmluazogQHZhbDtcclxufVxyXG4uZmxleC1kaXJlY3Rpb24oQHZhbCkge1xyXG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IEB2YWw7XHJcbiAgLW1vei1mbGV4LWRpcmVjdGlvbjogQHZhbDtcclxuICAtbXMtZmxleC1kaXJlY3Rpb246IEB2YWw7XHJcbiAgZmxleC1kaXJlY3Rpb246IEB2YWw7XHJcbn1cclxuLmZsZXgtZmxvdyhAdmFsKSB7XHJcbiAgLXdlYmtpdC1mbGV4LWZsb3c6IEB2YWw7XHJcbiAgLW1vei1mbGV4LWZsb3c6IEB2YWw7XHJcbiAgLW1zLWZsZXgtZmxvdzogQHZhbDtcclxuICBmbGV4LWZsb3c6IEB2YWw7XHJcbn1cclxuLmZsZXgtd3JhcChAdmFsKSB7XHJcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IEB2YWw7XHJcbiAgLW1vei1mbGV4LXdyYXA6IEB2YWw7XHJcbiAgLW1zLWZsZXgtd3JhcDogQHZhbDtcclxuICBmbGV4LXdyYXA6IEB2YWw7XHJcbn1cclxuXHJcbi5hbGlnbi1pdGVtcyhAdmFsKSB7XHJcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogQHZhbDtcclxuICAtbW96LWFsaWduLWl0ZW1zOiBAdmFsO1xyXG4gIC1tcy1hbGlnbi1pdGVtczogQHZhbDtcclxuICBhbGlnbi1pdGVtczogQHZhbDtcclxufVxyXG5cclxuLmp1c3RpZnktY29udGVudChAdmFsKSB7XHJcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IEB2YWw7XHJcbiAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6IEB2YWw7XHJcbiAgLW1zLWp1c3RpZnktY29udGVudDogQHZhbDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IEB2YWw7XHJcbn1cclxuXHJcbi8vIFNldHMgYSBjcm9zcy1icm93c2VyIHRyYW5zZm9ybVxyXG4udHJhbnNmb3JtKEB0cmFuc2Zvcm0pIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogQHRyYW5zZm9ybTtcclxuICAtbW96LXRyYW5zZm9ybTogQHRyYW5zZm9ybTtcclxuICAtbXMtdHJhbnNmb3JtOiBAdHJhbnNmb3JtO1xyXG4gIC1vLXRyYW5zZm9ybTogQHRyYW5zZm9ybTtcclxuICB0cmFuc2Zvcm06IEB0cmFuc2Zvcm07XHJcbn1cclxuXHJcbi8vIGUuZy4gLnRyYW5zaXRpb24od2lkdGggLjNzIGVhc2UtaW4gLjdzLCBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLWluIC43cyk7XHJcbi50cmFuc2l0aW9uKC4uLikge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBAYXJndW1lbnRzO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBAYXJndW1lbnRzO1xyXG4gICAgLW1zLXRyYW5zaXRpb246IEBhcmd1bWVudHM7XHJcbiAgICAtby10cmFuc2l0aW9uOiBAYXJndW1lbnRzO1xyXG4gICAgdHJhbnNpdGlvbjogQGFyZ3VtZW50cztcclxufVxyXG5cclxuLy8gU2V0cyBhIGNyb3NzLWJyb3dzZXIgdGV4dC1vdmVyZmxvd1xyXG4udGV4dC1vdmVyZmxvdyhAb3ZlcmZsb3c6IGVsbGlwc2lzICkge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogQG92ZXJmbG93O1xyXG4gIC1vLXRleHQtb3ZlcmZsb3c6IEBvdmVyZmxvdztcclxufVxyXG5cclxuLnZlcnRpY2FsLWFsaWduKEBwb3NpdGlvbjogcmVsYXRpdmUpIHtcclxuICBwb3NpdGlvbjogQHBvc2l0aW9uO1xyXG4gIHRvcDogNTAlO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG59XHJcblxyXG4uY2VudGVyV2l0aFRyYW5zZm9ybSgpIHtcclxuICAucG9zaXRpb24oNTAlIDUwJSk7XHJcbiAgLnRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwgLTUwJSkpO1xyXG59XHJcblxyXG4udmVydGljYWxDZW50ZXJXaXRoVHJhbnNmb3JtKCkge1xyXG4gIC5wb3NpdGlvbig1MCUpO1xyXG4gIC50cmFuc2Zvcm0odHJhbnNsYXRlKDAlLCAtNTAlKSk7XHJcbn1cclxuXHJcbi8vIFNldHMgY3Jvc3MtYnJvd3NlciBib3gtc2l6aW5nIHByb3BlcnR5XHJcbi5ib3gtc2l6aW5nKEB0eXBlOiBib3JkZXItYm94KSB7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBAdHlwZTtcclxuICAtbW96LWJveC1zaXppbmc6IEB0eXBlO1xyXG4gIGJveC1zaXppbmc6IEB0eXBlO1xyXG59XHJcblxyXG4vLyBTZXRzIGNyb3NzLWJyb3dzZXIgYm9yZGVyLXJhZGl1c1xyXG4uYm9yZGVyLXJhZGl1cyhAcmFkaXVzKSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxuICBib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG5cclxuICAtbW96LWJhY2tncm91bmQtY2xpcDogcGFkZGluZztcclxuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxufVxyXG5cclxuLmJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoQHJhZGl1cykge1xyXG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogQHJhZGl1cztcclxuICAtbW96LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEByYWRpdXM7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogQHJhZGl1cztcclxuXHJcbiAgLW1vei1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmc7XHJcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbn1cclxuXHJcbi5ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cyhAcmFkaXVzKSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcclxuICAtbW96LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAcmFkaXVzO1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAcmFkaXVzO1xyXG5cclxuICAtbW96LWJhY2tncm91bmQtY2xpcDogcGFkZGluZztcclxuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxufVxyXG5cclxuLmJvcmRlci1yYWRpdXNlcyAoQHRvcHJpZ2h0OiAwLCBAYm90dG9tcmlnaHQ6IDAsIEBib3R0b21sZWZ0OiAwLCBAdG9wbGVmdDogMCkge1xyXG4gIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICAgIEB0b3ByaWdodDtcclxuICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAYm90dG9tcmlnaHQ7XHJcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAgQGJvdHRvbWxlZnQ7XHJcbiAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAgICAgQHRvcGxlZnQ7XHJcblxyXG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDogICAgICAgIEB0b3ByaWdodDtcclxuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6ICAgICBAYm90dG9tcmlnaHQ7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6ICAgICAgQGJvdHRvbWxlZnQ7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6ICAgICAgICAgQHRvcGxlZnQ7XHJcblxyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAgICAgICAgICAgIEB0b3ByaWdodDtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogICAgICAgICBAYm90dG9tcmlnaHQ7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogICAgICAgICAgQGJvdHRvbWxlZnQ7XHJcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogICAgICAgICAgICAgQHRvcGxlZnQ7XHJcblxyXG4gIC1tb3otYmFja2dyb3VuZC1jbGlwOiAgICBwYWRkaW5nO1xyXG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICBiYWNrZ3JvdW5kLWNsaXA6ICAgICAgICAgcGFkZGluZy1ib3g7XHJcbn1cclxuXHJcbi50ZXh0LXNoYWRvdyAoQHN0cmluZzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSkpIHtcclxuICB0ZXh0LXNoYWRvdzogQHN0cmluZztcclxufVxyXG5cclxuLy8gTWl4aW4gaGVscGVyIGZvciBzZXR0aW5nIHByb3BlcnRpZXMgb25seSBpZiBhIHZhbHVlIGlzIGdpdmVuIChpbiBvcmRlciB0byBhdm9pZCBvdmVycmlkaW5nIHZhbHVlcyBzZXQgYnkgb3RoZXIgcnVsZXMpLlxyXG4vLyBTaG91bGQgbm90IGJlIHVzZWQgb3V0c2lkZSBvZiBtaXhpbnMhXHJcbi5kZWZhdWx0KEBwcm9wOyBAdmFsKSB3aGVuIChAdmFsID0gbnVsbCkgeyB9XHJcblxyXG4uZGVmYXVsdCh0b3A7IEB2YWwpIHdoZW4gbm90IChAdmFsID0gbnVsbCkgeyB0b3A6IEB2YWw7IH1cclxuLmRlZmF1bHQocmlnaHQ7IEB2YWwpIHdoZW4gbm90IChAdmFsID0gbnVsbCkgeyByaWdodDogQHZhbDsgfVxyXG4uZGVmYXVsdChib3R0b207IEB2YWwpIHdoZW4gbm90IChAdmFsID0gbnVsbCkgeyBib3R0b206IEB2YWw7IH1cclxuLmRlZmF1bHQobGVmdDsgQHZhbCkgd2hlbiBub3QgKEB2YWwgPSBudWxsKSB7IGxlZnQ6IEB2YWw7IH1cclxuXHJcbi5leHRyYWN0LXdoKEBzaXplKSB3aGVuIChsZW5ndGgoQHNpemUpID0gMikge1xyXG4gIEB3aWR0aDogZXh0cmFjdChAc2l6ZSwgMSk7XHJcbiAgQGhlaWdodDogZXh0cmFjdChAc2l6ZSwgMik7XHJcbn1cclxuXHJcbi5leHRyYWN0LXdoKEBzaXplKSB3aGVuIChsZW5ndGgoQHNpemUpID0gMSkge1xyXG4gIEB3aWR0aDogQHNpemU7XHJcbiAgQGhlaWdodDogQHNpemU7XHJcbn1cclxuXHJcblxyXG4uYmstcG9zKEBwb3MpIHt9XHJcblxyXG4uYmstcG9zKEBwb3MpIHdoZW4gbm90IChAcG9zID0gbnVsbCkge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IEBwb3M7XHJcbn1cclxuXHJcblxyXG4vLyBTZXRzIHRoZSBgYmFja2dyb3VuZC1pbWFnZWAgcHJvcGVydHkgYW5kIG9wdGlvbmFsbHkgYHdpZHRoYCwgYGhlaWdodGAgYW5kIGBiYWNrZ3JvdW5kLXBvc2l0aW9uYC5cclxuLy8gSWYgYEBzaXplYCBpcyBgbnVsbGAgKHRoZSBkZWZhdWx0KSBgd2lkdGhgIGFuZCBgaGVpZ2h0YCBhcmVuJ3QgcmVzZXQgKHVzZWZ1bCBpZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIHNwcml0ZVxyXG4vLyB3aXRoIG9uZSB0aGF0IGhhcyB0aGUgc2FtZSBkaW1lbnNpb25zKS5cclxuLy8gVGhlIHNhbWUgaXMgdHJ1ZSBmb3IgYEBiay1wb3NgIHdoZW4gaXQgaXMgYG51bGxgLlxyXG4uYmstaW1nKEBzcHJpdGU6IG51bGw7IEBzaXplOiBudWxsOyBAYmstcG9zOiBudWxsKSB7XHJcbiAgLnNpemUoQHNpemUpO1xyXG4gIC5iay1wb3MoQGJrLXBvcyk7XHJcbn1cclxuXHJcbi5iay1pbWcoQHNwcml0ZTsgQHNpemU6IG51bGw7IEBwb3M6IG51bGwpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBAc3ByaXRlO1xyXG59XHJcblxyXG4uYnRuLWJrKEBzcHJpdGU7IEBzcHJpdGUtc2l6ZSkge1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJzsgZGlzcGxheTogYmxvY2s7XHJcbiAgICAudmVydGljYWwtYWxpZ24oKTtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIC5zaXplKEBzcHJpdGUtc2l6ZSk7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBAc3ByaXRlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICB9XHJcbn1cclxuXHJcbi5idG4tYmstcG9zKEBwb3MpIHtcclxuICAmOjpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogQHBvcztcclxuICB9XHJcbn1cclxuXHJcbi8vIEhlbHBlciBmb3IgYXZhdGFyIHRvcCBhbGlnblxyXG4uaW5saW5lQmxvY2tWZXJ0aWNhbFRvcCgpe1xyXG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOnRvcDtcclxufVxyXG5cclxuLy8gU2V0cyBjcm9zcy1icm93c2VyIGJveC1zaXppbmcgcHJvcGVydHlcclxuLmJveC1zaXppbmcoQHR5cGU6IGJvcmRlci1ib3gpIHtcclxuICAtd2Via2l0LWJveC1zaXppbmc6IEB0eXBlO1xyXG4gIC1tb3otYm94LXNpemluZzogQHR5cGU7XHJcbiAgYm94LXNpemluZzogQHR5cGU7XHJcbn1cclxuXHJcbi8vIFNldHMgYSBjcm9zcy1icm93c2VyIHRyYW5zZm9ybVxyXG4udHJhbnNmb3JtKEB0cmFuc2Zvcm0pIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogQHRyYW5zZm9ybTtcclxuICAtbW96LXRyYW5zZm9ybTogQHRyYW5zZm9ybTtcclxuICAtbXMtdHJhbnNmb3JtOiBAdHJhbnNmb3JtO1xyXG4gIC1vLXRyYW5zZm9ybTogQHRyYW5zZm9ybTtcclxuICB0cmFuc2Zvcm06IEB0cmFuc2Zvcm07XHJcbn1cclxuXHJcbi8vIEhlbHBlciBmb3IgY2Fyb3VzZWwgYW5pbWF0aW9uXHJcbi5rZXlGcmFtZXMoQG5hbWU7IEBhcmd1bWVudHMpIHdoZW4gKGxlbmd0aChAYXJndW1lbnRzKSA9IDMpe1xyXG4gIEAtd2Via2l0LWtleWZyYW1lcyBAbmFtZSB7XHJcbiAgICBmcm9tIHsgbGVmdDogZXh0cmFjdChAYXJndW1lbnRzLCAxKTsgfVxyXG4gICAgdG8geyBsZWZ0OiBleHRyYWN0KEBhcmd1bWVudHMsIDIpOyB9XHJcbiAgfVxyXG4gIEAtbW96LWtleWZyYW1lcyBAbmFtZSB7XHJcbiAgICBmcm9tIHsgbGVmdDogZXh0cmFjdChAYXJndW1lbnRzLCAxKTsgfVxyXG4gICAgdG8geyBsZWZ0OiBleHRyYWN0KEBhcmd1bWVudHMsIDIpOyBkaXNwbGF5OiBleHRyYWN0KEBhcmd1bWVudHMsIDMpOyB9XHJcbiAgfVxyXG4gIEAtbXMta2V5ZnJhbWVzIEBuYW1lIHtcclxuICAgIGZyb20geyBsZWZ0OiBleHRyYWN0KEBhcmd1bWVudHMsIDEpOyB9XHJcbiAgICB0byB7IGxlZnQ6IGV4dHJhY3QoQGFyZ3VtZW50cywgMik7IGRpc3BsYXk6IGV4dHJhY3QoQGFyZ3VtZW50cywgMyk7IH1cclxuICB9XHJcbiAgQGtleWZyYW1lcyBAbmFtZSB7XHJcbiAgICBmcm9tIHsgbGVmdDogZXh0cmFjdChAYXJndW1lbnRzLCAxKTsgfVxyXG4gICAgdG8geyBsZWZ0OiBleHRyYWN0KEBhcmd1bWVudHMsIDIpOyBkaXNwbGF5OiBleHRyYWN0KEBhcmd1bWVudHMsIDMpOyB9XHJcbiAgfVxyXG59XHJcbi5rZXlGcmFtZXMoQG5hbWU7IEBhcmd1bWVudHMpIHdoZW4gKGxlbmd0aChAYXJndW1lbnRzKSA9IDIpe1xyXG4gIEAtd2Via2l0LWtleWZyYW1lcyBAbmFtZSB7XHJcbiAgICBmcm9tIHsgbGVmdDogZXh0cmFjdChAYXJndW1lbnRzLCAxKTsgfVxyXG4gICAgdG8geyBsZWZ0OiBleHRyYWN0KEBhcmd1bWVudHMsIDIpOyB9XHJcbiAgfVxyXG4gIEAtbW96LWtleWZyYW1lcyBAbmFtZSB7XHJcbiAgICBmcm9tIHsgbGVmdDogZXh0cmFjdChAYXJndW1lbnRzLCAxKTsgfVxyXG4gICAgdG8geyBsZWZ0OiBleHRyYWN0KEBhcmd1bWVudHMsIDIpOyB9XHJcbiAgfVxyXG4gIEAtbXMta2V5ZnJhbWVzIEBuYW1lIHtcclxuICAgIGZyb20geyBsZWZ0OiBleHRyYWN0KEBhcmd1bWVudHMsIDEpOyB9XHJcbiAgICB0byB7IGxlZnQ6IGV4dHJhY3QoQGFyZ3VtZW50cywgMik7IH1cclxuICB9XHJcbiAgQGtleWZyYW1lcyBAbmFtZSB7XHJcbiAgICBmcm9tIHsgbGVmdDogZXh0cmFjdChAYXJndW1lbnRzLCAxKTsgfVxyXG4gICAgdG8geyBsZWZ0OiBleHRyYWN0KEBhcmd1bWVudHMsIDIpOyB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBIZWxwZXIgZm9yIGRhdGVQaWNrZXIgYmFja2dyb3VuZCB3aXRoIGJvcmRlclxyXG4uYmctYm9yZGVyKEBiYWNrZ3JvdW5kLCBAYm9yZGVyKSB7XHJcbiAgYmFja2dyb3VuZDogQGJhY2tncm91bmQ7XHJcbiAgLmJvcmRlcihAYm9yZGVyKTtcclxufVxyXG5cclxuLmJvcmRlcihAY29sb3IpIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3I7XHJcbn1cclxuXHJcbi5yZW1vdmUtYmctYm9yZGVyKCkge1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgYm9yZGVyOiBub25lO1xyXG59XHJcblxyXG4vLyBIZWxwZXIgZm9yIGNyb3NzLWJyb3dzZXIgZmxleCBwcm9wZXJ0aWVzXHJcbi5kaXNwbGF5KEB0eXBlOiBpbml0aWFsKSB7XHJcbiAgZGlzcGxheTogQHR5cGU7XHJcbn1cclxuLmRpc3BsYXkoQHR5cGUpIHdoZW4gKEB0eXBlID0gZmxleCkge1xyXG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICBkaXNwbGF5OiAtbW96LWZsZXg7XHJcbiAgZGlzcGxheTogLW1zLWZsZXg7XHJcbiAgZGlzcGxheTogZmxleDtcclxufVxyXG4uZGlzcGxheShAdHlwZSkgd2hlbiAoQHR5cGUgPSBpbmxpbmUtZmxleCkge1xyXG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7XHJcbiAgZGlzcGxheTogLW1vei1pbmxpbmUtZmxleDtcclxuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXg7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbn1cclxuXHJcbi5mbGV4LWRpcmVjdGlvbihAdmFsKSB7XHJcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogQHZhbDtcclxuICAtbW96LWZsZXgtZGlyZWN0aW9uOiBAdmFsO1xyXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogQHZhbDtcclxuICBmbGV4LWRpcmVjdGlvbjogQHZhbDtcclxufVxyXG5cclxuLy8gU2V0IGNyb3NzLWJyb3dzZXIgb3BhY2l0eVxyXG4ub3BhY2l0eShAb3BhY2l0eTogMSkge1xyXG4gIEBmaWx0ZXI6IDEwMCpAb3BhY2l0eTtcclxuICBvcGFjaXR5OiBAb3BhY2l0eTtcclxuICAtbW96LW9wYWNpdHk6IEBvcGFjaXR5O1xyXG4gIC13ZWJraXQtb3BhY2l0eTogQG9wYWNpdHk7XHJcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PUBmaWx0ZXIpO1xyXG59XHJcblxyXG4vLyBIZWxwZXIgZm9yIHNldHRpbmcgYm90aCBtYXJnaW4gYW5kIHBhZGRpbmdcclxuLm1hcmdpbi1wYWRkaW5nKEBtYXJnaW46IDAsIEBwYWRkaW5nOiAwKSB7XHJcbiAgbWFyZ2luOiBAbWFyZ2luO1xyXG4gIHBhZGRpbmc6IEBwYWRkaW5nO1xyXG59XHJcblxyXG4vLyBIZWxwZXIgZm9yIG1pbiBhbmQgbWF4IGhlaWdodFxyXG4ubWluLW1heC1oZWlnaHQoQG1pbiwgQG1heCkge1xyXG4gIG1pbi1oZWlnaHQ6IEBtaW47XHJcbiAgbWF4LWhlaWdodDogQG1heDtcclxufVxyXG5cclxuLy8gSGVscGVyIGZvciBtYXggc2l6ZVxyXG4ubWF4LXNpemUoQG1heC13aWR0aCwgQG1heC1oZWlnaHQpIHtcclxuICBtYXgtaGVpZ2h0OiBAbWF4LWhlaWdodDtcclxuICBtYXgtd2lkdGg6IEBtYXgtd2lkdGg7XHJcbn1cclxuXHJcbi5taW4tc2l6ZShAbWluLXdpZHRoLCBAbWluLWhlaWdodCkge1xyXG4gIG1pbi13aWR0aDogQG1pbi13aWR0aDtcclxuICBtaW4taGVpZ2h0OiBAbWluLWhlaWdodDtcclxufVxyXG5cclxuLy8gSGVscGVyIGZvciBsb2FkZXIgYW5pbWF0aW9uXHJcbi5hbmltYXRpb24oQGFuaW1hdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBAYW5pbWF0aW9uO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBAYW5pbWF0aW9uO1xyXG4gIC1vLWFuaW1hdGlvbjogQGFuaW1hdGlvbjtcclxuICBhbmltYXRpb246IEBhbmltYXRpb247XHJcbn1cclxuXHJcbi5hbmltYXRpb24tZGVsYXkoQGRlbGF5KSB7XHJcbiAgYW5pbWF0aW9uLWRlbGF5OiBAZGVsYXk7XHJcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiBAZGVsYXk7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IEBkZWxheTtcclxuICAtbW96LWFuaW1hdGlvbi1kZWxheTogQGRlbGF5O1xyXG59XHJcblxyXG4vLyBIZWxwZXIgZm9yIGFwcGVhcmFuY2VcclxuLmFwcGVhcmFuY2UoQGFwcGVhcmFuY2U6IG5vbmUpIHtcclxuICBhcHBlYXJhbmNlOiBAYXBwZWFyYW5jZTtcclxuICAtbW96LWFwcGVhcmFuY2U6IEBhcHBlYXJhbmNlO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogQGFwcGVhcmFuY2U7XHJcbn1cclxuXHJcbi8vIERyYXcgYW4gYXJyb3cgdXNpbmcgQ1NTXHJcbi8vIEBzaXplIFRoZSBzaXplIG9mIHRoZSBhcnJvd1xyXG4vLyBAY29sb3IgVGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGFycm93XHJcbi8vIEBzaXplIFRoZSBvcmllbnRhdGlvbiBvZiB0aGUgdGlwIGFycm93OiB0b3AsIGJvdHRvbSwgbGVmdCwgcmlnaHRcclxuLmRyYXctYXJyb3coQHNpemU7IEBjb2xvcjsgQHNpZGUpIHtcclxuICBib3JkZXI6IEBzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xyXG59XHJcbi5kcmF3LWFycm93KEBzaXplOyBAY29sb3I7IHRvcCkge1xyXG4gIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQGNvbG9yO1xyXG59XHJcbi5kcmF3LWFycm93KEBzaXplOyBAY29sb3I7IGJvdHRvbSkge1xyXG4gIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgYm9yZGVyLXRvcC1jb2xvcjogQGNvbG9yO1xyXG59XHJcbi5kcmF3LWFycm93KEBzaXplOyBAY29sb3I7IGxlZnQpIHtcclxuICBib3JkZXItbGVmdDogbm9uZTtcclxuICBib3JkZXItcmlnaHQtY29sb3I6IEBjb2xvcjtcclxufVxyXG4uZHJhdy1hcnJvdyhAc2l6ZTsgQGNvbG9yOyByaWdodCkge1xyXG4gIGJvcmRlci1yaWdodDogbm9uZTtcclxuICBib3JkZXItbGVmdC1jb2xvcjogQGNvbG9yO1xyXG59IiwiLyoqXG4gKiA0UFNBIEhGLUpTIEZyYW1ld29yayAtIERlZmF1bHQgQ1NTIGluZGVwZW5kZW50IG9mIGRldmljZSBhbmQgdGhlbWUgZm9yIGFwcCBiYXNlIGNvbXBvbmVudHNcbiAqXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgJERhdGVUaW1lOiA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5AaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG5cbi5oZi1hcHAtdmlldy1idXN5LWluZGljYXRvciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAuc2l6ZSgxMDAlKTtcbiAgICAudHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLC01MCUpKTtcbn0iLCIvKipcbiAqIFN0YW5kYXJkIGF2YXRhciBzdHlsZVxuICovXG5AaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG5cbkBoZi1hdmF0YXItc2l6ZTogMTAwJTtcblxuLmhmLWF2YXRhciB7XG5cdCYtcHJldmlldyB7XG5cdFx0cGFkZGluZzowIDEwcHg7XG5cdFx0LmlubGluZUJsb2NrVmVydGljYWxUb3AoKTtcblx0fVxuXG5cdCYtY2FwdGlvbiB7XG5cdFx0LmlubGluZUJsb2NrVmVydGljYWxUb3AoKTtcblx0fVxuXG5cdCYtaW1hZ2Uge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IEBoZi1hdmF0YXItc2l6ZSBAaGYtYXZhdGFyLXNpemU7XG5cdH1cblxuXHQmLWJsdXIge1xuXHRcdC5ib3gtc2l6aW5nKCk7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOkBoZi1hdmF0YXItc2l6ZTtcblx0XHRoZWlnaHQ6QGhmLWF2YXRhci1zaXplO1xuXHRcdGJvcmRlcjogMCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuNSk7XG5cdH1cblxuXHQmLXNlbGVjdG9yIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdH1cbn0iLCIvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBDU1MgaW5kZXBlbmRlbnQgb2YgZGV2aWNlIGFuZCB0aGVtZSBmb3IgYnV0dG9uc1xuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6IDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xuXG4uaGYtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAudGV4dC1vdmVyZmxvdygtby1lbGxpcHNpcy1sYXN0bGluZSk7XG5cbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAmJi1idXN5IHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZi1idXR0b24tc2V0ICYge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuIiwiLyoqXG4gKiA0UFNBIEhGLUpTIEZyYW1ld29yayAtIERlZmF1bHQgQ1NTIGluZGVwZW5kZW50IG9mIGRldmljZSBmb3IgY2hhcnQgcGFja2FnZVxuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6ICQgNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqL1xuXG5AaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG5AaW1wb3J0IChyZWZlcmVuY2UpICdfY29sb3JzJztcblxuLmhmLWNhcHRpb257XG5cdGJvZHkgJi1lbGxpcHNpcy1kZWZhdWx0e1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0d2hpdGUtc3BhY2U6bm93cmFwO1xuXHRcdC50ZXh0LW92ZXJmbG93KCk7XG5cdH1cblxuXHQmLW11bHRpbGluZXtcblx0XHQmLWVsbGlwc2lze1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDFlbTtcblx0XHR9XG5cblx0XHQmLWludGVybmFsLWVsbGlwc2lzIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMWVtO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMC4yZW07XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0fVxuXHR9XG5cblx0Ji1lbGxpcHNpcy1pbnRlcm5hbC10b2dnbGUtY29udHJvbHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGNvbG9yOiAjMDY0NUFEO1xuXG5cdFx0Jjpob3Zlcntcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxuXG5cdCYtaW50ZXJuYWx7XG5cdFx0Ji10b2dnbGUtY29udGFpbmVyIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGhlaWdodDogMS41ZW07XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWJhc2Utd2hpdGU7XG5cdFx0XHQuZXhwYW5kZWQgPiAmIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG59IiwiLyoqXG4gKiA0UFNBIEhGLUpTIEZyYW1ld29yayAtIERlZmF1bHQgYmFzZSBDU1MgaW5kZXBlbmRlbnQgb2YgZGV2aWNlIGZvciB3b3Jrc3BhY2VcbiAqXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgJERhdGVUaW1lOiA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5cbi8qIERlZmF1bHQgQ2Fyb3VzZWwgc3R5bGUgKi9cblxuQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xuQGltcG9ydCAocmVmZXJlbmNlKSAnX2NvbG9ycyc7XG5cbi5oZi1jYXJvdXNlbCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0LmJveC1zaXppbmcoYm9yZGVyLWJveCk7XG5cblx0b3V0bGluZTogbm9uZTsgLyogaGlkZSB0aGUgJ2ZvY3VzJyBib3JkZXI7IHRoZSBzY3JvbGwgcGFuZSBpcyBmb2N1c2FibGUgaW4gb3JkZXIgdG8gcmVjZWl2ZSBrZXkgZXZlbnRzOiBVUCwgRE9XTiwgUEFHRVVQIGV0Yy4qL1xuXHRwYWRkaW5nOiAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdGN1cnNvcjogZGVmYXVsdDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdCYgPiAuaGYtbGlzdC1jb250YWluZXIge1xuXHRcdC5ib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXHRcdHotaW5kZXg6IDA7XG5cdH1cblxuXHQmID4gLmhmLXNjcm9sbGVyIHtcblx0XHQubWF4LXNpemUoMTAwJSwgMTAwJSk7XG5cdFx0ei1pbmRleDogMDtcblx0fVxuXG5cdC8qIGhvcml6b250YWwgc2Nyb2xsYmFyICovXG5cdCYgPiAuaGYtc2Nyb2xsZXIgPiAuaGYtc2Nyb2xsYmFyLWhvcml6b250YWwge1xuXHRcdGhlaWdodDogMDtcblxuXHRcdC8qIHNldCBvdmVyZmxvdyB0byAndmlzaWJsZScgc28gdGhhdCB0aGUgbmF2aWdhdGlvbiBidXR0b25zIHdpbGwgYmUgdmlzaXNibGUgZXZlbiBpZiB0aGUgaGVpZ2h0IGlzIDAgKi9cblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0XHQudmVydGljYWxDZW50ZXJXaXRoVHJhbnNmb3JtKCk7XG5cblx0XHQ+IC5oZi1zY3JvbGxiYXItbmF2LWJ0biB7XG5cdFx0XHQudHJhbnNmb3JtKHRyYW5zbGF0ZSgwJSwgLTUwJSkpO1xuXHRcdH1cblx0fVxuXG5cdC8qIHZlcnRpY2FsIHNjcm9sbGJhciAqL1xuXHQmID4gLmhmLXNjcm9sbGVyID4gLmhmLXNjcm9sbGJhci12ZXJ0aWNhbCB7XG5cdFx0d2lkdGg6IDA7XG5cblx0XHQvKiBzZXQgb3ZlcmZsb3cgdG8gJ3Zpc2libGUnIHNvIHRoYXQgdGhlIG5hdmlnYXRpb24gYnV0dG9ucyB3aWxsIGJlIHZpc2lzYmxlIGV2ZW4gaWYgdGhlIGhlaWdodCBpcyAwICovXG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cblx0XHQvKiB0b2RvOiBob3Jpem9udGFsIGNlbnRlciAqL1xuXHR9XG5cblx0LyogbG9hZGVyICovXG5cdC5oZi1saXN0LWxvYWRlciB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LyogZXJyb3IgKi9cblx0Ji5oZi1saXN0LWVycm9yIHtcblx0XHRtaW4taGVpZ2h0OiA2MHB4O1xuXG5cdFx0JiA+IC5oZi1zY3JvbGxlciB7XG5cdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0fVxuXG5cdFx0LmhmLWxpc3QtZXJyb3Ige1xuXHRcdFx0Ji1pbmRpY2F0b3Ige1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItYmFzZS13aGl0ZTtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDVweDtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHQuYm9yZGVyLXJhZGl1cyg4cHgpO1xuXHRcdFx0fVxuXG5cdFx0XHQmLW1lc3NhZ2Uge1xuXHRcdFx0XHQucG9zaXRpb24oYXV0bzsgMDsgNXB4OyAwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmhmLWNhcm91c2VsLWl0ZW0ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdC5ib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0JiYtc2VsZWN0ZWQge1xuXHRcdC50cmFuc2Zvcm0oc2NhbGUoMS4yKSk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0bWFyZ2luOiAtM3B4O1xuXHR9XG59IiwiLyoqXHJcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBiYXNlIENTUyBpbmRlcGVuZGVudCBvZiBkZXZpY2UgZm9yIHdvcmtzcGFjZVxyXG4gKlxyXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgMjAxNzogNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICovXHJcblxyXG4vKiBEZWZhdWx0IENpcmN1bGFyIHByb2dyZXNzIHN0eWxlICovXHJcblxyXG5AaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XHJcbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ19jb2xvcnMnO1xyXG5cclxuQGNpcmN1bGFyLXByb2dyZXNzLXNpemUteHNtYWxsOiAxNnB4O1xyXG5AY2lyY3VsYXItcHJvZ3Jlc3Mtc2l6ZS1zbWFsbDogMjRweDtcclxuQGNpcmN1bGFyLXByb2dyZXNzLXNpemUtbWVkaXVtOiAzMnB4O1xyXG5AY2lyY3VsYXItcHJvZ3Jlc3Mtc2l6ZS1sYXJnZTogNDhweDtcclxuQGNpcmN1bGFyLXByb2dyZXNzLXNpemUteGxhcmdlOiA5NnB4O1xyXG5cclxuQGNpcmN1bGFyLXByb2dyZXNzLXZhbHVlLWNvbG9yOiBAY29sb3ItYmFzZS13aGl0ZTtcclxuQGNpcmN1bGFyLXByb2dyZXNzLW1ldGVyLWNvbG9yOiBmYWRlKEBjb2xvci1iYXNlLXdoaXRlLCAyMCUpO1xyXG5cclxuLmhmLXByb2dyZXNzLWNpcmN1bGFye1xyXG4gIC5jZW50ZXJXaXRoVHJhbnNmb3JtKCk7XHJcblxyXG4gIHN2ZyB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gIH1cclxuXHJcbiAgJi12YWx1ZSB7XHJcbiAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1vdXQgMC4zcztcclxuICB9XHJcblxyXG4gICYtbWV0ZXIsICYtdmFsdWUgeyBmaWxsOiBub25lOyB9XHJcbiAgJi1tZXRlciB7IHN0cm9rZTogQGNpcmN1bGFyLXByb2dyZXNzLW1ldGVyLWNvbG9yOyB9XHJcbiAgJi12YWx1ZSB7IHN0cm9rZTogQGNpcmN1bGFyLXByb2dyZXNzLXZhbHVlLWNvbG9yOyB9XHJcblxyXG4gICYtaW5kZXRlcm1pbmF0ZXtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvLyA9PT09PT09PT09PT0gU2l6ZXNcclxuICAmLXhzbWFsbHtcclxuICAgICYsICYgPiBjYW52YXMge1xyXG4gICAgICAuc2l6ZShAY2lyY3VsYXItcHJvZ3Jlc3Mtc2l6ZS14c21hbGwpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLXNtYWxse1xyXG4gICAgJiwgJiA+IGNhbnZhcyB7XHJcbiAgICAgIC5zaXplKEBjaXJjdWxhci1wcm9ncmVzcy1zaXplLXNtYWxsKTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1tZWRpdW17XHJcbiAgICAmLCAmID4gY2FudmFzIHtcclxuICAgICAgLnNpemUoQGNpcmN1bGFyLXByb2dyZXNzLXNpemUtbWVkaXVtKTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1sYXJnZXtcclxuICAgICYsICYgPiBjYW52YXMge1xyXG4gICAgICAuc2l6ZShAY2lyY3VsYXItcHJvZ3Jlc3Mtc2l6ZS1sYXJnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYteGxhcmdle1xyXG4gICAgJiwgJiA+IGNhbnZhcyB7XHJcbiAgICAgIC5zaXplKEBjaXJjdWxhci1wcm9ncmVzcy1zaXplLXhsYXJnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiIC8qKlxuICogNFBTQSBIRi1KUyBGcmFtZXdvcmsgLSBEZWZhdWx0IENTUyBpbmRlcGVuZGVudCBvZiB0aGVtZSBhbmQgZGV2aWNlIGZvciBjb250YWluZXJzXG4gKlxuICogQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpICREYXRlVGltZTogJCA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5cbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG5cbi5oZi1ncmF2aXR5LXZlcnRpY2FsLXN0YWNrLWNvbnRhaW5lciB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG4gICAgJi1pdGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbn1cblxuIC8qIEZPUk0gUk9XICovXG4gLmhmLWZvcm0tcm93IHtcbiAgIGNsZWFyOiBib3RoO1xuICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgJi1pdGVtcyB7XG4gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICBmbG9hdDogbGVmdDtcbiAgIH1cblxuICAgJi1pdGVtcy1ob3Jpem9udGFsIC5oZi1mb3JtLWZpZWxkLWJhc2UtY29tcG9uZW50IHtcbiAgICAgZmxvYXQ6IGxlZnQ7XG4gICB9XG5cbiAgICYgLmhmLWZvcm0tZmllbGQtbGFiZWwtbGVmdCB7XG4gICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICB9XG5cbiAgICYgLmhmLWZvcm0tZmllbGQtaGludC1yaWdodCB7XG4gICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgd2lkdGg6IDkwcHg7XG4gICB9XG4gfVxuXG4gLyoqKioqKioqXG4gICoqIE5FVyBTUEVDU1xuICAqKioqKioqKlxuICAqL1xuXG4gLyogQ29tbW9uIENTUyBwcm9wZXJ0aWVzIGZvciBhbGwgY29udGFpbmVyIHR5cGVzICovXG4gLmhmLWdyYXZpdHktdmVydGljYWwtc3RhY2stY29udGFpbmVyIHtcblx0IHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0IG91dGxpbmU6IG5vbmU7XG5cdCAvKm92ZXJmbG93OmhpZGRlbjsqL1xuIH1cblxuIC5oZi1ncmF2aXR5LXZlcnRpY2FsLXN0YWNrLWNvbnRhaW5lci1jb250ZW50IHtcblx0IGhlaWdodDogYXV0bztcblx0IG1heC1oZWlnaHQ6IDEwMCU7XG5cdCBvdmVyZmxvdzogaGlkZGVuO1xuIH0iLCIvKipcbiogNFBTQSBIRi1KUyBGcmFtZXdvcmsgLSBEZWZhdWx0IENTUyBpbmRlcGVuZGVudCBvZiBkZXZpY2UgZm9yIGRhdGUgcGlja2VyXG4qXG4qIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6IDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qL1xuXG5AaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG5AaW1wb3J0IChyZWZlcmVuY2UpICdfY29sb3JzJztcbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ19jb25zdCc7XG5cbi5oZi1jYWxlbmRhciB7XG4gICAgJixcbiAgICAmIHRoLFxuICAgICYgdGQge1xuICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICB9XG5cbiAgICAmLW1vbnRoeWVhciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbiAgICAmIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAuYmctYm9yZGVyKEBjb2xvci1iYXNlLXdoaXRlLCBAY29sb3ItZ3JheTY5KTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5NDI7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cblxuICAgICYgdGgge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJiB0ZCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLnNpemUoMzZweCk7XG4gICAgfVxuXG4gICAgJiB0Ym9keSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICAgJiB0ciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItYmFzZS13aGl0ZTtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yLWJhc2UtbGlnaHRza3libHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiB0aGVhZCB0ciB7XG4gICAgICAgIGhlaWdodDogMzFweDtcbiAgICB9XG5cbiAgICAmIHRyIHtcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcXDAwYTBcIjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtaGVhZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgJiAuaGYtY2FsZW5kYXItYnRuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1nb29nLXVpLWRhdGVwaWNrZXItYXJyb3dzLnBuZycpO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAuc2l6ZSg1cHgsIDhweCk7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiB0ZCB7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSAuaGYtY2FsZW5kYXItYnRuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1cHggMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxN3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiBidXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJi1kYXRlIHtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAuYm9yZGVyKEBjb2xvci1iYXNlLXdoaXRlKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIC5ib3JkZXItcmFkaXVzKDk5cHgpO1xuICAgICAgICAgICAgLmJnLWJvcmRlcihAY29sb3ItYmFzZS1saWdodHNreWJsdWUsIEBjb2xvci1iYXNlLWRhcmtkZWVwc2VhKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtd2RheSB7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICB9XG5cbiAgICAmLW90aGVyLW1vbnRoIHtcbiAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5NjU7XG4gICAgfVxuXG4gICAgJi1zZWxlY3RlZCB7XG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDk5cHgpO1xuICAgICAgICBjb2xvcjogQGNvbG9yLWJhc2Utd2hpdGU7XG4gICAgICAgIC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtZGFya2RlZXBzZWEsIEBjb2xvci1iYXNlLWRhcmtkZWVwc2VhMik7XG4gICAgfVxuXG4gICAgJi1zZWxlY3RlZDpob3ZlciB7XG4gICAgICAgIC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtZGFya2RlZXBzZWEyLCBAY29sb3ItYmFzZS1kYXJrZGVlcHNlYTMpO1xuICAgIH1cblxuICAgICYtdG9kYXkge1xuICAgICAgICAuYm9yZGVyLXJhZGl1cyg5OXB4KTtcbiAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5Mjc7XG4gICAgICAgIC5iZy1ib3JkZXIoQGNvbG9yLWdyYXk5NywgQGNvbG9yLWdyYXk4Nyk7XG5cbiAgICAgICAgJi5oZi1jYWxlbmRhci1zZWxlY3RlZCB7XG4gICAgICAgICAgICBjb2xvcjogQGNvbG9yLWJhc2Utd2hpdGU7XG4gICAgICAgICAgICAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWRhcmtkZWVwc2VhLCBAY29sb3ItYmFzZS1kYXJrZGVlcHNlYTIpO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWRhcmtkZWVwc2VhMiwgQGNvbG9yLWJhc2UtZGFya2RlZXBzZWEzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmJnLWJvcmRlcihAY29sb3ItZ3JheTk3LCBAY29sb3ItYmFzZS1kYXJrZGVlcHNlYSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWZvb3Qge1xuICAgICAgICBoZWlnaHQ6IDdweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWJhc2Utd2hpdGU7XG4gICAgICAgICYgdGQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyJjpiZWZvcmUsIHRyJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLXNlcGFyYXRvciB0ZCB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yLWJhc2Utd2hpdGU7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgIH1cblxuICAgIHRyJi1zZXBhcmF0b3I6YmVmb3JlLCB0ciYtc2VwYXJhdG9yOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgfVxuXG4gICAgJi1zZXBhcmF0b3ItZGl2IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBAY29sb3ItYmFzZS1saWdodGdyZXkxO1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgfVxuXG4gICAgJi1hcnJvdyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDBweDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwcHg7XG4gICAgICAgIC5wb3NpdGlvbigtNXB4IDdweCk7XG4gICAgICAgIC5zaXplKDdweCk7XG4gICAgICAgIC50cmFuc2Zvcm0ocm90YXRlKDQ1ZGVnKSk7XG4gICAgICAgIC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtbGlnaHRza3libHVlLCBAY29sb3ItZ3JheTY5KTtcbiAgICB9XG59XG5cbi5oZi1mb3JtLWZpZWxkLWRhdGVwaWNrZXItZGlzYWJsZWQgLmhmLWZvcm0tZmllbGQtZGF0ZXBpY2tlci10cmlnZ2VyLWJ1dHRvbi1kaXNhYmxlZHtjdXJzb3I6ZGVmYXVsdCAhaW1wb3J0YW50O30gIiwiLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiAgLVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQGxpY2Vuc2UgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6ICQgNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBAYXV0aG9yIGFsZXhnXG4gKiBAdmVyc2lvbiAkUmV2aXNpb246ICRcbiAqIEBtb2RpZmllZCBNb2RpZmllZCAkRGF0ZVRpbWU6ICQgYnkgJEF1dGhvcjogYWxleGcgJCB3aXRoICRDaGFuZ2U6ICRcbiAqXG4gKlxuICogQGZpbGVvdmVydmlldyAuXG4gKi9cblxuQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xuQGltcG9ydCAocmVmZXJlbmNlKSAnX2NvbG9ycyc7XG5cbi5oZi1kaWFsb2cge1xuICAgIC5ib3gtc2l6aW5nKCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICYtYmFja2dyb3VuZCB7XG4gICAgICAgIC5wb3NpdGlvbigwLCAwLCAwLCAwKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWJhc2UtYmxhY2s7XG4gICAgICAgIG9wYWNpdHk6IC4yO1xuICAgIH1cblxuICAgICYtY29udGVudCB7XG4gICAgICAgIC5kaXNwbGF5KGZsZXgpO1xuICAgICAgICAuZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICAmLWZvb3Rlci1jb250YWluZXIgPiAuaGYtYnV0dG9uLXNldCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICB9XG59IiwiIC8qKlxuICogNFBTQSBIRi1KUyBGcmFtZXdvcmsgLSBEZWZhdWx0IENTUyBpbmRlcGVuZGVudCBvZiBkZXZpY2UgZm9yIGRyYWdnZXIgY29tcG9uZW50XG4gKlxuICogQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpICREYXRlVGltZTogJCA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG4gXG5cbi8qIGRyYWdnZXIgZ2hvc3QgKi9cblxuIEBpbXBvcnQgKHJlZmVyZW5jZSkgJ191dGlsJztcbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfY29sb3JzJztcblxuLmhmLWZ4LWRyYWdnZXJ7XG5cdCYtZ2hvc3Qge1xuXHRcdC5vcGFjaXR5KC43NSk7XG5cdFx0LmJveC1zaGFkb3coMCAwIDVweCA1cHggQGNvbG9yLWdyYXk1Myk7XG5cdH1cblxuXHQvKiB0aGUgdGFyZ2V0ICh3aGlsZSBkcmFnZ2VkKSAqL1xuXHQmLWRyYWdnZWQge1xuXHRcdC5vcGFjaXR5KC4yNSk7XG5cdH1cbn0iLCIvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBDU1MgaW5kZXBlbmRlbnQgb2YgZGV2aWNlIGZvciBmaWxlIGNvbXBvbmVudHMuXG4gKlxuICogQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpICREYXRlVGltZTogJCA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5cbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ191dGlsJztcbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ19jb2xvcnMnO1xuQGltcG9ydCAocmVmZXJlbmNlKSAnX2NvbnN0JztcblxuLmhmLWZpbGUtbGlzdC1pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmLW5hbWUsICYtc2l6ZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgICYtc2l6ZSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAmLXByb2dyZXNzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgICYtcHJvZ3Jlc3MgLmhmLXByb2dyZXNzLWJhci10aHVtYiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjb2xvcjogQGNvbG9yLWJhc2UtZGFya2dyZWVuMTtcbiAgICB9XG5cbiAgICAuaGYtYnV0dG9uJi1kZWxldGUge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1oZi1maWxlLWxpc3QtaXRlbS1kZWxldGUucG5nJyk7XG4gICAgICAgIGJvcmRlci13aWR0aDogMHB4O1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDBweCk7XG4gICAgICAgIC5yZW1vdmUtYm94LXNoYWRvdygpO1xuICAgIH1cblxuICAgIC5oZi1idXR0b24mLWRlbGV0ZS5oZi1idXR0b24taG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBkYXRhLXVyaSgnQHt1cmxfbGV2ZWwxX3BhdGh9aGYtZmlsZS1saXN0LWl0ZW0tZGVsZXRlLWhvdmVyLnBuZycpO1xuICAgIH1cbn0iLCIvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBDU1MgaW5kZXBlbmRlbnQgb2YgZGV2aWNlIGZvciBmb3JtIGZpbGUgZWxlbWVudHNcbiAqXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgJERhdGVUaW1lOiAkIDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuLyogRmlsZSBMaXN0ICovXG5cbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ191dGlsJztcbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ19jb2xvcnMnO1xuXG4uaGYtZm9ybWZpbGUtZmlsZWxpc3Qge1xuXHQmLWxpc3Qge1xuXHRcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0XHRtYXJnaW46IDBweDtcblx0XHRwYWRkaW5nOiAwcHg7XG5cdH1cblxuXHQmLWxpc3RpdGVtIHtcblx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luOiA1cHggMHB4IDBweCAycHg7XG5cdFx0cGFkZGluZzogMnB4IDJweCAycHggMnB4O1xuXHRcdGJhY2tncm91bmQ6IEBjb2xvci1ncmF5ODE7XG5cdFx0Zm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdFx0LmJvcmRlcihAY29sb3ItYmFzZS1ibGFjayk7XG5cdFx0Lm1hcmdpbi1wYWRkaW5nKDVweCAwIDAgMnB4LCAycHgpO1xuXG5cdFx0LyogRmlsZSBpdGVtIGxhYmVsIGZvcm1hdHRpbmcgKi9cblx0XHQmLW5hbWUge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRmb250LXNpemU6IDExcHg7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdGNvbG9yOiBAY29sb3ItYmFzZS1ibGFjaztcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHQudGV4dC1vdmVyZmxvdygpO1xuXHRcdFx0Lm1hcmdpbi1wYWRkaW5nKCk7XG5cdFx0fVxuXG5cdFx0Ji10eXBlIHtcblx0XHRcdGZvbnQtc2l6ZTogMTBweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0XHRjb2xvcjogQGNvbG9yLWdyYXkzODtcblx0XHR9XG5cblx0XHQmLXNpemUge1xuXHRcdFx0Zm9udC1zaXplOiAxMXB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdGNvbG9yOiBAY29sb3ItZ3JheTEzO1xuXHRcdH1cblxuXHRcdCYtcHJvZ3Jlc3NiYXIge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogMTAlO1xuXHRcdFx0Lm1hcmdpbi1wYWRkaW5nKDVweCA1cHggMCA1cHgsIDApO1xuXG5cdFx0XHQmIC5wcm9ncmVzcy1iYXItaG9yaXpvbnRhbCB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYtcmVtb3ZlYnRuIHtcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdGZvbnQtc2l6ZTogMTBweDtcblx0XHRcdGNvbG9yOiBAY29sb3ItZ3JheTI3O1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHQucmVtb3ZlLWJnLWJvcmRlcigpO1xuXHRcdFx0Lm1hcmdpbi1wYWRkaW5nKCk7XG5cdFx0fVxuXHR9XG59XG5cblx0LyogRmlsZSBEcm9wIFpvbmUgKi9cblx0LmhmLWZvcm1maWxlLWZpbGVkcm9wem9uZSB7XG5cdFx0Lm1hcmdpbi1wYWRkaW5nKDVweCw1cHgpO1xuXHRcdC5yZW1vdmUtYmctYm9yZGVyKCk7XG5cdFx0Ji1vdmVybGF5IHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6IDk5O1xuXHRcdH1cblxuXHRcdCYtZHJvcGFycm93IHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoTEFBc0FJQUJBTnJhMnYvLy95SDVCQUVBQUFFQUxBQUFBQUFzQUN3QUFBSnhqSStweSswUDR3TzAyZ3VreEx6cTJIVWZGSExqVkY2bms2b3IwMW92SEZQelV0dDNrbWM3MHZzQmM4SkRzQmc0RnBWQzVzKzVnOTZrTXlxdGgzVVpzMXdjMS9xdG9jSWhFTm0wT2NzK2F0MUlYUTFIdTA4czB2b1NJN2VsUGEvczk0Y1I2TFZHcUdCNGlPaWoyT2lZVUFBQU93PT0nKTtcblx0XHRcdC5tYXJnaW4tcGFkZGluZygwIGF1dG8sIDApO1xuXHRcdFx0LnNpemUoNDRweCwgNDRweCk7XG5cdFx0fVxuXG5cdFx0Ji1tYXJrZXIge1xuXHRcdFx0Ym9yZGVyOiAycHggZGFzaGVkO1xuXHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdGJvcmRlci1jb2xvcjogQGNvbG9yLWdyYXk2Nztcblx0XHRcdC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogQGNvbG9yLWdyYXk5NDtcblx0XHRcdC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogcmdiYSgyNDAsIDI0MCwgMjQwLCAwLjcpO1xuXHRcdFx0LnNpemUoMTAwJSk7XG5cdFx0fVxuXG5cdFx0Ji1ob3ZlciAmLW1hcmtlciB7XG5cdFx0XHRib3JkZXItY29sb3I6IEBjb2xvci1iYXNlLWJsYWNrO1xuXHRcdH1cblxuXHRcdCYtdmVydGljYWwtd3JhcHBlciB7XG5cdFx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRcdC5zaXplKDEwMCUpO1xuXHRcdH1cblxuXHRcdCYtY29udGVudCB7XG5cdFx0XHRmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0XHRcdGZvbnQtc2l6ZTogMzZweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRjb2xvcjogQGNvbG9yLWdyYXkzMztcblx0XHRcdC5zaXplKDEwMCUpO1xuXHRcdH1cblxuXHRcdCYtaG92ZXIgJi1jb250ZW50IHtcblx0XHRcdGNvbG9yOiBAY29sb3ItYmFzZS1ibGFjaztcblx0XHR9XG5cdH0iLCIvKipcbiogNFBTQSBIRi1KUyBGcmFtZXdvcmsgLSBEZWZhdWx0IENTUyBpbmRlcGVuZGVudCBvZiB0aGVtZSBhbmQgZGV2aWNlIGZvciBmb3JtIGVsZW1lbnRzXG4qXG4qIEB2ZXJzaW9uICRSZXZpc2lvbjogIzEgJFxuKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgJERhdGVUaW1lOiAyMDExLzAzLzI5IDE3OjUwOjEyIDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIEBtb2RpZmllZCBNb2RpZmllZCAkRGF0ZVRpbWU6IDIwMTEvMDUvMjQgMTM6MTE6MDIgJCBieSAkQXV0aG9yOiByYWx1Y2EgJCB3aXRoICRDaGFuZ2U6IDgwMzQwICRcbiovXG5cbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ191dGlsJztcbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ19jb2xvcnMnO1xuQGltcG9ydCAocmVmZXJlbmNlKSAnX2NvbnN0JztcblxuLy8gRml4IE1TIElFXG5pbnB1dFt0eXBlPXRleHRdOjotbXMtY2xlYXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAuaGYtZm9ybS1maWVsZCB7XG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDb21tb24gQ1NTIHByb3BlcnRpZXMgZm9yIGZvcm0gRmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgLmJveC1zaXppbmcoKTtcbiAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICBtYXJnaW46IDVweCAwO1xuICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAmLWhpZGRlbiB7XG4gICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgLm1hcmdpbi1wYWRkaW5nKCk7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gQ29tbW9uIENTUyBwcm9wZXJ0aWVzIGZvciBmb3JtIEZpZWxkID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgLyogcmVnaW9uID09PT09PT09PT09PT09PT09IENvbW1vbiBDU1MgcHJvcGVydGllcyBmb3IgZm9ybSBmaWVsZCBWYWx1ZS1XcmFwcGVyID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgJi12YWx1ZS13cmFwcGVyIHtcbiAgICAgICAgIC5kaXNwbGF5KGZsZXgpO1xuICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAubWFyZ2luLXBhZGRpbmcoKTtcbiAgICAgfVxuXG4gICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDb21tb24gQ1NTIHByb3BlcnRpZXMgZm9yIGZvcm0gZmllbGQgVmFsdWUtV3JhcHBlciA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDb21tb24gQ1NTIHByb3BlcnRpZXMgZm9yIGZpZWxkIFZhbHVlLUVkaXRvciA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgICYtdmFsdWUtZWRpdG9yIHtcbiAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgIC5ib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgIC5zaXplKDEwMCUsIGF1dG8pO1xuICAgICAgICAgLm1hcmdpbi1wYWRkaW5nKDAsIDNweCAwKTtcbiAgICAgICAgIC50ZXh0LW92ZXJmbG93KCk7XG4gICAgICAgICB0ZXh0LWluZGVudDogNnB4O1xuXG4gICAgICAgICAmLWhpZGRlbiB7XG4gICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgIH1cbiAgICAgfVxuXG4gICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDb21tb24gQ1NTIHByb3BlcnRpZXMgZm9yIGZpZWxkIFZhbHVlLUVkaXRvciA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDb21tb24gQ1NTIHByb3BlcnRpZXMgZm9yIHJlYWQtb25seSBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuICAgICAmLXZhbHVlLXJlYWQtb25seS1kaXNwbGF5ZXIge1xuICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgIC50ZXh0LW92ZXJmbG93KCk7XG4gICAgIH1cbiAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IENvbW1vbiBDU1MgcHJvcGVydGllcyBmb3IgcmVhZC1vbmx5IGZpZWxkID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgJiAuaGYtbGFiZWwtbGVmdCB7XG4gICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gQ29tbW9uIENTUyBwcm9wZXJ0aWVzIGZvciBMYWJlbCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDb21tb24gQ1NTIHByb3BlcnRpZXMgZm9yIFRyaWdnZXIgZmllbGRzID09PT09PT09PT09PT09PT09ICovXG4gICAgICYtdHJpZ2dlci1lZGl0b3Itd3JhcHBlciB7XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAuYm94LXNpemluZygpO1xuICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgLmZsZXgtZ3JvdygxKTtcbiAgICAgfVxuXG4gICAgICYtdHJpZ2dlci10cmlnZ2VyLWJ1dHRvbiB7XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAuYm94LXNpemluZygpO1xuICAgICAgICAgLmZsZXgtc2hyaW5rKDApO1xuICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICBmb250OiBpbmhlcml0O1xuICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgd2lkdGg6IDJlbTtcbiAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgICAgICAuY2VudGVyV2l0aFRyYW5zZm9ybSgpO1xuICAgICAgICAgfVxuICAgICB9XG5cbiAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IENvbW1vbiBDU1MgcHJvcGVydGllcyBmb3IgVHJpZ2dlciBmaWVsZHMgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gQ29tbW9uIENTUyBwcm9wZXJ0aWVzIGZvciBQaWNrZXIgZmllbGRzID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgJi1waWNrZXItcG9wdXAge1xuICAgICAgICAgLm1pbi1tYXgtaGVpZ2h0KDIwcHgsIDE1MHB4KTtcbiAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgJi1idXN5IHtcbiAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICB9XG5cbiAgICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICAgLm1pbi1tYXgtaGVpZ2h0KGluaGVyaXQsIGluaGVyaXQpO1xuICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgIH1cblxuICAgICAgICAgJiA+IC5oZi1wb3B1cC1jb250ZW50ID4gLmhmLXNlbGVjdG9yID4gLmhmLXNjcm9sbGVyIHtcbiAgICAgICAgICAgICAubWluLW1heC1oZWlnaHQoaW5oZXJpdCwgaW5oZXJpdCk7XG4gICAgICAgICAgICAgLyogc2VlIEhHLTEwOTEzIGFuZCBzY3JvbGxwYW5lLmxlc3MgZm9yIHJlZmVyZW5jZSArXG4gICAgICAgICAgICAgICogSEctMTEwMTMgdG8gc2VlIHdoeSBJIHNldCAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAqL1xuICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgfVxuICAgICB9XG5cbiAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IENvbW1vbiBDU1MgcHJvcGVydGllcyBmb3IgUGlja2VyIGZpZWxkcyA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBEcm9wRG93bkxpc3QgZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cbiAgICAgJi1kcm9wZG93bmxpc3QtZWRpdG9yLXdyYXBwZXIgPiAmLXZhbHVlLWVkaXRvci1oaWRkZW4ge1xuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICB9XG5cbiAgICAgJi1kcm9wZG93bmxpc3QtdmFsdWUtZWRpdG9yIHtcbiAgICAgICAgIC5wb3NpdGlvbigwLCAwLCAwLCAwKTtcblxuICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgcGFkZGluZy1yaWdodDogMCFpbXBvcnRhbnQ7XG4gICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICB9XG5cbiAgICAgJi1kcm9wZG93bmxpc3QtdHJpZ2dlci1idXR0b24ge1xuICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAmLWRpc2FibGVke1xuICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgIH1cbiAgICAgfVxuXG4gICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBEcm9wRG93bkxpc3QgZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gU2VhcmNoIGZpZWxkID09PT09PT09PT09PT09PT09ICovXG4gICAgICYtc2VhcmNoID4gJi1zZWFyY2gtdmFsdWUtZWRpdG9yIHtcbiAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAhaW1wb3J0YW50O1xuICAgICB9XG5cbiAgICAgJi1zZWFyY2gtY2xlYXItdHJpZ2dlci1idXR0b24sXG4gICAgICYtc2VhcmNoLXNlYXJjaC10cmlnZ2VyLWJ1dHRvbiB7XG4gICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICYtZGlzYWJsZWR7XG4gICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgfVxuICAgICB9XG5cbiAgICAgJi1zZWFyY2gtY2xlYXItdHJpZ2dlci1idXR0b24ge1xuICAgICAgICAgd2lkdGg6IDEuNWVtO1xuICAgICB9XG5cbiAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IFNlYXJjaCBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDaGVja2FibGUgKENoZWNrYm94ICYgUmFkaW8pIGZpZWxkID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgJi1jaGVja2JveCAuaGYtbGFiZWwtbGVmdCxcbiAgICAgJi1yYWRpbyAuaGYtbGFiZWwtbGVmdCB7XG4gICAgICAgICBwYWRkaW5nLXRvcDogM3B4O1xuICAgICB9XG5cbiAgICAgJi1jaGVja2JveC1jb250ZW50LXdyYXBwZXIsXG4gICAgICYtcmFkaW8tY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgIH1cblxuICAgICAmLWNoZWNrYm94LXZhbHVlLXdyYXBwZXIsXG4gICAgICYtcmFkaW8tdmFsdWUtd3JhcHBlciB7XG4gICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICB9XG5cbiAgICAgJi1jaGVja2JveC12YWx1ZS1lZGl0b3IsXG4gICAgICYtcmFkaW8tdmFsdWUtZWRpdG9yIHtcbiAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgIH1cblxuICAgICAmLWNoZWNrYWJsZS1pbnB1dC1sYWJlbCB7XG4gICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gQ2hlY2thYmxlIChDaGVja2JveCAmIFJhZGlvKSBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qKlxuICAgICAgKiBOdW1iZXIgZmllbGQgLSBUTyBCRSBSRU1PVkVEXG4gICAgICAqL1xuXG4gICAgICYtbnVtYmVyLWVkaXRvciYtbnVtYmVyLXdpdGgtYnV0dG9ucyB7XG4gICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICB9XG5cbiAgICAgJi1udW1iZXIgLmhmLWJ1dHRvbiB7XG4gICAgICAgICBwYWRkaW5nOiAycHg7XG4gICAgIH1cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gVGV4dGFyZWEgZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAmLXRleHRhcmVhLXZhbHVlLWVkaXRvciB7XG4gICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICBwYWRkaW5nOiAwIDEzcHggMCAwO1xuICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICAgJi1oaWRkZW4ge1xuICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICB9XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gVGV4dGFyZWEgZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKipcbiAgICAgKiBTbWlsZXlUZXh0YXJlYSBpbnB1dCBmaWVsZFxuICAgICAqL1xuICAgICAmLXNtaWxleXRleHRhcmVhLXZhbHVlLWVkaXRvciB7XG4gICAgICAgICAubWFyZ2luLXBhZGRpbmcoKTtcbiAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICB9XG5cbiAgICAgLyoqXG4gICAgICogQ1NTIGZvciBiYXNlIGZvcm0gRmllbGRcbiAgICAgKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gRm9ybSBmaWVsZCAtIE5vcm1hbCBzdGF0ZSA9PT09PT09PT09PT09PT09PSAqL1xuXG5cbiAgICAgJixcbiAgICAgJi12YWx1ZS13cmFwcGVyLFxuICAgICAmLXZhbHVlLWVkaXRvciB7XG4gICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgfVxuXG4gICAgICYtdmFsdWUtd3JhcHBlciB7XG4gICAgICAgICAuYm9yZGVyKEBjb2xvci1ncmF5NzMpO1xuICAgICB9XG5cbiAgICAgJi12YWx1ZS1lZGl0b3Ige1xuICAgICAgICAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDtcbiAgICAgICAgIC5ib3JkZXItcmFkaXVzKGluaGVyaXQpO1xuICAgICB9XG5cbiAgICAgJi12YWx1ZS1lZGl0b3I6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICAgICAuYm94LXNoYWRvdygwIDAgMCAxMDBweCB0cmFuc3BhcmVudCBpbnNldCk7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gRm9ybSBmaWVsZCAtIE5vcm1hbCBzdGF0ZSA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBGb3JtIGZpZWxkIC0gRm9jdXNlZCBzdGF0ZSA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgICYtdmFsdWUtd3JhcHBlci1mb2N1c2VkIHtcbiAgICAgICAgIC5ib3gtc2hhZG93KDAgMCAycHggcmdiYSg4NSwgMTY5LCAxNSwgMTAwKSk7XG4gICAgIH1cblxuICAgICAmLXZhbHVlLXdyYXBwZXItZm9jdXNlZC1pZSB7XG4gICAgICAgICAuYm9yZGVyKEBjb2xvci1iYXNlLWRhcmtncmVlbjIpO1xuICAgICB9XG5cbiAgICAgJi12YWx1ZS1lZGl0b3I6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyB7XG4gICAgICAgICAuYm94LXNoYWRvdygwIDAgMCAxMDBweCB0cmFuc3BhcmVudCBpbnNldCk7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gRm9ybSBmaWVsZCAtIEZvY3VzZWQgc3RhdGUgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gRm9ybSBmaWVsZCAtIEludmFsaWQgc3RhdGUgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAmLXZhbHVlLXdyYXBwZXItaW52YWxpZC1lcnJvciB7XG4gICAgICAgICAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWNyZWFtLCBAY29sb3ItYmFzZS1kYXJrcmVkMSk7XG4gICAgICAgICAuYm94LXNoYWRvdygwIDAgMnB4IHJnYigyMTUsIDI2LCA5KSk7XG4gICAgIH1cblxuICAgICAmLXZhbHVlLXdyYXBwZXItaW52YWxpZC1lcnJvciYtdmFsdWUtd3JhcHBlci1mb2N1c2VkIHtcbiAgICAgICAgIC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtY3JlYW0sIEBjb2xvci1iYXNlLWRhcmtyZWQxKTtcbiAgICAgICAgIC5ib3gtc2hhZG93KDAgMCA0cHggcmdiKDIxNSwgMjYsIDkpKTtcbiAgICAgfVxuXG5cbiAgICAgJi1lcnJvciB7XG4gICAgICAgICBjb2xvcjogQGNvbG9yLWNvb2xyZWQ1NTtcbiAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgfVxuXG4gICAgICYtZXJyb3JzLXRvb2x0aXAge1xuICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yLWJhc2UtZGFya3JlZDI7XG4gICAgICAgICB6LWluZGV4OiA5OTk5OSFpbXBvcnRhbnQ7XG4gICAgIH1cblxuICAgICAmLWVycm9ycy10b29sdGlwICYtZXJyb3Ige1xuICAgICAgICAgY29sb3I6IEBjb2xvci1iYXNlLWNyZWFtMjtcbiAgICAgfVxuXG4gICAgICYtZXJyb3JzLXRvb2x0aXAgLmhmLXBvcHVwLWFycm93LXJpZ2h0LXRvLWxlZnQge1xuICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBAY29sb3ItYmFzZS1kYXJrcmVkMjtcbiAgICAgfVxuXG4gICAgICYtZXJyb3JzLXRvb2x0aXAgLmhmLXBvcHVwLWFycm93LWxlZnQtdG8tcmlnaHQge1xuICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IEBjb2xvci1iYXNlLWRhcmtyZWQyO1xuICAgICB9XG5cbiAgICAgJi1lcnJvcnMtdG9vbHRpcCAuaGYtcG9wdXAtYXJyb3ctdG9wLXRvLWJvdHRvbSB7XG4gICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBAY29sb3ItYmFzZS1kYXJrcmVkMjtcbiAgICAgfVxuXG4gICAgICYtZXJyb3JzLXRvb2x0aXAgLmhmLXBvcHVwLWFycm93LWJvdHRvbS10by10b3Age1xuICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQGNvbG9yLWJhc2UtZGFya3JlZDI7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gRm9ybSBmaWVsZCAtIEludmFsaWQgc3RhdGUgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gRm9ybSBmaWVsZCAtIERpc2FibGVkICYgUmVhZG9ubHkgc3RhdGVzID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgJi1yZWFkb25seSB7XG4gICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICB9XG5cbiAgICAgJi12YWx1ZS13cmFwcGVyLWRpc2FibGVkLCAmLXZhbHVlLXdyYXBwZXItcmVhZG9ubHkge1xuICAgICAgICAgLmJnLWJvcmRlcihAY29sb3ItZ3JheTk2LCBAY29sb3ItZ3JheTkxKTtcbiAgICAgICAgIC5ib3gtc2hhZG93KDFweCAxcHggMnB4IEBjb2xvci1ncmF5OTYgaW5zZXQpO1xuICAgICB9XG5cbiAgICAgJi12YWx1ZS13cmFwcGVyLWRpc2FibGVkLWllLCAmLXZhbHVlLXdyYXBwZXItcmVhZG9ubHktaWUge1xuICAgICAgICAgLmJnLWJvcmRlcihAY29sb3ItZ3JheTk2LCBAY29sb3ItZ3JheTkxKTtcbiAgICAgICAgIC5ib3gtc2hhZG93KDFweCAxcHggMnB4IEBjb2xvci1ncmF5OTYgaW5zZXQpO1xuICAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5NzM7XG4gICAgIH1cblxuICAgICAmLXZhbHVlLWVkaXRvci1kaXNhYmxlZCxcbiAgICAgJi12YWx1ZS1lZGl0b3ItZGlzYWJsZWQtaWUsXG4gICAgICYtdmFsdWUtZWRpdG9yLXJlYWRvbmx5LFxuICAgICAmLXZhbHVlLWVkaXRvci1yZWFkb25seS1pZSB7XG4gICAgICAgICBjb2xvcjogQGNvbG9yLWdyYXk3MztcbiAgICAgfVxuXG4gICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBGb3JtIGZpZWxkIC0gRGlzYWJsZWQgJiBSZWFkb25seSBzdGF0ZXMgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gQ29tbW9uIENTUyBmb3IgVHJpZ2dlciBmaWVsZHMgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAmLXRyaWdnZXItdHJpZ2dlci1idXR0b24ge1xuICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgfVxuXG4gICAgICYtdHJpZ2dlci10cmlnZ2VyLWJ1dHRvbi1jb250ZW50IHtcbiAgICAgICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCB0cmFuc3BhcmVudDtcbiAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgIH1cblxuICAgICAmLXBpY2tlci1wb3B1cCB7XG4gICAgICAgICAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWxpZ2h0Z3JleTMsIEBjb2xvci1iYXNlLWxpZ2h0Z3JleTIpO1xuICAgICB9XG5cbiAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IENvbW1vbiBDU1MgZm9yIFRyaWdnZXIgZmllbGRzID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgLyogcmVnaW9uID09PT09PT09PT09PT09PT09IENvbWJvQm94ICYgRHJvcERvd25MaXN0IGZpZWxkcyA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgICYtZHJvcGRvd25saXN0LXZhbHVlLXdyYXBwZXIge1xuICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXk5NDtcbiAgICAgfVxuXG4gICAgICYtY29tYm9ib3gtdHJpZ2dlci1idXR0b24tY29udGVudCxcbiAgICAgJi1kcm9wZG93bmxpc3QtdHJpZ2dlci1idXR0b24tY29udGVudCB7XG4gICAgICAgICAuc2l6ZSgxNXB4KTtcblxuICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZGF0YS11cmkoJ0B7dXJsX2xldmVsMV9wYXRofWhmLWZvcm0tZmllbGQtY29tYm9ib3gtdHJpZ2dlci1kZWZhdWx0LWljb24ucG5nJyk7XG4gICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgICB9XG5cbiAgICAgJi1jb21ib2JveC1vcGVuICYtY29tYm9ib3gtdHJpZ2dlci1idXR0b24tY29udGVudCxcbiAgICAgJi1kcm9wZG93bmxpc3Qtb3BlbiAmLWRyb3Bkb3dubGlzdC10cmlnZ2VyLWJ1dHRvbi1jb250ZW50IHtcbiAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1oZi1mb3JtLWZpZWxkLWNvbWJvYm94LXRyaWdnZXItb3Blbi1pY29uLnBuZycpO1xuICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDQwJTtcbiAgICAgfVxuXG4gICAgICYtY29tYm9ib3gtYnVzeSAmLWNvbWJvYm94LXRyaWdnZXItYnV0dG9uLWNvbnRlbnQsXG4gICAgICYtZHJvcGRvd25saXN0LWJ1c3kgJi1kcm9wZG93bmxpc3QtdHJpZ2dlci1idXR0b24tY29udGVudCB7XG4gICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBkYXRhLXVyaSgnQHt1cmxfbGV2ZWwxX3BhdGh9aGYtYnVzeV90aW55LmdpZicpO1xuICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDQwJTtcbiAgICAgfVxuXG4gICAgICYtZHJvcGRvd25saXN0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5NjY7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gQ29tYm9Cb3ggJiBEcm9wRG93bkxpc3QgZmllbGRzID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgLyogcmVnaW9uID09PT09PT09PT09PT09PT09IERhdGVQaWNrZXIgZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAmLWRhdGVwaWNrZXItdHJpZ2dlci1idXR0b24tY29udGVudCB7XG4gICAgICAgICAuc2l6ZSgxMnB4KTtcblxuICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZGF0YS11cmkoJ0B7dXJsX2xldmVsMV9wYXRofWhmLWNhbGVuZGFyLXNwcml0ZS5wbmcnKTtcbiAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gRGF0ZVBpY2tlciBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBTZWFyY2ggZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAmLXNlYXJjaC1zZWFyY2gtdHJpZ2dlci1idXR0b24tY29udGVudCB7XG4gICAgICAgICAuc2l6ZSgyMnB4LCAyNHB4KTtcblxuICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZGF0YS11cmkoXCJAe3VybF9sZXZlbDFfcGF0aH1oZi1mb3JtLWZpZWxkLXNlYXJjaC1pY29uLnBuZ1wiKTtcbiAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01cHggMDtcbiAgICAgfVxuXG4gICAgICYtc2VhcmNoLWJ1c3kgJi1zZWFyY2gtc2VhcmNoLXRyaWdnZXItYnV0dG9uLWNvbnRlbnQge1xuICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZGF0YS11cmkoJ0B7dXJsX2xldmVsMV9wYXRofWhmLWJ1c3lfdGlueS5naWYnKTtcbiAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01cHggMDtcbiAgICAgfVxuXG4gICAgICYtc2VhcmNoLWRpc2FibGVkICYtc2VhcmNoLXNlYXJjaC10cmlnZ2VyLWJ1dHRvbi1jb250ZW50LFxuICAgICAmLXNlYXJjaC1yZWFkb25seSAmLXNlYXJjaC1zZWFyY2gtdHJpZ2dlci1idXR0b24tY29udGVudCB7XG4gICAgICAgICAuc2l6ZSgyMnB4LCAyNHB4KTtcblxuICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTpkYXRhLXVyaShcIkB7dXJsX2xldmVsMV9wYXRofWhmLWZvcm0tZmllbGQtc2VhcmNoLWljb24tZGlzYWJsZWQucG5nXCIpO1xuICAgICB9XG5cbiAgICAgJi1zZWFyY2gtY2xlYXItdHJpZ2dlci1idXR0b24tY29udGVudCB7XG4gICAgICAgICAuc2l6ZSgxMHB4KTtcbiAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKFwiQHt1cmxfbGV2ZWwxX3BhdGh9aGYtZm9ybS1maWVsZC1jbGVhci1pY29uLnBuZ1wiKTtcbiAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgfVxuXG4gICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBTZWFyY2ggZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gQ2hlY2thYmxlIChDaGVja2JveCAmIFJhZGlvKSBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgICYtY2hlY2thYmxlLWlucHV0LWxhYmVsIHtcbiAgICAgICAgIGNvbG9yOiBAY29sb3ItZ3JheTM4O1xuXG4gICAgICAgICAmLWRpc2FibGVkIHtcbiAgICAgICAgICAgICBjb2xvcjogQGNvbG9yLWdyYXk4MDtcbiAgICAgICAgIH1cbiAgICAgfVxuXG4gICAgICYtY2hlY2tib3gtdmFsdWUtd3JhcHBlcixcbiAgICAgJi1yYWRpby12YWx1ZS13cmFwcGVyIHtcbiAgICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgfVxuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBWYWx1ZS1XcmFwcGVyIEZvY3VzZWQgc3RhdGUgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAmLWNoZWNrYm94LXZhbHVlLXdyYXBwZXImLXZhbHVlLXdyYXBwZXItZm9jdXNlZCxcbiAgICAgJi1yYWRpby12YWx1ZS13cmFwcGVyJi12YWx1ZS13cmFwcGVyLWZvY3VzZWQge1xuICAgICAgICAgLnJlbW92ZS1ib3gtc2hhZG93KCk7XG4gICAgIH1cblxuICAgICAmLWNoZWNrYm94LXZhbHVlLXdyYXBwZXImLXZhbHVlLXdyYXBwZXItZm9jdXNlZC1pZSxcbiAgICAgJi1yYWRpby12YWx1ZS13cmFwcGVyJi12YWx1ZS13cmFwcGVyLWZvY3VzZWQtaWUge1xuICAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICB9XG5cbiAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IFZhbHVlLVdyYXBwZXIgRm9jdXNlZCBzdGF0ZSA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBWYWx1ZS1XcmFwcGVyIEludmFsaWQgc3RhdGUgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAmLWNoZWNrYm94LXZhbHVlLXdyYXBwZXImLXZhbHVlLXdyYXBwZXItaW52YWxpZC1lcnJvcixcbiAgICAgJi1yYWRpby12YWx1ZS13cmFwcGVyJi12YWx1ZS13cmFwcGVyLWludmFsaWQtZXJyb3Ige1xuICAgICAgICAgLnJlbW92ZS1ib3gtc2hhZG93KCk7XG4gICAgIH1cblxuXG4gICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBWYWx1ZS1XcmFwcGVyIEludmFsaWQgc3RhdGUgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gVmFsdWUtV3JhcHBlciBSZWFkT25seSBzdGF0ZSA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgICYtY2hlY2tib3gtdmFsdWUtd3JhcHBlciYtdmFsdWUtd3JhcHBlci1kaXNhYmxlZCxcbiAgICAgJi1jaGVja2JveC12YWx1ZS13cmFwcGVyJi12YWx1ZS13cmFwcGVyLXJlYWRvbmx5LFxuICAgICAmLXJhZGlvLXZhbHVlLXdyYXBwZXImLXZhbHVlLXdyYXBwZXItZGlzYWJsZWQsXG4gICAgICYtcmFkaW8tdmFsdWUtd3JhcHBlciYtdmFsdWUtd3JhcHBlci1yZWFkb25seSB7XG4gICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgICAucmVtb3ZlLWJveC1zaGFkb3coKTtcbiAgICAgfVxuXG4gICAgICYtY2hlY2tib3gtdmFsdWUtd3JhcHBlciYtdmFsdWUtd3JhcHBlci1kaXNhYmxlZC1pZSxcbiAgICAgJi1jaGVja2JveC12YWx1ZS13cmFwcGVyJi12YWx1ZS13cmFwcGVyLXJlYWRvbmx5LWllLFxuICAgICAmLXJhZGlvLXZhbHVlLXdyYXBwZXImLXZhbHVlLXdyYXBwZXItZGlzYWJsZWQtaWUsXG4gICAgICYtcmFkaW8tdmFsdWUtd3JhcHBlciYtdmFsdWUtd3JhcHBlci1yZWFkb25seS1pZSB7XG4gICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgICAucmVtb3ZlLWJveC1zaGFkb3coKTtcbiAgICAgfVxuXG4gICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBWYWx1ZS1XcmFwcGVyIFJlYWRPbmx5IHN0YXRlID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgLyogcmVnaW9uID09PT09PT09PT09PT09PT09IENoZWNrYm94IGZpZWxkID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgJi1jaGVja2JveC12YWx1ZS13cmFwcGVyIHtcbiAgICAgICAgIGJhY2tncm91bmQ6IGRhdGEtdXJpKFwiQHt1cmxfbGV2ZWwxX3BhdGh9aGYtY2hlY2tib3gucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50O1xuICAgICAgICAgLnNpemUoMThweCk7XG4gICAgIH1cblxuICAgICAmLWNoZWNrYm94LXZhbHVlLXdyYXBwZXImLXZhbHVlLXdyYXBwZXItZm9jdXNlZCB7XG4gICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zOHB4O1xuICAgICB9XG5cbiAgICAgJi1jaGVja2JveC12YWx1ZS13cmFwcGVyJi12YWx1ZS13cmFwcGVyLWNoZWNrZWQge1xuICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTlweDtcbiAgICAgfVxuXG4gICAgICYtY2hlY2tib3gtdmFsdWUtd3JhcHBlciYtdmFsdWUtd3JhcHBlci1mb2N1c2VkJi12YWx1ZS13cmFwcGVyLWNoZWNrZWQge1xuICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTdweDtcbiAgICAgfVxuXG4gICAgICYtY2hlY2tib3gtdmFsdWUtd3JhcHBlciYtdmFsdWUtd3JhcHBlci1kaXNhYmxlZCxcbiAgICAgJi1jaGVja2JveC12YWx1ZS13cmFwcGVyJi12YWx1ZS13cmFwcGVyLWhvdmVyJi12YWx1ZS13cmFwcGVyLWRpc2FibGVkIHtcbiAgICAgICAgIC8qYmFja2dyb3VuZDogZGF0YS11cmkoXCIuLi9pbWFnZXMvaGYtY2hlY2tib3gtZGlzYWJsZWQucG5nXCIpIDAgMDsqL1xuICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICB9XG5cbiAgICAgJi1jaGVja2JveC12YWx1ZS13cmFwcGVyJi12YWx1ZS13cmFwcGVyLWNoZWNrZWQmLXZhbHVlLXdyYXBwZXItZGlzYWJsZWQsXG4gICAgICYtY2hlY2tib3gtdmFsdWUtd3JhcHBlciYtdmFsdWUtd3JhcHBlci1ob3ZlciYtdmFsdWUtd3JhcHBlci1jaGVja2VkJnZhbHVlLXdyYXBwZXItZGlzYWJsZWQge1xuICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTlweDtcbiAgICAgfVxuXG4gICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDaGVja2JveCBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBSYWRpbyBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgICYtcmFkaW8tdmFsdWUtd3JhcHBlciB7XG4gICAgICAgICBiYWNrZ3JvdW5kOiBkYXRhLXVyaShcIkB7dXJsX2xldmVsMV9wYXRofWhmLXJhZGlvLnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDtcbiAgICAgICAgIC5zaXplKDE4cHgpO1xuXG4gICAgICAgICAmLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1mb2N1c2VkIHtcbiAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zOHB4O1xuICAgICAgICAgfVxuXG4gICAgICAgICAmLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1jaGVja2VkIHtcbiAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xOXB4O1xuICAgICAgICAgfVxuXG4gICAgICAgICAmLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1mb2N1c2VkLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1jaGVja2VkIHtcbiAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01N3B4O1xuICAgICAgICAgfVxuXG4gICAgICAgICAmLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1kaXNhYmxlZCxcbiAgICAgICAgIC5oZi1mb3JtLWZpZWxkLXZhbHVlLXdyYXBwZXItaG92ZXIuaGYtZm9ybS1maWVsZC12YWx1ZS13cmFwcGVyLWRpc2FibGVkIHtcbiAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXRhLXVyaShcIi4uL2ltYWdlcy9oZi1yYWRpby1kaXNhYmxlZC5wbmdcIikgMCAwO1xuICAgICAgICAgfVxuXG4gICAgICAgICAmLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1jaGVja2VkLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1kaXNhYmxlZCxcbiAgICAgICAgICYuaGYtZm9ybS1maWVsZC12YWx1ZS13cmFwcGVyLWhvdmVyLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1jaGVja2VkLmhmLWZvcm0tZmllbGQtdmFsdWUtd3JhcHBlci1kaXNhYmxlZCB7XG4gICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTlweDtcbiAgICAgICAgIH1cblxuICAgICAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IFJhZGlvIGZpZWxkID09PT09PT09PT09PT09PT09ICovXG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gQ2hlY2thYmxlIChDaGVja2JveCAmIFJhZGlvKSBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBQYXNzd29yZCBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgICYtcGFzc3dvcmQtY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgfVxuXG4gICAgICYtcGFzc3dvcmQtc3RyZW5ndGgge1xuICAgICAgICAgJi1iYXIge1xuICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgIC5ib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXG4gICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgfVxuICAgICAgICAgfVxuXG4gICAgICAgICAmLWNhcHRpb24ge1xuICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgIC5ib3gtc2l6aW5nKCk7XG4gICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICB9XG5cbiAgICAgICAgICYtaW5kaWNhdG9yIHtcbiAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAuYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgICAgICAgICAgICAuc2l6ZSg1MCUsIDVweCk7XG4gICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXk5MztcblxuICAgICAgICAgICAgICYtdGh1bWIge1xuICAgICAgICAgICAgICAgICAuc2l6ZSgwLCAxMDAlKTtcblxuICAgICAgICAgICAgICAgICAmLnN0cmVuZ3RoLXZlcnktd2VhayB7XG4gICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWJhc2UtZGFya3JlZDM7XG4gICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAmLnN0cmVuZ3RoLXdlYWsge1xuICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1iYXNlLW9yYW5nZTtcbiAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICYuc3RyZW5ndGgtbWVkaXVtIHtcbiAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItYmFzZS15ZWxsb3cxO1xuICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgJi5zdHJlbmd0aC1zdHJvbmcge1xuICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1iYXNlLWxpZ2h0Z3JlZW4xO1xuICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgJi5zdHJlbmd0aC12ZXJ5LXN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1iYXNlLWRhcmtncmVlbjM7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICB9XG4gICAgICAgICB9XG4gICAgIH1cblxuICAgICAmLXBhc3N3b3JkIHtcbiAgICAgICAgICYtdGlwcy1oZWFkZXIge1xuICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgIGNvbG9yOiBAY29sb3ItYmFzZS1kZWVwc2VhO1xuICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICB9XG5cbiAgICAgICAgICYtdGlwIHtcbiAgICAgICAgICAgICBjb2xvcjogQGNvbG9yLWdyYXk2NjtcbiAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICB9XG5cbiAgICAgICAgICYtdGlwOjpiZWZvcmUge1xuICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgIG1hcmdpbjogMCA4cHggMCAwO1xuICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItZ3JheTY2O1xuICAgICAgICAgICAgIC5zaXplKDhweCk7XG4gICAgICAgICB9XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gUGFzc3dvcmQgZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKiByZWdpb24gPT09PT09PT09PT09PT09PT0gTnVtYmVyIGZpZWxkID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgJi1udW1iZXIgLmhmLWJ1dHRvbiB7XG4gICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICByaWdodDogMDtcbiAgICAgfVxuXG4gICAgICYtbnVtYmVyICYtbnVtYmVyLWRlY3JlbWVudC1idXR0b24ge1xuICAgICAgICAgYm90dG9tOiAxcHg7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gTnVtYmVyIGZpZWxkID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAgLyogcmVnaW9uID09PT09PT09PT09PT09PT09IEZpbGUgZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAmLWZpbGUtY29udGVudCB7XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgLyogSGFjayBmb3IgSUU3IHRvIHNpbXVsYXRlIGRpc3BsYXk6IGlubGluZS1ibG9jayBiZWhhdmlvdXIgKi9cbiAgICAgICAgIHpvb206IDE7XG4gICAgICAgICAqZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgLyogRW5kIG9mIElFNyBoYWNrICovXG4gICAgICAgICBjb2xvcjogQGNvbG9yLWNvb2xyZWQ1NTtcbiAgICAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgfVxuICAgICAmLWZpbGUtYnJvd3NlIHtcbiAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgd2hpdGU7XG4gICAgICAgICBib3JkZXI6MXB4IGRhc2hlZCBAY29sb3ItZ3JheTY3O1xuICAgICAgICAgcGFkZGluZzogM3B4IDJweDtcbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDpAY29sb3ItYmFzZS13aGl0ZTtcbiAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAuc2l6ZSgyMDBweCwgMjBweCk7XG4gICAgICAgICAuYm94LXNoYWRvdygxcHggMXB4IDJweCBAY29sb3ItZ3JheTkwIGluc2V0KTtcbiAgICAgfVxuICAgICAmLWZpbGUtYnJvd3NlLWljb257XG4gICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOmRhdGEtdXJpKFwiQHt1cmxfbGV2ZWwxX3BhdGh9aGYtZm9ybS1maWVsZC1maWxlLWJyb3dzZS1pY29uLnBuZ1wiKTtcbiAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Ym90dG9tIGxlZnQ7XG4gICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgIC5wb3NpdGlvbigwIDApO1xuICAgICAgICAgLnNpemUoMzBweCk7XG4gICAgIH1cbiAgICAgJi1maWxlLWJyb3dzZS1sYWJlbHtcbiAgICAgICAgIGNvbG9yOkBjb2xvci1ncmF5NTM7XG4gICAgICAgICBwYWRkaW5nLXRvcDo1cHg7XG4gICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgICAgICAucG9zaXRpb24oMCAzMHB4KTtcbiAgICAgfVxuICAgICAmLWJhc2UtY29tcG9uZW50LWRpc2FibGVkICYtZmlsZS1icm93c2V7XG4gICAgICAgICBiYWNrZ3JvdW5kOkBjb2xvci1ncmF5OTY7XG4gICAgICAgICBib3JkZXI6MXB4IGRhc2hlZCBAY29sb3ItZ3JheTkxO1xuICAgICB9XG4gICAgICYtYmFzZS1jb21wb25lbnQtZGlzYWJsZWQgJi1maWxlLWJyb3dzZS1pY29ue1xuICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTpkYXRhLXVyaShcIkB7dXJsX2xldmVsMV9wYXRofWhmLWZvcm0tZmllbGQtZmlsZS1icm93c2UtaWNvbi1kaXNhYmxlZC5wbmdcIik7XG4gICAgIH1cbiAgICAgJi1iYXNlLWNvbXBvbmVudC1kaXNhYmxlZCAmLWZpbGUtYnJvd3NlLWxhYmVse1xuICAgICAgICAgY29sb3I6QGNvbG9yLWdyYXk4MDtcbiAgICAgfVxuICAgICAmLWZpbGUtYnJvd3NlLWhvdmVyIHtcbiAgICAgICAgIC5ib3gtc2hhZG93KDBweCAwcHggMnB4IDBweCBAY29sb3ItYmFzZS1kYXJrZ3JlZW4yKTtcbiAgICAgfVxuICAgICAmLWZpbGUtc3BhY2V7XG4gICAgICAgICBoZWlnaHQ6M3B4O1xuICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgIH1cbiAgICAgJi1maWxlLW5hbWV7XG4gICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgZmxvYXQ6bm9uZTtcbiAgICAgICAgIGJhY2tncm91bmQ6QGNvbG9yLWdyYXk5NDtcbiAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAgICAgIHdpZHRoOiAxOTZweDtcbiAgICAgICAgIC5tYXJnaW4tcGFkZGluZyg1cHgsNXB4KTtcbiAgICAgfVxuICAgICAmLWZpbGUtbmFtZS1pY29ue1xuICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTpkYXRhLXVyaShcIkB7dXJsX2xldmVsMV9wYXRofWhmLWZvcm0tZmllbGQtY2xlYXItaWNvbi5wbmdcIik7XG4gICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmJvdHRvbSBsZWZ0O1xuICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICAgICAgICAgLnNpemUoMTJweCk7XG4gICAgICAgICBwYWRkaW5nLXJpZ2h0OjVweDtcbiAgICAgICAgIHBhZGRpbmctdG9wOjFweDtcbiAgICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgIH1cbiAgICAgJi1maWxlLW5hbWUtaWNvbi1vdmVye1xuICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTpkYXRhLXVyaShcIkB7dXJsX2xldmVsMV9wYXRofWhmLWZvcm0tZmllbGQtY2xlYXItaWNvbi5wbmdcIik7XG4gICAgIH1cbiAgICAgJi1maWxlLW5hbWUtbmFtZXtcbiAgICAgICAgIGxlZnQ6MzBweDtcbiAgICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgICBmb250LXNpemU6MTBweDtcbiAgICAgICAgIGNvbG9yOkBjb2xvci1ncmF5NDc7XG4gICAgICAgICAtbW96LWJpbmRpbmc6IHVybCgnLi4vZWxsaXBzaXMueG1sI2VsbGlwc2lzJyk7XG4gICAgICAgICAudGV4dC1vdmVyZmxvdygpO1xuICAgICAgICAgLnNpemUoOTlweCwgMTJweCk7XG4gICAgIH1cbiAgICAgJi1maWxlLW5hbWUtdXBsb2Fke1xuICAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgIC5zaXplKDgwcHgsIDEycHgpO1xuICAgICB9XG4gICAgICYtZmlsZS1uYW1lLWxvYWRlcntcbiAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHg7XG4gICAgICAgICBiYWNrZ3JvdW5kOkBjb2xvci1iYXNlLXdoaXRlO1xuICAgICAgICAgaGVpZ2h0OjZweDtcbiAgICAgICAgIHBhZGRpbmc6NHB4O1xuICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgIH1cblxuICAgICAmLWZpbGUtbmFtZS1sb2FkZXItaW5uZXJ7XG4gICAgICAgICBiYWNrZ3JvdW5kOkBjb2xvci1ncmF5ODU7XG4gICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4O1xuICAgICAgICAgLnBvc2l0aW9uKDJweCAycHggMnB4IDJweCk7XG4gICAgICAgICAuYm94LXNoYWRvdyhpbnNldCAwcHggMHB4IDFweCAwcHggQGNvbG9yLWdyYXk2MCk7XG4gICAgIH1cblxuICAgICAmLWZpbGUtbmFtZS1sb2FkZXItdGh1bWJ7XG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2E5ZThiMiAxJSwgIzQ5YzUzNCA4JSwgIzQ2YjMzMyA0OSUsICMwZDg3MTEgOTQlLCAjMGU2MDI0IDEwMCUpOyAvKiBGRjMuNisgKi9cbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgxJSwjYTllOGIyKSwgY29sb3Itc3RvcCg4JSwjNDljNTM0KSwgY29sb3Itc3RvcCg0OSUsIzQ2YjMzMyksIGNvbG9yLXN0b3AoOTQlLCMwZDg3MTEpLCBjb2xvci1zdG9wKDEwMCUsIzBlNjAyNCkpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjYTllOGIyIDElLCM0OWM1MzQgOCUsIzQ2YjMzMyA0OSUsIzBkODcxMSA5NCUsIzBlNjAyNCAxMDAlKTsgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2E5ZThiMiAxJSwjNDljNTM0IDglLCM0NmIzMzMgNDklLCMwZDg3MTEgOTQlLCMwZTYwMjQgMTAwJSk7IC8qIE9wZXJhIDExLjEwKyAqL1xuICAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2E5ZThiMiAxJSwjNDljNTM0IDglLCM0NmIzMzMgNDklLCMwZDg3MTEgOTQlLCMwZTYwMjQgMTAwJSk7IC8qIElFMTArICovXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICNhOWU4YjIgMSUsIzQ5YzUzNCA4JSwjNDZiMzMzIDQ5JSwjMGQ4NzExIDk0JSwjMGU2MDI0IDEwMCUpOyAvKiBXM0MgKi9cbiAgICAgICAgIC8qZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNhOWU4YjInLCBlbmRDb2xvcnN0cj0nIzBlNjAyNCcsR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTggKi9cbiAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgd2lkdGg6NjAlO1xuICAgICAgICAgYm90dG9tOjFweDtcbiAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweCAzcHg7XG4gICAgICAgICAucG9zaXRpb24oMXB4IDFweCk7XG4gICAgIH1cblxuICAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gRmlsZSBmaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBEaXNwbGF5IGZpZWxkID09PT09PT09PT09PT09PT09ICovXG4gICAgICYtZGlzcGxheS1zcGFuIHtcbiAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgIH1cbiAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IERpc3BsYXkgZmllbGQgPT09PT09PT09PT09PT09PT0gKi9cbiB9XG5cbiAgICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IFRhZ0VkaXRvciA9PT09PT09PT09PT09PT09PSAqL1xuXG4gLyogcmVnaW9uID09PT09PT09PT09PT09PT09IEZpZWxkIEdyb3VwID09PT09PT09PT09PT09PT09ICovXG4gLmhmLWZvcm0tZmllbGRncm91cCB7XG5cbiAgICAgJi1maWVsZHMtY29udGFpbmVyLWhsYXlvdXQgPiAmLWZpZWxkcy1jb250YWluZXItY29udGVudCA+ICYtZmllbGRzLWNvbnRhaW5lci1pdGVtIHtcbiAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgfVxuXG5cbiAgICAgJiA+IC5oZi1sYWJlbC1sZWZ0IHtcbiAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgfVxuIH1cblxuLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IEZpZWxkIEdyb3VwID09PT09PT09PT09PT09PT09ICovXG5cbi5oZi1yZXF1aXJlZCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgY29sb3I6IHJlZDtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi5oZi1yZXF1aXJlZC1pZSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsb2F0OiBub25lO1xufVxuXG4gICAgIC8qIHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBDaGVja2JveCBHcm91cCBhbmQgUmFkaW8gR3JvdXAgPT09PT09PT09PT09PT09PT0gKi9cblxuICAgICAvKlRPRE86IFRpZHkgdXAgdGhlIGNoZWNrYm94IGdyb3VwIGFuZCByYWRpbyBncm91cCBzdHlsZXMgKi9cbi5oZi1mb3JtIHtcblxuICAgICYtY2hlY2tib3hncm91cCxcbiAgICAmLXJhZGlvZ3JvdXAge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgfVxuXG4gICAgJi1jaGVja2JveGdyb3VwLWNvbHVtbnMsXG4gICAgJi1yYWRpb2dyb3VwLWNvbHVtbnMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgfVxuXG4gICAgLyogVGhlIGNoZWNrYm94L3JhZGlvIGdyb3VwIGNvbHVtbiAqL1xuICAgICYtY2hlY2tib3hncm91cC1jb2x1bW4sXG4gICAgJi1yYWRpb2dyb3VwLWNvbHVtbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IENoZWNrYm94IEdyb3VwIGFuZCBSYWRpbyBHcm91cCA9PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyogcmVnaW9uID09PT09PT09PT09PT09PT09IE11bHRpRmllbGQgPT09PT09PT09PT09PT09PT0gKi9cbiAgICAmLWZpZWxkbGlzdCB7XG4gICAgICAgICYgPiAuaGYtZm9ybS1maWVsZGdyb3VwLWZpZWxkcy1jb250YWluZXIsXG4gICAgICAgICYgPiAuaGYtZm9ybS1maWVsZGdyb3VwLWZpZWxkcy1jb250YWluZXIgPiAuaGYtbGlzdC1jb250YWluZXIge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICAgICAgJi1jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwOyAvKiB0byBnZXQgcmlkIG9mIHdoaXRlc3BhY2UqL1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtYWN0aW9uLWJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtYnRuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgLnNpemUoMTFweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gTXVsdGlGaWVsZCA9PT09PT09PT09PT09PT09PSAqL1xufVxuXG4vKiByZWdpb24gPT09PT09PT09PT09PT09PT0gQ29tbW9uIENTUyBwcm9wZXJ0aWVzIGZvciBMYWJlbCA9PT09PT09PT09PT09PT09PSAqL1xuXG4uaGYtbGFiZWwge1xuICAgIC5ib3gtc2l6aW5nKCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAmLXRvcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgIH1cblxuICAgICYtbGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgfVxuXG4gICAgJixcbiAgICAmLWllIHtcbiAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5Mzg7XG4gICAgfVxuXG4gICAgJi1kaXNhYmxlZCwgJi1kaXNhYmxlZC1pZSB7XG4gICAgICAgIGNvbG9yOiBAY29sb3ItZ3JheTgwO1xuICAgIH1cbn1cblxuLyoqXG4gKiBDbGlja1RvRWRpdFxuICovXG5cbi8qIGVkaXRhYmxlIGNvbnRyb2wgKi9cbi5oZi1lZGl0YWJsZSB7XG4gICAgJiAuaGYtZm9ybS1maWVsZC1kaXNwbGF5LWNvbnRyb2wsXG4gICAgJiAuaGYtZm9ybS1maWVsZC10ZXh0LWNvbnRyb2wge1xuICAgICAgICAuYm94LXNpemluZygpO1xuICAgIH1cblxuICAgIC8qIGVkaXQgbWFya2VyICovXG4gICAgJi1tYXJrIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuaGYtZm9ybS1maWVsZC1kaXNwbGF5LWhvdmVyICYtbWFyayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKiBlZGl0b3Igb24gZWRpdGFibGUgZGlzcGxheSAqL1xuICAgICYuaGYtZWRpdG9yIC5oZi1mb3JtLWZpZWxkLXRleHQtaW5wdXQsXG4gICAgJiAuaGYtZm9ybS1maWVsZC10ZXh0YXJlYS1pbnB1dCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAmLWNhbmNlbCxcbiAgICAmLXN1Ym1pdCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIC5tYXJnaW4tcGFkZGluZygxcHggMCwgMCk7XG4gICAgfVxuXG4gICAgJi1jYW5jZWwge1xuICAgICAgICByaWdodDogMXB4OyAvKiBzbyB0aGUgcmlnaHQgYm9yZGVyIG9mIHRoZSBlZGl0b3IgaXMgdmlzaWJsZSAqL1xuICAgIH1cblxuICAgICYtc3VibWl0IHtcbiAgICAgICAgLyogbGVhdmUgMXB4IGJldHdlZW4gdGhlIGJ1dHRvbnMgc28gdGhleSBkb24ndCBsb29rIGxpa2UgdGhlIHNhbWUgYnV0dG9uLlxuICAgICAgICAgKiB0b2RvIHRoaXMgbG9va3MgdWdseSwgZmluZCBhIGJldHRlciB3YXlcbiAgICAgICAgICovXG4gICAgICAgIHJpZ2h0OiAyMnB4O1xuICAgIH1cbn1cblxuLmhmLWZvcm0tYnV0dG9uIHtcblxuICAgICYtd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICYtcmlnaHQge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi1sZWZ0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi1jZW50ZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiByZWdpb24gPT09PT09PT09PT09PT09PT0gRm9ybSBmaWVsZCBoaW50ID09PT09PT09PT09PT09PT09ICovXG5cbi5oZi1mb3JtLWZpZWxkLWhpbnQge1xuICAgICYtdG9vbHRpcCB7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgLmJnLWJvcmRlcihAY29sb3ItYmFzZS13aGl0ZSwgQGNvbG9yLWJhc2UtYmxhY2spO1xuXG4gICAgICAgICYgLmhmLXBvcHVwLWFycm93LXJpZ2h0LXRvLWxlZnQsXG4gICAgICAgICYgLmhmLXBvcHVwLWFycm93LWxlZnQtdG8tcmlnaHQsXG4gICAgICAgICYgLmhmLXBvcHVwLWFycm93LXRvcC10by1ib3R0b20sXG4gICAgICAgICYgLmhmLXBvcHVwLWFycm93LWJvdHRvbS10by10b3Age1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBAY29sb3ItYmFzZS13aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuICAgIC8qIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBGb3JtIGZpZWxkIGhpbnQgPT09PT09PT09PT09PT09PT0gKi9cblxuXG4gICAgLyogcmVnaW9uID09PT09PT09PT09PT09PT09IENsaWNrVG9FZGl0ID09PT09PT09PT09PT09PT09ICovXG5cbiAgICAuaGYtZWRpdGFibGUgLmhmLWZvcm0tZmllbGQtZGlzcGxheS1zcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMnB4O1xuICAgIH1cblxuICAgIC8qIGVkaXRhYmxlIGNvbnRyb2wgKi9cbiAgICAuaGYtZWRpdGFibGUgLmhmLWZvcm0tZmllbGQtZGlzcGxheS1jb250cm9sIHtcbiAgICAgICAgLmJvcmRlcih0cmFuc3BhcmVudCk7XG4gICAgfVxuXG4gICAgLmhmLWVkaXRhYmxlLmhmLWZvcm0tZmllbGQtZGlzcGxheS1ob3ZlciAuaGYtZm9ybS1maWVsZC1kaXNwbGF5LWNvbnRyb2wge1xuICAgICAgICAuYm9yZGVyKEBjb2xvci1ncmF5ODMpO1xuICAgIH1cblxuICAgIC8qIGVkaXQgbWFya2VyICovXG4gICAgLmhmLWVkaXRhYmxlLW1hcmsge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yLWdyYXk5NSBkYXRhLXVyaShcIkB7dXJsX2xldmVsMV9wYXRofWhmLWZvcm0tZmllbGQtZWRpdGFibGUtZWRpdC5wbmdcIikgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuaGYtZWRpdGFibGUtc3VibWl0LFxuICAgIC5oZi1lZGl0YWJsZS1jYW5jZWwge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICB9XG5cbiAgICAuaGYtZWRpdGFibGUtc3VibWl0IHtcbiAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yLWdyYXk5NSBkYXRhLXVyaShcIkB7dXJsX2xldmVsMV9wYXRofWhmLWZvcm0tZmllbGQtZWRpdGFibGUtYWNjZXB0LnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyO1xuICAgIH1cblxuICAgIC5oZi1lZGl0YWJsZS1zdWJtaXQtaG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItZ3JheTk1IGRhdGEtdXJpKFwiQHt1cmxfbGV2ZWwxX3BhdGh9aGYtZm9ybS1maWVsZC1lZGl0YWJsZS1hY2NlcHQtYWN0aXZlLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyO1xuICAgIH1cblxuICAgIC5oZi1lZGl0YWJsZS1jYW5jZWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItZ3JheTk1IGRhdGEtdXJpKFwiQHt1cmxfbGV2ZWwxX3BhdGh9aGYtZm9ybS1maWVsZC1lZGl0YWJsZS1jYW5jZWwucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmhmLWVkaXRhYmxlLWNhbmNlbC1ob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IEBjb2xvci1ncmF5OTUgZGF0YS11cmkoXCJAe3VybF9sZXZlbDFfcGF0aH1oZi1mb3JtLWZpZWxkLWVkaXRhYmxlLWNhbmNlbC1hY3RpdmUucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgfVxuXG4vKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gQ2xpY2tUb0VkaXQgPT09PT09PT09PT09PT09PT0gKi9cblxuLyogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IE11bHRpU2VsZWN0ID09PT09PT09PT09PT09PT09ICovXG4uaGYtZm9ybS1maWVsZC1tdWx0aS1zZWxlY3Qge1xuICAgIC5oZi1mb3JtLWZpZWxkLXZhbHVlLWVkaXRvciB7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgIH1cblxuICAgICYgPiAuaGYtZm9ybS1maWVsZC12YWx1ZS13cmFwcGVyIHtcbiAgICAgICAgLmZsZXgtZGlyZWN0aW9uKGNvbHVtbik7XG5cbiAgICAgICAgcGFkZGluZzogMnB4IDhweDtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMycHg7XG4gICAgfVxuXG4gICAgLmhmLWZvcm0tZmllbGQtbXVsdGktc2VsZWN0LWl0ZW1zLWNvbnRhaW5lciB7XG4gICAgICAgIC5kaXNwbGF5KGZsZXgpO1xuICAgICAgICAuZmxleC1mbG93KHJvdyB3cmFwKTtcblxuICAgICAgICBjdXJzb3I6IHRleHQ7XG5cbiAgICAgICAgPiAuaGYtZm9ybS1maWVsZC1tdWx0aS1zZWxlY3QtaXRlbSB7XG4gICAgICAgICAgICAuZGlzcGxheShmbGV4KTtcbiAgICAgICAgICAgIC5mbGV4LWZsb3cocm93KTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIG1hcmdpbjogM3B4IDRweCAzcHggMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5oZi1mb3JtLWZpZWxkLW11bHRpLXNlbGVjdC1pdGVtIC5oZi1mb3JtLWZpZWxkLW11bHRpLXNlbGVjdC1pdGVtLWNhcHRpb24ge1xuICAgICAgICAgICAgLmZsZXgtZ3JvdygxKTtcbiAgICAgICAgICAgIC50ZXh0LW92ZXJmbG93KGVsbGlwc2lzKTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuaGYtZm9ybS1maWVsZC1tdWx0aS1zZWxlY3QtaXRlbSA+IC5oZi1mb3JtLWZpZWxkLW11bHRpLXNlbGVjdC1pdGVtLWRlbGV0ZS1idG4ge1xuICAgICAgICAgICAgLmZsZXgtc2hyaW5rKDApO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhmLWZvcm0tZmllbGQtbXVsdGktc2VsZWN0LXZhbHVlLWVkaXRvci1jb250cm9sIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuaGYtZm9ybS1maWVsZC1tdWx0aS1zZWxlY3QtdmFsdWUtZWRpdG9yLWNvbnRyb2w6b25seS1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgPiAuaGYtZm9ybS1maWVsZC1tdWx0aS1zZWxlY3QtdmFsdWUtZWRpdG9yIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGYtZm9ybS1maWVsZC1tdWx0aS1zZWxlY3QtdmFsdWUtZWRpdG9yLWNvbnRyb2w6bm90KDpvbmx5LWNoaWxkKSB7XG4gICAgICAgID4gLmhmLWZvcm0tZmllbGQtbXVsdGktc2VsZWN0LXZhbHVlLWVkaXRvciB7XG4gICAgICAgICAgICAuaW5wdXQtcGxhY2Vob2xkZXIoQGNvbG9yOiB0cmFuc3BhcmVudCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmlucHV0Ji1maWxlIHtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgZm9udC1zaXplOiAxMDAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgLm9wYWNpdHkoMCk7XG59XG5cbmlucHV0Ji1maWxlW2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBhdXRvO1xufVxuXG4vKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gTXVsdGlTZWxlY3QgPT09PT09PT09PT09PT09PT0gKi8iLCIgLyoqXG4gKiA0UFNBIEhGLUpTIEZyYW1ld29yayAtIERlZmF1bHQgc2xpZGVyIENTUyBpbmRlcGVuZGVudCBvZiBkZXZpY2UgZm9yIGxheWVyXG4gKlxuICogQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpICREYXRlVGltZTogNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqL1xuXG4vKiBEZWZhdWx0IFVJIGxheWVyICovXG5cbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG4gQGltcG9ydCAocmVmZXJlbmNlKSAnX2NvbG9ycyc7XG5cbiAuaGYtc3BlY2lhbGxheWVyIHtcblx0IC5wb3NpdGlvbig2MHB4LDAsMCwwKTtcblx0IGJhY2tncm91bmQ6QGNvbG9yLWJhc2Utd2hpdGU7XG5cblx0ICYtbGVmdHtcblx0XHQgcG9zaXRpb246YWJzb2x1dGU7XG5cdFx0IHRvcDowcHg7XG5cdFx0IGJvdHRvbTowcHg7XG5cdFx0IGxlZnQ6MHB4O1xuXHRcdCB3aWR0aDo1MCU7XG5cdFx0IC5iZy1ib3JkZXIoQGNvbG9yLWdyYXk5NCwgQGNvbG9yLWJhc2Utd2hpdGUpO1xuXHQgfVxuXG5cdCAmLW1pZGRsZXtcblx0XHQgYmFja2dyb3VuZDpAY29sb3ItZ3JheTgwO1xuXHRcdCB3aWR0aDoxcHg7XG5cdFx0IHRvcDowcHg7XG5cdFx0IGJvdHRvbTowcHg7XG5cdFx0IGxlZnQ6NTAlO1xuXHRcdCBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHQgei1pbmRleDoxMDA7XG5cdCB9XG5cblx0ICYtY2VudGVye1xuXHRcdCAucG9zaXRpb24oMCwwLDAsMCk7XG5cdFx0IGJhY2tncm91bmQ6QGNvbG9yLWdyYXk5NDtcblx0IH1cblxuXHQgJi1yaWdodHtcblx0XHQgcG9zaXRpb246YWJzb2x1dGU7XG5cdFx0IHRvcDowcHg7XG5cdFx0IGJvdHRvbTowcHg7XG5cdFx0IHJpZ2h0OjBweDtcblx0XHQgd2lkdGg6NTAlO1xuXHRcdCBiYWNrZ3JvdW5kOkBjb2xvci1ncmF5OTQ7XG5cdCB9XG5cblx0ICYtbGVmdC10aXRsZSxcblx0ICYtY2VudGVyLXRpdGxle1xuXHRcdCBmb250LXNpemU6MjBweDtcblx0XHQgY29sb3I6QGNvbG9yLWdyYXk0MDtcblx0XHQgZm9udC13ZWlnaHQ6bm9ybWFsO1xuXHRcdCB0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHQgcGFkZGluZzo1MHB4O1xuXHQgfVxuXG5cdCAmLWNlbnRlci10aXRsZXtcblx0XHQgcGFkZGluZy10b3A6MzBweDtcblx0XHQgcGFkZGluZy1ib3R0b206MjBweDtcblx0IH1cblxuXHQgJi1sZWZ0LWNvbnRlbnQsXG5cdCAmLWNlbnRlci1jb250ZW50e1xuXHRcdCBwYWRkaW5nLXRvcDozMHB4O1xuXHRcdCBwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHQgLyogQGFsdGVybmF0ZSAqLyBwYWRkaW5nOjUwcHg7XG5cdFx0IG1hcmdpbjphdXRvO1xuXHQgfVxuXG5cdCAmLWNlbnRlci1jb250ZW50e1xuXHRcdCBvdmVyZmxvdzpoaWRkZW47XG5cdFx0IHBhZGRpbmctdG9wOjEwcHg7XG5cdCB9XG5cblx0ICYtY2VudGVyLWNvbnRlbnQxe1xuXHRcdCBwYWRkaW5nLXRvcDoxMHB4O1xuXHQgfVxuXG5cdCAmLWludGVyYWN0aXZlIHtcblx0XHQgbWFyZ2luOiBhdXRvO1xuXHRcdCB3aWR0aDogYXV0bztcblx0XHQgLyogQGFsdGVybmF0ZSAqL1xuXHRcdCB3aWR0aDogMjUwcHg7XG5cdFx0IHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCAmLXNtYWxsIHtcblx0XHRcdCBtYXJnaW46IGF1dG87XG5cdFx0XHQgd2lkdGg6IGF1dG87XG5cdFx0XHQgLyogQGFsdGVybmF0ZSAqL1xuXHRcdFx0IHdpZHRoOiAzMzBweDtcblx0XHRcdCBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0IH1cblxuXHRcdCAmLWxheWVyIHtcblx0XHRcdCAuc2l6ZSgxNTBweCk7XG5cdFx0XHQgdGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHQgJiAudGV4dHtcblx0XHRcdFx0IGNvbG9yOkBjb2xvci1iYXNlLXdoaXRlO1xuXHRcdFx0XHQgZm9udC13ZWlnaHQ6Ym9sZDtcblx0XHRcdFx0IGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0XHQgcG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdCBib3R0b206NXB4O1xuXHRcdFx0XHQgbGVmdDo1MCU7XG5cdFx0XHRcdCBtYXJnaW4tbGVmdDotMjVweDtcblx0XHRcdCB9XG5cblx0XHRcdCAmLXNtYWxsIHtcblx0XHRcdFx0IC5zaXplKDYwcHgpO1xuXHRcdFx0XHQgdGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHRcdCAmIC50ZXh0e1xuXHRcdFx0XHRcdCBjb2xvcjpAY29sb3ItZ3JheTYwO1xuXHRcdFx0XHRcdCBmb250LXdlaWdodDpub3JtYWw7XG5cdFx0XHRcdFx0IGZvbnQtc2l6ZToxM3B4O1xuXHRcdFx0XHRcdCBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0XHQgYm90dG9tOjVweDtcblx0XHRcdFx0XHQgbGVmdDo1MCU7XG5cdFx0XHRcdFx0IG1hcmdpbi1sZWZ0Oi0yNXB4O1xuXHRcdFx0XHQgfVxuXG5cdFx0XHRcdCAmLWRpc2FibGVkIHtcblx0XHRcdFx0XHQgYmFja2dyb3VuZDpAY29sb3ItZ3JheTg1O1xuXHRcdFx0XHQgfVxuXG5cdFx0XHRcdCAmLWhvdmVye1xuXHRcdFx0XHRcdCAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWxpZ2h0b3JhbmdlNTIsIEBjb2xvci1iYXNlLWRhcmtvcmFuZ2U0Mik7XG5cdFx0XHRcdFx0IC5ib3gtc2hhZG93KDBweCAwcHggMXB4IDFweCBAY29sb3ItZ3JheTUzKTtcblx0XHRcdFx0XHQgLmJvcmRlci1yYWRpdXMoNHB4KTtcblxuXHRcdFx0XHRcdCAmIC50ZXh0e1xuXHRcdFx0XHRcdFx0IGNvbG9yOkBjb2xvci1iYXNlLXdoaXRlO1xuXHRcdFx0XHRcdCB9XG5cdFx0XHRcdCB9XG5cdFx0XHQgfVxuXG5cdFx0XHQgJi1ob3Zlcntcblx0XHRcdFx0IC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtZGFya29yYW5nZTQ0LCBAY29sb3ItYmFzZS1kYXJrb3JhbmdlNDApO1xuXHRcdFx0XHQgLmJveC1zaGFkb3coMHB4IDBweCAzcHggMXB4IEBjb2xvci1ncmF5MjcpO1xuXHRcdFx0XHQgLmJvcmRlci1yYWRpdXMoMTBweCk7XG5cdFx0XHRcdCBvcGFjaXR5OjEwMDtcblx0XHRcdFx0IGZpbHRlcjphbHBoYShvcGFjaXR5PTEwMCk7XG5cdFx0XHQgfVxuXG5cdFx0XHQgJi1kaXNhYmxlZHtcblx0XHRcdFx0IC5iZy1ib3JkZXIoQGNvbG9yLWdyYXk4NSwgQGNvbG9yLWdyYXk2MCk7XG5cdFx0XHRcdCAuYm94LXNoYWRvdygwcHggMHB4IDFweCAwcHggQGNvbG9yLWdyYXk2MCk7XG5cdFx0XHQgfVxuXHRcdCB9XG5cblx0XHQgJi12aWV3LXNtYWxsIHtcblx0XHRcdCAuc2l6ZSg2MHB4KTtcblx0XHRcdCB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHQgZGlzcGxheTogaW5saW5lO1xuXHRcdFx0IGZsb2F0OiBsZWZ0O1xuXG5cdFx0XHQgJi1kaXNhYmxlZCB7XG5cdFx0XHRcdCAuYmctYm9yZGVyKEBjb2xvci1ncmF5ODUsIEBjb2xvci1ncmF5NjApO1xuXHRcdFx0XHQgLmJveC1zaGFkb3coMHB4IDBweCAxcHggMHB4IEBjb2xvci1ncmF5NjApO1xuXG5cdFx0XHRcdCAmIC50ZXh0e1xuXHRcdFx0XHRcdCBjb2xvcjpAY29sb3ItZ3JheTYwO1xuXHRcdFx0XHQgfVxuXHRcdFx0IH1cblxuXHRcdFx0ICYtaG92ZXJ7XG5cdFx0XHRcdCAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWxpZ2h0b3JhbmdlNDQsIEBjb2xvci1iYXNlLWRhcmtvcmFuZ2U0MCk7XG5cdFx0XHRcdCAuYm94LXNoYWRvdygwcHggMHB4IDJweCAxcHggQGNvbG9yLWdyYXk0MCk7XG5cdFx0XHQgfVxuXHRcdCB9XG5cblx0XHQgJi12aWV3MS1zbWFsbCAudGV4dCxcblx0XHQgJi12aWV3Mi1zbWFsbCAudGV4dCxcblx0XHQgJi12aWV3My1zbWFsbCAudGV4dCxcblx0XHQgJi12aWV3NC1zbWFsbCAudGV4dHtcblx0XHRcdCBjb2xvcjpAY29sb3ItYmFzZS13aGl0ZTtcblx0XHRcdCBmb250LXNpemU6MThweDtcblx0XHRcdCBmb250LXdlaWdodDpib2xkO1xuXHRcdFx0IHBhZGRpbmctdG9wOjE1cHg7XG5cdFx0IH1cblxuXHRcdCAmLXZpZXcxLXNtYWxsLFxuXHRcdCAmLXZpZXcyLXNtYWxsLFxuXHRcdCAmLXZpZXczLXNtYWxsLFxuXHRcdCAmLXZpZXctc21hbGwge1xuXHRcdFx0IC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtbGlnaHRvcmFuZ2U1MiwgQGNvbG9yLWJhc2UtZGFya29yYW5nZTQyKTtcblx0XHRcdCAuYm94LXNoYWRvdygwcHggMHB4IDFweCAwcHggQGNvbG9yLWdyYXk0MCk7XG5cdFx0XHQgLmJvcmRlci1yYWRpdXMoNnB4KTtcblx0XHRcdCBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdFx0IH1cblxuXHRcdCAmLWxheWVyM3tcblx0XHRcdCByaWdodDowcHg7XG5cdFx0XHQgdG9wOjBweDtcblx0XHRcdCB6LWluZGV4OjMwO1xuXHRcdFx0IC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtbGlnaHRvcmFuZ2U1MiwgQGNvbG9yLWJhc2UtZGFya29yYW5nZTQyKTtcblx0XHRcdCBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdCAuYm94LXNoYWRvdygwcHggMHB4IDJweCAwcHggQGNvbG9yLWdyYXk0Nyk7XG5cdFx0XHQgLmJvcmRlci1yYWRpdXMoMTBweCk7XG5cdFx0XHQgb3BhY2l0eTowLjgwO1xuXHRcdFx0IGZpbHRlcjphbHBoYShvcGFjaXR5PTgwKTtcblxuXHRcdFx0ICYtc21hbGx7XG5cdFx0XHRcdCByaWdodDowcHg7XG5cdFx0XHRcdCB0b3A6MHB4O1xuXHRcdFx0XHQgei1pbmRleDozMDtcblx0XHRcdFx0IC5ib3JkZXIoQGNvbG9yLWdyYXk2MCk7XG5cdFx0XHRcdCBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0IC5ib3gtc2hhZG93KDBweCAwcHggMXB4IDBweCBAY29sb3ItZ3JheTYwKTtcblx0XHRcdFx0IC5ib3JkZXItcmFkaXVzKDRweCk7XG5cdFx0XHQgfVxuXHRcdCB9XG5cblx0XHQgJi1sYXllcjJ7XG5cdFx0XHQgcmlnaHQ6NTBweDtcblx0XHRcdCB0b3A6NTBweDtcblx0XHRcdCB6LWluZGV4OjIwO1xuXHRcdFx0IC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtbGlnaHRvcmFuZ2U1MiwgQGNvbG9yLWJhc2UtZGFya29yYW5nZTQyKTtcblx0XHRcdCBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdCAuYm94LXNoYWRvdygwcHggMHB4IDJweCAwcHggQGNvbG9yLWdyYXk0Nyk7XG5cdFx0XHQgLmJvcmRlci1yYWRpdXMoMTBweCk7XG5cdFx0XHQgb3BhY2l0eTowLjgwO1xuXHRcdFx0IGZpbHRlcjphbHBoYShvcGFjaXR5PTgwKTtcblxuXHRcdFx0ICYtc21hbGx7XG5cdFx0XHRcdCByaWdodDozMHB4O1xuXHRcdFx0XHQgdG9wOjMwcHg7XG5cdFx0XHRcdCB6LWluZGV4OjIwO1xuXHRcdFx0XHQgLmJvcmRlcihAY29sb3ItZ3JheTYwKTtcblx0XHRcdFx0IHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHQgLmJveC1zaGFkb3coMHB4IDBweCAxcHggMHB4IEBjb2xvci1ncmF5NjApO1xuXHRcdFx0XHQgLmJvcmRlci1yYWRpdXMoNHB4KTtcblx0XHRcdCB9XG5cdFx0IH1cblxuXHRcdCAmLWxheWVyMXtcblx0XHRcdCByaWdodDoxMDBweDtcblx0XHRcdCB0b3A6MTAwcHg7XG5cdFx0XHQgei1pbmRleDoxMDtcblx0XHRcdCBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdCAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWxpZ2h0b3JhbmdlNTIsIEBjb2xvci1iYXNlLWRhcmtvcmFuZ2U0Mik7XG5cdFx0XHQgLmJveC1zaGFkb3coMHB4IDBweCAycHggMHB4IEBjb2xvci1ncmF5NDcpO1xuXHRcdFx0IC5ib3JkZXItcmFkaXVzKDEwcHgpO1xuXHRcdFx0IG9wYWNpdHk6MC44MDtcblx0XHRcdCBmaWx0ZXI6YWxwaGEob3BhY2l0eT04MCk7XG5cblx0XHRcdCAmLXNtYWxse1xuXHRcdFx0XHQgcmlnaHQ6NjBweDtcblx0XHRcdFx0IHRvcDo2MHB4O1xuXHRcdFx0XHQgei1pbmRleDoxMDtcblx0XHRcdFx0IHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHQgLmJvcmRlcihAY29sb3ItZ3JheTYwKTtcblx0XHRcdFx0IC5ib3gtc2hhZG93KDBweCAwcHggMXB4IDFweCBAY29sb3ItZ3JheTg1KTtcblx0XHRcdFx0IC5ib3JkZXItcmFkaXVzKDRweCk7XG5cdFx0XHQgfVxuXHRcdCB9XG5cblx0XHQgJi1zbWFsbC11bml0e1xuXHRcdFx0IGZsb2F0OmxlZnQ7XG5cdFx0XHQgcG9zaXRpb246cmVsYXRpdmU7XG5cblx0XHRcdCAmLXRleHR7XG5cdFx0XHRcdCBjb2xvcjpAY29sb3ItZ3JheTQwO1xuXHRcdFx0XHQgZm9udC1zaXplOjIwcHg7XG5cdFx0XHRcdCB0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdCB9XG5cblx0XHRcdCAmLWJ1dHRvbntcblx0XHRcdFx0IC5ib3gtc2hhZG93KDBweCAwcHggMXB4IDBweCBAY29sb3ItZ3JheTYwKTtcblx0XHRcdFx0IC5ib3JkZXItcmFkaXVzKDRweCk7XG5cdFx0XHRcdCAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWRhcmtncmVlbjQsIEBjb2xvci1iYXNlLWRhcmtncmVlbjUpO1xuXHRcdFx0XHQgLnNpemUoMTAwcHgsIDI1cHgpO1xuXHRcdFx0XHQgbWFyZ2luOmF1dG87XG5cdFx0XHRcdCB0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0IHBhZGRpbmctdG9wOjJweDtcblx0XHRcdFx0IGNvbG9yOkBjb2xvci1iYXNlLXdoaXRlO1xuXHRcdFx0XHQgZm9udC1zaXplOjE0cHg7XG5cblx0XHRcdFx0ICYtaG92ZXJ7XG5cdFx0XHRcdFx0IC5iZy1ib3JkZXIoQGNvbG9yLWJhc2UtZGFya2dyZWVuNiwgQGNvbG9yLWJhc2UtZGFya2dyZWVuNyk7XG5cdFx0XHRcdFx0IGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0IH1cblx0XHRcdCB9XG5cdFx0IH1cblx0IH1cblxuXHQgJi1hdXRvbWF0aWMtYnV0dG9ue1xuXHRcdCAuYm94LXNoYWRvdygwcHggMHB4IDNweCAxcHggQGNvbG9yLWdyYXk2MCk7XG5cdFx0IC5ib3JkZXItcmFkaXVzKDEwcHgpO1xuXHRcdCAuYmctYm9yZGVyKEBjb2xvci1iYXNlLWRhcmtncmVlbjQsIEBjb2xvci1iYXNlLWRhcmtncmVlbjUpO1xuXHRcdCAuc2l6ZSgyMDBweCwgNTBweCk7XG5cdFx0IG1hcmdpbjphdXRvO1xuXHRcdCB0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHQgcGFkZGluZy10b3A6MjBweDtcblx0XHQgY29sb3I6QGNvbG9yLWJhc2Utd2hpdGU7XG5cdFx0IGZvbnQtd2VpZ2h0OmJvbGQ7XG5cdFx0IGZvbnQtc2l6ZToxNnB4O1xuXG5cdFx0ICYtaG92ZXJ7XG5cdFx0XHQgLmJnLWJvcmRlcihAY29sb3ItYmFzZS1kYXJrZ3JlZW44LCBAY29sb3ItYmFzZS1kYXJrZ3JlZW45KTtcblx0XHRcdCBjdXJzb3I6IHBvaW50ZXI7XG5cdFx0IH1cblx0IH1cblxuXHQgJi1tZXNzYWdle1xuXHRcdCBmb250LXNpemU6MTJweDtcblx0XHQgY29sb3I6QGNvbG9yLWdyYXk2MDtcblx0XHQgdGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0IHBhZGRpbmctdG9wOjMwcHg7XG5cdCB9XG5cblx0ICYtZmxleHtcblx0XHQgLnBvc2l0aW9uKDEwJSwgMTAlLCAxMCUsIDEwJSk7XG5cblx0XHQgJi1ib3JkZXJ7XG5cdFx0XHQgLnBvc2l0aW9uKDAsMCwwLDApO1xuXG5cdFx0XHQgLmJvcmRlci1yYWRpdXMoMTBweCAxMHB4KTtcblx0XHRcdCAuYm94LXNoYWRvdygwcHggMHB4IDNweCAxcHggQGNvbG9yLWdyYXkyMCk7XG5cdFx0IH1cblxuXHRcdCAmLWNvbnRlbnR7XG5cdFx0XHQgY2xlYXI6Ym90aDtcblx0XHRcdCAucG9zaXRpb24oMCwwLDAsMCk7XG5cdFx0XHQgLmJvcmRlcihAY29sb3ItZ3JheTMzKTtcblxuXHRcdFx0ICYtaW5uZXIxLWJvcmRlcntcblx0XHRcdFx0IC5wb3NpdGlvbig2cHgsNnB4LDZweCw2cHgpO1xuXHRcdFx0IH1cblxuXHRcdFx0ICYtaW5uZXIyLWJvcmRlcntcblx0XHRcdFx0IC5ib3JkZXIoQGNvbG9yLWdyYXk4NSk7XG5cdFx0XHRcdCAucG9zaXRpb24oMCwwLDAsMCk7XG5cdFx0XHQgfVxuXHRcdCB9XG5cblx0XHQgJi10aXRsZXtcblx0XHRcdCBoZWlnaHQ6MjdweDtcblx0XHRcdCBib3JkZXItYm90dG9tOjFweCBzb2xpZCBAY29sb3ItYmFzZS13aGl0ZTtcblx0XHRcdCBwb3NpdGlvbjpyZWxhdGl2ZTtcblxuXHRcdFx0ICYtcmlnaHR7XG5cdFx0XHRcdCBwYWRkaW5nLXRvcDoycHg7XG5cdFx0XHRcdCBjb2xvcjpAY29sb3ItYmFzZS13aGl0ZTtcblx0XHRcdFx0IGZvbnQtd2VpZ2h0OmJvbGQ7XG5cdFx0XHRcdCBmb250LXNpemU6MTNweDtcblx0XHRcdFx0IHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHQgbWFyZ2luOmF1dG87XG5cdFx0XHRcdCBwYWRkaW5nLXJpZ2h0OjMwcHg7XG5cdFx0XHQgfVxuXHRcdCB9XG5cdCB9XG4gfVxuXG4gLmhmLWxheWVyIHtcblx0IC5zaXplKDEwMCUpO1xuIH1cblxuIC8qIFRoZSBtYXNrIGZvciB0aGUgc3BlY2lhbCBsYXllciAqL1xuIC5oZi1tYXNrLWJhY2tncm91bmQtY29sb3Itc3BlY2lhbGxheWVyIHtcblx0IGJhY2tncm91bmQtY29sb3I6ICMyMjQ0MTE7XG4gfVxuXG4gLmhmLWZsZXgtdGl0bGUtc3BlY2lhbGxheWVye1xuXHQgaGVpZ2h0OjYwcHg7XG5cdCBwYWRkaW5nLXRvcDoxM3B4O1xuXHQgLyogQGFsdGVybmF0ZSAqLyBoZWlnaHQ6MjdweDtcblx0IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNmZmY7XG5cdCBwb3NpdGlvbjpyZWxhdGl2ZTtcblxuXHQgJiAuaGYtc3BlY2lhbGxheWVyLWZsZXgtdGl0bGUtcmlnaHQge1xuXHRcdCBmb250LXNpemU6MThweDtcblx0IH1cbiB9XG5cblxuIiwiIC8qKlxuICogNFBTQSBIRi1KUyBGcmFtZXdvcmsgLSBEZWZhdWx0IENTUyBpbmRlcGVuZGVudCBvZiB0aGVtZSBhbmQgZGV2aWNlIGZvciBjb250YWluZXJzXG4gKlxuICogQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpICREYXRlVGltZTogJCA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5cbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG5cbiAvKiogcmVnaW9uID09PT09PT09PT09PT09PT09IENvbnRhaW5lciA9PT09PT09PT09PT09PT09PSAqL1xuIC5oZi1sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgLmJveC1zaXppbmcoKTtcbiAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgLmJveC1zaXppbmcoKTtcbiAgICAgfVxuIH1cblxuIC8qKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gQ29udGFpbmVyID09PT09PT09PT09PT09PT09ICovXG5cbiAvKiogcmVnaW9uID09PT09PT09PT09PT09PT09IFNpbmdsZUNvbnRlbnRDb250YWluZXIgPT09PT09PT09PT09PT09PT0gKi9cblxuIC5oZi1sYXlvdXQtc2luZ2xlLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgLmJveC1zaXppbmcoKTtcbiAgICAgb3V0bGluZTogbm9uZTtcbiB9XG5cbiAvKiogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IFNpbmdsZUNvbnRlbnRDb250YWluZXIgPT09PT09PT09PT09PT09PT0gKi9cblxuIC8qKiByZWdpb24gPT09PT09PT09PT09PT09PT0gVmVydGljYWxTdGFjayA9PT09PT09PT09PT09PT09PSAqL1xuIC5oZi1sYXlvdXQtdmVydGljYWwtc3RhY2sge1xuICAgICAuYm94LXNpemluZygpO1xuICAgICBvdXRsaW5lOiBub25lO1xuICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgJi1jaGlsZCB7XG4gICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgIH1cbiB9XG5cbiAvKiogZW5kcmVnaW9uID09PT09PT09PT09PT09PT09IFZlcnRpY2FsU3RhY2sgPT09PT09PT09PT09PT09PT0gKi9cblxuIC8qKiByZWdpb24gPT09PT09PT09PT09PT09PT0gSG9yaXpvbnRhbFN0YWNrID09PT09PT09PT09PT09PT09ICovXG4gLmhmLWxheW91dC1ob3Jpem9udGFsLXN0YWNrIHtcbiAgICAgLmJveC1zaXppbmcoKTtcbiAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAmOmJlZm9yZSB7XG4gICAgICAgY29udGVudDogJyc7XG4gICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICB9XG5cbiAgICAgJi1jaGlsZCB7XG4gICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgIH1cbiB9XG5cbiAvKiBtYXliZSB3ZSBzaG91bGQgdXNlIGZsZXggaGVyZSAgKi9cbiAuaGYtbGF5b3V0LWhvcml6b250YWwtd3JhcCB7XG4gICAgIC5ib3gtc2l6aW5nKCk7XG4gICAgIG91dGxpbmU6IG5vbmU7XG4gICAgIGhlaWdodDogYXV0bztcbiAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuICAgICAmLWNoaWxkIHtcbiAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgfVxuIH1cblxuIC8qKiBlbmRyZWdpb24gPT09PT09PT09PT09PT09PT0gSG9yaXpvbnRhbFN0YWNrID09PT09PT09PT09PT09PT09ICovXG5cbiAvKiogcmVnaW9uID09PT09PT09PT09PT09PT09IFNwbGl0UGFuZSA9PT09PT09PT09PT09PT09PSAqL1xuIC5oZi1zcGxpdC1wYW5lIHtcbiAgICAgLmRpc3BsYXkoZmxleCk7XG5cbiAgICAgJi5ob3Jpem9udGFsIHtcbiAgICAgICAgIC5mbGV4LWZsb3cocm93KTtcbiAgICAgfVxuXG4gICAgICYudmVydGljYWwge1xuICAgICAgICAgLmZsZXgtZmxvdyhjb2x1bW4pO1xuICAgICB9XG5cbiAgICAgLyogZmlyc3QtY2hpbGQtY29udGFpbmVyICovXG4gICAgICYgPiAmLWZpcnN0LWNoaWxkLWNvbnRhaW5lciB7XG4gICAgICAgIC5mbGV4LWdyb3coMSk7XG4gICAgICAgICAuYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgICAgfVxuICAgICAmLmhvcml6b250YWwgPiAmLWZpcnN0LWNoaWxkLWNvbnRhaW5lciB7XG4gICAgIH1cbiAgICAgJi52ZXJ0aWNhbCA+ICYtZmlyc3QtY2hpbGQtY29udGFpbmVyIHtcbiAgICAgfVxuXG4gICAgIC8qIHNlY29uZC1jaGlsZC1jb250YWluZXIgKi9cbiAgICAgJiA+ICYtc2Vjb25kLWNoaWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAuYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgICAgfVxuICAgICAmLmhvcml6b250YWwgPiAmLXNlY29uZC1jaGlsZC1jb250YWluZXIge1xuICAgICB9XG4gICAgICYudmVydGljYWwgPiAmLXNlY29uZC1jaGlsZC1jb250YWluZXIge1xuICAgICB9XG5cbiAgICAgLyogc3BsaXR0ZXIgKi9cbiAgICAgJiA+ICYtc3BsaXR0ZXIge1xuICAgICAgICAgLmZsZXgtc2hyaW5rKDApO1xuICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgIH1cbiAgICAgJi5ob3Jpem9udGFsID4gJi1zcGxpdHRlciB7XG4gICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmF5O1xuICAgICAgICAgY3Vyc29yOiBldy1yZXNpemU7XG4gICAgIH1cbiAgICAgJi52ZXJ0aWNhbCA+ICYtc3BsaXR0ZXIge1xuICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG4gICAgICAgICBjdXJzb3I6IG5zLXJlc2l6ZTtcblxuICAgICAgICAgJiA+ICYtaGFuZGxlIHtcbiAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICB9XG4gICAgIH1cbiAgICAgLyogc3BsaXR0ZXItaGFuZGxlciAqL1xuICAgICAmID4gJi1zcGxpdHRlciA+ICYtc3BsaXR0ZXItaGFuZGxlIHtcbiAgICAgICAgIC5zaXplKDlweCk7XG4gICAgICAgICAuYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZGVkZTtcbiAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgIH1cbiAgICAgJi5ob3Jpem9udGFsID4gJi1zcGxpdHRlciA+ICYtc3BsaXR0ZXItaGFuZGxlIHtcbiAgICAgICAgIC52ZXJ0aWNhbENlbnRlcldpdGhUcmFuc2Zvcm0oKTtcbiAgICAgICAgIGxlZnQ6IC01cHg7XG4gICAgIH1cbiAgICAgJi52ZXJ0aWNhbCA+ICYtc3BsaXR0ZXIgPiAmLXNwbGl0dGVyLWhhbmRsZSB7XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgIH1cbiB9XG4gLyoqIGVuZHJlZ2lvbiA9PT09PT09PT09PT09PT09PSBTcGxpdFBhbmUgPT09PT09PT09PT09PT09PT0gKi8iLCIgLyoqXHJcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBDU1MgaW5kZXBlbmRlbnQgb2YgZGV2aWNlIGFuZCB0aGVtZSBmb3IgbGlzdHNcclxuICpcclxuICogQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpICREYXRlVGltZTogNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICovXHJcblxyXG4gQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xyXG4gQGltcG9ydCAocmVmZXJlbmNlKSAnX2NvbG9ycyc7XHJcbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfY29uc3QnO1xyXG5cclxuIC5oZi1saXN0LFxyXG4gLmhmLXNlbGVjdG9yIHtcclxuICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICYtaXRlbSB7XHJcbiAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICB9XHJcblxyXG4gICAgICYgPiAuaGYtc2Nyb2xsZXIge1xyXG4gICAgICAgICAubWF4LXNpemUoMTAwJSwgMTAwJSk7XHJcbiAgICAgICAgLnNpemUoMTAwJSk7XHJcbiAgICAgfVxyXG5cclxuICAgICAmID4gLmhmLWxpc3QtY29udGFpbmVyIHtcclxuICAgICAgICAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgfVxyXG4gfVxyXG5cclxuIC5oZi1saXN0LWxvYWRlciB7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcblxyXG4gICAgICYtZmlsbCB7XHJcbiAgICAgICAgIC5wb3NpdGlvbigwLDAsMCwwKTtcclxuICAgICB9XHJcblxyXG4gICAgICYtaG9yaXpvbnRhbCB7XHJcbiAgICAgICAgIGhlaWdodDogMzRweDtcclxuICAgICB9XHJcblxyXG4gICAgICYtdmVydGljYWwge1xyXG4gICAgICAgICB3aWR0aDogMzRweDtcclxuICAgICB9XHJcblxyXG4gICAgICYtdmVydGljYWwsXHJcbiAgICAgJi1ob3Jpem9udGFsIHtcclxuICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICB9XHJcbiB9XHJcblxyXG4gLmhmLWxpc3QtZW1wdHkge1xyXG4gICAgICYtaW5kaWNhdG9yIHtcclxuICAgICAgICAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgIC5wb3NpdGlvbigwLCAwLCAwLCAwKTtcclxuICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICB9XHJcblxyXG4gICAgICYtbWVzc2FnZSB7XHJcbiAgICAgICAgIC5ib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG5cclxuICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgIH1cclxuIH1cclxuXHJcbiAuaGYtbGlzdC1lcnJvciB7XHJcbiAgICAgJi1pbmRpY2F0b3Ige1xyXG4gICAgICAgICAuYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgLnBvc2l0aW9uKDAsIDAsIDAsIDApO1xyXG4gICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAuYmctYm9yZGVyKCNFREVGRjQgZGF0YS11cmkoJy4uL2ltYWdlcy9oZi1saXN0LWVycm9yLWluZGljYXRvci5wbmcnKSBuby1yZXBlYXQgY2VudGVyLCAjRDhERkVBKTtcclxuICAgICB9XHJcblxyXG4gICAgICYtYmFubmVyIHtcclxuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAucG9zaXRpb24oMCAwIGF1dG8gMCk7XHJcbiAgICAgICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgICAgICAgY29sb3I6IEBjb2xvci1iYXNlLXdoaXRlO1xyXG4gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItYmFzZS1nb2xkO1xyXG4gICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgd2hpdGUtc3BhY2U6IHByZS1saW5lO1xyXG5cclxuICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgLnRyYW5zaXRpb24ocGFkZGluZyAuMzVzIGVhc2UtaW4sIG9wYWNpdHkgLjM1cyBlYXNlLWluOyk7XHJcblxyXG4gICAgICAgICAmOm5vdCg6ZW1wdHkpIHtcclxuICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICYgLmhmLWxpc3QtZXJyb3ItbWVzc2FnZSB7XHJcbiAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcclxuICAgICAgICAgfVxyXG5cclxuICAgICAgICAgJiAuaGYtbGlzdC1lcnJvci1tZXNzYWdlOjpiZWZvcmUge1xyXG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgIH1cclxuICAgICB9XHJcblxyXG4gICAgICYtbWVzc2FnZSB7XHJcbiAgICAgICAgIC5ib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG5cclxuICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgIH1cclxuIH1cclxuXHJcbiAuaGYtc2VsZWN0b3Ige1xyXG4gICAgICBvdXRsaW5lOiBub25lOyAvKiBoaWRlIHRoZSAnZm9jdXMnIGJvcmRlcjsgdGhlIHNjcm9sbCBwYW5lIGlzIGZvY3VzYWJsZSBpbiBvcmRlciB0byByZWNlaXZlIGtleSBldmVudHM6IFVQLCBET1dOLCBQQUdFVVAgZXRjLiovXHJcbiAgICAgIGJhY2tncm91bmQ6IEBjb2xvci1iYXNlLXdoaXRlO1xyXG4gICAgICAuYm94LXNoYWRvdygxcHggMXB4IDJweCAjRTVFNUU1IGluc2V0KTtcclxuXHJcbiAgICAgJi1pdGVtIHtcclxuICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgIHBhZGRpbmctdG9wOjZweDtcclxuICAgICAgIHBhZGRpbmctYm90dG9tOjZweDtcclxuICAgICAgIHBhZGRpbmctbGVmdDoxMHB4O1xyXG4gICAgICAgcGFkZGluZy1yaWdodDoxMHB4O1xyXG4gICAgICAgZm9udC1zaXplOjExcHg7XHJcbiAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAtbW96LWJpbmRpbmc6IHVybCgnZWxsaXBzaXMueG1sI2VsbGlwc2lzJyk7XHJcbiAgICAgICAudGV4dC1vdmVyZmxvdygpO1xyXG4gICAgICAgLmJvcmRlcigjYmJiKTtcclxuICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmIDAlLCAjZTVlNmUzIDQ4JSwgI2ZmZmZmZiAxMDAlKTsgIC8qIEZGMy42KyAqL1xyXG4gICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCNmZmZmZmYpLCBjb2xvci1zdG9wKDQ4JSwjZTVlNmUzKSwgY29sb3Itc3RvcCgxMDAlLCNmZmZmZmYpKTsgIC8qIENocm9tZSxTYWZhcmk0KyAqL1xyXG4gICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYgMCUsI2U1ZTZlMyA0OCUsI2ZmZmZmZiAxMDAlKTsgIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXHJcbiAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYgMCUsI2U1ZTZlMyA0OCUsI2ZmZmZmZiAxMDAlKTsgIC8qIE9wZXJhIDExLjEwKyAqL1xyXG4gICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZmZmZiAwJSwjZTVlNmUzIDQ4JSwjZmZmZmZmIDEwMCUpOyAgLyogSUUxMCsgKi9cclxuICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZmZmZiAwJSwjZTVlNmUzIDQ4JSwjZmZmZmZmIDEwMCUpOyAgLyogVzNDICovXHJcblxyXG4gICAgICAgLyogYSBzZWxlY3RlZCBpdGVtICovXHJcbiAgICAgICAmLXNlbGVjdGVkIHtcclxuICAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmNmZmZjIgMCUsICNjZGViYmIgNDclLCAjZjZmZmYyIDEwMCUpOyAvKiBGRjMuNisgKi9cclxuICAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCNmNmZmZjIpLCBjb2xvci1zdG9wKDQ3JSwjY2RlYmJiKSwgY29sb3Itc3RvcCgxMDAlLCNmNmZmZjIpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXHJcbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZjZmZmYyIDAlLCNjZGViYmIgNDclLCNmNmZmZjIgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXHJcbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y2ZmZmMiAwJSwjY2RlYmJiIDQ3JSwjZjZmZmYyIDEwMCUpOyAvKiBPcGVyYSAxMS4xMCsgKi9cclxuICAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y2ZmZmMiAwJSwjY2RlYmJiIDQ3JSwjZjZmZmYyIDEwMCUpOyAvKiBJRTEwKyAqL1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICNmNmZmZjIgMCUsI2NkZWJiYiA0NyUsI2Y2ZmZmMiAxMDAlKTsgLyogVzNDICovXHJcbiAgICAgICB9XHJcblxyXG4gICAgICAgLyogYSBzZWxlY3RlZCBpdGVtIHdoaWxlIGl0IGlzIGhvdmVyZWQgKi9cclxuICAgICAgICYtaG92ZXImLXNlbGVjdGVkLFxyXG4gICAgICAgJi1ob3Zlci1pZSYtc2VsZWN0ZWQtaWUge1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgICNjOWRlOTYgMCUsICM4YWI2NmIgNDQlLCAjMzk4MjM1IDEwMCUpOyAvKiBGRjMuNisgKi9cclxuICAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCNjOWRlOTYpLCBjb2xvci1zdG9wKDQ0JSwjOGFiNjZiKSwgY29sb3Itc3RvcCgxMDAlLCMzOTgyMzUpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXHJcbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgI2M5ZGU5NiAwJSwjOGFiNjZiIDQ0JSwjMzk4MjM1IDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICAjYzlkZTk2IDAlLCM4YWI2NmIgNDQlLCMzOTgyMzUgMTAwJSk7IC8qIE9wZXJhIDExLjEwKyAqL1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAgI2M5ZGU5NiAwJSwjOGFiNjZiIDQ0JSwjMzk4MjM1IDEwMCUpOyAvKiBJRTEwKyAqL1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICAjYzlkZTk2IDAlLCM4YWI2NmIgNDQlLCMzOTgyMzUgMTAwJSk7IC8qIFczQyAqL1xyXG4gICAgICAgICAvKiBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2M5ZGU5NicsIGVuZENvbG9yc3RyPScjMzk4MjM1JyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOCAqL1xyXG4gICAgICAgfVxyXG5cclxuICAgICAgIC8qIGEgaG92ZXJlZCBpdGVtICovXHJcbiAgICAgICAmLWhvdmVyLFxyXG4gICAgICAgJi1ob3Zlci1pZVxyXG4gICAgICAge1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2VhZWFlYSAwJSwgI2Q5ZGJkOSA0NyUsICNlYWVhZWEgMTAwJSk7IC8qIEZGMy42KyAqL1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsI2VhZWFlYSksIGNvbG9yLXN0b3AoNDclLCNkOWRiZDkpLCBjb2xvci1zdG9wKDEwMCUsI2VhZWFlYSkpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cclxuICAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNlYWVhZWEgMCUsI2Q5ZGJkOSA0NyUsI2VhZWFlYSAxMDAlKTsgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cclxuICAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWFlYWVhIDAlLCNkOWRiZDkgNDclLCNlYWVhZWEgMTAwJSk7IC8qIE9wZXJhIDExLjEwKyAqL1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZWFlYWVhIDAlLCNkOWRiZDkgNDclLCNlYWVhZWEgMTAwJSk7IC8qIElFMTArICovXHJcbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgI2VhZWFlYSAwJSwjZDlkYmQ5IDQ3JSwjZWFlYWVhIDEwMCUpOyAvKiBXM0MgKi9cclxuICAgICAgICAgLyogZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNlYWVhZWEnLCBlbmRDb2xvcnN0cj0nI2VhZWFlYScsR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTggKi9cclxuICAgICAgIH1cclxuXHJcbiAgICAgICAvKiBhbiBhY3RpdmUgaXRlbShwcmVzc2VkIGl0ZW0pICovXHJcbiAgICAgICAmLWFjdGl2ZSxcclxuICAgICAgICYtYWN0aXZlLWllXHJcbiAgICAgICB7XHJcbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjRDFEMUQxIDAlLCAjQkRDMkJEIDQ3JSwgI0QxRDFEMSAxMDAlKTsgLyogRkYzLjYrICovXHJcbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwjRDFEMUQxKSwgY29sb3Itc3RvcCg0NyUsI0JEQzJCRCksIGNvbG9yLXN0b3AoMTAwJSwjRDFEMUQxKSk7IC8qIENocm9tZSxTYWZhcmk0KyAqL1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI0QxRDFEMSAwJSwjQkRDMkJEIDQ3JSwjRDFEMUQxIDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xyXG4gICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNEMUQxRDEgMCUsI0JEQzJCRCA0NyUsI0QxRDFEMSAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovXHJcbiAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNEMUQxRDEgMCUsI0JEQzJCRCA0NyUsI0QxRDFEMSAxMDAlKTsgLyogSUUxMCsgKi9cclxuICAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjRDFEMUQxIDAlLCNCREMyQkQgNDclLCNEMUQxRDEgMTAwJSk7IC8qIFczQyAqL1xyXG4gICAgICAgICAvKiBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI0QxRDFEMScsIGVuZENvbG9yc3RyPScjRDFEMUQxJyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOCAqL1xyXG4gICAgICAgfVxyXG5cclxuICAgICAgIC8qIGEgZGlzYWJsZWQgaXRlbSAqL1xyXG4gICAgICAgJi1kaXNhYmxlZCxcclxuICAgICAgICYtZGlzYWJsZWQtaWVcclxuICAgICAgIHtcclxuICAgICAgICAgYmFja2dyb3VuZDogI0RGREZERjtcclxuICAgICAgICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICB9XHJcbiAgICAgfVxyXG4gfSIsIi8qKlxyXG4gKiA0UFNBIEhGLUpTIEZyYW1ld29yayAtIERlZmF1bHQgQ1NTIGluZGVwZW5kZW50IG9mIGRldmljZSBhbmQgdGhlbWUgZm9yIGJ1dHRvbnNcclxuICpcclxuICogQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpICREYXRlVGltZTogNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICovXHJcblxyXG5AaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XHJcbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ19jb2xvcnMnO1xyXG5cclxuLmhmLWxvYWRlci1uZXcge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICAudHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSk7XHJcblxyXG4gICAgJi5saW5pYXIge1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgLyptYXJnaW4tcmlnaHQ6IC0wLjI1ZW07Ki8gLyogQWRqdXN0cyBmb3Igc3BhY2luZyAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IC5oZi1sb2FkZXItbmV3LWRvdCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyYXk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICAuYW5pbWF0aW9uKGxvYWRlcl9hbmltYXRpb24gMC44cyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZ3JheXNjaGVtZSA+IC5oZi1sb2FkZXItbmV3LWRvdCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IC5oZi1sb2FkZXItbmV3LWRvdC5kb3QtMiB7XHJcbiAgICAgICAgICAgIC5hbmltYXRpb24tZGVsYXkoLTAuMTJzKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAuaGYtbG9hZGVyLW5ldy1kb3QuZG90LTMge1xyXG4gICAgICAgICAgICAuYW5pbWF0aW9uLWRlbGF5KC0wLjI0cyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gLmhmLWxvYWRlci1uZXctZG90LmRvdC00IHtcclxuICAgICAgICAgICAgLmFuaW1hdGlvbi1kZWxheSgtMC4zNnMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IC5oZi1sb2FkZXItbmV3LWRvdC5kb3QtNSB7XHJcbiAgICAgICAgICAgIC5hbmltYXRpb24tZGVsYXkoLTAuNDhzKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAuaGYtbG9hZGVyLW5ldy1kb3QuZG90LTYge1xyXG4gICAgICAgICAgICAuYW5pbWF0aW9uLWRlbGF5KC0wLjYwcyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gLmhmLWxvYWRlci1uZXctZG90LmRvdC03IHtcclxuICAgICAgICAgICAgLmFuaW1hdGlvbi1kZWxheSgtMC43MnMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IC5oZi1sb2FkZXItbmV3LWRvdC5kb3QtOCB7XHJcbiAgICAgICAgICAgIC5hbmltYXRpb24tZGVsYXkoLTAuODRzKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAuaGYtbG9hZGVyLW5ldy1kb3QuZG90LTkge1xyXG4gICAgICAgICAgICAuYW5pbWF0aW9uLWRlbGF5KC0wLjk2cyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gLmhmLWxvYWRlci1uZXctZG90LmRvdC0xMCB7XHJcbiAgICAgICAgICAgIC5hbmltYXRpb24tZGVsYXkoLTEuMDhzKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYueHNtYWxsIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAyNXB4O1xyXG5cclxuICAgICAgICAgICAgIC5oZi1sb2FkZXItbmV3LWRvdCB7XHJcbiAgICAgICAgICAgICAgICAuc2l6ZSg3cHgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuc21hbGwge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDI4cHg7XHJcblxyXG4gICAgICAgICAgICAgLmhmLWxvYWRlci1uZXctZG90IHtcclxuICAgICAgICAgICAgICAgIC5zaXplKDhweCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tZWRpdW0ge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDM0cHg7XHJcblxyXG4gICAgICAgICAgICAgLmhmLWxvYWRlci1uZXctZG90IHtcclxuICAgICAgICAgICAgICAgIC5zaXplKDE0cHgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubGFyZ2Uge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDY0cHg7XHJcblxyXG4gICAgICAgICAgICAgLmhmLWxvYWRlci1uZXctZG90IHtcclxuICAgICAgICAgICAgICAgIC5zaXplKDE5cHgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi54bGFyZ2Uge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDY2cHg7XHJcblxyXG4gICAgICAgICAgICAgLmhmLWxvYWRlci1uZXctZG90IHtcclxuICAgICAgICAgICAgICAgIC5zaXplKDI3cHgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jaXJjdWxhciB7XHJcbiAgICAgICAgJi54c21hbGwge1xyXG4gICAgICAgICAgICAuc2l6ZSgxNnB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zbWFsbCB7XHJcbiAgICAgICAgICAgIC5zaXplKDI0cHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tZWRpdW0ge1xyXG4gICAgICAgICAgICAuc2l6ZSgzMnB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubGFyZ2Uge1xyXG4gICAgICAgICAgICAuc2l6ZSg0OHB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYueGxhcmdlIHtcclxuICAgICAgICAgICAgLnNpemUoOTZweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gLmhmLWxvYWRlci1uZXctZG90IHtcclxuICAgICAgICAgICAgLnNpemUoMTAwJSk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyYXk7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICAuc2l6ZSgyNSUpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgLmFuaW1hdGlvbihsb2FkZXJfYW5pbWF0aW9uIDAuN3MgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZ3JheXNjaGVtZSA+IC5oZi1sb2FkZXItbmV3LWRvdDpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAuaGYtbG9hZGVyLW5ldy1kb3QuZG90LTcge1xyXG4gICAgICAgICAgICAudHJhbnNmb3JtKHJvdGF0ZSg0NWRlZykpO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgLmFuaW1hdGlvbi1kZWxheSgtMC43cyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAuaGYtbG9hZGVyLW5ldy1kb3QuZG90LTYge1xyXG4gICAgICAgICAgICAudHJhbnNmb3JtKHJvdGF0ZSg5MGRlZykpO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgLmFuaW1hdGlvbi1kZWxheSgtMC42cyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAuaGYtbG9hZGVyLW5ldy1kb3QuZG90LTUge1xyXG4gICAgICAgICAgICAudHJhbnNmb3JtKHJvdGF0ZSgxMzVkZWcpKTtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIC5hbmltYXRpb24tZGVsYXkoLTAuNXMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gLmhmLWxvYWRlci1uZXctZG90LmRvdC00IHtcclxuICAgICAgICAgICAgLnRyYW5zZm9ybShyb3RhdGUoMTgwZGVnKSk7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAuYW5pbWF0aW9uLWRlbGF5KC0wLjRzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IC5oZi1sb2FkZXItbmV3LWRvdC5kb3QtMyB7XHJcbiAgICAgICAgICAgIC50cmFuc2Zvcm0ocm90YXRlKDIyNWRlZykpO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgLmFuaW1hdGlvbi1kZWxheSgtMC4zcyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAuaGYtbG9hZGVyLW5ldy1kb3QuZG90LTIge1xyXG4gICAgICAgICAgICAudHJhbnNmb3JtKHJvdGF0ZSgyNzBkZWcpKTtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIC5hbmltYXRpb24tZGVsYXkoLTAuMnMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gLmhmLWxvYWRlci1uZXctZG90LmRvdC0xIHtcclxuICAgICAgICAgICAgLnRyYW5zZm9ybShyb3RhdGUoMzE1ZGVnKSk7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAuYW5pbWF0aW9uLWRlbGF5KC0wLjFzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmNpcmN1bGFyLWxpbmUge1xyXG5cclxuICAgICAgICAmLnh4c21hbGwge1xyXG4gICAgICAgICAgICAuc3Bpbm5lcigxMHB4OyBAY29sb3ItYmFzZS1za3libHVlNjApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi54c21hbGwge1xyXG4gICAgICAgICAgICAuc3Bpbm5lcigxNnB4OyBAY29sb3ItYmFzZS1za3libHVlNjApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zbWFsbCB7XHJcbiAgICAgICAgICAgIC5zcGlubmVyKDI0cHg7IEBjb2xvci1iYXNlLXNreWJsdWU2MCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm1lZGl1bSB7XHJcbiAgICAgICAgICAgIC5zcGlubmVyKDMycHg7IEBjb2xvci1iYXNlLXNreWJsdWU2MCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmxhcmdlIHtcclxuICAgICAgICAgICAgLnNwaW5uZXIoNDhweDsgQGNvbG9yLWJhc2Utc2t5Ymx1ZTYwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYueGxhcmdlIHtcclxuICAgICAgICAgICAgLnNwaW5uZXIoOTZweDsgQGNvbG9yLWJhc2Utc2t5Ymx1ZTYwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jaXJjdWxhci1saW5lLndoaXRlLFxyXG4gICAgJi5jaXJjdWxhci1saW5lLmdyYXlzY2hlbWUge1xyXG4gICAgICAgICYueHhzbWFsbCB7XHJcbiAgICAgICAgICAgIC5zcGlubmVyKDEwcHg7IEBjb2xvci1iYXNlLXdoaXRlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYueHNtYWxsIHtcclxuICAgICAgICAgICAgLnNwaW5uZXIoMTZweDsgQGNvbG9yLWJhc2Utd2hpdGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zbWFsbCB7XHJcbiAgICAgICAgICAgIC5zcGlubmVyKDI0cHg7IEBjb2xvci1iYXNlLXdoaXRlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWVkaXVtIHtcclxuICAgICAgICAgICAgLnNwaW5uZXIoMzJweDsgQGNvbG9yLWJhc2Utd2hpdGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5sYXJnZSB7XHJcbiAgICAgICAgICAgIC5zcGlubmVyKDQ4cHg7IEBjb2xvci1iYXNlLXdoaXRlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYueGxhcmdlIHtcclxuICAgICAgICAgICAgLnNwaW5uZXIoOTZweDsgQGNvbG9yLWJhc2Utd2hpdGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRlcl9hbmltYXRpb24ge1xyXG4gICAgMCUsIDgwJSwgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4zKTtcclxuICAgIH1cclxuICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBsb2FkZXJfYW5pbWF0aW9uIHtcclxuICAgIDAlLCA4MCUsIDEwMCUge1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSguMyk7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxufVxyXG5ALW8ta2V5ZnJhbWVzIGxvYWRlcl9hbmltYXRpb24ge1xyXG4gICAgMCUsIDgwJSwgMTAwJSB7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSguMyk7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBsb2FkZXJfYW5pbWF0aW9uIHtcclxuICAgIDAlLCA4MCUsIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjMpO1xyXG4gICAgfVxyXG4gICAgNDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlLWNsb2Nrd2lzZSB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgfVxyXG59XHJcbkBrZXlmcmFtZXMgcm90YXRlLWNsb2Nrd2lzZSB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiAgVGhlIHNwaW5uZXIgbG9hZGVyIG1peGluXHJcbiAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgICAgIEl0IGlzIHVzZWQgdG8gc3R5bGUgdGhlIGNpcmN1bGFyIGxpbmUgc3Bpbm5lciBTVkcgZG9tIGRpcmVjdGx5LFxyXG4gICAgICAgIGl0IHNldHMgdGhlIHJhZGlvcyBvZiB0aGUgY2lyY2xlIChyKSBhbmQgdGhlIG9yaWdpbnMgKENYLCBDWSkgYmFzZWQgb24gdGhlIHdpZHRoIGZvciBhIGNvbnNpc3RlbnQgbG9va2luZyBsb2FkZXIgcmVnYXJkbGVzcyBvZiBzaXplLlxyXG4gICAgICAgIHRoZSBzdHJva2UgaXMgY2FsY3VsYXRlZCBwcm9wb3J0aW9uYWwgdG8gdGhlIHNpemUgb2YgdGhlIGNpcmNsZSBhbmQgdGhlIHNpemUgb2YgYXJjIHJhZGl1cyBvZiB0aGUgdG9wIGNpcmNsZSBpcyBjYWxjdWxhdGUgYnkgc3Ryb2tlLWRhc2hhcnJheS5cclxuICAgICAgICBUaGUgY29sb3Igb2YgdGhlIGNpcmNsZXMgaXMgdGhlIHNhbWUgYnV0IHRoZSBhYm92ZSBjaXJjbGUgaXMgZnVsbHkgb3BhcXVlLiAgICovXHJcblxyXG4uc3Bpbm5lcihAc2l6ZSxAY29sb3IpIHtcclxuICAgIC5zaXplKEBzaXplKTtcclxuXHJcbiAgICBAc3Ryb2tlOiByb3VuZCgoQHNpemUvOCkpO1xyXG5cclxuICAgICYgPiAuc3Bpbm5lciB7XHJcbiAgICAgICAgLnNpemUoQHNpemUpO1xyXG4gICAgICAgIGFuaW1hdGlvbjogcm90YXRlLWNsb2Nrd2lzZSAxcyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG5cclxuICAgICAgICBjaXJjbGUge1xyXG4gICAgICAgICAgICByOiAgcm91bmQoKCgwLjQ1ICogQHNpemUpIC0gKEBzdHJva2UvMikpKTtcclxuICAgICAgICAgICAgY3g6IHJvdW5kKCgwLjUgKiBAc2l6ZSkpO1xyXG4gICAgICAgICAgICBjeTogcm91bmQoKDAuNSAqIEBzaXplKSk7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IEBzdHJva2U7XHJcbiAgICAgICAgICAgIHN0cm9rZTogZmFkZShAY29sb3IsIDMwJSk7XHJcbiAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgICAgICAgJi5zcGlubmVyLWJhciB7XHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IEBjb2xvcjtcclxuICAgICAgICAgICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4NTA7XHJcbiAgICAgICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiByb3VuZCgoKDIgKiAzLjE0MTU5ICogKCgwLjQ1ICogQHNpemUpIC0gKEBzdHJva2UvMikpKSAvIDIpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIiAvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBDU1MgaW5kZXBlbmRlbnQgb2YgZGV2aWNlIGZvciBtYXNrIGNvbXBvbmVudFxuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6ICQgNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqL1xuXG4gQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xuIFxuLmhmLW1hc2sge1xuXHQucG9zaXRpb24oMCwwLDAsMCk7XG5cdC5zaXplKDEwMCUpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0Ji13cmFwcGVyIHtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdH1cblxuXHQmLXRleHQtaWNvbi13cmFwcGVyLXZlcnRpY2FsIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxuXG5cdCYtcHJvZ3Jlc3MtdmVydGljYWwge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdG1hcmdpbjogMHB4IDVweDtcblx0fVxuXG5cdCYtcHJvZ3Jlc3MtaG9yaXpvbnRhbCB7XG5cdFx0bWFyZ2luOiA1cHggMHB4O1xuXHR9XG5cblx0Ji1sYWJlbCB7XG5cdFx0bWFyZ2luOiA0cHg7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxuXG5cdC5oZi1pbWFnZSB7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxufSIsIi8qKlxuICogNFBTQSBIRi1KUyBGcmFtZXdvcmsgLSBEZWZhdWx0IENTUyBpbmRlcGVuZGVudCBvbiB0aGVtZSBhbmQgZGV2aWNlIGZvciBtZWRpYSBlbGVtZW50c1xuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6IDIwMTEvMDMvMjkgMTc6NTA6MTIgNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqL1xuXG5AaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG5cbi8qIGhpZGUgY29udHJvbHMgaW4gZnVsbCBzY3JlZW4gKi9cbnZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5oZi1tZWRpYSB7XG4gICAgLmhmLW1lZGlhLXNsaWRlci1taWRkbGUtb3ZlciB7XG4gICAgICAgIC5yZW1vdmUtYm94LXNoYWRvdygpO1xuICAgIH1cblxuICAgIC5oZi1idXR0b24sXG4gICAgLmhmLWJ1dHRvbjpob3ZlcixcbiAgICAuaGYtYnV0dG9uLWhvdmVyLFxuICAgIC5oZi1idXR0b24tYWN0aXZlLmhmLWJ1dHRvbi1ob3ZlcixcbiAgICAuaGYtYnV0dG9uLWZvY3VzLFxuICAgIC5oZi1idXR0b246Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDBweDtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgIC5yZW1vdmUtYm94LXNoYWRvdygpO1xuICAgIH1cblxuICAgIC5oZi1tZWRpYS1zbGlkZXItbWlkZGxlLWhvcml6b250YWwsXG4gICAgLmhmLW1lZGlhLXNsaWRlci1taWRkbGUtdmVydGljYWwge1xuICAgICAgICBib3JkZXItd2lkdGg6IDBweDtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJi1hdWRpbyB7XG4gICAgICAgIC5oZi1tZWRpYS1zbGlkZXItaG9yaXpvbnRhbC10aHVtYixcbiAgICAgICAgLmhmLW1lZGlhLXNsaWRlci12ZXJ0aWNhbC10aHVtYiB7XG4gICAgICAgICAgICAuYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIHRoZSBjdXJyZW50IHZhbHVlIG9mIHRoZSBzbGlkZXIgbXVzdCBiZSBoaWRkZW4gKi9cbiAgICAuaGYtbWVkaWEtc2xpZGVyLWhvcml6b250YWwtY3VycmVudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhmLW1lZGlhLXNsaWRlci5oZi1tZWRpYS1zbGlkZXItaG9yaXpvbnRhbCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cblxuICAgICYuYXVkaW8gLmhmLW1lZGlhLXBsYXktZXJyb3Ige1xuICAgICAgICAucG9zaXRpb24oMCAwKTtcbiAgICB9XG5cbiAgICAuaGYtYnV0dG9uIHtcbiAgICAgICAgZmlsdGVyOiBub25lO1xuICAgIH1cblxuICAgICYsICYtY29udGVudC1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJiA+ICYtY29udGVudC1jb250YWluZXIgPiB2aWRlbyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuaGYtbWVkaWEtZnVsbHNjcmVlbiA+ICYtY29udGVudC1jb250YWluZXIgPiB2aWRlbyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI5MHB4O1xuICAgIH1cblxuICAgICYtaWNvbiB7XG4gICAgICAgIEBoZi1tZWRpYS1pY29uLXBsYXktcGF1c2Utc2l6ZTogMzRweDtcbiAgICAgICAgJi1wbGF5LCAmLXBhdXNlIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDMwcHg7XG5cbiAgICAgICAgICAgICYgPiAuaGYtYnV0dG9uLW91dGVyLWJveCA+IC5oZi1idXR0b24taW5uZXItYm94IHtcbiAgICAgICAgICAgICAgICAuc2l6ZShAaGYtbWVkaWEtaWNvbi1wbGF5LXBhdXNlLXNpemUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLCAmOmZvY3VzLCAmLmhmLWJ1dHRvbi1mb2N1c2VkIHtcbiAgICAgICAgICAgICAgICAuYnRuLWJrLXBvcygwIDApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLCAmLmhmLWJ1dHRvbi1ob3ZlciB7XG4gICAgICAgICAgICAgICAgLmJ0bi1iay1wb3MoLUBoZi1tZWRpYS1pY29uLXBsYXktcGF1c2Utc2l6ZSAwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpkaXNhYmxlZCwgJi5oZi1idXR0b24tZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIC5idG4tYmstcG9zKCgtQGhmLW1lZGlhLWljb24tcGxheS1wYXVzZS1zaXplKjIpIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1wbGF5IHtcbiAgICAgICAgICAgIC5idG4tYmsoZGF0YS11cmkoJy4uL2ltYWdlcy9oZi1tZWRpYS1wbGF5LnBuZycpOyBAaGYtbWVkaWEtaWNvbi1wbGF5LXBhdXNlLXNpemU7KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtcGF1c2Uge1xuICAgICAgICAgICAgLmJ0bi1iayhkYXRhLXVyaSgnLi4vaW1hZ2VzL2hmLW1lZGlhLXBhdXNlLnBuZycpOyBAaGYtbWVkaWEtaWNvbi1wbGF5LXBhdXNlLXNpemU7KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtdWktY29udHJvbHMge1xuICAgICAgICAmID4gLmhmLWxheW91dC1ob3Jpem9udGFsLXN0YWNrIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0c2t5Ymx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXNvdXJjZS1uYW1lLFxuICAgICYtZHVyYXRpb24tY29udHJvbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB9XG5cbiAgICAmLnZpZGVvID4gJi1jb250ZW50LWNvbnRhaW5lciA+ICYtdWktY29udHJvbHMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmLnZpZGVvIHtcbiAgICAgICAgJiwgJiAuaGYtbWVkaWEtY29udGVudC1jb250YWluZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaGYtbWVkaWEtaWNvbiB7XG4gICAgICAgICAgICBAaGYtbWVkaWEtaWNvbi1wbGF5LXBhdXNlLXNpemU6IDEycHg7XG4gICAgICAgICAgICAmLXBsYXksICYtcGF1c2Uge1xuICAgICAgICAgICAgICAgICYgPiAuaGYtYnV0dG9uLW91dGVyLWJveCA+IC5oZi1idXR0b24taW5uZXItYm94IHtcbiAgICAgICAgICAgICAgICAgICAgLnNpemUoQGhmLW1lZGlhLWljb24tcGxheS1wYXVzZS1zaXplKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLCAmOmZvY3VzLCAmLmhmLWJ1dHRvbi1mb2N1c2VkIHtcbiAgICAgICAgICAgICAgICAgICAgLmJ0bi1iay1wb3MoMCAwKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLCAmLmhmLWJ1dHRvbi1ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC5idG4tYmstcG9zKC1AaGYtbWVkaWEtaWNvbi1wbGF5LXBhdXNlLXNpemUgMHB4KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmRpc2FibGVkLCAmLmhmLWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgICAgIC5idG4tYmstcG9zKCgtMipAaGYtbWVkaWEtaWNvbi1wbGF5LXBhdXNlLXNpemUpIDBweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXBsYXkge1xuICAgICAgICAgICAgICAgIC5idG4tYmsoZGF0YS11cmkoJy4uL2ltYWdlcy9oZi1tZWRpYS12aWRlby1wbGF5LnBuZycpOyBAaGYtbWVkaWEtaWNvbi1wbGF5LXBhdXNlLXNpemU7KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1wYXVzZSB7XG4gICAgICAgICAgICAgICAgLmJ0bi1iayhkYXRhLXVyaSgnLi4vaW1hZ2VzL2hmLW1lZGlhLXZpZGVvLXBhdXNlLnBuZycpOyBAaGYtbWVkaWEtaWNvbi1wbGF5LXBhdXNlLXNpemU7KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oZi1tZWRpYS1wbGF5LW1hc2sge1xuICAgICAgICAgICAgQGhmLW1lZGlhLXBsYXktbWFzay1zaXplOiA3MHB4O1xuICAgICAgICAgICAgJiA+IC5oZi1idXR0b24gPiAuaGYtYnV0dG9uLW91dGVyLWJveCA+IC5oZi1idXR0b24taW5uZXItYm94IHtcbiAgICAgICAgICAgICAgICAuc2l6ZShAaGYtbWVkaWEtcGxheS1tYXNrLXNpemUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnBsYXkgPiAuaGYtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAuYnRuLWJrKGRhdGEtdXJpKCcuLi9pbWFnZXMvaGYtbWVkaWEtdmlkZW8tcGxheS1tYXNrLnBuZycpOyBAaGYtbWVkaWEtcGxheS1tYXNrLXNpemU7KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5wYXVzZSAgPiAuaGYtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAuYnRuLWJrKGRhdGEtdXJpKCcuLi9pbWFnZXMvaGYtbWVkaWEtdmlkZW8tcGF1c2UtbWFzay5wbmcnKTsgQGhmLW1lZGlhLXBsYXktbWFzay1zaXplOyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgPiAuaGYtYnV0dG9uLFxuICAgICAgICAgICAgJiA+IC5oZi1idXR0b246Zm9jdXMsXG4gICAgICAgICAgICAmID4gLmhmLWJ1dHRvbi5oZi1idXR0b24tZm9jdXNlZCB7XG4gICAgICAgICAgICAgICAgLmJ0bi1iay1wb3MoMCAwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+IC5oZi1idXR0b246aG92ZXIsXG4gICAgICAgICAgICAmID4gLmhmLWJ1dHRvbi5oZi1idXR0b24taG92ZXIge1xuICAgICAgICAgICAgICAgIC5idG4tYmstcG9zKC1AaGYtbWVkaWEtcGxheS1tYXNrLXNpemUgMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtdm9sdW1lLWJ1dHRvbiB7XG4gICAgICAgICY6aG92ZXIsICYuaGYtYnV0dG9uLWhvdmVyIHtcbiAgICAgICAgICAgICYgPiAuaGYtYnV0dG9uLW91dGVyLWJveCA+IC5oZi1idXR0b24taW5uZXItYm94IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtbXV0ZSB7XG4gICAgICAgICAgICAmLCAmOmhvdmVyLCAmLmhmLWJ1dHRvbi1ob3ZlciwgJjpmb2N1cywgJi5oZi1idXR0b24tZm9jdXNlZCB7XG4gICAgICAgICAgICAgICAgLmJrLWltZyhkYXRhLXVyaSgnLi4vaW1hZ2VzL2hmLW1lZGlhLXZvbHVtZS1tdXRlLnBuZycpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLW5vLW1hcmsge1xuICAgICAgICAgICAgJiwgJjpob3ZlciwgJi5oZi1idXR0b24taG92ZXIsICY6Zm9jdXMsICYuaGYtYnV0dG9uLWZvY3VzZWQge1xuICAgICAgICAgICAgICAgIC5iay1pbWcoZGF0YS11cmkoJy4uL2ltYWdlcy9oZi1tZWRpYS12b2x1bWUtbm8tbWFyay5wbmcnKSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1vbmUtbWFyayB7XG4gICAgICAgICAgICAmLCAmOmhvdmVyLCAmLmhmLWJ1dHRvbi1ob3ZlciwgJjpmb2N1cywgJi5oZi1idXR0b24tZm9jdXNlZCB7XG4gICAgICAgICAgICAgICAgLmJrLWltZyhkYXRhLXVyaSgnLi4vaW1hZ2VzL2hmLW1lZGlhLXZvbHVtZS1vbmUtbWFyay5wbmcnKSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi10d28tbWFya3Mge1xuICAgICAgICAgICAgJiwgJjpob3ZlciwgJi5oZi1idXR0b24taG92ZXIsICY6Zm9jdXMsICYuaGYtYnV0dG9uLWZvY3VzZWQge1xuICAgICAgICAgICAgICAgIC5iay1pbWcoZGF0YS11cmkoJy4uL2ltYWdlcy9oZi1tZWRpYS12b2x1bWUtdHdvLW1hcmtzLnBuZycpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXRocmVlLW1hcmtzIHtcbiAgICAgICAgICAgICYsICY6aG92ZXIsICYuaGYtYnV0dG9uLWhvdmVyLCAmOmZvY3VzLCAmLmhmLWJ1dHRvbi1mb2N1c2VkIHtcbiAgICAgICAgICAgICAgICAuYmstaW1nKGRhdGEtdXJpKCcuLi9pbWFnZXMvaGYtbWVkaWEtdm9sdW1lLXRocmVlLW1hcmtzLnBuZycpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGYtbWVkaWEtc2xpZGVyLWhvcml6b250YWwtdGh1bWIsXG4gICAgLmhmLW1lZGlhLXNsaWRlci12ZXJ0aWNhbC10aHVtYiB7XG4gICAgICAgIC5iay1pbWcoZGF0YS11cmkoJy4uL2ltYWdlcy9oZi1tZWRpYS10aHVtYi5wbmcnKSk7XG4gICAgfVxuXG4gICAgJi1mdWxsc2NyZWVuLWJ0biB7XG5cbiAgICAgICAgQGhmLWZ1bGxzY3JlZW4tYnRuLXNpemU6IDEycHg7XG4gICAgICAgIC5idG4tYmsoZGF0YS11cmkoJy4uL2ltYWdlcy9oZi1leHBhbmQtZnVsbHNjcmVlbi5wbmcnKTsgQGhmLWZ1bGxzY3JlZW4tYnRuLXNpemU7KTtcblxuICAgICAgICAmLmhmLWJ1dHRvbi1ob3ZlciwgJi5oZi1idXR0b24tZm9jdXNlZCB7XG4gICAgICAgICAgICAuYnRuLWJrLXBvcygtQGhmLWZ1bGxzY3JlZW4tYnRuLXNpemUgMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhmLWJ1dHRvbi1jaGVja2VkIHtcbiAgICAgICAgQGhmLWZ1bGxzY3JlZW4tYnRuLWNoZWNrZWQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIC5idG4tYmsoZGF0YS11cmkoJy4uL2ltYWdlcy9oZi1mdWxsc2NyZWVuLW5vcm1hbC5wbmcnKTsgQGhmLWZ1bGxzY3JlZW4tYnRuLWNoZWNrZWQtc2l6ZTspO1xuXG4gICAgICAgICAgICAmLmhmLWJ1dHRvbi1ob3ZlciwgJi5oZi1idXR0b24tZm9jdXNlZCB7XG4gICAgICAgICAgICAgICAgLmJ0bi1iay1wb3MoLUBoZi1mdWxsc2NyZWVuLWJ0bi1jaGVja2VkLXNpemUgMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGYtbWVkaWEtc2xpZGVyIHtcbiAgICAgICAgJi1taWRkbGUtaG9yaXpvbnRhbCwgJi1taWRkbGUtdmVydGljYWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Q5ZDlkOTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY29sb3JlZC12YWx1ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5OTk5O1xuICAgICAgICB9XG5cbiAgICAgICAgJi1ob3Jpem9udGFsLW1heGltdW0sICYtdmVydGljYWwtbWF4aW11bSB7XG4gICAgICAgICAgICBjb2xvcjogI2E3YTdhNztcbiAgICAgICAgfVxuXG4gICAgICAgICYtaG9yaXpvbnRhbC1taW5pbXVtLCAmLXZlcnRpY2FsLW1pbmltdW0ge1xuICAgICAgICAgICAgY29sb3I6ICM2YjZiNmI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWF1ZGlvLXZvbHVtZS1zbGlkZXIgLmhmLW1lZGlhLXNsaWRlci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM3MzgyOTM7XG4gICAgfVxuXG4gICAgJi5oZi1tZWRpYS1mdWxsc2NyZWVuIHtcbiAgICAgICAgei1pbmRleDogMjE0NzQ4MzY0NztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcblxuICAgICAgICAmLCAmID4uaGYtbWVkaWEtY29udGVudC1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnZpZGVvIHtcbiAgICAgICAgJi5oZi1tZWRpYS1mdWxsc2NyZWVuID4gLmhmLW1lZGlhLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAuaGYtbWVkaWEtc291cmNlLW5hbWUge1xuICAgICAgICAgICAgLnBvc2l0aW9uKDEwcHggMTBweCk7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXBsYXktbWFzayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC5zaXplKDEwMCUpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgPiAuaGYtYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgLnNpemUoNzBweCk7XG4gICAgICAgICAgICAuY2VudGVyV2l0aFRyYW5zZm9ybSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhmLW1lZGlhLXNsaWRlciB7XG4gICAgICAgICYtbWlkZGxlIHtcbiAgICAgICAgICAgICYuaGYtbWVkaWEtc2xpZGVyLW1pZGRsZS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuaGYtbWVkaWEtc2xpZGVyLW1pZGRsZS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICAgICAgLnNpemUoMTAwJSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5oZi1tZWRpYS1zbGlkZXItaG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLmhmLW1lZGlhLXNsaWRlci12ZXJ0aWNhbCB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICYtaG9yaXpvbnRhbCB7XG4gICAgICAgICAgICAmLW1pbmltdW0tY2VudGVyLCAmLW1heGltdW0tY2VudGVyIHsgdG9wOiAtMXB4OyB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXZvbHVtZS1zbGlkZXIge1xuICAgICAgICAuaGYtbWVkaWEtc2xpZGVyLW1pZGRsZS1ob3Jpem9udGFsLXdpdGgtbWlubWF4LWNlbnRlciB7XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZi1tZWRpYS1zbGlkZXItdmVydGljYWx7XG4gICAgICAgICAgICAmLXRodW1iIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZi1tZWRpYS1zbGlkZXItaG9yaXpvbnRhbC10aHVtYiB7XG4gICAgICAgIC5zaXplKDEycHgpO1xuICAgIH1cbn1cblxuLmhmLW1lZGlhLWZ1bGxzY3JlZW4tYnRuID4gLmhmLWJ1dHRvbi1vdXRlci1ib3ggPiAuaGYtYnV0dG9uLWlubmVyLWJveCB7XG4gICAgLnNpemUgKDEycHgpO1xufVxuXG4uaGYtbWVkaWEtZnVsbHNjcmVlbi1idG4uaGYtYnV0dG9uLWNoZWNrZWQgPiAuaGYtYnV0dG9uLW91dGVyLWJveCA+IC5oZi1idXR0b24taW5uZXItYm94IHtcbiAgICAuc2l6ZSgyMHB4KTtcbn1cblxuLmhmLW1lZGlhLnZpZGVvLmhmLW1lZGlhLWZ1bGxzY3JlZW4gLmhmLW1lZGlhLXBsYXktbWFzayA+IC5oZi1idXR0b24ge1xuICAgIC5zaXplKDE0MHB4KTtcbn1cblxuLmhmLWJ1dHRvbi5oZi1tZWRpYS12b2x1bWUtYnV0dG9uIHtcbiAgICAuc2l6ZSgxNnB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLmhmLW1lZGlhLXNsaWRlciB7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgICYtZGlzYWJsZWR7XG4gICAgICAgIGNvbG9yOiNjY2M7XG5cbiAgICAgICAgLmhmLW1lZGlhLXNsaWRlci1taWRkbGUtaG9yaXpvbnRhbHtcbiAgICAgICAgICAgIC5iZy1ib3JkZXIobm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAjRjVGNUY1LCAjRThFOEU4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZi1tZWRpYS1zbGlkZXItbWlkZGxlLW92ZXIge1xuICAgICAgICAgICAgLmJveC1zaGFkb3coMHB4IDBweCAwcHggMHB4IHJnYmEoODUsIDE2OSwgMTUsIDEwMCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhmLW1lZGlhLXNsaWRlci1ob3Jpem9udGFsLXRodW1ie1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZGF0YS11cmkoJ0B7dXJsX2xldmVsMV9wYXRofWhmLXNsaWRlci1hcnJvdy1oLWRpc2FibGVkLnBuZycpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhmLW1lZGlhLXNsaWRlci1taWRkbGUtdmVydGljYWwge1xuICAgICAgICAgICAgLmJnLWJvcmRlcihub25lIHJlcGVhdCBzY3JvbGwgMCAwICNGNUY1RjUsICNFOEU4RTgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhmLW1lZGlhLXNsaWRlci12ZXJ0aWNhbC10aHVtYntcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1oZi1zbGlkZXItYXJyb3ctdi1kaXNhYmxlZC5wbmcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIFJlbW92ZSBkb3R0ZWQgb3V0bGluZSBvbiBjbGljayBmb3Igc2xpZGVycyAqL1xuICAgICYtbWlkZGxlOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMHB4O1xuICAgIH1cblxuICAgICYtY29sb3JlZC12YWx1ZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4NSwgMTY5LCAxNSwgMTAwKTtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoMXB4KTtcbiAgICB9XG5cbiAgICAmLWhvcml6b250YWwge1xuICAgICAgICBmb250LWZhbWlseTogVmVyZGFuYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuXG4gICAgICAgIC5oZi1tZWRpYS1zbGlkZXItY29udGVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLW1pbmltdW0sXG4gICAgICAgICYtbWF4aW11bSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbWluaW11bS1mcm9udCxcbiAgICAgICAgJi1taW5pbXVtLWNlbnRlcixcbiAgICAgICAgJi1tYXhpbXVtLWZyb250IHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLW1pbmltdW0tYmVoaW5kLFxuICAgICAgICAmLW1heGltdW0tY2VudGVyLFxuICAgICAgICAmLW1heGltdW0tYmVoaW5kIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMnB4O1xuICAgICAgICAgICAgLnNpemUoYXV0bywgMTAwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAuaGYtbWVkaWEtc2xpZGVyLWNvbG9yZWQtdmFsdWUge1xuICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgLnNpemUoOXB4LCAxMDAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY3VycmVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDIycHg7XG4gICAgICAgICAgICBjdXJzb3I6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLW1pZGRsZS1ob3Jpem9udGFsIHtcbiAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYgMCUsICNlNWU2ZTMgNDglLCAjZmZmZmZmIDEwMCUpOyAvKiBGRjMuNisgKi9cbiAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCNmZmZmZmYpLCBjb2xvci1zdG9wKDQ4JSwjZTVlNmUzKSwgY29sb3Itc3RvcCgxMDAlLCNmZmZmZmYpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmIDAlLCNlNWU2ZTMgNDglLCNmZmZmZmYgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZmZmZiAwJSwjZTVlNmUzIDQ4JSwjZmZmZmZmIDEwMCUpOyAvKiBPcGVyYSAxMS4xMCsgKi9cbiAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZmZmZiAwJSwjZTVlNmUzIDQ4JSwjZmZmZmZmIDEwMCUpOyAvKiBJRTEwKyAqL1xuICAgICAgICAvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYgMCUsI2U1ZTZlMyA0OCUsI2ZmZmZmZiAxMDAlKTsgLyogVzNDICovXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIC5zaXplKDEwMCUsIDNweCk7XG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDJweCk7XG4gICAgICAgIC5ib3gtc2l6aW5nKCk7XG4gICAgICAgIC50cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgIC5ib3JkZXIoI0JCQkJCQik7XG4gICAgfVxuXG4gICAgJi1taWRkbGUtb3ZlciB7XG4gICAgICAgIC5ib3gtc2hhZG93KDBweCAwcHggMnB4IDBweCByZ2JhKDg1LCAxNjksIDE1LCAxMDApKTtcbiAgICB9XG5cbiAgICAmLXRodW1iIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYtaG9yaXpvbnRhbC10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1oZi1zbGlkZXItYXJyb3ctaC5wbmcnKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAuc2l6ZSgxOHB4KTtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoOHB4KTtcbiAgICAgICAgLnRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcblxuICAgICAgICAmLW92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZGF0YS11cmkoJ0B7dXJsX2xldmVsMV9wYXRofWhmLXNsaWRlci1hcnJvdy1oLW92ZXIucG5nJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiB2ZXJ0aWNhbCAqL1xuICAgICYtdmVydGljYWwge1xuICAgICAgICBmb250LWZhbWlseTogVmVyZGFuYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuXG4gICAgICAgIC5oZi1tZWRpYS1zbGlkZXItY29udGVudCB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbWluaW11bSxcbiAgICAgICAgJi1tYXhpbXVtIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdGh1bWIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZGF0YS11cmkoJ0B7dXJsX2xldmVsMV9wYXRofWhmLXNsaWRlci1hcnJvdy12LnBuZycpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogLTVweDtcbiAgICAgICAgICAgIC5zaXplKDE4cHgpO1xuICAgICAgICAgICAgLmJvcmRlci1yYWRpdXMoOHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdGh1bWItb3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBkYXRhLXVyaSgnQHt1cmxfbGV2ZWwxX3BhdGh9aGYtc2xpZGVyLWFycm93LXYtb3Zlci5wbmcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY3VycmVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjdXJzb3I6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAuaGYtbWVkaWEtc2xpZGVyLWNvbG9yZWQtdmFsdWUge1xuICAgICAgICAgICAgLnNpemUoMTAwJSwgOXB4KTtcbiAgICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1jb250ZW50LXZlcnRpY2FsIHtcbiAgICAgICAgLmRpc3BsYXkoZmxleCk7XG4gICAgICAgIC5mbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xuICAgIH1cblxuICAgICYtbWlkZGxlLXZlcnRpY2FsIHtcbiAgICAgICAgLmJvcmRlcigjQkJCQkJCKTtcbiAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmZmZmZmIDAlLCAjZTVlNmUzIDQ4JSwgI2ZmZmZmZiAxMDAlKTsgLyogRkYzLjYrICovXG4gICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUsI2ZmZmZmZiksIGNvbG9yLXN0b3AoNDglLCNlNWU2ZTMpLCBjb2xvci1zdG9wKDEwMCUsI2ZmZmZmZikpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgICAgICAgLyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmZmZmZmIDAlLCNlNWU2ZTMgNDglLCNmZmZmZmYgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmZmZmYgMCUsI2U1ZTZlMyA0OCUsI2ZmZmZmZiAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovXG4gICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmZmZmZmIDAlLCNlNWU2ZTMgNDglLCNmZmZmZmYgMTAwJSk7IC8qIElFMTArICovXG4gICAgICAgIC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmZmZmYgMCUsI2U1ZTZlMyA0OCUsI2ZmZmZmZiAxMDAlKTsgLyogVzNDICovXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTRweDtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoMnB4KTtcbiAgICAgICAgLmJveC1zaXppbmcoKTtcbiAgICAgICAgLnNpemUoNnB4LCAxMDAlKTtcbiAgICB9XG59XG5cblxuXG4iLCIvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBDU1MgaW5kZXBlbmRlbnQgb2YgZGV2aWNlIGZvciBwb3B1cCBjb21wb25lbnQuXG4gKlxuICogQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpICREYXRlVGltZTogJCA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5cbkBpbXBvcnQgKHJlZmVyZW5jZSkgJ191dGlsJztcblxuLmhmLXBvcHVwIHtcbiAgICAuYm94LXNpemluZygpO1xuXG4gICAgLyogdGhlIHNoYWRvdyBvZiB0aGUgcG9wdXAgKi9cbiAgICAmLXNoYWRvdyxcbiAgICAuaGYtdG9vbHRpcC1zaGFkb3cge1xuICAgICAgICAuYm94LXNoYWRvdyg1cHggNXB4IDVweCAjNjY2KTtcbiAgICB9XG5cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAuYm94LXNpemluZygpO1xuICAgICAgICAubWluLW1heC1oZWlnaHQoaW5oZXJpdCwgaW5oZXJpdCk7XG4gICAgfVxuXG4gICAgJi1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG59XG5cbi5oZi10b29sdGlwIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAuYm94LXNpemluZygpO1xuXG4gICAgLyogdGhlIHRvb2x0aXAgKi9cbiAgICAmLFxuICAgIC5oZi1saXN0LXRvb2x0aXAge1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cblxuICAgICYtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIC5ib3gtc2l6aW5nKCk7XG4gICAgICAgIC5taW4tbWF4LWhlaWdodChpbmhlcml0LCBpbmhlcml0KTtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoaW5oZXJpdCk7XG4gICAgfVxuXG4gICAgJi1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJi1hcnJvdy1yaWdodC10by1sZWZ0IHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBibGFjaztcbiAgICB9XG5cbiAgICAmLWFycm93LWxlZnQtdG8tcmlnaHQge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogYmxhY2s7XG4gICAgfVxuXG4gICAgJi10b3AtdG8tYm90dG9tIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogYmxhY2s7XG4gICAgfVxuXG4gICAgJi1ib3R0b20tdG8tdG9wIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogYmxhY2s7XG4gICAgfVxufSIsIiAvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBDU1MgaW5kZXBlbmRlbnQgb2YgZGV2aWNlIGZvciBtYXNrIGNvbXBvbmVudFxuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAyMDE0IDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuIEBpbXBvcnQgKHJlZmVyZW5jZSkgJ191dGlsJztcbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfY29uc3QnO1xuXG4gLyogQWxsIEhUTUw1IHByb2dyZXNzIGVuYWJsZWQgYnJvd3NlcnMgKi9cbiBwcm9ncmVzcyB7XG5cdCBjb2xvcjogI0EwQTBBMDtcblxuXHQmLFxuXHQmW3JvbGVdXHR7ICAgICAvKiBwb2x5ZmlsbCAqL1xuXG5cdFx0LyogVHVybnMgb2ZmIHN0eWxpbmcgLSBub3QgdXN1YWxseSBuZWVkZWQsIGJ1dCBnb29kIHRvIGtub3cuICovXG5cdFx0LmFwcGVhcmFuY2UoKTtcblx0XHQvKiBnZXRzIHJpZCBvZiBkZWZhdWx0IGJvcmRlciBpbiBGaXJlZm94IGFuZCBPcGVyYS4gKi9cblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0LyogTmVlZHMgdG8gYmUgaW4gaGVyZSBmb3IgU2FmYXJpIHBvbHlmaWxsIHNvIGJhY2tncm91bmQgaW1hZ2VzIHdvcmsgYXMgZXhwZWN0ZWQuICovXG5cdFx0YmFja2dyb3VuZC1zaXplOiBhdXRvO1xuXG5cdFx0dmVydGljYWwtYWxpZ246IDBlbTtcblxuXHR9XG5cblx0IC8qIFBvbHlmaWxsICovXG5cdCAmW3JvbGVdOmFmdGVyIHtcblx0XHQgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLyogcmVtb3ZlcyBkZWZhdWx0IGJhY2tncm91bmQgZnJvbSBwb2x5ZmlsbCAqL1xuXHQgfVxuXG5cdCAvKiBFbnN1cmUgZmFsbGJhY2sgdGV4dCBkb2Vzbid0IGFwcGVhciBpbiBwb2x5ZmlsbCAqL1xuXHQgJiBzdHJvbmcge1xuXHRcdCBkaXNwbGF5OiBub25lO1xuXHQgfVxuXG5cdCAmLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogRmlyZWZveCAgKi9cblx0ICZbcm9sZV1bYXJpYS12YWx1ZW5vd10geyAgICAvKiBQb2x5ZmlsbCAqL1xuXHRcdCBiYWNrZ3JvdW5kOiAjRDBEMEQwICFpbXBvcnRhbnQ7IC8qICFpbXBvcnRhbnQgaXMgbmVlZGVkIGJ5IHRoZSBwb2x5ZmlsbCAqL1xuXHQgfVxuXG5cdCAvKiBDaHJvbWUgKi9cblx0ICY6Oi13ZWJraXQtcHJvZ3Jlc3MtYmFyIHtcblx0XHQgYmFja2dyb3VuZDogI0QwRDBEMDtcblx0IH1cblxuXHQgLyogRmlyZWZveCAqL1xuXHQgJjo6LW1vei1wcm9ncmVzcy1iYXIge1xuXHRcdCBiYWNrZ3JvdW5kOiAjQTBBMEEwO1xuXHQgfVxuXG5cdCAvKiBDaHJvbWUgKi9cblx0ICY6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUsXG5cdCAmOjotd2Via2l0LXByb2dyZXNzLWJhci12YWx1ZSB7XG5cdFx0IGJhY2tncm91bmQ6ICNBMEEwQTA7XG5cdCB9XG5cblx0IC8qIFBvbHlmaWxsICovXG5cdCAmW2FyaWEtdmFsdWVub3ddOmJlZm9yZSAge1xuXHRcdCBiYWNrZ3JvdW5kOiAjQTBBMEEwO1xuXHQgfVxuIH1cblxuLmhmLXByb2dyZXNzLWJhciB7XG5cdC5iZy1ib3JkZXIoI0QwRDBEMCwgYmxhY2spO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IDJweDtcblxuXHQmLWhvcml6b250YWwge1xuXHRcdC5zaXplKDEwMCUsIDIwcHgpO1xuXHR9XG5cblx0Ji12ZXJ0aWNhbCB7XG5cdFx0LnNpemUoMjBweCwgMTAwJSk7XG5cdH1cblxuXHQmLWluZGV0ZXJtaW5hdGUge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1oZi1saXN0LWxvYWRlci5naWYnKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuXHRcdC5oZi1wcm9ncmVzcy1iYXItdGh1bWIsXG5cdFx0LmhmLXByb2dyZXNzLWJhci10aHVtYi1zdGF0dXMge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmLXRodW1iIHtcblx0XHRiYWNrZ3JvdW5kOiAjQTBBMEEwIDtcblx0XHQuc2l6ZSgxMDAlKTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdCYtc3RhdHVzIHtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQuc2l6ZSgxMDAlKTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGN1cnNvcjogZGVmYXVsdDtcblx0XHR9XG5cdH1cbn0iLCIvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBza2luIENTUyBpbmRlcGVuZGVudCBvZiBkZXZpY2UgZm9yIHRoZSBSZWxhdGl2ZSBEYXRlIGNvbXBvbmVudC5cbiAqXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgJERhdGVUaW1lOiAyMDExLzAzLzI5IDE3OjUwOjEyIDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuLmhmLXJlbGF0aXZlLWRhdGUge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICYtY2FuLXRvZ2dsZS1kYXRlLWRpc3BsYXkge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgIH1cbn0iLCIgLyoqXG4gKiA0UFNBIEhGLUpTIEZyYW1ld29yayAtIERlZmF1bHQgQ1NTIGluZGVwZW5kZW50IG9mIGRldmljZSBmb3IgcmVzaXplIGNvbXBvbmVudFxuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6ICQgNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqL1xuXG4gQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xuIEBpbXBvcnQgKHJlZmVyZW5jZSkgJ19jb25zdCc7XG5cbi8qIHJlc2l6ZSBoYW5kbGVyIGZyb20gdGhlIG1pZGRsZSBvZiB0aGUgdG9wIG1hcmdpbiAqL1xuLmhmLWZ4LXJlc2l6ZXIge1xuXHQmLXRvcCB7XG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0dG9wOjBweDtcblx0XHRsZWZ0OjUwJTtcblx0XHRtYXJnaW4tbGVmdDotMTNweDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOmRhdGEtdXJpKFwiQHt1cmxfbGV2ZWwxX3BhdGh9ZHJhZy1ob3Jpem9udGFsLnBuZ1wiKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjpib3R0b20gbGVmdDtcblx0XHQuc2l6ZSgyNnB4LCA1cHgpO1xuXG5cdFx0LyogcmVzaXplIGhhbmRsZXIgZnJvbSB0aGUgdG9wIHJpZ2h0IGNvcm5lciAqL1xuXHRcdCZyaWdodCB7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHRvcDo1cHg7XG5cdFx0XHRyaWdodDo1cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOmRhdGEtdXJpKFwiQHt1cmxfbGV2ZWwxX3BhdGh9ZHJhZy10b3AtcmlnaHQucG5nXCIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjp0b3AgbGVmdDtcblx0XHRcdC5zaXplKDExcHgpO1xuXHRcdH1cblxuXHRcdC8qIHJlc2l6ZSBoYW5kbGVyIGZyb20gdGhlIHRvcCBsZWZ0IGNvcm5lciAqL1xuXHRcdCZsZWZ0IHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDo1cHg7XG5cdFx0XHRsZWZ0OjVweDtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6ZGF0YS11cmkoXCJAe3VybF9sZXZlbDFfcGF0aH1kcmFnLXRvcC1sZWZ0LnBuZ1wiKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246dG9wIGxlZnQ7XG5cdFx0XHQuc2l6ZSgxMXB4KTtcblx0XHR9XG5cdH1cblxuXHQvKiByZXNpemUgaGFuZGxlciBmcm9tIHRoZSBtaWRkbGUgb2YgdGhlIGJvdHRvbSBtYXJnaW4gKi9cblx0Ji1ib3R0b20ge1xuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdGJvdHRvbTowcHg7XG5cdFx0bGVmdDo1MCU7XG5cdFx0bWFyZ2luLWxlZnQ6LTEzcHg7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTpkYXRhLXVyaShcIkB7dXJsX2xldmVsMV9wYXRofWRyYWctaG9yaXpvbnRhbC5wbmdcIik7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246Ym90dG9tIGxlZnQ7XG5cdFx0LnNpemUoMjZweCwgNXB4KTtcblxuXHRcdC8qIHJlc2l6ZSBoYW5kbGVyIGZyb20gdGhlIGJvdHRvbSByaWdodCBjb3JuZXIgKi9cblx0XHQmcmlnaHQge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ym90dG9tOjVweDtcblx0XHRcdHJpZ2h0OjVweDtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6ZGF0YS11cmkoXCJAe3VybF9sZXZlbDFfcGF0aH1kcmFnLWJvdHRvbS1yaWdodC5wbmdcIik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOmJvdHRvbSByaWdodDtcblx0XHRcdC5zaXplKDExcHgpO1xuXHRcdH1cblxuXHRcdC8qIHJlc2l6ZSBoYW5kbGVyIGZyb20gdGhlIGJvdHRvbSBsZWZ0IGNvcm5lciAqL1xuXHRcdCZsZWZ0IHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTo1cHg7XG5cdFx0XHRsZWZ0OjVweDtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6ZGF0YS11cmkoXCJAe3VybF9sZXZlbDFfcGF0aH1kcmFnLWJvdHRvbS1sZWZ0LnBuZ1wiKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246Ym90dG9tIGxlZnQ7XG5cdFx0XHQuc2l6ZSgxMXB4KTtcblx0XHR9XG5cdH1cblxuXHQvKiByZXNpemUgaGFuZGxlciBmcm9tIHRoZSBtaWRkbGUgb2YgdGhlIHJpZ2h0IG1hcmdpbiAqL1xuXHQmLXJpZ2h0IHtcblx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRyaWdodDowcHg7XG5cdFx0dG9wOjUwJTtcblx0XHRtYXJnaW4tdG9wOi0xM3B4O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6ZGF0YS11cmkoXCJAe3VybF9sZXZlbDFfcGF0aH1kcmFnLXZlcnRpY2FsLnBuZ1wiKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjpib3R0b20gbGVmdDtcblx0XHQuc2l6ZSg1cHgsIDI2cHgpO1xuXHR9XG5cblx0LyogcmVzaXplIGhhbmRsZXIgZnJvbSB0aGUgbWlkZGxlIG9mIHRoZSBsZWZ0IG1hcmdpbiAqL1xuXHQmLWxlZnQge1xuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdGxlZnQ6MHB4O1xuXHRcdHRvcDo1MCU7XG5cdFx0bWFyZ2luLXRvcDotMTNweDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOmRhdGEtdXJpKFwiQHt1cmxfbGV2ZWwxX3BhdGh9ZHJhZy12ZXJ0aWNhbC5wbmdcIik7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246Ym90dG9tIGxlZnQ7XG5cdFx0LnNpemUoNXB4LCAyNnB4KTtcblx0fVxuXG5cdC8qIHRoZSB3cmFwcGVyIG9mIGEgcmVzaXplIGhhbmRsZXIgcGxhY2VkIGluIHRoZSBtaWRkbGUgb2YgdGhlIHRvcCBtYXJnaW4gKi9cblx0Ji13cmFwcGVyLXRvcCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNXB4O1xuXHRcdGhlaWdodDogNXB4O1xuXHR9XG5cblx0LyogdGhlIHdyYXBwZXIgb2YgYSByZXNpemUgaGFuZGxlciBwbGFjZWQgaW4gdGhlIG1pZGRsZSBvZiB0aGUgcmlnaHQgbWFyZ2luICovXG5cdCYtd3JhcHBlci1yaWdodCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiA1cHg7XG5cdFx0d2lkdGg6IDVweDtcblx0fVxuXG5cdC8qIHRoZSB3cmFwcGVyIG9mIGEgcmVzaXplIGhhbmRsZXIgcGxhY2VkIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJvdHRvbSBtYXJnaW4gKi9cblx0Ji13cmFwcGVyLWJvdHRvbSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogNXB4O1xuXHRcdGhlaWdodDogNXB4O1xuXHR9XG5cblx0LyogdGhlIHdyYXBwZXIgb2YgYSByZXNpemUgaGFuZGxlciBwbGFjZWQgaW4gdGhlIG1pZGRsZSBvZiB0aGUgbGVmdCBtYXJnaW4gKi9cblx0Ji13cmFwcGVyLWxlZnQge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRsZWZ0OiA1cHg7XG5cdFx0d2lkdGg6IDVweDtcblx0fVxuXG5cdC8qIHRoZSAnZ2hvc3QnIGVsZW1lbnQgKi9cblx0Ji1naG9zdCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXdpZHRoOiAycHggMnB4IDJweCAycHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHQvKiB0aGUgJ21hcmtSZXNpemUnIGNsYXNzICovXG5cdCYtbWFyayB7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRib3JkZXItd2lkdGg6IDJweDtcblx0XHRib3JkZXItY29sb3I6IGJsYWNrO1xuXHR9XG5cblx0LyogdGhlIHZpc2libGUgcGFydCBvZiB0aGUgaGFuZGxlICovXG5cdCYtdmlzaWJsZS1oYW5kbGUge1xuXHRcdGZpbHRlcjogaW5oZXJpdDtcblx0fVxufVxuXG4vKiBjbGFzcyB0aGF0IGhpZGVzIHRoZSByZXNpemUgaGFuZGxlciAqL1xuLmhmLXJlc2l6ZS1ib3JkZXItaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogY2xhc3MgdGhhdCBzaG93cyB0aGUgcmVzaXplIGhhbmRsZXIgKi9cbi5oZi1yZXNpemUtYm9yZGVyLXZpc2libGUge1xuXHRkaXNwbGF5OiBibG9jaztcbn0iLCIgLyoqXG4gKiA0UFNBIEhGLUpTIEZyYW1ld29yayAtIERlZmF1bHQgQ1NTIGluZGVwZW5kZW50IG9mIHRoZW1lIGFuZCBkZXZpY2UgZm9yIGNvbnRhaW5lcnNcbiAqXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgJERhdGVUaW1lOiAkIDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuIEBpbXBvcnQgKHJlZmVyZW5jZSkgJ191dGlsJztcbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfY29sb3JzJztcblxuIEBzY3JvbGxiYXItdGh1bWItdGhpY2tuZXNzOiA4cHg7XG4gQHNjcm9sbGJhci10aHVtYi10aGlja25lc3MtZXhwYW5kZWQ6IDEycHg7XG4gQHNjcm9sbGJhci1uYXYtYnV0dG9uLXNpemU6IDE2cHg7XG4gQHNjcm9sbGJhci1uYXYtYnV0dG9uLWFycm93LXRoaWNrbmVzczogKEBzY3JvbGxiYXItdGh1bWItdGhpY2tuZXNzIC8gMik7XG5cbiAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gTmF0aXZlIFNjcm9sbEJhciA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAvLyBzY3JvbGxiYXJzIG9uIHdlYmtpdFxuIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICB3aWR0aDogQHNjcm9sbGJhci10aHVtYi10aGlja25lc3MtZXhwYW5kZWQ7XG4gICAgIGhlaWdodDogQHNjcm9sbGJhci10aHVtYi10aGlja25lc3MtZXhwYW5kZWQ7XG4gICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuIH1cbiA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gfVxuIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2s6aG92ZXIge1xuICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItY2Fzc2VsOTY7XG4gfVxuIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItZ3JheTczO1xuICAgICAuYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiB9XG4gOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1jYXNzZWw1NztcbiAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItY2Fzc2VsOTY7XG4gfVxuXG4gLyogc2V0IGJ1dHRvbih0b3AgYW5kIGJvdHRvbSBvZiB0aGUgc2Nyb2xsYmFyKSAqL1xuIDo6LXdlYmtpdC1zY3JvbGxiYXItYnV0dG9uLFxuIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2stcGllY2UsXG4gOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIsXG4gOjotd2Via2l0LXJlc2l6ZXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAuZ3JheXNjaGVtZSB7XG4gICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2s6aG92ZXIge1xuICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWJhc2UtY2Fzc2VsO1xuICAgICB9XG4gICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yLWNhc3NlbDU3O1xuICAgICAgICAgLmJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICB9XG4gICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWNhc3NlbDQ3O1xuICAgICB9XG4gfVxuXG4gLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IEh1YmZyb250IFNjcm9sbEJhciA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAvKlxuICAqIFZlcnRpY2FsIFNjcm9sbGJhclxuICAqL1xuIC5oZi1zY3JvbGxiYXItdmVydGljYWwge1xuICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgIHRvcDogMDtcbiAgICAgYm90dG9tOiAwO1xuICAgICAuc2l6ZShAc2Nyb2xsYmFyLXRodW1iLXRoaWNrbmVzczsgMTAwJSk7XG5cbiAgICAgLmRpc3BsYXkoZmxleCk7XG4gICAgIC5mbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xuXG4gICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgIC5ib3gtc2l6aW5nKCk7XG4gICAgIC5ib3JkZXItcmFkaXVzKDJweCk7XG5cbiAgICAvKlxuICAgICAqIFNjcm9sbCBUcmFja1xuICAgICAqL1xuICAgICAmLXRyYWNrIHtcbiAgICAgICAgIC5mbGV4LWdyb3coMSk7XG4gICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgfVxuXG4gICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1jYXNzZWw5NjtcblxuICAgICAmOm5vdCg6aG92ZXIpOm5vdCg6YWN0aXZlKSB7XG4gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAudHJhbnNpdGlvbih3aWR0aCAuM3MgZWFzZS1pbiAuN3MsIGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UtaW4gLjdzOyk7XG4gICAgIH1cbiAgICAgLyogdGhlIHNjcm9sbCBiYXIgaXMgaG92ZXJlZC9hY3RpdmUgKi9cbiAgICAgJjpob3ZlcixcbiAgICAgJjphY3RpdmUge1xuICAgICAgICAgd2lkdGg6IEBzY3JvbGxiYXItdGh1bWItdGhpY2tuZXNzLWV4cGFuZGVkO1xuXG4gICAgICAgICAudHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dCAuMTVzLCB3aWR0aCAuM3MgZWFzZS1vdXQgLjE1czspO1xuICAgICB9XG4gICAgIC8qIHJlbW92ZSBkb3R0ZWQgb3V0bGluZSBvbiBjbGljayBmb3Igc2Nyb2xsYmFycyAqL1xuICAgICAmOmZvY3VzIHtcbiAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICBib3JkZXI6IDA7XG4gICAgIH1cblxuICAgICAvKlxuICAgICAgKiBTY3JvbGwgVGh1bWJcbiAgICAgICovXG4gICAgICYtdGh1bWIge1xuICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgIC5ib3JkZXItcmFkaXVzKDJweCk7XG5cbiAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1ncmF5NzM7XG4gICAgIH1cbiAgICAgJi10aHVtYjpob3ZlciwgJi10aHVtYjphY3RpdmUgeyBiYWNrZ3JvdW5kOiBAY29sb3ItY2Fzc2VsNTc7IH1cblxuICAgICAvKlxuICAgICAgKiBOYXZpZ2F0aW9uIGJ1dHRvbnNcbiAgICAgICovXG4gICAgIC5oZi1zY3JvbGxiYXItbmF2LWJ0biB7XG4gICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgaGVpZ2h0OiBAc2Nyb2xsYmFyLW5hdi1idXR0b24tc2l6ZTtcbiAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgLmJvcmRlci1yYWRpdXMoMnB4KTtcblxuICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICB9XG5cbiAgICAgLmhmLXNjcm9sbGJhci1uYXYtYnRuOmJlZm9yZSB7XG4gICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgIH1cblxuICAgICAuaGYtc2Nyb2xsYmFyLW5hdi1idG46YWZ0ZXIge1xuICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICB9XG5cbiAgICAgLyogYmFja3dhcmQgYnV0dG9uICovXG4gICAgIC5oZi1zY3JvbGxiYXItbmF2LWJ0bi1iYWNrd2FyZDphZnRlciB7XG4gICAgICAgICAuZHJhdy1hcnJvdyhAc2Nyb2xsYmFyLW5hdi1idXR0b24tYXJyb3ctdGhpY2tuZXNzOyBAY29sb3ItZ3JheTczOyB0b3ApO1xuICAgICB9XG4gICAgIC5oZi1zY3JvbGxiYXItbmF2LWJ0bi1iYWNrd2FyZDpob3ZlcjphZnRlciwgLmhmLXNjcm9sbGJhci1uYXYtYnRuLWJhY2t3YXJkOmFjdGl2ZTphZnRlciB7XG4gICAgICAgICAuZHJhdy1hcnJvdyhAc2Nyb2xsYmFyLW5hdi1idXR0b24tYXJyb3ctdGhpY2tuZXNzOyBAY29sb3ItY2Fzc2VsNTc7IHRvcCk7XG4gICAgIH07XG5cbiAgICAgLyogZm9yd2FyZCBidXR0b24gKi9cbiAgICAgLmhmLXNjcm9sbGJhci1uYXYtYnRuLWZvcndhcmQ6YWZ0ZXIge1xuICAgICAgICAgLmRyYXctYXJyb3coQHNjcm9sbGJhci1uYXYtYnV0dG9uLWFycm93LXRoaWNrbmVzczsgQGNvbG9yLWdyYXk3MzsgYm90dG9tKTtcbiAgICAgfVxuICAgICAuaGYtc2Nyb2xsYmFyLW5hdi1idG4tZm9yd2FyZDpob3ZlcjphZnRlciwgLmhmLXNjcm9sbGJhci1uYXYtYnRuLWZvcndhcmQ6YWN0aXZlOmFmdGVyIHtcbiAgICAgICAgIC5kcmF3LWFycm93KEBzY3JvbGxiYXItbmF2LWJ1dHRvbi1hcnJvdy10aGlja25lc3M7IEBjb2xvci1jYXNzZWw1NzsgYm90dG9tKTtcbiAgICAgfTtcbiB9XG5cbiAvKlxuICAqIEhvcml6b250YWwgU2Nyb2xsYmFyXG4gICovXG4gLmhmLXNjcm9sbGJhci1ob3Jpem9udGFsIHtcbiAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICBsZWZ0OiAwO1xuICAgICByaWdodDogMDtcbiAgICAgLnNpemUoMTAwJTsgQHNjcm9sbGJhci10aHVtYi10aGlja25lc3MpO1xuXG4gICAgIC5kaXNwbGF5KGZsZXgpO1xuICAgICAuZmxleC1kaXJlY3Rpb24ocm93KTtcblxuICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAuYm94LXNpemluZygpO1xuICAgICAuYm9yZGVyLXJhZGl1cygycHgpO1xuXG4gICAgIC8qXG4gICAgICAqIFNjcm9sbCBUcmFja1xuICAgICAgKi9cbiAgICAgJi10cmFjayB7XG4gICAgICAgICAuZmxleC1ncm93KDEpO1xuICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICB9XG5cbiAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWNhc3NlbDk2O1xuXG4gICAgICY6bm90KDpob3Zlcik6bm90KDphY3RpdmUpIHtcbiAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgIC50cmFuc2l0aW9uKGhlaWdodCAuM3MgZWFzZS1pbiAuN3MsIGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UtaW4gLjdzOyk7XG4gICAgIH1cblxuICAgICAvKiB0aGUgc2Nyb2xsIGJhciBpcyBob3ZlcmVkL2FjdGl2ZSAqL1xuICAgICAmOmhvdmVyLFxuICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICBoZWlnaHQ6IEBzY3JvbGxiYXItdGh1bWItdGhpY2tuZXNzLWV4cGFuZGVkO1xuXG4gICAgICAgICAudHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dCAuMTVzLCBoZWlnaHQgLjNzIGVhc2Utb3V0IC4xNXM7KTtcbiAgICAgfVxuICAgICAvKiByZW1vdmUgZG90dGVkIG91dGxpbmUgb24gY2xpY2sgZm9yIHNjcm9sbGJhcnMgKi9cbiAgICAgJjpmb2N1cyB7XG4gICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgYm9yZGVyOiAwO1xuICAgICB9XG5cbiAgICAgLypcbiAgICAgICogU2Nyb2xsIFRodW1iXG4gICAgICAqL1xuICAgICAmLXRodW1iIHtcbiAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgIHRvcDogMDtcbiAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgLmJvcmRlci1yYWRpdXMoMnB4KTtcblxuICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXk3MztcbiAgICAgfVxuICAgICAmLXRodW1iOmhvdmVyLCAmLXRodW1iOmFjdGl2ZSB7IGJhY2tncm91bmQ6IEBjb2xvci1jYXNzZWw1NzsgfVxuXG4gICAgIC8qXG4gICAgICAqIE5hdmlnYXRpb24gYnV0dG9uc1xuICAgICAgKi9cbiAgICAgLmhmLXNjcm9sbGJhci1uYXYtYnRuIHtcbiAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgd2lkdGg6IEBzY3JvbGxiYXItbmF2LWJ1dHRvbi1zaXplO1xuICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAuYm9yZGVyLXJhZGl1cygycHgpO1xuXG4gICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgIH1cblxuICAgICAuaGYtc2Nyb2xsYmFyLW5hdi1idG46YmVmb3JlIHtcbiAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgfVxuXG4gICAgIC5oZi1zY3JvbGxiYXItbmF2LWJ0bjphZnRlciB7XG4gICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgIH1cblxuICAgICAvKiBiYWNrd2FyZCBidXR0b24gKi9cbiAgICAgLmhmLXNjcm9sbGJhci1uYXYtYnRuLWJhY2t3YXJkOmFmdGVyIHtcbiAgICAgICAgIC5kcmF3LWFycm93KEBzY3JvbGxiYXItbmF2LWJ1dHRvbi1hcnJvdy10aGlja25lc3M7IEBjb2xvci1ncmF5NzM7IGxlZnQpO1xuICAgICB9XG4gICAgIC5oZi1zY3JvbGxiYXItbmF2LWJ0bi1iYWNrd2FyZDpob3ZlcjphZnRlciwgLmhmLXNjcm9sbGJhci1uYXYtYnRuLWJhY2t3YXJkOmFjdGl2ZTphZnRlciB7XG4gICAgICAgICAuZHJhdy1hcnJvdyhAc2Nyb2xsYmFyLW5hdi1idXR0b24tYXJyb3ctdGhpY2tuZXNzOyBAY29sb3ItY2Fzc2VsNTc7IGxlZnQpO1xuICAgICB9O1xuXG4gICAgIC8qIGZvcndhcmQgYnV0dG9uICovXG4gICAgIC5oZi1zY3JvbGxiYXItbmF2LWJ0bi1mb3J3YXJkOmFmdGVyIHtcbiAgICAgICAgIC5kcmF3LWFycm93KEBzY3JvbGxiYXItbmF2LWJ1dHRvbi1hcnJvdy10aGlja25lc3M7IEBjb2xvci1ncmF5NzM7IHJpZ2h0KTtcbiAgICAgfVxuICAgICAuaGYtc2Nyb2xsYmFyLW5hdi1idG4tZm9yd2FyZDpob3ZlcjphZnRlciwgLmhmLXNjcm9sbGJhci1uYXYtYnRuLWZvcndhcmQ6YWN0aXZlOmFmdGVyIHtcbiAgICAgICAgIC5kcmF3LWFycm93KEBzY3JvbGxiYXItbmF2LWJ1dHRvbi1hcnJvdy10aGlja25lc3M7IEBjb2xvci1jYXNzZWw1NzsgcmlnaHQpO1xuICAgICB9O1xuIH1cblxuIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBPbGQgU2Nyb2xsQmFyID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuIC8qIFZlcnRpY2FsIFNjcm9sbEJhciAqL1xuIC5oZi1zY3JvbGxiYXItdmVydGljYWwge1xuXG4gICAgICYtcmlnaHQge1xuICAgICAgICAgcmlnaHQ6IDA7XG4gICAgIH1cblxuICAgICAvKiBUaGUgd3JhcHBlciAqL1xuICAgICAmLXdyYXBwZXIge1xuICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgfVxuXG4gICAgIC8qIFRoZSBjb250ZW50IHRoYXQgd2lsbCBiZSBzY3JvbGxlZCAqL1xuICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgLnNpemUoMTAwJSk7XG4gICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICB9XG5cbiAgICAgLyogVW5hdHRhY2hlZCBzY3JvbGxiYXIgKi9cbiAgICAgJi5oZi1zY3JvbGxiYXItdW5hdHRhY2hlZCB7XG4gICAgICAgICBtYXJnaW46IDAgMnB4O1xuICAgICB9XG4gfVxuXG4gLyogSG9yaXpvbnRhbCBTY3JvbGxCYXIgKi9cbiAuaGYtc2Nyb2xsYmFyLWhvcml6b250YWwge1xuICAgICAmLWJvdHRvbSB7XG4gICAgICAgICBib3R0b206IDA7XG4gICAgIH1cblxuICAgICAvKiBUaGUgd3JhcHBlciAqL1xuICAgICAmLXdyYXBwZXIge1xuICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgfVxuXG4gICAgIC8qIFRoZSBjb250ZW50IHRoYXQgd2lsbCBiZSBzY3JvbGxlZCAqL1xuICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgLnNpemUoMTAwJSk7XG4gICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICB9XG5cbiAgICAgLyogVW5hdHRhY2hlZCBzY3JvbGxiYXIgKi9cbiAgICAgJi5oZi1zY3JvbGxiYXItdW5hdHRhY2hlZCB7XG4gICAgICAgICBtYXJnaW46IDJweCAwO1xuICAgICB9XG4gfSIsIiAvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBDU1MgaW5kZXBlbmRlbnQgb2YgdGhlbWUgYW5kIGRldmljZSBmb3IgY29udGFpbmVyc1xuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6ICQgNFBTQSAod3d3LjRwc2EuY29tKS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqL1xuXG4gQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xuIEBpbXBvcnQgKHJlZmVyZW5jZSkgJ19jb25zdCc7XG4gQGltcG9ydCAocmVmZXJlbmNlKSAnX2NvbG9ycyc7XG5cbiBAc2Nyb2xsYmFyLXRodW1iLXRoaWNrbmVzczogOHB4O1xuIEBzY3JvbGxiYXItdGh1bWItdGhpY2tuZXNzLWV4cGFuZGVkOiAxMHB4O1xuIEBzY3JvbGxiYXItbmF2LWJ1dHRvbi1zaXplOiAxNnB4O1xuIEBzY3JvbGxiYXItbmF2LWJ1dHRvbi1hcnJvdy10aGlja25lc3M6IChAc2Nyb2xsYmFyLXRodW1iLXRoaWNrbmVzcyAvIDIpO1xuXG4gLypcbiAgKiBTY3JvbGwgUGFuZVxuICAqL1xuIC5oZi1zY3JvbGxlciB7XG4gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgLyogaGlkZSB0aGUgJ2ZvY3VzJyBib3JkZXI7IHRoZSBzY3JvbGwgcGFuZSBpcyBmb2N1c2FibGUgaW4gb3JkZXIgdG8gcmVjZWl2ZSBrZXkgZXZlbnRzOiBVUCwgRE9XTiwgUEFHRVVQIGV0Yy4qL1xuICAgICBvdXRsaW5lOiBub25lO1xuICAgICBwYWRkaW5nOiAwO1xuICAgICAuYm94LXNpemluZygpO1xuXG4gICAgICYgPiAmLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAuYm94LXNpemluZygpO1xuICAgICB9XG5cbiAgICAgJi52ZXJ0aWNhbC1zY3JvbGwge1xuICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgfVxuICAgICAmLnZlcnRpY2FsLXNjcm9sbCA+ICYtY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICB9XG5cbiAgICAgJi5ob3Jpem9udGFsLXNjcm9sbCB7XG4gICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICB9XG4gICAgICYuaG9yaXpvbnRhbC1zY3JvbGwgPiAmLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgIH1cblxuICAgICAvKlxuICAgICAgKiBJbnZlcnRlZFxuICAgICAgKi9cbiAgICAgJi52ZXJ0aWNhbC1zY3JvbGwuaW52ZXJ0ZWQge1xuICAgICAgICAgLy90cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgICAgLy8udHJhbnNmb3JtKHJvdGF0ZVgoMTgwZGVnKSk7XG4gICAgICAgICAudHJhbnNmb3JtKHNjYWxlWSgtMSkpO1xuICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgIH1cbiAgICAgJi52ZXJ0aWNhbC1zY3JvbGwuaW52ZXJ0ZWQgPiAmLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICAvL3RyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICAgICAvLy50cmFuc2Zvcm0ocm90YXRlWCgxODBkZWcpKTtcbiAgICAgICAgIC50cmFuc2Zvcm0oc2NhbGVZKC0xKSk7XG5cbiAgICAgICAgIGZsZXg6IDEgMSAwJTtcbiAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgfVxuXG4gICAgICYuaG9yaXpvbnRhbC1zY3JvbGwuaW52ZXJ0ZWQge1xuICAgICAgICAgLy90cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgICAgLy8udHJhbnNmb3JtKHJvdGF0ZVkoMTgwZGVnKSk7XG4gICAgICAgICAudHJhbnNmb3JtKHNjYWxlWCgtMSkpO1xuXG4gICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICB9XG4gICAgICYuaG9yaXpvbnRhbC1zY3JvbGwuaW52ZXJ0ZWQgPiAmLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICAvL3RyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICAgICAvLy50cmFuc2Zvcm0ocm90YXRlWSgxODBkZWcpKTtcbiAgICAgICAgIC50cmFuc2Zvcm0oc2NhbGVYKC0xKSk7XG5cbiAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgIH1cblxuICAgICAvLyBzY3JvbGxiYXJzIG9uIEZGXG4gICAgIHNjcm9sbGJhci1jb2xvcjogQGNvbG9yLWdyYXk3MyBAY29sb3ItY2Fzc2VsOTY7IC8qIHRodW1iIGFuZCB0cmFjayBjb2xvciAqL1xuICAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG5cbiAgICAgJi5ncmF5c2NoZW1lIHtcbiAgICAgICAgIHNjcm9sbGJhci1jb2xvcjogQGNvbG9yLWNhc3NlbDU3IEBjb2xvci1iYXNlLWNhc3NlbDsgLyogdGh1bWIgYW5kIHRyYWNrIGNvbG9yICovXG4gICAgIH1cbiB9XG5cbiAvKlxuICAgICAgKiBTY3JvbGwgdG8gSG9tZSBidXR0b25zXG4gICAgICAqL1xuIC5oZi1idXR0b24tc2Nyb2xsLXRvLWhvbWUge1xuICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgei1pbmRleDogMztcbiAgICAgLnNpemUoMzJweCk7XG4gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgcmlnaHQ6IDMwcHg7XG4gICAgIC5ib3JkZXItcmFkaXVzKDVweCk7XG5cbiAgICAgYmFja2dyb3VuZDogZGF0YS11cmkoXCJAe3VybF9sZXZlbDFfcGF0aH1oZi1idXR0b24tanVtcC10by1sYXRlc3QucG5nXCIpIEBjb2xvci1ncmF5NzMgbm8tcmVwZWF0IGNlbnRlcjtcblxuICAgICAmOmhvdmVyIHtcbiAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1jYXNzZWw1NztcbiAgICAgfVxuXG4gICAgICYuYm90dG9tIHtcbiAgICAgICAgIGJvdHRvbTogN3B4O1xuICAgICB9XG5cbiAgICAgJi50b3Age1xuICAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgICAudHJhbnNmb3JtKHJvdGF0ZSgxODBkZWcpKTtcbiAgICAgfVxuXG4gICAgICYucmlnaHQge1xuICAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICAgLnRyYW5zZm9ybShyb3RhdGUoOTBkZWcpKVxuICAgICB9XG5cbiAgICAgJi5sZWZ0IHtcbiAgICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgIHJpZ2h0OiA3cHg7XG4gICAgICAgICAudHJhbnNmb3JtKHJvdGF0ZSgyNzBkZWcpKTtcbiAgICAgfVxuIH0iLCIvKipcbiAqIDRQU0EgSEYtSlMgRnJhbWV3b3JrIC0gRGVmYXVsdCBiYXNlIENTUyBpbmRlcGVuZGVudCBvZiBkZXZpY2UgZm9yIHdvcmtzcGFjZVxuICpcbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAkRGF0ZVRpbWU6IDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuLyogVmVydGljYWwgc2VwYXJhdG9yICovXG4uaGYtc2VwYXJhdG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmF5O1xuXG4gICAgLyogVmVydGljYWwgc2VwYXJhdG9yICovXG4gICAgJi12ZXJ0aWNhbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JheTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvKiBIb3Jpem9udGFsIHNlcGFyYXRvciAqL1xuICAgICYtaG9yaXpvbnRhbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59IiwiIC8qKlxuICogNFBTQSBIRi1KUyBGcmFtZXdvcmsgLSBEZWZhdWx0IENTUyBpbmRlcGVuZGVudCBvZiBkZXZpY2UgZm9yIHNsaWRlcnNcbiAqXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgJERhdGVUaW1lOiAkIDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuIEBpbXBvcnQgKHJlZmVyZW5jZSkgJ191dGlsJztcbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfY29uc3QnO1xuXG4uaGYtc2xpZGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG91dGxpbmU6IG5vbmU7XG5cdGZvbnQtZmFtaWx5OiBWZXJkYW5hLCBBcmlhbCwgc2Fucy1zZXJpZjtcblx0Zm9udC1zaXplOiA5cHg7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXG5cdC8qIEhvcml6b250YWwgKi9cblx0Ji1ob3Jpem9udGFsIHtcblx0XHQuc2l6ZSgxMDAlLCAzcHgpO1xuXHRcdC5ib3gtc2l6aW5nKCk7XG5cblx0XHQvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZmZmZiAwJSwgI2U1ZTZlMyA0OCUsICNmZmZmZmYgMTAwJSk7IC8qIEZGMy42KyAqL1xuXHRcdC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwjZmZmZmZmKSwgY29sb3Itc3RvcCg0OCUsI2U1ZTZlMyksIGNvbG9yLXN0b3AoMTAwJSwjZmZmZmZmKSk7IC8qIENocm9tZSxTYWZhcmk0KyAqL1xuXHRcdC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmIDAlLCNlNWU2ZTMgNDglLCNmZmZmZmYgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG5cdFx0LyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmIDAlLCNlNWU2ZTMgNDglLCNmZmZmZmYgMTAwJSk7IC8qIE9wZXJhIDExLjEwKyAqL1xuXHRcdC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYgMCUsI2U1ZTZlMyA0OCUsI2ZmZmZmZiAxMDAlKTsgLyogSUUxMCsgKi9cblx0XHQvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYgMCUsI2U1ZTZlMyA0OCUsI2ZmZmZmZiAxMDAlKTsgLyogVzNDICovXG5cblx0XHQuYm9yZGVyKCNCQkJCQkIpO1xuXHRcdC5ib3JkZXItcmFkaXVzKDJweCk7XG5cblx0XHQmLXRodW1iIHtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1oZi1zbGlkZXItYXJyb3ctaC5wbmcnKTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogNTAlICFpbXBvcnRhbnQ7XG5cdFx0XHQudHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkpO1xuXHRcdFx0LnNpemUoMThweCk7XG5cdFx0XHQuYm9yZGVyLXJhZGl1cyg4cHgpO1xuXG5cdFx0XHQmLW92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBkYXRhLXVyaSgnQHt1cmxfbGV2ZWwxX3BhdGh9aGYtc2xpZGVyLWFycm93LWgtb3Zlci5wbmcnKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvKiBWZXJ0aWNhbCAqL1xuXHQmLXZlcnRpY2FsIHtcblx0XHQuc2l6ZSgzcHgsIDEwMCUpO1xuXHRcdC5ib3gtc2l6aW5nKCk7XG5cblx0XHQvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmZmZmYgMCUsICNlNWU2ZTMgNDglLCAjZmZmZmZmIDEwMCUpOyAvKiBGRjMuNisgKi9cblx0XHQvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCNmZmZmZmYpLCBjb2xvci1zdG9wKDQ4JSwjZTVlNmUzKSwgY29sb3Itc3RvcCgxMDAlLCNmZmZmZmYpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXG5cdFx0LyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmZmZmZmIDAlLCNlNWU2ZTMgNDglLCNmZmZmZmYgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG5cdFx0LyogQGFsdGVybmF0ZSAqLyBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZmZmZiAwJSwjZTVlNmUzIDQ4JSwjZmZmZmZmIDEwMCUpOyAvKiBPcGVyYSAxMS4xMCsgKi9cblx0XHQvKiBAYWx0ZXJuYXRlICovIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZmZmZiAwJSwjZTVlNmUzIDQ4JSwjZmZmZmZmIDEwMCUpOyAvKiBJRTEwKyAqL1xuXHRcdC8qIEBhbHRlcm5hdGUgKi8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmZmZmYgMCUsI2U1ZTZlMyA0OCUsI2ZmZmZmZiAxMDAlKTsgLyogVzNDICovXG5cblx0XHQuYm9yZGVyKCNCQkJCQkIpO1xuXHRcdC5ib3JkZXItcmFkaXVzKDJweCk7XG5cblx0XHQmLXRodW1iIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1oZi1zbGlkZXItYXJyb3ctdi5wbmcnKTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IC01cHg7XG5cdFx0XHQuc2l6ZSgxOHB4KTtcblx0XHRcdC5ib3JkZXItcmFkaXVzKDhweCk7XG5cdFx0fVxuXHR9XG5cblx0LyogUmVtb3ZlIGRvdHRlZCBvdXRsaW5lIG9uIGNsaWNrIGZvciBzbGlkZXJzICovXG5cdCY6Zm9jdXMsICYtZm9jdXNlZCB7XG5cdFx0b3V0bGluZTogMDtcblx0fVxuXG5cdC8qIEhvdmVyICovXG5cdCYtaG92ZXIge1xuXHRcdC5ib3gtc2hhZG93KDBweCAwcHggMnB4IDBweCByZ2JhKDg1LCAxNjksIDE1LCAxMDApKTtcblx0fVxuXHQmLWhvdmVyJi1ob3Jpem9udGFsICAmLXRodW1iIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBkYXRhLXVyaSgnQHt1cmxfbGV2ZWwxX3BhdGh9aGYtc2xpZGVyLWFycm93LWgtb3Zlci5wbmcnKTtcblx0fVxuXHQmLWhvdmVyJi12ZXJ0aWNhbCAgJi10aHVtYiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogZGF0YS11cmkoJ0B7dXJsX2xldmVsMV9wYXRofWhmLXNsaWRlci1hcnJvdy12LW92ZXIucG5nJyk7XG5cdH1cblxuXHQvKiBEaXNhYmxlZCAqL1xuXHQmLWRpc2FibGVkJi1ob3Jpem9udGFsIHtcblx0XHRjb2xvcjojY2NjO1xuXHRcdC5iZy1ib3JkZXIobm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAjRjVGNUY1LCAjRThFOEU4KTtcblx0fVxuXHQmLWRpc2FibGVkJi1ob3Jpem9udGFsICYtdGh1bWIge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IGRhdGEtdXJpKCdAe3VybF9sZXZlbDFfcGF0aH1oZi1zbGlkZXItYXJyb3ctaC1kaXNhYmxlZC5wbmcnKTtcblx0fVxuXG5cdCYtZGlzYWJsZWQmLXZlcnRpY2FsIHtcblx0XHRjb2xvcjojY2NjO1xuXHRcdC5iZy1ib3JkZXIobm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAjRjVGNUY1LCAjRThFOEU4KTtcblx0fVxuXHQmLWRpc2FibGVkJi12ZXJ0aWNhbCAmLXRodW1iIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBkYXRhLXVyaSgnQHt1cmxfbGV2ZWwxX3BhdGh9aGYtc2xpZGVyLWFycm93LXYtZGlzYWJsZWQucG5nJyk7XG5cdH1cbn0iLCIvKipcclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiA0UFNBIEh1YkZyb250XHJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogQGxpY2Vuc2UgQ29weXJpZ2h0IChjKSAyMDE3IDRQU0EgKHd3dy40cHNhLmNvbSkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqIEBhdXRob3IgY29zdGluZ1xyXG4gKlxyXG4gKiBUYWJQYW5lIHN0eWxlXHJcbiAqL1xyXG5cclxuQGltcG9ydCAocmVmZXJlbmNlKSAnX3V0aWwnO1xyXG5cclxuLyogcmVnaW9uIC0tLS0tIGhmLXRhYi1wYW5lIC0tLS0tICovXHJcblxyXG4uaGYtdGFiLXBhbmUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcblxyXG4gICAgLmRpc3BsYXkoZmxleCk7XHJcbn1cclxuXHJcbi5oZi10YWItcGFuZS50YWJzLXBvc2l0aW9uLXRvcCxcclxuLmhmLXRhYi1wYW5lLnRhYnMtcG9zaXRpb24tYm90dG9tIHtcclxuICAgIC5mbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xyXG59XHJcblxyXG4uaGYtdGFiLXBhbmUudGFicy1wb3NpdGlvbi1sZWZ0LFxyXG4uaGYtdGFiLXBhbmUudGFicy1wb3NpdGlvbi1yaWdodCB7XHJcbiAgICAuZmxleC1kaXJlY3Rpb24ocm93KTtcclxufVxyXG5cclxuLyogZW5kcmVnaW9uIC0tLS0tIGhmLXRhYi1wYW5lIC0tLS0tICovXHJcblxyXG4vKiByZWdpb24gLS0tLS0gaGYtdGFiLXBhbmUtdGFicy1ob3N0IC0tLS0tICovXHJcblxyXG5cclxuLmhmLXRhYi1wYW5lLXRhYnMtaG9zdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAuYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcblxyXG4gICAgJi10b3Age1xyXG4gICAgICAgIGJvcmRlci10b3A6IDBweCAhaW1wb3J0YW50XHJcbiAgICB9XHJcblxyXG4gICAgJi1ib3R0b20ge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDBweCAhaW1wb3J0YW50XHJcbiAgICB9XHJcblxyXG4gICAgJi1sZWZ0IHtcclxuICAgICAgICBib3JkZXItbGVmdDogMHB4ICFpbXBvcnRhbnRcclxuICAgIH1cclxuXHJcbiAgICAmLXJpZ2h0IHtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IDBweCAhaW1wb3J0YW50XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIGVuZHJlZ2lvbiAtLS0tLSBoZi10YWItcGFuZS10YWJzLWhvc3QgLS0tLS0gKi9cclxuXHJcbi8qIHJlZ2lvbiAtLS0tLSBoZi10YWItcGFuZS1jb250ZW50LWhvc3QgLS0tLS0gKi9cclxuXHJcbi5oZi10YWItcGFuZS1jb250ZW50LWhvc3Qge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAuZmxleC1ncm93KDEpO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4vKiBlbmRyZWdpb24gLS0tLS0gaGYtdGFiLXBhbmUtY29udGVudC1ob3N0IC0tLS0tICovXHJcblxyXG4vKiByZWdpb24gLS0tLS0gaGYtdGFiLWl0ZW0gLS0tLS0gKi9cclxuXHJcbi5oZi10YWItaXRlbSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAuYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgIHBhZGRpbmc6IDZweCAxMHB4O1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAudGV4dC1vdmVyZmxvdyhlbGxpcHNpcyk7XHJcbn1cclxuLyogZW5kcmVnaW9uIC0tLS0tIGhmLXRhYi1pdGVtIC0tLS0tICovIiwiIC8qKlxuICogNFBTQSBIRi1KUyBGcmFtZXdvcmsgLSBEZWZhdWx0IENTUyBpbmRlcGVuZGVudCBvZiB0aGVtZSBhbmQgZGV2aWNlIGZvciB3aW5kb3dcbiAqXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgJERhdGVUaW1lOiA0UFNBICh3d3cuNHBzYS5jb20pLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5cbiBAaW1wb3J0IChyZWZlcmVuY2UpICdfdXRpbCc7XG4gQGltcG9ydCAocmVmZXJlbmNlKSAnX2NvbnN0JztcblxuLyogdGhlIGJvcmRlciAqL1xuIC5oZi13aW5kb3cge1xuXG5cdCAvKiB0aGUgY29udGFpbmVyIGRpdiBvZiB0aGUgY29tcG9uZW50IHRoYXQgcmVwcmVzZW50cyB0aGUgd2luZG93ICovXG5cdCAmLWNvbnRhaW5lciB7XG5cdFx0IHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0IH1cblxuXHQgJiYtYm9yZGVyIHtcblx0XHQgLnBvc2l0aW9uKDAsMCwwLDApO1xuXHRcdCAuYm9yZGVyLXJhZGl1cygxMHB4IDEwcHgpO1xuXHQgfVxuXG5cdCAmJi1jb250ZW50IHtcblx0XHQgLnBvc2l0aW9uKDdweCw3cHgsN3B4LDdweCk7XG5cdFx0IHotaW5kZXg6IDA7XG5cdFx0IGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHQgfVxuXG5cdCAvKiB0aGUgaWZyYW1lcyBjb250YWluZXIgKi9cblx0ICYmLWlmcmFtZXMge1xuXHRcdCAucG9zaXRpb24oNzJweCwgMCwgMCwgMCk7XG5cblx0IC8qIHRoZSBpbmZvIHpvbmUgKi9cblx0ICYmLWluZm8ge1xuXHRcdCBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcblx0XHQgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuXHRcdCBwYWRkaW5nLWJvdHRvbTogNXB4O1xuXHRcdCBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdFx0IHBhZGRpbmctdG9wOiA1cHg7XG5cdCB9XG5cblxuXHQgLyogdGhlIGNvbnRyb2wgYnV0dG9uICovXG5cdCAmJi1jb250cm9sIHtcblx0XHQgZmxvYXQ6IGxlZnQ7XG5cdFx0IG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdCBtYXJnaW4tdG9wOiA2cHg7XG5cdFx0IGJhY2tncm91bmQ6IGRhdGEtdXJpKFwiLi4vaW1hZ2VzL2hmLXdpbmRvdy1jb250cm9sLnBuZ1wiKSBuby1yZXBlYXQ7XG5cdFx0IC5zaXplKDI5cHgsIDI2cHgpO1xuXHQgfVxuXG5cdCAvKiB0aGUgZGl2IHRoYXQgY29udGFpbnMgdGhlIGNvbnRyb2wgYnV0dG9uIHdoZW4gdGhlIHRpdGxlIGhlYWRlciBpcyBtaXNzaW5nICovXG5cdCAmJi1jb250cm9sLWNvbnRhaW5lciB7fVxuXHRcdCBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0IGxlZnQ6IDEwcHg7XG5cdFx0IHRvcDogNnB4O1xuXHRcdCAuc2l6ZSgzMHB4KTtcblx0IH1cblxuXHQgLyogdGhlIHRpdGxlIG9mIHRoZSBhcHBsaWNhdGlvbiAqL1xuXHQgJiYtdGl0bGUge1xuXHRcdCBwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHQgdGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdCBiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcCBsZWZ0O1xuXHRcdCAtbW96LWJpbmRpbmc6IHVybCgnZWxsaXBzaXMueG1sI2VsbGlwc2lzJyk7XG5cdFx0IGNvbG9yOiAjRkZGRkZGO1xuXHRcdCBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZmZmO1xuXHRcdCBmb250LXNpemU6IDEzcHg7XG5cdFx0IGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdCBwYWRkaW5nLXRvcDogNHB4O1xuXHRcdCAuc2l6ZSgxMDAlLCAyN3B4KTtcblx0XHQgLnRleHQtb3ZlcmZsb3coKTtcblx0IH1cblxuXHQgLyogRHJhZ2dlZCBvdmVyIHdpbmRvdyAqL1xuXHQgJiYtY29udGFpbmVyLmhmLXdpbmRvdy1kcmFnLW92ZXIgJiYtYm9yZGVyIHtcblx0XHQgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuXHQgfVxuXG5cdCAvKiB0aGUgYm9yZGVyICovXG5cdCAmJi1ib3JkZXIge1xuXHRcdCAuYm94LXNoYWRvdygwcHggMHB4IDNweCAxcHggIzMzMyk7XG5cdCB9XG5cblx0ICYmLWNvbnRlbnQge1xuXHRcdCAuYmctYm9yZGVyKCNGRkZGRkYsICM1NTU1NTUpO1xuXHQgfVxuXG5cdCAvKiB0aGUgaW5mbyB6b25lICovXG5cdCAmJi1pbmZvIHtcblx0XHQgYmFja2dyb3VuZC1jb2xvcjogI0ZGREQ5Qztcblx0XHQgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0MxODcxNztcblx0IH1cblxuXHQgLyogdGhlIGNvbnRyb2wgYnV0dG9uICovXG5cdCAmJi1jb250cm9sIHtcblx0XHQgYmFja2dyb3VuZDogZGF0YS11cmkoXCJAe3VybF9sZXZlbDFfcGF0aH1oZi13aW5kb3ctY29udHJvbC5wbmdcIikgbm8tcmVwZWF0O1xuXHQgfVxuIH0iXX0= */
