@import url(https://fonts.googleapis.com/css?family=Roboto:400,300,300italic,400italic,700);@import url(https://fonts.googleapis.com/css?family=Oleo+Script:400,700);@font-face{font-family:"foundation-icons";src:url("../fonts/foundation-icons/foundation-icons.eot");src:url("../fonts/foundation-icons/foundation-icons.eot?#iefix") format("embedded-opentype"),url("../fonts/foundation-icons/foundation-icons.woff") format("woff"),url("foundation-icons.ttf") format("truetype"),url("foundation-icons.svg#fontcustom") format("svg");font-weight:normal;font-style:normal}.fi-address-book:before,.fi-alert:before,.fi-align-center:before,.fi-align-justify:before,.fi-align-left:before,.fi-align-right:before,.fi-anchor:before,.fi-annotate:before,.fi-archive:before,.fi-arrow-down:before,.fi-arrow-left:before,.fi-arrow-right:before,.fi-arrow-up:before,.fi-arrows-compress:before,.fi-arrows-expand:before,.fi-arrows-in:before,.fi-arrows-out:before,.fi-asl:before,.fi-asterisk:before,.fi-at-sign:before,.fi-background-color:before,.fi-battery-empty:before,.fi-battery-full:before,.fi-battery-half:before,.fi-bitcoin-circle:before,.fi-bitcoin:before,.fi-blind:before,.fi-bluetooth:before,.fi-bold:before,.fi-book-bookmark:before,.fi-book:before,.fi-bookmark:before,.fi-braille:before,.fi-burst-new:before,.fi-burst-sale:before,.fi-burst:before,.fi-calendar:before,.fi-camera:before,.fi-check:before,.fi-checkbox:before,.fi-clipboard-notes:before,.fi-clipboard-pencil:before,.fi-clipboard:before,.fi-clock:before,.fi-closed-caption:before,.fi-cloud:before,.fi-comment-minus:before,.fi-comment-quotes:before,.fi-comment-video:before,.fi-comment:before,.fi-comments:before,.fi-compass:before,.fi-contrast:before,.fi-credit-card:before,.fi-crop:before,.fi-crown:before,.fi-css3:before,.fi-database:before,.fi-die-five:before,.fi-die-four:before,.fi-die-one:before,.fi-die-six:before,.fi-die-three:before,.fi-die-two:before,.fi-dislike:before,.fi-dollar-bill:before,.fi-dollar:before,.fi-download:before,.fi-eject:before,.fi-elevator:before,.fi-euro:before,.fi-eye:before,.fi-fast-forward:before,.fi-female-symbol:before,.fi-female:before,.fi-filter:before,.fi-first-aid:before,.fi-flag:before,.fi-folder-add:before,.fi-folder-lock:before,.fi-folder:before,.fi-foot:before,.fi-foundation:before,.fi-graph-bar:before,.fi-graph-horizontal:before,.fi-graph-pie:before,.fi-graph-trend:before,.fi-guide-dog:before,.fi-hearing-aid:before,.fi-heart:before,.fi-home:before,.fi-html5:before,.fi-indent-less:before,.fi-indent-more:before,.fi-info:before,.fi-italic:before,.fi-key:before,.fi-laptop:before,.fi-layout:before,.fi-lightbulb:before,.fi-like:before,.fi-link:before,.fi-list-bullet:before,.fi-list-number:before,.fi-list-thumbnails:before,.fi-list:before,.fi-lock:before,.fi-loop:before,.fi-magnifying-glass:before,.fi-mail:before,.fi-male-female:before,.fi-male-symbol:before,.fi-male:before,.fi-map:before,.fi-marker:before,.fi-megaphone:before,.fi-microphone:before,.fi-minus-circle:before,.fi-minus:before,.fi-mobile-signal:before,.fi-mobile:before,.fi-monitor:before,.fi-mountains:before,.fi-music:before,.fi-next:before,.fi-no-dogs:before,.fi-no-smoking:before,.fi-page-add:before,.fi-page-copy:before,.fi-page-csv:before,.fi-page-delete:before,.fi-page-doc:before,.fi-page-edit:before,.fi-page-export-csv:before,.fi-page-export-doc:before,.fi-page-export-pdf:before,.fi-page-export:before,.fi-page-filled:before,.fi-page-multiple:before,.fi-page-pdf:before,.fi-page-remove:before,.fi-page-search:before,.fi-page:before,.fi-paint-bucket:before,.fi-paperclip:before,.fi-pause:before,.fi-paw:before,.fi-paypal:before,.fi-pencil:before,.fi-photo:before,.fi-play-circle:before,.fi-play-video:before,.fi-play:before,.fi-plus:before,.fi-pound:before,.fi-power:before,.fi-previous:before,.fi-price-tag:before,.fi-pricetag-multiple:before,.fi-print:before,.fi-prohibited:before,.fi-projection-screen:before,.fi-puzzle:before,.fi-quote:before,.fi-record:before,.fi-refresh:before,.fi-results-demographics:before,.fi-results:before,.fi-rewind-ten:before,.fi-rewind:before,.fi-rss:before,.fi-safety-cone:before,.fi-save:before,.fi-share:before,.fi-sheriff-badge:before,.fi-shield:before,.fi-shopping-bag:before,.fi-shopping-cart:before,.fi-shuffle:before,.fi-skull:before,.fi-social-500px:before,.fi-social-adobe:before,.fi-social-amazon:before,.fi-social-android:before,.fi-social-apple:before,.fi-social-behance:before,.fi-social-bing:before,.fi-social-blogger:before,.fi-social-delicious:before,.fi-social-designer-news:before,.fi-social-deviant-art:before,.fi-social-digg:before,.fi-social-dribbble:before,.fi-social-drive:before,.fi-social-dropbox:before,.fi-social-evernote:before,.fi-social-facebook:before,.fi-social-flickr:before,.fi-social-forrst:before,.fi-social-foursquare:before,.fi-social-game-center:before,.fi-social-github:before,.fi-social-google-plus:before,.fi-social-hacker-news:before,.fi-social-hi5:before,.fi-social-instagram:before,.fi-social-joomla:before,.fi-social-lastfm:before,.fi-social-linkedin:before,.fi-social-medium:before,.fi-social-myspace:before,.fi-social-orkut:before,.fi-social-path:before,.fi-social-picasa:before,.fi-social-pinterest:before,.fi-social-rdio:before,.fi-social-reddit:before,.fi-social-skillshare:before,.fi-social-skype:before,.fi-social-smashing-mag:before,.fi-social-snapchat:before,.fi-social-spotify:before,.fi-social-squidoo:before,.fi-social-stack-overflow:before,.fi-social-steam:before,.fi-social-stumbleupon:before,.fi-social-treehouse:before,.fi-social-tumblr:before,.fi-social-twitter:before,.fi-social-vimeo:before,.fi-social-windows:before,.fi-social-xbox:before,.fi-social-yahoo:before,.fi-social-yelp:before,.fi-social-youtube:before,.fi-social-zerply:before,.fi-social-zurb:before,.fi-sound:before,.fi-star:before,.fi-stop:before,.fi-strikethrough:before,.fi-subscript:before,.fi-superscript:before,.fi-tablet-landscape:before,.fi-tablet-portrait:before,.fi-target-two:before,.fi-target:before,.fi-telephone-accessible:before,.fi-telephone:before,.fi-text-color:before,.fi-thumbnails:before,.fi-ticket:before,.fi-torso-business:before,.fi-torso-female:before,.fi-torso:before,.fi-torsos-all-female:before,.fi-torsos-all:before,.fi-torsos-female-male:before,.fi-torsos-male-female:before,.fi-torsos:before,.fi-trash:before,.fi-trees:before,.fi-trophy:before,.fi-underline:before,.fi-universal-access:before,.fi-unlink:before,.fi-unlock:before,.fi-upload-cloud:before,.fi-upload:before,.fi-usb:before,.fi-video:before,.fi-volume-none:before,.fi-volume-strike:before,.fi-volume:before,.fi-web:before,.fi-wheelchair:before,.fi-widget:before,.fi-wrench:before,.fi-x-circle:before,.fi-x:before,.fi-yen:before,.fi-zoom-in:before,.fi-zoom-out:before{font-family:"foundation-icons";font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;display:inline-block;text-decoration:inherit}.fi-address-book:before{content:"\f100"}.fi-alert:before{content:"\f101"}.fi-align-center:before{content:"\f102"}.fi-align-justify:before{content:"\f103"}.fi-align-left:before{content:"\f104"}.fi-align-right:before{content:"\f105"}.fi-anchor:before{content:"\f106"}.fi-annotate:before{content:"\f107"}.fi-archive:before{content:"\f108"}.fi-arrow-down:before{content:"\f109"}.fi-arrow-left:before{content:"\f10a"}.fi-arrow-right:before{content:"\f10b"}.fi-arrow-up:before{content:"\f10c"}.fi-arrows-compress:before{content:"\f10d"}.fi-arrows-expand:before{content:"\f10e"}.fi-arrows-in:before{content:"\f10f"}.fi-arrows-out:before{content:"\f110"}.fi-asl:before{content:"\f111"}.fi-asterisk:before{content:"\f112"}.fi-at-sign:before{content:"\f113"}.fi-background-color:before{content:"\f114"}.fi-battery-empty:before{content:"\f115"}.fi-battery-full:before{content:"\f116"}.fi-battery-half:before{content:"\f117"}.fi-bitcoin-circle:before{content:"\f118"}.fi-bitcoin:before{content:"\f119"}.fi-blind:before{content:"\f11a"}.fi-bluetooth:before{content:"\f11b"}.fi-bold:before{content:"\f11c"}.fi-book-bookmark:before{content:"\f11d"}.fi-book:before{content:"\f11e"}.fi-bookmark:before{content:"\f11f"}.fi-braille:before{content:"\f120"}.fi-burst-new:before{content:"\f121"}.fi-burst-sale:before{content:"\f122"}.fi-burst:before{content:"\f123"}.fi-calendar:before{content:"\f124"}.fi-camera:before{content:"\f125"}.fi-check:before{content:"\f126"}.fi-checkbox:before{content:"\f127"}.fi-clipboard-notes:before{content:"\f128"}.fi-clipboard-pencil:before{content:"\f129"}.fi-clipboard:before{content:"\f12a"}.fi-clock:before{content:"\f12b"}.fi-closed-caption:before{content:"\f12c"}.fi-cloud:before{content:"\f12d"}.fi-comment-minus:before{content:"\f12e"}.fi-comment-quotes:before{content:"\f12f"}.fi-comment-video:before{content:"\f130"}.fi-comment:before{content:"\f131"}.fi-comments:before{content:"\f132"}.fi-compass:before{content:"\f133"}.fi-contrast:before{content:"\f134"}.fi-credit-card:before{content:"\f135"}.fi-crop:before{content:"\f136"}.fi-crown:before{content:"\f137"}.fi-css3:before{content:"\f138"}.fi-database:before{content:"\f139"}.fi-die-five:before{content:"\f13a"}.fi-die-four:before{content:"\f13b"}.fi-die-one:before{content:"\f13c"}.fi-die-six:before{content:"\f13d"}.fi-die-three:before{content:"\f13e"}.fi-die-two:before{content:"\f13f"}.fi-dislike:before{content:"\f140"}.fi-dollar-bill:before{content:"\f141"}.fi-dollar:before{content:"\f142"}.fi-download:before{content:"\f143"}.fi-eject:before{content:"\f144"}.fi-elevator:before{content:"\f145"}.fi-euro:before{content:"\f146"}.fi-eye:before{content:"\f147"}.fi-fast-forward:before{content:"\f148"}.fi-female-symbol:before{content:"\f149"}.fi-female:before{content:"\f14a"}.fi-filter:before{content:"\f14b"}.fi-first-aid:before{content:"\f14c"}.fi-flag:before{content:"\f14d"}.fi-folder-add:before{content:"\f14e"}.fi-folder-lock:before{content:"\f14f"}.fi-folder:before{content:"\f150"}.fi-foot:before{content:"\f151"}.fi-foundation:before{content:"\f152"}.fi-graph-bar:before{content:"\f153"}.fi-graph-horizontal:before{content:"\f154"}.fi-graph-pie:before{content:"\f155"}.fi-graph-trend:before{content:"\f156"}.fi-guide-dog:before{content:"\f157"}.fi-hearing-aid:before{content:"\f158"}.fi-heart:before{content:"\f159"}.fi-home:before{content:"\f15a"}.fi-html5:before{content:"\f15b"}.fi-indent-less:before{content:"\f15c"}.fi-indent-more:before{content:"\f15d"}.fi-info:before{content:"\f15e"}.fi-italic:before{content:"\f15f"}.fi-key:before{content:"\f160"}.fi-laptop:before{content:"\f161"}.fi-layout:before{content:"\f162"}.fi-lightbulb:before{content:"\f163"}.fi-like:before{content:"\f164"}.fi-link:before{content:"\f165"}.fi-list-bullet:before{content:"\f166"}.fi-list-number:before{content:"\f167"}.fi-list-thumbnails:before{content:"\f168"}.fi-list:before{content:"\f169"}.fi-lock:before{content:"\f16a"}.fi-loop:before{content:"\f16b"}.fi-magnifying-glass:before{content:"\f16c"}.fi-mail:before{content:"\f16d"}.fi-male-female:before{content:"\f16e"}.fi-male-symbol:before{content:"\f16f"}.fi-male:before{content:"\f170"}.fi-map:before{content:"\f171"}.fi-marker:before{content:"\f172"}.fi-megaphone:before{content:"\f173"}.fi-microphone:before{content:"\f174"}.fi-minus-circle:before{content:"\f175"}.fi-minus:before{content:"\f176"}.fi-mobile-signal:before{content:"\f177"}.fi-mobile:before{content:"\f178"}.fi-monitor:before{content:"\f179"}.fi-mountains:before{content:"\f17a"}.fi-music:before{content:"\f17b"}.fi-next:before{content:"\f17c"}.fi-no-dogs:before{content:"\f17d"}.fi-no-smoking:before{content:"\f17e"}.fi-page-add:before{content:"\f17f"}.fi-page-copy:before{content:"\f180"}.fi-page-csv:before{content:"\f181"}.fi-page-delete:before{content:"\f182"}.fi-page-doc:before{content:"\f183"}.fi-page-edit:before{content:"\f184"}.fi-page-export-csv:before{content:"\f185"}.fi-page-export-doc:before{content:"\f186"}.fi-page-export-pdf:before{content:"\f187"}.fi-page-export:before{content:"\f188"}.fi-page-filled:before{content:"\f189"}.fi-page-multiple:before{content:"\f18a"}.fi-page-pdf:before{content:"\f18b"}.fi-page-remove:before{content:"\f18c"}.fi-page-search:before{content:"\f18d"}.fi-page:before{content:"\f18e"}.fi-paint-bucket:before{content:"\f18f"}.fi-paperclip:before{content:"\f190"}.fi-pause:before{content:"\f191"}.fi-paw:before{content:"\f192"}.fi-paypal:before{content:"\f193"}.fi-pencil:before{content:"\f194"}.fi-photo:before{content:"\f195"}.fi-play-circle:before{content:"\f196"}.fi-play-video:before{content:"\f197"}.fi-play:before{content:"\f198"}.fi-plus:before{content:"\f199"}.fi-pound:before{content:"\f19a"}.fi-power:before{content:"\f19b"}.fi-previous:before{content:"\f19c"}.fi-price-tag:before{content:"\f19d"}.fi-pricetag-multiple:before{content:"\f19e"}.fi-print:before{content:"\f19f"}.fi-prohibited:before{content:"\f1a0"}.fi-projection-screen:before{content:"\f1a1"}.fi-puzzle:before{content:"\f1a2"}.fi-quote:before{content:"\f1a3"}.fi-record:before{content:"\f1a4"}.fi-refresh:before{content:"\f1a5"}.fi-results-demographics:before{content:"\f1a6"}.fi-results:before{content:"\f1a7"}.fi-rewind-ten:before{content:"\f1a8"}.fi-rewind:before{content:"\f1a9"}.fi-rss:before{content:"\f1aa"}.fi-safety-cone:before{content:"\f1ab"}.fi-save:before{content:"\f1ac"}.fi-share:before{content:"\f1ad"}.fi-sheriff-badge:before{content:"\f1ae"}.fi-shield:before{content:"\f1af"}.fi-shopping-bag:before{content:"\f1b0"}.fi-shopping-cart:before{content:"\f1b1"}.fi-shuffle:before{content:"\f1b2"}.fi-skull:before{content:"\f1b3"}.fi-social-500px:before{content:"\f1b4"}.fi-social-adobe:before{content:"\f1b5"}.fi-social-amazon:before{content:"\f1b6"}.fi-social-android:before{content:"\f1b7"}.fi-social-apple:before{content:"\f1b8"}.fi-social-behance:before{content:"\f1b9"}.fi-social-bing:before{content:"\f1ba"}.fi-social-blogger:before{content:"\f1bb"}.fi-social-delicious:before{content:"\f1bc"}.fi-social-designer-news:before{content:"\f1bd"}.fi-social-deviant-art:before{content:"\f1be"}.fi-social-digg:before{content:"\f1bf"}.fi-social-dribbble:before{content:"\f1c0"}.fi-social-drive:before{content:"\f1c1"}.fi-social-dropbox:before{content:"\f1c2"}.fi-social-evernote:before{content:"\f1c3"}.fi-social-facebook:before{content:"\f1c4"}.fi-social-flickr:before{content:"\f1c5"}.fi-social-forrst:before{content:"\f1c6"}.fi-social-foursquare:before{content:"\f1c7"}.fi-social-game-center:before{content:"\f1c8"}.fi-social-github:before{content:"\f1c9"}.fi-social-google-plus:before{content:"\f1ca"}.fi-social-hacker-news:before{content:"\f1cb"}.fi-social-hi5:before{content:"\f1cc"}.fi-social-instagram:before{content:"\f1cd"}.fi-social-joomla:before{content:"\f1ce"}.fi-social-lastfm:before{content:"\f1cf"}.fi-social-linkedin:before{content:"\f1d0"}.fi-social-medium:before{content:"\f1d1"}.fi-social-myspace:before{content:"\f1d2"}.fi-social-orkut:before{content:"\f1d3"}.fi-social-path:before{content:"\f1d4"}.fi-social-picasa:before{content:"\f1d5"}.fi-social-pinterest:before{content:"\f1d6"}.fi-social-rdio:before{content:"\f1d7"}.fi-social-reddit:before{content:"\f1d8"}.fi-social-skillshare:before{content:"\f1d9"}.fi-social-skype:before{content:"\f1da"}.fi-social-smashing-mag:before{content:"\f1db"}.fi-social-snapchat:before{content:"\f1dc"}.fi-social-spotify:before{content:"\f1dd"}.fi-social-squidoo:before{content:"\f1de"}.fi-social-stack-overflow:before{content:"\f1df"}.fi-social-steam:before{content:"\f1e0"}.fi-social-stumbleupon:before{content:"\f1e1"}.fi-social-treehouse:before{content:"\f1e2"}.fi-social-tumblr:before{content:"\f1e3"}.fi-social-twitter:before{content:"\f1e4"}.fi-social-vimeo:before{content:"\f1e5"}.fi-social-windows:before{content:"\f1e6"}.fi-social-xbox:before{content:"\f1e7"}.fi-social-yahoo:before{content:"\f1e8"}.fi-social-yelp:before{content:"\f1e9"}.fi-social-youtube:before{content:"\f1ea"}.fi-social-zerply:before{content:"\f1eb"}.fi-social-zurb:before{content:"\f1ec"}.fi-sound:before{content:"\f1ed"}.fi-star:before{content:"\f1ee"}.fi-stop:before{content:"\f1ef"}.fi-strikethrough:before{content:"\f1f0"}.fi-subscript:before{content:"\f1f1"}.fi-superscript:before{content:"\f1f2"}.fi-tablet-landscape:before{content:"\f1f3"}.fi-tablet-portrait:before{content:"\f1f4"}.fi-target-two:before{content:"\f1f5"}.fi-target:before{content:"\f1f6"}.fi-telephone-accessible:before{content:"\f1f7"}.fi-telephone:before{content:"\f1f8"}.fi-text-color:before{content:"\f1f9"}.fi-thumbnails:before{content:"\f1fa"}.fi-ticket:before{content:"\f1fb"}.fi-torso-business:before{content:"\f1fc"}.fi-torso-female:before{content:"\f1fd"}.fi-torso:before{content:"\f1fe"}.fi-torsos-all-female:before{content:"\f1ff"}.fi-torsos-all:before{content:"\f200"}.fi-torsos-female-male:before{content:"\f201"}.fi-torsos-male-female:before{content:"\f202"}.fi-torsos:before{content:"\f203"}.fi-trash:before{content:"\f204"}.fi-trees:before{content:"\f205"}.fi-trophy:before{content:"\f206"}.fi-underline:before{content:"\f207"}.fi-universal-access:before{content:"\f208"}.fi-unlink:before{content:"\f209"}.fi-unlock:before{content:"\f20a"}.fi-upload-cloud:before{content:"\f20b"}.fi-upload:before{content:"\f20c"}.fi-usb:before{content:"\f20d"}.fi-video:before{content:"\f20e"}.fi-volume-none:before{content:"\f20f"}.fi-volume-strike:before{content:"\f210"}.fi-volume:before{content:"\f211"}.fi-web:before{content:"\f212"}.fi-wheelchair:before{content:"\f213"}.fi-widget:before{content:"\f214"}.fi-wrench:before{content:"\f215"}.fi-x-circle:before{content:"\f216"}.fi-x:before{content:"\f217"}.fi-yen:before{content:"\f218"}.fi-zoom-in:before{content:"\f219"}.fi-zoom-out:before{content:"\f21a"}.menu--main{position:relative}@media print, screen and (min-width: 40em){.menu--main .nav{float:right}}@media print, screen and (min-width: 40em){.menu--main .nav ul.menu.dropdown .menu-level-0{height:5.1875rem}}@media print, screen and (min-width: 40em){.menu--main .nav ul.menu.dropdown{height:5.1875rem}}.menu--main .nav ul.menu li{list-style:none}.menu--main .nav ul.menu li a{color:#a36c01;font-size:1.2rem;font-weight:bold;padding:.7rem 1.2rem}.menu--main .nav ul.menu li a.is-active{color:#fefefe}.menu--main .nav ul.menu li ul{display:none}.menu--main .nav ul.menu li ul.submenu{border-radius:0 0 10px 10px;margin-left:-0.7rem}.menu--main .nav ul.menu li ul.submenu.js-dropdown-active{display:block}.menu--main .nav ul.menu li ul.submenu.first-sub{top:100%;left:-30%}.menu--main .nav ul.menu li ul.submenu li{border-bottom:1px solid #e6e6e6;text-align:center}.menu--main .nav ul.menu li ul.submenu li.is-dropdown-submenu-item:last-child{border-bottom:none}.menu--main .nav ul.menu li ul.submenu li a{color:#4d4d4d;display:inline-block;width:100%;padding:0.7rem 0.5rem;font-weight:normal;font-size:1rem}.menu--main .nav .is-drilldown{width:100% !important;overflow:visible !important}.menu--main .nav .is-drilldown ul.menu{background:#fefefe}.menu--main .nav .is-drilldown ul.menu li{background:#fefefe}.menu--main .nav .is-drilldown ul.menu li.menu-level-0{text-align:center;border-bottom:1px solid #e6e6e6}.menu--main .nav .is-drilldown ul.menu li.menu-level-0 a{width:100%;display:block;padding:0.7rem 0.5rem;color:#4d4d4d}.menu--main .nav .is-drilldown ul.menu li ul.submenu{display:block;margin:0;border-radius:0}.menu--main .nav .is-drilldown ul.menu li ul.submenu li.js-drilldown-back{position:absolute;display:block;top:0px;border:none;background:#e6e6e6}.menu--main .nav .is-drilldown ul.menu li ul.submenu li.js-drilldown-back a{display:block;padding:0.7rem 0.5rem}.menu--main .nav .is-drilldown ul.menu li ul.submenu li.js-drilldown-back a .fi-x{position:relative;top:-5px;right:-5px}#burger{text-align:right}#burger .menu-icon{position:relative;display:inline-block;vertical-align:middle;width:30px;height:24px;cursor:pointer}#burger .menu-icon::after{position:absolute;top:0;left:0;display:block;width:100%;height:4px;background:#fefefe;box-shadow:0 10px 0 #fefefe,0 20px 0 #fefefe;content:''}#burger .menu-icon:hover::after{background:#0a0a0a;box-shadow:0 10px 0 #0a0a0a,0 20px 0 #0a0a0a}#bestilling-form{background:#fefefe;border-radius:20px}#bestilling-form .wrapper{padding:2.5rem}@media screen and (max-width: 39.9375em){#bestilling-form .wrapper{padding:1.5rem}}#bestilling-form .wrapper .products.row{margin-bottom:2rem}#bestilling-form .wrapper .products.row .product .image.row{margin-bottom:1.4rem}#bestilling-form .wrapper .products.row .product .image.row img{width:100%;height:auto}#bestilling-form .wrapper .products.row .product .info.row{margin-bottom:1rem;font-size:.9rem}#bestilling-form .wrapper .products.row .product .info.row .title{font-weight:bold}#bestilling-form .wrapper .products.row .product .info.row .descr{font-size:.7rem}#bestilling-form .wrapper .products.row .product .info.row .qty input{background:#f2f2f2;border:none;box-shadow:none;font-size:1.5rem;line-height:3rem;height:auto;max-width:100%;padding:.5rem .5rem .5rem 0;text-align:right}#bestilling-form .wrapper .products.row .product .info.row .qty input.error{border:1px solid red;background-color:#fce6e2}#bestilling-form .wrapper .details.row .form-item{margin-bottom:1rem;overflow:hidden}#bestilling-form .wrapper .details.row .form-item label{float:left;width:30%;font-size:1.3rem}#bestilling-form .wrapper .details.row .form-item input{float:right;width:65%}@media screen and (max-width: 39.9375em){#bestilling-form .wrapper .details.row .form-item{margin-bottom:0}#bestilling-form .wrapper .details.row .form-item label{float:none;width:100%}#bestilling-form .wrapper .details.row .form-item input{float:none;width:100%}}#bestilling-form .wrapper .actions.row{text-align:center}#block-bestillingintro{margin-bottom:3rem}/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:0.67em 0}figcaption,figure{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}main{display:block}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button{overflow:visible}button,select{text-transform:none}button,html [type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}input{overflow:visible}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{box-sizing:border-box;display:table;max-width:100%;padding:0;color:inherit;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}details{display:block}summary{display:list-item}menu{display:block}canvas{display:inline-block}template{display:none}[hidden]{display:none}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{box-sizing:border-box;font-size:100%}*,*::before,*::after{box-sizing:inherit}body{margin:0;padding:0;background:#fdab1b;font-family:Roboto,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:normal;line-height:1.5;color:#0a0a0a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle;max-width:100%;height:auto;-ms-interpolation-mode:bicubic}textarea{height:auto;min-height:50px;border-radius:0}select{box-sizing:border-box;width:100%;border-radius:0}.map_canvas img,.map_canvas embed,.map_canvas object,.mqa-display img,.mqa-display embed,.mqa-display object{max-width:none !important}button{padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;background:transparent;line-height:1;cursor:auto}[data-whatinput='mouse'] button{outline:0}pre{overflow:auto}button,input,optgroup,select,textarea{font-family:inherit}.is-visible{display:block !important}.is-hidden{display:none !important}div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0}p{margin-bottom:1rem;font-size:inherit;line-height:1.6;text-rendering:optimizeLegibility}em,i{font-style:italic;line-height:inherit}strong,b{font-weight:bold;line-height:inherit}small{font-size:80%;line-height:inherit}h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{font-family:Roboto,"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:normal;color:inherit;text-rendering:optimizeLegibility}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small{line-height:0;color:#4d4d4d}h1,.h1{font-size:1.5rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h2,.h2{font-size:1.25rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h3,.h3{font-size:1.1875rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h4,.h4{font-size:1.125rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h5,.h5{font-size:1.0625rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h6,.h6{font-size:1rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}@media print, screen and (min-width: 40em){h1,.h1{font-size:3rem}h2,.h2{font-size:2.5rem}h3,.h3{font-size:1.9375rem}h4,.h4{font-size:1.5625rem}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}}a{line-height:inherit;color:#2199e8;text-decoration:none;cursor:pointer}a:hover,a:focus{color:#1585cf}a img{border:0}hr{clear:both;max-width:75rem;height:0;margin:1.25rem auto;border-top:0;border-right:0;border-bottom:1px solid #4d4d4d;border-left:0}ul,ol,dl{margin-bottom:1rem;list-style-position:outside;line-height:1.6}li{font-size:inherit}ul{margin-left:1.25rem;list-style-type:disc}ol{margin-left:1.25rem}ul ul,ol ul,ul ol,ol ol{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:bold}blockquote{margin:0 0 1rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #4d4d4d}blockquote,blockquote p{line-height:1.6;color:#8a8a8a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:"— "}abbr,abbr[title]{border-bottom:1px dotted #0a0a0a;cursor:help;text-decoration:none}figure{margin:0}code{padding:.125rem .3125rem .0625rem;border:1px solid #4d4d4d;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:normal;color:#0a0a0a}kbd{margin:0;padding:.125rem .25rem 0;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;color:#0a0a0a}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:normal;line-height:1.4;color:#8a8a8a}.lead{font-size:125%;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}ul.no-bullet,ol.no-bullet{margin-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media print, 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 print, 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}}.show-for-print{display:none !important}@media print{*{background:transparent !important;box-shadow:none !important;color:black !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{display:table-cell !important}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) ")"}pre,blockquote{border:1px solid #8a8a8a;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.print-break-inside{page-break-inside:auto}}.button{display:inline-block;vertical-align:middle;margin:0 0 1rem 0;font-family:inherit;padding:0.85em 1em;-webkit-appearance:none;border:1px solid transparent;border-radius:0;transition:background-color 0.25s ease-out,color 0.25s ease-out;font-size:0.9rem;line-height:1;text-align:center;cursor:pointer;background-color:#2199e8;color:#fff}[data-whatinput='mouse'] .button{outline:0}.button:hover,.button:focus{background-color:#1583cc;color:#fff}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-right:0;margin-left:0}.button.primary{background-color:#1779ba;color:#fff}.button.primary:hover,.button.primary:focus{background-color:#126195;color:#fff}.button.secondary{background-color:#767676;color:#000}.button.secondary:hover,.button.secondary:focus{background-color:#5e5e5e;color:#000}.button.success{background-color:#3adb76;color:#000}.button.success:hover,.button.success:focus{background-color:#22bb5b;color:#000}.button.warning{background-color:#ffae00;color:#000}.button.warning:hover,.button.warning:focus{background-color:#cc8b00;color:#000}.button.alert{background-color:#cc4b37;color:#000}.button.alert:hover,.button.alert:focus{background-color:#a53b2a;color:#000}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed}.button.disabled,.button.disabled:hover,.button.disabled:focus,.button[disabled],.button[disabled]:hover,.button[disabled]:focus{background-color:#2199e8;color:#fff}.button.disabled.primary,.button[disabled].primary{opacity:.25;cursor:not-allowed}.button.disabled.primary,.button.disabled.primary:hover,.button.disabled.primary:focus,.button[disabled].primary,.button[disabled].primary:hover,.button[disabled].primary:focus{background-color:#1779ba;color:#fff}.button.disabled.secondary,.button[disabled].secondary{opacity:.25;cursor:not-allowed}.button.disabled.secondary,.button.disabled.secondary:hover,.button.disabled.secondary:focus,.button[disabled].secondary,.button[disabled].secondary:hover,.button[disabled].secondary:focus{background-color:#767676;color:#000}.button.disabled.success,.button[disabled].success{opacity:.25;cursor:not-allowed}.button.disabled.success,.button.disabled.success:hover,.button.disabled.success:focus,.button[disabled].success,.button[disabled].success:hover,.button[disabled].success:focus{background-color:#3adb76;color:#000}.button.disabled.warning,.button[disabled].warning{opacity:.25;cursor:not-allowed}.button.disabled.warning,.button.disabled.warning:hover,.button.disabled.warning:focus,.button[disabled].warning,.button[disabled].warning:hover,.button[disabled].warning:focus{background-color:#ffae00;color:#000}.button.disabled.alert,.button[disabled].alert{opacity:.25;cursor:not-allowed}.button.disabled.alert,.button.disabled.alert:hover,.button.disabled.alert:focus,.button[disabled].alert,.button[disabled].alert:hover,.button[disabled].alert:focus{background-color:#cc4b37;color:#000}.button.hollow{border:1px solid #2199e8;color:#2199e8}.button.hollow,.button.hollow:hover,.button.hollow:focus{background-color:transparent}.button.hollow.disabled,.button.hollow.disabled:hover,.button.hollow.disabled:focus,.button.hollow[disabled],.button.hollow[disabled]:hover,.button.hollow[disabled]:focus{background-color:transparent}.button.hollow:hover,.button.hollow:focus{border-color:#0c4d78;color:#0c4d78}.button.hollow:hover.disabled,.button.hollow:hover[disabled],.button.hollow:focus.disabled,.button.hollow:focus[disabled]{border:1px solid #2199e8;color:#2199e8}.button.hollow.primary{border:1px solid #1779ba;color:#1779ba}.button.hollow.primary:hover,.button.hollow.primary:focus{border-color:#0c3d5d;color:#0c3d5d}.button.hollow.primary:hover.disabled,.button.hollow.primary:hover[disabled],.button.hollow.primary:focus.disabled,.button.hollow.primary:focus[disabled]{border:1px solid #1779ba;color:#1779ba}.button.hollow.secondary{border:1px solid #767676;color:#767676}.button.hollow.secondary:hover,.button.hollow.secondary:focus{border-color:#3b3b3b;color:#3b3b3b}.button.hollow.secondary:hover.disabled,.button.hollow.secondary:hover[disabled],.button.hollow.secondary:focus.disabled,.button.hollow.secondary:focus[disabled]{border:1px solid #767676;color:#767676}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:hover,.button.hollow.success:focus{border-color:#157539;color:#157539}.button.hollow.success:hover.disabled,.button.hollow.success:hover[disabled],.button.hollow.success:focus.disabled,.button.hollow.success:focus[disabled]{border:1px solid #3adb76;color:#3adb76}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:hover,.button.hollow.warning:focus{border-color:#805700;color:#805700}.button.hollow.warning:hover.disabled,.button.hollow.warning:hover[disabled],.button.hollow.warning:focus.disabled,.button.hollow.warning:focus[disabled]{border:1px solid #ffae00;color:#ffae00}.button.hollow.alert{border:1px solid #cc4b37;color:#cc4b37}.button.hollow.alert:hover,.button.hollow.alert:focus{border-color:#67251a;color:#67251a}.button.hollow.alert:hover.disabled,.button.hollow.alert:hover[disabled],.button.hollow.alert:focus.disabled,.button.hollow.alert:focus[disabled]{border:1px solid #cc4b37;color:#cc4b37}.button.clear{border:1px solid #2199e8;color:#2199e8}.button.clear,.button.clear:hover,.button.clear:focus{background-color:transparent}.button.clear.disabled,.button.clear.disabled:hover,.button.clear.disabled:focus,.button.clear[disabled],.button.clear[disabled]:hover,.button.clear[disabled]:focus{background-color:transparent}.button.clear:hover,.button.clear:focus{border-color:#0c4d78;color:#0c4d78}.button.clear:hover.disabled,.button.clear:hover[disabled],.button.clear:focus.disabled,.button.clear:focus[disabled]{border:1px solid #2199e8;color:#2199e8}.button.clear,.button.clear.disabled,.button.clear[disabled],.button.clear:hover,.button.clear:hover.disabled,.button.clear:hover[disabled],.button.clear:focus,.button.clear:focus.disabled,.button.clear:focus[disabled]{border-color:transparent}.button.clear.primary{border:1px solid #1779ba;color:#1779ba}.button.clear.primary:hover,.button.clear.primary:focus{border-color:#0c3d5d;color:#0c3d5d}.button.clear.primary:hover.disabled,.button.clear.primary:hover[disabled],.button.clear.primary:focus.disabled,.button.clear.primary:focus[disabled]{border:1px solid #1779ba;color:#1779ba}.button.clear.primary,.button.clear.primary.disabled,.button.clear.primary[disabled],.button.clear.primary:hover,.button.clear.primary:hover.disabled,.button.clear.primary:hover[disabled],.button.clear.primary:focus,.button.clear.primary:focus.disabled,.button.clear.primary:focus[disabled]{border-color:transparent}.button.clear.secondary{border:1px solid #767676;color:#767676}.button.clear.secondary:hover,.button.clear.secondary:focus{border-color:#3b3b3b;color:#3b3b3b}.button.clear.secondary:hover.disabled,.button.clear.secondary:hover[disabled],.button.clear.secondary:focus.disabled,.button.clear.secondary:focus[disabled]{border:1px solid #767676;color:#767676}.button.clear.secondary,.button.clear.secondary.disabled,.button.clear.secondary[disabled],.button.clear.secondary:hover,.button.clear.secondary:hover.disabled,.button.clear.secondary:hover[disabled],.button.clear.secondary:focus,.button.clear.secondary:focus.disabled,.button.clear.secondary:focus[disabled]{border-color:transparent}.button.clear.success{border:1px solid #3adb76;color:#3adb76}.button.clear.success:hover,.button.clear.success:focus{border-color:#157539;color:#157539}.button.clear.success:hover.disabled,.button.clear.success:hover[disabled],.button.clear.success:focus.disabled,.button.clear.success:focus[disabled]{border:1px solid #3adb76;color:#3adb76}.button.clear.success,.button.clear.success.disabled,.button.clear.success[disabled],.button.clear.success:hover,.button.clear.success:hover.disabled,.button.clear.success:hover[disabled],.button.clear.success:focus,.button.clear.success:focus.disabled,.button.clear.success:focus[disabled]{border-color:transparent}.button.clear.warning{border:1px solid #ffae00;color:#ffae00}.button.clear.warning:hover,.button.clear.warning:focus{border-color:#805700;color:#805700}.button.clear.warning:hover.disabled,.button.clear.warning:hover[disabled],.button.clear.warning:focus.disabled,.button.clear.warning:focus[disabled]{border:1px solid #ffae00;color:#ffae00}.button.clear.warning,.button.clear.warning.disabled,.button.clear.warning[disabled],.button.clear.warning:hover,.button.clear.warning:hover.disabled,.button.clear.warning:hover[disabled],.button.clear.warning:focus,.button.clear.warning:focus.disabled,.button.clear.warning:focus[disabled]{border-color:transparent}.button.clear.alert{border:1px solid #cc4b37;color:#cc4b37}.button.clear.alert:hover,.button.clear.alert:focus{border-color:#67251a;color:#67251a}.button.clear.alert:hover.disabled,.button.clear.alert:hover[disabled],.button.clear.alert:focus.disabled,.button.clear.alert:focus[disabled]{border:1px solid #cc4b37;color:#cc4b37}.button.clear.alert,.button.clear.alert.disabled,.button.clear.alert[disabled],.button.clear.alert:hover,.button.clear.alert:hover.disabled,.button.clear.alert:hover[disabled],.button.clear.alert:focus,.button.clear.alert:focus.disabled,.button.clear.alert:focus[disabled]{border-color:transparent}.button.dropdown::after{display:block;width:0;height:0;border:inset .4em;content:'';border-bottom-width:0;border-top-style:solid;border-color:#fefefe transparent transparent;position:relative;top:0.4em;display:inline-block;float:right;margin-left:1em}.button.dropdown.hollow::after{border-top-color:#2199e8}.button.dropdown.hollow.primary::after{border-top-color:#1779ba}.button.dropdown.hollow.secondary::after{border-top-color:#767676}.button.dropdown.hollow.success::after{border-top-color:#3adb76}.button.dropdown.hollow.warning::after{border-top-color:#ffae00}.button.dropdown.hollow.alert::after{border-top-color:#cc4b37}.button.arrow-only::after{top:-0.1em;float:none;margin-left:0}a.button:hover,a.button:focus{text-decoration:none}[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;margin:0 0 1rem;padding:.5rem;border:1px solid #b1d8f3;border-radius:0;background-color:#fefefe;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1);font-family:inherit;font-size:1rem;font-weight:normal;line-height:1.5;color:#0a0a0a;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;-webkit-appearance:none;-moz-appearance:none;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{outline:none;border:1px solid #8a8a8a;background-color:#fefefe;box-shadow:0 0 5px #4d4d4d;transition:box-shadow 0.5s,border-color 0.25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#4d4d4d}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#4d4d4d}input::placeholder,textarea::placeholder{color:#4d4d4d}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:default}[type='submit'],[type='button']{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}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;vertical-align:baseline;margin-left:.5rem;margin-right:1rem;margin-bottom:0}[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;font-weight:normal;line-height:1.8;color:#0a0a0a}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:-ms-flexbox;display:flex;width:100%;margin-bottom:1rem;-ms-flex-align:stretch;align-items:stretch}.input-group>:first-child{border-radius:0 0 0 0}.input-group>:last-child>*{border-radius:0 0 0 0}.input-group-label,.input-group-field,.input-group-button,.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{margin:0;white-space:nowrap}.input-group-label{padding:0 1rem;border:1px solid #4d4d4d;background:#e6e6e6;color:#0a0a0a;text-align:center;white-space:nowrap;display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-align:center;align-items:center}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;-ms-flex:1 1 0px;flex:1 1 0px;height:auto;min-width:0}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto}.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{height:auto;-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch;padding-top:0;padding-bottom:0;font-size:1rem}fieldset{margin:0;padding:0;border:0}legend{max-width:100%;margin-bottom:.5rem}.fieldset{margin:1.125rem 0;padding:1.25rem;border:1px solid #4d4d4d}.fieldset legend{margin:0;margin-left:-.1875rem;padding:0 .1875rem}select{height:2.4375rem;margin:0 0 1rem;padding:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #b1d8f3;border-radius:0;background-color:#fefefe;font-family:inherit;font-size:1rem;font-weight:normal;line-height:1.5;color:#0a0a0a;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-origin:content-box;background-position:right -1rem center;background-repeat:no-repeat;background-size:9px 6px;padding-right:1.5rem;transition:box-shadow 0.5s,border-color 0.25s ease-in-out}@media screen and (min-width: 0\0){select{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==")}}select:focus{outline:none;border:1px solid #8a8a8a;background-color:#fefefe;box-shadow:0 0 5px #4d4d4d;transition:box-shadow 0.5s,border-color 0.25s ease-in-out}select:disabled{background-color:#e6e6e6;cursor:default}select::-ms-expand{display:none}select[multiple]{height:auto;background-image:none}.is-invalid-input:not(:focus){border-color:#ec5840;background-color:#fcedeb}.is-invalid-input:not(:focus)::-webkit-input-placeholder{color:#ec5840}.is-invalid-input:not(:focus):-ms-input-placeholder{color:#ec5840}.is-invalid-input:not(:focus)::placeholder{color:#ec5840}.is-invalid-label{color:#ec5840}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:bold;color:#ec5840}.form-error.is-visible{display:block}.hide{display:none !important}.invisible{visibility:hidden}@media screen and (max-width: 39.9375em){.hide-for-small-only{display:none !important}}@media screen and (max-width: 0em), screen and (min-width: 40em){.show-for-small-only{display:none !important}}@media print, screen and (min-width: 40em){.hide-for-medium{display:none !important}}@media screen and (max-width: 39.9375em){.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 print, 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;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;-webkit-clip-path:inset(50%);clip-path:inset(50%);border:0}.show-on-focus:active,.show-on-focus:focus{position:static !important;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;-webkit-clip-path:none;clip-path:none}.show-for-landscape,.hide-for-portrait{display:block !important}@media screen and (orientation: landscape){.show-for-landscape,.hide-for-portrait{display:block !important}}@media screen and (orientation: portrait){.show-for-landscape,.hide-for-portrait{display:none !important}}.hide-for-landscape,.show-for-portrait{display:none !important}@media screen and (orientation: landscape){.hide-for-landscape,.show-for-portrait{display:none !important}}@media screen and (orientation: portrait){.hide-for-landscape,.show-for-portrait{display:block !important}}.float-left{float:left !important}.float-right{float:right !important}.float-center{display:block;margin-right:auto;margin-left:auto}.clearfix::before,.clearfix::after{display:table;content:' ';-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-order:1;order:1}.clearfix::after{clear:both}.row{max-width:75rem;margin-right:auto;margin-left:auto;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.row .row{margin-right:-.625rem;margin-left:-.625rem}@media print, screen and (min-width: 40em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}@media print, screen and (min-width: 64em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}.row .row.collapse{margin-right:0;margin-left:0}.row.expanded{max-width:none}.row.expanded .row{margin-right:auto;margin-left:auto}.row:not(.expanded) .row{max-width:none}.row.collapse>.column,.row.collapse>.columns{padding-right:0;padding-left:0}.row.is-collapse-child,.row.collapse>.column>.row,.row.collapse>.columns>.row{margin-right:0;margin-left:0}.column,.columns{-ms-flex:1 1 0px;flex:1 1 0px;padding-right:.625rem;padding-left:.625rem;min-width:0}@media print, screen and (min-width: 40em){.column,.columns{padding-right:.9375rem;padding-left:.9375rem}}.column.row.row,.row.row.columns{float:none;display:block}.row .column.row.row,.row .row.row.columns{margin-right:0;margin-left:0;padding-right:0;padding-left:0}.small-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.small-offset-0{margin-left:0%}.small-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-offset-2{margin-left:16.66667%}.small-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-offset-3{margin-left:25%}.small-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-offset-5{margin-left:41.66667%}.small-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.small-offset-6{margin-left:50%}.small-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.small-offset-8{margin-left:66.66667%}.small-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.small-offset-9{margin-left:75%}.small-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-offset-11{margin-left:91.66667%}.small-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-1>.column,.small-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-2>.column,.small-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-3>.column,.small-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-4>.column,.small-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-5>.column,.small-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.small-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-6>.column,.small-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-7>.column,.small-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.small-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-8>.column,.small-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}.small-collapse>.column,.small-collapse>.columns{padding-right:0;padding-left:0}.small-uncollapse>.column,.small-uncollapse>.columns{padding-right:.625rem;padding-left:.625rem}@media print, screen and (min-width: 40em){.medium-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.medium-offset-0{margin-left:0%}.medium-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-offset-1{margin-left:8.33333%}.medium-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-offset-2{margin-left:16.66667%}.medium-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-offset-3{margin-left:25%}.medium-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.medium-offset-4{margin-left:33.33333%}.medium-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-offset-5{margin-left:41.66667%}.medium-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.medium-offset-6{margin-left:50%}.medium-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.medium-offset-7{margin-left:58.33333%}.medium-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.medium-offset-8{margin-left:66.66667%}.medium-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.medium-offset-9{margin-left:75%}.medium-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.medium-offset-10{margin-left:83.33333%}.medium-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-offset-11{margin-left:91.66667%}.medium-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-1>.column,.medium-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-2>.column,.medium-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-3>.column,.medium-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-4>.column,.medium-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-5>.column,.medium-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.medium-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-6>.column,.medium-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-7>.column,.medium-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.medium-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-8>.column,.medium-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media print, screen and (min-width: 40em) and (min-width: 40em){.medium-expand{-ms-flex:1 1 0px;flex:1 1 0px}}.row.medium-unstack>.column,.row.medium-unstack>.columns{-ms-flex:0 0 100%;flex:0 0 100%}@media print, screen and (min-width: 40em){.row.medium-unstack>.column,.row.medium-unstack>.columns{-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 40em){.medium-collapse>.column,.medium-collapse>.columns{padding-right:0;padding-left:0}.medium-uncollapse>.column,.medium-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}@media print, screen and (min-width: 64em){.large-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.large-offset-0{margin-left:0%}.large-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-offset-1{margin-left:8.33333%}.large-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-offset-2{margin-left:16.66667%}.large-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-offset-3{margin-left:25%}.large-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.large-offset-4{margin-left:33.33333%}.large-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-offset-5{margin-left:41.66667%}.large-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.large-offset-6{margin-left:50%}.large-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.large-offset-7{margin-left:58.33333%}.large-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.large-offset-8{margin-left:66.66667%}.large-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.large-offset-9{margin-left:75%}.large-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.large-offset-10{margin-left:83.33333%}.large-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-offset-11{margin-left:91.66667%}.large-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-1>.column,.large-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-2>.column,.large-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-3>.column,.large-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-4>.column,.large-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-5>.column,.large-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.large-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-6>.column,.large-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-7>.column,.large-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.large-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-8>.column,.large-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media print, screen and (min-width: 64em) and (min-width: 64em){.large-expand{-ms-flex:1 1 0px;flex:1 1 0px}}.row.large-unstack>.column,.row.large-unstack>.columns{-ms-flex:0 0 100%;flex:0 0 100%}@media print, screen and (min-width: 64em){.row.large-unstack>.column,.row.large-unstack>.columns{-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 64em){.large-collapse>.column,.large-collapse>.columns{padding-right:0;padding-left:0}.large-uncollapse>.column,.large-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}.shrink{-ms-flex:0 0 auto;flex:0 0 auto;max-width:100%}.column-block{margin-bottom:1.25rem}.column-block>:last-child{margin-bottom:0}@media print, screen and (min-width: 40em){.column-block{margin-bottom:1.875rem}.column-block>:last-child{margin-bottom:0}}.align-right{-ms-flex-pack:end;justify-content:flex-end}.align-center{-ms-flex-pack:center;justify-content:center}.align-justify{-ms-flex-pack:justify;justify-content:space-between}.align-spaced{-ms-flex-pack:distribute;justify-content:space-around}.align-right.vertical.menu>li>a{-ms-flex-pack:end;justify-content:flex-end}.align-center.vertical.menu>li>a{-ms-flex-pack:center;justify-content:center}.align-top{-ms-flex-align:start;align-items:flex-start}.align-self-top{-ms-flex-item-align:start;align-self:flex-start}.align-bottom{-ms-flex-align:end;align-items:flex-end}.align-self-bottom{-ms-flex-item-align:end;align-self:flex-end}.align-middle{-ms-flex-align:center;align-items:center}.align-self-middle{-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center}.align-stretch{-ms-flex-align:stretch;align-items:stretch}.align-self-stretch{-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch}.align-center-middle{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.small-order-1{-ms-flex-order:1;order:1}.small-order-2{-ms-flex-order:2;order:2}.small-order-3{-ms-flex-order:3;order:3}.small-order-4{-ms-flex-order:4;order:4}.small-order-5{-ms-flex-order:5;order:5}.small-order-6{-ms-flex-order:6;order:6}@media print, screen and (min-width: 40em){.medium-order-1{-ms-flex-order:1;order:1}.medium-order-2{-ms-flex-order:2;order:2}.medium-order-3{-ms-flex-order:3;order:3}.medium-order-4{-ms-flex-order:4;order:4}.medium-order-5{-ms-flex-order:5;order:5}.medium-order-6{-ms-flex-order:6;order:6}}@media print, screen and (min-width: 64em){.large-order-1{-ms-flex-order:1;order:1}.large-order-2{-ms-flex-order:2;order:2}.large-order-3{-ms-flex-order:3;order:3}.large-order-4{-ms-flex-order:4;order:4}.large-order-5{-ms-flex-order:5;order:5}.large-order-6{-ms-flex-order:6;order:6}}.flex-container{display:-ms-flexbox;display:flex}.flex-child-auto{-ms-flex:1 1 auto;flex:1 1 auto}.flex-child-grow{-ms-flex:1 0 auto;flex:1 0 auto}.flex-child-shrink{-ms-flex:0 1 auto;flex:0 1 auto}.flex-dir-row{-ms-flex-direction:row;flex-direction:row}.flex-dir-row-reverse{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.flex-dir-column{-ms-flex-direction:column;flex-direction:column}.flex-dir-column-reverse{-ms-flex-direction:column-reverse;flex-direction:column-reverse}@media print, screen and (min-width: 40em){.medium-flex-container{display:-ms-flexbox;display:flex}.medium-flex-child-auto{-ms-flex:1 1 auto;flex:1 1 auto}.medium-flex-child-grow{-ms-flex:1 0 auto;flex:1 0 auto}.medium-flex-child-shrink{-ms-flex:0 1 auto;flex:0 1 auto}.medium-flex-dir-row{-ms-flex-direction:row;flex-direction:row}.medium-flex-dir-row-reverse{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.medium-flex-dir-column{-ms-flex-direction:column;flex-direction:column}.medium-flex-dir-column-reverse{-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media print, screen and (min-width: 64em){.large-flex-container{display:-ms-flexbox;display:flex}.large-flex-child-auto{-ms-flex:1 1 auto;flex:1 1 auto}.large-flex-child-grow{-ms-flex:1 0 auto;flex:1 0 auto}.large-flex-child-shrink{-ms-flex:0 1 auto;flex:0 1 auto}.large-flex-dir-row{-ms-flex-direction:row;flex-direction:row}.large-flex-dir-row-reverse{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.large-flex-dir-column{-ms-flex-direction:column;flex-direction:column}.large-flex-dir-column-reverse{-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.menu{padding:0;margin:0;list-style:none;position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}[data-whatinput='mouse'] .menu li{outline:0}.menu a,.menu .button{line-height:1;text-decoration:none;display:block;padding:0.7rem 1rem}.menu input,.menu select,.menu a,.menu button{margin-bottom:0}.menu input{display:inline-block}.menu,.menu.horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.menu.vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-direction:column;flex-direction:column}.menu.expanded li{-ms-flex:1 1 0px;flex:1 1 0px}.menu.simple{-ms-flex-align:center;align-items:center}.menu.simple li+li{margin-left:1rem}.menu.simple a{padding:0}@media print, screen and (min-width: 40em){.menu.medium-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.menu.medium-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-direction:column;flex-direction:column}.menu.medium-expanded li{-ms-flex:1 1 0px;flex:1 1 0px}.menu.medium-simple li{-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 64em){.menu.large-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.menu.large-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-direction:column;flex-direction:column}.menu.large-expanded li{-ms-flex:1 1 0px;flex:1 1 0px}.menu.large-simple li{-ms-flex:1 1 0px;flex:1 1 0px}}.menu.nested{margin-right:0;margin-left:1rem}.menu.icons a{display:-ms-flexbox;display:flex}.menu.icon-top a,.menu.icon-right a,.menu.icon-bottom a,.menu.icon-left a{display:-ms-flexbox;display:flex}.menu.icon-left li a{-ms-flex-flow:row nowrap;flex-flow:row nowrap}.menu.icon-left li a img,.menu.icon-left li a i,.menu.icon-left li a svg{margin-right:.25rem}.menu.icon-right li a{-ms-flex-flow:row nowrap;flex-flow:row nowrap}.menu.icon-right li a img,.menu.icon-right li a i,.menu.icon-right li a svg{margin-left:.25rem}.menu.icon-top li a{-ms-flex-flow:column nowrap;flex-flow:column nowrap}.menu.icon-top li a img,.menu.icon-top li a i,.menu.icon-top li a svg{-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch;margin-bottom:.25rem;text-align:center}.menu.icon-bottom li a{-ms-flex-flow:column nowrap;flex-flow:column nowrap}.menu.icon-bottom li a img,.menu.icon-bottom li a i,.menu.icon-bottom li a svg{-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch;margin-bottom:.25rem;text-align:center}.menu .is-active>a{background:#1779ba;color:#fefefe}.menu .active>a{background:#1779ba;color:#fefefe}.menu.align-left{-ms-flex-pack:start;justify-content:flex-start}.menu.align-right li{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.menu.align-right li .submenu li{-ms-flex-pack:start;justify-content:flex-start}.menu.align-right.vertical li{display:block;text-align:right}.menu.align-right.vertical li .submenu li{text-align:right}.menu.align-right .nested{margin-right:1rem;margin-left:0}.menu.align-center li{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.menu.align-center li .submenu li{-ms-flex-pack:start;justify-content:flex-start}.menu .menu-text{padding:0.7rem 1rem;font-weight:bold;line-height:1;color:inherit}.menu-centered>.menu{-ms-flex-pack:center;justify-content:center}.menu-centered>.menu li{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.menu-centered>.menu li .submenu li{-ms-flex-pack:start;justify-content:flex-start}.no-js [data-responsive-menu] ul{display:none}.dropdown.menu>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu a{padding:0.7rem 1rem}[data-whatinput='mouse'] .dropdown.menu a{outline:0}.dropdown.menu .is-active>a{background:transparent;color:#1779ba}.no-js .dropdown.menu ul{display:none}.dropdown.menu .nested.is-dropdown-submenu{margin-right:0;margin-left:0}.dropdown.menu.vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.vertical>li.opens-left>.is-dropdown-submenu{right:100%;left:auto;top:0}.dropdown.menu.vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}@media print, screen and (min-width: 40em){.dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.medium-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.medium-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.medium-vertical>li.opens-left>.is-dropdown-submenu{right:100%;left:auto;top:0}.dropdown.menu.medium-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}}@media print, screen and (min-width: 64em){.dropdown.menu.large-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.large-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.large-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.large-vertical>li.opens-left>.is-dropdown-submenu{right:100%;left:auto;top:0}.dropdown.menu.large-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}}.dropdown.menu.align-right .is-dropdown-submenu.first-sub{top:100%;right:0;left:auto}.is-dropdown-menu.vertical{width:100px}.is-dropdown-menu.vertical.align-right{float:right}.is-dropdown-submenu-parent{position:relative}.is-dropdown-submenu-parent a::after{position:absolute;top:50%;right:5px;left:auto;margin-top:-6px}.is-dropdown-submenu-parent.opens-inner>.is-dropdown-submenu{top:100%;left:auto}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu{right:100%;left:auto}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu{right:auto;left:100%}.is-dropdown-submenu{position:absolute;top:0;left:100%;z-index:1;display:none;min-width:200px;border:none;background:#fefefe}.dropdown .is-dropdown-submenu a{padding:0.7rem 1rem}.is-dropdown-submenu>li{width:100%}.is-dropdown-submenu.js-dropdown-active{display:block}.is-drilldown{position:relative;overflow:hidden}.is-drilldown li{display:block}.is-drilldown.animate-height{transition:height 0.5s}.drilldown a{padding:0.7rem 1rem;background:#fefefe}.drilldown .is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;width:100%;background:#fefefe;transition:transform 0.15s linear}.drilldown .is-drilldown-submenu.is-active{z-index:1;display:block;-ms-transform:translateX(-100%);transform:translateX(-100%)}.drilldown .is-drilldown-submenu.is-closing{-ms-transform:translateX(100%);transform:translateX(100%)}.drilldown .is-drilldown-submenu a{padding:0.7rem 1rem}.drilldown .nested.is-drilldown-submenu{margin-right:0;margin-left:0}.drilldown .drilldown-submenu-cover-previous{min-height:100%}.title-bar{padding:.5rem;background:#0a0a0a;color:#fefefe;display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}.title-bar .menu-icon{margin-left:.7rem;margin-right:.7rem}.title-bar-left,.title-bar-right{-ms-flex:1 1 0px;flex:1 1 0px}.title-bar-right{text-align:right}.title-bar-title{display:inline-block;vertical-align:middle;font-weight:bold}.callout{position:relative;margin:0 0 1rem 0;padding:1rem;border:1px solid rgba(10,10,10,0.25);border-radius:0;background-color:#fff;color:#0a0a0a}.callout>:first-child{margin-top:0}.callout>:last-child{margin-bottom:0}.callout.primary{background-color:#d7ecfa;color:#0a0a0a}.callout.secondary{background-color:#eaeaea;color:#0a0a0a}.callout.success{background-color:#e1faea;color:#0a0a0a}.callout.warning{background-color:#fff3d9;color:#0a0a0a}.callout.alert{background-color:#f7e4e1;color:#0a0a0a}.callout.small{padding-top:.5rem;padding-right:.5rem;padding-bottom:.5rem;padding-left:.5rem}.callout.large{padding-top:3rem;padding-right:3rem;padding-bottom:3rem;padding-left:3rem}table{border-collapse:collapse;width:100%;margin-bottom:1rem;border-radius:0}table thead,table tbody,table tfoot{border:1px solid #f1f1f1;background-color:#fefefe}table caption{padding:.5rem .625rem .625rem;font-weight:bold}table thead{background:#f8f8f8;color:#0a0a0a}table tfoot{background:#f1f1f1;color:#0a0a0a}table thead tr,table tfoot tr{background:transparent}table thead th,table thead td,table tfoot th,table tfoot td{padding:.5rem .625rem .625rem;font-weight:bold;text-align:left}table tbody th,table tbody td{padding:.5rem .625rem .625rem}table tbody tr:nth-child(even){border-bottom:0;background-color:#f1f1f1}table.unstriped tbody{background-color:#fefefe}table.unstriped tbody tr{border-bottom:0;border-bottom:1px solid #f1f1f1;background-color:#fefefe}@media screen and (max-width: 63.9375em){table.stack thead{display:none}table.stack tfoot{display:none}table.stack tr,table.stack th,table.stack td{display:block}table.stack td{border-top:0}}table.scroll{display:block;width:100%;overflow-x:auto}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:not(.unstriped) tr:nth-of-type(even):hover{background-color:#ececec}.table-scroll{overflow-x:auto}.table-scroll table{width:auto}html,body{overflow-x:hidden}#header{background:#fdab1b}@media print, screen and (min-width: 40em){#header{height:5.1875rem}}#main-menu.medium-horizontal{-ms-flex:none;flex:none;display:block}#main-menu.medium-horizontal .menu-item.menu-level-0{display:table-cell;vertical-align:middle}#logo{display:block;padding-top:10px;padding-bottom:10px}#logo img{max-width:8rem}table{margin:2rem 0}table th{white-space:nowrap}table th p{margin-bottom:0}table td{vertical-align:top}#main{background:#dceffd;padding-top:2.5rem;padding-bottom:6.875rem}#main .layout-content{width:100%}.front #main{padding-bottom:0}.highlighted #block-frontpagehead{background:#b1d8f3 url("../images/front-banner/competition-bg.svg") 50% 50% no-repeat;background-size:cover;border-bottom:2rem solid #ffbd66}.highlighted #block-frontpagehead .left-bg{background:url("../images/front-banner/head-left.svg") 50% 100% no-repeat;background-size:100% auto}.highlighted #block-frontpagehead .right-bg{background:url("../images/front-banner/head-right.svg") 50% 100% no-repeat;background-size:100% auto}.highlighted #block-frontpagehead .front-content{text-align:center}@media print, screen and (min-width: 40em){.highlighted #block-frontpagehead .left-bg,.highlighted #block-frontpagehead .right-bg{height:21.875rem}}@media print, screen and (min-width: 64em){.highlighted #block-frontpagehead .left-bg,.highlighted #block-frontpagehead .right-bg{height:25rem}}.highlighted #block-frontpagehead .badge{width:18.75rem;height:18.75rem;background:url("../images/front-banner/badge.png") 50% 50% no-repeat;background-size:90%;position:relative;left:50%;margin-left:-9.375rem}@media screen and (max-width: 39.9375em){.highlighted #block-frontpagehead .badge{margin-top:1rem;margin-bottom:1rem}}.highlighted #block-frontpagehead .badge a{display:block;position:absolute;top:0;left:0;width:100%;height:100%;z-index:99;text-indent:-9999px}.highlighted #block-bestill .icon{width:310px;height:267px;background:url("../images/shopping-cart.png") 50% 50% no-repeat;background-size:100%;position:absolute;left:50%;margin-left:-425px}.highlighted #block-bestill .info{overflow:hidden;margin:3rem 0}@media screen and (max-width: 39.9375em){.highlighted #block-bestill .info{text-align:center;margin:1rem 0;background:none}}.highlighted #block-bestill .info .text{color:#fefefe;font-size:2.5rem;line-height:normal;font-family:Roboto;font-weight:300}@media print, screen and (min-width: 40em){.highlighted #block-bestill .info .text{position:relative;left:50%;margin-left:-80px;margin-bottom:1.5rem}}.highlighted #block-bestill .info a{display:block;width:160px;height:80px;max-width:98%;background:url("../images/btn-bestil.png") 50% 50% no-repeat;background-size:100%;text-indent:-9999px;overflow:hidden}#block-nyttigavite{background:#373c43 url("../images/bottom-bg.svg") 50% 50% no-repeat;color:#fefefe;background-size:cover}#block-nyttigavite h4{margin-bottom:1.5rem}@media screen and (max-width: 39.9375em){#block-nyttigavite h4{font-size:1.5rem;font-weight:bold;padding-bottom:.5rem;border-bottom:1px solid #fefefe;margin-bottom:1rem}}#block-nyttigavite .row{padding-top:1.875rem;padding-bottom:5.8125rem}@media screen and (max-width: 39.9375em){#block-nyttigavite .row{padding-bottom:1.875rem}}#block-nyttigavite .row h5{font-weight:bold;font-size:1.3rem}#block-nyttigavite .row a{color:#fdad1b;text-decoration:underline;font-weight:bold}#block-nyttigavite .row .col-1 .icon{height:157px;background:url("../images/icon-id.png") 50% 50% no-repeat;background-size:100%}#block-nyttigavite .row .col-2 .icon{height:183px;background:url("../images/icon-6pack.png") 50% 50% no-repeat;background-size:100%}#block-nyttigavite .row .col-3 .icon{height:274px;height:180px;background:url("../images/icon-bottles.png") 50% 50% no-repeat;background-size:64%;position:relative;top:-10px}#block-nyttigavite .row .col-4 .icon{height:272px;background:url("../images/icon-bottlesS.png") 50% 50% no-repeat;background-size:100%;position:relative;top:-10px}#block-nyttigavite .row .column .icon,#block-nyttigavite .row .columns .icon{width:174px;background-position:50% 0;float:left;margin-right:2rem}@media screen and (max-width: 39.9375em){#block-nyttigavite .row .column .icon,#block-nyttigavite .row .columns .icon{display:none}}#footer{background:#fdab1b;min-height:9rem;position:relative}@media print, screen and (min-width: 40em){#footer #block-os-theme-footer{padding-top:3.125rem}}#footer #block-os-theme-footer ul.menu{text-align:center;padding:2rem 0}#footer #block-os-theme-footer ul.menu a{color:#fefefe;font-size:1.2rem;font-weight:bold}@media screen and (max-width: 39.9375em){#footer #block-os-theme-footer ul.menu a{text-align:center;border-bottom:1px solid #fefefe}}@media screen and (max-width: 39.9375em){#footer #block-os-theme-footer ul.menu li:first-child a{border-top:1px solid #fefefe}}#footer #footer-text{margin:0;margin-bottom:2rem;color:#a36c01}@media screen and (max-width: 39.9375em){#footer #footer-text .ftext-item{display:block;text-align:center}}#footer #footer-text .sep{color:#fefefe}#footer #block-footerbadge{position:absolute;top:-5.8125rem;left:50%;margin-left:-5rem}#footer #block-footerbadge .badge{width:10rem;height:10rem;background:url("../images/badge-skolen.svg") 50% 50% no-repeat;background-size:90%}.fp-articles h3.title{margin-top:2rem;margin-bottom:2rem}@media screen and (max-width: 39.9375em){.fp-articles h3.title{font-size:2rem}}.fp-articles .graphic{height:500px;background:url("../images/guy_left.svg") 50% 50% no-repeat;background-size:auto 100%}.fp-articles .views-row .wrapper{background:#fefefe;border-radius:15px;margin-bottom:3rem;position:relative;padding:20px}@media print, screen and (min-width: 40em){.fp-articles .views-row .wrapper:after{content:'';width:0px;height:0px;border:25px solid transparent;border-right-color:#fefefe;border-bottom-color:#fefefe;position:absolute;top:15%;left:-45px}}.fp-articles .views-row .wrapper .more{position:absolute;bottom:-20px;right:10%}.fp-articles .views-row .wrapper .more a{color:#fefefe;display:inline-block;font-size:1.5rem;font-family:'Oleo Script';padding:0 45px 2px 45px;background:url("../images/button.svg") 50% 0 no-repeat;background-size:100% auto}.fp-articles .views-row .wrapper .more a:hover{background-position:50% 100%}@media print, screen and (min-width: 40em){.layout-sidebar-first{border-left:1px solid #b1d8f3}}.layout-sidebar-first h2{font-size:1.5rem}@media print, screen and (min-width: 40em){.layout-sidebar-first h2{font-size:3rem}}.contacts{margin-top:2rem}.contacts .column,.contacts .columns{margin-bottom:2rem}.contacts .column:last-child,.contacts .columns:last-child{margin-bottom:0}.contacts .column .wrapper .name,.contacts .columns .wrapper .name{font-size:1.1rem;color:#0e8780}.toolbar-tray-horizontal li{float:none !important}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJfc2V0dGluZ3Muc2NzcyIsIl9mb3VuZGF0aW9uX2ljb25zLnNjc3MiLCJfcHJpbWFyeV9tZW51LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIl9iZXN0aWxsaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmVydGljYWwtcmh5dGhtLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19mbGV4LWdyaWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsImFwcC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRGQzZDUSx5RUFDQSxXQUNSLCtCQUNlLDBEQUNSLHVRQUl1QyxtQkFDL0IsaUJBQ0QsQ0FBQSxvL0xDd09GLCtCQUNHLGtCQUNELG1CQUNDLG9CQUNDLG9CQUNFLGNBQ0wsbUNBQ2EscUJBQ2YsdUJBQ1EsQ0FBQSx3QkFHSCxlQUFtQixDQUFBLGlCQUMxQixlQUFtQixDQUFBLHdCQUNaLGVBQW1CLENBQUEseUJBQ2xCLGVBQW1CLENBQUEsc0JBQ3RCLGVBQW1CLENBQUEsdUJBQ2xCLGVBQW1CLENBQUEsa0JBQ3hCLGVBQW1CLENBQUEsb0JBQ2pCLGVBQW1CLENBQUEsbUJBQ3BCLGVBQW1CLENBQUEsc0JBQ2hCLGVBQW1CLENBQUEsc0JBQ25CLGVBQW1CLENBQUEsdUJBQ2xCLGVBQW1CLENBQUEsb0JBQ3RCLGVBQW1CLENBQUEsMkJBQ1osZUFBbUIsQ0FBQSx5QkFDckIsZUFBbUIsQ0FBQSxxQkFDdkIsZUFBbUIsQ0FBQSxzQkFDbEIsZUFBbUIsQ0FBQSxlQUMxQixlQUFtQixDQUFBLG9CQUNkLGVBQW1CLENBQUEsbUJBQ3BCLGVBQW1CLENBQUEsNEJBQ1YsZUFBbUIsQ0FBQSx5QkFDdEIsZUFBbUIsQ0FBQSx3QkFDcEIsZUFBbUIsQ0FBQSx3QkFDbkIsZUFBbUIsQ0FBQSwwQkFDakIsZUFBbUIsQ0FBQSxtQkFDMUIsZUFBbUIsQ0FBQSxpQkFDckIsZUFBbUIsQ0FBQSxxQkFDZixlQUFtQixDQUFBLGdCQUN4QixlQUFtQixDQUFBLHlCQUNWLGVBQW1CLENBQUEsZ0JBQzVCLGVBQW1CLENBQUEsb0JBQ2YsZUFBbUIsQ0FBQSxtQkFDcEIsZUFBbUIsQ0FBQSxxQkFDakIsZUFBbUIsQ0FBQSxzQkFDbEIsZUFBbUIsQ0FBQSxpQkFDeEIsZUFBbUIsQ0FBQSxvQkFDaEIsZUFBbUIsQ0FBQSxrQkFDckIsZUFBbUIsQ0FBQSxpQkFDcEIsZUFBbUIsQ0FBQSxvQkFDaEIsZUFBbUIsQ0FBQSwyQkFDWixlQUFtQixDQUFBLDRCQUNsQixlQUFtQixDQUFBLHFCQUMxQixlQUFtQixDQUFBLGlCQUN2QixlQUFtQixDQUFBLDBCQUNWLGVBQW1CLENBQUEsaUJBQzVCLGVBQW1CLENBQUEseUJBQ1gsZUFBbUIsQ0FBQSwwQkFDbEIsZUFBbUIsQ0FBQSx5QkFDcEIsZUFBbUIsQ0FBQSxtQkFDekIsZUFBbUIsQ0FBQSxvQkFDbEIsZUFBbUIsQ0FBQSxtQkFDcEIsZUFBbUIsQ0FBQSxvQkFDbEIsZUFBbUIsQ0FBQSx1QkFDaEIsZUFBbUIsQ0FBQSxnQkFDMUIsZUFBbUIsQ0FBQSxpQkFDbEIsZUFBbUIsQ0FBQSxnQkFDcEIsZUFBbUIsQ0FBQSxvQkFDZixlQUFtQixDQUFBLG9CQUNuQixlQUFtQixDQUFBLG9CQUNuQixlQUFtQixDQUFBLG1CQUNwQixlQUFtQixDQUFBLG1CQUNuQixlQUFtQixDQUFBLHFCQUNqQixlQUFtQixDQUFBLG1CQUNyQixlQUFtQixDQUFBLG1CQUNuQixlQUFtQixDQUFBLHVCQUNmLGVBQW1CLENBQUEsa0JBQ3hCLGVBQW1CLENBQUEsb0JBQ2pCLGVBQW1CLENBQUEsaUJBQ3RCLGVBQW1CLENBQUEsb0JBQ2hCLGVBQW1CLENBQUEsZ0JBQ3ZCLGVBQW1CLENBQUEsZUFDcEIsZUFBbUIsQ0FBQSx3QkFDVixlQUFtQixDQUFBLHlCQUNsQixlQUFtQixDQUFBLGtCQUMxQixlQUFtQixDQUFBLGtCQUNuQixlQUFtQixDQUFBLHFCQUNoQixlQUFtQixDQUFBLGdCQUN4QixlQUFtQixDQUFBLHNCQUNiLGVBQW1CLENBQUEsdUJBQ2xCLGVBQW1CLENBQUEsa0JBQ3hCLGVBQW1CLENBQUEsZ0JBQ3JCLGVBQW1CLENBQUEsc0JBQ2IsZUFBbUIsQ0FBQSxxQkFDcEIsZUFBbUIsQ0FBQSw0QkFDWixlQUFtQixDQUFBLHFCQUMxQixlQUFtQixDQUFBLHVCQUNqQixlQUFtQixDQUFBLHFCQUNyQixlQUFtQixDQUFBLHVCQUNqQixlQUFtQixDQUFBLGlCQUN6QixlQUFtQixDQUFBLGdCQUNwQixlQUFtQixDQUFBLGlCQUNsQixlQUFtQixDQUFBLHVCQUNiLGVBQW1CLENBQUEsdUJBQ25CLGVBQW1CLENBQUEsZ0JBQzFCLGVBQW1CLENBQUEsa0JBQ2pCLGVBQW1CLENBQUEsZUFDdEIsZUFBbUIsQ0FBQSxrQkFDaEIsZUFBbUIsQ0FBQSxrQkFDbkIsZUFBbUIsQ0FBQSxxQkFDaEIsZUFBbUIsQ0FBQSxnQkFDeEIsZUFBbUIsQ0FBQSxnQkFDbkIsZUFBbUIsQ0FBQSx1QkFDWixlQUFtQixDQUFBLHVCQUNuQixlQUFtQixDQUFBLDJCQUNmLGVBQW1CLENBQUEsZ0JBQzlCLGVBQW1CLENBQUEsZ0JBQ25CLGVBQW1CLENBQUEsZ0JBQ25CLGVBQW1CLENBQUEsNEJBQ1AsZUFBbUIsQ0FBQSxnQkFDL0IsZUFBbUIsQ0FBQSx1QkFDWixlQUFtQixDQUFBLHVCQUNuQixlQUFtQixDQUFBLGdCQUMxQixlQUFtQixDQUFBLGVBQ3BCLGVBQW1CLENBQUEsa0JBQ2hCLGVBQW1CLENBQUEscUJBQ2hCLGVBQW1CLENBQUEsc0JBQ2xCLGVBQW1CLENBQUEsd0JBQ2pCLGVBQW1CLENBQUEsaUJBQzFCLGVBQW1CLENBQUEseUJBQ1gsZUFBbUIsQ0FBQSxrQkFDMUIsZUFBbUIsQ0FBQSxtQkFDbEIsZUFBbUIsQ0FBQSxxQkFDakIsZUFBbUIsQ0FBQSxpQkFDdkIsZUFBbUIsQ0FBQSxnQkFDcEIsZUFBbUIsQ0FBQSxtQkFDaEIsZUFBbUIsQ0FBQSxzQkFDaEIsZUFBbUIsQ0FBQSxvQkFDckIsZUFBbUIsQ0FBQSxxQkFDbEIsZUFBbUIsQ0FBQSxvQkFDcEIsZUFBbUIsQ0FBQSx1QkFDaEIsZUFBbUIsQ0FBQSxvQkFDdEIsZUFBbUIsQ0FBQSxxQkFDbEIsZUFBbUIsQ0FBQSwyQkFDYixlQUFtQixDQUFBLDJCQUNuQixlQUFtQixDQUFBLDJCQUNuQixlQUFtQixDQUFBLHVCQUN2QixlQUFtQixDQUFBLHVCQUNuQixlQUFtQixDQUFBLHlCQUNqQixlQUFtQixDQUFBLG9CQUN4QixlQUFtQixDQUFBLHVCQUNoQixlQUFtQixDQUFBLHVCQUNuQixlQUFtQixDQUFBLGdCQUMxQixlQUFtQixDQUFBLHdCQUNYLGVBQW1CLENBQUEscUJBQ3RCLGVBQW1CLENBQUEsaUJBQ3ZCLGVBQW1CLENBQUEsZUFDckIsZUFBbUIsQ0FBQSxrQkFDaEIsZUFBbUIsQ0FBQSxrQkFDbkIsZUFBbUIsQ0FBQSxpQkFDcEIsZUFBbUIsQ0FBQSx1QkFDYixlQUFtQixDQUFBLHNCQUNwQixlQUFtQixDQUFBLGdCQUN6QixlQUFtQixDQUFBLGdCQUNuQixlQUFtQixDQUFBLGlCQUNsQixlQUFtQixDQUFBLGlCQUNuQixlQUFtQixDQUFBLG9CQUNoQixlQUFtQixDQUFBLHFCQUNsQixlQUFtQixDQUFBLDZCQUNYLGVBQW1CLENBQUEsaUJBQy9CLGVBQW1CLENBQUEsc0JBQ2QsZUFBbUIsQ0FBQSw2QkFDWixlQUFtQixDQUFBLGtCQUM5QixlQUFtQixDQUFBLGlCQUNwQixlQUFtQixDQUFBLGtCQUNsQixlQUFtQixDQUFBLG1CQUNsQixlQUFtQixDQUFBLGdDQUNOLGVBQW1CLENBQUEsbUJBQ2hDLGVBQW1CLENBQUEsc0JBQ2hCLGVBQW1CLENBQUEsa0JBQ3ZCLGVBQW1CLENBQUEsZUFDdEIsZUFBbUIsQ0FBQSx1QkFDWCxlQUFtQixDQUFBLGdCQUMxQixlQUFtQixDQUFBLGlCQUNsQixlQUFtQixDQUFBLHlCQUNYLGVBQW1CLENBQUEsa0JBQzFCLGVBQW1CLENBQUEsd0JBQ2IsZUFBbUIsQ0FBQSx5QkFDbEIsZUFBbUIsQ0FBQSxtQkFDekIsZUFBbUIsQ0FBQSxpQkFDckIsZUFBbUIsQ0FBQSx3QkFDWixlQUFtQixDQUFBLHdCQUNuQixlQUFtQixDQUFBLHlCQUNsQixlQUFtQixDQUFBLDBCQUNsQixlQUFtQixDQUFBLHdCQUNyQixlQUFtQixDQUFBLDBCQUNqQixlQUFtQixDQUFBLHVCQUN0QixlQUFtQixDQUFBLDBCQUNoQixlQUFtQixDQUFBLDRCQUNqQixlQUFtQixDQUFBLGdDQUNmLGVBQW1CLENBQUEsOEJBQ3JCLGVBQW1CLENBQUEsdUJBQzFCLGVBQW1CLENBQUEsMkJBQ2YsZUFBbUIsQ0FBQSx3QkFDdEIsZUFBbUIsQ0FBQSwwQkFDakIsZUFBbUIsQ0FBQSwyQkFDbEIsZUFBbUIsQ0FBQSwyQkFDbkIsZUFBbUIsQ0FBQSx5QkFDckIsZUFBbUIsQ0FBQSx5QkFDbkIsZUFBbUIsQ0FBQSw2QkFDZixlQUFtQixDQUFBLDhCQUNsQixlQUFtQixDQUFBLHlCQUN4QixlQUFtQixDQUFBLDhCQUNkLGVBQW1CLENBQUEsOEJBQ25CLGVBQW1CLENBQUEsc0JBQzNCLGVBQW1CLENBQUEsNEJBQ2IsZUFBbUIsQ0FBQSx5QkFDdEIsZUFBbUIsQ0FBQSx5QkFDbkIsZUFBbUIsQ0FBQSwyQkFDakIsZUFBbUIsQ0FBQSx5QkFDckIsZUFBbUIsQ0FBQSwwQkFDbEIsZUFBbUIsQ0FBQSx3QkFDckIsZUFBbUIsQ0FBQSx1QkFDcEIsZUFBbUIsQ0FBQSx5QkFDakIsZUFBbUIsQ0FBQSw0QkFDaEIsZUFBbUIsQ0FBQSx1QkFDeEIsZUFBbUIsQ0FBQSx5QkFDakIsZUFBbUIsQ0FBQSw2QkFDZixlQUFtQixDQUFBLHdCQUN4QixlQUFtQixDQUFBLCtCQUNaLGVBQW1CLENBQUEsMkJBQ3ZCLGVBQW1CLENBQUEsMEJBQ3BCLGVBQW1CLENBQUEsMEJBQ25CLGVBQW1CLENBQUEsaUNBQ1osZUFBbUIsQ0FBQSx3QkFDNUIsZUFBbUIsQ0FBQSw4QkFDYixlQUFtQixDQUFBLDRCQUNyQixlQUFtQixDQUFBLHlCQUN0QixlQUFtQixDQUFBLDBCQUNsQixlQUFtQixDQUFBLHdCQUNyQixlQUFtQixDQUFBLDBCQUNqQixlQUFtQixDQUFBLHVCQUN0QixlQUFtQixDQUFBLHdCQUNsQixlQUFtQixDQUFBLHVCQUNwQixlQUFtQixDQUFBLDBCQUNoQixlQUFtQixDQUFBLHlCQUNwQixlQUFtQixDQUFBLHVCQUNyQixlQUFtQixDQUFBLGlCQUN6QixlQUFtQixDQUFBLGdCQUNwQixlQUFtQixDQUFBLGdCQUNuQixlQUFtQixDQUFBLHlCQUNWLGVBQW1CLENBQUEscUJBQ3ZCLGVBQW1CLENBQUEsdUJBQ2pCLGVBQW1CLENBQUEsNEJBQ2QsZUFBbUIsQ0FBQSwyQkFDcEIsZUFBbUIsQ0FBQSxzQkFDeEIsZUFBbUIsQ0FBQSxrQkFDdkIsZUFBbUIsQ0FBQSxnQ0FDTCxlQUFtQixDQUFBLHFCQUM5QixlQUFtQixDQUFBLHNCQUNsQixlQUFtQixDQUFBLHNCQUNuQixlQUFtQixDQUFBLGtCQUN2QixlQUFtQixDQUFBLDBCQUNYLGVBQW1CLENBQUEsd0JBQ3JCLGVBQW1CLENBQUEsaUJBQzFCLGVBQW1CLENBQUEsNkJBQ1AsZUFBbUIsQ0FBQSxzQkFDMUIsZUFBbUIsQ0FBQSw4QkFDWCxlQUFtQixDQUFBLDhCQUNuQixlQUFtQixDQUFBLGtCQUMvQixlQUFtQixDQUFBLGlCQUNwQixlQUFtQixDQUFBLGlCQUNuQixlQUFtQixDQUFBLGtCQUNsQixlQUFtQixDQUFBLHFCQUNoQixlQUFtQixDQUFBLDRCQUNaLGVBQW1CLENBQUEsa0JBQzdCLGVBQW1CLENBQUEsa0JBQ25CLGVBQW1CLENBQUEsd0JBQ2IsZUFBbUIsQ0FBQSxrQkFDekIsZUFBbUIsQ0FBQSxlQUN0QixlQUFtQixDQUFBLGlCQUNqQixlQUFtQixDQUFBLHVCQUNiLGVBQW1CLENBQUEseUJBQ2pCLGVBQW1CLENBQUEsa0JBQzFCLGVBQW1CLENBQUEsZUFDdEIsZUFBbUIsQ0FBQSxzQkFDWixlQUFtQixDQUFBLGtCQUN2QixlQUFtQixDQUFBLGtCQUNuQixlQUFtQixDQUFBLG9CQUNqQixlQUFtQixDQUFBLGFBQzFCLGVBQW1CLENBQUEsZUFDakIsZUFBbUIsQ0FBQSxtQkFDZixlQUFtQixDQUFBLG9CQUNsQixlQUFtQixDQUFBLFlBQVksaUJDbmtCL0IsQ0FBQSwyQ0NpS3VCLGlCRC9KakMsV0FFVyxDQUFBLENBQUEsMkNDNkpzQixnRER4SjNCLGdCRTZFSSxDQUFBLENBQUEsMkNEMkV1QixrQ0QxSnhCLGdCRStFQyxDQUFBLENBQUEsNEJGbEVOLGVBQ2MsQ0FBQSw4QkFEWixjQUlTLGlCQUNJLGlCQUNFLG9CQUNKLENBQUEsd0NBSlYsYUY2Q0QsQ0FBQSwrQkVuQ0EsWUFDVyxDQUFBLHVDQUVULDRCQUllLG1CQUNGLENBQUEsMERBTEwsYUFFRyxDQUFBLGlEQUZILFNBUUQsU0FDQyxDQUFBLDBDQUdSLGdDRmdCRyxpQkVkVyxDQUFBLDhFQUVjLGtCQUNULENBQUEsNENBTGpCLGNGaUJFLHFCRVBTLFdBQ0Ysc0JGdVVNLG1CRXJVQSxjQUNGLENBQUEsK0JBT3JCLHNCQUNTLDJCQUNHLENBQUEsdUNBRVIsa0JGTEEsQ0FBQSwwQ0VRQSxrQkZSQSxDQUFBLHVERVFFLGtCQUljLCtCRmhCWCxDQUFBLHlERWVXLFdBS0gsY0FDRSxzQkY2U0ksYUFqVWIsQ0FBQSxxREV5QkYsY0FDUyxTQUNILGVBQ04sQ0FBYSwwRUFFWCxrQkFFWSxjQUNELFFBQ0wsWUFDSSxrQkZwQ1gsQ0FBQSw0RUVnQ29CLGNBUU4scUJGMFJBLENBQUEsa0ZFdlJULGtCQUNZLFNBQ0wsVUFDRSxDQUFBLFFBQ1IsZ0JBWUwsQ0FBQSxtQkFFWixrQkd0QlUscUJBQ0Qsc0JBQ08sV0hxQnFGLFlBQWUsY0dsQjVHLENBQUEsMEJBR1Asa0JBQ1csTUFDUCxPQUNDLGNBRUssV0FDRixXSFMwSCxtQkYxRDdILDZDQUFBLFVLdURHLENBQUUsZ0NBV0YsbUJMbkVILDRDQUFBLENBQUEsaUJLc0VILG1CTHJFRyxrQk1wRVMsQ0FBQSwwQkFDZixjQUNXLENBQUEseUNIb0tnQiwwQkdySzNCLGNBR2EsQ0FBQSxDQUFBLHdDQUdGLGtCQUNRLENBQUEsNERBR1Asb0JBQ1csQ0FBQSxnRUFDZixXQUNTLFdBQ0MsQ0FBQSwyREFHUCxtQkFDWSxlQUNKLENBQUEsa0VBRVgsZ0JBQ2UsQ0FBQSxrRUFHZixlQUNhLENBQUEsc0VBSVgsbUJBQ2MsWUFDSixnQkFDSSxpQkFDRCxpQkFDRSxZQUNMLGVBQ0csNEJBQ0YsZ0JBRUcsQ0FBQSw0RUFWVCxxQkFZTyx3QkFDVSxDQUFBLGtEQVM1QixtQkFDaUIsZUFDTCxDQUFBLHdEQUNWLFdBQ1MsVUFDQSxnQkFDSSxDQUFBLHdEQUViLFlBQ1MsU0FDQSxDQUFBLHlDSHVHWSxrREdqSHZCLGVBYUksQ0FBYSx3REFDYixXQUNTLFVBQ0EsQ0FBQSx3REFFVCxXQUNTLFVBQ0EsQ0FBQSxDQUFBLHVDQU1QLGlCQUNNLENBQUEsdUJBQ2Isa0JBS1ksQ0FBQSxpRUMzQ2YsS0FBaUUsdUJDNUJoRCxpQkRrREUsMEJBRU8sNkJBQ0ksQ0FBQSxLQUMzQixRQVlDLENBQU0sd0NBWVIsYUFDVyxDQUFBLEdBQ1YsY0VsRlEsZUZvR0csQ0FBQSxrQkFtRlosYUFDVyxDQUFBLE9BQ1YsZUM1S1csQ0FBQSxHRHlMWCx1QkFRYSxTQUNOLGdCQUNJLENBQUEsS0FDWCxhQU9VLENBQUEsSUFDVixpQ0FtQmMsYUFDRixDQUFBLEVBQUksNkJBY0csb0NBQ1ksQ0FBQSxpQkFTL0IsZUFDQyxDQUFhLFlBYVgsbUJBQ2EsMEJBQ0UsZ0NBQ0EsQ0FBQSxTQVFuQixtQkFDZSxDQUFBLFNBUWYsa0JBQ2UsQ0FBQSxjQVVmLGlDQUNlLGFBQ0YsQ0FBQSxJQUNaLGlCQU9hLENBQUEsS0FDYixzQkFPbUIsVUFDWCxDQUFBLE1BQ1IsYUFPWSxDQUFBLFFBU2IsY0FDYSxjQUNBLGtCQUNELHVCQUNNLENBQUEsSUFDakIsY0FHUyxDQUFBLElBQ1QsVUFHTSxDQUFBLFlBYVAsb0JBQ1csQ0FBQSxzQkFPQSxhQUNBLFFBQ1QsQ0FBTSxJQUNQLGlCQU9lLENBQUEsZUFPUixlQUNJLENBQUEsc0NBaUJaLHVCQ3haZSxlRDBaRixpQkFLSSxRQUVmLENBQU0sT0FDUCxnQkFPVyxDQUFBLGNBU1osbUJBQ2tCLENBQUEsMkRBWVoseUJBQ2dCLENBQUEsOEhBWW5CLGtCQUNlLFNBQ2QsQ0FBTyxrSEFPUiw2QkFDVSxDQUFBLE1BQ1YsZ0JBUVMsQ0FBQSxpQ0FTTixzQkFDUSxTQUNaLENBQU8sc0ZBUU0sV0FDTCxDQUFBLGdCQVFKLDZCQUNnQixtQkFDSixDQUFBLHlGQU9mLHVCQUNxQixDQUFBLDZCQUNyQiwwQkFTbUIsWUFDZCxDQUFBLFNBQ1AseUJBT1MsYUFDQSw2QkFDQyxDQUFBLE9BQ1Ysc0JBVWEsY0FDSCxlQUNFLFVBQ0osY0FDQSxrQkFDTSxDQUFBLFNBQ2QscUJBUVUsdUJBQ08sQ0FBQSxTQUNqQixhQU9XLENBQUEsUUFDWCxhQVlVLENBQUEsUUFDVixpQkFPVSxDQUFBLEtBQ1YsYUFPVSxDQUFBLE9BcUJWLG9CQVlVLENBQUEsU0FDVixZQU9VLENBQUEsU0FZWCxZQUNXLENBQUEsZUFDVix1RUd0aEJZLENBQUEsS0FDZCxzQkFHYSxjVnJGRyxDQUFBLHFCVTRGaEIsa0JBQ2EsQ0FBQSxLQUNiLFNBSU8sVUFDQyxtQlZ0RkYsK0RBS3NELG1CQUl4QyxnQkFwQkgsY0FTWixtQ1VrR3NCLGlDQUNDLENBQUEsSUFFNUIscUJBSVUsc0JBQ08sZUFHTCxZQUNILDhCQUNnQixDQUFBLFNBQ3pCLFlBSVMsZ0JBQ0ksZUFDWixDQUFhLE9BQ2Qsc0JBSWEsV0FDTCxlQUNQLENBQWEsNkdBU2IseUJBQ2EsQ0FBQSxPQUNaLFVBTU0sd0JBQUEsQUFDSyxxQkFETCxBQUNLLGdCQUFBLFNBQ04sZ0JBQ08sdUJBQ0QsY0FDRCxXQXZHUSxDQUFBLGdDQWdHckIsU0xSRSxDQUFPLElBQ1IsYUtvQlcsQ0FBQSxzQ0FRWixtQkFDZSxDQUFBLFlBQ2Qsd0JBSVUsQ0FBQSxXQUNWLHVCQUdVLENBQUEsb0VDaUNYLFNBQ1EsU0FDTixDQUFPLEVBQUksbUJYdElXLGtCVzZJWCxnQlg5SVEsaUNBRUksQ0FBQSxLV2tKdkIsa0JBRVksbUJBQ0MsQ0FBQSxTQUlULGlCWHROYSxtQld5TkosQ0FBQSxNQUNkLGNYaktlLG1CV3NLRCxDQUFBLDBDQVNYLCtEWDdPeUQsa0JBc0MzQyxtQkFsQ0csY0FzRFIsaUNBR1MsQ0FBQSxrSFd1THBCLGNBQ2EsYVg5UEgsQ0FBQSxPV3dRRixpQlBuUEEsZ0JKK0NRLGFXNE5FLG1CWDNOQyxDQUFBLE9XbU1YLGtCUG5QQSxnQkorQ1EsYVc0TkUsbUJYM05DLENBQUEsT1dtTVgsb0JQblBBLGdCSitDUSxhVzRORSxtQlgzTkMsQ0FBQSxPV21NWCxtQlBuUEEsZ0JKK0NRLGFXNE5FLG1CWDNOQyxDQUFBLE9XbU1YLG9CUG5QQSxnQkorQ1EsYVc0TkUsbUJYM05DLENBQUEsT1dtTVgsZVBuUEEsZ0JKK0NRLGFXNE5FLG1CWDNOQyxDQUFBLDJDRzJCWSxPUXdLdkIsY1BuUEEsQ0FBQSxPT21QQSxnQlBuUEEsQ0FBQSxPT21QQSxtQlBuUEEsQ0FBQSxPT21QQSxtQlBuUEEsQ0FBQSxPT21QQSxpQlBuUEEsQ0FBQSxPT21QQSxjUG5QQSxDQUFBLENBQUEsRU9vUkgsb0JBT1EsY1h0VEQscUJBMEZTLGNXZ09iLENBQUEsZ0JBTFQsYVg1TmtCLENBQUEsTVcyT2pCLFFBQ0UsQ0FBTSxHQUNQLFdBS00sZ0JQaFRDLFNPbVRGLG9CWGhQZSxhV21QWCxlQUNFLGdDWDVVRixhVzhVVixDQUFXLFNBTWIsbUJYMVF3Qiw0QkFrQkosZUFuQkMsQ0FBQSxHVytRcEIsaUJBSVksQ0FBQSxHQUNaLG9CWGhRZ0Isb0JBRkQsQ0FBQSxHV3dRZixtQlh0UWdCLENBQUEsd0JXOFFiLG9CWDdRb0IsZVdnUnBCLENBQWEsR0FDZCxrQlhoUm9CLENBQUEsTVd1UnJCLG9CWHJSMEIsZ0JBbkZULENBQUEsV1cyV2hCLGdCWC9TcUIscUNJckRkLDZCSnJCRSxDQUFBLHdCVzZYRixnQlhwVFcsYUF4RVgsQ0FBQSxLV29ZUCxjQUtRLG1CUHJYRCxhSnBCQSxDQUFBLFlXd1lOLFlBek9nQixDQUFBLGlCQW9QVixpQ1hsWkosWVdvWkksb0JBQ08sQ0FBRSxPQUNsQixRQUlDLENBQUEsS0FDRCxrQ1B4WVMseUJKckJFLHlCQURELHlEQWlEaUQsbUJBbkN2QyxhQVhmLENBQUEsSUFBTyxTVzJhWCx5QlB4WlEseUJKdEJDLHlEQWlEaUQsYUE5Q3RELENBQUEsV1dzYkwsaUJYbFVvQixvQkFDRyxtQkExR0gsZ0JZNUJSLGFaZ0JILENBQUEsTVlkVCxlWjhIYyxlWXpIYixDQUFXLE1BQ1osaUJaK0hjLGFZMUhiLENBQUEsUUFGRixnQkFLZ0IsQ0FBQSwwQkFJVixjQUdGLGVBQ1UsQ0FBRSxXQUNiLGVDOURpQixDQVJDLFlBT2IsZ0JBUG1CLENBQUEsYUFPbkIsaUJBUDBCLENBQUEsY0FPMUIsa0JBUGtDLENBQUEsMkNWNEpULGtCVTFKekIsZUFDWSxDQUhDLG1CQUViLGdCQUZtQixDQUFBLG9CQUVuQixpQkFGMEIsQ0FBQSxxQkFFMUIsa0JBRmtDLENBQUEsQ0FBQSwyQ1Y0SlQsaUJVMUp6QixlQUNZLENBSEMsa0JBRWIsZ0JBRm1CLENBQUEsbUJBRW5CLGlCQUYwQixDQUFBLG9CQUUxQixrQkFGa0MsQ0FBQSxDQUFBLGdCQ00xQyx1QkFBMkIsQ0FBQSxhQUUzQixFQUFBLGtDQUdrQiwyQkFHRix1QkFFTCwyQkFDTSxDQUFBLGdCQUNkLHdCQUUwQixDQUFBLGdCQUFxQix1QkFDckIsQ0FBQSxxQkFFdEIsd0JBQTJCLENBQUEscUJBQzNCLHFDQUEyQixDQUFBLHFCQUMzQixrQ0FBMkIsQ0FBQSxrQkFDOUIsNEJBQTJCLENBQUEsa0JBQzNCLDZCQUEyQixDQUFBLGtCQUMzQiw2QkFBMkIsQ0FBQSxZQUk1Qix5QkFBNEIsQ0FBQSxjQUVwQiwyQkFBdUIsQ0FBSSw0REFNeEIsVUFBUyxDQUFBLGtCQUdWLDRCQUF1QixDQUFJLGVBSXRDLHlCZGNRLHVCY1phLENBQUEsTUFDcEIsMEJBR2dCLENBQUEsT0FFZix1QkFDdUIsQ0FBQSxJQUFNLHlCQUVkLENBQUEsTUFBb0IsWUFFckIsQ0FBQSxRQUdoQixVQUVFLFFBQ0EsQ0FBQSxNQUNELHNCQUlzQixDQUFBLG9CQUFVLHNCQUlkLENBQUUsQ0FBQSxRQ21MdkIscUJBaExTLHNCQUNPLGtCZlJGLG9CZXBFSyxtQmZ5T0Usd0JlOUlELDZCQUNaLGdCQUNSLGdFQXZCK0QsaUJmOEt0RCxjZW5KVCxrQkFDWSxlQUNKLHlCZmhETSxVZXNGVCxDZnFHUSxpQ2VhYixTVjVERSxDQUFBLDRCVXBEUSx5QmZrR2MsVWVoR2pCLENmaUdNLGFlYU4sZWZURCxDQUFBLGNlU0MsZ0JmUkEsQ0FBQSxjZVFBLGlCZk5BLENBQUEsaUJlTUEsY0FqSkksV0FDRixlQUNQLGFBQ0EsQ0FBQSxnQkE4SUsseUJMNU9FLFVLMEhKLENmcUdRLDRDZW5HSCx5QkFOVyxVQVFkLENmaUdNLGtCZWFOLHlCTDNPSSxVS3lITixDZnNHWSxnRGVwR1AseUJBTlcsVUFRZCxDZmtHVSxnQmVZVix5QkwxT0UsVUt3SEosQ2ZzR1ksNENlcEdQLHlCQU5XLFVBUWQsQ2ZrR1UsZ0JlWVYseUJMek9FLFVLdUhKLENmc0dZLDRDZXBHUCx5QkFOVyxVQVFkLENma0dVLGNlWVYseUJMeE9BLFVLc0hGLENmc0dZLHdDZXBHUCx5QkFOVyxVQVFkLENma0dVLG1DZTRDZCxZQTFGSSxrQkFDQyxDQUFBLGlJQUVLLHlCZmpKQyxVZW1KUCxDZndDTSxtRGVpRE4sWUE5RkEsa0JBQ0MsQ0FBQSxpTEFFSyx5QkxyTEosVUt1TEYsQ2Z3Q00sdURlaUROLFlBOUZBLGtCQUNDLENBQUEsNkxBRUsseUJMcExGLFVLc0xKLENmeUNVLG1EZWdEVixZQTlGQSxrQkFDQyxDQUFBLGlMQUVLLHlCTG5MSixVS3FMRixDZnlDVSxtRGVnRFYsWUE5RkEsa0JBQ0MsQ0FBQSxpTEFFSyx5QkxsTEosVUtvTEYsQ2Z5Q1UsK0NlZ0RWLFlBOUZBLGtCQUNDLENBQUEscUtBRUsseUJMakxOLFVLbUxBLENmeUNVLGVlWVYseUJmeE1PLGFBQUEsQ0FBQSx5RGVpR0osNEJBQ1UsQ0FBQSwyS0FNUiw0QkFDVSxDQUFBLDBDQWVaLHFCQUxJLGFBQUEsQ0FBQSwwSEFTWCx5QmY1SFcsYUFBQSxDQUFBLHVCZW9QRix5Qkx4UkgsYUFBQSxDQUFBLDBESzRKQyxxQkFMSSxhQUFBLENBQUEsMEpBU1gseUJMaEtNLGFBQUEsQ0FBQSx5Qkt3UkcseUJMdlJELGFBQUEsQ0FBQSw4REsySkQscUJBTEksYUFBQSxDQUFBLGtLQVNYLHlCTC9KUSxhQUFBLENBQUEsdUJLdVJDLHlCTHRSSCxhQUFBLENBQUEsMERLMEpDLHFCQUxJLGFBQUEsQ0FBQSwwSkFTWCx5Qkw5Sk0sYUFBQSxDQUFBLHVCS3NSRyx5QkxyUkgsYUFBQSxDQUFBLDBES3lKQyxxQkFMSSxhQUFBLENBQUEsMEpBU1gseUJMN0pNLGFBQUEsQ0FBQSxxQktxUkcseUJMcFJMLGFBQUEsQ0FBQSxzREt3SkcscUJBTEksYUFBQSxDQUFBLGtKQVNYLHlCTDVKSSxhQUFBLENBQUEsY0t3T0EseUJmeE1PLGFBQUEsQ0FBQSxzRGVpR0osNEJBQ1UsQ0FBQSxxS0FNUiw0QkFDVSxDQUFBLHdDQWVaLHFCQUxJLGFBQUEsQ0FBQSxzSEFTWCx5QmY1SFcsYUFBQSxDQUFBLDJOZXVRVSx3QkFDQSxDQUFBLHNCQU5iLHlCTHRTRixhQUFBLENBQUEsd0RLNEpDLHFCQUxJLGFBQUEsQ0FBQSxzSkFTWCx5QkxoS00sYUFBQSxDQUFBLG1TS3dUSSx3QkFDZSxDQUFBLHdCQW5CakIseUJMclNBLGFBQUEsQ0FBQSw0REsySkQscUJBTEksYUFBQSxDQUFBLDhKQVNYLHlCTC9KUSxhQUFBLENBQUEscVRLdVRFLHdCQUNlLENBQUEsc0JBbkJqQix5QkxwU0YsYUFBQSxDQUFBLHdESzBKQyxxQkFMSSxhQUFBLENBQUEsc0pBU1gseUJMOUpNLGFBQUEsQ0FBQSxtU0tzVEksd0JBQ2UsQ0FBQSxzQkFuQmpCLHlCTG5TRixhQUFBLENBQUEsd0RLeUpDLHFCQUxJLGFBQUEsQ0FBQSxzSkFTWCx5Qkw3Sk0sYUFBQSxDQUFBLG1TS3FUSSx3QkFDZSxDQUFBLG9CQW5CakIseUJMbFNKLGFBQUEsQ0FBQSxvREt3SkcscUJBTEksYUFBQSxDQUFBLDhJQVNYLHlCTDVKSSxhQUFBLENBQUEsaVJLb1RNLHdCQUNlLENBQUEsd0JBckgzQixjVm5MUSxRQUNULFNBQ0Esa0JVNktPLFdWektQLHNCQUdFLHVCQUNrQiw2Q0FDd0Isa0JVMEtoQyxVQUNMLHFCQUVJLFlBQ0gsZUFDTixDQUFzQiwrQkFnSVosd0JmdlNFLENBQUEsdUNlNlNHLHdCTGpWUixDQUFBLHlDS2lWVSx3QkxoVlIsQ0FBQSx1Q0tnVk0sd0JML1VSLENBQUEsdUNLK1VRLHdCTDlVUixDQUFBLHFDSzhVTSx3Qkw3VVIsQ0FBQSwwQkt1Vk8sV0FDTCxXQUNFLGFBQ1AsQ0FBQSw4QkFHSSxvQkFHVyxDQUFFLG9PQ2hRckIsY0F0Q1Msc0JBQ0csV0FDTCxpQkFKRyxnQlpHQSxjWWxDSSx5QmhCZ1RTLGdCZ0J2UXZCLHlCaEJ6Qk0sOENBREEsb0JBNFJZLGVJelFSLG1CSlJXLGdCZ0JzQlYsY2hCakNMLDBEQXNTK0Msd0JBQUEsQWdCN096QyxxQmhCNk95QyxBZ0I3T3pDLGVBQUEsQ0FBRSw4VEFoQmIsYUFDVSx5QmhCM0NELHlCQUVKLDJCQUhNLHlEQXdTeUMsQ0FBQSxTZ0JwUHBELGNBWVUsQ0FBRSxlQUVWLFdBQ08sQ0FBRSxxRUFLSixhaEJ4RUksQ2dCbUVBLEFoQm5FQSwyRGdCd0VKLGFoQnhFSSxDZ0JtRUEsQWhCbkVBLHlDZ0J3RUosYWhCeEVJLENBQUEsb0VnQmdGVCx5QmhCakZRLGNBd1NXLENBQUEsZ0NnQi9NaEIsd0JBQUEsQUFDUSxxQkFEUixBQUNRLGdCQUFBLGVBQ1osQ0FBQSxxQkFJUyxxQkFDRyxDQUFBLCtDQ3ZKUixlQUNPLENiNEVILDZDYXZFTyxxQkFDTix3QkFDTyxrQkFFZSxrQmJtRXZCLGVhakVSLENBQUEsdURBRUMsY0FDUyxDQUFBLDZDQU1FLGtCQUNvQixDQUFBLGNBSTVCLFVBQ0MsQ0FBRSxNQUNSLGNDZFEsU0FDVCxrQmQ4RFUsbUJKUlcsZ0JrQmxEVixhbEJ1Q0wsQ0FBQSxha0IzQkQsZ0JkOENLLGtCY2xEQSxDQUFBLFdBU1Asa0JDekJhLG1CZmtFTixrQko0UFUsVW1CelRiLENuQnVUUSxhbUJ0VGQsb0JBQUEsQUNEOEIsYUFBQSxXQUN0QixtQmhCNERDLHVCQUFBLEFnQnhETyxtQkFBQSxDQUFBLDBCQUdiLHFCQUNnRyxDQUFDLDJCQUdqRyxxQnBCMkNVLENBQUMsK0pvQnFDYixTQXhFQSxrQkFDYSxDQUFBLG1CQU1kLGVwQmtTb0IseUJBclJULG1CQURELGNBR0wsa0JvQk5RLG1CQUNDLG9CQUFBLEFBR0YsYUFBQSxrQkFBQSxBQUNILGNBQUEsc0JBQUEsQUFDTyxrQkFBQSxDQUFBLCtCQWJDLGNBc0JaLENBQUEsOEJBdEJZLGFBMEJaLENBQUEsbUJBQ0QsZ0JBTUgsaUJBQUEsQUFHUSxhQUFBLFlBQ0UsV0FDUixDQUFBLG9CQUtILGNBSUMsaUJBQ0Esa0JBQ1ksb0JBQUEsQUFHRCxhQUFBLGtCQUFBLEFBQ0gsYUFBQSxDQUFBLHFHQVVSLFlBSVksNEJBQUEsQUFDSSwyQkFESixBQUNJLG1CQUFBLGNBS2QsaUJBQ0EsY0FDUyxDaEIzQ0gsU2dCNENQLFNDN0ZELFVBQ0EsUUFDQSxDQUFBLE9BQ0QsZUFHWSxtQkFDSSxDQUFBLFVBQ2hCLGtCakJ5Q1MsZ0JBQUEsd0JKckJFLENBQUEsaUJxQnRDWixTQUVFLHNCakJ5RFEsa0JBQUEsQ0FBQSxPaUJ0RFQsaUJDYlMsZ0JsQm1FQSxjWWxDSSx3QkFBQSxBTTNCRixxQk4yQkUsQU0zQkYsZ0JBQUEseUJ0QjJVVyxnQnNCelV2Qix5QnRCeUNNLG9CQTJSWSxlSXpRUixtQkpSVyxnQnNCN0NWLGN0QmtDTCxxT0tpRlksOEJpQjlHRyx1Q0FDaUMsNEJBQ2pDLHdCQUNGLHFCQUVrQix5RHRCOFRnQixDQUFBLG1DS25OOUIsT2lCdEV2QixzV2pCeUVzQixDQUFBLENBQUEsYWlCdEdyQixhQUNVLHlCdEJjRCx5QkFFSiwyQkFITSx5REF3U3lDLENBQUEsZ0JzQjFTcEQseUJ0QkNVLGNBd1NXLENBQUEsbUJzQm5TckIsWUFDUSxDQUFFLGlCQUdWLFlBQ1MscUJBQ1EsQ0FBRSw4QkNqQ2QscUJ2QnFCTSx3QnVCbkJRLENBQUEseURBQ2pCLGF2QmtCUyxDdUJuQlEsQXZCbUJSLG9EdUJsQlQsYXZCa0JTLEN1Qm5CUSxBdkJtQlIsMkN1QmxCVCxhdkJrQlMsQ0FBQSxrQnVCaEJULGF2QmdCUyxDQUFBLFl1QldULGFBckJNLGtCQUNHLG1CbkJnQ0YsaUJBQUEsaUJKUFMsYUFoQlAsQ0FBQSx1QnVCZUQsYUFJRSxDQUFBLE1BQ1YsdUJDdkJRLENBQUEsV0FDVixpQkFHYSxDQUFBLHlDckJzR2EscUJxQnZGekIsdUJBMUJTLENBQUEsQ0FBQSxpRUFuQjBDLHFCQWlEbkQsdUJBaERXLENBQUEsQ0FBQSwyQ3JCOEhvQixpQnFCM0Y3Qix1QkF6Qk8sQ0FBQSxDQUFBLHlDckJ5SGdCLGlCcUI1RnZCLHVCQWpFTyxDQUFBLENBQUEsK0RyQjZKc0Msc0JxQnZGL0MsdUJBMUJTLENBQUEsQ0FBQSx1RUFuQmdELHNCQWlEekQsdUJBaERXLENBQUEsQ0FBQSwyQ3JCOEhvQixnQnFCM0Y3Qix1QkF6Qk8sQ0FBQSxDQUFBLHlDckJ5SGdCLGdCcUI1RnZCLHVCQWpFTyxDQUFBLENBQUEsK0RyQjZKc0MscUJxQnZGL0MsdUJBMUJTLENBQUEsQ0FBQSx1RUFuQmdELHFCQWlEekQsdUJBaERXLENBQUEsQ0FBQSw0QkF3RGIsNkJuQm9IVSxVQUNMLFdBQ0MsVUFDTixnQkFDVSxzQkFDSixtQkFDTyw2QkFBQSxBQUNGLHFCQUFBLFFBQ1gsQ0FBQSwyQ21CdkhjLDJCbkI0SEosV0FDSCxZQUNDLGlCQUNFLFVBQ0osbUJBQ08sdUJBQUEsQUFDSixjQUFBLENBQUUsdUNtQnpIWCx3QkFDVyxDQUFBLDJDckI0RGtCLHVDcUI3RDdCLHdCQUlhLENBQUEsQ0FBQSwwQ3JCeURnQix1Q3FCN0Q3Qix1QkFRYSxDQUFBLENBQUEsdUNBS2IsdUJBQ1csQ0FBQSwyQ3JCK0NrQix1Q3FCaEQ3Qix1QkFJYSxDQUFBLENBQUEsMENyQjRDZ0IsdUNxQmhEN0Isd0JBUWEsQ0FBQSxDQUFBLFlDdkhiLHFCQUNTLENBQUEsYUFDUixzQkFHUSxDQUFBLGNBQ1IsY0FHVSxrQkFDSyxnQkFDSCxDQUFFLG1DcEJzSmQsY0FDVSxZQUNGLDBCQUFBLEFBR0wsYUFBQSxpQkFBQSxBQUNBLE9BQUEsQ0FBQSxpQkFJSCxVQUNNLENBQUUsS0FDUixnQkQ5RlMsa0JzQm5ETSxpQkFDRCxvQkFBQSxBQUlKLGFBQUEsdUJBQUEsQUFDSyxrQkFBQSxDQWxCQyxVQXlHYixzQkNoRE8sb0JBQUEsQ0FBQSwyQ3hCaUZzQixVdUJqQzdCLHVCQ2hETyxxQkFBQSxDQUFBLENBQUEsMkN4QmlGc0IsVXVCakM3Qix1QkNoRE8scUJBQUEsQ0FBQSxDQUFBLG1CRGdESCxlQUlGLGFBQ0EsQ0FBQSxjQVRGLGNDN0JLLENBSEEsbUJEaURMLGtCQUNnQixnQkFDSCxDQUFFLHlCQUlBLGNDcERWLENBSEEsNkNEZ0tULGdCRXhPRSxjQUNBLENBQUEsOEVGMkl1QixlQUNyQixhQUNBLENBQUEsaUJBS0osaUJBQUEsQUE5R1UsYUFBQSxzQkV2Q0UscUJBQUEsV0ZvRVYsQ0FBQSwyQ3ZCMkUrQixpQnVCTWpDLHVCRXJKWSxxQkFBQSxDQUFBLENBQUEsaUNGMkpHLFdBQ04sYUFDRSxDQUFBLDJDQUlTLGVBQ2xCLGNBQ0EsZ0JBQ0EsY0FDQSxDQUFBLFNBQ0Qsc0JBQUEsQUc3Slcsa0JBQUEsa0JBQUEsQ0FBQSxnQkhxS1AsY0l4SkwsQ0FBQSxTSnFKSSx1QkFBQSxBR2xLUSxtQkFBQSxtQkFBQSxDQUFBLGdCSHFLUCxvQkdyS08sQ0FBQSxTSGtLUixpQkFBQSxBQTlIUSxhQUFBLGFBZ0lOLENBQVMsZ0JBQ1YscUJHcktPLENBQUEsU0hrS1IsdUJBQUEsQUdsS1EsbUJBQUEsbUJBQUEsQ0FBQSxnQkhxS1AsZUl4SkwsQ0FBc0IsU0pxSmxCLHVCQUFBLEFHbEtRLG1CQUFBLG1CQUFBLENBQUEsZ0JIcUtQLHFCR3JLTyxDQUFBLFNIa0tSLGlCQUFBLEFBOUhRLGFBQUEsYUFnSU4sQ0FBUyxnQkFDVixxQkdyS08sQ0FBQSxTSGtLUix1QkFBQSxBR2xLUSxtQkFBQSxtQkFBQSxDQUFBLGdCSHFLUCxlSXhKTCxDQUFzQixTSnFKbEIsdUJBQUEsQUdsS1EsbUJBQUEsbUJBQUEsQ0FBQSxnQkhxS1AscUJHcktPLENBQUEsU0hrS1IsaUJBQUEsQUE5SFEsYUFBQSxhQWdJTixDQUFTLGdCQUNWLHFCR3JLTyxDQUFBLFVIa0tSLHVCQUFBLEFHbEtRLG1CQUFBLG1CQUFBLENBQUEsZ0JIcUtQLGVJeEpMLENBQXNCLFVKcUpsQix1QkFBQSxBR2xLUSxtQkFBQSxtQkFBQSxDQUFBLGlCSHFLUCxxQkdyS08sQ0FBQSxVSGtLUixrQkFBQSxBR2xLUSxjQUFBLGNIb0tHLENHcEtILGlCSHFLUCxxQkdyS08sQ0FBQSxZSDRLUCxtQkFBQSxBQXJHSSxjQUFBLENBQUUseUNBMEpYLGtCQUFBLEFBdkpRLGNBQUEsY0FHRyxDQUhILFlBSVAsbUJBQUEsQUFQUSxjQUFBLENBQUUseUNBMEpYLGlCQUFBLEFBckpXLGFBQUEsYUFDVCxDQUFTLFlBQ1YsbUJBQUEsQUFQUSxjQUFBLENBQUUseUNBMEpYLHVCQUFBLEFBdkpRLG1CQUFBLG1CQUFBLENBQUEsWUFJUCxtQkFBQSxBQVBRLGNBQUEsQ0FBRSx5Q0EwSlgsaUJBQUEsQUFySlcsYUFBQSxhQUNULENBQVMsWUFDVixtQkFBQSxBQVBRLGNBQUEsQ0FBRSx5Q0EwSlgsaUJBQUEsQUFySlcsYUFBQSxhQUNULENBQVMsWUFDVixtQkFBQSxBQVBRLGNBQUEsQ0FBRSx5Q0EwSlgsdUJBQUEsQUF2SlEsbUJBQUEsbUJBQUEsQ0FBQSxZQUlQLG1CQUFBLEFBUFEsY0FBQSxDQUFFLHlDQTBKWCx1QkFBQSxBQXZKUSxtQkFBQSxtQkFBQSxDQUFBLFlBSVAsbUJBQUEsQUFQUSxjQUFBLENBQUUseUNBMEpYLG1CQUFBLEFBdkpRLGVBQUEsZUFBQSxDQUFBLGlEQXVKUixnQkV4T0UsY0FDQSxDQUFBLHFERnVPRixzQkUxT1ksb0JBQUEsQ0FBQSwyQ3pCK0lxQixVdUI0QjdCLHNCQUFBLEFHbEtRLGtCQUFBLGtCQUFBLENBQUEsaUJIcUtQLGNJeEpMLENBQUEsVUpxSkksdUJBQUEsQUdsS1EsbUJBQUEsbUJBQUEsQ0FBQSxpQkhxS1Asb0JHcktPLENBQUEsVUhrS1IsaUJBQUEsQUE5SFEsYUFBQSxhQWdJTixDQUFTLGlCQUNWLHFCR3JLTyxDQUFBLFVIa0tSLHVCQUFBLEFHbEtRLG1CQUFBLG1CQUFBLENBQUEsaUJIcUtQLGVJeEpMLENBQXNCLFVKcUpsQix1QkFBQSxBR2xLUSxtQkFBQSxtQkFBQSxDQUFBLGlCSHFLUCxxQkdyS08sQ0FBQSxVSGtLUixpQkFBQSxBQTlIUSxhQUFBLGFBZ0lOLENBQVMsaUJBQ1YscUJHcktPLENBQUEsVUhrS1IsdUJBQUEsQUdsS1EsbUJBQUEsbUJBQUEsQ0FBQSxpQkhxS1AsZUl4SkwsQ0FBc0IsVUpxSmxCLHVCQUFBLEFHbEtRLG1CQUFBLG1CQUFBLENBQUEsaUJIcUtQLHFCR3JLTyxDQUFBLFVIa0tSLGlCQUFBLEFBOUhRLGFBQUEsYUFnSU4sQ0FBUyxpQkFDVixxQkdyS08sQ0FBQSxXSGtLUix1QkFBQSxBR2xLUSxtQkFBQSxtQkFBQSxDQUFBLGlCSHFLUCxlSXhKTCxDQUFzQixXSnFKbEIsdUJBQUEsQUdsS1EsbUJBQUEsbUJBQUEsQ0FBQSxrQkhxS1AscUJHcktPLENBQUEsV0hrS1Isa0JBQUEsQUdsS1EsY0FBQSxjSG9LRyxDR3BLSCxrQkhxS1AscUJHcktPLENBQUEsYUg0S1AsbUJBQUEsQUFyR0ksY0FBQSxDQUFFLDJDQTBKWCxrQkFBQSxBQXZKUSxjQUFBLGNBR0csQ0FISCxhQUlQLG1CQUFBLEFBUFEsY0FBQSxDQUFFLDJDQTBKWCxpQkFBQSxBQXJKVyxhQUFBLGFBQ1QsQ0FBUyxhQUNWLG1CQUFBLEFBUFEsY0FBQSxDQUFFLDJDQTBKWCx1QkFBQSxBQXZKUSxtQkFBQSxtQkFBQSxDQUFBLGFBSVAsbUJBQUEsQUFQUSxjQUFBLENBQUUsMkNBMEpYLGlCQUFBLEFBckpXLGFBQUEsYUFDVCxDQUFTLGFBQ1YsbUJBQUEsQUFQUSxjQUFBLENBQUUsMkNBMEpYLGlCQUFBLEFBckpXLGFBQUEsYUFDVCxDQUFTLGFBQ1YsbUJBQUEsQUFQUSxjQUFBLENBQUUsMkNBMEpYLHVCQUFBLEFBdkpRLG1CQUFBLG1CQUFBLENBQUEsYUFJUCxtQkFBQSxBQVBRLGNBQUEsQ0FBRSwyQ0EwSlgsdUJBQUEsQUF2SlEsbUJBQUEsbUJBQUEsQ0FBQSxhQUlQLG1CQUFBLEFBUFEsY0FBQSxDQUFFLDJDQTBKWCxtQkFBQSxBQXZKUSxlQUFBLGVBQUEsQ0FBQSxDQUFBLGlFdkI0RHlCLGV1Qm1EM0IsaUJBQUEsQUEzSkcsWUFBQSxDQUFDLENBQUMseURBbU1YLGtCQUFBLEFBN0xZLGFBQUEsQ0E4SnFCLDJDdkI1REEseUR1QjJGakMsaUJBQUEsQUFuTVMsWUFBQSxDQUFDLENBQUMsMkN2QndHc0IsbUR1QjJGakMsZ0JFeE9FLGNBQ0EsQ0FBQSx1REZ1T0YsdUJFMU9ZLHFCQUFBLENBQUEsQ0FBQSwyQ3pCK0lxQixTdUI0QjdCLHNCQUFBLEFHbEtRLGtCQUFBLGtCQUFBLENBQUEsZ0JIcUtQLGNJeEpMLENBQUEsU0pxSkksdUJBQUEsQUdsS1EsbUJBQUEsbUJBQUEsQ0FBQSxnQkhxS1Asb0JHcktPLENBQUEsU0hrS1IsaUJBQUEsQUE5SFEsYUFBQSxhQWdJTixDQUFTLGdCQUNWLHFCR3JLTyxDQUFBLFNIa0tSLHVCQUFBLEFHbEtRLG1CQUFBLG1CQUFBLENBQUEsZ0JIcUtQLGVJeEpMLENBQXNCLFNKcUpsQix1QkFBQSxBR2xLUSxtQkFBQSxtQkFBQSxDQUFBLGdCSHFLUCxxQkdyS08sQ0FBQSxTSGtLUixpQkFBQSxBQTlIUSxhQUFBLGFBZ0lOLENBQVMsZ0JBQ1YscUJHcktPLENBQUEsU0hrS1IsdUJBQUEsQUdsS1EsbUJBQUEsbUJBQUEsQ0FBQSxnQkhxS1AsZUl4SkwsQ0FBc0IsU0pxSmxCLHVCQUFBLEFHbEtRLG1CQUFBLG1CQUFBLENBQUEsZ0JIcUtQLHFCR3JLTyxDQUFBLFNIa0tSLGlCQUFBLEFBOUhRLGFBQUEsYUFnSU4sQ0FBUyxnQkFDVixxQkdyS08sQ0FBQSxVSGtLUix1QkFBQSxBR2xLUSxtQkFBQSxtQkFBQSxDQUFBLGdCSHFLUCxlSXhKTCxDQUFzQixVSnFKbEIsdUJBQUEsQUdsS1EsbUJBQUEsbUJBQUEsQ0FBQSxpQkhxS1AscUJHcktPLENBQUEsVUhrS1Isa0JBQUEsQUdsS1EsY0FBQSxjSG9LRyxDR3BLSCxpQkhxS1AscUJHcktPLENBQUEsWUg0S1AsbUJBQUEsQUFyR0ksY0FBQSxDQUFFLHlDQTBKWCxrQkFBQSxBQXZKUSxjQUFBLGNBR0csQ0FISCxZQUlQLG1CQUFBLEFBUFEsY0FBQSxDQUFFLHlDQTBKWCxpQkFBQSxBQXJKVyxhQUFBLGFBQ1QsQ0FBUyxZQUNWLG1CQUFBLEFBUFEsY0FBQSxDQUFFLHlDQTBKWCx1QkFBQSxBQXZKUSxtQkFBQSxtQkFBQSxDQUFBLFlBSVAsbUJBQUEsQUFQUSxjQUFBLENBQUUseUNBMEpYLGlCQUFBLEFBckpXLGFBQUEsYUFDVCxDQUFTLFlBQ1YsbUJBQUEsQUFQUSxjQUFBLENBQUUseUNBMEpYLGlCQUFBLEFBckpXLGFBQUEsYUFDVCxDQUFTLFlBQ1YsbUJBQUEsQUFQUSxjQUFBLENBQUUseUNBMEpYLHVCQUFBLEFBdkpRLG1CQUFBLG1CQUFBLENBQUEsWUFJUCxtQkFBQSxBQVBRLGNBQUEsQ0FBRSx5Q0EwSlgsdUJBQUEsQUF2SlEsbUJBQUEsbUJBQUEsQ0FBQSxZQUlQLG1CQUFBLEFBUFEsY0FBQSxDQUFFLHlDQTBKWCxtQkFBQSxBQXZKUSxlQUFBLGVBQUEsQ0FBQSxDQUFBLGlFdkI0RHlCLGN1Qm1EM0IsaUJBQUEsQUEzSkcsWUFBQSxDQUFDLENBQUMsdURBbU1YLGtCQUFBLEFBN0xZLGFBQUEsQ0E4SnFCLDJDdkI1REEsdUR1QjJGakMsaUJBQUEsQUFuTVMsWUFBQSxDQUFDLENBQUMsMkN2QndHc0IsaUR1QjJGakMsZ0JFeE9FLGNBQ0EsQ0FBQSxxREZ1T0YsdUJFMU9ZLHFCQUFBLENBQUEsQ0FBQSxRRmdPWixrQkFBQSxBQXRMYSxjQUFBLGNBd0xGLENBQUUsY0FDWixxQnRCL0pTLENBQUEsMEJ3QlhOLGVBQ0EsQ0FBQSwyQ3pCcUY2QixjdUJ1RmpDLHNCdEJsS1UsQ0FBQSwwQndCWE4sZUFDQSxDQUFBLENBQUEsYUdKRixrQkFBQSxBQ3hFTyx3QkFBQSxDQUFBLGNEd0VQLHFCQUFBLEFDdkVRLHNCQUFBLENBQUEsZUR1RVIsc0JBQUEsQUN0RVMsNkJBQUEsQ0FBQSxjRHNFVCx5QkFBQSxBQ3JFUSw0QkFBQSxDQUFBLGdDRDZFWSxrQkFBQSxBQ2hGYix3QkFBQSxDQUFBLGlDRGdGYSxxQkFBQSxBQy9FWixzQkFBQSxDQUFBLFdEaUZMLHFCQUFBLEFDM0VFLHNCQUFBLENBQUEsZ0JEbUZKLDBCQUFBLEFDbkZJLHFCQUFBLENBQUEsY0RpRkwsbUJBQUEsQUNoRlEsb0JBQUEsQ0FBQSxtQkRrRlAsd0JBQUEsQUNsRk8sbUJBQUEsQ0FBQSxjRGdGUixzQkFBQSxBQy9FUSxrQkFBQSxDQUFBLG1CRGlGUCwyQkFBQSxBQ2pGTywwQkRpRlAsQUNqRk8saUJBQUEsQ0FBQSxlRCtFUix1QkFBQSxBQzlFUyxtQkFBQSxDQUFBLG9CRGdGUiw0QkFBQSxBQ2hGUSwyQkRnRlIsQUNoRlEsa0JBQUEsQ0FBQSxxQkRvRlIscUJBQUEsQUM3Rk8sdUJBQUEsc0JBQUEsQUFRQSxtQkFBQSwwQkFBQSxBRDJGTyxvQkFBQSxDQUFBLGVBQ2hCLGlCQUFBLEFDOUJELE9BQUEsQ0FBQSxlRG1DSSxpQkFBQSxBQ25DSixPQUFBLENBQUEsZURtQ0ksaUJBQUEsQUNuQ0osT0FBQSxDQUFBLGVEbUNJLGlCQUFBLEFDbkNKLE9BQUEsQ0FBQSxlRG1DSSxpQkFBQSxBQ25DSixPQUFBLENBQUEsZURtQ0ksaUJBQUEsQUNuQ0osT0FBQSxDQUFBLDJDN0IwRmlDLGdCNEJ2RDdCLGlCQUFBLEFDbkNKLE9BQUEsQ0FBQSxnQkRtQ0ksaUJBQUEsQUNuQ0osT0FBQSxDQUFBLGdCRG1DSSxpQkFBQSxBQ25DSixPQUFBLENBQUEsZ0JEbUNJLGlCQUFBLEFDbkNKLE9BQUEsQ0FBQSxnQkRtQ0ksaUJBQUEsQUNuQ0osT0FBQSxDQUFBLGdCRG1DSSxpQkFBQSxBQ25DSixPQUFBLENBQUEsQ0FBQSwyQzdCMEZpQyxlNEJ2RDdCLGlCQUFBLEFDbkNKLE9BQUEsQ0FBQSxlRG1DSSxpQkFBQSxBQ25DSixPQUFBLENBQUEsZURtQ0ksaUJBQUEsQUNuQ0osT0FBQSxDQUFBLGVEbUNJLGlCQUFBLEFDbkNKLE9BQUEsQ0FBQSxlRG1DSSxpQkFBQSxBQ25DSixPQUFBLENBQUEsZURtQ0ksaUJBQUEsQUNuQ0osT0FBQSxDQUFBLENBQUEsZ0JEeERBLG9CQUFBLEFDT08sWUFBQSxDQUFFLGlCRExSLGtCQUFBLEFBR08sYUFBQSxDQUFBLGlCQUNQLGtCQUFBLEFBR08sYUFBQSxDQUFBLG1CQUNQLGtCQUFBLEFBR08sYUFBQSxDQUFBLGNBQ1AsdUJBQUEsQUNvREQsa0JBQUEsQ0FBYyxzQkRqRFosK0JBQUEsQUNqQmEsMEJBQUEsQ0FBQSxpQkRpQmIsMEJBQUEsQUNoQlEscUJBQUEsQ0FBQSx5QkRnQlIsa0NBQUEsQUNmZ0IsNkJBQUEsQ0FBQSwyQzdCZ0plLHVCNEJ2SHpCLG9CQUFBLEFDcEJELFlBQUEsQ0FBRSx3QkRzQkEsa0JBQUEsQUFHTyxhQUFBLENBQUEsd0JBQ1Asa0JBQUEsQUFHTyxhQUFBLENBQUEsMEJBQ1Asa0JBQUEsQUFHTyxhQUFBLENBQUEscUJBQ1AsdUJBQUEsQUN5QlQsa0JBQUEsQ0FBYyw2QkR0QkosK0JBQUEsQUM1Q0ssMEJBQUEsQ0FBQSx3QkQ0Q0wsMEJBQUEsQUMzQ0EscUJBQUEsQ0FBQSxnQ0QyQ0Esa0NBQUEsQUMxQ1EsNkJBQUEsQ0FBQSxDQUFBLDJDN0JnSmUsc0I0QnZIekIsb0JBQUEsQUNwQkQsWUFBQSxDQUFFLHVCRHNCQSxrQkFBQSxBQUdPLGFBQUEsQ0FBQSx1QkFDUCxrQkFBQSxBQUdPLGFBQUEsQ0FBQSx5QkFDUCxrQkFBQSxBQUdPLGFBQUEsQ0FBQSxvQkFDUCx1QkFBQSxBQ3lCVCxrQkFBQSxDQUFjLDRCRHRCSiwrQkFBQSxBQzVDSywwQkFBQSxDQUFBLHVCRDRDTCwwQkFBQSxBQzNDQSxxQkFBQSxDQUFBLCtCRDJDQSxrQ0FBQSxBQzFDUSw2QkFBQSxDQUFBLENBQUEsTUNxVmxCLFVBL1NBLFNBQ0EsZ0JBQ1ksa0JBQ0Ysb0JBQUEsQUFHQyxhQUFBLG1CQUFBLEFBQ0EsY0FBQSxDQUFFLGtDQXdTYixTNUIvSkUsQ0FBQSxzQjRCaklGLGNBQ0UscUJBQ2lCLGNBQ1IsbUJ2Qm1CZSxDQUFDLDhDdUJYM0IsZUFDRSxDQUFBLFlBR0Ysb0JBQ1csQ0FBQSx1QkFnUk4sbUJBQUEsQUFwTFUsZUFBQSx1QkFBQSxBQUNYLGtCQUFBLENBQWMsZUFtTGIscUJBQUEsQUF6S1UsaUJBQUEsMEJBQUEsQUFDSyxxQkFBQSxDQUFBLGtCQXdLZixpQkFBQSxBQXhRSyxZQUFBLENBQUEsYUF3UUwsc0JBQUEsQUF0SlUsa0JBQUEsQ0FBQSxtQkFHZixnQkFDZ0IsQ0FoTUcsZUFrVmQsU0E5SUgsQ0FBQSwyQzlCdkQrQix3QjhCcU01QixtQkFBQSxBQXBMVSxlQUFBLHVCQUFBLEFBQ1gsa0JBQUEsQ0FBYyxzQkFtTGIscUJBQUEsQUF6S1UsaUJBQUEsMEJBQUEsQUFDSyxxQkFBQSxDQUFBLHlCQXdLZixpQkFBQSxBQXhRSyxZQUFBLENBQUEsdUJBd1FMLGlCQUFBLEFBeFFLLFlBQUEsQ0FBQSxDQUFBLDJDOUJtRXVCLHVCOEJxTTVCLG1CQUFBLEFBcExVLGVBQUEsdUJBQUEsQUFDWCxrQkFBQSxDQUFjLHFCQW1MYixxQkFBQSxBQXpLVSxpQkFBQSwwQkFBQSxBQUNLLHFCQUFBLENBQUEsd0JBd0tmLGlCQUFBLEFBeFFLLFlBQUEsQ0FBQSxzQkF3UUwsaUJBQUEsQUF4UUssWUFBQSxDQUFBLENBQUEsYUF3UUwsZUE5SEgsZ0JBQ3NCLEN2QjFJRSxjdUJ1UXJCLG9CQUFBLEFBcEhNLFlBQUEsQ0FBRSwwRUFvSFIsb0JBQUEsQUFwSE0sWUFBQSxDQUFFLHFCQW1CWCx5QkFBQSxBQUVlLG9CQUFBLENBQUEseUVBRlgsbUJqQzhIWSxDQUFBLHNCaUM3R2hCLHlCQUFBLEFBRWUsb0JBQUEsQ0FBQSw0RUFGWCxrQmpDNkdZLENBQUEsb0JpQzVGaEIsNEJBQUEsQUFFZSx1QkFBQSxDQUFBLHNFQUZYLDRCQUFBLEFBZ0JjLDJCQWhCZCxBQWdCYyxtQkFBQSxxQmpDNEVGLGlCaUMxRUUsQ0FBQSx1QkFNbEIsNEJBQUEsQUFFZSx1QkFBQSxDQUFBLCtFQUZYLDRCQUFBLEFBZ0JjLDJCQWhCZCxBQWdCYyxtQkFBQSxxQmpDb0RGLGlCaUNsREUsQ0FBQSxtQkF3R2xCLG1CdkJsYU8sYVY2Q0gsQ0FBQSxnQmlDMlhGLG1CdkJ4YUssYVY2Q0gsQ0FBQSxpQmlDa1NELG9CQUFBLEFBdFBnQiwwQkFBQSxDQUFBLHFCQXNQaEIsb0JBQUEsQUE3T1UsYUFBQSxrQkFBQSxBQUNRLHdCQUFBLENBQUEsaUNBRWpCLG9CQUFBLEFBQ21CLDBCQUFBLENBQUEsOEJBSXBCLGNBQ1UsZ0J2QlhzQyxDQUFBLDBDdUJjL0MsZ0J2QmQrQyxDQUFBLDBCdUJzVmpELGtCdkI5V3NCLGF1QnNJeEIsQ0FBQSxzQkFpSUcsb0JBQUEsQUEzTVUsYUFBQSxxQkFBQSxBQUNRLHNCQUFBLENBQUEsa0NBRWpCLG9CQUFBLEFBQ21CLDBCQUFBLENBQUEsaUJBd1R2QixvQnZCM1h5QixpQnVCK1BkLGNBQ2IsYUFDTyxDQUFBLHFCQWlJRCxxQkFBQSxBQUVtQixzQkFBQSxDQUFBLHdCQUZuQixvQkFBQSxBQW5VUyxhQUFBLHFCQUFBLEFBQ1Esc0JBQUEsQ0FBQSxvQ0FFakIsb0JBQUEsQUFDbUIsMEJBQUEsQ0FBQSxpQ0EwVWpCLFlBQ0MsQ0FBRSxrREN4WkwsU0FDSyxRQUNMLFNBQ0ksQ0FBRSxtREFLTixTQUNLLFdBQ0UsTUFDUCxDQUFBLGlCQWtERyxtQnhCbkRpQixDQUFDLDBDd0JtRGxCLFM3QndEUCxDQUFBLDRCNkIvQ0EsdUJBM0ZtQyxheEJ0QzVCLENBQUEseUJ3QndIQSxZQWVFLENBQUUsMkNBR0osZUR1RVAsYUFDQSxDQUFBLGdEQ3hIRSxLQUNFLENBQUEsMkRBSUUsV0FDTyxVQUNELEtBQ04sQ0FBQSw0REFLQSxXQUNPLFNBQ0gsQ0FBRSwyQy9CaUNtQixvRStCL0UzQixTQUNLLFFBQ0wsU0FDSSxDQUFFLHFFQUtOLFNBQ0ssV0FDRSxNQUNQLENBQUEsdURBb0JGLEtBQ0UsQ0FBQSxrRUFJRSxXQUNPLFVBQ0QsS0FDTixDQUFBLG1FQUtBLFdBQ08sU0FDSCxDQUFFLENBQUEsMkMvQmlDbUIsbUUrQi9FM0IsU0FDSyxRQUNMLFNBQ0ksQ0FBRSxvRUFLTixTQUNLLFdBQ0UsTUFDUCxDQUFBLHNEQW9CRixLQUNFLENBQUEsaUVBSUUsV0FDTyxVQUNELEtBQ04sQ0FBQSxrRUFLQSxXQUNPLFNBQ0gsQ0FBRSxDQUFBLDBEQXdEVSxTQUNiLFFBQ0wsU0FDSSxDQUFFLDJCQUtLLFdBQ1IsQ0FBQSx1Q0FEaUIsV0FJZixDQUFBLDRCQUNSLGlCQUlTLENBQUEscUNBRVQsa0JBQ1csUUFDUCxVQUNhLFVBQ0MsZUFDUCxDQUFFLDZEQUdFLFNBRVQsU0FLQyxDQUFFLDREQUlLLFdBQ04sU0FDSCxDQUFFLDZEQUdRLFdBQ1AsU0FDSCxDQUFFLHFCQUNQLGtCQUlTLE1BQ1YsVUFDaUIsVUFDakIsYUFFUyxnQmxDNkVZLFlBRUgsa0JBMVBkLENBQUEsaUNrQ3FLTixtQnhCN0kwQixDQUFDLHdCd0I2STNCLFVBNkJTLENBQUUsd0NBN0JTLGFBbUNQLENBQUEsY0N0TWIsa0JBQ1ksZUFDQSxDQUFBLGlCQUZaLGFBS2EsQ0FBQSw2QkFMQSxzQkFTRyxDQUFBLGFBQ2Isb0J6Qll3QixrQlZ4QnJCLENBQUEsaUNtQ3VCSixrQkFDWSxNQUNWLFVBQ2lCLFdBQ2pCLFdBRU8sbUJuQzdCTCxpQ0FnTytCLENBQUEsMkNtQ3pNZCxVQVdqQixjQUNTLGdDQUFBLEFBQ0UsMkJBQUEsQ0FBQSw0Q0FiTSwrQkFBQSxBQWlCTiwwQkFBQSxDQUFBLG1DQWpCZixtQnpCQ3dCLENBQUMsd0N5QnlCbEIsZUZtSFAsYUFDQSxDQUFBLDZDRWhIQSxlQUNZLENBQUUsV0FDYixjbkM0WmMsbUJBcGRYLGNBQ0Esb0JBQUEsQW9DM0JPLGFBQUEsb0JBQUEsQUFDUSwyQkFBQSxzQkFBQSxBQUNKLGtCQUFBLENBQUEsc0JBTWYsa0JwQzBlb0Isa0JBQUEsQ0FBQSxpQ29DbGVwQixpQkFBQSxBQUNRLFlBQUEsQ0FBQSxpQkFDUCxnQkFHYSxDQUFBLGlCQUNiLHFCQWNRLHNCQUNPLGdCQUNMLENwQ3ljYSxTcUNsYzFCLGtCQTFDVSxrQnJDbU9TLGFBQ0gscUNBN01WLGdCcUNsQk4sc0JBZWEsYXJDR1AsQ0FBQSxzQnFDZkosWUFDQSxDQUFBLHFCQUdBLGVBQ0EsQ0FBQSxpQkE2Qk0seUJBdEJLLGFyQ0dQLENBQUEsbUJxQ21CRSx5QkF0QkssYXJDR1AsQ0FBQSxpQnFDbUJFLHlCQXRCSyxhckNHUCxDQUFBLGlCcUNtQkUseUJBdEJLLGFyQ0dQLENBQUEsZXFDbUJFLHlCQXRCSyxhckNHUCxDQUFBLGVxQ21CRSxrQkFVa0Isb0JBQUEscUJBQUEsa0JBQUEsQ0FBQSxlQVZsQixpQkFja0IsbUJBQUEsb0JBQUEsaUJBMUJkLENBMEJjLE1BQ3ZCLHlCQzJGYyxXQUNWLG1CdENySE8sZXNDdUhkLENBQUEsb0NBckZBLHlCQ2xCUSx3QnZDeEJGLENBQUEsY3NDZ0ROLDhCbEM5QlUsZ0JrQ2dDRyxDdEN2Q00sWXNDMkNuQixtQkM5QlEsYXZDekJGLENBQUEsWXNDNkROLG1CQ3BDUSxhdkN6QkYsQ0FBQSw4QnNDb0VOLHNCQUdnQixDQUFBLDREQUhoQiw4QmxDakRVLGlCSlBTLGVzQ21FTCxDQUFDLDhCQUtmLDZCbENqRVUsQ0FBQSwrQmtDRk0sZ0JBQ1Ysd0JDT0UsQ0FBQSxzQkR5RUosd0J0Q2pHRSxDQUFBLHlCc0NpR0YsZ0JBaEVGLGdDQ1RNLHdCdkN4QkYsQ0FBQSx5Q0drR3FCLGtCbUNtSHpCLFlBQ1MsQ0FBRSxrQkFJYixZQUNTLENBQUUsNkNBbUJOLGFBYk0sQ0FBQSxlQWFOLFlBVEgsQ0FBQSxDQUFBLGFBZUcsY0F2R0ksV0FDRixlQUNHLENBQUUsMkJBS0osd0JBbEthLENBQUEsMkJBeUtiLHdCQWpLYSxDQUFBLDJCQXdLYix3QnRDeVFRLENBQUEsdURzQy9QMEIsd0J0Q2dRbkIsQ0FBQSxjc0M5UGxCLGVBK0VPLENBQUUsb0JBRVosVUFDTyxDQUFFLFVFalRQLGlCQUNRLENBQUEsUUFDYixrQnhDZ0RRLENBQUEsMkNHNEYwQixRcUMxSW5DLGdCcEMrRFksQ0FBQSxDQUFBLDZCb0N2REYsY0FBQSxBQUVBLFVBQUEsYUFDRyxDQUFBLHFEQUNDLG1CQUNDLHFCQUNPLENBQUEsTUFDakIsY0FLTSxpQkFDSSxtQkFDQyxDQUFFLFVBSGIsY0FNUSxDQUFFLE1BQ1osYUFJTyxDQUFBLFNBRFYsa0JBSWlCLENBQUEsV0FEZixlQUlJLENBQUEsU0FQTixrQkFZSSxDQUFjLE1BQ2YsbUJ4Q0tVLG1CSWdCRCx1QkFBQSxDQUFBLHNCb0NiVixVQUNPLENBQUUsYUFJSixnQkFDTCxDQUFBLGtDQUlBLHNGQUM2RSxzQkFDMUQsZ0NBQ0YsQ0FBQSwyQ0FFZiwwRUFDbUUseUJBQy9DLENBQUEsNENBR3BCLDJFQUNvRSx5QkFDaEQsQ0FBQSxpREFHcEIsaUJBQ2MsQ0FBQSwyQ3JDOERpQix1RnFDM0RyQixnQnBDaEJGLENBQUEsQ0FBQSwyQ0QyRXVCLHVGcUMzRHJCLFlwQ2hCRixDQUFBLENBQUEseUNvQzBCUixlcEMxQlEsZ0JBQUEscUVvQ2tDc0Qsb0JBQzdDLGtCQUNMLFNBQ04scUJwQ3JDRSxDQUFBLHlDRGdGaUIseUNxQ3REekIsZ0JBRWdCLGtCQUNDLENBQUUsQ0FBQSwyQ0FIbkIsY0FlYSxrQkFDQyxNQUNWLE9BQ0EsV0FDTyxZQUNDLFdBQ1IsbUJBQ2EsQ0FBQSxrQ0FNakIsWUFDUyxhQUNDLGdFQUMrQyxxQkFDdEMsa0JBQ1AsU0FDTixrQkFDUyxDQUFBLGtDQUdmLGdCQUNZLGFBQ0YsQ0FBQSx5Q3JDY2Usa0NxQ2hCekIsa0JBS2dCLGNBQ0osZUFDRSxDQUFFLENBQUEsd0NBR2QsY3hDNUZFLGlCd0NxR1csbUJBQ0UsbUJBQ0EsZUFDYixDQUFXLDJDckNYZ0Isd0NxQ0Q3QixrQkFFYyxTQUNOLGtCQUNTLG9CQUNFLENBQUEsQ0FBQSxvQ0FmckIsY0EwQmEsWUFDRixZQUNDLGNBQ0MsNkRBQzJDLHFCQUNuQyxvQkFDSixlQUNILENBQUEsbUJBQ1gsb0VBTXNELGN4QzFIckQscUJ3Q2lJVyxDQUFBLHNCQVJuQixvQkFLbUIsQ0FBQSx5Q3JDNUJVLHNCcUN1QjdCLGlCQVlpQixpQkFDRSxxQkFDRyxnQ3hDdklkLGtCd0N5SVcsQ0FBRSxDQUFBLHdCQUluQixxQnBDM0hVLHdCQUFBLENBQUEseUNEZ0ZpQix3QnFDMkMzQix1QnBDM0hVLENBQUEsQ0FBQSwyQm9DMkhWLGlCQVNpQixnQkFDRixDQUFBLDBCQVZmLGNBY1csMEJBQ1UsZ0JBQ04sQ0FBRSxxQ0FJYixhQUNVLDBEQUN5QyxvQkFDbEMsQ0FBRSxxQ0FLbkIsYUFDVSw2REFDNEMsb0JBQ3JDLENBQUUscUNBSW5CLGFBQ1UsYUFDQSwrREFDOEMsb0JBQ3ZDLGtCQUNMLFNBQ0wsQ0FBQSxxQ0FLUCxhQUNVLGdFQUMrQyxxQkFDdEMsa0JBQ1AsU0FDTCxDQUFBLDZFQUtQLFlBQ1MsMEJBQ2MsV0FDZCxpQkFDSyxDQUFFLHlDckN2R08sNkVxQ21HdkIsWUFPVyxDQUFFLENBQUEsUUFPbkIsbUJ4Q2xOUyxnQndDb05LLGlCQUNGLENBQUEsMkNyQ3pIdUIsK0JxQzJIakMsb0JwQ3RNVSxDQUFBLENBQUEsdUNvQzJNTixrQkFDWSxjQUNILENBQUEseUNBRlQsY3hDN05FLGlCd0NtT1csZ0JBQ0EsQ0FBRSx5Q3JDbElRLHlDcUMySHZCLGtCQVVnQiwrQnhDdk9kLENBQUEsQ0FBQSx5Q0drR3FCLHdEcUMySW5CLDRCeEM3T0YsQ0FBQSxDQUFBLHFCd0NzUE4sU0FDRSxtQkFDZSxhQUNSLENBQUEseUNyQ3ZKa0IsaUNxQ3lKekIsY0FFYSxpQkFDRyxDQUFBLENBQUEsMEJBSWhCLGF4Q2xRSSxDQUFBLDJCd0N1UU4sa0JBQ1ksZXBDdFBGLFNvQ3dQSixpQnBDeFBJLENBQUEsa0NvQzJQUixZcEMzUFEsYUFBQSwrRG9DOFBnRCxtQkFDdEQsQ0FBZSxzQkFNakIsZ0JBQ1ksa0JBQ0MsQ0FBRSx5Q3JDdkxVLHNCcUNxTHpCLGNBS1csQ0FBRSxDQUFBLHNCQUlmLGFBQ1UsMkRBQzBDLHlCQUNqQyxDQUFBLGlDQUlqQixtQnhDdlNJLG1Cd0N5U2EsbUJBQ0Esa0JBQ0wsWUFDSCxDQUFFLDJDckMvTW9CLHVDcUMwTXZCLFdBU0YsVUFDSyxXQUNDLDhCQUNFLDJCeENuVFYsNEJBQUEsa0J3Q3NUWSxRQUNQLFVBQ0csQ0FBQSxDQUFBLHVDQUtWLGtCQUNZLGFBQ0YsU0FDUixDQUFLLHlDQUhQLGN4QzdURSxxQndDb1VXLGlCQUNFLDBCQUNFLHdCQUNKLHVEQUNxQyx5QkFDN0IsQ0FBQSwrQ0FQbEIsNEJBU3dCLENBQUEsMkNyQzlPRSxzQnFDc1BuQyw2QkFFaUIsQ0FBQSxDQUFBLHlCQUZqQixnQnBDalVZLENBQUEsMkNEMkV1Qix5QnFDc1BuQyxjQVdlLENwQzVVSCxDQUFBLFVvQ2lWWixlQUNZLENBQUUscUNkNUtaLGtCYytLZSxDQUFFLDJEQUVkLGVBQ0MsQ0FBQSxtRUFJQSxpQkFDYSxhQUNKLENBQUEsNEJBQ1IscUJBTUUsQ0FBQSIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzo0MDAsMzAwLDMwMGl0YWxpYyw0MDBpdGFsaWMsNzAwKTtAaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9T2xlbytTY3JpcHQ6NDAwLDcwMCk7QGZvbnQtZmFjZXtmb250LWZhbWlseTpcImZvdW5kYXRpb24taWNvbnNcIjtzcmM6dXJsKFwiLi4vZm9udHMvZm91bmRhdGlvbi1pY29ucy9mb3VuZGF0aW9uLWljb25zLmVvdFwiKTtzcmM6dXJsKFwiLi4vZm9udHMvZm91bmRhdGlvbi1pY29ucy9mb3VuZGF0aW9uLWljb25zLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiLi4vZm9udHMvZm91bmRhdGlvbi1pY29ucy9mb3VuZGF0aW9uLWljb25zLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb3VuZGF0aW9uLWljb25zLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSx1cmwoXCJmb3VuZGF0aW9uLWljb25zLnN2ZyNmb250Y3VzdG9tXCIpIGZvcm1hdChcInN2Z1wiKTtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHlsZTpub3JtYWx9LmZpLWFkZHJlc3MtYm9vazpiZWZvcmUsLmZpLWFsZXJ0OmJlZm9yZSwuZmktYWxpZ24tY2VudGVyOmJlZm9yZSwuZmktYWxpZ24tanVzdGlmeTpiZWZvcmUsLmZpLWFsaWduLWxlZnQ6YmVmb3JlLC5maS1hbGlnbi1yaWdodDpiZWZvcmUsLmZpLWFuY2hvcjpiZWZvcmUsLmZpLWFubm90YXRlOmJlZm9yZSwuZmktYXJjaGl2ZTpiZWZvcmUsLmZpLWFycm93LWRvd246YmVmb3JlLC5maS1hcnJvdy1sZWZ0OmJlZm9yZSwuZmktYXJyb3ctcmlnaHQ6YmVmb3JlLC5maS1hcnJvdy11cDpiZWZvcmUsLmZpLWFycm93cy1jb21wcmVzczpiZWZvcmUsLmZpLWFycm93cy1leHBhbmQ6YmVmb3JlLC5maS1hcnJvd3MtaW46YmVmb3JlLC5maS1hcnJvd3Mtb3V0OmJlZm9yZSwuZmktYXNsOmJlZm9yZSwuZmktYXN0ZXJpc2s6YmVmb3JlLC5maS1hdC1zaWduOmJlZm9yZSwuZmktYmFja2dyb3VuZC1jb2xvcjpiZWZvcmUsLmZpLWJhdHRlcnktZW1wdHk6YmVmb3JlLC5maS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlLC5maS1iYXR0ZXJ5LWhhbGY6YmVmb3JlLC5maS1iaXRjb2luLWNpcmNsZTpiZWZvcmUsLmZpLWJpdGNvaW46YmVmb3JlLC5maS1ibGluZDpiZWZvcmUsLmZpLWJsdWV0b290aDpiZWZvcmUsLmZpLWJvbGQ6YmVmb3JlLC5maS1ib29rLWJvb2ttYXJrOmJlZm9yZSwuZmktYm9vazpiZWZvcmUsLmZpLWJvb2ttYXJrOmJlZm9yZSwuZmktYnJhaWxsZTpiZWZvcmUsLmZpLWJ1cnN0LW5ldzpiZWZvcmUsLmZpLWJ1cnN0LXNhbGU6YmVmb3JlLC5maS1idXJzdDpiZWZvcmUsLmZpLWNhbGVuZGFyOmJlZm9yZSwuZmktY2FtZXJhOmJlZm9yZSwuZmktY2hlY2s6YmVmb3JlLC5maS1jaGVja2JveDpiZWZvcmUsLmZpLWNsaXBib2FyZC1ub3RlczpiZWZvcmUsLmZpLWNsaXBib2FyZC1wZW5jaWw6YmVmb3JlLC5maS1jbGlwYm9hcmQ6YmVmb3JlLC5maS1jbG9jazpiZWZvcmUsLmZpLWNsb3NlZC1jYXB0aW9uOmJlZm9yZSwuZmktY2xvdWQ6YmVmb3JlLC5maS1jb21tZW50LW1pbnVzOmJlZm9yZSwuZmktY29tbWVudC1xdW90ZXM6YmVmb3JlLC5maS1jb21tZW50LXZpZGVvOmJlZm9yZSwuZmktY29tbWVudDpiZWZvcmUsLmZpLWNvbW1lbnRzOmJlZm9yZSwuZmktY29tcGFzczpiZWZvcmUsLmZpLWNvbnRyYXN0OmJlZm9yZSwuZmktY3JlZGl0LWNhcmQ6YmVmb3JlLC5maS1jcm9wOmJlZm9yZSwuZmktY3Jvd246YmVmb3JlLC5maS1jc3MzOmJlZm9yZSwuZmktZGF0YWJhc2U6YmVmb3JlLC5maS1kaWUtZml2ZTpiZWZvcmUsLmZpLWRpZS1mb3VyOmJlZm9yZSwuZmktZGllLW9uZTpiZWZvcmUsLmZpLWRpZS1zaXg6YmVmb3JlLC5maS1kaWUtdGhyZWU6YmVmb3JlLC5maS1kaWUtdHdvOmJlZm9yZSwuZmktZGlzbGlrZTpiZWZvcmUsLmZpLWRvbGxhci1iaWxsOmJlZm9yZSwuZmktZG9sbGFyOmJlZm9yZSwuZmktZG93bmxvYWQ6YmVmb3JlLC5maS1lamVjdDpiZWZvcmUsLmZpLWVsZXZhdG9yOmJlZm9yZSwuZmktZXVybzpiZWZvcmUsLmZpLWV5ZTpiZWZvcmUsLmZpLWZhc3QtZm9yd2FyZDpiZWZvcmUsLmZpLWZlbWFsZS1zeW1ib2w6YmVmb3JlLC5maS1mZW1hbGU6YmVmb3JlLC5maS1maWx0ZXI6YmVmb3JlLC5maS1maXJzdC1haWQ6YmVmb3JlLC5maS1mbGFnOmJlZm9yZSwuZmktZm9sZGVyLWFkZDpiZWZvcmUsLmZpLWZvbGRlci1sb2NrOmJlZm9yZSwuZmktZm9sZGVyOmJlZm9yZSwuZmktZm9vdDpiZWZvcmUsLmZpLWZvdW5kYXRpb246YmVmb3JlLC5maS1ncmFwaC1iYXI6YmVmb3JlLC5maS1ncmFwaC1ob3Jpem9udGFsOmJlZm9yZSwuZmktZ3JhcGgtcGllOmJlZm9yZSwuZmktZ3JhcGgtdHJlbmQ6YmVmb3JlLC5maS1ndWlkZS1kb2c6YmVmb3JlLC5maS1oZWFyaW5nLWFpZDpiZWZvcmUsLmZpLWhlYXJ0OmJlZm9yZSwuZmktaG9tZTpiZWZvcmUsLmZpLWh0bWw1OmJlZm9yZSwuZmktaW5kZW50LWxlc3M6YmVmb3JlLC5maS1pbmRlbnQtbW9yZTpiZWZvcmUsLmZpLWluZm86YmVmb3JlLC5maS1pdGFsaWM6YmVmb3JlLC5maS1rZXk6YmVmb3JlLC5maS1sYXB0b3A6YmVmb3JlLC5maS1sYXlvdXQ6YmVmb3JlLC5maS1saWdodGJ1bGI6YmVmb3JlLC5maS1saWtlOmJlZm9yZSwuZmktbGluazpiZWZvcmUsLmZpLWxpc3QtYnVsbGV0OmJlZm9yZSwuZmktbGlzdC1udW1iZXI6YmVmb3JlLC5maS1saXN0LXRodW1ibmFpbHM6YmVmb3JlLC5maS1saXN0OmJlZm9yZSwuZmktbG9jazpiZWZvcmUsLmZpLWxvb3A6YmVmb3JlLC5maS1tYWduaWZ5aW5nLWdsYXNzOmJlZm9yZSwuZmktbWFpbDpiZWZvcmUsLmZpLW1hbGUtZmVtYWxlOmJlZm9yZSwuZmktbWFsZS1zeW1ib2w6YmVmb3JlLC5maS1tYWxlOmJlZm9yZSwuZmktbWFwOmJlZm9yZSwuZmktbWFya2VyOmJlZm9yZSwuZmktbWVnYXBob25lOmJlZm9yZSwuZmktbWljcm9waG9uZTpiZWZvcmUsLmZpLW1pbnVzLWNpcmNsZTpiZWZvcmUsLmZpLW1pbnVzOmJlZm9yZSwuZmktbW9iaWxlLXNpZ25hbDpiZWZvcmUsLmZpLW1vYmlsZTpiZWZvcmUsLmZpLW1vbml0b3I6YmVmb3JlLC5maS1tb3VudGFpbnM6YmVmb3JlLC5maS1tdXNpYzpiZWZvcmUsLmZpLW5leHQ6YmVmb3JlLC5maS1uby1kb2dzOmJlZm9yZSwuZmktbm8tc21va2luZzpiZWZvcmUsLmZpLXBhZ2UtYWRkOmJlZm9yZSwuZmktcGFnZS1jb3B5OmJlZm9yZSwuZmktcGFnZS1jc3Y6YmVmb3JlLC5maS1wYWdlLWRlbGV0ZTpiZWZvcmUsLmZpLXBhZ2UtZG9jOmJlZm9yZSwuZmktcGFnZS1lZGl0OmJlZm9yZSwuZmktcGFnZS1leHBvcnQtY3N2OmJlZm9yZSwuZmktcGFnZS1leHBvcnQtZG9jOmJlZm9yZSwuZmktcGFnZS1leHBvcnQtcGRmOmJlZm9yZSwuZmktcGFnZS1leHBvcnQ6YmVmb3JlLC5maS1wYWdlLWZpbGxlZDpiZWZvcmUsLmZpLXBhZ2UtbXVsdGlwbGU6YmVmb3JlLC5maS1wYWdlLXBkZjpiZWZvcmUsLmZpLXBhZ2UtcmVtb3ZlOmJlZm9yZSwuZmktcGFnZS1zZWFyY2g6YmVmb3JlLC5maS1wYWdlOmJlZm9yZSwuZmktcGFpbnQtYnVja2V0OmJlZm9yZSwuZmktcGFwZXJjbGlwOmJlZm9yZSwuZmktcGF1c2U6YmVmb3JlLC5maS1wYXc6YmVmb3JlLC5maS1wYXlwYWw6YmVmb3JlLC5maS1wZW5jaWw6YmVmb3JlLC5maS1waG90bzpiZWZvcmUsLmZpLXBsYXktY2lyY2xlOmJlZm9yZSwuZmktcGxheS12aWRlbzpiZWZvcmUsLmZpLXBsYXk6YmVmb3JlLC5maS1wbHVzOmJlZm9yZSwuZmktcG91bmQ6YmVmb3JlLC5maS1wb3dlcjpiZWZvcmUsLmZpLXByZXZpb3VzOmJlZm9yZSwuZmktcHJpY2UtdGFnOmJlZm9yZSwuZmktcHJpY2V0YWctbXVsdGlwbGU6YmVmb3JlLC5maS1wcmludDpiZWZvcmUsLmZpLXByb2hpYml0ZWQ6YmVmb3JlLC5maS1wcm9qZWN0aW9uLXNjcmVlbjpiZWZvcmUsLmZpLXB1enpsZTpiZWZvcmUsLmZpLXF1b3RlOmJlZm9yZSwuZmktcmVjb3JkOmJlZm9yZSwuZmktcmVmcmVzaDpiZWZvcmUsLmZpLXJlc3VsdHMtZGVtb2dyYXBoaWNzOmJlZm9yZSwuZmktcmVzdWx0czpiZWZvcmUsLmZpLXJld2luZC10ZW46YmVmb3JlLC5maS1yZXdpbmQ6YmVmb3JlLC5maS1yc3M6YmVmb3JlLC5maS1zYWZldHktY29uZTpiZWZvcmUsLmZpLXNhdmU6YmVmb3JlLC5maS1zaGFyZTpiZWZvcmUsLmZpLXNoZXJpZmYtYmFkZ2U6YmVmb3JlLC5maS1zaGllbGQ6YmVmb3JlLC5maS1zaG9wcGluZy1iYWc6YmVmb3JlLC5maS1zaG9wcGluZy1jYXJ0OmJlZm9yZSwuZmktc2h1ZmZsZTpiZWZvcmUsLmZpLXNrdWxsOmJlZm9yZSwuZmktc29jaWFsLTUwMHB4OmJlZm9yZSwuZmktc29jaWFsLWFkb2JlOmJlZm9yZSwuZmktc29jaWFsLWFtYXpvbjpiZWZvcmUsLmZpLXNvY2lhbC1hbmRyb2lkOmJlZm9yZSwuZmktc29jaWFsLWFwcGxlOmJlZm9yZSwuZmktc29jaWFsLWJlaGFuY2U6YmVmb3JlLC5maS1zb2NpYWwtYmluZzpiZWZvcmUsLmZpLXNvY2lhbC1ibG9nZ2VyOmJlZm9yZSwuZmktc29jaWFsLWRlbGljaW91czpiZWZvcmUsLmZpLXNvY2lhbC1kZXNpZ25lci1uZXdzOmJlZm9yZSwuZmktc29jaWFsLWRldmlhbnQtYXJ0OmJlZm9yZSwuZmktc29jaWFsLWRpZ2c6YmVmb3JlLC5maS1zb2NpYWwtZHJpYmJibGU6YmVmb3JlLC5maS1zb2NpYWwtZHJpdmU6YmVmb3JlLC5maS1zb2NpYWwtZHJvcGJveDpiZWZvcmUsLmZpLXNvY2lhbC1ldmVybm90ZTpiZWZvcmUsLmZpLXNvY2lhbC1mYWNlYm9vazpiZWZvcmUsLmZpLXNvY2lhbC1mbGlja3I6YmVmb3JlLC5maS1zb2NpYWwtZm9ycnN0OmJlZm9yZSwuZmktc29jaWFsLWZvdXJzcXVhcmU6YmVmb3JlLC5maS1zb2NpYWwtZ2FtZS1jZW50ZXI6YmVmb3JlLC5maS1zb2NpYWwtZ2l0aHViOmJlZm9yZSwuZmktc29jaWFsLWdvb2dsZS1wbHVzOmJlZm9yZSwuZmktc29jaWFsLWhhY2tlci1uZXdzOmJlZm9yZSwuZmktc29jaWFsLWhpNTpiZWZvcmUsLmZpLXNvY2lhbC1pbnN0YWdyYW06YmVmb3JlLC5maS1zb2NpYWwtam9vbWxhOmJlZm9yZSwuZmktc29jaWFsLWxhc3RmbTpiZWZvcmUsLmZpLXNvY2lhbC1saW5rZWRpbjpiZWZvcmUsLmZpLXNvY2lhbC1tZWRpdW06YmVmb3JlLC5maS1zb2NpYWwtbXlzcGFjZTpiZWZvcmUsLmZpLXNvY2lhbC1vcmt1dDpiZWZvcmUsLmZpLXNvY2lhbC1wYXRoOmJlZm9yZSwuZmktc29jaWFsLXBpY2FzYTpiZWZvcmUsLmZpLXNvY2lhbC1waW50ZXJlc3Q6YmVmb3JlLC5maS1zb2NpYWwtcmRpbzpiZWZvcmUsLmZpLXNvY2lhbC1yZWRkaXQ6YmVmb3JlLC5maS1zb2NpYWwtc2tpbGxzaGFyZTpiZWZvcmUsLmZpLXNvY2lhbC1za3lwZTpiZWZvcmUsLmZpLXNvY2lhbC1zbWFzaGluZy1tYWc6YmVmb3JlLC5maS1zb2NpYWwtc25hcGNoYXQ6YmVmb3JlLC5maS1zb2NpYWwtc3BvdGlmeTpiZWZvcmUsLmZpLXNvY2lhbC1zcXVpZG9vOmJlZm9yZSwuZmktc29jaWFsLXN0YWNrLW92ZXJmbG93OmJlZm9yZSwuZmktc29jaWFsLXN0ZWFtOmJlZm9yZSwuZmktc29jaWFsLXN0dW1ibGV1cG9uOmJlZm9yZSwuZmktc29jaWFsLXRyZWVob3VzZTpiZWZvcmUsLmZpLXNvY2lhbC10dW1ibHI6YmVmb3JlLC5maS1zb2NpYWwtdHdpdHRlcjpiZWZvcmUsLmZpLXNvY2lhbC12aW1lbzpiZWZvcmUsLmZpLXNvY2lhbC13aW5kb3dzOmJlZm9yZSwuZmktc29jaWFsLXhib3g6YmVmb3JlLC5maS1zb2NpYWwteWFob286YmVmb3JlLC5maS1zb2NpYWwteWVscDpiZWZvcmUsLmZpLXNvY2lhbC15b3V0dWJlOmJlZm9yZSwuZmktc29jaWFsLXplcnBseTpiZWZvcmUsLmZpLXNvY2lhbC16dXJiOmJlZm9yZSwuZmktc291bmQ6YmVmb3JlLC5maS1zdGFyOmJlZm9yZSwuZmktc3RvcDpiZWZvcmUsLmZpLXN0cmlrZXRocm91Z2g6YmVmb3JlLC5maS1zdWJzY3JpcHQ6YmVmb3JlLC5maS1zdXBlcnNjcmlwdDpiZWZvcmUsLmZpLXRhYmxldC1sYW5kc2NhcGU6YmVmb3JlLC5maS10YWJsZXQtcG9ydHJhaXQ6YmVmb3JlLC5maS10YXJnZXQtdHdvOmJlZm9yZSwuZmktdGFyZ2V0OmJlZm9yZSwuZmktdGVsZXBob25lLWFjY2Vzc2libGU6YmVmb3JlLC5maS10ZWxlcGhvbmU6YmVmb3JlLC5maS10ZXh0LWNvbG9yOmJlZm9yZSwuZmktdGh1bWJuYWlsczpiZWZvcmUsLmZpLXRpY2tldDpiZWZvcmUsLmZpLXRvcnNvLWJ1c2luZXNzOmJlZm9yZSwuZmktdG9yc28tZmVtYWxlOmJlZm9yZSwuZmktdG9yc286YmVmb3JlLC5maS10b3Jzb3MtYWxsLWZlbWFsZTpiZWZvcmUsLmZpLXRvcnNvcy1hbGw6YmVmb3JlLC5maS10b3Jzb3MtZmVtYWxlLW1hbGU6YmVmb3JlLC5maS10b3Jzb3MtbWFsZS1mZW1hbGU6YmVmb3JlLC5maS10b3Jzb3M6YmVmb3JlLC5maS10cmFzaDpiZWZvcmUsLmZpLXRyZWVzOmJlZm9yZSwuZmktdHJvcGh5OmJlZm9yZSwuZmktdW5kZXJsaW5lOmJlZm9yZSwuZmktdW5pdmVyc2FsLWFjY2VzczpiZWZvcmUsLmZpLXVubGluazpiZWZvcmUsLmZpLXVubG9jazpiZWZvcmUsLmZpLXVwbG9hZC1jbG91ZDpiZWZvcmUsLmZpLXVwbG9hZDpiZWZvcmUsLmZpLXVzYjpiZWZvcmUsLmZpLXZpZGVvOmJlZm9yZSwuZmktdm9sdW1lLW5vbmU6YmVmb3JlLC5maS12b2x1bWUtc3RyaWtlOmJlZm9yZSwuZmktdm9sdW1lOmJlZm9yZSwuZmktd2ViOmJlZm9yZSwuZmktd2hlZWxjaGFpcjpiZWZvcmUsLmZpLXdpZGdldDpiZWZvcmUsLmZpLXdyZW5jaDpiZWZvcmUsLmZpLXgtY2lyY2xlOmJlZm9yZSwuZmkteDpiZWZvcmUsLmZpLXllbjpiZWZvcmUsLmZpLXpvb20taW46YmVmb3JlLC5maS16b29tLW91dDpiZWZvcmV7Zm9udC1mYW1pbHk6XCJmb3VuZGF0aW9uLWljb25zXCI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7dGV4dC10cmFuc2Zvcm06bm9uZTtsaW5lLWhlaWdodDoxOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7ZGlzcGxheTppbmxpbmUtYmxvY2s7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXR9LmZpLWFkZHJlc3MtYm9vazpiZWZvcmV7Y29udGVudDpcIlxcZjEwMFwifS5maS1hbGVydDpiZWZvcmV7Y29udGVudDpcIlxcZjEwMVwifS5maS1hbGlnbi1jZW50ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMDJcIn0uZmktYWxpZ24tanVzdGlmeTpiZWZvcmV7Y29udGVudDpcIlxcZjEwM1wifS5maS1hbGlnbi1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxmMTA0XCJ9LmZpLWFsaWduLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxmMTA1XCJ9LmZpLWFuY2hvcjpiZWZvcmV7Y29udGVudDpcIlxcZjEwNlwifS5maS1hbm5vdGF0ZTpiZWZvcmV7Y29udGVudDpcIlxcZjEwN1wifS5maS1hcmNoaXZlOmJlZm9yZXtjb250ZW50OlwiXFxmMTA4XCJ9LmZpLWFycm93LWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMDlcIn0uZmktYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZjEwYVwifS5maS1hcnJvdy1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZjEwYlwifS5maS1hcnJvdy11cDpiZWZvcmV7Y29udGVudDpcIlxcZjEwY1wifS5maS1hcnJvd3MtY29tcHJlc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMGRcIn0uZmktYXJyb3dzLWV4cGFuZDpiZWZvcmV7Y29udGVudDpcIlxcZjEwZVwifS5maS1hcnJvd3MtaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMGZcIn0uZmktYXJyb3dzLW91dDpiZWZvcmV7Y29udGVudDpcIlxcZjExMFwifS5maS1hc2w6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTFcIn0uZmktYXN0ZXJpc2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTJcIn0uZmktYXQtc2lnbjpiZWZvcmV7Y29udGVudDpcIlxcZjExM1wifS5maS1iYWNrZ3JvdW5kLWNvbG9yOmJlZm9yZXtjb250ZW50OlwiXFxmMTE0XCJ9LmZpLWJhdHRlcnktZW1wdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTVcIn0uZmktYmF0dGVyeS1mdWxsOmJlZm9yZXtjb250ZW50OlwiXFxmMTE2XCJ9LmZpLWJhdHRlcnktaGFsZjpiZWZvcmV7Y29udGVudDpcIlxcZjExN1wifS5maS1iaXRjb2luLWNpcmNsZTpiZWZvcmV7Y29udGVudDpcIlxcZjExOFwifS5maS1iaXRjb2luOmJlZm9yZXtjb250ZW50OlwiXFxmMTE5XCJ9LmZpLWJsaW5kOmJlZm9yZXtjb250ZW50OlwiXFxmMTFhXCJ9LmZpLWJsdWV0b290aDpiZWZvcmV7Y29udGVudDpcIlxcZjExYlwifS5maS1ib2xkOmJlZm9yZXtjb250ZW50OlwiXFxmMTFjXCJ9LmZpLWJvb2stYm9va21hcms6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMWRcIn0uZmktYm9vazpiZWZvcmV7Y29udGVudDpcIlxcZjExZVwifS5maS1ib29rbWFyazpiZWZvcmV7Y29udGVudDpcIlxcZjExZlwifS5maS1icmFpbGxlOmJlZm9yZXtjb250ZW50OlwiXFxmMTIwXCJ9LmZpLWJ1cnN0LW5ldzpiZWZvcmV7Y29udGVudDpcIlxcZjEyMVwifS5maS1idXJzdC1zYWxlOmJlZm9yZXtjb250ZW50OlwiXFxmMTIyXCJ9LmZpLWJ1cnN0OmJlZm9yZXtjb250ZW50OlwiXFxmMTIzXCJ9LmZpLWNhbGVuZGFyOmJlZm9yZXtjb250ZW50OlwiXFxmMTI0XCJ9LmZpLWNhbWVyYTpiZWZvcmV7Y29udGVudDpcIlxcZjEyNVwifS5maS1jaGVjazpiZWZvcmV7Y29udGVudDpcIlxcZjEyNlwifS5maS1jaGVja2JveDpiZWZvcmV7Y29udGVudDpcIlxcZjEyN1wifS5maS1jbGlwYm9hcmQtbm90ZXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMjhcIn0uZmktY2xpcGJvYXJkLXBlbmNpbDpiZWZvcmV7Y29udGVudDpcIlxcZjEyOVwifS5maS1jbGlwYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMmFcIn0uZmktY2xvY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMmJcIn0uZmktY2xvc2VkLWNhcHRpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMmNcIn0uZmktY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMmRcIn0uZmktY29tbWVudC1taW51czpiZWZvcmV7Y29udGVudDpcIlxcZjEyZVwifS5maS1jb21tZW50LXF1b3RlczpiZWZvcmV7Y29udGVudDpcIlxcZjEyZlwifS5maS1jb21tZW50LXZpZGVvOmJlZm9yZXtjb250ZW50OlwiXFxmMTMwXCJ9LmZpLWNvbW1lbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMzFcIn0uZmktY29tbWVudHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMzJcIn0uZmktY29tcGFzczpiZWZvcmV7Y29udGVudDpcIlxcZjEzM1wifS5maS1jb250cmFzdDpiZWZvcmV7Y29udGVudDpcIlxcZjEzNFwifS5maS1jcmVkaXQtY2FyZDpiZWZvcmV7Y29udGVudDpcIlxcZjEzNVwifS5maS1jcm9wOmJlZm9yZXtjb250ZW50OlwiXFxmMTM2XCJ9LmZpLWNyb3duOmJlZm9yZXtjb250ZW50OlwiXFxmMTM3XCJ9LmZpLWNzczM6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMzhcIn0uZmktZGF0YWJhc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMzlcIn0uZmktZGllLWZpdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxM2FcIn0uZmktZGllLWZvdXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxM2JcIn0uZmktZGllLW9uZTpiZWZvcmV7Y29udGVudDpcIlxcZjEzY1wifS5maS1kaWUtc2l4OmJlZm9yZXtjb250ZW50OlwiXFxmMTNkXCJ9LmZpLWRpZS10aHJlZTpiZWZvcmV7Y29udGVudDpcIlxcZjEzZVwifS5maS1kaWUtdHdvOmJlZm9yZXtjb250ZW50OlwiXFxmMTNmXCJ9LmZpLWRpc2xpa2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNDBcIn0uZmktZG9sbGFyLWJpbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNDFcIn0uZmktZG9sbGFyOmJlZm9yZXtjb250ZW50OlwiXFxmMTQyXCJ9LmZpLWRvd25sb2FkOmJlZm9yZXtjb250ZW50OlwiXFxmMTQzXCJ9LmZpLWVqZWN0OmJlZm9yZXtjb250ZW50OlwiXFxmMTQ0XCJ9LmZpLWVsZXZhdG9yOmJlZm9yZXtjb250ZW50OlwiXFxmMTQ1XCJ9LmZpLWV1cm86YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNDZcIn0uZmktZXllOmJlZm9yZXtjb250ZW50OlwiXFxmMTQ3XCJ9LmZpLWZhc3QtZm9yd2FyZDpiZWZvcmV7Y29udGVudDpcIlxcZjE0OFwifS5maS1mZW1hbGUtc3ltYm9sOmJlZm9yZXtjb250ZW50OlwiXFxmMTQ5XCJ9LmZpLWZlbWFsZTpiZWZvcmV7Y29udGVudDpcIlxcZjE0YVwifS5maS1maWx0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNGJcIn0uZmktZmlyc3QtYWlkOmJlZm9yZXtjb250ZW50OlwiXFxmMTRjXCJ9LmZpLWZsYWc6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNGRcIn0uZmktZm9sZGVyLWFkZDpiZWZvcmV7Y29udGVudDpcIlxcZjE0ZVwifS5maS1mb2xkZXItbG9jazpiZWZvcmV7Y29udGVudDpcIlxcZjE0ZlwifS5maS1mb2xkZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNTBcIn0uZmktZm9vdDpiZWZvcmV7Y29udGVudDpcIlxcZjE1MVwifS5maS1mb3VuZGF0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxmMTUyXCJ9LmZpLWdyYXBoLWJhcjpiZWZvcmV7Y29udGVudDpcIlxcZjE1M1wifS5maS1ncmFwaC1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OlwiXFxmMTU0XCJ9LmZpLWdyYXBoLXBpZTpiZWZvcmV7Y29udGVudDpcIlxcZjE1NVwifS5maS1ncmFwaC10cmVuZDpiZWZvcmV7Y29udGVudDpcIlxcZjE1NlwifS5maS1ndWlkZS1kb2c6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNTdcIn0uZmktaGVhcmluZy1haWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNThcIn0uZmktaGVhcnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNTlcIn0uZmktaG9tZTpiZWZvcmV7Y29udGVudDpcIlxcZjE1YVwifS5maS1odG1sNTpiZWZvcmV7Y29udGVudDpcIlxcZjE1YlwifS5maS1pbmRlbnQtbGVzczpiZWZvcmV7Y29udGVudDpcIlxcZjE1Y1wifS5maS1pbmRlbnQtbW9yZTpiZWZvcmV7Y29udGVudDpcIlxcZjE1ZFwifS5maS1pbmZvOmJlZm9yZXtjb250ZW50OlwiXFxmMTVlXCJ9LmZpLWl0YWxpYzpiZWZvcmV7Y29udGVudDpcIlxcZjE1ZlwifS5maS1rZXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNjBcIn0uZmktbGFwdG9wOmJlZm9yZXtjb250ZW50OlwiXFxmMTYxXCJ9LmZpLWxheW91dDpiZWZvcmV7Y29udGVudDpcIlxcZjE2MlwifS5maS1saWdodGJ1bGI6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNjNcIn0uZmktbGlrZTpiZWZvcmV7Y29udGVudDpcIlxcZjE2NFwifS5maS1saW5rOmJlZm9yZXtjb250ZW50OlwiXFxmMTY1XCJ9LmZpLWxpc3QtYnVsbGV0OmJlZm9yZXtjb250ZW50OlwiXFxmMTY2XCJ9LmZpLWxpc3QtbnVtYmVyOmJlZm9yZXtjb250ZW50OlwiXFxmMTY3XCJ9LmZpLWxpc3QtdGh1bWJuYWlsczpiZWZvcmV7Y29udGVudDpcIlxcZjE2OFwifS5maS1saXN0OmJlZm9yZXtjb250ZW50OlwiXFxmMTY5XCJ9LmZpLWxvY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNmFcIn0uZmktbG9vcDpiZWZvcmV7Y29udGVudDpcIlxcZjE2YlwifS5maS1tYWduaWZ5aW5nLWdsYXNzOmJlZm9yZXtjb250ZW50OlwiXFxmMTZjXCJ9LmZpLW1haWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNmRcIn0uZmktbWFsZS1mZW1hbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNmVcIn0uZmktbWFsZS1zeW1ib2w6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNmZcIn0uZmktbWFsZTpiZWZvcmV7Y29udGVudDpcIlxcZjE3MFwifS5maS1tYXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxNzFcIn0uZmktbWFya2VyOmJlZm9yZXtjb250ZW50OlwiXFxmMTcyXCJ9LmZpLW1lZ2FwaG9uZTpiZWZvcmV7Y29udGVudDpcIlxcZjE3M1wifS5maS1taWNyb3Bob25lOmJlZm9yZXtjb250ZW50OlwiXFxmMTc0XCJ9LmZpLW1pbnVzLWNpcmNsZTpiZWZvcmV7Y29udGVudDpcIlxcZjE3NVwifS5maS1taW51czpiZWZvcmV7Y29udGVudDpcIlxcZjE3NlwifS5maS1tb2JpbGUtc2lnbmFsOmJlZm9yZXtjb250ZW50OlwiXFxmMTc3XCJ9LmZpLW1vYmlsZTpiZWZvcmV7Y29udGVudDpcIlxcZjE3OFwifS5maS1tb25pdG9yOmJlZm9yZXtjb250ZW50OlwiXFxmMTc5XCJ9LmZpLW1vdW50YWluczpiZWZvcmV7Y29udGVudDpcIlxcZjE3YVwifS5maS1tdXNpYzpiZWZvcmV7Y29udGVudDpcIlxcZjE3YlwifS5maS1uZXh0OmJlZm9yZXtjb250ZW50OlwiXFxmMTdjXCJ9LmZpLW5vLWRvZ3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxN2RcIn0uZmktbm8tc21va2luZzpiZWZvcmV7Y29udGVudDpcIlxcZjE3ZVwifS5maS1wYWdlLWFkZDpiZWZvcmV7Y29udGVudDpcIlxcZjE3ZlwifS5maS1wYWdlLWNvcHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxODBcIn0uZmktcGFnZS1jc3Y6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxODFcIn0uZmktcGFnZS1kZWxldGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxODJcIn0uZmktcGFnZS1kb2M6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxODNcIn0uZmktcGFnZS1lZGl0OmJlZm9yZXtjb250ZW50OlwiXFxmMTg0XCJ9LmZpLXBhZ2UtZXhwb3J0LWNzdjpiZWZvcmV7Y29udGVudDpcIlxcZjE4NVwifS5maS1wYWdlLWV4cG9ydC1kb2M6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxODZcIn0uZmktcGFnZS1leHBvcnQtcGRmOmJlZm9yZXtjb250ZW50OlwiXFxmMTg3XCJ9LmZpLXBhZ2UtZXhwb3J0OmJlZm9yZXtjb250ZW50OlwiXFxmMTg4XCJ9LmZpLXBhZ2UtZmlsbGVkOmJlZm9yZXtjb250ZW50OlwiXFxmMTg5XCJ9LmZpLXBhZ2UtbXVsdGlwbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxOGFcIn0uZmktcGFnZS1wZGY6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxOGJcIn0uZmktcGFnZS1yZW1vdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxOGNcIn0uZmktcGFnZS1zZWFyY2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxOGRcIn0uZmktcGFnZTpiZWZvcmV7Y29udGVudDpcIlxcZjE4ZVwifS5maS1wYWludC1idWNrZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxOGZcIn0uZmktcGFwZXJjbGlwOmJlZm9yZXtjb250ZW50OlwiXFxmMTkwXCJ9LmZpLXBhdXNlOmJlZm9yZXtjb250ZW50OlwiXFxmMTkxXCJ9LmZpLXBhdzpiZWZvcmV7Y29udGVudDpcIlxcZjE5MlwifS5maS1wYXlwYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxOTNcIn0uZmktcGVuY2lsOmJlZm9yZXtjb250ZW50OlwiXFxmMTk0XCJ9LmZpLXBob3RvOmJlZm9yZXtjb250ZW50OlwiXFxmMTk1XCJ9LmZpLXBsYXktY2lyY2xlOmJlZm9yZXtjb250ZW50OlwiXFxmMTk2XCJ9LmZpLXBsYXktdmlkZW86YmVmb3Jle2NvbnRlbnQ6XCJcXGYxOTdcIn0uZmktcGxheTpiZWZvcmV7Y29udGVudDpcIlxcZjE5OFwifS5maS1wbHVzOmJlZm9yZXtjb250ZW50OlwiXFxmMTk5XCJ9LmZpLXBvdW5kOmJlZm9yZXtjb250ZW50OlwiXFxmMTlhXCJ9LmZpLXBvd2VyOmJlZm9yZXtjb250ZW50OlwiXFxmMTliXCJ9LmZpLXByZXZpb3VzOmJlZm9yZXtjb250ZW50OlwiXFxmMTljXCJ9LmZpLXByaWNlLXRhZzpiZWZvcmV7Y29udGVudDpcIlxcZjE5ZFwifS5maS1wcmljZXRhZy1tdWx0aXBsZTpiZWZvcmV7Y29udGVudDpcIlxcZjE5ZVwifS5maS1wcmludDpiZWZvcmV7Y29udGVudDpcIlxcZjE5ZlwifS5maS1wcm9oaWJpdGVkOmJlZm9yZXtjb250ZW50OlwiXFxmMWEwXCJ9LmZpLXByb2plY3Rpb24tc2NyZWVuOmJlZm9yZXtjb250ZW50OlwiXFxmMWExXCJ9LmZpLXB1enpsZTpiZWZvcmV7Y29udGVudDpcIlxcZjFhMlwifS5maS1xdW90ZTpiZWZvcmV7Y29udGVudDpcIlxcZjFhM1wifS5maS1yZWNvcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxYTRcIn0uZmktcmVmcmVzaDpiZWZvcmV7Y29udGVudDpcIlxcZjFhNVwifS5maS1yZXN1bHRzLWRlbW9ncmFwaGljczpiZWZvcmV7Y29udGVudDpcIlxcZjFhNlwifS5maS1yZXN1bHRzOmJlZm9yZXtjb250ZW50OlwiXFxmMWE3XCJ9LmZpLXJld2luZC10ZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGYxYThcIn0uZmktcmV3aW5kOmJlZm9yZXtjb250ZW50OlwiXFxmMWE5XCJ9LmZpLXJzczpiZWZvcmV7Y29udGVudDpcIlxcZjFhYVwifS5maS1zYWZldHktY29uZTpiZWZvcmV7Y29udGVudDpcIlxcZjFhYlwifS5maS1zYXZlOmJlZm9yZXtjb250ZW50OlwiXFxmMWFjXCJ9LmZpLXNoYXJlOmJlZm9yZXtjb250ZW50OlwiXFxmMWFkXCJ9LmZpLXNoZXJpZmYtYmFkZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxYWVcIn0uZmktc2hpZWxkOmJlZm9yZXtjb250ZW50OlwiXFxmMWFmXCJ9LmZpLXNob3BwaW5nLWJhZzpiZWZvcmV7Y29udGVudDpcIlxcZjFiMFwifS5maS1zaG9wcGluZy1jYXJ0OmJlZm9yZXtjb250ZW50OlwiXFxmMWIxXCJ9LmZpLXNodWZmbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxYjJcIn0uZmktc2t1bGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxYjNcIn0uZmktc29jaWFsLTUwMHB4OmJlZm9yZXtjb250ZW50OlwiXFxmMWI0XCJ9LmZpLXNvY2lhbC1hZG9iZTpiZWZvcmV7Y29udGVudDpcIlxcZjFiNVwifS5maS1zb2NpYWwtYW1hem9uOmJlZm9yZXtjb250ZW50OlwiXFxmMWI2XCJ9LmZpLXNvY2lhbC1hbmRyb2lkOmJlZm9yZXtjb250ZW50OlwiXFxmMWI3XCJ9LmZpLXNvY2lhbC1hcHBsZTpiZWZvcmV7Y29udGVudDpcIlxcZjFiOFwifS5maS1zb2NpYWwtYmVoYW5jZTpiZWZvcmV7Y29udGVudDpcIlxcZjFiOVwifS5maS1zb2NpYWwtYmluZzpiZWZvcmV7Y29udGVudDpcIlxcZjFiYVwifS5maS1zb2NpYWwtYmxvZ2dlcjpiZWZvcmV7Y29udGVudDpcIlxcZjFiYlwifS5maS1zb2NpYWwtZGVsaWNpb3VzOmJlZm9yZXtjb250ZW50OlwiXFxmMWJjXCJ9LmZpLXNvY2lhbC1kZXNpZ25lci1uZXdzOmJlZm9yZXtjb250ZW50OlwiXFxmMWJkXCJ9LmZpLXNvY2lhbC1kZXZpYW50LWFydDpiZWZvcmV7Y29udGVudDpcIlxcZjFiZVwifS5maS1zb2NpYWwtZGlnZzpiZWZvcmV7Y29udGVudDpcIlxcZjFiZlwifS5maS1zb2NpYWwtZHJpYmJibGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxYzBcIn0uZmktc29jaWFsLWRyaXZlOmJlZm9yZXtjb250ZW50OlwiXFxmMWMxXCJ9LmZpLXNvY2lhbC1kcm9wYm94OmJlZm9yZXtjb250ZW50OlwiXFxmMWMyXCJ9LmZpLXNvY2lhbC1ldmVybm90ZTpiZWZvcmV7Y29udGVudDpcIlxcZjFjM1wifS5maS1zb2NpYWwtZmFjZWJvb2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxYzRcIn0uZmktc29jaWFsLWZsaWNrcjpiZWZvcmV7Y29udGVudDpcIlxcZjFjNVwifS5maS1zb2NpYWwtZm9ycnN0OmJlZm9yZXtjb250ZW50OlwiXFxmMWM2XCJ9LmZpLXNvY2lhbC1mb3Vyc3F1YXJlOmJlZm9yZXtjb250ZW50OlwiXFxmMWM3XCJ9LmZpLXNvY2lhbC1nYW1lLWNlbnRlcjpiZWZvcmV7Y29udGVudDpcIlxcZjFjOFwifS5maS1zb2NpYWwtZ2l0aHViOmJlZm9yZXtjb250ZW50OlwiXFxmMWM5XCJ9LmZpLXNvY2lhbC1nb29nbGUtcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZjFjYVwifS5maS1zb2NpYWwtaGFja2VyLW5ld3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxY2JcIn0uZmktc29jaWFsLWhpNTpiZWZvcmV7Y29udGVudDpcIlxcZjFjY1wifS5maS1zb2NpYWwtaW5zdGFncmFtOmJlZm9yZXtjb250ZW50OlwiXFxmMWNkXCJ9LmZpLXNvY2lhbC1qb29tbGE6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxY2VcIn0uZmktc29jaWFsLWxhc3RmbTpiZWZvcmV7Y29udGVudDpcIlxcZjFjZlwifS5maS1zb2NpYWwtbGlua2VkaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZDBcIn0uZmktc29jaWFsLW1lZGl1bTpiZWZvcmV7Y29udGVudDpcIlxcZjFkMVwifS5maS1zb2NpYWwtbXlzcGFjZTpiZWZvcmV7Y29udGVudDpcIlxcZjFkMlwifS5maS1zb2NpYWwtb3JrdXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZDNcIn0uZmktc29jaWFsLXBhdGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZDRcIn0uZmktc29jaWFsLXBpY2FzYTpiZWZvcmV7Y29udGVudDpcIlxcZjFkNVwifS5maS1zb2NpYWwtcGludGVyZXN0OmJlZm9yZXtjb250ZW50OlwiXFxmMWQ2XCJ9LmZpLXNvY2lhbC1yZGlvOmJlZm9yZXtjb250ZW50OlwiXFxmMWQ3XCJ9LmZpLXNvY2lhbC1yZWRkaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZDhcIn0uZmktc29jaWFsLXNraWxsc2hhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZDlcIn0uZmktc29jaWFsLXNreXBlOmJlZm9yZXtjb250ZW50OlwiXFxmMWRhXCJ9LmZpLXNvY2lhbC1zbWFzaGluZy1tYWc6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZGJcIn0uZmktc29jaWFsLXNuYXBjaGF0OmJlZm9yZXtjb250ZW50OlwiXFxmMWRjXCJ9LmZpLXNvY2lhbC1zcG90aWZ5OmJlZm9yZXtjb250ZW50OlwiXFxmMWRkXCJ9LmZpLXNvY2lhbC1zcXVpZG9vOmJlZm9yZXtjb250ZW50OlwiXFxmMWRlXCJ9LmZpLXNvY2lhbC1zdGFjay1vdmVyZmxvdzpiZWZvcmV7Y29udGVudDpcIlxcZjFkZlwifS5maS1zb2NpYWwtc3RlYW06YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZTBcIn0uZmktc29jaWFsLXN0dW1ibGV1cG9uOmJlZm9yZXtjb250ZW50OlwiXFxmMWUxXCJ9LmZpLXNvY2lhbC10cmVlaG91c2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZTJcIn0uZmktc29jaWFsLXR1bWJscjpiZWZvcmV7Y29udGVudDpcIlxcZjFlM1wifS5maS1zb2NpYWwtdHdpdHRlcjpiZWZvcmV7Y29udGVudDpcIlxcZjFlNFwifS5maS1zb2NpYWwtdmltZW86YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZTVcIn0uZmktc29jaWFsLXdpbmRvd3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZTZcIn0uZmktc29jaWFsLXhib3g6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZTdcIn0uZmktc29jaWFsLXlhaG9vOmJlZm9yZXtjb250ZW50OlwiXFxmMWU4XCJ9LmZpLXNvY2lhbC15ZWxwOmJlZm9yZXtjb250ZW50OlwiXFxmMWU5XCJ9LmZpLXNvY2lhbC15b3V0dWJlOmJlZm9yZXtjb250ZW50OlwiXFxmMWVhXCJ9LmZpLXNvY2lhbC16ZXJwbHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZWJcIn0uZmktc29jaWFsLXp1cmI6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZWNcIn0uZmktc291bmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZWRcIn0uZmktc3RhcjpiZWZvcmV7Y29udGVudDpcIlxcZjFlZVwifS5maS1zdG9wOmJlZm9yZXtjb250ZW50OlwiXFxmMWVmXCJ9LmZpLXN0cmlrZXRocm91Z2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZjBcIn0uZmktc3Vic2NyaXB0OmJlZm9yZXtjb250ZW50OlwiXFxmMWYxXCJ9LmZpLXN1cGVyc2NyaXB0OmJlZm9yZXtjb250ZW50OlwiXFxmMWYyXCJ9LmZpLXRhYmxldC1sYW5kc2NhcGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZjNcIn0uZmktdGFibGV0LXBvcnRyYWl0OmJlZm9yZXtjb250ZW50OlwiXFxmMWY0XCJ9LmZpLXRhcmdldC10d286YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZjVcIn0uZmktdGFyZ2V0OmJlZm9yZXtjb250ZW50OlwiXFxmMWY2XCJ9LmZpLXRlbGVwaG9uZS1hY2Nlc3NpYmxlOmJlZm9yZXtjb250ZW50OlwiXFxmMWY3XCJ9LmZpLXRlbGVwaG9uZTpiZWZvcmV7Y29udGVudDpcIlxcZjFmOFwifS5maS10ZXh0LWNvbG9yOmJlZm9yZXtjb250ZW50OlwiXFxmMWY5XCJ9LmZpLXRodW1ibmFpbHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxZmFcIn0uZmktdGlja2V0OmJlZm9yZXtjb250ZW50OlwiXFxmMWZiXCJ9LmZpLXRvcnNvLWJ1c2luZXNzOmJlZm9yZXtjb250ZW50OlwiXFxmMWZjXCJ9LmZpLXRvcnNvLWZlbWFsZTpiZWZvcmV7Y29udGVudDpcIlxcZjFmZFwifS5maS10b3JzbzpiZWZvcmV7Y29udGVudDpcIlxcZjFmZVwifS5maS10b3Jzb3MtYWxsLWZlbWFsZTpiZWZvcmV7Y29udGVudDpcIlxcZjFmZlwifS5maS10b3Jzb3MtYWxsOmJlZm9yZXtjb250ZW50OlwiXFxmMjAwXCJ9LmZpLXRvcnNvcy1mZW1hbGUtbWFsZTpiZWZvcmV7Y29udGVudDpcIlxcZjIwMVwifS5maS10b3Jzb3MtbWFsZS1mZW1hbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYyMDJcIn0uZmktdG9yc29zOmJlZm9yZXtjb250ZW50OlwiXFxmMjAzXCJ9LmZpLXRyYXNoOmJlZm9yZXtjb250ZW50OlwiXFxmMjA0XCJ9LmZpLXRyZWVzOmJlZm9yZXtjb250ZW50OlwiXFxmMjA1XCJ9LmZpLXRyb3BoeTpiZWZvcmV7Y29udGVudDpcIlxcZjIwNlwifS5maS11bmRlcmxpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYyMDdcIn0uZmktdW5pdmVyc2FsLWFjY2VzczpiZWZvcmV7Y29udGVudDpcIlxcZjIwOFwifS5maS11bmxpbms6YmVmb3Jle2NvbnRlbnQ6XCJcXGYyMDlcIn0uZmktdW5sb2NrOmJlZm9yZXtjb250ZW50OlwiXFxmMjBhXCJ9LmZpLXVwbG9hZC1jbG91ZDpiZWZvcmV7Y29udGVudDpcIlxcZjIwYlwifS5maS11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGYyMGNcIn0uZmktdXNiOmJlZm9yZXtjb250ZW50OlwiXFxmMjBkXCJ9LmZpLXZpZGVvOmJlZm9yZXtjb250ZW50OlwiXFxmMjBlXCJ9LmZpLXZvbHVtZS1ub25lOmJlZm9yZXtjb250ZW50OlwiXFxmMjBmXCJ9LmZpLXZvbHVtZS1zdHJpa2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGYyMTBcIn0uZmktdm9sdW1lOmJlZm9yZXtjb250ZW50OlwiXFxmMjExXCJ9LmZpLXdlYjpiZWZvcmV7Y29udGVudDpcIlxcZjIxMlwifS5maS13aGVlbGNoYWlyOmJlZm9yZXtjb250ZW50OlwiXFxmMjEzXCJ9LmZpLXdpZGdldDpiZWZvcmV7Y29udGVudDpcIlxcZjIxNFwifS5maS13cmVuY2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGYyMTVcIn0uZmkteC1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGYyMTZcIn0uZmkteDpiZWZvcmV7Y29udGVudDpcIlxcZjIxN1wifS5maS15ZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGYyMThcIn0uZmktem9vbS1pbjpiZWZvcmV7Y29udGVudDpcIlxcZjIxOVwifS5maS16b29tLW91dDpiZWZvcmV7Y29udGVudDpcIlxcZjIxYVwifS5tZW51LS1tYWlue3Bvc2l0aW9uOnJlbGF0aXZlfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVudS0tbWFpbiAubmF2e2Zsb2F0OnJpZ2h0fX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSl7Lm1lbnUtLW1haW4gLm5hdiB1bC5tZW51LmRyb3Bkb3duIC5tZW51LWxldmVsLTB7aGVpZ2h0OjUuMTg3NXJlbX19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZW51LS1tYWluIC5uYXYgdWwubWVudS5kcm9wZG93bntoZWlnaHQ6NS4xODc1cmVtfX0ubWVudS0tbWFpbiAubmF2IHVsLm1lbnUgbGl7bGlzdC1zdHlsZTpub25lfS5tZW51LS1tYWluIC5uYXYgdWwubWVudSBsaSBhe2NvbG9yOiNhMzZjMDE7Zm9udC1zaXplOjEuMnJlbTtmb250LXdlaWdodDpib2xkO3BhZGRpbmc6LjdyZW0gMS4ycmVtfS5tZW51LS1tYWluIC5uYXYgdWwubWVudSBsaSBhLmlzLWFjdGl2ZXtjb2xvcjojZmVmZWZlfS5tZW51LS1tYWluIC5uYXYgdWwubWVudSBsaSB1bHtkaXNwbGF5Om5vbmV9Lm1lbnUtLW1haW4gLm5hdiB1bC5tZW51IGxpIHVsLnN1Ym1lbnV7Ym9yZGVyLXJhZGl1czowIDAgMTBweCAxMHB4O21hcmdpbi1sZWZ0Oi0wLjdyZW19Lm1lbnUtLW1haW4gLm5hdiB1bC5tZW51IGxpIHVsLnN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZle2Rpc3BsYXk6YmxvY2t9Lm1lbnUtLW1haW4gLm5hdiB1bC5tZW51IGxpIHVsLnN1Ym1lbnUuZmlyc3Qtc3Vie3RvcDoxMDAlO2xlZnQ6LTMwJX0ubWVudS0tbWFpbiAubmF2IHVsLm1lbnUgbGkgdWwuc3VibWVudSBsaXtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTZlNmU2O3RleHQtYWxpZ246Y2VudGVyfS5tZW51LS1tYWluIC5uYXYgdWwubWVudSBsaSB1bC5zdWJtZW51IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtaXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206bm9uZX0ubWVudS0tbWFpbiAubmF2IHVsLm1lbnUgbGkgdWwuc3VibWVudSBsaSBhe2NvbG9yOiM0ZDRkNGQ7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJTtwYWRkaW5nOjAuN3JlbSAwLjVyZW07Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc2l6ZToxcmVtfS5tZW51LS1tYWluIC5uYXYgLmlzLWRyaWxsZG93bnt3aWR0aDoxMDAlICFpbXBvcnRhbnQ7b3ZlcmZsb3c6dmlzaWJsZSAhaW1wb3J0YW50fS5tZW51LS1tYWluIC5uYXYgLmlzLWRyaWxsZG93biB1bC5tZW51e2JhY2tncm91bmQ6I2ZlZmVmZX0ubWVudS0tbWFpbiAubmF2IC5pcy1kcmlsbGRvd24gdWwubWVudSBsaXtiYWNrZ3JvdW5kOiNmZWZlZmV9Lm1lbnUtLW1haW4gLm5hdiAuaXMtZHJpbGxkb3duIHVsLm1lbnUgbGkubWVudS1sZXZlbC0we3RleHQtYWxpZ246Y2VudGVyO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlNmU2ZTZ9Lm1lbnUtLW1haW4gLm5hdiAuaXMtZHJpbGxkb3duIHVsLm1lbnUgbGkubWVudS1sZXZlbC0wIGF7d2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MC43cmVtIDAuNXJlbTtjb2xvcjojNGQ0ZDRkfS5tZW51LS1tYWluIC5uYXYgLmlzLWRyaWxsZG93biB1bC5tZW51IGxpIHVsLnN1Ym1lbnV7ZGlzcGxheTpibG9jazttYXJnaW46MDtib3JkZXItcmFkaXVzOjB9Lm1lbnUtLW1haW4gLm5hdiAuaXMtZHJpbGxkb3duIHVsLm1lbnUgbGkgdWwuc3VibWVudSBsaS5qcy1kcmlsbGRvd24tYmFja3twb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO3RvcDowcHg7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDojZTZlNmU2fS5tZW51LS1tYWluIC5uYXYgLmlzLWRyaWxsZG93biB1bC5tZW51IGxpIHVsLnN1Ym1lbnUgbGkuanMtZHJpbGxkb3duLWJhY2sgYXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MC43cmVtIDAuNXJlbX0ubWVudS0tbWFpbiAubmF2IC5pcy1kcmlsbGRvd24gdWwubWVudSBsaSB1bC5zdWJtZW51IGxpLmpzLWRyaWxsZG93bi1iYWNrIGEgLmZpLXh7cG9zaXRpb246cmVsYXRpdmU7dG9wOi01cHg7cmlnaHQ6LTVweH0jYnVyZ2Vye3RleHQtYWxpZ246cmlnaHR9I2J1cmdlciAubWVudS1pY29ue3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDozMHB4O2hlaWdodDoyNHB4O2N1cnNvcjpwb2ludGVyfSNidXJnZXIgLm1lbnUtaWNvbjo6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6NHB4O2JhY2tncm91bmQ6I2ZlZmVmZTtib3gtc2hhZG93OjAgMTBweCAwICNmZWZlZmUsMCAyMHB4IDAgI2ZlZmVmZTtjb250ZW50OicnfSNidXJnZXIgLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXJ7YmFja2dyb3VuZDojMGEwYTBhO2JveC1zaGFkb3c6MCAxMHB4IDAgIzBhMGEwYSwwIDIwcHggMCAjMGEwYTBhfSNiZXN0aWxsaW5nLWZvcm17YmFja2dyb3VuZDojZmVmZWZlO2JvcmRlci1yYWRpdXM6MjBweH0jYmVzdGlsbGluZy1mb3JtIC53cmFwcGVye3BhZGRpbmc6Mi41cmVtfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7I2Jlc3RpbGxpbmctZm9ybSAud3JhcHBlcntwYWRkaW5nOjEuNXJlbX19I2Jlc3RpbGxpbmctZm9ybSAud3JhcHBlciAucHJvZHVjdHMucm93e21hcmdpbi1ib3R0b206MnJlbX0jYmVzdGlsbGluZy1mb3JtIC53cmFwcGVyIC5wcm9kdWN0cy5yb3cgLnByb2R1Y3QgLmltYWdlLnJvd3ttYXJnaW4tYm90dG9tOjEuNHJlbX0jYmVzdGlsbGluZy1mb3JtIC53cmFwcGVyIC5wcm9kdWN0cy5yb3cgLnByb2R1Y3QgLmltYWdlLnJvdyBpbWd7d2lkdGg6MTAwJTtoZWlnaHQ6YXV0b30jYmVzdGlsbGluZy1mb3JtIC53cmFwcGVyIC5wcm9kdWN0cy5yb3cgLnByb2R1Y3QgLmluZm8ucm93e21hcmdpbi1ib3R0b206MXJlbTtmb250LXNpemU6LjlyZW19I2Jlc3RpbGxpbmctZm9ybSAud3JhcHBlciAucHJvZHVjdHMucm93IC5wcm9kdWN0IC5pbmZvLnJvdyAudGl0bGV7Zm9udC13ZWlnaHQ6Ym9sZH0jYmVzdGlsbGluZy1mb3JtIC53cmFwcGVyIC5wcm9kdWN0cy5yb3cgLnByb2R1Y3QgLmluZm8ucm93IC5kZXNjcntmb250LXNpemU6LjdyZW19I2Jlc3RpbGxpbmctZm9ybSAud3JhcHBlciAucHJvZHVjdHMucm93IC5wcm9kdWN0IC5pbmZvLnJvdyAucXR5IGlucHV0e2JhY2tncm91bmQ6I2YyZjJmMjtib3JkZXI6bm9uZTtib3gtc2hhZG93Om5vbmU7Zm9udC1zaXplOjEuNXJlbTtsaW5lLWhlaWdodDozcmVtO2hlaWdodDphdXRvO21heC13aWR0aDoxMDAlO3BhZGRpbmc6LjVyZW0gLjVyZW0gLjVyZW0gMDt0ZXh0LWFsaWduOnJpZ2h0fSNiZXN0aWxsaW5nLWZvcm0gLndyYXBwZXIgLnByb2R1Y3RzLnJvdyAucHJvZHVjdCAuaW5mby5yb3cgLnF0eSBpbnB1dC5lcnJvcntib3JkZXI6MXB4IHNvbGlkIHJlZDtiYWNrZ3JvdW5kLWNvbG9yOiNmY2U2ZTJ9I2Jlc3RpbGxpbmctZm9ybSAud3JhcHBlciAuZGV0YWlscy5yb3cgLmZvcm0taXRlbXttYXJnaW4tYm90dG9tOjFyZW07b3ZlcmZsb3c6aGlkZGVufSNiZXN0aWxsaW5nLWZvcm0gLndyYXBwZXIgLmRldGFpbHMucm93IC5mb3JtLWl0ZW0gbGFiZWx7ZmxvYXQ6bGVmdDt3aWR0aDozMCU7Zm9udC1zaXplOjEuM3JlbX0jYmVzdGlsbGluZy1mb3JtIC53cmFwcGVyIC5kZXRhaWxzLnJvdyAuZm9ybS1pdGVtIGlucHV0e2Zsb2F0OnJpZ2h0O3dpZHRoOjY1JX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0peyNiZXN0aWxsaW5nLWZvcm0gLndyYXBwZXIgLmRldGFpbHMucm93IC5mb3JtLWl0ZW17bWFyZ2luLWJvdHRvbTowfSNiZXN0aWxsaW5nLWZvcm0gLndyYXBwZXIgLmRldGFpbHMucm93IC5mb3JtLWl0ZW0gbGFiZWx7ZmxvYXQ6bm9uZTt3aWR0aDoxMDAlfSNiZXN0aWxsaW5nLWZvcm0gLndyYXBwZXIgLmRldGFpbHMucm93IC5mb3JtLWl0ZW0gaW5wdXR7ZmxvYXQ6bm9uZTt3aWR0aDoxMDAlfX0jYmVzdGlsbGluZy1mb3JtIC53cmFwcGVyIC5hY3Rpb25zLnJvd3t0ZXh0LWFsaWduOmNlbnRlcn0jYmxvY2stYmVzdGlsbGluZ2ludHJve21hcmdpbi1ib3R0b206M3JlbX0vKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL2h0bWx7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjtsaW5lLWhlaWdodDoxLjE1Oy1tcy10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCV9Ym9keXttYXJnaW46MH1hcnRpY2xlLGFzaWRlLGZvb3RlcixoZWFkZXIsbmF2LHNlY3Rpb257ZGlzcGxheTpibG9ja31oMXtmb250LXNpemU6MmVtO21hcmdpbjowLjY3ZW0gMH1maWdjYXB0aW9uLGZpZ3VyZXtkaXNwbGF5OmJsb2NrfWZpZ3VyZXttYXJnaW46MWVtIDQwcHh9aHJ7Ym94LXNpemluZzpjb250ZW50LWJveDtoZWlnaHQ6MDtvdmVyZmxvdzp2aXNpYmxlfW1haW57ZGlzcGxheTpibG9ja31wcmV7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLCBtb25vc3BhY2U7Zm9udC1zaXplOjFlbX1he2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDpvYmplY3RzfWE6YWN0aXZlLGE6aG92ZXJ7b3V0bGluZS13aWR0aDowfWFiYnJbdGl0bGVde2JvcmRlci1ib3R0b206bm9uZTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkfWIsc3Ryb25ne2ZvbnQtd2VpZ2h0OmluaGVyaXR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfWNvZGUsa2JkLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLCBtb25vc3BhY2U7Zm9udC1zaXplOjFlbX1kZm57Zm9udC1zdHlsZTppdGFsaWN9bWFya3tiYWNrZ3JvdW5kLWNvbG9yOiNmZjA7Y29sb3I6IzAwMH1zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1Yntib3R0b206LTAuMjVlbX1zdXB7dG9wOi0wLjVlbX1hdWRpbyx2aWRlb3tkaXNwbGF5OmlubGluZS1ibG9ja31hdWRpbzpub3QoW2NvbnRyb2xzXSl7ZGlzcGxheTpub25lO2hlaWdodDowfWltZ3tib3JkZXItc3R5bGU6bm9uZX1zdmc6bm90KDpyb290KXtvdmVyZmxvdzpoaWRkZW59YnV0dG9uLGlucHV0LG9wdGdyb3VwLHNlbGVjdCx0ZXh0YXJlYXtmb250LWZhbWlseTpzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0OjEuMTU7bWFyZ2luOjB9YnV0dG9ue292ZXJmbG93OnZpc2libGV9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixodG1sIFt0eXBlPVwiYnV0dG9uXCJdLFt0eXBlPVwicmVzZXRcIl0sW3R5cGU9XCJzdWJtaXRcIl17LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbn1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lcntib3JkZXItc3R5bGU6bm9uZTtwYWRkaW5nOjB9YnV0dG9uOi1tb3otZm9jdXNyaW5nLFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmd7b3V0bGluZToxcHggZG90dGVkIEJ1dHRvblRleHR9aW5wdXR7b3ZlcmZsb3c6dmlzaWJsZX1bdHlwZT1cImNoZWNrYm94XCJdLFt0eXBlPVwicmFkaW9cIl17Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MH1bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31bdHlwZT1cInNlYXJjaFwiXXstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO291dGxpbmUtb2Zmc2V0Oi0ycHh9W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2ZvbnQ6aW5oZXJpdH1maWVsZHNldHtib3JkZXI6MXB4IHNvbGlkICNjMGMwYzA7bWFyZ2luOjAgMnB4O3BhZGRpbmc6MC4zNWVtIDAuNjI1ZW0gMC43NWVtfWxlZ2VuZHtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTp0YWJsZTttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjA7Y29sb3I6aW5oZXJpdDt3aGl0ZS1zcGFjZTpub3JtYWx9cHJvZ3Jlc3N7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9dGV4dGFyZWF7b3ZlcmZsb3c6YXV0b31kZXRhaWxze2Rpc3BsYXk6YmxvY2t9c3VtbWFyeXtkaXNwbGF5Omxpc3QtaXRlbX1tZW51e2Rpc3BsYXk6YmxvY2t9Y2FudmFze2Rpc3BsYXk6aW5saW5lLWJsb2NrfXRlbXBsYXRle2Rpc3BsYXk6bm9uZX1baGlkZGVuXXtkaXNwbGF5Om5vbmV9LmZvdW5kYXRpb24tbXF7Zm9udC1mYW1pbHk6XCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIn1odG1se2JveC1zaXppbmc6Ym9yZGVyLWJveDtmb250LXNpemU6MTAwJX0qLCo6OmJlZm9yZSwqOjphZnRlcntib3gtc2l6aW5nOmluaGVyaXR9Ym9keXttYXJnaW46MDtwYWRkaW5nOjA7YmFja2dyb3VuZDojZmRhYjFiO2ZvbnQtZmFtaWx5OlJvYm90byxcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6bm9ybWFsO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojMGEwYTBhOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlfWltZ3tkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87LW1zLWludGVycG9sYXRpb24tbW9kZTpiaWN1YmljfXRleHRhcmVhe2hlaWdodDphdXRvO21pbi1oZWlnaHQ6NTBweDtib3JkZXItcmFkaXVzOjB9c2VsZWN0e2JveC1zaXppbmc6Ym9yZGVyLWJveDt3aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6MH0ubWFwX2NhbnZhcyBpbWcsLm1hcF9jYW52YXMgZW1iZWQsLm1hcF9jYW52YXMgb2JqZWN0LC5tcWEtZGlzcGxheSBpbWcsLm1xYS1kaXNwbGF5IGVtYmVkLC5tcWEtZGlzcGxheSBvYmplY3R7bWF4LXdpZHRoOm5vbmUgIWltcG9ydGFudH1idXR0b257cGFkZGluZzowO2FwcGVhcmFuY2U6bm9uZTtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtsaW5lLWhlaWdodDoxO2N1cnNvcjphdXRvfVtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b257b3V0bGluZTowfXByZXtvdmVyZmxvdzphdXRvfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Zm9udC1mYW1pbHk6aW5oZXJpdH0uaXMtdmlzaWJsZXtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnR9LmlzLWhpZGRlbntkaXNwbGF5Om5vbmUgIWltcG9ydGFudH1kaXYsZGwsZHQsZGQsdWwsb2wsbGksaDEsaDIsaDMsaDQsaDUsaDYscHJlLGZvcm0scCxibG9ja3F1b3RlLHRoLHRke21hcmdpbjowO3BhZGRpbmc6MH1we21hcmdpbi1ib3R0b206MXJlbTtmb250LXNpemU6aW5oZXJpdDtsaW5lLWhlaWdodDoxLjY7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fWVtLGl7Zm9udC1zdHlsZTppdGFsaWM7bGluZS1oZWlnaHQ6aW5oZXJpdH1zdHJvbmcsYntmb250LXdlaWdodDpib2xkO2xpbmUtaGVpZ2h0OmluaGVyaXR9c21hbGx7Zm9udC1zaXplOjgwJTtsaW5lLWhlaWdodDppbmhlcml0fWgxLC5oMSxoMiwuaDIsaDMsLmgzLGg0LC5oNCxoNSwuaDUsaDYsLmg2e2ZvbnQtZmFtaWx5OlJvYm90byxcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2NvbG9yOmluaGVyaXQ7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fWgxIHNtYWxsLC5oMSBzbWFsbCxoMiBzbWFsbCwuaDIgc21hbGwsaDMgc21hbGwsLmgzIHNtYWxsLGg0IHNtYWxsLC5oNCBzbWFsbCxoNSBzbWFsbCwuaDUgc21hbGwsaDYgc21hbGwsLmg2IHNtYWxse2xpbmUtaGVpZ2h0OjA7Y29sb3I6IzRkNGQ0ZH1oMSwuaDF7Zm9udC1zaXplOjEuNXJlbTtsaW5lLWhlaWdodDoxLjQ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjVyZW19aDIsLmgye2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuNDttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouNXJlbX1oMywuaDN7Zm9udC1zaXplOjEuMTg3NXJlbTtsaW5lLWhlaWdodDoxLjQ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjVyZW19aDQsLmg0e2ZvbnQtc2l6ZToxLjEyNXJlbTtsaW5lLWhlaWdodDoxLjQ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjVyZW19aDUsLmg1e2ZvbnQtc2l6ZToxLjA2MjVyZW07bGluZS1oZWlnaHQ6MS40O21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOi41cmVtfWg2LC5oNntmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjQ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjVyZW19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pe2gxLC5oMXtmb250LXNpemU6M3JlbX1oMiwuaDJ7Zm9udC1zaXplOjIuNXJlbX1oMywuaDN7Zm9udC1zaXplOjEuOTM3NXJlbX1oNCwuaDR7Zm9udC1zaXplOjEuNTYyNXJlbX1oNSwuaDV7Zm9udC1zaXplOjEuMjVyZW19aDYsLmg2e2ZvbnQtc2l6ZToxcmVtfX1he2xpbmUtaGVpZ2h0OmluaGVyaXQ7Y29sb3I6IzIxOTllODt0ZXh0LWRlY29yYXRpb246bm9uZTtjdXJzb3I6cG9pbnRlcn1hOmhvdmVyLGE6Zm9jdXN7Y29sb3I6IzE1ODVjZn1hIGltZ3tib3JkZXI6MH1ocntjbGVhcjpib3RoO21heC13aWR0aDo3NXJlbTtoZWlnaHQ6MDttYXJnaW46MS4yNXJlbSBhdXRvO2JvcmRlci10b3A6MDtib3JkZXItcmlnaHQ6MDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNGQ0ZDRkO2JvcmRlci1sZWZ0OjB9dWwsb2wsZGx7bWFyZ2luLWJvdHRvbToxcmVtO2xpc3Qtc3R5bGUtcG9zaXRpb246b3V0c2lkZTtsaW5lLWhlaWdodDoxLjZ9bGl7Zm9udC1zaXplOmluaGVyaXR9dWx7bWFyZ2luLWxlZnQ6MS4yNXJlbTtsaXN0LXN0eWxlLXR5cGU6ZGlzY31vbHttYXJnaW4tbGVmdDoxLjI1cmVtfXVsIHVsLG9sIHVsLHVsIG9sLG9sIG9se21hcmdpbi1sZWZ0OjEuMjVyZW07bWFyZ2luLWJvdHRvbTowfWRse21hcmdpbi1ib3R0b206MXJlbX1kbCBkdHttYXJnaW4tYm90dG9tOi4zcmVtO2ZvbnQtd2VpZ2h0OmJvbGR9YmxvY2txdW90ZXttYXJnaW46MCAwIDFyZW07cGFkZGluZzouNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjNGQ0ZDRkfWJsb2NrcXVvdGUsYmxvY2txdW90ZSBwe2xpbmUtaGVpZ2h0OjEuNjtjb2xvcjojOGE4YThhfWNpdGV7ZGlzcGxheTpibG9jaztmb250LXNpemU6LjgxMjVyZW07Y29sb3I6IzhhOGE4YX1jaXRlOmJlZm9yZXtjb250ZW50Olwi4oCUIFwifWFiYnIsYWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbToxcHggZG90dGVkICMwYTBhMGE7Y3Vyc29yOmhlbHA7dGV4dC1kZWNvcmF0aW9uOm5vbmV9ZmlndXJle21hcmdpbjowfWNvZGV7cGFkZGluZzouMTI1cmVtIC4zMTI1cmVtIC4wNjI1cmVtO2JvcmRlcjoxcHggc29saWQgIzRkNGQ0ZDtiYWNrZ3JvdW5kLWNvbG9yOiNlNmU2ZTY7Zm9udC1mYW1pbHk6Q29uc29sYXMsXCJMaWJlcmF0aW9uIE1vbm9cIixDb3VyaWVyLG1vbm9zcGFjZTtmb250LXdlaWdodDpub3JtYWw7Y29sb3I6IzBhMGEwYX1rYmR7bWFyZ2luOjA7cGFkZGluZzouMTI1cmVtIC4yNXJlbSAwO2JhY2tncm91bmQtY29sb3I6I2U2ZTZlNjtmb250LWZhbWlseTpDb25zb2xhcyxcIkxpYmVyYXRpb24gTW9ub1wiLENvdXJpZXIsbW9ub3NwYWNlO2NvbG9yOiMwYTBhMGF9LnN1YmhlYWRlcnttYXJnaW4tdG9wOi4ycmVtO21hcmdpbi1ib3R0b206LjVyZW07Zm9udC13ZWlnaHQ6bm9ybWFsO2xpbmUtaGVpZ2h0OjEuNDtjb2xvcjojOGE4YThhfS5sZWFke2ZvbnQtc2l6ZToxMjUlO2xpbmUtaGVpZ2h0OjEuNn0uc3RhdHtmb250LXNpemU6Mi41cmVtO2xpbmUtaGVpZ2h0OjF9cCsuc3RhdHttYXJnaW4tdG9wOi0xcmVtfXVsLm5vLWJ1bGxldCxvbC5uby1idWxsZXR7bWFyZ2luLWxlZnQ6MDtsaXN0LXN0eWxlOm5vbmV9LnRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnR9LnRleHQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0udGV4dC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnRleHQtanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnl9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZWRpdW0tdGV4dC1sZWZ0e3RleHQtYWxpZ246bGVmdH0ubWVkaXVtLXRleHQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0ubWVkaXVtLXRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS5tZWRpdW0tdGV4dC1qdXN0aWZ5e3RleHQtYWxpZ246anVzdGlmeX19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5sYXJnZS10ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS5sYXJnZS10ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LmxhcmdlLXRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS5sYXJnZS10ZXh0LWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5fX0uc2hvdy1mb3ItcHJpbnR7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9QG1lZGlhIHByaW50eyp7YmFja2dyb3VuZDp0cmFuc3BhcmVudCAhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O2NvbG9yOmJsYWNrICFpbXBvcnRhbnQ7dGV4dC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50fS5zaG93LWZvci1wcmludHtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnR9LmhpZGUtZm9yLXByaW50e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fXRhYmxlLnNob3ctZm9yLXByaW50e2Rpc3BsYXk6dGFibGUgIWltcG9ydGFudH10aGVhZC5zaG93LWZvci1wcmludHtkaXNwbGF5OnRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50fXRib2R5LnNob3ctZm9yLXByaW50e2Rpc3BsYXk6dGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnR9dHIuc2hvdy1mb3ItcHJpbnR7ZGlzcGxheTp0YWJsZS1yb3cgIWltcG9ydGFudH10ZC5zaG93LWZvci1wcmludHtkaXNwbGF5OnRhYmxlLWNlbGwgIWltcG9ydGFudH10aC5zaG93LWZvci1wcmludHtkaXNwbGF5OnRhYmxlLWNlbGwgIWltcG9ydGFudH1hLGE6dmlzaXRlZHt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfWFbaHJlZl06YWZ0ZXJ7Y29udGVudDpcIiAoXCIgYXR0cihocmVmKSBcIilcIn0uaXIgYTphZnRlcixhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLGFbaHJlZl49JyMnXTphZnRlcntjb250ZW50OicnfWFiYnJbdGl0bGVdOmFmdGVye2NvbnRlbnQ6XCIgKFwiIGF0dHIodGl0bGUpIFwiKVwifXByZSxibG9ja3F1b3Rle2JvcmRlcjoxcHggc29saWQgIzhhOGE4YTtwYWdlLWJyZWFrLWluc2lkZTphdm9pZH10aGVhZHtkaXNwbGF5OnRhYmxlLWhlYWRlci1ncm91cH10cixpbWd7cGFnZS1icmVhay1pbnNpZGU6YXZvaWR9aW1ne21heC13aWR0aDoxMDAlICFpbXBvcnRhbnR9QHBhZ2V7bWFyZ2luOjAuNWNtfXAsaDIsaDN7b3JwaGFuczozO3dpZG93czozfWgyLGgze3BhZ2UtYnJlYWstYWZ0ZXI6YXZvaWR9LnByaW50LWJyZWFrLWluc2lkZXtwYWdlLWJyZWFrLWluc2lkZTphdXRvfX0uYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW46MCAwIDFyZW0gMDtmb250LWZhbWlseTppbmhlcml0O3BhZGRpbmc6MC44NWVtIDFlbTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsY29sb3IgMC4yNXMgZWFzZS1vdXQ7Zm9udC1zaXplOjAuOXJlbTtsaW5lLWhlaWdodDoxO3RleHQtYWxpZ246Y2VudGVyO2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtY29sb3I6IzIxOTllODtjb2xvcjojZmZmfVtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9ue291dGxpbmU6MH0uYnV0dG9uOmhvdmVyLC5idXR0b246Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojMTU4M2NjO2NvbG9yOiNmZmZ9LmJ1dHRvbi50aW55e2ZvbnQtc2l6ZTouNnJlbX0uYnV0dG9uLnNtYWxse2ZvbnQtc2l6ZTouNzVyZW19LmJ1dHRvbi5sYXJnZXtmb250LXNpemU6MS4yNXJlbX0uYnV0dG9uLmV4cGFuZGVke2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS5idXR0b24ucHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiMxNzc5YmE7Y29sb3I6I2ZmZn0uYnV0dG9uLnByaW1hcnk6aG92ZXIsLmJ1dHRvbi5wcmltYXJ5OmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzEyNjE5NTtjb2xvcjojZmZmfS5idXR0b24uc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6Izc2NzY3Njtjb2xvcjojMDAwfS5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uc2Vjb25kYXJ5OmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzVlNWU1ZTtjb2xvcjojMDAwfS5idXR0b24uc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiMzYWRiNzY7Y29sb3I6IzAwMH0uYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsLmJ1dHRvbi5zdWNjZXNzOmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzIyYmI1Yjtjb2xvcjojMDAwfS5idXR0b24ud2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmFlMDA7Y29sb3I6IzAwMH0uYnV0dG9uLndhcm5pbmc6aG92ZXIsLmJ1dHRvbi53YXJuaW5nOmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2NjOGIwMDtjb2xvcjojMDAwfS5idXR0b24uYWxlcnR7YmFja2dyb3VuZC1jb2xvcjojY2M0YjM3O2NvbG9yOiMwMDB9LmJ1dHRvbi5hbGVydDpob3ZlciwuYnV0dG9uLmFsZXJ0OmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2E1M2IyYTtjb2xvcjojMDAwfS5idXR0b24uZGlzYWJsZWQsLmJ1dHRvbltkaXNhYmxlZF17b3BhY2l0eTouMjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idXR0b24uZGlzYWJsZWQsLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwuYnV0dG9uLmRpc2FibGVkOmZvY3VzLC5idXR0b25bZGlzYWJsZWRdLC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLC5idXR0b25bZGlzYWJsZWRdOmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzIxOTllODtjb2xvcjojZmZmfS5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5e29wYWNpdHk6LjI1O2N1cnNvcjpub3QtYWxsb3dlZH0uYnV0dG9uLmRpc2FibGVkLnByaW1hcnksLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpmb2N1cywuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiMxNzc5YmE7Y29sb3I6I2ZmZn0uYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnl7b3BhY2l0eTouMjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3Vze2JhY2tncm91bmQtY29sb3I6Izc2NzY3Njtjb2xvcjojMDAwfS5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNze29wYWNpdHk6LjI1O2N1cnNvcjpub3QtYWxsb3dlZH0uYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzLC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiMzYWRiNzY7Y29sb3I6IzAwMH0uYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZ3tvcGFjaXR5Oi4yNTtjdXJzb3I6bm90LWFsbG93ZWR9LmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6Zm9jdXMsLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZmZhZTAwO2NvbG9yOiMwMDB9LmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwuYnV0dG9uW2Rpc2FibGVkXS5hbGVydHtvcGFjaXR5Oi4yNTtjdXJzb3I6bm90LWFsbG93ZWR9LmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmhvdmVyLC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojY2M0YjM3O2NvbG9yOiMwMDB9LmJ1dHRvbi5ob2xsb3d7Ym9yZGVyOjFweCBzb2xpZCAjMjE5OWU4O2NvbG9yOiMyMTk5ZTh9LmJ1dHRvbi5ob2xsb3csLmJ1dHRvbi5ob2xsb3c6aG92ZXIsLmJ1dHRvbi5ob2xsb3c6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24uaG9sbG93OmhvdmVyLC5idXR0b24uaG9sbG93OmZvY3Vze2JvcmRlci1jb2xvcjojMGM0ZDc4O2NvbG9yOiMwYzRkNzh9LmJ1dHRvbi5ob2xsb3c6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5ob2xsb3c6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uaG9sbG93OmZvY3VzLmRpc2FibGVkLC5idXR0b24uaG9sbG93OmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICMyMTk5ZTg7Y29sb3I6IzIxOTllOH0uYnV0dG9uLmhvbGxvdy5wcmltYXJ5e2JvcmRlcjoxcHggc29saWQgIzE3NzliYTtjb2xvcjojMTc3OWJhfS5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1c3tib3JkZXItY29sb3I6IzBjM2Q1ZDtjb2xvcjojMGMzZDVkfS5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICMxNzc5YmE7Y29sb3I6IzE3NzliYX0uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnl7Ym9yZGVyOjFweCBzb2xpZCAjNzY3Njc2O2NvbG9yOiM3Njc2NzZ9LmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c3tib3JkZXItY29sb3I6IzNiM2IzYjtjb2xvcjojM2IzYjNifS5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRde2JvcmRlcjoxcHggc29saWQgIzc2NzY3Njtjb2xvcjojNzY3Njc2fS5idXR0b24uaG9sbG93LnN1Y2Nlc3N7Ym9yZGVyOjFweCBzb2xpZCAjM2FkYjc2O2NvbG9yOiMzYWRiNzZ9LmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3Vze2JvcmRlci1jb2xvcjojMTU3NTM5O2NvbG9yOiMxNTc1Mzl9LmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRde2JvcmRlcjoxcHggc29saWQgIzNhZGI3Njtjb2xvcjojM2FkYjc2fS5idXR0b24uaG9sbG93Lndhcm5pbmd7Ym9yZGVyOjFweCBzb2xpZCAjZmZhZTAwO2NvbG9yOiNmZmFlMDB9LmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3Vze2JvcmRlci1jb2xvcjojODA1NzAwO2NvbG9yOiM4MDU3MDB9LmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzLmRpc2FibGVkLC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRde2JvcmRlcjoxcHggc29saWQgI2ZmYWUwMDtjb2xvcjojZmZhZTAwfS5idXR0b24uaG9sbG93LmFsZXJ0e2JvcmRlcjoxcHggc29saWQgI2NjNGIzNztjb2xvcjojY2M0YjM3fS5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3Vze2JvcmRlci1jb2xvcjojNjcyNTFhO2NvbG9yOiM2NzI1MWF9LmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLmRpc2FibGVkLC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICNjYzRiMzc7Y29sb3I6I2NjNGIzN30uYnV0dG9uLmNsZWFye2JvcmRlcjoxcHggc29saWQgIzIxOTllODtjb2xvcjojMjE5OWU4fS5idXR0b24uY2xlYXIsLmJ1dHRvbi5jbGVhcjpob3ZlciwuYnV0dG9uLmNsZWFyOmZvY3Vze2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uYnV0dG9uLmNsZWFyOmhvdmVyLC5idXR0b24uY2xlYXI6Zm9jdXN7Ym9yZGVyLWNvbG9yOiMwYzRkNzg7Y29sb3I6IzBjNGQ3OH0uYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyOjFweCBzb2xpZCAjMjE5OWU4O2NvbG9yOiMyMTk5ZTh9LmJ1dHRvbi5jbGVhciwuYnV0dG9uLmNsZWFyLmRpc2FibGVkLC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXI6aG92ZXIsLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyOmZvY3VzLC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24uY2xlYXIucHJpbWFyeXtib3JkZXI6MXB4IHNvbGlkICMxNzc5YmE7Y29sb3I6IzE3NzliYX0uYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3Vze2JvcmRlci1jb2xvcjojMGMzZDVkO2NvbG9yOiMwYzNkNWR9LmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyOjFweCBzb2xpZCAjMTc3OWJhO2NvbG9yOiMxNzc5YmF9LmJ1dHRvbi5jbGVhci5wcmltYXJ5LC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24uY2xlYXIuc2Vjb25kYXJ5e2JvcmRlcjoxcHggc29saWQgIzc2NzY3Njtjb2xvcjojNzY3Njc2fS5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3Vze2JvcmRlci1jb2xvcjojM2IzYjNiO2NvbG9yOiMzYjNiM2J9LmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICM3Njc2NzY7Y29sb3I6Izc2NzY3Nn0uYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5jbGVhci5zdWNjZXNze2JvcmRlcjoxcHggc29saWQgIzNhZGI3Njtjb2xvcjojM2FkYjc2fS5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXN7Ym9yZGVyLWNvbG9yOiMxNTc1Mzk7Y29sb3I6IzE1NzUzOX0uYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICMzYWRiNzY7Y29sb3I6IzNhZGI3Nn0uYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5jbGVhci53YXJuaW5ne2JvcmRlcjoxcHggc29saWQgI2ZmYWUwMDtjb2xvcjojZmZhZTAwfS5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM4MDU3MDA7Y29sb3I6IzgwNTcwMH0uYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICNmZmFlMDA7Y29sb3I6I2ZmYWUwMH0uYnV0dG9uLmNsZWFyLndhcm5pbmcsLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cywuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5jbGVhci5hbGVydHtib3JkZXI6MXB4IHNvbGlkICNjYzRiMzc7Y29sb3I6I2NjNGIzN30uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM2NzI1MWE7Y29sb3I6IzY3MjUxYX0uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyOjFweCBzb2xpZCAjY2M0YjM3O2NvbG9yOiNjYzRiMzd9LmJ1dHRvbi5jbGVhci5hbGVydCwuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24uZHJvcGRvd246OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgLjRlbTtjb250ZW50OicnO2JvcmRlci1ib3R0b20td2lkdGg6MDtib3JkZXItdG9wLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDowLjRlbTtkaXNwbGF5OmlubGluZS1ibG9jaztmbG9hdDpyaWdodDttYXJnaW4tbGVmdDoxZW19LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVye2JvcmRlci10b3AtY29sb3I6IzIxOTllOH0uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlcntib3JkZXItdG9wLWNvbG9yOiMxNzc5YmF9LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlcntib3JkZXItdG9wLWNvbG9yOiM3Njc2NzZ9LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXJ7Ym9yZGVyLXRvcC1jb2xvcjojM2FkYjc2fS5idXR0b24uZHJvcGRvd24uaG9sbG93Lndhcm5pbmc6OmFmdGVye2JvcmRlci10b3AtY29sb3I6I2ZmYWUwMH0uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXJ7Ym9yZGVyLXRvcC1jb2xvcjojY2M0YjM3fS5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXJ7dG9wOi0wLjFlbTtmbG9hdDpub25lO21hcmdpbi1sZWZ0OjB9YS5idXR0b246aG92ZXIsYS5idXR0b246Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOm5vbmV9W3R5cGU9J3RleHQnXSxbdHlwZT0ncGFzc3dvcmQnXSxbdHlwZT0nZGF0ZSddLFt0eXBlPSdkYXRldGltZSddLFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFt0eXBlPSdtb250aCddLFt0eXBlPSd3ZWVrJ10sW3R5cGU9J2VtYWlsJ10sW3R5cGU9J251bWJlciddLFt0eXBlPSdzZWFyY2gnXSxbdHlwZT0ndGVsJ10sW3R5cGU9J3RpbWUnXSxbdHlwZT0ndXJsJ10sW3R5cGU9J2NvbG9yJ10sdGV4dGFyZWF7ZGlzcGxheTpibG9jaztib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTtoZWlnaHQ6Mi40Mzc1cmVtO21hcmdpbjowIDAgMXJlbTtwYWRkaW5nOi41cmVtO2JvcmRlcjoxcHggc29saWQgI2IxZDhmMztib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMTAsMTAsMTAsMC4xKTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxcmVtO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzBhMGEwYTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgMC41cyxib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7YXBwZWFyYW5jZTpub25lfVt0eXBlPSd0ZXh0J106Zm9jdXMsW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsW3R5cGU9J2RhdGUnXTpmb2N1cyxbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cyxbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cyxbdHlwZT0nbW9udGgnXTpmb2N1cyxbdHlwZT0nd2VlayddOmZvY3VzLFt0eXBlPSdlbWFpbCddOmZvY3VzLFt0eXBlPSdudW1iZXInXTpmb2N1cyxbdHlwZT0nc2VhcmNoJ106Zm9jdXMsW3R5cGU9J3RlbCddOmZvY3VzLFt0eXBlPSd0aW1lJ106Zm9jdXMsW3R5cGU9J3VybCddOmZvY3VzLFt0eXBlPSdjb2xvciddOmZvY3VzLHRleHRhcmVhOmZvY3Vze291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM4YThhOGE7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlO2JveC1zaGFkb3c6MCAwIDVweCAjNGQ0ZDRkO3RyYW5zaXRpb246Ym94LXNoYWRvdyAwLjVzLGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dH10ZXh0YXJlYXttYXgtd2lkdGg6MTAwJX10ZXh0YXJlYVtyb3dzXXtoZWlnaHQ6YXV0b31pbnB1dDo6cGxhY2Vob2xkZXIsdGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOiM0ZDRkNGR9aW5wdXQ6ZGlzYWJsZWQsaW5wdXRbcmVhZG9ubHldLHRleHRhcmVhOmRpc2FibGVkLHRleHRhcmVhW3JlYWRvbmx5XXtiYWNrZ3JvdW5kLWNvbG9yOiNlNmU2ZTY7Y3Vyc29yOmRlZmF1bHR9W3R5cGU9J3N1Ym1pdCddLFt0eXBlPSdidXR0b24nXXthcHBlYXJhbmNlOm5vbmU7Ym9yZGVyLXJhZGl1czowfWlucHV0W3R5cGU9J3NlYXJjaCdde2JveC1zaXppbmc6Ym9yZGVyLWJveH1bdHlwZT0nZmlsZSddLFt0eXBlPSdjaGVja2JveCddLFt0eXBlPSdyYWRpbydde21hcmdpbjowIDAgMXJlbX1bdHlwZT0nY2hlY2tib3gnXStsYWJlbCxbdHlwZT0ncmFkaW8nXStsYWJlbHtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTttYXJnaW4tbGVmdDouNXJlbTttYXJnaW4tcmlnaHQ6MXJlbTttYXJnaW4tYm90dG9tOjB9W3R5cGU9J2NoZWNrYm94J10rbGFiZWxbZm9yXSxbdHlwZT0ncmFkaW8nXStsYWJlbFtmb3Jde2N1cnNvcjpwb2ludGVyfWxhYmVsPlt0eXBlPSdjaGVja2JveCddLGxhYmVsPlt0eXBlPSdyYWRpbydde21hcmdpbi1yaWdodDouNXJlbX1bdHlwZT0nZmlsZSdde3dpZHRoOjEwMCV9bGFiZWx7ZGlzcGxheTpibG9jazttYXJnaW46MDtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDpub3JtYWw7bGluZS1oZWlnaHQ6MS44O2NvbG9yOiMwYTBhMGF9bGFiZWwubWlkZGxle21hcmdpbjowIDAgMXJlbTtwYWRkaW5nOi41NjI1cmVtIDB9LmhlbHAtdGV4dHttYXJnaW4tdG9wOi0uNXJlbTtmb250LXNpemU6LjgxMjVyZW07Zm9udC1zdHlsZTppdGFsaWM7Y29sb3I6IzMzM30uaW5wdXQtZ3JvdXB7ZGlzcGxheTpmbGV4O3dpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbToxcmVtO2FsaWduLWl0ZW1zOnN0cmV0Y2h9LmlucHV0LWdyb3VwPjpmaXJzdC1jaGlsZHtib3JkZXItcmFkaXVzOjAgMCAwIDB9LmlucHV0LWdyb3VwPjpsYXN0LWNoaWxkPip7Ym9yZGVyLXJhZGl1czowIDAgMCAwfS5pbnB1dC1ncm91cC1sYWJlbCwuaW5wdXQtZ3JvdXAtZmllbGQsLmlucHV0LWdyb3VwLWJ1dHRvbiwuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCwuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbiwuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVse21hcmdpbjowO3doaXRlLXNwYWNlOm5vd3JhcH0uaW5wdXQtZ3JvdXAtbGFiZWx7cGFkZGluZzowIDFyZW07Ym9yZGVyOjFweCBzb2xpZCAjNGQ0ZDRkO2JhY2tncm91bmQ6I2U2ZTZlNjtjb2xvcjojMGEwYTBhO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDtkaXNwbGF5OmZsZXg7ZmxleDowIDAgYXV0bzthbGlnbi1pdGVtczpjZW50ZXJ9LmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxke2JvcmRlci1yaWdodDowfS5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxke2JvcmRlci1sZWZ0OjB9LmlucHV0LWdyb3VwLWZpZWxke2JvcmRlci1yYWRpdXM6MDtmbGV4OjEgMSAwcHg7aGVpZ2h0OmF1dG87bWluLXdpZHRoOjB9LmlucHV0LWdyb3VwLWJ1dHRvbntwYWRkaW5nLXRvcDowO3BhZGRpbmctYm90dG9tOjA7dGV4dC1hbGlnbjpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZsZXg6MCAwIGF1dG99LmlucHV0LWdyb3VwLWJ1dHRvbiBhLC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbHtoZWlnaHQ6YXV0bzthbGlnbi1zZWxmOnN0cmV0Y2g7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO2ZvbnQtc2l6ZToxcmVtfWZpZWxkc2V0e21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6MH1sZWdlbmR7bWF4LXdpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbTouNXJlbX0uZmllbGRzZXR7bWFyZ2luOjEuMTI1cmVtIDA7cGFkZGluZzoxLjI1cmVtO2JvcmRlcjoxcHggc29saWQgIzRkNGQ0ZH0uZmllbGRzZXQgbGVnZW5ke21hcmdpbjowO21hcmdpbi1sZWZ0Oi0uMTg3NXJlbTtwYWRkaW5nOjAgLjE4NzVyZW19c2VsZWN0e2hlaWdodDoyLjQzNzVyZW07bWFyZ2luOjAgMCAxcmVtO3BhZGRpbmc6LjVyZW07YXBwZWFyYW5jZTpub25lO2JvcmRlcjoxcHggc29saWQgI2IxZDhmMztib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6bm9ybWFsO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojMGEwYTBhO2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjg1MSwgNTEsIDUxJTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO2JhY2tncm91bmQtb3JpZ2luOmNvbnRlbnQtYm94O2JhY2tncm91bmQtcG9zaXRpb246cmlnaHQgLTFyZW0gY2VudGVyO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6OXB4IDZweDtwYWRkaW5nLXJpZ2h0OjEuNXJlbTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgMC41cyxib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCl7c2VsZWN0e2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKX19c2VsZWN0OmZvY3Vze291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM4YThhOGE7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlO2JveC1zaGFkb3c6MCAwIDVweCAjNGQ0ZDRkO3RyYW5zaXRpb246Ym94LXNoYWRvdyAwLjVzLGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dH1zZWxlY3Q6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojZTZlNmU2O2N1cnNvcjpkZWZhdWx0fXNlbGVjdDo6LW1zLWV4cGFuZHtkaXNwbGF5Om5vbmV9c2VsZWN0W211bHRpcGxlXXtoZWlnaHQ6YXV0bztiYWNrZ3JvdW5kLWltYWdlOm5vbmV9LmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyl7Ym9yZGVyLWNvbG9yOiNlYzU4NDA7YmFja2dyb3VuZC1jb2xvcjojZmNlZGVifS5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlcntjb2xvcjojZWM1ODQwfS5pcy1pbnZhbGlkLWxhYmVse2NvbG9yOiNlYzU4NDB9LmZvcm0tZXJyb3J7ZGlzcGxheTpub25lO21hcmdpbi10b3A6LS41cmVtO21hcmdpbi1ib3R0b206MXJlbTtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OmJvbGQ7Y29sb3I6I2VjNTg0MH0uZm9ybS1lcnJvci5pcy12aXNpYmxle2Rpc3BsYXk6YmxvY2t9LmhpZGV7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9LmludmlzaWJsZXt2aXNpYmlsaXR5OmhpZGRlbn1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pey5oaWRlLWZvci1zbWFsbC1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAwZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5zaG93LWZvci1zbWFsbC1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSl7LmhpZGUtZm9yLW1lZGl1bXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKXsuc2hvdy1mb3ItbWVkaXVte2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKXsuaGlkZS1mb3ItbWVkaXVtLW9ubHl7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LnNob3ctZm9yLW1lZGl1bS1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LmhpZGUtZm9yLWxhcmdle2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pey5zaG93LWZvci1sYXJnZXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSl7LmhpZGUtZm9yLWxhcmdlLW9ubHl7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSl7LnNob3ctZm9yLWxhcmdlLW9ubHl7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fS5zaG93LWZvci1zciwuc2hvdy1vbi1mb2N1c3twb3NpdGlvbjphYnNvbHV0ZSAhaW1wb3J0YW50O3dpZHRoOjFweDtoZWlnaHQ6MXB4O3BhZGRpbmc6MDtvdmVyZmxvdzpoaWRkZW47Y2xpcDpyZWN0KDAsIDAsIDAsIDApO3doaXRlLXNwYWNlOm5vd3JhcDtjbGlwLXBhdGg6aW5zZXQoNTAlKTtib3JkZXI6MH0uc2hvdy1vbi1mb2N1czphY3RpdmUsLnNob3ctb24tZm9jdXM6Zm9jdXN7cG9zaXRpb246c3RhdGljICFpbXBvcnRhbnQ7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztvdmVyZmxvdzp2aXNpYmxlO2NsaXA6YXV0bzt3aGl0ZS1zcGFjZTpub3JtYWw7Y2xpcC1wYXRoOm5vbmV9LnNob3ctZm9yLWxhbmRzY2FwZSwuaGlkZS1mb3ItcG9ydHJhaXR7ZGlzcGxheTpibG9jayAhaW1wb3J0YW50fUBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKXsuc2hvdy1mb3ItbGFuZHNjYXBlLC5oaWRlLWZvci1wb3J0cmFpdHtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpey5zaG93LWZvci1sYW5kc2NhcGUsLmhpZGUtZm9yLXBvcnRyYWl0e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX0uaGlkZS1mb3ItbGFuZHNjYXBlLC5zaG93LWZvci1wb3J0cmFpdHtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH1AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSl7LmhpZGUtZm9yLWxhbmRzY2FwZSwuc2hvdy1mb3ItcG9ydHJhaXR7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpey5oaWRlLWZvci1sYW5kc2NhcGUsLnNob3ctZm9yLXBvcnRyYWl0e2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudH19LmZsb2F0LWxlZnR7ZmxvYXQ6bGVmdCAhaW1wb3J0YW50fS5mbG9hdC1yaWdodHtmbG9hdDpyaWdodCAhaW1wb3J0YW50fS5mbG9hdC1jZW50ZXJ7ZGlzcGxheTpibG9jazttYXJnaW4tcmlnaHQ6YXV0bzttYXJnaW4tbGVmdDphdXRvfS5jbGVhcmZpeDo6YmVmb3JlLC5jbGVhcmZpeDo6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OicgJztmbGV4LWJhc2lzOjA7b3JkZXI6MX0uY2xlYXJmaXg6OmFmdGVye2NsZWFyOmJvdGh9LnJvd3ttYXgtd2lkdGg6NzVyZW07bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0bztkaXNwbGF5OmZsZXg7ZmxleC1mbG93OnJvdyB3cmFwfS5yb3cgLnJvd3ttYXJnaW4tcmlnaHQ6LS42MjVyZW07bWFyZ2luLWxlZnQ6LS42MjVyZW19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5yb3cgLnJvd3ttYXJnaW4tcmlnaHQ6LS45Mzc1cmVtO21hcmdpbi1sZWZ0Oi0uOTM3NXJlbX19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5yb3cgLnJvd3ttYXJnaW4tcmlnaHQ6LS45Mzc1cmVtO21hcmdpbi1sZWZ0Oi0uOTM3NXJlbX19LnJvdyAucm93LmNvbGxhcHNle21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9LnJvdy5leHBhbmRlZHttYXgtd2lkdGg6bm9uZX0ucm93LmV4cGFuZGVkIC5yb3d7bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0b30ucm93Om5vdCguZXhwYW5kZWQpIC5yb3d7bWF4LXdpZHRoOm5vbmV9LnJvdy5jb2xsYXBzZT4uY29sdW1uLC5yb3cuY29sbGFwc2U+LmNvbHVtbnN7cGFkZGluZy1yaWdodDowO3BhZGRpbmctbGVmdDowfS5yb3cuaXMtY29sbGFwc2UtY2hpbGQsLnJvdy5jb2xsYXBzZT4uY29sdW1uPi5yb3csLnJvdy5jb2xsYXBzZT4uY29sdW1ucz4ucm93e21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9LmNvbHVtbiwuY29sdW1uc3tmbGV4OjEgMSAwcHg7cGFkZGluZy1yaWdodDouNjI1cmVtO3BhZGRpbmctbGVmdDouNjI1cmVtO21pbi13aWR0aDowfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsuY29sdW1uLC5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6LjkzNzVyZW07cGFkZGluZy1sZWZ0Oi45Mzc1cmVtfX0uY29sdW1uLnJvdy5yb3csLnJvdy5yb3cuY29sdW1uc3tmbG9hdDpub25lO2Rpc3BsYXk6YmxvY2t9LnJvdyAuY29sdW1uLnJvdy5yb3csLnJvdyAucm93LnJvdy5jb2x1bW5ze21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjA7cGFkZGluZy1yaWdodDowO3BhZGRpbmctbGVmdDowfS5zbWFsbC0xe2ZsZXg6MCAwIDguMzMzMzMlO21heC13aWR0aDo4LjMzMzMzJX0uc21hbGwtb2Zmc2V0LTB7bWFyZ2luLWxlZnQ6MCV9LnNtYWxsLTJ7ZmxleDowIDAgMTYuNjY2NjclO21heC13aWR0aDoxNi42NjY2NyV9LnNtYWxsLW9mZnNldC0xe21hcmdpbi1sZWZ0OjguMzMzMzMlfS5zbWFsbC0ze2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5zbWFsbC1vZmZzZXQtMnttYXJnaW4tbGVmdDoxNi42NjY2NyV9LnNtYWxsLTR7ZmxleDowIDAgMzMuMzMzMzMlO21heC13aWR0aDozMy4zMzMzMyV9LnNtYWxsLW9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0uc21hbGwtNXtmbGV4OjAgMCA0MS42NjY2NyU7bWF4LXdpZHRoOjQxLjY2NjY3JX0uc21hbGwtb2Zmc2V0LTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMlfS5zbWFsbC02e2ZsZXg6MCAwIDUwJTttYXgtd2lkdGg6NTAlfS5zbWFsbC1vZmZzZXQtNXttYXJnaW4tbGVmdDo0MS42NjY2NyV9LnNtYWxsLTd7ZmxleDowIDAgNTguMzMzMzMlO21heC13aWR0aDo1OC4zMzMzMyV9LnNtYWxsLW9mZnNldC02e21hcmdpbi1sZWZ0OjUwJX0uc21hbGwtOHtmbGV4OjAgMCA2Ni42NjY2NyU7bWF4LXdpZHRoOjY2LjY2NjY3JX0uc21hbGwtb2Zmc2V0LTd7bWFyZ2luLWxlZnQ6NTguMzMzMzMlfS5zbWFsbC05e2ZsZXg6MCAwIDc1JTttYXgtd2lkdGg6NzUlfS5zbWFsbC1vZmZzZXQtOHttYXJnaW4tbGVmdDo2Ni42NjY2NyV9LnNtYWxsLTEwe2ZsZXg6MCAwIDgzLjMzMzMzJTttYXgtd2lkdGg6ODMuMzMzMzMlfS5zbWFsbC1vZmZzZXQtOXttYXJnaW4tbGVmdDo3NSV9LnNtYWxsLTExe2ZsZXg6MCAwIDkxLjY2NjY3JTttYXgtd2lkdGg6OTEuNjY2NjclfS5zbWFsbC1vZmZzZXQtMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMlfS5zbWFsbC0xMntmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5zbWFsbC1vZmZzZXQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjclfS5zbWFsbC11cC0xe2ZsZXgtd3JhcDp3cmFwfS5zbWFsbC11cC0xPi5jb2x1bW4sLnNtYWxsLXVwLTE+LmNvbHVtbnN7ZmxleDowIDAgMTAwJTttYXgtd2lkdGg6MTAwJX0uc21hbGwtdXAtMntmbGV4LXdyYXA6d3JhcH0uc21hbGwtdXAtMj4uY29sdW1uLC5zbWFsbC11cC0yPi5jb2x1bW5ze2ZsZXg6MCAwIDUwJTttYXgtd2lkdGg6NTAlfS5zbWFsbC11cC0ze2ZsZXgtd3JhcDp3cmFwfS5zbWFsbC11cC0zPi5jb2x1bW4sLnNtYWxsLXVwLTM+LmNvbHVtbnN7ZmxleDowIDAgMzMuMzMzMzMlO21heC13aWR0aDozMy4zMzMzMyV9LnNtYWxsLXVwLTR7ZmxleC13cmFwOndyYXB9LnNtYWxsLXVwLTQ+LmNvbHVtbiwuc21hbGwtdXAtND4uY29sdW1uc3tmbGV4OjAgMCAyNSU7bWF4LXdpZHRoOjI1JX0uc21hbGwtdXAtNXtmbGV4LXdyYXA6d3JhcH0uc21hbGwtdXAtNT4uY29sdW1uLC5zbWFsbC11cC01Pi5jb2x1bW5ze2ZsZXg6MCAwIDIwJTttYXgtd2lkdGg6MjAlfS5zbWFsbC11cC02e2ZsZXgtd3JhcDp3cmFwfS5zbWFsbC11cC02Pi5jb2x1bW4sLnNtYWxsLXVwLTY+LmNvbHVtbnN7ZmxleDowIDAgMTYuNjY2NjclO21heC13aWR0aDoxNi42NjY2NyV9LnNtYWxsLXVwLTd7ZmxleC13cmFwOndyYXB9LnNtYWxsLXVwLTc+LmNvbHVtbiwuc21hbGwtdXAtNz4uY29sdW1uc3tmbGV4OjAgMCAxNC4yODU3MSU7bWF4LXdpZHRoOjE0LjI4NTcxJX0uc21hbGwtdXAtOHtmbGV4LXdyYXA6d3JhcH0uc21hbGwtdXAtOD4uY29sdW1uLC5zbWFsbC11cC04Pi5jb2x1bW5ze2ZsZXg6MCAwIDEyLjUlO21heC13aWR0aDoxMi41JX0uc21hbGwtY29sbGFwc2U+LmNvbHVtbiwuc21hbGwtY29sbGFwc2U+LmNvbHVtbnN7cGFkZGluZy1yaWdodDowO3BhZGRpbmctbGVmdDowfS5zbWFsbC11bmNvbGxhcHNlPi5jb2x1bW4sLnNtYWxsLXVuY29sbGFwc2U+LmNvbHVtbnN7cGFkZGluZy1yaWdodDouNjI1cmVtO3BhZGRpbmctbGVmdDouNjI1cmVtfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVkaXVtLTF7ZmxleDowIDAgOC4zMzMzMyU7bWF4LXdpZHRoOjguMzMzMzMlfS5tZWRpdW0tb2Zmc2V0LTB7bWFyZ2luLWxlZnQ6MCV9Lm1lZGl1bS0ye2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5tZWRpdW0tb2Zmc2V0LTF7bWFyZ2luLWxlZnQ6OC4zMzMzMyV9Lm1lZGl1bS0ze2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5tZWRpdW0tb2Zmc2V0LTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjclfS5tZWRpdW0tNHtmbGV4OjAgMCAzMy4zMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzJX0ubWVkaXVtLW9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0ubWVkaXVtLTV7ZmxleDowIDAgNDEuNjY2NjclO21heC13aWR0aDo0MS42NjY2NyV9Lm1lZGl1bS1vZmZzZXQtNHttYXJnaW4tbGVmdDozMy4zMzMzMyV9Lm1lZGl1bS02e2ZsZXg6MCAwIDUwJTttYXgtd2lkdGg6NTAlfS5tZWRpdW0tb2Zmc2V0LTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjclfS5tZWRpdW0tN3tmbGV4OjAgMCA1OC4zMzMzMyU7bWF4LXdpZHRoOjU4LjMzMzMzJX0ubWVkaXVtLW9mZnNldC02e21hcmdpbi1sZWZ0OjUwJX0ubWVkaXVtLTh7ZmxleDowIDAgNjYuNjY2NjclO21heC13aWR0aDo2Ni42NjY2NyV9Lm1lZGl1bS1vZmZzZXQtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMyV9Lm1lZGl1bS05e2ZsZXg6MCAwIDc1JTttYXgtd2lkdGg6NzUlfS5tZWRpdW0tb2Zmc2V0LTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjclfS5tZWRpdW0tMTB7ZmxleDowIDAgODMuMzMzMzMlO21heC13aWR0aDo4My4zMzMzMyV9Lm1lZGl1bS1vZmZzZXQtOXttYXJnaW4tbGVmdDo3NSV9Lm1lZGl1bS0xMXtmbGV4OjAgMCA5MS42NjY2NyU7bWF4LXdpZHRoOjkxLjY2NjY3JX0ubWVkaXVtLW9mZnNldC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMyV9Lm1lZGl1bS0xMntmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5tZWRpdW0tb2Zmc2V0LTExe21hcmdpbi1sZWZ0OjkxLjY2NjY3JX0ubWVkaXVtLXVwLTF7ZmxleC13cmFwOndyYXB9Lm1lZGl1bS11cC0xPi5jb2x1bW4sLm1lZGl1bS11cC0xPi5jb2x1bW5ze2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9Lm1lZGl1bS11cC0ye2ZsZXgtd3JhcDp3cmFwfS5tZWRpdW0tdXAtMj4uY29sdW1uLC5tZWRpdW0tdXAtMj4uY29sdW1uc3tmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0ubWVkaXVtLXVwLTN7ZmxleC13cmFwOndyYXB9Lm1lZGl1bS11cC0zPi5jb2x1bW4sLm1lZGl1bS11cC0zPi5jb2x1bW5ze2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5tZWRpdW0tdXAtNHtmbGV4LXdyYXA6d3JhcH0ubWVkaXVtLXVwLTQ+LmNvbHVtbiwubWVkaXVtLXVwLTQ+LmNvbHVtbnN7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9Lm1lZGl1bS11cC01e2ZsZXgtd3JhcDp3cmFwfS5tZWRpdW0tdXAtNT4uY29sdW1uLC5tZWRpdW0tdXAtNT4uY29sdW1uc3tmbGV4OjAgMCAyMCU7bWF4LXdpZHRoOjIwJX0ubWVkaXVtLXVwLTZ7ZmxleC13cmFwOndyYXB9Lm1lZGl1bS11cC02Pi5jb2x1bW4sLm1lZGl1bS11cC02Pi5jb2x1bW5ze2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5tZWRpdW0tdXAtN3tmbGV4LXdyYXA6d3JhcH0ubWVkaXVtLXVwLTc+LmNvbHVtbiwubWVkaXVtLXVwLTc+LmNvbHVtbnN7ZmxleDowIDAgMTQuMjg1NzElO21heC13aWR0aDoxNC4yODU3MSV9Lm1lZGl1bS11cC04e2ZsZXgtd3JhcDp3cmFwfS5tZWRpdW0tdXAtOD4uY29sdW1uLC5tZWRpdW0tdXAtOD4uY29sdW1uc3tmbGV4OjAgMCAxMi41JTttYXgtd2lkdGg6MTIuNSV9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSl7Lm1lZGl1bS1leHBhbmR7ZmxleDoxIDEgMHB4fX0ucm93Lm1lZGl1bS11bnN0YWNrPi5jb2x1bW4sLnJvdy5tZWRpdW0tdW5zdGFjaz4uY29sdW1uc3tmbGV4OjAgMCAxMDAlfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsucm93Lm1lZGl1bS11bnN0YWNrPi5jb2x1bW4sLnJvdy5tZWRpdW0tdW5zdGFjaz4uY29sdW1uc3tmbGV4OjEgMSAwcHh9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVkaXVtLWNvbGxhcHNlPi5jb2x1bW4sLm1lZGl1bS1jb2xsYXBzZT4uY29sdW1uc3twYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9Lm1lZGl1bS11bmNvbGxhcHNlPi5jb2x1bW4sLm1lZGl1bS11bmNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6LjkzNzVyZW07cGFkZGluZy1sZWZ0Oi45Mzc1cmVtfX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LmxhcmdlLTF7ZmxleDowIDAgOC4zMzMzMyU7bWF4LXdpZHRoOjguMzMzMzMlfS5sYXJnZS1vZmZzZXQtMHttYXJnaW4tbGVmdDowJX0ubGFyZ2UtMntmbGV4OjAgMCAxNi42NjY2NyU7bWF4LXdpZHRoOjE2LjY2NjY3JX0ubGFyZ2Utb2Zmc2V0LTF7bWFyZ2luLWxlZnQ6OC4zMzMzMyV9LmxhcmdlLTN7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9LmxhcmdlLW9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY3JX0ubGFyZ2UtNHtmbGV4OjAgMCAzMy4zMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzJX0ubGFyZ2Utb2Zmc2V0LTN7bWFyZ2luLWxlZnQ6MjUlfS5sYXJnZS01e2ZsZXg6MCAwIDQxLjY2NjY3JTttYXgtd2lkdGg6NDEuNjY2NjclfS5sYXJnZS1vZmZzZXQtNHttYXJnaW4tbGVmdDozMy4zMzMzMyV9LmxhcmdlLTZ7ZmxleDowIDAgNTAlO21heC13aWR0aDo1MCV9LmxhcmdlLW9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY3JX0ubGFyZ2UtN3tmbGV4OjAgMCA1OC4zMzMzMyU7bWF4LXdpZHRoOjU4LjMzMzMzJX0ubGFyZ2Utb2Zmc2V0LTZ7bWFyZ2luLWxlZnQ6NTAlfS5sYXJnZS04e2ZsZXg6MCAwIDY2LjY2NjY3JTttYXgtd2lkdGg6NjYuNjY2NjclfS5sYXJnZS1vZmZzZXQtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMyV9LmxhcmdlLTl7ZmxleDowIDAgNzUlO21heC13aWR0aDo3NSV9LmxhcmdlLW9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY3JX0ubGFyZ2UtMTB7ZmxleDowIDAgODMuMzMzMzMlO21heC13aWR0aDo4My4zMzMzMyV9LmxhcmdlLW9mZnNldC05e21hcmdpbi1sZWZ0Ojc1JX0ubGFyZ2UtMTF7ZmxleDowIDAgOTEuNjY2NjclO21heC13aWR0aDo5MS42NjY2NyV9LmxhcmdlLW9mZnNldC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMyV9LmxhcmdlLTEye2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9LmxhcmdlLW9mZnNldC0xMXttYXJnaW4tbGVmdDo5MS42NjY2NyV9LmxhcmdlLXVwLTF7ZmxleC13cmFwOndyYXB9LmxhcmdlLXVwLTE+LmNvbHVtbiwubGFyZ2UtdXAtMT4uY29sdW1uc3tmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5sYXJnZS11cC0ye2ZsZXgtd3JhcDp3cmFwfS5sYXJnZS11cC0yPi5jb2x1bW4sLmxhcmdlLXVwLTI+LmNvbHVtbnN7ZmxleDowIDAgNTAlO21heC13aWR0aDo1MCV9LmxhcmdlLXVwLTN7ZmxleC13cmFwOndyYXB9LmxhcmdlLXVwLTM+LmNvbHVtbiwubGFyZ2UtdXAtMz4uY29sdW1uc3tmbGV4OjAgMCAzMy4zMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzJX0ubGFyZ2UtdXAtNHtmbGV4LXdyYXA6d3JhcH0ubGFyZ2UtdXAtND4uY29sdW1uLC5sYXJnZS11cC00Pi5jb2x1bW5ze2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5sYXJnZS11cC01e2ZsZXgtd3JhcDp3cmFwfS5sYXJnZS11cC01Pi5jb2x1bW4sLmxhcmdlLXVwLTU+LmNvbHVtbnN7ZmxleDowIDAgMjAlO21heC13aWR0aDoyMCV9LmxhcmdlLXVwLTZ7ZmxleC13cmFwOndyYXB9LmxhcmdlLXVwLTY+LmNvbHVtbiwubGFyZ2UtdXAtNj4uY29sdW1uc3tmbGV4OjAgMCAxNi42NjY2NyU7bWF4LXdpZHRoOjE2LjY2NjY3JX0ubGFyZ2UtdXAtN3tmbGV4LXdyYXA6d3JhcH0ubGFyZ2UtdXAtNz4uY29sdW1uLC5sYXJnZS11cC03Pi5jb2x1bW5ze2ZsZXg6MCAwIDE0LjI4NTcxJTttYXgtd2lkdGg6MTQuMjg1NzElfS5sYXJnZS11cC04e2ZsZXgtd3JhcDp3cmFwfS5sYXJnZS11cC04Pi5jb2x1bW4sLmxhcmdlLXVwLTg+LmNvbHVtbnN7ZmxleDowIDAgMTIuNSU7bWF4LXdpZHRoOjEyLjUlfX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pey5sYXJnZS1leHBhbmR7ZmxleDoxIDEgMHB4fX0ucm93LmxhcmdlLXVuc3RhY2s+LmNvbHVtbiwucm93LmxhcmdlLXVuc3RhY2s+LmNvbHVtbnN7ZmxleDowIDAgMTAwJX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LnJvdy5sYXJnZS11bnN0YWNrPi5jb2x1bW4sLnJvdy5sYXJnZS11bnN0YWNrPi5jb2x1bW5ze2ZsZXg6MSAxIDBweH19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5sYXJnZS1jb2xsYXBzZT4uY29sdW1uLC5sYXJnZS1jb2xsYXBzZT4uY29sdW1uc3twYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9LmxhcmdlLXVuY29sbGFwc2U+LmNvbHVtbiwubGFyZ2UtdW5jb2xsYXBzZT4uY29sdW1uc3twYWRkaW5nLXJpZ2h0Oi45Mzc1cmVtO3BhZGRpbmctbGVmdDouOTM3NXJlbX19LnNocmlua3tmbGV4OjAgMCBhdXRvO21heC13aWR0aDoxMDAlfS5jb2x1bW4tYmxvY2t7bWFyZ2luLWJvdHRvbToxLjI1cmVtfS5jb2x1bW4tYmxvY2s+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsuY29sdW1uLWJsb2Nre21hcmdpbi1ib3R0b206MS44NzVyZW19LmNvbHVtbi1ibG9jaz46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9fS5hbGlnbi1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LmFsaWduLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5hbGlnbi1qdXN0aWZ5e2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5hbGlnbi1zcGFjZWR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH0uYWxpZ24tcmlnaHQudmVydGljYWwubWVudT5saT5he2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnU+bGk+YXtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5hbGlnbi10b3B7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uYWxpZ24tc2VsZi10b3B7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0fS5hbGlnbi1ib3R0b217YWxpZ24taXRlbXM6ZmxleC1lbmR9LmFsaWduLXNlbGYtYm90dG9te2FsaWduLXNlbGY6ZmxleC1lbmR9LmFsaWduLW1pZGRsZXthbGlnbi1pdGVtczpjZW50ZXJ9LmFsaWduLXNlbGYtbWlkZGxle2FsaWduLXNlbGY6Y2VudGVyfS5hbGlnbi1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2h9LmFsaWduLXNlbGYtc3RyZXRjaHthbGlnbi1zZWxmOnN0cmV0Y2h9LmFsaWduLWNlbnRlci1taWRkbGV7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24tY29udGVudDpjZW50ZXJ9LnNtYWxsLW9yZGVyLTF7b3JkZXI6MX0uc21hbGwtb3JkZXItMntvcmRlcjoyfS5zbWFsbC1vcmRlci0ze29yZGVyOjN9LnNtYWxsLW9yZGVyLTR7b3JkZXI6NH0uc21hbGwtb3JkZXItNXtvcmRlcjo1fS5zbWFsbC1vcmRlci02e29yZGVyOjZ9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZWRpdW0tb3JkZXItMXtvcmRlcjoxfS5tZWRpdW0tb3JkZXItMntvcmRlcjoyfS5tZWRpdW0tb3JkZXItM3tvcmRlcjozfS5tZWRpdW0tb3JkZXItNHtvcmRlcjo0fS5tZWRpdW0tb3JkZXItNXtvcmRlcjo1fS5tZWRpdW0tb3JkZXItNntvcmRlcjo2fX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LmxhcmdlLW9yZGVyLTF7b3JkZXI6MX0ubGFyZ2Utb3JkZXItMntvcmRlcjoyfS5sYXJnZS1vcmRlci0ze29yZGVyOjN9LmxhcmdlLW9yZGVyLTR7b3JkZXI6NH0ubGFyZ2Utb3JkZXItNXtvcmRlcjo1fS5sYXJnZS1vcmRlci02e29yZGVyOjZ9fS5mbGV4LWNvbnRhaW5lcntkaXNwbGF5OmZsZXh9LmZsZXgtY2hpbGQtYXV0b3tmbGV4OjEgMSBhdXRvfS5mbGV4LWNoaWxkLWdyb3d7ZmxleDoxIDAgYXV0b30uZmxleC1jaGlsZC1zaHJpbmt7ZmxleDowIDEgYXV0b30uZmxleC1kaXItcm93e2ZsZXgtZGlyZWN0aW9uOnJvd30uZmxleC1kaXItcm93LXJldmVyc2V7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9LmZsZXgtZGlyLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVkaXVtLWZsZXgtY29udGFpbmVye2Rpc3BsYXk6ZmxleH0ubWVkaXVtLWZsZXgtY2hpbGQtYXV0b3tmbGV4OjEgMSBhdXRvfS5tZWRpdW0tZmxleC1jaGlsZC1ncm93e2ZsZXg6MSAwIGF1dG99Lm1lZGl1bS1mbGV4LWNoaWxkLXNocmlua3tmbGV4OjAgMSBhdXRvfS5tZWRpdW0tZmxleC1kaXItcm93e2ZsZXgtZGlyZWN0aW9uOnJvd30ubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5tZWRpdW0tZmxleC1kaXItY29sdW1ue2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LmxhcmdlLWZsZXgtY29udGFpbmVye2Rpc3BsYXk6ZmxleH0ubGFyZ2UtZmxleC1jaGlsZC1hdXRve2ZsZXg6MSAxIGF1dG99LmxhcmdlLWZsZXgtY2hpbGQtZ3Jvd3tmbGV4OjEgMCBhdXRvfS5sYXJnZS1mbGV4LWNoaWxkLXNocmlua3tmbGV4OjAgMSBhdXRvfS5sYXJnZS1mbGV4LWRpci1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZX0ubGFyZ2UtZmxleC1kaXItY29sdW1ue2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2V7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9fS5tZW51e3BhZGRpbmc6MDttYXJnaW46MDtsaXN0LXN0eWxlOm5vbmU7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfVtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaXtvdXRsaW5lOjB9Lm1lbnUgYSwubWVudSAuYnV0dG9ue2xpbmUtaGVpZ2h0OjE7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZGlzcGxheTpibG9jaztwYWRkaW5nOjAuN3JlbSAxcmVtfS5tZW51IGlucHV0LC5tZW51IHNlbGVjdCwubWVudSBhLC5tZW51IGJ1dHRvbnttYXJnaW4tYm90dG9tOjB9Lm1lbnUgaW5wdXR7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lm1lbnUsLm1lbnUuaG9yaXpvbnRhbHtmbGV4LXdyYXA6d3JhcDtmbGV4LWRpcmVjdGlvbjpyb3d9Lm1lbnUudmVydGljYWx7ZmxleC13cmFwOm5vd3JhcDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lm1lbnUuZXhwYW5kZWQgbGl7ZmxleDoxIDEgMHB4fS5tZW51LnNpbXBsZXthbGlnbi1pdGVtczpjZW50ZXJ9Lm1lbnUuc2ltcGxlIGxpK2xpe21hcmdpbi1sZWZ0OjFyZW19Lm1lbnUuc2ltcGxlIGF7cGFkZGluZzowfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVudS5tZWRpdW0taG9yaXpvbnRhbHtmbGV4LXdyYXA6d3JhcDtmbGV4LWRpcmVjdGlvbjpyb3d9Lm1lbnUubWVkaXVtLXZlcnRpY2Fse2ZsZXgtd3JhcDpub3dyYXA7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaXtmbGV4OjEgMSAwcHh9Lm1lbnUubWVkaXVtLXNpbXBsZSBsaXtmbGV4OjEgMSAwcHh9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsubWVudS5sYXJnZS1ob3Jpem9udGFse2ZsZXgtd3JhcDp3cmFwO2ZsZXgtZGlyZWN0aW9uOnJvd30ubWVudS5sYXJnZS12ZXJ0aWNhbHtmbGV4LXdyYXA6bm93cmFwO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWVudS5sYXJnZS1leHBhbmRlZCBsaXtmbGV4OjEgMSAwcHh9Lm1lbnUubGFyZ2Utc2ltcGxlIGxpe2ZsZXg6MSAxIDBweH19Lm1lbnUubmVzdGVke21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjFyZW19Lm1lbnUuaWNvbnMgYXtkaXNwbGF5OmZsZXh9Lm1lbnUuaWNvbi10b3AgYSwubWVudS5pY29uLXJpZ2h0IGEsLm1lbnUuaWNvbi1ib3R0b20gYSwubWVudS5pY29uLWxlZnQgYXtkaXNwbGF5OmZsZXh9Lm1lbnUuaWNvbi1sZWZ0IGxpIGF7ZmxleC1mbG93OnJvdyBub3dyYXB9Lm1lbnUuaWNvbi1sZWZ0IGxpIGEgaW1nLC5tZW51Lmljb24tbGVmdCBsaSBhIGksLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3Zne21hcmdpbi1yaWdodDouMjVyZW19Lm1lbnUuaWNvbi1yaWdodCBsaSBhe2ZsZXgtZmxvdzpyb3cgbm93cmFwfS5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2Z3ttYXJnaW4tbGVmdDouMjVyZW19Lm1lbnUuaWNvbi10b3AgbGkgYXtmbGV4LWZsb3c6Y29sdW1uIG5vd3JhcH0ubWVudS5pY29uLXRvcCBsaSBhIGltZywubWVudS5pY29uLXRvcCBsaSBhIGksLm1lbnUuaWNvbi10b3AgbGkgYSBzdmd7YWxpZ24tc2VsZjpzdHJldGNoO21hcmdpbi1ib3R0b206LjI1cmVtO3RleHQtYWxpZ246Y2VudGVyfS5tZW51Lmljb24tYm90dG9tIGxpIGF7ZmxleC1mbG93OmNvbHVtbiBub3dyYXB9Lm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpLC5tZW51Lmljb24tYm90dG9tIGxpIGEgc3Zne2FsaWduLXNlbGY6c3RyZXRjaDttYXJnaW4tYm90dG9tOi4yNXJlbTt0ZXh0LWFsaWduOmNlbnRlcn0ubWVudSAuaXMtYWN0aXZlPmF7YmFja2dyb3VuZDojMTc3OWJhO2NvbG9yOiNmZWZlZmV9Lm1lbnUgLmFjdGl2ZT5he2JhY2tncm91bmQ6IzE3NzliYTtjb2xvcjojZmVmZWZlfS5tZW51LmFsaWduLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm1lbnUuYWxpZ24tcmlnaHQgbGl7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubWVudS5hbGlnbi1yaWdodCBsaSAuc3VibWVudSBsaXtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaXtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246cmlnaHR9Lm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkgLnN1Ym1lbnUgbGl7dGV4dC1hbGlnbjpyaWdodH0ubWVudS5hbGlnbi1yaWdodCAubmVzdGVke21hcmdpbi1yaWdodDoxcmVtO21hcmdpbi1sZWZ0OjB9Lm1lbnUuYWxpZ24tY2VudGVyIGxpe2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZW51LmFsaWduLWNlbnRlciBsaSAuc3VibWVudSBsaXtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubWVudSAubWVudS10ZXh0e3BhZGRpbmc6MC43cmVtIDFyZW07Zm9udC13ZWlnaHQ6Ym9sZDtsaW5lLWhlaWdodDoxO2NvbG9yOmluaGVyaXR9Lm1lbnUtY2VudGVyZWQ+Lm1lbnV7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWVudS1jZW50ZXJlZD4ubWVudSBsaXtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWVudS1jZW50ZXJlZD4ubWVudSBsaSAuc3VibWVudSBsaXtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bHtkaXNwbGF5Om5vbmV9LmRyb3Bkb3duLm1lbnU+bGkub3BlbnMtbGVmdD4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtyaWdodDowO2xlZnQ6YXV0b30uZHJvcGRvd24ubWVudT5saS5vcGVucy1yaWdodD4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24ubWVudSBhe3BhZGRpbmc6MC43cmVtIDFyZW19W2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5kcm9wZG93bi5tZW51IGF7b3V0bGluZTowfS5kcm9wZG93bi5tZW51IC5pcy1hY3RpdmU+YXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiMxNzc5YmF9Lm5vLWpzIC5kcm9wZG93bi5tZW51IHVse2Rpc3BsYXk6bm9uZX0uZHJvcGRvd24ubWVudSAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnV7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0uZHJvcGRvd24ubWVudS52ZXJ0aWNhbD5saSAuaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MH0uZHJvcGRvd24ubWVudS52ZXJ0aWNhbD5saS5vcGVucy1sZWZ0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3JpZ2h0OjEwMCU7bGVmdDphdXRvO3RvcDowfS5kcm9wZG93bi5tZW51LnZlcnRpY2FsPmxpLm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3JpZ2h0OmF1dG87bGVmdDoxMDAlfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbD5saS5vcGVucy1sZWZ0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3RvcDoxMDAlO3JpZ2h0OjA7bGVmdDphdXRvfS5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsPmxpLm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3RvcDoxMDAlO3JpZ2h0OmF1dG87bGVmdDowfS5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbD5saSAuaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MH0uZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWw+bGkub3BlbnMtbGVmdD4uaXMtZHJvcGRvd24tc3VibWVudXtyaWdodDoxMDAlO2xlZnQ6YXV0bzt0b3A6MH0uZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWw+bGkub3BlbnMtcmlnaHQ+LmlzLWRyb3Bkb3duLXN1Ym1lbnV7cmlnaHQ6YXV0bztsZWZ0OjEwMCV9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsPmxpLm9wZW5zLWxlZnQ+LmlzLWRyb3Bkb3duLXN1Ym1lbnV7dG9wOjEwMCU7cmlnaHQ6MDtsZWZ0OmF1dG99LmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbD5saS5vcGVucy1yaWdodD4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbD5saSAuaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MH0uZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbD5saS5vcGVucy1sZWZ0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3JpZ2h0OjEwMCU7bGVmdDphdXRvO3RvcDowfS5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsPmxpLm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3JpZ2h0OmF1dG87bGVmdDoxMDAlfX0uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWJ7dG9wOjEwMCU7cmlnaHQ6MDtsZWZ0OmF1dG99LmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWx7d2lkdGg6MTAwcHh9LmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHR7ZmxvYXQ6cmlnaHR9LmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50e3Bvc2l0aW9uOnJlbGF0aXZlfS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOjphZnRlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3JpZ2h0OjVweDtsZWZ0OmF1dG87bWFyZ2luLXRvcDotNnB4fS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lcj4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtsZWZ0OmF1dG99LmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQ+LmlzLWRyb3Bkb3duLXN1Ym1lbnV7cmlnaHQ6MTAwJTtsZWZ0OmF1dG99LmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3JpZ2h0OmF1dG87bGVmdDoxMDAlfS5pcy1kcm9wZG93bi1zdWJtZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MTAwJTt6LWluZGV4OjE7ZGlzcGxheTpub25lO21pbi13aWR0aDoyMDBweDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOiNmZWZlZmV9LmRyb3Bkb3duIC5pcy1kcm9wZG93bi1zdWJtZW51IGF7cGFkZGluZzowLjdyZW0gMXJlbX0uaXMtZHJvcGRvd24tc3VibWVudT5saXt3aWR0aDoxMDAlfS5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZXtkaXNwbGF5OmJsb2NrfS5pcy1kcmlsbGRvd257cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufS5pcy1kcmlsbGRvd24gbGl7ZGlzcGxheTpibG9ja30uaXMtZHJpbGxkb3duLmFuaW1hdGUtaGVpZ2h0e3RyYW5zaXRpb246aGVpZ2h0IDAuNXN9LmRyaWxsZG93biBhe3BhZGRpbmc6MC43cmVtIDFyZW07YmFja2dyb3VuZDojZmVmZWZlfS5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MTAwJTt6LWluZGV4Oi0xO3dpZHRoOjEwMCU7YmFja2dyb3VuZDojZmVmZWZlO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMTVzIGxpbmVhcn0uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmV7ei1pbmRleDoxO2Rpc3BsYXk6YmxvY2s7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfS5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWNsb3Npbmd7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9LmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUgYXtwYWRkaW5nOjAuN3JlbSAxcmVtfS5kcmlsbGRvd24gLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudXttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS5kcmlsbGRvd24gLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3Vze21pbi1oZWlnaHQ6MTAwJX0udGl0bGUtYmFye3BhZGRpbmc6LjVyZW07YmFja2dyb3VuZDojMGEwYTBhO2NvbG9yOiNmZWZlZmU7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmNlbnRlcn0udGl0bGUtYmFyIC5tZW51LWljb257bWFyZ2luLWxlZnQ6LjdyZW07bWFyZ2luLXJpZ2h0Oi43cmVtfS50aXRsZS1iYXItbGVmdCwudGl0bGUtYmFyLXJpZ2h0e2ZsZXg6MSAxIDBweH0udGl0bGUtYmFyLXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LnRpdGxlLWJhci10aXRsZXtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Zm9udC13ZWlnaHQ6Ym9sZH0uY2FsbG91dHtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MCAwIDFyZW0gMDtwYWRkaW5nOjFyZW07Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEwLDEwLDEwLDAuMjUpO2JvcmRlci1yYWRpdXM6MDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzBhMGEwYX0uY2FsbG91dD46Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5jYWxsb3V0PjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uY2FsbG91dC5wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6I2Q3ZWNmYTtjb2xvcjojMGEwYTBhfS5jYWxsb3V0LnNlY29uZGFyeXtiYWNrZ3JvdW5kLWNvbG9yOiNlYWVhZWE7Y29sb3I6IzBhMGEwYX0uY2FsbG91dC5zdWNjZXNze2JhY2tncm91bmQtY29sb3I6I2UxZmFlYTtjb2xvcjojMGEwYTBhfS5jYWxsb3V0Lndhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZmZmM2Q5O2NvbG9yOiMwYTBhMGF9LmNhbGxvdXQuYWxlcnR7YmFja2dyb3VuZC1jb2xvcjojZjdlNGUxO2NvbG9yOiMwYTBhMGF9LmNhbGxvdXQuc21hbGx7cGFkZGluZy10b3A6LjVyZW07cGFkZGluZy1yaWdodDouNXJlbTtwYWRkaW5nLWJvdHRvbTouNXJlbTtwYWRkaW5nLWxlZnQ6LjVyZW19LmNhbGxvdXQubGFyZ2V7cGFkZGluZy10b3A6M3JlbTtwYWRkaW5nLXJpZ2h0OjNyZW07cGFkZGluZy1ib3R0b206M3JlbTtwYWRkaW5nLWxlZnQ6M3JlbX10YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjFyZW07Ym9yZGVyLXJhZGl1czowfXRhYmxlIHRoZWFkLHRhYmxlIHRib2R5LHRhYmxlIHRmb290e2JvcmRlcjoxcHggc29saWQgI2YxZjFmMTtiYWNrZ3JvdW5kLWNvbG9yOiNmZWZlZmV9dGFibGUgY2FwdGlvbntwYWRkaW5nOi41cmVtIC42MjVyZW0gLjYyNXJlbTtmb250LXdlaWdodDpib2xkfXRhYmxlIHRoZWFke2JhY2tncm91bmQ6I2Y4ZjhmODtjb2xvcjojMGEwYTBhfXRhYmxlIHRmb290e2JhY2tncm91bmQ6I2YxZjFmMTtjb2xvcjojMGEwYTBhfXRhYmxlIHRoZWFkIHRyLHRhYmxlIHRmb290IHRye2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9dGFibGUgdGhlYWQgdGgsdGFibGUgdGhlYWQgdGQsdGFibGUgdGZvb3QgdGgsdGFibGUgdGZvb3QgdGR7cGFkZGluZzouNXJlbSAuNjI1cmVtIC42MjVyZW07Zm9udC13ZWlnaHQ6Ym9sZDt0ZXh0LWFsaWduOmxlZnR9dGFibGUgdGJvZHkgdGgsdGFibGUgdGJvZHkgdGR7cGFkZGluZzouNXJlbSAuNjI1cmVtIC42MjVyZW19dGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pe2JvcmRlci1ib3R0b206MDtiYWNrZ3JvdW5kLWNvbG9yOiNmMWYxZjF9dGFibGUudW5zdHJpcGVkIHRib2R5e2JhY2tncm91bmQtY29sb3I6I2ZlZmVmZX10YWJsZS51bnN0cmlwZWQgdGJvZHkgdHJ7Ym9yZGVyLWJvdHRvbTowO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNmMWYxZjE7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSl7dGFibGUuc3RhY2sgdGhlYWR7ZGlzcGxheTpub25lfXRhYmxlLnN0YWNrIHRmb290e2Rpc3BsYXk6bm9uZX10YWJsZS5zdGFjayB0cix0YWJsZS5zdGFjayB0aCx0YWJsZS5zdGFjayB0ZHtkaXNwbGF5OmJsb2NrfXRhYmxlLnN0YWNrIHRke2JvcmRlci10b3A6MH19dGFibGUuc2Nyb2xse2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtvdmVyZmxvdy14OmF1dG99dGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjNmM2YzfXRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2VjZWNlY310YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmOWY5Zjl9dGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2VjZWNlY30udGFibGUtc2Nyb2xse292ZXJmbG93LXg6YXV0b30udGFibGUtc2Nyb2xsIHRhYmxle3dpZHRoOmF1dG99aHRtbCxib2R5e292ZXJmbG93LXg6aGlkZGVufSNoZWFkZXJ7YmFja2dyb3VuZDojZmRhYjFifUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsjaGVhZGVye2hlaWdodDo1LjE4NzVyZW19fSNtYWluLW1lbnUubWVkaXVtLWhvcml6b250YWx7ZmxleDpub25lO2Rpc3BsYXk6YmxvY2t9I21haW4tbWVudS5tZWRpdW0taG9yaXpvbnRhbCAubWVudS1pdGVtLm1lbnUtbGV2ZWwtMHtkaXNwbGF5OnRhYmxlLWNlbGw7dmVydGljYWwtYWxpZ246bWlkZGxlfSNsb2dve2Rpc3BsYXk6YmxvY2s7cGFkZGluZy10b3A6MTBweDtwYWRkaW5nLWJvdHRvbToxMHB4fSNsb2dvIGltZ3ttYXgtd2lkdGg6OHJlbX10YWJsZXttYXJnaW46MnJlbSAwfXRhYmxlIHRoe3doaXRlLXNwYWNlOm5vd3JhcH10YWJsZSB0aCBwe21hcmdpbi1ib3R0b206MH10YWJsZSB0ZHt2ZXJ0aWNhbC1hbGlnbjp0b3B9I21haW57YmFja2dyb3VuZDojZGNlZmZkO3BhZGRpbmctdG9wOjIuNXJlbTtwYWRkaW5nLWJvdHRvbTo2Ljg3NXJlbX0jbWFpbiAubGF5b3V0LWNvbnRlbnR7d2lkdGg6MTAwJX0uZnJvbnQgI21haW57cGFkZGluZy1ib3R0b206MH0uaGlnaGxpZ2h0ZWQgI2Jsb2NrLWZyb250cGFnZWhlYWR7YmFja2dyb3VuZDojYjFkOGYzIHVybChcIi4uL2ltYWdlcy9mcm9udC1iYW5uZXIvY29tcGV0aXRpb24tYmcuc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb3Zlcjtib3JkZXItYm90dG9tOjJyZW0gc29saWQgI2ZmYmQ2Nn0uaGlnaGxpZ2h0ZWQgI2Jsb2NrLWZyb250cGFnZWhlYWQgLmxlZnQtYmd7YmFja2dyb3VuZDp1cmwoXCIuLi9pbWFnZXMvZnJvbnQtYmFubmVyL2hlYWQtbGVmdC5zdmdcIikgNTAlIDEwMCUgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToxMDAlIGF1dG99LmhpZ2hsaWdodGVkICNibG9jay1mcm9udHBhZ2VoZWFkIC5yaWdodC1iZ3tiYWNrZ3JvdW5kOnVybChcIi4uL2ltYWdlcy9mcm9udC1iYW5uZXIvaGVhZC1yaWdodC5zdmdcIikgNTAlIDEwMCUgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToxMDAlIGF1dG99LmhpZ2hsaWdodGVkICNibG9jay1mcm9udHBhZ2VoZWFkIC5mcm9udC1jb250ZW50e3RleHQtYWxpZ246Y2VudGVyfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsuaGlnaGxpZ2h0ZWQgI2Jsb2NrLWZyb250cGFnZWhlYWQgLmxlZnQtYmcsLmhpZ2hsaWdodGVkICNibG9jay1mcm9udHBhZ2VoZWFkIC5yaWdodC1iZ3toZWlnaHQ6MjEuODc1cmVtfX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LmhpZ2hsaWdodGVkICNibG9jay1mcm9udHBhZ2VoZWFkIC5sZWZ0LWJnLC5oaWdobGlnaHRlZCAjYmxvY2stZnJvbnRwYWdlaGVhZCAucmlnaHQtYmd7aGVpZ2h0OjI1cmVtfX0uaGlnaGxpZ2h0ZWQgI2Jsb2NrLWZyb250cGFnZWhlYWQgLmJhZGdle3dpZHRoOjE4Ljc1cmVtO2hlaWdodDoxOC43NXJlbTtiYWNrZ3JvdW5kOnVybChcIi4uL2ltYWdlcy9mcm9udC1iYW5uZXIvYmFkZ2UucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTo5MCU7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTkuMzc1cmVtfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7LmhpZ2hsaWdodGVkICNibG9jay1mcm9udHBhZ2VoZWFkIC5iYWRnZXttYXJnaW4tdG9wOjFyZW07bWFyZ2luLWJvdHRvbToxcmVtfX0uaGlnaGxpZ2h0ZWQgI2Jsb2NrLWZyb250cGFnZWhlYWQgLmJhZGdlIGF7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4Ojk5O3RleHQtaW5kZW50Oi05OTk5cHh9LmhpZ2hsaWdodGVkICNibG9jay1iZXN0aWxsIC5pY29ue3dpZHRoOjMxMHB4O2hlaWdodDoyNjdweDtiYWNrZ3JvdW5kOnVybChcIi4uL2ltYWdlcy9zaG9wcGluZy1jYXJ0LnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTttYXJnaW4tbGVmdDotNDI1cHh9LmhpZ2hsaWdodGVkICNibG9jay1iZXN0aWxsIC5pbmZve292ZXJmbG93OmhpZGRlbjttYXJnaW46M3JlbSAwfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7LmhpZ2hsaWdodGVkICNibG9jay1iZXN0aWxsIC5pbmZve3RleHQtYWxpZ246Y2VudGVyO21hcmdpbjoxcmVtIDA7YmFja2dyb3VuZDpub25lfX0uaGlnaGxpZ2h0ZWQgI2Jsb2NrLWJlc3RpbGwgLmluZm8gLnRleHR7Y29sb3I6I2ZlZmVmZTtmb250LXNpemU6Mi41cmVtO2xpbmUtaGVpZ2h0Om5vcm1hbDtmb250LWZhbWlseTpSb2JvdG87Zm9udC13ZWlnaHQ6MzAwfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsuaGlnaGxpZ2h0ZWQgI2Jsb2NrLWJlc3RpbGwgLmluZm8gLnRleHR7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTgwcHg7bWFyZ2luLWJvdHRvbToxLjVyZW19fS5oaWdobGlnaHRlZCAjYmxvY2stYmVzdGlsbCAuaW5mbyBhe2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTYwcHg7aGVpZ2h0OjgwcHg7bWF4LXdpZHRoOjk4JTtiYWNrZ3JvdW5kOnVybChcIi4uL2ltYWdlcy9idG4tYmVzdGlsLnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MTAwJTt0ZXh0LWluZGVudDotOTk5OXB4O292ZXJmbG93OmhpZGRlbn0jYmxvY2stbnl0dGlnYXZpdGV7YmFja2dyb3VuZDojMzczYzQzIHVybChcIi4uL2ltYWdlcy9ib3R0b20tYmcuc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O2NvbG9yOiNmZWZlZmU7YmFja2dyb3VuZC1zaXplOmNvdmVyfSNibG9jay1ueXR0aWdhdml0ZSBoNHttYXJnaW4tYm90dG9tOjEuNXJlbX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0peyNibG9jay1ueXR0aWdhdml0ZSBoNHtmb250LXNpemU6MS41cmVtO2ZvbnQtd2VpZ2h0OmJvbGQ7cGFkZGluZy1ib3R0b206LjVyZW07Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2ZlZmVmZTttYXJnaW4tYm90dG9tOjFyZW19fSNibG9jay1ueXR0aWdhdml0ZSAucm93e3BhZGRpbmctdG9wOjEuODc1cmVtO3BhZGRpbmctYm90dG9tOjUuODEyNXJlbX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0peyNibG9jay1ueXR0aWdhdml0ZSAucm93e3BhZGRpbmctYm90dG9tOjEuODc1cmVtfX0jYmxvY2stbnl0dGlnYXZpdGUgLnJvdyBoNXtmb250LXdlaWdodDpib2xkO2ZvbnQtc2l6ZToxLjNyZW19I2Jsb2NrLW55dHRpZ2F2aXRlIC5yb3cgYXtjb2xvcjojZmRhZDFiO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Zm9udC13ZWlnaHQ6Ym9sZH0jYmxvY2stbnl0dGlnYXZpdGUgLnJvdyAuY29sLTEgLmljb257aGVpZ2h0OjE1N3B4O2JhY2tncm91bmQ6dXJsKFwiLi4vaW1hZ2VzL2ljb24taWQucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToxMDAlfSNibG9jay1ueXR0aWdhdml0ZSAucm93IC5jb2wtMiAuaWNvbntoZWlnaHQ6MTgzcHg7YmFja2dyb3VuZDp1cmwoXCIuLi9pbWFnZXMvaWNvbi02cGFjay5wbmdcIikgNTAlIDUwJSBuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOjEwMCV9I2Jsb2NrLW55dHRpZ2F2aXRlIC5yb3cgLmNvbC0zIC5pY29ue2hlaWdodDoyNzRweDtoZWlnaHQ6MTgwcHg7YmFja2dyb3VuZDp1cmwoXCIuLi9pbWFnZXMvaWNvbi1ib3R0bGVzLnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6NjQlO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotMTBweH0jYmxvY2stbnl0dGlnYXZpdGUgLnJvdyAuY29sLTQgLmljb257aGVpZ2h0OjI3MnB4O2JhY2tncm91bmQ6dXJsKFwiLi4vaW1hZ2VzL2ljb24tYm90dGxlc1MucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotMTBweH0jYmxvY2stbnl0dGlnYXZpdGUgLnJvdyAuY29sdW1uIC5pY29uLCNibG9jay1ueXR0aWdhdml0ZSAucm93IC5jb2x1bW5zIC5pY29ue3dpZHRoOjE3NHB4O2JhY2tncm91bmQtcG9zaXRpb246NTAlIDA7ZmxvYXQ6bGVmdDttYXJnaW4tcmlnaHQ6MnJlbX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0peyNibG9jay1ueXR0aWdhdml0ZSAucm93IC5jb2x1bW4gLmljb24sI2Jsb2NrLW55dHRpZ2F2aXRlIC5yb3cgLmNvbHVtbnMgLmljb257ZGlzcGxheTpub25lfX0jZm9vdGVye2JhY2tncm91bmQ6I2ZkYWIxYjttaW4taGVpZ2h0OjlyZW07cG9zaXRpb246cmVsYXRpdmV9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0peyNmb290ZXIgI2Jsb2NrLW9zLXRoZW1lLWZvb3RlcntwYWRkaW5nLXRvcDozLjEyNXJlbX19I2Zvb3RlciAjYmxvY2stb3MtdGhlbWUtZm9vdGVyIHVsLm1lbnV7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzoycmVtIDB9I2Zvb3RlciAjYmxvY2stb3MtdGhlbWUtZm9vdGVyIHVsLm1lbnUgYXtjb2xvcjojZmVmZWZlO2ZvbnQtc2l6ZToxLjJyZW07Zm9udC13ZWlnaHQ6Ym9sZH1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0peyNmb290ZXIgI2Jsb2NrLW9zLXRoZW1lLWZvb3RlciB1bC5tZW51IGF7dGV4dC1hbGlnbjpjZW50ZXI7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2ZlZmVmZX19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKXsjZm9vdGVyICNibG9jay1vcy10aGVtZS1mb290ZXIgdWwubWVudSBsaTpmaXJzdC1jaGlsZCBhe2JvcmRlci10b3A6MXB4IHNvbGlkICNmZWZlZmV9fSNmb290ZXIgI2Zvb3Rlci10ZXh0e21hcmdpbjowO21hcmdpbi1ib3R0b206MnJlbTtjb2xvcjojYTM2YzAxfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7I2Zvb3RlciAjZm9vdGVyLXRleHQgLmZ0ZXh0LWl0ZW17ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmNlbnRlcn19I2Zvb3RlciAjZm9vdGVyLXRleHQgLnNlcHtjb2xvcjojZmVmZWZlfSNmb290ZXIgI2Jsb2NrLWZvb3RlcmJhZGdle3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNS44MTI1cmVtO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi01cmVtfSNmb290ZXIgI2Jsb2NrLWZvb3RlcmJhZGdlIC5iYWRnZXt3aWR0aDoxMHJlbTtoZWlnaHQ6MTByZW07YmFja2dyb3VuZDp1cmwoXCIuLi9pbWFnZXMvYmFkZ2Utc2tvbGVuLnN2Z1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6OTAlfS5mcC1hcnRpY2xlcyBoMy50aXRsZXttYXJnaW4tdG9wOjJyZW07bWFyZ2luLWJvdHRvbToycmVtfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7LmZwLWFydGljbGVzIGgzLnRpdGxle2ZvbnQtc2l6ZToycmVtfX0uZnAtYXJ0aWNsZXMgLmdyYXBoaWN7aGVpZ2h0OjUwMHB4O2JhY2tncm91bmQ6dXJsKFwiLi4vaW1hZ2VzL2d1eV9sZWZ0LnN2Z1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6YXV0byAxMDAlfS5mcC1hcnRpY2xlcyAudmlld3Mtcm93IC53cmFwcGVye2JhY2tncm91bmQ6I2ZlZmVmZTtib3JkZXItcmFkaXVzOjE1cHg7bWFyZ2luLWJvdHRvbTozcmVtO3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6MjBweH1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSl7LmZwLWFydGljbGVzIC52aWV3cy1yb3cgLndyYXBwZXI6YWZ0ZXJ7Y29udGVudDonJzt3aWR0aDowcHg7aGVpZ2h0OjBweDtib3JkZXI6MjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQtY29sb3I6I2ZlZmVmZTtib3JkZXItYm90dG9tLWNvbG9yOiNmZWZlZmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjE1JTtsZWZ0Oi00NXB4fX0uZnAtYXJ0aWNsZXMgLnZpZXdzLXJvdyAud3JhcHBlciAubW9yZXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206LTIwcHg7cmlnaHQ6MTAlfS5mcC1hcnRpY2xlcyAudmlld3Mtcm93IC53cmFwcGVyIC5tb3JlIGF7Y29sb3I6I2ZlZmVmZTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MS41cmVtO2ZvbnQtZmFtaWx5OidPbGVvIFNjcmlwdCc7cGFkZGluZzowIDQ1cHggMnB4IDQ1cHg7YmFja2dyb3VuZDp1cmwoXCIuLi9pbWFnZXMvYnV0dG9uLnN2Z1wiKSA1MCUgMCBuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOjEwMCUgYXV0b30uZnAtYXJ0aWNsZXMgLnZpZXdzLXJvdyAud3JhcHBlciAubW9yZSBhOmhvdmVye2JhY2tncm91bmQtcG9zaXRpb246NTAlIDEwMCV9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5sYXlvdXQtc2lkZWJhci1maXJzdHtib3JkZXItbGVmdDoxcHggc29saWQgI2IxZDhmM319LmxheW91dC1zaWRlYmFyLWZpcnN0IGgye2ZvbnQtc2l6ZToxLjVyZW19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5sYXlvdXQtc2lkZWJhci1maXJzdCBoMntmb250LXNpemU6M3JlbX19LmNvbnRhY3Rze21hcmdpbi10b3A6MnJlbX0uY29udGFjdHMgLmNvbHVtbiwuY29udGFjdHMgLmNvbHVtbnN7bWFyZ2luLWJvdHRvbToycmVtfS5jb250YWN0cyAuY29sdW1uOmxhc3QtY2hpbGQsLmNvbnRhY3RzIC5jb2x1bW5zOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5jb250YWN0cyAuY29sdW1uIC53cmFwcGVyIC5uYW1lLC5jb250YWN0cyAuY29sdW1ucyAud3JhcHBlciAubmFtZXtmb250LXNpemU6MS4xcmVtO2NvbG9yOiMwZTg3ODB9LnRvb2xiYXItdHJheS1ob3Jpem9udGFsIGxpe2Zsb2F0Om5vbmUgIWltcG9ydGFudH1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDbG9zZSBCdXR0b25cbi8vICAxNS4gRHJpbGxkb3duXG4vLyAgMTYuIERyb3Bkb3duXG4vLyAgMTcuIERyb3Bkb3duIE1lbnVcbi8vICAxOC4gRmxleCBWaWRlb1xuLy8gIDE5LiBGb3Jtc1xuLy8gIDIwLiBMYWJlbFxuLy8gIDIxLiBNZWRpYSBPYmplY3Rcbi8vICAyMi4gTWVudVxuLy8gIDIzLiBPZmYtY2FudmFzXG4vLyAgMjQuIE9yYml0XG4vLyAgMjUuIFBhZ2luYXRpb25cbi8vICAyNi4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjcuIFJldmVhbFxuLy8gIDI4LiBTbGlkZXJcbi8vICAyOS4gU3dpdGNoXG4vLyAgMzAuIFRhYmxlXG4vLyAgMzEuIFRhYnNcbi8vICAzMi4gVGh1bWJuYWlsXG4vLyAgMzMuIFRpdGxlIEJhclxuLy8gIDM0LiBUb29sdGlwXG4vLyAgMzUuIFRvcCBCYXJcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cbkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86NDAwLDMwMCwzMDBpdGFsaWMsNDAwaXRhbGljLDcwMCk7XG5AaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9T2xlbytTY3JpcHQ6NDAwLDcwMCk7XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiZm91bmRhdGlvbi1pY29uc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ZvdW5kYXRpb24taWNvbnMvZm91bmRhdGlvbi1pY29ucy5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvZm91bmRhdGlvbi1pY29ucy9mb3VuZGF0aW9uLWljb25zLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgdXJsKFwiLi4vZm9udHMvZm91bmRhdGlvbi1pY29ucy9mb3VuZGF0aW9uLWljb25zLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICB1cmwoXCJmb3VuZGF0aW9uLWljb25zLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcbiAgICAgICB1cmwoXCJmb3VuZGF0aW9uLWljb25zLnN2ZyNmb250Y3VzdG9tXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4kcHJpbWFyeS1jb2xvcjogIzIxOTllODtcbiRzZWNvbmRhcnktY29sb3I6ICM3Nzc7XG4kc3VjY2Vzcy1jb2xvcjogIzNhZGI3NjtcbiR3YXJuaW5nLWNvbG9yOiAjZmZhZTAwO1xuJGFsZXJ0LWNvbG9yOiAjZWM1ODQwO1xuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XG4kbWVkaXVtLWdyYXk6ICM0ZDRkNGQ7XG4kZGFyay1ncmF5OiAjOGE4YThhO1xuJGJsYWNrOiAjMGEwYTBhO1xuJHdoaXRlOiAjZmVmZWZlO1xuJG9yYW5nZTogI2ZkYWIxYjtcbiRsaWdodC1ibHVlOiAjZGNlZmZkO1xuJGJsdWU6ICNiMWQ4ZjM7XG4kYm9keS1iYWNrZ3JvdW5kOiAkb3JhbmdlO1xuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xuJGJvZHktZm9udC1mYW1pbHk6IFJvYm90bywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tcmVzcG9uc2l2ZS1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRibG9jay1ncmlkLW1heDogODtcblxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlO1xuJGhlYWRlci1zaXplczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6IDI0LFxuICAgICdoMic6IDIwLFxuICAgICdoMyc6IDE5LFxuICAgICdoNCc6IDE4LFxuICAgICdoNSc6IDE3LFxuICAgICdoNic6IDE2LFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiA0OCxcbiAgICAnaDInOiA0MCxcbiAgICAnaDMnOiAzMSxcbiAgICAnaDQnOiAyNSxcbiAgICAnaDUnOiAyMCxcbiAgICAnaDYnOiAxNixcbiAgKSxcbik7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcblxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG5cbi8vIDYuIEFiaWRlXG4vLyAtLS0tLS0tLVxuXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xuJGFiaWRlLWxhYmVsczogdHJ1ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6ICRhbGVydC1jb2xvcjtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6ICRhbGVydC1jb2xvcjtcbiRpbnB1dC1lcnJvci1jb2xvcjogJGFsZXJ0LWNvbG9yO1xuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyA3LiBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiBmb3JlZ3JvdW5kKCRhY2NvcmRpb24tYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6IGZvcmVncm91bmQoJGFjY29yZGlvbi1iYWNrZ3JvdW5kLCAkcHJpbWFyeS1jb2xvcik7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogZm9yZWdyb3VuZCgkYmFkZ2UtYmFja2dyb3VuZCk7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNsYXNoOiB0cnVlO1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogI2ZmZjtcbiRidXR0b24tY29sb3ItYWx0OiAjMDAwO1xuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKTtcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IDFyZW07XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAwLjVyZW07XG4kY2xvc2VidXR0b24tc2l6ZTogMmVtO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTUuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogZmFsc2U7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuXG4vLyAxNi4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxNnJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pO1xuXG4vLyAxNy4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IGZhbHNlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IG5vbmU7XG5cbi8vIDE4LiBGbGV4IFZpZGVvXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kZmxleHZpZGVvLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRmbGV4dmlkZW8tcmF0aW86IDQgYnkgMztcbiRmbGV4dmlkZW8tcmF0aW8td2lkZXNjcmVlbjogMTYgYnkgOTtcblxuLy8gMTkuIEZvcm1zXG4vLyAtLS0tLS0tLS1cbi8vYjFkOGYzXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICMzMzM7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICMzMzM7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICNiMWQ4ZjM7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogZGVmYXVsdDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjAuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGxhYmVsLWNvbG9yOiBmb3JlZ3JvdW5kKCRsYWJlbC1iYWNrZ3JvdW5kKTtcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuXG4vLyAyMi4gTWVudVxuLy8gLS0tLS0tLS1cblxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbWFyZ2luLW5lc3RlZDogLS41cmVtO1xuJG1lbnUtaXRlbS1wYWRkaW5nOiAwLjdyZW0gMC41cmVtO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtZXhwYW5kLW1heDogNjtcblxuLy8gMjMuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZTogMjUwcHg7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJG9mZmNhbnZhcy16aW5kZXg6IC0xO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuJG1haW5jb250ZW50LXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNSk7XG5cbi8vIDI0LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjUuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiBmb3JlZ3JvdW5kKCRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50KTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyNi4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1vZmZzZXQ6IHJlbS1jYWxjKDEwMCk7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xuXG4vLyAyOC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAkc2xpZGVyLWhlaWdodDtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuXG4vLyAyOS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDMwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuXG4vLyAzMS4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1pdGVtLWNvbG9yOiBmb3JlZ3JvdW5kKCR0YWItYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItZXhwYW5kLW1heDogNjtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogZm9yZWdyb3VuZCgkdGFiLWJhY2tncm91bmQsICRwcmltYXJ5LWNvbG9yKTtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyAzMi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRibGFjaztcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuN3JlbTtcblxuLy8gMzQuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1waXAtb2Zmc2V0OiAxLjI1cmVtO1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItbGluay1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcblxuIiwiLyogXG4gKiBGb3VuZGF0aW9uIEljb25zIHYgMy4wXG4gKiBNYWRlIGJ5IFpVUkIgMjAxMyBodHRwOi8venVyYi5jb20vcGxheWdyb3VuZC9mb3VuZGF0aW9uLWljb24tZm9udHMtM1xuICogTUlUIExpY2Vuc2VcbiAqL1xuLmZpLWFkZHJlc3MtYm9vazpiZWZvcmUsXG4uZmktYWxlcnQ6YmVmb3JlLFxuLmZpLWFsaWduLWNlbnRlcjpiZWZvcmUsXG4uZmktYWxpZ24tanVzdGlmeTpiZWZvcmUsXG4uZmktYWxpZ24tbGVmdDpiZWZvcmUsXG4uZmktYWxpZ24tcmlnaHQ6YmVmb3JlLFxuLmZpLWFuY2hvcjpiZWZvcmUsXG4uZmktYW5ub3RhdGU6YmVmb3JlLFxuLmZpLWFyY2hpdmU6YmVmb3JlLFxuLmZpLWFycm93LWRvd246YmVmb3JlLFxuLmZpLWFycm93LWxlZnQ6YmVmb3JlLFxuLmZpLWFycm93LXJpZ2h0OmJlZm9yZSxcbi5maS1hcnJvdy11cDpiZWZvcmUsXG4uZmktYXJyb3dzLWNvbXByZXNzOmJlZm9yZSxcbi5maS1hcnJvd3MtZXhwYW5kOmJlZm9yZSxcbi5maS1hcnJvd3MtaW46YmVmb3JlLFxuLmZpLWFycm93cy1vdXQ6YmVmb3JlLFxuLmZpLWFzbDpiZWZvcmUsXG4uZmktYXN0ZXJpc2s6YmVmb3JlLFxuLmZpLWF0LXNpZ246YmVmb3JlLFxuLmZpLWJhY2tncm91bmQtY29sb3I6YmVmb3JlLFxuLmZpLWJhdHRlcnktZW1wdHk6YmVmb3JlLFxuLmZpLWJhdHRlcnktZnVsbDpiZWZvcmUsXG4uZmktYmF0dGVyeS1oYWxmOmJlZm9yZSxcbi5maS1iaXRjb2luLWNpcmNsZTpiZWZvcmUsXG4uZmktYml0Y29pbjpiZWZvcmUsXG4uZmktYmxpbmQ6YmVmb3JlLFxuLmZpLWJsdWV0b290aDpiZWZvcmUsXG4uZmktYm9sZDpiZWZvcmUsXG4uZmktYm9vay1ib29rbWFyazpiZWZvcmUsXG4uZmktYm9vazpiZWZvcmUsXG4uZmktYm9va21hcms6YmVmb3JlLFxuLmZpLWJyYWlsbGU6YmVmb3JlLFxuLmZpLWJ1cnN0LW5ldzpiZWZvcmUsXG4uZmktYnVyc3Qtc2FsZTpiZWZvcmUsXG4uZmktYnVyc3Q6YmVmb3JlLFxuLmZpLWNhbGVuZGFyOmJlZm9yZSxcbi5maS1jYW1lcmE6YmVmb3JlLFxuLmZpLWNoZWNrOmJlZm9yZSxcbi5maS1jaGVja2JveDpiZWZvcmUsXG4uZmktY2xpcGJvYXJkLW5vdGVzOmJlZm9yZSxcbi5maS1jbGlwYm9hcmQtcGVuY2lsOmJlZm9yZSxcbi5maS1jbGlwYm9hcmQ6YmVmb3JlLFxuLmZpLWNsb2NrOmJlZm9yZSxcbi5maS1jbG9zZWQtY2FwdGlvbjpiZWZvcmUsXG4uZmktY2xvdWQ6YmVmb3JlLFxuLmZpLWNvbW1lbnQtbWludXM6YmVmb3JlLFxuLmZpLWNvbW1lbnQtcXVvdGVzOmJlZm9yZSxcbi5maS1jb21tZW50LXZpZGVvOmJlZm9yZSxcbi5maS1jb21tZW50OmJlZm9yZSxcbi5maS1jb21tZW50czpiZWZvcmUsXG4uZmktY29tcGFzczpiZWZvcmUsXG4uZmktY29udHJhc3Q6YmVmb3JlLFxuLmZpLWNyZWRpdC1jYXJkOmJlZm9yZSxcbi5maS1jcm9wOmJlZm9yZSxcbi5maS1jcm93bjpiZWZvcmUsXG4uZmktY3NzMzpiZWZvcmUsXG4uZmktZGF0YWJhc2U6YmVmb3JlLFxuLmZpLWRpZS1maXZlOmJlZm9yZSxcbi5maS1kaWUtZm91cjpiZWZvcmUsXG4uZmktZGllLW9uZTpiZWZvcmUsXG4uZmktZGllLXNpeDpiZWZvcmUsXG4uZmktZGllLXRocmVlOmJlZm9yZSxcbi5maS1kaWUtdHdvOmJlZm9yZSxcbi5maS1kaXNsaWtlOmJlZm9yZSxcbi5maS1kb2xsYXItYmlsbDpiZWZvcmUsXG4uZmktZG9sbGFyOmJlZm9yZSxcbi5maS1kb3dubG9hZDpiZWZvcmUsXG4uZmktZWplY3Q6YmVmb3JlLFxuLmZpLWVsZXZhdG9yOmJlZm9yZSxcbi5maS1ldXJvOmJlZm9yZSxcbi5maS1leWU6YmVmb3JlLFxuLmZpLWZhc3QtZm9yd2FyZDpiZWZvcmUsXG4uZmktZmVtYWxlLXN5bWJvbDpiZWZvcmUsXG4uZmktZmVtYWxlOmJlZm9yZSxcbi5maS1maWx0ZXI6YmVmb3JlLFxuLmZpLWZpcnN0LWFpZDpiZWZvcmUsXG4uZmktZmxhZzpiZWZvcmUsXG4uZmktZm9sZGVyLWFkZDpiZWZvcmUsXG4uZmktZm9sZGVyLWxvY2s6YmVmb3JlLFxuLmZpLWZvbGRlcjpiZWZvcmUsXG4uZmktZm9vdDpiZWZvcmUsXG4uZmktZm91bmRhdGlvbjpiZWZvcmUsXG4uZmktZ3JhcGgtYmFyOmJlZm9yZSxcbi5maS1ncmFwaC1ob3Jpem9udGFsOmJlZm9yZSxcbi5maS1ncmFwaC1waWU6YmVmb3JlLFxuLmZpLWdyYXBoLXRyZW5kOmJlZm9yZSxcbi5maS1ndWlkZS1kb2c6YmVmb3JlLFxuLmZpLWhlYXJpbmctYWlkOmJlZm9yZSxcbi5maS1oZWFydDpiZWZvcmUsXG4uZmktaG9tZTpiZWZvcmUsXG4uZmktaHRtbDU6YmVmb3JlLFxuLmZpLWluZGVudC1sZXNzOmJlZm9yZSxcbi5maS1pbmRlbnQtbW9yZTpiZWZvcmUsXG4uZmktaW5mbzpiZWZvcmUsXG4uZmktaXRhbGljOmJlZm9yZSxcbi5maS1rZXk6YmVmb3JlLFxuLmZpLWxhcHRvcDpiZWZvcmUsXG4uZmktbGF5b3V0OmJlZm9yZSxcbi5maS1saWdodGJ1bGI6YmVmb3JlLFxuLmZpLWxpa2U6YmVmb3JlLFxuLmZpLWxpbms6YmVmb3JlLFxuLmZpLWxpc3QtYnVsbGV0OmJlZm9yZSxcbi5maS1saXN0LW51bWJlcjpiZWZvcmUsXG4uZmktbGlzdC10aHVtYm5haWxzOmJlZm9yZSxcbi5maS1saXN0OmJlZm9yZSxcbi5maS1sb2NrOmJlZm9yZSxcbi5maS1sb29wOmJlZm9yZSxcbi5maS1tYWduaWZ5aW5nLWdsYXNzOmJlZm9yZSxcbi5maS1tYWlsOmJlZm9yZSxcbi5maS1tYWxlLWZlbWFsZTpiZWZvcmUsXG4uZmktbWFsZS1zeW1ib2w6YmVmb3JlLFxuLmZpLW1hbGU6YmVmb3JlLFxuLmZpLW1hcDpiZWZvcmUsXG4uZmktbWFya2VyOmJlZm9yZSxcbi5maS1tZWdhcGhvbmU6YmVmb3JlLFxuLmZpLW1pY3JvcGhvbmU6YmVmb3JlLFxuLmZpLW1pbnVzLWNpcmNsZTpiZWZvcmUsXG4uZmktbWludXM6YmVmb3JlLFxuLmZpLW1vYmlsZS1zaWduYWw6YmVmb3JlLFxuLmZpLW1vYmlsZTpiZWZvcmUsXG4uZmktbW9uaXRvcjpiZWZvcmUsXG4uZmktbW91bnRhaW5zOmJlZm9yZSxcbi5maS1tdXNpYzpiZWZvcmUsXG4uZmktbmV4dDpiZWZvcmUsXG4uZmktbm8tZG9nczpiZWZvcmUsXG4uZmktbm8tc21va2luZzpiZWZvcmUsXG4uZmktcGFnZS1hZGQ6YmVmb3JlLFxuLmZpLXBhZ2UtY29weTpiZWZvcmUsXG4uZmktcGFnZS1jc3Y6YmVmb3JlLFxuLmZpLXBhZ2UtZGVsZXRlOmJlZm9yZSxcbi5maS1wYWdlLWRvYzpiZWZvcmUsXG4uZmktcGFnZS1lZGl0OmJlZm9yZSxcbi5maS1wYWdlLWV4cG9ydC1jc3Y6YmVmb3JlLFxuLmZpLXBhZ2UtZXhwb3J0LWRvYzpiZWZvcmUsXG4uZmktcGFnZS1leHBvcnQtcGRmOmJlZm9yZSxcbi5maS1wYWdlLWV4cG9ydDpiZWZvcmUsXG4uZmktcGFnZS1maWxsZWQ6YmVmb3JlLFxuLmZpLXBhZ2UtbXVsdGlwbGU6YmVmb3JlLFxuLmZpLXBhZ2UtcGRmOmJlZm9yZSxcbi5maS1wYWdlLXJlbW92ZTpiZWZvcmUsXG4uZmktcGFnZS1zZWFyY2g6YmVmb3JlLFxuLmZpLXBhZ2U6YmVmb3JlLFxuLmZpLXBhaW50LWJ1Y2tldDpiZWZvcmUsXG4uZmktcGFwZXJjbGlwOmJlZm9yZSxcbi5maS1wYXVzZTpiZWZvcmUsXG4uZmktcGF3OmJlZm9yZSxcbi5maS1wYXlwYWw6YmVmb3JlLFxuLmZpLXBlbmNpbDpiZWZvcmUsXG4uZmktcGhvdG86YmVmb3JlLFxuLmZpLXBsYXktY2lyY2xlOmJlZm9yZSxcbi5maS1wbGF5LXZpZGVvOmJlZm9yZSxcbi5maS1wbGF5OmJlZm9yZSxcbi5maS1wbHVzOmJlZm9yZSxcbi5maS1wb3VuZDpiZWZvcmUsXG4uZmktcG93ZXI6YmVmb3JlLFxuLmZpLXByZXZpb3VzOmJlZm9yZSxcbi5maS1wcmljZS10YWc6YmVmb3JlLFxuLmZpLXByaWNldGFnLW11bHRpcGxlOmJlZm9yZSxcbi5maS1wcmludDpiZWZvcmUsXG4uZmktcHJvaGliaXRlZDpiZWZvcmUsXG4uZmktcHJvamVjdGlvbi1zY3JlZW46YmVmb3JlLFxuLmZpLXB1enpsZTpiZWZvcmUsXG4uZmktcXVvdGU6YmVmb3JlLFxuLmZpLXJlY29yZDpiZWZvcmUsXG4uZmktcmVmcmVzaDpiZWZvcmUsXG4uZmktcmVzdWx0cy1kZW1vZ3JhcGhpY3M6YmVmb3JlLFxuLmZpLXJlc3VsdHM6YmVmb3JlLFxuLmZpLXJld2luZC10ZW46YmVmb3JlLFxuLmZpLXJld2luZDpiZWZvcmUsXG4uZmktcnNzOmJlZm9yZSxcbi5maS1zYWZldHktY29uZTpiZWZvcmUsXG4uZmktc2F2ZTpiZWZvcmUsXG4uZmktc2hhcmU6YmVmb3JlLFxuLmZpLXNoZXJpZmYtYmFkZ2U6YmVmb3JlLFxuLmZpLXNoaWVsZDpiZWZvcmUsXG4uZmktc2hvcHBpbmctYmFnOmJlZm9yZSxcbi5maS1zaG9wcGluZy1jYXJ0OmJlZm9yZSxcbi5maS1zaHVmZmxlOmJlZm9yZSxcbi5maS1za3VsbDpiZWZvcmUsXG4uZmktc29jaWFsLTUwMHB4OmJlZm9yZSxcbi5maS1zb2NpYWwtYWRvYmU6YmVmb3JlLFxuLmZpLXNvY2lhbC1hbWF6b246YmVmb3JlLFxuLmZpLXNvY2lhbC1hbmRyb2lkOmJlZm9yZSxcbi5maS1zb2NpYWwtYXBwbGU6YmVmb3JlLFxuLmZpLXNvY2lhbC1iZWhhbmNlOmJlZm9yZSxcbi5maS1zb2NpYWwtYmluZzpiZWZvcmUsXG4uZmktc29jaWFsLWJsb2dnZXI6YmVmb3JlLFxuLmZpLXNvY2lhbC1kZWxpY2lvdXM6YmVmb3JlLFxuLmZpLXNvY2lhbC1kZXNpZ25lci1uZXdzOmJlZm9yZSxcbi5maS1zb2NpYWwtZGV2aWFudC1hcnQ6YmVmb3JlLFxuLmZpLXNvY2lhbC1kaWdnOmJlZm9yZSxcbi5maS1zb2NpYWwtZHJpYmJibGU6YmVmb3JlLFxuLmZpLXNvY2lhbC1kcml2ZTpiZWZvcmUsXG4uZmktc29jaWFsLWRyb3Bib3g6YmVmb3JlLFxuLmZpLXNvY2lhbC1ldmVybm90ZTpiZWZvcmUsXG4uZmktc29jaWFsLWZhY2Vib29rOmJlZm9yZSxcbi5maS1zb2NpYWwtZmxpY2tyOmJlZm9yZSxcbi5maS1zb2NpYWwtZm9ycnN0OmJlZm9yZSxcbi5maS1zb2NpYWwtZm91cnNxdWFyZTpiZWZvcmUsXG4uZmktc29jaWFsLWdhbWUtY2VudGVyOmJlZm9yZSxcbi5maS1zb2NpYWwtZ2l0aHViOmJlZm9yZSxcbi5maS1zb2NpYWwtZ29vZ2xlLXBsdXM6YmVmb3JlLFxuLmZpLXNvY2lhbC1oYWNrZXItbmV3czpiZWZvcmUsXG4uZmktc29jaWFsLWhpNTpiZWZvcmUsXG4uZmktc29jaWFsLWluc3RhZ3JhbTpiZWZvcmUsXG4uZmktc29jaWFsLWpvb21sYTpiZWZvcmUsXG4uZmktc29jaWFsLWxhc3RmbTpiZWZvcmUsXG4uZmktc29jaWFsLWxpbmtlZGluOmJlZm9yZSxcbi5maS1zb2NpYWwtbWVkaXVtOmJlZm9yZSxcbi5maS1zb2NpYWwtbXlzcGFjZTpiZWZvcmUsXG4uZmktc29jaWFsLW9ya3V0OmJlZm9yZSxcbi5maS1zb2NpYWwtcGF0aDpiZWZvcmUsXG4uZmktc29jaWFsLXBpY2FzYTpiZWZvcmUsXG4uZmktc29jaWFsLXBpbnRlcmVzdDpiZWZvcmUsXG4uZmktc29jaWFsLXJkaW86YmVmb3JlLFxuLmZpLXNvY2lhbC1yZWRkaXQ6YmVmb3JlLFxuLmZpLXNvY2lhbC1za2lsbHNoYXJlOmJlZm9yZSxcbi5maS1zb2NpYWwtc2t5cGU6YmVmb3JlLFxuLmZpLXNvY2lhbC1zbWFzaGluZy1tYWc6YmVmb3JlLFxuLmZpLXNvY2lhbC1zbmFwY2hhdDpiZWZvcmUsXG4uZmktc29jaWFsLXNwb3RpZnk6YmVmb3JlLFxuLmZpLXNvY2lhbC1zcXVpZG9vOmJlZm9yZSxcbi5maS1zb2NpYWwtc3RhY2stb3ZlcmZsb3c6YmVmb3JlLFxuLmZpLXNvY2lhbC1zdGVhbTpiZWZvcmUsXG4uZmktc29jaWFsLXN0dW1ibGV1cG9uOmJlZm9yZSxcbi5maS1zb2NpYWwtdHJlZWhvdXNlOmJlZm9yZSxcbi5maS1zb2NpYWwtdHVtYmxyOmJlZm9yZSxcbi5maS1zb2NpYWwtdHdpdHRlcjpiZWZvcmUsXG4uZmktc29jaWFsLXZpbWVvOmJlZm9yZSxcbi5maS1zb2NpYWwtd2luZG93czpiZWZvcmUsXG4uZmktc29jaWFsLXhib3g6YmVmb3JlLFxuLmZpLXNvY2lhbC15YWhvbzpiZWZvcmUsXG4uZmktc29jaWFsLXllbHA6YmVmb3JlLFxuLmZpLXNvY2lhbC15b3V0dWJlOmJlZm9yZSxcbi5maS1zb2NpYWwtemVycGx5OmJlZm9yZSxcbi5maS1zb2NpYWwtenVyYjpiZWZvcmUsXG4uZmktc291bmQ6YmVmb3JlLFxuLmZpLXN0YXI6YmVmb3JlLFxuLmZpLXN0b3A6YmVmb3JlLFxuLmZpLXN0cmlrZXRocm91Z2g6YmVmb3JlLFxuLmZpLXN1YnNjcmlwdDpiZWZvcmUsXG4uZmktc3VwZXJzY3JpcHQ6YmVmb3JlLFxuLmZpLXRhYmxldC1sYW5kc2NhcGU6YmVmb3JlLFxuLmZpLXRhYmxldC1wb3J0cmFpdDpiZWZvcmUsXG4uZmktdGFyZ2V0LXR3bzpiZWZvcmUsXG4uZmktdGFyZ2V0OmJlZm9yZSxcbi5maS10ZWxlcGhvbmUtYWNjZXNzaWJsZTpiZWZvcmUsXG4uZmktdGVsZXBob25lOmJlZm9yZSxcbi5maS10ZXh0LWNvbG9yOmJlZm9yZSxcbi5maS10aHVtYm5haWxzOmJlZm9yZSxcbi5maS10aWNrZXQ6YmVmb3JlLFxuLmZpLXRvcnNvLWJ1c2luZXNzOmJlZm9yZSxcbi5maS10b3Jzby1mZW1hbGU6YmVmb3JlLFxuLmZpLXRvcnNvOmJlZm9yZSxcbi5maS10b3Jzb3MtYWxsLWZlbWFsZTpiZWZvcmUsXG4uZmktdG9yc29zLWFsbDpiZWZvcmUsXG4uZmktdG9yc29zLWZlbWFsZS1tYWxlOmJlZm9yZSxcbi5maS10b3Jzb3MtbWFsZS1mZW1hbGU6YmVmb3JlLFxuLmZpLXRvcnNvczpiZWZvcmUsXG4uZmktdHJhc2g6YmVmb3JlLFxuLmZpLXRyZWVzOmJlZm9yZSxcbi5maS10cm9waHk6YmVmb3JlLFxuLmZpLXVuZGVybGluZTpiZWZvcmUsXG4uZmktdW5pdmVyc2FsLWFjY2VzczpiZWZvcmUsXG4uZmktdW5saW5rOmJlZm9yZSxcbi5maS11bmxvY2s6YmVmb3JlLFxuLmZpLXVwbG9hZC1jbG91ZDpiZWZvcmUsXG4uZmktdXBsb2FkOmJlZm9yZSxcbi5maS11c2I6YmVmb3JlLFxuLmZpLXZpZGVvOmJlZm9yZSxcbi5maS12b2x1bWUtbm9uZTpiZWZvcmUsXG4uZmktdm9sdW1lLXN0cmlrZTpiZWZvcmUsXG4uZmktdm9sdW1lOmJlZm9yZSxcbi5maS13ZWI6YmVmb3JlLFxuLmZpLXdoZWVsY2hhaXI6YmVmb3JlLFxuLmZpLXdpZGdldDpiZWZvcmUsXG4uZmktd3JlbmNoOmJlZm9yZSxcbi5maS14LWNpcmNsZTpiZWZvcmUsXG4uZmkteDpiZWZvcmUsXG4uZmkteWVuOmJlZm9yZSxcbi5maS16b29tLWluOmJlZm9yZSxcbi5maS16b29tLW91dDpiZWZvcmUge1xuICBmb250LWZhbWlseTogXCJmb3VuZGF0aW9uLWljb25zXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xufVxuXG4uZmktYWRkcmVzcy1ib29rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTAwXCI7IH1cbi5maS1hbGVydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwMVwiOyB9XG4uZmktYWxpZ24tY2VudGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTAyXCI7IH1cbi5maS1hbGlnbi1qdXN0aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTAzXCI7IH1cbi5maS1hbGlnbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA0XCI7IH1cbi5maS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwNVwiOyB9XG4uZmktYW5jaG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA2XCI7IH1cbi5maS1hbm5vdGF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwN1wiOyB9XG4uZmktYXJjaGl2ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwOFwiOyB9XG4uZmktYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwOVwiOyB9XG4uZmktYXJyb3ctbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwYVwiOyB9XG4uZmktYXJyb3ctcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMGJcIjsgfVxuLmZpLWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTBjXCI7IH1cbi5maS1hcnJvd3MtY29tcHJlc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMGRcIjsgfVxuLmZpLWFycm93cy1leHBhbmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMGVcIjsgfVxuLmZpLWFycm93cy1pbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwZlwiOyB9XG4uZmktYXJyb3dzLW91dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExMFwiOyB9XG4uZmktYXNsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTExXCI7IH1cbi5maS1hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExMlwiOyB9XG4uZmktYXQtc2lnbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExM1wiOyB9XG4uZmktYmFja2dyb3VuZC1jb2xvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExNFwiOyB9XG4uZmktYmF0dGVyeS1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExNVwiOyB9XG4uZmktYmF0dGVyeS1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE2XCI7IH1cbi5maS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTdcIjsgfVxuLmZpLWJpdGNvaW4tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE4XCI7IH1cbi5maS1iaXRjb2luOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE5XCI7IH1cbi5maS1ibGluZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExYVwiOyB9XG4uZmktYmx1ZXRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFiXCI7IH1cbi5maS1ib2xkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFjXCI7IH1cbi5maS1ib29rLWJvb2ttYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFkXCI7IH1cbi5maS1ib29rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFlXCI7IH1cbi5maS1ib29rbWFyazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExZlwiOyB9XG4uZmktYnJhaWxsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyMFwiOyB9XG4uZmktYnVyc3QtbmV3OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTIxXCI7IH1cbi5maS1idXJzdC1zYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTIyXCI7IH1cbi5maS1idXJzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyM1wiOyB9XG4uZmktY2FsZW5kYXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjRcIjsgfVxuLmZpLWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyNVwiOyB9XG4uZmktY2hlY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjZcIjsgfVxuLmZpLWNoZWNrYm94OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI3XCI7IH1cbi5maS1jbGlwYm9hcmQtbm90ZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjhcIjsgfVxuLmZpLWNsaXBib2FyZC1wZW5jaWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjlcIjsgfVxuLmZpLWNsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyYVwiOyB9XG4uZmktY2xvY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmJcIjsgfVxuLmZpLWNsb3NlZC1jYXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTJjXCI7IH1cbi5maS1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyZFwiOyB9XG4uZmktY29tbWVudC1taW51czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyZVwiOyB9XG4uZmktY29tbWVudC1xdW90ZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmZcIjsgfVxuLmZpLWNvbW1lbnQtdmlkZW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzBcIjsgfVxuLmZpLWNvbW1lbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzFcIjsgfVxuLmZpLWNvbW1lbnRzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTMyXCI7IH1cbi5maS1jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTMzXCI7IH1cbi5maS1jb250cmFzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzNFwiOyB9XG4uZmktY3JlZGl0LWNhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzVcIjsgfVxuLmZpLWNyb3A6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzZcIjsgfVxuLmZpLWNyb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTM3XCI7IH1cbi5maS1jc3MzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTM4XCI7IH1cbi5maS1kYXRhYmFzZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzOVwiOyB9XG4uZmktZGllLWZpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2FcIjsgfVxuLmZpLWRpZS1mb3VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTNiXCI7IH1cbi5maS1kaWUtb25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTNjXCI7IH1cbi5maS1kaWUtc2l4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTNkXCI7IH1cbi5maS1kaWUtdGhyZWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2VcIjsgfVxuLmZpLWRpZS10d286YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2ZcIjsgfVxuLmZpLWRpc2xpa2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDBcIjsgfVxuLmZpLWRvbGxhci1iaWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQxXCI7IH1cbi5maS1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDJcIjsgfVxuLmZpLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQzXCI7IH1cbi5maS1lamVjdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0NFwiOyB9XG4uZmktZWxldmF0b3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDVcIjsgfVxuLmZpLWV1cm86YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDZcIjsgfVxuLmZpLWV5ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0N1wiOyB9XG4uZmktZmFzdC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ4XCI7IH1cbi5maS1mZW1hbGUtc3ltYm9sOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ5XCI7IH1cbi5maS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGFcIjsgfVxuLmZpLWZpbHRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0YlwiOyB9XG4uZmktZmlyc3QtYWlkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRjXCI7IH1cbi5maS1mbGFnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRkXCI7IH1cbi5maS1mb2xkZXItYWRkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRlXCI7IH1cbi5maS1mb2xkZXItbG9jazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0ZlwiOyB9XG4uZmktZm9sZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTUwXCI7IH1cbi5maS1mb290OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTUxXCI7IH1cbi5maS1mb3VuZGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTUyXCI7IH1cbi5maS1ncmFwaC1iYXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTNcIjsgfVxuLmZpLWdyYXBoLWhvcml6b250YWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTRcIjsgfVxuLmZpLWdyYXBoLXBpZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1NVwiOyB9XG4uZmktZ3JhcGgtdHJlbmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTZcIjsgfVxuLmZpLWd1aWRlLWRvZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1N1wiOyB9XG4uZmktaGVhcmluZy1haWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNThcIjsgfVxuLmZpLWhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTU5XCI7IH1cbi5maS1ob21lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTVhXCI7IH1cbi5maS1odG1sNTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1YlwiOyB9XG4uZmktaW5kZW50LWxlc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNWNcIjsgfVxuLmZpLWluZGVudC1tb3JlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTVkXCI7IH1cbi5maS1pbmZvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTVlXCI7IH1cbi5maS1pdGFsaWM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNWZcIjsgfVxuLmZpLWtleTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2MFwiOyB9XG4uZmktbGFwdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTYxXCI7IH1cbi5maS1sYXlvdXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjJcIjsgfVxuLmZpLWxpZ2h0YnVsYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2M1wiOyB9XG4uZmktbGlrZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2NFwiOyB9XG4uZmktbGluazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2NVwiOyB9XG4uZmktbGlzdC1idWxsZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjZcIjsgfVxuLmZpLWxpc3QtbnVtYmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTY3XCI7IH1cbi5maS1saXN0LXRodW1ibmFpbHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjhcIjsgfVxuLmZpLWxpc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjlcIjsgfVxuLmZpLWxvY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNmFcIjsgfVxuLmZpLWxvb3A6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNmJcIjsgfVxuLmZpLW1hZ25pZnlpbmctZ2xhc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNmNcIjsgfVxuLmZpLW1haWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNmRcIjsgfVxuLmZpLW1hbGUtZmVtYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTZlXCI7IH1cbi5maS1tYWxlLXN5bWJvbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2ZlwiOyB9XG4uZmktbWFsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3MFwiOyB9XG4uZmktbWFwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTcxXCI7IH1cbi5maS1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNzJcIjsgfVxuLmZpLW1lZ2FwaG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3M1wiOyB9XG4uZmktbWljcm9waG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3NFwiOyB9XG4uZmktbWludXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc1XCI7IH1cbi5maS1taW51czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3NlwiOyB9XG4uZmktbW9iaWxlLXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3N1wiOyB9XG4uZmktbW9iaWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc4XCI7IH1cbi5maS1tb25pdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc5XCI7IH1cbi5maS1tb3VudGFpbnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxN2FcIjsgfVxuLmZpLW11c2ljOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTdiXCI7IH1cbi5maS1uZXh0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTdjXCI7IH1cbi5maS1uby1kb2dzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTdkXCI7IH1cbi5maS1uby1zbW9raW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTdlXCI7IH1cbi5maS1wYWdlLWFkZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3ZlwiOyB9XG4uZmktcGFnZS1jb3B5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTgwXCI7IH1cbi5maS1wYWdlLWNzdjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4MVwiOyB9XG4uZmktcGFnZS1kZWxldGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODJcIjsgfVxuLmZpLXBhZ2UtZG9jOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTgzXCI7IH1cbi5maS1wYWdlLWVkaXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODRcIjsgfVxuLmZpLXBhZ2UtZXhwb3J0LWNzdjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4NVwiOyB9XG4uZmktcGFnZS1leHBvcnQtZG9jOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg2XCI7IH1cbi5maS1wYWdlLWV4cG9ydC1wZGY6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODdcIjsgfVxuLmZpLXBhZ2UtZXhwb3J0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg4XCI7IH1cbi5maS1wYWdlLWZpbGxlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4OVwiOyB9XG4uZmktcGFnZS1tdWx0aXBsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4YVwiOyB9XG4uZmktcGFnZS1wZGY6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOGJcIjsgfVxuLmZpLXBhZ2UtcmVtb3ZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMThjXCI7IH1cbi5maS1wYWdlLXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4ZFwiOyB9XG4uZmktcGFnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4ZVwiOyB9XG4uZmktcGFpbnQtYnVja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMThmXCI7IH1cbi5maS1wYXBlcmNsaXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTBcIjsgfVxuLmZpLXBhdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTkxXCI7IH1cbi5maS1wYXc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTJcIjsgfVxuLmZpLXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5M1wiOyB9XG4uZmktcGVuY2lsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTk0XCI7IH1cbi5maS1waG90bzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5NVwiOyB9XG4uZmktcGxheS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTZcIjsgfVxuLmZpLXBsYXktdmlkZW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTdcIjsgfVxuLmZpLXBsYXk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOThcIjsgfVxuLmZpLXBsdXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTlcIjsgfVxuLmZpLXBvdW5kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTlhXCI7IH1cbi5maS1wb3dlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5YlwiOyB9XG4uZmktcHJldmlvdXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOWNcIjsgfVxuLmZpLXByaWNlLXRhZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5ZFwiOyB9XG4uZmktcHJpY2V0YWctbXVsdGlwbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOWVcIjsgfVxuLmZpLXByaW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTlmXCI7IH1cbi5maS1wcm9oaWJpdGVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWEwXCI7IH1cbi5maS1wcm9qZWN0aW9uLXNjcmVlbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhMVwiOyB9XG4uZmktcHV6emxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWEyXCI7IH1cbi5maS1xdW90ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhM1wiOyB9XG4uZmktcmVjb3JkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWE0XCI7IH1cbi5maS1yZWZyZXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWE1XCI7IH1cbi5maS1yZXN1bHRzLWRlbW9ncmFwaGljczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhNlwiOyB9XG4uZmktcmVzdWx0czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhN1wiOyB9XG4uZmktcmV3aW5kLXRlbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhOFwiOyB9XG4uZmktcmV3aW5kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWE5XCI7IH1cbi5maS1yc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYWFcIjsgfVxuLmZpLXNhZmV0eS1jb25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFiXCI7IH1cbi5maS1zYXZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFjXCI7IH1cbi5maS1zaGFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhZFwiOyB9XG4uZmktc2hlcmlmZi1iYWRnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhZVwiOyB9XG4uZmktc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFmXCI7IH1cbi5maS1zaG9wcGluZy1iYWc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjBcIjsgfVxuLmZpLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjFcIjsgfVxuLmZpLXNodWZmbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjJcIjsgfVxuLmZpLXNrdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWIzXCI7IH1cbi5maS1zb2NpYWwtNTAwcHg6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjRcIjsgfVxuLmZpLXNvY2lhbC1hZG9iZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiNVwiOyB9XG4uZmktc29jaWFsLWFtYXpvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiNlwiOyB9XG4uZmktc29jaWFsLWFuZHJvaWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjdcIjsgfVxuLmZpLXNvY2lhbC1hcHBsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiOFwiOyB9XG4uZmktc29jaWFsLWJlaGFuY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjlcIjsgfVxuLmZpLXNvY2lhbC1iaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJhXCI7IH1cbi5maS1zb2NpYWwtYmxvZ2dlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiYlwiOyB9XG4uZmktc29jaWFsLWRlbGljaW91czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiY1wiOyB9XG4uZmktc29jaWFsLWRlc2lnbmVyLW5ld3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYmRcIjsgfVxuLmZpLXNvY2lhbC1kZXZpYW50LWFydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiZVwiOyB9XG4uZmktc29jaWFsLWRpZ2c6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYmZcIjsgfVxuLmZpLXNvY2lhbC1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjMFwiOyB9XG4uZmktc29jaWFsLWRyaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWMxXCI7IH1cbi5maS1zb2NpYWwtZHJvcGJveDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjMlwiOyB9XG4uZmktc29jaWFsLWV2ZXJub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWMzXCI7IH1cbi5maS1zb2NpYWwtZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzRcIjsgfVxuLmZpLXNvY2lhbC1mbGlja3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzVcIjsgfVxuLmZpLXNvY2lhbC1mb3Jyc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzZcIjsgfVxuLmZpLXNvY2lhbC1mb3Vyc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM3XCI7IH1cbi5maS1zb2NpYWwtZ2FtZS1jZW50ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzhcIjsgfVxuLmZpLXNvY2lhbC1naXRodWI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzlcIjsgfVxuLmZpLXNvY2lhbC1nb29nbGUtcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjYVwiOyB9XG4uZmktc29jaWFsLWhhY2tlci1uZXdzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNiXCI7IH1cbi5maS1zb2NpYWwtaGk1OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNjXCI7IH1cbi5maS1zb2NpYWwtaW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNkXCI7IH1cbi5maS1zb2NpYWwtam9vbWxhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNlXCI7IH1cbi5maS1zb2NpYWwtbGFzdGZtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNmXCI7IH1cbi5maS1zb2NpYWwtbGlua2VkaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDBcIjsgfVxuLmZpLXNvY2lhbC1tZWRpdW06YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDFcIjsgfVxuLmZpLXNvY2lhbC1teXNwYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQyXCI7IH1cbi5maS1zb2NpYWwtb3JrdXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDNcIjsgfVxuLmZpLXNvY2lhbC1wYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ0XCI7IH1cbi5maS1zb2NpYWwtcGljYXNhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ1XCI7IH1cbi5maS1zb2NpYWwtcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ2XCI7IH1cbi5maS1zb2NpYWwtcmRpbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkN1wiOyB9XG4uZmktc29jaWFsLXJlZGRpdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkOFwiOyB9XG4uZmktc29jaWFsLXNraWxsc2hhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDlcIjsgfVxuLmZpLXNvY2lhbC1za3lwZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkYVwiOyB9XG4uZmktc29jaWFsLXNtYXNoaW5nLW1hZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkYlwiOyB9XG4uZmktc29jaWFsLXNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRjXCI7IH1cbi5maS1zb2NpYWwtc3BvdGlmeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkZFwiOyB9XG4uZmktc29jaWFsLXNxdWlkb286YmVmb3JlIHsgY29udGVudDogXCJcXGYxZGVcIjsgfVxuLmZpLXNvY2lhbC1zdGFjay1vdmVyZmxvdzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkZlwiOyB9XG4uZmktc29jaWFsLXN0ZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWUwXCI7IH1cbi5maS1zb2NpYWwtc3R1bWJsZXVwb246YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTFcIjsgfVxuLmZpLXNvY2lhbC10cmVlaG91c2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTJcIjsgfVxuLmZpLXNvY2lhbC10dW1ibHI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTNcIjsgfVxuLmZpLXNvY2lhbC10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWU0XCI7IH1cbi5maS1zb2NpYWwtdmltZW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTVcIjsgfVxuLmZpLXNvY2lhbC13aW5kb3dzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWU2XCI7IH1cbi5maS1zb2NpYWwteGJveDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlN1wiOyB9XG4uZmktc29jaWFsLXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWU4XCI7IH1cbi5maS1zb2NpYWwteWVscDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlOVwiOyB9XG4uZmktc29jaWFsLXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWFcIjsgfVxuLmZpLXNvY2lhbC16ZXJwbHk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWJcIjsgfVxuLmZpLXNvY2lhbC16dXJiOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWVjXCI7IH1cbi5maS1zb3VuZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlZFwiOyB9XG4uZmktc3RhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlZVwiOyB9XG4uZmktc3RvcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlZlwiOyB9XG4uZmktc3RyaWtldGhyb3VnaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmMFwiOyB9XG4uZmktc3Vic2NyaXB0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYxXCI7IH1cbi5maS1zdXBlcnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmMlwiOyB9XG4uZmktdGFibGV0LWxhbmRzY2FwZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmM1wiOyB9XG4uZmktdGFibGV0LXBvcnRyYWl0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY0XCI7IH1cbi5maS10YXJnZXQtdHdvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY1XCI7IH1cbi5maS10YXJnZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjZcIjsgfVxuLmZpLXRlbGVwaG9uZS1hY2Nlc3NpYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY3XCI7IH1cbi5maS10ZWxlcGhvbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjhcIjsgfVxuLmZpLXRleHQtY29sb3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjlcIjsgfVxuLmZpLXRodW1ibmFpbHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZmFcIjsgfVxuLmZpLXRpY2tldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmYlwiOyB9XG4uZmktdG9yc28tYnVzaW5lc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZmNcIjsgfVxuLmZpLXRvcnNvLWZlbWFsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmZFwiOyB9XG4uZmktdG9yc286YmVmb3JlIHsgY29udGVudDogXCJcXGYxZmVcIjsgfVxuLmZpLXRvcnNvcy1hbGwtZmVtYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZmXCI7IH1cbi5maS10b3Jzb3MtYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjAwXCI7IH1cbi5maS10b3Jzb3MtZmVtYWxlLW1hbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDFcIjsgfVxuLmZpLXRvcnNvcy1tYWxlLWZlbWFsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwMlwiOyB9XG4uZmktdG9yc29zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjAzXCI7IH1cbi5maS10cmFzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwNFwiOyB9XG4uZmktdHJlZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDVcIjsgfVxuLmZpLXRyb3BoeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwNlwiOyB9XG4uZmktdW5kZXJsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA3XCI7IH1cbi5maS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA4XCI7IH1cbi5maS11bmxpbms6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDlcIjsgfVxuLmZpLXVubG9jazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwYVwiOyB9XG4uZmktdXBsb2FkLWNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBiXCI7IH1cbi5maS11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGNcIjsgfVxuLmZpLXVzYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwZFwiOyB9XG4uZmktdmlkZW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGVcIjsgfVxuLmZpLXZvbHVtZS1ub25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBmXCI7IH1cbi5maS12b2x1bWUtc3RyaWtlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjEwXCI7IH1cbi5maS12b2x1bWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTFcIjsgfVxuLmZpLXdlYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxMlwiOyB9XG4uZmktd2hlZWxjaGFpcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxM1wiOyB9XG4uZmktd2lkZ2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE0XCI7IH1cbi5maS13cmVuY2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTVcIjsgfVxuLmZpLXgtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE2XCI7IH1cbi5maS14OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE3XCI7IH1cbi5maS15ZW46YmVmb3JlIHsgY29udGVudDogXCJcXGYyMThcIjsgfVxuLmZpLXpvb20taW46YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTlcIjsgfVxuLmZpLXpvb20tb3V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjFhXCI7IH1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLSBQcmltYXJ5IE1lbnUgLS0tLS0tLS0tLS0tICovXG4ubWVudS0tbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAubmF2IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIHVsLm1lbnUge1xuICAgICAgJi5kcm9wZG93biB7XG4gICAgICAgIC5tZW51LWxldmVsLTAge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDgzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoODMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogI2EzNmMwMTtcbiAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBwYWRkaW5nOiAuN3JlbSAxLjJyZW07XG5cbiAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICB1bC5zdWJtZW51IHtcbiAgICAgICAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDEwcHggMTBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuN3JlbTtcblxuICAgICAgICAgICYuZmlyc3Qtc3ViIHtcbiAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IC0zMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAmLmlzLWRyb3Bkb3duLXN1Ym1lbnUtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6ICRtZW51LWl0ZW0tcGFkZGluZztcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5pcy1kcmlsbGRvd24ge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHVsLm1lbnUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICAgICAgICYubWVudS1sZXZlbC0wIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgcGFkZGluZzogJG1lbnUtaXRlbS1wYWRkaW5nO1xuICAgICAgICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB1bC5zdWJtZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAmLmpzLWRyaWxsZG93bi1iYWNrIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdG9wOjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogJG1lbnUtaXRlbS1wYWRkaW5nO1xuXG4gICAgICAgICAgICAgICAgICAuZmkteHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jYnVyZ2VyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLm1lbnUtaWNvbntcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlciwgJHdpZHRoOiAzMHB4LCAkaGVpZ2h0OiAyNHB4LCAkd2VpZ2h0OiA0cHgpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gIH1cbiAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG9sZC16Zi1zaXplICE9IG51bGwge1xuICAgIC8vIFJlc3RvcmUgdGhlIG9sZCBicmVha3BvaW50IHNpemVcbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkLXpmLXNpemU6IG51bGwgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gQ29udmVycyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW5nIC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2luZy5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGJhc2UtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXRzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlcm4gdGhlbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vLyBcbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIiNiZXN0aWxsaW5nLWZvcm0ge1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAyLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgfVxuICAgIC8vIFByb2R1Y3RzIHJvdy5cbiAgICAucHJvZHVjdHMucm93IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAucHJvZHVjdCB7XG4gICAgICAgIC8vIEltYWdlLlxuICAgICAgICAuaW1hZ2Uucm93IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW5mby5yb3cge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgICAvLyBUaXRsZS5cbiAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIFNob3J0IGRlc2NyaXB0aW9uLlxuICAgICAgICAgIC5kZXNjciB7XG4gICAgICAgICAgICBmb250LXNpemU6IC43cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBRdWFudGl0eS5cbiAgICAgICAgICAucXR5IHtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAuNXJlbSAuNXJlbSAuNXJlbSAwO1xuICAgICAgICAgICAgICAvL3BhZGRpbmc6IDUlIDUlIDUlIDA7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAmLmVycm9yIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTZlMjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyBDbGllbnQgZGV0YWlscy5cbiAgICAuZGV0YWlscy5yb3cge1xuICAgICAgLmZvcm0taXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFN1Ym1pdC5cbiAgICAuYWN0aW9ucy5yb3cge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4jYmxvY2stYmVzdGlsbGluZ2ludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbiIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxuQGZ1bmN0aW9uIF9ub3JtYWxpemUtaW5jbHVkZSgkc2VjdGlvbiwgJGV4Y2x1ZGU6IG51bGwpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgZ2xvYmFsIHZhcmlhYmxlcyBuZWVkZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6ICgpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogKCkgIWdsb2JhbDtcbiAgfVxuICAvLyBTaW5jZSB3ZSBhcmUgZ2l2ZW4gMiBwYXJhbWV0ZXJzLCBzZXQgdGhlIGdsb2JhbCB2YXJpYWJsZXMuXG4gIEBpZiAkZXhjbHVkZSAhPSBudWxsIHtcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XG4gICAgLy8gU2FzcyBkb2Vzbid0IGhhdmUgc3RhdGljIHZhcmlhYmxlcywgc28gdGhlIHdvcmstYXJvdW5kIGlzIHRvIHN0dWZmIHRoZXNlXG4gICAgLy8gdmFsdWVzIGludG8gZ2xvYmFsIHZhcmlhYmxlcyBzbyB3ZSBjYW4gYWNjZXNzIHRoZW0gaW4gZnV0dXJlIGNhbGxzLlxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogaWYodHlwZS1vZigkZXhjbHVkZSkgPT0gJ2xpc3QnLCAkZXhjbHVkZSwgKCRleGNsdWRlKSkgIWdsb2JhbDtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkc2VjdGlvbiBpcyBpbiB0aGUgJGluY2x1ZGUgbGlzdC5cbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cbiAgQGVsc2UgaWYgbm90IGluZGV4KCRfbm9ybWFsaXplLWV4Y2x1ZGUsICRzZWN0aW9uKSBhbmQgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgYWxsKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbkBtaXhpbiBub3JtYWxpemUoJGluY2x1ZGU6IChhbGwpLCAkZXhjbHVkZTogKCkpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXG4gICRpbml0OiBfbm9ybWFsaXplLWluY2x1ZGUoJGluY2x1ZGUsICRleGNsdWRlKTtcblxuICAvLyBJZiB3ZSd2ZSBjdXN0b21pemVkIGFueSBmb250IHZhcmlhYmxlcywgd2UnbGwgbmVlZCBleHRyYSBwcm9wZXJ0aWVzLlxuICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHhcbiAgICBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgxLWZvbnQtc2l6ZSAhPSAyICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuXG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxuICAgICAgICAvLyB3aGVuIHJvb3QgZm9udC1zaXplIGlzIHNldCB3aXRoIHB4IG9yIGVtLlxuICAgICAgICBmb250LXNpemU6ICgkYmFzZS1mb250LXNpemUgLyAxNnB4KSAqIDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBhOmFjdGl2ZSxcbiAgICBhOmhvdmVyIHtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBzZWxlY3QgeyAvKiAxICovXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG5cbiAgICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovXG5cbiAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cblxuICAgIGlucHV0IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5cbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG5cbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAgICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gVmVydGljYWwgUmh5dGhtXG4vL1xuLy8gVGhpcyBpcyB0aGUgbWluaW1hbCBhbW91bnQgb2YgY29kZSBuZWVkZWQgdG8gY3JlYXRlIHZlcnRpY2FsIHJoeXRobSBpbiBvdXJcbi8vIENTUy4gSWYgeW91IGFyZSBsb29raW5nIGZvciBhIHJvYnVzdCBzb2x1dGlvbiwgbG9vayBhdCB0aGUgZXhjZWxsZW50IFR5cGV5XG4vLyBsaWJyYXJ5LiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9qcHRhcmFudG8vdHlwZXlcblxuQGZ1bmN0aW9uIG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSwgJHVuaXQ6ICRiYXNlLXVuaXQpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSBweCB7XG4gICAgQGVycm9yIFwiVGhlIG5vcm1hbGl6ZSB2ZXJ0aWNhbC1yaHl0aG0gbW9kdWxlIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgQGlmICR1bml0ID09IHJlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRyZWxhdGl2ZS10bykgKiAxZW07XG4gIH1cbiAgQGVsc2UgeyAvLyAkdW5pdCA9PSBweFxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG59XG5cbkBtaXhpbiBub3JtYWxpemUtZm9udC1zaXplKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncHgnIHtcbiAgICBAZXJyb3IgXCJub3JtYWxpemUtZm9udC1zaXplKCkgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBmb250LXNpemU6IG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLXJoeXRobSgkcHJvcGVydHksICR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gICR2YWx1ZS1saXN0OiAkdmFsdWVzO1xuICAkc2VwOiBzcGFjZTtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcbiAgICAkc2VwOiBsaXN0LXNlcGFyYXRvcigkdmFsdWVzKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbHVlLWxpc3Q6IGFwcGVuZCgoKSwgJHZhbHVlcyk7XG4gIH1cblxuICAkbm9ybWFsaXplZC12YWx1ZXM6ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlLWxpc3Qge1xuICAgIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAkdmFsdWUgIT0gMCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqIG5vcm1hbGl6ZS1yaHl0aG0oJGJhc2UtbGluZS1oZWlnaHQsICRyZWxhdGl2ZS10byk7XG4gICAgfVxuICAgICRub3JtYWxpemVkLXZhbHVlczogYXBwZW5kKCRub3JtYWxpemVkLXZhbHVlcywgJHZhbHVlLCAkc2VwKTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICRub3JtYWxpemVkLXZhbHVlcztcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1tYXJnaW4oJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShtYXJnaW4sICR2YWx1ZXMsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJG1pbi1saW5lLXBhZGRpbmc6IDJweCkge1xuICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRiYXNlLWxpbmUtaGVpZ2h0KTtcbiAgLy8gSWYgbGluZXMgYXJlIGNyYW1wZWQgaW5jbHVkZSBzb21lIGV4dHJhIGxlYWRpbmcuXG4gIEBpZiAoJGxpbmVzICogJGJhc2UtbGluZS1oZWlnaHQgLSAkZm9udC1zaXplKSA8ICgkbWluLWxpbmUtcGFkZGluZyAqIDIpIHtcbiAgICAkbGluZXM6ICRsaW5lcyArIDE7XG4gIH1cbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShsaW5lLWhlaWdodCwgJGxpbmVzLCAkZm9udC1zaXplKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZywgZm9yY2UtcHNldWRvLW5lc3RpbmcsIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kc2Vjb25kYXJ5LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBnZXQtY29sb3Ioc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogZ2V0LWNvbG9yKHdhcm5pbmcpO1xuJGFsZXJ0LWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIExvYWRzIG5vcm1hbGl6ZS5jc3MuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLXpmLW5vcm1hbGl6ZSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZSgpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7ICBcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIFxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG5cbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cbiAgYS5idXR0b24ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gKDEgLyAxNik7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAoMSAvIDE2KTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbGV4LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBjb250YWluZXIgZm9yIGEgZmxleCBncmlkIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxMaXN0fSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZSBmb3IgdGhpcyByb3cuIElmIHNldCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSwgdGhlIGdsb2JhbCBjb2x1bW4gY291bnQgd2lsbCBiZSB1c2VkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGJhc2UgW3RydWVdIC0gU2V0IHRvIGBmYWxzZWAgdG8gcHJldmVudCBiYXNpYyBzdHlsZXMgZnJvbSBiZWluZyBvdXRwdXQuIFVzZWZ1bCBpZiB5b3UncmUgY2FsbGluZyB0aGlzIG1peGluIG9uIHRoZSBzYW1lIGVsZW1lbnQgdHdpY2UsIGFzIGl0IHByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgb3V0cHV0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMsIGluIGNhc2UgdGhlIHJvdyBpcyBuZXN0ZWQuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZmxleC1ncmlkLXJvdyhcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJhc2U6IHRydWUsXG4gICR3cmFwOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRiYXNlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93ICR3cmFwO1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucywgJGJhc2UpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgYGZsZXhgIHByb3BlcnR5IGZvciBhIGZsZXggZ3JpZCBjb2x1bW4uIEl0IGFjY2VwdHMgYWxsIG9mIHRoZSBzYW1lIHZhbHVlcyBhcyB0aGUgYmFzaWMgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBhbG9uZyB3aXRoIHR3byBleHRyYXM6XG4vLy8gICAtIGBleHBhbmRgICh0aGUgZGVmYXVsdCkgd2lsbCBtYWtlIHRoZSBjb2x1bW4gZXhwYW5kIHRvIGZpbGwgc3BhY2UuXG4vLy8gICAtIGBzaHJpbmtgIHdpbGwgbWFrZSB0aGUgY29sdW1uIGNvbnRyYWN0LCBzbyBpdCBvbmx5IHRha2VzIHVwIHRoZSBob3Jpem9udGFsIHNwYWNlIGl0IG5lZWRzLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLlxuQGZ1bmN0aW9uIGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnM6IGV4cGFuZCkge1xuICAkZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcblxuICBAaWYgJGNvbHVtbnMgPT0gc2hyaW5rIHtcbiAgICAkZmxleDogMCAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgJGNvbHVtbnMgIT0gZXhwYW5kIHtcbiAgICAkZmxleDogMCAwIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbiAgfVxuXG4gIEByZXR1cm4gJGZsZXg7XG59XG5cbi8vLyBDcmVhdGVzIGEgY29sdW1uIGZvciBhIGZsZXggZ3JpZC4gQnkgZGVmYXVsdCwgdGhlIGNvbHVtbiB3aWxsIHN0cmV0Y2ggdG8gdGhlIGZ1bGwgd2lkdGggb2YgaXRzIGNvbnRhaW5lciwgYnV0IHRoaXMgY2FuIGJlIG92ZXJyaWRkZW4gd2l0aCBzaXppbmcgY2xhc3Nlcywgb3IgYnkgdXNpbmcgdGhlIGB1bnN0YWNrYCBjbGFzcyBvbiB0aGUgcGFyZW50IGZsZXggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGZsZXgtZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMgd2lkdGguIFNlZSB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcmAgbWl4aW4uXG5AbWl4aW4gZmxleC1ncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6IGV4cGFuZCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAvLyBCYXNlIHByb3BlcnRpZXNcbiAgQGluY2x1ZGUgZmxleC1ncmlkLXNpemUoJGNvbHVtbnMpO1xuXG4gIC8vIEd1dHRlcnNcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgLy8gZml4ZXMgcmVjZW50IENocm9tZSB2ZXJzaW9uIG5vdCBsaW1pdGluZyBjaGlsZCB3aWR0aFxuICAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNDkzNDU4Ni93aGl0ZS1zcGFjZS1ub3dyYXAtYW5kLWZsZXhib3gtZGlkLW5vdC13b3JrLWluLWNocm9tZVxuICBAaWYgJGNvbHVtbnMgPT0gZXhwYW5kIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBibG9jayBncmlkIGZvciBhIGZsZXggZ3JpZCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgY29sdW1ucyB0byBkaXNwbGF5IG9uIGVhY2ggcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgLSBTZWxlY3RvciB0byB1c2UgdG8gdGFyZ2V0IGNvbHVtbnMgd2l0aGluIHRoZSByb3cuXG5AbWl4aW4gZmxleC1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jb2x1bW4nXG4pIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gID4gI3skc2VsZWN0b3J9IHtcbiAgICAkcGN0OiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgZmxleDogMCAwICRwY3Q7XG4gICAgbWF4LXdpZHRoOiAkcGN0O1xuICB9XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSB3aWR0aCBmbGV4IGdyaWQgY29sdW1uLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFtleHBhbmRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBmbGV4LWdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZmxleC1ncmlkLXNpemUoJGNvbHVtbnM6IG51bGwpIHtcbiAgJGNvbHVtbnM6ICRjb2x1bW5zIG9yIGV4cGFuZDtcblxuICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRjb2x1bW5zKTtcblxuICAvLyBtYXgtd2lkdGggZml4ZXMgSUUgMTAvMTEgbm90IHJlc3BlY3RpbmcgdGhlIGZsZXgtYmFzaXMgcHJvcGVydHlcbiAgQGlmICRjb2x1bW5zICE9IGV4cGFuZCBhbmQgJGNvbHVtbnMgIT0gc2hyaW5rIHtcbiAgICBtYXgtd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbiAgfVxufVxuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtZ3JpZCB7XG4gIC8vIFJvd1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93O1xuXG4gICAgLy8gTmVzdGluZyBiZWhhdmlvclxuICAgICYgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93KG5lc3QsICRiYXNlOiBmYWxzZSk7XG5cbiAgICAgICYuY29sbGFwc2Uge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIHJvd1xuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuXG4gICAgICAucm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguZXhwYW5kZWQpIC5yb3cge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgICYuY29sbGFwc2Uge1xuICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW5kbyBuZWdhdGl2ZSBtYXJnaW5zXG4gICAgLy8gRnJvbSBjb2xsYXBzZWQgY2hpbGRcbiAgICAmLmlzLWNvbGxhcHNlLWNoaWxkLFxuICAgICYuY29sbGFwc2UgPiAuY29sdW1uID4gLnJvdyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLmNvbHVtbiB7XG4gICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbjtcbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuY29sdW1uLnJvdy5yb3cge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gIC5yb3cgLmNvbHVtbi5yb3cucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigkaSk7XG4gICAgICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtbGF5b3V0KCRpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC8vIFNpemluZyAoZXhwYW5kKVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXNpemUpIHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS1leHBhbmQge1xuICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBBdXRvLXN0YWNraW5nL3Vuc3RhY2tpbmdcbiAgICAgIEBhdC1yb290ICh3aXRob3V0OiBtZWRpYSkge1xuICAgICAgICAucm93LiN7JC16Zi1zaXplfS11bnN0YWNrIHtcbiAgICAgICAgICA+IC5jb2x1bW4ge1xuICAgICAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigxMDAlKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXNpemUpIHtcbiAgICAgICAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tY29sbGFwc2Uge1xuICAgICAgPiAuY29sdW1uIHsgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7IH1cbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LXVuY29sbGFwc2Uge1xuICAgICAgPiAuY29sdW1uIHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG4gIH1cblxuICAvLyBTaXppbmcgKHNocmluaylcbiAgLnNocmluayB7XG4gICAgZmxleDogZmxleC1ncmlkLWNvbHVtbihzaHJpbmspO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWQgY29sdW1uc1xuICAuY29sdW1uLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1tYXJnaW47XG4gIH1cblxuICAuY29sdW1ucyB7XG4gICAgQGV4dGVuZCAuY29sdW1uOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAvIDIgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFVuLWNvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlLWFkZGluZyB0aGUgcGFkZGluZy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLlxuQG1peGluIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbHVtbi1ndXR0ZXIoKS4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXIpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bmNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bmNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sLWd1dHRlcigpLiBncmlkLWNvbC11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcik7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBEaXJlY3Rpb24gYW5kIGFtb3VudCB0byBtb3ZlLiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudCBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGUgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LiBTZXQgdG8gY2VudGVyIHRvIGNlbnRlciB0aGUgY29sdW1uLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBvciBjZW50ZXIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdsZWZ0Jykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdsZWZ0JywgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEgeyBcbiAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCIkLXpmLWZsZXgtanVzdGlmeTogKFxuICAnbGVmdCc6IGZsZXgtc3RhcnQsXG4gICdyaWdodCc6IGZsZXgtZW5kLFxuICAnY2VudGVyJzogY2VudGVyLFxuICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4pO1xuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGFuIGhvdmVyZWQgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyb3Bkb3ducy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3Igc3ViLW1lbnUgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciB3aWR0aCBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8gVXNlZCB0byBhZGp1c3QgdG9wIG1hcmdpbiBvZiBhIHN1Yi1tZW51IGlmIGEgYm9yZGVyIGlzIHVzZWQuXG4vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoOiBudGgoJGRyb3Bkb3dubWVudS1ib3JkZXIsIDEpO1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgPiBhOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMTRweDtcbiAgfVxuXG4gICYub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gIH1cblxuICAmLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgfVxufVxuXG5AbWl4aW4gZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICA+IGxpLm9wZW5zLWxlZnQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nO1xuICAgICAgfVxuXG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nIGluIHRoZSBzdWJtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJpbGxkb3duLWFycm93LXNpemU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMXJlbTtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgfVxuXG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51IHtcbiAgLy8gQXBwbGllZCB0byB0aGUgTWVudSBjb250YWluZXJcbiAgLmlzLWRyaWxsZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoZSB0b3AgbGV2ZWwgPHVsPlxuICAuZHJpbGxkb3duIHtcbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBcHBsaWVkIHRvIHN1Ym1lbnUgPHVsPnNcbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgICB0cmFuc2l0aW9uOiAkZHJpbGxkb3duLXRyYW5zaXRpb247XG5cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgJi5pcy1jbG9zaW5nIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTdWJtZW51IGl0ZW0gcGFkZGluZ1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgJGRyaWxsZG93bi1hcnJvd3Mge1xuICAgICAgQGluY2x1ZGUgemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLWxlZnQpO1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LXdpZHRoOiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjc1cmVtOyAvLyBDcmVhdGVzIHNwYWNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dFxuXG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aXRsZS1iYXJcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBXZWlnaHRcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhciBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiB0aGUgbWVudSBpY29uIGFuZCB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRpdGxlLWJhciB7XG4gIC50aXRsZS1iYXIge1xuICAgIHBhZGRpbmc6ICR0aXRsZWJhci1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICR0aXRsZWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGl0bGViYXItY29sb3I7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICAubWVudS1pY29uIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXdlaWdodDogJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhbGxvdXRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmYWRlIHZhbHVlIGZvciBjYWxsb3V0IGJhY2tncm91bmRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZSBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgaW5uZXIgcGFkZGluZyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMsIGlmIHRoZSBjYWxsb3V0IGhhcyBhIGRhcmsgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQW1vdW50IHRvIHRpbnQgbGlua3MgdXNlZCB3aXRoaW4gY29sb3JlZCBwYW5lbHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlLlxuLy8vIEB0eXBlIE51bWJlciB8IEJvb2xlYW5cbiRjYWxsb3V0LWxpbmstdGludDogMzAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGEgY2FsbG91dCwgaW5jbHVkaW5nIHBhZGRpbmcgYW5kIG1hcmdpbi5cbkBtaXhpbiBjYWxsb3V0LWJhc2UoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkY2FsbG91dC1tYXJnaW47XG4gIHBhZGRpbmc6ICRjYWxsb3V0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkY2FsbG91dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRjYWxsb3V0LXJhZGl1cztcblxuICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHF1aWNrIHN0eWxlcyBmb3IgYSBjYWxsb3V0IHVzaW5nIGEgc2luZ2xlIGNvbG9yIGFzIGEgYmFzZWxpbmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0LXN0eWxlKCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRjYWxsb3V0LWZvbnQtY29sb3IsICRjYWxsb3V0LWZvbnQtY29sb3ItYWx0KSk7XG59XG5cbkBtaXhpbiBjYWxsb3V0LXNpemUoJHBhZGRpbmcpIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYWxsb3V0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dCgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgY2FsbG91dC1iYXNlO1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhbGxvdXQge1xuICAuY2FsbG91dCB7XG4gICAgQGluY2x1ZGUgY2FsbG91dDtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc21hbGwge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDAuNXJlbSk7XG4gICAgfVxuXG4gICAgJi5sYXJnZSB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoM3JlbSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtZWxlbWVudC1uZXN0aW5nLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIHRhYmxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJfc2V0dGluZ3NcIjtcbkBpbXBvcnQgXCJmb3VuZGF0aW9uXCI7XG5AaW1wb3J0IFwiX2ZvdW5kYXRpb25faWNvbnNcIjtcbkBpbXBvcnQgXCJfcHJpbWFyeV9tZW51XCI7XG5AaW1wb3J0IFwiX2Jlc3RpbGxpbmdcIjtcblxuQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcblxuaHRtbCwgYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuI2hlYWRlciB7XG4gIGJhY2tncm91bmQ6ICRvcmFuZ2U7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgIGhlaWdodDogcmVtLWNhbGMoODMpO1xuICB9XG59XG5cbiNtYWluLW1lbnUge1xuICAmLm1lZGl1bS1ob3Jpem9udGFsIHtcbiAgICBmbGV4OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC5tZW51LWl0ZW0ubWVudS1sZXZlbC0wIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuXG4jbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDhyZW07XG4gIH1cbn1cblxudGFibGUge1xuICBtYXJnaW46IDJyZW0gMDtcblxuICB0aCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxufVxuXG4jbWFpbiB7XG4gIGJhY2tncm91bmQ6ICRsaWdodC1ibHVlO1xuICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNDApO1xuICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTEwKTtcblxuICAubGF5b3V0LWNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5mcm9udCAjbWFpbiB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uaGlnaGxpZ2h0ZWQge1xuICAjYmxvY2stZnJvbnRwYWdlaGVhZCB7XG4gICAgYmFja2dyb3VuZDogJGJsdWUgdXJsKFwiLi4vaW1hZ2VzL2Zyb250LWJhbm5lci9jb21wZXRpdGlvbi1iZy5zdmdcIikgNTAlIDUwJSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBib3JkZXItYm90dG9tOiAycmVtIHNvbGlkICNmZmJkNjY7XG5cbiAgICAubGVmdC1iZyB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvZnJvbnQtYmFubmVyL2hlYWQtbGVmdC5zdmdcIikgNTAlIDEwMCUgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAgMTAwJSBhdXRvO1xuICAgIH1cblxuICAgIC5yaWdodC1iZyB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvZnJvbnQtYmFubmVyL2hlYWQtcmlnaHQuc3ZnXCIpIDUwJSAxMDAlIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogIDEwMCUgYXV0bztcbiAgICB9XG5cbiAgICAuZnJvbnQtY29udGVudCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmxlZnQtYmcsIC5yaWdodC1iZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMzUwKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNDAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFkZ2Uge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgd2lkdGg6IHJlbS1jYWxjKDMwMCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMwMCk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvZnJvbnQtYmFubmVyL2JhZGdlLnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogOTAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoMTUwKTtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNibG9jay1iZXN0aWxsIHtcbiAgICAuaWNvbiB7XG4gICAgICB3aWR0aDogMzEwcHg7XG4gICAgICBoZWlnaHQ6IDI2N3B4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3Nob3BwaW5nLWNhcnQucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC00MjVweDtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWFyZ2luOiAzcmVtIDA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC50ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC04MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LWZhbWlseTogUm9ib3RvO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDk4JTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2J0bi1iZXN0aWwucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jYmxvY2stbnl0dGlnYXZpdGUge1xuICBiYWNrZ3JvdW5kOiAjMzczYzQzIHVybChcIi4uL2ltYWdlcy9ib3R0b20tYmcuc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIGg0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cblxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5yb3cge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDkzKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG5cbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogI2ZkYWQxYjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLmNvbC0xIHtcbiAgICAgIC5pY29uIHtcbiAgICAgICAgaGVpZ2h0OiAxNTdweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24taWQucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbC0yIHtcbiAgICAgIC5pY29uIHtcbiAgICAgICAgaGVpZ2h0OiAxODNweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tNnBhY2sucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb2wtMyB7XG4gICAgICAuaWNvbiB7XG4gICAgICAgIGhlaWdodDogMjc0cHg7XG4gICAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLWJvdHRsZXMucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDY0JTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wtNCB7XG4gICAgICAuaWNvbiB7XG4gICAgICAgIGhlaWdodDogMjcycHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLWJvdHRsZXNTLnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbHVtbiB7XG4gICAgICAuaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxNzRweDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDA7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNmb290ZXIge1xuICBiYWNrZ3JvdW5kOiAkb3JhbmdlO1xuICBtaW4taGVpZ2h0OiA5cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgI2Jsb2NrLW9zLXRoZW1lLWZvb3RlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG5cbiAgICB1bC5tZW51IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjZm9vdGVyLXRleHQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIGNvbG9yOiAjYTM2YzAxO1xuXG4gICAgLmZ0ZXh0LWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlcCB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuXG4gICNibG9jay1mb290ZXJiYWRnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLSByZW0tY2FsYyg5Myk7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKDgwKTtcblxuICAgIC5iYWRnZSB7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMTYwKTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMTYwKTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9iYWRnZS1za29sZW4uc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA5MCU7XG4gICAgfVxuICB9XG59XG5cbi5mcC1hcnRpY2xlcyB7XG4gIGgzLnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gIH1cblxuICAuZ3JhcGhpYyB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvZ3V5X2xlZnQuc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICB9XG5cbiAgLnZpZXdzLXJvdyB7XG4gICAgLndyYXBwZXIge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB3aWR0aDowcHg7XG4gICAgICAgICAgaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgYm9yZGVyOiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAxNSU7XG4gICAgICAgICAgbGVmdDogLTQ1cHg7XG5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubW9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtMjBweDtcbiAgICAgICAgcmlnaHQ6IDEwJTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ09sZW8gU2NyaXB0JztcbiAgICAgICAgICBwYWRkaW5nOiAwIDQ1cHggMnB4IDQ1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2J1dHRvbi5zdmdcIikgNTAlIDAgbm8tcmVwZWF0O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5sYXlvdXQtc2lkZWJhci1maXJzdCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYjFkOGYzO1xuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ4KTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbnRhY3RzIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAuY29sdW1uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLndyYXBwZXIge1xuICAgICAgLm5hbWUge1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgY29sb3I6ICMwZTg3ODA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50b29sYmFyLXRyYXktaG9yaXpvbnRhbCBsaSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG4iXX0= */
