@charset "UTF-8";/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */.fa.fa-pull-left,.fa.pull-left{margin-right:.3em}.fa-fw,.fa-li{text-align:center}.fa,.fa-stack,img{display:inline-block}.fa,body{-moz-osx-font-smoothing:grayscale}.dropdown-pane,.invisible{visibility:hidden}[data-whatinput=mouse] .button,[data-whatinput=mouse] .close-button,[data-whatinput=mouse] .dropdown.menu a,[data-whatinput=mouse] .menu>li,[data-whatinput=mouse] button,a:active,a:hover{outline:0}.contact-info,.legal,.no-bullet,ul.details{list-style:none}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:local('Montserrat Regular'),local('Montserrat-Regular'),url(https://fonts.gstatic.com/s/montserrat/v12/zhcz-_WihjSQC0oHJ9TCYC3USBnSvpkopQaUR-2r7iU.ttf) format('truetype')}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;src:local('Montserrat Bold'),local('Montserrat-Bold'),url(https://fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcvEr6Hm6RMS0v1dtXsGir4g.ttf) format('truetype')}/*!
 *  Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */@font-face{font-family:FontAwesome;src:url(https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/fonts/fontawesome-webfont.eot?v=4.5.0);src:url(https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/fonts/fontawesome-webfont.eot?#iefix&v=4.5.0) format('embedded-opentype'),url(https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/fonts/fontawesome-webfont.woff2?v=4.5.0) format('woff2'),url(https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/fonts/fontawesome-webfont.woff?v=4.5.0) format('woff'),url(https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/fonts/fontawesome-webfont.ttf?v=4.5.0) format('truetype'),url(https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular) format('svg');font-weight:400;font-style:normal}.fa{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa.fa-pull-right,.fa.pull-right{margin-left:.3em}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}body,button,legend{padding:0}button,img,legend{border:0}.fa-pull-left{float:left}.fa-pull-right,.pull-right{float:right}.pull-left{float:left}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{position:relative;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.small-pull-1,.small-pull-10,.small-pull-11,.small-pull-2,.small-pull-3,.small-pull-4,.small-pull-5,.small-pull-6,.small-pull-7,.small-pull-8,.small-pull-9,.small-push-1,.small-push-10,.small-push-11,.small-push-2,.small-push-3,.small-push-4,.small-push-5,.small-push-7,.small-push-8,.small-push-9,sub,sup{position:relative}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-close:before,.fa-remove:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-repeat:before,.fa-rotate-right:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-exclamation-triangle:before,.fa-warning:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-floppy-o:before,.fa-save:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-bolt:before,.fa-flash:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-chain-broken:before,.fa-unlink:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"\f150"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"\f151"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"\f152"}.fa-eur:before,.fa-euro:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-inr:before,.fa-rupee:before{content:"\f156"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"\f158"}.fa-krw:before,.fa-won:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-try:before,.fa-turkish-lira:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-bank:before,.fa-institution:before,.fa-university:before{content:"\f19c"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:"\f1c5"}.fa-file-archive-o:before,.fa-file-zip-o:before{content:"\f1c6"}.fa-file-audio-o:before,.fa-file-sound-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-empire:before,.fa-ge:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-paper-plane:before,.fa-send:before{content:"\f1d8"}.fa-paper-plane-o:before,.fa-send-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-bed:before,.fa-hotel:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-y-combinator:before,.fa-yc:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-television:before,.fa-tv:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;vertical-align:baseline}.button,img{vertical-align:middle}sup{top:-.5em}sub{bottom:-.25em}img{max-width:100%;height:auto;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure{margin:1em 40px}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}a,b,em,i,small,strong{line-height:inherit}dl,ol,p,ul{line-height:1.6}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:not-allowed}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{font-size:100%;box-sizing:border-box}*,::after,::before{box-sizing:inherit}body{margin:0;font-weight:400;line-height:1.5;color:#0a0a0a;background:#fefefe;-webkit-font-smoothing:antialiased}select{width:100%}#map_canvas embed,#map_canvas img,#map_canvas object,.map_canvas embed,.map_canvas img,.map_canvas object,.mqa-display embed,.mqa-display img,.mqa-display object{max-width:none!important}button{overflow:visible;-webkit-appearance:none;-moz-appearance:none;background:0 0;border-radius:0;line-height:1}.is-visible{display:block!important}.is-hidden{display:none!important}.row{max-width:75rem;margin-left:auto;margin-right:auto}.row::after,.row::before{content:' ';display:table}.row::after{clear:both}.row.collapse>.column,.row.collapse>.columns{padding-left:0;padding-right:0}.row .row{margin-left:-.9375rem;margin-right:-.9375rem}.row .row.collapse{margin-left:0;margin-right:0}.row.expanded{max-width:none}.row.expanded .row{margin-left:auto;margin-right:auto}.column,.columns{width:100%;float:left;padding-left:.9375rem;padding-right:.9375rem}.column:last-child:not(:first-child),.columns:last-child:not(:first-child){float:right}.column.end:last-child:last-child,.end.columns:last-child:last-child{float:left}.column.row.row,.row.row.columns{float:none}.row .column.row.row,.row .row.row.columns{padding-left:0;padding-right:0;margin-left:0;margin-right:0}.small-1{width:8.33333%}.small-push-1{left:8.33333%}.small-pull-1{left:-8.33333%}.small-offset-0{margin-left:0}.small-2{width:16.66667%}.small-push-2{left:16.66667%}.small-pull-2{left:-16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{width:25%}.small-push-3{left:25%}.small-pull-3{left:-25%}.small-offset-2{margin-left:16.66667%}.small-4{width:33.33333%}.small-push-4{left:33.33333%}.small-pull-4{left:-33.33333%}.small-offset-3{margin-left:25%}.small-5{width:41.66667%}.small-push-5{left:41.66667%}.small-pull-5{left:-41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{width:50%}.small-push-6{position:relative;left:50%}.small-pull-6{left:-50%}.small-offset-5{margin-left:41.66667%}.small-7{width:58.33333%}.small-push-7{left:58.33333%}.small-pull-7{left:-58.33333%}.small-offset-6{margin-left:50%}.small-8{width:66.66667%}.small-push-8{left:66.66667%}.small-pull-8{left:-66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{width:75%}.small-push-9{left:75%}.small-pull-9{left:-75%}.small-offset-8{margin-left:66.66667%}.small-10{width:83.33333%}.small-push-10{left:83.33333%}.small-pull-10{left:-83.33333%}.small-offset-9{margin-left:75%}.small-11{width:91.66667%}.small-push-11{left:91.66667%}.small-pull-11{left:-91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{width:100%}.small-offset-11{margin-left:91.66667%}.small-up-1>.column,.small-up-1>.columns{width:100%;float:left}.small-up-1>.column:nth-of-type(1n),.small-up-1>.columns:nth-of-type(1n){clear:none}.small-up-1>.column:nth-of-type(1n+1),.small-up-1>.columns:nth-of-type(1n+1){clear:both}.small-up-1>.column:last-child,.small-up-1>.columns:last-child{float:left}.small-up-2>.column,.small-up-2>.columns{width:50%;float:left}.small-up-2>.column:nth-of-type(1n),.small-up-2>.columns:nth-of-type(1n){clear:none}.small-up-2>.column:nth-of-type(2n+1),.small-up-2>.columns:nth-of-type(2n+1){clear:both}.small-up-2>.column:last-child,.small-up-2>.columns:last-child{float:left}.small-up-3>.column,.small-up-3>.columns{width:33.33333%;float:left}.small-up-3>.column:nth-of-type(1n),.small-up-3>.columns:nth-of-type(1n){clear:none}.small-up-3>.column:nth-of-type(3n+1),.small-up-3>.columns:nth-of-type(3n+1){clear:both}.small-up-3>.column:last-child,.small-up-3>.columns:last-child{float:left}.small-up-4>.column,.small-up-4>.columns{width:25%;float:left}.small-up-4>.column:nth-of-type(1n),.small-up-4>.columns:nth-of-type(1n){clear:none}.small-up-4>.column:nth-of-type(4n+1),.small-up-4>.columns:nth-of-type(4n+1){clear:both}.small-up-4>.column:last-child,.small-up-4>.columns:last-child{float:left}.small-up-5>.column,.small-up-5>.columns{width:20%;float:left}.small-up-5>.column:nth-of-type(1n),.small-up-5>.columns:nth-of-type(1n){clear:none}.small-up-5>.column:nth-of-type(5n+1),.small-up-5>.columns:nth-of-type(5n+1){clear:both}.small-up-5>.column:last-child,.small-up-5>.columns:last-child{float:left}.small-up-6>.column,.small-up-6>.columns{width:16.66667%;float:left}.small-up-6>.column:nth-of-type(1n),.small-up-6>.columns:nth-of-type(1n){clear:none}.small-up-6>.column:nth-of-type(6n+1),.small-up-6>.columns:nth-of-type(6n+1){clear:both}.small-up-6>.column:last-child,.small-up-6>.columns:last-child{float:left}.small-collapse>.column,.small-collapse>.columns{padding-left:0;padding-right:0}.expanded.row .small-collapse.row,.small-collapse .row{margin-left:0;margin-right:0}.small-uncollapse>.column,.small-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}.small-centered{margin-left:auto;margin-right:auto}.small-centered,.small-centered:last-child:not(:first-child){float:none;clear:both}.small-pull-0,.small-push-0,.small-uncentered{position:static;margin-left:0;margin-right:0;float:left}@media screen and (min-width:40em){.medium-pull-1,.medium-pull-10,.medium-pull-11,.medium-pull-2,.medium-pull-3,.medium-pull-4,.medium-pull-5,.medium-pull-6,.medium-pull-7,.medium-pull-8,.medium-pull-9,.medium-push-1,.medium-push-10,.medium-push-11,.medium-push-2,.medium-push-3,.medium-push-4,.medium-push-5,.medium-push-7,.medium-push-8,.medium-push-9{position:relative}.medium-1{width:8.33333%}.medium-push-1{left:8.33333%}.medium-pull-1{left:-8.33333%}.medium-offset-0{margin-left:0}.medium-2{width:16.66667%}.medium-push-2{left:16.66667%}.medium-pull-2{left:-16.66667%}.medium-offset-1{margin-left:8.33333%}.medium-3{width:25%}.medium-push-3{left:25%}.medium-pull-3{left:-25%}.medium-offset-2{margin-left:16.66667%}.medium-4{width:33.33333%}.medium-push-4{left:33.33333%}.medium-pull-4{left:-33.33333%}.medium-offset-3{margin-left:25%}.medium-5{width:41.66667%}.medium-push-5{left:41.66667%}.medium-pull-5{left:-41.66667%}.medium-offset-4{margin-left:33.33333%}.medium-6{width:50%}.medium-push-6{position:relative;left:50%}.medium-pull-6{left:-50%}.medium-offset-5{margin-left:41.66667%}.medium-7{width:58.33333%}.medium-push-7{left:58.33333%}.medium-pull-7{left:-58.33333%}.medium-offset-6{margin-left:50%}.medium-8{width:66.66667%}.medium-push-8{left:66.66667%}.medium-pull-8{left:-66.66667%}.medium-offset-7{margin-left:58.33333%}.medium-9{width:75%}.medium-push-9{left:75%}.medium-pull-9{left:-75%}.medium-offset-8{margin-left:66.66667%}.medium-10{width:83.33333%}.medium-push-10{left:83.33333%}.medium-pull-10{left:-83.33333%}.medium-offset-9{margin-left:75%}.medium-11{width:91.66667%}.medium-push-11{left:91.66667%}.medium-pull-11{left:-91.66667%}.medium-offset-10{margin-left:83.33333%}.medium-12{width:100%}.medium-offset-11{margin-left:91.66667%}.medium-up-1>.column,.medium-up-1>.columns{width:100%;float:left}.medium-up-1>.column:nth-of-type(1n),.medium-up-1>.columns:nth-of-type(1n){clear:none}.medium-up-1>.column:nth-of-type(1n+1),.medium-up-1>.columns:nth-of-type(1n+1){clear:both}.medium-up-1>.column:last-child,.medium-up-1>.columns:last-child{float:left}.medium-up-2>.column,.medium-up-2>.columns{width:50%;float:left}.medium-up-2>.column:nth-of-type(1n),.medium-up-2>.columns:nth-of-type(1n){clear:none}.medium-up-2>.column:nth-of-type(2n+1),.medium-up-2>.columns:nth-of-type(2n+1){clear:both}.medium-up-2>.column:last-child,.medium-up-2>.columns:last-child{float:left}.medium-up-3>.column,.medium-up-3>.columns{width:33.33333%;float:left}.medium-up-3>.column:nth-of-type(1n),.medium-up-3>.columns:nth-of-type(1n){clear:none}.medium-up-3>.column:nth-of-type(3n+1),.medium-up-3>.columns:nth-of-type(3n+1){clear:both}.medium-up-3>.column:last-child,.medium-up-3>.columns:last-child{float:left}.medium-up-4>.column,.medium-up-4>.columns{width:25%;float:left}.medium-up-4>.column:nth-of-type(1n),.medium-up-4>.columns:nth-of-type(1n){clear:none}.medium-up-4>.column:nth-of-type(4n+1),.medium-up-4>.columns:nth-of-type(4n+1){clear:both}.medium-up-4>.column:last-child,.medium-up-4>.columns:last-child{float:left}.medium-up-5>.column,.medium-up-5>.columns{width:20%;float:left}.medium-up-5>.column:nth-of-type(1n),.medium-up-5>.columns:nth-of-type(1n){clear:none}.medium-up-5>.column:nth-of-type(5n+1),.medium-up-5>.columns:nth-of-type(5n+1){clear:both}.medium-up-5>.column:last-child,.medium-up-5>.columns:last-child{float:left}.medium-up-6>.column,.medium-up-6>.columns{width:16.66667%;float:left}.medium-up-6>.column:nth-of-type(1n),.medium-up-6>.columns:nth-of-type(1n){clear:none}.medium-up-6>.column:nth-of-type(6n+1),.medium-up-6>.columns:nth-of-type(6n+1){clear:both}.medium-up-6>.column:last-child,.medium-up-6>.columns:last-child{float:left}.medium-collapse>.column,.medium-collapse>.columns{padding-left:0;padding-right:0}.expanded.row .medium-collapse.row,.medium-collapse .row{margin-left:0;margin-right:0}.medium-uncollapse>.column,.medium-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}.medium-centered{margin-left:auto;margin-right:auto}.medium-centered,.medium-centered:last-child:not(:first-child){float:none;clear:both}.medium-pull-0,.medium-push-0,.medium-uncentered{position:static;margin-left:0;margin-right:0;float:left}}@media screen and (min-width:64em){.large-pull-1,.large-pull-10,.large-pull-11,.large-pull-2,.large-pull-3,.large-pull-4,.large-pull-5,.large-pull-6,.large-pull-7,.large-pull-8,.large-pull-9,.large-push-1,.large-push-10,.large-push-11,.large-push-2,.large-push-3,.large-push-4,.large-push-5,.large-push-7,.large-push-8,.large-push-9{position:relative}.large-1{width:8.33333%}.large-push-1{left:8.33333%}.large-pull-1{left:-8.33333%}.large-offset-0{margin-left:0}.large-2{width:16.66667%}.large-push-2{left:16.66667%}.large-pull-2{left:-16.66667%}.large-offset-1{margin-left:8.33333%}.large-3{width:25%}.large-push-3{left:25%}.large-pull-3{left:-25%}.large-offset-2{margin-left:16.66667%}.large-4{width:33.33333%}.large-push-4{left:33.33333%}.large-pull-4{left:-33.33333%}.large-offset-3{margin-left:25%}.large-5{width:41.66667%}.large-push-5{left:41.66667%}.large-pull-5{left:-41.66667%}.large-offset-4{margin-left:33.33333%}.large-6{width:50%}.large-push-6{position:relative;left:50%}.large-pull-6{left:-50%}.large-offset-5{margin-left:41.66667%}.large-7{width:58.33333%}.large-push-7{left:58.33333%}.large-pull-7{left:-58.33333%}.large-offset-6{margin-left:50%}.large-8{width:66.66667%}.large-push-8{left:66.66667%}.large-pull-8{left:-66.66667%}.large-offset-7{margin-left:58.33333%}.large-9{width:75%}.large-push-9{left:75%}.large-pull-9{left:-75%}.large-offset-8{margin-left:66.66667%}.large-10{width:83.33333%}.large-push-10{left:83.33333%}.large-pull-10{left:-83.33333%}.large-offset-9{margin-left:75%}.large-11{width:91.66667%}.large-push-11{left:91.66667%}.large-pull-11{left:-91.66667%}.large-offset-10{margin-left:83.33333%}.large-12{width:100%}.large-offset-11{margin-left:91.66667%}.large-up-1>.column,.large-up-1>.columns{width:100%;float:left}.large-up-1>.column:nth-of-type(1n),.large-up-1>.columns:nth-of-type(1n){clear:none}.large-up-1>.column:nth-of-type(1n+1),.large-up-1>.columns:nth-of-type(1n+1){clear:both}.large-up-1>.column:last-child,.large-up-1>.columns:last-child{float:left}.large-up-2>.column,.large-up-2>.columns{width:50%;float:left}.large-up-2>.column:nth-of-type(1n),.large-up-2>.columns:nth-of-type(1n){clear:none}.large-up-2>.column:nth-of-type(2n+1),.large-up-2>.columns:nth-of-type(2n+1){clear:both}.large-up-2>.column:last-child,.large-up-2>.columns:last-child{float:left}.large-up-3>.column,.large-up-3>.columns{width:33.33333%;float:left}.large-up-3>.column:nth-of-type(1n),.large-up-3>.columns:nth-of-type(1n){clear:none}.large-up-3>.column:nth-of-type(3n+1),.large-up-3>.columns:nth-of-type(3n+1){clear:both}.large-up-3>.column:last-child,.large-up-3>.columns:last-child{float:left}.large-up-4>.column,.large-up-4>.columns{width:25%;float:left}.large-up-4>.column:nth-of-type(1n),.large-up-4>.columns:nth-of-type(1n){clear:none}.large-up-4>.column:nth-of-type(4n+1),.large-up-4>.columns:nth-of-type(4n+1){clear:both}.large-up-4>.column:last-child,.large-up-4>.columns:last-child{float:left}.large-up-5>.column,.large-up-5>.columns{width:20%;float:left}.large-up-5>.column:nth-of-type(1n),.large-up-5>.columns:nth-of-type(1n){clear:none}.large-up-5>.column:nth-of-type(5n+1),.large-up-5>.columns:nth-of-type(5n+1){clear:both}.large-up-5>.column:last-child,.large-up-5>.columns:last-child{float:left}.large-up-6>.column,.large-up-6>.columns{width:16.66667%;float:left}.large-up-6>.column:nth-of-type(1n),.large-up-6>.columns:nth-of-type(1n){clear:none}.large-up-6>.column:nth-of-type(6n+1),.large-up-6>.columns:nth-of-type(6n+1){clear:both}.large-up-6>.column:last-child,.large-up-6>.columns:last-child{float:left}.large-collapse>.column,.large-collapse>.columns{padding-left:0;padding-right:0}.expanded.row .large-collapse.row,.large-collapse .row{margin-left:0;margin-right:0}.large-uncollapse>.column,.large-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}.large-centered{margin-left:auto;margin-right:auto}.large-centered,.large-centered:last-child:not(:first-child){float:none;clear:both}.large-pull-0,.large-push-0,.large-uncentered{position:static;margin-left:0;margin-right:0;float:left}}.clearfix::after,.menu.align-right::after,.title-bar::after,.top-bar::after,hr{clear:both}blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}ol,ul{margin-left:1.25rem}dl,ol,p,ul{margin-bottom:1rem}p{font-size:inherit;text-rendering:optimizeLegibility}em,i{font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:400;font-style:normal;color:inherit;text-rendering:optimizeLegibility;margin-top:0;margin-bottom:.5rem;line-height:1.4}code,kbd{background-color:#e6e6e6;color:#0a0a0a;font-family:Consolas,"Liberation Mono",Courier,monospace}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{color:#cacaca;line-height:0}h4{font-size:1.125rem}h5{font-size:1.0625rem}h6{font-size:1rem}@media screen and (min-width:40em){h1{font-size:3rem}h2{font-size:2.5rem}h3{font-size:1.9375rem}h4{font-size:1.5625rem}h5{font-size:1.25rem}h6{font-size:1rem}}a{background-color:transparent;color:#2199e8;text-decoration:none;cursor:pointer}a:focus,a:hover{color:#1585cf}a img{border:0}hr{box-sizing:content-box;max-width:75rem;height:0;border-right:0;border-top:0;border-bottom:1px solid #cacaca;border-left:0;margin:1.25rem auto}dl,ol,ul{list-style-position:outside}li{font-size:inherit}ul{list-style-type:disc}ol ol,ol ul,ul ol,ul ul{margin-left:1.25rem;margin-bottom:0}dl dt{margin-bottom:.3rem;font-weight:700}.subheader,code,label{font-weight:400}blockquote{margin:0 0 1rem;border-left:1px solid #cacaca}blockquote,blockquote p{line-height:1.6;color:#8a8a8a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:'\2014 \0020'}abbr{color:#0a0a0a;cursor:help;border-bottom:1px dotted #0a0a0a}code{border:1px solid #cacaca;padding:.125rem .3125rem .0625rem}kbd{padding:.125rem .25rem 0;margin:0}.subheader{margin-top:.2rem;margin-bottom:.5rem;line-height:1.4;color:#8a8a8a}.lead{font-size:125%;line-height:1.6}.button,.stat{line-height:1}.stat{font-size:2.5rem}p+.stat{margin-top:-1rem}.no-bullet{margin-left:0}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media screen and (min-width:40em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media screen and (min-width:64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.button,.input-group-label,.menu-centered,.menu.icon-top>li>a{text-align:center}.show-for-print{display:none!important}@media print{blockquote,img,pre,tr{page-break-inside:avoid}*{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}.show-for-print{display:block!important}.hide-for-print{display:none!important}table.show-for-print{display:table!important}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print,th.show-for-print{display:table-cell!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^='javascript:']:after,a[href^='#']:after{content:''}abbr[title]:after{content:" (" attr(title) ")"}blockquote,pre{border:1px solid #8a8a8a}thead{display:table-header-group}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.button{display:inline-block;cursor:pointer;-webkit-appearance:none;transition:background-color .25s ease-out,color .25s ease-out;border-radius:0;background-color:#2199e8}.button.disabled,.button.disabled.alert,.button.disabled.primary,.button.disabled.secondary,.button.disabled.success,.button.disabled.warning,.button[disabled],.button[disabled].alert,.button[disabled].primary,.button[disabled].secondary,.button[disabled].success,.button[disabled].warning{opacity:.25;cursor:not-allowed}.button:focus,.button:hover{background-color:#1583cc}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-left:0;margin-right:0}.button.primary{background-color:#2199e8;color:#fff}.button.primary:focus,.button.primary:hover{background-color:#147cc0;color:#fff}.button.secondary{background-color:#777;color:#fff}.button.secondary:focus,.button.secondary:hover{background-color:#5f5f5f;color:#fff}.button.success{background-color:#3adb76;color:#fff}.button.success:focus,.button.success:hover{background-color:#22bb5b;color:#fff}.button.warning{background-color:#ffae00;color:#fff}.button.warning:focus,.button.warning:hover{background-color:#cc8b00;color:#fff}.button.alert{background-color:#ec5840;color:#fff}.button.alert:focus,.button.alert:hover{background-color:#da3116;color:#fff}.button.hollow{border:1px solid #2199e8;color:#2199e8}.button.hollow,.button.hollow:focus,.button.hollow:hover{background-color:transparent}.button.hollow:focus,.button.hollow:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.primary{border:1px solid #2199e8;color:#2199e8}.button.hollow.primary:focus,.button.hollow.primary:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.secondary{border:1px solid #777;color:#777}.button.hollow.secondary:focus,.button.hollow.secondary:hover{border-color:#3c3c3c;color:#3c3c3c}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:focus,.button.hollow.success:hover{border-color:#157539;color:#157539}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:focus,.button.hollow.warning:hover{border-color:#805700;color:#805700}.button.hollow.alert{border:1px solid #ec5840;color:#ec5840}.button.hollow.alert:focus,.button.hollow.alert:hover{border-color:#881f0e;color:#881f0e}.button.disabled:focus,.button.disabled:hover,.button[disabled]:focus,.button[disabled]:hover{background-color:#2199e8;color:#fff}.button.disabled.primary:focus,.button.disabled.primary:hover,.button[disabled].primary:focus,.button[disabled].primary:hover{background-color:#2199e8;color:#fff}.button.disabled.secondary:focus,.button.disabled.secondary:hover,.button[disabled].secondary:focus,.button[disabled].secondary:hover{background-color:#777;color:#fff}.button.disabled.success:focus,.button.disabled.success:hover,.button[disabled].success:focus,.button[disabled].success:hover{background-color:#3adb76;color:#fff}.button.disabled.warning:focus,.button.disabled.warning:hover,.button[disabled].warning:focus,.button[disabled].warning:hover{background-color:#ffae00;color:#fff}.button.disabled.alert:focus,.button.disabled.alert:hover,.button[disabled].alert:focus,.button[disabled].alert:hover{background-color:#ec5840;color:#fff}.button.dropdown::after{content:'';width:0;height:0;border:.4em inset;border-color:#fefefe transparent transparent;border-top-style:solid;border-bottom-width:0;position:relative;top:.4em;float:right;margin-left:1em;display:inline-block}.button.arrow-only::after{margin-left:0;float:none;top:-.1em}[type=text],[type=password],[type=date],[type=datetime],[type=datetime-local],[type=month],[type=week],[type=email],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=color],textarea{display:block;box-sizing:border-box;width:100%;height:2.4375rem;padding:.5rem;border:1px solid #cacaca;margin:0 0 1rem;font-family:inherit;font-size:1rem;color:#8a8a8a;background-color:#fefefe;box-shadow:inset 0 1px 2px rgba(10,10,10,.1);border-radius:0;transition:box-shadow .5s,border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance:none}[type=text]:focus,[type=password]:focus,[type=date]:focus,[type=datetime]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=week]:focus,[type=email]:focus,[type=number]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=url]:focus,[type=color]:focus,textarea:focus{border:1px solid #8a8a8a;background-color:#fefefe;outline:0;box-shadow:0 0 5px #cacaca;transition:box-shadow .5s,border-color .25s ease-in-out}textarea{min-height:50px;max-width:100%}textarea[rows]{height:auto}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#cacaca}input::placeholder,textarea::placeholder{color:#cacaca}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:default}[type=submit],[type=button]{border-radius:0;-webkit-appearance:none;-moz-appearance:none}input[type=search]{box-sizing:border-box}[type=file],[type=checkbox],[type=radio]{margin:0 0 1rem}[type=checkbox]+label,[type=radio]+label{display:inline-block;margin-left:.5rem;margin-right:1rem;margin-bottom:0;vertical-align:baseline}.js-drilldown-back>a::before,.menu>li,.menu>li>a i,.menu>li>a i+span,.menu>li>a img,.menu>li>a img+span,.menu>li>a svg,.menu>li>a svg+span,.title-bar-title{vertical-align:middle}[type=checkbox]+label[for],[type=radio]+label[for]{cursor:pointer}label>[type=checkbox],label>[type=radio]{margin-right:.5rem}[type=file]{width:100%}label{display:block;margin:0;font-size:.875rem;line-height:1.8;color:#0a0a0a}.form-error,.menu-text,table caption{font-weight:700}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#333}.input-group{display:table;width:100%;margin-bottom:1rem}.input-group-button a,.input-group-button button,.input-group-button input,fieldset{margin:0}.input-group>:first-child,.input-group>:last-child>*{border-radius:0}.input-group-button,.input-group-field,.input-group-label{margin:0;white-space:nowrap;display:table-cell;vertical-align:middle}.input-group-label{padding:0 1rem;background:#e6e6e6;color:#0a0a0a;border:1px solid #cacaca;white-space:nowrap;width:1%;height:100%}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;height:2.5rem}.fieldset,select{border:1px solid #cacaca}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;height:100%;width:1%}.input-group .input-group-button{display:table-cell}fieldset{border:0;padding:0}legend{margin-bottom:.5rem;max-width:100%}.fieldset{padding:1.25rem;margin:1.125rem 0}.fieldset legend{background:#fefefe;padding:0 .1875rem;margin:0 0 0 -.1875rem}select{height:2.4375rem;padding:.5rem 1.5rem .5rem .5rem;margin:0 0 1rem;font-size:1rem;font-family:inherit;line-height:normal;color:#8a8a8a;background-color:#fafafa;border-radius:0;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%2851, 51, 51%29'></polygon></svg>");background-size:9px 6px;background-position:right -1rem center;background-origin:content-box;background-repeat:no-repeat}.form-error,.is-invalid-label{color:#ec5840}@media screen and (min-width:0\0){select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==)}}select:disabled{background-color:#e6e6e6;cursor:default}select::-ms-expand{display:none}select[multiple]{height:auto;background-image:none}.is-invalid-input:not(:focus){background-color:rgba(236,88,64,.1);border-color:#ec5840}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem}.form-error.is-visible{display:block}.hide{display:none!important}@media screen and (max-width:0em),screen and (min-width:40em){.show-for-small-only{display:none!important}}@media screen and (min-width:40em){.hide-for-medium{display:none!important}}@media screen and (max-width:39.9375em){.hide-for-small-only,.show-for-medium{display:none!important}}@media screen and (min-width:40em) and (max-width:63.9375em){.hide-for-medium-only{display:none!important}}@media screen and (max-width:39.9375em),screen and (min-width:64em){.show-for-medium-only{display:none!important}}@media screen and (min-width:64em){.hide-for-large{display:none!important}}@media screen and (max-width:63.9375em){.show-for-large{display:none!important}}@media screen and (min-width:64em) and (max-width:74.9375em){.hide-for-large-only{display:none!important}}@media screen and (max-width:63.9375em),screen and (min-width:75em){.show-for-large-only{display:none!important}}.show-for-sr,.show-on-focus{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.show-on-focus:active,.show-on-focus:focus{position:static!important;height:auto;width:auto;overflow:visible;clip:auto}.hide-for-portrait,.show-for-landscape{display:block!important}@media screen and (orientation:landscape){.hide-for-portrait,.show-for-landscape{display:block!important}.hide-for-landscape,.show-for-portrait{display:none!important}}.hide-for-landscape,.show-for-portrait{display:none!important}@media screen and (orientation:portrait){.hide-for-portrait,.show-for-landscape{display:none!important}.hide-for-landscape,.show-for-portrait{display:block!important}}.float-left{float:left!important}.float-right{float:right!important}.is-dropdown-menu.vertical.align-right,.menu.align-right>li{float:right}.float-center{display:block;margin-left:auto;margin-right:auto}.clearfix::after,.clearfix::before{content:' ';display:table}.dropdown.menu.vertical>li.opens-left>a::after,.dropdown.menu.vertical>li.opens-right>a::after,.dropdown.menu>li.is-dropdown-submenu-parent>a::after,.is-drilldown-submenu-parent>a::after,.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left>a::after,.js-drilldown-back>a::before{content:'';height:0}.callout{margin:0 0 1rem;padding:1rem;border:1px solid rgba(10,10,10,.25);border-radius:0;position:relative;color:#0a0a0a;background-color:#fff}.callout>:last-child,.menu a,.menu button,.menu input{margin-bottom:0}.callout>:first-child{margin-top:0}.callout.primary{background-color:#def0fc}.callout.secondary{background-color:#ebebeb}.callout.success{background-color:#e1faea}.callout.warning{background-color:#fff3d9}.callout.alert{background-color:#fce6e2}.callout.small{padding:.5rem}.callout.large{padding:3rem}.close-button{position:absolute;color:#8a8a8a;right:1rem;top:.5rem;font-size:2em;line-height:1;cursor:pointer}.close-button:focus,.close-button:hover{color:#0a0a0a}.is-drilldown{position:relative;overflow:hidden}.table-scroll,table.scroll{overflow-x:auto}.is-drilldown li{display:block!important}.is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;width:100%;background:#fefefe;transition:transform .15s linear}.oc-nav .callout,.oc-push{transition:left .2s ease-out}.is-drilldown-submenu.is-active{z-index:1;display:block;-ms-transform:translateX(-100%);transform:translateX(-100%)}.is-drilldown-submenu.is-closing{-ms-transform:translateX(100%);transform:translateX(100%)}.is-drilldown-submenu-parent>a{position:relative}.is-drilldown-submenu-parent>a::after{display:block;width:0;border:6px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0;position:absolute;top:50%;margin-top:-6px;right:1rem}.js-drilldown-back>a::before{width:0;border:6px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0;display:inline-block;margin-right:.75rem}.dropdown-pane{background-color:#fefefe;border:1px solid #cacaca;border-radius:0;display:block;font-size:16rem;padding:1rem;position:absolute;width:300px;z-index:10}.dropdown-pane.is-open{visibility:visible}.dropdown-pane.tiny{width:100px}.dropdown-pane.small{width:200px}.dropdown-pane.large{width:400px}.dropdown.menu>li.opens-left>.is-dropdown-submenu{left:auto;right:0;top:100%}.dropdown.menu>li.opens-right>.is-dropdown-submenu{right:auto;left:0;top:100%}.dropdown.menu>li.is-dropdown-submenu-parent>a{padding-right:1.5rem;position:relative}.dropdown.menu>li.is-dropdown-submenu-parent>a::after{display:block;width:0;border:5px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;border-bottom-width:0;right:5px;margin-top:-2px}.no-js .dropdown.menu ul{display:none}.dropdown.menu.vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.vertical>li.opens-left>.is-dropdown-submenu{left:auto;right:100%}.dropdown.menu.vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.vertical>li>a::after{right:14px;margin-top:-3px}.dropdown.menu.vertical>li.opens-left>a::after{display:block;width:0;border:5px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0}.dropdown.menu.vertical>li.opens-right>a::after{display:block;width:0;border:5px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0}@media screen and (min-width:40em){.dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu{left:auto;right:0;top:100%}.dropdown.menu.medium-horizontal>li.opens-right>.is-dropdown-submenu{right:auto;left:0;top:100%}.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a{padding-right:1.5rem;position:relative}.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a::after{content:'';display:block;width:0;height:0;border:5px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;border-bottom-width:0;right:5px;margin-top:-2px}.dropdown.menu.medium-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.medium-vertical>li.opens-left>.is-dropdown-submenu{left:auto;right:100%}.dropdown.menu.medium-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.medium-vertical>li>a::after{right:14px;margin-top:-3px}.dropdown.menu.medium-vertical>li.opens-left>a::after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0}.dropdown.menu.medium-vertical>li.opens-right>a::after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0}}@media screen and (min-width:64em){.dropdown.menu.large-horizontal>li.opens-left>.is-dropdown-submenu{left:auto;right:0;top:100%}.dropdown.menu.large-horizontal>li.opens-right>.is-dropdown-submenu{right:auto;left:0;top:100%}.dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a{padding-right:1.5rem;position:relative}.dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a::after{content:'';display:block;width:0;height:0;border:5px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;border-bottom-width:0;right:5px;margin-top:-2px}.dropdown.menu.large-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.large-vertical>li.opens-left>.is-dropdown-submenu{left:auto;right:100%}.dropdown.menu.large-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.large-vertical>li>a::after{right:14px;margin-top:-3px}.dropdown.menu.large-vertical>li.opens-left>a::after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0}.dropdown.menu.large-vertical>li.opens-right>a::after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0}}.dropdown.menu.align-right .is-dropdown-submenu.first-sub{top:100%;left:auto;right:0}.is-dropdown-menu.vertical{width:100px}.is-dropdown-submenu-parent{position:relative}.is-dropdown-submenu-parent a::after{position:absolute;top:50%;right:5px;margin-top:-2px}.is-dropdown-submenu-parent.opens-inner>.is-dropdown-submenu{top:100%;left:auto}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu{left:auto;right:100%}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu{right:auto;left:100%}.is-dropdown-submenu{display:none;position:absolute;top:0;left:100%;min-width:200px;z-index:1;background:#fefefe;border:1px solid #cacaca}.is-dropdown-submenu .is-dropdown-submenu-parent>a::after{right:14px;margin-top:-3px}.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left>a::after{display:block;width:0;border:5px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0}.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right>a::after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0}.is-dropdown-submenu>li,.menu.expanded>li:first-child:last-child,table,table.scroll{width:100%}.is-dropdown-submenu .is-dropdown-submenu{margin-top:-1px}.is-dropdown-submenu.js-dropdown-active{display:block}.menu{margin:0;list-style-type:none}.menu>li>a{display:block;padding:.7rem 1rem;line-height:1}.menu>li>a i,.menu>li>a img,.menu>li>a svg{margin-right:.25rem;display:inline-block}.menu>li{display:table-cell}.menu.vertical>li{display:block}@media screen and (min-width:40em){.menu.medium-horizontal>li{display:table-cell}.menu.medium-vertical>li{display:block}}@media screen and (min-width:64em){.menu.large-horizontal>li{display:table-cell}.menu.large-vertical>li{display:block}}.menu.simple li{line-height:1;display:inline-block;margin-right:1rem}.menu.simple a{padding:0}.menu.align-right::after,.menu.align-right::before{content:' ';display:table}.menu.expanded{width:100%;display:table;table-layout:fixed}.menu.icon-top>li>a i,.menu.icon-top>li>a img,.menu.icon-top>li>a svg{display:block;margin:0 auto .25rem}.menu.nested{margin-left:1rem}.menu .active>a{color:#fefefe;background:#2199e8}.menu-text{color:inherit;line-height:1;padding:.7rem 1rem}table caption,table tbody td,table tbody th{padding:.5rem .625rem .625rem}.menu-centered>.menu{display:inline-block}.no-js [data-responsive-menu] ul{display:none}table{border-collapse:collapse;border-spacing:0;margin-bottom:1rem;border-radius:0}table tbody,table tfoot,table thead{border:1px solid #f1f1f1;background-color:#fefefe}table thead{background:#f8f8f8;color:#0a0a0a}table tfoot{background:#f1f1f1;color:#0a0a0a}table tfoot tr,table thead tr{background:0 0}table tfoot td,table tfoot th,table thead td,table thead th{padding:.5rem .625rem .625rem;font-weight:700;text-align:left}table tbody tr:nth-child(even){background-color:#f1f1f1}@media screen and (max-width:63.9375em){table.stack tfoot,table.stack thead{display:none}table.stack td,table.stack th,table.stack tr{display:block}table.stack td{border-top:0}}table.scroll{display:block}table.hover thead tr:hover{background-color:#f3f3f3}table.hover tfoot tr:hover{background-color:#ececec}table.hover tbody tr:hover{background-color:#f9f9f9}table.hover tbody tr:nth-of-type(even):hover{background-color:#ececec}.table-scroll table{width:auto}.title-bar{background:#0a0a0a;color:#fefefe;padding:.5rem}.title-bar::after,.title-bar::before{content:' ';display:table}.has-tip,.title-bar-title{font-weight:700;display:inline-block}.title-bar .menu-icon{margin-left:.25rem;margin-right:.25rem}.title-bar-left{float:left}.title-bar-right{float:right;text-align:right}.hero,.logo{text-align:center}.has-tip{border-bottom:dotted 1px #8a8a8a;position:relative;cursor:help}h1,h2,h3{font-weight:400}.tooltip.top::before,.tooltip::before{content:'';display:block;width:0;height:0}.tooltip{background-color:#0a0a0a;color:#fefefe;font-size:80%;padding:.75rem;position:absolute;z-index:10;top:calc(100% + .6495rem);max-width:10rem!important;border-radius:0}.tooltip::before{border:.75rem inset;border-color:transparent transparent #0a0a0a;border-bottom-style:solid;border-top-width:0;bottom:100%;position:absolute;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%)}.tooltip.top::before{border:.75rem inset;border-color:#0a0a0a transparent transparent;border-top-style:solid;border-bottom-width:0;top:100%;bottom:auto}.tooltip.left::before,.tooltip.right::before{content:'';display:block;width:0;height:0;bottom:auto;top:50%}.tooltip.left::before{border:.75rem inset;border-color:transparent transparent transparent #0a0a0a;border-left-style:solid;border-right-width:0;left:100%;-ms-transform:translateY(-50%);transform:translateY(-50%)}.tooltip.right::before{border:.75rem inset;border-color:transparent #0a0a0a transparent transparent;border-right-style:solid;border-left-width:0;left:auto;right:100%;-ms-transform:translateY(-50%);transform:translateY(-50%)}.top-bar{padding:.5rem}.top-bar::after,.top-bar::before{content:' ';display:table}.top-bar,.top-bar ul{background-color:#eee}.top-bar input{max-width:200px;margin-right:1rem}.top-bar .input-group-field{width:100%;margin-right:0}.top-bar input.button{width:auto}.top-bar .top-bar-left,.top-bar .top-bar-right{width:100%}@media screen and (min-width:40em){.top-bar .top-bar-left,.top-bar .top-bar-right{width:auto}}@media screen and (max-width:63.9375em){.top-bar.stacked-for-medium .top-bar-left,.top-bar.stacked-for-medium .top-bar-right{width:100%}}@media screen and (max-width:74.9375em){.top-bar.stacked-for-large .top-bar-left,.top-bar.stacked-for-large .top-bar-right{width:100%}}.top-bar-title{float:left;margin-right:1rem}.top-bar-left{float:left}.top-bar-right{float:right}body{font-family:helvetica,sans-serif;font-size:.75rem;overflow-x:hidden}.button,h1,h2,h3{font-family:Montserrat,helvetica,sans-serif;text-transform:uppercase}@media screen and (min-width:40em){body{font-size:1rem;font-size:calc(.75rem + (18 - 12) * ((100vw - 640px)/ 800))}}@media screen and (min-width:90em){body{font-size:1.125rem}}h1{font-size:120%}h2{font-size:115%}h3{font-size:110%}.button{background:0 0;border:2px solid #000;color:#000;font-size:90%;padding:.75em 2em;letter-spacing:.1em;margin:0}.account-toggle a::before,.oc-nav-toggle a::after{font-family:FontAwesome}.button:hover{background:#fff;color:inherit}.button:focus{background:#fff;color:#093C71;border-color:#093C71}@media screen and (min-width:40em){.button{letter-spacing:.1em;padding:1em 3em}}.hero-caption{margin-top:75px;margin-top:calc(60px + 1em)}@media screen and (min-width:64em){.hero-caption{margin-top:0}}.oc-nav .callout{width:20em;position:absolute;left:-20em;border:0;margin-top:60px;height:calc(100vh - 59px);overflow-y:auto;box-shadow:0 5px 5px rgba(0,0,0,.2)}.open .oc-nav .callout{left:0}.oc-nav-toggle{width:3em;float:left}.account-toggle{width:3em;float:right}.unslider-wrap.unslider-carousel>li,a.design{float:left}.account-toggle a,.oc-nav-toggle a{display:inline-block;width:40px;height:50px;line-height:50px;margin:10px}.oc-nav-toggle a::after{content:'\f0c9';margin-left:.5em}.account-toggle a::before{content:'\f007'}.header .menu>li>a,.recent-project-caption p,.services-gallery a p{font-family:Montserrat,helvetica,sans-serif}.open .oc-nav-toggle a::after{content:'\f00d'}.oc-push{position:relative;left:0}.oc-push.open{left:20em}@media screen and (min-width:64em){.oc-nav{margin-top:1.5em}.oc-nav .callout{width:100%;left:0;margin-top:0;height:auto;overflow-y:visible;position:relative;box-shadow:none}body section:first-of-type{margin-top:0}}.header{position:fixed;top:0;left:0;z-index:2;width:100vw;background:#fff;text-transform:uppercase}.open .header{border-bottom:1px solid #e6e6e6}.logo{position:absolute;width:60%;left:20%}.logo img{max-width:120px;margin:18px auto 0}.header .menu>li>a{color:#777}.header .menu>li>a:hover{color:#000}.dropdown.menu .has-submenu.is-right-arrow>a::after{display:none}@media screen and (min-width:64em){.header,.logo{position:relative}.logo,.logo img{max-width:200px}.header{height:120px;box-shadow:0 5px 5px rgba(0,0,0,.05)}.header .menu>li>a{font-size:90%}.logo{z-index:3;float:left;left:0}.logo img{margin:2em 0 0}.menu.vertical>li.right{position:absolute;right:0;top:.75em}}.header>.row>.column,.header>.row>.columns{position:relative}.header .button.small{display:none;position:absolute;top:3em;right:0}@media screen and (min-width:64em){.header .button.small{display:block}}@media screen and (min-width:75em){.header{height:140px}.header .button.small{top:3.5em}}.hero{background-position:center,top;background-size:cover;background-repeat:no-repeat}.hero h1::after,.hero h2::after{content:'-';width:100%;display:inline-block;font-size:120%;-ms-transform:scale(6,1);transform:scale(6,1)}.hero-caption{max-width:60rem;padding:3em 0}.hero-caption.small{padding:2em 0}.recent-project{background:rgba(9,60,113,.7);color:#fff;padding:3em 0}.recent-project p{text-align:left}.action,.facebook,.number,.services,footer{text-align:center}.recent-project a{color:#fff}.recent-project a:hover{color:#99E5FF}.recent-project-photos{margin:2em 0 1em}.recent-project-photos img{margin:0 auto}.recent-project-caption p{text-transform:uppercase;font-size:90%}.facebook h2::after,.services h2::after{content:'-';font-size:120%;-ms-transform:scale(6,1)}.recent-project-caption .float-left>a:first-child{margin-right:1em}.recent-project-caption .float-left>a:last-child,.recent-project-caption .float-right>a:last-child{margin-left:1em}.recent-project-photos a{display:block;position:relative}.recent-project-photos a i.fa{position:absolute;margin:auto;top:0;left:0;bottom:0;right:0;padding-top:30%;color:#093C71;background-color:rgba(255,255,255,.5);-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);opacity:0;transition:opacity 1s ease 0s}.recent-project-photos a:hover i.fa{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";filter:alpha(opacity=100);opacity:1;transition:opacity .5s ease 0s}@media screen and (min-width:40em){.hero-caption{padding:5em 0}.hero-caption.small{padding:3em 0}.recent-project{padding:5em 0}.recent-project-photos{margin:1em auto}}@media screen and (min-width:64em){.recent-project-photos .column,.recent-project-photos .columns{padding-left:.9375em!important;padding-right:.9375em!important}}@media screen and (min-width:90em){.hero-caption,.recent-project{padding:6em 0}}.services{background:rgba(246,246,246,.9);padding:6em 0}.services h2::after{width:100%;display:inline-block;transform:scale(6,1)}.services-gallery a{display:block;background:#fff;margin:1em auto;position:relative;overflow:auto}.services-gallery a i.fa{font-size:200%;position:absolute;margin:auto;top:0;left:0;bottom:1.84em;right:0;padding-top:28%;color:#fff;background-color:rgba(9,60,113,.6);-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);opacity:0;transition:opacity 1s ease 0s}.services-gallery a:hover i.fa{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";filter:alpha(opacity=100);opacity:1;transition:opacity .5s ease 0s}.services-gallery a p{margin:1.25em auto;color:rgba(9,60,113,.8);text-transform:uppercase;font-size:90%}.services-gallery a:hover p{color:#093c71}.content aside a,.content h2,.project h2{color:#093C71}@media screen and (min-width:64em){.services-gallery .column,.services-gallery .columns{padding-left:.9375em!important;padding-right:.9375em!important}.action{box-shadow:0 5px 5px rgba(0,0,0,.2)}}.facebook{background:#fff;padding:4em 0 8em}.facebook iframe{width:100vw;margin-left:-.9375rem;height:500px}@media screen and (min-width:40em){.facebook iframe{width:500px}}.facebook h2::after{width:100%;display:inline-block;transform:scale(6,1)}.action h2::after,.content h2::after{content:'-';font-size:120%;-ms-transform:scale(6,1)}.action{background:#F6F6F6;padding:5em 0}.action h2::after{width:100%;display:inline-block;transform:scale(6,1)}@media screen and (min-width:90em){.action{padding:6em 0}}.content{background:#fff;padding:5em 0}.content+.content{padding-top:0}@media screen and (min-width:90em){.content{padding:6em 0}}.content .callout{padding:1em}.content h2{margin-bottom:2em}.content h2::after{display:block;transform:scale(6,1);position:absolute;padding-left:4px}.content ol,.content ul{margin-left:1.25em}a.project{display:block;background:#F6F6F6;clear:left;margin-bottom:1em;overflow:auto}.number,.project-summary,a.design,ul.details li{display:inline-block}@media screen and (min-width:64em){a.project{margin-bottom:1.5em}}a:hover.project{background:#e9e9e9}a:hover.project .number{border:2px solid #d9d9d9}.project-image{float:left;width:33%}.project-summary{padding:1.5em 2em;width:66%}.project-summary .details{margin-top:0}.contact-info .phone{font-weight:700;margin-bottom:1em}.contact-info .fa{font-family:inherit}.contact-info .fa::before{font-family:FontAwesome;margin-right:.4em}.design-detail h5,.design-hero h1+.tagline{font-family:Montserrat,helvetica,sans-serif;text-transform:uppercase}.content>.row{padding:0 5%}@media screen and (min-width:64em){.content>.row>.large-8{padding-right:2em}}.location{font-size:75%;color:#777;margin-bottom:1.5em}ul.details{color:#777;margin:1.5em 0 0}ul.details li{margin-right:1em}ul.details li span{margin:0 .3em .7em 0}.number{color:#777;border:2px solid #e6e6e6;border-radius:99px;width:2.5em;height:2.5em;line-height:2.5em}blockquote{padding:0 0 0 2em}blockquote p{color:#000}.filter-button-group{margin-top:-2em;margin-bottom:2em}.filter-button-group .button{border-color:#e6e6e6;margin:.1em;padding:.85em 2em .75em;font-size:65%}.filter-button-group .button:focus{border-color:rgba(9,60,113,.5)}a.design{background:#F6F6F6;overflow:auto;width:43%;margin:1%}.design-detail img.plan,.design-hero p{max-width:40em;margin-left:auto;margin-right:auto}a:hover.design{background:#e9e9e9}a:hover.design .number{border:2px solid #d9d9d9}.design h2{color:#093C71;font-size:100%}.design h2::after{padding-left:4px}.design-summary{display:block;padding:1.5em 2em}.design-hero h1+.tagline{color:#777;font-size:80%;letter-spacing:.1em}.design-detail{padding:0 0 5em}.design-detail img.plan{display:block}.design-detail h5{color:#fefefe;font-size:85%;margin:.5em 0 1.5em}.design-detail .details{margin-top:0;margin-bottom:.5em}.design-detail .details .number{border:2px solid rgba(254,254,254,.5);color:#fefefe}.design-detail .details .fa{color:#fefefe}.design-detail .button{color:#fefefe;border-color:rgba(254,254,254,.5)}.design-detail .button:focus,.design-detail .button:hover{background-color:rgba(254,254,254,.1);border-color:#fefefe}.design-detail .button::before{font-family:FontAwesome;content:'\f1c1';margin:0 .5em 0 -.25em;color:red}.design-detail table{font-size:80%;color:#fefefe;border:2px solid rgba(254,254,254,.2);margin-bottom:3em}.design-detail table tbody,.design-detail table tfoot,.design-detail table thead{border:none}.design-detail table thead tr{color:#fefefe;border:none;background-color:#093C71}.design-detail table tbody tr{background-color:#083768}.design-detail table tbody tr:nth-child(even){background-color:rgba(9,60,113,.9)}.design-detail table tfoot{color:#fefefe;background:0 0}.design-specs{overflow:auto;background:#093C71;padding-top:1.5em;padding-bottom:2em}.design-specs a.design-plan{display:block;position:relative;margin-bottom:1em;text-align:center}@media screen and (min-width:64em){a.design{width:26%}.design-specs a.design-plan{margin:0 .6em 1.4em 1.6em}}.design-specs a.design-plan i.fa{position:absolute;margin:auto;top:0;left:0;bottom:0;right:0;padding-top:47.5%;color:#093C71;background-color:rgba(255,255,255,.5);-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);opacity:0;transition:opacity 1s ease 0s}.design-specs a.design-plan:hover i.fa{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";filter:alpha(opacity=100);opacity:1;transition:opacity .5s ease 0s}footer{padding:6em 0;color:#fff;background:rgba(68,68,68,.7);background-position:center,top;background-size:cover;position:relative;overflow:hidden}.footer-img{width:100%;position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1}footer h2::after{content:'-';width:100%;display:inline-block;font-size:120%;-ms-transform:scale(6,1);transform:scale(6,1)}footer li>a{font-family:Montserrat,helvetica,sans-serif;font-size:80%;text-transform:uppercase;color:#fff}footer li>a:hover{color:#99E5FF}footer li:not(:last-of-type):after{content:'|';padding-left:1.5em;margin-right:1em}.legal{margin-top:2em}.legal li{display:inline}@media all{.featherlight{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:998;text-align:center;white-space:nowrap;cursor:pointer;background:0 0}.featherlight:last-of-type{background:rgba(0,0,0,.8)}.featherlight:before{content:'';display:inline-block;height:100%;vertical-align:middle;margin-right:-.25em}.featherlight .featherlight-content{position:relative;text-align:left;vertical-align:middle;display:inline-block;overflow:auto;padding:25px 25px 0;border-bottom:25px solid transparent;margin-left:5%;margin-right:5%;max-height:95%;background:#fff;cursor:auto;white-space:normal}.featherlight .featherlight-inner{display:block}.featherlight .featherlight-close-icon{position:absolute;z-index:999;top:0;right:0;line-height:25px;width:25px;cursor:pointer;text-align:center;font-family:Arial,sans-serif;background:#fff;background:rgba(255,255,255,.3);color:#000}.featherlight .featherlight-image{width:100%}.featherlight-iframe .featherlight-content{border-bottom:0;padding:0}.featherlight iframe{border:none}.featherlight-next,.featherlight-previous{display:block;position:absolute;top:25px;right:25px;bottom:0;left:80%;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.featherlight-previous{left:25px;right:80%}.featherlight-next span,.featherlight-previous span{display:none;position:absolute;top:50%;left:5%;width:82%;text-align:center;font-size:4em;line-height:4em;margin-top:-2em}.featherlight-next span::after{font-family:FontAwesome;content:'\f105';color:#fff}.featherlight-previous span::before{font-family:FontAwesome;content:'\f104';color:#fff}.featherlight-next span{right:5%;left:auto}.featherlight-next:hover span,.featherlight-previous:hover span{display:inline-block}.featherlight-loading .featherlight-next,.featherlight-loading .featherlight-previous{display:none}}.unslider,.unslider-fade,.unslider-wrap{position:relative}@media only screen and (max-device-width:1024px){.featherlight-next:hover,.featherlight-previous:hover{background:0 0}.featherlight-next span,.featherlight-previous span{display:block}}@media only screen and (max-width:1024px){.featherlight .featherlight-content{margin-left:10px;margin-right:10px;max-height:98%;padding:10px 10px 0;border-bottom:10px solid transparent}.featherlight-next,.featherlight-previous{top:10px;right:10px;left:85%}.featherlight-previous{left:10px;right:85%}.featherlight-next span,.featherlight-previous span{margin-top:-30px;font-size:40px}}.unslider{overflow:auto;margin:0;padding:0}.unslider-vertical>ul{height:100%}.unslider-vertical li{float:none;width:100%}.unslider-fade .unslider-wrap li{position:absolute;left:0;top:0;right:0;z-index:8}.unslider-fade .unslider-wrap li.unslider-active{z-index:10}.unslider li,.unslider ol,.unslider ul{list-style:none;margin:0;padding:0;border:none}.unslider-arrow{position:absolute;left:0;z-index:2;cursor:pointer}.unslider-arrow.next{left:auto;right:0}.unslider-nav{display:none!important}.unslider-arrow{top:50%;width:3em;height:3em;margin-top:-1.5em;background:rgba(9,60,113,.25);text-align:center;display:table}.unslider-arrow.next::after,.unslider-arrow.prev::before{display:table-cell;width:3em;font-family:FontAwesome;color:#fff;font-size:2em}.unslider-arrow:hover{background:rgba(9,60,113,.75)}.unslider-arrow.prev::before{content:'\f104'}.unslider-arrow.next::after{content:'\f105'}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImh0dHBzOi8vbWF4Y2RuLmJvb3RzdHJhcGNkbi5jb20vZm9udC1hd2Vzb21lLzQuNS4wL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJhcHAuY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCJzZWN0aW9ucy9fY29udGVudC5zY3NzIiwic2VjdGlvbnMvX2Zvb3Rlci5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiY29tcG9uZW50cy91bnNsaWRlci5zY3NzIiwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU1vbnRzZXJyYXQ6NDAwLDcwMCIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Jvdy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19zaXplLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RpdGxlLWJhci5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyIsInNlY3Rpb25zL19vZmZjYW52YXMtbmF2LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCJzZWN0aW9ucy9faGVyby5zY3NzIiwic2VjdGlvbnMvX2hlYWRlci5zY3NzIiwic2VjdGlvbnMvX3R5cG9ncmFwaHkuc2NzcyIsInNlY3Rpb25zL19iYXNlLnNjc3MiLCJzZWN0aW9ucy9fc2VydmljZXMuc2NzcyIsInNlY3Rpb25zL19hY3Rpb24uc2NzcyIsInNlY3Rpb25zL19mYWNlYm9vay5zY3NzIiwic2VjdGlvbnMvX2ZlYXRoZXJsaWdodC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI2RkFHMjlDLGlCQUFvSCxjQUFjLGFBQWEsS0FBL2hCLE9BQTRJLE9BQW1nRSxXQUFXLE9BQXArRSxJQUEreUUsVUN5WTlpRyxJQTlPRSxRQUFBLGFEM0o2dkIsSUNxSS92QixLQVdJLHdCQUFBLFVDNUZKLGVDVUEsV0RwQkEsV0FBQSxPRWcyQ0EsK0JBNmVBLHFDQXlHRix3Q0E4TkksZ0NBMXhERiw4QkhsSEMsU0d2TkgsUUM4RUksUUFBQSxFQ2hHSixjQzVCQSxPQ3dCRSxXRnlDQSxXR2hGRCxXQUFBLEtDakNELFdBQ0UsWUFBYSxXQUNiLFdBQVksT0FDWixZQUFhLElBQ2IsSUFBSyw0QkFBNkIsNEJBQTZCLGdHQUErRixtQkFFaEssV0FDRSxZQUFhLFdBQ2IsV0FBWSxPQUNaLFlBQWEsSUFDYixJQUFLLHlCQUEwQix5QkFBMEIsZ0dBQStGOzs7QVZQdkosV0FBVyxZQUFZLFlBQWMsSUFBSSw4RkFBOEYsSUFBSSxxR0FBb0csNEJBQTZCLGdHQUErRixnQkFBaUIsK0ZBQThGLGVBQWdCLDhGQUE2RixtQkFBb0IsaUhBQWdILGNBQWMsWUFBWSxJQUFPLFdBQVcsT0FBTyxJQUF5QixLQUFLLE9BQU8sT0FBTyxPQUFPLEtBQU0sRUFBRSxZQUFZLFVBQVUsUUFBUSxlQUFlLEtBQUssdUJBQXVCLFlBQThDLE9BQU8sVUFBVSxh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SWdFSSxZQUFBLFVBQ0EsYUFBQSxVSmpFSixtQkFlTSxZQUFBLEVBQ0EsYUFBQSxFQWhCTixjQXNCSSxVQUFBLEtBRUEsbUJBQ0UsWUFBQSxLQUNBLGFBQUEsS0FNTixRQUFBLFNNM0NBLE1BQUEsS0M4Q0EsTUFBQSxLQVFNLGFBQUEsU0FDQSxjQUFBLFNQWk4scUNBQUEsc0NPeUJJLE1BQUEsTVB6Qkosa0NBQUEsbUNDUkUsTUFBQSxLRG9CRixnQkFBQSxpQkFDRSxNQUFBLEtBSWMscUJBQUEsc0JBQ2QsYUFBQSxFQUNBLGNBQUEsRUFDQSxZQUFBLEVBQ0EsYUFBQSxFQU1FLFNNdEVKLE1BQUEsU040RU0sY0MxRUosS0FBQSxTRDhFSSxjQzlFSixLQUFBLFVEc0ZFLGdCQzVESixZQUFBLEVEMENJLFNNdEVKLE1BQUEsVU40RU0sY0MxRUosS0FBQSxVRDhFSSxjQzlFSixLQUFBLFdEc0ZFLGdCQzVESixZQUFBLFNEMENJLFNNdEVKLE1BQUEsSU40RU0sY0MxRUosS0FBQSxJRDhFSSxjQzlFSixLQUFBLEtEc0ZFLGdCQzVESixZQUFBLFVEMENJLFNNdEVKLE1BQUEsVU40RU0sY0MxRUosS0FBQSxVRDhFSSxjQzlFSixLQUFBLFdEc0ZFLGdCQzVESixZQUFBLElEMENJLFNNdEVKLE1BQUEsVU40RU0sY0MxRUosS0FBQSxVRDhFSSxjQzlFSixLQUFBLFdEc0ZFLGdCQzVESixZQUFBLFVEMENJLFNNdEVKLE1BQUEsSU40RU0sY0MzRUosU0FBQSxTQUNBLEtBQUEsSUQ4RUksY0M5RUosS0FBQSxLRHNGRSxnQkM1REosWUFBQSxVRDBDSSxTTXRFSixNQUFBLFVONEVNLGNDMUVKLEtBQUEsVUQ4RUksY0M5RUosS0FBQSxXRHNGRSxnQkM1REosWUFBQSxJRDBDSSxTTXRFSixNQUFBLFVONEVNLGNDMUVKLEtBQUEsVUQ4RUksY0M5RUosS0FBQSxXRHNGRSxnQkM1REosWUFBQSxVRDBDSSxTTXRFSixNQUFBLElONEVNLGNDMUVKLEtBQUEsSUQ4RUksY0M5RUosS0FBQSxLRHNGRSxnQkM1REosWUFBQSxVRDBDSSxVTXRFSixNQUFBLFVONEVNLGVDMUVKLEtBQUEsVUQ4RUksZUM5RUosS0FBQSxXRHNGRSxnQkM1REosWUFBQSxJRDBDSSxVTXRFSixNQUFBLFVONEVNLGVDMUVKLEtBQUEsVUQ4RUksZUM5RUosS0FBQSxXRHNGRSxpQkM1REosWUFBQSxVRDBDSSxVTXRFSixNQUFBLEtOd0ZJLGlCQzVESixZQUFBLFVPckJJLG9CQUFBLHFCQUNGLE1BQUEsS0FDQSxNQUFBLEtSc0ZFLG9DQUFBLHFDUS9EQSxNQUFBLEtBekJBLHNDQUFBLHVDQTZCQSxNQUFBLEtBN0JBLCtCQUFBLGdDQWlDQSxNQUFBLEtBakNBLG9CQUFBLHFCQUNGLE1BQUEsSUFDQSxNQUFBLEtSc0ZFLG9DQUFBLHFDUS9EQSxNQUFBLEtSK0RBLHNDQUFBLHVDUTNEQSxNQUFBLEtBN0JBLCtCQUFBLGdDQWlDQSxNQUFBLEtSdURBLG9CQUFBLHFCUXZGRixNQUFBLFVBQ0EsTUFBQSxLUnNGRSxvQ0FBQSxxQ1EvREEsTUFBQSxLQXpCQSxzQ0FBQSx1Q0E2QkEsTUFBQSxLUjJEQSwrQkFBQSxnQ1F2REEsTUFBQSxLUnVEQSxvQkFBQSxxQlF2RkYsTUFBQSxJQUNBLE1BQUEsS0FGRSxvQ0FBQSxxQ0F5QkEsTUFBQSxLUitEQSxzQ0FBQSx1Q1EzREEsTUFBQSxLUjJEQSwrQkFBQSxnQ1F2REEsTUFBQSxLUnVEQSxvQkFBQSxxQlF2RkYsTUFBQSxJQUNBLE1BQUEsS0FGRSxvQ0FBQSxxQ0F5QkEsTUFBQSxLUitEQSxzQ0FBQSx1Q1EzREEsTUFBQSxLUjJEQSwrQkFBQSxnQ1F2REEsTUFBQSxLQWpDQSxvQkFBQSxxQkFDRixNQUFBLFVBQ0EsTUFBQSxLQUZFLG9DQUFBLHFDQXlCQSxNQUFBLEtSK0RBLHNDQUFBLHVDUTNEQSxNQUFBLEtBN0JBLCtCQUFBLGdDQWlDQSxNQUFBLEtSNkRGLHdCQUFBLHlCS3pHRixhQUFBLEVBQ0EsY0FBQSxFTGlIRSxrQ0FUQSxxQkFJSSxZQUFBLEVBQ0EsYUFBQSxFQVlBLDBCQUFBLDJCS2pITixhQUFBLFNBQ0EsY0FBQSxTTG9IRSxnQkNqSEEsWUFBQSxLQUNBLGFBQUEsS0RnSEEsZ0JBQUEsNkNDcEhFLE1BQUEsS0FDQSxNQUFBLEtSMnJCTixjQURBLGNPbGtCSSxrQkM1R0YsU0FBQSxPQUNBLFlBQUEsRUFDQSxhQUFBLEVBQ0EsTUFBQSxLUStHRSxtQ1RyREksZUFBQSxnQkFBQSxnQkFBQSxlQUFBLGVBQUEsZUFBQSxlQUFBLGVBQUEsZUFBQSxlQUFBLGVBSkEsZUFBQSxnQkFBQSxnQkFBQSxlQUFBLGVBQUEsZUFBQSxlQUFBLGVBQUEsZUFBQSxlQzNFSixTQUFBLFNEcUVFLFVNdEVKLE1BQUEsU040RU0sZUMxRUosS0FBQSxTRDhFSSxlQzlFSixLQUFBLFVEc0ZFLGlCQzVESixZQUFBLEVEMENJLFVNdEVKLE1BQUEsVU40RU0sZUMxRUosS0FBQSxVRDhFSSxlQzlFSixLQUFBLFdEc0ZFLGlCQzVESixZQUFBLFNEMENJLFVNdEVKLE1BQUEsSU40RU0sZUMxRUosS0FBQSxJRDhFSSxlQzlFSixLQUFBLEtEc0ZFLGlCQzVESixZQUFBLFVEMENJLFVNdEVKLE1BQUEsVU40RU0sZUMxRUosS0FBQSxVRDhFSSxlQzlFSixLQUFBLFdEc0ZFLGlCQzVESixZQUFBLElEMENJLFVNdEVKLE1BQUEsVU40RU0sZUMxRUosS0FBQSxVRDhFSSxlQzlFSixLQUFBLFdEc0ZFLGlCQzVESixZQUFBLFVEMENJLFVNdEVKLE1BQUEsSU40RU0sZUMzRUosU0FBQSxTQUNBLEtBQUEsSUQ4RUksZUM5RUosS0FBQSxLRHNGRSxpQkM1REosWUFBQSxVRDBDSSxVTXRFSixNQUFBLFVONEVNLGVDMUVKLEtBQUEsVUQ4RUksZUM5RUosS0FBQSxXRHNGRSxpQkM1REosWUFBQSxJRDBDSSxVTXRFSixNQUFBLFVONEVNLGVDMUVKLEtBQUEsVUQ4RUksZUM5RUosS0FBQSxXRHNGRSxpQkM1REosWUFBQSxVRDBDSSxVTXRFSixNQUFBLElONEVNLGVDMUVKLEtBQUEsSUQ4RUksZUM5RUosS0FBQSxLRHNGRSxpQkM1REosWUFBQSxVRDBDSSxXTXRFSixNQUFBLFVONEVNLGdCQzFFSixLQUFBLFVEOEVJLGdCQzlFSixLQUFBLFdEc0ZFLGlCQzVESixZQUFBLElEMENJLFdNdEVKLE1BQUEsVU40RU0sZ0JDMUVKLEtBQUEsVUQ4RUksZ0JDOUVKLEtBQUEsV0RzRkUsa0JDNURKLFlBQUEsVUQwQ0ksV010RUosTUFBQSxLTndGSSxrQkM1REosWUFBQSxVT3JCSSxxQkFBQSxzQkFDRixNQUFBLEtBQ0EsTUFBQSxLUnNGRSxxQ0FBQSxzQ1EvREEsTUFBQSxLQXpCQSx1Q0FBQSx3Q0E2QkEsTUFBQSxLQTdCQSxnQ0FBQSxpQ0FpQ0EsTUFBQSxLUnVEQSxxQkFBQSxzQlF2RkYsTUFBQSxJQUNBLE1BQUEsS1JzRkUscUNBQUEsc0NRL0RBLE1BQUEsS0F6QkEsdUNBQUEsd0NBNkJBLE1BQUEsS1IyREEsZ0NBQUEsaUNRdkRBLE1BQUEsS0FqQ0EscUJBQUEsc0JBQ0YsTUFBQSxVQUNBLE1BQUEsS0FGRSxxQ0FBQSxzQ0F5QkEsTUFBQSxLQXpCQSx1Q0FBQSx3Q0E2QkEsTUFBQSxLUjJEQSxnQ0FBQSxpQ1F2REEsTUFBQSxLUnVEQSxxQkFBQSxzQlF2RkYsTUFBQSxJQUNBLE1BQUEsS0FGRSxxQ0FBQSxzQ0F5QkEsTUFBQSxLUitEQSx1Q0FBQSx3Q1EzREEsTUFBQSxLUjJEQSxnQ0FBQSxpQ1F2REEsTUFBQSxLQWpDQSxxQkFBQSxzQkFDRixNQUFBLElBQ0EsTUFBQSxLUnNGRSxxQ0FBQSxzQ1EvREEsTUFBQSxLUitEQSx1Q0FBQSx3Q1EzREEsTUFBQSxLQTdCQSxnQ0FBQSxpQ0FpQ0EsTUFBQSxLUnVEQSxxQkFBQSxzQlF2RkYsTUFBQSxVQUNBLE1BQUEsS1JzRkUscUNBQUEsc0NRL0RBLE1BQUEsS1IrREEsdUNBQUEsd0NRM0RBLE1BQUEsS0E3QkEsZ0NBQUEsaUNBaUNBLE1BQUEsS1I4REUseUJBQUEsMEJLMUdOLGFBQUEsRUFDQSxjQUFBLEVMaUhnQyxtQ0FUOUIsc0JBSUksWUFBQSxFQUNBLGFBQUEsRUFZQSwyQkFBQSw0QktqSE4sYUFBQSxTQUNBLGNBQUEsU0xvSEUsaUJDakhBLFlBQUEsS0FDQSxhQUFBLEtEZ0hBLGlCQUFBLDhDQ3BIRSxNQUFBLEtBQ0EsTUFBQSxLUjgzQkosZUFEQSxlT3J3QkUsbUJDNUdGLFNBQUEsT0FDQSxZQUFBLEVBQ0EsYUFBQSxFQUNBLE1BQUEsTVErR0UsbUNUckRJLGNBQUEsZUFBQSxlQUFBLGNBQUEsY0FBQSxjQUFBLGNBQUEsY0FBQSxjQUFBLGNBQUEsY0FKQSxjQUFBLGVBQUEsZUFBQSxjQUFBLGNBQUEsY0FBQSxjQUFBLGNBQUEsY0FBQSxjQzNFSixTQUFBLFNEcUVFLFNNdEVKLE1BQUEsU040RU0sY0MxRUosS0FBQSxTRDhFSSxjQzlFSixLQUFBLFVEc0ZFLGdCQzVESixZQUFBLEVEMENJLFNNdEVKLE1BQUEsVU40RU0sY0MxRUosS0FBQSxVRDhFSSxjQzlFSixLQUFBLFdEc0ZFLGdCQzVESixZQUFBLFNEMENJLFNNdEVKLE1BQUEsSU40RU0sY0MxRUosS0FBQSxJRDhFSSxjQzlFSixLQUFBLEtEc0ZFLGdCQzVESixZQUFBLFVEMENJLFNNdEVKLE1BQUEsVU40RU0sY0MxRUosS0FBQSxVRDhFSSxjQzlFSixLQUFBLFdEc0ZFLGdCQzVESixZQUFBLElEMENJLFNNdEVKLE1BQUEsVU40RU0sY0MxRUosS0FBQSxVRDhFSSxjQzlFSixLQUFBLFdEc0ZFLGdCQzVESixZQUFBLFVEMENJLFNNdEVKLE1BQUEsSU40RU0sY0MzRUosU0FBQSxTQUNBLEtBQUEsSUQ4RUksY0M5RUosS0FBQSxLRHNGRSxnQkM1REosWUFBQSxVRDBDSSxTTXRFSixNQUFBLFVONEVNLGNDMUVKLEtBQUEsVUQ4RUksY0M5RUosS0FBQSxXRHNGRSxnQkM1REosWUFBQSxJRDBDSSxTTXRFSixNQUFBLFVONEVNLGNDMUVKLEtBQUEsVUQ4RUksY0M5RUosS0FBQSxXRHNGRSxnQkM1REosWUFBQSxVRDBDSSxTTXRFSixNQUFBLElONEVNLGNDMUVKLEtBQUEsSUQ4RUksY0M5RUosS0FBQSxLRHNGRSxnQkM1REosWUFBQSxVRDBDSSxVTXRFSixNQUFBLFVONEVNLGVDMUVKLEtBQUEs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IGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Nzcy1saW50OmRpc2FibGUgQ29sb3JWYXJpYWJsZSwgUXVhbGlmeWluZ0VsZW1lbnQsIFZlbmRvclByZWZpeFxuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzIxOTllOCxcbiAgc2Vjb25kYXJ5OiAjNzc3LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2VjNTg0MCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IGZhbHNlICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KTtcbiRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpO1xuJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZyk7XG4kYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpO1xuXG4vLyBSZW1vdmUgdGhpcyBpbiA2LjNcbiQtemYtbWVudS1pY29uLWltcG9ydGVkOiBmYWxzZTtcbiQtemYtZmxleC1jbGFzc2VzLWltcG9ydGVkOiBmYWxzZTtcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIC16Zi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuXG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIElkU2VsZWN0b3JcbiAgI21hcF9jYW52YXMsXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gTG9hZHMgbm9ybWFsaXplLmNzcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtemYtbm9ybWFsaXplIHtcbiAgLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4gIC8qKlxuICAgKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICAgKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuICAgKiAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4gICAqL1xuXG4gIGh0bWwge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gICAqL1xuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAgICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAgICogYW5kIEZpcmVmb3guXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gICAqL1xuXG4gIGFydGljbGUsXG4gIGFzaWRlLFxuICBkZXRhaWxzLFxuICBmaWdjYXB0aW9uLFxuICBmaWd1cmUsXG4gIGZvb3RlcixcbiAgaGVhZGVyLFxuICBoZ3JvdXAsXG4gIG1haW4sXG4gIG1lbnUsXG4gIG5hdixcbiAgc2VjdGlvbixcbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvKipcbiAgICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAgICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgKi9cblxuICBhdWRpbyxcbiAgY2FudmFzLFxuICBwcm9ncmVzcyxcbiAgdmlkZW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gICAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gICAqL1xuXG4gIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICAgKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gICAqL1xuXG4gIFtoaWRkZW5dLFxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8qIExpbmtzXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgKi9cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXByb3ZlIHJlYWRhYmlsaXR5IG9mIGZvY3VzZWQgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBhbHNvIGluIGFuXG4gICAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAgICovXG5cbiAgYTphY3RpdmUsXG4gIGE6aG92ZXIge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gICAqL1xuXG4gIGRmbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAgICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICAgKi9cblxuICBtYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwO1xuICAgIGNvbG9yOiAjMDAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvKipcbiAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gICAqL1xuXG4gIGltZyB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICAgKi9cblxuICBzdmc6bm90KDpyb290KSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gICAqL1xuXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAxZW0gNDBweDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gICAqL1xuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cblxuICAvKipcbiAgICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBjb2RlLFxuICBrYmQsXG4gIHByZSxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICB9XG5cbiAgLyogRm9ybXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAgICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICAgKi9cblxuICAvKipcbiAgICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICAgKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAgICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAgICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICBtYXJnaW46IDA7IC8qIDMgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAgICovXG5cbiAgYnV0dG9uIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gICAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gICAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gICAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAgICovXG5cbiAgYnV0dG9uLFxuICBzZWxlY3Qge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLyoqXG4gICAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gICAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICAgKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gICAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gICAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAgICovXG5cbiAgYnV0dG9uLFxuICBodG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gICAqL1xuXG4gIGJ1dHRvbltkaXNhYmxlZF0sXG4gIGh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAgICovXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBpbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICAgKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAgICovXG5cbiAgaW5wdXQge1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAvKipcbiAgICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICAgKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICAgKlxuICAgKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICAgKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICAgKi9cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICAgKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICAgKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gICAqL1xuXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICovXG5cbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICAgKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gICAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAgICovXG5cbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAgICogW05PVEVdIFdlIGRvbid0IGVuYWJsZSB0aGlzIHJ1bGVzZXQgaW4gRm91bmRhdGlvbiwgYmVjYXVzZSB3ZSB3YW50IHRoZSA8ZmllbGRzZXQ+IGVsZW1lbnQgdG8gaGF2ZSBwbGFpbiBzdHlsaW5nLlxuICAgKi9cblxuICAvKiBmaWVsZHNldCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgfSAqL1xuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gICAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAgICovXG5cbiAgbGVnZW5kIHtcbiAgICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAgICovXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLyoqXG4gICAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAgICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gICAqL1xuXG4gIG9wdGdyb3VwIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC8qIFRhYmxlc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gICAqL1xuXG4gIHRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICB9XG5cbiAgdGQsXG4gIHRoIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHotaW5kZXg6IDEwO1xuXG4gICYuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZS4jeyRuYW1lfSB7XG4gICAgICB3aWR0aDogJHNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gKDEgLyAxNik7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAoMSAvIDE2KTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjIuNFxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qKlxuICAgKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICAgKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuICAgKiAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4gICAqL1xuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU1vbnRzZXJyYXQ6NDAwLDcwMCk7XG5AaW1wb3J0IHVybChodHRwczovL21heGNkbi5ib290c3RyYXBjZG4uY29tL2ZvbnQtYXdlc29tZS80LjUuMC9jc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MpO1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gICAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAgICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAgICogYW5kIEZpcmVmb3guXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gICAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gICAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICovXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gICAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gICAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gICAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAgICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAgICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuICAgKiBhY3RpdmUvaG92ZXIgc3RhdGUuXG4gICAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7IH1cblxuLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gICAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAgICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gICAqL1xubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICAgKi9cbmltZyB7XG4gIGJvcmRlcjogMDsgfVxuXG4vKipcbiAgICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gICAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAgICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICAgKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAgICovXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gICAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAgICovXG4vKipcbiAgICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICAgKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAgICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAgICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAgICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gICAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gICAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAgICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAgICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAgICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICAgKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICAgKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICAgKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAgICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICAgKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICAgKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gICAqL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLyogMyAqLyB9XG5cbi8qKlxuICAgKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICAgKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLyoqXG4gICAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAgICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICAgKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAgICovXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLyoqXG4gICAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAgICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAgICpcbiAgICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAgICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAgICovXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAgICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAgICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICAgKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICAgKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gICAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAgICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICAgKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICAgKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gICAqIFtOT1RFXSBXZSBkb24ndCBlbmFibGUgdGhpcyBydWxlc2V0IGluIEZvdW5kYXRpb24sIGJlY2F1c2Ugd2Ugd2FudCB0aGUgPGZpZWxkc2V0PiBlbGVtZW50IHRvIGhhdmUgcGxhaW4gc3R5bGluZy5cbiAgICovXG4vKiBmaWVsZHNldCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgfSAqL1xuLyoqXG4gICAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAgICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICAgKi9cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gICAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAgICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICAgKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAgICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qIFRhYmxlc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAgICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuI21hcF9jYW52YXMgaW1nLFxuI21hcF9jYW52YXMgZW1iZWQsXG4jbWFwX2NhbnZhcyBvYmplY3QsXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnJvdyB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnJvdzo6YmVmb3JlLCAucm93OjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5yb3c6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgfVxuICAgIC5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucm93LmV4cGFuZGVkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAucm93LmV4cGFuZGVkIC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNvbHVtbi5lbmQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTsgfVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXB1c2gtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMjUlOyB9XG5cbi5zbWFsbC1wdWxsLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0yNSU7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zMy4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC00MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXB1c2gtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlOyB9XG5cbi5zbWFsbC1wdWxsLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01OC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC02Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLnNtYWxsLXB1c2gtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNzUlOyB9XG5cbi5zbWFsbC1wdWxsLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC03NSU7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC05MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAyNSU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAyMCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAxNi42NjY2NyU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5zbWFsbC1jb2xsYXBzZSAucm93IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uZXhwYW5kZWQucm93IC5zbWFsbC1jb2xsYXBzZS5yb3cge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cblxuLnNtYWxsLWNlbnRlcmVkIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCxcbi5zbWFsbC1wdXNoLTAsXG4uc21hbGwtcHVsbC0wIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLm1lZGl1bS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMjAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5leHBhbmRlZC5yb3cgLm1lZGl1bS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG4gIC5tZWRpdW0tY2VudGVyZWQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIC5tZWRpdW0tY2VudGVyZWQsIC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCxcbiAgLm1lZGl1bS1wdXNoLTAsXG4gIC5tZWRpdW0tcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5leHBhbmRlZC5yb3cgLmxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG4gIC5sYXJnZS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgLmxhcmdlLWNlbnRlcmVkLCAubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11bmNlbnRlcmVkLFxuICAubGFyZ2UtcHVzaC0wLFxuICAubGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgaDEgc21hbGwsXG4gIGgyIHNtYWxsLFxuICBoMyBzbWFsbCxcbiAgaDQgc21hbGwsXG4gIGg1IHNtYWxsLFxuICBoNiBzbWFsbCB7XG4gICAgY29sb3I6ICNjYWNhY2E7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDEuNXJlbTsgfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtOyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogM3JlbTsgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07IH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtOyB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTsgfVxuICBoNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5hIHtcbiAgY29sb3I6ICMyMTk5ZTg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzE1ODVjZjsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItbGVmdDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGNsZWFyOiBib3RoOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM4YThhOGE7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICM4YThhOGE7IH1cbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJzsgfVxuXG5hYmJyIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGN1cnNvcjogaGVscDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMGEwYTBhOyB9XG5cbmNvZGUge1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07IH1cblxua2JkIHtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbSAwO1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTsgfVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjOGE4YThhOyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIHAgKyAuc3RhdCB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07IH1cblxuLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9IH1cblxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgbWFyZ2luOiAwIDFyZW0gMXJlbSAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTllODtcbiAgY29sb3I6ICNmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE1ODNjYztcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLnRpbnkge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24uc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5idXR0b24ucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTllODtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNDdjYzA7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc3NztcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWY1ZjVmO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24ud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM1ODQwO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGEzMTE2O1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi5ob2xsb3cge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMTk5ZTg7XG4gICAgY29sb3I6ICMyMTk5ZTg7IH1cbiAgICAuYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzBjNGQ3ODtcbiAgICAgIGNvbG9yOiAjMGM0ZDc4OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMjE5OWU4O1xuICAgICAgY29sb3I6ICMyMTk5ZTg7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwYzRkNzg7XG4gICAgICAgIGNvbG9yOiAjMGM0ZDc4OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3Nzc7XG4gICAgICBjb2xvcjogIzc3NzsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMzYzNjM2M7XG4gICAgICAgIGNvbG9yOiAjM2MzYzNjOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VjNTg0MDtcbiAgICAgIGNvbG9yOiAjZWM1ODQwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4ODFmMGU7XG4gICAgICAgIGNvbG9yOiAjODgxZjBlOyB9XG4gIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTllODtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTk5ZTg7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzU4NDA7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgdG9wOiAtMC4xZW07IH1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjOGE4YThhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIHRleHRhcmVhW3Jvd3NdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXQ6OnBsYWNlaG9sZGVyLFxudGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYWNhY2E7IH1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lOyB9XG5cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5bdHlwZT0nZmlsZSddLFxuW3R5cGU9J2NoZWNrYm94J10sXG5bdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbjogMCAwIDFyZW07IH1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcblt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWxbZm9yXSxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbFtmb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxubGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbmxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuXG5bdHlwZT0nZmlsZSddIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICBsYWJlbC5taWRkbGUge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgcGFkZGluZzogMC41NjI1cmVtIDA7IH1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMzMzOyB9XG5cbi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQgPiAqIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDElO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGhlaWdodDogMi41cmVtOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMSU7IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIG1hcmdpbjogMS4xMjVyZW0gMDsgfVxuICAuZmllbGRzZXQgbGVnZW5kIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAgIHBhZGRpbmc6IDAgMC4xODc1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4NTEsIDUxLCA1MSUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG4gIHNlbGVjdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzYsIDg4LCA2NCwgMC4xKTtcbiAgYm9yZGVyLWNvbG9yOiAjZWM1ODQwOyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNlYzU4NDA7IH1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2VjNTg0MDsgfVxuICAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmNsZWFyZml4OjpiZWZvcmUsIC5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjb250ZW50OiAnICc7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4vKlxuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuKi9cbi5jYWxsb3V0IHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWYwZmM7IH1cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViOyB9XG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWZhZWE7IH1cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNkOTsgfVxuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTZlMjsgfVxuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAuY2FsbG91dC5sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cblxuLmNsb3NlLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICM4YThhOGE7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmlzLWRyaWxsZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaXMtZHJpbGxkb3duIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7IH1cbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1jbG9zaW5nIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMjE5OWU4O1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgcmlnaHQ6IDFyZW07IH1cblxuLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMjE5OWU4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtOyB9XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMzAwcHg7XG4gIHotaW5kZXg6IDEwOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5zbWFsbCB7XG4gIHdpZHRoOiAyMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5sYXJnZSB7XG4gIHdpZHRoOiA0MDBweDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTAwJTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA1cHg7XG4gIGJvcmRlci1jb2xvcjogIzIxOTllOCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIHJpZ2h0OiA1cHg7XG4gIG1hcmdpbi10b3A6IC0ycHg7IH1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5kcm9wZG93bi5tZW51IGEge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5uby1qcyAuZHJvcGRvd24ubWVudSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xuICBtYXJnaW4tdG9wOiAtM3B4OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDVweDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMjE5OWU4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNXB4O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyMTk5ZTg7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjE5OWU4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyMTk5ZTggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMjE5OWU4O1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjE5OWU4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMjE5OWU4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMjE5OWU4O1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH0gfVxuXG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwOyB9XG5cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgd2lkdGg6IDEwMHB4OyB9XG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyMTk5ZTggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzIxOTllODtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbkBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC12aWRlbztcbkBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiovXG4ubWVudSB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC5tZW51ID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSA+IGxpIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgLm1lbnUgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5tZW51IGlucHV0LFxuICAubWVudSBhLFxuICAubWVudSBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lbnUgPiBsaSA+IGEgaW1nLFxuICAubWVudSA+IGxpID4gYSBpLFxuICAubWVudSA+IGxpID4gYSBzdmcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAubWVudSA+IGxpID4gYSBpbWcgKyBzcGFuLFxuICAgIC5tZW51ID4gbGkgPiBhIGkgKyBzcGFuLFxuICAgIC5tZW51ID4gbGkgPiBhIHN2ZyArIHNwYW4ge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubWVudSA+IGxpID4gYSBpbWcsXG4gIC5tZW51ID4gbGkgPiBhIGksXG4gIC5tZW51ID4gbGkgPiBhIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAubWVudSA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gIC5tZW51LnZlcnRpY2FsID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgICAubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAgIC5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAubWVudS5zaW1wbGUgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgLm1lbnUuc2ltcGxlIGEge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQ6OmJlZm9yZSwgLm1lbnUuYWxpZ24tcmlnaHQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubWVudS5hbGlnbi1yaWdodCA+IGxpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lbnUuZXhwYW5kZWQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7IH1cbiAgICAubWVudS5leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIGltZyxcbiAgICAubWVudS5pY29uLXRvcCA+IGxpID4gYSBpLFxuICAgIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvIDAuMjVyZW07IH1cbiAgLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAubWVudSAuYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgYmFja2dyb3VuZDogIzIxOTllODsgfVxuXG4ubWVudS10ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4ubWVudS1jZW50ZXJlZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qXG5AaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiovXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIHRhYmxlIHRoZWFkLFxuICB0YWJsZSB0Ym9keSxcbiAgdGFibGUgdGZvb3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuICB0YWJsZSBjYXB0aW9uIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07IH1cbiAgdGFibGUgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgdGFibGUgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgdGFibGUgdGhlYWQgdHIsXG4gIHRhYmxlIHRmb290IHRyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICB0YWJsZSB0aGVhZCB0aCxcbiAgdGFibGUgdGhlYWQgdGQsXG4gIHRhYmxlIHRmb290IHRoLFxuICB0YWJsZSB0Zm9vdCB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxOyB9XG4gIHRhYmxlIHRib2R5IHRoLFxuICB0YWJsZSB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICB0YWJsZS5zdGFjayB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB0YWJsZS5zdGFjayB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB0YWJsZS5zdGFjayB0cixcbiAgdGFibGUuc3RhY2sgdGgsXG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDsgfSB9XG5cbnRhYmxlLnNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuXG50YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7IH1cblxudGFibGUuaG92ZXIgdGZvb3QgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjOyB9XG5cbnRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLypcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuKi9cbi50aXRsZS1iYXIge1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogMC41cmVtOyB9XG4gIC50aXRsZS1iYXI6OmJlZm9yZSwgLnRpdGxlLWJhcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAudGl0bGUtYmFyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cblxuLnRpdGxlLWJhci1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnRpdGxlLWJhci1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmhhcy10aXAge1xuICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICM4YThhOGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBoZWxwOyB9XG5cbi50b29sdGlwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuNjQ5NXJlbSk7XG4gIG1heC13aWR0aDogMTByZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAudG9vbHRpcDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBhMGEwYTtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAudG9vbHRpcC50b3A6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBib3JkZXItY29sb3I6ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB0b3A6IDEwMCU7XG4gICAgYm90dG9tOiBhdXRvOyB9XG4gIC50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3R0b206IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLnRvb2x0aXAucmlnaHQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3R0b206IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLnRvcC1iYXIge1xuICBwYWRkaW5nOiAwLjVyZW07IH1cbiAgLnRvcC1iYXI6OmJlZm9yZSwgLnRvcC1iYXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnRvcC1iYXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAudG9wLWJhcixcbiAgLnRvcC1iYXIgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7IH1cbiAgLnRvcC1iYXIgaW5wdXQge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC50b3AtYmFyIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC50b3AtYmFyIGlucHV0LmJ1dHRvbiB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLWJhciAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuXG4udG9wLWJhci1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnRvcC1iYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLypcbkBpbmNsdWRlIG1vdGlvbi11aS10cmFuc2l0aW9ucztcbkBpbmNsdWRlIG1vdGlvbi11aS1hbmltYXRpb25zO1xuKi9cbmJvZHkge1xuICBmb250LWZhbWlseTogaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBib2R5IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC1zaXplOiBjYWxjKDAuNzVyZW0gKyAoMTggLSAxMikgKiAoKDEwMHZ3IC0gNjQwcHgpIC8gODAwKSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIGJvZHkge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuXG5oMSwgaDIsIGgzIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuaDEge1xuICBmb250LXNpemU6IDEyMCU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuaDIge1xuICBmb250LXNpemU6IDExNSU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuaDMge1xuICBmb250LXNpemU6IDExMCU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgY29sb3I6IGJsYWNrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDkwJTtcbiAgcGFkZGluZzogMC43NWVtIDJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBtYXJnaW46IDA7IH1cblxuLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4uYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGNvbG9yOiAjMDkzQzcxO1xuICBib3JkZXItY29sb3I6ICMwOTNDNzE7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYnV0dG9uIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgcGFkZGluZzogMWVtIDNlbTsgfSB9XG5cbmJvZHkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIC8qIHJlcXVpcmVkIGZvciAub2MtcHVzaCAqLyB9XG5cbi5oZXJvLWNhcHRpb24ge1xuICBtYXJnaW4tdG9wOiA3NXB4O1xuICBtYXJnaW4tdG9wOiBjYWxjKDYwcHggKyAxZW0pO1xuICAvKiByZXF1aXJlZCBmb3IgZml4ZWQgaGVhZGVyICovIH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVyby1jYXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLm9jLW5hdiAuY2FsbG91dCB7XG4gIHdpZHRoOiAyMGVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0yMGVtO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbi10b3A6IDYwcHg7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDU5cHgpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGxlZnQgLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBsZWZ0IC4ycyBlYXNlLW91dDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYm94LXNoYWRvdzogMHB4IDVweCA1cHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5vcGVuIC5vYy1uYXYgLmNhbGxvdXQge1xuICBsZWZ0OiAwOyB9XG5cbi5vYy1uYXYtdG9nZ2xlIHtcbiAgd2lkdGg6IDNlbTtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmFjY291bnQtdG9nZ2xlIHtcbiAgd2lkdGg6IDNlbTtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5vYy1uYXYtdG9nZ2xlIGEsIC5hY2NvdW50LXRvZ2dsZSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgbWFyZ2luOiAxMHB4OyB9XG5cbi5vYy1uYXYtdG9nZ2xlIGE6OmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gIGNvbnRlbnQ6ICdcXGYwYzknO1xuICBtYXJnaW4tbGVmdDogLjVlbTsgfVxuXG4uYWNjb3VudC10b2dnbGUgYTo6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gIGNvbnRlbnQ6ICdcXGYwMDcnOyB9XG5cbi5vcGVuIC5vYy1uYXYtdG9nZ2xlIGE6OmFmdGVyIHtcbiAgY29udGVudDogJ1xcZjAwZCc7IH1cblxuLm9jLXB1c2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogbGVmdCAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGxlZnQgLjJzIGVhc2Utb3V0OyB9XG5cbi5vYy1wdXNoLm9wZW4ge1xuICBsZWZ0OiAyMGVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9jLW5hdiB7XG4gICAgbWFyZ2luLXRvcDogMS41ZW07IH1cbiAgLm9jLW5hdiAuY2FsbG91dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIGJvZHkgc2VjdGlvbjpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwdnc7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5vcGVuIC5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjsgfVxuXG4ubG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDYwJTtcbiAgbGVmdDogMjAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmxvZ28gaW1nIHtcbiAgbWF4LXdpZHRoOiAxMjBweDtcbiAgbWFyZ2luOiAxOHB4IGF1dG8gMDsgfVxuXG4uaGVhZGVyIC5tZW51ID4gbGkgPiBhIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjNzc3OyB9XG5cbi5oZWFkZXIgLm1lbnUgPiBsaSA+IGE6aG92ZXIge1xuICBjb2xvcjogYmxhY2s7IH1cblxuLmRyb3Bkb3duLm1lbnUgLmhhcy1zdWJtZW51LmlzLXJpZ2h0LWFycm93ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDVweCA1cHggcmdiYSgwLCAwLCAwLCAwLjA1KTsgfVxuICAuaGVhZGVyIC5tZW51ID4gbGkgPiBhIHtcbiAgICBmb250LXNpemU6IDkwJTsgfVxuICAubG9nbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsZWZ0OiAwOyB9XG4gIC5sb2dvIGltZyB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW46IDJlbSAwIDA7IH1cbiAgLm1lbnUudmVydGljYWwgPiBsaS5yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMC43NWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDE0MHB4OyB9IH1cblxuLyogZGVzaWduIGNlbnRlciBidXR0b24gKi9cbi5oZWFkZXIgPiAucm93ID4gLmNvbHVtbiwgLmhlYWRlciA+IC5yb3cgPiAuY29sdW1ucywgLmhlYWRlciA+IC5yb3cgPiAuY29sdW1ucyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGVhZGVyIC5idXR0b24uc21hbGwge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogM2VtO1xuICByaWdodDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlYWRlciAuYnV0dG9uLnNtYWxsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZWFkZXIgLmJ1dHRvbi5zbWFsbCB7XG4gICAgICB0b3A6IDMuNWVtOyB9IH1cblxuLmhlcm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciwgdG9wO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5oZXJvIGgxOjphZnRlciwgLmhlcm8gaDI6OmFmdGVyIHtcbiAgY29udGVudDogJy0nO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEyMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBGaXJlZm94ICovXG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBJRSA5ICovXG4gIC1vLXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIE9wZXJhICovXG4gIHRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIFczQyAqLyB9XG5cbi5oZXJvLWNhcHRpb24ge1xuICBtYXgtd2lkdGg6IDYwcmVtO1xuICBwYWRkaW5nOiAzZW0gMDsgfVxuICAuaGVyby1jYXB0aW9uLnNtYWxsIHtcbiAgICBwYWRkaW5nOiAyZW0gMDsgfVxuXG4ucmVjZW50LXByb2plY3Qge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDksIDYwLCAxMTMsIDAuNyk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogM2VtIDA7IH1cbiAgLnJlY2VudC1wcm9qZWN0IHAge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnJlY2VudC1wcm9qZWN0IGEge1xuICBjb2xvcjogd2hpdGU7IH1cblxuLnJlY2VudC1wcm9qZWN0IGE6aG92ZXIge1xuICBjb2xvcjogIzk5RTVGRjsgfVxuXG4ucmVjZW50LXByb2plY3QtcGhvdG9zIHtcbiAgbWFyZ2luOiAyZW0gMCAxZW07IH1cblxuLnJlY2VudC1wcm9qZWN0LXBob3RvcyBpbWcge1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4ucmVjZW50LXByb2plY3QtY2FwdGlvbiBwIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogOTAlOyB9XG5cbi5yZWNlbnQtcHJvamVjdC1jYXB0aW9uIC5mbG9hdC1sZWZ0ID4gYTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMWVtOyB9XG5cbi5yZWNlbnQtcHJvamVjdC1jYXB0aW9uIC5mbG9hdC1sZWZ0ID4gYTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuXG4ucmVjZW50LXByb2plY3QtY2FwdGlvbiAuZmxvYXQtcmlnaHQgPiBhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMWVtOyB9XG5cbi5yZWNlbnQtcHJvamVjdC1waG90b3MgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnJlY2VudC1wcm9qZWN0LXBob3RvcyBhIGkuZmEge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogYXV0bztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogMzAlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IgMnMgZWFzZTtcbiAgLyogU2FmYXJpICovXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IgMnMgZWFzZTtcbiAgY29sb3I6ICMwOTNDNzE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7IH1cblxuLnJlY2VudC1wcm9qZWN0LXBob3RvcyBhOmhvdmVyIGkuZmEge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMClcIjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSAwczsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvLWNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDVlbSAwOyB9XG4gICAgLmhlcm8tY2FwdGlvbi5zbWFsbCB7XG4gICAgICBwYWRkaW5nOiAzZW0gMDsgfVxuICAucmVjZW50LXByb2plY3Qge1xuICAgIHBhZGRpbmc6IDVlbSAwOyB9XG4gIC5yZWNlbnQtcHJvamVjdC1waG90b3Mge1xuICAgIG1hcmdpbjogMWVtIGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZWNlbnQtcHJvamVjdC1waG90b3MgLmNvbHVtbiwgLnJlY2VudC1wcm9qZWN0LXBob3RvcyAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NWVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5oZXJvLWNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDZlbSAwOyB9XG4gIC5yZWNlbnQtcHJvamVjdCB7XG4gICAgcGFkZGluZzogNmVtIDA7IH0gfVxuXG4uc2VydmljZXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjQ2LCAyNDYsIDI0NiwgMC45KTtcbiAgcGFkZGluZzogNmVtIDA7IH1cblxuLnNlcnZpY2VzIGgyOjphZnRlciB7XG4gIGNvbnRlbnQ6ICctJztcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxMjAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogRmlyZWZveCAqL1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogSUUgOSAqL1xuICAtby10cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBPcGVyYSAqL1xuICB0cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBXM0MgKi8gfVxuXG4uc2VydmljZXMtZ2FsbGVyeSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBtYXJnaW46IDFlbSBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi5zZXJ2aWNlcy1nYWxsZXJ5IGEgaS5mYSB7XG4gIGZvbnQtc2l6ZTogMjAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IGF1dG87XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAxLjg0ZW07XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogMjglO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IgMnMgZWFzZTtcbiAgLyogU2FmYXJpICovXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IgMnMgZWFzZTtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDksIDYwLCAxMTMsIDAuNik7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MClcIjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlIDBzOyB9XG5cbi5zZXJ2aWNlcy1nYWxsZXJ5IGE6aG92ZXIgaS5mYSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKVwiO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlIDBzOyB9XG5cbi5zZXJ2aWNlcy1nYWxsZXJ5IGEgcCB7XG4gIG1hcmdpbjogMS4yNWVtIGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogcmdiYSg5LCA2MCwgMTEzLCAwLjgpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDkwJTsgfVxuXG4uc2VydmljZXMtZ2FsbGVyeSBhOmhvdmVyIHAge1xuICBjb2xvcjogIzA5M2M3MTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZXJ2aWNlcy1nYWxsZXJ5IC5jb2x1bW4sIC5zZXJ2aWNlcy1nYWxsZXJ5IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NWVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1ZW0gIWltcG9ydGFudDsgfSB9XG5cbi5mYWNlYm9vayB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHBhZGRpbmc6IDRlbSAwIDhlbTsgfVxuICAuZmFjZWJvb2sgaWZyYW1lIHtcbiAgICB3aWR0aDogNTAwcHg7XG4gICAgaGVpZ2h0OiA1MDBweDsgfVxuXG4uZmFjZWJvb2sge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBwYWRkaW5nOiA0ZW0gMCA4ZW07IH1cbiAgLmZhY2Vib29rIGlmcmFtZSB7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIG1hcmdpbi1sZWZ0OiAtLjkzNzVyZW07XG4gICAgaGVpZ2h0OiA1MDBweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mYWNlYm9vayBpZnJhbWUge1xuICAgIHdpZHRoOiA1MDBweDsgfSB9XG5cbi5mYWNlYm9vayBoMjo6YWZ0ZXIge1xuICBjb250ZW50OiAnLSc7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAtbW96LXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIEZpcmVmb3ggKi9cbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIElFIDkgKi9cbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogT3BlcmEgKi9cbiAgdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogVzNDICovIH1cblxuLmFjdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI0Y2RjZGNjtcbiAgcGFkZGluZzogNWVtIDA7IH1cblxuLmFjdGlvbiBoMjo6YWZ0ZXIge1xuICBjb250ZW50OiAnLSc7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAtbW96LXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIEZpcmVmb3ggKi9cbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIElFIDkgKi9cbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogT3BlcmEgKi9cbiAgdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogVzNDICovIH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWN0aW9uIHtcbiAgICBib3gtc2hhZG93OiAwcHggNXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMik7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5hY3Rpb24ge1xuICAgIHBhZGRpbmc6IDZlbSAwOyB9IH1cblxuLmNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcGFkZGluZzogNWVtIDA7IH1cblxuLmNvbnRlbnQgKyAuY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDZlbSAwOyB9IH1cblxuLmNvbnRlbnQgLmNhbGxvdXQge1xuICBwYWRkaW5nOiAxZW07IH1cblxuLmNvbnRlbnQgaDIge1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIGNvbG9yOiAjMDkzQzcxOyB9XG5cbi5jb250ZW50IGgyOjphZnRlciB7XG4gIGNvbnRlbnQ6ICctJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAtbW96LXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIEZpcmVmb3ggKi9cbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIElFIDkgKi9cbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogT3BlcmEgKi9cbiAgdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogVzNDICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZy1sZWZ0OiA0cHg7IH1cblxuLmNvbnRlbnQgdWwsIC5jb250ZW50IG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVlbTsgfVxuXG4uY29udGVudCBhc2lkZSBhIHtcbiAgY29sb3I6ICMwOTNDNzE7IH1cblxuLyogcHJvamVjdCAqL1xuYS5wcm9qZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6ICNGNkY2RjY7XG4gIGNsZWFyOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIG92ZXJmbG93OiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBhLnByb2plY3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07IH0gfVxuXG5hOmhvdmVyLnByb2plY3Qge1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5OyB9XG4gIGE6aG92ZXIucHJvamVjdCAubnVtYmVyIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZDlkOWQ5OyB9XG5cbi5wcm9qZWN0IGgyIHtcbiAgY29sb3I6ICMwOTNDNzE7IH1cblxuLnByb2plY3QtaW1hZ2Uge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDMzJTsgfVxuXG4ucHJvamVjdC1zdW1tYXJ5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAxLjVlbSAyZW07XG4gIHdpZHRoOiA2NiU7IH1cblxuLnByb2plY3Qtc3VtbWFyeSAuZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLmNvbnRhY3QtaW5mbyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmNvbnRhY3QtaW5mbyAucGhvbmUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAxZW07IH1cblxuLmNvbnRhY3QtaW5mbyAuZmEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuICAuY29udGFjdC1pbmZvIC5mYTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgIG1hcmdpbi1yaWdodDogLjRlbTsgfVxuXG4uY29udGVudCA+IC5yb3cge1xuICBwYWRkaW5nOiAwIDUlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQgPiAucm93ID4gLmxhcmdlLTgge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJlbTsgfSB9XG5cbi5sb2NhdGlvbiB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBjb2xvcjogIzc3NztcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cblxudWwuZGV0YWlscyB7XG4gIGNvbG9yOiAjNzc3O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDEuNWVtIDAgMCAwOyB9XG4gIHVsLmRldGFpbHMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICB1bC5kZXRhaWxzIGxpIHNwYW4ge1xuICAgIG1hcmdpbjogMCAuM2VtIDAuN2VtIDA7IH1cblxuLm51bWJlciB7XG4gIGNvbG9yOiAjNzc3O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiA5OXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDAgMCAwIDJlbTsgfVxuICBibG9ja3F1b3RlIHAge1xuICAgIGNvbG9yOiBibGFjazsgfVxuXG4vKiBkZXNpZ24taG9sZGVyICovXG4uZmlsdGVyLWJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbi10b3A6IC0yZW07XG4gIG1hcmdpbi1ib3R0b206IDJlbTsgfVxuICAuZmlsdGVyLWJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgICBib3JkZXItY29sb3I6ICNlNmU2ZTY7XG4gICAgbWFyZ2luOiAuMWVtO1xuICAgIHBhZGRpbmc6IC44NWVtIDJlbSAuNzVlbSAyZW07XG4gICAgZm9udC1zaXplOiA2NSU7IH1cbiAgICAuZmlsdGVyLWJ1dHRvbi1ncm91cCAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg5LCA2MCwgMTEzLCAwLjUpOyB9XG5cbmEuZGVzaWduIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjRjZGNkY2O1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDQzJTtcbiAgbWFyZ2luOiAxJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYS5kZXNpZ24ge1xuICAgICAgd2lkdGg6IDI2JTsgfSB9XG5cbmE6aG92ZXIuZGVzaWduIHtcbiAgYmFja2dyb3VuZDogI2U5ZTllOTsgfVxuICBhOmhvdmVyLmRlc2lnbiAubnVtYmVyIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZDlkOWQ5OyB9XG5cbi5kZXNpZ24gaDIge1xuICBjb2xvcjogIzA5M0M3MTtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG4gIC5kZXNpZ24gaDI6OmFmdGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDRweDsgfVxuXG4uZGVzaWduLXN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS41ZW0gMmVtOyB9XG5cbi8qIGRlc2lnbi1kZXRhaWwgKi9cbi5kZXNpZ24taGVybyBoMSArIC50YWdsaW5lIHtcbiAgY29sb3I6ICM3Nzc7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDgwJTtcbiAgbGV0dGVyLXNwYWNpbmc6IC4xZW07IH1cblxuLmRlc2lnbi1oZXJvIHAge1xuICBtYXgtd2lkdGg6IDQwZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmRlc2lnbi1kZXRhaWwge1xuICBwYWRkaW5nOiAwIDAgNWVtOyB9XG4gIC5kZXNpZ24tZGV0YWlsIGltZy5wbGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDQwZW07XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5kZXNpZ24tZGV0YWlsIGg1IHtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDg1JTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbjogLjVlbSAwIDEuNWVtOyB9XG4gIC5kZXNpZ24tZGV0YWlsIC5kZXRhaWxzIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IC41ZW07IH1cbiAgICAuZGVzaWduLWRldGFpbCAuZGV0YWlscyAubnVtYmVyIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU0LCAyNTQsIDI1NCwgMC41KTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmRlc2lnbi1kZXRhaWwgLmRldGFpbHMgLmZhIHtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5kZXNpZ24tZGV0YWlsIC5idXR0b24ge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTQsIDI1NCwgMjU0LCAwLjUpOyB9XG4gICAgLmRlc2lnbi1kZXRhaWwgLmJ1dHRvbjpob3ZlciwgLmRlc2lnbi1kZXRhaWwgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuMSk7XG4gICAgICBib3JkZXItY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuZGVzaWduLWRldGFpbCAuYnV0dG9uOjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgICBjb250ZW50OiAnXFxmMWMxJztcbiAgICAgIG1hcmdpbjogMCAuNWVtIDAgLS4yNWVtO1xuICAgICAgY29sb3I6IHJlZDsgfVxuICAuZGVzaWduLWRldGFpbCB0YWJsZSB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTQsIDI1NCwgMjU0LCAwLjIpO1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTsgfVxuICAgIC5kZXNpZ24tZGV0YWlsIHRhYmxlIHRoZWFkLCAuZGVzaWduLWRldGFpbCB0YWJsZSB0Ym9keSwgLmRlc2lnbi1kZXRhaWwgdGFibGUgdGZvb3Qge1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgLmRlc2lnbi1kZXRhaWwgdGFibGUgdGhlYWQgdHIge1xuICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDkzQzcxOyB9XG4gICAgLmRlc2lnbi1kZXRhaWwgdGFibGUgdGJvZHkgdHIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA4Mzc2ODsgfVxuICAgIC5kZXNpZ24tZGV0YWlsIHRhYmxlIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDksIDYwLCAxMTMsIDAuOSk7IH1cbiAgICAuZGVzaWduLWRldGFpbCB0YWJsZSB0Zm9vdCB7XG4gICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNsZWFyO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uZGVzaWduLXNwZWNzIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJhY2tncm91bmQ6ICMwOTNDNzE7XG4gIHBhZGRpbmctdG9wOiAxLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDJlbTsgfVxuXG4uZGVzaWduLXNwZWNzIGEuZGVzaWduLXBsYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmRlc2lnbi1zcGVjcyBhLmRlc2lnbi1wbGFuIHtcbiAgICAgIG1hcmdpbjogMCAuNmVtIDEuNGVtIDEuNmVtOyB9IH1cblxuLmRlc2lnbi1zcGVjcyBhLmRlc2lnbi1wbGFuIGkuZmEge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogYXV0bztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogNDcuNSU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlO1xuICAvKiBTYWZhcmkgKi9cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlO1xuICBjb2xvcjogIzA5M0M3MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTApXCI7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZSAwczsgfVxuXG4uZGVzaWduLXNwZWNzIGEuZGVzaWduLXBsYW46aG92ZXIgaS5mYSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKVwiO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlIDBzOyB9XG5cbmZvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNmVtIDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogcmdiYSg2OCwgNjgsIDY4LCAwLjcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIsIHRvcDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5mb290ZXItaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTsgfVxuXG5mb290ZXIgaDI6OmFmdGVyIHtcbiAgY29udGVudDogJy0nO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEyMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSg2LCAxKTtcbiAgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBGaXJlZm94ICovXG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDYsIDEpO1xuICAvKiBJRSA5ICovXG4gIC1vLXRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIE9wZXJhICovXG4gIHRyYW5zZm9ybTogc2NhbGUoNiwgMSk7XG4gIC8qIFczQyAqLyB9XG5cbmZvb3RlciBsaSA+IGEge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiA4MCU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuXG5mb290ZXIgbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICM5OUU1RkY7IH1cblxuZm9vdGVyIGxpOm5vdCg6bGFzdC1vZi10eXBlKTphZnRlciB7XG4gIGNvbnRlbnQ6ICd8JztcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cblxuLmxlZ2FsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMmVtOyB9XG5cbi5sZWdhbCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTsgfVxuXG4vKlxuZm9vdGVyIGxpID4gYTpub3QoOmxhc3Qtb2YtdHlwZSk6YWZ0ZXIge1xuICBjb250ZW50OiAnfCc7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuKi9cbi8qKlxuICogRmVhdGhlcmxpZ2h0IOKAkyB1bHRyYSBzbGltIGpRdWVyeSBsaWdodGJveFxuICogVmVyc2lvbiAxLjQuMSAtIGh0dHA6Ly9ub2VsYm9zcy5naXRodWIuaW8vZmVhdGhlcmxpZ2h0L1xuICpcbiAqIENvcHlyaWdodCAyMDE2LCBOb8OrbCBSYW91bCBCb3NzYXJ0IChodHRwOi8vd3d3Lm5vZWxib3NzLmNvbSlcbiAqIE1JVCBMaWNlbnNlZC5cbioqL1xuQG1lZGlhIGFsbCB7XG4gIC5mZWF0aGVybGlnaHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogZGltZW5zaW9uczogc3Bhbm5pbmcgdGhlIGJhY2tncm91bmQgZnJvbSBlZGdlIHRvIGVkZ2UgKi9cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk5ODtcbiAgICAvKiB6LWluZGV4IG5lZWRzIHRvIGJlID49IGVsZW1lbnRzIG9uIHRoZSBzaXRlLiAqL1xuICAgIC8qIHBvc2l0aW9uOiBjZW50ZXJpbmcgY29udGVudCAqL1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAvKiBpbnN1cmVzIHRoYXQgdGhlIDo6YmVmb3JlIHBzZXVkbyBlbGVtZW50IGRvZXNuJ3QgZm9yY2Ugd3JhcCB3aXRoIGZpeGVkIHdpZHRoIGNvbnRlbnQ7ICovXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAvKiBzdHlsaW5nICovXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gICAgLyogSUU4IFwiaGFja1wiIGZvciBuZXN0ZWQgZmVhdGhlcmxpZ2h0cyAqL1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC8qIHN1cHBvcnQgZm9yIG5lc3RlZCBmZWF0aGVybGlnaHRzLiBEb2VzIG5vdCB3b3JrIGluIElFOCAodXNlIEpTIHRvIGZpeCkgKi9cbiAgLmZlYXRoZXJsaWdodDpsYXN0LW9mLXR5cGUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTsgfVxuICAuZmVhdGhlcmxpZ2h0OmJlZm9yZSB7XG4gICAgLyogcG9zaXRpb246IHRyaWNrIHRvIGNlbnRlciBjb250ZW50IHZlcnRpY2FsbHkgKi9cbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNWVtOyB9XG4gIC5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1jb250ZW50IHtcbiAgICAvKiBtYWtlIGNvbnRlbnQgY29udGFpbmVyIGZvciBwb3NpdGlvbmVkIGVsZW1lbnRzIChjbG9zZSBidXR0b24pICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8qIHBvc2l0aW9uOiBjZW50ZXJpbmcgdmVydGljYWwgYW5kIGhvcml6b250YWwgKi9cbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8qIGRpbWVuc2lvbnM6IGN1dCBvZmYgaW1hZ2VzICovXG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcGFkZGluZzogMjVweCAyNXB4IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAvKiBkaW1lbnNpb25zOiBoYW5kbGluZyBsYXJnZSBjb250ZW50ICovXG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIG1hcmdpbi1yaWdodDogNSU7XG4gICAgbWF4LWhlaWdodDogOTUlO1xuICAgIC8qIHN0eWxpbmcgKi9cbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGN1cnNvcjogYXV0bztcbiAgICAvKiByZXNldCB3aGl0ZS1zcGFjZSB3cmFwcGluZyAqL1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgLyogY29udGFpbnMgdGhlIGNvbnRlbnQgKi9cbiAgLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWlubmVyIHtcbiAgICAvKiBtYWtlIHN1cmUgaXRzIHZpc2libGUgKi9cbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY2xvc2UtaWNvbiB7XG4gICAgLyogcG9zaXRpb246IGNlbnRlcmluZyB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbCAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIC8qIGRpbWVuc2lvbnM6IDI1cHggeCAyNXB4ICovXG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgLyogc3R5bGluZyAqL1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgLyogU2V0IHRoZSBiYWNrZ3JvdW5kIGluIGNhc2UgaXQgb3ZlcmxhcHMgdGhlIGNvbnRlbnQgKi9cbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWltYWdlIHtcbiAgICAvKiBzdHlsaW5nICovXG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmZlYXRoZXJsaWdodC1pZnJhbWUgLmZlYXRoZXJsaWdodC1jb250ZW50IHtcbiAgICAvKiByZW1vdmVkIHRoZSBib3JkZXIgZm9yIGltYWdlIGNyb3Bpbmcgc2luY2UgaWZyYW1lIGlzIGVkZ2UgdG8gZWRnZSAqL1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAuZmVhdGhlcmxpZ2h0IGlmcmFtZSB7XG4gICAgLyogc3R5bGluZyAqL1xuICAgIGJvcmRlcjogbm9uZTsgfSB9XG5cbi8qIGhhbmRsaW5nIHBob25lcyBhbmQgc21hbGwgc2NyZWVucyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xuICAgIC8qIGRpbWVuc2lvbnM6IG1heGltaXplIGxpZ2h0Ym94IHdpdGggZm9yIHNtYWxsIHNjcmVlbnMgKi9cbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWF4LWhlaWdodDogOTglO1xuICAgIHBhZGRpbmc6IDEwcHggMTBweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7IH0gfVxuXG4vKipcbiAqIEZlYXRoZXJsaWdodCBHYWxsZXJ5IOKAkyBhbiBleHRlbnNpb24gZm9yIHRoZSB1bHRyYSBzbGltIGpRdWVyeSBsaWdodGJveFxuICogVmVyc2lvbiAxLjQuMSAtIGh0dHA6Ly9ub2VsYm9zcy5naXRodWIuaW8vZmVhdGhlcmxpZ2h0L1xuICpcbiAqIENvcHlyaWdodCAyMDE2LCBOb8OrbCBSYW91bCBCb3NzYXJ0IChodHRwOi8vd3d3Lm5vZWxib3NzLmNvbSlcbiAqIE1JVCBMaWNlbnNlZC5cbioqL1xuQG1lZGlhIGFsbCB7XG4gIC5mZWF0aGVybGlnaHQtbmV4dCxcbiAgLmZlYXRoZXJsaWdodC1wcmV2aW91cyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjVweDtcbiAgICByaWdodDogMjVweDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogODAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAvKiBwcmV2ZW50aW5nIHRleHQgc2VsZWN0aW9uICovXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC8qIElFOSBoYWNrLCBvdGhlcndpc2UgbmF2aWdhdGlvbiBkb2Vzbid0IGFwcGVhciAqLyB9XG4gIC5mZWF0aGVybGlnaHQtcHJldmlvdXMge1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgcmlnaHQ6IDgwJTsgfVxuICAuZmVhdGhlcmxpZ2h0LW5leHQgc3BhbixcbiAgLmZlYXRoZXJsaWdodC1wcmV2aW91cyBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1JTtcbiAgICB3aWR0aDogODIlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDRlbTtcbiAgICBsaW5lLWhlaWdodDogNGVtO1xuICAgIG1hcmdpbi10b3A6IC0yZW07XG4gICAgLypcblx0XHR0ZXh0LXNoYWRvdzogMHB4IDBweCA1cHggI2ZmZjtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHQqLyB9XG4gIC5mZWF0aGVybGlnaHQtbmV4dCBzcGFuOjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgY29udGVudDogJ1xcZjEwNSc7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC5mZWF0aGVybGlnaHQtcHJldmlvdXMgc3Bhbjo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICBjb250ZW50OiAnXFxmMTA0JztcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLmZlYXRoZXJsaWdodC1uZXh0IHNwYW4ge1xuICAgIHJpZ2h0OiA1JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5mZWF0aGVybGlnaHQtbmV4dDpob3ZlciBzcGFuLFxuICAuZmVhdGhlcmxpZ2h0LXByZXZpb3VzOmhvdmVyIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAvKiBIaWRlIG5hdmlnYXRpb24gd2hpbGUgbG9hZGluZyAqL1xuICAuZmVhdGhlcmxpZ2h0LWxvYWRpbmcgLmZlYXRoZXJsaWdodC1wcmV2aW91cywgLmZlYXRoZXJsaWdodC1sb2FkaW5nIC5mZWF0aGVybGlnaHQtbmV4dCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qIEFsd2F5cyBkaXNwbGF5IGFycm93cyBvbiB0b3VjaCBkZXZpY2VzICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZlYXRoZXJsaWdodC1uZXh0OmhvdmVyLFxuICAuZmVhdGhlcmxpZ2h0LXByZXZpb3VzOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5mZWF0aGVybGlnaHQtbmV4dCBzcGFuLFxuICAuZmVhdGhlcmxpZ2h0LXByZXZpb3VzIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLyogaGFuZGxpbmcgcGhvbmVzIGFuZCBzbWFsbCBzY3JlZW5zICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuZmVhdGhlcmxpZ2h0LW5leHQsXG4gIC5mZWF0aGVybGlnaHQtcHJldmlvdXMge1xuICAgIHRvcDogMTBweDtcbiAgICByaWdodDogMTBweDtcbiAgICBsZWZ0OiA4NSU7IH1cbiAgLmZlYXRoZXJsaWdodC1wcmV2aW91cyB7XG4gICAgbGVmdDogMTBweDtcbiAgICByaWdodDogODUlOyB9XG4gIC5mZWF0aGVybGlnaHQtbmV4dCBzcGFuLFxuICAuZmVhdGhlcmxpZ2h0LXByZXZpb3VzIHNwYW4ge1xuICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgIGZvbnQtc2l6ZTogNDBweDsgfSB9XG5cbi51bnNsaWRlciB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udW5zbGlkZXItd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udW5zbGlkZXItd3JhcC51bnNsaWRlci1jYXJvdXNlbCA+IGxpIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnVuc2xpZGVyLXZlcnRpY2FsID4gdWwge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnVuc2xpZGVyLXZlcnRpY2FsIGxpIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi51bnNsaWRlci1mYWRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi51bnNsaWRlci1mYWRlIC51bnNsaWRlci13cmFwIGxpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA4OyB9XG5cbi51bnNsaWRlci1mYWRlIC51bnNsaWRlci13cmFwIGxpLnVuc2xpZGVyLWFjdGl2ZSB7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi51bnNsaWRlciBsaSwgLnVuc2xpZGVyIG9sLCAudW5zbGlkZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4udW5zbGlkZXItYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4udW5zbGlkZXItYXJyb3cubmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwOyB9XG5cbi8qIHRoZW1lICovXG4udW5zbGlkZXItbmF2IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi51bnNsaWRlci1hcnJvdyB7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogM2VtO1xuICBoZWlnaHQ6IDNlbTtcbiAgbWFyZ2luLXRvcDogLTEuNWVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDksIDYwLCAxMTMsIDAuMjUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC51bnNsaWRlci1hcnJvdzpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSg5LCA2MCwgMTEzLCAwLjc1KTsgfVxuICAudW5zbGlkZXItYXJyb3cucHJldjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiAzZW07XG4gICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgY29udGVudDogJ1xcZjEwNCc7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMmVtOyB9XG4gIC51bnNsaWRlci1hcnJvdy5uZXh0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB3aWR0aDogM2VtO1xuICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICAgIGNvbnRlbnQ6ICdcXGYxMDUnO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDJlbTsgfVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICAgIH1cblxuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUpIHtcbiAgJG1hcDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJG1hcDogbWFwLXJlbW92ZSgkbWFwLCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkc2l6ZSBpbiAkbWFwIHtcbiAgICAkLXpmLXNpemU6ICRzaXplICFnbG9iYWw7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi5jb250ZW50IHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHBhZGRpbmc6IDVlbSAwO1xufVxuLmNvbnRlbnQgKyAuY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gIC5jb250ZW50IHtcbiAgICBwYWRkaW5nOiA2ZW0gMDtcbiAgfVxufVxuLmNvbnRlbnQgLmNhbGxvdXQge1xuICBwYWRkaW5nOiAxZW07XG59XG4uY29udGVudCB7XG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgY29sb3I6ICRuYXZ5O1xuICB9XG4gIGgyOjphZnRlciB7XG4gICAgY29udGVudDogJy0nO1xuICAgIC8vIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAgIC1tb3otdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIEZpcmVmb3ggKi9cbiAgICAtbXMtdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIElFIDkgKi9cbiAgICAtby10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogT3BlcmEgKi9cbiAgICB0cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogVzNDICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmctbGVmdDogNHB4O1xuICB9XG4gIHVsLCBvbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuMjVlbTtcbiAgfVxufVxuXG4uY29udGVudCBhc2lkZSBhIHtcbiAgY29sb3I6ICRuYXZ5O1xufVxuXG4vKiBwcm9qZWN0ICovXG5hLnByb2plY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogJHNub3c7XG4gIGNsZWFyOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gIH1cbn1cbmE6aG92ZXIucHJvamVjdCB7XG4gIGJhY2tncm91bmQ6IGRhcmtlbiggJHNub3csIDUlICk7XG4gICYgLm51bWJlciB7XG4gICAgYm9yZGVyOiAycHggc29saWQgZGFya2VuKCAkbGlnaHQtZ3JheSwgNSUgKTtcbiAgfVxufVxuLnByb2plY3QgaDIge1xuICBjb2xvcjogJG5hdnk7XG59XG4ucHJvamVjdC1pbWFnZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzMlO1xufVxuLnByb2plY3Qtc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMS41ZW0gMmVtO1xuICB3aWR0aDogNjYlO1xufVxuLnByb2plY3Qtc3VtbWFyeSAuZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cblxuLmNvbnRhY3QtaW5mbyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uY29udGFjdC1pbmZvIC5waG9uZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLmNvbnRhY3QtaW5mbyAuZmEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgJjo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgIG1hcmdpbi1yaWdodDogLjRlbTtcbiAgfVxufVxuXG5cbi5jb250ZW50ID4gLnJvdyB7XG4gIHBhZGRpbmc6IDAgNSU7XG59XG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gIC5jb250ZW50ID4gLnJvdyA+IC5sYXJnZS04IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyZW07XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gIC5jb250ZW50ID4gLnJvdyB7XG4vLyAgICBwYWRkaW5nOiAwIDEwJTtcbiAgfVxufVxuXG4ubG9jYXRpb24ge1xuICBmb250LXNpemU6IDc1JTtcbiAgY29sb3I6ICRncmF5O1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxudWwuZGV0YWlscyB7XG4gIGNvbG9yOiAkZ3JheTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAxLjVlbSAwIDAgMDtcbiAgJiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gICYgbGkgc3BhbiB7XG4gICAgbWFyZ2luOiAwIC4zZW0gMC43ZW0gMDtcbiAgfVxufVxuLm51bWJlciB7XG4gIGNvbG9yOiAkZ3JheTtcbiAgYm9yZGVyOiAycHggc29saWQgJGxpZ2h0LWdyYXk7XG4gIGJvcmRlci1yYWRpdXM6IDk5cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIuNWVtO1xuICBoZWlnaHQ6IDIuNWVtO1xuICBsaW5lLWhlaWdodDogMi41ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDAgMCAwIDJlbTtcbiAgcCB7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG59XG5cbi8qIGRlc2lnbi1ob2xkZXIgKi9cbi5maWx0ZXItYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLXRvcDogLTJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAuYnV0dG9uIHtcbiAgICBib3JkZXItY29sb3I6ICRsaWdodC1ncmF5O1xuICAgIG1hcmdpbjogLjFlbTtcbiAgICBwYWRkaW5nOiAuODVlbSAyZW0gLjc1ZW0gMmVtO1xuICAgIGZvbnQtc2l6ZTogNjUlO1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRuYXZ5LCAuNSk7XG4gICAgfVxuICB9XG59XG5hLmRlc2lnbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogJHNub3c7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDMlO1xuICBtYXJnaW46IDElO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgd2lkdGg6IDI2JTtcbiAgfVxufVxuYTpob3Zlci5kZXNpZ24ge1xuICBiYWNrZ3JvdW5kOiBkYXJrZW4oICRzbm93LCA1JSApO1xuICAmIC5udW1iZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGRhcmtlbiggJGxpZ2h0LWdyYXksIDUlICk7XG4gIH1cbn1cbi5kZXNpZ24gaDIge1xuICBjb2xvcjogJG5hdnk7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgJjo6YWZ0ZXIge1xuICAgIHBhZGRpbmctbGVmdDogNHB4O1xuICB9XG59XG4uZGVzaWduLXN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS41ZW0gMmVtO1xufVxuXG4vKiBkZXNpZ24tZGV0YWlsICovXG4uZGVzaWduLWhlcm8ge1xuICBoMSArIC50YWdsaW5lIHtcbiAgICBjb2xvcjogJGdyYXk7XG4gICAgZm9udC1mYW1pbHk6ICRjdXN0b20tZm9udDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMWVtO1xuICB9XG4gIHAge1xuICAgIG1heC13aWR0aDogNDBlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cbi5kZXNpZ24tZGV0YWlsIHtcbiAgcGFkZGluZzogMCAwIDVlbTtcbiAgaW1nLnBsYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogNDBlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgaDUge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1mYW1pbHk6ICRjdXN0b20tZm9udDtcbiAgICBmb250LXNpemU6IDg1JTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbjogLjVlbSAwIDEuNWVtO1xuICB9XG4gIC5kZXRhaWxzIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IC41ZW07XG4gICAgLm51bWJlciB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKCR3aGl0ZSwgLjUpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgLmZhIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG4gIC5idXR0b24ge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIC4xKTtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkd2hpdGUsIDEpO1xuICAgIH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgICBjb250ZW50OiAnXFxmMWMxJztcbiAgICAgIG1hcmdpbjogMCAuNWVtIDAgLS4yNWVtO1xuICAgICAgY29sb3I6IHJlZDtcbiAgICB9XG4gIH1cbiAgdGFibGUge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgkd2hpdGUsIC4yKTtcbiAgICBtYXJnaW4tYm90dG9tOiAzZW07XG4gICAgdGhlYWQsIHRib2R5LCB0Zm9vdCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgIHRoZWFkIHRyIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2eTtcbiAgICB9XG4gICAgdGJvZHkgdHIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRuYXZ5LCAyKTtcbiAgICB9XG4gICAgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJG5hdnksIC45KTtcbiAgICB9XG4gICAgdGZvb3Qge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNsZWFyO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG4gIH1cbn1cbi5kZXNpZ24tc3BlY3Mge1xuICBvdmVyZmxvdzogYXV0bztcbiAgYmFja2dyb3VuZDogJG5hdnk7XG4gIHBhZGRpbmctdG9wOiAxLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDJlbTtcbn1cblxuLmRlc2lnbi1zcGVjcyBhLmRlc2lnbi1wbGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIG1hcmdpbjogMCAuNmVtIDEuNGVtIDEuNmVtO1xuICB9XG59XG4uZGVzaWduLXNwZWNzIGEuZGVzaWduLXBsYW4gaS5mYSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiBhdXRvO1xuICB0b3A6IDA7IGxlZnQ6IDA7IGJvdHRvbTogMDsgcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiA0Ny41JTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yIDJzIGVhc2U7IC8qIFNhZmFyaSAqL1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yIDJzIGVhc2U7XG4gIGNvbG9yOiAkbmF2eTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh3aGl0ZSwgMC41KTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZSAwcztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7XG59XG4uZGVzaWduLXNwZWNzIGEuZGVzaWduLXBsYW46aG92ZXIgaS5mYSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKVwiO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlIDBzO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlIDBzO1xufVxuIiwiXG5mb290ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDZlbSAwO1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6IHJnYmEoJGRrLWdyYXksIDAuNyk7XG4vL2JhY2tncm91bmQ6IGRhcmtlbigkZ3JheSwgMjAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyLCB0b3A7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5mb290ZXItaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTtcbn1cbmZvb3RlciBoMjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICctJztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxMjAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gICAgLW1vei10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogRmlyZWZveCAqL1xuICAgIC1tcy10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogSUUgOSAqL1xuICAgIC1vLXRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBPcGVyYSAqL1xuICAgIHRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBXM0MgKi9cbn1cbmZvb3RlciBsaSA+IGEge1xuICBmb250LWZhbWlseTogJGN1c3RvbS1mb250O1xuICBmb250LXNpemU6IDgwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHdoaXRlO1xufVxuZm9vdGVyIGxpID4gYTpob3ZlciB7XG4gIGNvbG9yOiAkc2t5O1xufVxuXG5mb290ZXIgbGk6bm90KDpsYXN0LW9mLXR5cGUpOmFmdGVyIHtcbiAgY29udGVudDogJ3wnO1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuLmxlZ2FsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMmVtO1xufVxuLmxlZ2FsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4vKlxuZm9vdGVyIGxpID4gYTpub3QoOmxhc3Qtb2YtdHlwZSk6YWZ0ZXIge1xuICBjb250ZW50OiAnfCc7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuKi9cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gVXNlIHRvIHJlbW92ZSB0aGUgYnVsbGV0cyBmcm9tIGFuIHVub3JkZXJlZCBsaXN0XG4gIC5uby1idWxsZXQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxufVxuIiwiLnVuc2xpZGVyIHtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVuc2xpZGVyLXdyYXAge1xuXHRwb3NpdGlvbjogcmVsYXRpdmVcbn1cbi51bnNsaWRlci13cmFwLnVuc2xpZGVyLWNhcm91c2VsPmxpIHtcblx0ZmxvYXQ6IGxlZnRcbn1cbi51bnNsaWRlci12ZXJ0aWNhbD51bCB7XG5cdGhlaWdodDogMTAwJVxufVxuLnVuc2xpZGVyLXZlcnRpY2FsIGxpIHtcblx0ZmxvYXQ6IG5vbmU7XG5cdHdpZHRoOiAxMDAlXG59XG4udW5zbGlkZXItZmFkZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZVxufVxuLnVuc2xpZGVyLWZhZGUgLnVuc2xpZGVyLXdyYXAgbGkge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0cmlnaHQ6IDA7XG5cdHotaW5kZXg6IDhcbn1cbi51bnNsaWRlci1mYWRlIC51bnNsaWRlci13cmFwIGxpLnVuc2xpZGVyLWFjdGl2ZSB7XG5cdHotaW5kZXg6IDEwXG59XG4udW5zbGlkZXIgbGksIC51bnNsaWRlciBvbCwgLnVuc2xpZGVyIHVsIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IG5vbmVcbn1cbi51bnNsaWRlci1hcnJvdyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0ei1pbmRleDogMjtcblx0Y3Vyc29yOiBwb2ludGVyXG59XG4udW5zbGlkZXItYXJyb3cubmV4dCB7XG5cdGxlZnQ6IGF1dG87XG5cdHJpZ2h0OiAwXG59XG5cbi8qIHRoZW1lICovXG4udW5zbGlkZXItbmF2IHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmRlc2lnbi1jYXJvdXNlbCB7XG4vL1x0bWFyZ2luLWJvdHRvbTogMi41ZW07XG59XG4udW5zbGlkZXItYXJyb3cge1xuICB0b3A6IDUwJTtcblx0d2lkdGg6IDNlbTtcblx0aGVpZ2h0OiAzZW07XG5cdG1hcmdpbi10b3A6IC0xLjVlbTtcblx0YmFja2dyb3VuZDogcmdiYSgkbmF2eSwgLjI1KTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgkbmF2eSwgLjc1KTtcblx0fVxuXHQmLnByZXY6OmJlZm9yZSB7XG5cdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHR3aWR0aDogM2VtO1xuXHRcdGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuXHRcdGNvbnRlbnQ6ICdcXGYxMDQnO1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRmb250LXNpemU6IDJlbTtcblx0fVxuXHQmLm5leHQ6OmFmdGVyIHtcblx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXHRcdHdpZHRoOiAzZW07XG5cdFx0Zm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG5cdFx0Y29udGVudDogJ1xcZjEwNSc7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHRcdGZvbnQtc2l6ZTogMmVtO1xuXHR9XG59XG4iLG51bGwsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIE91dHB1dHMgQ1NTIGNsYXNzZXMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIGZvdW5kYXRpb24tZ3JpZChcbiAgJHJvdzogJ3JvdycsXG4gICRjb2x1bW46ICdjb2x1bW4nLFxuICAkY29sdW1uLXJvdzogJ2NvbHVtbi1yb3cnLFxuICAkcHVzaDogJ3B1c2gnLFxuICAkcHVsbDogJ3B1bGwnLFxuICAkY2VudGVyOiAnY2VudGVyZWQnLFxuICAkdW5jZW50ZXI6ICd1bmNlbnRlcmVkJyxcbiAgJGNvbGxhcHNlOiAnY29sbGFwc2UnLFxuICAkdW5jb2xsYXBzZTogJ3VuY29sbGFwc2UnLFxuICAkb2Zmc2V0OiAnb2Zmc2V0JyxcbiAgJGVuZDogJ2VuZCcsXG4gICRleHBhbmRlZDogJ2V4cGFuZGVkJ1xuKSB7XG4gIC8vIFJvd1xuICAuI3skcm93fSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAvLyBDb2xsYXBzaW5nXG4gICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGdyaWQtY29sdW1uLWd1dHRlcik7XG5cbiAgICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHBhbmRlZCAoZnVsbC13aWR0aCkgcm93XG4gICAgJi4jeyRleHBhbmRlZH0ge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uXG4gIC4jeyRjb2x1bW59IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbDtcblxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmLiN7JGVuZH0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLiN7JHJvd30gLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAvLyBDb2x1bW4gd2lkdGhcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU291cmNlIG9yZGVyaW5nXG4gICAgICBAaWYgJGkgPCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoJGkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC0kaSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRvZmZzZXR9LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtb2ZmKCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KCRpLCBcIi4jeyRjb2x1bW59XCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGV4cGFuZGVkfS4jeyRyb3d9IC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9LiN7JHJvd30ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNvbGxhcHNlfSB7XG4gICAgICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCAkLXpmLXNpemUpO1xuXG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtdW5jb2xsYXBzZSgkZ3V0dGVyKTsgfVxuICAgIH1cblxuICAgIC8vIFBvc2l0aW9uaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjZW50ZXJ9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhjZW50ZXIpO1xuICAgIH1cblxuICAgIC8vIEd1dHRlciBhZGp1c3RtZW50XG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNlbnRlcn0sXG4gICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0wLFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tMCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC11bnBvcztcbiAgICB9XG4gIH1cblxuICBAaWYgJGNvbHVtbiA9PSAnY29sdW1uJyB7XG4gICAgLmNvbHVtbnMge1xuICAgICAgLy8gc2Nzcy1saW50OmRpc2FibGUgUGxhY2Vob2xkZXJJbkV4dGVuZFxuICAgICAgQGV4dGVuZCAuY29sdW1uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIERpcmVjdGlvbiBhbmQgYW1vdW50IHRvIG1vdmUuIFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50IHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZSBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuIFNldCB0byBjZW50ZXIgdG8gY2VudGVyIHRoZSBjb2x1bW4uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIG9yIGNlbnRlci4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLCBpZiB0aGUgYmFja2dyb3VuZCBpcyBsaWdodC5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogZm9yZWdyb3VuZCgkYmFja2dyb3VuZCwgJGJ1dHRvbi1jb2xvci1hbHQsICRidXR0b24tY29sb3IpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRwcmltYXJ5LWNvbG9yLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3Ncbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIGNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuXG4gIEBpZiAkc3R5bGUgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJHN0eWxlID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZCgkY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3dcbiAgICAmLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kcm9wZG93bjtcblxuICAgICAgQGlmICRidXR0b24tZmlsbCA9PSBob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT7igJQ8aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBvZiBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHNpemVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zaXplczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6IDI0LFxuICAgICdoMic6IDIwLFxuICAgICdoMyc6IDE5LFxuICAgICdoNCc6IDE4LFxuICAgICdoNSc6IDE3LFxuICAgICdoNic6IDE2LFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiA0OCxcbiAgICAnaDInOiA0MCxcbiAgICAnaDMnOiAzMSxcbiAgICAnaDQnOiAyNSxcbiAgICAnaDUnOiAyMCxcbiAgICAnaDYnOiAxNixcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZW9jcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRoZWFkZXItbWFyZ2luLWJvdHRvbTtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRlci1saW5laGVpZ2h0O1xuXG4gICAgc21hbGwge1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc2l6ZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgICAjeyRoZWFkZXJ9IHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKCRmb250LXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIENpdGF0aW9uc1xuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNpdGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyIHtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICB9XG5cbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtcm93LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIHJvdy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLCBpbiBjYXNlIHRoZSByb3cgaXMgbmVzdGVkLlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkd2lkdGg6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXIpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGNmIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gSW52ZXJ0cyB0aGUgbWFyZ2lucyBvZiBhIHJvdyB0byBuZXN0IGl0IGluc2lkZSBvZiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TWFwfG51bGx9ICRndXR0ZXIgW251bGxdIC0gR3V0dGVyIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyB0aGUgbWFyZ2lucy4gU2V0IHRvIGBudWxsYCB0byByZWZlciB0byB0aGUgcmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MuXG5AbWl4aW4gZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdudW1iZXInIHtcbiAgICAkZ3V0dGVyOiAoJC16Zi16ZXJvLWJyZWFrcG9pbnQ6ICRndXR0ZXIpO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3V0dGVyIHtcbiAgICAkbWFyZ2luOiByZW0tY2FsYygkdmFsdWUpIC8gMiAqIC0xO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8vLyBVbi1jb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZS1hZGRpbmcgdGhlIHBhZGRpbmcuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy5cbkBtaXhpbiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXI7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXI7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXIpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBzdHJpbmcgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIC8vIEd1dHRlcnNcbiAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ21hcCcge1xuICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAkcGFkZGluZzogcmVtLWNhbGMoJHZhbHVlKSAvIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIH1cblxuICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXI6ICRndXR0ZXIpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXJvdygpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcm93XG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXIpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgxLyRuKTtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDb252ZXJzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAuIElmIHRoZSBjb25maWcgbWFwIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC4gSWYgdGhlIGNvbmZpZyBtYXAgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIElucHV0IGNvbmZpZyBtYXAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuLy8gTGVnYWN5IGJyZWFrcG9pbnQgdmFyaWFibGVzXG4vLyBUaGVzZSB3aWxsIGJlIHJlbW92ZWQgaW4gNi4zXG4kc21hbGwtdXA6IG51bGw7XG4kc21hbGwtb25seTogbnVsbDtcbiRtZWRpdW0tdXA6IG51bGw7XG4kbWVkaXVtLW9ubHk6IG51bGw7XG4kbGFyZ2UtdXA6IG51bGw7XG4kbGFyZ2Utb25seTogbnVsbDtcbiR4bGFyZ2UtdXA6IG51bGw7XG4keGxhcmdlLW9ubHk6IG51bGw7XG4keHhsYXJnZS11cDogbnVsbDtcbiR4eGxhcmdlLW9ubHk6IG51bGw7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIE1lbnUuXG5AbWl4aW4gbWVudS1iYXNlIHtcbiAgbWFyZ2luOiAkbWVudS1tYXJnaW47XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zIGFyZSB0YWJsZSBjZWxsIHRvIGFsbG93IGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnRcbiAgPiBsaSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgbGluZSBoZWlnaHQgdG8gbWFrZSB0aGUgaGVpZ2h0IG9mIHRoZSBvdmVyYWxsIGl0ZW0gZWFzaWVyIHRvIGNhbGN1bGF0ZVxuICA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJG1lbnUtaXRlbS1wYWRkaW5nO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBhLFxuICBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLy8gc2Nzcy1saW50OmRpc2FibGUgWmVyb1VuaXRcbiAgICA+IGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgPiBsaSAgPiBhIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbkBtaXhpbiBtZW51LXNpbXBsZSB7XG4gIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IGdldC1zaWRlKCRtZW51LWl0ZW0tcGFkZGluZywgJGdsb2JhbC1yaWdodCk7XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHBhZGRpbmcgW2F1dG9dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG5AbWl4aW4gbWVudS1uZXN0ZWQoJG1hcmdpbjogJG1lbnUtbWFyZ2luLW5lc3RlZCkge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xufVxuXG4vLy8gQWRkcyBzdXBwb3J0IGZvciBpY29ucyB0byBNZW51IGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHBvc2l0aW9uIFtzaWRlXSAtIFBvc2l0aW9uaW5nIGZvciBpY29ucy4gQ2FuIGJlIGBzaWRlYCAobGVmdCwgb3IgcmlnaHQgb24gUlRMKSBvciBgdG9wYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRiYXNlIFt0cnVlXSAtIFNldCB0byBgZmFsc2VgIHRvIHByZXZlbnQgdGhlIHNoYXJlZCBDU1MgYmV0d2VlbiBzaWRlLSBhbmQgdG9wLWFsaWduZWQgaWNvbnMgZnJvbSBiZWluZyBwcmludGVkLiBTZXQgdGhpcyB0byBgZmFsc2VgIGlmIHlvdSdyZSBjYWxsaW5nIHRoZSBtaXhpbiBtdWx0aXBsZSB0aW1lcyBvbiB0aGUgc2FtZSBlbGVtZW50LlxuQG1peGluIG1lbnUtaWNvbnMoJHBvc2l0aW9uOiBzaWRlLCAkYmFzZTogdHJ1ZSkge1xuICBAaWYgJGJhc2Uge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGltZyxcbiAgICAgICAgaSxcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgKyBzcGFuIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRwb3NpdGlvbiA9PSBzaWRlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtZW51LWljb24tc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgID4gbGkgPiBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkbWVudS1pY29uLXNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRtZW51LWljb24tc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG5cbiAgICAvLyBPcmllbnRhdGlvblxuICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEFsaWduIHJpZ2h0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGhcbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuXG4gICAgICA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBpY29uc1xuICAgICYuaWNvbi10b3Age1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29ucyh0b3AsICRiYXNlOiBmYWxzZSk7XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtdGV4dCB7XG4gICAgQGluY2x1ZGUgbWVudS10ZXh0O1xuICB9XG5cbiAgLy8gQWxpZ24gY2VudGVyXG4gIC5tZW51LWNlbnRlcmVkIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICA+IC5tZW51IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IEZPVUMgd2hlbiB1c2luZyB0aGUgUmVzcG9uc2l2ZSBNZW51IHBsdWdpblxuICAubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGl0bGUtYmFyXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgV2VpZ2h0XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gdGhlIG1lbnUgaWNvbiBhbmQgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10aXRsZS1iYXIge1xuICAudGl0bGUtYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGl0bGViYXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRpdGxlYmFyLWNvbG9yO1xuICAgIHBhZGRpbmc6ICR0aXRsZWJhci1wYWRkaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuXG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLy8gc2Nzcy1saW50OmRpc2FibGUgWmVyb1VuaXRcbiAgICAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvcC1iYXJcbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igc3VibWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLiBVc2VmdWxsIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyB0cmFuc3BhcmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgZm9yIHRoZSB0b3AgYmFyIHRpdGxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBgPGlucHV0PmAgZWxlbWVudHMgaW5zaWRlIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHRvcCBiYXIgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0b3AgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiB0b3AtYmFyLWNvbnRhaW5lciB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgcGFkZGluZzogJHRvcGJhci1wYWRkaW5nO1xuXG4gICYsXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgZGlmZmVybnQgZnJvbSAkdG9wYmFyLWJhY2tncm91bmQtc3VibWVudVxuICBAaWYgKCR0b3BiYXItYmFja2dyb3VuZCAhPSAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZCkge1xuICAgIHVsIHVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RyYWluIHdpZHRoIG9mIGlucHV0cyBieSBkZWZhdWx0IHRvIG1ha2UgdGhlbSBlYXNpZXIgdG8gYXJyYW5nZVxuICBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAkdG9wYmFyLWlucHV0LXdpZHRoO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICB9XG5cbiAgLy8gVGhlIGFib3ZlIHN0eWxlcyBzaG91bGRuJ3QgYXBwbHkgdG8gaW5wdXQgZ3JvdXAgZmllbGRzXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gIH1cblxuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuICBpbnB1dC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBNYWtlcyBzZWN0aW9ucyBvZiBhIHRvcCBiYXIgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIuXG5AbWl4aW4gdG9wLWJhci1zdGFja2VkIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbmRvZXMgdGhlIENTUyBhcHBsaWVkIGJ5IHRoZSBgdG9wLWJhci1zdGFja2VkKClgIG1peGluLlxuQG1peGluIHRvcC1iYXItdW5zdGFjayB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgLy8gc2Nzcy1saW50OmRpc2FibGUgWmVyb1VuaXRcbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIH1cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvcC1iYXIge1xuICAvLyBUb3AgYmFyIGNvbnRhaW5lclxuICAudG9wLWJhciB7XG4gICAgQGluY2x1ZGUgdG9wLWJhci1jb250YWluZXI7XG5cbiAgICAvLyBTdGFjayBvbiBzbWFsbCBzY3JlZW5zIGJ5IGRlZmF1bHRcbiAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0b3BiYXItdW5zdGFjay1icmVha3BvaW50KSB7XG4gICAgICBAaW5jbHVkZSB0b3AtYmFyLXVuc3RhY2s7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgY2xhc3NlcyBmb3Igc3RhY2tpbmcgb24gZWFjaCBzY3JlZW4gc2l6ZSAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzKVxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgJi5zdGFja2VkLWZvci0jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3ViLXNlY3Rpb25zXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG5cbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAkZm9ybS1zcGFjaW5nICogMS41KTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAsICRnbG9iYWwtcmFkaXVzIDAgMCAkZ2xvYmFsLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGdsb2JhbC1yYWRpdXMgMCAwICRnbG9iYWwtcmFkaXVzLCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIC8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDElO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ1NlbGVjdG9yXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIGFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gc3VibWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBBcHBsaWVkIHRvIG5lc3RlZCA8dWw+c1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogJGRyaWxsZG93bi10cmFuc2l0aW9uO1xuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2luZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRkcmlsbGRvd24tYXJyb3dzIHtcbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDZweCwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSg2cHgsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtbGVmdCk7XG4gICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LXdpZHRoOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjc1cmVtOyAvLyBDcmVhdGVzIHNwYWNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dFxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWFscGhhIFswLjFdIC0gVHJhbnNwYXJlbmN5IGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1hbHBoYTogMC4xXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtYWxwaGEpO1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIE1lcmdlYWJsZVNlbGVjdG9yLCBRdWFsaWZ5aW5nRWxlbWVudFxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICB9XG4gIFxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRyIHtcbiAgICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuXG4gICAgLy9EYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9EYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIHRhYmxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyKTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duLW1lbnVcbi8vLy9cblxuLy8vIEVuYWJsZXMgYXJyb3dzIGZvciBpdGVtcyB3aXRoIGRyb3Bkb3duIG1lbnVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyb3Bkb3ducy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbkBtaXhpbiBsZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuXG4gICYub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNXB4LCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDVweCwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHtcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogMS41cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSg1cHgsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vIHNjc3MtbGludDpkaXNhYmxlIFNlbGVjdG9yRGVwdGhcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhbGxvdXRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmYWRlIHZhbHVlIGZvciBjYWxsb3V0IGJhY2tncm91bmRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZSBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgaW5uZXIgcGFkZGluZyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMsIGlmIHRoZSBjYWxsb3V0IGhhcyBhIGRhcmsgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQW1vdW50IHRvIHRpbnQgbGlua3MgdXNlZCB3aXRoaW4gY29sb3JlZCBwYW5lbHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlLlxuLy8vIEB0eXBlIE51bWJlciB8IEJvb2xlYW5cbiRjYWxsb3V0LWxpbmstdGludDogMzAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGEgY2FsbG91dCwgaW5jbHVkaW5nIHBhZGRpbmcgYW5kIG1hcmdpbi5cbkBtaXhpbiBjYWxsb3V0LWJhc2UoKSB7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkY2FsbG91dC1wYWRkaW5nO1xuICBib3JkZXI6ICRjYWxsb3V0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGNhbGxvdXQtcmFkaXVzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAkY2FsbG91dC1mb250LWNvbG9yO1xuXG4gIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgcXVpY2sgc3R5bGVzIGZvciBhIGNhbGxvdXQgdXNpbmcgYSBzaW5nbGUgY29sb3IgYXMgYSBiYXNlbGluZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQtc3R5bGUoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjYWxsb3V0LWJhY2tncm91bmQtZmFkZSk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG59XG5cbkBtaXhpbiBjYWxsb3V0LXNpemUoJHBhZGRpbmcpIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYWxsb3V0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dCgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgY2FsbG91dC1iYXNlO1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhbGxvdXQge1xuICAuY2FsbG91dCB7XG4gICAgQGluY2x1ZGUgY2FsbG91dDtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc21hbGwge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDAuNXJlbSk7XG4gICAgfVxuXG4gICAgJi5sYXJnZSB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoM3JlbSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldCBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUb3AgKG9yIGJvdHRvbSkgb2Zmc2V0IGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tc2l6ZTogMmVtICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjbG9zZSBidXR0b24sIHVzaW5nIHRoZSBzdHlsZXMgaW4gdGhlIHNldHRpbmdzIHZhcmlhYmxlcy5cbkBtaXhpbiBjbG9zZS1idXR0b24ge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvcjtcbiAgI3skeH06ICRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDtcbiAgI3skeX06ICRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw7XG4gIGZvbnQtc2l6ZTogJGNsb3NlYnV0dG9uLXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkY2xvc2VidXR0b24tbGluZWhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uIHtcbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uO1xuICB9XG59XG4iLCJib2R5IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyAvKiByZXF1aXJlZCBmb3IgLm9jLXB1c2ggKi9cbn1cblxuLy9ib2R5IHNlY3Rpb246Zmlyc3Qtb2YtdHlwZSB7XG4uaGVyby1jYXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogNzVweDtcbiAgbWFyZ2luLXRvcDogY2FsYyg2MHB4ICsgMWVtKTsgLyogcmVxdWlyZWQgZm9yIGZpeGVkIGhlYWRlciAqL1xufVxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAuaGVyby1jYXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbiRvYy1uYXYtd2lkdGg6IDIwZW07XG5cbi5vYy1uYXYgLmNhbGxvdXQge1xuICB3aWR0aDogJG9jLW5hdi13aWR0aDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtJG9jLW5hdi13aWR0aDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA1OXB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGxlZnQgLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBsZWZ0IC4ycyBlYXNlLW91dDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbi8vICBib3JkZXItdG9wOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4vLyAgcGFkZGluZy10b3A6IDA7XG4gIGJveC1zaGFkb3c6IDBweCA1cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5vcGVuIC5vYy1uYXYgLmNhbGxvdXQge1xuICBsZWZ0OiAwO1xufVxuLm9jLW5hdi10b2dnbGUge1xuICB3aWR0aDogM2VtO1xuICBmbG9hdDogbGVmdDtcbn1cbi5hY2NvdW50LXRvZ2dsZSB7XG4gIHdpZHRoOiAzZW07XG4gIGZsb2F0OiByaWdodDtcbn1cbi5vYy1uYXYtdG9nZ2xlIGEsIC5hY2NvdW50LXRvZ2dsZSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgbWFyZ2luOiAxMHB4O1xufVxuLm9jLW5hdi10b2dnbGUgYTo6YWZ0ZXIge1xuICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgY29udGVudDogJ1xcZjBjOSc7XG4gIG1hcmdpbi1sZWZ0OiAuNWVtO1xufVxuLmFjY291bnQtdG9nZ2xlIGE6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBjb250ZW50OiAnXFxmMDA3Jztcbn1cbi5vcGVuIC5vYy1uYXYtdG9nZ2xlIGE6OmFmdGVyIHtcbiAgY29udGVudDogJ1xcZjAwZCc7XG59XG4ub2MtcHVzaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBsZWZ0IC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogbGVmdCAuMnMgZWFzZS1vdXQ7XG59XG4ub2MtcHVzaC5vcGVuIHtcbiAgbGVmdDogJG9jLW5hdi13aWR0aDtcbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAub2MtbmF2IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVlbTtcbiAgfVxuICAub2MtbmF2IC5jYWxsb3V0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgYm9keSBzZWN0aW9uOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG5AbWl4aW4gdG9vbHRpcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJhY2tncm91bmQtY29sb3I7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIG1heC13aWR0aDogMTByZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuXG4gICYudG9wOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGRvd24pO1xuICAgIHRvcDogMTAwJTtcbiAgICBib3R0b206IGF1dG87XG4gIH1cblxuICAmLmxlZnQ6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gICYucmlnaHQ6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgbGVmdCk7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCJcblxuLmhlcm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciwgdG9wO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uaGVybyBoMTo6YWZ0ZXIsIC5oZXJvIGgyOjphZnRlciB7XG4gIGNvbnRlbnQ6ICctJztcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxMjAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAtbW96LXRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBGaXJlZm94ICovXG4gIC1tcy10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogSUUgOSAqL1xuICAtby10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogT3BlcmEgKi9cbiAgdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIFczQyAqL1xufVxuLmhlcm8tY2FwdGlvbiB7XG4gICAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgICBwYWRkaW5nOiAzZW0gMDtcbiAgICAmLnNtYWxsIHtcbiAgICAgIHBhZGRpbmc6IDJlbSAwO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIC8vIGZvbnQtc2l6ZTogMTIwJTtcbiAgICB9XG59XG4ucmVjZW50LXByb2plY3Qge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCRuYXZ5LCAwLjcpO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDNlbSAwO1xuICAmIHAge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cbi5yZWNlbnQtcHJvamVjdCBhIHsgY29sb3I6IHdoaXRlOyB9XG4ucmVjZW50LXByb2plY3QgYTpob3ZlciB7IGNvbG9yOiAkc2t5OyB9XG5cbi5yZWNlbnQtcHJvamVjdC1waG90b3Mge1xuICBtYXJnaW46IDJlbSAwIDFlbTtcbn1cbi5yZWNlbnQtcHJvamVjdC1waG90b3MgaW1nIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ucmVjZW50LXByb2plY3QtY2FwdGlvbiBwIHtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tZm9udDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiA5MCU7XG59XG4ucmVjZW50LXByb2plY3QtY2FwdGlvbiAuZmxvYXQtbGVmdCA+IGE6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuLnJlY2VudC1wcm9qZWN0LWNhcHRpb24gLmZsb2F0LWxlZnQgPiBhOmxhc3QtY2hpbGQgeyBtYXJnaW4tbGVmdDogMWVtOyB9XG4ucmVjZW50LXByb2plY3QtY2FwdGlvbiAuZmxvYXQtcmlnaHQgPiBhOmxhc3QtY2hpbGQgeyBtYXJnaW4tbGVmdDogMWVtOyB9XG5cbi5yZWNlbnQtcHJvamVjdC1waG90b3MgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucmVjZW50LXByb2plY3QtcGhvdG9zIGEgaS5mYSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiBhdXRvO1xuICB0b3A6IDA7IGxlZnQ6IDA7IGJvdHRvbTogMDsgcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiAzMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlOyAvKiBTYWZhcmkgKi9cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlO1xuICBjb2xvcjogJG5hdnk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEod2hpdGUsIDAuNSk7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MClcIjtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlIDBzO1xufVxuLnJlY2VudC1wcm9qZWN0LXBob3RvcyBhOmhvdmVyIGkuZmEge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMClcIjtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSAwcztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSAwcztcbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgLmhlcm8tY2FwdGlvbiB7XG4gICAgcGFkZGluZzogNWVtIDA7XG4gICAgJi5zbWFsbCB7XG4gICAgICBwYWRkaW5nOiAzZW0gMDtcbiAgICB9XG4gIH1cbiAgLnJlY2VudC1wcm9qZWN0IHtcbiAgICBwYWRkaW5nOiA1ZW0gMDtcbiAgfVxuICAucmVjZW50LXByb2plY3QtcGhvdG9zIHtcbiAgICBtYXJnaW46IDFlbSBhdXRvO1xuICB9XG4gIC5yZWNlbnQtcHJvamVjdC1waG90b3MgaW1nIHtcbi8vICAgIG1hcmdpbjogMWVtIGF1dG87XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgLnJlY2VudC1wcm9qZWN0LXBob3RvcyAuY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NWVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1ZW0gIWltcG9ydGFudDtcbiAgfVxufVxuQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gIC5oZXJvLWNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDZlbSAwO1xuICB9XG4gIC5yZWNlbnQtcHJvamVjdCB7XG4gICAgcGFkZGluZzogNmVtIDA7XG4gIH1cbn1cbiIsIlxuLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwdnc7XG4vLyAgaGVpZ2h0OiA2MHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5vcGVuIC5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG59XG4ubG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDYwJTtcbiAgbGVmdDogMjAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubG9nbyBpbWcge1xuICBtYXgtd2lkdGg6IDEyMHB4O1xuICBtYXJnaW46IDE4cHggYXV0byAwO1xufVxuLmhlYWRlciAubWVudSA+IGxpID4gYSB7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZvbnQ7XG4gIGNvbG9yOiAkZ3JheTtcbn1cbi5oZWFkZXIgLm1lbnUgPiBsaSA+IGE6aG92ZXIge1xuICBjb2xvcjogYmxhY2s7XG59XG4uY2FsbG91dCA+IC5pcy1kcmlsbGRvd24ge1xuLy8gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbi8vICBwYWRkaW5nLXRvcDogMWVtO1xufVxuXG4uZHJvcGRvd24ubWVudSAuaGFzLXN1Ym1lbnUuaXMtcmlnaHQtYXJyb3cgPiBhOjphZnRlciB7IC8vIGZvdW5kYXRpb24gb3ZlcndyaXRlXG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgLmhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDVweCA1cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgfVxuICAuaGVhZGVyIC5tZW51ID4gbGkgPiBhIHtcbiAgICBmb250LXNpemU6IDkwJTtcbiAgfVxuICAubG9nbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5sb2dvIGltZyB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW46IDJlbSAwIDA7XG4gIH1cbiAgLm1lbnUudmVydGljYWwgPiBsaS5yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMC43NWVtO1xuICB9XG59XG5AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAuaGVhZGVyIHtcbiAgICAgIGhlaWdodDogMTQwcHg7XG4gIH1cbn1cblxuLyogZGVzaWduIGNlbnRlciBidXR0b24gKi9cbi5oZWFkZXIgPiAucm93ID4gLmNvbHVtbiwgLmhlYWRlciA+IC5yb3cgPiAuY29sdW1ucyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5oZWFkZXIgLmJ1dHRvbi5zbWFsbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzZW07XG4gIHJpZ2h0OiAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICB0b3A6IDMuNWVtO1xuICB9XG59XG4iLCJcbkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Nb250c2VycmF0OjQwMCw3MDApO1xuXG4kYmFzZS1mb250OiBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4kY3VzdG9tLWZvbnQ6ICdNb250c2VycmF0JywgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXG4kYmFzZS1zaXplOiAxOyAvLyByZW0gdmFsdWVcbiRmb250LW1pbi1weDogMTI7IC8vIHB4IHZhbHVlXG4kZm9udC1tYXgtcHg6IDE4OyAvLyBweCB2YWx1ZVxuXG4kZm9udC1taW46ICRmb250LW1pbi1weCAvICgkYmFzZS1zaXplICogMTYpOyAvLyA9IDAuODc1IG9yIDE0cHggd2hlbiBiYXNlLXNpemUgaXMgMVxuJGZvbnQtbWF4OiAkZm9udC1tYXgtcHggLyAoJGJhc2Utc2l6ZSAqIDE2KTsgLy8gPSAxLjI1IG9yIDIwcHggd2hlbiBiYXNlLXNpemUgaXMgMVxuXG5AaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7IGJvZHkgeyBmb250LWZhbWlseTogJGJhc2UtZm9udDsgZm9udC1zaXplOiAjeyRmb250LW1pbn1yZW07IH0gfVxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgYm9keSB7IGZvbnQtc2l6ZTogI3skYmFzZS1zaXplfXJlbTsgZm9udC1zaXplOiBjYWxjKCN7JGZvbnQtbWlufXJlbSArICgjeyRmb250LW1heC1weH0gLSAjeyRmb250LW1pbi1weH0pICogKCgxMDB2dyAtIDY0MHB4KSAvIDgwMCkpOyB9IH1cbkBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyBib2R5IHsgZm9udC1zaXplOiAjeyRmb250LW1heH1yZW07IH0gfVxuXG5oMSwgaDIsIGgzIHsgZm9udC1mYW1pbHk6ICRjdXN0b20tZm9udDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuaDEgeyBmb250LXNpemU6IDEyMCU7IGZvbnQtd2VpZ2h0OiA0MDA7IH1cbmgyIHsgZm9udC1zaXplOiAxMTUlOyBmb250LXdlaWdodDogNDAwOyB9XG5oMyB7IGZvbnQtc2l6ZTogMTEwJTsgZm9udC13ZWlnaHQ6IDQwMDsgfVxuIiwiXG4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZvbnQ7XG4gIGNvbG9yOiBibGFjaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiA5MCU7XG4gIHBhZGRpbmc6IDAuNzVlbSAyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgbWFyZ2luOiAwO1xufVxuLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY29sb3I6ICRuYXZ5O1xuICBib3JkZXItY29sb3I6ICRuYXZ5O1xufVxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgLmJ1dHRvbiB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIHBhZGRpbmc6IDFlbSAzZW07XG4gIH1cbn1cbiIsIlxuXG4uc2VydmljZXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoJHNub3csIDAuOSk7XG4gIHBhZGRpbmc6IDZlbSAwO1xufVxuLnNlcnZpY2VzIGgyOjphZnRlciB7XG4gICAgY29udGVudDogJy0nO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDEyMCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cbiAgICAtbW96LXRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBGaXJlZm94ICovXG4gICAgLW1zLXRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBJRSA5ICovXG4gICAgLW8tdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIE9wZXJhICovXG4gICAgdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIFczQyAqL1xufVxuXG4uc2VydmljZXMtZ2FsbGVyeSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBtYXJnaW46IDFlbSBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuLnNlcnZpY2VzLWdhbGxlcnkgYSBpLmZhIHtcbiAgZm9udC1zaXplOiAyMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogYXV0bztcbiAgdG9wOiAwOyBsZWZ0OiAwOyBib3R0b206IDEuODRlbTsgcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiAyOCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlOyAvKiBTYWZhcmkgKi9cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlO1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJG5hdnksIDAuNik7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MClcIjtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UgMHM7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlIDBzO1xufVxuLnNlcnZpY2VzLWdhbGxlcnkgYTpob3ZlciBpLmZhIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xMDApXCI7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UgMHM7XG59XG4uc2VydmljZXMtZ2FsbGVyeSBhIHAge1xuICBtYXJnaW46IDEuMjVlbSBhdXRvO1xuICBmb250LWZhbWlseTogJGN1c3RvbS1mb250O1xuICBjb2xvcjogcmdiYSgkbmF2eSwgMC44KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiA5MCU7XG59XG4uc2VydmljZXMtZ2FsbGVyeSBhOmhvdmVyIHAge1xuICBjb2xvcjogcmdiYSgkbmF2eSwgMSk7XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgLnNlcnZpY2VzLWdhbGxlcnkgLmNvbHVtbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NWVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIlxuLmFjdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogJHNub3c7XG4gIHBhZGRpbmc6IDVlbSAwO1xufVxuLmFjdGlvbiBoMjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICctJztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxMjAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gICAgLW1vei10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogRmlyZWZveCAqL1xuICAgIC1tcy10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogSUUgOSAqL1xuICAgIC1vLXRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBPcGVyYSAqL1xuICAgIHRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBXM0MgKi9cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAuYWN0aW9uIHtcbiAgICBib3gtc2hhZG93OiAwcHggNXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gIC5hY3Rpb24ge1xuICAgIHBhZGRpbmc6IDZlbSAwO1xuICB9XG59XG4iLCJcblxuLmZhY2Vib29rIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcGFkZGluZzogNGVtIDAgOGVtO1xuICBpZnJhbWUge1xuICAgIHdpZHRoOiA1MDBweDtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG59XG4uZmFjZWJvb2sge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBwYWRkaW5nOiA0ZW0gMCA4ZW07XG4gIGlmcmFtZSB7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIG1hcmdpbi1sZWZ0OiAtLjkzNzVyZW07XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgfVxufVxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgLmZhY2Vib29rIHtcbiAgICBpZnJhbWUge1xuICAgICAgd2lkdGg6IDUwMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uZmFjZWJvb2sgaDI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnLSc7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTpzY2FsZSg2LDEpOyAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAgIC1tb3otdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIEZpcmVmb3ggKi9cbiAgICAtbXMtdHJhbnNmb3JtOnNjYWxlKDYsMSk7IC8qIElFIDkgKi9cbiAgICAtby10cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogT3BlcmEgKi9cbiAgICB0cmFuc2Zvcm06c2NhbGUoNiwxKTsgLyogVzNDICovXG59XG4iLCIvKipcbiAqIEZlYXRoZXJsaWdodCDigJMgdWx0cmEgc2xpbSBqUXVlcnkgbGlnaHRib3hcbiAqIFZlcnNpb24gMS40LjEgLSBodHRwOi8vbm9lbGJvc3MuZ2l0aHViLmlvL2ZlYXRoZXJsaWdodC9cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNiwgTm/Dq2wgUmFvdWwgQm9zc2FydCAoaHR0cDovL3d3dy5ub2VsYm9zcy5jb20pXG4gKiBNSVQgTGljZW5zZWQuXG4qKi9cbkBtZWRpYSBhbGwge1xuXHQuZmVhdGhlcmxpZ2h0IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0LyogZGltZW5zaW9uczogc3Bhbm5pbmcgdGhlIGJhY2tncm91bmQgZnJvbSBlZGdlIHRvIGVkZ2UgKi9cblx0XHRwb3NpdGlvbjpmaXhlZDtcblx0XHR0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XG5cdFx0ei1pbmRleDogOTk4OyAvKiB6LWluZGV4IG5lZWRzIHRvIGJlID49IGVsZW1lbnRzIG9uIHRoZSBzaXRlLiAqL1xuXG5cdFx0LyogcG9zaXRpb246IGNlbnRlcmluZyBjb250ZW50ICovXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0LyogaW5zdXJlcyB0aGF0IHRoZSA6OmJlZm9yZSBwc2V1ZG8gZWxlbWVudCBkb2Vzbid0IGZvcmNlIHdyYXAgd2l0aCBmaXhlZCB3aWR0aCBjb250ZW50OyAqL1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0XHQvKiBzdHlsaW5nICovXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGJhY2tncm91bmQ6ICMzMzM7XG5cdFx0LyogSUU4IFwiaGFja1wiIGZvciBuZXN0ZWQgZmVhdGhlcmxpZ2h0cyAqL1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCk7XG5cdH1cblxuXHQvKiBzdXBwb3J0IGZvciBuZXN0ZWQgZmVhdGhlcmxpZ2h0cy4gRG9lcyBub3Qgd29yayBpbiBJRTggKHVzZSBKUyB0byBmaXgpICovXG5cdC5mZWF0aGVybGlnaHQ6bGFzdC1vZi10eXBlIHtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG5cdH1cblxuXHQuZmVhdGhlcmxpZ2h0OmJlZm9yZSB7XG5cdFx0LyogcG9zaXRpb246IHRyaWNrIHRvIGNlbnRlciBjb250ZW50IHZlcnRpY2FsbHkgKi9cblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0bWFyZ2luLXJpZ2h0OiAtMC4yNWVtO1xuXHR9XG5cblx0LmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xuXHRcdC8qIG1ha2UgY29udGVudCBjb250YWluZXIgZm9yIHBvc2l0aW9uZWQgZWxlbWVudHMgKGNsb3NlIGJ1dHRvbikgKi9cblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQvKiBwb3NpdGlvbjogY2VudGVyaW5nIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsICovXG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdC8qIGRpbWVuc2lvbnM6IGN1dCBvZmYgaW1hZ2VzICovXG5cdFx0b3ZlcmZsb3c6IGF1dG87XG5cdFx0cGFkZGluZzogMjVweCAyNXB4IDA7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuXHRcdC8qIGRpbWVuc2lvbnM6IGhhbmRsaW5nIGxhcmdlIGNvbnRlbnQgKi9cblx0XHRtYXJnaW4tbGVmdDogNSU7XG5cdFx0bWFyZ2luLXJpZ2h0OiA1JTtcblx0XHRtYXgtaGVpZ2h0OiA5NSU7XG5cblx0XHQvKiBzdHlsaW5nICovXG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcblx0XHRjdXJzb3I6IGF1dG87XG5cblx0XHQvKiByZXNldCB3aGl0ZS1zcGFjZSB3cmFwcGluZyAqL1xuXHRcdHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cdH1cblxuXHQvKiBjb250YWlucyB0aGUgY29udGVudCAqL1xuXHQuZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtaW5uZXIge1xuXHRcdC8qIG1ha2Ugc3VyZSBpdHMgdmlzaWJsZSAqL1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0LmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNsb3NlLWljb24ge1xuXHRcdC8qIHBvc2l0aW9uOiBjZW50ZXJpbmcgdmVydGljYWwgYW5kIGhvcml6b250YWwgKi9cblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogOTk5O1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblxuXHRcdC8qIGRpbWVuc2lvbnM6IDI1cHggeCAyNXB4ICovXG5cdFx0bGluZS1oZWlnaHQ6IDI1cHg7XG5cdFx0d2lkdGg6IDI1cHg7XG5cblx0XHQvKiBzdHlsaW5nICovXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG5cdFx0YmFja2dyb3VuZDogI2ZmZjsgLyogU2V0IHRoZSBiYWNrZ3JvdW5kIGluIGNhc2UgaXQgb3ZlcmxhcHMgdGhlIGNvbnRlbnQgKi9cblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG5cdFx0Y29sb3I6ICMwMDA7XG5cdH1cblxuXG5cdC5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1pbWFnZSB7XG5cdFx0Lyogc3R5bGluZyAqL1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblxuXHQuZmVhdGhlcmxpZ2h0LWlmcmFtZSAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xuXHRcdC8qIHJlbW92ZWQgdGhlIGJvcmRlciBmb3IgaW1hZ2UgY3JvcGluZyBzaW5jZSBpZnJhbWUgaXMgZWRnZSB0byBlZGdlICovXG5cdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG5cblx0LmZlYXRoZXJsaWdodCBpZnJhbWUge1xuXHRcdC8qIHN0eWxpbmcgKi9cblx0XHRib3JkZXI6IG5vbmU7XG5cdH1cbn1cblxuLyogaGFuZGxpbmcgcGhvbmVzIGFuZCBzbWFsbCBzY3JlZW5zICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuXHQuZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY29udGVudCB7XG5cdFx0LyogZGltZW5zaW9uczogbWF4aW1pemUgbGlnaHRib3ggd2l0aCBmb3Igc21hbGwgc2NyZWVucyAqL1xuXHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRtYXgtaGVpZ2h0OiA5OCU7XG5cblx0XHRwYWRkaW5nOiAxMHB4IDEwcHggMDtcblx0XHRib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHR9XG59XG5cbi8qKlxuICogRmVhdGhlcmxpZ2h0IEdhbGxlcnkg4oCTIGFuIGV4dGVuc2lvbiBmb3IgdGhlIHVsdHJhIHNsaW0galF1ZXJ5IGxpZ2h0Ym94XG4gKiBWZXJzaW9uIDEuNC4xIC0gaHR0cDovL25vZWxib3NzLmdpdGh1Yi5pby9mZWF0aGVybGlnaHQvXG4gKlxuICogQ29weXJpZ2h0IDIwMTYsIE5vw6tsIFJhb3VsIEJvc3NhcnQgKGh0dHA6Ly93d3cubm9lbGJvc3MuY29tKVxuICogTUlUIExpY2Vuc2VkLlxuKiovXG5AbWVkaWEgYWxsIHtcblx0LmZlYXRoZXJsaWdodC1uZXh0LFxuXHQuZmVhdGhlcmxpZ2h0LXByZXZpb3VzIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAyNXB4O1xuXHRcdHJpZ2h0OiAyNXB4O1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiA4MCU7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdC8qIHByZXZlbnRpbmcgdGV4dCBzZWxlY3Rpb24gKi9cblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LyogSUU5IGhhY2ssIG90aGVyd2lzZSBuYXZpZ2F0aW9uIGRvZXNuJ3QgYXBwZWFyICovXG4vL1x0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDApO1xuXHR9XG5cdC5mZWF0aGVybGlnaHQtcHJldmlvdXMge1xuXHRcdGxlZnQ6IDI1cHg7XG5cdFx0cmlnaHQ6IDgwJTtcblx0fVxuXG4vL1x0LmZlYXRoZXJsaWdodC1uZXh0OmhvdmVyLFx0LmZlYXRoZXJsaWdodC1wcmV2aW91czpob3ZlciB7IGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4yNSk7IH1cblxuXHQuZmVhdGhlcmxpZ2h0LW5leHQgc3Bhbixcblx0LmZlYXRoZXJsaWdodC1wcmV2aW91cyBzcGFuIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1JTtcblx0XHR3aWR0aDogODIlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmb250LXNpemU6IDRlbTtcblx0XHRsaW5lLWhlaWdodDogNGVtO1xuXHRcdG1hcmdpbi10b3A6IC0yZW07XG5cdFx0Lypcblx0XHR0ZXh0LXNoYWRvdzogMHB4IDBweCA1cHggI2ZmZjtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHQqL1xuXHR9XG5cdC5mZWF0aGVybGlnaHQtbmV4dCBzcGFuOjphZnRlciB7XG5cdFx0Zm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG5cdFx0Y29udGVudDogJ1xcZjEwNSc7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG5cdC5mZWF0aGVybGlnaHQtcHJldmlvdXMgc3Bhbjo6YmVmb3JlIHtcblx0XHRmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcblx0XHRjb250ZW50OiAnXFxmMTA0Jztcblx0XHRjb2xvcjogd2hpdGU7XG5cdH1cblx0LmZlYXRoZXJsaWdodC1uZXh0IHNwYW4ge1xuXHRcdHJpZ2h0OiA1JTtcblx0XHRsZWZ0OiBhdXRvO1xuXHR9XG5cblx0LmZlYXRoZXJsaWdodC1uZXh0OmhvdmVyIHNwYW4sXG5cdC5mZWF0aGVybGlnaHQtcHJldmlvdXM6aG92ZXIgc3BhbiB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR9XG5cblx0LyogSGlkZSBuYXZpZ2F0aW9uIHdoaWxlIGxvYWRpbmcgKi9cblx0LmZlYXRoZXJsaWdodC1sb2FkaW5nIC5mZWF0aGVybGlnaHQtcHJldmlvdXMsIC5mZWF0aGVybGlnaHQtbG9hZGluZyAuZmVhdGhlcmxpZ2h0LW5leHQge1xuXHRcdGRpc3BsYXk6bm9uZTtcblx0fVxufVxuXG4vKiBBbHdheXMgZGlzcGxheSBhcnJvd3Mgb24gdG91Y2ggZGV2aWNlcyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogMTAyNHB4KXtcblx0LmZlYXRoZXJsaWdodC1uZXh0OmhvdmVyLFxuXHQuZmVhdGhlcmxpZ2h0LXByZXZpb3VzOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHR9XG5cdC5mZWF0aGVybGlnaHQtbmV4dCBzcGFuLFxuXHQuZmVhdGhlcmxpZ2h0LXByZXZpb3VzIHNwYW4ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbi8qIGhhbmRsaW5nIHBob25lcyBhbmQgc21hbGwgc2NyZWVucyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcblx0LmZlYXRoZXJsaWdodC1uZXh0LFxuXHQuZmVhdGhlcmxpZ2h0LXByZXZpb3VzIHtcblx0XHR0b3A6IDEwcHg7XG5cdFx0cmlnaHQ6IDEwcHg7XG5cdFx0bGVmdDogODUlO1xuXHR9XG5cblx0LmZlYXRoZXJsaWdodC1wcmV2aW91cyB7XG5cdFx0bGVmdDogMTBweDtcblx0XHRyaWdodDogODUlO1xuXHR9XG5cblx0LmZlYXRoZXJsaWdodC1uZXh0IHNwYW4sXG5cdC5mZWF0aGVybGlnaHQtcHJldmlvdXMgc3BhbiB7XG5cdFx0bWFyZ2luLXRvcDogLTMwcHg7XG5cdFx0Zm9udC1zaXplOiA0MHB4O1xuXHR9XG59XG4iXX0= */
