@charset "UTF-8";
/** 2017 Wake Technical Community College
*   Architected by Peter T. Graber, Web Programmer
*   ptgraber@waketech.edu
*   for Wake Tech ITS
* /  January-December, 2017


/**  Import Bootstrap Framework */
/*! Bootstrap v3.3.7 (http://getbootstrap.com) Copyright 2011-2016 Twitter, Inc. Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html { font-family: sans-serif; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }

body { margin: 0; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }

audio:not([controls]) { display: none; height: 0; }

[hidden], template { display: none; }

a { background-color: transparent; }

a:active, a:hover { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }

b, strong { font-weight: bold; }

dfn { font-style: italic; }

h1 { font-size: 2em; margin: 0.67em 0; }

mark { background: #ff0; color: #000; }

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

img { border: 0; }

svg:not(:root) { overflow: hidden; }

figure { margin: 1em 40px; }

hr { box-sizing: content-box; height: 0; }

pre { overflow: auto; }

code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }

button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0; }

button { overflow: visible; }

button, select { text-transform: none; }

button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }

button[disabled], html input[disabled] { cursor: default; }

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

input { line-height: normal; }

input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }

input[type="search"] { -webkit-appearance: textfield; box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

legend { border: 0; padding: 0; }

textarea { overflow: auto; }

optgroup { font-weight: bold; }

table { border-collapse: collapse; border-spacing: 0; }

td, th { padding: 0; }

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print { *, *:before, *:after { background: transparent !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  a[href^="#"]:after, a[href^="javascript:"]:after { content: ""; }
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
  .navbar { display: none; }
  .btn > .caret, .dropup > .btn > .caret { border-top-color: #000 !important; }
  .label { border: 1px solid #000; }
  .table { border-collapse: collapse !important; }
  .table td, .table th { background-color: #fff !important; }
  .table-bordered th, .table-bordered td { border: 1px solid #ddd !important; } }

@font-face { font-family: 'Glyphicons Halflings'; src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot"); src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon { position: relative; top: 1px; display: inline-block; font-family: 'Glyphicons Halflings'; font-style: normal; font-weight: normal; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.glyphicon-asterisk:before { content: "\002a"; }

.glyphicon-plus:before { content: "\002b"; }

.glyphicon-euro:before, .glyphicon-eur:before { content: "\20ac"; }

.glyphicon-minus:before { content: "\2212"; }

.glyphicon-cloud:before { content: "\2601"; }

.glyphicon-envelope:before { content: "\2709"; }

.glyphicon-pencil:before { content: "\270f"; }

.glyphicon-glass:before { content: "\e001"; }

.glyphicon-music:before { content: "\e002"; }

.glyphicon-search:before { content: "\e003"; }

.glyphicon-heart:before { content: "\e005"; }

.glyphicon-star:before { content: "\e006"; }

.glyphicon-star-empty:before { content: "\e007"; }

.glyphicon-user:before { content: "\e008"; }

.glyphicon-film:before { content: "\e009"; }

.glyphicon-th-large:before { content: "\e010"; }

.glyphicon-th:before { content: "\e011"; }

.glyphicon-th-list:before { content: "\e012"; }

.glyphicon-ok:before { content: "\e013"; }

.glyphicon-remove:before { content: "\e014"; }

.glyphicon-zoom-in:before { content: "\e015"; }

.glyphicon-zoom-out:before { content: "\e016"; }

.glyphicon-off:before { content: "\e017"; }

.glyphicon-signal:before { content: "\e018"; }

.glyphicon-cog:before { content: "\e019"; }

.glyphicon-trash:before { content: "\e020"; }

.glyphicon-home:before { content: "\e021"; }

.glyphicon-file:before { content: "\e022"; }

.glyphicon-time:before { content: "\e023"; }

.glyphicon-road:before { content: "\e024"; }

.glyphicon-download-alt:before { content: "\e025"; }

.glyphicon-download:before { content: "\e026"; }

.glyphicon-upload:before { content: "\e027"; }

.glyphicon-inbox:before { content: "\e028"; }

.glyphicon-play-circle:before { content: "\e029"; }

.glyphicon-repeat:before { content: "\e030"; }

.glyphicon-refresh:before { content: "\e031"; }

.glyphicon-list-alt:before { content: "\e032"; }

.glyphicon-lock:before { content: "\e033"; }

.glyphicon-flag:before { content: "\e034"; }

.glyphicon-headphones:before { content: "\e035"; }

.glyphicon-volume-off:before { content: "\e036"; }

.glyphicon-volume-down:before { content: "\e037"; }

.glyphicon-volume-up:before { content: "\e038"; }

.glyphicon-qrcode:before { content: "\e039"; }

.glyphicon-barcode:before { content: "\e040"; }

.glyphicon-tag:before { content: "\e041"; }

.glyphicon-tags:before { content: "\e042"; }

.glyphicon-book:before { content: "\e043"; }

.glyphicon-bookmark:before { content: "\e044"; }

.glyphicon-print:before { content: "\e045"; }

.glyphicon-camera:before { content: "\e046"; }

.glyphicon-font:before { content: "\e047"; }

.glyphicon-bold:before { content: "\e048"; }

.glyphicon-italic:before { content: "\e049"; }

.glyphicon-text-height:before { content: "\e050"; }

.glyphicon-text-width:before { content: "\e051"; }

.glyphicon-align-left:before { content: "\e052"; }

.glyphicon-align-center:before { content: "\e053"; }

.glyphicon-align-right:before { content: "\e054"; }

.glyphicon-align-justify:before { content: "\e055"; }

.glyphicon-list:before { content: "\e056"; }

.glyphicon-indent-left:before { content: "\e057"; }

.glyphicon-indent-right:before { content: "\e058"; }

.glyphicon-facetime-video:before { content: "\e059"; }

.glyphicon-picture:before { content: "\e060"; }

.glyphicon-map-marker:before { content: "\e062"; }

.glyphicon-adjust:before { content: "\e063"; }

.glyphicon-tint:before { content: "\e064"; }

.glyphicon-edit:before { content: "\e065"; }

.glyphicon-share:before { content: "\e066"; }

.glyphicon-check:before { content: "\e067"; }

.glyphicon-move:before { content: "\e068"; }

.glyphicon-step-backward:before { content: "\e069"; }

.glyphicon-fast-backward:before { content: "\e070"; }

.glyphicon-backward:before { content: "\e071"; }

.glyphicon-play:before { content: "\e072"; }

.glyphicon-pause:before { content: "\e073"; }

.glyphicon-stop:before { content: "\e074"; }

.glyphicon-forward:before { content: "\e075"; }

.glyphicon-fast-forward:before { content: "\e076"; }

.glyphicon-step-forward:before { content: "\e077"; }

.glyphicon-eject:before { content: "\e078"; }

.glyphicon-chevron-left:before { content: "\e079"; }

.glyphicon-chevron-right:before { content: "\e080"; }

.glyphicon-plus-sign:before { content: "\e081"; }

.glyphicon-minus-sign:before { content: "\e082"; }

.glyphicon-remove-sign:before { content: "\e083"; }

.glyphicon-ok-sign:before { content: "\e084"; }

.glyphicon-question-sign:before { content: "\e085"; }

.glyphicon-info-sign:before { content: "\e086"; }

.glyphicon-screenshot:before { content: "\e087"; }

.glyphicon-remove-circle:before { content: "\e088"; }

.glyphicon-ok-circle:before { content: "\e089"; }

.glyphicon-ban-circle:before { content: "\e090"; }

.glyphicon-arrow-left:before { content: "\e091"; }

.glyphicon-arrow-right:before { content: "\e092"; }

.glyphicon-arrow-up:before { content: "\e093"; }

.glyphicon-arrow-down:before { content: "\e094"; }

.glyphicon-share-alt:before { content: "\e095"; }

.glyphicon-resize-full:before { content: "\e096"; }

.glyphicon-resize-small:before { content: "\e097"; }

.glyphicon-exclamation-sign:before { content: "\e101"; }

.glyphicon-gift:before { content: "\e102"; }

.glyphicon-leaf:before { content: "\e103"; }

.glyphicon-fire:before { content: "\e104"; }

.glyphicon-eye-open:before { content: "\e105"; }

.glyphicon-eye-close:before { content: "\e106"; }

.glyphicon-warning-sign:before { content: "\e107"; }

.glyphicon-plane:before { content: "\e108"; }

.glyphicon-calendar:before { content: "\e109"; }

.glyphicon-random:before { content: "\e110"; }

.glyphicon-comment:before { content: "\e111"; }

.glyphicon-magnet:before { content: "\e112"; }

.glyphicon-chevron-up:before { content: "\e113"; }

.glyphicon-chevron-down:before { content: "\e114"; }

.glyphicon-retweet:before { content: "\e115"; }

.glyphicon-shopping-cart:before { content: "\e116"; }

.glyphicon-folder-close:before { content: "\e117"; }

.glyphicon-folder-open:before { content: "\e118"; }

.glyphicon-resize-vertical:before { content: "\e119"; }

.glyphicon-resize-horizontal:before { content: "\e120"; }

.glyphicon-hdd:before { content: "\e121"; }

.glyphicon-bullhorn:before { content: "\e122"; }

.glyphicon-bell:before { content: "\e123"; }

.glyphicon-certificate:before { content: "\e124"; }

.glyphicon-thumbs-up:before { content: "\e125"; }

.glyphicon-thumbs-down:before { content: "\e126"; }

.glyphicon-hand-right:before { content: "\e127"; }

.glyphicon-hand-left:before { content: "\e128"; }

.glyphicon-hand-up:before { content: "\e129"; }

.glyphicon-hand-down:before { content: "\e130"; }

.glyphicon-circle-arrow-right:before { content: "\e131"; }

.glyphicon-circle-arrow-left:before { content: "\e132"; }

.glyphicon-circle-arrow-up:before { content: "\e133"; }

.glyphicon-circle-arrow-down:before { content: "\e134"; }

.glyphicon-globe:before { content: "\e135"; }

.glyphicon-wrench:before { content: "\e136"; }

.glyphicon-tasks:before { content: "\e137"; }

.glyphicon-filter:before { content: "\e138"; }

.glyphicon-briefcase:before { content: "\e139"; }

.glyphicon-fullscreen:before { content: "\e140"; }

.glyphicon-dashboard:before { content: "\e141"; }

.glyphicon-paperclip:before { content: "\e142"; }

.glyphicon-heart-empty:before { content: "\e143"; }

.glyphicon-link:before { content: "\e144"; }

.glyphicon-phone:before { content: "\e145"; }

.glyphicon-pushpin:before { content: "\e146"; }

.glyphicon-usd:before { content: "\e148"; }

.glyphicon-gbp:before { content: "\e149"; }

.glyphicon-sort:before { content: "\e150"; }

.glyphicon-sort-by-alphabet:before { content: "\e151"; }

.glyphicon-sort-by-alphabet-alt:before { content: "\e152"; }

.glyphicon-sort-by-order:before { content: "\e153"; }

.glyphicon-sort-by-order-alt:before { content: "\e154"; }

.glyphicon-sort-by-attributes:before { content: "\e155"; }

.glyphicon-sort-by-attributes-alt:before { content: "\e156"; }

.glyphicon-unchecked:before { content: "\e157"; }

.glyphicon-expand:before { content: "\e158"; }

.glyphicon-collapse-down:before { content: "\e159"; }

.glyphicon-collapse-up:before { content: "\e160"; }

.glyphicon-log-in:before { content: "\e161"; }

.glyphicon-flash:before { content: "\e162"; }

.glyphicon-log-out:before { content: "\e163"; }

.glyphicon-new-window:before { content: "\e164"; }

.glyphicon-record:before { content: "\e165"; }

.glyphicon-save:before { content: "\e166"; }

.glyphicon-open:before { content: "\e167"; }

.glyphicon-saved:before { content: "\e168"; }

.glyphicon-import:before { content: "\e169"; }

.glyphicon-export:before { content: "\e170"; }

.glyphicon-send:before { content: "\e171"; }

.glyphicon-floppy-disk:before { content: "\e172"; }

.glyphicon-floppy-saved:before { content: "\e173"; }

.glyphicon-floppy-remove:before { content: "\e174"; }

.glyphicon-floppy-save:before { content: "\e175"; }

.glyphicon-floppy-open:before { content: "\e176"; }

.glyphicon-credit-card:before { content: "\e177"; }

.glyphicon-transfer:before { content: "\e178"; }

.glyphicon-cutlery:before { content: "\e179"; }

.glyphicon-header:before { content: "\e180"; }

.glyphicon-compressed:before { content: "\e181"; }

.glyphicon-earphone:before { content: "\e182"; }

.glyphicon-phone-alt:before { content: "\e183"; }

.glyphicon-tower:before { content: "\e184"; }

.glyphicon-stats:before { content: "\e185"; }

.glyphicon-sd-video:before { content: "\e186"; }

.glyphicon-hd-video:before { content: "\e187"; }

.glyphicon-subtitles:before { content: "\e188"; }

.glyphicon-sound-stereo:before { content: "\e189"; }

.glyphicon-sound-dolby:before { content: "\e190"; }

.glyphicon-sound-5-1:before { content: "\e191"; }

.glyphicon-sound-6-1:before { content: "\e192"; }

.glyphicon-sound-7-1:before { content: "\e193"; }

.glyphicon-copyright-mark:before { content: "\e194"; }

.glyphicon-registration-mark:before { content: "\e195"; }

.glyphicon-cloud-download:before { content: "\e197"; }

.glyphicon-cloud-upload:before { content: "\e198"; }

.glyphicon-tree-conifer:before { content: "\e199"; }

.glyphicon-tree-deciduous:before { content: "\e200"; }

.glyphicon-cd:before { content: "\e201"; }

.glyphicon-save-file:before { content: "\e202"; }

.glyphicon-open-file:before { content: "\e203"; }

.glyphicon-level-up:before { content: "\e204"; }

.glyphicon-copy:before { content: "\e205"; }

.glyphicon-paste:before { content: "\e206"; }

.glyphicon-alert:before { content: "\e209"; }

.glyphicon-equalizer:before { content: "\e210"; }

.glyphicon-king:before { content: "\e211"; }

.glyphicon-queen:before { content: "\e212"; }

.glyphicon-pawn:before { content: "\e213"; }

.glyphicon-bishop:before { content: "\e214"; }

.glyphicon-knight:before { content: "\e215"; }

.glyphicon-baby-formula:before { content: "\e216"; }

.glyphicon-tent:before { content: "\26fa"; }

.glyphicon-blackboard:before { content: "\e218"; }

.glyphicon-bed:before { content: "\e219"; }

.glyphicon-apple:before { content: "\f8ff"; }

.glyphicon-erase:before { content: "\e221"; }

.glyphicon-hourglass:before { content: "\231b"; }

.glyphicon-lamp:before { content: "\e223"; }

.glyphicon-duplicate:before { content: "\e224"; }

.glyphicon-piggy-bank:before { content: "\e225"; }

.glyphicon-scissors:before { content: "\e226"; }

.glyphicon-bitcoin:before { content: "\e227"; }

.glyphicon-btc:before { content: "\e227"; }

.glyphicon-xbt:before { content: "\e227"; }

.glyphicon-yen:before { content: "\00a5"; }

.glyphicon-jpy:before { content: "\00a5"; }

.glyphicon-ruble:before { content: "\20bd"; }

.glyphicon-rub:before { content: "\20bd"; }

.glyphicon-scale:before { content: "\e230"; }

.glyphicon-ice-lolly:before { content: "\e231"; }

.glyphicon-ice-lolly-tasted:before { content: "\e232"; }

.glyphicon-education:before { content: "\e233"; }

.glyphicon-option-horizontal:before { content: "\e234"; }

.glyphicon-option-vertical:before { content: "\e235"; }

.glyphicon-menu-hamburger:before { content: "\e236"; }

.glyphicon-modal-window:before { content: "\e237"; }

.glyphicon-oil:before { content: "\e238"; }

.glyphicon-grain:before { content: "\e239"; }

.glyphicon-sunglasses:before { content: "\e240"; }

.glyphicon-text-size:before { content: "\e241"; }

.glyphicon-text-color:before { content: "\e242"; }

.glyphicon-text-background:before { content: "\e243"; }

.glyphicon-object-align-top:before { content: "\e244"; }

.glyphicon-object-align-bottom:before { content: "\e245"; }

.glyphicon-object-align-horizontal:before { content: "\e246"; }

.glyphicon-object-align-left:before { content: "\e247"; }

.glyphicon-object-align-vertical:before { content: "\e248"; }

.glyphicon-object-align-right:before { content: "\e249"; }

.glyphicon-triangle-right:before { content: "\e250"; }

.glyphicon-triangle-left:before { content: "\e251"; }

.glyphicon-triangle-bottom:before { content: "\e252"; }

.glyphicon-triangle-top:before { content: "\e253"; }

.glyphicon-console:before { content: "\e254"; }

.glyphicon-superscript:before { content: "\e255"; }

.glyphicon-subscript:before { content: "\e256"; }

.glyphicon-menu-left:before { content: "\e257"; }

.glyphicon-menu-right:before { content: "\e258"; }

.glyphicon-menu-down:before { content: "\e259"; }

.glyphicon-menu-up:before { content: "\e260"; }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

*:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

html { font-size: 10px; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body { font-family: "Nunito Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 15.5px; line-height: 1.42857; color: #333333; background-color: #f9fdff; }

input, button, select, textarea { font-family: inherit; font-size: inherit; line-height: inherit; }

a { color: #005581; text-decoration: none; }

a:hover, a:focus { color: #002335; text-decoration: underline; }

a:focus { outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; }

figure { margin: 0; }

img { vertical-align: middle; }

.img-responsive { display: block; max-width: 100%; height: auto; }

.img-rounded { border-radius: 6px; }

.img-thumbnail { padding: 4px; line-height: 1.42857; background-color: #f9fdff; border: 1px solid #ddd; border-radius: 4px; -webkit-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; display: inline-block; max-width: 100%; height: auto; }

.img-circle { border-radius: 50%; }

hr { margin-top: 22px; margin-bottom: 22px; border: 0; border-top: 1px solid #eeeeee; }

.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; }

[role="button"] { cursor: pointer; }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: "Nunito Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: 600; line-height: 1.1; color: inherit; }

h1 small, h1 .small, h2 small, h2 .small, h3 small, h3 .small, h4 small, h4 .small, h5 small, h5 .small, h6 small, h6 .small, .h1 small, .h1 .small, .h2 small, .h2 .small, .h3 small, .h3 .small, .h4 small, .h4 .small, .h5 small, .h5 .small, .h6 small, .h6 .small { font-weight: normal; line-height: 1; color: #777777; }

h1, .h1, h2, .h2, h3, .h3 { margin-top: 22px; margin-bottom: 11px; }

h1 small, h1 .small, .h1 small, .h1 .small, h2 small, h2 .small, .h2 small, .h2 .small, h3 small, h3 .small, .h3 small, .h3 .small { font-size: 65%; }

h4, .h4, h5, .h5, h6, .h6 { margin-top: 11px; margin-bottom: 11px; }

h4 small, h4 .small, .h4 small, .h4 .small, h5 small, h5 .small, .h5 small, .h5 .small, h6 small, h6 .small, .h6 small, .h6 .small { font-size: 75%; }

h1, .h1 { font-size: 40px; }

h2, .h2 { font-size: 33px; }

h3, .h3 { font-size: 26px; }

h4, .h4 { font-size: 10px; }

h5, .h5 { font-size: 15.5px; }

h6, .h6 { font-size: 14px; }

p { margin: 0 0 11px; }

.lead { margin-bottom: 22px; font-size: 17px; font-weight: 300; line-height: 1.4; }

@media (min-width: 768px) { .lead { font-size: 23.25px; } }

small, .small { font-size: 90%; }

mark, .mark { background-color: #fcf8e3; padding: .2em; }

.text-left { text-align: left; }

.text-right { text-align: right; }

.text-center { text-align: center; }

.text-justify { text-align: justify; }

.text-nowrap { white-space: nowrap; }

.text-lowercase { text-transform: lowercase; }

.text-uppercase, .initialism { text-transform: uppercase; }

.text-capitalize { text-transform: capitalize; }

.text-muted { color: #777777; }

.text-primary { color: #337ab7; }

a.text-primary:hover, a.text-primary:focus { color: #286090; }

.text-success { color: #3c763d; }

a.text-success:hover, a.text-success:focus { color: #2b542c; }

.text-info { color: #31708f; }

a.text-info:hover, a.text-info:focus { color: #245269; }

.text-warning { color: #8a6d3b; }

a.text-warning:hover, a.text-warning:focus { color: #66512c; }

.text-danger { color: #a94442; }

a.text-danger:hover, a.text-danger:focus { color: #843534; }

.bg-primary { color: #fff; }

.bg-primary { background-color: #337ab7; }

a.bg-primary:hover, a.bg-primary:focus { background-color: #286090; }

.bg-success { background-color: #dff0d8; }

a.bg-success:hover, a.bg-success:focus { background-color: #c1e2b3; }

.bg-info { background-color: #d9edf7; }

a.bg-info:hover, a.bg-info:focus { background-color: #afd9ee; }

.bg-warning { background-color: #fcf8e3; }

a.bg-warning:hover, a.bg-warning:focus { background-color: #f7ecb5; }

.bg-danger { background-color: #f2dede; }

a.bg-danger:hover, a.bg-danger:focus { background-color: #e4b9b9; }

.page-header { padding-bottom: 10px; margin: 44px 0 22px; border-bottom: 1px solid #eeeeee; }

ul, ol { margin-top: 0; margin-bottom: 11px; }

ul ul, ul ol, ol ul, ol ol { margin-bottom: 0; }

.list-unstyled { padding-left: 0; list-style: none; }

.list-inline { padding-left: 0; list-style: none; margin-left: -5px; }

.list-inline > li { display: inline-block; padding-left: 5px; padding-right: 5px; }

dl { margin-top: 0; margin-bottom: 22px; }

dt, dd { line-height: 1.42857; }

dt { font-weight: bold; }

dd { margin-left: 0; }

.dl-horizontal dd:before, .dl-horizontal dd:after { content: " "; display: table; }

.dl-horizontal dd:after { clear: both; }

@media (min-width: 1200px) { .dl-horizontal dt { float: left; width: 160px; clear: left; text-align: right; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .dl-horizontal dd { margin-left: 180px; } }

abbr[title], abbr[data-original-title] { cursor: help; border-bottom: 1px dotted #777777; }

.initialism { font-size: 90%; }

blockquote { padding: 11px 22px; margin: 0 0 22px; font-size: 19.375px; border-left: 5px solid #eeeeee; }

blockquote p:last-child, blockquote ul:last-child, blockquote ol:last-child { margin-bottom: 0; }

blockquote footer, blockquote small, blockquote .small { display: block; font-size: 80%; line-height: 1.42857; color: #777777; }

blockquote footer:before, blockquote small:before, blockquote .small:before { content: '\2014 \00A0'; }

.blockquote-reverse, blockquote.pull-right { padding-right: 15px; padding-left: 0; border-right: 5px solid #eeeeee; border-left: 0; text-align: right; }

.blockquote-reverse footer:before, .blockquote-reverse small:before, .blockquote-reverse .small:before, blockquote.pull-right footer:before, blockquote.pull-right small:before, blockquote.pull-right .small:before { content: ''; }

.blockquote-reverse footer:after, .blockquote-reverse small:after, .blockquote-reverse .small:after, blockquote.pull-right footer:after, blockquote.pull-right small:after, blockquote.pull-right .small:after { content: '\00A0 \2014'; }

address { margin-bottom: 22px; font-style: normal; line-height: 1.42857; }

code, kbd, pre, samp { font-family: Menlo, Monaco, Consolas, "Courier New", monospace; }

code { padding: 2px 4px; font-size: 90%; color: #c7254e; background-color: #f9f2f4; border-radius: 4px; }

kbd { padding: 2px 4px; font-size: 90%; color: #fff; background-color: #333; border-radius: 3px; box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); }

kbd kbd { padding: 0; font-size: 100%; font-weight: bold; box-shadow: none; }

pre { display: block; padding: 10.5px; margin: 0 0 11px; font-size: 14.5px; line-height: 1.42857; word-break: break-all; word-wrap: break-word; color: #333333; background-color: #f5f5f5; border: 1px solid #ccc; border-radius: 4px; }

pre code { padding: 0; font-size: inherit; color: inherit; white-space: pre-wrap; background-color: transparent; border-radius: 0; }

.pre-scrollable { max-height: 340px; overflow-y: scroll; }

.container { margin-right: auto; margin-left: auto; padding-left: 15px; padding-right: 15px; }

.container:before, .container:after { content: " "; display: table; }

.container:after { clear: both; }

@media (min-width: 768px) { .container { width: 750px; } }

@media (min-width: 992px) { .container { width: 970px; } }

@media (min-width: 1200px) { .container { width: 1170px; } }

.container-fluid { margin-right: auto; margin-left: auto; padding-left: 15px; padding-right: 15px; }

.container-fluid:before, .container-fluid:after { content: " "; display: table; }

.container-fluid:after { clear: both; }

.row { margin-left: -15px; margin-right: -15px; }

.row:before, .row:after { content: " "; display: table; }

.row:after { clear: both; }

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { position: relative; min-height: 1px; padding-left: 15px; padding-right: 15px; }

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { float: left; }

.col-xs-1 { width: 8.33333%; }

.col-xs-2 { width: 16.66667%; }

.col-xs-3 { width: 25%; }

.col-xs-4 { width: 33.33333%; }

.col-xs-5 { width: 41.66667%; }

.col-xs-6 { width: 50%; }

.col-xs-7 { width: 58.33333%; }

.col-xs-8 { width: 66.66667%; }

.col-xs-9 { width: 75%; }

.col-xs-10 { width: 83.33333%; }

.col-xs-11 { width: 91.66667%; }

.col-xs-12 { width: 100%; }

.col-xs-pull-0 { right: auto; }

.col-xs-pull-1 { right: 8.33333%; }

.col-xs-pull-2 { right: 16.66667%; }

.col-xs-pull-3 { right: 25%; }

.col-xs-pull-4 { right: 33.33333%; }

.col-xs-pull-5 { right: 41.66667%; }

.col-xs-pull-6 { right: 50%; }

.col-xs-pull-7 { right: 58.33333%; }

.col-xs-pull-8 { right: 66.66667%; }

.col-xs-pull-9 { right: 75%; }

.col-xs-pull-10 { right: 83.33333%; }

.col-xs-pull-11 { right: 91.66667%; }

.col-xs-pull-12 { right: 100%; }

.col-xs-push-0 { left: auto; }

.col-xs-push-1 { left: 8.33333%; }

.col-xs-push-2 { left: 16.66667%; }

.col-xs-push-3 { left: 25%; }

.col-xs-push-4 { left: 33.33333%; }

.col-xs-push-5 { left: 41.66667%; }

.col-xs-push-6 { left: 50%; }

.col-xs-push-7 { left: 58.33333%; }

.col-xs-push-8 { left: 66.66667%; }

.col-xs-push-9 { left: 75%; }

.col-xs-push-10 { left: 83.33333%; }

.col-xs-push-11 { left: 91.66667%; }

.col-xs-push-12 { left: 100%; }

.col-xs-offset-0 { margin-left: 0%; }

.col-xs-offset-1 { margin-left: 8.33333%; }

.col-xs-offset-2 { margin-left: 16.66667%; }

.col-xs-offset-3 { margin-left: 25%; }

.col-xs-offset-4 { margin-left: 33.33333%; }

.col-xs-offset-5 { margin-left: 41.66667%; }

.col-xs-offset-6 { margin-left: 50%; }

.col-xs-offset-7 { margin-left: 58.33333%; }

.col-xs-offset-8 { margin-left: 66.66667%; }

.col-xs-offset-9 { margin-left: 75%; }

.col-xs-offset-10 { margin-left: 83.33333%; }

.col-xs-offset-11 { margin-left: 91.66667%; }

.col-xs-offset-12 { margin-left: 100%; }

@media (min-width: 768px) { .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { float: left; }
  .col-sm-1 { width: 8.33333%; }
  .col-sm-2 { width: 16.66667%; }
  .col-sm-3 { width: 25%; }
  .col-sm-4 { width: 33.33333%; }
  .col-sm-5 { width: 41.66667%; }
  .col-sm-6 { width: 50%; }
  .col-sm-7 { width: 58.33333%; }
  .col-sm-8 { width: 66.66667%; }
  .col-sm-9 { width: 75%; }
  .col-sm-10 { width: 83.33333%; }
  .col-sm-11 { width: 91.66667%; }
  .col-sm-12 { width: 100%; }
  .col-sm-pull-0 { right: auto; }
  .col-sm-pull-1 { right: 8.33333%; }
  .col-sm-pull-2 { right: 16.66667%; }
  .col-sm-pull-3 { right: 25%; }
  .col-sm-pull-4 { right: 33.33333%; }
  .col-sm-pull-5 { right: 41.66667%; }
  .col-sm-pull-6 { right: 50%; }
  .col-sm-pull-7 { right: 58.33333%; }
  .col-sm-pull-8 { right: 66.66667%; }
  .col-sm-pull-9 { right: 75%; }
  .col-sm-pull-10 { right: 83.33333%; }
  .col-sm-pull-11 { right: 91.66667%; }
  .col-sm-pull-12 { right: 100%; }
  .col-sm-push-0 { left: auto; }
  .col-sm-push-1 { left: 8.33333%; }
  .col-sm-push-2 { left: 16.66667%; }
  .col-sm-push-3 { left: 25%; }
  .col-sm-push-4 { left: 33.33333%; }
  .col-sm-push-5 { left: 41.66667%; }
  .col-sm-push-6 { left: 50%; }
  .col-sm-push-7 { left: 58.33333%; }
  .col-sm-push-8 { left: 66.66667%; }
  .col-sm-push-9 { left: 75%; }
  .col-sm-push-10 { left: 83.33333%; }
  .col-sm-push-11 { left: 91.66667%; }
  .col-sm-push-12 { left: 100%; }
  .col-sm-offset-0 { margin-left: 0%; }
  .col-sm-offset-1 { margin-left: 8.33333%; }
  .col-sm-offset-2 { margin-left: 16.66667%; }
  .col-sm-offset-3 { margin-left: 25%; }
  .col-sm-offset-4 { margin-left: 33.33333%; }
  .col-sm-offset-5 { margin-left: 41.66667%; }
  .col-sm-offset-6 { margin-left: 50%; }
  .col-sm-offset-7 { margin-left: 58.33333%; }
  .col-sm-offset-8 { margin-left: 66.66667%; }
  .col-sm-offset-9 { margin-left: 75%; }
  .col-sm-offset-10 { margin-left: 83.33333%; }
  .col-sm-offset-11 { margin-left: 91.66667%; }
  .col-sm-offset-12 { margin-left: 100%; } }

@media (min-width: 992px) { .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { float: left; }
  .col-md-1 { width: 8.33333%; }
  .col-md-2 { width: 16.66667%; }
  .col-md-3 { width: 25%; }
  .col-md-4 { width: 33.33333%; }
  .col-md-5 { width: 41.66667%; }
  .col-md-6 { width: 50%; }
  .col-md-7 { width: 58.33333%; }
  .col-md-8 { width: 66.66667%; }
  .col-md-9 { width: 75%; }
  .col-md-10 { width: 83.33333%; }
  .col-md-11 { width: 91.66667%; }
  .col-md-12 { width: 100%; }
  .col-md-pull-0 { right: auto; }
  .col-md-pull-1 { right: 8.33333%; }
  .col-md-pull-2 { right: 16.66667%; }
  .col-md-pull-3 { right: 25%; }
  .col-md-pull-4 { right: 33.33333%; }
  .col-md-pull-5 { right: 41.66667%; }
  .col-md-pull-6 { right: 50%; }
  .col-md-pull-7 { right: 58.33333%; }
  .col-md-pull-8 { right: 66.66667%; }
  .col-md-pull-9 { right: 75%; }
  .col-md-pull-10 { right: 83.33333%; }
  .col-md-pull-11 { right: 91.66667%; }
  .col-md-pull-12 { right: 100%; }
  .col-md-push-0 { left: auto; }
  .col-md-push-1 { left: 8.33333%; }
  .col-md-push-2 { left: 16.66667%; }
  .col-md-push-3 { left: 25%; }
  .col-md-push-4 { left: 33.33333%; }
  .col-md-push-5 { left: 41.66667%; }
  .col-md-push-6 { left: 50%; }
  .col-md-push-7 { left: 58.33333%; }
  .col-md-push-8 { left: 66.66667%; }
  .col-md-push-9 { left: 75%; }
  .col-md-push-10 { left: 83.33333%; }
  .col-md-push-11 { left: 91.66667%; }
  .col-md-push-12 { left: 100%; }
  .col-md-offset-0 { margin-left: 0%; }
  .col-md-offset-1 { margin-left: 8.33333%; }
  .col-md-offset-2 { margin-left: 16.66667%; }
  .col-md-offset-3 { margin-left: 25%; }
  .col-md-offset-4 { margin-left: 33.33333%; }
  .col-md-offset-5 { margin-left: 41.66667%; }
  .col-md-offset-6 { margin-left: 50%; }
  .col-md-offset-7 { margin-left: 58.33333%; }
  .col-md-offset-8 { margin-left: 66.66667%; }
  .col-md-offset-9 { margin-left: 75%; }
  .col-md-offset-10 { margin-left: 83.33333%; }
  .col-md-offset-11 { margin-left: 91.66667%; }
  .col-md-offset-12 { margin-left: 100%; } }

@media (min-width: 1200px) { .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { float: left; }
  .col-lg-1 { width: 8.33333%; }
  .col-lg-2 { width: 16.66667%; }
  .col-lg-3 { width: 25%; }
  .col-lg-4 { width: 33.33333%; }
  .col-lg-5 { width: 41.66667%; }
  .col-lg-6 { width: 50%; }
  .col-lg-7 { width: 58.33333%; }
  .col-lg-8 { width: 66.66667%; }
  .col-lg-9 { width: 75%; }
  .col-lg-10 { width: 83.33333%; }
  .col-lg-11 { width: 91.66667%; }
  .col-lg-12 { width: 100%; }
  .col-lg-pull-0 { right: auto; }
  .col-lg-pull-1 { right: 8.33333%; }
  .col-lg-pull-2 { right: 16.66667%; }
  .col-lg-pull-3 { right: 25%; }
  .col-lg-pull-4 { right: 33.33333%; }
  .col-lg-pull-5 { right: 41.66667%; }
  .col-lg-pull-6 { right: 50%; }
  .col-lg-pull-7 { right: 58.33333%; }
  .col-lg-pull-8 { right: 66.66667%; }
  .col-lg-pull-9 { right: 75%; }
  .col-lg-pull-10 { right: 83.33333%; }
  .col-lg-pull-11 { right: 91.66667%; }
  .col-lg-pull-12 { right: 100%; }
  .col-lg-push-0 { left: auto; }
  .col-lg-push-1 { left: 8.33333%; }
  .col-lg-push-2 { left: 16.66667%; }
  .col-lg-push-3 { left: 25%; }
  .col-lg-push-4 { left: 33.33333%; }
  .col-lg-push-5 { left: 41.66667%; }
  .col-lg-push-6 { left: 50%; }
  .col-lg-push-7 { left: 58.33333%; }
  .col-lg-push-8 { left: 66.66667%; }
  .col-lg-push-9 { left: 75%; }
  .col-lg-push-10 { left: 83.33333%; }
  .col-lg-push-11 { left: 91.66667%; }
  .col-lg-push-12 { left: 100%; }
  .col-lg-offset-0 { margin-left: 0%; }
  .col-lg-offset-1 { margin-left: 8.33333%; }
  .col-lg-offset-2 { margin-left: 16.66667%; }
  .col-lg-offset-3 { margin-left: 25%; }
  .col-lg-offset-4 { margin-left: 33.33333%; }
  .col-lg-offset-5 { margin-left: 41.66667%; }
  .col-lg-offset-6 { margin-left: 50%; }
  .col-lg-offset-7 { margin-left: 58.33333%; }
  .col-lg-offset-8 { margin-left: 66.66667%; }
  .col-lg-offset-9 { margin-left: 75%; }
  .col-lg-offset-10 { margin-left: 83.33333%; }
  .col-lg-offset-11 { margin-left: 91.66667%; }
  .col-lg-offset-12 { margin-left: 100%; } }

table { background-color: transparent; }

caption { padding-top: 8px; padding-bottom: 8px; color: #777777; text-align: left; }

th { text-align: left; }

.table { width: 100%; max-width: 100%; margin-bottom: 22px; }

.table > thead > tr > th, .table > thead > tr > td, .table > tbody > tr > th, .table > tbody > tr > td, .table > tfoot > tr > th, .table > tfoot > tr > td { padding: 8px; line-height: 1.42857; vertical-align: top; border-top: 1px solid #ddd; }

.table > thead > tr > th { vertical-align: bottom; border-bottom: 2px solid #ddd; }

.table > caption + thead > tr:first-child > th, .table > caption + thead > tr:first-child > td, .table > colgroup + thead > tr:first-child > th, .table > colgroup + thead > tr:first-child > td, .table > thead:first-child > tr:first-child > th, .table > thead:first-child > tr:first-child > td { border-top: 0; }

.table > tbody + tbody { border-top: 2px solid #ddd; }

.table .table { background-color: #f9fdff; }

.table-condensed > thead > tr > th, .table-condensed > thead > tr > td, .table-condensed > tbody > tr > th, .table-condensed > tbody > tr > td, .table-condensed > tfoot > tr > th, .table-condensed > tfoot > tr > td { padding: 5px; }

.table-bordered { border: 1px solid #ddd; }

.table-bordered > thead > tr > th, .table-bordered > thead > tr > td, .table-bordered > tbody > tr > th, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > th, .table-bordered > tfoot > tr > td { border: 1px solid #ddd; }

.table-bordered > thead > tr > th, .table-bordered > thead > tr > td { border-bottom-width: 2px; }

.table-striped > tbody > tr:nth-of-type(odd) { background-color: #f9f9f9; }

.table-hover > tbody > tr:hover { background-color: #f5f5f5; }

table col[class*="col-"] { position: static; float: none; display: table-column; }

table td[class*="col-"], table th[class*="col-"] { position: static; float: none; display: table-cell; }

.table > thead > tr > td.active, .table > thead > tr > th.active, .table > thead > tr.active > td, .table > thead > tr.active > th, .table > tbody > tr > td.active, .table > tbody > tr > th.active, .table > tbody > tr.active > td, .table > tbody > tr.active > th, .table > tfoot > tr > td.active, .table > tfoot > tr > th.active, .table > tfoot > tr.active > td, .table > tfoot > tr.active > th { background-color: #f5f5f5; }

.table-hover > tbody > tr > td.active:hover, .table-hover > tbody > tr > th.active:hover, .table-hover > tbody > tr.active:hover > td, .table-hover > tbody > tr:hover > .active, .table-hover > tbody > tr.active:hover > th { background-color: #e8e8e8; }

.table > thead > tr > td.success, .table > thead > tr > th.success, .table > thead > tr.success > td, .table > thead > tr.success > th, .table > tbody > tr > td.success, .table > tbody > tr > th.success, .table > tbody > tr.success > td, .table > tbody > tr.success > th, .table > tfoot > tr > td.success, .table > tfoot > tr > th.success, .table > tfoot > tr.success > td, .table > tfoot > tr.success > th { background-color: #dff0d8; }

.table-hover > tbody > tr > td.success:hover, .table-hover > tbody > tr > th.success:hover, .table-hover > tbody > tr.success:hover > td, .table-hover > tbody > tr:hover > .success, .table-hover > tbody > tr.success:hover > th { background-color: #d0e9c6; }

.table > thead > tr > td.info, .table > thead > tr > th.info, .table > thead > tr.info > td, .table > thead > tr.info > th, .table > tbody > tr > td.info, .table > tbody > tr > th.info, .table > tbody > tr.info > td, .table > tbody > tr.info > th, .table > tfoot > tr > td.info, .table > tfoot > tr > th.info, .table > tfoot > tr.info > td, .table > tfoot > tr.info > th { background-color: #d9edf7; }

.table-hover > tbody > tr > td.info:hover, .table-hover > tbody > tr > th.info:hover, .table-hover > tbody > tr.info:hover > td, .table-hover > tbody > tr:hover > .info, .table-hover > tbody > tr.info:hover > th { background-color: #c4e3f3; }

.table > thead > tr > td.warning, .table > thead > tr > th.warning, .table > thead > tr.warning > td, .table > thead > tr.warning > th, .table > tbody > tr > td.warning, .table > tbody > tr > th.warning, .table > tbody > tr.warning > td, .table > tbody > tr.warning > th, .table > tfoot > tr > td.warning, .table > tfoot > tr > th.warning, .table > tfoot > tr.warning > td, .table > tfoot > tr.warning > th { background-color: #fcf8e3; }

.table-hover > tbody > tr > td.warning:hover, .table-hover > tbody > tr > th.warning:hover, .table-hover > tbody > tr.warning:hover > td, .table-hover > tbody > tr:hover > .warning, .table-hover > tbody > tr.warning:hover > th { background-color: #faf2cc; }

.table > thead > tr > td.danger, .table > thead > tr > th.danger, .table > thead > tr.danger > td, .table > thead > tr.danger > th, .table > tbody > tr > td.danger, .table > tbody > tr > th.danger, .table > tbody > tr.danger > td, .table > tbody > tr.danger > th, .table > tfoot > tr > td.danger, .table > tfoot > tr > th.danger, .table > tfoot > tr.danger > td, .table > tfoot > tr.danger > th { background-color: #f2dede; }

.table-hover > tbody > tr > td.danger:hover, .table-hover > tbody > tr > th.danger:hover, .table-hover > tbody > tr.danger:hover > td, .table-hover > tbody > tr:hover > .danger, .table-hover > tbody > tr.danger:hover > th { background-color: #ebcccc; }

.table-responsive { overflow-x: auto; min-height: 0.01%; }

@media screen and (max-width: 767px) { .table-responsive { width: 100%; margin-bottom: 16.5px; overflow-y: hidden; -ms-overflow-style: -ms-autohiding-scrollbar; border: 1px solid #ddd; }
  .table-responsive > .table { margin-bottom: 0; }
  .table-responsive > .table > thead > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > tfoot > tr > td { white-space: nowrap; }
  .table-responsive > .table-bordered { border: 0; }
  .table-responsive > .table-bordered > thead > tr > th:first-child, .table-responsive > .table-bordered > thead > tr > td:first-child, .table-responsive > .table-bordered > tbody > tr > th:first-child, .table-responsive > .table-bordered > tbody > tr > td:first-child, .table-responsive > .table-bordered > tfoot > tr > th:first-child, .table-responsive > .table-bordered > tfoot > tr > td:first-child { border-left: 0; }
  .table-responsive > .table-bordered > thead > tr > th:last-child, .table-responsive > .table-bordered > thead > tr > td:last-child, .table-responsive > .table-bordered > tbody > tr > th:last-child, .table-responsive > .table-bordered > tbody > tr > td:last-child, .table-responsive > .table-bordered > tfoot > tr > th:last-child, .table-responsive > .table-bordered > tfoot > tr > td:last-child { border-right: 0; }
  .table-responsive > .table-bordered > tbody > tr:last-child > th, .table-responsive > .table-bordered > tbody > tr:last-child > td, .table-responsive > .table-bordered > tfoot > tr:last-child > th, .table-responsive > .table-bordered > tfoot > tr:last-child > td { border-bottom: 0; } }

fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }

legend { display: block; width: 100%; padding: 0; margin-bottom: 22px; font-size: 23.25px; line-height: inherit; color: #333333; border: 0; border-bottom: 1px solid #e5e5e5; }

label { display: inline-block; max-width: 100%; margin-bottom: 5px; font-weight: bold; }

input[type="search"] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

input[type="radio"], input[type="checkbox"] { margin: 4px 0 0; margin-top: 1px \9; line-height: normal; }

input[type="file"] { display: block; }

input[type="range"] { display: block; width: 100%; }

select[multiple], select[size] { height: auto; }

input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus { outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; }

output { display: block; padding-top: 7px; font-size: 15.5px; line-height: 1.42857; color: #4d4d4d; }

.form-control { display: block; width: 100%; height: 36px; padding: 6px 12px; font-size: 15.5px; line-height: 1.42857; color: #4d4d4d; background-color: #fff; background-image: none; border: 1px solid #ccc; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }

.form-control:focus { border-color: #66afe9; outline: 0; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }

.form-control::-moz-placeholder { color: #999; opacity: 1; }

.form-control:-ms-input-placeholder { color: #999; }

.form-control::-webkit-input-placeholder { color: #999; }

.form-control::-ms-expand { border: 0; background-color: transparent; }

.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { background-color: #eeeeee; opacity: 1; }

.form-control[disabled], fieldset[disabled] .form-control { cursor: not-allowed; }

textarea.form-control { height: auto; }

input[type="search"] { -webkit-appearance: none; }

@media screen and (-webkit-min-device-pixel-ratio: 0) { input[type="date"].form-control, input[type="time"].form-control, input[type="datetime-local"].form-control, input[type="month"].form-control { line-height: 36px; }
  input[type="date"].input-sm, .input-group-sm > input.form-control[type="date"], .input-group-sm > input.input-group-addon[type="date"], .input-group-sm > .input-group-btn > input.btn[type="date"], .input-group-sm input[type="date"], input[type="time"].input-sm, .input-group-sm > input.form-control[type="time"], .input-group-sm > input.input-group-addon[type="time"], .input-group-sm > .input-group-btn > input.btn[type="time"], .input-group-sm input[type="time"], input[type="datetime-local"].input-sm, .input-group-sm > input.form-control[type="datetime-local"], .input-group-sm > input.input-group-addon[type="datetime-local"], .input-group-sm > .input-group-btn > input.btn[type="datetime-local"], .input-group-sm input[type="datetime-local"], input[type="month"].input-sm, .input-group-sm > input.form-control[type="month"], .input-group-sm > input.input-group-addon[type="month"], .input-group-sm > .input-group-btn > input.btn[type="month"], .input-group-sm input[type="month"] { line-height: 33px; }
  input[type="date"].input-lg, .input-group-lg > input.form-control[type="date"], .input-group-lg > input.input-group-addon[type="date"], .input-group-lg > .input-group-btn > input.btn[type="date"], .input-group-lg input[type="date"], input[type="time"].input-lg, .input-group-lg > input.form-control[type="time"], .input-group-lg > input.input-group-addon[type="time"], .input-group-lg > .input-group-btn > input.btn[type="time"], .input-group-lg input[type="time"], input[type="datetime-local"].input-lg, .input-group-lg > input.form-control[type="datetime-local"], .input-group-lg > input.input-group-addon[type="datetime-local"], .input-group-lg > .input-group-btn > input.btn[type="datetime-local"], .input-group-lg input[type="datetime-local"], input[type="month"].input-lg, .input-group-lg > input.form-control[type="month"], .input-group-lg > input.input-group-addon[type="month"], .input-group-lg > .input-group-btn > input.btn[type="month"], .input-group-lg input[type="month"] { line-height: 49px; } }

.form-group { margin-bottom: 15px; }

.radio, .checkbox { position: relative; display: block; margin-top: 10px; margin-bottom: 10px; }

.radio label, .checkbox label { min-height: 22px; padding-left: 20px; margin-bottom: 0; font-weight: normal; cursor: pointer; }

.radio input[type="radio"], .radio-inline input[type="radio"], .checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"] { position: absolute; margin-left: -20px; margin-top: 4px \9; }

.radio + .radio, .checkbox + .checkbox { margin-top: -5px; }

.radio-inline, .checkbox-inline { position: relative; display: inline-block; padding-left: 20px; margin-bottom: 0; vertical-align: middle; font-weight: normal; cursor: pointer; }

.radio-inline + .radio-inline, .checkbox-inline + .checkbox-inline { margin-top: 0; margin-left: 10px; }

input[type="radio"][disabled], input[type="radio"].disabled, fieldset[disabled] input[type="radio"], input[type="checkbox"][disabled], input[type="checkbox"].disabled, fieldset[disabled] input[type="checkbox"] { cursor: not-allowed; }

.radio-inline.disabled, fieldset[disabled] .radio-inline, .checkbox-inline.disabled, fieldset[disabled] .checkbox-inline { cursor: not-allowed; }

.radio.disabled label, fieldset[disabled] .radio label, .checkbox.disabled label, fieldset[disabled] .checkbox label { cursor: not-allowed; }

.form-control-static { padding-top: 7px; padding-bottom: 7px; margin-bottom: 0; min-height: 37.5px; }

.form-control-static.input-lg, .input-group-lg > .form-control-static.form-control, .input-group-lg > .form-control-static.input-group-addon, .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control, .input-group-sm > .form-control-static.input-group-addon, .input-group-sm > .input-group-btn > .form-control-static.btn { padding-left: 0; padding-right: 0; }

.input-sm, .input-group-sm > .form-control, .input-group-sm > .input-group-addon, .input-group-sm > .input-group-btn > .btn { height: 33px; padding: 5px 10px; font-size: 14px; line-height: 1.5; border-radius: 3px; }

select.input-sm, .input-group-sm > select.form-control, .input-group-sm > select.input-group-addon, .input-group-sm > .input-group-btn > select.btn { height: 33px; line-height: 33px; }

textarea.input-sm, .input-group-sm > textarea.form-control, .input-group-sm > textarea.input-group-addon, .input-group-sm > .input-group-btn > textarea.btn, select[multiple].input-sm, .input-group-sm > select.form-control[multiple], .input-group-sm > select.input-group-addon[multiple], .input-group-sm > .input-group-btn > select.btn[multiple] { height: auto; }

.form-group-sm .form-control { height: 33px; padding: 5px 10px; font-size: 14px; line-height: 1.5; border-radius: 3px; }

.form-group-sm select.form-control { height: 33px; line-height: 33px; }

.form-group-sm textarea.form-control, .form-group-sm select[multiple].form-control { height: auto; }

.form-group-sm .form-control-static { height: 33px; min-height: 36px; padding: 6px 10px; font-size: 14px; line-height: 1.5; }

.input-lg, .input-group-lg > .form-control, .input-group-lg > .input-group-addon, .input-group-lg > .input-group-btn > .btn { height: 49px; padding: 10px 16px; font-size: 20px; line-height: 1.33333; border-radius: 6px; }

select.input-lg, .input-group-lg > select.form-control, .input-group-lg > select.input-group-addon, .input-group-lg > .input-group-btn > select.btn { height: 49px; line-height: 49px; }

textarea.input-lg, .input-group-lg > textarea.form-control, .input-group-lg > textarea.input-group-addon, .input-group-lg > .input-group-btn > textarea.btn, select[multiple].input-lg, .input-group-lg > select.form-control[multiple], .input-group-lg > select.input-group-addon[multiple], .input-group-lg > .input-group-btn > select.btn[multiple] { height: auto; }

.form-group-lg .form-control { height: 49px; padding: 10px 16px; font-size: 20px; line-height: 1.33333; border-radius: 6px; }

.form-group-lg select.form-control { height: 49px; line-height: 49px; }

.form-group-lg textarea.form-control, .form-group-lg select[multiple].form-control { height: auto; }

.form-group-lg .form-control-static { height: 49px; min-height: 42px; padding: 11px 16px; font-size: 20px; line-height: 1.33333; }

.has-feedback { position: relative; }

.has-feedback .form-control { padding-right: 45px; }

.form-control-feedback { position: absolute; top: 0; right: 0; z-index: 2; display: block; width: 36px; height: 36px; line-height: 36px; text-align: center; pointer-events: none; }

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback, .input-group-lg > .input-group-addon + .form-control-feedback, .input-group-lg > .input-group-btn > .btn + .form-control-feedback, .input-group-lg + .form-control-feedback, .form-group-lg .form-control + .form-control-feedback { width: 49px; height: 49px; line-height: 49px; }

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback, .input-group-sm > .input-group-addon + .form-control-feedback, .input-group-sm > .input-group-btn > .btn + .form-control-feedback, .input-group-sm + .form-control-feedback, .form-group-sm .form-control + .form-control-feedback { width: 33px; height: 33px; line-height: 33px; }

.has-success .help-block, .has-success .control-label, .has-success .radio, .has-success .checkbox, .has-success .radio-inline, .has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label { color: #3c763d; }

.has-success .form-control { border-color: #3c763d; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }

.has-success .form-control:focus { border-color: #2b542c; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }

.has-success .input-group-addon { color: #3c763d; border-color: #3c763d; background-color: #dff0d8; }

.has-success .form-control-feedback { color: #3c763d; }

.has-warning .help-block, .has-warning .control-label, .has-warning .radio, .has-warning .checkbox, .has-warning .radio-inline, .has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label { color: #8a6d3b; }

.has-warning .form-control { border-color: #8a6d3b; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }

.has-warning .form-control:focus { border-color: #66512c; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }

.has-warning .input-group-addon { color: #8a6d3b; border-color: #8a6d3b; background-color: #fcf8e3; }

.has-warning .form-control-feedback { color: #8a6d3b; }

.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label { color: #a94442; }

.has-error .form-control { border-color: #a94442; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }

.has-error .form-control:focus { border-color: #843534; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

.has-error .input-group-addon { color: #a94442; border-color: #a94442; background-color: #f2dede; }

.has-error .form-control-feedback { color: #a94442; }

.has-feedback label ~ .form-control-feedback { top: 27px; }

.has-feedback label.sr-only ~ .form-control-feedback { top: 0; }

.help-block { display: block; margin-top: 5px; margin-bottom: 10px; color: #737373; }

@media (min-width: 768px) { .form-inline .form-group { display: inline-block; margin-bottom: 0; vertical-align: middle; }
  .form-inline .form-control { display: inline-block; width: auto; vertical-align: middle; }
  .form-inline .form-control-static { display: inline-block; }
  .form-inline .input-group { display: inline-table; vertical-align: middle; }
  .form-inline .input-group .input-group-addon, .form-inline .input-group .input-group-btn, .form-inline .input-group .form-control { width: auto; }
  .form-inline .input-group > .form-control { width: 100%; }
  .form-inline .control-label { margin-bottom: 0; vertical-align: middle; }
  .form-inline .radio, .form-inline .checkbox { display: inline-block; margin-top: 0; margin-bottom: 0; vertical-align: middle; }
  .form-inline .radio label, .form-inline .checkbox label { padding-left: 0; }
  .form-inline .radio input[type="radio"], .form-inline .checkbox input[type="checkbox"] { position: relative; margin-left: 0; }
  .form-inline .has-feedback .form-control-feedback { top: 0; } }

.form-horizontal .radio, .form-horizontal .checkbox, .form-horizontal .radio-inline, .form-horizontal .checkbox-inline { margin-top: 0; margin-bottom: 0; padding-top: 7px; }

.form-horizontal .radio, .form-horizontal .checkbox { min-height: 29px; }

.form-horizontal .form-group { margin-left: -15px; margin-right: -15px; }

.form-horizontal .form-group:before, .form-horizontal .form-group:after { content: " "; display: table; }

.form-horizontal .form-group:after { clear: both; }

@media (min-width: 768px) { .form-horizontal .control-label { text-align: right; margin-bottom: 0; padding-top: 7px; } }

.form-horizontal .has-feedback .form-control-feedback { right: 15px; }

@media (min-width: 768px) { .form-horizontal .form-group-lg .control-label { padding-top: 11px; font-size: 20px; } }

@media (min-width: 768px) { .form-horizontal .form-group-sm .control-label { padding-top: 6px; font-size: 14px; } }

.btn { display: inline-block; margin-bottom: 0; font-weight: normal; text-align: center; vertical-align: middle; touch-action: manipulation; cursor: pointer; background-image: none; border: 1px solid transparent; white-space: nowrap; padding: 6px 12px; font-size: 15.5px; line-height: 1.42857; border-radius: 4px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus { outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; }

.btn:hover, .btn:focus, .btn.focus { color: #333; text-decoration: none; }

.btn:active, .btn.active { outline: 0; background-image: none; -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }

.btn.disabled, .btn[disabled], fieldset[disabled] .btn { cursor: not-allowed; opacity: 0.65; filter: alpha(opacity=65); -webkit-box-shadow: none; box-shadow: none; }

a.btn.disabled, fieldset[disabled] a.btn { pointer-events: none; }

.btn-default { color: #333; background-color: #fff; border-color: #ccc; }

.btn-default:focus, .btn-default.focus { color: #333; background-color: #e6e6e6; border-color: #8c8c8c; }

.btn-default:hover { color: #333; background-color: #e6e6e6; border-color: #adadad; }

.btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle { color: #333; background-color: #e6e6e6; border-color: #adadad; }

.btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus, .open > .btn-default.dropdown-toggle:hover, .open > .btn-default.dropdown-toggle:focus, .open > .btn-default.dropdown-toggle.focus { color: #333; background-color: #d4d4d4; border-color: #8c8c8c; }

.btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle { background-image: none; }

.btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, fieldset[disabled] .btn-default:hover, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default.focus { background-color: #fff; border-color: #ccc; }

.btn-default .badge { color: #fff; background-color: #333; }

.btn-primary { color: #fff; background-color: #337ab7; border-color: #2e6da4; }

.btn-primary:focus, .btn-primary.focus { color: #fff; background-color: #286090; border-color: #122b40; }

.btn-primary:hover { color: #fff; background-color: #286090; border-color: #204d74; }

.btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle { color: #fff; background-color: #286090; border-color: #204d74; }

.btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus, .open > .btn-primary.dropdown-toggle:hover, .open > .btn-primary.dropdown-toggle:focus, .open > .btn-primary.dropdown-toggle.focus { color: #fff; background-color: #204d74; border-color: #122b40; }

.btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle { background-image: none; }

.btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, fieldset[disabled] .btn-primary:hover, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary.focus { background-color: #337ab7; border-color: #2e6da4; }

.btn-primary .badge { color: #337ab7; background-color: #fff; }

.btn-success { color: #fff; background-color: #3d8b3d; border-color: #357935; }

.btn-success:focus, .btn-success.focus { color: #fff; background-color: #2d672d; border-color: #0e200e; }

.btn-success:hover { color: #fff; background-color: #2d672d; border-color: #224f22; }

.btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle { color: #fff; background-color: #2d672d; border-color: #224f22; }

.btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus, .open > .btn-success.dropdown-toggle:hover, .open > .btn-success.dropdown-toggle:focus, .open > .btn-success.dropdown-toggle.focus { color: #fff; background-color: #224f22; border-color: #0e200e; }

.btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle { background-image: none; }

.btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success.focus { background-color: #3d8b3d; border-color: #357935; }

.btn-success .badge { color: #3d8b3d; background-color: #fff; }

.btn-info { color: #fff; background-color: #2390b0; border-color: #1f7e9a; }

.btn-info:focus, .btn-info.focus { color: #fff; background-color: #1b6d85; border-color: #0a2730; }

.btn-info:hover { color: #fff; background-color: #1b6d85; border-color: #155567; }

.btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle { color: #fff; background-color: #1b6d85; border-color: #155567; }

.btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus, .open > .btn-info.dropdown-toggle:hover, .open > .btn-info.dropdown-toggle:focus, .open > .btn-info.dropdown-toggle.focus { color: #fff; background-color: #155567; border-color: #0a2730; }

.btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle { background-image: none; }

.btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, fieldset[disabled] .btn-info:hover, fieldset[disabled] .btn-info:focus, fieldset[disabled] .btn-info.focus { background-color: #2390b0; border-color: #1f7e9a; }

.btn-info .badge { color: #2390b0; background-color: #fff; }

.btn-warning { color: #fff; background-color: #df8a13; border-color: #c77c11; }

.btn-warning:focus, .btn-warning.focus { color: #fff; background-color: #b06d0f; border-color: #523307; }

.btn-warning:hover { color: #fff; background-color: #b06d0f; border-color: #8f590c; }

.btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle { color: #fff; background-color: #b06d0f; border-color: #8f590c; }

.btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus, .open > .btn-warning.dropdown-toggle:hover, .open > .btn-warning.dropdown-toggle:focus, .open > .btn-warning.dropdown-toggle.focus { color: #fff; background-color: #8f590c; border-color: #523307; }

.btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle { background-image: none; }

.btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, fieldset[disabled] .btn-warning:hover, fieldset[disabled] .btn-warning:focus, fieldset[disabled] .btn-warning.focus { background-color: #df8a13; border-color: #c77c11; }

.btn-warning .badge { color: #df8a13; background-color: #fff; }

.btn-danger { color: #fff; background-color: #c9302c; border-color: #b52b27; }

.btn-danger:focus, .btn-danger.focus { color: #fff; background-color: #a02622; border-color: #4c1210; }

.btn-danger:hover { color: #fff; background-color: #a02622; border-color: #821f1c; }

.btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle { color: #fff; background-color: #a02622; border-color: #821f1c; }

.btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus, .open > .btn-danger.dropdown-toggle:hover, .open > .btn-danger.dropdown-toggle:focus, .open > .btn-danger.dropdown-toggle.focus { color: #fff; background-color: #821f1c; border-color: #4c1210; }

.btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle { background-image: none; }

.btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, fieldset[disabled] .btn-danger:hover, fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger.focus { background-color: #c9302c; border-color: #b52b27; }

.btn-danger .badge { color: #c9302c; background-color: #fff; }

.btn-link { color: #005581; font-weight: normal; border-radius: 0; }

.btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled], fieldset[disabled] .btn-link { background-color: transparent; -webkit-box-shadow: none; box-shadow: none; }

.btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active { border-color: transparent; }

.btn-link:hover, .btn-link:focus { color: #002335; text-decoration: underline; background-color: transparent; }

.btn-link[disabled]:hover, .btn-link[disabled]:focus, fieldset[disabled] .btn-link:hover, fieldset[disabled] .btn-link:focus { color: #777777; text-decoration: none; }

.btn-lg, .btn-group-lg > .btn { padding: 10px 16px; font-size: 20px; line-height: 1.33333; border-radius: 6px; }

.btn-sm, .btn-group-sm > .btn { padding: 5px 10px; font-size: 14px; line-height: 1.5; border-radius: 3px; }

.btn-xs, .btn-group-xs > .btn { padding: 1px 5px; font-size: 14px; line-height: 1.5; border-radius: 3px; }

.btn-block { display: block; width: 100%; }

.btn-block + .btn-block { margin-top: 5px; }

input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="button"].btn-block { width: 100%; }

.fade { opacity: 0; -webkit-transition: opacity 0.15s linear; -o-transition: opacity 0.15s linear; transition: opacity 0.15s linear; }

.fade.in { opacity: 1; }

.collapse { display: none; }

.collapse.in { display: block; }

tr.collapse.in { display: table-row; }

tbody.collapse.in { display: table-row-group; }

.collapsing { position: relative; height: 0; overflow: hidden; -webkit-transition-property: height, visibility; transition-property: height, visibility; -webkit-transition-duration: 0.35s; transition-duration: 0.35s; -webkit-transition-timing-function: ease; transition-timing-function: ease; }

.caret { display: inline-block; width: 0; height: 0; margin-left: 2px; vertical-align: middle; border-top: 4px dashed; border-top: 4px solid \9; border-right: 4px solid transparent; border-left: 4px solid transparent; }

.dropup, .dropdown { position: relative; }

.dropdown-toggle:focus { outline: 0; }

.dropdown-menu { position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 160px; padding: 5px 0; margin: 2px 0 0; list-style: none; font-size: 15.5px; text-align: left; background-color: #fff; border: 1px solid #ccc; border: 1px solid rgba(0, 0, 0, 0.15); border-radius: 4px; -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); background-clip: padding-box; }

.dropdown-menu.pull-right { right: 0; left: auto; }

.dropdown-menu .divider { height: 1px; margin: 10px 0; overflow: hidden; background-color: #e5e5e5; }

.dropdown-menu > li > a { display: block; padding: 3px 20px; clear: both; font-weight: normal; line-height: 1.42857; color: #333333; white-space: nowrap; }

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus { text-decoration: none; color: #262626; background-color: #f5f5f5; }

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus { color: #fff; text-decoration: none; outline: 0; background-color: #337ab7; }

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus { color: #777777; }

.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus { text-decoration: none; background-color: transparent; background-image: none; filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); cursor: not-allowed; }

.open > .dropdown-menu { display: block; }

.open > a { outline: 0; }

.dropdown-menu-right { left: auto; right: 0; }

.dropdown-menu-left { left: 0; right: auto; }

.dropdown-header { display: block; padding: 3px 20px; font-size: 14px; line-height: 1.42857; color: #777777; white-space: nowrap; }

.dropdown-backdrop { position: fixed; left: 0; right: 0; bottom: 0; top: 0; z-index: 990; }

.pull-right > .dropdown-menu { right: 0; left: auto; }

.dropup .caret, .navbar-fixed-bottom .dropdown .caret { border-top: 0; border-bottom: 4px dashed; border-bottom: 4px solid \9; content: ""; }

.dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu { top: auto; bottom: 100%; margin-bottom: 2px; }

@media (min-width: 1200px) { .navbar-right .dropdown-menu { right: 0; left: auto; }
  .navbar-right .dropdown-menu-left { left: 0; right: auto; } }

.btn-group, .btn-group-vertical { position: relative; display: inline-block; vertical-align: middle; }

.btn-group > .btn, .btn-group-vertical > .btn { position: relative; float: left; }

.btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active, .btn-group-vertical > .btn:hover, .btn-group-vertical > .btn:focus, .btn-group-vertical > .btn:active, .btn-group-vertical > .btn.active { z-index: 2; }

.btn-group .btn + .btn, .btn-group .btn + .btn-group, .btn-group .btn-group + .btn, .btn-group .btn-group + .btn-group { margin-left: -1px; }

.btn-toolbar { margin-left: -5px; }

.btn-toolbar:before, .btn-toolbar:after { content: " "; display: table; }

.btn-toolbar:after { clear: both; }

.btn-toolbar .btn, .btn-toolbar .btn-group, .btn-toolbar .input-group { float: left; }

.btn-toolbar > .btn, .btn-toolbar > .btn-group, .btn-toolbar > .input-group { margin-left: 5px; }

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { border-radius: 0; }

.btn-group > .btn:first-child { margin-left: 0; }

.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { border-bottom-right-radius: 0; border-top-right-radius: 0; }

.btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) { border-bottom-left-radius: 0; border-top-left-radius: 0; }

.btn-group > .btn-group { float: left; }

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; }

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, .btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { border-bottom-right-radius: 0; border-top-right-radius: 0; }

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { border-bottom-left-radius: 0; border-top-left-radius: 0; }

.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle { outline: 0; }

.btn-group > .btn + .dropdown-toggle { padding-left: 8px; padding-right: 8px; }

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle { padding-left: 12px; padding-right: 12px; }

.btn-group.open .dropdown-toggle { -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }

.btn-group.open .dropdown-toggle.btn-link { -webkit-box-shadow: none; box-shadow: none; }

.btn .caret { margin-left: 0; }

.btn-lg .caret, .btn-group-lg > .btn .caret { border-width: 5px 5px 0; border-bottom-width: 0; }

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret { border-width: 0 5px 5px; }

.btn-group-vertical > .btn, .btn-group-vertical > .btn-group, .btn-group-vertical > .btn-group > .btn { display: block; float: none; width: 100%; max-width: 100%; }

.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after { content: " "; display: table; }

.btn-group-vertical > .btn-group:after { clear: both; }

.btn-group-vertical > .btn-group > .btn { float: none; }

.btn-group-vertical > .btn + .btn, .btn-group-vertical > .btn + .btn-group, .btn-group-vertical > .btn-group + .btn, .btn-group-vertical > .btn-group + .btn-group { margin-top: -1px; margin-left: 0; }

.btn-group-vertical > .btn:not(:first-child):not(:last-child) { border-radius: 0; }

.btn-group-vertical > .btn:first-child:not(:last-child) { border-top-right-radius: 4px; border-top-left-radius: 4px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; }

.btn-group-vertical > .btn:last-child:not(:first-child) { border-top-right-radius: 0; border-top-left-radius: 0; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; }

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; }

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, .btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { border-bottom-right-radius: 0; border-bottom-left-radius: 0; }

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { border-top-right-radius: 0; border-top-left-radius: 0; }

.btn-group-justified { display: table; width: 100%; table-layout: fixed; border-collapse: separate; }

.btn-group-justified > .btn, .btn-group-justified > .btn-group { float: none; display: table-cell; width: 1%; }

.btn-group-justified > .btn-group .btn { width: 100%; }

.btn-group-justified > .btn-group .dropdown-menu { left: auto; }

[data-toggle="buttons"] > .btn input[type="radio"], [data-toggle="buttons"] > .btn input[type="checkbox"], [data-toggle="buttons"] > .btn-group > .btn input[type="radio"], [data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { position: absolute; clip: rect(0, 0, 0, 0); pointer-events: none; }

.input-group { position: relative; display: table; border-collapse: separate; }

.input-group[class*="col-"] { float: none; padding-left: 0; padding-right: 0; }

.input-group .form-control { position: relative; z-index: 2; float: left; width: 100%; margin-bottom: 0; }

.input-group .form-control:focus { z-index: 3; }

.input-group-addon, .input-group-btn, .input-group .form-control { display: table-cell; }

.input-group-addon:not(:first-child):not(:last-child), .input-group-btn:not(:first-child):not(:last-child), .input-group .form-control:not(:first-child):not(:last-child) { border-radius: 0; }

.input-group-addon, .input-group-btn { width: 1%; white-space: nowrap; vertical-align: middle; }

.input-group-addon { padding: 6px 12px; font-size: 15.5px; font-weight: normal; line-height: 1; color: #4d4d4d; text-align: center; background-color: #eeeeee; border: 1px solid #ccc; border-radius: 4px; }

.input-group-addon.input-sm, .input-group-sm > .input-group-addon, .input-group-sm > .input-group-btn > .input-group-addon.btn { padding: 5px 10px; font-size: 14px; border-radius: 3px; }

.input-group-addon.input-lg, .input-group-lg > .input-group-addon, .input-group-lg > .input-group-btn > .input-group-addon.btn { padding: 10px 16px; font-size: 20px; border-radius: 6px; }

.input-group-addon input[type="radio"], .input-group-addon input[type="checkbox"] { margin-top: 0; }

.input-group .form-control:first-child, .input-group-addon:first-child, .input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group > .btn, .input-group-btn:first-child > .dropdown-toggle, .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), .input-group-btn:last-child > .btn-group:not(:last-child) > .btn { border-bottom-right-radius: 0; border-top-right-radius: 0; }

.input-group-addon:first-child { border-right: 0; }

.input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group > .btn, .input-group-btn:last-child > .dropdown-toggle, .input-group-btn:first-child > .btn:not(:first-child), .input-group-btn:first-child > .btn-group:not(:first-child) > .btn { border-bottom-left-radius: 0; border-top-left-radius: 0; }

.input-group-addon:last-child { border-left: 0; }

.input-group-btn { position: relative; font-size: 0; white-space: nowrap; }

.input-group-btn > .btn { position: relative; }

.input-group-btn > .btn + .btn { margin-left: -1px; }

.input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active { z-index: 2; }

.input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group { margin-right: -1px; }

.input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group { z-index: 2; margin-left: -1px; }

.nav { margin-bottom: 0; padding-left: 0; list-style: none; }

.nav:before, .nav:after { content: " "; display: table; }

.nav:after { clear: both; }

.nav > li { position: relative; display: block; }

.nav > li > a { position: relative; display: block; padding: 10px 15px; }

.nav > li > a:hover, .nav > li > a:focus { text-decoration: none; background-color: #eeeeee; }

.nav > li.disabled > a { color: #777777; }

.nav > li.disabled > a:hover, .nav > li.disabled > a:focus { color: #777777; text-decoration: none; background-color: transparent; cursor: not-allowed; }

.nav .open > a, .nav .open > a:hover, .nav .open > a:focus { background-color: #eeeeee; border-color: #005581; }

.nav .nav-divider { height: 1px; margin: 10px 0; overflow: hidden; background-color: #e5e5e5; }

.nav > li > a > img { max-width: none; }

.nav-tabs { border-bottom: 1px solid #ddd; }

.nav-tabs > li { float: left; margin-bottom: -1px; }

.nav-tabs > li > a { margin-right: 2px; line-height: 1.42857; border: 1px solid transparent; border-radius: 4px 4px 0 0; }

.nav-tabs > li > a:hover { border-color: #eeeeee #eeeeee #ddd; }

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus { color: #4d4d4d; background-color: #f9fdff; border: 1px solid #ddd; border-bottom-color: transparent; cursor: default; }

.nav-pills > li { float: left; }

.nav-pills > li > a { border-radius: 4px; }

.nav-pills > li + li { margin-left: 2px; }

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus { color: #fff; background-color: #337ab7; }

.nav-stacked > li { float: none; }

.nav-stacked > li + li { margin-top: 2px; margin-left: 0; }

.nav-justified, .nav-tabs.nav-justified { width: 100%; }

.nav-justified > li, .nav-tabs.nav-justified > li { float: none; }

.nav-justified > li > a, .nav-tabs.nav-justified > li > a { text-align: center; margin-bottom: 5px; }

.nav-justified > .dropdown .dropdown-menu { top: auto; left: auto; }

@media (min-width: 768px) { .nav-justified > li, .nav-tabs.nav-justified > li { display: table-cell; width: 1%; }
  .nav-justified > li > a, .nav-tabs.nav-justified > li > a { margin-bottom: 0; } }

.nav-tabs-justified, .nav-tabs.nav-justified { border-bottom: 0; }

.nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a { margin-right: 0; border-radius: 4px; }

.nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a, .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover, .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus { border: 1px solid #ddd; }

@media (min-width: 768px) { .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a { border-bottom: 1px solid #ddd; border-radius: 4px 4px 0 0; }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a, .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover, .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus { border-bottom-color: #f9fdff; } }

.tab-content > .tab-pane { display: none; }

.tab-content > .active { display: block; }

.nav-tabs .dropdown-menu { margin-top: -1px; border-top-right-radius: 0; border-top-left-radius: 0; }

.navbar { position: relative; min-height: 50px; margin-bottom: 22px; border: 1px solid transparent; }

.navbar:before, .navbar:after { content: " "; display: table; }

.navbar:after { clear: both; }

@media (min-width: 1200px) { .navbar { border-radius: 4px; } }

.navbar-header:before, .navbar-header:after { content: " "; display: table; }

.navbar-header:after { clear: both; }

@media (min-width: 1200px) { .navbar-header { float: left; } }

.navbar-collapse { overflow-x: visible; padding-right: 15px; padding-left: 15px; border-top: 1px solid transparent; box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); -webkit-overflow-scrolling: touch; }

.navbar-collapse:before, .navbar-collapse:after { content: " "; display: table; }

.navbar-collapse:after { clear: both; }

.navbar-collapse.in { overflow-y: auto; }

@media (min-width: 1200px) { .navbar-collapse { width: auto; border-top: 0; box-shadow: none; }
  .navbar-collapse.collapse { display: block !important; height: auto !important; padding-bottom: 0; overflow: visible !important; }
  .navbar-collapse.in { overflow-y: visible; }
  .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { padding-left: 0; padding-right: 0; } }

.navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { max-height: 600px; }

@media (max-device-width: 480px) and (orientation: landscape) { .navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { max-height: 200px; } }

.container > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-header, .container-fluid > .navbar-collapse { margin-right: -15px; margin-left: -15px; }

@media (min-width: 1200px) { .container > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-header, .container-fluid > .navbar-collapse { margin-right: 0; margin-left: 0; } }

.navbar-static-top { z-index: 1000; border-width: 0 0 1px; }

@media (min-width: 1200px) { .navbar-static-top { border-radius: 0; } }

.navbar-fixed-top, .navbar-fixed-bottom { position: fixed; right: 0; left: 0; z-index: 1030; }

@media (min-width: 1200px) { .navbar-fixed-top, .navbar-fixed-bottom { border-radius: 0; } }

.navbar-fixed-top { top: 0; border-width: 0 0 1px; }

.navbar-fixed-bottom { bottom: 0; margin-bottom: 0; border-width: 1px 0 0; }

.navbar-brand { float: left; padding: 14px 15px; font-size: 20px; line-height: 22px; height: 50px; }

.navbar-brand:hover, .navbar-brand:focus { text-decoration: none; }

.navbar-brand > img { display: block; }

@media (min-width: 1200px) { .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand { margin-left: -15px; } }

.navbar-toggle { position: relative; float: right; margin-right: 15px; padding: 9px 10px; margin-top: 8px; margin-bottom: 8px; background-color: transparent; background-image: none; border: 1px solid transparent; border-radius: 4px; }

.navbar-toggle:focus { outline: 0; }

.navbar-toggle .icon-bar { display: block; width: 22px; height: 2px; border-radius: 1px; }

.navbar-toggle .icon-bar + .icon-bar { margin-top: 4px; }

@media (min-width: 1200px) { .navbar-toggle { display: none; } }

.navbar-nav { margin: 7px -15px; }

.navbar-nav > li > a { padding-top: 10px; padding-bottom: 10px; line-height: 22px; }

@media (max-width: 1199px) { .navbar-nav .open .dropdown-menu { position: static; float: none; width: auto; margin-top: 0; background-color: transparent; border: 0; box-shadow: none; }
  .navbar-nav .open .dropdown-menu > li > a, .navbar-nav .open .dropdown-menu .dropdown-header { padding: 5px 15px 5px 25px; }
  .navbar-nav .open .dropdown-menu > li > a { line-height: 22px; }
  .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus { background-image: none; } }

@media (min-width: 1200px) { .navbar-nav { float: left; margin: 0; }
  .navbar-nav > li { float: left; }
  .navbar-nav > li > a { padding-top: 14px; padding-bottom: 14px; } }

.navbar-form { margin-left: -15px; margin-right: -15px; padding: 10px 15px; border-top: 1px solid transparent; border-bottom: 1px solid transparent; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); margin-top: 7px; margin-bottom: 7px; }

@media (min-width: 768px) { .navbar-form .form-group { display: inline-block; margin-bottom: 0; vertical-align: middle; }
  .navbar-form .form-control { display: inline-block; width: auto; vertical-align: middle; }
  .navbar-form .form-control-static { display: inline-block; }
  .navbar-form .input-group { display: inline-table; vertical-align: middle; }
  .navbar-form .input-group .input-group-addon, .navbar-form .input-group .input-group-btn, .navbar-form .input-group .form-control { width: auto; }
  .navbar-form .input-group > .form-control { width: 100%; }
  .navbar-form .control-label { margin-bottom: 0; vertical-align: middle; }
  .navbar-form .radio, .navbar-form .checkbox { display: inline-block; margin-top: 0; margin-bottom: 0; vertical-align: middle; }
  .navbar-form .radio label, .navbar-form .checkbox label { padding-left: 0; }
  .navbar-form .radio input[type="radio"], .navbar-form .checkbox input[type="checkbox"] { position: relative; margin-left: 0; }
  .navbar-form .has-feedback .form-control-feedback { top: 0; } }

@media (max-width: 1199px) { .navbar-form .form-group { margin-bottom: 5px; }
  .navbar-form .form-group:last-child { margin-bottom: 0; } }

@media (min-width: 1200px) { .navbar-form { width: auto; border: 0; margin-left: 0; margin-right: 0; padding-top: 0; padding-bottom: 0; -webkit-box-shadow: none; box-shadow: none; } }

.navbar-nav > li > .dropdown-menu { margin-top: 0; border-top-right-radius: 0; border-top-left-radius: 0; }

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { margin-bottom: 0; border-top-right-radius: 4px; border-top-left-radius: 4px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; }

.navbar-btn { margin-top: 7px; margin-bottom: 7px; }

.navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn { margin-top: 8.5px; margin-bottom: 8.5px; }

.navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn { margin-top: 14px; margin-bottom: 14px; }

.navbar-text { margin-top: 14px; margin-bottom: 14px; }

@media (min-width: 1200px) { .navbar-text { float: left; margin-left: 15px; margin-right: 15px; } }

@media (min-width: 1200px) { .navbar-left { float: left !important; }
  .navbar-right { float: right !important; margin-right: -15px; }
  .navbar-right ~ .navbar-right { margin-right: 0; } }

.navbar-default { background-color: #f8f8f8; border-color: transparent; }

.navbar-default .navbar-brand { color: #777; }

.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus { color: #5e5e5e; background-color: transparent; }

.navbar-default .navbar-text { color: #777; }

.navbar-default .navbar-nav > li > a { color: #777; }

.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus { color: #333; background-color: transparent; }

.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus { color: #555; background-color: #e7e7e7; }

.navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus { color: #ccc; background-color: transparent; }

.navbar-default .navbar-toggle { border-color: #ddd; }

.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus { background-color: #ddd; }

.navbar-default .navbar-toggle .icon-bar { background-color: #888; }

.navbar-default .navbar-collapse, .navbar-default .navbar-form { border-color: transparent; }

.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus { background-color: #e7e7e7; color: #555; }

@media (max-width: 1199px) { .navbar-default .navbar-nav .open .dropdown-menu > li > a { color: #777; }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { color: #333; background-color: transparent; }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { color: #555; background-color: #e7e7e7; }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { color: #ccc; background-color: transparent; } }

.navbar-default .navbar-link { color: #777; }

.navbar-default .navbar-link:hover { color: #333; }

.navbar-default .btn-link { color: #777; }

.navbar-default .btn-link:hover, .navbar-default .btn-link:focus { color: #333; }

.navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus, fieldset[disabled] .navbar-default .btn-link:hover, fieldset[disabled] .navbar-default .btn-link:focus { color: #ccc; }

.navbar-inverse { background-color: transparent; border-color: transparent; }

.navbar-inverse .navbar-brand { color: white; }

.navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus { color: #fff; background-color: transparent; }

.navbar-inverse .navbar-text { color: #9d9d9d; }

.navbar-inverse .navbar-nav > li > a { color: white; }

.navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus { color: #fff; background-color: #000; }

.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus { color: #fff; background-color: transparent; }

.navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus { color: #444; background-color: transparent; }

.navbar-inverse .navbar-toggle { border-color: #bea377; }

.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus { background-color: #333; }

.navbar-inverse .navbar-toggle .icon-bar { background-color: #fff; }

.navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form { border-color: rgba(0, 0, 0, 0); }

.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus { background-color: transparent; color: #fff; }

@media (max-width: 1199px) { .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { border-color: transparent; }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider { background-color: transparent; }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { color: white; }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { color: #fff; background-color: #000; }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { color: #fff; background-color: transparent; }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { color: #444; background-color: transparent; } }

.navbar-inverse .navbar-link { color: white; }

.navbar-inverse .navbar-link:hover { color: #fff; }

.navbar-inverse .btn-link { color: white; }

.navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus { color: #fff; }

.navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus, fieldset[disabled] .navbar-inverse .btn-link:hover, fieldset[disabled] .navbar-inverse .btn-link:focus { color: #444; }

.breadcrumb { padding: 8px 15px; margin-bottom: 22px; list-style: none; background-color: #f5f5f5; border-radius: 4px; }

.breadcrumb > li { display: inline-block; }

.breadcrumb > li + li:before { content: "/ "; padding: 0 5px; color: #ccc; }

.breadcrumb > .active { color: #777777; }

.pagination { display: inline-block; padding-left: 0; margin: 22px 0; border-radius: 4px; }

.pagination > li { display: inline; }

.pagination > li > a, .pagination > li > span { position: relative; float: left; padding: 6px 12px; line-height: 1.42857; text-decoration: none; color: #005581; background-color: #fff; border: 1px solid #ddd; margin-left: -1px; }

.pagination > li:first-child > a, .pagination > li:first-child > span { margin-left: 0; border-bottom-left-radius: 4px; border-top-left-radius: 4px; }

.pagination > li:last-child > a, .pagination > li:last-child > span { border-bottom-right-radius: 4px; border-top-right-radius: 4px; }

.pagination > li > a:hover, .pagination > li > a:focus, .pagination > li > span:hover, .pagination > li > span:focus { z-index: 2; color: #002335; background-color: #eeeeee; border-color: #ddd; }

.pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus, .pagination > .active > span, .pagination > .active > span:hover, .pagination > .active > span:focus { z-index: 3; color: #fff; background-color: #337ab7; border-color: #337ab7; cursor: default; }

.pagination > .disabled > span, .pagination > .disabled > span:hover, .pagination > .disabled > span:focus, .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus { color: #777777; background-color: #fff; border-color: #ddd; cursor: not-allowed; }

.pagination-lg > li > a, .pagination-lg > li > span { padding: 10px 16px; font-size: 20px; line-height: 1.33333; }

.pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span { border-bottom-left-radius: 6px; border-top-left-radius: 6px; }

.pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span { border-bottom-right-radius: 6px; border-top-right-radius: 6px; }

.pagination-sm > li > a, .pagination-sm > li > span { padding: 5px 10px; font-size: 14px; line-height: 1.5; }

.pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span { border-bottom-left-radius: 3px; border-top-left-radius: 3px; }

.pagination-sm > li:last-child > a, .pagination-sm > li:last-child > span { border-bottom-right-radius: 3px; border-top-right-radius: 3px; }

.pager { padding-left: 0; margin: 22px 0; list-style: none; text-align: center; }

.pager:before, .pager:after { content: " "; display: table; }

.pager:after { clear: both; }

.pager li { display: inline; }

.pager li > a, .pager li > span { display: inline-block; padding: 5px 14px; background-color: #fff; border: 1px solid #ddd; border-radius: 15px; }

.pager li > a:hover, .pager li > a:focus { text-decoration: none; background-color: #eeeeee; }

.pager .next > a, .pager .next > span { float: right; }

.pager .previous > a, .pager .previous > span { float: left; }

.pager .disabled > a, .pager .disabled > a:hover, .pager .disabled > a:focus, .pager .disabled > span { color: #777777; background-color: #fff; cursor: not-allowed; }

.label { display: inline; padding: .2em .6em .3em; font-size: 75%; font-weight: bold; line-height: 1; color: #fff; text-align: center; white-space: nowrap; vertical-align: baseline; border-radius: .25em; }

.label:empty { display: none; }

.btn .label { position: relative; top: -1px; }

a.label:hover, a.label:focus { color: #fff; text-decoration: none; cursor: pointer; }

.label-default { background-color: #777777; }

.label-default[href]:hover, .label-default[href]:focus { background-color: #5e5e5e; }

.label-primary { background-color: #337ab7; }

.label-primary[href]:hover, .label-primary[href]:focus { background-color: #286090; }

.label-success { background-color: #3d8b3d; }

.label-success[href]:hover, .label-success[href]:focus { background-color: #2d672d; }

.label-info { background-color: #2390b0; }

.label-info[href]:hover, .label-info[href]:focus { background-color: #1b6d85; }

.label-warning { background-color: #df8a13; }

.label-warning[href]:hover, .label-warning[href]:focus { background-color: #b06d0f; }

.label-danger { background-color: #c9302c; }

.label-danger[href]:hover, .label-danger[href]:focus { background-color: #a02622; }

.badge { display: inline-block; min-width: 10px; padding: 3px 7px; font-size: 14px; font-weight: bold; color: #fff; line-height: 1; vertical-align: middle; white-space: nowrap; text-align: center; background-color: #777777; border-radius: 10px; }

.badge:empty { display: none; }

.btn .badge { position: relative; top: -1px; }

.btn-xs .badge, .btn-group-xs > .btn .badge, .btn-group-xs > .btn .badge { top: 0; padding: 1px 5px; }

.list-group-item.active > .badge, .nav-pills > .active > a > .badge { color: #005581; background-color: #fff; }

.list-group-item > .badge { float: right; }

.list-group-item > .badge + .badge { margin-right: 5px; }

.nav-pills > li > a > .badge { margin-left: 3px; }

a.badge:hover, a.badge:focus { color: #fff; text-decoration: none; cursor: pointer; }

.jumbotron { padding-top: 30px; padding-bottom: 30px; margin-bottom: 30px; color: inherit; background-color: #eeeeee; }

.jumbotron h1, .jumbotron .h1 { color: inherit; }

.jumbotron p { margin-bottom: 15px; font-size: 24px; font-weight: 200; }

.jumbotron > hr { border-top-color: #d5d5d5; }

.container .jumbotron, .container-fluid .jumbotron { border-radius: 6px; padding-left: 15px; padding-right: 15px; }

.jumbotron .container { max-width: 100%; }

@media screen and (min-width: 768px) { .jumbotron { padding-top: 48px; padding-bottom: 48px; }
  .container .jumbotron, .container-fluid .jumbotron { padding-left: 60px; padding-right: 60px; }
  .jumbotron h1, .jumbotron .h1 { font-size: 70px; } }

.thumbnail { display: block; padding: 4px; margin-bottom: 22px; line-height: 1.42857; background-color: #f9fdff; border: 1px solid #ddd; border-radius: 4px; -webkit-transition: border 0.2s ease-in-out; -o-transition: border 0.2s ease-in-out; transition: border 0.2s ease-in-out; }

.thumbnail > img, .thumbnail a > img { display: block; max-width: 100%; height: auto; margin-left: auto; margin-right: auto; }

.thumbnail .caption { padding: 9px; color: #333333; }

a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active { border-color: #005581; }

.alert { padding: 15px; margin-bottom: 22px; border: 1px solid transparent; border-radius: 4px; }

.alert h4 { margin-top: 0; color: inherit; }

.alert .alert-link { font-weight: bold; }

.alert > p, .alert > ul { margin-bottom: 0; }

.alert > p + p { margin-top: 5px; }

.alert-dismissable, .alert-dismissible { padding-right: 35px; }

.alert-dismissable .close, .alert-dismissible .close { position: relative; top: -2px; right: -21px; color: inherit; }

.alert-success { background-color: #dff0d8; border-color: #d6e9c6; color: #3c763d; }

.alert-success hr { border-top-color: #c9e2b3; }

.alert-success .alert-link { color: #2b542c; }

.alert-info { background-color: #d9edf7; border-color: #bce8f1; color: #31708f; }

.alert-info hr { border-top-color: #a6e1ec; }

.alert-info .alert-link { color: #245269; }

.alert-warning { background-color: #fcf8e3; border-color: #faebcc; color: #8a6d3b; }

.alert-warning hr { border-top-color: #f7e1b5; }

.alert-warning .alert-link { color: #66512c; }

.alert-danger { background-color: #f2dede; border-color: #ebccd1; color: #a94442; }

.alert-danger hr { border-top-color: #e4b9c0; }

.alert-danger .alert-link { color: #843534; }

@-webkit-keyframes progress-bar-stripes { from { background-position: 40px 0; }
  to { background-position: 0 0; } }

@keyframes progress-bar-stripes { from { background-position: 40px 0; }
  to { background-position: 0 0; } }

.progress { overflow: hidden; height: 22px; margin-bottom: 22px; background-color: #f5f5f5; border-radius: 4px; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }

.progress-bar { float: left; width: 0%; height: 100%; font-size: 14px; line-height: 22px; color: #fff; text-align: center; background-color: #337ab7; -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); -webkit-transition: width 0.6s ease; -o-transition: width 0.6s ease; transition: width 0.6s ease; }

.progress-striped .progress-bar, .progress-bar-striped { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-size: 40px 40px; }

.progress.active .progress-bar, .progress-bar.active { -webkit-animation: progress-bar-stripes 2s linear infinite; -o-animation: progress-bar-stripes 2s linear infinite; animation: progress-bar-stripes 2s linear infinite; }

.progress-bar-success { background-color: #3d8b3d; }

.progress-striped .progress-bar-success { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-info { background-color: #2390b0; }

.progress-striped .progress-bar-info { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-warning { background-color: #df8a13; }

.progress-striped .progress-bar-warning { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-danger { background-color: #c9302c; }

.progress-striped .progress-bar-danger { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.media { margin-top: 15px; }

.media:first-child { margin-top: 0; }

.media, .media-body { zoom: 1; overflow: hidden; }

.media-body { width: 10000px; }

.media-object { display: block; }

.media-object.img-thumbnail { max-width: none; }

.media-right, .media > .pull-right { padding-left: 10px; }

.media-left, .media > .pull-left { padding-right: 10px; }

.media-left, .media-right, .media-body { display: table-cell; vertical-align: top; }

.media-middle { vertical-align: middle; }

.media-bottom { vertical-align: bottom; }

.media-heading { margin-top: 0; margin-bottom: 5px; }

.media-list { padding-left: 0; list-style: none; }

.list-group { margin-bottom: 20px; padding-left: 0; }

.list-group-item { position: relative; display: block; padding: 10px 15px; margin-bottom: -1px; background-color: #fff; border: 1px solid #ddd; }

.list-group-item:first-child { border-top-right-radius: 4px; border-top-left-radius: 4px; }

.list-group-item:last-child { margin-bottom: 0; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; }

a.list-group-item, button.list-group-item { color: #555; }

a.list-group-item .list-group-item-heading, button.list-group-item .list-group-item-heading { color: #333; }

a.list-group-item:hover, a.list-group-item:focus, button.list-group-item:hover, button.list-group-item:focus { text-decoration: none; color: #555; background-color: #f5f5f5; }

button.list-group-item { width: 100%; text-align: left; }

.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus { background-color: #eeeeee; color: #777777; cursor: not-allowed; }

.list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading { color: inherit; }

.list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text { color: #777777; }

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus { z-index: 2; color: #fff; background-color: #337ab7; border-color: #337ab7; }

.list-group-item.active .list-group-item-heading, .list-group-item.active .list-group-item-heading > small, .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading, .list-group-item.active:hover .list-group-item-heading > small, .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading, .list-group-item.active:focus .list-group-item-heading > small, .list-group-item.active:focus .list-group-item-heading > .small { color: inherit; }

.list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text { color: #c7ddef; }

.list-group-item-success { color: #3c763d; background-color: #dff0d8; }

a.list-group-item-success, button.list-group-item-success { color: #3c763d; }

a.list-group-item-success .list-group-item-heading, button.list-group-item-success .list-group-item-heading { color: inherit; }

a.list-group-item-success:hover, a.list-group-item-success:focus, button.list-group-item-success:hover, button.list-group-item-success:focus { color: #3c763d; background-color: #d0e9c6; }

a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus, button.list-group-item-success.active, button.list-group-item-success.active:hover, button.list-group-item-success.active:focus { color: #fff; background-color: #3c763d; border-color: #3c763d; }

.list-group-item-info { color: #31708f; background-color: #d9edf7; }

a.list-group-item-info, button.list-group-item-info { color: #31708f; }

a.list-group-item-info .list-group-item-heading, button.list-group-item-info .list-group-item-heading { color: inherit; }

a.list-group-item-info:hover, a.list-group-item-info:focus, button.list-group-item-info:hover, button.list-group-item-info:focus { color: #31708f; background-color: #c4e3f3; }

a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus, button.list-group-item-info.active, button.list-group-item-info.active:hover, button.list-group-item-info.active:focus { color: #fff; background-color: #31708f; border-color: #31708f; }

.list-group-item-warning { color: #8a6d3b; background-color: #fcf8e3; }

a.list-group-item-warning, button.list-group-item-warning { color: #8a6d3b; }

a.list-group-item-warning .list-group-item-heading, button.list-group-item-warning .list-group-item-heading { color: inherit; }

a.list-group-item-warning:hover, a.list-group-item-warning:focus, button.list-group-item-warning:hover, button.list-group-item-warning:focus { color: #8a6d3b; background-color: #faf2cc; }

a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus, button.list-group-item-warning.active, button.list-group-item-warning.active:hover, button.list-group-item-warning.active:focus { color: #fff; background-color: #8a6d3b; border-color: #8a6d3b; }

.list-group-item-danger { color: #a94442; background-color: #f2dede; }

a.list-group-item-danger, button.list-group-item-danger { color: #a94442; }

a.list-group-item-danger .list-group-item-heading, button.list-group-item-danger .list-group-item-heading { color: inherit; }

a.list-group-item-danger:hover, a.list-group-item-danger:focus, button.list-group-item-danger:hover, button.list-group-item-danger:focus { color: #a94442; background-color: #ebcccc; }

a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus, button.list-group-item-danger.active, button.list-group-item-danger.active:hover, button.list-group-item-danger.active:focus { color: #fff; background-color: #a94442; border-color: #a94442; }

.list-group-item-heading { margin-top: 0; margin-bottom: 5px; }

.list-group-item-text { margin-bottom: 0; line-height: 1.3; }

.panel { margin-bottom: 22px; background-color: #fff; border: 1px solid transparent; border-radius: 4px; -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); }

.panel-body { padding: 15px; }

.panel-body:before, .panel-body:after { content: " "; display: table; }

.panel-body:after { clear: both; }

.panel-heading { padding: 10px 15px; border-bottom: 1px solid transparent; border-top-right-radius: 3px; border-top-left-radius: 3px; }

.panel-heading > .dropdown .dropdown-toggle { color: inherit; }

.panel-title { margin-top: 0; margin-bottom: 0; font-size: 18px; color: inherit; }

.panel-title > a, .panel-title > small, .panel-title > .small, .panel-title > small > a, .panel-title > .small > a { color: inherit; }

.panel-footer { padding: 10px 15px; background-color: #f5f5f5; border-top: 1px solid #ddd; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; }

.panel > .list-group, .panel > .panel-collapse > .list-group { margin-bottom: 0; }

.panel > .list-group .list-group-item, .panel > .panel-collapse > .list-group .list-group-item { border-width: 1px 0; border-radius: 0; }

.panel > .list-group:first-child .list-group-item:first-child, .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { border-top: 0; border-top-right-radius: 3px; border-top-left-radius: 3px; }

.panel > .list-group:last-child .list-group-item:last-child, .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { border-bottom: 0; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; }

.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { border-top-right-radius: 0; border-top-left-radius: 0; }

.panel-heading + .list-group .list-group-item:first-child { border-top-width: 0; }

.list-group + .panel-footer { border-top-width: 0; }

.panel > .table, .panel > .table-responsive > .table, .panel > .panel-collapse > .table { margin-bottom: 0; }

.panel > .table caption, .panel > .table-responsive > .table caption, .panel > .panel-collapse > .table caption { padding-left: 15px; padding-right: 15px; }

.panel > .table:first-child, .panel > .table-responsive:first-child > .table:first-child { border-top-right-radius: 3px; border-top-left-radius: 3px; }

.panel > .table:first-child > thead:first-child > tr:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { border-top-left-radius: 3px; border-top-right-radius: 3px; }

.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, .panel > .table:first-child > thead:first-child > tr:first-child th:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { border-top-left-radius: 3px; }

.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, .panel > .table:first-child > thead:first-child > tr:first-child th:last-child, .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { border-top-right-radius: 3px; }

.panel > .table:last-child, .panel > .table-responsive:last-child > .table:last-child { border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; }

.panel > .table:last-child > tbody:last-child > tr:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; }

.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { border-bottom-left-radius: 3px; }

.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { border-bottom-right-radius: 3px; }

.panel > .panel-body + .table, .panel > .panel-body + .table-responsive, .panel > .table + .panel-body, .panel > .table-responsive + .panel-body { border-top: 1px solid #ddd; }

.panel > .table > tbody:first-child > tr:first-child th, .panel > .table > tbody:first-child > tr:first-child td { border-top: 0; }

.panel > .table-bordered, .panel > .table-responsive > .table-bordered { border: 0; }

.panel > .table-bordered > thead > tr > th:first-child, .panel > .table-bordered > thead > tr > td:first-child, .panel > .table-bordered > tbody > tr > th:first-child, .panel > .table-bordered > tbody > tr > td:first-child, .panel > .table-bordered > tfoot > tr > th:first-child, .panel > .table-bordered > tfoot > tr > td:first-child, .panel > .table-responsive > .table-bordered > thead > tr > th:first-child, .panel > .table-responsive > .table-bordered > thead > tr > td:first-child, .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { border-left: 0; }

.panel > .table-bordered > thead > tr > th:last-child, .panel > .table-bordered > thead > tr > td:last-child, .panel > .table-bordered > tbody > tr > th:last-child, .panel > .table-bordered > tbody > tr > td:last-child, .panel > .table-bordered > tfoot > tr > th:last-child, .panel > .table-bordered > tfoot > tr > td:last-child, .panel > .table-responsive > .table-bordered > thead > tr > th:last-child, .panel > .table-responsive > .table-bordered > thead > tr > td:last-child, .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { border-right: 0; }

.panel > .table-bordered > thead > tr:first-child > td, .panel > .table-bordered > thead > tr:first-child > th, .panel > .table-bordered > tbody > tr:first-child > td, .panel > .table-bordered > tbody > tr:first-child > th, .panel > .table-responsive > .table-bordered > thead > tr:first-child > td, .panel > .table-responsive > .table-bordered > thead > tr:first-child > th, .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { border-bottom: 0; }

.panel > .table-bordered > tbody > tr:last-child > td, .panel > .table-bordered > tbody > tr:last-child > th, .panel > .table-bordered > tfoot > tr:last-child > td, .panel > .table-bordered > tfoot > tr:last-child > th, .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { border-bottom: 0; }

.panel > .table-responsive { border: 0; margin-bottom: 0; }

.panel-group { margin-bottom: 22px; }

.panel-group .panel { margin-bottom: 0; border-radius: 4px; }

.panel-group .panel + .panel { margin-top: 5px; }

.panel-group .panel-heading { border-bottom: 0; }

.panel-group .panel-heading + .panel-collapse > .panel-body, .panel-group .panel-heading + .panel-collapse > .list-group { border-top: 1px solid #ddd; }

.panel-group .panel-footer { border-top: 0; }

.panel-group .panel-footer + .panel-collapse .panel-body { border-bottom: 1px solid #ddd; }

.panel-default { border-color: #ddd; }

.panel-default > .panel-heading { color: #333333; background-color: #f5f5f5; border-color: #ddd; }

.panel-default > .panel-heading + .panel-collapse > .panel-body { border-top-color: #ddd; }

.panel-default > .panel-heading .badge { color: #f5f5f5; background-color: #333333; }

.panel-default > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #ddd; }

.panel-primary { border-color: #337ab7; }

.panel-primary > .panel-heading { color: #fff; background-color: #337ab7; border-color: #337ab7; }

.panel-primary > .panel-heading + .panel-collapse > .panel-body { border-top-color: #337ab7; }

.panel-primary > .panel-heading .badge { color: #337ab7; background-color: #fff; }

.panel-primary > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #337ab7; }

.panel-success { border-color: #d6e9c6; }

.panel-success > .panel-heading { color: #3c763d; background-color: #dff0d8; border-color: #d6e9c6; }

.panel-success > .panel-heading + .panel-collapse > .panel-body { border-top-color: #d6e9c6; }

.panel-success > .panel-heading .badge { color: #dff0d8; background-color: #3c763d; }

.panel-success > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #d6e9c6; }

.panel-info { border-color: #bce8f1; }

.panel-info > .panel-heading { color: #31708f; background-color: #d9edf7; border-color: #bce8f1; }

.panel-info > .panel-heading + .panel-collapse > .panel-body { border-top-color: #bce8f1; }

.panel-info > .panel-heading .badge { color: #d9edf7; background-color: #31708f; }

.panel-info > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #bce8f1; }

.panel-warning { border-color: #faebcc; }

.panel-warning > .panel-heading { color: #8a6d3b; background-color: #fcf8e3; border-color: #faebcc; }

.panel-warning > .panel-heading + .panel-collapse > .panel-body { border-top-color: #faebcc; }

.panel-warning > .panel-heading .badge { color: #fcf8e3; background-color: #8a6d3b; }

.panel-warning > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #faebcc; }

.panel-danger { border-color: #ebccd1; }

.panel-danger > .panel-heading { color: #a94442; background-color: #f2dede; border-color: #ebccd1; }

.panel-danger > .panel-heading + .panel-collapse > .panel-body { border-top-color: #ebccd1; }

.panel-danger > .panel-heading .badge { color: #f2dede; background-color: #a94442; }

.panel-danger > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #ebccd1; }

.embed-responsive { position: relative; display: block; height: 0; padding: 0; overflow: hidden; }

.embed-responsive .embed-responsive-item, .embed-responsive iframe, .embed-responsive embed, .embed-responsive object, .embed-responsive video { position: absolute; top: 0; left: 0; bottom: 0; height: 100%; width: 100%; border: 0; }

.embed-responsive-16by9 { padding-bottom: 56.25%; }

.embed-responsive-4by3 { padding-bottom: 75%; }

.well { min-height: 20px; padding: 19px; margin-bottom: 20px; background-color: #f5f5f5; border: 1px solid #e3e3e3; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); }

.well blockquote { border-color: #ddd; border-color: rgba(0, 0, 0, 0.15); }

.well-lg { padding: 24px; border-radius: 6px; }

.well-sm { padding: 9px; border-radius: 3px; }

.close { float: right; font-size: 23.25px; font-weight: bold; line-height: 1; color: #000; text-shadow: 0 1px 0 #fff; opacity: 0.2; filter: alpha(opacity=20); }

.close:hover, .close:focus { color: #000; text-decoration: none; cursor: pointer; opacity: 0.5; filter: alpha(opacity=50); }

button.close { padding: 0; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; }

.modal-open { overflow: hidden; }

.modal { display: none; overflow: hidden; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1050; -webkit-overflow-scrolling: touch; outline: 0; }

.modal.fade .modal-dialog { -webkit-transform: translate(0, -25%); -ms-transform: translate(0, -25%); -o-transform: translate(0, -25%); transform: translate(0, -25%); -webkit-transition: -webkit-transform 0.3s ease-out; -moz-transition: -moz-transform 0.3s ease-out; -o-transition: -o-transform 0.3s ease-out; transition: transform 0.3s ease-out; }

.modal.in .modal-dialog { -webkit-transform: translate(0, 0); -ms-transform: translate(0, 0); -o-transform: translate(0, 0); transform: translate(0, 0); }

.modal-open .modal { overflow-x: hidden; overflow-y: auto; }

.modal-dialog { position: relative; width: auto; margin: 10px; }

.modal-content { position: relative; background-color: #fff; border: 1px solid #999; border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 6px; -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); background-clip: padding-box; outline: 0; }

.modal-backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1040; background-color: #000; }

.modal-backdrop.fade { opacity: 0; filter: alpha(opacity=0); }

.modal-backdrop.in { opacity: 0.5; filter: alpha(opacity=50); }

.modal-header { padding: 15px; border-bottom: 1px solid #e5e5e5; }

.modal-header:before, .modal-header:after { content: " "; display: table; }

.modal-header:after { clear: both; }

.modal-header .close { margin-top: -2px; }

.modal-title { margin: 0; line-height: 1.42857; }

.modal-body { position: relative; padding: 15px; }

.modal-footer { padding: 15px; text-align: right; border-top: 1px solid #e5e5e5; }

.modal-footer:before, .modal-footer:after { content: " "; display: table; }

.modal-footer:after { clear: both; }

.modal-footer .btn + .btn { margin-left: 5px; margin-bottom: 0; }

.modal-footer .btn-group .btn + .btn { margin-left: -1px; }

.modal-footer .btn-block + .btn-block { margin-left: 0; }

.modal-scrollbar-measure { position: absolute; top: -9999px; width: 50px; height: 50px; overflow: scroll; }

@media (min-width: 768px) { .modal-dialog { width: 600px; margin: 30px auto; }
  .modal-content { -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
  .modal-sm { width: 300px; } }

@media (min-width: 992px) { .modal-lg { width: 900px; } }

.tooltip { position: absolute; z-index: 1070; display: block; font-family: "Nunito Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; font-style: normal; font-weight: normal; letter-spacing: normal; line-break: auto; line-height: 1.42857; text-align: left; text-align: start; text-decoration: none; text-shadow: none; text-transform: none; white-space: normal; word-break: normal; word-spacing: normal; word-wrap: normal; font-size: 14px; opacity: 0; filter: alpha(opacity=0); }

.tooltip.in { opacity: 0.9; filter: alpha(opacity=90); }

.tooltip.top { margin-top: -3px; padding: 5px 0; }

.tooltip.right { margin-left: 3px; padding: 0 5px; }

.tooltip.bottom { margin-top: 3px; padding: 5px 0; }

.tooltip.left { margin-left: -3px; padding: 0 5px; }

.tooltip-inner { max-width: 200px; padding: 3px 8px; color: #fff; text-align: center; background-color: #000; border-radius: 4px; }

.tooltip-arrow { position: absolute; width: 0; height: 0; border-color: transparent; border-style: solid; }

.tooltip.top .tooltip-arrow { bottom: 0; left: 50%; margin-left: -5px; border-width: 5px 5px 0; border-top-color: #000; }

.tooltip.top-left .tooltip-arrow { bottom: 0; right: 5px; margin-bottom: -5px; border-width: 5px 5px 0; border-top-color: #000; }

.tooltip.top-right .tooltip-arrow { bottom: 0; left: 5px; margin-bottom: -5px; border-width: 5px 5px 0; border-top-color: #000; }

.tooltip.right .tooltip-arrow { top: 50%; left: 0; margin-top: -5px; border-width: 5px 5px 5px 0; border-right-color: #000; }

.tooltip.left .tooltip-arrow { top: 50%; right: 0; margin-top: -5px; border-width: 5px 0 5px 5px; border-left-color: #000; }

.tooltip.bottom .tooltip-arrow { top: 0; left: 50%; margin-left: -5px; border-width: 0 5px 5px; border-bottom-color: #000; }

.tooltip.bottom-left .tooltip-arrow { top: 0; right: 5px; margin-top: -5px; border-width: 0 5px 5px; border-bottom-color: #000; }

.tooltip.bottom-right .tooltip-arrow { top: 0; left: 5px; margin-top: -5px; border-width: 0 5px 5px; border-bottom-color: #000; }

.popover { position: absolute; top: 0; left: 0; z-index: 1060; display: none; max-width: 276px; padding: 1px; font-family: "Nunito Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; font-style: normal; font-weight: normal; letter-spacing: normal; line-break: auto; line-height: 1.42857; text-align: left; text-align: start; text-decoration: none; text-shadow: none; text-transform: none; white-space: normal; word-break: normal; word-spacing: normal; word-wrap: normal; font-size: 15.5px; background-color: #fff; background-clip: padding-box; border: 1px solid #ccc; border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 6px; -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }

.popover.top { margin-top: -10px; }

.popover.right { margin-left: 10px; }

.popover.bottom { margin-top: 10px; }

.popover.left { margin-left: -10px; }

.popover-title { margin: 0; padding: 8px 14px; font-size: 15.5px; background-color: #f7f7f7; border-bottom: 1px solid #ebebeb; border-radius: 5px 5px 0 0; }

.popover-content { padding: 9px 14px; }

.popover > .arrow, .popover > .arrow:after { position: absolute; display: block; width: 0; height: 0; border-color: transparent; border-style: solid; }

.popover > .arrow { border-width: 11px; }

.popover > .arrow:after { border-width: 10px; content: ""; }

.popover.top > .arrow { left: 50%; margin-left: -11px; border-bottom-width: 0; border-top-color: #999999; border-top-color: rgba(0, 0, 0, 0.25); bottom: -11px; }

.popover.top > .arrow:after { content: " "; bottom: 1px; margin-left: -10px; border-bottom-width: 0; border-top-color: #fff; }

.popover.right > .arrow { top: 50%; left: -11px; margin-top: -11px; border-left-width: 0; border-right-color: #999999; border-right-color: rgba(0, 0, 0, 0.25); }

.popover.right > .arrow:after { content: " "; left: 1px; bottom: -10px; border-left-width: 0; border-right-color: #fff; }

.popover.bottom > .arrow { left: 50%; margin-left: -11px; border-top-width: 0; border-bottom-color: #999999; border-bottom-color: rgba(0, 0, 0, 0.25); top: -11px; }

.popover.bottom > .arrow:after { content: " "; top: 1px; margin-left: -10px; border-top-width: 0; border-bottom-color: #fff; }

.popover.left > .arrow { top: 50%; right: -11px; margin-top: -11px; border-right-width: 0; border-left-color: #999999; border-left-color: rgba(0, 0, 0, 0.25); }

.popover.left > .arrow:after { content: " "; right: 1px; border-right-width: 0; border-left-color: #fff; bottom: -10px; }

.carousel { position: relative; }

.carousel-inner { position: relative; overflow: hidden; width: 100%; }

.carousel-inner > .item { display: none; position: relative; -webkit-transition: 0.6s ease-in-out left; -o-transition: 0.6s ease-in-out left; transition: 0.6s ease-in-out left; }

.carousel-inner > .item > img, .carousel-inner > .item > a > img { display: block; max-width: 100%; height: auto; line-height: 1; }

@media all and (transform-3d), (-webkit-transform-3d) { .carousel-inner > .item { -webkit-transition: -webkit-transform 0.6s ease-in-out; -moz-transition: -moz-transform 0.6s ease-in-out; -o-transition: -o-transform 0.6s ease-in-out; transition: transform 0.6s ease-in-out; -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden; backface-visibility: hidden; -webkit-perspective: 1000px; -moz-perspective: 1000px; perspective: 1000px; }
  .carousel-inner > .item.next, .carousel-inner > .item.active.right { -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); left: 0; }
  .carousel-inner > .item.prev, .carousel-inner > .item.active.left { -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); left: 0; }
  .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); left: 0; } }

.carousel-inner > .active, .carousel-inner > .next, .carousel-inner > .prev { display: block; }

.carousel-inner > .active { left: 0; }

.carousel-inner > .next, .carousel-inner > .prev { position: absolute; top: 0; width: 100%; }

.carousel-inner > .next { left: 100%; }

.carousel-inner > .prev { left: -100%; }

.carousel-inner > .next.left, .carousel-inner > .prev.right { left: 0; }

.carousel-inner > .active.left { left: -100%; }

.carousel-inner > .active.right { left: 100%; }

.carousel-control { position: absolute; top: 0; left: 0; bottom: 0; width: 15%; opacity: 0.5; filter: alpha(opacity=50); font-size: 20px; color: #fff; text-align: center; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); background-color: rgba(0, 0, 0, 0); }

.carousel-control.left { background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); }

.carousel-control.right { left: auto; right: 0; background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); }

.carousel-control:hover, .carousel-control:focus { outline: 0; color: #fff; text-decoration: none; opacity: 0.9; filter: alpha(opacity=90); }

.carousel-control .icon-prev, .carousel-control .icon-next, .carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right { position: absolute; top: 50%; margin-top: -10px; z-index: 5; display: inline-block; }

.carousel-control .icon-prev, .carousel-control .glyphicon-chevron-left { left: 50%; margin-left: -10px; }

.carousel-control .icon-next, .carousel-control .glyphicon-chevron-right { right: 50%; margin-right: -10px; }

.carousel-control .icon-prev, .carousel-control .icon-next { width: 20px; height: 20px; line-height: 1; font-family: serif; }

.carousel-control .icon-prev:before { content: '\2039'; }

.carousel-control .icon-next:before { content: '\203a'; }

.carousel-indicators { position: absolute; bottom: 10px; left: 50%; z-index: 15; width: 60%; margin-left: -30%; padding-left: 0; list-style: none; text-align: center; }

.carousel-indicators li { display: inline-block; width: 10px; height: 10px; margin: 1px; text-indent: -999px; border: 1px solid #fff; border-radius: 10px; cursor: pointer; background-color: #000 \9; background-color: rgba(0, 0, 0, 0); }

.carousel-indicators .active { margin: 0; width: 12px; height: 12px; background-color: #fff; }

.carousel-caption { position: absolute; left: 15%; right: 15%; bottom: 20px; z-index: 10; padding-top: 20px; padding-bottom: 20px; color: #fff; text-align: center; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }

.carousel-caption .btn { text-shadow: none; }

@media screen and (min-width: 768px) { .carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right, .carousel-control .icon-prev, .carousel-control .icon-next { width: 30px; height: 30px; margin-top: -10px; font-size: 30px; }
  .carousel-control .glyphicon-chevron-left, .carousel-control .icon-prev { margin-left: -10px; }
  .carousel-control .glyphicon-chevron-right, .carousel-control .icon-next { margin-right: -10px; }
  .carousel-caption { left: 20%; right: 20%; padding-bottom: 30px; }
  .carousel-indicators { bottom: 20px; } }

.clearfix:before, .clearfix:after { content: " "; display: table; }

.clearfix:after { clear: both; }

.center-block { display: block; margin-left: auto; margin-right: auto; }

.pull-right { float: right !important; }

.pull-left { float: left !important; }

.hide { display: none !important; }

.show { display: block !important; }

.invisible { visibility: hidden; }

.text-hide { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0; }

.hidden { display: none !important; }

.affix { position: fixed; }

@-ms-viewport { width: device-width; }

.visible-xs { display: none !important; }

.visible-sm { display: none !important; }

.visible-md { display: none !important; }

.visible-lg { display: none !important; }

.visible-xs-block, .visible-xs-inline, .visible-xs-inline-block, .visible-sm-block, .visible-sm-inline, .visible-sm-inline-block, .visible-md-block, .visible-md-inline, .visible-md-inline-block, .visible-lg-block, .visible-lg-inline, .visible-lg-inline-block { display: none !important; }

@media (max-width: 767px) { .visible-xs { display: block !important; }
  table.visible-xs { display: table !important; }
  tr.visible-xs { display: table-row !important; }
  th.visible-xs, td.visible-xs { display: table-cell !important; } }

@media (max-width: 767px) { .visible-xs-block { display: block !important; } }

@media (max-width: 767px) { .visible-xs-inline { display: inline !important; } }

@media (max-width: 767px) { .visible-xs-inline-block { display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) { .visible-sm { display: block !important; }
  table.visible-sm { display: table !important; }
  tr.visible-sm { display: table-row !important; }
  th.visible-sm, td.visible-sm { display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) { .visible-sm-block { display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) { .visible-sm-inline { display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) { .visible-sm-inline-block { display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1199px) { .visible-md { display: block !important; }
  table.visible-md { display: table !important; }
  tr.visible-md { display: table-row !important; }
  th.visible-md, td.visible-md { display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1199px) { .visible-md-block { display: block !important; } }

@media (min-width: 992px) and (max-width: 1199px) { .visible-md-inline { display: inline !important; } }

@media (min-width: 992px) and (max-width: 1199px) { .visible-md-inline-block { display: inline-block !important; } }

@media (min-width: 1200px) { .visible-lg { display: block !important; }
  table.visible-lg { display: table !important; }
  tr.visible-lg { display: table-row !important; }
  th.visible-lg, td.visible-lg { display: table-cell !important; } }

@media (min-width: 1200px) { .visible-lg-block { display: block !important; } }

@media (min-width: 1200px) { .visible-lg-inline { display: inline !important; } }

@media (min-width: 1200px) { .visible-lg-inline-block { display: inline-block !important; } }

@media (max-width: 767px) { .hidden-xs { display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) { .hidden-sm { display: none !important; } }

@media (min-width: 992px) and (max-width: 1199px) { .hidden-md { display: none !important; } }

@media (min-width: 1200px) { .hidden-lg { display: none !important; } }

.visible-print { display: none !important; }

@media print { .visible-print { display: block !important; }
  table.visible-print { display: table !important; }
  tr.visible-print { display: table-row !important; }
  th.visible-print, td.visible-print { display: table-cell !important; } }

.visible-print-block { display: none !important; }

@media print { .visible-print-block { display: block !important; } }

.visible-print-inline { display: none !important; }

@media print { .visible-print-inline { display: inline !important; } }

.visible-print-inline-block { display: none !important; }

@media print { .visible-print-inline-block { display: inline-block !important; } }

@media print { .hidden-print { display: none !important; } }

/**  Import Hover CSS */
/*! Hover.css (http://ianlunn.github.io/Hover/) Version: 2.1.1 Author: Ian Lunn @IanLunn Author URL: http://ianlunn.co.uk/ Github: https://github.com/IanLunn/Hover Made available under a MIT License: http://www.opensource.org/licenses/mit-license.php Hover.css Copyright Ian Lunn 2014. Generated with Sass. */
/* Glow */
/* 2D TRANSITIONS */
/* Grow */
.hvr-grow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-grow:hover, .hvr-grow:focus, .hvr-grow:active { -webkit-transform: scale(1.1); transform: scale(1.1); }

/* Shrink */
.hvr-shrink { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-shrink:hover, .hvr-shrink:focus, .hvr-shrink:active { -webkit-transform: scale(0.9); transform: scale(0.9); }

/* Pulse */
@-webkit-keyframes hvr-pulse { 25% { -webkit-transform: scale(1.1);
    transform: scale(1.1); }
  75% { -webkit-transform: scale(0.9);
    transform: scale(0.9); } }

@keyframes hvr-pulse { 25% { -webkit-transform: scale(1.1);
    transform: scale(1.1); }
  75% { -webkit-transform: scale(0.9);
    transform: scale(0.9); } }

.hvr-pulse { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-pulse:hover, .hvr-pulse:focus, .hvr-pulse:active { -webkit-animation-name: hvr-pulse; animation-name: hvr-pulse; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }

/* Pulse Grow */
@-webkit-keyframes hvr-pulse-grow { to { -webkit-transform: scale(1.1);
    transform: scale(1.1); } }

@keyframes hvr-pulse-grow { to { -webkit-transform: scale(1.1);
    transform: scale(1.1); } }

.hvr-pulse-grow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-pulse-grow:hover, .hvr-pulse-grow:focus, .hvr-pulse-grow:active { -webkit-animation-name: hvr-pulse-grow; animation-name: hvr-pulse-grow; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; -webkit-animation-direction: alternate; animation-direction: alternate; }

/* Pulse Shrink */
@-webkit-keyframes hvr-pulse-shrink { to { -webkit-transform: scale(0.9);
    transform: scale(0.9); } }

@keyframes hvr-pulse-shrink { to { -webkit-transform: scale(0.9);
    transform: scale(0.9); } }

.hvr-pulse-shrink { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-pulse-shrink:hover, .hvr-pulse-shrink:focus, .hvr-pulse-shrink:active { -webkit-animation-name: hvr-pulse-shrink; animation-name: hvr-pulse-shrink; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; -webkit-animation-direction: alternate; animation-direction: alternate; }

/* Push */
@-webkit-keyframes hvr-push { 50% { -webkit-transform: scale(0.8);
    transform: scale(0.8); }
  100% { -webkit-transform: scale(1);
    transform: scale(1); } }

@keyframes hvr-push { 50% { -webkit-transform: scale(0.8);
    transform: scale(0.8); }
  100% { -webkit-transform: scale(1);
    transform: scale(1); } }

.hvr-push { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-push:hover, .hvr-push:focus, .hvr-push:active { -webkit-animation-name: hvr-push; animation-name: hvr-push; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Pop */
@-webkit-keyframes hvr-pop { 50% { -webkit-transform: scale(1.2);
    transform: scale(1.2); } }

@keyframes hvr-pop { 50% { -webkit-transform: scale(1.2);
    transform: scale(1.2); } }

.hvr-pop { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-pop:hover, .hvr-pop:focus, .hvr-pop:active { -webkit-animation-name: hvr-pop; animation-name: hvr-pop; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Bounce In */
.hvr-bounce-in { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.5s; transition-duration: 0.5s; }

.hvr-bounce-in:hover, .hvr-bounce-in:focus, .hvr-bounce-in:active { -webkit-transform: scale(1.2); transform: scale(1.2); -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); }

/* Bounce Out */
.hvr-bounce-out { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.5s; transition-duration: 0.5s; }

.hvr-bounce-out:hover, .hvr-bounce-out:focus, .hvr-bounce-out:active { -webkit-transform: scale(0.8); transform: scale(0.8); -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); }

/* Rotate */
.hvr-rotate { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-rotate:hover, .hvr-rotate:focus, .hvr-rotate:active { -webkit-transform: rotate(4deg); transform: rotate(4deg); }

/* Grow Rotate */
.hvr-grow-rotate { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-grow-rotate:hover, .hvr-grow-rotate:focus, .hvr-grow-rotate:active { -webkit-transform: scale(1.1) rotate(4deg); transform: scale(1.1) rotate(4deg); }

/* Float */
.hvr-float { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-float:hover, .hvr-float:focus, .hvr-float:active { -webkit-transform: translateY(-8px); transform: translateY(-8px); }

/* Sink */
.hvr-sink { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-sink:hover, .hvr-sink:focus, .hvr-sink:active { -webkit-transform: translateY(8px); transform: translateY(8px); }

/* Bob */
@-webkit-keyframes hvr-bob { 0% { -webkit-transform: translateY(-8px);
    transform: translateY(-8px); }
  50% { -webkit-transform: translateY(-4px);
    transform: translateY(-4px); }
  100% { -webkit-transform: translateY(-8px);
    transform: translateY(-8px); } }

@keyframes hvr-bob { 0% { -webkit-transform: translateY(-8px);
    transform: translateY(-8px); }
  50% { -webkit-transform: translateY(-4px);
    transform: translateY(-4px); }
  100% { -webkit-transform: translateY(-8px);
    transform: translateY(-8px); } }

@-webkit-keyframes hvr-bob-float { 100% { -webkit-transform: translateY(-8px);
    transform: translateY(-8px); } }

@keyframes hvr-bob-float { 100% { -webkit-transform: translateY(-8px);
    transform: translateY(-8px); } }

.hvr-bob { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-bob:hover, .hvr-bob:focus, .hvr-bob:active { -webkit-animation-name: hvr-bob-float, hvr-bob; animation-name: hvr-bob-float, hvr-bob; -webkit-animation-duration: .3s, 1.5s; animation-duration: .3s, 1.5s; -webkit-animation-delay: 0s, .3s; animation-delay: 0s, .3s; -webkit-animation-timing-function: ease-out, ease-in-out; animation-timing-function: ease-out, ease-in-out; -webkit-animation-iteration-count: 1, infinite; animation-iteration-count: 1, infinite; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-animation-direction: normal, alternate; animation-direction: normal, alternate; }

/* Hang */
@-webkit-keyframes hvr-hang { 0% { -webkit-transform: translateY(8px);
    transform: translateY(8px); }
  50% { -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  100% { -webkit-transform: translateY(8px);
    transform: translateY(8px); } }

@keyframes hvr-hang { 0% { -webkit-transform: translateY(8px);
    transform: translateY(8px); }
  50% { -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  100% { -webkit-transform: translateY(8px);
    transform: translateY(8px); } }

@-webkit-keyframes hvr-hang-sink { 100% { -webkit-transform: translateY(8px);
    transform: translateY(8px); } }

@keyframes hvr-hang-sink { 100% { -webkit-transform: translateY(8px);
    transform: translateY(8px); } }

.hvr-hang { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-hang:hover, .hvr-hang:focus, .hvr-hang:active { -webkit-animation-name: hvr-hang-sink, hvr-hang; animation-name: hvr-hang-sink, hvr-hang; -webkit-animation-duration: .3s, 1.5s; animation-duration: .3s, 1.5s; -webkit-animation-delay: 0s, .3s; animation-delay: 0s, .3s; -webkit-animation-timing-function: ease-out, ease-in-out; animation-timing-function: ease-out, ease-in-out; -webkit-animation-iteration-count: 1, infinite; animation-iteration-count: 1, infinite; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-animation-direction: normal, alternate; animation-direction: normal, alternate; }

/* Skew */
.hvr-skew { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-skew:hover, .hvr-skew:focus, .hvr-skew:active { -webkit-transform: skew(-10deg); transform: skew(-10deg); }

/* Skew Forward */
.hvr-skew-forward { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transform-origin: 0 100%; transform-origin: 0 100%; }

.hvr-skew-forward:hover, .hvr-skew-forward:focus, .hvr-skew-forward:active { -webkit-transform: skew(-10deg); transform: skew(-10deg); }

/* Skew Backward */
.hvr-skew-backward { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transform-origin: 0 100%; transform-origin: 0 100%; }

.hvr-skew-backward:hover, .hvr-skew-backward:focus, .hvr-skew-backward:active { -webkit-transform: skew(10deg); transform: skew(10deg); }

/* Wobble Vertical */
@-webkit-keyframes hvr-wobble-vertical { 16.65% { -webkit-transform: translateY(8px);
    transform: translateY(8px); }
  33.3% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); }
  49.95% { -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  66.6% { -webkit-transform: translateY(-2px);
    transform: translateY(-2px); }
  83.25% { -webkit-transform: translateY(1px);
    transform: translateY(1px); }
  100% { -webkit-transform: translateY(0);
    transform: translateY(0); } }

@keyframes hvr-wobble-vertical { 16.65% { -webkit-transform: translateY(8px);
    transform: translateY(8px); }
  33.3% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); }
  49.95% { -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  66.6% { -webkit-transform: translateY(-2px);
    transform: translateY(-2px); }
  83.25% { -webkit-transform: translateY(1px);
    transform: translateY(1px); }
  100% { -webkit-transform: translateY(0);
    transform: translateY(0); } }

.hvr-wobble-vertical { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-wobble-vertical:hover, .hvr-wobble-vertical:focus, .hvr-wobble-vertical:active { -webkit-animation-name: hvr-wobble-vertical; animation-name: hvr-wobble-vertical; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Wobble Horizontal */
@-webkit-keyframes hvr-wobble-horizontal { 16.65% { -webkit-transform: translateX(8px);
    transform: translateX(8px); }
  33.3% { -webkit-transform: translateX(-6px);
    transform: translateX(-6px); }
  49.95% { -webkit-transform: translateX(4px);
    transform: translateX(4px); }
  66.6% { -webkit-transform: translateX(-2px);
    transform: translateX(-2px); }
  83.25% { -webkit-transform: translateX(1px);
    transform: translateX(1px); }
  100% { -webkit-transform: translateX(0);
    transform: translateX(0); } }

@keyframes hvr-wobble-horizontal { 16.65% { -webkit-transform: translateX(8px);
    transform: translateX(8px); }
  33.3% { -webkit-transform: translateX(-6px);
    transform: translateX(-6px); }
  49.95% { -webkit-transform: translateX(4px);
    transform: translateX(4px); }
  66.6% { -webkit-transform: translateX(-2px);
    transform: translateX(-2px); }
  83.25% { -webkit-transform: translateX(1px);
    transform: translateX(1px); }
  100% { -webkit-transform: translateX(0);
    transform: translateX(0); } }

.hvr-wobble-horizontal { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-wobble-horizontal:hover, .hvr-wobble-horizontal:focus, .hvr-wobble-horizontal:active { -webkit-animation-name: hvr-wobble-horizontal; animation-name: hvr-wobble-horizontal; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Wobble To Bottom Right */
@-webkit-keyframes hvr-wobble-to-bottom-right { 16.65% { -webkit-transform: translate(8px, 8px);
    transform: translate(8px, 8px); }
  33.3% { -webkit-transform: translate(-6px, -6px);
    transform: translate(-6px, -6px); }
  49.95% { -webkit-transform: translate(4px, 4px);
    transform: translate(4px, 4px); }
  66.6% { -webkit-transform: translate(-2px, -2px);
    transform: translate(-2px, -2px); }
  83.25% { -webkit-transform: translate(1px, 1px);
    transform: translate(1px, 1px); }
  100% { -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }

@keyframes hvr-wobble-to-bottom-right { 16.65% { -webkit-transform: translate(8px, 8px);
    transform: translate(8px, 8px); }
  33.3% { -webkit-transform: translate(-6px, -6px);
    transform: translate(-6px, -6px); }
  49.95% { -webkit-transform: translate(4px, 4px);
    transform: translate(4px, 4px); }
  66.6% { -webkit-transform: translate(-2px, -2px);
    transform: translate(-2px, -2px); }
  83.25% { -webkit-transform: translate(1px, 1px);
    transform: translate(1px, 1px); }
  100% { -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }

.hvr-wobble-to-bottom-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-wobble-to-bottom-right:hover, .hvr-wobble-to-bottom-right:focus, .hvr-wobble-to-bottom-right:active { -webkit-animation-name: hvr-wobble-to-bottom-right; animation-name: hvr-wobble-to-bottom-right; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Wobble To Top Right */
@-webkit-keyframes hvr-wobble-to-top-right { 16.65% { -webkit-transform: translate(8px, -8px);
    transform: translate(8px, -8px); }
  33.3% { -webkit-transform: translate(-6px, 6px);
    transform: translate(-6px, 6px); }
  49.95% { -webkit-transform: translate(4px, -4px);
    transform: translate(4px, -4px); }
  66.6% { -webkit-transform: translate(-2px, 2px);
    transform: translate(-2px, 2px); }
  83.25% { -webkit-transform: translate(1px, -1px);
    transform: translate(1px, -1px); }
  100% { -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }

@keyframes hvr-wobble-to-top-right { 16.65% { -webkit-transform: translate(8px, -8px);
    transform: translate(8px, -8px); }
  33.3% { -webkit-transform: translate(-6px, 6px);
    transform: translate(-6px, 6px); }
  49.95% { -webkit-transform: translate(4px, -4px);
    transform: translate(4px, -4px); }
  66.6% { -webkit-transform: translate(-2px, 2px);
    transform: translate(-2px, 2px); }
  83.25% { -webkit-transform: translate(1px, -1px);
    transform: translate(1px, -1px); }
  100% { -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }

.hvr-wobble-to-top-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-wobble-to-top-right:hover, .hvr-wobble-to-top-right:focus, .hvr-wobble-to-top-right:active { -webkit-animation-name: hvr-wobble-to-top-right; animation-name: hvr-wobble-to-top-right; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Wobble Top */
@-webkit-keyframes hvr-wobble-top { 16.65% { -webkit-transform: skew(-12deg);
    transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg);
    transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg);
    transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg);
    transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg);
    transform: skew(-2deg); }
  100% { -webkit-transform: skew(0);
    transform: skew(0); } }

@keyframes hvr-wobble-top { 16.65% { -webkit-transform: skew(-12deg);
    transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg);
    transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg);
    transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg);
    transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg);
    transform: skew(-2deg); }
  100% { -webkit-transform: skew(0);
    transform: skew(0); } }

.hvr-wobble-top { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transform-origin: 0 100%; transform-origin: 0 100%; }

.hvr-wobble-top:hover, .hvr-wobble-top:focus, .hvr-wobble-top:active { -webkit-animation-name: hvr-wobble-top; animation-name: hvr-wobble-top; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Wobble Bottom */
@-webkit-keyframes hvr-wobble-bottom { 16.65% { -webkit-transform: skew(-12deg);
    transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg);
    transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg);
    transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg);
    transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg);
    transform: skew(-2deg); }
  100% { -webkit-transform: skew(0);
    transform: skew(0); } }

@keyframes hvr-wobble-bottom { 16.65% { -webkit-transform: skew(-12deg);
    transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg);
    transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg);
    transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg);
    transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg);
    transform: skew(-2deg); }
  100% { -webkit-transform: skew(0);
    transform: skew(0); } }

.hvr-wobble-bottom { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transform-origin: 100% 0; transform-origin: 100% 0; }

.hvr-wobble-bottom:hover, .hvr-wobble-bottom:focus, .hvr-wobble-bottom:active { -webkit-animation-name: hvr-wobble-bottom; animation-name: hvr-wobble-bottom; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Wobble Skew */
@-webkit-keyframes hvr-wobble-skew { 16.65% { -webkit-transform: skew(-12deg);
    transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg);
    transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg);
    transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg);
    transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg);
    transform: skew(-2deg); }
  100% { -webkit-transform: skew(0);
    transform: skew(0); } }

@keyframes hvr-wobble-skew { 16.65% { -webkit-transform: skew(-12deg);
    transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg);
    transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg);
    transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg);
    transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg);
    transform: skew(-2deg); }
  100% { -webkit-transform: skew(0);
    transform: skew(0); } }

.hvr-wobble-skew { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-wobble-skew:hover, .hvr-wobble-skew:focus, .hvr-wobble-skew:active { -webkit-animation-name: hvr-wobble-skew; animation-name: hvr-wobble-skew; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Buzz */
@-webkit-keyframes hvr-buzz { 50% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  100% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); } }

@keyframes hvr-buzz { 50% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  100% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); } }

.hvr-buzz { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-buzz:hover, .hvr-buzz:focus, .hvr-buzz:active { -webkit-animation-name: hvr-buzz; animation-name: hvr-buzz; -webkit-animation-duration: 0.15s; animation-duration: 0.15s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }

/* Buzz Out */
@-webkit-keyframes hvr-buzz-out { 10% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  20% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); }
  30% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  40% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); }
  50% { -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg); }
  60% { -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg); }
  70% { -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg); }
  80% { -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg); }
  90% { -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0); }
  100% { -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0); } }

@keyframes hvr-buzz-out { 10% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  20% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); }
  30% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  40% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); }
  50% { -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg); }
  60% { -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg); }
  70% { -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg); }
  80% { -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg); }
  90% { -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0); }
  100% { -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0); } }

.hvr-buzz-out { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); }

.hvr-buzz-out:hover, .hvr-buzz-out:focus, .hvr-buzz-out:active { -webkit-animation-name: hvr-buzz-out; animation-name: hvr-buzz-out; -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Forward */
.hvr-forward { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-forward:hover, .hvr-forward:focus, .hvr-forward:active { -webkit-transform: translateX(8px); transform: translateX(8px); }

/* Backward */
.hvr-backward { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-backward:hover, .hvr-backward:focus, .hvr-backward:active { -webkit-transform: translateX(-8px); transform: translateX(-8px); }

/* BACKGROUND TRANSITIONS */
/* Fade */
.hvr-fade { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); overflow: hidden; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: color, background-color; transition-property: color, background-color; }

.hvr-fade:hover, .hvr-fade:focus, .hvr-fade:active { background-color: #2098D1; color: white; }

/* Back Pulse */
@-webkit-keyframes hvr-back-pulse { 50% { background-color: rgba(32, 152, 209, 0.75); } }

@keyframes hvr-back-pulse { 50% { background-color: rgba(32, 152, 209, 0.75); } }

.hvr-back-pulse { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); overflow: hidden; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; -webkit-transition-property: color, background-color; transition-property: color, background-color; }

.hvr-back-pulse:hover, .hvr-back-pulse:focus, .hvr-back-pulse:active { -webkit-animation-name: hvr-back-pulse; animation-name: hvr-back-pulse; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-delay: 0.5s; animation-delay: 0.5s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; background-color: #2098D1; background-color: #2098d1; color: white; }

/* Sweep To Right */
.hvr-sweep-to-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-sweep-to-right:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 0 50%; transform-origin: 0 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-sweep-to-right:hover, .hvr-sweep-to-right:focus, .hvr-sweep-to-right:active { color: white; }

.hvr-sweep-to-right:hover:before, .hvr-sweep-to-right:focus:before, .hvr-sweep-to-right:active:before { -webkit-transform: scaleX(1); transform: scaleX(1); }

/* Sweep To Left */
.hvr-sweep-to-left { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-sweep-to-left:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 100% 50%; transform-origin: 100% 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-sweep-to-left:hover, .hvr-sweep-to-left:focus, .hvr-sweep-to-left:active { color: white; }

.hvr-sweep-to-left:hover:before, .hvr-sweep-to-left:focus:before, .hvr-sweep-to-left:active:before { -webkit-transform: scaleX(1); transform: scaleX(1); }

/* Sweep To Bottom */
.hvr-sweep-to-bottom { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-sweep-to-bottom:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: 50% 0; transform-origin: 50% 0; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-sweep-to-bottom:hover, .hvr-sweep-to-bottom:focus, .hvr-sweep-to-bottom:active { color: white; }

.hvr-sweep-to-bottom:hover:before, .hvr-sweep-to-bottom:focus:before, .hvr-sweep-to-bottom:active:before { -webkit-transform: scaleY(1); transform: scaleY(1); }

/* Sweep To Top */
.hvr-sweep-to-top { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-sweep-to-top:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: 50% 100%; transform-origin: 50% 100%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-sweep-to-top:hover, .hvr-sweep-to-top:focus, .hvr-sweep-to-top:active { color: white; }

.hvr-sweep-to-top:hover:before, .hvr-sweep-to-top:focus:before, .hvr-sweep-to-top:active:before { -webkit-transform: scaleY(1); transform: scaleY(1); }

/* Bounce To Right */
.hvr-bounce-to-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; }

.hvr-bounce-to-right:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 0 50%; transform-origin: 0 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-bounce-to-right:hover, .hvr-bounce-to-right:focus, .hvr-bounce-to-right:active { color: white; }

.hvr-bounce-to-right:hover:before, .hvr-bounce-to-right:focus:before, .hvr-bounce-to-right:active:before { -webkit-transform: scaleX(1); transform: scaleX(1); -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Bounce To Left */
.hvr-bounce-to-left { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; }

.hvr-bounce-to-left:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 100% 50%; transform-origin: 100% 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-bounce-to-left:hover, .hvr-bounce-to-left:focus, .hvr-bounce-to-left:active { color: white; }

.hvr-bounce-to-left:hover:before, .hvr-bounce-to-left:focus:before, .hvr-bounce-to-left:active:before { -webkit-transform: scaleX(1); transform: scaleX(1); -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Bounce To Bottom */
.hvr-bounce-to-bottom { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; }

.hvr-bounce-to-bottom:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: 50% 0; transform-origin: 50% 0; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-bounce-to-bottom:hover, .hvr-bounce-to-bottom:focus, .hvr-bounce-to-bottom:active { color: white; }

.hvr-bounce-to-bottom:hover:before, .hvr-bounce-to-bottom:focus:before, .hvr-bounce-to-bottom:active:before { -webkit-transform: scaleY(1); transform: scaleY(1); -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Bounce To Top */
.hvr-bounce-to-top { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; }

.hvr-bounce-to-top:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: 50% 100%; transform-origin: 50% 100%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-bounce-to-top:hover, .hvr-bounce-to-top:focus, .hvr-bounce-to-top:active { color: white; }

.hvr-bounce-to-top:hover:before, .hvr-bounce-to-top:focus:before, .hvr-bounce-to-top:active:before { -webkit-transform: scaleY(1); transform: scaleY(1); -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Radial Out */
.hvr-radial-out { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; background: #e1e1e1; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-radial-out:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; border-radius: 100%; -webkit-transform: scale(0); transform: scale(0); -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-radial-out:hover, .hvr-radial-out:focus, .hvr-radial-out:active { color: white; }

.hvr-radial-out:hover:before, .hvr-radial-out:focus:before, .hvr-radial-out:active:before { -webkit-transform: scale(2); transform: scale(2); }

/* Radial In */
.hvr-radial-in { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; background: #2098D1; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-radial-in:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #e1e1e1; border-radius: 100%; -webkit-transform: scale(2); transform: scale(2); -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-radial-in:hover, .hvr-radial-in:focus, .hvr-radial-in:active { color: white; }

.hvr-radial-in:hover:before, .hvr-radial-in:focus:before, .hvr-radial-in:active:before { -webkit-transform: scale(0); transform: scale(0); }

/* Rectangle In */
.hvr-rectangle-in { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; background: #2098D1; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-rectangle-in:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #e1e1e1; -webkit-transform: scale(1); transform: scale(1); -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-rectangle-in:hover, .hvr-rectangle-in:focus, .hvr-rectangle-in:active { color: white; }

.hvr-rectangle-in:hover:before, .hvr-rectangle-in:focus:before, .hvr-rectangle-in:active:before { -webkit-transform: scale(0); transform: scale(0); }

/* Rectangle Out */
.hvr-rectangle-out { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; background: #e1e1e1; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-rectangle-out:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #2098D1; -webkit-transform: scale(0); transform: scale(0); -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-rectangle-out:hover, .hvr-rectangle-out:focus, .hvr-rectangle-out:active { color: white; }

.hvr-rectangle-out:hover:before, .hvr-rectangle-out:focus:before, .hvr-rectangle-out:active:before { -webkit-transform: scale(1); transform: scale(1); }

/* Shutter In Horizontal */
.hvr-shutter-in-horizontal { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; background: #2098D1; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-shutter-in-horizontal:before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: 0; right: 0; background: #e1e1e1; -webkit-transform: scaleX(1); transform: scaleX(1); -webkit-transform-origin: 50%; transform-origin: 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-shutter-in-horizontal:hover, .hvr-shutter-in-horizontal:focus, .hvr-shutter-in-horizontal:active { color: white; }

.hvr-shutter-in-horizontal:hover:before, .hvr-shutter-in-horizontal:focus:before, .hvr-shutter-in-horizontal:active:before { -webkit-transform: scaleX(0); transform: scaleX(0); }

/* Shutter Out Horizontal */
.hvr-shutter-out-horizontal { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; background: #e1e1e1; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-shutter-out-horizontal:before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: 0; right: 0; background: #2098D1; -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 50%; transform-origin: 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-shutter-out-horizontal:hover, .hvr-shutter-out-horizontal:focus, .hvr-shutter-out-horizontal:active { color: white; }

.hvr-shutter-out-horizontal:hover:before, .hvr-shutter-out-horizontal:focus:before, .hvr-shutter-out-horizontal:active:before { -webkit-transform: scaleX(1); transform: scaleX(1); }

/* Shutter In Vertical */
.hvr-shutter-in-vertical { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; background: #2098D1; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-shutter-in-vertical:before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: 0; right: 0; background: #e1e1e1; -webkit-transform: scaleY(1); transform: scaleY(1); -webkit-transform-origin: 50%; transform-origin: 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-shutter-in-vertical:hover, .hvr-shutter-in-vertical:focus, .hvr-shutter-in-vertical:active { color: white; }

.hvr-shutter-in-vertical:hover:before, .hvr-shutter-in-vertical:focus:before, .hvr-shutter-in-vertical:active:before { -webkit-transform: scaleY(0); transform: scaleY(0); }

/* Shutter Out Vertical */
.hvr-shutter-out-vertical { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; background: #e1e1e1; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-shutter-out-vertical:before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: 0; right: 0; background: #2098D1; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: 50%; transform-origin: 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-shutter-out-vertical:hover, .hvr-shutter-out-vertical:focus, .hvr-shutter-out-vertical:active { color: white; }

.hvr-shutter-out-vertical:hover:before, .hvr-shutter-out-vertical:focus:before, .hvr-shutter-out-vertical:active:before { -webkit-transform: scaleY(1); transform: scaleY(1); }

/* BORDER TRANSITIONS */
/* Border Fade */
.hvr-border-fade { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: box-shadow; transition-property: box-shadow; box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px rgba(0, 0, 0, 0); /* Hack to improve aliasing on mobile/tablet devices */ }

.hvr-border-fade:hover, .hvr-border-fade:focus, .hvr-border-fade:active { box-shadow: inset 0 0 0 4px #2098D1, 0 0 1px rgba(0, 0, 0, 0); /* Hack to improve aliasing on mobile/tablet devices */ }

/* Hollow */
.hvr-hollow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: background; transition-property: background; box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px rgba(0, 0, 0, 0); /* Hack to improve aliasing on mobile/tablet devices */ }

.hvr-hollow:hover, .hvr-hollow:focus, .hvr-hollow:active { background: none; }

/* Trim */
.hvr-trim { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-trim:before { content: ''; position: absolute; border: white solid 4px; top: 4px; left: 4px; right: 4px; bottom: 4px; opacity: 0; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: opacity; transition-property: opacity; }

.hvr-trim:hover:before, .hvr-trim:focus:before, .hvr-trim:active:before { opacity: 1; }

/* Ripple Out */
@-webkit-keyframes hvr-ripple-out { 100% { top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0; } }

@keyframes hvr-ripple-out { 100% { top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0; } }

.hvr-ripple-out { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-ripple-out:before { content: ''; position: absolute; border: #e1e1e1 solid 6px; top: 0; right: 0; bottom: 0; left: 0; -webkit-animation-duration: 1s; animation-duration: 1s; }

.hvr-ripple-out:hover:before, .hvr-ripple-out:focus:before, .hvr-ripple-out:active:before { -webkit-animation-name: hvr-ripple-out; animation-name: hvr-ripple-out; }

/* Ripple In */
@-webkit-keyframes hvr-ripple-in { 100% { top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1; } }

@keyframes hvr-ripple-in { 100% { top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1; } }

.hvr-ripple-in { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-ripple-in:before { content: ''; position: absolute; border: #e1e1e1 solid 4px; top: -12px; right: -12px; bottom: -12px; left: -12px; opacity: 0; -webkit-animation-duration: 1s; animation-duration: 1s; }

.hvr-ripple-in:hover:before, .hvr-ripple-in:focus:before, .hvr-ripple-in:active:before { -webkit-animation-name: hvr-ripple-in; animation-name: hvr-ripple-in; }

/* Outline Out */
.hvr-outline-out { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-outline-out:before { content: ''; position: absolute; border: #e1e1e1 solid 4px; top: 0; right: 0; bottom: 0; left: 0; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: top, right, bottom, left; transition-property: top, right, bottom, left; }

.hvr-outline-out:hover:before, .hvr-outline-out:focus:before, .hvr-outline-out:active:before { top: -8px; right: -8px; bottom: -8px; left: -8px; }

/* Outline In */
.hvr-outline-in { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-outline-in:before { pointer-events: none; content: ''; position: absolute; border: #e1e1e1 solid 4px; top: -16px; right: -16px; bottom: -16px; left: -16px; opacity: 0; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: top, right, bottom, left; transition-property: top, right, bottom, left; }

.hvr-outline-in:hover:before, .hvr-outline-in:focus:before, .hvr-outline-in:active:before { top: -8px; right: -8px; bottom: -8px; left: -8px; opacity: 1; }

/* Round Corners */
.hvr-round-corners { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: border-radius; transition-property: border-radius; }

.hvr-round-corners:hover, .hvr-round-corners:focus, .hvr-round-corners:active { border-radius: 1em; }

/* Underline From Left */
.hvr-underline-from-left { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-underline-from-left:before { content: ""; position: absolute; z-index: -1; left: 0; right: 100%; bottom: 0; background: #2098D1; height: 4px; -webkit-transition-property: right; transition-property: right; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-underline-from-left:hover:before, .hvr-underline-from-left:focus:before, .hvr-underline-from-left:active:before { right: 0; }

/* Underline From Center */
.hvr-underline-from-center { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-underline-from-center:before { content: ""; position: absolute; z-index: -1; left: 50%; right: 50%; bottom: 0; background: #2098D1; height: 4px; -webkit-transition-property: left, right; transition-property: left, right; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before { left: 0; right: 0; }

/* Underline From Right */
.hvr-underline-from-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-underline-from-right:before { content: ""; position: absolute; z-index: -1; left: 100%; right: 0; bottom: 0; background: #2098D1; height: 4px; -webkit-transition-property: left; transition-property: left; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-underline-from-right:hover:before, .hvr-underline-from-right:focus:before, .hvr-underline-from-right:active:before { left: 0; }

/* Overline From Left */
.hvr-overline-from-left { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-overline-from-left:before { content: ""; position: absolute; z-index: -1; left: 0; right: 100%; top: 0; background: #2098D1; height: 4px; -webkit-transition-property: right; transition-property: right; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-overline-from-left:hover:before, .hvr-overline-from-left:focus:before, .hvr-overline-from-left:active:before { right: 0; }

/* Overline From Center */
.hvr-overline-from-center { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-overline-from-center:before { content: ""; position: absolute; z-index: -1; left: 50%; right: 50%; top: 0; background: #2098D1; height: 4px; -webkit-transition-property: left, right; transition-property: left, right; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-overline-from-center:hover:before, .hvr-overline-from-center:focus:before, .hvr-overline-from-center:active:before { left: 0; right: 0; }

/* Overline From Right */
.hvr-overline-from-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-overline-from-right:before { content: ""; position: absolute; z-index: -1; left: 100%; right: 0; top: 0; background: #2098D1; height: 4px; -webkit-transition-property: left; transition-property: left; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-overline-from-right:hover:before, .hvr-overline-from-right:focus:before, .hvr-overline-from-right:active:before { left: 0; }

/* Reveal */
.hvr-reveal { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-reveal:before { content: ""; position: absolute; z-index: -1; left: 0; right: 0; top: 0; bottom: 0; border-color: #2098D1; border-style: solid; border-width: 0; -webkit-transition-property: border-width; transition-property: border-width; -webkit-transition-duration: 0.1s; transition-duration: 0.1s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-reveal:hover:before, .hvr-reveal:focus:before, .hvr-reveal:active:before { -webkit-transform: translateY(0); transform: translateY(0); border-width: 4px; }

/* Underline Reveal */
.hvr-underline-reveal { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-underline-reveal:before { content: ""; position: absolute; z-index: -1; left: 0; right: 0; bottom: 0; background: #2098D1; height: 4px; -webkit-transform: translateY(4px); transform: translateY(4px); -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-underline-reveal:hover:before, .hvr-underline-reveal:focus:before, .hvr-underline-reveal:active:before { -webkit-transform: translateY(0); transform: translateY(0); }

/* Overline Reveal */
.hvr-overline-reveal { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden; }

.hvr-overline-reveal:before { content: ""; position: absolute; z-index: -1; left: 0; right: 0; top: 0; background: #2098D1; height: 4px; -webkit-transform: translateY(-4px); transform: translateY(-4px); -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-overline-reveal:hover:before, .hvr-overline-reveal:focus:before, .hvr-overline-reveal:active:before { -webkit-transform: translateY(0); transform: translateY(0); }

/* SHADOW/GLOW TRANSITIONS */
/* Glow */
.hvr-glow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: box-shadow; transition-property: box-shadow; }

.hvr-glow:hover, .hvr-glow:focus, .hvr-glow:active { box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); }

/* Shadow */
.hvr-shadow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: box-shadow; transition-property: box-shadow; }

.hvr-shadow:hover, .hvr-shadow:focus, .hvr-shadow:active { box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5); }

/* Grow Shadow */
.hvr-grow-shadow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.1s; transition-duration: 0.1s; -webkit-transition-property: box-shadow, transform; transition-property: box-shadow, transform; }

.hvr-grow-shadow:hover, .hvr-grow-shadow:focus, .hvr-grow-shadow:active { box-shadow: 2px 2px 0px 2px rgba(0, 0, 0, 0.45); -webkit-transform: scale(1.01); transform: scale(1.01); }

/* Box Shadow Outset */
.hvr-box-shadow-outset { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: box-shadow; transition-property: box-shadow; }

.hvr-box-shadow-outset:hover, .hvr-box-shadow-outset:focus, .hvr-box-shadow-outset:active { box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.6); }

/* Box Shadow Inset */
.hvr-box-shadow-inset { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: box-shadow; transition-property: box-shadow; box-shadow: inset 0 0 0 rgba(0, 0, 0, 0.6), 0 0 1px rgba(0, 0, 0, 0); /* Hack to improve aliasing on mobile/tablet devices */ }

.hvr-box-shadow-inset:hover, .hvr-box-shadow-inset:focus, .hvr-box-shadow-inset:active { box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.6), 0 0 1px rgba(0, 0, 0, 0); /* Hack to improve aliasing on mobile/tablet devices */ }

/* Float Shadow */
.hvr-float-shadow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-float-shadow:before { pointer-events: none; position: absolute; z-index: -1; content: ''; top: 100%; left: 5%; height: 10px; width: 90%; opacity: 0; background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%); background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%); /* W3C */ -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform, opacity; transition-property: transform, opacity; }

.hvr-float-shadow:hover, .hvr-float-shadow:focus, .hvr-float-shadow:active { -webkit-transform: translateY(-5px); transform: translateY(-5px); /* move the element up by 5px */ }

.hvr-float-shadow:hover:before, .hvr-float-shadow:focus:before, .hvr-float-shadow:active:before { opacity: 1; -webkit-transform: translateY(5px); transform: translateY(5px); /* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */ }

/* Shadow Radial */
.hvr-shadow-radial { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-shadow-radial:before, .hvr-shadow-radial:after { pointer-events: none; position: absolute; content: ''; left: 0; width: 100%; box-sizing: border-box; background-repeat: no-repeat; height: 5px; opacity: 0; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: opacity; transition-property: opacity; }

.hvr-shadow-radial:before { bottom: 100%; background: -webkit-radial-gradient(50% 150%, ellipse, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%); background: radial-gradient(ellipse at 50% 150%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%); }

.hvr-shadow-radial:after { top: 100%; background: -webkit-radial-gradient(50% -50%, ellipse, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%); background: radial-gradient(ellipse at 50% -50%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%); }

.hvr-shadow-radial:hover:before, .hvr-shadow-radial:focus:before, .hvr-shadow-radial:active:before, .hvr-shadow-radial:hover:after, .hvr-shadow-radial:focus:after, .hvr-shadow-radial:active:after { opacity: 1; }

/* SPEECH BUBBLES */
/* Bubble Top */
.hvr-bubble-top { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-bubble-top:before { pointer-events: none; position: absolute; z-index: -1; content: ''; border-style: solid; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; left: calc(50% - 10px); top: 0; border-width: 0 10px 10px 10px; border-color: transparent transparent #e1e1e1 transparent; }

.hvr-bubble-top:hover:before, .hvr-bubble-top:focus:before, .hvr-bubble-top:active:before { -webkit-transform: translateY(-10px); transform: translateY(-10px); }

/* Bubble Right */
.hvr-bubble-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-bubble-right:before { pointer-events: none; position: absolute; z-index: -1; content: ''; border-style: solid; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; top: calc(50% - 10px); right: 0; border-width: 10px 0 10px 10px; border-color: transparent transparent transparent #e1e1e1; }

.hvr-bubble-right:hover:before, .hvr-bubble-right:focus:before, .hvr-bubble-right:active:before { -webkit-transform: translateX(10px); transform: translateX(10px); }

/* Bubble Bottom */
.hvr-bubble-bottom { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-bubble-bottom:before { pointer-events: none; position: absolute; z-index: -1; content: ''; border-style: solid; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; left: calc(50% - 10px); bottom: 0; border-width: 10px 10px 0 10px; border-color: #e1e1e1 transparent transparent transparent; }

.hvr-bubble-bottom:hover:before, .hvr-bubble-bottom:focus:before, .hvr-bubble-bottom:active:before { -webkit-transform: translateY(10px); transform: translateY(10px); }

/* Bubble Left */
.hvr-bubble-left { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-bubble-left:before { pointer-events: none; position: absolute; z-index: -1; content: ''; border-style: solid; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; top: calc(50% - 10px); left: 0; border-width: 10px 10px 10px 0; border-color: transparent #e1e1e1 transparent transparent; }

.hvr-bubble-left:hover:before, .hvr-bubble-left:focus:before, .hvr-bubble-left:active:before { -webkit-transform: translateX(-10px); transform: translateX(-10px); }

/* Bubble Float Top */
.hvr-bubble-float-top { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-bubble-float-top:before { position: absolute; z-index: -1; content: ''; left: calc(50% - 10px); top: 0; border-style: solid; border-width: 0 10px 10px 10px; border-color: transparent transparent #e1e1e1 transparent; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-bubble-float-top:hover, .hvr-bubble-float-top:focus, .hvr-bubble-float-top:active { -webkit-transform: translateY(10px); transform: translateY(10px); }

.hvr-bubble-float-top:hover:before, .hvr-bubble-float-top:focus:before, .hvr-bubble-float-top:active:before { -webkit-transform: translateY(-10px); transform: translateY(-10px); }

/* Bubble Float Right */
.hvr-bubble-float-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-bubble-float-right:before { position: absolute; z-index: -1; top: calc(50% - 10px); right: 0; content: ''; border-style: solid; border-width: 10px 0 10px 10px; border-color: transparent transparent transparent #e1e1e1; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-bubble-float-right:hover, .hvr-bubble-float-right:focus, .hvr-bubble-float-right:active { -webkit-transform: translateX(-10px); transform: translateX(-10px); }

.hvr-bubble-float-right:hover:before, .hvr-bubble-float-right:focus:before, .hvr-bubble-float-right:active:before { -webkit-transform: translateX(10px); transform: translateX(10px); }

/* Bubble Float Bottom */
.hvr-bubble-float-bottom { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-bubble-float-bottom:before { position: absolute; z-index: -1; content: ''; left: calc(50% - 10px); bottom: 0; border-style: solid; border-width: 10px 10px 0 10px; border-color: #e1e1e1 transparent transparent transparent; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-bubble-float-bottom:hover, .hvr-bubble-float-bottom:focus, .hvr-bubble-float-bottom:active { -webkit-transform: translateY(-10px); transform: translateY(-10px); }

.hvr-bubble-float-bottom:hover:before, .hvr-bubble-float-bottom:focus:before, .hvr-bubble-float-bottom:active:before { -webkit-transform: translateY(10px); transform: translateY(10px); }

/* Bubble Float Left */
.hvr-bubble-float-left { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-bubble-float-left:before { position: absolute; z-index: -1; content: ''; top: calc(50% - 10px); left: 0; border-style: solid; border-width: 10px 10px 10px 0; border-color: transparent #e1e1e1 transparent transparent; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; }

.hvr-bubble-float-left:hover, .hvr-bubble-float-left:focus, .hvr-bubble-float-left:active { -webkit-transform: translateX(10px); transform: translateX(10px); }

.hvr-bubble-float-left:hover:before, .hvr-bubble-float-left:focus:before, .hvr-bubble-float-left:active:before { -webkit-transform: translateX(-10px); transform: translateX(-10px); }

/* ICONS */
/* Icon Back */
.hvr-icon-back { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-left: 2.2em; -webkit-transition-duration: 0.1s; transition-duration: 0.1s; }

.hvr-icon-back:before { content: "\f137"; position: absolute; left: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.1s; transition-duration: 0.1s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-back:hover:before, .hvr-icon-back:focus:before, .hvr-icon-back:active:before { -webkit-transform: translateX(-4px); transform: translateX(-4px); }

/* Icon Forward */
.hvr-icon-forward { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.1s; transition-duration: 0.1s; }

.hvr-icon-forward:before { content: "\f138"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.1s; transition-duration: 0.1s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-forward:hover:before, .hvr-icon-forward:focus:before, .hvr-icon-forward:active:before { -webkit-transform: translateX(4px); transform: translateX(4px); }

/* Icon Down */
@-webkit-keyframes hvr-icon-down { 0%, 50%, 100% { -webkit-transform: translateY(0);
    transform: translateY(0); }
  25%, 75% { -webkit-transform: translateY(6px);
    transform: translateY(6px); } }

@keyframes hvr-icon-down { 0%, 50%, 100% { -webkit-transform: translateY(0);
    transform: translateY(0); }
  25%, 75% { -webkit-transform: translateY(6px);
    transform: translateY(6px); } }

/* Icon Down */
.hvr-icon-down { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-down:before { content: "\f01a"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-down:hover:before, .hvr-icon-down:focus:before, .hvr-icon-down:active:before { -webkit-animation-name: hvr-icon-down; animation-name: hvr-icon-down; -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out; }

/* Icon Up */
@-webkit-keyframes hvr-icon-up { 0%, 50%, 100% { -webkit-transform: translateY(0);
    transform: translateY(0); }
  25%, 75% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); } }

@keyframes hvr-icon-up { 0%, 50%, 100% { -webkit-transform: translateY(0);
    transform: translateY(0); }
  25%, 75% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); } }

/* Icon Up */
.hvr-icon-up { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-up:before { content: "\f01b"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-up:hover:before, .hvr-icon-up:focus:before, .hvr-icon-up:active:before { -webkit-animation-name: hvr-icon-up; animation-name: hvr-icon-up; -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out; }

/* Icon Spin */
.hvr-icon-spin { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-spin:before { content: "\f021"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transition-duration: 1s; transition-duration: 1s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-in-out; transition-timing-function: ease-in-out; }

.hvr-icon-spin:hover:before, .hvr-icon-spin:focus:before, .hvr-icon-spin:active:before { -webkit-transform: rotate(360deg); transform: rotate(360deg); }

/* Icon Drop */
@-webkit-keyframes hvr-icon-drop { 0% { opacity: 0; }
  50% { opacity: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); }
  51%, 100% { opacity: 1; } }

@keyframes hvr-icon-drop { 0% { opacity: 0; }
  50% { opacity: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); }
  51%, 100% { opacity: 1; } }

/* Icon Drop */
.hvr-icon-drop { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-drop:before { content: "\f041"; position: absolute; right: 1em; opacity: 1; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-drop:hover:before, .hvr-icon-drop:focus:before, .hvr-icon-drop:active:before { opacity: 0; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-animation-name: hvr-icon-drop; animation-name: hvr-icon-drop; -webkit-animation-duration: 0.5s; animation-duration: 0.5s; -webkit-animation-delay: 0.3s; animation-delay: 0.3s; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); animation-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Icon Fade */
.hvr-icon-fade { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-fade:before { content: "\f00c"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.5s; transition-duration: 0.5s; -webkit-transition-property: color; transition-property: color; }

.hvr-icon-fade:hover:before, .hvr-icon-fade:focus:before, .hvr-icon-fade:active:before { color: #0F9E5E; }

/* Icon Float Away */
@-webkit-keyframes hvr-icon-float-away { 0% { opacity: 1; }
  100% { opacity: 0;
    -webkit-transform: translateY(-1em);
    transform: translateY(-1em); } }

@keyframes hvr-icon-float-away { 0% { opacity: 1; }
  100% { opacity: 0;
    -webkit-transform: translateY(-1em);
    transform: translateY(-1em); } }

/* Icon Float Away */
.hvr-icon-float-away { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-float-away:before, .hvr-icon-float-away:after { content: "\f055"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; }

.hvr-icon-float-away:after { opacity: 0; -webkit-animation-duration: 0.5s; animation-duration: 0.5s; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; }

.hvr-icon-float-away:hover:after, .hvr-icon-float-away:focus:after, .hvr-icon-float-away:active:after { -webkit-animation-name: hvr-icon-float-away; animation-name: hvr-icon-float-away; -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out; }

/* Icon Sink Away */
@-webkit-keyframes hvr-icon-sink-away { 0% { opacity: 1; }
  100% { opacity: 0;
    -webkit-transform: translateY(1em);
    transform: translateY(1em); } }

@keyframes hvr-icon-sink-away { 0% { opacity: 1; }
  100% { opacity: 0;
    -webkit-transform: translateY(1em);
    transform: translateY(1em); } }

/* Icon Sink Away */
.hvr-icon-sink-away { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-sink-away:before, .hvr-icon-sink-away:after { content: "\f056"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-sink-away:after { opacity: 0; -webkit-animation-duration: 0.5s; animation-duration: 0.5s; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; }

.hvr-icon-sink-away:hover:after, .hvr-icon-sink-away:focus:after, .hvr-icon-sink-away:active:after { -webkit-animation-name: hvr-icon-sink-away; animation-name: hvr-icon-sink-away; -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out; }

/* Icon Grow */
.hvr-icon-grow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-grow:before { content: "\f118"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-grow:hover:before, .hvr-icon-grow:focus:before, .hvr-icon-grow:active:before { -webkit-transform: scale(1.3) translateZ(0); transform: scale(1.3) translateZ(0); }

/* Icon Shrink */
.hvr-icon-shrink { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-shrink:before { content: "\f119"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-shrink:hover:before, .hvr-icon-shrink:focus:before, .hvr-icon-shrink:active:before { -webkit-transform: scale(0.8); transform: scale(0.8); }

/* Icon Pulse */
@-webkit-keyframes hvr-icon-pulse { 25% { -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  75% { -webkit-transform: scale(0.8);
    transform: scale(0.8); } }

@keyframes hvr-icon-pulse { 25% { -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  75% { -webkit-transform: scale(0.8);
    transform: scale(0.8); } }

.hvr-icon-pulse { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-pulse:before { content: "\f015"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-pulse:hover:before, .hvr-icon-pulse:focus:before, .hvr-icon-pulse:active:before { -webkit-animation-name: hvr-icon-pulse; animation-name: hvr-icon-pulse; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }

/* Icon Pulse Grow */
@-webkit-keyframes hvr-icon-pulse-grow { to { -webkit-transform: scale(1.3);
    transform: scale(1.3); } }

@keyframes hvr-icon-pulse-grow { to { -webkit-transform: scale(1.3);
    transform: scale(1.3); } }

.hvr-icon-pulse-grow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-pulse-grow:before { content: "\f015"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-pulse-grow:hover:before, .hvr-icon-pulse-grow:focus:before, .hvr-icon-pulse-grow:active:before { -webkit-animation-name: hvr-icon-pulse-grow; animation-name: hvr-icon-pulse-grow; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; -webkit-animation-direction: alternate; animation-direction: alternate; }

/* Icon Pulse Shrink */
@-webkit-keyframes hvr-icon-pulse-shrink { to { -webkit-transform: scale(0.8);
    transform: scale(0.8); } }

@keyframes hvr-icon-pulse-shrink { to { -webkit-transform: scale(0.8);
    transform: scale(0.8); } }

.hvr-icon-pulse-shrink { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; }

.hvr-icon-pulse-shrink:before { content: "\f015"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-pulse-shrink:hover:before, .hvr-icon-pulse-shrink:focus:before, .hvr-icon-pulse-shrink:active:before { -webkit-animation-name: hvr-icon-pulse-shrink; animation-name: hvr-icon-pulse-shrink; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; -webkit-animation-direction: alternate; animation-direction: alternate; }

/* Icon Push */
@-webkit-keyframes hvr-icon-push { 50% { -webkit-transform: scale(0.5);
    transform: scale(0.5); } }

@keyframes hvr-icon-push { 50% { -webkit-transform: scale(0.5);
    transform: scale(0.5); } }

.hvr-icon-push { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-push:before { content: "\f006"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-push:hover:before, .hvr-icon-push:focus:before, .hvr-icon-push:active:before { -webkit-animation-name: hvr-icon-push; animation-name: hvr-icon-push; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Icon Pop */
@-webkit-keyframes hvr-icon-pop { 50% { -webkit-transform: scale(1.5);
    transform: scale(1.5); } }

@keyframes hvr-icon-pop { 50% { -webkit-transform: scale(1.5);
    transform: scale(1.5); } }

.hvr-icon-pop { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-pop:before { content: "\f005"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-pop:hover:before, .hvr-icon-pop:focus:before, .hvr-icon-pop:active:before { -webkit-animation-name: hvr-icon-pop; animation-name: hvr-icon-pop; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Icon Bounce */
.hvr-icon-bounce { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-bounce:before { content: "\f087"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-bounce:hover:before, .hvr-icon-bounce:focus:before, .hvr-icon-bounce:active:before { -webkit-transform: scale(1.5); transform: scale(1.5); -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); }

/* Icon Rotate */
.hvr-icon-rotate { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-rotate:before { content: "\f0c6"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-rotate:hover:before, .hvr-icon-rotate:focus:before, .hvr-icon-rotate:active:before { -webkit-transform: rotate(20deg); transform: rotate(20deg); }

/* Icon Grow Rotate */
.hvr-icon-grow-rotate { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-grow-rotate:before { content: "\f095"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-grow-rotate:hover:before, .hvr-icon-grow-rotate:focus:before, .hvr-icon-grow-rotate:active:before { -webkit-transform: scale(1.5) rotate(12deg); transform: scale(1.5) rotate(12deg); }

/* Icon Float */
.hvr-icon-float { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-float:before { content: "\f01b"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-float:hover:before, .hvr-icon-float:focus:before, .hvr-icon-float:active:before { -webkit-transform: translateY(-4px); transform: translateY(-4px); }

/* Icon Sink */
.hvr-icon-sink { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-sink:before { content: "\f01a"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.hvr-icon-sink:hover:before, .hvr-icon-sink:focus:before, .hvr-icon-sink:active:before { -webkit-transform: translateY(4px); transform: translateY(4px); }

/* Icon Bob */
@-webkit-keyframes hvr-icon-bob { 0% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); }
  50% { -webkit-transform: translateY(-2px);
    transform: translateY(-2px); }
  100% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); } }

@keyframes hvr-icon-bob { 0% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); }
  50% { -webkit-transform: translateY(-2px);
    transform: translateY(-2px); }
  100% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); } }

@-webkit-keyframes hvr-icon-bob-float { 100% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); } }

@keyframes hvr-icon-bob-float { 100% { -webkit-transform: translateY(-6px);
    transform: translateY(-6px); } }

.hvr-icon-bob { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-bob:before { content: "\f077"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-bob:hover:before, .hvr-icon-bob:focus:before, .hvr-icon-bob:active:before { -webkit-animation-name: hvr-icon-bob-float, hvr-icon-bob; animation-name: hvr-icon-bob-float, hvr-icon-bob; -webkit-animation-duration: .3s, 1.5s; animation-duration: .3s, 1.5s; -webkit-animation-delay: 0s, .3s; animation-delay: 0s, .3s; -webkit-animation-timing-function: ease-out, ease-in-out; animation-timing-function: ease-out, ease-in-out; -webkit-animation-iteration-count: 1, infinite; animation-iteration-count: 1, infinite; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-animation-direction: normal, alternate; animation-direction: normal, alternate; }

/* Icon Hang */
@-webkit-keyframes hvr-icon-hang { 0% { -webkit-transform: translateY(6px);
    transform: translateY(6px); }
  50% { -webkit-transform: translateY(2px);
    transform: translateY(2px); }
  100% { -webkit-transform: translateY(6px);
    transform: translateY(6px); } }

@keyframes hvr-icon-hang { 0% { -webkit-transform: translateY(6px);
    transform: translateY(6px); }
  50% { -webkit-transform: translateY(2px);
    transform: translateY(2px); }
  100% { -webkit-transform: translateY(6px);
    transform: translateY(6px); } }

@-webkit-keyframes hvr-icon-hang-sink { 100% { -webkit-transform: translateY(6px);
    transform: translateY(6px); } }

@keyframes hvr-icon-hang-sink { 100% { -webkit-transform: translateY(6px);
    transform: translateY(6px); } }

.hvr-icon-hang { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-hang:before { content: "\f078"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-hang:hover:before, .hvr-icon-hang:focus:before, .hvr-icon-hang:active:before { -webkit-animation-name: hvr-icon-hang-sink, hvr-icon-hang; animation-name: hvr-icon-hang-sink, hvr-icon-hang; -webkit-animation-duration: .3s, 1.5s; animation-duration: .3s, 1.5s; -webkit-animation-delay: 0s, .3s; animation-delay: 0s, .3s; -webkit-animation-timing-function: ease-out, ease-in-out; animation-timing-function: ease-out, ease-in-out; -webkit-animation-iteration-count: 1, infinite; animation-iteration-count: 1, infinite; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-animation-direction: normal, alternate; animation-direction: normal, alternate; }

/* Icon Wobble Horizontal */
@-webkit-keyframes hvr-icon-wobble-horizontal { 16.65% { -webkit-transform: translateX(6px);
    transform: translateX(6px); }
  33.3% { -webkit-transform: translateX(-5px);
    transform: translateX(-5px); }
  49.95% { -webkit-transform: translateX(4px);
    transform: translateX(4px); }
  66.6% { -webkit-transform: translateX(-2px);
    transform: translateX(-2px); }
  83.25% { -webkit-transform: translateX(1px);
    transform: translateX(1px); }
  100% { -webkit-transform: translateX(0);
    transform: translateX(0); } }

@keyframes hvr-icon-wobble-horizontal { 16.65% { -webkit-transform: translateX(6px);
    transform: translateX(6px); }
  33.3% { -webkit-transform: translateX(-5px);
    transform: translateX(-5px); }
  49.95% { -webkit-transform: translateX(4px);
    transform: translateX(4px); }
  66.6% { -webkit-transform: translateX(-2px);
    transform: translateX(-2px); }
  83.25% { -webkit-transform: translateX(1px);
    transform: translateX(1px); }
  100% { -webkit-transform: translateX(0);
    transform: translateX(0); } }

.hvr-icon-wobble-horizontal { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-wobble-horizontal:before { content: "\f061"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-wobble-horizontal:hover:before, .hvr-icon-wobble-horizontal:focus:before, .hvr-icon-wobble-horizontal:active:before { -webkit-animation-name: hvr-icon-wobble-horizontal; animation-name: hvr-icon-wobble-horizontal; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Icon Wobble Vertical */
@-webkit-keyframes hvr-icon-wobble-vertical { 16.65% { -webkit-transform: translateY(6px);
    transform: translateY(6px); }
  33.3% { -webkit-transform: translateY(-5px);
    transform: translateY(-5px); }
  49.95% { -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  66.6% { -webkit-transform: translateY(-2px);
    transform: translateY(-2px); }
  83.25% { -webkit-transform: translateY(1px);
    transform: translateY(1px); }
  100% { -webkit-transform: translateY(0);
    transform: translateY(0); } }

@keyframes hvr-icon-wobble-vertical { 16.65% { -webkit-transform: translateY(6px);
    transform: translateY(6px); }
  33.3% { -webkit-transform: translateY(-5px);
    transform: translateY(-5px); }
  49.95% { -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  66.6% { -webkit-transform: translateY(-2px);
    transform: translateY(-2px); }
  83.25% { -webkit-transform: translateY(1px);
    transform: translateY(1px); }
  100% { -webkit-transform: translateY(0);
    transform: translateY(0); } }

.hvr-icon-wobble-vertical { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-wobble-vertical:before { content: "\f062"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-wobble-vertical:hover:before, .hvr-icon-wobble-vertical:focus:before, .hvr-icon-wobble-vertical:active:before { -webkit-animation-name: hvr-icon-wobble-vertical; animation-name: hvr-icon-wobble-vertical; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* Icon Buzz */
@-webkit-keyframes hvr-icon-buzz { 50% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  100% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); } }

@keyframes hvr-icon-buzz { 50% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  100% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); } }

.hvr-icon-buzz { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-buzz:before { content: "\f017"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-buzz:hover:before, .hvr-icon-buzz:focus:before, .hvr-icon-buzz:active:before { -webkit-animation-name: hvr-icon-buzz; animation-name: hvr-icon-buzz; -webkit-animation-duration: 0.15s; animation-duration: 0.15s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }

/* Icon Buzz Out */
@-webkit-keyframes hvr-icon-buzz-out { 10% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  20% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); }
  30% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  40% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); }
  50% { -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg); }
  60% { -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg); }
  70% { -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg); }
  80% { -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg); }
  90% { -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0); }
  100% { -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0); } }

@keyframes hvr-icon-buzz-out { 10% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  20% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); }
  30% { -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg); }
  40% { -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg); }
  50% { -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg); }
  60% { -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg); }
  70% { -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg); }
  80% { -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg); }
  90% { -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0); }
  100% { -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0); } }

.hvr-icon-buzz-out { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; padding-right: 2.2em; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; }

.hvr-icon-buzz-out:before { content: "\f023"; position: absolute; right: 1em; padding: 0 1px; font-family: FontAwesome; -webkit-transform: translateZ(0); transform: translateZ(0); }

.hvr-icon-buzz-out:hover:before, .hvr-icon-buzz-out:focus:before, .hvr-icon-buzz-out:active:before { -webkit-animation-name: hvr-icon-buzz-out; animation-name: hvr-icon-buzz-out; -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }

/* CURLS */
/* Curl Top Left */
.hvr-curl-top-left { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-curl-top-left:before { pointer-events: none; position: absolute; content: ''; height: 0; width: 0; top: 0; left: 0; background: white; /* IE9 */ background: linear-gradient(135deg, white 45%, #aaa 50%, #ccc 56%, white 80%); filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff', endColorstr='#000000'); /*For IE7-8-9*/ z-index: 1000; box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: width, height; transition-property: width, height; }

.hvr-curl-top-left:hover:before, .hvr-curl-top-left:focus:before, .hvr-curl-top-left:active:before { width: 25px; height: 25px; }

/* Curl Top Right */
.hvr-curl-top-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-curl-top-right:before { pointer-events: none; position: absolute; content: ''; height: 0; width: 0; top: 0; right: 0; background: white; /* IE9 */ background: linear-gradient(225deg, white 45%, #aaa 50%, #ccc 56%, white 80%); box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.4); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: width, height; transition-property: width, height; }

.hvr-curl-top-right:hover:before, .hvr-curl-top-right:focus:before, .hvr-curl-top-right:active:before { width: 25px; height: 25px; }

/* Curl Bottom Right */
.hvr-curl-bottom-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-curl-bottom-right:before { pointer-events: none; position: absolute; content: ''; height: 0; width: 0; bottom: 0; right: 0; background: white; /* IE9 */ background: linear-gradient(315deg, white 45%, #aaa 50%, #ccc 56%, white 80%); box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.4); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: width, height; transition-property: width, height; }

.hvr-curl-bottom-right:hover:before, .hvr-curl-bottom-right:focus:before, .hvr-curl-bottom-right:active:before { width: 25px; height: 25px; }

/* Curl Bottom Left */
.hvr-curl-bottom-left { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

.hvr-curl-bottom-left:before { pointer-events: none; position: absolute; content: ''; height: 0; width: 0; bottom: 0; left: 0; background: white; /* IE9 */ background: linear-gradient(45deg, white 45%, #aaa 50%, #ccc 56%, white 80%); box-shadow: 1px -1px 1px rgba(0, 0, 0, 0.4); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: width, height; transition-property: width, height; }

.hvr-curl-bottom-left:hover:before, .hvr-curl-bottom-left:focus:before, .hvr-curl-bottom-left:active:before { width: 25px; height: 25px; }

/**Slick */
/* Slider */
.slick-loading .slick-list { background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face { font-family: "slick"; src: url("./fonts/slick.eot"); src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg"); font-weight: normal; font-style: normal; }

/* Arrows */
.slick-prev, .slick-next { position: absolute; display: block; height: 20px; width: 20px; line-height: 0px; font-size: 0px; cursor: pointer; background: transparent; color: transparent; top: 50%; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); padding: 0; border: none; outline: none; }

.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { outline: none; background: transparent; color: transparent; }

.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before { opacity: 1; }

.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: 0.25; }

.slick-prev:before, .slick-next:before { font-family: "slick"; font-size: 20px; line-height: 1; color: white; opacity: 0.75; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.slick-prev { left: -25px; }

[dir="rtl"] .slick-prev { left: auto; right: -25px; }

.slick-prev:before { content: "←"; }

[dir="rtl"] .slick-prev:before { content: "→"; }

.slick-next { right: -25px; }

[dir="rtl"] .slick-next { left: -25px; right: auto; }

.slick-next:before { content: "→"; }

[dir="rtl"] .slick-next:before { content: "←"; }

/* Dots */
.slick-dotted.slick-slider { margin-bottom: 30px; }

.slick-dots { position: absolute; bottom: -25px; list-style: none; display: block; text-align: center; padding: 0; margin: 0; width: 100%; }

.slick-dots li { position: relative; display: inline-block; height: 20px; width: 20px; margin: 0 5px; padding: 0; cursor: pointer; }

.slick-dots li button { border: 0; background: transparent; display: block; height: 20px; width: 20px; outline: none; line-height: 0px; font-size: 0px; color: transparent; padding: 5px; cursor: pointer; }

.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }

.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 1; }

.slick-dots li button:before { position: absolute; top: 0; left: 0; content: "•"; width: 20px; height: 20px; font-family: "slick"; font-size: 6px; line-height: 20px; text-align: center; color: black; opacity: 0.25; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.slick-dots li.slick-active button:before { color: black; opacity: 0.75; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvX2Jvb3RzdHJhcC5zY3NzIiwiX2N1c3RvbS12YXJpYWJsZXMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19oaWRlLXRleHQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19sYWJlbHMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNwb25zaXZlLXZpc2liaWxpdHkuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdmVuZG9yLXByZWZpeGVzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3BhbmVscy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX25hdi12ZXJ0aWNhbC1hbGlnbi5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbm9ybWFsaXplLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3ByaW50LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2dseXBoaWNvbnMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fc2NhZmZvbGRpbmcuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdHlwZS5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jb2RlLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2dyaWQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdGFibGVzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2J1dHRvbnMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY29tcG9uZW50LWFuaW1hdGlvbnMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2J1dHRvbi1ncm91cHMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9faW5wdXQtZ3JvdXBzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdnMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbmF2YmFyLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JyZWFkY3J1bWJzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFnZXIuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbGFiZWxzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JhZGdlcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19qdW1ib3Ryb24uc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdGh1bWJuYWlscy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19hbGVydHMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcHJvZ3Jlc3MtYmFycy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhbmVscy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Nsb3NlLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX21vZGFscy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BvcG92ZXJzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Nhcm91c2VsLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19yZXNwb25zaXZlLXV0aWxpdGllcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL19ob3Zlci5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL19vcHRpb25zLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvX21peGlucy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL19oYWNrcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX2dyb3cuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19zaHJpbmsuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19wdWxzZS5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX3B1bHNlLWdyb3cuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19wdWxzZS1zaHJpbmsuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19wdXNoLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fcG9wLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYm91bmNlLWluLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYm91bmNlLW91dC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX3JvdGF0ZS5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX2dyb3ctcm90YXRlLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fZmxvYXQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19zaW5rLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYm9iLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9faGFuZy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX3NrZXcuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19za2V3LWZvcndhcmQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19za2V3LWJhY2t3YXJkLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fd29iYmxlLXZlcnRpY2FsLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fd29iYmxlLWhvcml6b250YWwuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL193b2JibGUtdG8tYm90dG9tLXJpZ2h0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fd29iYmxlLXRvLXRvcC1yaWdodC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX3dvYmJsZS10b3Auc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL193b2JibGUtYm90dG9tLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fd29iYmxlLXNrZXcuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19idXp6LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYnV6ei1vdXQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19mb3J3YXJkLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYmFja3dhcmQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX2JhY2stcHVsc2Uuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX3N3ZWVwLXRvLXJpZ2h0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19zd2VlcC10by1sZWZ0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19zd2VlcC10by1ib3R0b20uc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX3N3ZWVwLXRvLXRvcC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fYm91bmNlLXRvLXJpZ2h0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19ib3VuY2UtdG8tbGVmdC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fYm91bmNlLXRvLWJvdHRvbS5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fYm91bmNlLXRvLXRvcC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fcmFkaWFsLW91dC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fcmFkaWFsLWluLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19yZWN0YW5nbGUtaW4uc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX3JlY3RhbmdsZS1vdXQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX3NodXR0ZXItaW4taG9yaXpvbnRhbC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fc2h1dHRlci1vdXQtaG9yaXpvbnRhbC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fc2h1dHRlci1pbi12ZXJ0aWNhbC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fc2h1dHRlci1vdXQtdmVydGljYWwuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fYm9yZGVyLWZhZGUuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9faG9sbG93LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX3RyaW0uc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fcmlwcGxlLW91dC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19yaXBwbGUtaW4uc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fb3V0bGluZS1vdXQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fb3V0bGluZS1pbi5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19yb3VuZC1jb3JuZXJzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX3VuZGVybGluZS1mcm9tLWxlZnQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fdW5kZXJsaW5lLWZyb20tY2VudGVyLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX3VuZGVybGluZS1mcm9tLXJpZ2h0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX292ZXJsaW5lLWZyb20tbGVmdC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19vdmVybGluZS1mcm9tLWNlbnRlci5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19vdmVybGluZS1mcm9tLXJpZ2h0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX3JldmVhbC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL191bmRlcmxpbmUtcmV2ZWFsLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX292ZXJsaW5lLXJldmVhbC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL19nbG93LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvX3NoYWRvdy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL19ncm93LXNoYWRvdy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL19ib3gtc2hhZG93LW91dHNldC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL19ib3gtc2hhZG93LWluc2V0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvX2Zsb2F0LXNoYWRvdy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL19zaGFkb3ctcmFkaWFsLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9fYnViYmxlLXRvcC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvX2J1YmJsZS1yaWdodC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvX2J1YmJsZS1ib3R0b20uc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL3NwZWVjaC1idWJibGVzL19idWJibGUtbGVmdC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvX2J1YmJsZS1mbG9hdC10b3Auc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL3NwZWVjaC1idWJibGVzL19idWJibGUtZmxvYXQtcmlnaHQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL3NwZWVjaC1idWJibGVzL19idWJibGUtZmxvYXQtYm90dG9tLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9fYnViYmxlLWZsb2F0LWxlZnQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLWJhY2suc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLWZvcndhcmQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLWRvd24uc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLXVwLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi1zcGluLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi1kcm9wLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi1mYWRlLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi1mbG9hdC1hd2F5LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi1zaW5rLWF3YXkuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLWdyb3cuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLXNocmluay5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvaWNvbnMvX2ljb24tcHVsc2Uuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLXB1bHNlLWdyb3cuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLXB1bHNlLXNocmluay5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvaWNvbnMvX2ljb24tcHVzaC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvaWNvbnMvX2ljb24tcG9wLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi1ib3VuY2Uuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLXJvdGF0ZS5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvaWNvbnMvX2ljb24tZ3Jvdy1yb3RhdGUuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLWZsb2F0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi1zaW5rLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi1ib2Iuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLWhhbmcuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLXdvYmJsZS1ob3Jpem9udGFsLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9pY29ucy9faWNvbi13b2JibGUtdmVydGljYWwuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLWJ1enouc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2ljb25zL19pY29uLWJ1enotb3V0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9jdXJscy9fY3VybC10b3AtbGVmdC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2VmZmVjdHMvY3VybHMvX2N1cmwtdG9wLXJpZ2h0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2hvdmVyL3Njc3MvZWZmZWN0cy9jdXJscy9fY3VybC1ib3R0b20tcmlnaHQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvaG92ZXIvc2Nzcy9lZmZlY3RzL2N1cmxzL19jdXJsLWJvdHRvbS1sZWZ0LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLXRoZW1lLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gY29tcGlsZUV4cGFuZGVkOiBGOlxcbWVsZXRlXFx0aGVtZXNcXHRhbG9uXFxhc3NldHNcXGNzc1xcJDEuY3NzXHJcblxyXG4vKiogMjAxNyBXYWtlIFRlY2huaWNhbCBDb21tdW5pdHkgQ29sbGVnZVxyXG4qICAgQXJjaGl0ZWN0ZWQgYnkgUGV0ZXIgVC4gR3JhYmVyLCBXZWIgUHJvZ3JhbW1lclxyXG4qICAgcHRncmFiZXJAd2FrZXRlY2guZWR1XHJcbiogICBmb3IgV2FrZSBUZWNoIElUU1xyXG4qIC8gIEphbnVhcnktRGVjZW1iZXIsIDIwMTdcclxuXHJcblxyXG4vKiogIEltcG9ydCBCb290c3RyYXAgRnJhbWV3b3JrICovXHJcbkBpbXBvcnQgXCJib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXBcIjtcclxuXHJcbi8qKiAgSW1wb3J0IEhvdmVyIENTUyAqL1xyXG5AaW1wb3J0IFwiYm93ZXJfY29tcG9uZW50cy9ob3Zlci9zY3NzL2hvdmVyXCI7XHJcblxyXG5cclxuLyoqU2xpY2sgKi9cclxuQGltcG9ydCBcImJvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2stdGhlbWVcIjtcclxuIiwiLyohXHJcbiAqIEJvb3RzdHJhcCB2My4zLjcgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKVxyXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE2IFR3aXR0ZXIsIEluYy5cclxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcclxuICovXHJcblxyXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXHJcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9jdXN0b20tdmFyaWFibGVzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvbWl4aW5zXCI7XHJcblxyXG4vLyBSZXNldCBhbmQgZGVwZW5kZW5jaWVzXHJcbkBpbXBvcnQgXCJib290c3RyYXAvbm9ybWFsaXplXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvcHJpbnRcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9nbHlwaGljb25zXCI7XHJcblxyXG4vLyBDb3JlIENTU1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3NjYWZmb2xkaW5nXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvdHlwZVwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NvZGVcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9ncmlkXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvdGFibGVzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvZm9ybXNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b25zXCI7XHJcblxyXG4vLyBDb21wb25lbnRzXHJcbkBpbXBvcnQgXCJib290c3RyYXAvY29tcG9uZW50LWFuaW1hdGlvbnNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9kcm9wZG93bnNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b24tZ3JvdXBzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvaW5wdXQtZ3JvdXBzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2c1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL25hdmJhclwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvcGFnaW5hdGlvblwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2VyXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvbGFiZWxzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvYmFkZ2VzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvanVtYm90cm9uXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvdGh1bWJuYWlsc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2FsZXJ0c1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Byb2dyZXNzLWJhcnNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2xpc3QtZ3JvdXBcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9wYW5lbHNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvd2VsbHNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9jbG9zZVwiO1xyXG5cclxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XHJcbkBpbXBvcnQgXCJib290c3RyYXAvbW9kYWxzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvdG9vbHRpcFwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BvcG92ZXJzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvY2Fyb3VzZWxcIjtcclxuXHJcbi8vIFV0aWxpdHkgY2xhc3Nlc1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3V0aWxpdGllc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtdXRpbGl0aWVzXCI7XHJcbiIsIi8vIEN1c3RvbSBWYXJpYWJsZXNcclxuLy8gVGhpcyB2YXJpYWJsZXMgZmlsZSBpcyB1c2VkIHRvIGdlbmVyYXRlIEJvb3RzdHJhcCBzdHlsZS5jc3NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vPT0gQ29sb3JzXHJcbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC9XVC5cclxuXHJcbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xyXG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcclxuJGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXHJcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMwJSkgIWRlZmF1bHQ7IC8vICM1NTVcclxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XHJcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxyXG5cclxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgZGFya2VuKCM0MjhiY2EsIDYuNSUpICFkZWZhdWx0OyAvLyAjMzM3YWI3XHJcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgIGRhcmtlbigjNWNiODVjLCAxNSUpICFkZWZhdWx0O1xyXG4kYnJhbmQtaW5mbzogICAgICAgICAgICBkYXJrZW4oIzViYzBkZSwgMjAlKSAhZGVmYXVsdDtcclxuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgZGFya2VuKCNmMGFkNGUsIDE1JSkgIWRlZmF1bHQ7XHJcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgIGRhcmtlbigjZDk1MzRmLCAxMCUpICFkZWZhdWx0O1xyXG4kYnJhbmQtY2F1dGlvbjogICAgICAgICBkYXJrZW4oI2ZhZDIwMCwgMjUlKSAhZGVmYXVsdDtcclxuXHJcblxyXG4kd3RQcmltYXJ5OiAgICAgICAjMDA1NTgxO1xyXG4kd3RQcmltYXJ5RGFyazogICAjMDA1NjdmO1xyXG4kd3RTZWNvbmRhcnk6ICAgICAjMjExNjUxO1xyXG4kd3RHb2xkOiAgICAgICAgICAjYzdiMDhkO1xyXG4kd3RHb2xkTGlnaHQ6ICAgICBsaWdodGVuKCR3dEdvbGQsIDIwJSk7XHJcbiR3dFN0ZWVsOiAgICAgICAgICMxNzM1NWQ7XHJcbiR3dEdyZXlMaWdodDogICAgICNmNmY2ZjY7XHJcbiR3dEdyZXlNZWRpdW06ICAgICM4ODg4ODg7XHJcblxyXG4kd3ROYXZCYXJHcmV5OiAgICAjNTM1MzRhICFkZWZhdWx0O1xyXG4kd3ROYXZCYXJQcmltYXJ5OiAjMDA1NDgwICFkZWZhdWx0O1xyXG5cclxuJHNlYXJjaElucHV0OiAgIGxpZ2h0ZW4oJHd0U3RlZWwsIDgwJSkgIWRlZmF1bHQ7XHJcblxyXG4vL05vdGlmaWNhdGlvbiBDb2xvcmluZ1xyXG4kZXJyb3JNc2dDb2xvcjogICNjYjA1MDU7XHJcbiRzdGF0dXNNc2dDb2xvcjogIzliZDI4NTtcclxuJHN0YXR1c1dhcm5pbmdDb2xvcjogI2U0ZjEwMDtcclxuXHJcbi8vPT0gU2NhZmZvbGRpbmdcclxuLy9cclxuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cclxuJGJvZHktYmc6ICAgICAgICAgICAgICNmOWZkZmYgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxyXG4kdGV4dC1jb2xvcjogICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuXHJcbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cclxuJGxpbmstY29sb3I6ICAgICAgICAgICR3dFByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxyXG4kbGluay1ob3Zlci1jb2xvcjogICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xyXG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cclxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xyXG5cclxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxyXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxyXG5cclxuXHJcbi8vIENvcmUgZm9udCBzaXppbmdcclxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNS41cHggIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoICRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcclxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCggJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxyXG5cclxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAyLjU3KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XHJcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHhcclxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjYxOCkpICFkZWZhdWx0OyAvLyB+MjRweFxyXG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIC42MTgpKSAhZGVmYXVsdDsgLy8gfjE4cHhcclxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxyXG5cclxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cclxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcclxuXHJcbi8vIENvcmUgdHlwZWZhY2VzIGFyZSBkZWZpbmVkIHZpYSBsaWJyYXJpZXMueW1sXHJcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJOdW5pdG8gU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxyXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcclxuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuXHJcbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cclxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA2MDAgIWRlZmF1bHQ7XHJcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xyXG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBDb21wb25lbnQgVHlwb2dyYXBoeS9TaXppbmdcclxuLy9cclxuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXHJcblxyXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xyXG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcclxuXHJcbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0O1xyXG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcclxuXHJcbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XHJcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xyXG5cclxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcclxuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcclxuXHJcbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxyXG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xyXG5cclxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcclxuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcclxuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XHJcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XHJcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XHJcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG4kaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAoZmxvb3IoJGZvbnQtc2l6ZS1zbWFsbCAqICRsaW5lLWhlaWdodC1zbWFsbCkgKyAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xyXG5cclxuXHJcblxyXG4vLz09IEljb25vZ3JhcGh5XHJcbi8vXHJcbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cclxuXHJcbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxyXG5cclxuJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XHJcbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxyXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxyXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXHJcbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XHJcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cclxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cclxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cclxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxyXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXHJcbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBUYWJsZXNcclxuLy9cclxuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXHJcblxyXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXHJcbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xyXG4vLyoqIFBhZGRpbmcgZm9yIGNlbGxzIGluIGAudGFibGUtY29uZGVuc2VkYC5cclxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBhbGwgdGFibGVzLlxyXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cclxuJHRhYmxlLWJnLWFjY2VudDogICAgICAgICAgICAgICAjZjlmOWY5ICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXHJcbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cclxuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcclxuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcclxuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcclxuXHJcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXHJcbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XHJcblxyXG4vLz09IEJ1dHRvbnNcclxuLy9cclxuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxyXG5cclxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbm9ybWFsICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcclxuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcclxuXHJcbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcclxuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XHJcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRidG4td2FybmluZy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xyXG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xyXG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYW5nZXItYmcsIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG5cclxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xyXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG4kYnRuLWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcclxuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBGb3Jtc1xyXG4vLyMjXHJcblxyXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcclxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcclxuXHJcbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxyXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuLy8gVGhpcyBoYXMgbm8gZWZmZWN0IG9uIGA8c2VsZWN0PmBzIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXHJcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XHJcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXHJcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyoqIGAuZm9ybS1ncm91cGAgbWFyZ2luXHJcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcblxyXG4kbGVnZW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xyXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcclxuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlciAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxyXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IERyb3Bkb3duc1xyXG4vL1xyXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cclxuXHJcbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXHJcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYC5cclxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xyXG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXHJcbiRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI6ICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cclxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcclxuXHJcbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxyXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG4vLyoqIEhvdmVyIGNvbG9yIGZvciBkcm9wZG93biBsaW5rcy5cclxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcclxuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cclxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxyXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXHJcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cclxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxyXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcclxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3RcclxuLy9cclxuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XHJcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cclxuLy9cclxuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXHJcblxyXG4kemluZGV4LW5hdmJhcjogICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xyXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xyXG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xyXG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xyXG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xyXG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xyXG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xyXG4vL1xyXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXHJcblxyXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcclxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xyXG5cclxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XHJcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XHJcblxyXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xyXG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcclxuXHJcbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcclxuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XHJcblxyXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cclxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcclxuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcclxuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEdyaWQgc3lzdGVtXHJcbi8vXHJcbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cclxuXHJcbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXHJcbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcclxuXHJcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXHJcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xyXG5cclxuLy8gTmF2YmFyIGNvbGxhcHNlXHJcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxyXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXHJcbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQ29udGFpbmVyIHNpemVzXHJcbi8vXHJcbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cclxuXHJcbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxyXG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcclxuLy8qKiBGb3IgYCRzY3JlZW4tc20tbWluYCBhbmQgdXAuXHJcbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcclxuXHJcbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXHJcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xyXG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cclxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcclxuXHJcbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxyXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKDExNDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cclxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IE5hdmJhclxyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcclxuJG5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XHJcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQgIWRlZmF1bHQ7XHJcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG4kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcclxuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XHJcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgNjAwcHggIWRlZmF1bHQ7XHJcblxyXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbi8vIE5hdmJhciBsaW5rc1xyXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbi8vIE5hdmJhciBicmFuZCBsYWJlbFxyXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcblxyXG4vLyBOYXZiYXIgdG9nZ2xlXHJcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PT0gSW52ZXJ0ZWQgbmF2YmFyXHJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcclxuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG5cclxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbigjZjNmM2YzLCAyNSUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxyXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcblxyXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXHJcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICNiZWEzNzcgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBOYXZzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXHJcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xyXG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4kbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG5cclxuLy89PSBUYWJzXHJcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuXHJcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuXHJcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XHJcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XHJcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgI2RkZCAhZGVmYXVsdDtcclxuXHJcbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICAkYm9keS1iZyAhZGVmYXVsdDtcclxuXHJcbi8vPT0gUGlsbHNcclxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gUGFnaW5hdGlvblxyXG4vL1xyXG4vLyMjXHJcblxyXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuXHJcbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG5cclxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBQYWdlclxyXG4vL1xyXG4vLyMjXHJcblxyXG4kcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcclxuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xyXG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG5cclxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XHJcblxyXG4kcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gSnVtYm90cm9uXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XHJcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XHJcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XHJcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplOiAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiA0LjUpKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcclxuLy9cclxuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cclxuXHJcbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XHJcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1zdWNjZXNzLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xyXG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xyXG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xyXG5cclxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcclxuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcclxuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFRvb2x0aXBzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcclxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XHJcbi8vKiogVG9vbHRpcCB0ZXh0IGNvbG9yXHJcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XHJcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBUb29sdGlwIGFycm93IHdpZHRoXHJcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcclxuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXHJcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gUG9wb3ZlcnNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxyXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogUG9wb3ZlciBtYXhpbXVtIHdpZHRoXHJcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XHJcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcclxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxyXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxyXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xyXG5cclxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXHJcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXHJcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXHJcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZV9pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIDAuMDUpICFkZWZhdWx0O1xyXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTGFiZWxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XHJcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xyXG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcclxuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcclxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IE1vZGFsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxyXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXHJcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcclxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXHJcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvclxyXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXHJcbiRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgICAgIzk5OSAhZGVmYXVsdDtcclxuXHJcbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxyXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcclxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XHJcbi8vKiogTW9kYWwgaGVhZGVyIGJvcmRlciBjb2xvclxyXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcclxuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XHJcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQWxlcnRzXHJcbi8vXHJcbi8vIyMgRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXHJcblxyXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xyXG5cclxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XHJcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XHJcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcclxuXHJcbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xyXG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xyXG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XHJcblxyXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcclxuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcclxuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xyXG5cclxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcclxuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xyXG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFByb2dyZXNzIGJhcnNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB3aG9sZSBwcm9ncmVzcyBjb21wb25lbnRcclxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXHJcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xyXG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xyXG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcclxuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IExpc3QgZ3JvdXBcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxyXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxyXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbi8vKiogTGlzdCBncm91cCBib3JkZXIgcmFkaXVzXHJcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBzaW5nbGUgbGlzdCBpdGVtcyBvbiBob3ZlclxyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuLy8qKiBCb3JkZXIgY29sb3Igb2YgYWN0aXZlIGxpc3QgZWxlbWVudHNcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcclxuXHJcbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXHJcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xyXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGRpc2FibGVkIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XHJcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gUGFuZWxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRwYW5lbC1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcclxuJHBhbmVsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgJHBhbmVsLWhlYWRpbmctcGFkZGluZyAhZGVmYXVsdDtcclxuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQm9yZGVyIGNvbG9yIGZvciBlbGVtZW50cyB3aXRoaW4gcGFuZWxzXHJcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbiRwYW5lbC1mb290ZXItYmc6ICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcblxyXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4kcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcclxuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xyXG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcclxuXHJcbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XHJcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcclxuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XHJcblxyXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xyXG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XHJcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xyXG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcclxuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFRodW1ibmFpbHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXHJcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcclxuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxyXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcclxuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXHJcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcclxuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xyXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcclxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cclxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gV2VsbHNcclxuLy9cclxuLy8jI1xyXG5cclxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBCYWRnZXNcclxuLy9cclxuLy8jI1xyXG5cclxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcclxuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcclxuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XHJcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XHJcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBCcmVhZGNydW1ic1xyXG4vL1xyXG4vLyMjXHJcblxyXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcclxuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xyXG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxyXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXHJcbiRicmVhZGNydW1iLWNvbG9yOiAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcclxuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxyXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcclxuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IENhcm91c2VsXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcclxuXHJcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQ2xvc2VcclxuLy9cclxuLy8jI1xyXG5cclxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcclxuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcclxuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQ29kZVxyXG4vL1xyXG4vLyMjXHJcblxyXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xyXG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xyXG5cclxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcclxuXHJcbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XHJcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gVHlwZVxyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXHJcbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xyXG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXHJcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXHJcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcclxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xyXG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXHJcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXHJcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xyXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xyXG4vLyoqIFBvaW50IGF0IHdoaWNoIC5kbC1ob3Jpem9udGFsIGJlY29tZXMgaG9yaXpvbnRhbFxyXG4kZGwtaG9yaXpvbnRhbC1icmVha3BvaW50OiAgICAkZ3JpZC1mbG9hdC1icmVha3BvaW50ICFkZWZhdWx0O1xyXG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cclxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuIiwiLy8gTWl4aW5zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBVdGlsaXRpZXNcclxuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcclxuQGltcG9ydCBcIm1peGlucy9vcGFjaXR5XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcclxuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcclxuQGltcG9ydCBcIm1peGlucy9yZXNldC1maWx0ZXJcIjtcclxuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcclxuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcclxuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcclxuQGltcG9ydCBcIm1peGlucy90ZXh0LW92ZXJmbG93XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XHJcblxyXG4vLyBDb21wb25lbnRzXHJcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3BhbmVsc1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcclxuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcclxuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3Byb2dyZXNzLWJhclwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xyXG5cclxuLy8gU2tpbnNcclxuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcclxuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XHJcblxyXG4vLyBMYXlvdXRcclxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2NlbnRlci1ibG9ja1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xyXG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcclxuLy9cclxuLy8gSGVhZHMgdXAhIHYzIGxhdW5jaGVkIHdpdGggb25seSBgLmhpZGUtdGV4dCgpYCwgYnV0IHBlciBvdXIgcGF0dGVybiBmb3JcclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXHJcbi8vIG9mIHYzLjAuMSB3ZSBoYXZlIGFkZGVkIGAudGV4dC1oaWRlKClgIGFuZCBkZXByZWNhdGVkIGAuaGlkZS10ZXh0KClgLlxyXG4vL1xyXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcclxuXHJcbi8vIERlcHJlY2F0ZWQgYXMgb2YgdjMuMC4xIChoYXMgYmVlbiByZW1vdmVkIGluIHY0KVxyXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xyXG4gIGZvbnQ6IDAvMCBhO1xyXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXHJcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XHJcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xyXG59XHJcbiIsIi8vIE9wYWNpdHlcclxuXHJcbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XHJcbiAgb3BhY2l0eTogJG9wYWNpdHk7XHJcbiAgLy8gSUU4IGZpbHRlclxyXG4gICRvcGFjaXR5LWllOiAoJG9wYWNpdHkgKiAxMDApO1xyXG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7XHJcbn1cclxuIiwiLy8gSW1hZ2UgTWl4aW5zXHJcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxyXG4vLyAtIFJldGluYSBpbWFnZVxyXG5cclxuXHJcbi8vIFJlc3BvbnNpdmUgaW1hZ2VcclxuLy9cclxuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cclxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xyXG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xyXG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcclxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXHJcbn1cclxuXHJcblxyXG4vLyBSZXRpbmEgaW1hZ2VcclxuLy9cclxuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXHJcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxyXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XHJcblxyXG4gIEBtZWRpYVxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XHJcbiAgfVxyXG59XHJcbiIsIi8vIExhYmVsc1xyXG5cclxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG5cclxuICAmW2hyZWZdIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcclxuLy9cclxuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XHJcbi8vIHRoZSBJRSBmaWx0ZXIgZm9yIElFOSBhbmQgYmVsb3cuXHJcblxyXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSk7XHJcbn1cclxuIiwiLy8gUmVzaXplIGFueXRoaW5nXHJcblxyXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcclxuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXHJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxyXG59XHJcbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXHJcblxyXG4vL1xyXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxyXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcclxuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgkcGFyZW50KSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxyXG4gIHRyI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxyXG4gIHRoI3skcGFyZW50fSxcclxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcbn1cclxuXHJcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xyXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJHBhcmVudCkge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXHJcblxyXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQpIHtcclxuICB3aWR0aDogJHdpZHRoO1xyXG4gIGhlaWdodDogJGhlaWdodDtcclxufVxyXG5cclxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xyXG4gIEBpbmNsdWRlIHNpemUoJHNpemUsICRzaXplKTtcclxufVxyXG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcclxuXHJcbkBtaXhpbiB0YWItZm9jdXMoKSB7XHJcbiAgLy8gV2ViS2l0LXNwZWNpZmljLiBPdGhlciBicm93c2VycyB3aWxsIGtlZXAgdGhlaXIgZGVmYXVsdCBvdXRsaW5lIHN0eWxlLlxyXG4gIC8vIChJbml0aWFsbHkgdHJpZWQgdG8gYWxzbyBmb3JjZSBkZWZhdWx0IHZpYSBgb3V0bGluZTogaW5pdGlhbGAsXHJcbiAgLy8gYnV0IHRoYXQgc2VlbXMgdG8gZXJyb25lb3VzbHkgcmVtb3ZlIHRoZSBvdXRsaW5lIGluIEZpcmVmb3ggYWx0b2dldGhlci4pXHJcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xyXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xyXG59XHJcbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZS5cclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGxpbmUtYnJlYWs6IGF1dG87XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcclxuICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICB3b3JkLWJyZWFrOiBub3JtYWw7XHJcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XHJcbiAgd29yZC13cmFwOiBub3JtYWw7XHJcbn1cclxuIiwiLy8gVHlwb2dyYXBoeVxyXG5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuICBhI3skcGFyZW50fTpob3ZlcixcclxuICBhI3skcGFyZW50fTpmb2N1cyB7XHJcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcclxuICB9XHJcbn1cclxuIiwiLy8gVGV4dCBvdmVyZmxvd1xyXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXHJcblxyXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuIiwiLy8gVmVuZG9yIFByZWZpeGVzXHJcbi8vXHJcbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxyXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2NC5cclxuXHJcbi8vIC0gQW5pbWF0aW9uc1xyXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcclxuLy8gLSBCb3ggc2hhZG93XHJcbi8vIC0gQm94IHNpemluZ1xyXG4vLyAtIENvbnRlbnQgY29sdW1uc1xyXG4vLyAtIEh5cGhlbnNcclxuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XHJcbi8vIC0gVHJhbnNmb3JtYXRpb25zXHJcbi8vIC0gVHJhbnNpdGlvbnNcclxuLy8gLSBVc2VyIFNlbGVjdFxyXG5cclxuXHJcbi8vIEFuaW1hdGlvbnNcclxuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9uKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XHJcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XHJcbiAgICAgICAgICBhbmltYXRpb246ICRhbmltYXRpb247XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJGl0ZXJhdGlvbi1jb3VudCkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XHJcbn1cclxuXHJcbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcclxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cclxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuYFxyXG5cclxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xyXG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XHJcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcclxufVxyXG5cclxuLy8gRHJvcCBzaGFkb3dzXHJcbi8vXHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3NcclxuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cclxuXHJcbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXHJcbiAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xyXG59XHJcblxyXG4vLyBCb3ggc2l6aW5nXHJcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xyXG4gICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xyXG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xyXG59XHJcblxyXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xyXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcclxuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcclxuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcclxuICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xyXG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XHJcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcclxufVxyXG5cclxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cclxuQG1peGluIGh5cGhlbnMoJG1vZGU6IGF1dG8pIHtcclxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcclxuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xyXG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXHJcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcclxuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xyXG59XHJcblxyXG4vLyBQbGFjZWhvbGRlciB0ZXh0XHJcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xyXG4gIC8vIEZpcmVmb3hcclxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxyXG4gIH1cclxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXHJcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXHJcbn1cclxuXHJcbi8vIFRyYW5zZm9ybWF0aW9uc1xyXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XHJcbn1cclxuXHJcbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xyXG59XHJcbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xyXG59XHJcbkBtaXhpbiBza2V3KCR4LCAkeSkge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XHJcbn1cclxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XHJcbn1cclxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xyXG59XHJcbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcclxufVxyXG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcclxufVxyXG5AbWl4aW4gcm90YXRlWSgkZGVncmVlcykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcclxufVxyXG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XHJcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xyXG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcclxuICAgICAgICAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XHJcbn1cclxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcclxuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xyXG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XHJcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcclxufVxyXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xyXG4gICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcclxuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XHJcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xyXG59XHJcblxyXG5cclxuLy8gVHJhbnNpdGlvbnNcclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbn1cclxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XHJcbn1cclxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XHJcbn1cclxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XHJcbn1cclxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XHJcbn1cclxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcclxuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xyXG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xyXG59XHJcblxyXG5cclxuLy8gVXNlciBzZWxlY3RcclxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXHJcblxyXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XHJcbiAgICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcclxuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xyXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XHJcbn1cclxuIiwiLy8gQWxlcnRzXHJcblxyXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJHRleHQtY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cclxuICBociB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xyXG4gIH1cclxuICAuYWxlcnQtbGluayB7XHJcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBCdXR0b24gdmFyaWFudHNcclxuLy9cclxuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxyXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcclxuXHJcbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcblxyXG4gICY6Zm9jdXMsXHJcbiAgJi5mb2N1cyB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xyXG4gIH1cclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSxcclxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICYuZm9jdXMge1xyXG4gICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSxcclxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgfVxyXG4gICYuZGlzYWJsZWQsXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmLmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmFkZ2Uge1xyXG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQnV0dG9uIHNpemVzXHJcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbn1cclxuIiwiLy8gUGFuZWxzXHJcblxyXG5AbWl4aW4gcGFuZWwtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG5cclxuICAmID4gLnBhbmVsLWhlYWRpbmcge1xyXG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcclxuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xyXG5cclxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xyXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgfVxyXG4gICAgLmJhZGdlIHtcclxuICAgICAgY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuICAmID4gLnBhbmVsLWZvb3RlciB7XHJcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gUGFnaW5hdGlvblxyXG5cclxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xyXG4gID4gbGkge1xyXG4gICAgPiBhLFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcclxuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gICAgfVxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgID4gYSxcclxuICAgICAgPiBzcGFuIHtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gTGlzdCBHcm91cHNcclxuXHJcbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcclxuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcblxyXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmLCBidXR0b24mIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSwgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX1cclxuICB9XHJcblxyXG4gIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSxcclxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG5cclxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XHJcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XHJcbiAgICB9XHJcbiAgICAmLmFjdGl2ZSxcclxuICAgICYuYWN0aXZlOmhvdmVyLFxyXG4gICAgJi5hY3RpdmU6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xyXG4vL1xyXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcclxuXHJcbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcclxuICBoZWlnaHQ6IDFweDtcclxuICBtYXJnaW46ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKSAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG59XHJcbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcclxuLy9cclxuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxyXG4vLyBhbmQgc3VjY2Vzc2VzLlxyXG5cclxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xyXG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XHJcbiAgLmhlbHAtYmxvY2ssXHJcbiAgLmNvbnRyb2wtbGFiZWwsXHJcbiAgLnJhZGlvLFxyXG4gIC5jaGVja2JveCxcclxuICAucmFkaW8taW5saW5lLFxyXG4gIC5jaGVja2JveC1pbmxpbmUsXHJcbiAgJi5yYWRpbyBsYWJlbCxcclxuICAmLmNoZWNrYm94IGxhYmVsLFxyXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxyXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgfVxyXG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcclxuICAgICAgJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xyXG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXHJcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gIH1cclxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXHJcbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXHJcbi8vXHJcbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXHJcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXHJcbi8vXHJcbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxyXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxyXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXHJcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cclxuLy9cclxuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXHJcbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XHJcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xyXG4gICY6Zm9jdXMge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDhweCAkY29sb3ItcmdiYSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXHJcbi8vXHJcbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3JcclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXHJcbi8vIGVsZW1lbnQgZ2V0cyBzcGVjaWFsIGxvdmUgYmVjYXVzZSBpdCdzIHNwZWNpYWwsIGFuZCB0aGF0J3MgYSBmYWN0IVxyXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcclxuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbiAgfVxyXG5cclxuICBzZWxlY3QjeyRwYXJlbnR9IHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xyXG4gIH1cclxuXHJcbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxyXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbn1cclxuIiwiLy8gUHJvZ3Jlc3MgYmFyc1xyXG5cclxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXHJcbiAgLnByb2dyZXNzLXN0cmlwZWQgJiB7XHJcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xyXG4gIH1cclxufVxyXG4iLCIvLyBUYWJsZXNcclxuXHJcbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XHJcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcclxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxyXG4gIC50YWJsZSA+IHRoZWFkID4gdHIsXHJcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcclxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcclxuICAgID4gdGQuI3skc3RhdGV9LFxyXG4gICAgPiB0aC4jeyRzdGF0ZX0sXHJcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxyXG4gICAgJi4jeyRzdGF0ZX0gPiB0aCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxyXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxyXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xyXG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXHJcbiAgICA+IHRoLiN7JHN0YXRlfTpob3ZlcixcclxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXHJcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcclxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGgge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xyXG5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuICBhI3skcGFyZW50fTpob3ZlcixcclxuICBhI3skcGFyZW50fTpmb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXHJcblxyXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xyXG59XHJcbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcclxuICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcclxufVxyXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xyXG59XHJcbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcclxufVxyXG4iLCIvLyBHcmFkaWVudHNcclxuXHJcblxyXG5cclxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XHJcbi8vXHJcbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXHJcbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXHJcbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxyXG59XHJcblxyXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXHJcbi8vXHJcbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXHJcbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXHJcbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXHJcbn1cclxuXHJcbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXHJcbn1cclxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXHJcbn1cclxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXHJcbn1cclxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcclxufVxyXG4iLCIvLyBDbGVhcmZpeFxyXG4vL1xyXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXHJcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXHJcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXHJcbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xyXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxyXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xyXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXHJcbi8vXHJcbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXHJcblxyXG5AbWl4aW4gY2xlYXJmaXgoKSB7XHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuIiwiLy8gQ2VudGVyLWFsaWduIGEgYmxvY2sgbGV2ZWwgZWxlbWVudFxyXG5cclxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbn1cclxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXHJcbi8vXHJcbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXHJcbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cclxuXHJcbkBtaXhpbiBuYXZiYXItdmVydGljYWwtYWxpZ24oJGVsZW1lbnQtaGVpZ2h0KSB7XHJcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcclxuICBtYXJnaW4tYm90dG9tOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xyXG59XHJcbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cclxuLy9cclxuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXHJcbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXHJcblxyXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xyXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xyXG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHJcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiO1xyXG4gIH1cclxuICAjeyRsaXN0fSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIC8vIElubmVyIGd1dHRlciB2aWEgcGFkZGluZ1xyXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xyXG4gICAgcGFkZGluZy1yaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xyXG5AbWl4aW4gZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcywgJGk6IDEsICRsaXN0OiBcIi5jb2wtI3skY2xhc3N9LSN7JGl9XCIpIHtcclxuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xyXG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XHJcbiAgfVxyXG4gICN7JGxpc3R9IHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtaXhpbiBjYWxjLWdyaWQtY29sdW1uKCRpbmRleCwgJGNsYXNzLCAkdHlwZSkge1xyXG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xyXG4gICAgLmNvbC0jeyRjbGFzc30tI3skaW5kZXh9IHtcclxuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA+IDApIHtcclxuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcclxuICAgICAgbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID09IDApIHtcclxuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtMCB7XHJcbiAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XHJcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLSN7JGluZGV4fSB7XHJcbiAgICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPT0gMCkge1xyXG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcclxuICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAoJHR5cGUgPT0gb2Zmc2V0KSB7XHJcbiAgICAuY29sLSN7JGNsYXNzfS1vZmZzZXQtI3skaW5kZXh9IHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXHJcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xyXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xyXG4gICAgQGluY2x1ZGUgY2FsYy1ncmlkLWNvbHVtbigkaSwgJGNsYXNzLCAkdHlwZSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ3JlYXRlIGdyaWQgZm9yIHNwZWNpZmljIGNsYXNzXHJcbkBtaXhpbiBtYWtlLWdyaWQoJGNsYXNzKSB7XHJcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XHJcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCB3aWR0aCk7XHJcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdWxsKTtcclxuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xyXG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgb2Zmc2V0KTtcclxufVxyXG4iLCIvLyBHcmlkIHN5c3RlbVxyXG4vL1xyXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXHJcblxyXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxyXG5AbWl4aW4gY29udGFpbmVyLWZpeGVkKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBwYWRkaW5nLWxlZnQ6ICBmbG9vcigoJGd1dHRlciAvIDIpKTtcclxuICBwYWRkaW5nLXJpZ2h0OiBjZWlsKCgkZ3V0dGVyIC8gMikpO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcblxyXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xyXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcclxuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxufVxyXG5cclxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcclxuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XHJcbn1cclxuQG1peGluIG1ha2UteHMtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xyXG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxufVxyXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xyXG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG59XHJcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XHJcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG59XHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xyXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xyXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXHJcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2My4wLjMgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXHJcblxyXG4vL1xyXG4vLyAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxyXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxyXG4vLyAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXHJcbi8vXHJcblxyXG5odG1sIHtcclxuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMVxyXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXHJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cclxuLy9cclxuXHJcbmJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cclxuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcclxuLy8gYW5kIEZpcmVmb3guXHJcbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXHJcbi8vXHJcblxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZGV0YWlscyxcclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tYWluLFxyXG5tZW51LFxyXG5uYXYsXHJcbnNlY3Rpb24sXHJcbnN1bW1hcnkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vL1xyXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxyXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXHJcbi8vXHJcblxyXG5hdWRpbyxcclxuY2FudmFzLFxyXG5wcm9ncmVzcyxcclxudmlkZW8ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxyXG4vLyBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxyXG4vL1xyXG5cclxuYXVkaW86bm90KFtjb250cm9sc10pIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxyXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXHJcbi8vXHJcblxyXG5baGlkZGVuXSxcclxudGVtcGxhdGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8vIExpbmtzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuLy9cclxuXHJcbmEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vL1xyXG4vLyBJbXByb3ZlIHJlYWRhYmlsaXR5IG9mIGZvY3VzZWQgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBhbHNvIGluIGFuXHJcbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cclxuLy9cclxuXHJcbmE6YWN0aXZlLFxyXG5hOmhvdmVyIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vLyBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuYWJiclt0aXRsZV0ge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmRmbiB7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXHJcbi8vIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmgxIHtcclxuICBmb250LXNpemU6IDJlbTtcclxuICBtYXJnaW46IDAuNjdlbSAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxyXG4vL1xyXG5cclxubWFyayB7XHJcbiAgYmFja2dyb3VuZDogI2ZmMDtcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiA4MCU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbnN1Yixcclxuc3VwIHtcclxuICBmb250LXNpemU6IDc1JTtcclxuICBsaW5lLWhlaWdodDogMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG59XHJcblxyXG5zdXAge1xyXG4gIHRvcDogLTAuNWVtO1xyXG59XHJcblxyXG5zdWIge1xyXG4gIGJvdHRvbTogLTAuMjVlbTtcclxufVxyXG5cclxuLy8gRW1iZWRkZWQgY29udGVudFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXHJcbi8vXHJcblxyXG5pbWcge1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG5cclxuLy9cclxuLy8gQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXHJcbi8vXHJcblxyXG5zdmc6bm90KDpyb290KSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLy8gR3JvdXBpbmcgY29udGVudFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXHJcbi8vXHJcblxyXG5maWd1cmUge1xyXG4gIG1hcmdpbjogMWVtIDQwcHg7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cclxuLy9cclxuXHJcbmhyIHtcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxyXG4vL1xyXG5cclxucHJlIHtcclxuICBvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxyXG4vL1xyXG5cclxuY29kZSxcclxua2JkLFxyXG5wcmUsXHJcbnNhbXAge1xyXG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcclxuICBmb250LXNpemU6IDFlbTtcclxufVxyXG5cclxuLy8gRm9ybXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXHJcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cclxuLy9cclxuXHJcbi8vXHJcbi8vIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cclxuLy8gICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXHJcbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXHJcbi8vIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuYnV0dG9uLFxyXG5pbnB1dCxcclxub3B0Z3JvdXAsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXHJcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxyXG4gIG1hcmdpbjogMDsgLy8gM1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cclxuLy9cclxuXHJcbmJ1dHRvbiB7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cclxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cclxuLy8gQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cclxuLy8gQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxyXG4vL1xyXG5cclxuYnV0dG9uLFxyXG5zZWxlY3Qge1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG4vL1xyXG4vLyAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxyXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cclxuLy8gMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxyXG4vLyAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxyXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXHJcbi8vXHJcblxyXG5idXR0b24sXHJcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXHJcbiAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXHJcbi8vXHJcblxyXG5idXR0b25bZGlzYWJsZWRdLFxyXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XHJcbiAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXHJcbi8vXHJcblxyXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXHJcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcclxuICBib3JkZXI6IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxyXG4vLyB0aGUgVUEgc3R5bGVzaGVldC5cclxuLy9cclxuXHJcbmlucHV0IHtcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vL1xyXG4vLyBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXHJcbi8vIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXHJcbi8vXHJcbi8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXHJcbi8vIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXHJcbi8vXHJcblxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxyXG4gIHBhZGRpbmc6IDA7IC8vIDJcclxufVxyXG5cclxuLy9cclxuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cclxuLy8gYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcclxuLy8gZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxyXG4vL1xyXG5cclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4vL1xyXG4vLyAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vMlxyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cclxuLy8gU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xyXG4vLyBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXHJcbi8vXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cclxuLy9cclxuXHJcbmZpZWxkc2V0IHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xyXG4gIG1hcmdpbjogMCAycHg7XHJcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xyXG59XHJcblxyXG4vL1xyXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXHJcbi8vIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuLy9cclxuXHJcbmxlZ2VuZCB7XHJcbiAgYm9yZGVyOiAwOyAvLyAxXHJcbiAgcGFkZGluZzogMDsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxyXG4vL1xyXG5cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vL1xyXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXHJcbi8vIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxyXG4vL1xyXG5cclxub3B0Z3JvdXAge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vLyBUYWJsZXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cclxuLy9cclxuXHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcblxyXG50ZCxcclxudGgge1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gUHJpbnQgc3R5bGVzLlxyXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDogaDVicC5jb20vclxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuQG1lZGlhIHByaW50IHtcclxuICAgICosXHJcbiAgICAqOmJlZm9yZSxcclxuICAgICo6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGEsXHJcbiAgICBhOnZpc2l0ZWQge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG5cclxuICAgIGFbaHJlZl06YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xyXG4gICAgfVxyXG5cclxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcclxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcclxuICAgIGFbaHJlZl49XCIjXCJdOmFmdGVyLFxyXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHByZSxcclxuICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XHJcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIHRoZWFkIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IC8vIGg1YnAuY29tL3RcclxuICAgIH1cclxuXHJcbiAgICB0cixcclxuICAgIGltZyB7XHJcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCxcclxuICAgIGgyLFxyXG4gICAgaDMge1xyXG4gICAgICAgIG9ycGhhbnM6IDM7XHJcbiAgICAgICAgd2lkb3dzOiAzO1xyXG4gICAgfVxyXG5cclxuICAgIGgyLFxyXG4gICAgaDMge1xyXG4gICAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XHJcblxyXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcclxuICAgIC5uYXZiYXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuYnRuLFxyXG4gICAgLmRyb3B1cCA+IC5idG4ge1xyXG4gICAgICAgID4gLmNhcmV0IHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sYWJlbCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcclxuICAgIH1cclxuXHJcbiAgICAudGFibGUge1xyXG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgdGQsXHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcclxuICAgICAgICB0aCxcclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXHJcbn1cclxuIiwiLy9cclxuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXHJcbi8vXHJcbi8vIFNpbmNlIGljb25zIGFyZSBmb250cywgdGhleSBjYW4gYmUgcGxhY2VkIGFueXdoZXJlIHRleHQgaXMgcGxhY2VkIGFuZCBhcmVcclxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cclxuLy8gaW5saW5lIGVsZW1lbnQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgY2xhc3NlcywgbGlrZSBzbzpcclxuLy9cclxuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cclxuXHJcbkBhdC1yb290IHtcclxuICAvLyBJbXBvcnQgdGhlIGZvbnRzXHJcbiAgQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcclxuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JykpO1xyXG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3Q/I2llZml4JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYyJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZjInKSkgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZicpKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmJykpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uc3ZnIyN7JGljb24tZm9udC1zdmctaWR9JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uc3ZnIyN7JGljb24tZm9udC1zdmctaWR9JykpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3NcclxuLmdseXBoaWNvbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogMXB4O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcblxyXG4vLyBJbmRpdmlkdWFsIGljb25zXHJcbi5nbHlwaGljb24tYXN0ZXJpc2sgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwMmFcIjsgfSB9XHJcbi5nbHlwaGljb24tcGx1cyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwMmJcIjsgfSB9XHJcbi5nbHlwaGljb24tZXVybyxcclxuLmdseXBoaWNvbi1ldXIgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBhY1wiOyB9IH1cclxuLmdseXBoaWNvbi1taW51cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjIxMlwiOyB9IH1cclxuLmdseXBoaWNvbi1jbG91ZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjYwMVwiOyB9IH1cclxuLmdseXBoaWNvbi1lbnZlbG9wZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjcwOVwiOyB9IH1cclxuLmdseXBoaWNvbi1wZW5jaWwgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjcwZlwiOyB9IH1cclxuLmdseXBoaWNvbi1nbGFzcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMVwiOyB9IH1cclxuLmdseXBoaWNvbi1tdXNpYyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMlwiOyB9IH1cclxuLmdseXBoaWNvbi1zZWFyY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwM1wiOyB9IH1cclxuLmdseXBoaWNvbi1oZWFydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNVwiOyB9IH1cclxuLmdseXBoaWNvbi1zdGFyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNlwiOyB9IH1cclxuLmdseXBoaWNvbi1zdGFyLWVtcHR5ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwN1wiOyB9IH1cclxuLmdseXBoaWNvbi11c2VyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOFwiOyB9IH1cclxuLmdseXBoaWNvbi1maWxtICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOVwiOyB9IH1cclxuLmdseXBoaWNvbi10aC1sYXJnZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMFwiOyB9IH1cclxuLmdseXBoaWNvbi10aCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMVwiOyB9IH1cclxuLmdseXBoaWNvbi10aC1saXN0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMlwiOyB9IH1cclxuLmdseXBoaWNvbi1vayAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxM1wiOyB9IH1cclxuLmdseXBoaWNvbi1yZW1vdmUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNFwiOyB9IH1cclxuLmdseXBoaWNvbi16b29tLWluICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNVwiOyB9IH1cclxuLmdseXBoaWNvbi16b29tLW91dCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNlwiOyB9IH1cclxuLmdseXBoaWNvbi1vZmYgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxN1wiOyB9IH1cclxuLmdseXBoaWNvbi1zaWduYWwgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxOFwiOyB9IH1cclxuLmdseXBoaWNvbi1jb2cgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxOVwiOyB9IH1cclxuLmdseXBoaWNvbi10cmFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMFwiOyB9IH1cclxuLmdseXBoaWNvbi1ob21lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMVwiOyB9IH1cclxuLmdseXBoaWNvbi1maWxlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMlwiOyB9IH1cclxuLmdseXBoaWNvbi10aW1lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyM1wiOyB9IH1cclxuLmdseXBoaWNvbi1yb2FkICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNFwiOyB9IH1cclxuLmdseXBoaWNvbi1kb3dubG9hZC1hbHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNVwiOyB9IH1cclxuLmdseXBoaWNvbi1kb3dubG9hZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNlwiOyB9IH1cclxuLmdseXBoaWNvbi11cGxvYWQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyN1wiOyB9IH1cclxuLmdseXBoaWNvbi1pbmJveCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOFwiOyB9IH1cclxuLmdseXBoaWNvbi1wbGF5LWNpcmNsZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOVwiOyB9IH1cclxuLmdseXBoaWNvbi1yZXBlYXQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMFwiOyB9IH1cclxuLmdseXBoaWNvbi1yZWZyZXNoICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMVwiOyB9IH1cclxuLmdseXBoaWNvbi1saXN0LWFsdCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMlwiOyB9IH1cclxuLmdseXBoaWNvbi1sb2NrICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzM1wiOyB9IH1cclxuLmdseXBoaWNvbi1mbGFnICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNFwiOyB9IH1cclxuLmdseXBoaWNvbi1oZWFkcGhvbmVzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNVwiOyB9IH1cclxuLmdseXBoaWNvbi12b2x1bWUtb2ZmICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNlwiOyB9IH1cclxuLmdseXBoaWNvbi12b2x1bWUtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzN1wiOyB9IH1cclxuLmdseXBoaWNvbi12b2x1bWUtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOFwiOyB9IH1cclxuLmdseXBoaWNvbi1xcmNvZGUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOVwiOyB9IH1cclxuLmdseXBoaWNvbi1iYXJjb2RlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MFwiOyB9IH1cclxuLmdseXBoaWNvbi10YWcgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MVwiOyB9IH1cclxuLmdseXBoaWNvbi10YWdzICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MlwiOyB9IH1cclxuLmdseXBoaWNvbi1ib29rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0M1wiOyB9IH1cclxuLmdseXBoaWNvbi1ib29rbWFyayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NFwiOyB9IH1cclxuLmdseXBoaWNvbi1wcmludCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NVwiOyB9IH1cclxuLmdseXBoaWNvbi1jYW1lcmEgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NlwiOyB9IH1cclxuLmdseXBoaWNvbi1mb250ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0N1wiOyB9IH1cclxuLmdseXBoaWNvbi1ib2xkICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0OFwiOyB9IH1cclxuLmdseXBoaWNvbi1pdGFsaWMgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0OVwiOyB9IH1cclxuLmdseXBoaWNvbi10ZXh0LWhlaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MFwiOyB9IH1cclxuLmdseXBoaWNvbi10ZXh0LXdpZHRoICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MVwiOyB9IH1cclxuLmdseXBoaWNvbi1hbGlnbi1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MlwiOyB9IH1cclxuLmdseXBoaWNvbi1hbGlnbi1jZW50ZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1M1wiOyB9IH1cclxuLmdseXBoaWNvbi1hbGlnbi1yaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NFwiOyB9IH1cclxuLmdseXBoaWNvbi1hbGlnbi1qdXN0aWZ5ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NVwiOyB9IH1cclxuLmdseXBoaWNvbi1saXN0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NlwiOyB9IH1cclxuLmdseXBoaWNvbi1pbmRlbnQtbGVmdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1N1wiOyB9IH1cclxuLmdseXBoaWNvbi1pbmRlbnQtcmlnaHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OFwiOyB9IH1cclxuLmdseXBoaWNvbi1mYWNldGltZS12aWRlbyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OVwiOyB9IH1cclxuLmdseXBoaWNvbi1waWN0dXJlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2MFwiOyB9IH1cclxuLmdseXBoaWNvbi1tYXAtbWFya2VyICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2MlwiOyB9IH1cclxuLmdseXBoaWNvbi1hZGp1c3QgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2M1wiOyB9IH1cclxuLmdseXBoaWNvbi10aW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NFwiOyB9IH1cclxuLmdseXBoaWNvbi1lZGl0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NVwiOyB9IH1cclxuLmdseXBoaWNvbi1zaGFyZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NlwiOyB9IH1cclxuLmdseXBoaWNvbi1jaGVjayAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2N1wiOyB9IH1cclxuLmdseXBoaWNvbi1tb3ZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OFwiOyB9IH1cclxuLmdseXBoaWNvbi1zdGVwLWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OVwiOyB9IH1cclxuLmdseXBoaWNvbi1mYXN0LWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MFwiOyB9IH1cclxuLmdseXBoaWNvbi1iYWNrd2FyZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MVwiOyB9IH1cclxuLmdseXBoaWNvbi1wbGF5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MlwiOyB9IH1cclxuLmdseXBoaWNvbi1wYXVzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3M1wiOyB9IH1cclxuLmdseXBoaWNvbi1zdG9wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NFwiOyB9IH1cclxuLmdseXBoaWNvbi1mb3J3YXJkICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NVwiOyB9IH1cclxuLmdseXBoaWNvbi1mYXN0LWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NlwiOyB9IH1cclxuLmdseXBoaWNvbi1zdGVwLWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3N1wiOyB9IH1cclxuLmdseXBoaWNvbi1lamVjdCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OFwiOyB9IH1cclxuLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OVwiOyB9IH1cclxuLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MFwiOyB9IH1cclxuLmdseXBoaWNvbi1wbHVzLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MVwiOyB9IH1cclxuLmdseXBoaWNvbi1taW51cy1zaWduICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MlwiOyB9IH1cclxuLmdseXBoaWNvbi1yZW1vdmUtc2lnbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4M1wiOyB9IH1cclxuLmdseXBoaWNvbi1vay1zaWduICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NFwiOyB9IH1cclxuLmdseXBoaWNvbi1xdWVzdGlvbi1zaWduICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NVwiOyB9IH1cclxuLmdseXBoaWNvbi1pbmZvLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NlwiOyB9IH1cclxuLmdseXBoaWNvbi1zY3JlZW5zaG90ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4N1wiOyB9IH1cclxuLmdseXBoaWNvbi1yZW1vdmUtY2lyY2xlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OFwiOyB9IH1cclxuLmdseXBoaWNvbi1vay1jaXJjbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OVwiOyB9IH1cclxuLmdseXBoaWNvbi1iYW4tY2lyY2xlICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MFwiOyB9IH1cclxuLmdseXBoaWNvbi1hcnJvdy1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MVwiOyB9IH1cclxuLmdseXBoaWNvbi1hcnJvdy1yaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MlwiOyB9IH1cclxuLmdseXBoaWNvbi1hcnJvdy11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5M1wiOyB9IH1cclxuLmdseXBoaWNvbi1hcnJvdy1kb3duICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NFwiOyB9IH1cclxuLmdseXBoaWNvbi1zaGFyZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NVwiOyB9IH1cclxuLmdseXBoaWNvbi1yZXNpemUtZnVsbCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NlwiOyB9IH1cclxuLmdseXBoaWNvbi1yZXNpemUtc21hbGwgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5N1wiOyB9IH1cclxuLmdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMVwiOyB9IH1cclxuLmdseXBoaWNvbi1naWZ0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMlwiOyB9IH1cclxuLmdseXBoaWNvbi1sZWFmICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwM1wiOyB9IH1cclxuLmdseXBoaWNvbi1maXJlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNFwiOyB9IH1cclxuLmdseXBoaWNvbi1leWUtb3BlbiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNVwiOyB9IH1cclxuLmdseXBoaWNvbi1leWUtY2xvc2UgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNlwiOyB9IH1cclxuLmdseXBoaWNvbi13YXJuaW5nLXNpZ24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwN1wiOyB9IH1cclxuLmdseXBoaWNvbi1wbGFuZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOFwiOyB9IH1cclxuLmdseXBoaWNvbi1jYWxlbmRhciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOVwiOyB9IH1cclxuLmdseXBoaWNvbi1yYW5kb20gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMFwiOyB9IH1cclxuLmdseXBoaWNvbi1jb21tZW50ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMVwiOyB9IH1cclxuLmdseXBoaWNvbi1tYWduZXQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMlwiOyB9IH1cclxuLmdseXBoaWNvbi1jaGV2cm9uLXVwICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExM1wiOyB9IH1cclxuLmdseXBoaWNvbi1jaGV2cm9uLWRvd24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNFwiOyB9IH1cclxuLmdseXBoaWNvbi1yZXR3ZWV0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNVwiOyB9IH1cclxuLmdseXBoaWNvbi1zaG9wcGluZy1jYXJ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNlwiOyB9IH1cclxuLmdseXBoaWNvbi1mb2xkZXItY2xvc2UgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExN1wiOyB9IH1cclxuLmdseXBoaWNvbi1mb2xkZXItb3BlbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOFwiOyB9IH1cclxuLmdseXBoaWNvbi1yZXNpemUtdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOVwiOyB9IH1cclxuLmdseXBoaWNvbi1yZXNpemUtaG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMFwiOyB9IH1cclxuLmdseXBoaWNvbi1oZGQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMVwiOyB9IH1cclxuLmdseXBoaWNvbi1idWxsaG9ybiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMlwiOyB9IH1cclxuLmdseXBoaWNvbi1iZWxsICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyM1wiOyB9IH1cclxuLmdseXBoaWNvbi1jZXJ0aWZpY2F0ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNFwiOyB9IH1cclxuLmdseXBoaWNvbi10aHVtYnMtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNVwiOyB9IH1cclxuLmdseXBoaWNvbi10aHVtYnMtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNlwiOyB9IH1cclxuLmdseXBoaWNvbi1oYW5kLXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyN1wiOyB9IH1cclxuLmdseXBoaWNvbi1oYW5kLWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOFwiOyB9IH1cclxuLmdseXBoaWNvbi1oYW5kLXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOVwiOyB9IH1cclxuLmdseXBoaWNvbi1oYW5kLWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMFwiOyB9IH1cclxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMVwiOyB9IH1cclxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMlwiOyB9IH1cclxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctdXAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzM1wiOyB9IH1cclxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctZG93biAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNFwiOyB9IH1cclxuLmdseXBoaWNvbi1nbG9iZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNVwiOyB9IH1cclxuLmdseXBoaWNvbi13cmVuY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNlwiOyB9IH1cclxuLmdseXBoaWNvbi10YXNrcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzN1wiOyB9IH1cclxuLmdseXBoaWNvbi1maWx0ZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOFwiOyB9IH1cclxuLmdseXBoaWNvbi1icmllZmNhc2UgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOVwiOyB9IH1cclxuLmdseXBoaWNvbi1mdWxsc2NyZWVuICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MFwiOyB9IH1cclxuLmdseXBoaWNvbi1kYXNoYm9hcmQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MVwiOyB9IH1cclxuLmdseXBoaWNvbi1wYXBlcmNsaXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MlwiOyB9IH1cclxuLmdseXBoaWNvbi1oZWFydC1lbXB0eSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0M1wiOyB9IH1cclxuLmdseXBoaWNvbi1saW5rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NFwiOyB9IH1cclxuLmdseXBoaWNvbi1waG9uZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NVwiOyB9IH1cclxuLmdseXBoaWNvbi1wdXNocGluICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NlwiOyB9IH1cclxuLmdseXBoaWNvbi11c2QgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OFwiOyB9IH1cclxuLmdseXBoaWNvbi1nYnAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OVwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3J0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MFwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0ICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MVwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0LWFsdCAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MlwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1M1wiOyB9IH1cclxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyLWFsdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NFwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NVwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMtYWx0IHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NlwiOyB9IH1cclxuLmdseXBoaWNvbi11bmNoZWNrZWQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1N1wiOyB9IH1cclxuLmdseXBoaWNvbi1leHBhbmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OFwiOyB9IH1cclxuLmdseXBoaWNvbi1jb2xsYXBzZS1kb3duICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OVwiOyB9IH1cclxuLmdseXBoaWNvbi1jb2xsYXBzZS11cCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MFwiOyB9IH1cclxuLmdseXBoaWNvbi1sb2ctaW4gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MVwiOyB9IH1cclxuLmdseXBoaWNvbi1mbGFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MlwiOyB9IH1cclxuLmdseXBoaWNvbi1sb2ctb3V0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2M1wiOyB9IH1cclxuLmdseXBoaWNvbi1uZXctd2luZG93ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NFwiOyB9IH1cclxuLmdseXBoaWNvbi1yZWNvcmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NVwiOyB9IH1cclxuLmdseXBoaWNvbi1zYXZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NlwiOyB9IH1cclxuLmdseXBoaWNvbi1vcGVuICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2N1wiOyB9IH1cclxuLmdseXBoaWNvbi1zYXZlZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OFwiOyB9IH1cclxuLmdseXBoaWNvbi1pbXBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OVwiOyB9IH1cclxuLmdseXBoaWNvbi1leHBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MFwiOyB9IH1cclxuLmdseXBoaWNvbi1zZW5kICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MVwiOyB9IH1cclxuLmdseXBoaWNvbi1mbG9wcHktZGlzayAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MlwiOyB9IH1cclxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZWQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3M1wiOyB9IH1cclxuLmdseXBoaWNvbi1mbG9wcHktcmVtb3ZlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NFwiOyB9IH1cclxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NVwiOyB9IH1cclxuLmdseXBoaWNvbi1mbG9wcHktb3BlbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NlwiOyB9IH1cclxuLmdseXBoaWNvbi1jcmVkaXQtY2FyZCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3N1wiOyB9IH1cclxuLmdseXBoaWNvbi10cmFuc2ZlciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OFwiOyB9IH1cclxuLmdseXBoaWNvbi1jdXRsZXJ5ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OVwiOyB9IH1cclxuLmdseXBoaWNvbi1oZWFkZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MFwiOyB9IH1cclxuLmdseXBoaWNvbi1jb21wcmVzc2VkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MVwiOyB9IH1cclxuLmdseXBoaWNvbi1lYXJwaG9uZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MlwiOyB9IH1cclxuLmdseXBoaWNvbi1waG9uZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4M1wiOyB9IH1cclxuLmdseXBoaWNvbi10b3dlciAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NFwiOyB9IH1cclxuLmdseXBoaWNvbi1zdGF0cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NVwiOyB9IH1cclxuLmdseXBoaWNvbi1zZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NlwiOyB9IH1cclxuLmdseXBoaWNvbi1oZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4N1wiOyB9IH1cclxuLmdseXBoaWNvbi1zdWJ0aXRsZXMgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OFwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3VuZC1zdGVyZW8gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OVwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3VuZC1kb2xieSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MFwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3VuZC01LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MVwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3VuZC02LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MlwiOyB9IH1cclxuLmdseXBoaWNvbi1zb3VuZC03LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5M1wiOyB9IH1cclxuLmdseXBoaWNvbi1jb3B5cmlnaHQtbWFyayAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NFwiOyB9IH1cclxuLmdseXBoaWNvbi1yZWdpc3RyYXRpb24tbWFyayAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NVwiOyB9IH1cclxuLmdseXBoaWNvbi1jbG91ZC1kb3dubG9hZCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5N1wiOyB9IH1cclxuLmdseXBoaWNvbi1jbG91ZC11cGxvYWQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OFwiOyB9IH1cclxuLmdseXBoaWNvbi10cmVlLWNvbmlmZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OVwiOyB9IH1cclxuLmdseXBoaWNvbi10cmVlLWRlY2lkdW91cyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMFwiOyB9IH1cclxuLmdseXBoaWNvbi1jZCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMVwiOyB9IH1cclxuLmdseXBoaWNvbi1zYXZlLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMlwiOyB9IH1cclxuLmdseXBoaWNvbi1vcGVuLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwM1wiOyB9IH1cclxuLmdseXBoaWNvbi1sZXZlbC11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNFwiOyB9IH1cclxuLmdseXBoaWNvbi1jb3B5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNVwiOyB9IH1cclxuLmdseXBoaWNvbi1wYXN0ZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNlwiOyB9IH1cclxuLy8gVGhlIGZvbGxvd2luZyAyIEdseXBoaWNvbnMgYXJlIG9taXR0ZWQgZm9yIHRoZSB0aW1lIGJlaW5nIGJlY2F1c2VcclxuLy8gdGhleSBjdXJyZW50bHkgdXNlIFVuaWNvZGUgY29kZXBvaW50cyB0aGF0IGFyZSBvdXRzaWRlIHRoZVxyXG4vLyBCYXNpYyBNdWx0aWxpbmd1YWwgUGxhbmUgKEJNUCkuIE9sZGVyIGJ1Z2d5IHZlcnNpb25zIG9mIFdlYktpdCBjYW4ndCBoYW5kbGVcclxuLy8gbm9uLUJNUCBjb2RlcG9pbnRzIGluIENTUyBzdHJpbmcgZXNjYXBlcywgYW5kIHRodXMgY2FuJ3QgZGlzcGxheSB0aGVzZSB0d28gaWNvbnMuXHJcbi8vIE5vdGFibHksIHRoZSBidWcgYWZmZWN0cyBzb21lIG9sZGVyIHZlcnNpb25zIG9mIHRoZSBBbmRyb2lkIEJyb3dzZXIuXHJcbi8vIE1vcmUgaW5mbzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDEwNlxyXG4vLyAuZ2x5cGhpY29uLWRvb3IgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjZhYVwiOyB9IH1cclxuLy8gLmdseXBoaWNvbi1rZXkgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY1MTFcIjsgfSB9XHJcbi5nbHlwaGljb24tYWxlcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDlcIjsgfSB9XHJcbi5nbHlwaGljb24tZXF1YWxpemVyICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTBcIjsgfSB9XHJcbi5nbHlwaGljb24ta2luZyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTFcIjsgfSB9XHJcbi5nbHlwaGljb24tcXVlZW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTJcIjsgfSB9XHJcbi5nbHlwaGljb24tcGF3biAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTNcIjsgfSB9XHJcbi5nbHlwaGljb24tYmlzaG9wICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTRcIjsgfSB9XHJcbi5nbHlwaGljb24ta25pZ2h0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTVcIjsgfSB9XHJcbi5nbHlwaGljb24tYmFieS1mb3JtdWxhICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTZcIjsgfSB9XHJcbi5nbHlwaGljb24tdGVudCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2ZmFcIjsgfSB9XHJcbi5nbHlwaGljb24tYmxhY2tib2FyZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMThcIjsgfSB9XHJcbi5nbHlwaGljb24tYmVkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTlcIjsgfSB9XHJcbi5nbHlwaGljb24tYXBwbGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGY4ZmZcIjsgfSB9XHJcbi5nbHlwaGljb24tZXJhc2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjFcIjsgfSB9XHJcbi5nbHlwaGljb24taG91cmdsYXNzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIzMWJcIjsgfSB9XHJcbi5nbHlwaGljb24tbGFtcCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjNcIjsgfSB9XHJcbi5nbHlwaGljb24tZHVwbGljYXRlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjRcIjsgfSB9XHJcbi5nbHlwaGljb24tcGlnZ3ktYmFuayAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjVcIjsgfSB9XHJcbi5nbHlwaGljb24tc2Npc3NvcnMgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjZcIjsgfSB9XHJcbi5nbHlwaGljb24tYml0Y29pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XHJcbi5nbHlwaGljb24tYnRjICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XHJcbi5nbHlwaGljb24teGJ0ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XHJcbi5nbHlwaGljb24teWVuICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XHJcbi5nbHlwaGljb24tanB5ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XHJcbi5nbHlwaGljb24tcnVibGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XHJcbi5nbHlwaGljb24tcnViICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XHJcbi5nbHlwaGljb24tc2NhbGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzBcIjsgfSB9XHJcbi5nbHlwaGljb24taWNlLWxvbGx5ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzFcIjsgfSB9XHJcbi5nbHlwaGljb24taWNlLWxvbGx5LXRhc3RlZCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzJcIjsgfSB9XHJcbi5nbHlwaGljb24tZWR1Y2F0aW9uICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzNcIjsgfSB9XHJcbi5nbHlwaGljb24tb3B0aW9uLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzRcIjsgfSB9XHJcbi5nbHlwaGljb24tb3B0aW9uLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzVcIjsgfSB9XHJcbi5nbHlwaGljb24tbWVudS1oYW1idXJnZXIgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzZcIjsgfSB9XHJcbi5nbHlwaGljb24tbW9kYWwtd2luZG93ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzdcIjsgfSB9XHJcbi5nbHlwaGljb24tb2lsICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzhcIjsgfSB9XHJcbi5nbHlwaGljb24tZ3JhaW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzlcIjsgfSB9XHJcbi5nbHlwaGljb24tc3VuZ2xhc3NlcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDBcIjsgfSB9XHJcbi5nbHlwaGljb24tdGV4dC1zaXplICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDFcIjsgfSB9XHJcbi5nbHlwaGljb24tdGV4dC1jb2xvciAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDJcIjsgfSB9XHJcbi5nbHlwaGljb24tdGV4dC1iYWNrZ3JvdW5kICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDNcIjsgfSB9XHJcbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXRvcCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDRcIjsgfSB9XHJcbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWJvdHRvbSAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDVcIjsgfSB9XHJcbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWhvcml6b250YWx7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDZcIjsgfSB9XHJcbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDdcIjsgfSB9XHJcbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXZlcnRpY2FsICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDhcIjsgfSB9XHJcbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXJpZ2h0ICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDlcIjsgfSB9XHJcbi5nbHlwaGljb24tdHJpYW5nbGUtcmlnaHQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTBcIjsgfSB9XHJcbi5nbHlwaGljb24tdHJpYW5nbGUtbGVmdCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTFcIjsgfSB9XHJcbi5nbHlwaGljb24tdHJpYW5nbGUtYm90dG9tICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTJcIjsgfSB9XHJcbi5nbHlwaGljb24tdHJpYW5nbGUtdG9wICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTNcIjsgfSB9XHJcbi5nbHlwaGljb24tY29uc29sZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTRcIjsgfSB9XHJcbi5nbHlwaGljb24tc3VwZXJzY3JpcHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTVcIjsgfSB9XHJcbi5nbHlwaGljb24tc3Vic2NyaXB0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTZcIjsgfSB9XHJcbi5nbHlwaGljb24tbWVudS1sZWZ0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTdcIjsgfSB9XHJcbi5nbHlwaGljb24tbWVudS1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNThcIjsgfSB9XHJcbi5nbHlwaGljb24tbWVudS1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTlcIjsgfSB9XHJcbi5nbHlwaGljb24tbWVudS11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNjBcIjsgfSB9XHJcbiIsIi8vXHJcbi8vIFNjYWZmb2xkaW5nXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gUmVzZXQgdGhlIGJveC1zaXppbmdcclxuLy9cclxuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy5cclxuLy8gRm9yIHJlY29tbWVuZGF0aW9ucyBvbiByZXNvbHZpbmcgc3VjaCBjb25mbGljdHMsIHNlZVxyXG4vLyBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3RoaXJkLWJveC1zaXppbmdcclxuKiB7XHJcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxufVxyXG4qOmJlZm9yZSxcclxuKjphZnRlciB7XHJcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxufVxyXG5cclxuXHJcbi8vIEJvZHkgcmVzZXRcclxuXHJcbmh0bWwge1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xyXG59XHJcblxyXG4vLyBSZXNldCBmb250cyBmb3IgcmVsZXZhbnQgZWxlbWVudHNcclxuaW5wdXQsXHJcbmJ1dHRvbixcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG5cclxuLy8gTGlua3NcclxuXHJcbmEge1xyXG4gIGNvbG9yOiAkbGluay1jb2xvcjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XHJcbiAgfVxyXG5cclxuICAmOmZvY3VzIHtcclxuICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGaWd1cmVzXHJcbi8vXHJcbi8vIFdlIHJlc2V0IHRoaXMgaGVyZSBiZWNhdXNlIHByZXZpb3VzbHkgTm9ybWFsaXplIGhhZCBubyBgZmlndXJlYCBtYXJnaW5zLiBUaGlzXHJcbi8vIGVuc3VyZXMgd2UgZG9uJ3QgYnJlYWsgYW55b25lJ3MgdXNlIG9mIHRoZSBlbGVtZW50LlxyXG5cclxuZmlndXJlIHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcblxyXG4vLyBJbWFnZXNcclxuXHJcbmltZyB7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXHJcbi5pbWctcmVzcG9uc2l2ZSB7XHJcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XHJcbn1cclxuXHJcbi8vIFJvdW5kZWQgY29ybmVyc1xyXG4uaW1nLXJvdW5kZWQge1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xyXG59XHJcblxyXG4vLyBJbWFnZSB0aHVtYm5haWxzXHJcbi8vXHJcbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gdGh1bWJuYWlscy5sZXNzIGZvciBgLnRodW1ibmFpbGAuXHJcbi5pbWctdGh1bWJuYWlsIHtcclxuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XHJcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyBlYXNlLWluLW91dCk7XHJcblxyXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxyXG4gIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlKGlubGluZS1ibG9jayk7XHJcbn1cclxuXHJcbi8vIFBlcmZlY3QgY2lyY2xlXHJcbi5pbWctY2lyY2xlIHtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7IC8vIHNldCByYWRpdXMgaW4gcGVyY2VudHNcclxufVxyXG5cclxuXHJcbi8vIEhvcml6b250YWwgcnVsZXNcclxuXHJcbmhyIHtcclxuICBtYXJnaW4tdG9wOiAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgJGhyLWJvcmRlcjtcclxufVxyXG5cclxuXHJcbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXHJcbi8vXHJcbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50XHJcblxyXG4uc3Itb25seSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxcHg7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgbWFyZ2luOiAtMXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBjbGlwOiByZWN0KDAsMCwwLDApO1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG5cclxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXHJcbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxyXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXHJcblxyXG4uc3Itb25seS1mb2N1c2FibGUge1xyXG4gICY6YWN0aXZlLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICBjbGlwOiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIGlPUyBcImNsaWNrYWJsZSBlbGVtZW50c1wiIGZpeCBmb3Igcm9sZT1cImJ1dHRvblwiXHJcbi8vXHJcbi8vIEZpeGVzIFwiY2xpY2thYmlsaXR5XCIgaXNzdWUgKGFuZCBtb3JlIGdlbmVyYWxseSwgdGhlIGZpcmluZyBvZiBldmVudHMgc3VjaCBhcyBmb2N1cyBhcyB3ZWxsKVxyXG4vLyBmb3IgdHJhZGl0aW9uYWxseSBub24tZm9jdXNhYmxlIGVsZW1lbnRzIHdpdGggcm9sZT1cImJ1dHRvblwiXHJcbi8vIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxyXG5cclxuW3JvbGU9XCJidXR0b25cIl0ge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG4iLCIvL1xyXG4vLyBUeXBvZ3JhcGh5XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gSGVhZGluZ3NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcclxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XHJcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcclxuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xyXG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XHJcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcclxuXHJcbiAgc21hbGwsXHJcbiAgLnNtYWxsIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGNvbG9yOiAkaGVhZGluZ3Mtc21hbGwtY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5oMSwgLmgxLFxyXG5oMiwgLmgyLFxyXG5oMywgLmgzIHtcclxuICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG5cclxuICBzbWFsbCxcclxuICAuc21hbGwge1xyXG4gICAgZm9udC1zaXplOiA2NSU7XHJcbiAgfVxyXG59XHJcbmg0LCAuaDQsXHJcbmg1LCAuaDUsXHJcbmg2LCAuaDYge1xyXG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcblxyXG4gIHNtYWxsLFxyXG4gIC5zbWFsbCB7XHJcbiAgICBmb250LXNpemU6IDc1JTtcclxuICB9XHJcbn1cclxuXHJcbmgxLCAuaDEgeyBmb250LXNpemU6ICRmb250LXNpemUtaDE7IH1cclxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjsgfVxyXG5oMywgLmgzIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgzOyB9XHJcbmg0LCAuaDQgeyBmb250LXNpemU6ICRmb250LXNpemUtaDQ7IH1cclxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTsgfVxyXG5oNiwgLmg2IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg2OyB9XHJcblxyXG5cclxuLy8gQm9keSB0ZXh0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbnAge1xyXG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxufVxyXG5cclxuLmxlYWQge1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBmb250LXNpemU6IGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAxLjE1KSk7XHJcbiAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICBsaW5lLWhlaWdodDogMS40O1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRW1waGFzaXMgJiBtaXNjXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEV4OiAoMTJweCBzbWFsbCBmb250IC8gMTRweCBiYXNlIGZvbnQpICogMTAwJSA9IGFib3V0IDg1JVxyXG5zbWFsbCxcclxuLnNtYWxsIHtcclxuICBmb250LXNpemU6IGZsb29yKCgxMDAlICogJGZvbnQtc2l6ZS1zbWFsbCAvICRmb250LXNpemUtYmFzZSkpO1xyXG59XHJcblxyXG5tYXJrLFxyXG4ubWFyayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLXdhcm5pbmctYmc7XHJcbiAgcGFkZGluZzogLjJlbTtcclxufVxyXG5cclxuLy8gQWxpZ25tZW50XHJcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxyXG4udGV4dC1yaWdodCAgICAgICAgICB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XHJcbi50ZXh0LWNlbnRlciAgICAgICAgIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XHJcbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxyXG4udGV4dC1ub3dyYXAgICAgICAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cclxuXHJcbi8vIFRyYW5zZm9ybWF0aW9uXHJcbi50ZXh0LWxvd2VyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxyXG4udGV4dC11cHBlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cclxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxyXG5cclxuLy8gQ29udGV4dHVhbCBjb2xvcnNcclxuLnRleHQtbXV0ZWQge1xyXG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcclxufVxyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XHJcblxyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWluZm8nLCAkc3RhdGUtaW5mby10ZXh0KTtcclxuXHJcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtd2FybmluZycsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xyXG5cclxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xyXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXHJcbi8vIHNhZmVseSBzaGlmdCB0aGluZ3MgYXJvdW5kIChwZXIgU2VtVmVyIHJ1bGVzKS5cclxuLmJnLXByaW1hcnkge1xyXG4gIC8vIEdpdmVuIHRoZSBjb250cmFzdCBoZXJlLCB0aGlzIGlzIHRoZSBvbmx5IGNsYXNzIHRvIGhhdmUgaXRzIGNvbG9yIGludmVydGVkXHJcbiAgLy8gYXV0b21hdGljYWxseS5cclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcclxuXHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xyXG5cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWluZm8nLCAkc3RhdGUtaW5mby1iZyk7XHJcblxyXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctd2FybmluZycsICRzdGF0ZS13YXJuaW5nLWJnKTtcclxuXHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcclxuXHJcblxyXG4vLyBQYWdlIGhlYWRlclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ucGFnZS1oZWFkZXIge1xyXG4gIHBhZGRpbmctYm90dG9tOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSk7XHJcbiAgbWFyZ2luOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMikgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XHJcbn1cclxuXHJcblxyXG4vLyBMaXN0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBVbm9yZGVyZWQgYW5kIE9yZGVyZWQgbGlzdHNcclxudWwsXHJcbm9sIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxuICB1bCxcclxuICBvbCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTGlzdCBvcHRpb25zXHJcblxyXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgZnJvbSBgLmxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcclxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcclxuLmxpc3QtdW5zdHlsZWQge1xyXG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XHJcbn1cclxuXHJcblxyXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xyXG4ubGlzdC1pbmxpbmUge1xyXG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XHJcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBEZXNjcmlwdGlvbiBMaXN0c1xyXG5kbCB7XHJcbiAgbWFyZ2luLXRvcDogMDsgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdFxyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxufVxyXG5kdCxcclxuZGQge1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxufVxyXG5kdCB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuZGQge1xyXG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxyXG59XHJcblxyXG4vLyBIb3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3RzXHJcbi8vXHJcbi8vIERlZmF1bHRzIHRvIGJlaW5nIHN0YWNrZWQgd2l0aG91dCBhbnkgb2YgdGhlIGJlbG93IHN0eWxlcyBhcHBsaWVkLCB1bnRpbCB0aGVcclxuLy8gZ3JpZCBicmVha3BvaW50IGlzIHJlYWNoZWQgKGRlZmF1bHQgb2Ygfjc2OHB4KS5cclxuXHJcbi5kbC1ob3Jpem9udGFsIHtcclxuICBkZCB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDsgLy8gQ2xlYXIgdGhlIGZsb2F0ZWQgYGR0YCBpZiBhbiBlbXB0eSBgZGRgIGlzIHByZXNlbnRcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZGwtaG9yaXpvbnRhbC1icmVha3BvaW50KSB7XHJcbiAgICBkdCB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICB3aWR0aDogKCRkbC1ob3Jpem9udGFsLW9mZnNldCAtIDIwKTtcclxuICAgICAgY2xlYXI6IGxlZnQ7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93O1xyXG4gICAgfVxyXG4gICAgZGQge1xyXG4gICAgICBtYXJnaW4tbGVmdDogJGRsLWhvcml6b250YWwtb2Zmc2V0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE1pc2NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXNcclxuYWJiclt0aXRsZV0sXHJcbi8vIEFkZCBkYXRhLSogYXR0cmlidXRlIHRvIGhlbHAgb3V0IG91ciB0b29sdGlwIHBsdWdpbiwgcGVyIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNTI1N1xyXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcclxuICBjdXJzb3I6IGhlbHA7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkYWJici1ib3JkZXItY29sb3I7XHJcbn1cclxuLmluaXRpYWxpc20ge1xyXG4gIGZvbnQtc2l6ZTogOTAlO1xyXG4gIEBleHRlbmQgLnRleHQtdXBwZXJjYXNlO1xyXG59XHJcblxyXG4vLyBCbG9ja3F1b3Rlc1xyXG5ibG9ja3F1b3RlIHtcclxuICBwYWRkaW5nOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIG1hcmdpbjogMCAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcclxuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcclxuXHJcbiAgcCxcclxuICB1bCxcclxuICBvbCB7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTm90ZTogRGVwcmVjYXRlZCBzbWFsbCBhbmQgLnNtYWxsIGFzIG9mIHYzLjEuMFxyXG4gIC8vIENvbnRleHQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NjBcclxuICBmb290ZXIsXHJcbiAgc21hbGwsXHJcbiAgLnNtYWxsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICAgIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMEEwJzsgLy8gZW0gZGFzaCwgbmJzcFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gT3Bwb3NpdGUgYWxpZ25tZW50IG9mIGJsb2NrcXVvdGVcclxuLy9cclxuLy8gSGVhZHMgdXA6IGBibG9ja3F1b3RlLnB1bGwtcmlnaHRgIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMS4wLlxyXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxyXG5ibG9ja3F1b3RlLnB1bGwtcmlnaHQge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGJvcmRlci1yaWdodDogNXB4IHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItbGVmdDogMDtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgLy8gQWNjb3VudCBmb3IgY2l0YXRpb25cclxuICBmb290ZXIsXHJcbiAgc21hbGwsXHJcbiAgLnNtYWxsIHtcclxuICAgICY6YmVmb3JlIHsgY29udGVudDogJyc7IH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnXFwwMEEwIFxcMjAxNCc7IC8vIG5ic3AsIGVtIGRhc2hcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEFkZHJlc3Nlc1xyXG5hZGRyZXNzIHtcclxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxufVxyXG4iLCIvL1xyXG4vLyBDb2RlIChpbmxpbmUgYW5kIGJsb2NrKVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIElubGluZSBhbmQgYmxvY2sgY29kZSBzdHlsZXNcclxuY29kZSxcclxua2JkLFxyXG5wcmUsXHJcbnNhbXAge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG59XHJcblxyXG4vLyBJbmxpbmUgY29kZVxyXG5jb2RlIHtcclxuICBwYWRkaW5nOiAycHggNHB4O1xyXG4gIGZvbnQtc2l6ZTogOTAlO1xyXG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iZztcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG59XHJcblxyXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxyXG5rYmQge1xyXG4gIHBhZGRpbmc6IDJweCA0cHg7XHJcbiAgZm9udC1zaXplOiA5MCU7XHJcbiAgY29sb3I6ICRrYmQtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCByZ2JhKDAsMCwwLC4yNSk7XHJcblxyXG4gIGtiZCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZm9udC1zaXplOiAxMDAlO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQmxvY2tzIG9mIGNvZGVcclxucHJlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XHJcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAtIDEpOyAvLyAxNHB4IHRvIDEzcHhcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICBjb2xvcjogJHByZS1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJlLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRwcmUtYm9yZGVyLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXHJcbiAgY29kZSB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxyXG4ucHJlLXNjcm9sbGFibGUge1xyXG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xyXG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcclxufVxyXG4iLCIvL1xyXG4vLyBHcmlkIHN5c3RlbVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIENvbnRhaW5lciB3aWR0aHNcclxuLy9cclxuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxyXG5cclxuLmNvbnRhaW5lciB7XHJcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIHdpZHRoOiAkY29udGFpbmVyLXNtO1xyXG4gIH1cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgIHdpZHRoOiAkY29udGFpbmVyLW1kO1xyXG4gIH1cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIHdpZHRoOiAkY29udGFpbmVyLWxnO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZsdWlkIGNvbnRhaW5lclxyXG4vL1xyXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXHJcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxyXG5cclxuLmNvbnRhaW5lci1mbHVpZCB7XHJcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xyXG59XHJcblxyXG5cclxuLy8gUm93XHJcbi8vXHJcbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXHJcblxyXG4ucm93IHtcclxuICBAaW5jbHVkZSBtYWtlLXJvdztcclxufVxyXG5cclxuXHJcbi8vIENvbHVtbnNcclxuLy9cclxuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xyXG5cclxuQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnM7XHJcblxyXG5cclxuLy8gRXh0cmEgc21hbGwgZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgZXh0cmEgc21hbGwgZGV2aWNlcyBsaWtlXHJcbi8vIHNtYXJ0cGhvbmVzLlxyXG5cclxuQGluY2x1ZGUgbWFrZS1ncmlkKHhzKTtcclxuXHJcblxyXG4vLyBTbWFsbCBncmlkXHJcbi8vXHJcbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xyXG4vLyB0byB0YWJsZXRzLlxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKHNtKTtcclxufVxyXG5cclxuXHJcbi8vIE1lZGl1bSBncmlkXHJcbi8vXHJcbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICBAaW5jbHVkZSBtYWtlLWdyaWQobWQpO1xyXG59XHJcblxyXG5cclxuLy8gTGFyZ2UgZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGxhcmdlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKGxnKTtcclxufVxyXG4iLCIvL1xyXG4vLyBUYWJsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG50YWJsZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnO1xyXG59XHJcbmNhcHRpb24ge1xyXG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xyXG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xyXG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcbnRoIHtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG5cclxuLy8gQmFzZWxpbmUgc3R5bGVzXHJcblxyXG4udGFibGUge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgLy8gQ2VsbHNcclxuICA+IHRoZWFkLFxyXG4gID4gdGJvZHksXHJcbiAgPiB0Zm9vdCB7XHJcbiAgICA+IHRyIHtcclxuICAgICAgPiB0aCxcclxuICAgICAgPiB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcclxuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBCb3R0b20gYWxpZ24gZm9yIGNvbHVtbiBoZWFkaW5nc1xyXG4gID4gdGhlYWQgPiB0ciA+IHRoIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICB9XHJcbiAgLy8gUmVtb3ZlIHRvcCBib3JkZXIgZnJvbSB0aGVhZCBieSBkZWZhdWx0XHJcbiAgPiBjYXB0aW9uICsgdGhlYWQsXHJcbiAgPiBjb2xncm91cCArIHRoZWFkLFxyXG4gID4gdGhlYWQ6Zmlyc3QtY2hpbGQge1xyXG4gICAgPiB0cjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgID4gdGgsXHJcbiAgICAgID4gdGQge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLy8gQWNjb3VudCBmb3IgbXVsdGlwbGUgdGJvZHkgaW5zdGFuY2VzXHJcbiAgPiB0Ym9keSArIHRib2R5IHtcclxuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLy8gTmVzdGluZ1xyXG4gIC50YWJsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXHJcblxyXG4udGFibGUtY29uZGVuc2VkIHtcclxuICA+IHRoZWFkLFxyXG4gID4gdGJvZHksXHJcbiAgPiB0Zm9vdCB7XHJcbiAgICA+IHRyIHtcclxuICAgICAgPiB0aCxcclxuICAgICAgPiB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBCb3JkZXJlZCB2ZXJzaW9uXHJcbi8vXHJcbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cclxuXHJcbi50YWJsZS1ib3JkZXJlZCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICA+IHRoZWFkLFxyXG4gID4gdGJvZHksXHJcbiAgPiB0Zm9vdCB7XHJcbiAgICA+IHRyIHtcclxuICAgICAgPiB0aCxcclxuICAgICAgPiB0ZCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICA+IHRoZWFkID4gdHIge1xyXG4gICAgPiB0aCxcclxuICAgID4gdGQge1xyXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gWmVicmEtc3RyaXBpbmdcclxuLy9cclxuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcclxuXHJcbi50YWJsZS1zdHJpcGVkIHtcclxuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUob2RkKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctYWNjZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEhvdmVyIGVmZmVjdFxyXG4vL1xyXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXHJcblxyXG4udGFibGUtaG92ZXIge1xyXG4gID4gdGJvZHkgPiB0cjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctaG92ZXI7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gVGFibGUgY2VsbCBzaXppbmdcclxuLy9cclxuLy8gUmVzZXQgZGVmYXVsdCB0YWJsZSBiZWhhdmlvclxyXG5cclxudGFibGUgY29sW2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxyXG4gIGZsb2F0OiBub25lO1xyXG4gIGRpc3BsYXk6IHRhYmxlLWNvbHVtbjtcclxufVxyXG50YWJsZSB7XHJcbiAgdGQsXHJcbiAgdGgge1xyXG4gICAgJltjbGFzcyo9XCJjb2wtXCJdIHtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFRhYmxlIGJhY2tncm91bmRzXHJcbi8vXHJcbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XHJcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnYWN0aXZlJywgJHRhYmxlLWJnLWFjdGl2ZSk7XHJcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdzdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcclxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3dhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XHJcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdkYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcclxuXHJcblxyXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xyXG4vL1xyXG4vLyBXcmFwIHlvdXIgdGFibGVzIGluIGAudGFibGUtcmVzcG9uc2l2ZWAgYW5kIHdlJ2xsIG1ha2UgdGhlbSBtb2JpbGUgZnJpZW5kbHlcclxuLy8gYnkgZW5hYmxpbmcgaG9yaXpvbnRhbCBzY3JvbGxpbmcuIE9ubHkgYXBwbGllcyA8NzY4cHguIEV2ZXJ5dGhpbmcgYWJvdmUgdGhhdFxyXG4vLyB3aWxsIGRpc3BsYXkgbm9ybWFsbHkuXHJcblxyXG4udGFibGUtcmVzcG9uc2l2ZSB7XHJcbiAgb3ZlcmZsb3cteDogYXV0bztcclxuICBtaW4taGVpZ2h0OiAwLjAxJTsgLy8gV29ya2Fyb3VuZCBmb3IgSUU5IGJ1ZyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTQ4MzcpXHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAwLjc1KTtcclxuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcclxuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuXHJcbiAgICAvLyBUaWdodGVuIHVwIHNwYWNpbmdcclxuICAgID4gLnRhYmxlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgIC8vIEVuc3VyZSB0aGUgY29udGVudCBkb2Vzbid0IHdyYXBcclxuICAgICAgPiB0aGVhZCxcclxuICAgICAgPiB0Ym9keSxcclxuICAgICAgPiB0Zm9vdCB7XHJcbiAgICAgICAgPiB0ciB7XHJcbiAgICAgICAgICA+IHRoLFxyXG4gICAgICAgICAgPiB0ZCB7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gU3BlY2lhbCBvdmVycmlkZXMgZm9yIHRoZSBib3JkZXJlZCB0YWJsZXNcclxuICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgLy8gTnVrZSB0aGUgYXBwcm9wcmlhdGUgYm9yZGVycyBzbyB0aGF0IHRoZSBwYXJlbnQgY2FuIGhhbmRsZSB0aGVtXHJcbiAgICAgID4gdGhlYWQsXHJcbiAgICAgID4gdGJvZHksXHJcbiAgICAgID4gdGZvb3Qge1xyXG4gICAgICAgID4gdHIge1xyXG4gICAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcclxuICAgICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgID4gdGg6bGFzdC1jaGlsZCxcclxuICAgICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIE9ubHkgbnVrZSB0aGUgbGFzdCByb3cncyBib3R0b20tYm9yZGVyIGluIGB0Ym9keWAgYW5kIGB0Zm9vdGAgc2luY2VcclxuICAgICAgLy8gY2hhbmNlcyBhcmUgdGhlcmUgd2lsbCBiZSBvbmx5IG9uZSBgdHJgIGluIGEgYHRoZWFkYCBhbmQgdGhhdCB3b3VsZFxyXG4gICAgICAvLyByZW1vdmUgdGhlIGJvcmRlciBhbHRvZ2V0aGVyLlxyXG4gICAgICA+IHRib2R5LFxyXG4gICAgICA+IHRmb290IHtcclxuICAgICAgICA+IHRyOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgPiB0aCxcclxuICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gRm9ybXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBOb3JtYWxpemUgbm9uLWNvbnRyb2xzXHJcbi8vXHJcbi8vIFJlc3R5bGUgYW5kIGJhc2VsaW5lIG5vbi1jb250cm9sIGZvcm0gZWxlbWVudHMuXHJcblxyXG5maWVsZHNldCB7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIC8vIENocm9tZSBhbmQgRmlyZWZveCBzZXQgYSBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcclxuICAvLyBzbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBpdCBiZWhhdmVzIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXHJcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXHJcbiAgbWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG5sZWdlbmQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XHJcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgY29sb3I6ICRsZWdlbmQtY29sb3I7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGVnZW5kLWJvcmRlci1jb2xvcjtcclxufVxyXG5cclxubGFiZWwge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXHJcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG5cclxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcclxuLy9cclxuLy8gV2hpbGUgbW9zdCBvZiBvdXIgZm9ybSBzdHlsZXMgcmVxdWlyZSBleHRyYSBjbGFzc2VzLCBzb21lIGJhc2ljIG5vcm1hbGl6YXRpb25cclxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcclxuLy8gYWRkcmVzcyBicm93c2VyIGluY29uc2lzdGVuY2llcy5cclxuXHJcbi8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbn1cclxuXHJcbi8vIFBvc2l0aW9uIHJhZGlvcyBhbmQgY2hlY2tib3hlcyBiZXR0ZXJcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gIG1hcmdpbjogNHB4IDAgMDtcclxuICBtYXJnaW4tdG9wOiAxcHggXFw5OyAvLyBJRTgtOVxyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLy8gTWFrZSByYW5nZSBpbnB1dHMgYmVoYXZlIGxpa2UgdGV4dHVhbCBmb3JtIGNvbnRyb2xzXHJcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8vIE1ha2UgbXVsdGlwbGUgc2VsZWN0IGVsZW1lbnRzIGhlaWdodCBub3QgZml4ZWRcclxuc2VsZWN0W211bHRpcGxlXSxcclxuc2VsZWN0W3NpemVdIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vIEZvY3VzIGZvciBmaWxlLCByYWRpbywgYW5kIGNoZWNrYm94XHJcbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyB7XHJcbiAgQGluY2x1ZGUgdGFiLWZvY3VzO1xyXG59XHJcblxyXG4vLyBBZGp1c3Qgb3V0cHV0IGVsZW1lbnRcclxub3V0cHV0IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcclxufVxyXG5cclxuXHJcbi8vIENvbW1vbiBmb3JtIGNvbnRyb2xzXHJcbi8vXHJcbi8vIFNoYXJlZCBzaXplIGFuZCB0eXBlIHJlc2V0cyBmb3IgZm9ybSBjb250cm9scy4gQXBwbHkgYC5mb3JtLWNvbnRyb2xgIHRvIGFueVxyXG4vLyBvZiB0aGUgZm9sbG93aW5nIGZvcm0gY29udHJvbHM6XHJcbi8vXHJcbi8vIHNlbGVjdFxyXG4vLyB0ZXh0YXJlYVxyXG4vLyBpbnB1dFt0eXBlPVwidGV4dFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1cclxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZVwiXVxyXG4vLyBpbnB1dFt0eXBlPVwibW9udGhcIl1cclxuLy8gaW5wdXRbdHlwZT1cInRpbWVcIl1cclxuLy8gaW5wdXRbdHlwZT1cIndlZWtcIl1cclxuLy8gaW5wdXRbdHlwZT1cIm51bWJlclwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiZW1haWxcIl1cclxuLy8gaW5wdXRbdHlwZT1cInVybFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJ0ZWxcIl1cclxuLy8gaW5wdXRbdHlwZT1cImNvbG9yXCJdXHJcblxyXG4uZm9ybS1jb250cm9sIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTsgLy8gTWFrZSBpbnB1dHMgYXQgbGVhc3QgdGhlIGhlaWdodCBvZiB0aGVpciBidXR0b24gY291bnRlcnBhcnQgKGJhc2UgbGluZS1oZWlnaHQgKyBwYWRkaW5nICsgYm9yZGVyKVxyXG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICBjb2xvcjogJGlucHV0LWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1czsgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgPHNlbGVjdD5zIGluIENTUy5cclxuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXMpO1xyXG5cclxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXHJcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzO1xyXG5cclxuICAvLyBQbGFjZWhvbGRlclxyXG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyO1xyXG5cclxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cclxuICAmOjotbXMtZXhwYW5kIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuXHJcbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcclxuICAvL1xyXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXHJcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcclxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgJltyZWFkb25seV0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWRpc2FibGVkO1xyXG4gICAgb3BhY2l0eTogMTsgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NVxyXG4gIH1cclxuXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRleHRhcmVhJiB0byB0ZXh0YXJlYS5mb3JtLWNvbnRyb2xcclxufVxyXG5cclxuLy8gUmVzZXQgaGVpZ2h0IGZvciBgdGV4dGFyZWFgc1xyXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuXHJcbi8vIFNlYXJjaCBpbnB1dHMgaW4gaU9TXHJcbi8vXHJcbi8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcclxuLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XHJcbi8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcclxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG5cclxuXHJcbi8vIFNwZWNpYWwgc3R5bGVzIGZvciBpT1MgdGVtcG9yYWwgaW5wdXRzXHJcbi8vXHJcbi8vIEluIE1vYmlsZSBTYWZhcmksIHNldHRpbmcgYGRpc3BsYXk6IGJsb2NrYCBvbiB0ZW1wb3JhbCBpbnB1dHMgY2F1c2VzIHRoZVxyXG4vLyB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgdG8gYmVjb21lIHZlcnRpY2FsbHkgbWlzYWxpZ25lZC4gQXMgYSB3b3JrYXJvdW5kLCB3ZVxyXG4vLyBzZXQgYSBwaXhlbCBsaW5lLWhlaWdodCB0aGF0IG1hdGNoZXMgdGhlIGdpdmVuIGhlaWdodCBvZiB0aGUgaW5wdXQsIGJ1dCBvbmx5XHJcbi8vIGZvciBTYWZhcmkuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XHJcbi8vXHJcbi8vIE5vdGUgdGhhdCBhcyBvZiA5LjMsIGlPUyBkb2Vzbid0IHN1cHBvcnQgYHdlZWtgLlxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xyXG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcclxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xyXG4gICAgJi5mb3JtLWNvbnRyb2wge1xyXG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xyXG4gICAgfVxyXG5cclxuICAgICYuaW5wdXQtc20sXHJcbiAgICAuaW5wdXQtZ3JvdXAtc20gJiB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gICAgfVxyXG5cclxuICAgICYuaW5wdXQtbGcsXHJcbiAgICAuaW5wdXQtZ3JvdXAtbGcgJiB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZvcm0gZ3JvdXBzXHJcbi8vXHJcbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3JcclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cclxuXHJcbi5mb3JtLWdyb3VwIHtcclxuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xyXG59XHJcblxyXG5cclxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXHJcbi8vXHJcbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXHJcblxyXG4ucmFkaW8sXHJcbi5jaGVja2JveCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgbGFiZWwge1xyXG4gICAgbWluLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxufVxyXG4ucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG4ucmFkaW8taW5saW5lIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcclxuLmNoZWNrYm94LWlubGluZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbiAgbWFyZ2luLXRvcDogNHB4IFxcOTtcclxufVxyXG5cclxuLnJhZGlvICsgLnJhZGlvLFxyXG4uY2hlY2tib3ggKyAuY2hlY2tib3gge1xyXG4gIG1hcmdpbi10b3A6IC01cHg7IC8vIE1vdmUgdXAgc2libGluZyByYWRpb3Mgb3IgY2hlY2tib3hlcyBmb3IgdGlnaHRlciBzcGFjaW5nXHJcbn1cclxuXHJcbi8vIFJhZGlvcyBhbmQgY2hlY2tib3hlcyBvbiBzYW1lIGxpbmVcclxuLnJhZGlvLWlubGluZSxcclxuLmNoZWNrYm94LWlubGluZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5yYWRpby1pbmxpbmUgKyAucmFkaW8taW5saW5lLFxyXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tbGVmdDogMTBweDsgLy8gc3BhY2Ugb3V0IGNvbnNlY3V0aXZlIGlubGluZSBjb250cm9sc1xyXG59XHJcblxyXG4vLyBBcHBseSBzYW1lIGRpc2FibGVkIGN1cnNvciB0d2VhayBhcyBmb3IgaW5wdXRzXHJcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXHJcbi8vXHJcbi8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICZbZGlzYWJsZWRdLFxyXG4gICYuZGlzYWJsZWQsXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxufVxyXG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIGRpcmVjdGx5IG9uIDxsYWJlbD5zXHJcbi5yYWRpby1pbmxpbmUsXHJcbi5jaGVja2JveC1pbmxpbmUge1xyXG4gICYuZGlzYWJsZWQsXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxufVxyXG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIG9uIGVsZW1lbnRzIHdpdGggPGxhYmVsPiBkZXNjZW5kYW50c1xyXG4ucmFkaW8sXHJcbi5jaGVja2JveCB7XHJcbiAgJi5kaXNhYmxlZCxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBTdGF0aWMgZm9ybSBjb250cm9sIHRleHRcclxuLy9cclxuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxyXG4vLyBhIGhvcml6b250YWwgZm9ybSBsYXlvdXQuXHJcblxyXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgLy8gU2l6ZSBpdCBhcHByb3ByaWF0ZWx5IG5leHQgdG8gcmVhbCBmb3JtIGNvbnRyb2xzXHJcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XHJcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XHJcbiAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGZyb20gYHBgXHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1iYXNlKTtcclxuXHJcbiAgJi5pbnB1dC1sZyxcclxuICAmLmlucHV0LXNtIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xyXG4vL1xyXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxyXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxyXG4vL1xyXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxyXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXHJcblxyXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbi5mb3JtLWdyb3VwLXNtIHtcclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XHJcbiAgfVxyXG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgfVxyXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcclxuICBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLXNtYWxsKTtcclxuICAgIHBhZGRpbmc6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmlucHV0LWxnJywgJGlucHV0LWhlaWdodC1sYXJnZSwgJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xyXG4uZm9ybS1ncm91cC1sZyB7XHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xyXG4gIH1cclxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gIH1cclxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXHJcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XHJcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XHJcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKyAxKSAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGNvbnRyb2wgZmVlZGJhY2sgc3RhdGVzXHJcbi8vXHJcbi8vIEFwcGx5IGNvbnRleHR1YWwgYW5kIHNlbWFudGljIHN0YXRlcyB0byBpbmRpdmlkdWFsIGZvcm0gY29udHJvbHMuXHJcblxyXG4uaGFzLWZlZWRiYWNrIHtcclxuICAvLyBFbmFibGUgYWJzb2x1dGUgcG9zaXRpb25pbmdcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC8vIEVuc3VyZSBpY29ucyBkb24ndCBvdmVybGFwIHRleHRcclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtaGVpZ2h0LWJhc2UgKiAxLjI1KTtcclxuICB9XHJcbn1cclxuLy8gRmVlZGJhY2sgaWNvbiAocmVxdWlyZXMgLmdseXBoaWNvbiBjbGFzc2VzKVxyXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHotaW5kZXg6IDI7IC8vIEVuc3VyZSBpY29uIGlzIGFib3ZlIGlucHV0IGdyb3Vwc1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWJhc2U7XHJcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XHJcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuLmlucHV0LWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcclxuLmlucHV0LWdyb3VwLWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcclxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxufVxyXG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxyXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxyXG4uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG59XHJcblxyXG4vLyBGZWVkYmFjayBzdGF0ZXNcclxuLmhhcy1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy1iZyk7XHJcbn1cclxuLmhhcy13YXJuaW5nIHtcclxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy1iZyk7XHJcbn1cclxuLmhhcy1lcnJvciB7XHJcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItYmcpO1xyXG59XHJcblxyXG4vLyBSZXBvc2l0aW9uIGZlZWRiYWNrIGljb24gaWYgaW5wdXQgaGFzIHZpc2libGUgbGFiZWwgYWJvdmVcclxuLmhhcy1mZWVkYmFjayBsYWJlbCB7XHJcblxyXG4gICYgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgIHRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cclxuICB9XHJcbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICB0b3A6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gSGVscCB0ZXh0XHJcbi8vXHJcbi8vIEFwcGx5IHRvIGFueSBlbGVtZW50IHlvdSB3aXNoIHRvIGNyZWF0ZSBsaWdodCB0ZXh0IGZvciBwbGFjZW1lbnQgaW1tZWRpYXRlbHlcclxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXHJcblxyXG4uaGVscC1ibG9jayB7XHJcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcclxuICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxyXG59XHJcblxyXG5cclxuLy8gSW5saW5lIGZvcm1zXHJcbi8vXHJcbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxyXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cclxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cclxuLy9cclxuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxyXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxyXG4vL1xyXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIGAubmF2YmFyLWZvcm1gIGluIG5hdmJhcnMubGVzcy5cclxuXHJcbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcclxuQG1peGluIGZvcm0taW5saW5lIHtcclxuXHJcbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcclxuICAgIC5mb3JtLWdyb3VwIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxyXG4gICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcclxuICAgIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHJcbiAgICAgIC5pbnB1dC1ncm91cC1hZGRvbixcclxuICAgICAgLmlucHV0LWdyb3VwLWJ0bixcclxuICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBJbnB1dCBncm91cHMgbmVlZCB0aGF0IDEwMCUgd2lkdGggdGhvdWdoXHJcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRyb2wtbGFiZWwge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxyXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXHJcbiAgICAucmFkaW8sXHJcbiAgICAuY2hlY2tib3gge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG4gICAgLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmUtb3ZlcnJpZGUgdGhlIGZlZWRiYWNrIGljb24uXHJcbiAgICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGZvcm0taW5saW5lYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XHJcbi5mb3JtLWlubGluZSB7XHJcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XHJcbn1cclxuXHJcblxyXG5cclxuLy8gSG9yaXpvbnRhbCBmb3Jtc1xyXG4vL1xyXG4vLyBIb3Jpem9udGFsIGZvcm1zIGFyZSBidWlsdCBvbiBncmlkIGNsYXNzZXMgYW5kIGFsbG93IHlvdSB0byBjcmVhdGUgZm9ybXMgd2l0aFxyXG4vLyBsYWJlbHMgb24gdGhlIGxlZnQgYW5kIGlucHV0cyBvbiB0aGUgcmlnaHQuXHJcblxyXG4uZm9ybS1ob3Jpem9udGFsIHtcclxuXHJcbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXHJcbiAgLy9cclxuICAvLyBMYWJlbHMgYWxzbyBnZXQgc29tZSByZXNldCBzdHlsZXMsIGJ1dCB0aGF0IGlzIHNjb3BlZCB0byBhIG1lZGlhIHF1ZXJ5IGJlbG93LlxyXG4gIC5yYWRpbyxcclxuICAuY2hlY2tib3gsXHJcbiAgLnJhZGlvLWlubGluZSxcclxuICAuY2hlY2tib3gtaW5saW5lIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXHJcbiAgfVxyXG4gIC8vIEFjY291bnQgZm9yIHBhZGRpbmcgd2UncmUgYWRkaW5nIHRvIGVuc3VyZSB0aGUgYWxpZ25tZW50IGFuZCBvZiBoZWxwIHRleHRcclxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xyXG4gIC5yYWRpbyxcclxuICAuY2hlY2tib3gge1xyXG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xyXG4gIH1cclxuXHJcbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXHJcbiAgLmZvcm0tZ3JvdXAge1xyXG4gICAgQGluY2x1ZGUgbWFrZS1yb3c7XHJcbiAgfVxyXG5cclxuICAvLyBSZXNldCBzcGFjaW5nIGFuZCByaWdodCBhbGlnbiBsYWJlbHMsIGJ1dCBzY29wZSB0byBtZWRpYSBxdWVyaWVzIHNvIHRoYXRcclxuICAvLyBsYWJlbHMgb24gbmFycm93IHZpZXdwb3J0cyBzdGFjayB0aGUgc2FtZSBhcyBhIGRlZmF1bHQgZm9ybSBleGFtcGxlLlxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgLmNvbnRyb2wtbGFiZWwge1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBWYWxpZGF0aW9uIHN0YXRlc1xyXG4gIC8vXHJcbiAgLy8gUmVwb3NpdGlvbiB0aGUgaWNvbiBiZWNhdXNlIGl0J3Mgbm93IHdpdGhpbiBhIGdyaWQgY29sdW1uIGFuZCBjb2x1bW5zIGhhdmVcclxuICAvLyBgcG9zaXRpb246IHJlbGF0aXZlO2Agb24gdGhlbS4gQWxzbyBhY2NvdW50cyBmb3IgdGhlIGdyaWQgZ3V0dGVyIHBhZGRpbmcuXHJcbiAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgIHJpZ2h0OiBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xyXG4gIH1cclxuXHJcbiAgLy8gRm9ybSBncm91cCBzaXplc1xyXG4gIC8vXHJcbiAgLy8gUXVpY2sgdXRpbGl0eSBjbGFzcyBmb3IgYXBwbHlpbmcgYC5pbnB1dC1sZ2AgYW5kIGAuaW5wdXQtc21gIHN0eWxlcyB0byB0aGVcclxuICAvLyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoaW4gYSBgLmZvcm0tZ3JvdXBgLlxyXG4gIC5mb3JtLWdyb3VwLWxnIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCArIDEpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuZm9ybS1ncm91cC1zbSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgICAgLmNvbnRyb2wtbGFiZWwge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKTtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gQnV0dG9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2Ugc3R5bGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxyXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSwgJGxpbmUtaGVpZ2h0LWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcclxuXHJcbiAgJixcclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSB7XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJi5mb2N1cyB7XHJcbiAgICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyxcclxuICAmLmZvY3VzIHtcclxuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xyXG4gIH1cclxuXHJcbiAgJi5kaXNhYmxlZCxcclxuICAmW2Rpc2FibGVkXSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxuXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYnRuXHJcbn1cclxuXHJcbmEuYnRuIHtcclxuICAmLmRpc2FibGVkLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEFsdGVybmF0ZSBidXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWRlZmF1bHQge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcclxufVxyXG4uYnRuLXByaW1hcnkge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcclxufVxyXG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cclxuLmJ0bi1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXN1Y2Nlc3MtY29sb3IsICRidG4tc3VjY2Vzcy1iZywgJGJ0bi1zdWNjZXNzLWJvcmRlcik7XHJcbn1cclxuLy8gSW5mbyBhcHBlYXJzIGFzIGJsdWUtZ3JlZW5cclxuLmJ0bi1pbmZvIHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XHJcbn1cclxuLy8gV2FybmluZyBhcHBlYXJzIGFzIG9yYW5nZVxyXG4uYnRuLXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcclxufVxyXG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcclxuLmJ0bi1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGFuZ2VyLWNvbG9yLCAkYnRuLWRhbmdlci1iZywgJGJ0bi1kYW5nZXItYm9yZGVyKTtcclxufVxyXG5cclxuXHJcbi8vIExpbmsgYnV0dG9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xyXG4uYnRuLWxpbmsge1xyXG4gIGNvbG9yOiAkbGluay1jb2xvcjtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICYsXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxuICAmLFxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyxcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEJ1dHRvbiBTaXplc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1sZyB7XHJcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBldmVuLW51bWJlcmVkIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBsYXJnZSBpbnB1dFxyXG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZSk7XHJcbn1cclxuLmJ0bi1zbSB7XHJcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxufVxyXG4uYnRuLXhzIHtcclxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy14cy12ZXJ0aWNhbCwgJHBhZGRpbmcteHMtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG59XHJcblxyXG5cclxuLy8gQmxvY2sgYnV0dG9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWJsb2NrIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xyXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAmLmJ0bi1ibG9jayB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gQ29tcG9uZW50IGFuaW1hdGlvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEhlYWRzIHVwIVxyXG4vL1xyXG4vLyBXZSBkb24ndCB1c2UgdGhlIGAub3BhY2l0eSgpYCBtaXhpbiBoZXJlIHNpbmNlIGl0IGNhdXNlcyBhIGJ1ZyB3aXRoIHRleHRcclxuLy8gZmllbGRzIGluIElFNy04LiBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzM1NTIuXHJcblxyXG4uZmFkZSB7XHJcbiAgb3BhY2l0eTogMDtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgLjE1cyBsaW5lYXIpO1xyXG4gICYuaW4ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbi5jb2xsYXBzZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgJi5pbiAgICAgIHsgZGlzcGxheTogYmxvY2s7IH1cclxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdHImLmluIHRvIHRyLmNvbGxhcHNlLmluXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRib2R5Ji5pbiB0byB0Ym9keS5jb2xsYXBzZS5pblxyXG59XHJcblxyXG50ci5jb2xsYXBzZS5pbiAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxyXG5cclxudGJvZHkuY29sbGFwc2UuaW4geyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cclxuXHJcbi5jb2xsYXBzaW5nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShoZWlnaHQsIHZpc2liaWxpdHkpO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oLjM1cyk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XHJcbn1cclxuIiwiLy9cclxuLy8gRHJvcGRvd24gbWVudXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxyXG4uY2FyZXQge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIGJvcmRlci10b3A6ICAgJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xyXG4gIGJvcmRlci10b3A6ICAgJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgXFw5OyAvLyBJRThcclxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1sZWZ0OiAgJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChkaXYpXHJcbi5kcm9wdXAsXHJcbi5kcm9wZG93biB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vLyBQcmV2ZW50IHRoZSBmb2N1cyBvbiB0aGUgZHJvcGRvd24gdG9nZ2xlIHdoZW4gY2xvc2luZyBkcm9wZG93bnNcclxuLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XHJcbiAgb3V0bGluZTogMDtcclxufVxyXG5cclxuLy8gVGhlIGRyb3Bkb3duIG1lbnUgKHVsKVxyXG4uZHJvcGRvd24tbWVudSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XHJcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcclxuICBmbG9hdDogbGVmdDtcclxuICBtaW4td2lkdGg6IDE2MHB4O1xyXG4gIHBhZGRpbmc6IDVweCAwO1xyXG4gIG1hcmdpbjogMnB4IDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxyXG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOyAvLyBJRTggZmFsbGJhY2tcclxuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDZweCAxMnB4IHJnYmEoMCwwLDAsLjE3NSkpO1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcblxyXG4gIC8vIEFsaWducyB0aGUgZHJvcGRvd24gbWVudSB0byByaWdodFxyXG4gIC8vXHJcbiAgLy8gRGVwcmVjYXRlZCBhcyBvZiAzLjEuMCBpbiBmYXZvciBvZiBgLmRyb3Bkb3duLW1lbnUtW2Rpcl1gXHJcbiAgJi5wdWxsLXJpZ2h0IHtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogYXV0bztcclxuICB9XHJcblxyXG4gIC8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiB0aGUgZHJvcGRvd25cclxuICAuZGl2aWRlciB7XHJcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XHJcbiAgfVxyXG5cclxuICAvLyBMaW5rcyB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcclxuICA+IGxpID4gYSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IDNweCAyMHB4O1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXHJcbiAgfVxyXG59XHJcblxyXG4vLyBIb3Zlci9Gb2N1cyBzdGF0ZVxyXG4uZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQWN0aXZlIHN0YXRlXHJcbi5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEge1xyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRGlzYWJsZWQgc3RhdGVcclxuLy9cclxuLy8gR3JheSBvdXQgdGV4dCBhbmQgZW5zdXJlIHRoZSBob3Zlci9mb2N1cyBzdGF0ZSByZW1haW5zIGdyYXlcclxuXHJcbi5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYSB7XHJcbiAgJixcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLy8gTnVrZSBob3Zlci9mb2N1cyBlZmZlY3RzXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIENTUyBncmFkaWVudFxyXG4gICAgQGluY2x1ZGUgcmVzZXQtZmlsdGVyO1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxufVxyXG5cclxuLy8gT3BlbiBzdGF0ZSBmb3IgdGhlIGRyb3Bkb3duXHJcbi5vcGVuIHtcclxuICAvLyBTaG93IHRoZSBtZW51XHJcbiAgPiAuZHJvcGRvd24tbWVudSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIC8vIFJlbW92ZSB0aGUgb3V0bGluZSB3aGVuIDpmb2N1cyBpcyB0cmlnZ2VyZWRcclxuICA+IGEge1xyXG4gICAgb3V0bGluZTogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1lbnUgcG9zaXRpb25pbmdcclxuLy9cclxuLy8gQWRkIGV4dHJhIGNsYXNzIHRvIGAuZHJvcGRvd24tbWVudWAgdG8gZmxpcCB0aGUgYWxpZ25tZW50IG9mIHRoZSBkcm9wZG93blxyXG4vLyBtZW51IHdpdGggdGhlIHBhcmVudC5cclxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xyXG4gIGxlZnQ6IGF1dG87IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gYC5kcm9wZG93bi1tZW51YFxyXG4gIHJpZ2h0OiAwO1xyXG59XHJcbi8vIFdpdGggdjMsIHdlIGVuYWJsZWQgYXV0by1mbGlwcGluZyBpZiB5b3UgaGF2ZSBhIGRyb3Bkb3duIHdpdGhpbiBhIHJpZ2h0XHJcbi8vIGFsaWduZWQgbmF2IGNvbXBvbmVudC4gVG8gZW5hYmxlIHRoZSB1bmRvaW5nIG9mIHRoYXQsIHdlIHByb3ZpZGUgYW4gb3ZlcnJpZGVcclxuLy8gdG8gcmVzdG9yZSB0aGUgZGVmYXVsdCBkcm9wZG93biBtZW51IGFsaWdubWVudC5cclxuLy9cclxuLy8gVGhpcyBpcyBvbmx5IGZvciBsZWZ0LWFsaWduaW5nIGEgZHJvcGRvd24gbWVudSB3aXRoaW4gYSBgLm5hdmJhci1yaWdodGAgb3JcclxuLy8gYC5wdWxsLXJpZ2h0YCBuYXYgY29tcG9uZW50LlxyXG4uZHJvcGRvd24tbWVudS1sZWZ0IHtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcclxuLmRyb3Bkb3duLWhlYWRlciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogM3B4IDIwcHg7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXHJcbn1cclxuXHJcbi8vIEJhY2tkcm9wIHRvIGNhdGNoIGJvZHkgY2xpY2tzIG9uIG1vYmlsZSwgZXRjLlxyXG4uZHJvcGRvd24tYmFja2Ryb3Age1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICB0b3A6IDA7XHJcbiAgei1pbmRleDogKCR6aW5kZXgtZHJvcGRvd24gLSAxMCk7XHJcbn1cclxuXHJcbi8vIFJpZ2h0IGFsaWduZWQgZHJvcGRvd25zXHJcbi5wdWxsLXJpZ2h0ID4gLmRyb3Bkb3duLW1lbnUge1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxyXG4vL1xyXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQsIGJyby5cclxuLy8gVE9ETzogYWJzdHJhY3QgdGhpcyBzbyB0aGF0IHRoZSBuYXZiYXIgZml4ZWQgc3R5bGVzIGFyZSBub3QgcGxhY2VkIGhlcmU/XHJcblxyXG4uZHJvcHVwLFxyXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAuZHJvcGRvd24ge1xyXG4gIC8vIFJldmVyc2UgdGhlIGNhcmV0XHJcbiAgLmNhcmV0IHtcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBkYXNoZWQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxyXG4gICAgY29udGVudDogXCJcIjtcclxuICB9XHJcbiAgLy8gRGlmZmVyZW50IHBvc2l0aW9uaW5nIGZvciBib3R0b20gdXAgbWVudVxyXG4gIC5kcm9wZG93bi1tZW51IHtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGJvdHRvbTogMTAwJTtcclxuICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XHJcbi8vXHJcbi8vIFJlaXRlcmF0ZSBwZXIgbmF2YmFyLmxlc3MgYW5kIHRoZSBtb2RpZmllZCBjb21wb25lbnQgYWxpZ25tZW50IHRoZXJlLlxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAubmF2YmFyLXJpZ2h0IHtcclxuICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgcmlnaHQ6IDA7IGxlZnQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICAvLyBOZWNlc3NhcnkgZm9yIG92ZXJyaWRlcyBvZiB0aGUgZGVmYXVsdCByaWdodCBhbGlnbmVkIG1lbnUuXHJcbiAgICAvLyBXaWxsIHJlbW92ZSBjb21lIHY0IGluIGFsbCBsaWtlbGlob29kLlxyXG4gICAgLmRyb3Bkb3duLW1lbnUtbGVmdCB7XHJcbiAgICAgIGxlZnQ6IDA7IHJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBCdXR0b24gZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cclxuLmJ0bi1ncm91cCxcclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxyXG4gID4gLmJ0biB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXHJcbi5idG4tZ3JvdXAge1xyXG4gIC5idG4gKyAuYnRuLFxyXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxyXG4gIC5idG4tZ3JvdXAgKyAuYnRuLFxyXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxyXG4uYnRuLXRvb2xiYXIge1xyXG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gIC5idG4sXHJcbiAgLmJ0bi1ncm91cCxcclxuICAuaW5wdXQtZ3JvdXAge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAsXHJcbiAgPiAuaW5wdXQtZ3JvdXAge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICB9XHJcbn1cclxuXHJcbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcblxyXG4vLyBTZXQgY29ybmVycyBpbmRpdmlkdWFsIGJlY2F1c2Ugc29tZXRpbWVzIGEgc2luZ2xlIGJ1dHRvbiBjYW4gYmUgaW4gYSAuYnRuLWdyb3VwIGFuZCB3ZSBuZWVkIDpmaXJzdC1jaGlsZCBhbmQgOmxhc3QtY2hpbGQgdG8gYm90aCBtYXRjaFxyXG4uYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgJjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSwgZ2l2ZW4gdGhhdCBhIC5kcm9wZG93bi1tZW51IGlzIHVzZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcclxuLmJ0bi1ncm91cCA+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcclxuLmJ0bi1ncm91cCA+IC5kcm9wZG93bi10b2dnbGU6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxufVxyXG5cclxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXHJcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwIHtcclxuICBmbG9hdDogbGVmdDtcclxufVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcclxuICA+IC5idG46bGFzdC1jaGlsZCxcclxuICA+IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxuICB9XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xyXG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxufVxyXG5cclxuLy8gT24gYWN0aXZlIGFuZCBvcGVuLCBkb24ndCBzaG93IG91dGxpbmVcclxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcclxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcblxyXG4vLyBTaXppbmdcclxuLy9cclxuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXHJcblxyXG4uYnRuLWdyb3VwLXhzID4gLmJ0biB7IEBleHRlbmQgLmJ0bi14czsgfVxyXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxyXG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxyXG5cclxuXHJcbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxyXG4uYnRuLWdyb3VwID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIHBhZGRpbmctbGVmdDogOHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcclxufVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIHBhZGRpbmctbGVmdDogMTJweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xyXG59XHJcblxyXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcclxuLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBhbmQgc2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxyXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KSk7XHJcblxyXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cclxuICAmLmJ0bi1saW5rIHtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gUmVwb3NpdGlvbiB0aGUgY2FyZXRcclxuLmJ0biAuY2FyZXQge1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG59XHJcbi8vIENhcmV0cyBpbiBvdGhlciBidXR0b24gc2l6ZXNcclxuLmJ0bi1sZyAuY2FyZXQge1xyXG4gIGJvcmRlci13aWR0aDogJGNhcmV0LXdpZHRoLWxhcmdlICRjYXJldC13aWR0aC1sYXJnZSAwO1xyXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XHJcbn1cclxuLy8gVXBzaWRlIGRvd24gY2FyZXRzIGZvciAuZHJvcHVwXHJcbi5kcm9wdXAgLmJ0bi1sZyAuY2FyZXQge1xyXG4gIGJvcmRlci13aWR0aDogMCAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlO1xyXG59XHJcblxyXG5cclxuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcclxuICA+IC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwLFxyXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLy8gQ2xlYXIgZmxvYXRzIHNvIGRyb3Bkb3duIG1lbnVzIGNhbiBiZSBwcm9wZXJseSBwbGFjZWRcclxuICA+IC5idG4tZ3JvdXAge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICA+IC5idG4ge1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gLmJ0biArIC5idG4sXHJcbiAgPiAuYnRuICsgLmJ0bi1ncm91cCxcclxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxyXG4gID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xyXG4gICAgbWFyZ2luLXRvcDogLTFweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4ge1xyXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxuICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XHJcbiAgfVxyXG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICB9XHJcbn1cclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXHJcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbn1cclxuXHJcblxyXG4vLyBKdXN0aWZpZWQgYnV0dG9uIGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgd2lkdGg6IDElO1xyXG4gIH1cclxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gID4gLmJ0bi1ncm91cCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXHJcbi8vXHJcbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXHJcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxyXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXHJcbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXHJcbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cclxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cclxuLy9cclxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cclxuXHJcbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0ge1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcclxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIElucHV0IGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gQmFzZSBzdHlsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5wdXQtZ3JvdXAge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGRyb3Bkb3duc1xyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8vIHByZXZlbnQgaW5wdXQgZ3JvdXBzIGZyb20gaW5oZXJpdGluZyBib3JkZXIgc3R5bGVzIGZyb20gdGFibGUgY2VsbHMgd2hlbiBwbGFjZWQgd2l0aGluIGEgdGFibGVcclxuXHJcbiAgLy8gVW5kbyBwYWRkaW5nIGFuZCBmbG9hdCBvZiBncmlkIGNsYXNzZXNcclxuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgaW5wdXQgaXMgYWx3YXlzIGFib3ZlIHRoZSAqYXBwZW5kZWQqIGFkZG9uIGJ1dHRvbiBmb3JcclxuICAgIC8vIHByb3BlciBib3JkZXIgY29sb3JzLlxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuXHJcbiAgICAvLyBJRTkgZnViYXJzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgaW4gdGV4dCBpbnB1dHMgYW5kIHRoZSBhcnJvd3Mgb25cclxuICAgIC8vIHNlbGVjdCBlbGVtZW50cyBpbiBpbnB1dCBncm91cHMuIFRvIGZpeCBpdCwgd2UgZmxvYXQgdGhlIGlucHV0LiBEZXRhaWxzOlxyXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU2MSNpc3N1ZWNvbW1lbnQtMjg5MzY4NTVcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFNpemluZyBvcHRpb25zXHJcbi8vXHJcbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcclxuLy8gbWFuaXB1bGF0aW9uLlxyXG5cclxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcclxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XHJcbiAgQGV4dGVuZCAuaW5wdXQtbGc7XHJcbn1cclxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcclxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XHJcbiAgQGV4dGVuZCAuaW5wdXQtc207XHJcbn1cclxuXHJcblxyXG4vLyBEaXNwbGF5IGFzIHRhYmxlLWNlbGxcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1idG4sXHJcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcclxuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG5cclxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbn1cclxuLy8gQWRkb24gYW5kIGFkZG9uIHdyYXBwZXIgZm9yIGJ1dHRvbnNcclxuLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAtYnRuIHtcclxuICB3aWR0aDogMSU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXHJcbn1cclxuXHJcbi8vIFRleHQgaW5wdXQgZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xyXG5cclxuICAvLyBTaXppbmdcclxuICAmLmlucHV0LXNtIHtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDtcclxuICB9XHJcbiAgJi5pbnB1dC1sZyB7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XHJcbiAgfVxyXG5cclxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXHJcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXHJcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkLFxyXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXHJcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cCA+IC5idG4sXHJcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcclxuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG59XHJcbi5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCB7XHJcbiAgYm9yZGVyLXJpZ2h0OiAwO1xyXG59XHJcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmxhc3QtY2hpbGQsXHJcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcclxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXHJcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xyXG59XHJcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkIHtcclxuICBib3JkZXItbGVmdDogMDtcclxufVxyXG5cclxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dC1ncm91cC1idG4ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAvLyBKYW5raWx5IHByZXZlbnQgaW5wdXQgYnV0dG9uIGdyb3VwcyBmcm9tIHdyYXBwaW5nIHdpdGggYHdoaXRlLXNwYWNlYCBhbmRcclxuICAvLyBgZm9udC1zaXplYCBpbiBjb21iaW5hdGlvbiB3aXRoIGBpbmxpbmUtYmxvY2tgIG9uIGJ1dHRvbnMuXHJcbiAgZm9udC1zaXplOiAwO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblxyXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXHJcbiAgLy8gZWxlbWVudCBhYm92ZSB0aGUgc2libGluZ3MuXHJcbiAgPiAuYnRuIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICsgLmJ0biB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gICAgfVxyXG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgID4gLmJ0bixcclxuICAgID4gLmJ0bi1ncm91cCB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcclxuICAgIH1cclxuICB9XHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgID4gLmJ0bixcclxuICAgID4gLmJ0bi1ncm91cCB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBOYXZzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBjbGFzc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLm5hdiB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgdWwvb2xcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cclxuICA+IGxpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgID4gYSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRGlzYWJsZWQgc3RhdGUgc2V0cyB0ZXh0IHRvIGdyYXkgYW5kIG51a2VzIGhvdmVyL3RhYiBlZmZlY3RzXHJcbiAgICAmLmRpc2FibGVkID4gYSB7XHJcbiAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE9wZW4gZHJvcGRvd25zXHJcbiAgLm9wZW4gPiBhIHtcclxuICAgICYsXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE5hdiBkaXZpZGVycyAoZGVwcmVjYXRlZCB3aXRoIHYzLjAuMSlcclxuICAvL1xyXG4gIC8vIFRoaXMgc2hvdWxkIGhhdmUgYmVlbiByZW1vdmVkIGluIHYzIHdpdGggdGhlIGRyb3BwaW5nIG9mIGAubmF2LWxpc3RgLCBidXRcclxuICAvLyB3ZSBtaXNzZWQgaXQuIFdlIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IHRoaXMgYW55d2hlcmUsIGJ1dCBpbiB0aGUgaW50ZXJlc3RcclxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxyXG4gIC5uYXYtZGl2aWRlciB7XHJcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcjtcclxuICB9XHJcblxyXG4gIC8vIFByZXZlbnQgSUU4IGZyb20gbWlzcGxhY2luZyBpbWdzXHJcbiAgLy9cclxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvaXNzdWVzLzk4NCNpc3N1ZWNvbW1lbnQtMzk4NTk4OVxyXG4gID4gbGkgPiBhID4gaW1nIHtcclxuICAgIG1heC13aWR0aDogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBUYWJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEdpdmUgdGhlIHRhYnMgc29tZXRoaW5nIHRvIHNpdCBvblxyXG4ubmF2LXRhYnMge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xyXG4gID4gbGkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAvLyBNYWtlIHRoZSBsaXN0LWl0ZW1zIG92ZXJsYXkgdGhlIGJvdHRvbSBib3JkZXJcclxuICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XHJcblxyXG4gICAgLy8gQWN0dWFsIHRhYnMgKGFzIGxpbmtzKVxyXG4gICAgPiBhIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXHJcbiAgICAmLmFjdGl2ZSA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZztcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBwdWxsaW5nIHRoaXMgaW4gbWFpbmx5IGZvciBsZXNzIHNob3J0aGFuZFxyXG4gICYubmF2LWp1c3RpZmllZCB7XHJcbiAgICBAZXh0ZW5kIC5uYXYtanVzdGlmaWVkO1xyXG4gICAgQGV4dGVuZCAubmF2LXRhYnMtanVzdGlmaWVkO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFBpbGxzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLm5hdi1waWxscyB7XHJcbiAgPiBsaSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xyXG4gICAgPiBhIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogJG5hdi1waWxscy1ib3JkZXItcmFkaXVzO1xyXG4gICAgfVxyXG4gICAgKyBsaSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWN0aXZlIHN0YXRlXHJcbiAgICAmLmFjdGl2ZSA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gU3RhY2tlZCBwaWxsc1xyXG4ubmF2LXN0YWNrZWQge1xyXG4gID4gbGkge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICArIGxpIHtcclxuICAgICAgbWFyZ2luLXRvcDogMnB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXYgdmFyaWF0aW9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ubmF2LWp1c3RpZmllZCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICA+IGEge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgID4gbGkge1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICB3aWR0aDogMSU7XHJcbiAgICAgID4gYSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxyXG4vL1xyXG4vLyBNaXhpbiBmb3IgYWRkaW5nIG9uIHRvcCB0aGUgc2hhcmVkIGAubmF2LWp1c3RpZmllZGAgc3R5bGVzIGZvciBvdXIgdGFic1xyXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcclxuICBib3JkZXItYm90dG9tOiAwO1xyXG5cclxuICA+IGxpID4gYSB7XHJcbiAgICAvLyBPdmVycmlkZSBtYXJnaW4gZnJvbSAubmF2LXRhYnNcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcbiAgfVxyXG5cclxuICA+IC5hY3RpdmUgPiBhLFxyXG4gID4gLmFjdGl2ZSA+IGE6aG92ZXIsXHJcbiAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICA+IGxpID4gYSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xyXG4gICAgfVxyXG4gICAgPiAuYWN0aXZlID4gYSxcclxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXHJcbiAgICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gVGFiYmFibGUgdGFic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcclxuLnRhYi1jb250ZW50IHtcclxuICA+IC50YWItcGFuZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICA+IC5hY3RpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRHJvcGRvd25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIFNwZWNpZmljIGRyb3Bkb3duc1xyXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xyXG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxyXG4gIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcclxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxufVxyXG4iLCIvL1xyXG4vLyBOYXZiYXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gV3JhcHBlciBhbmQgYmFzZSBjbGFzc1xyXG4vL1xyXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxyXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cclxuXHJcbi5uYXZiYXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAkbmF2YmFyLWhlaWdodDsgLy8gRW5zdXJlIGEgbmF2YmFyIGFsd2F5cyBzaG93cyAoZS5nLiwgd2l0aG91dCBhIC5uYXZiYXItYnJhbmQgaW4gY29sbGFwc2VkIG1vZGUpXHJcbiAgbWFyZ2luLWJvdHRvbTogJG5hdmJhci1tYXJnaW4tYm90dG9tO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cclxuICAvLyBQcmV2ZW50IGZsb2F0cyBmcm9tIGJyZWFraW5nIHRoZSBuYXZiYXJcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRuYXZiYXItYm9yZGVyLXJhZGl1cztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgaGVhZGluZ1xyXG4vL1xyXG4vLyBHcm91cHMgYC5uYXZiYXItYnJhbmRgIGFuZCBgLm5hdmJhci10b2dnbGVgIGludG8gYSBzaW5nbGUgY29tcG9uZW50IGZvciBlYXN5XHJcbi8vIHN0eWxpbmcgb2YgcmVzcG9uc2l2ZSBhc3BlY3RzLlxyXG5cclxuLm5hdmJhci1oZWFkZXIge1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2YmFyIGNvbGxhcHNlIChib2R5KVxyXG4vL1xyXG4vLyBHcm91cCB5b3VyIG5hdmJhciBjb250ZW50IGludG8gdGhpcyBmb3IgZWFzeSBjb2xsYXBzaW5nIGFuZCBleHBhbmRpbmcgYWNyb3NzXHJcbi8vIHZhcmlvdXMgZGV2aWNlIHNpemVzLiBCeSBkZWZhdWx0LCB0aGlzIGNvbnRlbnQgaXMgY29sbGFwc2VkIHdoZW4gPDc2OHB4LCBidXRcclxuLy8gd2lsbCBleHBhbmQgcGFzdCB0aGF0IGZvciBhIGhvcml6b250YWwgZGlzcGxheS5cclxuLy9cclxuLy8gVG8gc3RhcnQgKG9uIG1vYmlsZSBkZXZpY2VzKSB0aGUgbmF2YmFyIGxpbmtzLCBmb3JtcywgYW5kIGJ1dHRvbnMgYXJlIHN0YWNrZWRcclxuLy8gdmVydGljYWxseSBhbmQgaW5jbHVkZSBhIGBtYXgtaGVpZ2h0YCB0byBvdmVyZmxvdyBpbiBjYXNlIHlvdSBoYXZlIHRvbyBtdWNoXHJcbi8vIGNvbnRlbnQgZm9yIHRoZSB1c2VyJ3Mgdmlld3BvcnQuXHJcblxyXG4ubmF2YmFyLWNvbGxhcHNlIHtcclxuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIHBhZGRpbmctbGVmdDogICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuXHJcbiAgJi5pbiB7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgYm9yZGVyLXRvcDogMDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcblxyXG4gICAgJi5jb2xsYXBzZSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBzZXR0aW5nXHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pbiB7XHJcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gVW5kbyB0aGUgY29sbGFwc2Ugc2lkZSBwYWRkaW5nIGZvciBuYXZiYXJzIHdpdGggY29udGFpbmVycyB0byBlbnN1cmVcclxuICAgIC8vIGFsaWdubWVudCBvZiByaWdodC1hbGlnbmVkIGNvbnRlbnRzLlxyXG4gICAgLm5hdmJhci1maXhlZC10b3AgJixcclxuICAgIC5uYXZiYXItc3RhdGljLXRvcCAmLFxyXG4gICAgLm5hdmJhci1maXhlZC1ib3R0b20gJiB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5uYXZiYXItZml4ZWQtdG9wLFxyXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XHJcbiAgLm5hdmJhci1jb2xsYXBzZSB7XHJcbiAgICBtYXgtaGVpZ2h0OiAkbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtZGV2aWNlLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEJvdGggbmF2YmFyIGhlYWRlciBhbmQgY29sbGFwc2VcclxuLy9cclxuLy8gV2hlbiBhIGNvbnRhaW5lciBpcyBwcmVzZW50LCBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBoZWFkZXIgYW5kIGNvbGxhcHNlLlxyXG5cclxuLmNvbnRhaW5lcixcclxuLmNvbnRhaW5lci1mbHVpZCB7XHJcbiAgPiAubmF2YmFyLWhlYWRlcixcclxuICA+IC5uYXZiYXItY29sbGFwc2Uge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICBtYXJnaW4tbGVmdDogIC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBOYXZiYXIgYWxpZ25tZW50IG9wdGlvbnNcclxuLy9cclxuLy8gRGlzcGxheSB0aGUgbmF2YmFyIGFjcm9zcyB0aGUgZW50aXJldHkgb2YgdGhlIHBhZ2Ugb3IgZml4ZWQgaXQgdG8gdGhlIHRvcCBvclxyXG4vLyBib3R0b20gb2YgdGhlIHBhZ2UuXHJcblxyXG4vLyBTdGF0aWMgdG9wICh1bmZpeGVkLCBidXQgMTAwJSB3aWRlKSBuYXZiYXJcclxuLm5hdmJhci1zdGF0aWMtdG9wIHtcclxuICB6LWluZGV4OiAkemluZGV4LW5hdmJhcjtcclxuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRml4IHRoZSB0b3AvYm90dG9tIG5hdmJhcnMgd2hlbiBzY3JlZW4gcmVhbCBlc3RhdGUgc3VwcG9ydHMgaXRcclxuLm5hdmJhci1maXhlZC10b3AsXHJcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LW5hdmJhci1maXhlZDtcclxuXHJcbiAgLy8gVW5kbyB0aGUgcm91bmRlZCBjb3JuZXJzXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG59XHJcbi5uYXZiYXItZml4ZWQtdG9wIHtcclxuICB0b3A6IDA7XHJcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xyXG59XHJcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcclxuICBib3R0b206IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gb3ZlcnJpZGUgLm5hdmJhciBkZWZhdWx0c1xyXG4gIGJvcmRlci13aWR0aDogMXB4IDAgMDtcclxufVxyXG5cclxuXHJcbi8vIEJyYW5kL3Byb2plY3QgbmFtZVxyXG5cclxuLm5hdmJhci1icmFuZCB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGhlaWdodDogJG5hdmJhci1oZWlnaHQ7XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG5cclxuICA+IGltZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lciAmLFxyXG4gICAgLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQgJiB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2YmFyIHRvZ2dsZVxyXG4vL1xyXG4vLyBDdXN0b20gYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgYC5uYXZiYXItY29sbGFwc2VgLCBwb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZVxyXG4vLyBKYXZhU2NyaXB0IHBsdWdpbi5cclxuXHJcbi5uYXZiYXItdG9nZ2xlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgcGFkZGluZzogOXB4IDEwcHg7XHJcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDM0cHgpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuICAvLyBXZSByZW1vdmUgdGhlIGBvdXRsaW5lYCBoZXJlLCBidXQgbGF0ZXIgY29tcGVuc2F0ZSBieSBhdHRhY2hpbmcgYDpob3ZlcmBcclxuICAvLyBzdHlsZXMgdG8gYDpmb2N1c2AuXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gIH1cclxuXHJcbiAgLy8gQmFyc1xyXG4gIC5pY29uLWJhciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgaGVpZ2h0OiAycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgfVxyXG4gIC5pY29uLWJhciArIC5pY29uLWJhciB7XHJcbiAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgbmF2IGxpbmtzXHJcbi8vXHJcbi8vIEJ1aWxkcyBvbiB0b3Agb2YgdGhlIGAubmF2YCBjb21wb25lbnRzIHdpdGggaXRzIG93biBtb2RpZmllciBjbGFzcyB0byBtYWtlXHJcbi8vIHRoZSBuYXYgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSBob3Jpem9udGFsIG5hdiAoYWJvdmUgNzY4cHgpLlxyXG5cclxuLm5hdmJhci1uYXYge1xyXG4gIG1hcmdpbjogKCRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAvIDIpICgtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWwpO1xyXG5cclxuICA+IGxpID4gYSB7XHJcbiAgICBwYWRkaW5nLXRvcDogICAgMTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xyXG4gICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxyXG4gICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgID4gbGkgPiBhLFxyXG4gICAgICAuZHJvcGRvd24taGVhZGVyIHtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDtcclxuICAgICAgfVxyXG4gICAgICA+IGxpID4gYSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFVuY29sbGFwc2UgdGhlIG5hdlxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICA+IGxpIHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgID4gYSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICAgICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2YmFyIGZvcm1cclxuLy9cclxuLy8gRXh0ZW5zaW9uIG9mIHRoZSBgLmZvcm0taW5saW5lYCB3aXRoIHNvbWUgZXh0cmEgZmxhdm9yIGZvciBvcHRpbXVtIGRpc3BsYXkgaW5cclxuLy8gb3VyIG5hdmJhcnMuXHJcblxyXG4ubmF2YmFyLWZvcm0ge1xyXG4gIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgcGFkZGluZzogMTBweCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICRzaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcclxuXHJcbiAgLy8gTWl4aW4gYmVoYXZpb3IgZm9yIG9wdGltdW0gZGlzcGxheVxyXG4gIEBpbmNsdWRlIGZvcm0taW5saW5lO1xyXG5cclxuICAuZm9ybS1ncm91cCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBWZXJ0aWNhbGx5IGNlbnRlciBpbiBleHBhbmRlZCwgaG9yaXpvbnRhbCBuYXZiYXJcclxuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcclxuXHJcbiAgLy8gVW5kbyAxMDAlIHdpZHRoIGZvciBwdWxsIGNsYXNzZXNcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIERyb3Bkb3duIG1lbnVzXHJcblxyXG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0c1xyXG4ubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbn1cclxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldCBzdXBwb3J0IGZvciBkcm9wdXBzIHZpYSBleHRyYSBkcm9wdXAgY2xhc3NcclxuLm5hdmJhci1maXhlZC1ib3R0b20gLm5hdmJhci1uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXZiYXItYm9yZGVyLXJhZGl1cyk7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XHJcbn1cclxuXHJcblxyXG4vLyBCdXR0b25zIGluIG5hdmJhcnNcclxuLy9cclxuLy8gVmVydGljYWxseSBjZW50ZXIgYSBidXR0b24gd2l0aGluIGEgbmF2YmFyICh3aGVuICpub3QqIGluIGEgZm9ybSkuXHJcblxyXG4ubmF2YmFyLWJ0biB7XHJcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtYmFzZSk7XHJcblxyXG4gICYuYnRuLXNtIHtcclxuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LXNtYWxsKTtcclxuICB9XHJcbiAgJi5idG4teHMge1xyXG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDIyKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBUZXh0IGluIG5hdmJhcnNcclxuLy9cclxuLy8gQWRkIGEgY2xhc3MgdG8gbWFrZSBhbnkgZWxlbWVudCBwcm9wZXJseSBhbGlnbiBpdHNlbGYgdmVydGljYWxseSB3aXRoaW4gdGhlIG5hdmJhcnMuXHJcblxyXG4ubmF2YmFyLXRleHQge1xyXG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkbGluZS1oZWlnaHQtY29tcHV0ZWQpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW4tbGVmdDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcclxuLy9cclxuLy8gUmVwdXJwb3NlIHRoZSBwdWxsIHV0aWxpdGllcyBhcyB0aGVpciBvd24gbmF2YmFyIHV0aWxpdGllcyB0byBhdm9pZCBzcGVjaWZpY2l0eVxyXG4vLyBpc3N1ZXMgd2l0aCBwYXJlbnRzIGFuZCBjaGFpbmluZy4gT25seSBkbyB0aGlzIHdoZW4gdGhlIG5hdmJhciBpcyB1bmNvbGxhcHNlZFxyXG4vLyB0aG91Z2ggc28gdGhhdCBuYXZiYXIgY29udGVudHMgcHJvcGVybHkgc3RhY2sgYW5kIGFsaWduIGluIG1vYmlsZS5cclxuLy9cclxuLy8gRGVjbGFyZWQgYWZ0ZXIgdGhlIG5hdmJhciBjb21wb25lbnRzIHRvIGVuc3VyZSBtb3JlIHNwZWNpZmljaXR5IG9uIHRoZSBtYXJnaW5zLlxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAubmF2YmFyLWxlZnQge1xyXG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcclxuICB9XHJcbiAgLm5hdmJhci1yaWdodCB7XHJcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcclxuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuXHJcbiAgICB+IC5uYXZiYXItcmlnaHQge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQWx0ZXJuYXRlIG5hdmJhcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIERlZmF1bHQgbmF2YmFyXHJcbi5uYXZiYXItZGVmYXVsdCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJnO1xyXG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcclxuXHJcbiAgLm5hdmJhci1icmFuZCB7XHJcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLXRleHQge1xyXG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1jb2xvcjtcclxuICB9XHJcblxyXG4gIC5uYXZiYXItbmF2IHtcclxuICAgID4gbGkgPiBhIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IC5hY3RpdmUgPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gLmRpc2FibGVkID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci10b2dnbGUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZztcclxuICAgIH1cclxuICAgIC5pY29uLWJhciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLWNvbGxhcHNlLFxyXG4gIC5uYXZiYXItZm9ybSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC1ib3JkZXI7XHJcbiAgfVxyXG5cclxuICAvLyBEcm9wZG93biBtZW51IGl0ZW1zXHJcbiAgLm5hdmJhci1uYXYge1xyXG4gICAgLy8gUmVtb3ZlIGJhY2tncm91bmQgY29sb3IgZnJvbSBvcGVuIGRyb3Bkb3duXHJcbiAgICA+IC5vcGVuID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XHJcbiAgICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcclxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgID4gbGkgPiBhIHtcclxuICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcclxuICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XHJcbiAgICAgICAgICAmLFxyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gLmRpc2FibGVkID4gYSB7XHJcbiAgICAgICAgICAmLFxyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC8vIExpbmtzIGluIG5hdmJhcnNcclxuICAvL1xyXG4gIC8vIEFkZCBhIGNsYXNzIHRvIGVuc3VyZSBsaW5rcyBvdXRzaWRlIHRoZSBuYXZiYXIgbmF2IGFyZSBjb2xvcmVkIGNvcnJlY3RseS5cclxuXHJcbiAgLm5hdmJhci1saW5rIHtcclxuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnRuLWxpbmsge1xyXG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XHJcbiAgICB9XHJcbiAgICAmW2Rpc2FibGVkXSxcclxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBJbnZlcnNlIG5hdmJhclxyXG5cclxuLm5hdmJhci1pbnZlcnNlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYmc7XHJcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xyXG5cclxuICAubmF2YmFyLWJyYW5kIHtcclxuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItdGV4dCB7XHJcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLm5hdmJhci1uYXYge1xyXG4gICAgPiBsaSA+IGEge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gLmFjdGl2ZSA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBEYXJrZW4gdGhlIHJlc3BvbnNpdmUgbmF2IHRvZ2dsZVxyXG4gIC5uYXZiYXItdG9nZ2xlIHtcclxuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc7XHJcbiAgICB9XHJcbiAgICAuaWNvbi1iYXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci1jb2xsYXBzZSxcclxuICAubmF2YmFyLWZvcm0ge1xyXG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCA3JSk7XHJcbiAgfVxyXG5cclxuICAvLyBEcm9wZG93bnNcclxuICAubmF2YmFyLW5hdiB7XHJcbiAgICA+IC5vcGVuID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XHJcbiAgICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXlcclxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgID4gLmRyb3Bkb3duLWhlYWRlciB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kaXZpZGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gbGkgPiBhIHtcclxuICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcclxuICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XHJcbiAgICAgICAgICAmLFxyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gLmRpc2FibGVkID4gYSB7XHJcbiAgICAgICAgICAmLFxyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci1saW5rIHtcclxuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnRuLWxpbmsge1xyXG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICB9XHJcbiAgICAmW2Rpc2FibGVkXSxcclxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIEJyZWFkY3J1bWJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLmJyZWFkY3J1bWIge1xyXG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWwgJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICsgbGk6YmVmb3JlIHtcclxuICAgICAgLy8gW2NvbnZlcnRlcl0gV29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MvbGlic2Fzcy9pc3N1ZXMvMTExNVxyXG4gICAgICAkbmJzcDogXCJcXDAwYTBcIjtcclxuICAgICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLXNlcGFyYXRvcn0jeyRuYnNwfVwiOyAvLyBVbmljb2RlIHNwYWNlIGFkZGVkIHNpbmNlIGlubGluZS1ibG9jayBtZWFucyBub24tY29sbGFwc2luZyB3aGl0ZS1zcGFjZVxyXG4gICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlIHtcclxuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFBhZ2luYXRpb24gKG11bHRpcGxlIHBhZ2VzKVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ucGFnaW5hdGlvbiB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lOyAvLyBSZW1vdmUgbGlzdC1zdHlsZSBhbmQgYmxvY2stbGV2ZWwgZGVmYXVsdHNcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIENvbGxhcHNlIHdoaXRlLXNwYWNlXHJcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xyXG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyO1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgIH1cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiBsaSA+IGEsXHJcbiAgPiBsaSA+IHNwYW4ge1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gLmFjdGl2ZSA+IGEsXHJcbiAgPiAuYWN0aXZlID4gc3BhbiB7XHJcbiAgICAmLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICB6LWluZGV4OiAzO1xyXG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcclxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuZGlzYWJsZWQge1xyXG4gICAgPiBzcGFuLFxyXG4gICAgPiBzcGFuOmhvdmVyLFxyXG4gICAgPiBzcGFuOmZvY3VzLFxyXG4gICAgPiBhLFxyXG4gICAgPiBhOmhvdmVyLFxyXG4gICAgPiBhOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI7XHJcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFNpemluZ1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gTGFyZ2VcclxuLnBhZ2luYXRpb24tbGcge1xyXG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYm9yZGVyLXJhZGl1cy1sYXJnZSk7XHJcbn1cclxuXHJcbi8vIFNtYWxsXHJcbi5wYWdpbmF0aW9uLXNtIHtcclxuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG59XHJcbiIsIi8vXHJcbi8vIFBhZ2VyIHBhZ2luYXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4ucGFnZXIge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gIGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogNXB4IDE0cHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1iZztcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHBhZ2VyLWJvcmRlcjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogJHBhZ2VyLWJvcmRlci1yYWRpdXM7XHJcbiAgICB9XHJcblxyXG4gICAgPiBhOmhvdmVyLFxyXG4gICAgPiBhOmZvY3VzIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItaG92ZXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmV4dCB7XHJcbiAgICA+IGEsXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJldmlvdXMge1xyXG4gICAgPiBhLFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZGlzYWJsZWQge1xyXG4gICAgPiBhLFxyXG4gICAgPiBhOmhvdmVyLFxyXG4gICAgPiBhOmZvY3VzLFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgY29sb3I6ICRwYWdlci1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xyXG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIExhYmVsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmxhYmVsIHtcclxuICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgcGFkZGluZzogLjJlbSAuNmVtIC4zZW07XHJcbiAgZm9udC1zaXplOiA3NSU7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgY29sb3I6ICRsYWJlbC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmxhYmVsXHJcblxyXG4gIC8vIEVtcHR5IGxhYmVscyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5IChub3QgYXZhaWxhYmxlIGluIElFOClcclxuICAmOmVtcHR5IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvLyBRdWljayBmaXggZm9yIGxhYmVscyBpbiBidXR0b25zXHJcbiAgLmJ0biAmIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogLTFweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEFkZCBob3ZlciBlZmZlY3RzLCBidXQgb25seSBmb3IgbGlua3NcclxuYS5sYWJlbCB7XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkbGFiZWwtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIENvbG9yc1xyXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBsYWJlbHMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpXHJcblxyXG4ubGFiZWwtZGVmYXVsdCB7XHJcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGVmYXVsdC1iZyk7XHJcbn1cclxuXHJcbi5sYWJlbC1wcmltYXJ5IHtcclxuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1wcmltYXJ5LWJnKTtcclxufVxyXG5cclxuLmxhYmVsLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXN1Y2Nlc3MtYmcpO1xyXG59XHJcblxyXG4ubGFiZWwtaW5mbyB7XHJcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtaW5mby1iZyk7XHJcbn1cclxuXHJcbi5sYWJlbC13YXJuaW5nIHtcclxuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC13YXJuaW5nLWJnKTtcclxufVxyXG5cclxuLmxhYmVsLWRhbmdlciB7XHJcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGFuZ2VyLWJnKTtcclxufVxyXG4iLCIvL1xyXG4vLyBCYWRnZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi5iYWRnZSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1pbi13aWR0aDogMTBweDtcclxuICBwYWRkaW5nOiAzcHggN3B4O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xyXG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XHJcbiAgbGluZS1oZWlnaHQ6ICRiYWRnZS1saW5lLWhlaWdodDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZztcclxuICBib3JkZXItcmFkaXVzOiAkYmFkZ2UtYm9yZGVyLXJhZGl1cztcclxuXHJcbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxyXG4gICY6ZW1wdHkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIC8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcclxuICAuYnRuICYge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiAtMXB4O1xyXG4gIH1cclxuXHJcbiAgLmJ0bi14cyAmLFxyXG4gIC5idG4tZ3JvdXAteHMgPiAuYnRuICYge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcGFkZGluZzogMXB4IDVweDtcclxuICB9XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJhZGdlXHJcblxyXG4gIC8vIEFjY291bnQgZm9yIGJhZGdlcyBpbiBuYXZzXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgPiAmLFxyXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+ICYge1xyXG4gICAgY29sb3I6ICRiYWRnZS1hY3RpdmUtY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYWN0aXZlLWJnO1xyXG4gIH1cclxuXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gIH1cclxuXHJcbiAgLm5hdi1waWxscyA+IGxpID4gYSA+ICYge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEhvdmVyIHN0YXRlLCBidXQgb25seSBmb3IgbGlua3NcclxuYS5iYWRnZSB7XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkYmFkZ2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gSnVtYm90cm9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLmp1bWJvdHJvbiB7XHJcbiAgcGFkZGluZy10b3A6ICAgICRqdW1ib3Ryb24tcGFkZGluZztcclxuICBwYWRkaW5nLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xyXG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcclxuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xyXG5cclxuICBoMSxcclxuICAuaDEge1xyXG4gICAgY29sb3I6ICRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjtcclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xyXG4gICAgZm9udC1zaXplOiAkanVtYm90cm9uLWZvbnQtc2l6ZTtcclxuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XHJcbiAgfVxyXG5cclxuICA+IGhyIHtcclxuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkanVtYm90cm9uLWJnLCAxMCUpO1xyXG4gIH1cclxuXHJcbiAgLmNvbnRhaW5lciAmLFxyXG4gIC5jb250YWluZXItZmx1aWQgJiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTsgLy8gT25seSByb3VuZCBjb3JuZXJzIGF0IGhpZ2hlciByZXNvbHV0aW9ucyBpZiBjb250YWluZWQgaW4gYSBjb250YWluZXJcclxuICAgIHBhZGRpbmctbGVmdDogICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcclxuICB9XHJcblxyXG4gIC5jb250YWluZXIge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIHBhZGRpbmctdG9wOiAgICAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcclxuXHJcbiAgICAuY29udGFpbmVyICYsXHJcbiAgICAuY29udGFpbmVyLWZsdWlkICYge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKTtcclxuICAgIH1cclxuXHJcbiAgICBoMSxcclxuICAgIC5oMSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gVGh1bWJuYWlsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIE1peGluIGFuZCBhZGp1c3QgdGhlIHJlZ3VsYXIgaW1hZ2UgY2xhc3NcclxuLnRodW1ibmFpbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXIgLjJzIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgPiBpbWcsXHJcbiAgYSA+IGltZyB7XHJcbiAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmOmhvdmVyLCBhJjpmb2N1cywgYSYuYWN0aXZlIHRvIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cywgYS50aHVtYm5haWwuYWN0aXZlXHJcblxyXG4gIC8vIEltYWdlIGNhcHRpb25zXHJcbiAgLmNhcHRpb24ge1xyXG4gICAgcGFkZGluZzogJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc7XHJcbiAgICBjb2xvcjogJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQWRkIGEgaG92ZXIgc3RhdGUgZm9yIGxpbmtlZCB2ZXJzaW9ucyBvbmx5XHJcbmEudGh1bWJuYWlsOmhvdmVyLFxyXG5hLnRodW1ibmFpbDpmb2N1cyxcclxuYS50aHVtYm5haWwuYWN0aXZlIHtcclxuICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xyXG59XHJcbiIsIi8vXHJcbi8vIEFsZXJ0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2Ugc3R5bGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hbGVydCB7XHJcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmc7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRhbGVydC1ib3JkZXItcmFkaXVzO1xyXG5cclxuICAvLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xyXG4gIGg0IHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAvLyBTcGVjaWZpZWQgZm9yIHRoZSBoNCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gIH1cclxuXHJcbiAgLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcclxuICAuYWxlcnQtbGluayB7XHJcbiAgICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XHJcbiAgfVxyXG5cclxuICAvLyBJbXByb3ZlIGFsaWdubWVudCBhbmQgc3BhY2luZyBvZiBpbm5lciBjb250ZW50XHJcbiAgPiBwLFxyXG4gID4gdWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gID4gcCArIHAge1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gRGlzbWlzc2libGUgYWxlcnRzXHJcbi8vXHJcbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxyXG5cclxuLmFsZXJ0LWRpc21pc3NhYmxlLCAvLyBUaGUgbWlzc3BlbGxlZCAuYWxlcnQtZGlzbWlzc2FibGUgd2FzIGRlcHJlY2F0ZWQgaW4gMy4yLjAuXHJcbi5hbGVydC1kaXNtaXNzaWJsZSB7XHJcbiAgcGFkZGluZy1yaWdodDogKCRhbGVydC1wYWRkaW5nICsgMjApO1xyXG5cclxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxyXG4gIC5jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0ycHg7XHJcbiAgICByaWdodDogLTIxcHg7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEFsdGVybmF0ZSBzdHlsZXNcclxuLy9cclxuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cclxuXHJcbi5hbGVydC1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1zdWNjZXNzLWJnLCAkYWxlcnQtc3VjY2Vzcy1ib3JkZXIsICRhbGVydC1zdWNjZXNzLXRleHQpO1xyXG59XHJcblxyXG4uYWxlcnQtaW5mbyB7XHJcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtaW5mby1iZywgJGFsZXJ0LWluZm8tYm9yZGVyLCAkYWxlcnQtaW5mby10ZXh0KTtcclxufVxyXG5cclxuLmFsZXJ0LXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XHJcbn1cclxuXHJcbi5hbGVydC1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWRhbmdlci1iZywgJGFsZXJ0LWRhbmdlci1ib3JkZXIsICRhbGVydC1kYW5nZXItdGV4dCk7XHJcbn1cclxuIiwiLy9cclxuLy8gUHJvZ3Jlc3MgYmFyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhciBhbmltYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIFdlYktpdFxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xyXG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XHJcbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cclxufVxyXG5cclxuLy8gU3BlYyBhbmQgSUUxMCtcclxuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XHJcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cclxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxyXG59XHJcblxyXG5cclxuLy8gQmFyIGl0c2VsZlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBPdXRlciBjb250YWluZXJcclxuLnByb2dyZXNzIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSkpO1xyXG59XHJcblxyXG4vLyBCYXIgb2YgcHJvZ3Jlc3NcclxuLnByb2dyZXNzLWJhciB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgd2lkdGg6IDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjE1KSk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAuNnMgZWFzZSk7XHJcbn1cclxuXHJcbi8vIFN0cmlwZWQgYmFyc1xyXG4vL1xyXG4vLyBgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXHJcbi8vIGAucHJvZ3Jlc3MtYmFyLXN0cmlwZWRgIGNsYXNzLCB3aGljaCB5b3UganVzdCBhZGQgdG8gYW4gZXhpc3RpbmdcclxuLy8gYC5wcm9ncmVzcy1iYXJgLlxyXG4ucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLFxyXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xyXG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XHJcbn1cclxuXHJcbi8vIENhbGwgYW5pbWF0aW9uIGZvciB0aGUgYWN0aXZlIG9uZVxyXG4vL1xyXG4vLyBgLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcclxuLy8gYC5wcm9ncmVzcy1iYXIuYWN0aXZlYCBhcHByb2FjaC5cclxuLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyLFxyXG4ucHJvZ3Jlc3MtYmFyLmFjdGl2ZSB7XHJcbiAgQGluY2x1ZGUgYW5pbWF0aW9uKHByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZSk7XHJcbn1cclxuXHJcblxyXG4vLyBWYXJpYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XHJcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmZvIHtcclxuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWluZm8tYmcpO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcclxuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZyk7XHJcbn1cclxuIiwiLm1lZGlhIHtcclxuICAvLyBQcm9wZXIgc3BhY2luZyBiZXR3ZWVuIGluc3RhbmNlcyBvZiAubWVkaWFcclxuICBtYXJnaW4tdG9wOiAxNXB4O1xyXG5cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ubWVkaWEsXHJcbi5tZWRpYS1ib2R5IHtcclxuICB6b29tOiAxO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5tZWRpYS1ib2R5IHtcclxuICB3aWR0aDogMTAwMDBweDtcclxufVxyXG5cclxuLm1lZGlhLW9iamVjdCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gIC8vIEZpeCBjb2xsYXBzZSBpbiB3ZWJraXQgZnJvbSBtYXgtd2lkdGg6IDEwMCUgYW5kIGRpc3BsYXk6IHRhYmxlLWNlbGwuXHJcbiAgJi5pbWctdGh1bWJuYWlsIHtcclxuICAgIG1heC13aWR0aDogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5tZWRpYS1yaWdodCxcclxuLm1lZGlhID4gLnB1bGwtcmlnaHQge1xyXG4gIHBhZGRpbmctbGVmdDogMTBweDtcclxufVxyXG5cclxuLm1lZGlhLWxlZnQsXHJcbi5tZWRpYSA+IC5wdWxsLWxlZnQge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi5tZWRpYS1sZWZ0LFxyXG4ubWVkaWEtcmlnaHQsXHJcbi5tZWRpYS1ib2R5IHtcclxuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbn1cclxuXHJcbi5tZWRpYS1taWRkbGUge1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi5tZWRpYS1ib3R0b20ge1xyXG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbn1cclxuXHJcbi8vIFJlc2V0IG1hcmdpbnMgb24gaGVhZGluZ3MgZm9yIHRpZ2h0ZXIgZGVmYXVsdCBzcGFjaW5nXHJcbi5tZWRpYS1oZWFkaW5nIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLy8gTWVkaWEgbGlzdCB2YXJpYXRpb25cclxuLy9cclxuLy8gVW5kbyBkZWZhdWx0IHVsL29sIHN0eWxlc1xyXG4ubWVkaWEtbGlzdCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuIiwiLy9cclxuLy8gTGlzdCBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi8vXHJcbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXHJcblxyXG4ubGlzdC1ncm91cCB7XHJcbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXHJcbn1cclxuXHJcblxyXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcclxuLy9cclxuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxyXG5cclxuLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICAvLyBQbGFjZSB0aGUgYm9yZGVyIG9uIHRoZSBsaXN0IGl0ZW1zIGFuZCBuZWdhdGl2ZSBtYXJnaW4gdXAgZm9yIGJldHRlciBzdHlsaW5nXHJcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXI7XHJcblxyXG4gIC8vIFJvdW5kIHRoZSBmaXJzdCBhbmQgbGFzdCBpdGVtc1xyXG4gICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XHJcbiAgfVxyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xyXG4vL1xyXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmUgaXRlbXMuXHJcbi8vIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2hvd2luZyBzZWxlY3RlZCBpdGVtcy5cclxuXHJcbmEubGlzdC1ncm91cC1pdGVtLFxyXG5idXR0b24ubGlzdC1ncm91cC1pdGVtIHtcclxuICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1jb2xvcjtcclxuXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I7XHJcbiAgfVxyXG5cclxuICAvLyBIb3ZlciBzdGF0ZVxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xyXG4gIH1cclxufVxyXG5cclxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgLy8gRGlzYWJsZWQgc3RhdGVcclxuICAmLmRpc2FibGVkLFxyXG4gICYuZGlzYWJsZWQ6aG92ZXIsXHJcbiAgJi5kaXNhYmxlZDpmb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcclxuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcclxuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuXHJcbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xyXG4gICAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxyXG4gICYuYWN0aXZlLFxyXG4gICYuYWN0aXZlOmhvdmVyLFxyXG4gICYuYWN0aXZlOmZvY3VzIHtcclxuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXHJcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyO1xyXG5cclxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XHJcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXHJcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiBzbWFsbCxcclxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XHJcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcclxuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbnRleHR1YWwgdmFyaWFudHNcclxuLy9cclxuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cclxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cclxuXHJcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHN1Y2Nlc3MsICRzdGF0ZS1zdWNjZXNzLWJnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcclxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbywgJHN0YXRlLWluZm8tYmcsICRzdGF0ZS1pbmZvLXRleHQpO1xyXG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCh3YXJuaW5nLCAkc3RhdGUtd2FybmluZy1iZywgJHN0YXRlLXdhcm5pbmctdGV4dCk7XHJcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGRhbmdlciwgJHN0YXRlLWRhbmdlci1iZywgJHN0YXRlLWRhbmdlci10ZXh0KTtcclxuXHJcblxyXG4vLyBDdXN0b20gY29udGVudCBvcHRpb25zXHJcbi8vXHJcbi8vIEV4dHJhIGNsYXNzZXMgZm9yIGNyZWF0aW5nIHdlbGwtZm9ybWF0dGVkIGNvbnRlbnQgd2l0aGluIGAubGlzdC1ncm91cC1pdGVtYHMuXHJcblxyXG4ubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcbi5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBsaW5lLWhlaWdodDogMS4zO1xyXG59XHJcbiIsIi8vXHJcbi8vIFBhbmVsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2UgY2xhc3NcclxuLnBhbmVsIHtcclxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbmVsLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KSk7XHJcbn1cclxuXHJcbi8vIFBhbmVsIGNvbnRlbnRzXHJcbi5wYW5lbC1ib2R5IHtcclxuICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcblxyXG4vLyBPcHRpb25hbCBoZWFkaW5nXHJcbi5wYW5lbC1oZWFkaW5nIHtcclxuICBwYWRkaW5nOiAkcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcblxyXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBXaXRoaW4gaGVhZGluZywgc3RyaXAgYW55IGBoKmAgdGFnIG9mIGl0cyBkZWZhdWx0IG1hcmdpbnMgZm9yIHNwYWNpbmcuXHJcbi5wYW5lbC10aXRsZSB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4xMjUpKTtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuXHJcbiAgPiBhLFxyXG4gID4gc21hbGwsXHJcbiAgPiAuc21hbGwsXHJcbiAgPiBzbWFsbCA+IGEsXHJcbiAgPiAuc21hbGwgPiBhIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuLy8gT3B0aW9uYWwgZm9vdGVyIChzdGF5cyBncmF5IGluIGV2ZXJ5IG1vZGlmaWVyIGNsYXNzKVxyXG4ucGFuZWwtZm9vdGVyIHtcclxuICBwYWRkaW5nOiAkcGFuZWwtZm9vdGVyLXBhZGRpbmc7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbmVsLWZvb3Rlci1iZztcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcclxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcbn1cclxuXHJcblxyXG4vLyBMaXN0IGdyb3VwcyBpbiBwYW5lbHNcclxuLy9cclxuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXHJcbi8vIGFueSBraW5kIG9mIGN1c3RvbSBjb250ZW50IGJldHdlZW4gdGhlIHR3by5cclxuXHJcbi5wYW5lbCB7XHJcbiAgPiAubGlzdC1ncm91cCxcclxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcclxuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xyXG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLy8gQ29sbGFwc2Ugc3BhY2UgYmV0d2VlbiB3aGVuIHRoZXJlJ3Mgbm8gYWRkaXRpb25hbCBjb250ZW50LlxyXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcclxuICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcclxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcbiAgfVxyXG59XHJcbi5saXN0LWdyb3VwICsgLnBhbmVsLWZvb3RlciB7XHJcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcclxufVxyXG5cclxuLy8gVGFibGVzIGluIHBhbmVsc1xyXG4vL1xyXG4vLyBQbGFjZSBhIG5vbi1ib3JkZXJlZCBgLnRhYmxlYCB3aXRoaW4gYSBwYW5lbCAobm90IHdpdGhpbiBhIGAucGFuZWwtYm9keWApIGFuZFxyXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxyXG5cclxuLnBhbmVsIHtcclxuICA+IC50YWJsZSxcclxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLFxyXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLnRhYmxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgY2FwdGlvbiB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhbmVsLWJvZHktcGFkZGluZztcclxuICAgICAgcGFkZGluZy1yaWdodDogJHBhbmVsLWJvZHktcGFkZGluZztcclxuICAgIH1cclxuICB9XHJcbiAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcclxuICA+IC50YWJsZTpmaXJzdC1jaGlsZCxcclxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcclxuXHJcbiAgICA+IHRoZWFkOmZpcnN0LWNoaWxkLFxyXG4gICAgPiB0Ym9keTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuXHJcbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcclxuICA+IC50YWJsZTpsYXN0LWNoaWxkLFxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcclxuXHJcbiAgICA+IHRib2R5Omxhc3QtY2hpbGQsXHJcbiAgICA+IHRmb290Omxhc3QtY2hpbGQge1xyXG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuXHJcbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXHJcbiAgPiAucGFuZWwtYm9keSArIC50YWJsZS1yZXNwb25zaXZlLFxyXG4gID4gLnRhYmxlICsgLnBhbmVsLWJvZHksXHJcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gIH1cclxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXHJcbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkIHtcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgfVxyXG4gID4gLnRhYmxlLWJvcmRlcmVkLFxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgPiB0aGVhZCxcclxuICAgID4gdGJvZHksXHJcbiAgICA+IHRmb290IHtcclxuICAgICAgPiB0ciB7XHJcbiAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcclxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gdGhlYWQsXHJcbiAgICA+IHRib2R5IHtcclxuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IHRib2R5LFxyXG4gICAgPiB0Zm9vdCB7XHJcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDb2xsYXBzaWJsZSBwYW5lbHMgKGFrYSwgYWNjb3JkaW9uKVxyXG4vL1xyXG4vLyBXcmFwIGEgc2VyaWVzIG9mIHBhbmVscyBpbiBgLnBhbmVsLWdyb3VwYCB0byB0dXJuIHRoZW0gaW50byBhbiBhY2NvcmRpb24gd2l0aFxyXG4vLyB0aGUgaGVscCBvZiBvdXIgY29sbGFwc2UgSmF2YVNjcmlwdCBwbHVnaW4uXHJcblxyXG4ucGFuZWwtZ3JvdXAge1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuXHJcbiAgLy8gVGlnaHRlbiB1cCBtYXJnaW4gc28gaXQncyBvbmx5IGJldHdlZW4gcGFuZWxzXHJcbiAgLnBhbmVsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcclxuXHJcbiAgICArIC5wYW5lbCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wYW5lbC1oZWFkaW5nIHtcclxuICAgIGJvcmRlci1ib3R0b206IDA7XHJcblxyXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSxcclxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wYW5lbC1mb290ZXIge1xyXG4gICAgYm9yZGVyLXRvcDogMDtcclxuICAgICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zXHJcbi5wYW5lbC1kZWZhdWx0IHtcclxuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1kZWZhdWx0LWJvcmRlciwgJHBhbmVsLWRlZmF1bHQtdGV4dCwgJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZywgJHBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcclxufVxyXG4ucGFuZWwtcHJpbWFyeSB7XHJcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtcHJpbWFyeS1ib3JkZXIsICRwYW5lbC1wcmltYXJ5LXRleHQsICRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmcsICRwYW5lbC1wcmltYXJ5LWJvcmRlcik7XHJcbn1cclxuLnBhbmVsLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyLCAkcGFuZWwtc3VjY2Vzcy10ZXh0LCAkcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnLCAkcGFuZWwtc3VjY2Vzcy1ib3JkZXIpO1xyXG59XHJcbi5wYW5lbC1pbmZvIHtcclxuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1pbmZvLWJvcmRlciwgJHBhbmVsLWluZm8tdGV4dCwgJHBhbmVsLWluZm8taGVhZGluZy1iZywgJHBhbmVsLWluZm8tYm9yZGVyKTtcclxufVxyXG4ucGFuZWwtd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtd2FybmluZy1ib3JkZXIsICRwYW5lbC13YXJuaW5nLXRleHQsICRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmcsICRwYW5lbC13YXJuaW5nLWJvcmRlcik7XHJcbn1cclxuLnBhbmVsLWRhbmdlciB7XHJcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGFuZ2VyLWJvcmRlciwgJHBhbmVsLWRhbmdlci10ZXh0LCAkcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmcsICRwYW5lbC1kYW5nZXItYm9yZGVyKTtcclxufVxyXG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxyXG4vL1xyXG4vLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cclxuXHJcbi5lbWJlZC1yZXNwb25zaXZlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcclxuICBpZnJhbWUsXHJcbiAgZW1iZWQsXHJcbiAgb2JqZWN0LFxyXG4gIHZpZGVvIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvcmRlcjogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1vZGlmaWVyIGNsYXNzIGZvciAxNjo5IGFzcGVjdCByYXRpb1xyXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XHJcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcclxufVxyXG5cclxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDQ6MyBhc3BlY3QgcmF0aW9cclxuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XHJcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcclxufVxyXG4iLCIvL1xyXG4vLyBXZWxsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2UgY2xhc3NcclxuLndlbGwge1xyXG4gIG1pbi1oZWlnaHQ6IDIwcHg7XHJcbiAgcGFkZGluZzogMTlweDtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICR3ZWxsLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KSk7XHJcbiAgYmxvY2txdW90ZSB7XHJcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFNpemVzXHJcbi53ZWxsLWxnIHtcclxuICBwYWRkaW5nOiAyNHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xyXG59XHJcbi53ZWxsLXNtIHtcclxuICBwYWRkaW5nOiA5cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XHJcbn1cclxuIiwiLy9cclxuLy8gQ2xvc2UgaWNvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4uY2xvc2Uge1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xyXG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcclxuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xyXG4gIEBpbmNsdWRlIG9wYWNpdHkoLjIpO1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjUpO1xyXG4gIH1cclxuXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGJ1dHRvbiYgdG8gYnV0dG9uLmNsb3NlXHJcbn1cclxuXHJcbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cclxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXHJcbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxyXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcclxuYnV0dG9uLmNsb3NlIHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcbiIsIi8vXHJcbi8vIE1vZGFsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxyXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cclxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXHJcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHNoaXRcclxuXHJcbi8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxyXG4ubW9kYWwtb3BlbiB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXHJcbi5tb2RhbCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcblxyXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXHJcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXHJcbiAgb3V0bGluZTogMDtcclxuXHJcbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cclxuICAmLmZhZGUgLm1vZGFsLWRpYWxvZyB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjNzIGVhc2Utb3V0KTtcclxuICB9XHJcbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApIH1cclxufVxyXG4ubW9kYWwtb3BlbiAubW9kYWwge1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcclxuLm1vZGFsLWRpYWxvZyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIG1hcmdpbjogMTBweDtcclxufVxyXG5cclxuLy8gQWN0dWFsIG1vZGFsXHJcbi5tb2RhbC1jb250ZW50IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcclxuICBib3JkZXI6IDFweCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXHJcbi5tb2RhbC1iYWNrZHJvcCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tncm91bmQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xyXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXHJcbiAgJi5mYWRlIHsgQGluY2x1ZGUgb3BhY2l0eSgwKTsgfVxyXG4gICYuaW4geyBAaW5jbHVkZSBvcGFjaXR5KCRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KTsgfVxyXG59XHJcblxyXG4vLyBNb2RhbCBoZWFkZXJcclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXHJcbi5tb2RhbC1oZWFkZXIge1xyXG4gIHBhZGRpbmc6ICRtb2RhbC10aXRsZS1wYWRkaW5nO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxufVxyXG4vLyBDbG9zZSBpY29uXHJcbi5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcclxuICBtYXJnaW4tdG9wOiAtMnB4O1xyXG59XHJcblxyXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcclxuLm1vZGFsLXRpdGxlIHtcclxuICBtYXJnaW46IDA7XHJcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcclxufVxyXG5cclxuLy8gTW9kYWwgYm9keVxyXG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXHJcbi5tb2RhbC1ib2R5IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XHJcbn1cclxuXHJcbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXHJcbi5tb2RhbC1mb290ZXIge1xyXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBjbGVhciBpdCBpbiBjYXNlIGZvbGtzIHVzZSAucHVsbC0qIGNsYXNzZXMgb24gYnV0dG9uc1xyXG5cclxuICAvLyBQcm9wZXJseSBzcGFjZSBvdXQgYnV0dG9uc1xyXG4gIC5idG4gKyAuYnRuIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBhY2NvdW50IGZvciBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHdoaWNoIGdldHMgdGhlIGJvdHRvbSBtYXJnaW4gbGlrZSBhbGwgb3RoZXIgaW5wdXRzXHJcbiAgfVxyXG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXHJcbiAgLmJ0bi1ncm91cCAuYnRuICsgLmJ0biB7XHJcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICB9XHJcbiAgLy8gYW5kIG92ZXJyaWRlIGl0IGZvciBibG9jayBidXR0b25zIGFzIHdlbGxcclxuICAuYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxyXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC05OTk5cHg7XHJcbiAgd2lkdGg6IDUwcHg7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIG92ZXJmbG93OiBzY3JvbGw7XHJcbn1cclxuXHJcbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXHJcbiAgLm1vZGFsLWRpYWxvZyB7XHJcbiAgICB3aWR0aDogJG1vZGFsLW1kO1xyXG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XHJcbiAgfVxyXG4gIC5tb2RhbC1jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSk7XHJcbiAgfVxyXG5cclxuICAvLyBNb2RhbCBzaXplc1xyXG4gIC5tb2RhbC1zbSB7IHdpZHRoOiAkbW9kYWwtc207IH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgLm1vZGFsLWxnIHsgd2lkdGg6ICRtb2RhbC1sZzsgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFRvb2x0aXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBjbGFzc1xyXG4udG9vbHRpcCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXHJcbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cclxuICBAaW5jbHVkZSByZXNldC10ZXh0O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuXHJcbiAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcclxuXHJcbiAgJi5pbiAgICAgeyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XHJcbiAgJi50b3AgICAgeyBtYXJnaW4tdG9wOiAgLTNweDsgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctd2lkdGggMDsgfVxyXG4gICYucmlnaHQgIHsgbWFyZ2luLWxlZnQ6ICAzcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cclxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XHJcbiAgJi5sZWZ0ICAgeyBtYXJnaW4tbGVmdDogLTNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxyXG59XHJcblxyXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XHJcbi50b29sdGlwLWlubmVyIHtcclxuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcclxuICBwYWRkaW5nOiAzcHggOHB4O1xyXG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxufVxyXG5cclxuLy8gQXJyb3dzXHJcbi50b29sdGlwLWFycm93IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxufVxyXG4vLyBOb3RlOiBEZXByZWNhdGVkIC50b3AtbGVmdCwgLnRvcC1yaWdodCwgLmJvdHRvbS1sZWZ0LCBhbmQgLmJvdHRvbS1yaWdodCBhcyBvZiB2My4zLjFcclxuLnRvb2x0aXAge1xyXG4gICYudG9wIC50b29sdGlwLWFycm93IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi50b3AtbGVmdCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi50b3AtcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmxlZnQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICByaWdodDogMDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmJvdHRvbS1yaWdodCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBQb3BvdmVyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi5wb3BvdmVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XHJcbiAgcGFkZGluZzogMXB4O1xyXG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHBvcG92ZXJzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cclxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxyXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQ7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XHJcblxyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNXB4IDEwcHggcmdiYSgwLDAsMCwuMikpO1xyXG5cclxuICAvLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcclxuICAmLnRvcCAgICAgeyBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cclxuICAmLnJpZ2h0ICAgeyBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cclxuICAmLmJvdHRvbSAgeyBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG4gICYubGVmdCAgICB7IG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cclxufVxyXG5cclxuLnBvcG92ZXItdGl0bGUge1xyXG4gIG1hcmdpbjogMDsgLy8gcmVzZXQgaGVhZGluZyBtYXJnaW5cclxuICBwYWRkaW5nOiA4cHggMTRweDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci10aXRsZS1iZztcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRwb3BvdmVyLXRpdGxlLWJnLCA1JSk7XHJcbiAgYm9yZGVyLXJhZGl1czogKCRib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgKCRib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgMCAwO1xyXG59XHJcblxyXG4ucG9wb3Zlci1jb250ZW50IHtcclxuICBwYWRkaW5nOiA5cHggMTRweDtcclxufVxyXG5cclxuLy8gQXJyb3dzXHJcbi8vXHJcbi8vIC5hcnJvdyBpcyBvdXRlciwgLmFycm93OmFmdGVyIGlzIGlubmVyXHJcblxyXG4ucG9wb3ZlciA+IC5hcnJvdyB7XHJcbiAgJixcclxuICAmOmFmdGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICB9XHJcbn1cclxuLnBvcG92ZXIgPiAuYXJyb3cge1xyXG4gIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbn1cclxuLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xyXG4gIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XHJcbiAgY29udGVudDogXCJcIjtcclxufVxyXG5cclxuLnBvcG92ZXIge1xyXG4gICYudG9wID4gLmFycm93IHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XHJcbiAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgYm90dG9tOiAxcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XHJcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XHJcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLnJpZ2h0ID4gLmFycm93IHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xyXG4gICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xyXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XHJcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcclxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgIGxlZnQ6IDFweDtcclxuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XHJcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xyXG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLmJvdHRvbSA+IC5hcnJvdyB7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xyXG4gICAgdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgIHRvcDogMXB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xyXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYubGVmdCA+IC5hcnJvdyB7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHJpZ2h0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICByaWdodDogMXB4O1xyXG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XHJcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcclxuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIENhcm91c2VsXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xyXG4uY2Fyb3VzZWwge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmNhcm91c2VsLWlubmVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgPiAuaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbiguNnMgZWFzZS1pbi1vdXQgbGVmdCk7XHJcblxyXG4gICAgLy8gQWNjb3VudCBmb3IgamFua2l0dWRlIG9uIGltYWdlc1xyXG4gICAgPiBpbWcsXHJcbiAgICA+IGEgPiBpbWcge1xyXG4gICAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gV2ViS2l0IENTUzMgdHJhbnNmb3JtcyBmb3Igc3VwcG9ydGVkIGRldmljZXNcclxuICAgIEBtZWRpYSBhbGwgYW5kICh0cmFuc2Zvcm0tM2QpLCAoLXdlYmtpdC10cmFuc2Zvcm0tM2QpIHtcclxuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC42cyBlYXNlLWluLW91dCk7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcclxuICAgICAgQGluY2x1ZGUgcGVyc3BlY3RpdmUoMTAwMHB4KTtcclxuXHJcbiAgICAgICYubmV4dCxcclxuICAgICAgJi5hY3RpdmUucmlnaHQge1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgJi5wcmV2LFxyXG4gICAgICAmLmFjdGl2ZS5sZWZ0IHtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgICAmLm5leHQubGVmdCxcclxuICAgICAgJi5wcmV2LnJpZ2h0LFxyXG4gICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlLFxyXG4gID4gLm5leHQsXHJcbiAgPiAucHJldiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gID4gLmFjdGl2ZSB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuXHJcbiAgPiAubmV4dCxcclxuICA+IC5wcmV2IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgPiAubmV4dCB7XHJcbiAgICBsZWZ0OiAxMDAlO1xyXG4gIH1cclxuICA+IC5wcmV2IHtcclxuICAgIGxlZnQ6IC0xMDAlO1xyXG4gIH1cclxuICA+IC5uZXh0LmxlZnQsXHJcbiAgPiAucHJldi5yaWdodCB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlLmxlZnQge1xyXG4gICAgbGVmdDogLTEwMCU7XHJcbiAgfVxyXG4gID4gLmFjdGl2ZS5yaWdodCB7XHJcbiAgICBsZWZ0OiAxMDAlO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5jYXJvdXNlbC1jb250cm9sIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcclxuICBAaW5jbHVkZSBvcGFjaXR5KCRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHkpO1xyXG4gIGZvbnQtc2l6ZTogJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplO1xyXG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyAvLyBGaXggSUU5IGNsaWNrLXRocnUgYnVnXHJcbiAgLy8gV2UgY2FuJ3QgaGF2ZSB0aGlzIHRyYW5zaXRpb24gaGVyZSBiZWNhdXNlIFdlYktpdCBjYW5jZWxzIHRoZSBjYXJvdXNlbFxyXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXHJcblxyXG4gIC8vIFNldCBncmFkaWVudHMgZm9yIGJhY2tncm91bmRzXHJcbiAgJi5sZWZ0IHtcclxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiByZ2JhKDAsMCwwLC41KSwgJGVuZC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSkpO1xyXG4gIH1cclxuICAmLnJpZ2h0IHtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICByaWdodDogMDtcclxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSwgJGVuZC1jb2xvcjogcmdiYSgwLDAsMCwuNSkpO1xyXG4gIH1cclxuXHJcbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjkpO1xyXG4gIH1cclxuXHJcbiAgLy8gVG9nZ2xlc1xyXG4gIC5pY29uLXByZXYsXHJcbiAgLmljb24tbmV4dCxcclxuICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcclxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG4gIC5pY29uLXByZXYsXHJcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQge1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gIH1cclxuICAuaWNvbi1uZXh0LFxyXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XHJcbiAgICByaWdodDogNTAlO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICB9XHJcbiAgLmljb24tcHJldixcclxuICAuaWNvbi1uZXh0IHtcclxuICAgIHdpZHRoOiAgMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgZm9udC1mYW1pbHk6IHNlcmlmO1xyXG4gIH1cclxuXHJcblxyXG4gIC5pY29uLXByZXYge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnXFwyMDM5JzsvLyBTSU5HTEUgTEVGVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDM5KVxyXG4gICAgfVxyXG4gIH1cclxuICAuaWNvbi1uZXh0IHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJ1xcMjAzYSc7Ly8gU0lOR0xFIFJJR0hULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwM0EpXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xyXG4vL1xyXG4vLyBBZGQgYW4gdW5vcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcclxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cclxuXHJcbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYm90dG9tOiAxMHB4O1xyXG4gIGxlZnQ6IDUwJTtcclxuICB6LWluZGV4OiAxNTtcclxuICB3aWR0aDogNjAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMzAlO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6ICAxMHB4O1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgbWFyZ2luOiAxcHg7XHJcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgIC8vIElFOC05IGhhY2sgZm9yIGV2ZW50IGhhbmRsaW5nXHJcbiAgICAvL1xyXG4gICAgLy8gSW50ZXJuZXQgRXhwbG9yZXIgOC05IGRvZXMgbm90IHN1cHBvcnQgY2xpY2tzIG9uIGVsZW1lbnRzIHdpdGhvdXQgYSBzZXRcclxuICAgIC8vIGBiYWNrZ3JvdW5kLWNvbG9yYC4gV2UgY2Fubm90IHVzZSBgZmlsdGVyYCBzaW5jZSB0aGF0J3Mgbm90IHZpZXdlZCBhcyBhXHJcbiAgICAvLyBiYWNrZ3JvdW5kIGNvbG9yIGJ5IHRoZSBicm93c2VyLiBUaHVzLCBhIGhhY2sgaXMgbmVlZGVkLlxyXG4gICAgLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNJbnRlcm5ldF9FeHBsb3JlclxyXG4gICAgLy9cclxuICAgIC8vIEZvciBJRTgsIHdlIHNldCBzb2xpZCBibGFjayBhcyBpdCBkb2Vzbid0IHN1cHBvcnQgYHJnYmEoKWAuIEZvciBJRTksIHdlXHJcbiAgICAvLyBzZXQgYWxwaGEgdHJhbnNwYXJlbmN5IGZvciB0aGUgYmVzdCByZXN1bHRzIHBvc3NpYmxlLlxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCBcXDk7IC8vIElFOFxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwKTsgLy8gSUU5XHJcbiAgfVxyXG4gIC5hY3RpdmUge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgd2lkdGg6ICAxMnB4O1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBIaWRkZW4gYnkgZGVmYXVsdCBmb3Igc21hbGxlciB2aWV3cG9ydHNcclxuLmNhcm91c2VsLWNhcHRpb24ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAxNSU7XHJcbiAgcmlnaHQ6IDE1JTtcclxuICBib3R0b206IDIwcHg7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LXNoYWRvdzogJGNhcm91c2VsLXRleHQtc2hhZG93O1xyXG4gICYgLmJ0biB7XHJcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgLy8gTm8gc2hhZG93IGZvciBidXR0b24gZWxlbWVudHMgaW4gY2Fyb3VzZWwtY2FwdGlvblxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFNjYWxlIHVwIGNvbnRyb2xzIGZvciB0YWJsZXRzIGFuZCB1cFxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG5cclxuICAvLyBTY2FsZSB1cCB0aGUgY29udHJvbHMgYSBzbWlkZ2VcclxuICAuY2Fyb3VzZWwtY29udHJvbCB7XHJcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcclxuICAgIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCxcclxuICAgIC5pY29uLXByZXYsXHJcbiAgICAuaWNvbi1uZXh0IHtcclxuICAgICAgd2lkdGg6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xyXG4gICAgICBoZWlnaHQ6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xyXG4gICAgICBtYXJnaW4tdG9wOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xyXG4gICAgICBmb250LXNpemU6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xyXG4gICAgfVxyXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXHJcbiAgICAuaWNvbi1wcmV2IHtcclxuICAgICAgbWFyZ2luLWxlZnQ6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgLyAtMik7XHJcbiAgICB9XHJcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXHJcbiAgICAuaWNvbi1uZXh0IHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gU2hvdyBhbmQgbGVmdCBhbGlnbiB0aGUgY2FwdGlvbnNcclxuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XHJcbiAgICBsZWZ0OiAyMCU7XHJcbiAgICByaWdodDogMjAlO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgfVxyXG5cclxuICAvLyBNb3ZlIHVwIHRoZSBpbmRpY2F0b3JzXHJcbiAgLmNhcm91c2VsLWluZGljYXRvcnMge1xyXG4gICAgYm90dG9tOiAyMHB4O1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBVdGlsaXR5IGNsYXNzZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBGbG9hdHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmNsZWFyZml4IHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxufVxyXG4uY2VudGVyLWJsb2NrIHtcclxuICBAaW5jbHVkZSBjZW50ZXItYmxvY2s7XHJcbn1cclxuLnB1bGwtcmlnaHQge1xyXG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xyXG59XHJcbi5wdWxsLWxlZnQge1xyXG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4vLyBUb2dnbGluZyBjb250ZW50XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLmhpZGUgaW4gZmF2b3Igb2YgLmhpZGRlbiBvciAuc3Itb25seSAoYXMgYXBwcm9wcmlhdGUpIGluIHYzLjAuMVxyXG4uaGlkZSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5zaG93IHtcclxuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG59XHJcbi5pbnZpc2libGUge1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG4udGV4dC1oaWRlIHtcclxuICBAaW5jbHVkZSB0ZXh0LWhpZGU7XHJcbn1cclxuXHJcblxyXG4vLyBIaWRlIGZyb20gc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnNcclxuLy9cclxuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxyXG5cclxuLmhpZGRlbiB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLy8gRm9yIEFmZml4IHBsdWdpblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYWZmaXgge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxufVxyXG4iLCIvL1xyXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBJRTEwIGluIFdpbmRvd3MgKFBob25lKSA4XHJcbi8vXHJcbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXHJcbi8vIFN1cmZhY2UvZGVza3RvcCBpbiBzcGxpdCB2aWV3IGFuZCBmb3IgV2luZG93cyBQaG9uZSA4LiBUaGlzIHBhcnRpY3VsYXIgZml4XHJcbi8vIG11c3QgYmUgYWNjb21wYW5pZWQgYnkgYSBzbmlwcGV0IG9mIEphdmFTY3JpcHQgdG8gc25pZmYgdGhlIHVzZXIgYWdlbnQgYW5kXHJcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxyXG4vLyBvdXIgR2V0dGluZyBTdGFydGVkIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcyBidWcuXHJcbi8vXHJcbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcclxuLy9cclxuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTA0OTdcclxuLy8gRG9jczogaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyNzdXBwb3J0LWllMTAtd2lkdGhcclxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xyXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTIvMTAvaWUxMC1zbmFwLW1vZGUtYW5kLXJlc3BvbnNpdmUtZGVzaWduL1xyXG5cclxuQGF0LXJvb3Qge1xyXG4gIEAtbXMtdmlld3BvcnQge1xyXG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xyXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcclxuXHJcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xyXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XHJcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xyXG5cclxuLnZpc2libGUteHMtYmxvY2ssXHJcbi52aXNpYmxlLXhzLWlubGluZSxcclxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxyXG4udmlzaWJsZS1zbS1ibG9jayxcclxuLnZpc2libGUtc20taW5saW5lLFxyXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXHJcbi52aXNpYmxlLW1kLWJsb2NrLFxyXG4udmlzaWJsZS1tZC1pbmxpbmUsXHJcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcclxuLnZpc2libGUtbGctYmxvY2ssXHJcbi52aXNpYmxlLWxnLWlubGluZSxcclxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcclxufVxyXG4udmlzaWJsZS14cy1ibG9jayB7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS14cy1pbmxpbmUge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayB7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xyXG59XHJcbi52aXNpYmxlLXNtLWJsb2NrIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtc20taW5saW5lIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XHJcbn1cclxuLnZpc2libGUtbWQtYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1tZC1pbmxpbmUge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XHJcbn1cclxuLnZpc2libGUtbGctYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtbGctaW5saW5lIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi14cycpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtJyk7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbWQnKTtcclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcclxufVxyXG5cclxuXHJcbi8vIFByaW50IHV0aWxpdGllc1xyXG4vL1xyXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cclxuXHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUtcHJpbnQgYXMgb2YgdjMuMi4wXHJcblxyXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcclxuXHJcbkBtZWRpYSBwcmludCB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xyXG59XHJcbi52aXNpYmxlLXByaW50LWJsb2NrIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgQG1lZGlhIHByaW50IHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgQG1lZGlhIHByaW50IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHByaW50IHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1wcmludCcpO1xyXG59XHJcbiIsIi8qIVxyXG4gKiBIb3Zlci5jc3MgKGh0dHA6Ly9pYW5sdW5uLmdpdGh1Yi5pby9Ib3Zlci8pXHJcbiAqIFZlcnNpb246IDIuMS4xXHJcbiAqIEF1dGhvcjogSWFuIEx1bm4gQElhbkx1bm5cclxuICogQXV0aG9yIFVSTDogaHR0cDovL2lhbmx1bm4uY28udWsvXHJcbiAqIEdpdGh1YjogaHR0cHM6Ly9naXRodWIuY29tL0lhbkx1bm4vSG92ZXJcclxuXHJcbiAqIE1hZGUgYXZhaWxhYmxlIHVuZGVyIGEgTUlUIExpY2Vuc2U6XHJcbiAqIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXHJcblxyXG4gKiBIb3Zlci5jc3MgQ29weXJpZ2h0IElhbiBMdW5uIDIwMTQuIEdlbmVyYXRlZCB3aXRoIFNhc3MuXHJcbiAqL1xyXG5cclxuQGltcG9ydCBcIm9wdGlvbnNcIjtcclxuQGltcG9ydCBcIm1peGluc1wiO1xyXG5AaW1wb3J0IFwiaGFja3NcIjtcclxuXHJcblxyXG4vKiAyRCBUUkFOU0lUSU9OUyAqL1xyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9ncm93XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWdyb3cge1xyXG5cdFx0QGluY2x1ZGUgZ3JvdygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvc2hyaW5rXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXNocmluayB7XHJcblx0XHRAaW5jbHVkZSBzaHJpbmsoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3B1bHNlXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXB1bHNlIHtcclxuXHRcdEBpbmNsdWRlIHB1bHNlKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9wdWxzZS1ncm93XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXB1bHNlLWdyb3cge1xyXG5cdFx0QGluY2x1ZGUgcHVsc2UtZ3JvdygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvcHVsc2Utc2hyaW5rXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXB1bHNlLXNocmluayB7XHJcblx0XHRAaW5jbHVkZSBwdWxzZS1zaHJpbmsoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3B1c2hcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tcHVzaCB7XHJcblx0XHRAaW5jbHVkZSBwdXNoKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9wb3BcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tcG9wIHtcclxuXHRcdEBpbmNsdWRlIHBvcCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvYm91bmNlLWluXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWJvdW5jZS1pbiB7XHJcblx0XHRAaW5jbHVkZSBib3VuY2UtaW4oKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL2JvdW5jZS1vdXRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tYm91bmNlLW91dCB7XHJcblx0XHRAaW5jbHVkZSBib3VuY2Utb3V0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9yb3RhdGVcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tcm90YXRlIHtcclxuXHRcdEBpbmNsdWRlIHJvdGF0ZSgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvZ3Jvdy1yb3RhdGVcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tZ3Jvdy1yb3RhdGUge1xyXG5cdFx0QGluY2x1ZGUgZ3Jvdy1yb3RhdGUoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL2Zsb2F0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWZsb2F0IHtcclxuXHRcdEBpbmNsdWRlIGZsb2F0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9zaW5rXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXNpbmsge1xyXG5cdFx0QGluY2x1ZGUgc2luaygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvYm9iXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWJvYiB7XHJcblx0XHRAaW5jbHVkZSBib2IoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL2hhbmdcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taGFuZyB7XHJcblx0XHRAaW5jbHVkZSBoYW5nKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9za2V3XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXNrZXcge1xyXG5cdFx0QGluY2x1ZGUgc2tldygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvc2tldy1mb3J3YXJkXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXNrZXctZm9yd2FyZCB7XHJcblx0XHRAaW5jbHVkZSBza2V3LWZvcndhcmQoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3NrZXctYmFja3dhcmRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tc2tldy1iYWNrd2FyZCB7XHJcblx0ICAgIEBpbmNsdWRlIHNrZXctYmFja3dhcmQoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3dvYmJsZS12ZXJ0aWNhbFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS13b2JibGUtdmVydGljYWwge1xyXG5cdFx0QGluY2x1ZGUgd29iYmxlLXZlcnRpY2FsKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy93b2JibGUtaG9yaXpvbnRhbFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS13b2JibGUtaG9yaXpvbnRhbCB7XHJcblx0XHRAaW5jbHVkZSB3b2JibGUtaG9yaXpvbnRhbCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvd29iYmxlLXRvLWJvdHRvbS1yaWdodFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS13b2JibGUtdG8tYm90dG9tLXJpZ2h0IHtcclxuXHQgICAgQGluY2x1ZGUgd29iYmxlLXRvLWJvdHRvbS1yaWdodCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvd29iYmxlLXRvLXRvcC1yaWdodFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS13b2JibGUtdG8tdG9wLXJpZ2h0IHtcclxuXHQgICAgQGluY2x1ZGUgd29iYmxlLXRvLXRvcC1yaWdodCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvd29iYmxlLXRvcFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS13b2JibGUtdG9wIHtcclxuXHRcdEBpbmNsdWRlIHdvYmJsZS10b3AoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3dvYmJsZS1ib3R0b21cIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0td29iYmxlLWJvdHRvbSB7XHJcblx0XHRAaW5jbHVkZSB3b2JibGUtYm90dG9tKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy93b2JibGUtc2tld1wiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS13b2JibGUtc2tldyB7XHJcblx0ICAgIEBpbmNsdWRlIHdvYmJsZS1za2V3KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9idXp6XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWJ1enoge1xyXG5cdCAgICBAaW5jbHVkZSBidXp6KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9idXp6LW91dFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1idXp6LW91dCB7XHJcblx0ICAgIEBpbmNsdWRlIGJ1enotb3V0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9mb3J3YXJkXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWZvcndhcmQge1xyXG5cdFx0QGluY2x1ZGUgZm9yd2FyZCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvYmFja3dhcmRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tYmFja3dhcmQge1xyXG5cdFx0QGluY2x1ZGUgYmFja3dhcmQoKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEJBQ0tHUk9VTkQgVFJBTlNJVElPTlMgKi9cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9mYWRlXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWZhZGUge1xyXG5cdFx0QGluY2x1ZGUgZmFkZSgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9iYWNrLXB1bHNlXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWJhY2stcHVsc2Uge1xyXG5cdFx0QGluY2x1ZGUgYmFjay1wdWxzZSgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zd2VlcC10by1yaWdodFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1zd2VlcC10by1yaWdodCB7XHJcblx0XHRAaW5jbHVkZSBzd2VlcC10by1yaWdodCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zd2VlcC10by1sZWZ0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXN3ZWVwLXRvLWxlZnQge1xyXG5cdFx0QGluY2x1ZGUgc3dlZXAtdG8tbGVmdCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zd2VlcC10by1ib3R0b21cIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tc3dlZXAtdG8tYm90dG9tIHtcclxuXHRcdEBpbmNsdWRlIHN3ZWVwLXRvLWJvdHRvbSgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zd2VlcC10by10b3BcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tc3dlZXAtdG8tdG9wIHtcclxuXHRcdEBpbmNsdWRlIHN3ZWVwLXRvLXRvcCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9ib3VuY2UtdG8tcmlnaHRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tYm91bmNlLXRvLXJpZ2h0IHtcclxuXHRcdEBpbmNsdWRlIGJvdW5jZS10by1yaWdodCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9ib3VuY2UtdG8tbGVmdFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1ib3VuY2UtdG8tbGVmdCB7XHJcblx0XHRAaW5jbHVkZSBib3VuY2UtdG8tbGVmdCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9ib3VuY2UtdG8tYm90dG9tXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWJvdW5jZS10by1ib3R0b20ge1xyXG5cdFx0QGluY2x1ZGUgYm91bmNlLXRvLWJvdHRvbSgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9ib3VuY2UtdG8tdG9wXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWJvdW5jZS10by10b3Age1xyXG5cdFx0QGluY2x1ZGUgYm91bmNlLXRvLXRvcCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9yYWRpYWwtb3V0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXJhZGlhbC1vdXQge1xyXG5cdFx0QGluY2x1ZGUgcmFkaWFsLW91dCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9yYWRpYWwtaW5cIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tcmFkaWFsLWluIHtcclxuXHRcdEBpbmNsdWRlIHJhZGlhbC1pbigpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9yZWN0YW5nbGUtaW5cIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tcmVjdGFuZ2xlLWluIHtcclxuXHRcdEBpbmNsdWRlIHJlY3RhbmdsZS1pbigpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9yZWN0YW5nbGUtb3V0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXJlY3RhbmdsZS1vdXQge1xyXG5cdFx0QGluY2x1ZGUgcmVjdGFuZ2xlLW91dCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zaHV0dGVyLWluLWhvcml6b250YWxcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tc2h1dHRlci1pbi1ob3Jpem9udGFsIHtcclxuXHRcdEBpbmNsdWRlIHNodXR0ZXItaW4taG9yaXpvbnRhbCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zaHV0dGVyLW91dC1ob3Jpem9udGFsXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXNodXR0ZXItb3V0LWhvcml6b250YWwge1xyXG5cdFx0QGluY2x1ZGUgc2h1dHRlci1vdXQtaG9yaXpvbnRhbCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zaHV0dGVyLWluLXZlcnRpY2FsXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXNodXR0ZXItaW4tdmVydGljYWwge1xyXG5cdFx0QGluY2x1ZGUgc2h1dHRlci1pbi12ZXJ0aWNhbCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zaHV0dGVyLW91dC12ZXJ0aWNhbFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1zaHV0dGVyLW91dC12ZXJ0aWNhbCB7XHJcblx0XHRAaW5jbHVkZSBzaHV0dGVyLW91dC12ZXJ0aWNhbCgpO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qIEJPUkRFUiBUUkFOU0lUSU9OUyAqL1xyXG5AaW1wb3J0IFwiZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvYm9yZGVyLWZhZGVcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tYm9yZGVyLWZhZGUge1xyXG5cdFx0QGluY2x1ZGUgYm9yZGVyLWZhZGUoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9ob2xsb3dcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taG9sbG93IHtcclxuXHRcdEBpbmNsdWRlIGhvbGxvdygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3RyaW1cIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tdHJpbSB7XHJcblx0XHRAaW5jbHVkZSB0cmltKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvcmlwcGxlLW91dFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1yaXBwbGUtb3V0IHtcclxuXHRcdEBpbmNsdWRlIHJpcHBsZS1vdXQoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9yaXBwbGUtaW5cIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tcmlwcGxlLWluIHtcclxuXHRcdEBpbmNsdWRlIHJpcHBsZS1pbigpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL291dGxpbmUtb3V0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LW91dGxpbmUtb3V0IHtcclxuXHRcdEBpbmNsdWRlIG91dGxpbmUtb3V0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvb3V0bGluZS1pblwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1vdXRsaW5lLWluIHtcclxuXHRcdEBpbmNsdWRlIG91dGxpbmUtaW4oKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9yb3VuZC1jb3JuZXJzXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXJvdW5kLWNvcm5lcnMge1xyXG5cdFx0QGluY2x1ZGUgcm91bmQtY29ybmVycygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3VuZGVybGluZS1mcm9tLWxlZnRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tdW5kZXJsaW5lLWZyb20tbGVmdCB7XHJcblx0XHRAaW5jbHVkZSB1bmRlcmxpbmUtZnJvbS1sZWZ0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvdW5kZXJsaW5lLWZyb20tY2VudGVyXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXVuZGVybGluZS1mcm9tLWNlbnRlciB7XHJcblx0XHRAaW5jbHVkZSB1bmRlcmxpbmUtZnJvbS1jZW50ZXIoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy91bmRlcmxpbmUtZnJvbS1yaWdodFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS11bmRlcmxpbmUtZnJvbS1yaWdodCB7XHJcblx0XHRAaW5jbHVkZSB1bmRlcmxpbmUtZnJvbS1yaWdodCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL292ZXJsaW5lLWZyb20tbGVmdFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1vdmVybGluZS1mcm9tLWxlZnQge1xyXG5cdFx0QGluY2x1ZGUgb3ZlcmxpbmUtZnJvbS1sZWZ0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvb3ZlcmxpbmUtZnJvbS1jZW50ZXJcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tb3ZlcmxpbmUtZnJvbS1jZW50ZXIge1xyXG5cdFx0QGluY2x1ZGUgb3ZlcmxpbmUtZnJvbS1jZW50ZXIoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9vdmVybGluZS1mcm9tLXJpZ2h0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LW92ZXJsaW5lLWZyb20tcmlnaHQge1xyXG5cdFx0QGluY2x1ZGUgb3ZlcmxpbmUtZnJvbS1yaWdodCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3JldmVhbFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1yZXZlYWwge1xyXG5cdFx0QGluY2x1ZGUgcmV2ZWFsKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvdW5kZXJsaW5lLXJldmVhbFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS11bmRlcmxpbmUtcmV2ZWFsIHtcclxuXHRcdEBpbmNsdWRlIHVuZGVybGluZS1yZXZlYWwoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9vdmVybGluZS1yZXZlYWxcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tb3ZlcmxpbmUtcmV2ZWFsIHtcclxuXHRcdEBpbmNsdWRlIG92ZXJsaW5lLXJldmVhbCgpO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qIFNIQURPVy9HTE9XIFRSQU5TSVRJT05TICovXHJcbkBpbXBvcnQgXCJlZmZlY3RzL3NoYWRvdy1hbmQtZ2xvdy10cmFuc2l0aW9ucy9nbG93XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWdsb3cge1xyXG5cdFx0QGluY2x1ZGUgZ2xvdygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL3NoYWRvd1wiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1zaGFkb3cge1xyXG5cdFx0QGluY2x1ZGUgc2hhZG93KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvZ3Jvdy1zaGFkb3dcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tZ3Jvdy1zaGFkb3cge1xyXG5cdFx0QGluY2x1ZGUgZ3Jvdy1zaGFkb3coKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL3NoYWRvdy1hbmQtZ2xvdy10cmFuc2l0aW9ucy9ib3gtc2hhZG93LW91dHNldFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1ib3gtc2hhZG93LW91dHNldCB7XHJcblx0XHRAaW5jbHVkZSBib3gtc2hhZG93LW91dHNldCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL2JveC1zaGFkb3ctaW5zZXRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tYm94LXNoYWRvdy1pbnNldCB7XHJcblx0XHRAaW5jbHVkZSBib3gtc2hhZG93LWluc2V0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvZmxvYXQtc2hhZG93XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWZsb2F0LXNoYWRvdyB7XHJcblx0XHRAaW5jbHVkZSBmbG9hdC1zaGFkb3coKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL3NoYWRvdy1hbmQtZ2xvdy10cmFuc2l0aW9ucy9zaGFkb3ctcmFkaWFsXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LXNoYWRvdy1yYWRpYWwge1xyXG5cdFx0QGluY2x1ZGUgc2hhZG93LXJhZGlhbCgpO1xyXG5cdH1cclxufVxyXG5cclxuLyogU1BFRUNIIEJVQkJMRVMgKi9cclxuQGltcG9ydCBcImVmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvYnViYmxlLXRvcFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1idWJibGUtdG9wIHtcclxuXHRcdEBpbmNsdWRlIGJ1YmJsZS10b3AoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL3NwZWVjaC1idWJibGVzL2J1YmJsZS1yaWdodFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1idWJibGUtcmlnaHQge1xyXG5cdFx0QGluY2x1ZGUgYnViYmxlLXJpZ2h0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9idWJibGUtYm90dG9tXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWJ1YmJsZS1ib3R0b20ge1xyXG5cdFx0QGluY2x1ZGUgYnViYmxlLWJvdHRvbSgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvYnViYmxlLWxlZnRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tYnViYmxlLWxlZnQge1xyXG5cdFx0QGluY2x1ZGUgYnViYmxlLWxlZnQoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL3NwZWVjaC1idWJibGVzL2J1YmJsZS1mbG9hdC10b3BcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tYnViYmxlLWZsb2F0LXRvcCB7XHJcblx0XHRAaW5jbHVkZSBidWJibGUtZmxvYXQtdG9wKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9idWJibGUtZmxvYXQtcmlnaHRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tYnViYmxlLWZsb2F0LXJpZ2h0IHtcclxuXHRcdEBpbmNsdWRlIGJ1YmJsZS1mbG9hdC1yaWdodCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvYnViYmxlLWZsb2F0LWJvdHRvbVwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1idWJibGUtZmxvYXQtYm90dG9tIHtcclxuXHRcdEBpbmNsdWRlIGJ1YmJsZS1mbG9hdC1ib3R0b20oKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL3NwZWVjaC1idWJibGVzL2J1YmJsZS1mbG9hdC1sZWZ0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWJ1YmJsZS1mbG9hdC1sZWZ0IHtcclxuXHRcdEBpbmNsdWRlIGJ1YmJsZS1mbG9hdC1sZWZ0KCk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBJQ09OUyAqL1xyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWJhY2tcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1iYWNrIHtcclxuXHRcdEBpbmNsdWRlIGljb24tYmFjaygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1mb3J3YXJkXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24tZm9yd2FyZCB7XHJcblx0XHRAaW5jbHVkZSBpY29uLWZvcndhcmQoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tZG93blwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1pY29uLWRvd24ge1xyXG5cdFx0QGluY2x1ZGUgaWNvbi1kb3duKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLXVwXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24tdXAge1xyXG5cdFx0QGluY2x1ZGUgaWNvbi11cCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1zcGluXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24tc3BpbiB7XHJcblx0XHRAaW5jbHVkZSBpY29uLXNwaW4oKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tZHJvcFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1pY29uLWRyb3Age1xyXG5cdFx0QGluY2x1ZGUgaWNvbi1kcm9wKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWZhZGVcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1mYWRlIHtcclxuXHRcdEBpbmNsdWRlIGljb24tZmFkZSgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1mbG9hdC1hd2F5XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24tZmxvYXQtYXdheSB7XHJcblx0XHRAaW5jbHVkZSBpY29uLWZsb2F0LWF3YXkoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tc2luay1hd2F5XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24tc2luay1hd2F5IHtcclxuXHRcdEBpbmNsdWRlIGljb24tc2luay1hd2F5KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWdyb3dcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1ncm93IHtcclxuXHRcdEBpbmNsdWRlIGljb24tZ3JvdygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1zaHJpbmtcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1zaHJpbmsge1xyXG5cdFx0QGluY2x1ZGUgaWNvbi1zaHJpbmsoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tcHVsc2VcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZSB7XHJcblx0XHRAaW5jbHVkZSBpY29uLXB1bHNlKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLXB1bHNlLWdyb3dcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZS1ncm93IHtcclxuXHRcdEBpbmNsdWRlIGljb24tcHVsc2UtZ3JvdygpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1wdWxzZS1zaHJpbmtcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZS1zaHJpbmsge1xyXG5cdFx0QGluY2x1ZGUgaWNvbi1wdWxzZS1zaHJpbmsoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tcHVzaFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1pY29uLXB1c2gge1xyXG5cdFx0QGluY2x1ZGUgaWNvbi1wdXNoKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLXBvcFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1pY29uLXBvcCB7XHJcblx0XHRAaW5jbHVkZSBpY29uLXBvcCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1ib3VuY2VcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1ib3VuY2Uge1xyXG5cdFx0QGluY2x1ZGUgaWNvbi1ib3VuY2UoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tcm90YXRlXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24tcm90YXRlIHtcclxuXHRcdEBpbmNsdWRlIGljb24tcm90YXRlKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWdyb3ctcm90YXRlXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24tZ3Jvdy1yb3RhdGUge1xyXG5cdFx0QGluY2x1ZGUgaWNvbi1ncm93LXJvdGF0ZSgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1mbG9hdFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1pY29uLWZsb2F0IHtcclxuXHRcdEBpbmNsdWRlIGljb24tZmxvYXQoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tc2lua1wiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1pY29uLXNpbmsge1xyXG5cdFx0QGluY2x1ZGUgaWNvbi1zaW5rKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWJvYlwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1pY29uLWJvYiB7XHJcblx0XHRAaW5jbHVkZSBpY29uLWJvYigpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1oYW5nXCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24taGFuZyB7XHJcblx0XHRAaW5jbHVkZSBpY29uLWhhbmcoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24td29iYmxlLWhvcml6b250YWxcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi13b2JibGUtaG9yaXpvbnRhbCB7XHJcblx0XHRAaW5jbHVkZSBpY29uLXdvYmJsZS1ob3Jpem9udGFsKCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLXdvYmJsZS12ZXJ0aWNhbFwiO1xyXG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcclxuXHQuI3skbmFtZVNwYWNlfS1pY29uLXdvYmJsZS12ZXJ0aWNhbCB7XHJcblx0XHRAaW5jbHVkZSBpY29uLXdvYmJsZS12ZXJ0aWNhbCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1idXp6XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWljb24tYnV6eiB7XHJcblx0XHRAaW5jbHVkZSBpY29uLWJ1enooKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tYnV6ei1vdXRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1idXp6LW91dCB7XHJcblx0XHRAaW5jbHVkZSBpY29uLWJ1enotb3V0KCk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBDVVJMUyAqL1xyXG5AaW1wb3J0IFwiZWZmZWN0cy9jdXJscy9jdXJsLXRvcC1sZWZ0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWN1cmwtdG9wLWxlZnQge1xyXG5cdFx0QGluY2x1ZGUgY3VybC10b3AtbGVmdCgpO1xyXG5cdH1cclxufVxyXG5cclxuQGltcG9ydCBcImVmZmVjdHMvY3VybHMvY3VybC10b3AtcmlnaHRcIjtcclxuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XHJcblx0LiN7JG5hbWVTcGFjZX0tY3VybC10b3AtcmlnaHQge1xyXG5cdFx0QGluY2x1ZGUgY3VybC10b3AtcmlnaHQoKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJlZmZlY3RzL2N1cmxzL2N1cmwtYm90dG9tLXJpZ2h0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWN1cmwtYm90dG9tLXJpZ2h0IHtcclxuXHRcdEBpbmNsdWRlIGN1cmwtYm90dG9tLXJpZ2h0KCk7XHJcblx0fVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZWZmZWN0cy9jdXJscy9jdXJsLWJvdHRvbS1sZWZ0XCI7XHJcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xyXG5cdC4jeyRuYW1lU3BhY2V9LWN1cmwtYm90dG9tLWxlZnQge1xyXG5cdFx0QGluY2x1ZGUgY3VybC1ib3R0b20tbGVmdCgpO1xyXG5cdH1cclxufVxyXG4iLCIvLyBERUZBVUxUIE9QVElPTlNcclxuXHJcbi8vIFByZWZpeCBmb3IgSG92ZXIgY2xhc3MgbmFtZXNcclxuJG5hbWVTcGFjZTogJ2h2cicgIWRlZmF1bHQ7XHJcblxyXG4vLyBEdXJhdGlvbnNcclxuJGZhc3REdXJhdGlvbjogLjFzICFkZWZhdWx0O1xyXG4kbWVkaXVtRHVyYXRpb246IC4zcyAhZGVmYXVsdDtcclxuJHNsb3dEdXJhdGlvbjogLjVzICFkZWZhdWx0O1xyXG5cclxuLy8gQ29sb3JzXHJcbiRwcmltYXJ5Q29sb3I6ICNlMWUxZTEgIWRlZmF1bHQ7XHJcbiRzZWNvbmRhcnlDb2xvcjogIzY2NiAhZGVmYXVsdDtcclxuJGhpZ2hsaWdodENvbG9yOiAjY2NjICFkZWZhdWx0O1xyXG4kYWN0aXZlQ29sb3I6ICMyMDk4RDEgIWRlZmF1bHQ7XHJcbiRzaGFkb3dDb2xvcjogcmdiYSgwLCAwLCAwLCAuNikgIWRlZmF1bHQ7XHJcblxyXG4vLyBTcGVlY2ggYnViYmxlcyBvcHRpb25zXHJcbiR0aXBXaWR0aDogMTBweCAhZGVmYXVsdDsgIC8vdGhlIHdpZHRoIG9mIHRoZSBzcGVlY2ggYnViYmxlIHRpcFxyXG4kdGlwSGVpZ2h0OiAxMHB4ICFkZWZhdWx0OyAvL3RoZSBoZWlnaHQgb2YgdGhlIHNwZWVjaCBidWJibGUgdGlwXHJcbiR0aXBDb2xvcjogJHByaW1hcnlDb2xvciAhZGVmYXVsdDtcclxuXHJcbi8vIEFycm93cyBvcHRpb25zXHJcbiRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzOiAyLjJlbSAhZGVmYXVsdDtcclxuXHJcbi8vIEN1cmwgZGltZW5zaW9uc1xyXG4kY3VybFdpZHRoOiAyNXB4ICFkZWZhdWx0O1xyXG4kY3VybEhlaWdodDogMjVweCAhZGVmYXVsdDtcclxuXHJcbi8vIEN1cmwgY29sb3JzXHJcbiRyZXZlYWxBcmVhQ29sb3I6IHdoaXRlICFkZWZhdWx0OyAgICAvLyByZXZlYWwgYXJlYSBiZWhpbmQgdGhlIGN1cmxcclxuJGN1cmxMaW5lQ29sb3I6ICNhYWEgIWRlZmF1bHQ7ICAgICAgIC8vIGNyZWFzZSBsaW5lXHJcbiRjdXJsVHJhbnNpdGlvbkNvbG9yOiAjY2NjICFkZWZhdWx0O1x0Ly8gY29sb3IgdHJhbnNpdGlvbmluZyBmcm9tIGNyZWFzZSBsaW5lIHRvIGZpbmFsIGNvbG9yXHJcbiRjdXJsTGFzdENvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcdFx0Ly8gZmluYWwgY29sb3Igb2YgdGhlIGJhY2sgb2YgdGhlIGN1cmxcclxuXHJcbi8vIEJyb3dzZXIgUHJlZml4ZXMgLSBXaGljaCBDU1MgcHJlZml4ZXMgc2hvdWxkIGJlIHVzZWQ/XHJcbiR3ZWJraXQ6IHRydWUgIWRlZmF1bHQ7XHJcbiRtb3o6IGZhbHNlICFkZWZhdWx0O1xyXG4kbXM6IGZhbHNlICFkZWZhdWx0O1xyXG4kbzogZmFsc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyBDb21waWxlIHdpdGggb3Igd2l0aG91dCBjbGFzc2VzXHJcbiRpbmNsdWRlQ2xhc3NlczogdHJ1ZSAhZGVmYXVsdDtcclxuIiwiLy8gcHJlZml4IGRlY2xhcmF0aW9uc1xyXG5AbWl4aW4gcHJlZml4ZWQoJHByb3BlcnR5LCAkdmFsdWUpIHtcclxuICBAaWYgJHdlYmtpdCA9PSB0cnVlIHtcclxuICAgIC13ZWJraXQtI3skcHJvcGVydHl9OiAjeyR2YWx1ZX07XHJcbiAgfVxyXG5cclxuICBAaWYgJG1veiA9PSB0cnVlIHtcclxuICAgIC1tb3otI3skcHJvcGVydHl9OiAjeyR2YWx1ZX07XHJcbiAgfVxyXG5cclxuICBAaWYgJG1zID09IHRydWUge1xyXG4gICAgLW1zLSN7JHByb3BlcnR5fTogI3skdmFsdWV9O1xyXG4gIH1cclxuXHJcbiAgQGlmICRvID09IHRydWUge1xyXG4gICAgLW8tI3skcHJvcGVydHl9OiAjeyR2YWx1ZX07XHJcbiAgfVxyXG5cclxuICAjeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcclxufVxyXG5cclxuLy8gcHJlZml4IGtleWZyYW1lc1xyXG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XHJcbiAgQGlmICR3ZWJraXQgPT0gdHJ1ZSB7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkbW96ID09IHRydWUge1xyXG4gICAgQC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJG1zID09IHRydWUge1xyXG4gICAgQC1tcy1rZXlmcmFtZXMgI3skbmFtZX0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkbyA9PSB0cnVlIHtcclxuICAgIEAtby1rZXlmcmFtZXMgI3skbmFtZX0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBHbG93ICovXHJcbkBtaXhpbiBnbG93IHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgYm94LXNoYWRvdyk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgOHB4ICRzaGFkb3dDb2xvcjtcclxuXHR9XHJcbn1cclxuIiwiLy8gQXMgaXMgb2Z0ZW4gdGhlIGNhc2UsIHNvbWUgZGV2aWNlcy9icm93c2VycyBuZWVkIGFkZGl0aW9uYWwgY29kZSB0byBnZXQgQ1NTIHRvIHdvcmtcclxuLy8gaW4gdGhlIG1vc3QgZGVzaXJlZCB3YXkuIFRoZXNlIG1peGlucyBhcmUgdXNlZCB0byBxdWlja2x5IGRyb3AgaW4gaGFja3MgZm9yIGVhY2ggZWxlbWVudFxyXG4vLyBGaW5kIG91dCBtb3JlIGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9JYW5MdW5uL0hvdmVyL3dpa2kvSGFja3MtRXhwbGFpbmVkXHJcblxyXG5AbWl4aW4gaGFyZHdhcmVBY2NlbCgpIHtcclxuXHQvLyBJbXByb3ZlIHBlcmZvcm1hbmNlIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlc1xyXG5cdC8vIFBlcnNwZWN0aXZlIHJlZHVjZXMgYmx1cnJ5bmVzcyBvZiB0ZXh0IGluIENocm9tZVxyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApKTtcclxufVxyXG5cclxuQG1peGluIGltcHJvdmVBbnRpQWxpYXMoKSB7XHJcblx0Ly8gSW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXNcclxuXHRib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7XHJcbn1cclxuXHJcbkBtaXhpbiBmb3JjZUJsb2NrTGV2ZWwoKSB7XHJcblx0Ly8gVHJhbnNmb3JtcyBuZWVkIHRvIGJlIGJsb2NrLWxldmVsIHRvIHdvcmtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuQG1peGluIGhhY2tzKCkge1xyXG5cdEBpbmNsdWRlIGZvcmNlQmxvY2tMZXZlbCgpO1xyXG5cdEBpbmNsdWRlIGhhcmR3YXJlQWNjZWwoKTtcclxuXHRAaW5jbHVkZSBpbXByb3ZlQW50aUFsaWFzKCk7XHJcbn1cclxuIiwiLyogR3JvdyAqL1xyXG5AbWl4aW4gZ3JvdyB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMSkpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBTaHJpbmsgKi9cclxuQG1peGluIHNocmluayB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKC45KSk7XHJcblx0fVxyXG59XHJcbiIsIi8qIFB1bHNlICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXB1bHNlKSB7XHJcblx0MjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS4xKSk7XHJcblx0fVxyXG5cclxuXHQ3NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSguOSkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIHB1bHNlIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0tcHVsc2UpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBsaW5lYXIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBQdWxzZSBHcm93ICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXB1bHNlLWdyb3cpIHtcclxuXHR0byB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMSkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIHB1bHNlLWdyb3cge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1wdWxzZS1ncm93KTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZGlyZWN0aW9uLCBhbHRlcm5hdGUpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBQdWxzZSBTaHJpbmsgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0tcHVsc2Utc2hyaW5rKSB7XHJcblx0dG8ge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSguOSkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIHB1bHNlLXNocmluayB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXB1bHNlLXNocmluayk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBsaW5lYXIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRpcmVjdGlvbiwgYWx0ZXJuYXRlKTtcclxuXHR9XHJcbn1cclxuIiwiLyogUHVzaCAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1wdXNoKSB7XHJcblx0NTAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoLjgpKTtcclxuXHR9XHJcblxyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgxKSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gcHVzaCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXB1c2gpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAuM3MpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgbGluZWFyKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIDEpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBQb3AgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0tcG9wKSB7XHJcblx0NTAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS4yKSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gcG9wIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0tcG9wKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcclxuXHR9XHJcbn1cclxuIiwiLyogQm91bmNlIEluICovXHJcbkBtaXhpbiBib3VuY2UtaW4ge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHNsb3dEdXJhdGlvbik7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMikpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGN1YmljLWJlemllciguNDcsMi4wMiwuMzEsLTAuMzYpKTtcclxuXHR9XHJcbn1cclxuIiwiLyogQm91bmNlIE91dCAqL1xyXG5AbWl4aW4gYm91bmNlLW91dCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkc2xvd0R1cmF0aW9uKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoLjgpKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBjdWJpYy1iZXppZXIoLjQ3LDIuMDIsLjMxLC0wLjM2KSk7XHJcblx0fVxyXG59XHJcbiIsIi8qIFJvdGF0ZSAqL1xyXG5AbWl4aW4gcm90YXRlIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgcm90YXRlKDRkZWcpKTtcclxuXHR9XHJcbn1cclxuIiwiLyogR3JvdyBSb3RhdGUgKi9cclxuQG1peGluIGdyb3ctcm90YXRlIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS4xKSByb3RhdGUoNGRlZykpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBGbG9hdCAqL1xyXG5AbWl4aW4gZmxvYXQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLThweCkpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBTaW5rICovXHJcbkBtaXhpbiBzaW5rIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDhweCkpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBCb2IgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0tYm9iKSB7XHJcblx0MCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC04cHgpKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNHB4KSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC04cHgpKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWJvYi1mbG9hdCkge1xyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC04cHgpKTtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBib2Ige1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgXCIjeyRuYW1lU3BhY2V9LWJvYi1mbG9hdCwgI3skbmFtZVNwYWNlfS1ib2JcIik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIFwiLjNzLCAxLjVzXCIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRlbGF5LCBcIjBzLCAuM3NcIik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBcImVhc2Utb3V0LCBlYXNlLWluLW91dFwiKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIFwiMSwgaW5maW5pdGVcIik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZmlsbC1tb2RlLCBcImZvcndhcmRzXCIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRpcmVjdGlvbiwgXCJub3JtYWwsIGFsdGVybmF0ZVwiKTtcclxuXHR9XHJcbn1cclxuIiwiLyogSGFuZyAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1oYW5nKSB7XHJcblx0MCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDhweCkpO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDRweCkpO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg4cHgpKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWhhbmctc2luaykge1xyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDhweCkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGhhbmcge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgXCIjeyRuYW1lU3BhY2V9LWhhbmctc2luaywgI3skbmFtZVNwYWNlfS1oYW5nXCIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCBcIi4zcywgMS41c1wiKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kZWxheSwgXCIwcywgLjNzXCIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgXCJlYXNlLW91dCwgZWFzZS1pbi1vdXRcIik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBcIjEsIGluZmluaXRlXCIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWZpbGwtbW9kZSwgXCJmb3J3YXJkc1wiKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kaXJlY3Rpb24sIFwibm9ybWFsLCBhbHRlcm5hdGVcIik7XHJcblx0fVxyXG59XHJcbiIsIi8qIFNrZXcgKi9cclxuQG1peGluIHNrZXcge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KC0xMGRlZykpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBTa2V3IEZvcndhcmQgKi9cclxuQG1peGluIHNrZXctZm9yd2FyZCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgMCAxMDAlKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtMTBkZWcpKTtcclxuXHR9XHJcbn1cclxuIiwiLyogU2tldyBCYWNrd2FyZCAqL1xyXG5AbWl4aW4gc2tldy1iYWNrd2FyZCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgMCAxMDAlKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygxMGRlZykpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBXb2JibGUgVmVydGljYWwgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0td29iYmxlLXZlcnRpY2FsKSB7XHJcblx0MTYuNjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg4cHgpKTtcclxuXHR9XHJcblxyXG5cdDMzLjMlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNnB4KSk7XHJcblx0fVxyXG5cclxuXHQ0OS45NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDRweCkpO1xyXG5cdH1cclxuXHJcblx0NjYuNiUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC0ycHgpKTtcclxuXHR9XHJcblxyXG5cdDgzLjI1JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoMXB4KSk7XHJcblx0fVxyXG5cclxuXHQxMDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgwKSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gd29iYmxlLXZlcnRpY2FsIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0td29iYmxlLXZlcnRpY2FsKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XHJcblx0fVxyXG59XHJcbiIsIi8qIFdvYmJsZSBIb3Jpem9udGFsICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXdvYmJsZS1ob3Jpem9udGFsKSB7XHJcblx0MTYuNjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCg4cHgpKTtcclxuXHR9XHJcblxyXG5cdDMzLjMlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtNnB4KSk7XHJcblx0fVxyXG5cclxuXHQ0OS45NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKDRweCkpO1xyXG5cdH1cclxuXHJcblx0NjYuNiUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0ycHgpKTtcclxuXHR9XHJcblxyXG5cdDgzLjI1JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMXB4KSk7XHJcblx0fVxyXG5cclxuXHQxMDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgwKSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gd29iYmxlLWhvcml6b250YWwge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS13b2JibGUtaG9yaXpvbnRhbCk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2UtaW4tb3V0KTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIDEpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBXb2JibGUgVG8gQm90dG9tIFJpZ2h0ICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXdvYmJsZS10by1ib3R0b20tcmlnaHQpIHtcclxuXHQxNi42NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGUoOHB4LCA4cHgpKTtcclxuXHR9XHJcblxyXG5cdDMzLjMlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKC02cHgsIC02cHgpKTtcclxuXHR9XHJcblxyXG5cdDQ5Ljk1JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZSg0cHgsIDRweCkpO1xyXG5cdH1cclxuXHJcblx0NjYuNiUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGUoLTJweCwgLTJweCkpO1xyXG5cdH1cclxuXHJcblx0ODMuMjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKDFweCwgMXB4KSk7XHJcblx0fVxyXG5cclxuXHQxMDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKDAsIDApKTtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiB3b2JibGUtdG8tYm90dG9tLXJpZ2h0IHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0td29iYmxlLXRvLWJvdHRvbS1yaWdodCk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2UtaW4tb3V0KTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIDEpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBXb2JibGUgVG8gVG9wIFJpZ2h0ICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXdvYmJsZS10by10b3AtcmlnaHQpIHtcclxuICAxNi42NSUge1xyXG4gICAgQGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGUoOHB4LCAtOHB4KSk7XHJcbiAgfVxyXG5cclxuICAzMy4zJSB7XHJcbiAgICBAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZSgtNnB4LCA2cHgpKTtcclxuICB9XHJcblxyXG4gIDQ5Ljk1JSB7XHJcbiAgICBAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZSg0cHgsIC00cHgpKTtcclxuICB9XHJcblxyXG4gIDY2LjYlIHtcclxuICAgIEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKC0ycHgsIDJweCkpO1xyXG4gIH1cclxuXHJcbiAgODMuMjUlIHtcclxuICAgIEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKDFweCwgLTFweCkpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZSgwLCAwKSk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gd29iYmxlLXRvLXRvcC1yaWdodCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHJcblx0Jjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0td29iYmxlLXRvLXRvcC1yaWdodCk7XHJcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7XHJcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xyXG4gICAgICAgIEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIDEpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBXb2JibGUgVG9wICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXdvYmJsZS10b3ApIHtcclxuXHQxNi42NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KC0xMmRlZykpO1xyXG5cdH1cclxuXHJcblx0MzMuMyUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KDEwZGVnKSk7XHJcblx0fVxyXG5cclxuXHQ0OS45NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KC02ZGVnKSk7XHJcblx0fVxyXG5cclxuXHQ2Ni42JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoNGRlZykpO1xyXG5cdH1cclxuXHJcblx0ODMuMjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtMmRlZykpO1xyXG5cdH1cclxuXHJcblx0MTAwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoMCkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIHdvYmJsZS10b3Age1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgMCAxMDAlKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXdvYmJsZS10b3ApO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLWluLW91dCk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcclxuXHR9XHJcbn1cclxuIiwiLyogV29iYmxlIEJvdHRvbSAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS13b2JibGUtYm90dG9tKSB7XHJcblx0MTYuNjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtMTJkZWcpKTtcclxuXHR9XHJcblxyXG5cdDMzLjMlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygxMGRlZykpO1xyXG5cdH1cclxuXHJcblx0NDkuOTUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtNmRlZykpO1xyXG5cdH1cclxuXHJcblx0NjYuNiUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KDRkZWcpKTtcclxuXHR9XHJcblxyXG5cdDgzLjI1JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoLTJkZWcpKTtcclxuXHR9XHJcblxyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KDApKTtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiB3b2JibGUtYm90dG9tIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDEwMCUgMCk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS13b2JibGUtYm90dG9tKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XHJcblx0fVxyXG59XHJcbiIsIi8qIFdvYmJsZSBTa2V3ICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXdvYmJsZS1za2V3KSB7XHJcblx0MTYuNjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtMTJkZWcpKTtcclxuXHR9XHJcblxyXG5cdDMzLjMlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygxMGRlZykpO1xyXG5cdH1cclxuXHJcblx0NDkuOTUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtNmRlZykpO1xyXG5cdH1cclxuXHJcblx0NjYuNiUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KDRkZWcpKTtcclxuXHR9XHJcblxyXG5cdDgzLjI1JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoLTJkZWcpKTtcclxuXHR9XHJcblxyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KDApKTtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiB3b2JibGUtc2tldyB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXdvYmJsZS1za2V3KTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XHJcblx0fVxyXG59XHJcbiIsIi8qIEJ1enogKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0tYnV6eikge1xyXG5cdDUwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZykpO1xyXG5cdH1cclxuXHJcblx0MTAwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gYnV6eiB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWJ1enopO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAuMTVzKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7XHJcblx0fVxyXG59XHJcbiIsIi8qIEJ1enogT3V0ICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWJ1enotb3V0KSB7XHJcblx0MTAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKSk7XHJcblx0fVxyXG5cclxuXHQyMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZykpO1xyXG5cdH1cclxuXHJcblx0MzAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKSk7XHJcblx0fVxyXG5cclxuXHQ0MCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZykpO1xyXG5cdH1cclxuXHJcblx0NTAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKSk7XHJcblx0fVxyXG5cclxuXHQ2MCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZykpO1xyXG5cdH1cclxuXHJcblx0NzAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKSk7XHJcblx0fVxyXG5cclxuXHQ4MCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZykpO1xyXG5cdH1cclxuXHJcblx0OTAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKSk7XHJcblx0fVxyXG5cclxuXHQxMDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGJ1enotb3V0IHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0tYnV6ei1vdXQpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAuNzVzKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcclxuXHR9XHJcbn1cclxuIiwiLyogRm9yd2FyZCAqL1xyXG5AbWl4aW4gZm9yd2FyZCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoOHB4KSk7XHJcblx0fVxyXG59XHJcbiIsIi8qIEJhY2t3YXJkICovXHJcbkBtaXhpbiBiYWNrd2FyZCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLThweCkpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBGYWRlICovXHJcbkBtaXhpbiBmYWRlIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcImNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yXCIpO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0Y29sb3I6IHdoaXRlO1xyXG5cdH1cclxufVxyXG4iLCIvKiBCYWNrIFB1bHNlICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWJhY2stcHVsc2UpIHtcclxuXHQ1MCUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMiwgMTUyLCAyMDksIC43NSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gYmFjay1wdWxzZSB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRzbG93RHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwiY29sb3IsIGJhY2tncm91bmQtY29sb3JcIik7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1iYWNrLXB1bHNlKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRlbGF5LCAkc2xvd0R1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlQ29sb3I7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMyLCAxNTIsIDIwOSwgMSk7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblx0fVxyXG59XHJcbiIsIi8qIFN3ZWVwIFRvIFJpZ2h0ICovXHJcbkBtaXhpbiBzd2VlcC10by1yaWdodCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVYKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDAgNTAlKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgxKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFN3ZWVwIFRvIExlZnQgKi9cclxuQG1peGluIHN3ZWVwLXRvLWxlZnQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgwKSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCAxMDAlIDUwJSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0Y29sb3I6IHdoaXRlO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVgoMSkpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBTd2VlcCBUbyBCb3R0b20gKi9cclxuQG1peGluIHN3ZWVwLXRvLWJvdHRvbSB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDUwJSAwKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWSgxKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFN3ZWVwIFRvIFRvcCAqL1xyXG5AbWl4aW4gc3dlZXAtdG8tdG9wIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVkoMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgNTAlIDEwMCUpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGNvbG9yOiB3aGl0ZTtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDEpKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogQm91bmNlIFRvIFJpZ2h0ICovXHJcbkBtaXhpbiBib3VuY2UtdG8tcmlnaHQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkc2xvd0R1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVgoMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgMCA1MCUpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRzbG93RHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgxKSk7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBjdWJpYy1iZXppZXIoLjUyLDEuNjQsLjM3LC42NikpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBCb3VuY2UgVG8gTGVmdCAqL1xyXG5AbWl4aW4gYm91bmNlLXRvLWxlZnQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkc2xvd0R1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVgoMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgMTAwJSA1MCUpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRzbG93RHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgxKSk7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBjdWJpYy1iZXppZXIoLjUyLDEuNjQsLjM3LC42NikpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBCb3VuY2UgVG8gQm90dG9tICovXHJcbkBtaXhpbiBib3VuY2UtdG8tYm90dG9tIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHNsb3dEdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDUwJSAwKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkc2xvd0R1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0Y29sb3I6IHdoaXRlO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVkoMSkpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgY3ViaWMtYmV6aWVyKC41MiwxLjY0LC4zNywuNjYpKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogQm91bmNlIFRvIFRvcCAqL1xyXG5AbWl4aW4gYm91bmNlLXRvLXRvcCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRzbG93RHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWSgwKSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCA1MCUgMTAwJSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHNsb3dEdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGNvbG9yOiB3aGl0ZTtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDEpKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGN1YmljLWJlemllciguNTIsMS42NCwuMzcsLjY2KSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFJhZGlhbCBPdXQgKi9cclxuQG1peGluIHJhZGlhbC1vdXQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0YmFja2dyb3VuZDogJHByaW1hcnlDb2xvcjtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMTAwJTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGNvbG9yOiB3aGl0ZTtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMikpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBSYWRpYWwgSW4gKi9cclxuQG1peGluIHJhZGlhbC1pbiB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3I7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgyKSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0Y29sb3I6IHdoaXRlO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgwKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFJlY3RhbmdsZSBJbiAqL1xyXG5AbWl4aW4gcmVjdGFuZ2xlLWluIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3I7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEpKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDApKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogUmVjdGFuZ2xlIE91dCAqL1xyXG5AbWl4aW4gcmVjdGFuZ2xlLW91dCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0YmFja2dyb3VuZDogJHByaW1hcnlDb2xvcjtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgwKSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0Y29sb3I6IHdoaXRlO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgxKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFNodXR0ZXIgSW4gSG9yaXpvbnRhbCAqL1xyXG5AbWl4aW4gc2h1dHRlci1pbi1ob3Jpem9udGFsIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3I7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgxKSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCA1MCUpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGNvbG9yOiB3aGl0ZTtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVYKDApKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogU2h1dHRlciBPdXQgSG9yaXpvbnRhbCAqL1xyXG5AbWl4aW4gc2h1dHRlci1vdXQtaG9yaXpvbnRhbCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0YmFja2dyb3VuZDogJHByaW1hcnlDb2xvcjtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVgoMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgNTAlKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgxKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFNodXR0ZXIgSW4gVmVydGljYWwgKi9cclxuQG1peGluIHNodXR0ZXItaW4tdmVydGljYWwge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJHByaW1hcnlDb2xvcjtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDEpKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDUwJSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0Y29sb3I6IHdoaXRlO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVkoMCkpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBTaHV0dGVyIE91dCBWZXJ0aWNhbCAqL1xyXG5AbWl4aW4gc2h1dHRlci1vdXQtdmVydGljYWwge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3I7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDUwJSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0Y29sb3I6IHdoaXRlO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVkoMSkpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBCb3JkZXIgRmFkZSAqL1xyXG5AbWl4aW4gYm9yZGVyLWZhZGUge1xyXG5cdCRib3JkZXJXaWR0aDogNHB4O1xyXG5cclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgYm94LXNoYWRvdyk7XHJcblx0Ym94LXNoYWRvdzpcclxuXHRcdFx0aW5zZXQgMCAwIDAgJGJvcmRlcldpZHRoICRwcmltYXJ5Q29sb3IsXHJcblx0XHRcdDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsgLyogSGFjayB0byBpbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlcyAqL1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0Ym94LXNoYWRvdzpcclxuXHRcdFx0aW5zZXQgMCAwIDAgJGJvcmRlcldpZHRoICRhY3RpdmVDb2xvcixcclxuXHRcdFx0MCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOyAvKiBIYWNrIHRvIGltcHJvdmUgYWxpYXNpbmcgb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzICovXHJcblx0fVxyXG59XHJcbiIsIi8qIEhvbGxvdyAqL1xyXG5AbWl4aW4gaG9sbG93IHtcclxuXHQkYm9yZGVyV2lkdGg6IDRweDtcclxuXHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGJhY2tncm91bmQpO1xyXG5cdGJveC1zaGFkb3c6XHJcblx0XHRpbnNldCAwIDAgMCAkYm9yZGVyV2lkdGggJHByaW1hcnlDb2xvcixcclxuXHRcdDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsgLyogSGFjayB0byBpbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlcyAqL1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHR9XHJcbn1cclxuIiwiLyogVHJpbSAqL1xyXG5AbWl4aW4gdHJpbSB7XHJcblx0JG91dGVyQm9yZGVyV2lkdGg6IDRweDtcclxuXHQkaW5uZXJCb3JkZXJXaWR0aDogNHB4O1xyXG5cclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRib3JkZXI6IHdoaXRlIHNvbGlkICRpbm5lckJvcmRlcldpZHRoO1xyXG5cdFx0dG9wOiAkb3V0ZXJCb3JkZXJXaWR0aDtcclxuXHRcdGxlZnQ6ICRvdXRlckJvcmRlcldpZHRoO1xyXG5cdFx0cmlnaHQ6ICRvdXRlckJvcmRlcldpZHRoO1xyXG5cdFx0Ym90dG9tOiAkb3V0ZXJCb3JkZXJXaWR0aDtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgb3BhY2l0eSk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyOmJlZm9yZSxcclxuXHQmOmZvY3VzOmJlZm9yZSxcclxuXHQmOmFjdGl2ZTpiZWZvcmUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuIiwiLyogUmlwcGxlIE91dCAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1yaXBwbGUtb3V0KSB7XHJcblx0MTAwJSB7XHJcblx0XHR0b3A6IC0oNnB4ICsgNnB4KTtcclxuXHRcdHJpZ2h0OiAtKDZweCArIDZweCk7XHJcblx0XHRib3R0b206IC0oNnB4ICsgNnB4KTtcclxuXHRcdGxlZnQ6IC0oNnB4ICsgNnB4KTtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gcmlwcGxlLW91dCB7XHJcblx0JG91dGVyQm9yZGVyV2lkdGg6IDZweDtcclxuXHQkaW5uZXJCb3JkZXJXaWR0aDogNnB4O1xyXG5cclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRib3JkZXI6ICRwcmltYXJ5Q29sb3Igc29saWQgJG91dGVyQm9yZGVyV2lkdGg7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXI6YmVmb3JlLFxyXG5cdCY6Zm9jdXM6YmVmb3JlLFxyXG5cdCY6YWN0aXZlOmJlZm9yZSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1yaXBwbGUtb3V0KTtcclxuXHR9XHJcbn1cclxuIiwiLyogUmlwcGxlIEluICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXJpcHBsZS1pbikge1xyXG5cdDEwMCUge1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiByaXBwbGUtaW4ge1xyXG5cdCRvdXRlckJvcmRlcldpZHRoOiA0cHg7XHJcblx0JGlubmVyQm9yZGVyV2lkdGg6IDRweDtcclxuXHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0Ym9yZGVyOiAkcHJpbWFyeUNvbG9yIHNvbGlkICRvdXRlckJvcmRlcldpZHRoO1xyXG5cdFx0dG9wOiAtKDZweCArIDZweCk7XHJcblx0XHRyaWdodDogLSg2cHggKyA2cHgpO1xyXG5cdFx0Ym90dG9tOiAtKDZweCArIDZweCk7XHJcblx0XHRsZWZ0OiAtKDZweCArIDZweCk7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyOmJlZm9yZSxcclxuXHQmOmZvY3VzOmJlZm9yZSxcclxuXHQmOmFjdGl2ZTpiZWZvcmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0tcmlwcGxlLWluKTtcclxuXHR9XHJcbn1cclxuIiwiLyogT3V0bGluZSBPdXQgKi9cclxuQG1peGluIG91dGxpbmUtb3V0IHtcclxuXHQkb3V0ZXJCb3JkZXJXaWR0aDogNHB4O1xyXG5cdCRpbm5lckJvcmRlcldpZHRoOiA0cHg7XHJcblxyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGJvcmRlcjogJHByaW1hcnlDb2xvciBzb2xpZCAkb3V0ZXJCb3JkZXJXaWR0aDtcclxuXHRcdHRvcDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sIC4zcyk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcInRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdFwiKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXI6YmVmb3JlLFxyXG5cdCY6Zm9jdXM6YmVmb3JlLFxyXG5cdCY6YWN0aXZlOmJlZm9yZSB7XHJcblx0XHR0b3A6IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCk7XHJcblx0XHRyaWdodDogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKTtcclxuXHRcdGJvdHRvbTogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKTtcclxuXHRcdGxlZnQ6IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCk7XHJcblx0fVxyXG59XHJcbiIsIi8qIE91dGxpbmUgSW4gKi9cclxuQG1peGluIG91dGxpbmUtaW4ge1xyXG5cdCRvdXRlckJvcmRlcldpZHRoOiA0cHg7XHJcblx0JGlubmVyQm9yZGVyV2lkdGg6IDRweDtcclxuXHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRib3JkZXI6ICRwcmltYXJ5Q29sb3Igc29saWQgJG91dGVyQm9yZGVyV2lkdGg7XHJcblx0XHR0b3A6IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCkgKiAyO1xyXG5cdFx0cmlnaHQ6IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCkgKiAyO1xyXG5cdFx0Ym90dG9tOiAtKCRvdXRlckJvcmRlcldpZHRoICsgJGlubmVyQm9yZGVyV2lkdGgpICogMjtcclxuXHRcdGxlZnQ6IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCkgKiAyO1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sIC4zcyk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcInRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdFwiKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXI6YmVmb3JlLFxyXG5cdCY6Zm9jdXM6YmVmb3JlLFxyXG5cdCY6YWN0aXZlOmJlZm9yZSB7XHJcblx0XHR0b3A6IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCk7XHJcblx0XHRyaWdodDogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKTtcclxuXHRcdGJvdHRvbTogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKTtcclxuXHRcdGxlZnQ6IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCk7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxufVxyXG4iLCIvKiBSb3VuZCBDb3JuZXJzICovXHJcbkBtaXhpbiByb3VuZC1jb3JuZXJzIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgYm9yZGVyLXJhZGl1cyk7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxZW07XHJcblx0fVxyXG59XHJcbiIsIi8qIFVuZGVybGluZSBGcm9tIExlZnQgKi9cclxuQG1peGluIHVuZGVybGluZS1mcm9tLWxlZnQge1xyXG5cdCRkdXJhdGlvbjogJG1lZGl1bUR1cmF0aW9uO1xyXG5cclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cmlnaHQ6IDEwMCU7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XHJcblx0XHRoZWlnaHQ6IDRweDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwicmlnaHRcIik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogVW5kZXJsaW5lIEZyb20gQ2VudGVyICovXHJcbkBtaXhpbiB1bmRlcmxpbmUtZnJvbS1jZW50ZXIge1xyXG5cdCRkdXJhdGlvbjogJG1lZGl1bUR1cmF0aW9uO1xyXG5cclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHRsZWZ0OiA1MCU7XHJcblx0XHRyaWdodDogNTAlO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0aGVpZ2h0OiA0cHg7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcImxlZnQsIHJpZ2h0XCIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFVuZGVybGluZSBGcm9tIFJpZ2h0ICovXHJcbkBtaXhpbiB1bmRlcmxpbmUtZnJvbS1yaWdodCB7XHJcblx0JGR1cmF0aW9uOiAkbWVkaXVtRHVyYXRpb247XHJcblxyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdGxlZnQ6IDEwMCU7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcclxuXHRcdGhlaWdodDogNHB4O1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJsZWZ0XCIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogT3ZlcmxpbmUgRnJvbSBMZWZ0ICovXHJcbkBtaXhpbiBvdmVybGluZS1mcm9tLWxlZnQge1xyXG5cdCRkdXJhdGlvbjogJG1lZGl1bUR1cmF0aW9uO1xyXG5cclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cmlnaHQ6IDEwMCU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XHJcblx0XHRoZWlnaHQ6IDRweDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwicmlnaHRcIik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogT3ZlcmxpbmUgRnJvbSBDZW50ZXIgKi9cclxuQG1peGluIG92ZXJsaW5lLWZyb20tY2VudGVyIHtcclxuXHQkZHVyYXRpb246ICRtZWRpdW1EdXJhdGlvbjtcclxuXHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHRsZWZ0OiA1MCU7XHJcblx0XHRyaWdodDogNTAlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0aGVpZ2h0OiA0cHg7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcImxlZnQsIHJpZ2h0XCIpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIE92ZXJsaW5lIEZyb20gUmlnaHQgKi9cclxuQG1peGluIG92ZXJsaW5lLWZyb20tcmlnaHQge1xyXG5cdCRkdXJhdGlvbjogJG1lZGl1bUR1cmF0aW9uO1xyXG5cclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHRsZWZ0OiAxMDAlO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XHJcblx0XHRoZWlnaHQ6IDRweDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwibGVmdFwiKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFJldmVhbCAqL1xyXG5AbWl4aW4gcmV2ZWFsIHtcclxuXHQkZHVyYXRpb246ICN7JGZhc3REdXJhdGlvbn07XHJcblxyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdHRvcDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGJvcmRlci1jb2xvcjogI3skYWN0aXZlQ29sb3J9O1xyXG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRcdGJvcmRlci13aWR0aDogMDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGJvcmRlci13aWR0aCk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAjeyRkdXJhdGlvbn0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoMCkpO1xyXG5cdFx0XHRib3JkZXItd2lkdGg6IDRweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogVW5kZXJsaW5lIFJldmVhbCAqL1xyXG5AbWl4aW4gdW5kZXJsaW5lLXJldmVhbCB7XHJcblx0JGR1cmF0aW9uOiAkbWVkaXVtRHVyYXRpb247XHJcblxyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcclxuXHRcdGhlaWdodDogNHB4O1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDRweCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgwKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIE92ZXJsaW5lIFJldmVhbCAqL1xyXG5AbWl4aW4gb3ZlcmxpbmUtcmV2ZWFsIHtcclxuXHQkZHVyYXRpb246ICRtZWRpdW1EdXJhdGlvbjtcclxuXHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xyXG5cdFx0aGVpZ2h0OiA0cHg7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTRweCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgwKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEdsb3cgKi9cclxuQG1peGluIGdsb3cge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBib3gtc2hhZG93KTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGJveC1zaGFkb3c6IDAgMCA4cHggJHNoYWRvd0NvbG9yO1xyXG5cdH1cclxufVxyXG4iLCIvKiBTaGFkb3cgKi9cclxuQG1peGluIHNoYWRvdyB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGJveC1zaGFkb3cpO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0Ym94LXNoYWRvdzogMCAxMHB4IDEwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBHcm93IFNoYWRvdyAqL1xyXG5AbWl4aW4gZ3Jvdy1zaGFkb3cge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGZhc3REdXJhdGlvbik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJib3gtc2hhZG93LCB0cmFuc2Zvcm1cIik7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRib3gtc2hhZG93OiAycHggMnB4IDBweCAycHggcmdiYSgwLCAwLCAwLCAwLjQ1KTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS4wMSkpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBCb3ggU2hhZG93IE91dHNldCAqL1xyXG5AbWl4aW4gYm94LXNoYWRvdy1vdXRzZXQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBib3gtc2hhZG93KTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGJveC1zaGFkb3c6IDJweCAycHggMnB4ICRzaGFkb3dDb2xvcjtcclxuXHR9XHJcbn1cclxuIiwiLyogQm94IFNoYWRvdyBJbnNldCAqL1xyXG5AbWl4aW4gYm94LXNoYWRvdy1pbnNldCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGJveC1zaGFkb3cpO1xyXG5cclxuXHRib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkc2hhZG93Q29sb3IsXHJcblx0XHQwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7IC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi9cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGJveC1zaGFkb3c6IGluc2V0IDJweCAycHggMnB4ICRzaGFkb3dDb2xvcixcclxuXHRcdDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsgLyogSGFjayB0byBpbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlcyAqL1xyXG5cdH1cclxufVxyXG4iLCIvKiBGbG9hdCBTaGFkb3cgKi9cclxuQG1peGluIGZsb2F0LXNoYWRvdyB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0ICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHQgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHQgIHotaW5kZXg6IC0xO1xyXG5cdCAgY29udGVudDogJyc7XHJcblx0ICB0b3A6IDEwMCU7XHJcblx0ICBsZWZ0OiA1JTtcclxuXHQgIGhlaWdodDogMTBweDtcclxuXHQgIHdpZHRoOiA5MCU7XHJcblx0ICBvcGFjaXR5OiAwO1xyXG5cdCAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlLCByZ2JhKDAsMCwwLC4zNSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTtcclxuXHQgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgcmdiYSgwLDAsMCwuMzUpIDAlLHJnYmEoMCwwLDAsMCkgODAlKTsgLyogVzNDICovXHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJ0cmFuc2Zvcm0sIG9wYWNpdHlcIik7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC01cHgpKTsgLyogbW92ZSB0aGUgZWxlbWVudCB1cCBieSA1cHggKi9cclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg1cHgpKTsgLyogbW92ZSB0aGUgZWxlbWVudCBkb3duIGJ5IDVweCAoaXQgd2lsbCBzdGF5IGluIHBsYWNlIGJlY2F1c2UgaXQncyBhdHRhY2hlZCB0byB0aGUgZWxlbWVudCB0aGF0IGFsc28gbW92ZXMgdXAgNXB4KSAqL1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBTaGFkb3cgUmFkaWFsICovXHJcbkBtaXhpbiBzaGFkb3ctcmFkaWFsIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0JjpiZWZvcmUsXHJcblx0JjphZnRlciB7XHJcblx0ICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdCAgY29udGVudDogJyc7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBoZWlnaHQ6IDVweDtcclxuICAgICAgb3BhY2l0eTogMDtcclxuXHQgIEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0ICBAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBvcGFjaXR5KTtcclxuXHR9XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHQgIGJvdHRvbTogMTAwJTtcclxuXHQgIGJhY2tncm91bmQ6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KDUwJSAxNTAlLCBlbGxpcHNlLCAkc2hhZG93Q29sb3IgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTtcclxuICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgNTAlIDE1MCUsICRzaGFkb3dDb2xvciAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0ICB0b3A6IDEwMCU7XHJcblx0ICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCg1MCUgLTUwJSwgZWxsaXBzZSwgJHNoYWRvd0NvbG9yIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7XHJcblx0ICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCA1MCUgLTUwJSwgJHNoYWRvd0NvbG9yIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyOmJlZm9yZSxcclxuXHQmOmZvY3VzOmJlZm9yZSxcclxuXHQmOmFjdGl2ZTpiZWZvcmUsXHJcblx0Jjpob3ZlcjphZnRlcixcclxuXHQmOmZvY3VzOmFmdGVyLFxyXG5cdCY6YWN0aXZlOmFmdGVyIHtcclxuXHQgIG9wYWNpdHk6IDE7XHJcblx0fVxyXG59XHJcbiIsIi8qIEJ1YmJsZSBUb3AgKi9cclxuQG1peGluIGJ1YmJsZS10b3Age1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRsZWZ0OiBjYWxjKDUwJSAtICN7JHRpcFdpZHRofSk7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRib3JkZXItd2lkdGg6IDAgJHRpcFdpZHRoICR0aXBIZWlnaHQgJHRpcFdpZHRoO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdGlwQ29sb3IgdHJhbnNwYXJlbnQ7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyOmJlZm9yZSxcclxuXHQmOmZvY3VzOmJlZm9yZSxcclxuXHQmOmFjdGl2ZTpiZWZvcmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC0oJHRpcEhlaWdodCkpKTtcclxuXHR9XHJcbn1cclxuIiwiLyogQnViYmxlIFJpZ2h0ICovXHJcbkBtaXhpbiBidWJibGUtcmlnaHQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHR0b3A6IGNhbGMoNTAlIC0gI3skdGlwSGVpZ2h0fSk7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvcmRlci13aWR0aDogJHRpcEhlaWdodCAwICR0aXBIZWlnaHQgJHRpcFdpZHRoO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdGlwQ29sb3I7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyOmJlZm9yZSxcclxuXHQmOmZvY3VzOmJlZm9yZSxcclxuXHQmOmFjdGl2ZTpiZWZvcmUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKCR0aXBXaWR0aCkpO1xyXG5cdH1cclxufVxyXG4iLCIvKiBCdWJibGUgQm90dG9tICovXHJcbkBtaXhpbiBidWJibGUtYm90dG9tIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0bGVmdDogY2FsYyg1MCUgLSAjeyR0aXBXaWR0aH0pO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0Ym9yZGVyLXdpZHRoOiAkdGlwSGVpZ2h0ICR0aXBXaWR0aCAwICR0aXBXaWR0aDtcclxuXHRcdGJvcmRlci1jb2xvcjogJHRpcENvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcjpiZWZvcmUsXHJcblx0Jjpmb2N1czpiZWZvcmUsXHJcblx0JjphY3RpdmU6YmVmb3JlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgkdGlwSGVpZ2h0KSk7XHJcblx0fVxyXG59XHJcbiIsIi8qIEJ1YmJsZSBMZWZ0ICovXHJcbkBtaXhpbiBidWJibGUtbGVmdCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdHRvcDogY2FsYyg1MCUgLSAjeyR0aXBIZWlnaHR9KTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRib3JkZXItd2lkdGg6ICR0aXBIZWlnaHQgJHRpcFdpZHRoICR0aXBIZWlnaHQgMDtcclxuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRpcENvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcjpiZWZvcmUsXHJcblx0Jjpmb2N1czpiZWZvcmUsXHJcblx0JjphY3RpdmU6YmVmb3JlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtKCR0aXBXaWR0aCkpKTtcclxuXHR9XHJcbn1cclxuIiwiLyogQnViYmxlIEZsb2F0IFRvcCAqL1xyXG5AbWl4aW4gYnViYmxlLWZsb2F0LXRvcCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0bGVmdDogY2FsYyg1MCUgLSAjeyR0aXBXaWR0aH0pO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRcdGJvcmRlci13aWR0aDogMCAkdGlwV2lkdGggJHRpcEhlaWdodCAkdGlwV2lkdGg7XHJcblx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0aXBDb2xvciB0cmFuc3BhcmVudDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgkdGlwSGVpZ2h0KSk7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLSgkdGlwSGVpZ2h0KSkpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBCdWJibGUgRmxvYXQgUmlnaHQgKi9cclxuQG1peGluIGJ1YmJsZS1mbG9hdC1yaWdodCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdHRvcDogY2FsYyg1MCUgLSAjeyR0aXBIZWlnaHR9KTtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdFx0Ym9yZGVyLXdpZHRoOiAkdGlwSGVpZ2h0IDAgJHRpcEhlaWdodCAkdGlwV2lkdGg7XHJcblx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0aXBDb2xvcjtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtKCR0aXBXaWR0aCkpKTtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgkdGlwV2lkdGgpKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogQnViYmxlIEZsb2F0IEJvdHRvbSAqL1xyXG5AbWl4aW4gYnViYmxlLWZsb2F0LWJvdHRvbSB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0bGVmdDogY2FsYyg1MCUgLSAjeyR0aXBXaWR0aH0pO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRcdGJvcmRlci13aWR0aDogJHRpcEhlaWdodCAkdGlwV2lkdGggMCAkdGlwV2lkdGg7XHJcblx0XHRib3JkZXItY29sb3I6ICR0aXBDb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtKCR0aXBIZWlnaHQpKSk7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoJHRpcEhlaWdodCkpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBCdWJibGUgRmxvYXQgTGVmdCAqL1xyXG5AbWl4aW4gYnViYmxlLWZsb2F0LWxlZnQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHRvcDogY2FsYyg1MCUgLSAjeyR0aXBIZWlnaHR9KTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdFx0Ym9yZGVyLXdpZHRoOiAkdGlwSGVpZ2h0ICR0aXBXaWR0aCAkdGlwSGVpZ2h0IDA7XHJcblx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0aXBDb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgkdGlwV2lkdGgpKTtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtKCR0aXBXaWR0aCkpKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBCYWNrICovXHJcbkBtaXhpbiBpY29uLWJhY2sge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctbGVmdDogMi4yZW07XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGZhc3REdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMTM3XCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRsZWZ0OiAxZW07XHJcblx0XHRwYWRkaW5nOiAwIDFweDtcclxuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWigwKSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZmFzdER1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtNHB4KSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gRm9yd2FyZCAqL1xyXG5AbWl4aW4gaWNvbi1mb3J3YXJkIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZmFzdER1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcXGYxMzhcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHJpZ2h0OiAxZW07XHJcblx0XHRwYWRkaW5nOiAwIDFweDtcclxuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWigwKSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZmFzdER1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCg0cHgpKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBEb3duICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tZG93bikge1xyXG5cdDAlLFxyXG5cdDUwJSxcclxuXHQxMDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgwKSk7XHJcblx0fVxyXG5cdDI1JSxcclxuXHQ3NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDZweCkpO1xyXG5cdH1cclxufVxyXG5cclxuLyogSWNvbiBEb3duICovXHJcbkBtaXhpbiBpY29uLWRvd24ge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAxYVwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLWRvd24pO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIC43NXMpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gVXAgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi11cCkge1xyXG5cdDAlLFxyXG5cdDUwJSxcclxuXHQxMDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgwKSk7XHJcblx0fVxyXG5cdDI1JSxcclxuXHQ3NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC02cHgpKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEljb24gVXAgKi9cclxuQG1peGluIGljb24tdXAge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAxYlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLXVwKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAuNzVzKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBJY29uIFNwaW4gKi9cclxuQG1peGluIGljb24tc3BpbiB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1yaWdodDogMi4yZW07XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDIxXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAxcyk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2UtaW4tb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHJvdGF0ZSgzNjBkZWcpKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBEcm9wICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tZHJvcCkge1xyXG5cdDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblxyXG5cdH1cclxuXHJcblx0NTAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTEwMCUpKTtcclxuXHR9XHJcblxyXG5cdDUxJSxcclxuXHQxMDAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG59XHJcblxyXG4vKiBJY29uIERyb3AgKi9cclxuQG1peGluIGljb24tZHJvcCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1yaWdodDogI3skc3BhY2VCZXR3ZWVuVGV4dEFuZEFycm93c307XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDQxXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAjeyRtZWRpdW1EdXJhdGlvbn0pO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLWRyb3ApO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sICN7JHNsb3dEdXJhdGlvbn0pO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZGVsYXksICN7JG1lZGl1bUR1cmF0aW9ufSk7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1maWxsLW1vZGUsIGZvcndhcmRzKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBjdWJpYy1iZXppZXIoLjUyLDEuNjQsLjM3LC42NikpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBJY29uIEZhZGUgKi9cclxuQG1peGluIGljb24tZmFkZSB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1yaWdodDogI3skc3BhY2VCZXR3ZWVuVGV4dEFuZEFycm93c307XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDBjXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgLjVzKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRjb2xvcjogIzBGOUU1RTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBGbG9hdCBBd2F5ICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tZmxvYXQtYXdheSkge1xyXG5cdDAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cclxuXHQxMDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTFlbSkpO1xyXG5cdH1cclxufVxyXG5cclxuLyogSWNvbiBGbG9hdCBBd2F5ICovXHJcbkBtaXhpbiBpY29uLWZsb2F0LWF3YXkge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xyXG5cclxuXHQmOmJlZm9yZSxcclxuXHQmOmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDU1XCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sICN7JHNsb3dEdXJhdGlvbn0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWZpbGwtbW9kZSwgZm9yd2FyZHMpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0taWNvbi1mbG9hdC1hd2F5KTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBJY29uIFNpbmsgQXdheSAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1pY29uLXNpbmstYXdheSkge1xyXG5cdDAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cclxuXHQxMDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoMWVtKSk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBJY29uIFNpbmsgQXdheSAqL1xyXG5AbWl4aW4gaWNvbi1zaW5rLWF3YXkge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xyXG5cclxuXHQmOmJlZm9yZSxcclxuXHQmOmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDU2XCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAjeyRzbG93RHVyYXRpb259KTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1maWxsLW1vZGUsIGZvcndhcmRzKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24tc2luay1hd2F5KTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBJY29uIEdyb3cgKi9cclxuQG1peGluIGljb24tZ3JvdyB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1yaWdodDogI3skc3BhY2VCZXR3ZWVuVGV4dEFuZEFycm93c307XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcXGYxMThcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHJpZ2h0OiAxZW07XHJcblx0XHRwYWRkaW5nOiAwIDFweDtcclxuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWigwKSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgxLjMpIHRyYW5zbGF0ZVooMCkpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBJY29uIFNocmluayAqL1xyXG5AbWl4aW4gaWNvbi1zaHJpbmsge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMTE5XCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoLjgpKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBQdWxzZSAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1pY29uLXB1bHNlKSB7XHJcblx0MjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS4zKSk7XHJcblx0fVxyXG5cclxuXHQ3NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSguOCkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGljb24tcHVsc2Uge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAxNVwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZSk7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBsaW5lYXIpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gUHVsc2UgR3JvdyAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1pY29uLXB1bHNlLWdyb3cpIHtcclxuXHR0byB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMykpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGljb24tcHVsc2UtZ3JvdyB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1yaWdodDogI3skc3BhY2VCZXR3ZWVuVGV4dEFuZEFycm93c307XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDE1XCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLXB1bHNlLWdyb3cpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIGluZmluaXRlKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRpcmVjdGlvbiwgYWx0ZXJuYXRlKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBQdWxzZSBTaHJpbmsgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZS1zaHJpbmspIHtcclxuXHR0byB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKC44KSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gaWNvbi1wdWxzZS1zaHJpbmsge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAxNVwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZS1zaHJpbmspO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIGluZmluaXRlKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRpcmVjdGlvbiwgYWx0ZXJuYXRlKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBQdXNoICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tcHVzaCkge1xyXG5cdDUwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKC41KSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gaWNvbi1wdXNoIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAwNlwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLXB1c2gpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIDEpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiBJY29uIFBvcCAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1pY29uLXBvcCkge1xyXG5cdDUwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuNSkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGljb24tcG9wIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAwNVwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLXBvcCk7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgbGluZWFyKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gQm91bmNlICovXHJcblxyXG5AbWl4aW4gaWNvbi1ib3VuY2Uge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDg3XCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS41KSk7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBjdWJpYy1iZXppZXIoLjQ3LDIuMDIsLjMxLC0wLjM2KSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gUm90YXRlICovXHJcbkBtaXhpbiBpY29uLXJvdGF0ZSB7XHJcblx0JGR1cmF0aW9uOiAkbWVkaXVtRHVyYXRpb247XHJcblxyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMGM2XCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgcm90YXRlKDIwZGVnKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gR3JvdyBSb3RhdGUgKi9cclxuQG1peGluIGljb24tZ3Jvdy1yb3RhdGUge1xyXG5cdCRkdXJhdGlvbjogJG1lZGl1bUR1cmF0aW9uO1xyXG5cclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjA5NVwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuNSkgcm90YXRlKDEyZGVnKSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gRmxvYXQgKi9cclxuQG1peGluIGljb24tZmxvYXQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDFiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNHB4KSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gU2luayAqL1xyXG5AbWl4aW4gaWNvbi1zaW5rIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAxYVwiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoNHB4KSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gQm9iICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tYm9iKSB7XHJcblx0MCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC02cHgpKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtMnB4KSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC02cHgpKTtcclxuXHR9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tYm9iLWZsb2F0KSB7XHJcblx0MTAwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTZweCkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGljb24tYm9iIHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjA3N1wiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgXCIjeyRuYW1lU3BhY2V9LWljb24tYm9iLWZsb2F0LCAjeyRuYW1lU3BhY2V9LWljb24tYm9iXCIpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIFwiLjNzLCAxLjVzXCIpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZGVsYXksIFwiMHMsIC4zc1wiKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgXCJlYXNlLW91dCwgZWFzZS1pbi1vdXRcIik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIFwiMSwgaW5maW5pdGVcIik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1maWxsLW1vZGUsIFwiZm9yd2FyZHNcIik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kaXJlY3Rpb24sIFwibm9ybWFsLCBhbHRlcm5hdGVcIik7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gSGFuZyAqL1xyXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1pY29uLWhhbmcpIHtcclxuXHQwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoNnB4KSk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoMnB4KSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDZweCkpO1xyXG5cdH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1oYW5nLXNpbmspIHtcclxuXHQxMDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg2cHgpKTtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBpY29uLWhhbmcge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDc4XCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCBcIiN7JG5hbWVTcGFjZX0taWNvbi1oYW5nLXNpbmssICN7JG5hbWVTcGFjZX0taWNvbi1oYW5nXCIpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIFwiLjNzLCAxLjVzXCIpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZGVsYXksIFwiMHMsIC4zc1wiKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgXCJlYXNlLW91dCwgZWFzZS1pbi1vdXRcIik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIFwiMSwgaW5maW5pdGVcIik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1maWxsLW1vZGUsIFwiZm9yd2FyZHNcIik7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kaXJlY3Rpb24sIFwibm9ybWFsLCBhbHRlcm5hdGVcIik7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gV29iYmxlIEhvcml6b250YWwgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi13b2JibGUtaG9yaXpvbnRhbCkge1xyXG5cdDE2LjY1JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoNnB4KSk7XHJcblx0fVxyXG5cclxuXHQzMy4zJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTVweCkpO1xyXG5cdH1cclxuXHJcblx0NDkuOTUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCg0cHgpKTtcclxuXHR9XHJcblxyXG5cdDY2LjYlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtMnB4KSk7XHJcblx0fVxyXG5cclxuXHQ4My4yNSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKDFweCkpO1xyXG5cdH1cclxuXHJcblx0MTAwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMCkpO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGljb24td29iYmxlLWhvcml6b250YWwge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xyXG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDYxXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMWVtO1xyXG5cdFx0cGFkZGluZzogMCAxcHg7XHJcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmZvY3VzLFxyXG5cdCY6YWN0aXZlIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24td29iYmxlLWhvcml6b250YWwpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBXb2JibGUgVmVydGljYWwgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi13b2JibGUtdmVydGljYWwpIHtcclxuXHQxNi42NSUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDZweCkpO1xyXG5cdH1cclxuXHJcblx0MzMuMyUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC01cHgpKTtcclxuXHR9XHJcblxyXG5cdDQ5Ljk1JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoNHB4KSk7XHJcblx0fVxyXG5cclxuXHQ2Ni42JSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTJweCkpO1xyXG5cdH1cclxuXHJcblx0ODMuMjUlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgxcHgpKTtcclxuXHR9XHJcblxyXG5cdDEwMCUge1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDApKTtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBpY29uLXdvYmJsZS12ZXJ0aWNhbCB7XHJcblx0QGluY2x1ZGUgaGFja3MoKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1yaWdodDogMi4yZW07XHJcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcXGYwNjJcIjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHJpZ2h0OiAxZW07XHJcblx0XHRwYWRkaW5nOiAwIDFweDtcclxuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWigwKSk7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMsXHJcblx0JjphY3RpdmUge1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0taWNvbi13b2JibGUtdmVydGljYWwpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyogSWNvbiBCdXp6ICovXHJcbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tYnV6eikge1xyXG5cdDUwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZykpO1xyXG5cdH1cclxuXHJcblx0MTAwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gaWNvbi1idXp6IHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAxN1wiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLWJ1enopO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIC4xNXMpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBsaW5lYXIpO1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEljb24gQnV6eiBPdXQgKi9cclxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1idXp6LW91dCkge1xyXG5cdDEwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZykpO1xyXG5cdH1cclxuXHJcblx0MjAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpKTtcclxuXHR9XHJcblxyXG5cdDMwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZykpO1xyXG5cdH1cclxuXHJcblx0NDAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpKTtcclxuXHR9XHJcblxyXG5cdDUwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZykpO1xyXG5cdH1cclxuXHJcblx0NjAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpKTtcclxuXHR9XHJcblxyXG5cdDcwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZykpO1xyXG5cdH1cclxuXHJcblx0ODAlIHtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpKTtcclxuXHR9XHJcblxyXG5cdDkwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCkpO1xyXG5cdH1cclxuXHJcblx0MTAwJSB7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApKTtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBpY29uLWJ1enotb3V0IHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcclxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjAyM1wiO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDFlbTtcclxuXHRcdHBhZGRpbmc6IDAgMXB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyxcclxuXHQmOmFjdGl2ZSB7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLWJ1enotb3V0KTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAuNzVzKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgbGluZWFyKTtcclxuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIEN1cmwgVG9wIExlZnQgKi9cclxuQG1peGluIGN1cmwtdG9wLWxlZnQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0aGVpZ2h0OiAwO1xyXG5cdFx0d2lkdGg6IDA7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0YmFja2dyb3VuZDogJHJldmVhbEFyZWFDb2xvcjsgLyogSUU5ICovXHJcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHRcdDEzNWRlZyxcclxuXHRcdFx0JHJldmVhbEFyZWFDb2xvciA0NSUsXHJcblx0XHRcdCRjdXJsTGluZUNvbG9yIDUwJSxcclxuXHRcdFx0JGN1cmxUcmFuc2l0aW9uQ29sb3IgNTYlLFxyXG5cdFx0XHQkY3VybExhc3RDb2xvciA4MCVcclxuXHRcdCk7XHJcblx0XHRmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGU9MCxzdGFydENvbG9yc3RyPScjZmZmZmZmJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAnKTsvKkZvciBJRTctOC05Ki9cclxuXHJcblx0XHR6LWluZGV4OiAxMDAwO1xyXG5cdFx0Ym94LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAuNCk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJ3aWR0aCwgaGVpZ2h0XCIpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcjpiZWZvcmUsXHJcblx0Jjpmb2N1czpiZWZvcmUsXHJcblx0JjphY3RpdmU6YmVmb3JlIHtcclxuXHRcdHdpZHRoOiAkY3VybFdpZHRoO1xyXG5cdFx0aGVpZ2h0OiAkY3VybEhlaWdodDtcclxuXHR9XHJcbn1cclxuIiwiLyogQ3VybCBUb3AgUmlnaHQgKi9cclxuQG1peGluIGN1cmwtdG9wLXJpZ2h0IHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdGhlaWdodDogMDtcclxuXHRcdHdpZHRoOiAwO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRiYWNrZ3JvdW5kOiAkcmV2ZWFsQXJlYUNvbG9yOyAvKiBJRTkgKi9cclxuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuXHRcdFx0MjI1ZGVnLFxyXG5cdFx0XHQkcmV2ZWFsQXJlYUNvbG9yIDQ1JSxcclxuXHRcdFx0JGN1cmxMaW5lQ29sb3IgNTAlLFxyXG5cdFx0XHQkY3VybFRyYW5zaXRpb25Db2xvciA1NiUsXHJcblx0XHRcdCRjdXJsTGFzdENvbG9yIDgwJVxyXG5cdFx0KTtcclxuXHRcdGJveC1zaGFkb3c6IC0xcHggMXB4IDFweCByZ2JhKDAsIDAsIDAsIC40KTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcIndpZHRoLCBoZWlnaHRcIik7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyOmJlZm9yZSxcclxuXHQmOmZvY3VzOmJlZm9yZSxcclxuXHQmOmFjdGl2ZTpiZWZvcmUge1xyXG5cdFx0d2lkdGg6ICRjdXJsV2lkdGg7XHJcblx0XHRoZWlnaHQ6ICRjdXJsSGVpZ2h0O1xyXG5cdH1cclxufVxyXG4iLCIvKiBDdXJsIEJvdHRvbSBSaWdodCAqL1xyXG5AbWl4aW4gY3VybC1ib3R0b20tcmlnaHQge1xyXG5cdEBpbmNsdWRlIGhhY2tzKCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0aGVpZ2h0OiAwO1xyXG5cdFx0d2lkdGg6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRyZXZlYWxBcmVhQ29sb3I7IC8qIElFOSAqL1xyXG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0XHQzMTVkZWcsXHJcblx0XHRcdCRyZXZlYWxBcmVhQ29sb3IgNDUlLFxyXG5cdFx0XHQkY3VybExpbmVDb2xvciA1MCUsXHJcblx0XHRcdCRjdXJsVHJhbnNpdGlvbkNvbG9yIDU2JSxcclxuXHRcdFx0JGN1cmxMYXN0Q29sb3IgODAlXHJcblx0XHQpO1xyXG5cdFx0Ym94LXNoYWRvdzogLTFweCAtMXB4IDFweCByZ2JhKDAsIDAsIDAsIC40KTtcclxuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcIndpZHRoLCBoZWlnaHRcIik7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyOmJlZm9yZSxcclxuXHQmOmZvY3VzOmJlZm9yZSxcclxuXHQmOmFjdGl2ZTpiZWZvcmUge1xyXG5cdFx0d2lkdGg6ICRjdXJsV2lkdGg7XHJcblx0XHRoZWlnaHQ6ICRjdXJsSGVpZ2h0O1xyXG5cdH1cclxufVxyXG4iLCIvKiBDdXJsIEJvdHRvbSBMZWZ0ICovXHJcbkBtaXhpbiBjdXJsLWJvdHRvbS1sZWZ0IHtcclxuXHRAaW5jbHVkZSBoYWNrcygpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdGhlaWdodDogMDtcclxuXHRcdHdpZHRoOiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdGJhY2tncm91bmQ6ICRyZXZlYWxBcmVhQ29sb3I7IC8qIElFOSAqL1xyXG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0XHQ0NWRlZyxcclxuXHRcdFx0JHJldmVhbEFyZWFDb2xvciA0NSUsXHJcblx0XHRcdCRjdXJsTGluZUNvbG9yIDUwJSxcclxuXHRcdFx0JGN1cmxUcmFuc2l0aW9uQ29sb3IgNTYlLFxyXG5cdFx0XHQkY3VybExhc3RDb2xvciA4MCVcclxuXHRcdCk7XHJcblx0XHRib3gtc2hhZG93OiAxcHggLTFweCAxcHggcmdiYSgwLCAwLCAwLCAuNCk7XHJcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xyXG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJ3aWR0aCwgaGVpZ2h0XCIpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcjpiZWZvcmUsXHJcblx0Jjpmb2N1czpiZWZvcmUsXHJcblx0JjphY3RpdmU6YmVmb3JlIHtcclxuXHRcdHdpZHRoOiAkY3VybFdpZHRoO1xyXG5cdFx0aGVpZ2h0OiAkY3VybEhlaWdodDtcclxuXHR9XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcclxuXHJcbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xyXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcclxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXHJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxyXG5cclxuJHNsaWNrLWZvbnQtcGF0aDogXCIuL2ZvbnRzL1wiICFkZWZhdWx0O1xyXG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcclxuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvciAhZGVmYXVsdDtcclxuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcMjE5MFwiICFkZWZhdWx0O1xyXG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIlxcMjAyMlwiICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XHJcblxyXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcclxuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XHJcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFNsaWRlciAqL1xyXG5cclxuLnNsaWNrLWxpc3Qge1xyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEljb25zICovXHJcbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcclxuICAgIEBmb250LWZhY2Uge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XHJcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdFwiKTtcclxuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEFycm93cyAqL1xyXG5cclxuLnNsaWNrLXByZXYsXHJcbi5zbGljay1uZXh0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMHB4O1xyXG4gICAgZm9udC1zaXplOiAwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcclxuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpY2stcHJldiB7XHJcbiAgICBsZWZ0OiAtMjVweDtcclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICByaWdodDogLTI1cHg7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xyXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGljay1uZXh0IHtcclxuICAgIHJpZ2h0OiAtMjVweDtcclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgbGVmdDogLTI1cHg7XHJcbiAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xyXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIERvdHMgKi9cclxuXHJcbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5zbGljay1kb3RzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogLTI1cHg7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzbGljay1kb3Qtc2l6ZTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3I7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUE7Ozs7Ozs7a0NBT2tDO0FDVGxDLDhKQUlHO0FpQ0pILDRFQUE0RTtBQVE1RSxBQUFBLElBQUksQ0FBQyxFQUNILFdBQVcsRUFBRSxVQUFVLEVBQ3ZCLG9CQUFvQixFQUFFLElBQUksRUFDMUIsd0JBQXdCLEVBQUUsSUFBSSxHQUMvQjs7QUFNRCxBQUFBLElBQUksQ0FBQyxFQUNILE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBWUQsQUFBQSxPQUFPLEVBQ1AsS0FBSyxFQUNMLE9BQU8sRUFDUCxVQUFVLEVBQ1YsTUFBTSxFQUNOLE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxFQUNOLElBQUksRUFDSixJQUFJLEVBQ0osR0FBRyxFQUNILE9BQU8sRUFDUCxPQUFPLENBQUMsRUFDTixPQUFPLEVBQUUsS0FBSyxHQUNmOztBQU9ELEFBQUEsS0FBSyxFQUNMLE1BQU0sRUFDTixRQUFRLEVBQ1IsS0FBSyxDQUFDLEVBQ0osT0FBTyxFQUFFLFlBQVksRUFDckIsY0FBYyxFQUFFLFFBQVEsR0FDekI7O0FBT0QsQUFBQSxLQUFLLEFBQUEsSUFBSyxFQUFBLEFBQUEsUUFBQyxBQUFBLEdBQVcsRUFDcEIsT0FBTyxFQUFFLElBQUksRUFDYixNQUFNLEVBQUUsQ0FBQyxHQUNWOztDQU9ELEFBQUEsQUFBQSxNQUFDLEFBQUEsR0FDRCxRQUFRLENBQUMsRUFDUCxPQUFPLEVBQUUsSUFBSSxHQUNkOztBQVNELEFBQUEsQ0FBQyxDQUFDLEVBQ0EsZ0JBQWdCLEVBQUUsV0FBVyxHQUM5Qjs7QUFPRCxBQUFBLENBQUMs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 */
