/*!
 * # Fomantic-UI - Reset
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */*,:after,:before{box-sizing:inherit}html{box-sizing:border-box}input[type=email],input[type=password],input[type=search],input[type=text]{-webkit-appearance:none;-moz-appearance:none}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}
/*!
 * # Fomantic-UI - Site
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */body,html{height:100%}html{font-size:14px}body{background:#fff;color:rgba(0,0,0,.87);font-size:14px;line-height:1.4285em;margin:0;min-width:320px;overflow-x:hidden}body,h1,h2,h3,h4,h5{font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;padding:0}h1,h2,h3,h4,h5{font-weight:700;line-height:1.28571429em;margin:calc(2rem - .14286em) 0 1rem}h1{font-size:2rem;min-height:1rem}h2{font-size:1.71428571rem}h3{font-size:1.28571429rem}h4{font-size:1.07142857rem}h5{font-size:1rem}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child{margin-top:0}h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child{margin-bottom:0}p{line-height:1.4285em;margin:0 0 1em}p:first-child{margin-top:0}p:last-child{margin-bottom:0}a{color:#4183c4}a,a:hover{text-decoration:none}a:hover{color:#1e70bf}::-webkit-selection{background-color:#cce2ff;color:rgba(0,0,0,.87)}::-moz-selection{background-color:#cce2ff;color:rgba(0,0,0,.87)}::selection{background-color:#cce2ff;color:rgba(0,0,0,.87)}input::-webkit-selection,textarea::-webkit-selection{background-color:hsla(0,0%,39%,.4);color:rgba(0,0,0,.87)}input::-moz-selection,textarea::-moz-selection{background-color:hsla(0,0%,39%,.4);color:rgba(0,0,0,.87)}input::selection,textarea::selection{background-color:hsla(0,0%,39%,.4);color:rgba(0,0,0,.87)}body ::-webkit-scrollbar{-webkit-appearance:none;height:10px;width:10px}body ::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:0}body ::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25);border-radius:5px;cursor:pointer;transition:color .2s ease}body ::-webkit-scrollbar-thumb:window-inactive{background:rgba(0,0,0,.15)}body ::-webkit-scrollbar-thumb:hover{background:hsla(202,5%,52%,.8)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-track{background:hsla(0,0%,100%,.1)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.25)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb:window-inactive{background:hsla(0,0%,100%,.15)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.35)}
/*!
 * # Fomantic-UI - Button
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.button{-webkit-tap-highlight-color:transparent;background:#e0e1e2 none;border:none;border-radius:.28571429rem;color:rgba(0,0,0,.6);cursor:pointer;display:inline-block;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-style:normal;font-weight:700;line-height:1em;margin:0 .25em 0 0;min-height:1em;outline:none;padding:.78571429em 1.5em;text-align:center;text-decoration:none;text-shadow:none;text-transform:none;transition:opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease;user-select:none;vertical-align:baseline;will-change:auto}.ui.button,.ui.button:hover{box-shadow:inset 0 0 0 1px transparent,inset 0 0 0 0 rgba(34,36,38,.15)}.ui.button:hover{background-color:#cacbcd;background-image:none;color:rgba(0,0,0,.8)}.ui.button:hover .icon{opacity:.85}.ui.button:focus{background-color:#cacbcd;background-image:none;box-shadow:"";color:rgba(0,0,0,.8)}.ui.button:focus .icon{opacity:.85}.ui.active.button:active,.ui.button:active{background-color:#babbbc;background-image:"";box-shadow:inset 0 0 0 1px transparent,none;color:rgba(0,0,0,.9)}.ui.active.button{box-shadow:inset 0 0 0 1px transparent}.ui.active.button,.ui.active.button:hover{color:rgba(0,0,0,.95)}.ui.active.button,.ui.active.button:active,.ui.active.button:hover{background-color:#c0c1c2;background-image:none}.ui.loading.loading.loading.loading.loading.loading.button{color:transparent;cursor:default;opacity:1;pointer-events:auto;position:relative;text-shadow:none!important;transition:all 0s linear,opacity .1s ease}.ui.loading.button:before{border:.2em solid rgba(0,0,0,.15);border-radius:500rem}.ui.loading.button:after,.ui.loading.button:before{content:"";height:1.28571429em;left:50%;margin:-.64285714em 0 0 -.64285714em;position:absolute;top:50%;width:1.28571429em}.ui.loading.button:after{animation:loader .6s linear infinite;border:.2em solid;border-radius:500rem;box-shadow:0 0 0 1px transparent;color:#fff}.ui.labeled.icon.loading.button .icon{background-color:transparent;box-shadow:none}.ui.basic.loading.button:not(.inverted):before{border-color:rgba(0,0,0,.1)}.ui.basic.loading.button:not(.inverted):after{border-color:#767676}.ui.button:disabled,.ui.buttons .disabled.button:not(.basic),.ui.disabled.active.button,.ui.disabled.button,.ui.disabled.button:hover{background-image:none;box-shadow:none;cursor:default;opacity:.45!important;pointer-events:none!important}.ui.basic.buttons .ui.disabled.button{border-color:rgba(34,36,38,.5)}.ui.animated.button{overflow:hidden;padding-right:0!important;position:relative;vertical-align:middle;z-index:1}.ui.animated.button .content{will-change:transform,opacity}.ui.animated.button .visible.content{margin-right:1.5em;position:relative}.ui.animated.button .hidden.content{position:absolute;width:100%}.ui.animated.button .hidden.content,.ui.animated.button .visible.content{transition:right .3s ease 0s}.ui.animated.button .visible.content{left:auto;right:0}.ui.animated.button .hidden.content{left:auto;margin-top:-.5em;right:-100%;top:50%}.ui.animated.button:focus .visible.content,.ui.animated.button:hover .visible.content{left:auto;right:200%}.ui.animated.button:focus .hidden.content,.ui.animated.button:hover .hidden.content{left:auto;right:0}.ui.vertical.animated.button .hidden.content,.ui.vertical.animated.button .visible.content{transition:top .3s ease,transform .3s ease}.ui.vertical.animated.button .visible.content{right:auto;transform:translateY(0)}.ui.vertical.animated.button .hidden.content{left:0;right:auto;top:-50%}.ui.vertical.animated.button:focus .visible.content,.ui.vertical.animated.button:hover .visible.content{right:auto;transform:translateY(200%)}.ui.vertical.animated.button:focus .hidden.content,.ui.vertical.animated.button:hover .hidden.content{right:auto;top:50%}.ui.fade.animated.button .hidden.content,.ui.fade.animated.button .visible.content{transition:opacity .3s ease,transform .3s ease}.ui.fade.animated.button .visible.content{left:auto;opacity:1;right:auto;transform:scale(1)}.ui.fade.animated.button .hidden.content{left:0;opacity:0;right:auto;transform:scale(1.5)}.ui.fade.animated.button:focus .visible.content,.ui.fade.animated.button:hover .visible.content{left:auto;opacity:0;right:auto;transform:scale(.75)}.ui.fade.animated.button:focus .hidden.content,.ui.fade.animated.button:hover .hidden.content{left:0;opacity:1;right:auto;transform:scale(1)}.ui.inverted.button{background:transparent none;box-shadow:inset 0 0 0 2px #fff;color:#fff;text-shadow:none!important}.ui.inverted.buttons .button{margin:0 0 0 -2px}.ui.inverted.buttons .button:first-child{margin-left:0}.ui.inverted.vertical.buttons .button{margin:0 0 -2px}.ui.inverted.vertical.buttons .button:first-child{margin-top:0}.ui.inverted.button.active,.ui.inverted.button:focus,.ui.inverted.button:hover{background:#fff;box-shadow:inset 0 0 0 2px #fff;color:rgba(0,0,0,.8)}.ui.inverted.button.active:focus{background:#dcddde;box-shadow:inset 0 0 0 2px #dcddde;color:rgba(0,0,0,.8)}.ui.labeled.button:not(.icon){background:none;border:none;box-shadow:none;display:inline-flex;flex-direction:row;padding:0!important}.ui.labeled.button>.button{margin:0}.ui.labeled.button>.label{align-items:center;border-color:rgba(34,36,38,.15);display:flex;font-size:1em;margin:0 0 0 -1px!important;padding:""}.ui.labeled.button>.tag.label:before{height:1.85em;width:1.85em}.ui.labeled.button:not([class*="left labeled"])>.button{border-bottom-right-radius:0;border-top-right-radius:0}.ui.labeled.button:not([class*="left labeled"])>.label,.ui[class*="left labeled"].button>.button{border-bottom-left-radius:0;border-top-left-radius:0}.ui[class*="left labeled"].button>.label{border-bottom-right-radius:0;border-top-right-radius:0}.ui.facebook.button{background-color:#3b5998;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff;text-shadow:none}.ui.facebook.button:hover{background-color:#304d8a;color:#fff;text-shadow:none}.ui.facebook.button:active{background-color:#2d4373;color:#fff;text-shadow:none}.ui.twitter.button{background-color:#1da1f2;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff;text-shadow:none}.ui.twitter.button:hover{background-color:#0298f3;color:#fff;text-shadow:none}.ui.twitter.button:active{background-color:#0c85d0;color:#fff;text-shadow:none}.ui.google.plus.button{background-color:#dd4b39;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff;text-shadow:none}.ui.google.plus.button:hover{background-color:#e0321c;color:#fff;text-shadow:none}.ui.google.plus.button:active{background-color:#c23321;color:#fff;text-shadow:none}.ui.linkedin.button{background-color:#0077b5;color:#fff;text-shadow:none}.ui.linkedin.button:hover{background-color:#00669c;color:#fff;text-shadow:none}.ui.linkedin.button:active{background-color:#005582;color:#fff;text-shadow:none}.ui.youtube.button{background-color:red;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff;text-shadow:none}.ui.youtube.button:hover{background-color:#e60000;color:#fff;text-shadow:none}.ui.youtube.button:active{background-color:#c00;color:#fff;text-shadow:none}.ui.instagram.button{background-color:#49769c;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff;text-shadow:none}.ui.instagram.button:hover{background-color:#3d698e;color:#fff;text-shadow:none}.ui.instagram.button:active{background-color:#395c79;color:#fff;text-shadow:none}.ui.pinterest.button{background-color:#bd081c;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff;text-shadow:none}.ui.pinterest.button:hover{background-color:#ac0013;color:#fff;text-shadow:none}.ui.pinterest.button:active{background-color:#8c0615;color:#fff;text-shadow:none}.ui.vk.button{background-color:#45668e;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff}.ui.vk.button:hover{background-color:#395980;color:#fff}.ui.vk.button:active{background-color:#344d6c;color:#fff}.ui.whatsapp.button{background-color:#25d366;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff}.ui.whatsapp.button:hover{background-color:#19c55a;color:#fff}.ui.whatsapp.button:active{background-color:#1da851;color:#fff}.ui.telegram.button{background-color:#08c;background-image:none;box-shadow:inset 0 0 0 0 rgba(34,36,38,.15);color:#fff}.ui.telegram.button:hover{background-color:#0077b3;color:#fff}.ui.telegram.button:active{background-color:#069;color:#fff}.ui.button>.icon:not(.button){color:"";height:auto;opacity:.8;transition:opacity .1s ease;vertical-align:""}.ui.button:not(.icon)>.icon:not(.button):not(.dropdown),.ui.button:not(.icon)>.icons:not(.button):not(.dropdown),.ui.button>.icon:not(.button){margin:0 .42857143em 0 -.21428571em}.ui.button:not(.icon)>.right.icon:not(.button):not(.dropdown){margin:0 -.21428571em 0 .42857143em}.ui[class*="left floated"].button,.ui[class*="left floated"].buttons{float:left;margin-left:0;margin-right:.25em}.ui[class*="right floated"].button,.ui[class*="right floated"].buttons{float:right;margin-left:.25em;margin-right:0}.ui.compact.button,.ui.compact.buttons .button{padding:.58928571em 1.125em}.ui.compact.icon.button,.ui.compact.icon.buttons .button{padding:.58928571em}.ui.compact.labeled.icon.button,.ui.compact.labeled.icon.buttons .button{padding:.58928571em 3.69642857em}.ui.compact.labeled.icon.button>.icon,.ui.compact.labeled.icon.buttons .button>.icon{padding:.58928571em 0}.ui.mini.buttons .button,.ui.mini.buttons .or,.ui.ui.ui.ui.mini.button{font-size:.78571429rem}.ui.tiny.buttons .button,.ui.tiny.buttons .or,.ui.ui.ui.ui.tiny.button{font-size:.85714286rem}.ui.small.buttons .button,.ui.small.buttons .or,.ui.ui.ui.ui.small.button{font-size:.92857143rem}.ui.button,.ui.buttons .button,.ui.buttons .or{font-size:1rem}.ui.large.buttons .button,.ui.large.buttons .or,.ui.ui.ui.ui.large.button{font-size:1.14285714rem}.ui.big.buttons .button,.ui.big.buttons .or,.ui.ui.ui.ui.big.button{font-size:1.28571429rem}.ui.huge.buttons .button,.ui.huge.buttons .or,.ui.ui.ui.ui.huge.button{font-size:1.42857143rem}.ui.massive.buttons .button,.ui.massive.buttons .or,.ui.ui.ui.ui.massive.button{font-size:1.71428571rem}.ui.mini.buttons .dropdown,.ui.mini.buttons .dropdown .menu>.item{font-size:.78571429rem}.ui.tiny.buttons .dropdown,.ui.tiny.buttons .dropdown .menu>.item{font-size:.85714286rem}.ui.small.buttons .dropdown,.ui.small.buttons .dropdown .menu>.item{font-size:.92857143rem}.ui.large.buttons .dropdown,.ui.large.buttons .dropdown .menu>.item{font-size:1.14285714rem}.ui.big.buttons .dropdown,.ui.big.buttons .dropdown .menu>.item{font-size:1.28571429rem}.ui.huge.buttons .dropdown,.ui.huge.buttons .dropdown .menu>.item{font-size:1.42857143rem}.ui.massive.buttons .dropdown,.ui.massive.buttons .dropdown .menu>.item{font-size:1.71428571rem}.ui.icon.button,.ui.icon.buttons .button{padding:.78571429em}.ui.icon.button>.icon,.ui.icon.buttons .button>.icon{margin:0!important;opacity:.9;vertical-align:top}.ui.basic.button,.ui.basic.buttons .button{background:transparent none;border-radius:.28571429rem;box-shadow:inset 0 0 0 1px rgba(34,36,38,.15);color:rgba(0,0,0,.6);font-weight:400;text-shadow:none!important;text-transform:none}.ui.basic.buttons{border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:none}.ui.basic.buttons .button{border-radius:0}.ui.basic.button:focus,.ui.basic.button:hover,.ui.basic.buttons .button:focus,.ui.basic.buttons .button:hover{background:#fff;box-shadow:inset 0 0 0 1px rgba(34,36,38,.35),inset 0 0 0 0 rgba(34,36,38,.15);color:rgba(0,0,0,.8)}.ui.basic.button:active,.ui.basic.buttons .button:active{background:#f8f8f8;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15),inset 0 1px 4px 0 rgba(34,36,38,.15);color:rgba(0,0,0,.9)}.ui.basic.active.button,.ui.basic.buttons .active.button{background:rgba(0,0,0,.05);box-shadow:"";color:rgba(0,0,0,.95)}.ui.basic.active.button:hover,.ui.basic.buttons .active.button:hover{background-color:rgba(0,0,0,.05)}.ui.basic.buttons .button:hover{box-shadow:inset 0 0 0 1px rgba(34,36,38,.35),inset inset 0 0 0 0 rgba(34,36,38,.15)}.ui.basic.buttons .button:active{box-shadow:inset 0 0 0 1px rgba(0,0,0,.15),inset inset 0 1px 4px 0 rgba(34,36,38,.15)}.ui.basic.buttons .active.button{box-shadow:""}.ui.basic.inverted.button,.ui.basic.inverted.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#f9fafb}.ui.basic.inverted.button:focus,.ui.basic.inverted.button:hover,.ui.basic.inverted.buttons .button:focus,.ui.basic.inverted.buttons .button:hover{box-shadow:inset 0 0 0 2px #fff;color:#fff}.ui.basic.inverted.button:active,.ui.basic.inverted.buttons .button:active{background-color:hsla(0,0%,100%,.08);box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.9);color:#fff}.ui.basic.inverted.active.button,.ui.basic.inverted.buttons .active.button{background-color:hsla(0,0%,100%,.08);box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.7);color:#fff;text-shadow:none}.ui.basic.inverted.active.button:hover,.ui.basic.inverted.buttons .active.button:hover{background-color:hsla(0,0%,100%,.15);box-shadow:inset 0 0 0 2px #fff}.ui.basic.buttons .button{border-left:1px solid rgba(34,36,38,.15);box-shadow:none}.ui.basic.vertical.buttons .button{border-left:0;border-top:1px solid rgba(34,36,38,.15)}.ui.basic.vertical.buttons .button:first-child{border-top-width:0}.ui.tertiary.button{background:none;border-radius:0;box-shadow:none;color:rgba(0,0,0,.6);margin:.28571429em .25em .28571429em 0!important;padding:.5em!important;transition:color .1s ease!important}.ui.tertiary.button:focus,.ui.tertiary.button:hover{background:none;box-shadow:inset 0 -.2em 0 #666;color:#333}.ui.tertiary.button:active{background:none;border-radius:.28571429rem .28571429rem 0 0;box-shadow:inset 0 -.2em 0 #999;color:#666}.ui.labeled.icon.button,.ui.labeled.icon.buttons .button{padding-left:4.07142857em!important;padding-right:1.5em!important;position:relative}.ui.labeled.icon.button>.icon,.ui.labeled.icon.buttons>.button>.icon{animation:none;background-color:rgba(0,0,0,.05);border-radius:0;border-bottom-left-radius:inherit;border-top-left-radius:inherit;box-shadow:inset -1px 0 0 0 transparent;color:"";height:100%;left:0;line-height:1;margin:0;padding:.78571429em 0;position:absolute;text-align:center;top:0;width:2.57142857em}.ui[class*="right labeled"].icon.button{padding-left:1.5em!important;padding-right:4.07142857em!important}.ui[class*="right labeled"].icon.button>.icon{border-radius:0;border-bottom-right-radius:inherit;border-top-right-radius:inherit;box-shadow:inset 1px 0 0 0 transparent;left:auto;right:0}.ui.labeled.icon.button>.icon:after,.ui.labeled.icon.button>.icon:before,.ui.labeled.icon.buttons>.button>.icon:after,.ui.labeled.icon.buttons>.button>.icon:before{display:block;position:relative;text-align:center;top:0;width:100%}.ui.labeled.icon.buttons .button>.icon{border-radius:0}.ui.labeled.icon.buttons .button:first-child>.icon{border-bottom-left-radius:.28571429rem;border-top-left-radius:.28571429rem}.ui.labeled.icon.buttons .button:last-child>.icon{border-bottom-right-radius:.28571429rem;border-top-right-radius:.28571429rem}.ui.vertical.labeled.icon.buttons .button:first-child>.icon{border-radius:0;border-top-left-radius:.28571429rem}.ui.vertical.labeled.icon.buttons .button:last-child>.icon{border-radius:0;border-bottom-left-radius:.28571429rem}.ui.labeled.icon.button>.loading.icon:before{animation:loader 2s linear infinite}.ui.button.toggle.active,.ui.buttons .button.toggle.active,.ui.toggle.buttons .active.button{background-color:#21ba45;box-shadow:none;color:#fff;text-shadow:none}.ui.button.toggle.active:hover{background-color:#16ab39;color:#fff;text-shadow:none}.ui.circular.button{border-radius:10em}.ui.circular.button>.icon{vertical-align:baseline;width:1em}.ui.buttons .or{height:2.57142857em;position:relative;width:.3em;z-index:3}.ui.buttons .or:before{background-color:#fff;border-radius:500rem;box-shadow:inset 0 0 0 1px transparent;color:rgba(0,0,0,.4);content:"or";font-style:normal;font-weight:700;height:1.78571429em;left:50%;line-height:1.78571429em;margin-left:-.89285714em;margin-top:-.89285714em;position:absolute;text-align:center;text-shadow:none;top:50%;width:1.78571429em}.ui.buttons .or[data-text]:before{content:attr(data-text)}.ui.fluid.buttons .or{width:0!important}.ui.fluid.buttons .or:after{display:none}.ui.attached.button{border-radius:0;box-shadow:0 0 0 1px rgba(34,36,38,.15);display:block;margin:0;position:relative}.ui.attached.top.button{border-radius:.28571429rem .28571429rem 0 0}.ui.attached.bottom.button{border-radius:0 0 .28571429rem .28571429rem}.ui.left.attached.button{border-left:none;border-radius:.28571429rem 0 0 .28571429rem;display:inline-block;padding-right:.75em;text-align:right}.ui.right.attached.button{border-radius:0 .28571429rem .28571429rem 0;display:inline-block;padding-left:.75em;text-align:left}.ui.attached.buttons{border-radius:0;display:flex;margin-left:-1px;margin-right:-1px;position:relative;width:auto!important;z-index:auto}.ui.attached.buttons .button{margin:0}.ui.attached.buttons .button:first-child,.ui.attached.buttons .button:last-child{border-radius:0}.ui[class*="top attached"].buttons{border-radius:.28571429rem .28571429rem 0 0;margin-bottom:-1px}.ui[class*="top attached"].buttons .button:first-child{border-radius:.28571429rem 0 0 0}.ui[class*="top attached"].buttons .button:last-child{border-radius:0 .28571429rem 0 0}.ui[class*="bottom attached"].buttons{border-radius:0 0 .28571429rem .28571429rem;margin-top:-1px}.ui[class*="bottom attached"].buttons .button:first-child{border-radius:0 0 0 .28571429rem}.ui[class*="bottom attached"].buttons .button:last-child{border-radius:0 0 .28571429rem 0}.ui[class*="left attached"].buttons{border-radius:0 .28571429rem .28571429rem 0;display:inline-flex;margin-left:-1px;margin-right:0}.ui[class*="left attached"].buttons .button:first-child{border-radius:0 .28571429rem 0 0;margin-left:-1px}.ui[class*="left attached"].buttons .button:last-child{border-radius:0 0 .28571429rem 0;margin-left:-1px}.ui[class*="right attached"].buttons{border-radius:.28571429rem 0 0 .28571429rem;display:inline-flex;margin-left:0;margin-right:-1px}.ui[class*="right attached"].buttons .button:first-child{border-radius:.28571429rem 0 0 0;margin-left:-1px}.ui[class*="right attached"].buttons .button:last-child{border-radius:0 0 0 .28571429rem;margin-left:-1px}.ui.fluid.button,.ui.fluid.buttons{width:100%}.ui.fluid.button{display:block}.ui.two.buttons{width:100%}.ui.two.buttons>.button{width:50%}.ui.three.buttons{width:100%}.ui.three.buttons>.button{width:33.333%}.ui.four.buttons{width:100%}.ui.four.buttons>.button{width:25%}.ui.five.buttons{width:100%}.ui.five.buttons>.button{width:20%}.ui.six.buttons{width:100%}.ui.six.buttons>.button{width:16.666%}.ui.seven.buttons{width:100%}.ui.seven.buttons>.button{width:14.285%}.ui.eight.buttons{width:100%}.ui.eight.buttons>.button{width:12.5%}.ui.nine.buttons{width:100%}.ui.nine.buttons>.button{width:11.11%}.ui.ten.buttons{width:100%}.ui.ten.buttons>.button{width:10%}.ui.eleven.buttons{width:100%}.ui.eleven.buttons>.button{width:9.09%}.ui.twelve.buttons{width:100%}.ui.twelve.buttons>.button{width:8.3333%}.ui.fluid.vertical.buttons,.ui.fluid.vertical.buttons>.button{display:flex;justify-content:center;width:auto}.ui.two.vertical.buttons>.button{height:50%}.ui.three.vertical.buttons>.button{height:33.333%}.ui.four.vertical.buttons>.button{height:25%}.ui.five.vertical.buttons>.button{height:20%}.ui.six.vertical.buttons>.button{height:16.666%}.ui.seven.vertical.buttons>.button{height:14.285%}.ui.eight.vertical.buttons>.button{height:12.5%}.ui.nine.vertical.buttons>.button{height:11.11%}.ui.ten.vertical.buttons>.button{height:10%}.ui.eleven.vertical.buttons>.button{height:9.09%}.ui.twelve.vertical.buttons>.button{height:8.3333%}.ui.primary.button,.ui.primary.buttons .button{background-color:#2185d0;background-image:none;color:#fff;text-shadow:none}.ui.primary.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.primary.button:hover,.ui.primary.buttons .button:hover{background-color:#1678c2;color:#fff;text-shadow:none}.ui.primary.button:focus,.ui.primary.buttons .button:focus{background-color:#0d71bb;color:#fff;text-shadow:none}.ui.primary.button:active,.ui.primary.buttons .button:active{background-color:#1a69a4;color:#fff;text-shadow:none}.ui.primary.active.button,.ui.primary.button .active.button:active,.ui.primary.buttons .active.button,.ui.primary.buttons .active.button:active{background-color:#1279c6;color:#fff;text-shadow:none}.ui.basic.primary.button,.ui.basic.primary.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #2185d0;color:#2185d0}.ui.basic.primary.button:hover,.ui.basic.primary.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #1678c2;color:#1678c2}.ui.basic.primary.button:focus,.ui.basic.primary.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #0d71bb;color:#1678c2}.ui.basic.primary.active.button,.ui.basic.primary.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #1279c6;color:#1a69a4}.ui.basic.primary.button:active,.ui.basic.primary.buttons .button:active{box-shadow:inset 0 0 0 1px #1a69a4;color:#1a69a4}.ui.buttons:not(.vertical)>.basic.primary.button:not(:first-child){margin-left:-1px}.ui.inverted.primary.button,.ui.inverted.primary.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #54c8ff;color:#54c8ff}.ui.inverted.primary.button.active,.ui.inverted.primary.button:active,.ui.inverted.primary.button:focus,.ui.inverted.primary.button:hover,.ui.inverted.primary.buttons .button.active,.ui.inverted.primary.buttons .button:active,.ui.inverted.primary.buttons .button:focus,.ui.inverted.primary.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.primary.button:hover,.ui.inverted.primary.buttons .button:hover{background-color:#21b8ff}.ui.inverted.primary.button:focus,.ui.inverted.primary.buttons .button:focus{background-color:#2bbbff}.ui.inverted.primary.active.button,.ui.inverted.primary.buttons .active.button{background-color:#3ac0ff}.ui.inverted.primary.button:active,.ui.inverted.primary.buttons .button:active{background-color:#21b8ff}.ui.inverted.primary.basic.button,.ui.inverted.primary.basic.buttons .button,.ui.inverted.primary.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.primary.basic.button:hover,.ui.inverted.primary.basic.buttons .button:hover,.ui.inverted.primary.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #21b8ff;color:#54c8ff}.ui.inverted.primary.basic.button:focus,.ui.inverted.primary.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #2bbbff;color:#54c8ff}.ui.inverted.primary.basic.active.button,.ui.inverted.primary.basic.buttons .active.button,.ui.inverted.primary.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #3ac0ff;color:#54c8ff}.ui.inverted.primary.basic.button:active,.ui.inverted.primary.basic.buttons .button:active,.ui.inverted.primary.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #21b8ff;color:#54c8ff}.ui.tertiary.primary.button,.ui.tertiary.primary.buttons .button,.ui.tertiary.primary.buttons .tertiary.button{background:transparent;box-shadow:none;color:#2185d0}.ui.tertiary.primary.button:hover,.ui.tertiary.primary.buttons .button:hover,.ui.tertiary.primary.buttons button:hover{box-shadow:inset 0 -.2em 0 #2b75ac;color:#2b75ac}.ui.tertiary.primary.button:focus,.ui.tertiary.primary.buttons .button:focus,.ui.tertiary.primary.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #216ea7;color:#216ea7}.ui.tertiary.primary.active.button,.ui.tertiary.primary.button:active,.ui.tertiary.primary.buttons .active.button,.ui.tertiary.primary.buttons .button:active,.ui.tertiary.primary.buttons .tertiary.active.button,.ui.tertiary.primary.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #007bd8;color:#1279c6}.ui.secondary.button,.ui.secondary.buttons .button{background-color:#1b1c1d;background-image:none;color:#fff;text-shadow:none}.ui.secondary.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.secondary.button:hover,.ui.secondary.buttons .button:hover{background-color:#27292a;color:#fff;text-shadow:none}.ui.secondary.button:focus,.ui.secondary.buttons .button:focus{background-color:#2e3032;color:#fff;text-shadow:none}.ui.secondary.button:active,.ui.secondary.buttons .button:active{background-color:#343637;color:#fff;text-shadow:none}.ui.secondary.active.button,.ui.secondary.button .active.button:active,.ui.secondary.buttons .active.button,.ui.secondary.buttons .active.button:active{background-color:#27292a;color:#fff;text-shadow:none}.ui.basic.secondary.button,.ui.basic.secondary.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #1b1c1d;color:#1b1c1d}.ui.basic.secondary.button:hover,.ui.basic.secondary.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #27292a;color:#27292a}.ui.basic.secondary.button:focus,.ui.basic.secondary.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #2e3032;color:#27292a}.ui.basic.secondary.active.button,.ui.basic.secondary.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #27292a;color:#343637}.ui.basic.secondary.button:active,.ui.basic.secondary.buttons .button:active{box-shadow:inset 0 0 0 1px #343637;color:#343637}.ui.buttons:not(.vertical)>.basic.secondary.button:not(:first-child){margin-left:-1px}.ui.inverted.secondary.button,.ui.inverted.secondary.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #545454;color:#545454}.ui.inverted.secondary.button.active,.ui.inverted.secondary.button:active,.ui.inverted.secondary.button:focus,.ui.inverted.secondary.button:hover,.ui.inverted.secondary.buttons .button.active,.ui.inverted.secondary.buttons .button:active,.ui.inverted.secondary.buttons .button:focus,.ui.inverted.secondary.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.secondary.button:hover,.ui.inverted.secondary.buttons .button:hover{background-color:#6e6e6e}.ui.inverted.secondary.button:focus,.ui.inverted.secondary.buttons .button:focus{background-color:#686868}.ui.inverted.secondary.active.button,.ui.inverted.secondary.buttons .active.button{background-color:#616161}.ui.inverted.secondary.button:active,.ui.inverted.secondary.buttons .button:active{background-color:#6e6e6e}.ui.inverted.secondary.basic.button,.ui.inverted.secondary.basic.buttons .button,.ui.inverted.secondary.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.secondary.basic.button:hover,.ui.inverted.secondary.basic.buttons .button:hover,.ui.inverted.secondary.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #6e6e6e;color:#545454}.ui.inverted.secondary.basic.button:focus,.ui.inverted.secondary.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #686868;color:#545454}.ui.inverted.secondary.basic.active.button,.ui.inverted.secondary.basic.buttons .active.button,.ui.inverted.secondary.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #616161;color:#545454}.ui.inverted.secondary.basic.button:active,.ui.inverted.secondary.basic.buttons .button:active,.ui.inverted.secondary.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #6e6e6e;color:#545454}.ui.tertiary.secondary.button,.ui.tertiary.secondary.buttons .button,.ui.tertiary.secondary.buttons .tertiary.button{background:transparent;box-shadow:none;color:#1b1c1d}.ui.tertiary.secondary.button:hover,.ui.tertiary.secondary.buttons .button:hover,.ui.tertiary.secondary.buttons button:hover{box-shadow:inset 0 -.2em 0 #292929;color:#292929}.ui.tertiary.secondary.button:focus,.ui.tertiary.secondary.buttons .button:focus,.ui.tertiary.secondary.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #303030;color:#303030}.ui.tertiary.secondary.active.button,.ui.tertiary.secondary.button:active,.ui.tertiary.secondary.buttons .active.button,.ui.tertiary.secondary.buttons .button:active,.ui.tertiary.secondary.buttons .tertiary.active.button,.ui.tertiary.secondary.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #1f2933;color:#27292a}.ui.red.button,.ui.red.buttons .button{background-color:#db2828;background-image:none;color:#fff;text-shadow:none}.ui.red.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.red.button:hover,.ui.red.buttons .button:hover{background-color:#d01919;color:#fff;text-shadow:none}.ui.red.button:focus,.ui.red.buttons .button:focus{background-color:#ca1010;color:#fff;text-shadow:none}.ui.red.button:active,.ui.red.buttons .button:active{background-color:#b21e1e;color:#fff;text-shadow:none}.ui.red.active.button,.ui.red.button .active.button:active,.ui.red.buttons .active.button,.ui.red.buttons .active.button:active{background-color:#d41515;color:#fff;text-shadow:none}.ui.basic.red.button,.ui.basic.red.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #db2828;color:#db2828}.ui.basic.red.button:hover,.ui.basic.red.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #d01919;color:#d01919}.ui.basic.red.button:focus,.ui.basic.red.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #ca1010;color:#d01919}.ui.basic.red.active.button,.ui.basic.red.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #d41515;color:#b21e1e}.ui.basic.red.button:active,.ui.basic.red.buttons .button:active{box-shadow:inset 0 0 0 1px #b21e1e;color:#b21e1e}.ui.buttons:not(.vertical)>.basic.red.button:not(:first-child){margin-left:-1px}.ui.inverted.red.button,.ui.inverted.red.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #ff695e;color:#ff695e}.ui.inverted.red.button.active,.ui.inverted.red.button:active,.ui.inverted.red.button:focus,.ui.inverted.red.button:hover,.ui.inverted.red.buttons .button.active,.ui.inverted.red.buttons .button:active,.ui.inverted.red.buttons .button:focus,.ui.inverted.red.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.red.button:hover,.ui.inverted.red.buttons .button:hover{background-color:#ff392b}.ui.inverted.red.button:focus,.ui.inverted.red.buttons .button:focus{background-color:#ff4335}.ui.inverted.red.active.button,.ui.inverted.red.buttons .active.button{background-color:#ff5144}.ui.inverted.red.button:active,.ui.inverted.red.buttons .button:active{background-color:#ff392b}.ui.inverted.red.basic.button,.ui.inverted.red.basic.buttons .button,.ui.inverted.red.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.red.basic.button:hover,.ui.inverted.red.basic.buttons .button:hover,.ui.inverted.red.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #ff392b;color:#ff695e}.ui.inverted.red.basic.button:focus,.ui.inverted.red.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #ff4335;color:#ff695e}.ui.inverted.red.basic.active.button,.ui.inverted.red.basic.buttons .active.button,.ui.inverted.red.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #ff5144;color:#ff695e}.ui.inverted.red.basic.button:active,.ui.inverted.red.basic.buttons .button:active,.ui.inverted.red.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #ff392b;color:#ff695e}.ui.tertiary.red.button,.ui.tertiary.red.buttons .button,.ui.tertiary.red.buttons .tertiary.button{background:transparent;box-shadow:none;color:#db2828}.ui.tertiary.red.button:hover,.ui.tertiary.red.buttons .button:hover,.ui.tertiary.red.buttons button:hover{box-shadow:inset 0 -.2em 0 #b93131;color:#b93131}.ui.tertiary.red.button:focus,.ui.tertiary.red.buttons .button:focus,.ui.tertiary.red.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #b52626;color:#b52626}.ui.tertiary.red.active.button,.ui.tertiary.red.button:active,.ui.tertiary.red.buttons .active.button,.ui.tertiary.red.buttons .button:active,.ui.tertiary.red.buttons .tertiary.active.button,.ui.tertiary.red.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #ea0000;color:#d41515}.ui.orange.button,.ui.orange.buttons .button{background-color:#f2711c;background-image:none;color:#fff;text-shadow:none}.ui.orange.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.orange.button:hover,.ui.orange.buttons .button:hover{background-color:#f26202;color:#fff;text-shadow:none}.ui.orange.button:focus,.ui.orange.buttons .button:focus{background-color:#e55b00;color:#fff;text-shadow:none}.ui.orange.button:active,.ui.orange.buttons .button:active{background-color:#cf590c;color:#fff;text-shadow:none}.ui.orange.active.button,.ui.orange.button .active.button:active,.ui.orange.buttons .active.button,.ui.orange.buttons .active.button:active{background-color:#f56100;color:#fff;text-shadow:none}.ui.basic.orange.button,.ui.basic.orange.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #f2711c;color:#f2711c}.ui.basic.orange.button:hover,.ui.basic.orange.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #f26202;color:#f26202}.ui.basic.orange.button:focus,.ui.basic.orange.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #e55b00;color:#f26202}.ui.basic.orange.active.button,.ui.basic.orange.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #f56100;color:#cf590c}.ui.basic.orange.button:active,.ui.basic.orange.buttons .button:active{box-shadow:inset 0 0 0 1px #cf590c;color:#cf590c}.ui.buttons:not(.vertical)>.basic.orange.button:not(:first-child){margin-left:-1px}.ui.inverted.orange.button,.ui.inverted.orange.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #ff851b;color:#ff851b}.ui.inverted.orange.button.active,.ui.inverted.orange.button:active,.ui.inverted.orange.button:focus,.ui.inverted.orange.button:hover,.ui.inverted.orange.buttons .button.active,.ui.inverted.orange.buttons .button:active,.ui.inverted.orange.buttons .button:focus,.ui.inverted.orange.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.orange.button:hover,.ui.inverted.orange.buttons .button:hover{background-color:#e76b00}.ui.inverted.orange.button:focus,.ui.inverted.orange.buttons .button:focus{background-color:#f17000}.ui.inverted.orange.active.button,.ui.inverted.orange.buttons .active.button{background-color:#ff7701}.ui.inverted.orange.button:active,.ui.inverted.orange.buttons .button:active{background-color:#e76b00}.ui.inverted.orange.basic.button,.ui.inverted.orange.basic.buttons .button,.ui.inverted.orange.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.orange.basic.button:hover,.ui.inverted.orange.basic.buttons .button:hover,.ui.inverted.orange.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #e76b00;color:#ff851b}.ui.inverted.orange.basic.button:focus,.ui.inverted.orange.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #f17000;color:#ff851b}.ui.inverted.orange.basic.active.button,.ui.inverted.orange.basic.buttons .active.button,.ui.inverted.orange.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #ff7701;color:#ff851b}.ui.inverted.orange.basic.button:active,.ui.inverted.orange.basic.buttons .button:active,.ui.inverted.orange.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #e76b00;color:#ff851b}.ui.tertiary.orange.button,.ui.tertiary.orange.buttons .button,.ui.tertiary.orange.buttons .tertiary.button{background:transparent;box-shadow:none;color:#f2711c}.ui.tertiary.orange.button:hover,.ui.tertiary.orange.buttons .button:hover,.ui.tertiary.orange.buttons button:hover{box-shadow:inset 0 -.2em 0 #da671b;color:#da671b}.ui.tertiary.orange.button:focus,.ui.tertiary.orange.buttons .button:focus,.ui.tertiary.orange.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #ce6017;color:#ce6017}.ui.tertiary.orange.active.button,.ui.tertiary.orange.button:active,.ui.tertiary.orange.buttons .active.button,.ui.tertiary.orange.buttons .button:active,.ui.tertiary.orange.buttons .tertiary.active.button,.ui.tertiary.orange.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #f56100;color:#f56100}.ui.yellow.button,.ui.yellow.buttons .button{background-color:#fbbd08;background-image:none;color:#fff;text-shadow:none}.ui.yellow.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.yellow.button:hover,.ui.yellow.buttons .button:hover{background-color:#eaae00;color:#fff;text-shadow:none}.ui.yellow.button:focus,.ui.yellow.buttons .button:focus{background-color:#daa300;color:#fff;text-shadow:none}.ui.yellow.button:active,.ui.yellow.buttons .button:active{background-color:#cd9903;color:#fff;text-shadow:none}.ui.yellow.active.button,.ui.yellow.button .active.button:active,.ui.yellow.buttons .active.button,.ui.yellow.buttons .active.button:active{background-color:#eaae00;color:#fff;text-shadow:none}.ui.basic.yellow.button,.ui.basic.yellow.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #fbbd08;color:#fbbd08}.ui.basic.yellow.button:hover,.ui.basic.yellow.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #eaae00;color:#eaae00}.ui.basic.yellow.button:focus,.ui.basic.yellow.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #daa300;color:#eaae00}.ui.basic.yellow.active.button,.ui.basic.yellow.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #eaae00;color:#cd9903}.ui.basic.yellow.button:active,.ui.basic.yellow.buttons .button:active{box-shadow:inset 0 0 0 1px #cd9903;color:#cd9903}.ui.buttons:not(.vertical)>.basic.yellow.button:not(:first-child){margin-left:-1px}.ui.inverted.yellow.button,.ui.inverted.yellow.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #ffe21f;color:#ffe21f}.ui.inverted.yellow.button.active,.ui.inverted.yellow.button:active,.ui.inverted.yellow.button:focus,.ui.inverted.yellow.button:hover,.ui.inverted.yellow.buttons .button.active,.ui.inverted.yellow.buttons .button:active,.ui.inverted.yellow.buttons .button:focus,.ui.inverted.yellow.buttons .button:hover{box-shadow:none;color:rgba(0,0,0,.6)}.ui.inverted.yellow.button:hover,.ui.inverted.yellow.buttons .button:hover{background-color:#ebcd00}.ui.inverted.yellow.button:focus,.ui.inverted.yellow.buttons .button:focus{background-color:#f5d500}.ui.inverted.yellow.active.button,.ui.inverted.yellow.buttons .active.button{background-color:#ffdf05}.ui.inverted.yellow.button:active,.ui.inverted.yellow.buttons .button:active{background-color:#ebcd00}.ui.inverted.yellow.basic.button,.ui.inverted.yellow.basic.buttons .button,.ui.inverted.yellow.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.yellow.basic.button:hover,.ui.inverted.yellow.basic.buttons .button:hover,.ui.inverted.yellow.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #ebcd00;color:#ffe21f}.ui.inverted.yellow.basic.button:focus,.ui.inverted.yellow.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #f5d500;color:#ffe21f}.ui.inverted.yellow.basic.active.button,.ui.inverted.yellow.basic.buttons .active.button,.ui.inverted.yellow.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #ffdf05;color:#ffe21f}.ui.inverted.yellow.basic.button:active,.ui.inverted.yellow.basic.buttons .button:active,.ui.inverted.yellow.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #ebcd00;color:#ffe21f}.ui.tertiary.yellow.button,.ui.tertiary.yellow.buttons .button,.ui.tertiary.yellow.buttons .tertiary.button{background:transparent;box-shadow:none;color:#fbbd08}.ui.tertiary.yellow.button:hover,.ui.tertiary.yellow.buttons .button:hover,.ui.tertiary.yellow.buttons button:hover{box-shadow:inset 0 -.2em 0 #d2a217;color:#d2a217}.ui.tertiary.yellow.button:focus,.ui.tertiary.yellow.buttons .button:focus,.ui.tertiary.yellow.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #c49816;color:#c49816}.ui.tertiary.yellow.active.button,.ui.tertiary.yellow.button:active,.ui.tertiary.yellow.buttons .active.button,.ui.tertiary.yellow.buttons .button:active,.ui.tertiary.yellow.buttons .tertiary.active.button,.ui.tertiary.yellow.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #eaae00;color:#eaae00}.ui.olive.button,.ui.olive.buttons .button{background-color:#b5cc18;background-image:none;color:#fff;text-shadow:none}.ui.olive.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.olive.button:hover,.ui.olive.buttons .button:hover{background-color:#a7bd0d;color:#fff;text-shadow:none}.ui.olive.button:focus,.ui.olive.buttons .button:focus{background-color:#a0b605;color:#fff;text-shadow:none}.ui.olive.button:active,.ui.olive.buttons .button:active{background-color:#8d9e13;color:#fff;text-shadow:none}.ui.olive.active.button,.ui.olive.button .active.button:active,.ui.olive.buttons .active.button,.ui.olive.buttons .active.button:active{background-color:#aac109;color:#fff;text-shadow:none}.ui.basic.olive.button,.ui.basic.olive.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #b5cc18;color:#b5cc18}.ui.basic.olive.button:hover,.ui.basic.olive.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #a7bd0d;color:#a7bd0d}.ui.basic.olive.button:focus,.ui.basic.olive.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #a0b605;color:#a7bd0d}.ui.basic.olive.active.button,.ui.basic.olive.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #aac109;color:#8d9e13}.ui.basic.olive.button:active,.ui.basic.olive.buttons .button:active{box-shadow:inset 0 0 0 1px #8d9e13;color:#8d9e13}.ui.buttons:not(.vertical)>.basic.olive.button:not(:first-child){margin-left:-1px}.ui.inverted.olive.button,.ui.inverted.olive.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #d9e778;color:#d9e778}.ui.inverted.olive.button.active,.ui.inverted.olive.button:active,.ui.inverted.olive.button:focus,.ui.inverted.olive.button:hover,.ui.inverted.olive.buttons .button.active,.ui.inverted.olive.buttons .button:active,.ui.inverted.olive.buttons .button:focus,.ui.inverted.olive.buttons .button:hover{box-shadow:none;color:rgba(0,0,0,.6)}.ui.inverted.olive.button:hover,.ui.inverted.olive.buttons .button:hover{background-color:#d2e745}.ui.inverted.olive.button:focus,.ui.inverted.olive.buttons .button:focus{background-color:#daef47}.ui.inverted.olive.active.button,.ui.inverted.olive.buttons .active.button{background-color:#daed59}.ui.inverted.olive.button:active,.ui.inverted.olive.buttons .button:active{background-color:#cddf4d}.ui.inverted.olive.basic.button,.ui.inverted.olive.basic.buttons .button,.ui.inverted.olive.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.olive.basic.button:hover,.ui.inverted.olive.basic.buttons .button:hover,.ui.inverted.olive.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #d2e745;color:#d9e778}.ui.inverted.olive.basic.button:focus,.ui.inverted.olive.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #daef47;color:#d9e778}.ui.inverted.olive.basic.active.button,.ui.inverted.olive.basic.buttons .active.button,.ui.inverted.olive.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #daed59;color:#d9e778}.ui.inverted.olive.basic.button:active,.ui.inverted.olive.basic.buttons .button:active,.ui.inverted.olive.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #cddf4d;color:#d9e778}.ui.tertiary.olive.button,.ui.tertiary.olive.buttons .button,.ui.tertiary.olive.buttons .tertiary.button{background:transparent;box-shadow:none;color:#b5cc18}.ui.tertiary.olive.button:hover,.ui.tertiary.olive.buttons .button:hover,.ui.tertiary.olive.buttons button:hover{box-shadow:inset 0 -.2em 0 #98a922;color:#98a922}.ui.tertiary.olive.button:focus,.ui.tertiary.olive.buttons .button:focus,.ui.tertiary.olive.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #92a418;color:#92a418}.ui.tertiary.olive.active.button,.ui.tertiary.olive.button:active,.ui.tertiary.olive.buttons .active.button,.ui.tertiary.olive.buttons .button:active,.ui.tertiary.olive.buttons .tertiary.active.button,.ui.tertiary.olive.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #b1cb00;color:#aac109}.ui.green.button,.ui.green.buttons .button{background-color:#21ba45;background-image:none;color:#fff;text-shadow:none}.ui.green.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.green.button:hover,.ui.green.buttons .button:hover{background-color:#16ab39;color:#fff;text-shadow:none}.ui.green.button:focus,.ui.green.buttons .button:focus{background-color:#0ea432;color:#fff;text-shadow:none}.ui.green.button:active,.ui.green.buttons .button:active{background-color:#198f35;color:#fff;text-shadow:none}.ui.green.active.button,.ui.green.button .active.button:active,.ui.green.buttons .active.button,.ui.green.buttons .active.button:active{background-color:#13ae38;color:#fff;text-shadow:none}.ui.basic.green.button,.ui.basic.green.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #21ba45;color:#21ba45}.ui.basic.green.button:hover,.ui.basic.green.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #16ab39;color:#16ab39}.ui.basic.green.button:focus,.ui.basic.green.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #0ea432;color:#16ab39}.ui.basic.green.active.button,.ui.basic.green.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #13ae38;color:#198f35}.ui.basic.green.button:active,.ui.basic.green.buttons .button:active{box-shadow:inset 0 0 0 1px #198f35;color:#198f35}.ui.buttons:not(.vertical)>.basic.green.button:not(:first-child){margin-left:-1px}.ui.inverted.green.button,.ui.inverted.green.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #2ecc40;color:#2ecc40}.ui.inverted.green.button.active,.ui.inverted.green.button:active,.ui.inverted.green.button:focus,.ui.inverted.green.button:hover,.ui.inverted.green.buttons .button.active,.ui.inverted.green.buttons .button:active,.ui.inverted.green.buttons .button:focus,.ui.inverted.green.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.green.button:hover,.ui.inverted.green.buttons .button:hover{background-color:#1ea92e}.ui.inverted.green.button:focus,.ui.inverted.green.buttons .button:focus{background-color:#19b82b}.ui.inverted.green.active.button,.ui.inverted.green.buttons .active.button{background-color:#1fc231}.ui.inverted.green.button:active,.ui.inverted.green.buttons .button:active{background-color:#25a233}.ui.inverted.green.basic.button,.ui.inverted.green.basic.buttons .button,.ui.inverted.green.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.green.basic.button:hover,.ui.inverted.green.basic.buttons .button:hover,.ui.inverted.green.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #1ea92e;color:#2ecc40}.ui.inverted.green.basic.button:focus,.ui.inverted.green.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #19b82b;color:#2ecc40}.ui.inverted.green.basic.active.button,.ui.inverted.green.basic.buttons .active.button,.ui.inverted.green.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #1fc231;color:#2ecc40}.ui.inverted.green.basic.button:active,.ui.inverted.green.basic.buttons .button:active,.ui.inverted.green.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #25a233;color:#2ecc40}.ui.tertiary.green.button,.ui.tertiary.green.buttons .button,.ui.tertiary.green.buttons .tertiary.button{background:transparent;box-shadow:none;color:#21ba45}.ui.tertiary.green.button:hover,.ui.tertiary.green.buttons .button:hover,.ui.tertiary.green.buttons button:hover{box-shadow:inset 0 -.2em 0 #2a9844;color:#2a9844}.ui.tertiary.green.button:focus,.ui.tertiary.green.buttons .button:focus,.ui.tertiary.green.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #20923b;color:#20923b}.ui.tertiary.green.active.button,.ui.tertiary.green.button:active,.ui.tertiary.green.buttons .active.button,.ui.tertiary.green.buttons .button:active,.ui.tertiary.green.buttons .tertiary.active.button,.ui.tertiary.green.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #00c22e;color:#13ae38}.ui.teal.button,.ui.teal.buttons .button{background-color:#00b5ad;background-image:none;color:#fff;text-shadow:none}.ui.teal.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.teal.button:hover,.ui.teal.buttons .button:hover{background-color:#009c95;color:#fff;text-shadow:none}.ui.teal.button:focus,.ui.teal.buttons .button:focus{background-color:#008c86;color:#fff;text-shadow:none}.ui.teal.button:active,.ui.teal.buttons .button:active{background-color:#00827c;color:#fff;text-shadow:none}.ui.teal.active.button,.ui.teal.button .active.button:active,.ui.teal.buttons .active.button,.ui.teal.buttons .active.button:active{background-color:#009c95;color:#fff;text-shadow:none}.ui.basic.teal.button,.ui.basic.teal.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #00b5ad;color:#00b5ad}.ui.basic.teal.button:hover,.ui.basic.teal.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #009c95;color:#009c95}.ui.basic.teal.button:focus,.ui.basic.teal.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #008c86;color:#009c95}.ui.basic.teal.active.button,.ui.basic.teal.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #009c95;color:#00827c}.ui.basic.teal.button:active,.ui.basic.teal.buttons .button:active{box-shadow:inset 0 0 0 1px #00827c;color:#00827c}.ui.buttons:not(.vertical)>.basic.teal.button:not(:first-child){margin-left:-1px}.ui.inverted.teal.button,.ui.inverted.teal.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #6dffff;color:#6dffff}.ui.inverted.teal.button.active,.ui.inverted.teal.button:active,.ui.inverted.teal.button:focus,.ui.inverted.teal.button:hover,.ui.inverted.teal.buttons .button.active,.ui.inverted.teal.buttons .button:active,.ui.inverted.teal.buttons .button:focus,.ui.inverted.teal.buttons .button:hover{box-shadow:none;color:rgba(0,0,0,.6)}.ui.inverted.teal.button:hover,.ui.inverted.teal.buttons .button:hover{background-color:#3affff}.ui.inverted.teal.button:focus,.ui.inverted.teal.buttons .button:focus{background-color:#4ff}.ui.inverted.teal.active.button,.ui.inverted.teal.buttons .active.button{background-color:#54ffff}.ui.inverted.teal.button:active,.ui.inverted.teal.buttons .button:active{background-color:#3affff}.ui.inverted.teal.basic.button,.ui.inverted.teal.basic.buttons .button,.ui.inverted.teal.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.teal.basic.button:hover,.ui.inverted.teal.basic.buttons .button:hover,.ui.inverted.teal.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #3affff;color:#6dffff}.ui.inverted.teal.basic.button:focus,.ui.inverted.teal.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #4ff;color:#6dffff}.ui.inverted.teal.basic.active.button,.ui.inverted.teal.basic.buttons .active.button,.ui.inverted.teal.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #54ffff;color:#6dffff}.ui.inverted.teal.basic.button:active,.ui.inverted.teal.basic.buttons .button:active,.ui.inverted.teal.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #3affff;color:#6dffff}.ui.tertiary.teal.button,.ui.tertiary.teal.buttons .button,.ui.tertiary.teal.buttons .tertiary.button{background:transparent;box-shadow:none;color:#00b5ad}.ui.tertiary.teal.button:hover,.ui.tertiary.teal.buttons .button:hover,.ui.tertiary.teal.buttons button:hover{box-shadow:inset 0 -.2em 0 #108c86;color:#108c86}.ui.tertiary.teal.button:focus,.ui.tertiary.teal.buttons .button:focus,.ui.tertiary.teal.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #0e7e79;color:#0e7e79}.ui.tertiary.teal.active.button,.ui.tertiary.teal.button:active,.ui.tertiary.teal.buttons .active.button,.ui.tertiary.teal.buttons .button:active,.ui.tertiary.teal.buttons .tertiary.active.button,.ui.tertiary.teal.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #009c95;color:#009c95}.ui.blue.button,.ui.blue.buttons .button{background-color:#2185d0;background-image:none;color:#fff;text-shadow:none}.ui.blue.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.blue.button:hover,.ui.blue.buttons .button:hover{background-color:#1678c2;color:#fff;text-shadow:none}.ui.blue.button:focus,.ui.blue.buttons .button:focus{background-color:#0d71bb;color:#fff;text-shadow:none}.ui.blue.button:active,.ui.blue.buttons .button:active{background-color:#1a69a4;color:#fff;text-shadow:none}.ui.blue.active.button,.ui.blue.button .active.button:active,.ui.blue.buttons .active.button,.ui.blue.buttons .active.button:active{background-color:#1279c6;color:#fff;text-shadow:none}.ui.basic.blue.button,.ui.basic.blue.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #2185d0;color:#2185d0}.ui.basic.blue.button:hover,.ui.basic.blue.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #1678c2;color:#1678c2}.ui.basic.blue.button:focus,.ui.basic.blue.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #0d71bb;color:#1678c2}.ui.basic.blue.active.button,.ui.basic.blue.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #1279c6;color:#1a69a4}.ui.basic.blue.button:active,.ui.basic.blue.buttons .button:active{box-shadow:inset 0 0 0 1px #1a69a4;color:#1a69a4}.ui.buttons:not(.vertical)>.basic.blue.button:not(:first-child){margin-left:-1px}.ui.inverted.blue.button,.ui.inverted.blue.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #54c8ff;color:#54c8ff}.ui.inverted.blue.button.active,.ui.inverted.blue.button:active,.ui.inverted.blue.button:focus,.ui.inverted.blue.button:hover,.ui.inverted.blue.buttons .button.active,.ui.inverted.blue.buttons .button:active,.ui.inverted.blue.buttons .button:focus,.ui.inverted.blue.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.blue.button:hover,.ui.inverted.blue.buttons .button:hover{background-color:#21b8ff}.ui.inverted.blue.button:focus,.ui.inverted.blue.buttons .button:focus{background-color:#2bbbff}.ui.inverted.blue.active.button,.ui.inverted.blue.buttons .active.button{background-color:#3ac0ff}.ui.inverted.blue.button:active,.ui.inverted.blue.buttons .button:active{background-color:#21b8ff}.ui.inverted.blue.basic.button,.ui.inverted.blue.basic.buttons .button,.ui.inverted.blue.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.blue.basic.button:hover,.ui.inverted.blue.basic.buttons .button:hover,.ui.inverted.blue.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #21b8ff;color:#54c8ff}.ui.inverted.blue.basic.button:focus,.ui.inverted.blue.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #2bbbff;color:#54c8ff}.ui.inverted.blue.basic.active.button,.ui.inverted.blue.basic.buttons .active.button,.ui.inverted.blue.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #3ac0ff;color:#54c8ff}.ui.inverted.blue.basic.button:active,.ui.inverted.blue.basic.buttons .button:active,.ui.inverted.blue.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #21b8ff;color:#54c8ff}.ui.tertiary.blue.button,.ui.tertiary.blue.buttons .button,.ui.tertiary.blue.buttons .tertiary.button{background:transparent;box-shadow:none;color:#2185d0}.ui.tertiary.blue.button:hover,.ui.tertiary.blue.buttons .button:hover,.ui.tertiary.blue.buttons button:hover{box-shadow:inset 0 -.2em 0 #2b75ac;color:#2b75ac}.ui.tertiary.blue.button:focus,.ui.tertiary.blue.buttons .button:focus,.ui.tertiary.blue.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #216ea7;color:#216ea7}.ui.tertiary.blue.active.button,.ui.tertiary.blue.button:active,.ui.tertiary.blue.buttons .active.button,.ui.tertiary.blue.buttons .button:active,.ui.tertiary.blue.buttons .tertiary.active.button,.ui.tertiary.blue.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #007bd8;color:#1279c6}.ui.violet.button,.ui.violet.buttons .button{background-color:#6435c9;background-image:none;color:#fff;text-shadow:none}.ui.violet.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.violet.button:hover,.ui.violet.buttons .button:hover{background-color:#5829bb;color:#fff;text-shadow:none}.ui.violet.button:focus,.ui.violet.buttons .button:focus{background-color:#4f20b5;color:#fff;text-shadow:none}.ui.violet.button:active,.ui.violet.buttons .button:active{background-color:#502aa1;color:#fff;text-shadow:none}.ui.violet.active.button,.ui.violet.button .active.button:active,.ui.violet.buttons .active.button,.ui.violet.buttons .active.button:active{background-color:#5626bf;color:#fff;text-shadow:none}.ui.basic.violet.button,.ui.basic.violet.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #6435c9;color:#6435c9}.ui.basic.violet.button:hover,.ui.basic.violet.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #5829bb;color:#5829bb}.ui.basic.violet.button:focus,.ui.basic.violet.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #4f20b5;color:#5829bb}.ui.basic.violet.active.button,.ui.basic.violet.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #5626bf;color:#502aa1}.ui.basic.violet.button:active,.ui.basic.violet.buttons .button:active{box-shadow:inset 0 0 0 1px #502aa1;color:#502aa1}.ui.buttons:not(.vertical)>.basic.violet.button:not(:first-child){margin-left:-1px}.ui.inverted.violet.button,.ui.inverted.violet.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #a291fb;color:#a291fb}.ui.inverted.violet.button.active,.ui.inverted.violet.button:active,.ui.inverted.violet.button:focus,.ui.inverted.violet.button:hover,.ui.inverted.violet.buttons .button.active,.ui.inverted.violet.buttons .button:active,.ui.inverted.violet.buttons .button:focus,.ui.inverted.violet.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.violet.button:hover,.ui.inverted.violet.buttons .button:hover{background-color:#745aff}.ui.inverted.violet.button:focus,.ui.inverted.violet.buttons .button:focus{background-color:#7d64ff}.ui.inverted.violet.active.button,.ui.inverted.violet.buttons .active.button{background-color:#8a73ff}.ui.inverted.violet.button:active,.ui.inverted.violet.buttons .button:active{background-color:#7860f9}.ui.inverted.violet.basic.button,.ui.inverted.violet.basic.buttons .button,.ui.inverted.violet.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.violet.basic.button:hover,.ui.inverted.violet.basic.buttons .button:hover,.ui.inverted.violet.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #745aff;color:#a291fb}.ui.inverted.violet.basic.button:focus,.ui.inverted.violet.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #7d64ff;color:#a291fb}.ui.inverted.violet.basic.active.button,.ui.inverted.violet.basic.buttons .active.button,.ui.inverted.violet.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #8a73ff;color:#a291fb}.ui.inverted.violet.basic.button:active,.ui.inverted.violet.basic.buttons .button:active,.ui.inverted.violet.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #7860f9;color:#a291fb}.ui.tertiary.violet.button,.ui.tertiary.violet.buttons .button,.ui.tertiary.violet.buttons .tertiary.button{background:transparent;box-shadow:none;color:#6435c9}.ui.tertiary.violet.button:hover,.ui.tertiary.violet.buttons .button:hover,.ui.tertiary.violet.buttons button:hover{box-shadow:inset 0 -.2em 0 #6040a5;color:#6040a5}.ui.tertiary.violet.button:focus,.ui.tertiary.violet.buttons .button:focus,.ui.tertiary.violet.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #5735a0;color:#5735a0}.ui.tertiary.violet.active.button,.ui.tertiary.violet.button:active,.ui.tertiary.violet.buttons .active.button,.ui.tertiary.violet.buttons .button:active,.ui.tertiary.violet.buttons .tertiary.active.button,.ui.tertiary.violet.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #4e0fd6;color:#5626bf}.ui.purple.button,.ui.purple.buttons .button{background-color:#a333c8;background-image:none;color:#fff;text-shadow:none}.ui.purple.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.purple.button:hover,.ui.purple.buttons .button:hover{background-color:#9627ba;color:#fff;text-shadow:none}.ui.purple.button:focus,.ui.purple.buttons .button:focus{background-color:#8f1eb4;color:#fff;text-shadow:none}.ui.purple.button:active,.ui.purple.buttons .button:active{background-color:#82299f;color:#fff;text-shadow:none}.ui.purple.active.button,.ui.purple.button .active.button:active,.ui.purple.buttons .active.button,.ui.purple.buttons .active.button:active{background-color:#9724be;color:#fff;text-shadow:none}.ui.basic.purple.button,.ui.basic.purple.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #a333c8;color:#a333c8}.ui.basic.purple.button:hover,.ui.basic.purple.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #9627ba;color:#9627ba}.ui.basic.purple.button:focus,.ui.basic.purple.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #8f1eb4;color:#9627ba}.ui.basic.purple.active.button,.ui.basic.purple.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #9724be;color:#82299f}.ui.basic.purple.button:active,.ui.basic.purple.buttons .button:active{box-shadow:inset 0 0 0 1px #82299f;color:#82299f}.ui.buttons:not(.vertical)>.basic.purple.button:not(:first-child){margin-left:-1px}.ui.inverted.purple.button,.ui.inverted.purple.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #dc73ff;color:#dc73ff}.ui.inverted.purple.button.active,.ui.inverted.purple.button:active,.ui.inverted.purple.button:focus,.ui.inverted.purple.button:hover,.ui.inverted.purple.buttons .button.active,.ui.inverted.purple.buttons .button:active,.ui.inverted.purple.buttons .button:focus,.ui.inverted.purple.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.purple.button:hover,.ui.inverted.purple.buttons .button:hover{background-color:#cf40ff}.ui.inverted.purple.button:focus,.ui.inverted.purple.buttons .button:focus{background-color:#d24aff}.ui.inverted.purple.active.button,.ui.inverted.purple.buttons .active.button{background-color:#d65aff}.ui.inverted.purple.button:active,.ui.inverted.purple.buttons .button:active{background-color:#cf40ff}.ui.inverted.purple.basic.button,.ui.inverted.purple.basic.buttons .button,.ui.inverted.purple.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.purple.basic.button:hover,.ui.inverted.purple.basic.buttons .button:hover,.ui.inverted.purple.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #cf40ff;color:#dc73ff}.ui.inverted.purple.basic.button:focus,.ui.inverted.purple.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #d24aff;color:#dc73ff}.ui.inverted.purple.basic.active.button,.ui.inverted.purple.basic.buttons .active.button,.ui.inverted.purple.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #d65aff;color:#dc73ff}.ui.inverted.purple.basic.button:active,.ui.inverted.purple.basic.buttons .button:active,.ui.inverted.purple.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #cf40ff;color:#dc73ff}.ui.tertiary.purple.button,.ui.tertiary.purple.buttons .button,.ui.tertiary.purple.buttons .tertiary.button{background:transparent;box-shadow:none;color:#a333c8}.ui.tertiary.purple.button:hover,.ui.tertiary.purple.buttons .button:hover,.ui.tertiary.purple.buttons button:hover{box-shadow:inset 0 -.2em 0 #8a3ea4;color:#8a3ea4}.ui.tertiary.purple.button:focus,.ui.tertiary.purple.buttons .button:focus,.ui.tertiary.purple.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #84339f;color:#84339f}.ui.tertiary.purple.active.button,.ui.tertiary.purple.button:active,.ui.tertiary.purple.buttons .active.button,.ui.tertiary.purple.buttons .button:active,.ui.tertiary.purple.buttons .tertiary.active.button,.ui.tertiary.purple.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #a30dd4;color:#9724be}.ui.pink.button,.ui.pink.buttons .button{background-color:#e03997;background-image:none;color:#fff;text-shadow:none}.ui.pink.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.pink.button:hover,.ui.pink.buttons .button:hover{background-color:#e61a8d;color:#fff;text-shadow:none}.ui.pink.button:focus,.ui.pink.buttons .button:focus{background-color:#e10f85;color:#fff;text-shadow:none}.ui.pink.button:active,.ui.pink.buttons .button:active{background-color:#c71f7e;color:#fff;text-shadow:none}.ui.pink.active.button,.ui.pink.button .active.button:active,.ui.pink.buttons .active.button,.ui.pink.buttons .active.button:active{background-color:#ea158d;color:#fff;text-shadow:none}.ui.basic.pink.button,.ui.basic.pink.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #e03997;color:#e03997}.ui.basic.pink.button:hover,.ui.basic.pink.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #e61a8d;color:#e61a8d}.ui.basic.pink.button:focus,.ui.basic.pink.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #e10f85;color:#e61a8d}.ui.basic.pink.active.button,.ui.basic.pink.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #ea158d;color:#c71f7e}.ui.basic.pink.button:active,.ui.basic.pink.buttons .button:active{box-shadow:inset 0 0 0 1px #c71f7e;color:#c71f7e}.ui.buttons:not(.vertical)>.basic.pink.button:not(:first-child){margin-left:-1px}.ui.inverted.pink.button,.ui.inverted.pink.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #ff8edf;color:#ff8edf}.ui.inverted.pink.button.active,.ui.inverted.pink.button:active,.ui.inverted.pink.button:focus,.ui.inverted.pink.button:hover,.ui.inverted.pink.buttons .button.active,.ui.inverted.pink.buttons .button:active,.ui.inverted.pink.buttons .button:focus,.ui.inverted.pink.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.pink.button:hover,.ui.inverted.pink.buttons .button:hover{background-color:#ff5bd1}.ui.inverted.pink.button:focus,.ui.inverted.pink.buttons .button:focus{background-color:#ff65d3}.ui.inverted.pink.active.button,.ui.inverted.pink.buttons .active.button{background-color:#ff74d8}.ui.inverted.pink.button:active,.ui.inverted.pink.buttons .button:active{background-color:#ff5bd1}.ui.inverted.pink.basic.button,.ui.inverted.pink.basic.buttons .button,.ui.inverted.pink.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.pink.basic.button:hover,.ui.inverted.pink.basic.buttons .button:hover,.ui.inverted.pink.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #ff5bd1;color:#ff8edf}.ui.inverted.pink.basic.button:focus,.ui.inverted.pink.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #ff65d3;color:#ff8edf}.ui.inverted.pink.basic.active.button,.ui.inverted.pink.basic.buttons .active.button,.ui.inverted.pink.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #ff74d8;color:#ff8edf}.ui.inverted.pink.basic.button:active,.ui.inverted.pink.basic.buttons .button:active,.ui.inverted.pink.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #ff5bd1;color:#ff8edf}.ui.tertiary.pink.button,.ui.tertiary.pink.buttons .button,.ui.tertiary.pink.buttons .tertiary.button{background:transparent;box-shadow:none;color:#e03997}.ui.tertiary.pink.button:hover,.ui.tertiary.pink.buttons .button:hover,.ui.tertiary.pink.buttons button:hover{box-shadow:inset 0 -.2em 0 #cc3389;color:#cc3389}.ui.tertiary.pink.button:focus,.ui.tertiary.pink.buttons .button:focus,.ui.tertiary.pink.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #c92782;color:#c92782}.ui.tertiary.pink.active.button,.ui.tertiary.pink.button:active,.ui.tertiary.pink.buttons .active.button,.ui.tertiary.pink.buttons .button:active,.ui.tertiary.pink.buttons .tertiary.active.button,.ui.tertiary.pink.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #ff0090;color:#ea158d}.ui.brown.button,.ui.brown.buttons .button{background-color:#a5673f;background-image:none;color:#fff;text-shadow:none}.ui.brown.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.brown.button:hover,.ui.brown.buttons .button:hover{background-color:#975b33;color:#fff;text-shadow:none}.ui.brown.button:focus,.ui.brown.buttons .button:focus{background-color:#90532b;color:#fff;text-shadow:none}.ui.brown.button:active,.ui.brown.buttons .button:active{background-color:#805031;color:#fff;text-shadow:none}.ui.brown.active.button,.ui.brown.button .active.button:active,.ui.brown.buttons .active.button,.ui.brown.buttons .active.button:active{background-color:#995a31;color:#fff;text-shadow:none}.ui.basic.brown.button,.ui.basic.brown.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #a5673f;color:#a5673f}.ui.basic.brown.button:hover,.ui.basic.brown.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #975b33;color:#975b33}.ui.basic.brown.button:focus,.ui.basic.brown.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #90532b;color:#975b33}.ui.basic.brown.active.button,.ui.basic.brown.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #995a31;color:#805031}.ui.basic.brown.button:active,.ui.basic.brown.buttons .button:active{box-shadow:inset 0 0 0 1px #805031;color:#805031}.ui.buttons:not(.vertical)>.basic.brown.button:not(:first-child){margin-left:-1px}.ui.inverted.brown.button,.ui.inverted.brown.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #d67c1c;color:#d67c1c}.ui.inverted.brown.button.active,.ui.inverted.brown.button:active,.ui.inverted.brown.button:focus,.ui.inverted.brown.button:hover,.ui.inverted.brown.buttons .button.active,.ui.inverted.brown.buttons .button:active,.ui.inverted.brown.buttons .button:focus,.ui.inverted.brown.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.brown.button:hover,.ui.inverted.brown.buttons .button:hover{background-color:#b0620f}.ui.inverted.brown.button:focus,.ui.inverted.brown.buttons .button:focus{background-color:#c16808}.ui.inverted.brown.active.button,.ui.inverted.brown.buttons .active.button{background-color:#cc6f0d}.ui.inverted.brown.button:active,.ui.inverted.brown.buttons .button:active{background-color:#a96216}.ui.inverted.brown.basic.button,.ui.inverted.brown.basic.buttons .button,.ui.inverted.brown.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.brown.basic.button:hover,.ui.inverted.brown.basic.buttons .button:hover,.ui.inverted.brown.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #b0620f;color:#d67c1c}.ui.inverted.brown.basic.button:focus,.ui.inverted.brown.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #c16808;color:#d67c1c}.ui.inverted.brown.basic.active.button,.ui.inverted.brown.basic.buttons .active.button,.ui.inverted.brown.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #cc6f0d;color:#d67c1c}.ui.inverted.brown.basic.button:active,.ui.inverted.brown.basic.buttons .button:active,.ui.inverted.brown.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #a96216;color:#d67c1c}.ui.tertiary.brown.button,.ui.tertiary.brown.buttons .button,.ui.tertiary.brown.buttons .tertiary.button{background:transparent;box-shadow:none;color:#a5673f}.ui.tertiary.brown.button:hover,.ui.tertiary.brown.buttons .button:hover,.ui.tertiary.brown.buttons button:hover{box-shadow:inset 0 -.2em 0 #835f48;color:#835f48}.ui.tertiary.brown.button:focus,.ui.tertiary.brown.buttons .button:focus,.ui.tertiary.brown.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #7d573e;color:#7d573e}.ui.tertiary.brown.active.button,.ui.tertiary.brown.button:active,.ui.tertiary.brown.buttons .active.button,.ui.tertiary.brown.buttons .button:active,.ui.tertiary.brown.buttons .tertiary.active.button,.ui.tertiary.brown.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #ae561d;color:#995a31}.ui.grey.button,.ui.grey.buttons .button{background-color:#767676;background-image:none;color:#fff;text-shadow:none}.ui.grey.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.grey.button:hover,.ui.grey.buttons .button:hover{background-color:#838383;color:#fff;text-shadow:none}.ui.grey.button:focus,.ui.grey.buttons .button:focus{background-color:#8a8a8a;color:#fff;text-shadow:none}.ui.grey.button:active,.ui.grey.buttons .button:active{background-color:#909090;color:#fff;text-shadow:none}.ui.grey.active.button,.ui.grey.button .active.button:active,.ui.grey.buttons .active.button,.ui.grey.buttons .active.button:active{background-color:#696969;color:#fff;text-shadow:none}.ui.basic.grey.button,.ui.basic.grey.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #767676;color:#767676}.ui.basic.grey.button:hover,.ui.basic.grey.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #838383;color:#838383}.ui.basic.grey.button:focus,.ui.basic.grey.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #8a8a8a;color:#838383}.ui.basic.grey.active.button,.ui.basic.grey.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #696969;color:#909090}.ui.basic.grey.button:active,.ui.basic.grey.buttons .button:active{box-shadow:inset 0 0 0 1px #909090;color:#909090}.ui.buttons:not(.vertical)>.basic.grey.button:not(:first-child){margin-left:-1px}.ui.inverted.grey.button,.ui.inverted.grey.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #d4d4d5;color:#fff}.ui.inverted.grey.button.active,.ui.inverted.grey.button:active,.ui.inverted.grey.button:focus,.ui.inverted.grey.button:hover,.ui.inverted.grey.buttons .button.active,.ui.inverted.grey.buttons .button:active,.ui.inverted.grey.buttons .button:focus,.ui.inverted.grey.buttons .button:hover{box-shadow:none;color:rgba(0,0,0,.6)}.ui.inverted.grey.button:hover,.ui.inverted.grey.buttons .button:hover{background-color:#c2c4c5}.ui.inverted.grey.button:focus,.ui.inverted.grey.buttons .button:focus{background-color:#c7c9cb}.ui.inverted.grey.active.button,.ui.inverted.grey.buttons .active.button{background-color:#cfd0d2}.ui.inverted.grey.button:active,.ui.inverted.grey.buttons .button:active{background-color:#c2c4c5}.ui.inverted.grey.basic.button,.ui.inverted.grey.basic.buttons .button,.ui.inverted.grey.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.grey.basic.button:hover,.ui.inverted.grey.basic.buttons .button:hover,.ui.inverted.grey.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #c2c4c5;color:#fff}.ui.inverted.grey.basic.button:focus,.ui.inverted.grey.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #c7c9cb;color:#dcddde}.ui.inverted.grey.basic.active.button,.ui.inverted.grey.basic.buttons .active.button,.ui.inverted.grey.buttons .basic.active.button{box-shadow:inset 0 0 0 2px #cfd0d2;color:#fff}.ui.inverted.grey.basic.button:active,.ui.inverted.grey.basic.buttons .button:active,.ui.inverted.grey.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #c2c4c5;color:#fff}.ui.tertiary.grey.button,.ui.tertiary.grey.buttons .button,.ui.tertiary.grey.buttons .tertiary.button{background:transparent;box-shadow:none;color:#767676}.ui.tertiary.grey.button:hover,.ui.tertiary.grey.buttons .button:hover,.ui.tertiary.grey.buttons button:hover{box-shadow:inset 0 -.2em 0 #838383;color:#838383}.ui.tertiary.grey.button:focus,.ui.tertiary.grey.buttons .button:focus,.ui.tertiary.grey.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #8a8a8a;color:#8a8a8a}.ui.tertiary.grey.active.button,.ui.tertiary.grey.button:active,.ui.tertiary.grey.buttons .active.button,.ui.tertiary.grey.buttons .button:active,.ui.tertiary.grey.buttons .tertiary.active.button,.ui.tertiary.grey.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #7e5454;color:#696969}.ui.black.button,.ui.black.buttons .button{background-color:#1b1c1d;background-image:none;color:#fff;text-shadow:none}.ui.black.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.black.button:hover,.ui.black.buttons .button:hover{background-color:#27292a;color:#fff;text-shadow:none}.ui.black.button:focus,.ui.black.buttons .button:focus{background-color:#2f3032;color:#fff;text-shadow:none}.ui.black.button:active,.ui.black.buttons .button:active{background-color:#343637;color:#fff;text-shadow:none}.ui.black.active.button,.ui.black.button .active.button:active,.ui.black.buttons .active.button,.ui.black.buttons .active.button:active{background-color:#0f0f10;color:#fff;text-shadow:none}.ui.basic.black.button,.ui.basic.black.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #1b1c1d;color:#1b1c1d}.ui.basic.black.button:hover,.ui.basic.black.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #27292a;color:#27292a}.ui.basic.black.button:focus,.ui.basic.black.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #2f3032;color:#27292a}.ui.basic.black.active.button,.ui.basic.black.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #0f0f10;color:#343637}.ui.basic.black.button:active,.ui.basic.black.buttons .button:active{box-shadow:inset 0 0 0 1px #343637;color:#343637}.ui.buttons:not(.vertical)>.basic.black.button:not(:first-child){margin-left:-1px}.ui.inverted.black.button,.ui.inverted.black.buttons .button{background-color:transparent;box-shadow:inset 0 0 0 2px #d4d4d5;color:#fff}.ui.inverted.black.button.active,.ui.inverted.black.button:active,.ui.inverted.black.button:focus,.ui.inverted.black.button:hover,.ui.inverted.black.buttons .button.active,.ui.inverted.black.buttons .button:active,.ui.inverted.black.buttons .button:focus,.ui.inverted.black.buttons .button:hover{box-shadow:none;color:#fff}.ui.inverted.black.active.button,.ui.inverted.black.button:active,.ui.inverted.black.button:focus,.ui.inverted.black.button:hover,.ui.inverted.black.buttons .active.button,.ui.inverted.black.buttons .button:active,.ui.inverted.black.buttons .button:focus,.ui.inverted.black.buttons .button:hover{background-color:#000}.ui.inverted.black.basic.button,.ui.inverted.black.basic.buttons .button,.ui.inverted.black.buttons .basic.button{background-color:transparent;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.5);color:#fff}.ui.inverted.black.basic.button:hover,.ui.inverted.black.basic.buttons .button:hover,.ui.inverted.black.buttons .basic.button:hover{box-shadow:inset 0 0 0 2px #000;color:#fff}.ui.inverted.black.basic.button:focus,.ui.inverted.black.basic.buttons .button:focus{box-shadow:inset 0 0 0 2px #000;color:#545454}.ui.inverted.black.basic.active.button,.ui.inverted.black.basic.button:active,.ui.inverted.black.basic.buttons .active.button,.ui.inverted.black.basic.buttons .button:active,.ui.inverted.black.buttons .basic.active.button,.ui.inverted.black.buttons .basic.button:active{box-shadow:inset 0 0 0 2px #000;color:#fff}.ui.tertiary.black.button,.ui.tertiary.black.buttons .button,.ui.tertiary.black.buttons .tertiary.button{background:transparent;box-shadow:none;color:#1b1c1d}.ui.tertiary.black.button:hover,.ui.tertiary.black.buttons .button:hover,.ui.tertiary.black.buttons button:hover{box-shadow:inset 0 -.2em 0 #8b8f93;color:#8b8f93}.ui.tertiary.black.button:focus,.ui.tertiary.black.buttons .button:focus,.ui.tertiary.black.buttons .tertiary.button:focus{box-shadow:inset 0 -.2em 0 #93969a;color:#93969a}.ui.tertiary.black.active.button,.ui.tertiary.black.button:active,.ui.tertiary.black.buttons .active.button,.ui.tertiary.black.buttons .button:active,.ui.tertiary.black.buttons .tertiary.active.button,.ui.tertiary.black.buttons .tertiary.button:active{box-shadow:inset 0 -.2em 0 #404245;color:#0f0f10}.ui.positive.button,.ui.positive.buttons .button{background-color:#21ba45;background-image:none;color:#fff;text-shadow:none}.ui.positive.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.positive.button:hover,.ui.positive.buttons .button:hover{background-color:#16ab39;color:#fff;text-shadow:none}.ui.positive.button:focus,.ui.positive.buttons .button:focus{background-color:#0ea432;color:#fff;text-shadow:none}.ui.positive.button:active,.ui.positive.buttons .button:active{background-color:#198f35;color:#fff;text-shadow:none}.ui.positive.active.button,.ui.positive.button .active.button:active,.ui.positive.buttons .active.button,.ui.positive.buttons .active.button:active{background-color:#13ae38;color:#fff;text-shadow:none}.ui.basic.positive.button,.ui.basic.positive.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #21ba45;color:#21ba45}.ui.basic.positive.button:hover,.ui.basic.positive.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #16ab39;color:#16ab39}.ui.basic.positive.button:focus,.ui.basic.positive.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #0ea432;color:#16ab39}.ui.basic.positive.active.button,.ui.basic.positive.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #13ae38;color:#198f35}.ui.basic.positive.button:active,.ui.basic.positive.buttons .button:active{box-shadow:inset 0 0 0 1px #198f35;color:#198f35}.ui.buttons:not(.vertical)>.basic.positive.button:not(:first-child){margin-left:-1px}.ui.negative.button,.ui.negative.buttons .button{background-color:#db2828;background-image:none;color:#fff;text-shadow:none}.ui.negative.button{box-shadow:inset 0 0 0 0 rgba(34,36,38,.15)}.ui.negative.button:hover,.ui.negative.buttons .button:hover{background-color:#d01919;color:#fff;text-shadow:none}.ui.negative.button:focus,.ui.negative.buttons .button:focus{background-color:#ca1010;color:#fff;text-shadow:none}.ui.negative.button:active,.ui.negative.buttons .button:active{background-color:#b21e1e;color:#fff;text-shadow:none}.ui.negative.active.button,.ui.negative.button .active.button:active,.ui.negative.buttons .active.button,.ui.negative.buttons .active.button:active{background-color:#d41515;color:#fff;text-shadow:none}.ui.basic.negative.button,.ui.basic.negative.buttons .button{background:transparent;box-shadow:inset 0 0 0 1px #db2828;color:#db2828}.ui.basic.negative.button:hover,.ui.basic.negative.buttons .button:hover{background:transparent;box-shadow:inset 0 0 0 1px #d01919;color:#d01919}.ui.basic.negative.button:focus,.ui.basic.negative.buttons .button:focus{background:transparent;box-shadow:inset 0 0 0 1px #ca1010;color:#d01919}.ui.basic.negative.active.button,.ui.basic.negative.buttons .active.button{background:transparent;box-shadow:inset 0 0 0 1px #d41515;color:#b21e1e}.ui.basic.negative.button:active,.ui.basic.negative.buttons .button:active{box-shadow:inset 0 0 0 1px #b21e1e;color:#b21e1e}.ui.buttons:not(.vertical)>.basic.negative.button:not(:first-child){margin-left:-1px}.ui.buttons{display:inline-flex;flex-direction:row;font-size:0;margin:0 .25em 0 0;vertical-align:baseline}.ui.buttons:not(.basic):not(.inverted){box-shadow:none}.ui.buttons:after{clear:both;content:".";display:block;height:0;visibility:hidden}.ui.buttons .button{border-radius:0;flex:1 0 auto;margin:0}.ui.buttons:not(.basic):not(.inverted)>.button:not(.basic):not(.inverted){box-shadow:inset 0 0 0 1px transparent,inset 0 0 0 0 rgba(34,36,38,.15)}.ui.buttons .button:first-child{border-bottom-left-radius:.28571429rem;border-left:none;border-top-left-radius:.28571429rem;margin-left:0}.ui.buttons .button:last-child{border-bottom-right-radius:.28571429rem;border-top-right-radius:.28571429rem}.ui.vertical.buttons{display:inline-flex;flex-direction:column}.ui.vertical.buttons .button{border-radius:0;box-shadow:none;display:block;float:none;margin:0;width:100%}.ui.vertical.buttons .button:first-child{border-top-left-radius:.28571429rem;border-top-right-radius:.28571429rem}.ui.vertical.buttons .button:last-child{border-bottom-left-radius:.28571429rem;border-bottom-right-radius:.28571429rem;margin-bottom:0}.ui.vertical.buttons .button:only-child{border-radius:.28571429rem}
/*!
 * # Fomantic-UI - Container
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.container{display:block;max-width:100%}@media only screen and (max-width:767.98px){.ui.ui.ui.container:not(.fluid){margin-left:1em;margin-right:1em;width:auto}.ui.ui.grid.container,.ui.ui.relaxed.grid.container,.ui.ui.very.relaxed.grid.container{width:auto}}@media only screen and (min-width:768px) and (max-width:991.98px){.ui.ui.ui.container:not(.fluid){margin-left:auto;margin-right:auto;width:723px}.ui.ui.grid.container{width:calc(723px + 2rem)}.ui.ui.relaxed.grid.container{width:calc(723px + 3rem)}.ui.ui.very.relaxed.grid.container{width:calc(723px + 5rem)}}@media only screen and (min-width:992px) and (max-width:1199.98px){.ui.ui.ui.container:not(.fluid){margin-left:auto;margin-right:auto;width:933px}.ui.ui.grid.container{width:calc(933px + 2rem)}.ui.ui.relaxed.grid.container{width:calc(933px + 3rem)}.ui.ui.very.relaxed.grid.container{width:calc(933px + 5rem)}}@media only screen and (min-width:1200px){.ui.ui.ui.container:not(.fluid){margin-left:auto;margin-right:auto;width:1127px}.ui.ui.grid.container{width:calc(1127px + 2rem)}.ui.ui.relaxed.grid.container{width:calc(1127px + 3rem)}.ui.ui.very.relaxed.grid.container{width:calc(1127px + 5rem)}}.ui.text.container{font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1.14285714rem;line-height:1.5;max-width:700px}.ui.fluid.container{width:100%}.ui[class*="left aligned"].container{text-align:left}.ui[class*="center aligned"].container{text-align:center}.ui[class*="right aligned"].container{text-align:right}.ui.justified.container{hyphens:auto;text-align:justify}
/*!
 * # Fomantic-UI - Divider
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.divider{-webkit-tap-highlight-color:rgba(0,0,0,0);color:rgba(0,0,0,.85);font-weight:700;height:0;letter-spacing:.05em;line-height:1;margin:1rem 0;text-transform:uppercase;user-select:none}.ui.divider:not(.vertical):not(.horizontal){border-bottom:1px solid hsla(0,0%,100%,.1);border-top:1px solid rgba(34,36,38,.15)}.ui.grid>.column+.divider,.ui.grid>.row>.column+.divider{left:auto}.ui.horizontal.divider{display:table;height:auto;line-height:1;margin:"";text-align:center;white-space:nowrap}.ui.horizontal.divider:after,.ui.horizontal.divider:before{background-repeat:no-repeat;content:"";display:table-cell;position:relative;top:50%;width:50%}.ui.horizontal.divider:before{background-position:right 1em top 50%}.ui.horizontal.divider:after{background-position:left 1em top 50%}.ui.vertical.divider{height:50%;left:50%;line-height:0;margin:0;padding:0;position:absolute;text-align:center;top:50%;transform:translateX(-50%);width:auto;z-index:2}.ui.vertical.divider:after,.ui.vertical.divider:before{border-left:1px solid rgba(34,36,38,.15);border-right:1px solid hsla(0,0%,100%,.1);content:"";height:calc(100% - 1rem);left:50%;position:absolute;width:0;z-index:3}.ui.vertical.divider:before{top:-100%}.ui.vertical.divider:after{bottom:0;top:auto}@media only screen and (max-width:767.98px){.ui.grid .stackable.row .ui.vertical.divider,.ui.stackable.grid .ui.vertical.divider{display:table;height:auto;left:0;line-height:1;margin:"";overflow:hidden;position:static;text-align:center;top:0;transform:none;white-space:nowrap}.ui.grid .stackable.row .ui.vertical.divider:after,.ui.grid .stackable.row .ui.vertical.divider:before,.ui.stackable.grid .ui.vertical.divider:after,.ui.stackable.grid .ui.vertical.divider:before{background-repeat:no-repeat;border-left:none;border-right:none;content:"";display:table-cell;left:0;position:relative;top:50%;width:50%}.ui.grid .stackable.row .ui.vertical.divider:before,.ui.stackable.grid .ui.vertical.divider:before{background-position:right 1em top 50%}.ui.grid .stackable.row .ui.vertical.divider:after,.ui.stackable.grid .ui.vertical.divider:after{background-position:left 1em top 50%}}.ui.divider>.icon{font-size:1rem;height:1em;margin:0;vertical-align:middle}.ui.horizontal.divider[class*="left aligned"]:before{display:none}.ui.horizontal.divider[class*="left aligned"]:after,.ui.horizontal.divider[class*="right aligned"]:before{width:100%}.ui.horizontal.divider[class*="right aligned"]:after{display:none}.ui.hidden.divider{border-color:transparent!important}.ui.hidden.divider:after,.ui.hidden.divider:before{display:none}.ui.divider.inverted,.ui.horizontal.inverted.divider,.ui.vertical.inverted.divider{color:#fff}.ui.divider.inverted,.ui.divider.inverted:after,.ui.divider.inverted:before{border-color:rgba(34,36,38,.15) hsla(0,0%,100%,.15) hsla(0,0%,100%,.15) rgba(34,36,38,.15)!important}.ui.fitted.divider{margin:0}.ui.clearing.divider{clear:both}.ui.section.divider{margin-bottom:2rem;margin-top:2rem}.ui.divider{font-size:1rem}.ui.horizontal.divider:after,.ui.horizontal.divider:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAACCAYAAACuTHuKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1OThBRDY4OUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1OThBRDY4QUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjU5OEFENjg3Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU5OEFENjg4Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VU513gAAADVJREFUeNrs0DENACAQBDBIWLGBJQby/mUcJn5sJXQmOQMAAAAAAJqt+2prAAAAAACg2xdgANk6BEVuJgyMAAAAAElFTkSuQmCC)}@media only screen and (max-width:767px){.ui.grid .stackable.row .ui.vertical.divider:after,.ui.grid .stackable.row .ui.vertical.divider:before,.ui.stackable.grid .ui.vertical.divider:after,.ui.stackable.grid .ui.vertical.divider:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAACCAYAAACuTHuKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1OThBRDY4OUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1OThBRDY4QUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjU5OEFENjg3Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU5OEFENjg4Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VU513gAAADVJREFUeNrs0DENACAQBDBIWLGBJQby/mUcJn5sJXQmOQMAAAAAAJqt+2prAAAAAACg2xdgANk6BEVuJgyMAAAAAElFTkSuQmCC)}}
/*!
 * # Fomantic-UI - Flag
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */i.flag:not(.icon){speak:none;-webkit-font-smoothing:antialiased;backface-visibility:hidden;line-height:11px;margin:0 .5em 0 0;text-decoration:inherit;vertical-align:baseline}i.flag:not(.icon),i.flag:not(.icon):before{display:inline-block;height:11px;width:16px}i.flag:not(.icon):before{background:url(/5473924c626323dd55b0.png) no-repeat -108px -1976px;content:""}i.flag.ad:before,i.flag.andorra:before{background-position:0 0}i.flag.ae:before,i.flag.uae:before,i.flag.united.arab.emirates:before{background-position:0 -26px}i.flag.af:before,i.flag.afghanistan:before{background-position:0 -52px}i.flag.ag:before,i.flag.antigua:before{background-position:0 -78px}i.flag.ai:before,i.flag.anguilla:before{background-position:0 -104px}i.flag.al:before,i.flag.albania:before{background-position:0 -130px}i.flag.am:before,i.flag.armenia:before{background-position:0 -156px}i.flag.an:before,i.flag.netherlands.antilles:before{background-position:0 -182px}i.flag.angola:before,i.flag.ao:before{background-position:0 -208px}i.flag.ar:before,i.flag.argentina:before{background-position:0 -234px}i.flag.american.samoa:before,i.flag.as:before{background-position:0 -260px}i.flag.at:before,i.flag.austria:before{background-position:0 -286px}i.flag.au:before,i.flag.australia:before{background-position:0 -312px}i.flag.aruba:before,i.flag.aw:before{background-position:0 -338px}i.flag.aland.islands:before,i.flag.ax:before{background-position:0 -364px}i.flag.az:before,i.flag.azerbaijan:before{background-position:0 -390px}i.flag.ba:before,i.flag.bosnia:before{background-position:0 -416px}i.flag.barbados:before,i.flag.bb:before{background-position:0 -442px}i.flag.bangladesh:before,i.flag.bd:before{background-position:0 -468px}i.flag.be:before,i.flag.belgium:before{background-position:0 -494px}i.flag.bf:before,i.flag.burkina.faso:before{background-position:0 -520px}i.flag.bg:before,i.flag.bulgaria:before{background-position:0 -546px}i.flag.bahrain:before,i.flag.bh:before{background-position:0 -572px}i.flag.bi:before,i.flag.burundi:before{background-position:0 -598px}i.flag.benin:before,i.flag.bj:before{background-position:0 -624px}i.flag.bermuda:before,i.flag.bm:before{background-position:0 -650px}i.flag.bn:before,i.flag.brunei:before{background-position:0 -676px}i.flag.bo:before,i.flag.bolivia:before{background-position:0 -702px}i.flag.br:before,i.flag.brazil:before{background-position:0 -728px}i.flag.bahamas:before,i.flag.bs:before{background-position:0 -754px}i.flag.bhutan:before,i.flag.bt:before{background-position:0 -780px}i.flag.bouvet.island:before,i.flag.bv:before{background-position:0 -806px}i.flag.botswana:before,i.flag.bw:before{background-position:0 -832px}i.flag.belarus:before,i.flag.by:before{background-position:0 -858px}i.flag.belize:before,i.flag.bz:before{background-position:0 -884px}i.flag.ca:before,i.flag.canada:before{background-position:0 -910px}i.flag.cc:before,i.flag.cocos.islands:before{background-position:0 -962px}i.flag.cd:before,i.flag.congo:before{background-position:0 -988px}i.flag.central.african.republic:before,i.flag.cf:before{background-position:0 -1014px}i.flag.cg:before,i.flag.congo.brazzaville:before{background-position:0 -1040px}i.flag.ch:before,i.flag.switzerland:before{background-position:0 -1066px}i.flag.ci:before,i.flag.cote.divoire:before{background-position:0 -1092px}i.flag.ck:before,i.flag.cook.islands:before{background-position:0 -1118px}i.flag.chile:before,i.flag.cl:before{background-position:0 -1144px}i.flag.cameroon:before,i.flag.cm:before{background-position:0 -1170px}i.flag.china:before,i.flag.cn:before{background-position:0 -1196px}i.flag.co:before,i.flag.colombia:before{background-position:0 -1222px}i.flag.costa.rica:before,i.flag.cr:before{background-position:0 -1248px}i.flag.cs:before,i.flag.serbia:before{background-position:0 -1274px}i.flag.cu:before,i.flag.cuba:before{background-position:0 -1300px}i.flag.cape.verde:before,i.flag.cv:before{background-position:0 -1326px}i.flag.christmas.island:before,i.flag.cx:before{background-position:0 -1352px}i.flag.cy:before,i.flag.cyprus:before{background-position:0 -1378px}i.flag.cz:before,i.flag.czech.republic:before{background-position:0 -1404px}i.flag.de:before,i.flag.germany:before{background-position:0 -1430px}i.flag.dj:before,i.flag.djibouti:before{background-position:0 -1456px}i.flag.denmark:before,i.flag.dk:before{background-position:0 -1482px}i.flag.dm:before,i.flag.dominica:before{background-position:0 -1508px}i.flag.do:before,i.flag.dominican.republic:before{background-position:0 -1534px}i.flag.algeria:before,i.flag.dz:before{background-position:0 -1560px}i.flag.ec:before,i.flag.ecuador:before{background-position:0 -1586px}i.flag.ee:before,i.flag.estonia:before{background-position:0 -1612px}i.flag.eg:before,i.flag.egypt:before{background-position:0 -1638px}i.flag.eh:before,i.flag.western.sahara:before{background-position:0 -1664px}i.flag.england:before,i.flag.gb.eng:before{background-position:0 -1690px}i.flag.er:before,i.flag.eritrea:before{background-position:0 -1716px}i.flag.es:before,i.flag.spain:before{background-position:0 -1742px}i.flag.et:before,i.flag.ethiopia:before{background-position:0 -1768px}i.flag.eu:before,i.flag.european.union:before{background-position:0 -1794px}i.flag.fi:before,i.flag.finland:before{background-position:0 -1846px}i.flag.fiji:before,i.flag.fj:before{background-position:0 -1872px}i.flag.falkland.islands:before,i.flag.fk:before{background-position:0 -1898px}i.flag.fm:before,i.flag.micronesia:before{background-position:0 -1924px}i.flag.faroe.islands:before,i.flag.fo:before{background-position:0 -1950px}i.flag.fr:before,i.flag.france:before{background-position:0 -1976px}i.flag.ga:before,i.flag.gabon:before{background-position:-36px 0}i.flag.gb:before,i.flag.uk:before,i.flag.united.kingdom:before{background-position:-36px -26px}i.flag.gd:before,i.flag.grenada:before{background-position:-36px -52px}i.flag.ge:before,i.flag.georgia:before{background-position:-36px -78px}i.flag.french.guiana:before,i.flag.gf:before{background-position:-36px -104px}i.flag.gh:before,i.flag.ghana:before{background-position:-36px -130px}i.flag.gi:before,i.flag.gibraltar:before{background-position:-36px -156px}i.flag.gl:before,i.flag.greenland:before{background-position:-36px -182px}i.flag.gambia:before,i.flag.gm:before{background-position:-36px -208px}i.flag.gn:before,i.flag.guinea:before{background-position:-36px -234px}i.flag.gp:before,i.flag.guadeloupe:before{background-position:-36px -260px}i.flag.equatorial.guinea:before,i.flag.gq:before{background-position:-36px -286px}i.flag.gr:before,i.flag.greece:before{background-position:-36px -312px}i.flag.gs:before,i.flag.sandwich.islands:before{background-position:-36px -338px}i.flag.gt:before,i.flag.guatemala:before{background-position:-36px -364px}i.flag.gu:before,i.flag.guam:before{background-position:-36px -390px}i.flag.guinea-bissau:before,i.flag.gw:before{background-position:-36px -416px}i.flag.guyana:before,i.flag.gy:before{background-position:-36px -442px}i.flag.hk:before,i.flag.hong.kong:before{background-position:-36px -468px}i.flag.heard.island:before,i.flag.hm:before{background-position:-36px -494px}i.flag.hn:before,i.flag.honduras:before{background-position:-36px -520px}i.flag.croatia:before,i.flag.hr:before{background-position:-36px -546px}i.flag.haiti:before,i.flag.ht:before{background-position:-36px -572px}i.flag.hu:before,i.flag.hungary:before{background-position:-36px -598px}i.flag.id:before,i.flag.indonesia:before{background-position:-36px -624px}i.flag.ie:before,i.flag.ireland:before{background-position:-36px -650px}i.flag.il:before,i.flag.israel:before{background-position:-36px -676px}i.flag.in:before,i.flag.india:before{background-position:-36px -702px}i.flag.indian.ocean.territory:before,i.flag.io:before{background-position:-36px -728px}i.flag.iq:before,i.flag.iraq:before{background-position:-36px -754px}i.flag.ir:before,i.flag.iran:before{background-position:-36px -780px}i.flag.iceland:before,i.flag.is:before{background-position:-36px -806px}i.flag.it:before,i.flag.italy:before{background-position:-36px -832px}i.flag.jamaica:before,i.flag.jm:before{background-position:-36px -858px}i.flag.jo:before,i.flag.jordan:before{background-position:-36px -884px}i.flag.japan:before,i.flag.jp:before{background-position:-36px -910px}i.flag.ke:before,i.flag.kenya:before{background-position:-36px -936px}i.flag.kg:before,i.flag.kyrgyzstan:before{background-position:-36px -962px}i.flag.cambodia:before,i.flag.kh:before{background-position:-36px -988px}i.flag.ki:before,i.flag.kiribati:before{background-position:-36px -1014px}i.flag.comoros:before,i.flag.km:before{background-position:-36px -1040px}i.flag.kn:before,i.flag.saint.kitts.and.nevis:before{background-position:-36px -1066px}i.flag.kp:before,i.flag.north.korea:before{background-position:-36px -1092px}i.flag.kr:before,i.flag.south.korea:before{background-position:-36px -1118px}i.flag.kuwait:before,i.flag.kw:before{background-position:-36px -1144px}i.flag.cayman.islands:before,i.flag.ky:before{background-position:-36px -1170px}i.flag.kazakhstan:before,i.flag.kz:before{background-position:-36px -1196px}i.flag.la:before,i.flag.laos:before{background-position:-36px -1222px}i.flag.lb:before,i.flag.lebanon:before{background-position:-36px -1248px}i.flag.lc:before,i.flag.saint.lucia:before{background-position:-36px -1274px}i.flag.li:before,i.flag.liechtenstein:before{background-position:-36px -1300px}i.flag.lk:before,i.flag.sri.lanka:before{background-position:-36px -1326px}i.flag.liberia:before,i.flag.lr:before{background-position:-36px -1352px}i.flag.lesotho:before,i.flag.ls:before{background-position:-36px -1378px}i.flag.lithuania:before,i.flag.lt:before{background-position:-36px -1404px}i.flag.lu:before,i.flag.luxembourg:before{background-position:-36px -1430px}i.flag.latvia:before,i.flag.lv:before{background-position:-36px -1456px}i.flag.libya:before,i.flag.ly:before{background-position:-36px -1482px}i.flag.ma:before,i.flag.morocco:before{background-position:-36px -1508px}i.flag.mc:before,i.flag.monaco:before{background-position:-36px -1534px}i.flag.md:before,i.flag.moldova:before{background-position:-36px -1560px}i.flag.me:before,i.flag.montenegro:before{background-position:-36px -1586px}i.flag.madagascar:before,i.flag.mg:before{background-position:-36px -1613px}i.flag.marshall.islands:before,i.flag.mh:before{background-position:-36px -1639px}i.flag.macedonia:before,i.flag.mk:before{background-position:-36px -1665px}i.flag.mali:before,i.flag.ml:before{background-position:-36px -1691px}i.flag.burma:before,i.flag.mm:before,i.flag.myanmar:before{background-position:-36px -1717px}i.flag.mn:before,i.flag.mongolia:before{background-position:-36px -1743px}i.flag.macau:before,i.flag.mo:before{background-position:-36px -1769px}i.flag.mp:before,i.flag.northern.mariana.islands:before{background-position:-36px -1795px}i.flag.martinique:before,i.flag.mq:before{background-position:-36px -1821px}i.flag.mauritania:before,i.flag.mr:before{background-position:-36px -1847px}i.flag.montserrat:before,i.flag.ms:before{background-position:-36px -1873px}i.flag.malta:before,i.flag.mt:before{background-position:-36px -1899px}i.flag.mauritius:before,i.flag.mu:before{background-position:-36px -1925px}i.flag.maldives:before,i.flag.mv:before{background-position:-36px -1951px}i.flag.malawi:before,i.flag.mw:before{background-position:-36px -1977px}i.flag.mexico:before,i.flag.mx:before{background-position:-72px 0}i.flag.malaysia:before,i.flag.my:before{background-position:-72px -26px}i.flag.mozambique:before,i.flag.mz:before{background-position:-72px -52px}i.flag.na:before,i.flag.namibia:before{background-position:-72px -78px}i.flag.nc:before,i.flag.new.caledonia:before{background-position:-72px -104px}i.flag.ne:before,i.flag.niger:before{background-position:-72px -130px}i.flag.nf:before,i.flag.norfolk.island:before{background-position:-72px -156px}i.flag.ng:before,i.flag.nigeria:before{background-position:-72px -182px}i.flag.ni:before,i.flag.nicaragua:before{background-position:-72px -208px}i.flag.netherlands:before,i.flag.nl:before{background-position:-72px -234px}i.flag.no:before,i.flag.norway:before{background-position:-72px -260px}i.flag.nepal:before,i.flag.np:before{background-position:-72px -286px}i.flag.nauru:before,i.flag.nr:before{background-position:-72px -312px}i.flag.niue:before,i.flag.nu:before{background-position:-72px -338px}i.flag.new.zealand:before,i.flag.nz:before{background-position:-72px -364px}i.flag.om:before,i.flag.oman:before{background-position:-72px -390px}i.flag.pa:before,i.flag.panama:before{background-position:-72px -416px}i.flag.pe:before,i.flag.peru:before{background-position:-72px -442px}i.flag.french.polynesia:before,i.flag.pf:before{background-position:-72px -468px}i.flag.new.guinea:before,i.flag.pg:before{background-position:-72px -494px}i.flag.ph:before,i.flag.philippines:before{background-position:-72px -520px}i.flag.pakistan:before,i.flag.pk:before{background-position:-72px -546px}i.flag.pl:before,i.flag.poland:before{background-position:-72px -572px}i.flag.pm:before,i.flag.saint.pierre:before{background-position:-72px -598px}i.flag.pitcairn.islands:before,i.flag.pn:before{background-position:-72px -624px}i.flag.pr:before,i.flag.puerto.rico:before{background-position:-72px -650px}i.flag.palestine:before,i.flag.ps:before{background-position:-72px -676px}i.flag.portugal:before,i.flag.pt:before{background-position:-72px -702px}i.flag.palau:before,i.flag.pw:before{background-position:-72px -728px}i.flag.paraguay:before,i.flag.py:before{background-position:-72px -754px}i.flag.qa:before,i.flag.qatar:before{background-position:-72px -780px}i.flag.re:before,i.flag.reunion:before{background-position:-72px -806px}i.flag.ro:before,i.flag.romania:before{background-position:-72px -832px}i.flag.rs:before,i.flag.serbia:before{background-position:-72px -858px}i.flag.ru:before,i.flag.russia:before{background-position:-72px -884px}i.flag.rw:before,i.flag.rwanda:before{background-position:-72px -910px}i.flag.sa:before,i.flag.saudi.arabia:before{background-position:-72px -936px}i.flag.sb:before,i.flag.solomon.islands:before{background-position:-72px -962px}i.flag.sc:before,i.flag.seychelles:before{background-position:-72px -988px}i.flag.gb.sct:before,i.flag.scotland:before{background-position:-72px -1014px}i.flag.sd:before,i.flag.sudan:before{background-position:-72px -1040px}i.flag.se:before,i.flag.sweden:before{background-position:-72px -1066px}i.flag.sg:before,i.flag.singapore:before{background-position:-72px -1092px}i.flag.saint.helena:before,i.flag.sh:before{background-position:-72px -1118px}i.flag.si:before,i.flag.slovenia:before{background-position:-72px -1144px}i.flag.jan.mayen:before,i.flag.sj:before,i.flag.svalbard:before{background-position:-72px -1170px}i.flag.sk:before,i.flag.slovakia:before{background-position:-72px -1196px}i.flag.sierra.leone:before,i.flag.sl:before{background-position:-72px -1222px}i.flag.san.marino:before,i.flag.sm:before{background-position:-72px -1248px}i.flag.senegal:before,i.flag.sn:before{background-position:-72px -1274px}i.flag.so:before,i.flag.somalia:before{background-position:-72px -1300px}i.flag.sr:before,i.flag.suriname:before{background-position:-72px -1326px}i.flag.sao.tome:before,i.flag.st:before{background-position:-72px -1352px}i.flag.el.salvador:before,i.flag.sv:before{background-position:-72px -1378px}i.flag.sy:before,i.flag.syria:before{background-position:-72px -1404px}i.flag.swaziland:before,i.flag.sz:before{background-position:-72px -1430px}i.flag.caicos.islands:before,i.flag.tc:before{background-position:-72px -1456px}i.flag.chad:before,i.flag.td:before{background-position:-72px -1482px}i.flag.french.territories:before,i.flag.tf:before{background-position:-72px -1508px}i.flag.tg:before,i.flag.togo:before{background-position:-72px -1534px}i.flag.th:before,i.flag.thailand:before{background-position:-72px -1560px}i.flag.tajikistan:before,i.flag.tj:before{background-position:-72px -1586px}i.flag.tk:before,i.flag.tokelau:before{background-position:-72px -1612px}i.flag.timorleste:before,i.flag.tl:before{background-position:-72px -1638px}i.flag.tm:before,i.flag.turkmenistan:before{background-position:-72px -1664px}i.flag.tn:before,i.flag.tunisia:before{background-position:-72px -1690px}i.flag.to:before,i.flag.tonga:before{background-position:-72px -1716px}i.flag.tr:before,i.flag.turkey:before{background-position:-72px -1742px}i.flag.trinidad:before,i.flag.tt:before{background-position:-72px -1768px}i.flag.tuvalu:before,i.flag.tv:before{background-position:-72px -1794px}i.flag.taiwan:before,i.flag.tw:before{background-position:-72px -1820px}i.flag.tanzania:before,i.flag.tz:before{background-position:-72px -1846px}i.flag.ua:before,i.flag.ukraine:before{background-position:-72px -1872px}i.flag.ug:before,i.flag.uganda:before{background-position:-72px -1898px}i.flag.um:before,i.flag.us.minor.islands:before{background-position:-72px -1924px}i.flag.america:before,i.flag.united.states:before,i.flag.us:before{background-position:-72px -1950px}i.flag.uruguay:before,i.flag.uy:before{background-position:-72px -1976px}i.flag.uz:before,i.flag.uzbekistan:before{background-position:-108px 0}i.flag.va:before,i.flag.vatican.city:before{background-position:-108px -26px}i.flag.saint.vincent:before,i.flag.vc:before{background-position:-108px -52px}i.flag.ve:before,i.flag.venezuela:before{background-position:-108px -78px}i.flag.british.virgin.islands:before,i.flag.vg:before{background-position:-108px -104px}i.flag.us.virgin.islands:before,i.flag.vi:before{background-position:-108px -130px}i.flag.vietnam:before,i.flag.vn:before{background-position:-108px -156px}i.flag.vanuatu:before,i.flag.vu:before{background-position:-108px -182px}i.flag.gb.wls:before,i.flag.wales:before{background-position:-108px -208px}i.flag.wallis.and.futuna:before,i.flag.wf:before{background-position:-108px -234px}i.flag.samoa:before,i.flag.ws:before{background-position:-108px -260px}i.flag.ye:before,i.flag.yemen:before{background-position:-108px -286px}i.flag.mayotte:before,i.flag.yt:before{background-position:-108px -312px}i.flag.south.africa:before,i.flag.za:before{background-position:-108px -338px}i.flag.zambia:before,i.flag.zm:before{background-position:-108px -364px}i.flag.zimbabwe:before,i.flag.zw:before{background-position:-108px -390px}
/*!
 * # Fomantic-UI - Header
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.header{border:none;color:rgba(0,0,0,.87);font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-weight:700;line-height:1.28571429em;margin:calc(2rem - .14286em) 0 1rem;padding:0;text-transform:none}.ui.header:first-child{margin-top:-.14285714em}.ui.header:last-child{margin-bottom:0}.ui.header .sub.header{color:rgba(0,0,0,.6);display:block;font-weight:400;line-height:1.2em;margin:0;padding:0}.ui.header>.icon{display:table-cell;font-size:1.5em;opacity:1;padding-top:0;vertical-align:middle}.ui.header .icon:only-child{display:inline-block;margin-right:.75rem;padding:0}.ui.header>.image:not(.icon),.ui.header>img{display:inline-block;height:auto;margin-top:.14285714em;vertical-align:middle;width:2.5em}.ui.header>.image:not(.icon):only-child,.ui.header>img:only-child{margin-right:.75rem}.ui.header .content{display:inline-block;vertical-align:top}.ui.header>.icon+.content,.ui.header>.image+.content,.ui.header>img+.content{padding-left:.75rem;vertical-align:middle}.ui.header>.icon+.content{display:table-cell}.ui.header .ui.label{font-size:"";margin-left:.5rem;vertical-align:middle}.ui.header+p{margin-top:0}h1.ui.header{font-size:2rem}h2.ui.header{font-size:1.71428571rem}h3.ui.header{font-size:1.28571429rem}h4.ui.header{font-size:1.07142857rem}h5.ui.header{font-size:1rem}h1.ui.header .sub.header,h2.ui.header .sub.header{font-size:1.14285714rem}h3.ui.header .sub.header,h4.ui.header .sub.header{font-size:1rem}h5.ui.header .sub.header{font-size:.92857143rem}.ui.huge.header{font-size:2em;min-height:1em}.ui.large.header{font-size:1.71428571em}.ui.medium.header{font-size:1.28571429em}.ui.small.header{font-size:1.07142857em}.ui.tiny.header{font-size:1em}.ui.huge.header .sub.header,.ui.large.header .sub.header{font-size:1.14285714rem}.ui.header .sub.header,.ui.small.header .sub.header{font-size:1rem}.ui.tiny.header .sub.header{font-size:.92857143rem}.ui.sub.header{color:"";font-size:.85714286em;font-weight:700;margin-bottom:.14285714rem;padding:0;text-transform:uppercase}.ui.small.sub.header{font-size:.78571429em}.ui.large.sub.header{font-size:.92857143em}.ui.huge.sub.header{font-size:1em}.ui.icon.header{display:inline-block;margin:2rem 0 1rem;text-align:center}.ui.icon.header:after{clear:both;content:"";display:block;height:0;visibility:hidden}.ui.icon.header:first-child{margin-top:0}.ui.icon.header .icon{display:block;float:none;font-size:3em;height:auto;line-height:1;margin:0 auto .5rem;opacity:1;padding:0;width:auto}.ui.icon.header .corner.icon{font-size:1.35em}.ui.icon.header .content{display:block;padding:0}.ui.icon.header .circular.icon,.ui.icon.header .square.icon{font-size:2em}.ui.block.icon.header .icon{margin-bottom:0}.ui.icon.header.aligned{display:block;margin-left:auto;margin-right:auto}.ui.disabled.header{opacity:.45}.ui.inverted.header{color:#fff}.ui.inverted.header .sub.header{color:hsla(0,0%,100%,.8)}.ui.inverted.attached.header{background:#1b1c1d;border-color:transparent;box-shadow:none}.ui.inverted.block.header{background:#545454 linear-gradient(transparent,rgba(0,0,0,.05));border-bottom:none;box-shadow:none}.ui.primary.header{color:#2185d0}a.ui.primary.header:hover{color:#1678c2}.ui.primary.dividing.header{border-bottom:2px solid #2185d0}.ui.inverted.primary.header.header.header{color:#54c8ff}a.ui.inverted.primary.header.header.header:hover{color:#21b8ff}.ui.inverted.primary.dividing.header{border-bottom:2px solid #54c8ff}.ui.secondary.header{color:#1b1c1d}a.ui.secondary.header:hover{color:#27292a}.ui.secondary.dividing.header{border-bottom:2px solid #1b1c1d}.ui.inverted.secondary.header.header.header{color:#545454}a.ui.inverted.secondary.header.header.header:hover{color:#6e6e6e}.ui.inverted.secondary.dividing.header{border-bottom:2px solid #545454}.ui.red.header{color:#db2828}a.ui.red.header:hover{color:#d01919}.ui.red.dividing.header{border-bottom:2px solid #db2828}.ui.inverted.red.header.header.header{color:#ff695e}a.ui.inverted.red.header.header.header:hover{color:#ff392b}.ui.inverted.red.dividing.header{border-bottom:2px solid #ff695e}.ui.orange.header{color:#f2711c}a.ui.orange.header:hover{color:#f26202}.ui.orange.dividing.header{border-bottom:2px solid #f2711c}.ui.inverted.orange.header.header.header{color:#ff851b}a.ui.inverted.orange.header.header.header:hover{color:#e76b00}.ui.inverted.orange.dividing.header{border-bottom:2px solid #ff851b}.ui.yellow.header{color:#fbbd08}a.ui.yellow.header:hover{color:#eaae00}.ui.yellow.dividing.header{border-bottom:2px solid #fbbd08}.ui.inverted.yellow.header.header.header{color:#ffe21f}a.ui.inverted.yellow.header.header.header:hover{color:#ebcd00}.ui.inverted.yellow.dividing.header{border-bottom:2px solid #ffe21f}.ui.olive.header{color:#b5cc18}a.ui.olive.header:hover{color:#a7bd0d}.ui.olive.dividing.header{border-bottom:2px solid #b5cc18}.ui.inverted.olive.header.header.header{color:#d9e778}a.ui.inverted.olive.header.header.header:hover{color:#d2e745}.ui.inverted.olive.dividing.header{border-bottom:2px solid #d9e778}.ui.green.header{color:#21ba45}a.ui.green.header:hover{color:#16ab39}.ui.green.dividing.header{border-bottom:2px solid #21ba45}.ui.inverted.green.header.header.header{color:#2ecc40}a.ui.inverted.green.header.header.header:hover{color:#1ea92e}.ui.inverted.green.dividing.header{border-bottom:2px solid #2ecc40}.ui.teal.header{color:#00b5ad}a.ui.teal.header:hover{color:#009c95}.ui.teal.dividing.header{border-bottom:2px solid #00b5ad}.ui.inverted.teal.header.header.header{color:#6dffff}a.ui.inverted.teal.header.header.header:hover{color:#3affff}.ui.inverted.teal.dividing.header{border-bottom:2px solid #6dffff}.ui.blue.header{color:#2185d0}a.ui.blue.header:hover{color:#1678c2}.ui.blue.dividing.header{border-bottom:2px solid #2185d0}.ui.inverted.blue.header.header.header{color:#54c8ff}a.ui.inverted.blue.header.header.header:hover{color:#21b8ff}.ui.inverted.blue.dividing.header{border-bottom:2px solid #54c8ff}.ui.violet.header{color:#6435c9}a.ui.violet.header:hover{color:#5829bb}.ui.violet.dividing.header{border-bottom:2px solid #6435c9}.ui.inverted.violet.header.header.header{color:#a291fb}a.ui.inverted.violet.header.header.header:hover{color:#745aff}.ui.inverted.violet.dividing.header{border-bottom:2px solid #a291fb}.ui.purple.header{color:#a333c8}a.ui.purple.header:hover{color:#9627ba}.ui.purple.dividing.header{border-bottom:2px solid #a333c8}.ui.inverted.purple.header.header.header{color:#dc73ff}a.ui.inverted.purple.header.header.header:hover{color:#cf40ff}.ui.inverted.purple.dividing.header{border-bottom:2px solid #dc73ff}.ui.pink.header{color:#e03997}a.ui.pink.header:hover{color:#e61a8d}.ui.pink.dividing.header{border-bottom:2px solid #e03997}.ui.inverted.pink.header.header.header{color:#ff8edf}a.ui.inverted.pink.header.header.header:hover{color:#ff5bd1}.ui.inverted.pink.dividing.header{border-bottom:2px solid #ff8edf}.ui.brown.header{color:#a5673f}a.ui.brown.header:hover{color:#975b33}.ui.brown.dividing.header{border-bottom:2px solid #a5673f}.ui.inverted.brown.header.header.header{color:#d67c1c}a.ui.inverted.brown.header.header.header:hover{color:#b0620f}.ui.inverted.brown.dividing.header{border-bottom:2px solid #d67c1c}.ui.grey.header{color:#767676}a.ui.grey.header:hover{color:#838383}.ui.grey.dividing.header{border-bottom:2px solid #767676}.ui.inverted.grey.header.header.header{color:#dcddde}a.ui.inverted.grey.header.header.header:hover{color:#c2c4c5}.ui.inverted.grey.dividing.header{border-bottom:2px solid #dcddde}.ui.black.header{color:#1b1c1d}a.ui.black.header:hover{color:#27292a}.ui.black.dividing.header{border-bottom:2px solid #1b1c1d}.ui.inverted.black.header.header.header{color:#545454}a.ui.inverted.black.header.header.header:hover{color:#000}.ui.inverted.black.dividing.header{border-bottom:2px solid #545454}.ui.left.aligned.header{text-align:left}.ui.right.aligned.header{text-align:right}.ui.center.aligned.header,.ui.centered.header{text-align:center}.ui.justified.header{text-align:justify}.ui.justified.header:after{content:"";display:inline-block;width:100%}.ui.floated.header,.ui[class*="left floated"].header{float:left;margin-right:.5em;margin-top:0}.ui[class*="right floated"].header{float:right;margin-left:.5em;margin-top:0}.ui.fitted.header{padding:0}.ui.dividing.header{border-bottom:1px solid rgba(34,36,38,.15)}.ui.dividing.header,.ui.dividing.header .sub.header{padding-bottom:.21428571rem}.ui.dividing.header .icon{margin-bottom:0}.ui.inverted.dividing.header{border-bottom-color:hsla(0,0%,100%,.1)}.ui.block.header{background:#f3f4f5;border:1px solid #d4d4d5;border-radius:.28571429rem;box-shadow:none;padding:.78571429rem 1rem}.ui.tiny.block.header{font-size:.85714286rem}.ui.small.block.header{font-size:.92857143rem}.ui.block.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6){font-size:1rem}.ui.large.block.header{font-size:1.14285714rem}.ui.huge.block.header{font-size:1.42857143rem}.ui.attached.header{background:#fff;border:1px solid #d4d4d5;border-radius:0;box-shadow:none;margin:0 -1px;padding:.78571429rem 1rem}.ui.attached.block.header{background:#f3f4f5}.ui.attached:not(.top).header{border-top:none}.ui.top.attached.header{border-radius:.28571429rem .28571429rem 0 0}.ui.bottom.attached.header{border-radius:0 0 .28571429rem .28571429rem}.ui.tiny.attached.header{font-size:.85714286em}.ui.small.attached.header{font-size:.92857143em}.ui.attached.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6){font-size:1em}.ui.large.attached.header{font-size:1.14285714em}.ui.huge.attached.header{font-size:1.42857143em}.ui.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6){font-size:1.28571429em}
/*!
 * # Fomantic-UI - Icon
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */@font-face{font-family:Icons;font-style:normal;font-variant:normal;font-weight:400;src:url(/6be02c5fbead6d8c2c30.eot);src:url(/6be02c5fbead6d8c2c30.eot?#iefix) format("embedded-opentype"),url(/1c90181a06fec22b89e5.woff2) format("woff2"),url(/fc63a7af5479cbf04791.woff) format("woff"),url(/32202b9e3a8ed509d9d9.ttf) format("truetype"),url(/29f471d366f14dbec470.svg#icons) format("svg");text-decoration:inherit;text-transform:none}i.icon{speak:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;backface-visibility:hidden;display:inline-block;font-family:Icons;font-style:normal;font-weight:400;height:1em;margin:0 .25rem 0 0;opacity:1;text-align:center;text-decoration:inherit;width:1.18em}i.icon:before{background:none!important}i.icon.loading{animation:loader 2s linear infinite;height:1em;line-height:1}i.emphasized.icon:not(.disabled),i.emphasized.icons:not(.disabled),i.icon:active,i.icon:hover,i.icons:active,i.icons:hover{opacity:1}i.disabled.icon,i.disabled.icons{cursor:default;opacity:.45;pointer-events:none}i.fitted.icon{margin:0!important;width:auto}i.link.icon:not(.disabled),i.link.icons:not(.disabled){cursor:pointer;opacity:.8;transition:opacity .1s ease}i.link.icon:hover,i.link.icons:hover{opacity:1}i.circular.icon{border-radius:500em!important;box-shadow:inset 0 0 0 .1em rgba(0,0,0,.1);height:2em!important;line-height:1!important;padding:.5em 0!important;width:2em!important}i.circular.inverted.icon{border:none;box-shadow:none}i.flipped.icon,i.horizontally.flipped.icon{transform:scaleX(-1)}i.vertically.flipped.icon{transform:scaleY(-1)}i.clockwise.rotated.icon,i.right.rotated.icon,i.rotated.icon{transform:rotate(90deg)}i.counterclockwise.rotated.icon,i.left.rotated.icon{transform:rotate(-90deg)}i.halfway.rotated.icon{transform:rotate(180deg)}i.clockwise.rotated.flipped.icon,i.right.rotated.flipped.icon,i.rotated.flipped.icon{transform:scaleX(-1) rotate(90deg)}i.counterclockwise.rotated.flipped.icon,i.left.rotated.flipped.icon{transform:scaleX(-1) rotate(-90deg)}i.halfway.rotated.flipped.icon{transform:scaleX(-1) rotate(180deg)}i.clockwise.rotated.vertically.flipped.icon,i.right.rotated.vertically.flipped.icon,i.rotated.vertically.flipped.icon{transform:scaleY(-1) rotate(90deg)}i.counterclockwise.rotated.vertically.flipped.icon,i.left.rotated.vertically.flipped.icon{transform:scaleY(-1) rotate(-90deg)}i.halfway.rotated.vertically.flipped.icon{transform:scaleY(-1) rotate(180deg)}i.bordered.icon{box-shadow:inset 0 0 0 .1em rgba(0,0,0,.1);height:2em;line-height:1;padding:.5em 0!important;vertical-align:baseline;width:2em}i.bordered.inverted.icon{border:none;box-shadow:none}i.inverted.bordered.icon,i.inverted.circular.icon{background-color:#1b1c1d;color:#fff}i.inverted.icon{color:#fff}i.primary.icon.icon.icon.icon{color:#2185d0}i.inverted.primary.icon.icon.icon.icon{color:#54c8ff}i.inverted.bordered.primary.icon.icon.icon.icon,i.inverted.circular.primary.icon.icon.icon.icon{background-color:#2185d0;color:#fff}i.secondary.icon.icon.icon.icon{color:#1b1c1d}i.inverted.secondary.icon.icon.icon.icon{color:#545454}i.inverted.bordered.secondary.icon.icon.icon.icon,i.inverted.circular.secondary.icon.icon.icon.icon{background-color:#1b1c1d;color:#fff}i.red.icon.icon.icon.icon{color:#db2828}i.inverted.red.icon.icon.icon.icon{color:#ff695e}i.inverted.bordered.red.icon.icon.icon.icon,i.inverted.circular.red.icon.icon.icon.icon{background-color:#db2828;color:#fff}i.orange.icon.icon.icon.icon{color:#f2711c}i.inverted.orange.icon.icon.icon.icon{color:#ff851b}i.inverted.bordered.orange.icon.icon.icon.icon,i.inverted.circular.orange.icon.icon.icon.icon{background-color:#f2711c;color:#fff}i.yellow.icon.icon.icon.icon{color:#fbbd08}i.inverted.yellow.icon.icon.icon.icon{color:#ffe21f}i.inverted.bordered.yellow.icon.icon.icon.icon,i.inverted.circular.yellow.icon.icon.icon.icon{background-color:#fbbd08;color:#fff}i.olive.icon.icon.icon.icon{color:#b5cc18}i.inverted.olive.icon.icon.icon.icon{color:#d9e778}i.inverted.bordered.olive.icon.icon.icon.icon,i.inverted.circular.olive.icon.icon.icon.icon{background-color:#b5cc18;color:#fff}i.green.icon.icon.icon.icon{color:#21ba45}i.inverted.green.icon.icon.icon.icon{color:#2ecc40}i.inverted.bordered.green.icon.icon.icon.icon,i.inverted.circular.green.icon.icon.icon.icon{background-color:#21ba45;color:#fff}i.teal.icon.icon.icon.icon{color:#00b5ad}i.inverted.teal.icon.icon.icon.icon{color:#6dffff}i.inverted.bordered.teal.icon.icon.icon.icon,i.inverted.circular.teal.icon.icon.icon.icon{background-color:#00b5ad;color:#fff}i.blue.icon.icon.icon.icon{color:#2185d0}i.inverted.blue.icon.icon.icon.icon{color:#54c8ff}i.inverted.bordered.blue.icon.icon.icon.icon,i.inverted.circular.blue.icon.icon.icon.icon{background-color:#2185d0;color:#fff}i.violet.icon.icon.icon.icon{color:#6435c9}i.inverted.violet.icon.icon.icon.icon{color:#a291fb}i.inverted.bordered.violet.icon.icon.icon.icon,i.inverted.circular.violet.icon.icon.icon.icon{background-color:#6435c9;color:#fff}i.purple.icon.icon.icon.icon{color:#a333c8}i.inverted.purple.icon.icon.icon.icon{color:#dc73ff}i.inverted.bordered.purple.icon.icon.icon.icon,i.inverted.circular.purple.icon.icon.icon.icon{background-color:#a333c8;color:#fff}i.pink.icon.icon.icon.icon{color:#e03997}i.inverted.pink.icon.icon.icon.icon{color:#ff8edf}i.inverted.bordered.pink.icon.icon.icon.icon,i.inverted.circular.pink.icon.icon.icon.icon{background-color:#e03997;color:#fff}i.brown.icon.icon.icon.icon{color:#a5673f}i.inverted.brown.icon.icon.icon.icon{color:#d67c1c}i.inverted.bordered.brown.icon.icon.icon.icon,i.inverted.circular.brown.icon.icon.icon.icon{background-color:#a5673f;color:#fff}i.grey.icon.icon.icon.icon{color:#767676}i.inverted.grey.icon.icon.icon.icon{color:#dcddde}i.inverted.bordered.grey.icon.icon.icon.icon,i.inverted.circular.grey.icon.icon.icon.icon{background-color:#767676;color:#fff}i.black.icon.icon.icon.icon{color:#1b1c1d}i.inverted.black.icon.icon.icon.icon{color:#545454}i.inverted.bordered.black.icon.icon.icon.icon,i.inverted.circular.black.icon.icon.icon.icon{background-color:#1b1c1d;color:#fff}i.mini.mini.mini.icon,i.mini.mini.mini.icons{font-size:.4em;line-height:1}i.tiny.tiny.tiny.icon,i.tiny.tiny.tiny.icons{font-size:.5em;line-height:1}i.small.small.small.icon,i.small.small.small.icons{font-size:.75em;line-height:1}i.icon,i.icons{font-size:1em}i.large.large.large.icon,i.large.large.large.icons{font-size:1.5em;line-height:1;vertical-align:middle}i.big.big.big.icon,i.big.big.big.icons{font-size:2em;line-height:1;vertical-align:middle}i.huge.huge.huge.icon,i.huge.huge.huge.icons{font-size:4em;line-height:1;vertical-align:middle}i.massive.massive.massive.icon,i.massive.massive.massive.icons{font-size:8em;line-height:1;vertical-align:middle}i.icons{display:inline-block;line-height:1;position:relative}i.icons .icon{left:50%;margin:0;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%)}i.icons .icon:first-child{height:auto;position:static;transform:none;vertical-align:top;width:auto}i.icons .corner.icon{bottom:0;font-size:.45em;left:auto;right:0;text-shadow:-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff;top:auto;transform:none}i.icons .icon.corner[class*="top right"]{bottom:auto;left:auto;right:0;top:0}i.icons .icon.corner[class*="top left"]{bottom:auto;left:0;right:auto;top:0}i.icons .icon.corner[class*="bottom left"]{bottom:0;left:0;right:auto;top:auto}i.icons .icon.corner[class*="bottom right"]{bottom:0;left:auto;right:0;top:auto}i.icons .inverted.corner.icon{text-shadow:-1px -1px 0 #1b1c1d,1px -1px 0 #1b1c1d,-1px 1px 0 #1b1c1d,1px 1px 0 #1b1c1d}i.icon.ad:before{content:"\f641"}i.icon.address.book:before{content:"\f2b9"}i.icon.address.card:before{content:"\f2bb"}i.icon.adjust:before{content:"\f042"}i.icon.air.freshener:before{content:"\f5d0"}i.icon.align.center:before{content:"\f037"}i.icon.align.justify:before{content:"\f039"}i.icon.align.left:before{content:"\f036"}i.icon.align.right:before{content:"\f038"}i.icon.allergies:before{content:"\f461"}i.icon.ambulance:before{content:"\f0f9"}i.icon.american.sign.language.interpreting:before{content:"\f2a3"}i.icon.anchor:before{content:"\f13d"}i.icon.angle.double.down:before{content:"\f103"}i.icon.angle.double.left:before{content:"\f100"}i.icon.angle.double.right:before{content:"\f101"}i.icon.angle.double.up:before{content:"\f102"}i.icon.angle.left:before{content:"\f104"}i.icon.angle.right:before{content:"\f105"}i.icon.angle.up:before{content:"\f106"}i.icon.angle.down:before{content:"\f107"}i.icon.angry:before{content:"\f556"}i.icon.ankh:before{content:"\f644"}i.icon.archive:before{content:"\f187"}i.icon.archway:before{content:"\f557"}i.icon.arrow.alternate.circle.down:before{content:"\f358"}i.icon.arrow.alternate.circle.left:before{content:"\f359"}i.icon.arrow.alternate.circle.right:before{content:"\f35a"}i.icon.arrow.alternate.circle.up:before{content:"\f35b"}i.icon.arrow.circle.down:before{content:"\f0ab"}i.icon.arrow.circle.left:before{content:"\f0a8"}i.icon.arrow.circle.right:before{content:"\f0a9"}i.icon.arrow.circle.up:before{content:"\f0aa"}i.icon.arrow.down:before{content:"\f063"}i.icon.arrow.left:before{content:"\f060"}i.icon.arrow.right:before{content:"\f061"}i.icon.arrow.up:before{content:"\f062"}i.icon.arrows.alternate:before{content:"\f0b2"}i.icon.arrows.alternate.horizontal:before{content:"\f337"}i.icon.arrows.alternate.vertical:before{content:"\f338"}i.icon.assistive.listening.systems:before{content:"\f2a2"}i.icon.asterisk:before{content:"\f069"}i.icon.at:before{content:"\f1fa"}i.icon.atlas:before{content:"\f558"}i.icon.atom:before{content:"\f5d2"}i.icon.audio.description:before{content:"\f29e"}i.icon.award:before{content:"\f559"}i.icon.baby:before{content:"\f77c"}i.icon.baby.carriage:before{content:"\f77d"}i.icon.backspace:before{content:"\f55a"}i.icon.backward:before{content:"\f04a"}i.icon.bacon:before{content:"\f7e5"}i.icon.balance.scale:before{content:"\f24e"}i.icon.balance.scale.left:before{content:"\f515"}i.icon.balance.scale.right:before{content:"\f516"}i.icon.ban:before{content:"\f05e"}i.icon.band.aid:before{content:"\f462"}i.icon.barcode:before{content:"\f02a"}i.icon.bars:before{content:"\f0c9"}i.icon.baseball.ball:before{content:"\f433"}i.icon.basketball.ball:before{content:"\f434"}i.icon.bath:before{content:"\f2cd"}i.icon.battery.empty:before{content:"\f244"}i.icon.battery.full:before{content:"\f240"}i.icon.battery.half:before{content:"\f242"}i.icon.battery.quarter:before{content:"\f243"}i.icon.battery.three.quarters:before{content:"\f241"}i.icon.bed:before{content:"\f236"}i.icon.beer:before{content:"\f0fc"}i.icon.bell:before{content:"\f0f3"}i.icon.bell.slash:before{content:"\f1f6"}i.icon.bezier.curve:before{content:"\f55b"}i.icon.bible:before{content:"\f647"}i.icon.bicycle:before{content:"\f206"}i.icon.biking:before{content:"\f84a"}i.icon.binoculars:before{content:"\f1e5"}i.icon.biohazard:before{content:"\f780"}i.icon.birthday.cake:before{content:"\f1fd"}i.icon.blender:before{content:"\f517"}i.icon.blender.phone:before{content:"\f6b6"}i.icon.blind:before{content:"\f29d"}i.icon.blog:before{content:"\f781"}i.icon.bold:before{content:"\f032"}i.icon.bolt:before{content:"\f0e7"}i.icon.bomb:before{content:"\f1e2"}i.icon.bone:before{content:"\f5d7"}i.icon.bong:before{content:"\f55c"}i.icon.book:before{content:"\f02d"}i.icon.book.dead:before{content:"\f6b7"}i.icon.book.medical:before{content:"\f7e6"}i.icon.book.open:before{content:"\f518"}i.icon.book.reader:before{content:"\f5da"}i.icon.bookmark:before{content:"\f02e"}i.icon.border.all:before{content:"\f84c"}i.icon.border.none:before{content:"\f850"}i.icon.border.style:before{content:"\f853"}i.icon.bowling.ball:before{content:"\f436"}i.icon.box:before{content:"\f466"}i.icon.box.open:before{content:"\f49e"}i.icon.boxes:before{content:"\f468"}i.icon.braille:before{content:"\f2a1"}i.icon.brain:before{content:"\f5dc"}i.icon.bread.slice:before{content:"\f7ec"}i.icon.briefcase:before{content:"\f0b1"}i.icon.briefcase.medical:before{content:"\f469"}i.icon.broadcast.tower:before{content:"\f519"}i.icon.broom:before{content:"\f51a"}i.icon.brush:before{content:"\f55d"}i.icon.bug:before{content:"\f188"}i.icon.building:before{content:"\f1ad"}i.icon.bullhorn:before{content:"\f0a1"}i.icon.bullseye:before{content:"\f140"}i.icon.burn:before{content:"\f46a"}i.icon.bus:before{content:"\f207"}i.icon.bus.alternate:before{content:"\f55e"}i.icon.business.time:before{content:"\f64a"}i.icon.calculator:before{content:"\f1ec"}i.icon.calendar:before{content:"\f133"}i.icon.calendar.alternate:before{content:"\f073"}i.icon.calendar.check:before{content:"\f274"}i.icon.calendar.day:before{content:"\f783"}i.icon.calendar.minus:before{content:"\f272"}i.icon.calendar.plus:before{content:"\f271"}i.icon.calendar.times:before{content:"\f273"}i.icon.calendar.week:before{content:"\f784"}i.icon.camera:before{content:"\f030"}i.icon.camera.retro:before{content:"\f083"}i.icon.campground:before{content:"\f6bb"}i.icon.candy.cane:before{content:"\f786"}i.icon.cannabis:before{content:"\f55f"}i.icon.capsules:before{content:"\f46b"}i.icon.car:before{content:"\f1b9"}i.icon.car.alternate:before{content:"\f5de"}i.icon.car.battery:before{content:"\f5df"}i.icon.car.crash:before{content:"\f5e1"}i.icon.car.side:before{content:"\f5e4"}i.icon.caret.down:before{content:"\f0d7"}i.icon.caret.left:before{content:"\f0d9"}i.icon.caret.right:before{content:"\f0da"}i.icon.caret.square.down:before{content:"\f150"}i.icon.caret.square.left:before{content:"\f191"}i.icon.caret.square.right:before{content:"\f152"}i.icon.caret.square.up:before{content:"\f151"}i.icon.caret.up:before{content:"\f0d8"}i.icon.carrot:before{content:"\f787"}i.icon.cart.arrow.down:before{content:"\f218"}i.icon.cart.plus:before{content:"\f217"}i.icon.cash.register:before{content:"\f788"}i.icon.cat:before{content:"\f6be"}i.icon.certificate:before{content:"\f0a3"}i.icon.chair:before{content:"\f6c0"}i.icon.chalkboard:before{content:"\f51b"}i.icon.chalkboard.teacher:before{content:"\f51c"}i.icon.charging.station:before{content:"\f5e7"}i.icon.chart.area:before{content:"\f1fe"}i.icon.chart.bar:before{content:"\f080"}i.icon.chart.line:before{content:"\f201"}i.icon.chart.pie:before{content:"\f200"}i.icon.check:before{content:"\f00c"}i.icon.check.circle:before{content:"\f058"}i.icon.check.double:before{content:"\f560"}i.icon.check.square:before{content:"\f14a"}i.icon.cheese:before{content:"\f7ef"}i.icon.chess:before{content:"\f439"}i.icon.chess.bishop:before{content:"\f43a"}i.icon.chess.board:before{content:"\f43c"}i.icon.chess.king:before{content:"\f43f"}i.icon.chess.knight:before{content:"\f441"}i.icon.chess.pawn:before{content:"\f443"}i.icon.chess.queen:before{content:"\f445"}i.icon.chess.rook:before{content:"\f447"}i.icon.chevron.circle.down:before{content:"\f13a"}i.icon.chevron.circle.left:before{content:"\f137"}i.icon.chevron.circle.right:before{content:"\f138"}i.icon.chevron.circle.up:before{content:"\f139"}i.icon.chevron.down:before{content:"\f078"}i.icon.chevron.left:before{content:"\f053"}i.icon.chevron.right:before{content:"\f054"}i.icon.chevron.up:before{content:"\f077"}i.icon.child:before{content:"\f1ae"}i.icon.church:before{content:"\f51d"}i.icon.circle:before{content:"\f111"}i.icon.circle.notch:before{content:"\f1ce"}i.icon.city:before{content:"\f64f"}i.icon.clinic.medical:before{content:"\f7f2"}i.icon.clipboard:before{content:"\f328"}i.icon.clipboard.check:before{content:"\f46c"}i.icon.clipboard.list:before{content:"\f46d"}i.icon.clock:before{content:"\f017"}i.icon.clone:before{content:"\f24d"}i.icon.closed.captioning:before{content:"\f20a"}i.icon.cloud:before{content:"\f0c2"}i.icon.cloud.download.alternate:before{content:"\f381"}i.icon.cloud.meatball:before{content:"\f73b"}i.icon.cloud.moon:before{content:"\f6c3"}i.icon.cloud.moon.rain:before{content:"\f73c"}i.icon.cloud.rain:before{content:"\f73d"}i.icon.cloud.showers.heavy:before{content:"\f740"}i.icon.cloud.sun:before{content:"\f6c4"}i.icon.cloud.sun.rain:before{content:"\f743"}i.icon.cloud.upload.alternate:before{content:"\f382"}i.icon.cocktail:before{content:"\f561"}i.icon.code:before{content:"\f121"}i.icon.code.branch:before{content:"\f126"}i.icon.coffee:before{content:"\f0f4"}i.icon.cog:before{content:"\f013"}i.icon.cogs:before{content:"\f085"}i.icon.coins:before{content:"\f51e"}i.icon.columns:before{content:"\f0db"}i.icon.comment:before{content:"\f075"}i.icon.comment.alternate:before{content:"\f27a"}i.icon.comment.dollar:before{content:"\f651"}i.icon.comment.dots:before{content:"\f4ad"}i.icon.comment.medical:before{content:"\f7f5"}i.icon.comment.slash:before{content:"\f4b3"}i.icon.comments:before{content:"\f086"}i.icon.comments.dollar:before{content:"\f653"}i.icon.compact.disc:before{content:"\f51f"}i.icon.compass:before{content:"\f14e"}i.icon.compress:before{content:"\f066"}i.icon.compress.arrows.alternate:before{content:"\f78c"}i.icon.concierge.bell:before{content:"\f562"}i.icon.cookie:before{content:"\f563"}i.icon.cookie.bite:before{content:"\f564"}i.icon.copy:before{content:"\f0c5"}i.icon.copyright:before{content:"\f1f9"}i.icon.couch:before{content:"\f4b8"}i.icon.credit.card:before{content:"\f09d"}i.icon.crop:before{content:"\f125"}i.icon.crop.alternate:before{content:"\f565"}i.icon.cross:before{content:"\f654"}i.icon.crosshairs:before{content:"\f05b"}i.icon.crow:before{content:"\f520"}i.icon.crown:before{content:"\f521"}i.icon.crutch:before{content:"\f7f7"}i.icon.cube:before{content:"\f1b2"}i.icon.cubes:before{content:"\f1b3"}i.icon.cut:before{content:"\f0c4"}i.icon.database:before{content:"\f1c0"}i.icon.deaf:before{content:"\f2a4"}i.icon.democrat:before{content:"\f747"}i.icon.desktop:before{content:"\f108"}i.icon.dharmachakra:before{content:"\f655"}i.icon.diagnoses:before{content:"\f470"}i.icon.dice:before{content:"\f522"}i.icon.dice.d20:before{content:"\f6cf"}i.icon.dice.d6:before{content:"\f6d1"}i.icon.dice.five:before{content:"\f523"}i.icon.dice.four:before{content:"\f524"}i.icon.dice.one:before{content:"\f525"}i.icon.dice.six:before{content:"\f526"}i.icon.dice.three:before{content:"\f527"}i.icon.dice.two:before{content:"\f528"}i.icon.digital.tachograph:before{content:"\f566"}i.icon.directions:before{content:"\f5eb"}i.icon.divide:before{content:"\f529"}i.icon.dizzy:before{content:"\f567"}i.icon.dna:before{content:"\f471"}i.icon.dog:before{content:"\f6d3"}i.icon.dollar.sign:before{content:"\f155"}i.icon.dolly:before{content:"\f472"}i.icon.dolly.flatbed:before{content:"\f474"}i.icon.donate:before{content:"\f4b9"}i.icon.door.closed:before{content:"\f52a"}i.icon.door.open:before{content:"\f52b"}i.icon.dot.circle:before{content:"\f192"}i.icon.dove:before{content:"\f4ba"}i.icon.download:before{content:"\f019"}i.icon.drafting.compass:before{content:"\f568"}i.icon.dragon:before{content:"\f6d5"}i.icon.draw.polygon:before{content:"\f5ee"}i.icon.drum:before{content:"\f569"}i.icon.drum.steelpan:before{content:"\f56a"}i.icon.drumstick.bite:before{content:"\f6d7"}i.icon.dumbbell:before{content:"\f44b"}i.icon.dumpster:before{content:"\f793"}i.icon.dumpster.fire:before{content:"\f794"}i.icon.dungeon:before{content:"\f6d9"}i.icon.edit:before{content:"\f044"}i.icon.egg:before{content:"\f7fb"}i.icon.eject:before{content:"\f052"}i.icon.ellipsis.horizontal:before{content:"\f141"}i.icon.ellipsis.vertical:before{content:"\f142"}i.icon.envelope:before{content:"\f0e0"}i.icon.envelope.open:before{content:"\f2b6"}i.icon.envelope.open.text:before{content:"\f658"}i.icon.envelope.square:before{content:"\f199"}i.icon.equals:before{content:"\f52c"}i.icon.eraser:before{content:"\f12d"}i.icon.ethernet:before{content:"\f796"}i.icon.euro.sign:before{content:"\f153"}i.icon.exchange.alternate:before{content:"\f362"}i.icon.exclamation:before{content:"\f12a"}i.icon.exclamation.circle:before{content:"\f06a"}i.icon.exclamation.triangle:before{content:"\f071"}i.icon.expand:before{content:"\f065"}i.icon.expand.arrows.alternate:before{content:"\f31e"}i.icon.external.alternate:before{content:"\f35d"}i.icon.external.link.square.alternate:before{content:"\f360"}i.icon.eye:before{content:"\f06e"}i.icon.eye.dropper:before{content:"\f1fb"}i.icon.eye.slash:before{content:"\f070"}i.icon.fan:before{content:"\f863"}i.icon.fast.backward:before{content:"\f049"}i.icon.fast.forward:before{content:"\f050"}i.icon.fax:before{content:"\f1ac"}i.icon.feather:before{content:"\f52d"}i.icon.feather.alternate:before{content:"\f56b"}i.icon.female:before{content:"\f182"}i.icon.fighter.jet:before{content:"\f0fb"}i.icon.file:before{content:"\f15b"}i.icon.file.alternate:before{content:"\f15c"}i.icon.file.archive:before{content:"\f1c6"}i.icon.file.audio:before{content:"\f1c7"}i.icon.file.code:before{content:"\f1c9"}i.icon.file.contract:before{content:"\f56c"}i.icon.file.csv:before{content:"\f6dd"}i.icon.file.download:before{content:"\f56d"}i.icon.file.excel:before{content:"\f1c3"}i.icon.file.export:before{content:"\f56e"}i.icon.file.image:before{content:"\f1c5"}i.icon.file.import:before{content:"\f56f"}i.icon.file.invoice:before{content:"\f570"}i.icon.file.invoice.dollar:before{content:"\f571"}i.icon.file.medical:before{content:"\f477"}i.icon.file.medical.alternate:before{content:"\f478"}i.icon.file.pdf:before{content:"\f1c1"}i.icon.file.powerpoint:before{content:"\f1c4"}i.icon.file.prescription:before{content:"\f572"}i.icon.file.signature:before{content:"\f573"}i.icon.file.upload:before{content:"\f574"}i.icon.file.video:before{content:"\f1c8"}i.icon.file.word:before{content:"\f1c2"}i.icon.fill:before{content:"\f575"}i.icon.fill.drip:before{content:"\f576"}i.icon.film:before{content:"\f008"}i.icon.filter:before{content:"\f0b0"}i.icon.fingerprint:before{content:"\f577"}i.icon.fire:before{content:"\f06d"}i.icon.fire.alternate:before{content:"\f7e4"}i.icon.fire.extinguisher:before{content:"\f134"}i.icon.first.aid:before{content:"\f479"}i.icon.fish:before{content:"\f578"}i.icon.fist.raised:before{content:"\f6de"}i.icon.flag:before{content:"\f024"}i.icon.flag.checkered:before{content:"\f11e"}i.icon.flag.usa:before{content:"\f74d"}i.icon.flask:before{content:"\f0c3"}i.icon.flushed:before{content:"\f579"}i.icon.folder:before{content:"\f07b"}i.icon.folder.minus:before{content:"\f65d"}i.icon.folder.open:before{content:"\f07c"}i.icon.folder.plus:before{content:"\f65e"}i.icon.font:before{content:"\f031"}i.icon.football.ball:before{content:"\f44e"}i.icon.forward:before{content:"\f04e"}i.icon.frog:before{content:"\f52e"}i.icon.frown:before{content:"\f119"}i.icon.frown.open:before{content:"\f57a"}i.icon.fruit-apple:before{content:"\f5d1"}i.icon.funnel.dollar:before{content:"\f662"}i.icon.futbol:before{content:"\f1e3"}i.icon.gamepad:before{content:"\f11b"}i.icon.gas.pump:before{content:"\f52f"}i.icon.gavel:before{content:"\f0e3"}i.icon.gem:before{content:"\f3a5"}i.icon.genderless:before{content:"\f22d"}i.icon.ghost:before{content:"\f6e2"}i.icon.gift:before{content:"\f06b"}i.icon.gifts:before{content:"\f79c"}i.icon.glass.cheers:before{content:"\f79f"}i.icon.glass.martini:before{content:"\f000"}i.icon.glass.martini.alternate:before{content:"\f57b"}i.icon.glass.whiskey:before{content:"\f7a0"}i.icon.glasses:before{content:"\f530"}i.icon.globe:before{content:"\f0ac"}i.icon.globe.africa:before{content:"\f57c"}i.icon.globe.americas:before{content:"\f57d"}i.icon.globe.asia:before{content:"\f57e"}i.icon.globe.europe:before{content:"\f7a2"}i.icon.golf.ball:before{content:"\f450"}i.icon.gopuram:before{content:"\f664"}i.icon.graduation.cap:before{content:"\f19d"}i.icon.greater.than:before{content:"\f531"}i.icon.greater.than.equal:before{content:"\f532"}i.icon.grimace:before{content:"\f57f"}i.icon.grin:before{content:"\f580"}i.icon.grin.alternate:before{content:"\f581"}i.icon.grin.beam:before{content:"\f582"}i.icon.grin.beam.sweat:before{content:"\f583"}i.icon.grin.hearts:before{content:"\f584"}i.icon.grin.squint:before{content:"\f585"}i.icon.grin.squint.tears:before{content:"\f586"}i.icon.grin.stars:before{content:"\f587"}i.icon.grin.tears:before{content:"\f588"}i.icon.grin.tongue:before{content:"\f589"}i.icon.grin.tongue.squint:before{content:"\f58a"}i.icon.grin.tongue.wink:before{content:"\f58b"}i.icon.grin.wink:before{content:"\f58c"}i.icon.grip.horizontal:before{content:"\f58d"}i.icon.grip.lines:before{content:"\f7a4"}i.icon.grip.lines.vertical:before{content:"\f7a5"}i.icon.grip.vertical:before{content:"\f58e"}i.icon.guitar:before{content:"\f7a6"}i.icon.h.square:before{content:"\f0fd"}i.icon.hamburger:before{content:"\f805"}i.icon.hammer:before{content:"\f6e3"}i.icon.hamsa:before{content:"\f665"}i.icon.hand.holding:before{content:"\f4bd"}i.icon.hand.holding.heart:before{content:"\f4be"}i.icon.hand.holding.usd:before{content:"\f4c0"}i.icon.hand.lizard:before{content:"\f258"}i.icon.hand.middle.finger:before{content:"\f806"}i.icon.hand.paper:before{content:"\f256"}i.icon.hand.peace:before{content:"\f25b"}i.icon.hand.point.down:before{content:"\f0a7"}i.icon.hand.point.left:before{content:"\f0a5"}i.icon.hand.point.right:before{content:"\f0a4"}i.icon.hand.point.up:before{content:"\f0a6"}i.icon.hand.pointer:before{content:"\f25a"}i.icon.hand.rock:before{content:"\f255"}i.icon.hand.scissors:before{content:"\f257"}i.icon.hand.spock:before{content:"\f259"}i.icon.hands:before{content:"\f4c2"}i.icon.hands.helping:before{content:"\f4c4"}i.icon.handshake:before{content:"\f2b5"}i.icon.hanukiah:before{content:"\f6e6"}i.icon.hard.hat:before{content:"\f807"}i.icon.hashtag:before{content:"\f292"}i.icon.hat.wizard:before{content:"\f6e8"}i.icon.haykal:before{content:"\f666"}i.icon.hdd:before{content:"\f0a0"}i.icon.heading:before{content:"\f1dc"}i.icon.headphones:before{content:"\f025"}i.icon.headphones.alternate:before{content:"\f58f"}i.icon.headset:before{content:"\f590"}i.icon.heart:before{content:"\f004"}i.icon.heart.broken:before{content:"\f7a9"}i.icon.heartbeat:before{content:"\f21e"}i.icon.helicopter:before{content:"\f533"}i.icon.highlighter:before{content:"\f591"}i.icon.hiking:before{content:"\f6ec"}i.icon.hippo:before{content:"\f6ed"}i.icon.history:before{content:"\f1da"}i.icon.hockey.puck:before{content:"\f453"}i.icon.holly.berry:before{content:"\f7aa"}i.icon.home:before{content:"\f015"}i.icon.horse:before{content:"\f6f0"}i.icon.horse.head:before{content:"\f7ab"}i.icon.hospital:before{content:"\f0f8"}i.icon.hospital.alternate:before{content:"\f47d"}i.icon.hospital.symbol:before{content:"\f47e"}i.icon.hot.tub:before{content:"\f593"}i.icon.hotdog:before{content:"\f80f"}i.icon.hotel:before{content:"\f594"}i.icon.hourglass:before{content:"\f254"}i.icon.hourglass.end:before{content:"\f253"}i.icon.hourglass.half:before{content:"\f252"}i.icon.hourglass.start:before{content:"\f251"}i.icon.house.damage:before{content:"\f6f1"}i.icon.hryvnia:before{content:"\f6f2"}i.icon.i.cursor:before{content:"\f246"}i.icon.ice.cream:before{content:"\f810"}i.icon.icicles:before{content:"\f7ad"}i.icon.icons:before{content:"\f86d"}i.icon.id.badge:before{content:"\f2c1"}i.icon.id.card:before{content:"\f2c2"}i.icon.id.card.alternate:before{content:"\f47f"}i.icon.igloo:before{content:"\f7ae"}i.icon.image:before{content:"\f03e"}i.icon.images:before{content:"\f302"}i.icon.inbox:before{content:"\f01c"}i.icon.indent:before{content:"\f03c"}i.icon.industry:before{content:"\f275"}i.icon.infinity:before{content:"\f534"}i.icon.info:before{content:"\f129"}i.icon.info.circle:before{content:"\f05a"}i.icon.italic:before{content:"\f033"}i.icon.jedi:before{content:"\f669"}i.icon.joint:before{content:"\f595"}i.icon.journal.whills:before{content:"\f66a"}i.icon.kaaba:before{content:"\f66b"}i.icon.key:before{content:"\f084"}i.icon.keyboard:before{content:"\f11c"}i.icon.khanda:before{content:"\f66d"}i.icon.kiss:before{content:"\f596"}i.icon.kiss.beam:before{content:"\f597"}i.icon.kiss.wink.heart:before{content:"\f598"}i.icon.kiwi.bird:before{content:"\f535"}i.icon.landmark:before{content:"\f66f"}i.icon.language:before{content:"\f1ab"}i.icon.laptop:before{content:"\f109"}i.icon.laptop.code:before{content:"\f5fc"}i.icon.laptop.medical:before{content:"\f812"}i.icon.laugh:before{content:"\f599"}i.icon.laugh.beam:before{content:"\f59a"}i.icon.laugh.squint:before{content:"\f59b"}i.icon.laugh.wink:before{content:"\f59c"}i.icon.layer.group:before{content:"\f5fd"}i.icon.leaf:before{content:"\f06c"}i.icon.lemon:before{content:"\f094"}i.icon.less.than:before{content:"\f536"}i.icon.less.than.equal:before{content:"\f537"}i.icon.level.down.alternate:before{content:"\f3be"}i.icon.level.up.alternate:before{content:"\f3bf"}i.icon.life.ring:before{content:"\f1cd"}i.icon.lightbulb:before{content:"\f0eb"}i.icon.lira.sign:before{content:"\f195"}i.icon.list:before{content:"\f03a"}i.icon.list.alternate:before{content:"\f022"}i.icon.list.ol:before{content:"\f0cb"}i.icon.list.ul:before{content:"\f0ca"}i.icon.location.arrow:before{content:"\f124"}i.icon.lock:before{content:"\f023"}i.icon.lock.open:before{content:"\f3c1"}i.icon.long.arrow.alternate.down:before{content:"\f309"}i.icon.long.arrow.alternate.left:before{content:"\f30a"}i.icon.long.arrow.alternate.right:before{content:"\f30b"}i.icon.long.arrow.alternate.up:before{content:"\f30c"}i.icon.low.vision:before{content:"\f2a8"}i.icon.luggage.cart:before{content:"\f59d"}i.icon.magic:before{content:"\f0d0"}i.icon.magnet:before{content:"\f076"}i.icon.mail.bulk:before{content:"\f674"}i.icon.male:before{content:"\f183"}i.icon.map:before{content:"\f279"}i.icon.map.marked:before{content:"\f59f"}i.icon.map.marked.alternate:before{content:"\f5a0"}i.icon.map.marker:before{content:"\f041"}i.icon.map.marker.alternate:before{content:"\f3c5"}i.icon.map.pin:before{content:"\f276"}i.icon.map.signs:before{content:"\f277"}i.icon.marker:before{content:"\f5a1"}i.icon.mars:before{content:"\f222"}i.icon.mars.double:before{content:"\f227"}i.icon.mars.stroke:before{content:"\f229"}i.icon.mars.stroke.horizontal:before{content:"\f22b"}i.icon.mars.stroke.vertical:before{content:"\f22a"}i.icon.mask:before{content:"\f6fa"}i.icon.medal:before{content:"\f5a2"}i.icon.medkit:before{content:"\f0fa"}i.icon.meh:before{content:"\f11a"}i.icon.meh.blank:before{content:"\f5a4"}i.icon.meh.rolling.eyes:before{content:"\f5a5"}i.icon.memory:before{content:"\f538"}i.icon.menorah:before{content:"\f676"}i.icon.mercury:before{content:"\f223"}i.icon.meteor:before{content:"\f753"}i.icon.microchip:before{content:"\f2db"}i.icon.microphone:before{content:"\f130"}i.icon.microphone.alternate:before{content:"\f3c9"}i.icon.microphone.alternate.slash:before{content:"\f539"}i.icon.microphone.slash:before{content:"\f131"}i.icon.microscope:before{content:"\f610"}i.icon.minus:before{content:"\f068"}i.icon.minus.circle:before{content:"\f056"}i.icon.minus.square:before{content:"\f146"}i.icon.mitten:before{content:"\f7b5"}i.icon.mobile:before{content:"\f10b"}i.icon.mobile.alternate:before{content:"\f3cd"}i.icon.money.bill:before{content:"\f0d6"}i.icon.money.bill.alternate:before{content:"\f3d1"}i.icon.money.bill.wave:before{content:"\f53a"}i.icon.money.bill.wave.alternate:before{content:"\f53b"}i.icon.money.check:before{content:"\f53c"}i.icon.money.check.alternate:before{content:"\f53d"}i.icon.monument:before{content:"\f5a6"}i.icon.moon:before{content:"\f186"}i.icon.mortar.pestle:before{content:"\f5a7"}i.icon.mosque:before{content:"\f678"}i.icon.motorcycle:before{content:"\f21c"}i.icon.mountain:before{content:"\f6fc"}i.icon.mouse.pointer:before{content:"\f245"}i.icon.mug.hot:before{content:"\f7b6"}i.icon.music:before{content:"\f001"}i.icon.network.wired:before{content:"\f6ff"}i.icon.neuter:before{content:"\f22c"}i.icon.newspaper:before{content:"\f1ea"}i.icon.not.equal:before{content:"\f53e"}i.icon.notes.medical:before{content:"\f481"}i.icon.object.group:before{content:"\f247"}i.icon.object.ungroup:before{content:"\f248"}i.icon.oil.can:before{content:"\f613"}i.icon.om:before{content:"\f679"}i.icon.otter:before{content:"\f700"}i.icon.outdent:before{content:"\f03b"}i.icon.pager:before{content:"\f815"}i.icon.paint.brush:before{content:"\f1fc"}i.icon.paint.roller:before{content:"\f5aa"}i.icon.palette:before{content:"\f53f"}i.icon.pallet:before{content:"\f482"}i.icon.paper.plane:before{content:"\f1d8"}i.icon.paperclip:before{content:"\f0c6"}i.icon.parachute.box:before{content:"\f4cd"}i.icon.paragraph:before{content:"\f1dd"}i.icon.parking:before{content:"\f540"}i.icon.passport:before{content:"\f5ab"}i.icon.pastafarianism:before{content:"\f67b"}i.icon.paste:before{content:"\f0ea"}i.icon.pause:before{content:"\f04c"}i.icon.pause.circle:before{content:"\f28b"}i.icon.paw:before{content:"\f1b0"}i.icon.peace:before{content:"\f67c"}i.icon.pen:before{content:"\f304"}i.icon.pen.alternate:before{content:"\f305"}i.icon.pen.fancy:before{content:"\f5ac"}i.icon.pen.nib:before{content:"\f5ad"}i.icon.pen.square:before{content:"\f14b"}i.icon.pencil.alternate:before{content:"\f303"}i.icon.pencil.ruler:before{content:"\f5ae"}i.icon.people.carry:before{content:"\f4ce"}i.icon.pepper.hot:before{content:"\f816"}i.icon.percent:before{content:"\f295"}i.icon.percentage:before{content:"\f541"}i.icon.person.booth:before{content:"\f756"}i.icon.phone:before{content:"\f095"}i.icon.phone.alternate:before{content:"\f879"}i.icon.phone.slash:before{content:"\f3dd"}i.icon.phone.square:before{content:"\f098"}i.icon.phone.square.alternate:before{content:"\f87b"}i.icon.phone.volume:before{content:"\f2a0"}i.icon.photo.video:before{content:"\f87c"}i.icon.piggy.bank:before{content:"\f4d3"}i.icon.pills:before{content:"\f484"}i.icon.pizza.slice:before{content:"\f818"}i.icon.place.of.worship:before{content:"\f67f"}i.icon.plane:before{content:"\f072"}i.icon.plane.arrival:before{content:"\f5af"}i.icon.plane.departure:before{content:"\f5b0"}i.icon.play:before{content:"\f04b"}i.icon.play.circle:before{content:"\f144"}i.icon.plug:before{content:"\f1e6"}i.icon.plus:before{content:"\f067"}i.icon.plus.circle:before{content:"\f055"}i.icon.plus.square:before{content:"\f0fe"}i.icon.podcast:before{content:"\f2ce"}i.icon.poll:before{content:"\f681"}i.icon.poll.horizontal:before{content:"\f682"}i.icon.poo:before{content:"\f2fe"}i.icon.poo.storm:before{content:"\f75a"}i.icon.poop:before{content:"\f619"}i.icon.portrait:before{content:"\f3e0"}i.icon.pound.sign:before{content:"\f154"}i.icon.power.off:before{content:"\f011"}i.icon.pray:before{content:"\f683"}i.icon.praying.hands:before{content:"\f684"}i.icon.prescription:before{content:"\f5b1"}i.icon.prescription.bottle:before{content:"\f485"}i.icon.prescription.bottle.alternate:before{content:"\f486"}i.icon.print:before{content:"\f02f"}i.icon.procedures:before{content:"\f487"}i.icon.project.diagram:before{content:"\f542"}i.icon.puzzle.piece:before{content:"\f12e"}i.icon.qrcode:before{content:"\f029"}i.icon.question:before{content:"\f128"}i.icon.question.circle:before{content:"\f059"}i.icon.quidditch:before{content:"\f458"}i.icon.quote.left:before{content:"\f10d"}i.icon.quote.right:before{content:"\f10e"}i.icon.quran:before{content:"\f687"}i.icon.radiation:before{content:"\f7b9"}i.icon.radiation.alternate:before{content:"\f7ba"}i.icon.rainbow:before{content:"\f75b"}i.icon.random:before{content:"\f074"}i.icon.receipt:before{content:"\f543"}i.icon.recycle:before{content:"\f1b8"}i.icon.redo:before{content:"\f01e"}i.icon.redo.alternate:before{content:"\f2f9"}i.icon.registered:before{content:"\f25d"}i.icon.remove.format:before{content:"\f87d"}i.icon.reply:before{content:"\f3e5"}i.icon.reply.all:before{content:"\f122"}i.icon.republican:before{content:"\f75e"}i.icon.restroom:before{content:"\f7bd"}i.icon.retweet:before{content:"\f079"}i.icon.ribbon:before{content:"\f4d6"}i.icon.ring:before{content:"\f70b"}i.icon.road:before{content:"\f018"}i.icon.robot:before{content:"\f544"}i.icon.rocket:before{content:"\f135"}i.icon.route:before{content:"\f4d7"}i.icon.rss:before{content:"\f09e"}i.icon.rss.square:before{content:"\f143"}i.icon.ruble.sign:before{content:"\f158"}i.icon.ruler:before{content:"\f545"}i.icon.ruler.combined:before{content:"\f546"}i.icon.ruler.horizontal:before{content:"\f547"}i.icon.ruler.vertical:before{content:"\f548"}i.icon.running:before{content:"\f70c"}i.icon.rupee.sign:before{content:"\f156"}i.icon.sad.cry:before{content:"\f5b3"}i.icon.sad.tear:before{content:"\f5b4"}i.icon.satellite:before{content:"\f7bf"}i.icon.satellite.dish:before{content:"\f7c0"}i.icon.save:before{content:"\f0c7"}i.icon.school:before{content:"\f549"}i.icon.screwdriver:before{content:"\f54a"}i.icon.scroll:before{content:"\f70e"}i.icon.sd.card:before{content:"\f7c2"}i.icon.search:before{content:"\f002"}i.icon.search.dollar:before{content:"\f688"}i.icon.search.location:before{content:"\f689"}i.icon.search.minus:before{content:"\f010"}i.icon.search.plus:before{content:"\f00e"}i.icon.seedling:before{content:"\f4d8"}i.icon.server:before{content:"\f233"}i.icon.shapes:before{content:"\f61f"}i.icon.share:before{content:"\f064"}i.icon.share.alternate:before{content:"\f1e0"}i.icon.share.alternate.square:before{content:"\f1e1"}i.icon.share.square:before{content:"\f14d"}i.icon.shekel.sign:before{content:"\f20b"}i.icon.shield.alternate:before{content:"\f3ed"}i.icon.ship:before{content:"\f21a"}i.icon.shipping.fast:before{content:"\f48b"}i.icon.shoe.prints:before{content:"\f54b"}i.icon.shopping.bag:before{content:"\f290"}i.icon.shopping.basket:before{content:"\f291"}i.icon.shopping.cart:before{content:"\f07a"}i.icon.shower:before{content:"\f2cc"}i.icon.shuttle.van:before{content:"\f5b6"}i.icon.sign:before{content:"\f4d9"}i.icon.sign.in.alternate:before{content:"\f2f6"}i.icon.sign.language:before{content:"\f2a7"}i.icon.sign.out.alternate:before{content:"\f2f5"}i.icon.signal:before{content:"\f012"}i.icon.signature:before{content:"\f5b7"}i.icon.sim.card:before{content:"\f7c4"}i.icon.sitemap:before{content:"\f0e8"}i.icon.skating:before{content:"\f7c5"}i.icon.skiing:before{content:"\f7c9"}i.icon.skiing.nordic:before{content:"\f7ca"}i.icon.skull:before{content:"\f54c"}i.icon.skull.crossbones:before{content:"\f714"}i.icon.slash:before{content:"\f715"}i.icon.sleigh:before{content:"\f7cc"}i.icon.sliders.horizontal:before{content:"\f1de"}i.icon.smile:before{content:"\f118"}i.icon.smile.beam:before{content:"\f5b8"}i.icon.smile.wink:before{content:"\f4da"}i.icon.smog:before{content:"\f75f"}i.icon.smoking:before{content:"\f48d"}i.icon.smoking.ban:before{content:"\f54d"}i.icon.sms:before{content:"\f7cd"}i.icon.snowboarding:before{content:"\f7ce"}i.icon.snowflake:before{content:"\f2dc"}i.icon.snowman:before{content:"\f7d0"}i.icon.snowplow:before{content:"\f7d2"}i.icon.socks:before{content:"\f696"}i.icon.solar.panel:before{content:"\f5ba"}i.icon.sort:before{content:"\f0dc"}i.icon.sort.alphabet.down:before{content:"\f15d"}i.icon.sort.alphabet.down.alternate:before{content:"\f881"}i.icon.sort.alphabet.up:before{content:"\f15e"}i.icon.sort.alphabet.up.alternate:before{content:"\f882"}i.icon.sort.amount.down:before{content:"\f160"}i.icon.sort.amount.down.alternate:before{content:"\f884"}i.icon.sort.amount.up:before{content:"\f161"}i.icon.sort.amount.up.alternate:before{content:"\f885"}i.icon.sort.down:before{content:"\f0dd"}i.icon.sort.numeric.down:before{content:"\f162"}i.icon.sort.numeric.down.alternate:before{content:"\f886"}i.icon.sort.numeric.up:before{content:"\f163"}i.icon.sort.numeric.up.alternate:before{content:"\f887"}i.icon.sort.up:before{content:"\f0de"}i.icon.spa:before{content:"\f5bb"}i.icon.space.shuttle:before{content:"\f197"}i.icon.spell.check:before{content:"\f891"}i.icon.spider:before{content:"\f717"}i.icon.spinner:before{content:"\f110"}i.icon.splotch:before{content:"\f5bc"}i.icon.spray.can:before{content:"\f5bd"}i.icon.square:before{content:"\f0c8"}i.icon.square.full:before{content:"\f45c"}i.icon.square.root.alternate:before{content:"\f698"}i.icon.stamp:before{content:"\f5bf"}i.icon.star:before{content:"\f005"}i.icon.star.and.crescent:before{content:"\f699"}i.icon.star.half:before{content:"\f089"}i.icon.star.half.alternate:before{content:"\f5c0"}i.icon.star.of.david:before{content:"\f69a"}i.icon.star.of.life:before{content:"\f621"}i.icon.step.backward:before{content:"\f048"}i.icon.step.forward:before{content:"\f051"}i.icon.stethoscope:before{content:"\f0f1"}i.icon.sticky.note:before{content:"\f249"}i.icon.stop:before{content:"\f04d"}i.icon.stop.circle:before{content:"\f28d"}i.icon.stopwatch:before{content:"\f2f2"}i.icon.store:before{content:"\f54e"}i.icon.store.alternate:before{content:"\f54f"}i.icon.stream:before{content:"\f550"}i.icon.street.view:before{content:"\f21d"}i.icon.strikethrough:before{content:"\f0cc"}i.icon.stroopwafel:before{content:"\f551"}i.icon.subscript:before{content:"\f12c"}i.icon.subway:before{content:"\f239"}i.icon.suitcase:before{content:"\f0f2"}i.icon.suitcase.rolling:before{content:"\f5c1"}i.icon.sun:before{content:"\f185"}i.icon.superscript:before{content:"\f12b"}i.icon.surprise:before{content:"\f5c2"}i.icon.swatchbook:before{content:"\f5c3"}i.icon.swimmer:before{content:"\f5c4"}i.icon.swimming.pool:before{content:"\f5c5"}i.icon.synagogue:before{content:"\f69b"}i.icon.sync:before{content:"\f021"}i.icon.sync.alternate:before{content:"\f2f1"}i.icon.syringe:before{content:"\f48e"}i.icon.table:before{content:"\f0ce"}i.icon.table.tennis:before{content:"\f45d"}i.icon.tablet:before{content:"\f10a"}i.icon.tablet.alternate:before{content:"\f3fa"}i.icon.tablets:before{content:"\f490"}i.icon.tachometer.alternate:before{content:"\f3fd"}i.icon.tag:before{content:"\f02b"}i.icon.tags:before{content:"\f02c"}i.icon.tape:before{content:"\f4db"}i.icon.tasks:before{content:"\f0ae"}i.icon.taxi:before{content:"\f1ba"}i.icon.teeth:before{content:"\f62e"}i.icon.teeth.open:before{content:"\f62f"}i.icon.temperature.high:before{content:"\f769"}i.icon.temperature.low:before{content:"\f76b"}i.icon.tenge:before{content:"\f7d7"}i.icon.terminal:before{content:"\f120"}i.icon.text.height:before{content:"\f034"}i.icon.text.width:before{content:"\f035"}i.icon.th:before{content:"\f00a"}i.icon.th.large:before{content:"\f009"}i.icon.th.list:before{content:"\f00b"}i.icon.theater.masks:before{content:"\f630"}i.icon.thermometer:before{content:"\f491"}i.icon.thermometer.empty:before{content:"\f2cb"}i.icon.thermometer.full:before{content:"\f2c7"}i.icon.thermometer.half:before{content:"\f2c9"}i.icon.thermometer.quarter:before{content:"\f2ca"}i.icon.thermometer.three.quarters:before{content:"\f2c8"}i.icon.thumbs.down:before{content:"\f165"}i.icon.thumbs.up:before{content:"\f164"}i.icon.thumbtack:before{content:"\f08d"}i.icon.ticket.alternate:before{content:"\f3ff"}i.icon.times:before{content:"\f00d"}i.icon.times.circle:before{content:"\f057"}i.icon.tint:before{content:"\f043"}i.icon.tint.slash:before{content:"\f5c7"}i.icon.tired:before{content:"\f5c8"}i.icon.toggle.off:before{content:"\f204"}i.icon.toggle.on:before{content:"\f205"}i.icon.toilet:before{content:"\f7d8"}i.icon.toilet.paper:before{content:"\f71e"}i.icon.toolbox:before{content:"\f552"}i.icon.tools:before{content:"\f7d9"}i.icon.tooth:before{content:"\f5c9"}i.icon.torah:before{content:"\f6a0"}i.icon.torii.gate:before{content:"\f6a1"}i.icon.tractor:before{content:"\f722"}i.icon.trademark:before{content:"\f25c"}i.icon.traffic.light:before{content:"\f637"}i.icon.train:before{content:"\f238"}i.icon.tram:before{content:"\f7da"}i.icon.transgender:before{content:"\f224"}i.icon.transgender.alternate:before{content:"\f225"}i.icon.trash:before{content:"\f1f8"}i.icon.trash.alternate:before{content:"\f2ed"}i.icon.trash.restore:before{content:"\f829"}i.icon.trash.restore.alternate:before{content:"\f82a"}i.icon.tree:before{content:"\f1bb"}i.icon.trophy:before{content:"\f091"}i.icon.truck:before{content:"\f0d1"}i.icon.truck.monster:before{content:"\f63b"}i.icon.truck.moving:before{content:"\f4df"}i.icon.truck.packing:before{content:"\f4de"}i.icon.truck.pickup:before{content:"\f63c"}i.icon.tshirt:before{content:"\f553"}i.icon.tty:before{content:"\f1e4"}i.icon.tv:before{content:"\f26c"}i.icon.umbrella:before{content:"\f0e9"}i.icon.umbrella.beach:before{content:"\f5ca"}i.icon.underline:before{content:"\f0cd"}i.icon.undo:before{content:"\f0e2"}i.icon.undo.alternate:before{content:"\f2ea"}i.icon.universal.access:before{content:"\f29a"}i.icon.university:before{content:"\f19c"}i.icon.unlink:before{content:"\f127"}i.icon.unlock:before{content:"\f09c"}i.icon.unlock.alternate:before{content:"\f13e"}i.icon.upload:before{content:"\f093"}i.icon.user:before{content:"\f007"}i.icon.user.alternate:before{content:"\f406"}i.icon.user.alternate.slash:before{content:"\f4fa"}i.icon.user.astronaut:before{content:"\f4fb"}i.icon.user.check:before{content:"\f4fc"}i.icon.user.circle:before{content:"\f2bd"}i.icon.user.clock:before{content:"\f4fd"}i.icon.user.cog:before{content:"\f4fe"}i.icon.user.edit:before{content:"\f4ff"}i.icon.user.friends:before{content:"\f500"}i.icon.user.graduate:before{content:"\f501"}i.icon.user.injured:before{content:"\f728"}i.icon.user.lock:before{content:"\f502"}i.icon.user.md:before{content:"\f0f0"}i.icon.user.minus:before{content:"\f503"}i.icon.user.ninja:before{content:"\f504"}i.icon.user.nurse:before{content:"\f82f"}i.icon.user.plus:before{content:"\f234"}i.icon.user.secret:before{content:"\f21b"}i.icon.user.shield:before{content:"\f505"}i.icon.user.slash:before{content:"\f506"}i.icon.user.tag:before{content:"\f507"}i.icon.user.tie:before{content:"\f508"}i.icon.user.times:before{content:"\f235"}i.icon.users:before{content:"\f0c0"}i.icon.users.cog:before{content:"\f509"}i.icon.utensil.spoon:before{content:"\f2e5"}i.icon.utensils:before{content:"\f2e7"}i.icon.vector.square:before{content:"\f5cb"}i.icon.venus:before{content:"\f221"}i.icon.venus.double:before{content:"\f226"}i.icon.venus.mars:before{content:"\f228"}i.icon.vial:before{content:"\f492"}i.icon.vials:before{content:"\f493"}i.icon.video:before{content:"\f03d"}i.icon.video.slash:before{content:"\f4e2"}i.icon.vihara:before{content:"\f6a7"}i.icon.voicemail:before{content:"\f897"}i.icon.volleyball.ball:before{content:"\f45f"}i.icon.volume.down:before{content:"\f027"}i.icon.volume.mute:before{content:"\f6a9"}i.icon.volume.off:before{content:"\f026"}i.icon.volume.up:before{content:"\f028"}i.icon.vote.yea:before{content:"\f772"}i.icon.vr.cardboard:before{content:"\f729"}i.icon.walking:before{content:"\f554"}i.icon.wallet:before{content:"\f555"}i.icon.warehouse:before{content:"\f494"}i.icon.water:before{content:"\f773"}i.icon.wave.square:before{content:"\f83e"}i.icon.weight:before{content:"\f496"}i.icon.weight.hanging:before{content:"\f5cd"}i.icon.wheelchair:before{content:"\f193"}i.icon.wifi:before{content:"\f1eb"}i.icon.wind:before{content:"\f72e"}i.icon.window.close:before{content:"\f410"}i.icon.window.maximize:before{content:"\f2d0"}i.icon.window.minimize:before{content:"\f2d1"}i.icon.window.restore:before{content:"\f2d2"}i.icon.wine.bottle:before{content:"\f72f"}i.icon.wine.glass:before{content:"\f4e3"}i.icon.wine.glass.alternate:before{content:"\f5ce"}i.icon.won.sign:before{content:"\f159"}i.icon.wrench:before{content:"\f0ad"}i.icon.x.ray:before{content:"\f497"}i.icon.yen.sign:before{content:"\f157"}i.icon.yin.yang:before{content:"\f6ad"}i.icon.add:before{content:"\f067"}i.icon.add.circle:before{content:"\f055"}i.icon.add.square:before{content:"\f0fe"}i.icon.add.to.calendar:before{content:"\f271"}i.icon.add.to.cart:before{content:"\f217"}i.icon.add.user:before{content:"\f234"}i.icon.alarm:before{content:"\f0f3"}i.icon.alarm.mute:before{content:"\f1f6"}i.icon.ald:before,i.icon.als:before{content:"\f2a2"}i.icon.announcement:before{content:"\f0a1"}i.icon.area.chart:before,i.icon.area.graph:before{content:"\f1fe"}i.icon.arrow.down.cart:before{content:"\f218"}i.icon.asexual:before{content:"\f22d"}i.icon.asl.interpreting:before,i.icon.asl:before{content:"\f2a3"}i.icon.assistive.listening.devices:before{content:"\f2a2"}i.icon.attach:before{content:"\f0c6"}i.icon.attention:before{content:"\f06a"}i.icon.balance:before{content:"\f24e"}i.icon.bar:before{content:"\f0fc"}i.icon.bathtub:before{content:"\f2cd"}i.icon.battery.four:before{content:"\f240"}i.icon.battery.high:before{content:"\f241"}i.icon.battery.low:before{content:"\f243"}i.icon.battery.medium:before{content:"\f242"}i.icon.battery.one:before{content:"\f243"}i.icon.battery.three:before{content:"\f241"}i.icon.battery.two:before{content:"\f242"}i.icon.battery.zero:before{content:"\f244"}i.icon.birthday:before{content:"\f1fd"}i.icon.block.layout:before{content:"\f009"}i.icon.broken.chain:before{content:"\f127"}i.icon.browser:before{content:"\f022"}i.icon.call:before{content:"\f095"}i.icon.call.square:before{content:"\f098"}i.icon.cancel:before{content:"\f00d"}i.icon.cart:before{content:"\f07a"}i.icon.cc:before{content:"\f20a"}i.icon.chain:before{content:"\f0c1"}i.icon.chat:before{content:"\f075"}i.icon.checked.calendar:before{content:"\f274"}i.icon.checkmark:before{content:"\f00c"}i.icon.checkmark.box:before{content:"\f14a"}i.icon.chess.rock:before{content:"\f447"}i.icon.circle.notched:before{content:"\f1ce"}i.icon.circle.thin:before{content:"\f111"}i.icon.close:before{content:"\f00d"}i.icon.cloud.download:before{content:"\f381"}i.icon.cloud.upload:before{content:"\f382"}i.icon.cny:before{content:"\f157"}i.icon.cocktail:before{content:"\f000"}i.icon.commenting:before{content:"\f27a"}i.icon.compose:before{content:"\f303"}i.icon.computer:before{content:"\f108"}i.icon.configure:before{content:"\f0ad"}i.icon.content:before{content:"\f0c9"}i.icon.conversation:before{content:"\f086"}i.icon.credit.card.alternative:before{content:"\f09d"}i.icon.currency:before{content:"\f3d1"}i.icon.dashboard:before{content:"\f3fd"}i.icon.deafness:before{content:"\f2a4"}i.icon.delete:before{content:"\f00d"}i.icon.delete.calendar:before{content:"\f273"}i.icon.detective:before{content:"\f21b"}i.icon.diamond:before{content:"\f3a5"}i.icon.discussions:before{content:"\f086"}i.icon.disk:before{content:"\f0a0"}i.icon.doctor:before{content:"\f0f0"}i.icon.dollar:before{content:"\f155"}i.icon.dont:before{content:"\f05e"}i.icon.drivers.license:before{content:"\f2c2"}i.icon.dropdown:before{content:"\f0d7"}i.icon.emergency:before{content:"\f0f9"}i.icon.erase:before{content:"\f12d"}i.icon.eur:before,i.icon.euro:before{content:"\f153"}i.icon.exchange:before{content:"\f362"}i.icon.external:before{content:"\f35d"}i.icon.external.share:before{content:"\f14d"}i.icon.external.square:before{content:"\f360"}i.icon.eyedropper:before{content:"\f1fb"}i.icon.factory:before{content:"\f275"}i.icon.favorite:before{content:"\f005"}i.icon.feed:before{content:"\f09e"}i.icon.female.homosexual:before{content:"\f226"}i.icon.file.text:before{content:"\f15c"}i.icon.find:before{content:"\f1e5"}i.icon.first.aid:before{content:"\f0fa"}i.icon.food:before{content:"\f2e7"}i.icon.fork:before{content:"\f126"}i.icon.game:before{content:"\f11b"}i.icon.gay:before{content:"\f227"}i.icon.gbp:before{content:"\f154"}i.icon.grab:before{content:"\f255"}i.icon.graduation:before{content:"\f19d"}i.icon.grid.layout:before{content:"\f00a"}i.icon.group:before{content:"\f0c0"}i.icon.h:before{content:"\f0fd"}i.icon.hamburger:before{content:"\f0c9"}i.icon.hand.victory:before{content:"\f25b"}i.icon.handicap:before{content:"\f193"}i.icon.hard.of.hearing:before{content:"\f2a4"}i.icon.header:before{content:"\f1dc"}i.icon.heart.empty:before{content:"\f004"}i.icon.help:before{content:"\f128"}i.icon.help.circle:before{content:"\f059"}i.icon.heterosexual:before{content:"\f228"}i.icon.hide:before{content:"\f070"}i.icon.hotel:before{content:"\f236"}i.icon.hourglass.four:before,i.icon.hourglass.full:before{content:"\f254"}i.icon.hourglass.one:before{content:"\f251"}i.icon.hourglass.three:before{content:"\f253"}i.icon.hourglass.two:before{content:"\f252"}i.icon.hourglass.zero:before{content:"\f253"}i.icon.idea:before{content:"\f0eb"}i.icon.ils:before{content:"\f20b"}i.icon.in.cart:before{content:"\f218"}i.icon.inr:before{content:"\f156"}i.icon.intergender:before,i.icon.intersex:before{content:"\f224"}i.icon.jpy:before{content:"\f157"}i.icon.krw:before{content:"\f159"}i.icon.lab:before{content:"\f0c3"}i.icon.law:before{content:"\f24e"}i.icon.legal:before{content:"\f0e3"}i.icon.lesbian:before{content:"\f226"}i.icon.level.down:before{content:"\f3be"}i.icon.level.up:before{content:"\f3bf"}i.icon.lightning:before{content:"\f0e7"}i.icon.like:before{content:"\f004"}i.icon.line.graph:before{content:"\f201"}i.icon.linkify:before{content:"\f0c1"}i.icon.lira:before{content:"\f195"}i.icon.list.layout:before{content:"\f00b"}i.icon.log.out:before{content:"\f2f5"}i.icon.magnify:before{content:"\f00e"}i.icon.mail:before{content:"\f0e0"}i.icon.mail.forward:before{content:"\f064"}i.icon.mail.square:before{content:"\f199"}i.icon.male.homosexual:before{content:"\f227"}i.icon.man:before{content:"\f222"}i.icon.marker:before{content:"\f041"}i.icon.mars.alternate:before{content:"\f229"}i.icon.mars.horizontal:before{content:"\f22b"}i.icon.mars.vertical:before{content:"\f22a"}i.icon.meanpath:before{content:"\f0c8"}i.icon.military:before{content:"\f0fb"}i.icon.money:before{content:"\f3d1"}i.icon.move:before{content:"\f0b2"}i.icon.mute:before{content:"\f131"}i.icon.non.binary.transgender:before{content:"\f223"}i.icon.numbered.list:before{content:"\f0cb"}i.icon.options:before{content:"\f1de"}i.icon.ordered.list:before{content:"\f0cb"}i.icon.other.gender:before{content:"\f229"}i.icon.other.gender.horizontal:before{content:"\f22b"}i.icon.other.gender.vertical:before{content:"\f22a"}i.icon.payment:before{content:"\f09d"}i.icon.pencil:before{content:"\f303"}i.icon.pencil.square:before{content:"\f14b"}i.icon.photo:before{content:"\f030"}i.icon.picture:before{content:"\f03e"}i.icon.pie.chart:before,i.icon.pie.graph:before{content:"\f200"}i.icon.pin:before{content:"\f08d"}i.icon.plus.cart:before{content:"\f217"}i.icon.point:before{content:"\f041"}i.icon.pointing.down:before{content:"\f0a7"}i.icon.pointing.left:before{content:"\f0a5"}i.icon.pointing.right:before{content:"\f0a4"}i.icon.pointing.up:before{content:"\f0a6"}i.icon.pound:before{content:"\f154"}i.icon.power:before{content:"\f011"}i.icon.power.cord:before{content:"\f1e6"}i.icon.privacy:before{content:"\f084"}i.icon.protect:before{content:"\f023"}i.icon.puzzle:before{content:"\f12e"}i.icon.r.circle:before{content:"\f25d"}i.icon.radio:before{content:"\f192"}i.icon.rain:before{content:"\f0e9"}i.icon.record:before{content:"\f03d"}i.icon.refresh:before{content:"\f021"}i.icon.remove:before{content:"\f00d"}i.icon.remove.bookmark:before{content:"\f02e"}i.icon.remove.circle:before{content:"\f057"}i.icon.remove.from.calendar:before{content:"\f272"}i.icon.remove.user:before{content:"\f235"}i.icon.repeat:before{content:"\f01e"}i.icon.resize.horizontal:before{content:"\f337"}i.icon.resize.vertical:before{content:"\f338"}i.icon.rmb:before{content:"\f157"}i.icon.rouble:before,i.icon.rub:before,i.icon.ruble:before{content:"\f158"}i.icon.rupee:before{content:"\f156"}i.icon.s15:before{content:"\f2cd"}i.icon.selected.radio:before{content:"\f192"}i.icon.send:before{content:"\f1d8"}i.icon.setting:before{content:"\f013"}i.icon.settings:before{content:"\f085"}i.icon.shekel:before,i.icon.sheqel:before{content:"\f20b"}i.icon.shield:before{content:"\f3ed"}i.icon.shipping:before{content:"\f0d1"}i.icon.shop:before{content:"\f07a"}i.icon.shuffle:before{content:"\f074"}i.icon.shutdown:before{content:"\f011"}i.icon.sidebar:before{content:"\f0c9"}i.icon.sign.in:before{content:"\f2f6"}i.icon.sign.out:before{content:"\f2f5"}i.icon.signing:before{content:"\f2a7"}i.icon.signup:before{content:"\f044"}i.icon.sliders:before{content:"\f1de"}i.icon.soccer:before{content:"\f1e3"}i.icon.sort.alphabet.ascending:before{content:"\f15d"}i.icon.sort.alphabet.descending:before{content:"\f15e"}i.icon.sort.ascending:before{content:"\f0de"}i.icon.sort.content.ascending:before{content:"\f160"}i.icon.sort.content.descending:before{content:"\f161"}i.icon.sort.descending:before{content:"\f0dd"}i.icon.sort.numeric.ascending:before{content:"\f162"}i.icon.sort.numeric.descending:before{content:"\f163"}i.icon.sound:before{content:"\f025"}i.icon.spoon:before{content:"\f2e5"}i.icon.spy:before{content:"\f21b"}i.icon.star.empty:before{content:"\f005"}i.icon.star.half.empty:before,i.icon.star.half.full:before{content:"\f089"}i.icon.student:before{content:"\f19d"}i.icon.talk:before{content:"\f27a"}i.icon.target:before{content:"\f140"}i.icon.teletype:before{content:"\f1e4"}i.icon.television:before{content:"\f26c"}i.icon.text.cursor:before{content:"\f246"}i.icon.text.telephone:before{content:"\f1e4"}i.icon.theme:before{content:"\f043"}i.icon.thermometer:before{content:"\f2c7"}i.icon.thumb.tack:before{content:"\f08d"}i.icon.ticket:before{content:"\f3ff"}i.icon.time:before{content:"\f017"}i.icon.times.rectangle:before{content:"\f410"}i.icon.tm:before{content:"\f25c"}i.icon.toggle.down:before{content:"\f150"}i.icon.toggle.left:before{content:"\f191"}i.icon.toggle.right:before{content:"\f152"}i.icon.toggle.up:before{content:"\f151"}i.icon.translate:before{content:"\f1ab"}i.icon.travel:before{content:"\f0b1"}i.icon.treatment:before{content:"\f0f1"}i.icon.triangle.down:before{content:"\f0d7"}i.icon.triangle.left:before{content:"\f0d9"}i.icon.triangle.right:before{content:"\f0da"}i.icon.triangle.up:before{content:"\f0d8"}i.icon.try:before{content:"\f195"}i.icon.unhide:before{content:"\f06e"}i.icon.unlinkify:before{content:"\f127"}i.icon.unmute:before{content:"\f130"}i.icon.unordered.list:before{content:"\f0ca"}i.icon.usd:before{content:"\f155"}i.icon.user.cancel:before,i.icon.user.close:before,i.icon.user.delete:before{content:"\f235"}i.icon.user.doctor:before{content:"\f0f0"}i.icon.user.x:before{content:"\f235"}i.icon.vcard:before{content:"\f2bb"}i.icon.video.camera:before{content:"\f03d"}i.icon.video.play:before{content:"\f144"}i.icon.volume.control.phone:before{content:"\f2a0"}i.icon.wait:before{content:"\f017"}i.icon.warning:before{content:"\f12a"}i.icon.warning.circle:before{content:"\f06a"}i.icon.warning.sign:before{content:"\f071"}i.icon.wi.fi:before{content:"\f1eb"}i.icon.winner:before{content:"\f091"}i.icon.wizard:before{content:"\f0d0"}i.icon.woman:before{content:"\f221"}i.icon.won:before{content:"\f159"}i.icon.world:before{content:"\f0ac"}i.icon.write:before{content:"\f303"}i.icon.write.square:before{content:"\f14b"}i.icon.x:before{content:"\f00d"}i.icon.yen:before{content:"\f157"}i.icon.zip:before{content:"\f187"}i.icon.zoom.in:before,i.icon.zoom:before{content:"\f00e"}i.icon.zoom.out:before{content:"\f010"}@font-face{font-family:outline-icons;font-style:normal;font-variant:normal;font-weight:400;src:url(/626536c3ff7c24f25434.eot);src:url(/626536c3ff7c24f25434.eot?#iefix) format("embedded-opentype"),url(/0e0168adce3532bd50d9.woff2) format("woff2"),url(/0f81dba76dae70663521.woff) format("woff"),url(/74c17a82e0b35c1521b9.ttf) format("truetype"),url(/4aee317606b406717c60.svg#icons) format("svg");text-decoration:inherit;text-transform:none}i.icon.outline{font-family:outline-icons}i.icon.address.book.outline:before{content:"\f2b9"}i.icon.address.card.outline:before{content:"\f2bb"}i.icon.angry.outline:before{content:"\f556"}i.icon.arrow.alternate.circle.down.outline:before{content:"\f358"}i.icon.arrow.alternate.circle.left.outline:before{content:"\f359"}i.icon.arrow.alternate.circle.right.outline:before{content:"\f35a"}i.icon.arrow.alternate.circle.up.outline:before{content:"\f35b"}i.icon.bell.outline:before{content:"\f0f3"}i.icon.bell.slash.outline:before{content:"\f1f6"}i.icon.bookmark.outline:before{content:"\f02e"}i.icon.building.outline:before{content:"\f1ad"}i.icon.calendar.alternate.outline:before{content:"\f073"}i.icon.calendar.check.outline:before{content:"\f274"}i.icon.calendar.minus.outline:before{content:"\f272"}i.icon.calendar.outline:before{content:"\f133"}i.icon.calendar.plus.outline:before{content:"\f271"}i.icon.calendar.times.outline:before{content:"\f273"}i.icon.caret.square.down.outline:before{content:"\f150"}i.icon.caret.square.left.outline:before{content:"\f191"}i.icon.caret.square.right.outline:before{content:"\f152"}i.icon.caret.square.up.outline:before{content:"\f151"}i.icon.chart.bar.outline:before{content:"\f080"}i.icon.check.circle.outline:before{content:"\f058"}i.icon.check.square.outline:before{content:"\f14a"}i.icon.circle.outline:before{content:"\f111"}i.icon.clipboard.outline:before{content:"\f328"}i.icon.clock.outline:before{content:"\f017"}i.icon.clone.outline:before{content:"\f24d"}i.icon.closed.captioning.outline:before{content:"\f20a"}i.icon.comment.alternate.outline:before{content:"\f27a"}i.icon.comment.dots.outline:before{content:"\f4ad"}i.icon.comment.outline:before{content:"\f075"}i.icon.comments.outline:before{content:"\f086"}i.icon.compass.outline:before{content:"\f14e"}i.icon.copy.outline:before{content:"\f0c5"}i.icon.copyright.outline:before{content:"\f1f9"}i.icon.credit.card.outline:before{content:"\f09d"}i.icon.dizzy.outline:before{content:"\f567"}i.icon.dot.circle.outline:before{content:"\f192"}i.icon.edit.outline:before{content:"\f044"}i.icon.envelope.open.outline:before{content:"\f2b6"}i.icon.envelope.outline:before{content:"\f0e0"}i.icon.eye.outline:before{content:"\f06e"}i.icon.eye.slash.outline:before{content:"\f070"}i.icon.file.alternate.outline:before{content:"\f15c"}i.icon.file.archive.outline:before{content:"\f1c6"}i.icon.file.audio.outline:before{content:"\f1c7"}i.icon.file.code.outline:before{content:"\f1c9"}i.icon.file.excel.outline:before{content:"\f1c3"}i.icon.file.image.outline:before{content:"\f1c5"}i.icon.file.outline:before{content:"\f15b"}i.icon.file.pdf.outline:before{content:"\f1c1"}i.icon.file.powerpoint.outline:before{content:"\f1c4"}i.icon.file.video.outline:before{content:"\f1c8"}i.icon.file.word.outline:before{content:"\f1c2"}i.icon.flag.outline:before{content:"\f024"}i.icon.flushed.outline:before{content:"\f579"}i.icon.folder.open.outline:before{content:"\f07c"}i.icon.folder.outline:before{content:"\f07b"}i.icon.frown.open.outline:before{content:"\f57a"}i.icon.frown.outline:before{content:"\f119"}i.icon.futbol.outline:before{content:"\f1e3"}i.icon.gem.outline:before{content:"\f3a5"}i.icon.grimace.outline:before{content:"\f57f"}i.icon.grin.alternate.outline:before{content:"\f581"}i.icon.grin.beam.outline:before{content:"\f582"}i.icon.grin.beam.sweat.outline:before{content:"\f583"}i.icon.grin.hearts.outline:before{content:"\f584"}i.icon.grin.outline:before{content:"\f580"}i.icon.grin.squint.outline:before{content:"\f585"}i.icon.grin.squint.tears.outline:before{content:"\f586"}i.icon.grin.stars.outline:before{content:"\f587"}i.icon.grin.tears.outline:before{content:"\f588"}i.icon.grin.tongue.outline:before{content:"\f589"}i.icon.grin.tongue.squint.outline:before{content:"\f58a"}i.icon.grin.tongue.wink.outline:before{content:"\f58b"}i.icon.grin.wink.outline:before{content:"\f58c"}i.icon.hand.lizard.outline:before{content:"\f258"}i.icon.hand.paper.outline:before{content:"\f256"}i.icon.hand.peace.outline:before{content:"\f25b"}i.icon.hand.point.down.outline:before{content:"\f0a7"}i.icon.hand.point.left.outline:before{content:"\f0a5"}i.icon.hand.point.right.outline:before{content:"\f0a4"}i.icon.hand.point.up.outline:before{content:"\f0a6"}i.icon.hand.pointer.outline:before{content:"\f25a"}i.icon.hand.rock.outline:before{content:"\f255"}i.icon.hand.scissors.outline:before{content:"\f257"}i.icon.hand.spock.outline:before{content:"\f259"}i.icon.handshake.outline:before{content:"\f2b5"}i.icon.hdd.outline:before{content:"\f0a0"}i.icon.heart.outline:before{content:"\f004"}i.icon.hospital.outline:before{content:"\f0f8"}i.icon.hourglass.outline:before{content:"\f254"}i.icon.id.badge.outline:before{content:"\f2c1"}i.icon.id.card.outline:before{content:"\f2c2"}i.icon.image.outline:before{content:"\f03e"}i.icon.images.outline:before{content:"\f302"}i.icon.keyboard.outline:before{content:"\f11c"}i.icon.kiss.beam.outline:before{content:"\f597"}i.icon.kiss.outline:before{content:"\f596"}i.icon.kiss.wink.heart.outline:before{content:"\f598"}i.icon.laugh.beam.outline:before{content:"\f59a"}i.icon.laugh.outline:before{content:"\f599"}i.icon.laugh.squint.outline:before{content:"\f59b"}i.icon.laugh.wink.outline:before{content:"\f59c"}i.icon.lemon.outline:before{content:"\f094"}i.icon.life.ring.outline:before{content:"\f1cd"}i.icon.lightbulb.outline:before{content:"\f0eb"}i.icon.list.alternate.outline:before{content:"\f022"}i.icon.map.outline:before{content:"\f279"}i.icon.meh.blank.outline:before{content:"\f5a4"}i.icon.meh.outline:before{content:"\f11a"}i.icon.meh.rolling.eyes.outline:before{content:"\f5a5"}i.icon.minus.square.outline:before{content:"\f146"}i.icon.money.bill.alternate.outline:before{content:"\f3d1"}i.icon.moon.outline:before{content:"\f186"}i.icon.newspaper.outline:before{content:"\f1ea"}i.icon.object.group.outline:before{content:"\f247"}i.icon.object.ungroup.outline:before{content:"\f248"}i.icon.paper.plane.outline:before{content:"\f1d8"}i.icon.pause.circle.outline:before{content:"\f28b"}i.icon.play.circle.outline:before{content:"\f144"}i.icon.plus.square.outline:before{content:"\f0fe"}i.icon.question.circle.outline:before{content:"\f059"}i.icon.registered.outline:before{content:"\f25d"}i.icon.sad.cry.outline:before{content:"\f5b3"}i.icon.sad.tear.outline:before{content:"\f5b4"}i.icon.save.outline:before{content:"\f0c7"}i.icon.share.square.outline:before{content:"\f14d"}i.icon.smile.beam.outline:before{content:"\f5b8"}i.icon.smile.outline:before{content:"\f118"}i.icon.smile.wink.outline:before{content:"\f4da"}i.icon.snowflake.outline:before{content:"\f2dc"}i.icon.square.outline:before{content:"\f0c8"}i.icon.star.half.outline:before{content:"\f089"}i.icon.star.outline:before{content:"\f005"}i.icon.sticky.note.outline:before{content:"\f249"}i.icon.stop.circle.outline:before{content:"\f28d"}i.icon.sun.outline:before{content:"\f185"}i.icon.surprise.outline:before{content:"\f5c2"}i.icon.thumbs.down.outline:before{content:"\f165"}i.icon.thumbs.up.outline:before{content:"\f164"}i.icon.times.circle.outline:before{content:"\f057"}i.icon.tired.outline:before{content:"\f5c8"}i.icon.trash.alternate.outline:before{content:"\f2ed"}i.icon.user.circle.outline:before{content:"\f2bd"}i.icon.user.outline:before{content:"\f007"}i.icon.window.close.outline:before{content:"\f410"}i.icon.window.maximize.outline:before{content:"\f2d0"}i.icon.window.minimize.outline:before{content:"\f2d1"}i.icon.window.restore.outline:before{content:"\f2d2"}@font-face{font-family:brand-icons;font-style:normal;font-variant:normal;font-weight:400;src:url(/1c8a051b9734818b68a4.eot);src:url(/1c8a051b9734818b68a4.eot?#iefix) format("embedded-opentype"),url(/bc9c96d8cd4b581cc1c5.woff2) format("woff2"),url(/7aebf23e3276346f850a.woff) format("woff"),url(/f7c4bd7c168c566a2e06.ttf) format("truetype"),url(/d3674fbfc6473c319611.svg#icons) format("svg");text-decoration:inherit;text-transform:none}i.icon.\35 00px:before{content:"\f26e";font-family:brand-icons}i.icon.accessible:before{content:"\f368";font-family:brand-icons}i.icon.accusoft:before{content:"\f369";font-family:brand-icons}i.icon.acquisitions.incorporated:before{content:"\f6af";font-family:brand-icons}i.icon.adn:before{content:"\f170";font-family:brand-icons}i.icon.adobe:before{content:"\f778";font-family:brand-icons}i.icon.adversal:before{content:"\f36a";font-family:brand-icons}i.icon.affiliatetheme:before{content:"\f36b";font-family:brand-icons}i.icon.airbnb:before{content:"\f834";font-family:brand-icons}i.icon.algolia:before{content:"\f36c";font-family:brand-icons}i.icon.alipay:before{content:"\f642";font-family:brand-icons}i.icon.amazon:before{content:"\f270";font-family:brand-icons}i.icon.amazon.pay:before{content:"\f42c";font-family:brand-icons}i.icon.amilia:before{content:"\f36d";font-family:brand-icons}i.icon.android:before{content:"\f17b";font-family:brand-icons}i.icon.angellist:before{content:"\f209";font-family:brand-icons}i.icon.angrycreative:before{content:"\f36e";font-family:brand-icons}i.icon.angular:before{content:"\f420";font-family:brand-icons}i.icon.app.store:before{content:"\f36f";font-family:brand-icons}i.icon.app.store.ios:before{content:"\f370";font-family:brand-icons}i.icon.apper:before{content:"\f371";font-family:brand-icons}i.icon.apple:before{content:"\f179";font-family:brand-icons}i.icon.apple.pay:before{content:"\f415";font-family:brand-icons}i.icon.artstation:before{content:"\f77a";font-family:brand-icons}i.icon.asymmetrik:before{content:"\f372";font-family:brand-icons}i.icon.atlassian:before{content:"\f77b";font-family:brand-icons}i.icon.audible:before{content:"\f373";font-family:brand-icons}i.icon.autoprefixer:before{content:"\f41c";font-family:brand-icons}i.icon.avianex:before{content:"\f374";font-family:brand-icons}i.icon.aviato:before{content:"\f421";font-family:brand-icons}i.icon.aws:before{content:"\f375";font-family:brand-icons}i.icon.bandcamp:before{content:"\f2d5";font-family:brand-icons}i.icon.battle.net:before{content:"\f835";font-family:brand-icons}i.icon.behance:before{content:"\f1b4";font-family:brand-icons}i.icon.behance.square:before{content:"\f1b5";font-family:brand-icons}i.icon.bimobject:before{content:"\f378";font-family:brand-icons}i.icon.bitbucket:before{content:"\f171";font-family:brand-icons}i.icon.bitcoin:before{content:"\f379";font-family:brand-icons}i.icon.bity:before{content:"\f37a";font-family:brand-icons}i.icon.black.tie:before{content:"\f27e";font-family:brand-icons}i.icon.blackberry:before{content:"\f37b";font-family:brand-icons}i.icon.blogger:before{content:"\f37c";font-family:brand-icons}i.icon.blogger.b:before{content:"\f37d";font-family:brand-icons}i.icon.bluetooth:before{content:"\f293";font-family:brand-icons}i.icon.bluetooth.b:before{content:"\f294";font-family:brand-icons}i.icon.bootstrap:before{content:"\f836";font-family:brand-icons}i.icon.btc:before{content:"\f15a";font-family:brand-icons}i.icon.buffer:before{content:"\f837";font-family:brand-icons}i.icon.buromobelexperte:before{content:"\f37f";font-family:brand-icons}i.icon.buysellads:before{content:"\f20d";font-family:brand-icons}i.icon.canadian.maple.leaf:before{content:"\f785";font-family:brand-icons}i.icon.cc.amazon.pay:before{content:"\f42d";font-family:brand-icons}i.icon.cc.amex:before{content:"\f1f3";font-family:brand-icons}i.icon.cc.apple.pay:before{content:"\f416";font-family:brand-icons}i.icon.cc.diners.club:before{content:"\f24c";font-family:brand-icons}i.icon.cc.discover:before{content:"\f1f2";font-family:brand-icons}i.icon.cc.jcb:before{content:"\f24b";font-family:brand-icons}i.icon.cc.mastercard:before{content:"\f1f1";font-family:brand-icons}i.icon.cc.paypal:before{content:"\f1f4";font-family:brand-icons}i.icon.cc.stripe:before{content:"\f1f5";font-family:brand-icons}i.icon.cc.visa:before{content:"\f1f0";font-family:brand-icons}i.icon.centercode:before{content:"\f380";font-family:brand-icons}i.icon.centos:before{content:"\f789";font-family:brand-icons}i.icon.chrome:before{content:"\f268";font-family:brand-icons}i.icon.chromecast:before{content:"\f838";font-family:brand-icons}i.icon.cloudscale:before{content:"\f383";font-family:brand-icons}i.icon.cloudsmith:before{content:"\f384";font-family:brand-icons}i.icon.cloudversify:before{content:"\f385";font-family:brand-icons}i.icon.codepen:before{content:"\f1cb";font-family:brand-icons}i.icon.codiepie:before{content:"\f284";font-family:brand-icons}i.icon.confluence:before{content:"\f78d";font-family:brand-icons}i.icon.connectdevelop:before{content:"\f20e";font-family:brand-icons}i.icon.contao:before{content:"\f26d";font-family:brand-icons}i.icon.cpanel:before{content:"\f388";font-family:brand-icons}i.icon.creative.commons:before{content:"\f25e";font-family:brand-icons}i.icon.creative.commons.by:before{content:"\f4e7";font-family:brand-icons}i.icon.creative.commons.nc:before{content:"\f4e8";font-family:brand-icons}i.icon.creative.commons.nc.eu:before{content:"\f4e9";font-family:brand-icons}i.icon.creative.commons.nc.jp:before{content:"\f4ea";font-family:brand-icons}i.icon.creative.commons.nd:before{content:"\f4eb";font-family:brand-icons}i.icon.creative.commons.pd:before{content:"\f4ec";font-family:brand-icons}i.icon.creative.commons.pd.alternate:before{content:"\f4ed";font-family:brand-icons}i.icon.creative.commons.remix:before{content:"\f4ee";font-family:brand-icons}i.icon.creative.commons.sa:before{content:"\f4ef";font-family:brand-icons}i.icon.creative.commons.sampling:before{content:"\f4f0";font-family:brand-icons}i.icon.creative.commons.sampling.plus:before{content:"\f4f1";font-family:brand-icons}i.icon.creative.commons.share:before{content:"\f4f2";font-family:brand-icons}i.icon.creative.commons.zero:before{content:"\f4f3";font-family:brand-icons}i.icon.critical.role:before{content:"\f6c9";font-family:brand-icons}i.icon.css3:before{content:"\f13c";font-family:brand-icons}i.icon.css3.alternate:before{content:"\f38b";font-family:brand-icons}i.icon.cuttlefish:before{content:"\f38c";font-family:brand-icons}i.icon.d.and.d:before{content:"\f38d";font-family:brand-icons}i.icon.d.and.d.beyond:before{content:"\f6ca";font-family:brand-icons}i.icon.dashcube:before{content:"\f210";font-family:brand-icons}i.icon.delicious:before{content:"\f1a5";font-family:brand-icons}i.icon.deploydog:before{content:"\f38e";font-family:brand-icons}i.icon.deskpro:before{content:"\f38f";font-family:brand-icons}i.icon.dev:before{content:"\f6cc";font-family:brand-icons}i.icon.deviantart:before{content:"\f1bd";font-family:brand-icons}i.icon.dhl:before{content:"\f790";font-family:brand-icons}i.icon.diaspora:before{content:"\f791";font-family:brand-icons}i.icon.digg:before{content:"\f1a6";font-family:brand-icons}i.icon.digital.ocean:before{content:"\f391";font-family:brand-icons}i.icon.discord:before{content:"\f392";font-family:brand-icons}i.icon.discourse:before{content:"\f393";font-family:brand-icons}i.icon.dochub:before{content:"\f394";font-family:brand-icons}i.icon.docker:before{content:"\f395";font-family:brand-icons}i.icon.draft2digital:before{content:"\f396";font-family:brand-icons}i.icon.dribbble:before{content:"\f17d";font-family:brand-icons}i.icon.dribbble.square:before{content:"\f397";font-family:brand-icons}i.icon.dropbox:before{content:"\f16b";font-family:brand-icons}i.icon.drupal:before{content:"\f1a9";font-family:brand-icons}i.icon.dyalog:before{content:"\f399";font-family:brand-icons}i.icon.earlybirds:before{content:"\f39a";font-family:brand-icons}i.icon.ebay:before{content:"\f4f4";font-family:brand-icons}i.icon.edge:before{content:"\f282";font-family:brand-icons}i.icon.elementor:before{content:"\f430";font-family:brand-icons}i.icon.ello:before{content:"\f5f1";font-family:brand-icons}i.icon.ember:before{content:"\f423";font-family:brand-icons}i.icon.empire:before{content:"\f1d1";font-family:brand-icons}i.icon.envira:before{content:"\f299";font-family:brand-icons}i.icon.erlang:before{content:"\f39d";font-family:brand-icons}i.icon.ethereum:before{content:"\f42e";font-family:brand-icons}i.icon.etsy:before{content:"\f2d7";font-family:brand-icons}i.icon.evernote:before{content:"\f839";font-family:brand-icons}i.icon.expeditedssl:before{content:"\f23e";font-family:brand-icons}i.icon.facebook:before{content:"\f09a";font-family:brand-icons}i.icon.facebook.f:before{content:"\f39e";font-family:brand-icons}i.icon.facebook.messenger:before{content:"\f39f";font-family:brand-icons}i.icon.facebook.square:before{content:"\f082";font-family:brand-icons}i.icon.fantasy.flight.games:before{content:"\f6dc";font-family:brand-icons}i.icon.fedex:before{content:"\f797";font-family:brand-icons}i.icon.fedora:before{content:"\f798";font-family:brand-icons}i.icon.figma:before{content:"\f799";font-family:brand-icons}i.icon.firefox:before{content:"\f269";font-family:brand-icons}i.icon.first.order:before{content:"\f2b0";font-family:brand-icons}i.icon.first.order.alternate:before{content:"\f50a";font-family:brand-icons}i.icon.firstdraft:before{content:"\f3a1";font-family:brand-icons}i.icon.flickr:before{content:"\f16e";font-family:brand-icons}i.icon.flipboard:before{content:"\f44d";font-family:brand-icons}i.icon.fly:before{content:"\f417";font-family:brand-icons}i.icon.font.awesome:before{content:"\f2b4";font-family:brand-icons}i.icon.font.awesome.alternate:before{content:"\f35c";font-family:brand-icons}i.icon.font.awesome.flag:before{content:"\f425";font-family:brand-icons}i.icon.fonticons:before{content:"\f280";font-family:brand-icons}i.icon.fonticons.fi:before{content:"\f3a2";font-family:brand-icons}i.icon.fort.awesome:before{content:"\f286";font-family:brand-icons}i.icon.fort.awesome.alternate:before{content:"\f3a3";font-family:brand-icons}i.icon.forumbee:before{content:"\f211";font-family:brand-icons}i.icon.foursquare:before{content:"\f180";font-family:brand-icons}i.icon.free.code.camp:before{content:"\f2c5";font-family:brand-icons}i.icon.freebsd:before{content:"\f3a4";font-family:brand-icons}i.icon.fulcrum:before{content:"\f50b";font-family:brand-icons}i.icon.galactic.republic:before{content:"\f50c";font-family:brand-icons}i.icon.galactic.senate:before{content:"\f50d";font-family:brand-icons}i.icon.get.pocket:before{content:"\f265";font-family:brand-icons}i.icon.gg:before{content:"\f260";font-family:brand-icons}i.icon.gg.circle:before{content:"\f261";font-family:brand-icons}i.icon.git:before{content:"\f1d3";font-family:brand-icons}i.icon.git.alternate:before{content:"\f841";font-family:brand-icons}i.icon.git.square:before{content:"\f1d2";font-family:brand-icons}i.icon.github:before{content:"\f09b";font-family:brand-icons}i.icon.github.alternate:before{content:"\f113";font-family:brand-icons}i.icon.github.square:before{content:"\f092";font-family:brand-icons}i.icon.gitkraken:before{content:"\f3a6";font-family:brand-icons}i.icon.gitlab:before{content:"\f296";font-family:brand-icons}i.icon.gitter:before{content:"\f426";font-family:brand-icons}i.icon.glide:before{content:"\f2a5";font-family:brand-icons}i.icon.glide.g:before{content:"\f2a6";font-family:brand-icons}i.icon.gofore:before{content:"\f3a7";font-family:brand-icons}i.icon.goodreads:before{content:"\f3a8";font-family:brand-icons}i.icon.goodreads.g:before{content:"\f3a9";font-family:brand-icons}i.icon.google:before{content:"\f1a0";font-family:brand-icons}i.icon.google.drive:before{content:"\f3aa";font-family:brand-icons}i.icon.google.play:before{content:"\f3ab";font-family:brand-icons}i.icon.google.plus:before{content:"\f2b3";font-family:brand-icons}i.icon.google.plus.g:before{content:"\f0d5";font-family:brand-icons}i.icon.google.plus.square:before{content:"\f0d4";font-family:brand-icons}i.icon.google.wallet:before{content:"\f1ee";font-family:brand-icons}i.icon.gratipay:before{content:"\f184";font-family:brand-icons}i.icon.grav:before{content:"\f2d6";font-family:brand-icons}i.icon.gripfire:before{content:"\f3ac";font-family:brand-icons}i.icon.grunt:before{content:"\f3ad";font-family:brand-icons}i.icon.gulp:before{content:"\f3ae";font-family:brand-icons}i.icon.hacker.news:before{content:"\f1d4";font-family:brand-icons}i.icon.hacker.news.square:before{content:"\f3af";font-family:brand-icons}i.icon.hackerrank:before{content:"\f5f7";font-family:brand-icons}i.icon.hips:before{content:"\f452";font-family:brand-icons}i.icon.hire.a.helper:before{content:"\f3b0";font-family:brand-icons}i.icon.hooli:before{content:"\f427";font-family:brand-icons}i.icon.hornbill:before{content:"\f592";font-family:brand-icons}i.icon.hotjar:before{content:"\f3b1";font-family:brand-icons}i.icon.houzz:before{content:"\f27c";font-family:brand-icons}i.icon.html5:before{content:"\f13b";font-family:brand-icons}i.icon.hubspot:before{content:"\f3b2";font-family:brand-icons}i.icon.imdb:before{content:"\f2d8";font-family:brand-icons}i.icon.instagram:before{content:"\f16d";font-family:brand-icons}i.icon.intercom:before{content:"\f7af";font-family:brand-icons}i.icon.internet.explorer:before{content:"\f26b";font-family:brand-icons}i.icon.invision:before{content:"\f7b0";font-family:brand-icons}i.icon.ioxhost:before{content:"\f208";font-family:brand-icons}i.icon.itch.io:before{content:"\f83a";font-family:brand-icons}i.icon.itunes:before{content:"\f3b4";font-family:brand-icons}i.icon.itunes.note:before{content:"\f3b5";font-family:brand-icons}i.icon.java:before{content:"\f4e4";font-family:brand-icons}i.icon.jedi.order:before{content:"\f50e";font-family:brand-icons}i.icon.jenkins:before{content:"\f3b6";font-family:brand-icons}i.icon.jira:before{content:"\f7b1";font-family:brand-icons}i.icon.joget:before{content:"\f3b7";font-family:brand-icons}i.icon.joomla:before{content:"\f1aa";font-family:brand-icons}i.icon.js:before{content:"\f3b8";font-family:brand-icons}i.icon.js.square:before{content:"\f3b9";font-family:brand-icons}i.icon.jsfiddle:before{content:"\f1cc";font-family:brand-icons}i.icon.kaggle:before{content:"\f5fa";font-family:brand-icons}i.icon.keybase:before{content:"\f4f5";font-family:brand-icons}i.icon.keycdn:before{content:"\f3ba";font-family:brand-icons}i.icon.kickstarter:before{content:"\f3bb";font-family:brand-icons}i.icon.kickstarter.k:before{content:"\f3bc";font-family:brand-icons}i.icon.korvue:before{content:"\f42f";font-family:brand-icons}i.icon.laravel:before{content:"\f3bd";font-family:brand-icons}i.icon.lastfm:before{content:"\f202";font-family:brand-icons}i.icon.lastfm.square:before{content:"\f203";font-family:brand-icons}i.icon.leanpub:before{content:"\f212";font-family:brand-icons}i.icon.lesscss:before{content:"\f41d";font-family:brand-icons}i.icon.linechat:before{content:"\f3c0";font-family:brand-icons}i.icon.linkedin:before{content:"\f08c";font-family:brand-icons}i.icon.linkedin.in:before{content:"\f0e1";font-family:brand-icons}i.icon.linode:before{content:"\f2b8";font-family:brand-icons}i.icon.linux:before{content:"\f17c";font-family:brand-icons}i.icon.lyft:before{content:"\f3c3";font-family:brand-icons}i.icon.magento:before{content:"\f3c4";font-family:brand-icons}i.icon.mailchimp:before{content:"\f59e";font-family:brand-icons}i.icon.mandalorian:before{content:"\f50f";font-family:brand-icons}i.icon.markdown:before{content:"\f60f";font-family:brand-icons}i.icon.mastodon:before{content:"\f4f6";font-family:brand-icons}i.icon.maxcdn:before{content:"\f136";font-family:brand-icons}i.icon.medapps:before{content:"\f3c6";font-family:brand-icons}i.icon.medium:before{content:"\f23a";font-family:brand-icons}i.icon.medium.m:before{content:"\f3c7";font-family:brand-icons}i.icon.medrt:before{content:"\f3c8";font-family:brand-icons}i.icon.meetup:before{content:"\f2e0";font-family:brand-icons}i.icon.megaport:before{content:"\f5a3";font-family:brand-icons}i.icon.mendeley:before{content:"\f7b3";font-family:brand-icons}i.icon.microsoft:before{content:"\f3ca";font-family:brand-icons}i.icon.mix:before{content:"\f3cb";font-family:brand-icons}i.icon.mixcloud:before{content:"\f289";font-family:brand-icons}i.icon.mizuni:before{content:"\f3cc";font-family:brand-icons}i.icon.modx:before{content:"\f285";font-family:brand-icons}i.icon.monero:before{content:"\f3d0";font-family:brand-icons}i.icon.napster:before{content:"\f3d2";font-family:brand-icons}i.icon.neos:before{content:"\f612";font-family:brand-icons}i.icon.nimblr:before{content:"\f5a8";font-family:brand-icons}i.icon.node:before{content:"\f419";font-family:brand-icons}i.icon.node.js:before{content:"\f3d3";font-family:brand-icons}i.icon.npm:before{content:"\f3d4";font-family:brand-icons}i.icon.ns8:before{content:"\f3d5";font-family:brand-icons}i.icon.nutritionix:before{content:"\f3d6";font-family:brand-icons}i.icon.odnoklassniki:before{content:"\f263";font-family:brand-icons}i.icon.odnoklassniki.square:before{content:"\f264";font-family:brand-icons}i.icon.old.republic:before{content:"\f510";font-family:brand-icons}i.icon.opencart:before{content:"\f23d";font-family:brand-icons}i.icon.openid:before{content:"\f19b";font-family:brand-icons}i.icon.opera:before{content:"\f26a";font-family:brand-icons}i.icon.optin.monster:before{content:"\f23c";font-family:brand-icons}i.icon.osi:before{content:"\f41a";font-family:brand-icons}i.icon.page4:before{content:"\f3d7";font-family:brand-icons}i.icon.pagelines:before{content:"\f18c";font-family:brand-icons}i.icon.palfed:before{content:"\f3d8";font-family:brand-icons}i.icon.patreon:before{content:"\f3d9";font-family:brand-icons}i.icon.paypal:before{content:"\f1ed";font-family:brand-icons}i.icon.penny.arcade:before{content:"\f704";font-family:brand-icons}i.icon.periscope:before{content:"\f3da";font-family:brand-icons}i.icon.phabricator:before{content:"\f3db";font-family:brand-icons}i.icon.phoenix.framework:before{content:"\f3dc";font-family:brand-icons}i.icon.phoenix.squadron:before{content:"\f511";font-family:brand-icons}i.icon.php:before{content:"\f457";font-family:brand-icons}i.icon.pied.piper:before{content:"\f2ae";font-family:brand-icons}i.icon.pied.piper.alternate:before{content:"\f1a8";font-family:brand-icons}i.icon.pied.piper.hat:before{content:"\f4e5"}i.icon.pied.piper.pp:before{content:"\f1a7";font-family:brand-icons}i.icon.pinterest:before{content:"\f0d2";font-family:brand-icons}i.icon.pinterest.p:before{content:"\f231";font-family:brand-icons}i.icon.pinterest.square:before{content:"\f0d3";font-family:brand-icons}i.icon.playstation:before{content:"\f3df";font-family:brand-icons}i.icon.product.hunt:before{content:"\f288";font-family:brand-icons}i.icon.pushed:before{content:"\f3e1";font-family:brand-icons}i.icon.python:before{content:"\f3e2";font-family:brand-icons}i.icon.qq:before{content:"\f1d6";font-family:brand-icons}i.icon.quinscape:before{content:"\f459";font-family:brand-icons}i.icon.quora:before{content:"\f2c4";font-family:brand-icons}i.icon.r.project:before{content:"\f4f7";font-family:brand-icons}i.icon.raspberry.pi:before{content:"\f7bb";font-family:brand-icons}i.icon.ravelry:before{content:"\f2d9";font-family:brand-icons}i.icon.react:before{content:"\f41b";font-family:brand-icons}i.icon.reacteurope:before{content:"\f75d";font-family:brand-icons}i.icon.readme:before{content:"\f4d5";font-family:brand-icons}i.icon.rebel:before{content:"\f1d0";font-family:brand-icons}i.icon.reddit:before{content:"\f1a1";font-family:brand-icons}i.icon.reddit.alien:before{content:"\f281";font-family:brand-icons}i.icon.reddit.square:before{content:"\f1a2";font-family:brand-icons}i.icon.redhat:before{content:"\f7bc";font-family:brand-icons}i.icon.redriver:before{content:"\f3e3";font-family:brand-icons}i.icon.redyeti:before{content:"\f69d";font-family:brand-icons}i.icon.renren:before{content:"\f18b";font-family:brand-icons}i.icon.replyd:before{content:"\f3e6";font-family:brand-icons}i.icon.researchgate:before{content:"\f4f8";font-family:brand-icons}i.icon.resolving:before{content:"\f3e7";font-family:brand-icons}i.icon.rev:before{content:"\f5b2";font-family:brand-icons}i.icon.rocketchat:before{content:"\f3e8";font-family:brand-icons}i.icon.rockrms:before{content:"\f3e9";font-family:brand-icons}i.icon.safari:before{content:"\f267";font-family:brand-icons}i.icon.salesforce:before{content:"\f83b";font-family:brand-icons}i.icon.sass:before{content:"\f41e";font-family:brand-icons}i.icon.schlix:before{content:"\f3ea";font-family:brand-icons}i.icon.scribd:before{content:"\f28a";font-family:brand-icons}i.icon.searchengin:before{content:"\f3eb";font-family:brand-icons}i.icon.sellcast:before{content:"\f2da";font-family:brand-icons}i.icon.sellsy:before{content:"\f213";font-family:brand-icons}i.icon.servicestack:before{content:"\f3ec";font-family:brand-icons}i.icon.shirtsinbulk:before{content:"\f214";font-family:brand-icons}i.icon.shopware:before{content:"\f5b5";font-family:brand-icons}i.icon.simplybuilt:before{content:"\f215";font-family:brand-icons}i.icon.sistrix:before{content:"\f3ee";font-family:brand-icons}i.icon.sith:before{content:"\f512";font-family:brand-icons}i.icon.sketch:before{content:"\f7c6";font-family:brand-icons}i.icon.skyatlas:before{content:"\f216";font-family:brand-icons}i.icon.skype:before{content:"\f17e";font-family:brand-icons}i.icon.slack:before{content:"\f198";font-family:brand-icons}i.icon.slack.hash:before{content:"\f3ef";font-family:brand-icons}i.icon.slideshare:before{content:"\f1e7";font-family:brand-icons}i.icon.snapchat:before{content:"\f2ab";font-family:brand-icons}i.icon.snapchat.ghost:before{content:"\f2ac";font-family:brand-icons}i.icon.snapchat.square:before{content:"\f2ad";font-family:brand-icons}i.icon.soundcloud:before{content:"\f1be";font-family:brand-icons}i.icon.sourcetree:before{content:"\f7d3";font-family:brand-icons}i.icon.speakap:before{content:"\f3f3";font-family:brand-icons}i.icon.speaker.deck:before{content:"\f83c";font-family:brand-icons}i.icon.spotify:before{content:"\f1bc";font-family:brand-icons}i.icon.squarespace:before{content:"\f5be";font-family:brand-icons}i.icon.stack.exchange:before{content:"\f18d";font-family:brand-icons}i.icon.stack.overflow:before{content:"\f16c";font-family:brand-icons}i.icon.stackpath:before{content:"\f842";font-family:brand-icons}i.icon.staylinked:before{content:"\f3f5";font-family:brand-icons}i.icon.steam:before{content:"\f1b6";font-family:brand-icons}i.icon.steam.square:before{content:"\f1b7";font-family:brand-icons}i.icon.steam.symbol:before{content:"\f3f6";font-family:brand-icons}i.icon.sticker.mule:before{content:"\f3f7";font-family:brand-icons}i.icon.strava:before{content:"\f428";font-family:brand-icons}i.icon.stripe:before{content:"\f429";font-family:brand-icons}i.icon.stripe.s:before{content:"\f42a";font-family:brand-icons}i.icon.studiovinari:before{content:"\f3f8";font-family:brand-icons}i.icon.stumbleupon:before{content:"\f1a4";font-family:brand-icons}i.icon.stumbleupon.circle:before{content:"\f1a3";font-family:brand-icons}i.icon.superpowers:before{content:"\f2dd";font-family:brand-icons}i.icon.supple:before{content:"\f3f9";font-family:brand-icons}i.icon.suse:before{content:"\f7d6";font-family:brand-icons}i.icon.symfony:before{content:"\f83d";font-family:brand-icons}i.icon.teamspeak:before{content:"\f4f9";font-family:brand-icons}i.icon.telegram:before{content:"\f2c6";font-family:brand-icons}i.icon.telegram.plane:before{content:"\f3fe";font-family:brand-icons}i.icon.tencent.weibo:before{content:"\f1d5";font-family:brand-icons}i.icon.themeco:before{content:"\f5c6";font-family:brand-icons}i.icon.themeisle:before{content:"\f2b2";font-family:brand-icons}i.icon.think.peaks:before{content:"\f731";font-family:brand-icons}i.icon.trade.federation:before{content:"\f513";font-family:brand-icons}i.icon.trello:before{content:"\f181";font-family:brand-icons}i.icon.tripadvisor:before{content:"\f262";font-family:brand-icons}i.icon.tumblr:before{content:"\f173";font-family:brand-icons}i.icon.tumblr.square:before{content:"\f174";font-family:brand-icons}i.icon.twitch:before{content:"\f1e8";font-family:brand-icons}i.icon.twitter:before{content:"\f099";font-family:brand-icons}i.icon.twitter.square:before{content:"\f081";font-family:brand-icons}i.icon.typo3:before{content:"\f42b";font-family:brand-icons}i.icon.uber:before{content:"\f402";font-family:brand-icons}i.icon.ubuntu:before{content:"\f7df";font-family:brand-icons}i.icon.uikit:before{content:"\f403";font-family:brand-icons}i.icon.uniregistry:before{content:"\f404";font-family:brand-icons}i.icon.untappd:before{content:"\f405";font-family:brand-icons}i.icon.ups:before{content:"\f7e0";font-family:brand-icons}i.icon.usb:before{content:"\f287";font-family:brand-icons}i.icon.usps:before{content:"\f7e1";font-family:brand-icons}i.icon.ussunnah:before{content:"\f407";font-family:brand-icons}i.icon.vaadin:before{content:"\f408";font-family:brand-icons}i.icon.viacoin:before{content:"\f237";font-family:brand-icons}i.icon.viadeo:before{content:"\f2a9";font-family:brand-icons}i.icon.viadeo.square:before{content:"\f2aa";font-family:brand-icons}i.icon.viber:before{content:"\f409";font-family:brand-icons}i.icon.vimeo:before{content:"\f40a";font-family:brand-icons}i.icon.vimeo.square:before{content:"\f194";font-family:brand-icons}i.icon.vimeo.v:before{content:"\f27d";font-family:brand-icons}i.icon.vine:before{content:"\f1ca";font-family:brand-icons}i.icon.vk:before{content:"\f189";font-family:brand-icons}i.icon.vnv:before{content:"\f40b";font-family:brand-icons}i.icon.vuejs:before{content:"\f41f";font-family:brand-icons}i.icon.waze:before{content:"\f83f";font-family:brand-icons}i.icon.weebly:before{content:"\f5cc";font-family:brand-icons}i.icon.weibo:before{content:"\f18a";font-family:brand-icons}i.icon.weixin:before{content:"\f1d7";font-family:brand-icons}i.icon.whatsapp:before{content:"\f232";font-family:brand-icons}i.icon.whatsapp.square:before{content:"\f40c";font-family:brand-icons}i.icon.whmcs:before{content:"\f40d";font-family:brand-icons}i.icon.wikipedia.w:before{content:"\f266";font-family:brand-icons}i.icon.windows:before{content:"\f17a";font-family:brand-icons}i.icon.wix:before{content:"\f5cf";font-family:brand-icons}i.icon.wizards.of.the.coast:before{content:"\f730";font-family:brand-icons}i.icon.wolf.pack.battalion:before{content:"\f514";font-family:brand-icons}i.icon.wordpress:before{content:"\f19a";font-family:brand-icons}i.icon.wordpress.simple:before{content:"\f411";font-family:brand-icons}i.icon.wpbeginner:before{content:"\f297";font-family:brand-icons}i.icon.wpexplorer:before{content:"\f2de";font-family:brand-icons}i.icon.wpforms:before{content:"\f298";font-family:brand-icons}i.icon.wpressr:before{content:"\f3e4";font-family:brand-icons}i.icon.xbox:before{content:"\f412";font-family:brand-icons}i.icon.xing:before{content:"\f168";font-family:brand-icons}i.icon.xing.square:before{content:"\f169";font-family:brand-icons}i.icon.y.combinator:before{content:"\f23b";font-family:brand-icons}i.icon.yahoo:before{content:"\f19e";font-family:brand-icons}i.icon.yammer:before{content:"\f840";font-family:brand-icons}i.icon.yandex:before{content:"\f413";font-family:brand-icons}i.icon.yandex.international:before{content:"\f414";font-family:brand-icons}i.icon.yarn:before{content:"\f7e3";font-family:brand-icons}i.icon.yelp:before{content:"\f1e9";font-family:brand-icons}i.icon.yoast:before{content:"\f2b1";font-family:brand-icons}i.icon.youtube:before{content:"\f167";font-family:brand-icons}i.icon.youtube.square:before{content:"\f431";font-family:brand-icons}i.icon.zhihu:before{content:"\f63f";font-family:brand-icons}i.icon.american.express.card:before,i.icon.american.express:before,i.icon.amex:before{content:"\f1f3";font-family:brand-icons}i.icon.bitbucket.square:before{content:"\f171";font-family:brand-icons}i.icon.bluetooth.alternative:before{content:"\f294";font-family:brand-icons}i.icon.credit.card.amazon.pay:before{content:"\f42d";font-family:brand-icons}i.icon.credit.card.american.express:before{content:"\f1f3";font-family:brand-icons}i.icon.credit.card.diners.club:before{content:"\f24c";font-family:brand-icons}i.icon.credit.card.discover:before{content:"\f1f2";font-family:brand-icons}i.icon.credit.card.jcb:before{content:"\f24b";font-family:brand-icons}i.icon.credit.card.mastercard:before{content:"\f1f1";font-family:brand-icons}i.icon.credit.card.paypal:before{content:"\f1f4";font-family:brand-icons}i.icon.credit.card.stripe:before{content:"\f1f5";font-family:brand-icons}i.icon.credit.card.visa:before{content:"\f1f0";font-family:brand-icons}i.icon.diners.club.card:before,i.icon.diners.club:before{content:"\f24c";font-family:brand-icons}i.icon.discover.card:before,i.icon.discover:before{content:"\f1f2";font-family:brand-icons}i.icon.disk.outline:before{content:"\f369";font-family:brand-icons}i.icon.dribble:before{content:"\f17d";font-family:brand-icons}i.icon.eercast:before{content:"\f2da";font-family:brand-icons}i.icon.envira.gallery:before{content:"\f299";font-family:brand-icons}i.icon.fa:before{content:"\f2b4";font-family:brand-icons}i.icon.facebook.official:before{content:"\f082";font-family:brand-icons}i.icon.five.hundred.pixels:before{content:"\f26e";font-family:brand-icons}i.icon.gittip:before{content:"\f184";font-family:brand-icons}i.icon.google.plus.circle:before,i.icon.google.plus.official:before{content:"\f2b3";font-family:brand-icons}i.icon.japan.credit.bureau.card:before,i.icon.japan.credit.bureau:before,i.icon.jcb:before{content:"\f24b";font-family:brand-icons}i.icon.linkedin.square:before{content:"\f08c";font-family:brand-icons}i.icon.mastercard.card:before,i.icon.mastercard:before{content:"\f1f1";font-family:brand-icons}i.icon.microsoft.edge:before,i.icon.ms.edge:before{content:"\f282";font-family:brand-icons}i.icon.new.pied.piper:before{content:"\f2ae";font-family:brand-icons}i.icon.optinmonster:before{content:"\f23c";font-family:brand-icons}i.icon.paypal.card:before{content:"\f1f4";font-family:brand-icons}i.icon.pied.piper.hat:before{content:"\f2ae";font-family:brand-icons}i.icon.pocket:before{content:"\f265";font-family:brand-icons}i.icon.stripe.card:before{content:"\f1f5";font-family:brand-icons}i.icon.theme.isle:before{content:"\f2b2";font-family:brand-icons}i.icon.visa.card:before,i.icon.visa:before{content:"\f1f0";font-family:brand-icons}i.icon.wechat:before{content:"\f1d7";font-family:brand-icons}i.icon.wikipedia:before{content:"\f266";font-family:brand-icons}i.icon.wordpress.beginner:before{content:"\f297";font-family:brand-icons}i.icon.wordpress.forms:before{content:"\f298";font-family:brand-icons}i.icon.yc:before,i.icon.ycombinator:before{content:"\f23b";font-family:brand-icons}i.icon.youtube.play:before{content:"\f167";font-family:brand-icons}
/*!
 * # Fomantic-UI - Image
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.image{background-color:transparent;display:inline-block;max-width:100%;position:relative;vertical-align:middle}img.ui.image{display:block}.ui.image img,.ui.image svg{display:block;height:auto;max-width:100%}.ui.hidden.images,.ui.ui.hidden.image{display:none}.ui.hidden.transition.image,.ui.hidden.transition.images{display:block;visibility:hidden}.ui.images>.hidden.transition{display:inline-block;visibility:hidden}.ui.disabled.image,.ui.disabled.images{cursor:default;opacity:.45}.ui.inline.image,.ui.inline.image img,.ui.inline.image svg{display:inline-block}.ui.top.aligned.image,.ui.top.aligned.image img,.ui.top.aligned.image svg,.ui.top.aligned.images .image{display:inline-block;vertical-align:top}.ui.middle.aligned.image,.ui.middle.aligned.image img,.ui.middle.aligned.image svg,.ui.middle.aligned.images .image{display:inline-block;vertical-align:middle}.ui.bottom.aligned.image,.ui.bottom.aligned.image img,.ui.bottom.aligned.image svg,.ui.bottom.aligned.images .image{display:inline-block;vertical-align:bottom}.ui.rounded.image,.ui.rounded.image>*,.ui.rounded.images .image,.ui.rounded.images .image>*{border-radius:.3125em}.ui.bordered.image img,.ui.bordered.image svg,.ui.bordered.images .image,.ui.bordered.images img,.ui.bordered.images svg,img.ui.bordered.image{border:1px solid rgba(0,0,0,.1)}.ui.circular.image,.ui.circular.images{overflow:hidden}.ui.circular.image,.ui.circular.image>*,.ui.circular.images .image,.ui.circular.images .image>*{-webkit-border-radius:500rem;-moz-border-radius:500rem;border-radius:500rem}.ui.fluid.image,.ui.fluid.image img,.ui.fluid.image svg,.ui.fluid.images,.ui.fluid.images img,.ui.fluid.images svg{display:block;height:auto;width:100%}.ui.avatar.image,.ui.avatar.image img,.ui.avatar.image svg,.ui.avatar.images .image,.ui.avatar.images img,.ui.avatar.images svg{-webkit-border-radius:500rem;-moz-border-radius:500rem;border-radius:500rem;display:inline-block;height:2em;margin-right:.25em;width:2em}.ui.spaced.image{display:inline-block!important;margin-left:.5em;margin-right:.5em}.ui[class*="left spaced"].image{margin-left:.5em;margin-right:0}.ui[class*="right spaced"].image{margin-left:0;margin-right:.5em}.ui.floated.image,.ui.floated.images{float:left;margin-bottom:1em;margin-right:1em}.ui.right.floated.image,.ui.right.floated.images{float:right;margin-bottom:1em;margin-left:1em;margin-right:0}.ui.floated.image:last-child,.ui.floated.images:last-child{margin-bottom:0}.ui.centered.image,.ui.centered.images{margin-left:auto;margin-right:auto}.ui.mini.image,.ui.mini.images .image,.ui.mini.images img,.ui.mini.images svg{font-size:.78571429rem;height:auto;width:35px}.ui.tiny.image,.ui.tiny.images .image,.ui.tiny.images img,.ui.tiny.images svg{font-size:.85714286rem;height:auto;width:80px}.ui.small.image,.ui.small.images .image,.ui.small.images img,.ui.small.images svg{font-size:.92857143rem;height:auto;width:150px}.ui.medium.image,.ui.medium.images .image,.ui.medium.images img,.ui.medium.images svg{font-size:1rem;height:auto;width:300px}.ui.large.image,.ui.large.images .image,.ui.large.images img,.ui.large.images svg{font-size:1.14285714rem;height:auto;width:450px}.ui.big.image,.ui.big.images .image,.ui.big.images img,.ui.big.images svg{font-size:1.28571429rem;height:auto;width:600px}.ui.huge.image,.ui.huge.images .image,.ui.huge.images img,.ui.huge.images svg{font-size:1.42857143rem;height:auto;width:800px}.ui.massive.image,.ui.massive.images .image,.ui.massive.images img,.ui.massive.images svg{font-size:1.71428571rem;height:auto;width:960px}.ui.images{font-size:0;margin:0 -.25rem}.ui.images .image,.ui.images>img,.ui.images>svg{display:inline-block;margin:0 .25rem .5rem}
/*!
 * # Fomantic-UI - Input
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.input{color:rgba(0,0,0,.87);display:inline-flex;font-style:normal;font-weight:400;position:relative}.ui.input>input{-webkit-tap-highlight-color:rgba(255,255,255,0);background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:none;color:rgba(0,0,0,.87);flex:1 0 auto;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;line-height:1.21428571em;margin:0;max-width:100%;outline:none;padding:.67857143em 1em;text-align:left;transition:box-shadow .1s ease,border-color .1s ease}.ui.input>input::-webkit-input-placeholder{color:hsla(0,0%,75%,.87)}.ui.input>input::-moz-placeholder{color:hsla(0,0%,75%,.87)}.ui.input>input:-ms-input-placeholder{color:hsla(0,0%,75%,.87)}.ui.disabled.input,.ui.input:not(.disabled) input[disabled]{opacity:.45}.ui.disabled.input>input,.ui.input:not(.disabled) input[disabled]{pointer-events:none}.ui.input.down input,.ui.input>input:active{background:#fafafa;border-color:rgba(0,0,0,.3);box-shadow:none;color:rgba(0,0,0,.87)}.ui.loading.loading.input>i.icon:before{border:.2em solid rgba(0,0,0,.1);border-radius:500rem}.ui.loading.loading.input>i.icon:after,.ui.loading.loading.input>i.icon:before{content:"";height:1.28571429em;left:50%;margin:-.64285714em 0 0 -.64285714em;position:absolute;top:50%;width:1.28571429em}.ui.loading.loading.input>i.icon:after{animation:loader .6s linear infinite;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent}.ui.input.focus>input,.ui.input>input:focus{background:#fff;border-color:#85b7d9;box-shadow:none;color:rgba(0,0,0,.8)}.ui.input.focus>input::-webkit-input-placeholder,.ui.input>input:focus::-webkit-input-placeholder{color:hsla(0,0%,45%,.87)}.ui.input.focus>input::-moz-placeholder,.ui.input>input:focus::-moz-placeholder{color:hsla(0,0%,45%,.87)}.ui.input.focus>input:-ms-input-placeholder,.ui.input>input:focus:-ms-input-placeholder{color:hsla(0,0%,45%,.87)}.ui.input.error>input{background-color:#fff6f6;border-color:#e0b4b4;box-shadow:none;color:#9f3a38}.ui.input.error>input::-webkit-input-placeholder{color:#e7bdbc}.ui.input.error>input::-moz-placeholder{color:#e7bdbc}.ui.input.error>input:-ms-input-placeholder{color:#e7bdbc!important}.ui.input.error>input:focus::-webkit-input-placeholder{color:#da9796}.ui.input.error>input:focus::-moz-placeholder{color:#da9796}.ui.input.error>input:focus:-ms-input-placeholder{color:#da9796!important}.ui.transparent.input>input,.ui.transparent.input>textarea{background-color:transparent!important;border-color:transparent!important;border-radius:0!important;box-shadow:none!important;padding:0}.field .ui.transparent.input>textarea{padding:.67857143em 1em}:not(.field)>.ui.transparent.icon.input>i.icon{width:1.1em}:not(.field)>.ui.transparent.icon.input>input{padding-left:0;padding-right:2em}:not(.field)>.ui.transparent[class*="left icon"].input>input{padding-left:2em;padding-right:0}.ui.transparent.inverted.input{color:#fff}.ui.ui.transparent.inverted.input>input,.ui.ui.transparent.inverted.input>textarea{color:inherit}.ui.transparent.inverted.input>input::-webkit-input-placeholder{color:hsla(0,0%,100%,.5)}.ui.transparent.inverted.input>input::-moz-placeholder{color:hsla(0,0%,100%,.5)}.ui.transparent.inverted.input>input:-ms-input-placeholder{color:hsla(0,0%,100%,.5)}.ui.icon.input>i.icon{border-radius:0 .28571429rem .28571429rem 0;cursor:default;height:100%;line-height:1;margin:0;opacity:.5;position:absolute;right:0;text-align:center;top:0;transition:opacity .3s ease;width:2.67142857em}.ui.icon.input>i.icon:not(.link){pointer-events:none}.ui.ui.icon.input>input,.ui.ui.icon.input>textarea{padding-right:2.67142857em}.ui.icon.input>i.icon:after,.ui.icon.input>i.icon:before{left:0;margin-top:-.5em;position:absolute;text-align:center;top:50%;width:100%}.ui.icon.input>i.link.icon{cursor:pointer}.ui.icon.input>i.circular.icon{right:.5em;top:.35em}.ui[class*="left icon"].input>i.icon{border-radius:.28571429rem 0 0 .28571429rem;left:1px;right:auto}.ui[class*="left icon"].input>i.circular.icon{left:.5em;right:auto}.ui.ui[class*="left icon"].input>input,.ui.ui[class*="left icon"].input>textarea{padding-left:2.67142857em;padding-right:1em}.ui.icon.input>input:focus~i.icon,.ui.icon.input>textarea:focus~i.icon{opacity:1}.ui.labeled.input>.label{flex:0 0 auto;font-size:1em;margin:0}.ui.labeled.input>.label:not(.corner){padding-bottom:.78571429em;padding-top:.78571429em}.ui.labeled.input:not([class*="corner labeled"]) .label:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.ui.labeled.input:not([class*="corner labeled"]) .label:first-child+input{border-bottom-left-radius:0;border-left-color:transparent;border-top-left-radius:0}.ui.labeled.input:not([class*="corner labeled"]) .label:first-child+input:focus{border-left-color:#85b7d9}.ui[class*="right labeled"].input>input{border-bottom-right-radius:0!important;border-right-color:transparent!important;border-top-right-radius:0!important}.ui[class*="right labeled"].input>input+.label{border-bottom-left-radius:0;border-top-left-radius:0}.ui[class*="right labeled"].input>input:focus{border-right-color:#85b7d9!important}.ui.labeled.input .corner.label{border-radius:0 .28571429rem 0 0;font-size:.64285714em;right:1px;top:1px}.ui[class*="corner labeled"]:not([class*="left corner labeled"]).labeled.input>input,.ui[class*="corner labeled"]:not([class*="left corner labeled"]).labeled.input>textarea{padding-right:2.5em!important}.ui[class*="corner labeled"].icon.input:not([class*="left corner labeled"])>input,.ui[class*="corner labeled"].icon.input:not([class*="left corner labeled"])>textarea{padding-right:3.25em!important}.ui[class*="corner labeled"].icon.input:not([class*="left corner labeled"])>.icon{margin-right:1.25em}.ui[class*="left corner labeled"].labeled.input>input,.ui[class*="left corner labeled"].labeled.input>textarea{padding-left:2.5em!important}.ui[class*="left corner labeled"].icon.input>input,.ui[class*="left corner labeled"].icon.input>textarea{padding-left:3.25em!important}.ui[class*="left corner labeled"].icon.input>.icon{margin-left:1.25em}.ui.icon.input>textarea~.icon{height:3em}:not(.field)>.ui.transparent.icon.input>textarea~.icon{height:1.3em}.ui.input>.ui.corner.label{right:1px;top:1px}.ui.input>.ui.left.corner.label{left:1px;right:auto}.ui.action.input.error>.ui.button,.ui.form>.field.error>.ui.action.input>.ui.button,.ui.form>.field.error>.ui.labeled.input:not([class*="corner labeled"])>.ui.label,.ui.labeled.input.error:not([class*="corner labeled"])>.ui.label{border-bottom:1px solid #e0b4b4;border-top:1px solid #e0b4b4}.ui.form>.field.error>.ui.labeled.input:not(.right):not([class*="corner labeled"])>.ui.label,.ui.form>.field.error>.ui.left.action.input>.ui.button,.ui.labeled.input.error:not(.right):not([class*="corner labeled"])>.ui.label,.ui.left.action.input.error>.ui.button{border-left:1px solid #e0b4b4}.ui.action.input.error:not(.left)>input+.ui.button,.ui.form>.field.error>.ui.action.input:not(.left)>input+.ui.button,.ui.form>.field.error>.ui.right.labeled.input:not([class*="corner labeled"])>input+.ui.label,.ui.right.labeled.input.error:not([class*="corner labeled"])>input+.ui.label{border-right:1px solid #e0b4b4}.ui.form>.field.error>.ui.right.labeled.input:not([class*="corner labeled"])>.ui.label:first-child,.ui.right.labeled.input.error:not([class*="corner labeled"])>.ui.label:first-child{border-left:1px solid #e0b4b4}.ui.action.input>.button,.ui.action.input>.buttons{align-items:center;display:flex;flex:0 0 auto}.ui.action.input>.button,.ui.action.input>.buttons>.button{margin:0;padding-bottom:.78571429em;padding-top:.78571429em}.ui.action.input:not([class*="left action"])>input{border-bottom-right-radius:0!important;border-right-color:transparent!important;border-top-right-radius:0!important}.ui.action.input:not([class*="left action"])>.button:not(:first-child),.ui.action.input:not([class*="left action"])>.buttons:not(:first-child)>.button,.ui.action.input:not([class*="left action"])>.dropdown:not(:first-child){border-radius:0}.ui.action.input:not([class*="left action"])>.button:last-child,.ui.action.input:not([class*="left action"])>.buttons:last-child>.button,.ui.action.input:not([class*="left action"])>.dropdown:last-child{border-radius:0 .28571429rem .28571429rem 0}.ui.action.input:not([class*="left action"])>input:focus{border-right-color:#85b7d9!important}.ui[class*="left action"].input>input{border-bottom-left-radius:0!important;border-left-color:transparent!important;border-top-left-radius:0!important}.ui[class*="left action"].input>.button,.ui[class*="left action"].input>.buttons>.button,.ui[class*="left action"].input>.dropdown{border-radius:0}.ui[class*="left action"].input>.button:first-child,.ui[class*="left action"].input>.buttons:first-child>.button,.ui[class*="left action"].input>.dropdown:first-child{border-radius:.28571429rem 0 0 .28571429rem}.ui[class*="left action"].input>input:focus{border-left-color:#85b7d9!important}.ui.inverted.input>input{border:none}.ui.fluid.input{display:flex}.ui.fluid.input>input{width:0!important}.ui.mini.input{font-size:.78571429em}.ui.tiny.input{font-size:.85714286em}.ui.small.input{font-size:.92857143em}.ui.input{font-size:1em}.ui.large.input{font-size:1.14285714em}.ui.big.input{font-size:1.28571429em}.ui.huge.input{font-size:1.42857143em}.ui.massive.input{font-size:1.71428571em}
/*!
 * # Fomantic-UI - Label
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.label{background-color:#e8e8e8;background-image:none;border:0 solid transparent;border-radius:.28571429rem;color:rgba(0,0,0,.6);display:inline-block;font-weight:700;line-height:1;margin:0 .14285714em;padding:.5833em .833em;text-transform:none;transition:background .1s ease;vertical-align:baseline}.ui.label:first-child{margin-left:0}.ui.label:last-child{margin-right:0}.ui.label>a,a.ui.label{cursor:pointer}.ui.label>a{color:inherit;opacity:.5;transition:opacity .1s ease}.ui.label>a:hover{opacity:1}.ui.label>img{height:2.1666em;vertical-align:middle;width:auto!important}.ui.label>.icon,.ui.left.icon.label>.icon{margin:0 .75em 0 0;width:auto}.ui.label>.detail{display:inline-block;font-weight:700;margin-left:1em;opacity:.8;vertical-align:top}.ui.label>.detail .icon{margin:0 .25em 0 0}.ui.label>.close.icon,.ui.label>.delete.icon{cursor:pointer;font-size:.92857143em;opacity:.5;transition:background .1s ease}.ui.label>.close.icon:hover,.ui.label>.delete.icon:hover{opacity:1}.ui.label.left.icon>.close.icon,.ui.label.left.icon>.delete.icon{margin:0 .5em 0 0}.ui.label:not(.icon)>.close.icon,.ui.label:not(.icon)>.delete.icon{margin:0 0 0 .5em}.ui.icon.label>.icon{margin:0 auto}.ui.right.icon.label>.icon{margin:0 0 0 .75em}.ui.labels>.label{margin:0 .5em .5em 0}.ui.header>.ui.label{margin-top:-.29165em}.ui.attached.segment>.ui.top.left.attached.label,.ui.bottom.attached.segment>.ui.top.left.attached.label{border-top-left-radius:0}.ui.attached.segment>.ui.top.right.attached.label,.ui.bottom.attached.segment>.ui.top.right.attached.label{border-top-right-radius:0}.ui.top.attached.segment>.ui.bottom.left.attached.label{border-bottom-left-radius:0}.ui.top.attached.segment>.ui.bottom.right.attached.label{border-bottom-right-radius:0}.ui.top.attached.label+:not(.attached),.ui.top.attached.label~.ui.bottom.attached.label+:not(.attached){margin-top:2rem!important}.ui.bottom.attached.label~:last-child:not(.attached){margin-bottom:2rem!important;margin-top:0}.ui.image.label{background:#e8e8e8;border-radius:.28571429rem;box-shadow:none;margin-bottom:0;margin-top:0;max-width:9999px;padding:.5833em .833em .5833em .5em;text-transform:none;vertical-align:baseline;width:auto!important}.ui.image.label img{border-radius:.28571429rem 0 0 .28571429rem;display:inline-block;height:2.1666em;margin:-.5833em .5em -.5833em -.5em;vertical-align:top}.ui.image.label .detail{background:rgba(0,0,0,.1);border-radius:0 .28571429rem .28571429rem 0;margin:-.5833em -.833em -.5833em .5em;padding:.5833em .833em}.ui.tag.label,.ui.tag.labels .label{border-radius:0 .28571429rem .28571429rem 0;margin-left:1em;padding-left:1.5em;padding-right:1.5em;position:relative;transition:none}.ui.tag.label:before,.ui.tag.labels .label:before{background-color:inherit;background-image:none;content:"";height:1.56em;position:absolute;right:100%;top:50%;transform:translateY(-50%) translateX(50%) rotate(-45deg);transition:none;width:1.56em}.ui.tag.label:after,.ui.tag.labels .label:after{background-color:#fff;border-radius:500rem;box-shadow:0 -1px 1px 0 rgba(0,0,0,.3);content:"";height:.5em;left:-.25em;margin-top:-.25em;position:absolute;top:50%;width:.5em}.ui.basic.tag.label:before,.ui.basic.tag.labels .label:before{border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.basic.tag.label:after,.ui.basic.tag.labels .label:after{box-shadow:0 -1px 3px 0 rgba(0,0,0,.8)}.ui.corner.label{background-color:transparent!important;border-color:#e8e8e8;height:4em;margin:0;padding:0;text-align:center;width:4em;z-index:1}.ui.corner.label,.ui.corner.label:after{position:absolute;right:0;top:0;transition:border-color .1s ease}.ui.corner.label:after{background-color:transparent;border-color:transparent;border-right-color:inherit;border-style:solid;border-width:0 4em 4em 0;content:"";height:0;width:0;z-index:-1}.ui.corner.label .icon{cursor:inherit;font-size:1.14285714em;left:auto;margin:0;position:absolute;right:.57142857em;top:.64285714em}.ui.left.corner.label,.ui.left.corner.label:after{left:0;right:auto}.ui.left.corner.label:after{border-color:transparent;border-style:solid;border-top-color:inherit;border-width:4em 4em 0 0}.ui.left.corner.label .icon{left:.57142857em;right:auto}.ui.segment>.ui.corner.label{right:-1px;top:-1px}.ui.segment>.ui.left.corner.label{left:-1px;right:auto}.ui.ribbon.label{border-color:rgba(0,0,0,.15);border-radius:0 .28571429rem .28571429rem 0;margin:0;min-width:max-content;position:relative}.ui.ribbon.label:after{background-color:transparent;border-color:transparent;border-right-color:inherit;border-style:solid;border-width:0 1.2em 1.2em 0;content:"";height:0;left:0;position:absolute;top:100%;width:0}.ui.ribbon.label{left:calc(-1rem - 1.2em);margin-right:-1.2em;padding-left:calc(1rem + 1.2em);padding-right:1.2em}.ui[class*="right ribbon"].label{left:calc(100% + 1rem + 1.2em);padding-left:1.2em;padding-right:calc(1rem + 1.2em)}.ui.basic.ribbon.label{padding-bottom:calc(.5833em - 1px);padding-top:calc(.5833em - 1px)}.ui.basic.ribbon.label:not([class*="right ribbon"]){padding-left:calc(1rem + 1.2em - 1px);padding-right:calc(1.2em - 1px)}.ui.basic[class*="right ribbon"].label{padding-left:calc(1.2em - 1px);padding-right:calc(1rem + 1.2em - 1px)}.ui.basic.ribbon.label:after{top:calc(100% + 1px)}.ui.basic.ribbon.label:not([class*="right ribbon"]):after{left:-1px}.ui.basic[class*="right ribbon"].label:after{right:-1px}.ui[class*="right ribbon"].label{border-radius:.28571429rem 0 0 .28571429rem;text-align:left;transform:translateX(-100%)}.ui[class*="right ribbon"].label:after{border-color:transparent;border-style:solid;border-top-color:inherit;border-width:1.2em 1.2em 0 0;left:auto;right:0}.ui.card .image>.ribbon.label,.ui.image>.ribbon.label{position:absolute;top:1rem}.ui.card .image>.ui.ribbon.label,.ui.image>.ui.ribbon.label{left:calc(.05rem - 1.2em)}.ui.card .image>.ui[class*="right ribbon"].label,.ui.image>.ui[class*="right ribbon"].label{left:calc(100% - .05rem + 1.2em);padding-left:.833em}.ui.table td>.ui.ribbon.label{left:-2.2em}.ui.table td>.ui[class*="right ribbon"].label{left:calc(100% + 2.2em);padding-left:.833em}.ui.attached.label,.ui[class*="top attached"].label{border-radius:.21428571rem .21428571rem 0 0;left:0;margin:0;padding:.75em 1em;position:absolute;top:0;width:100%}.ui[class*="bottom attached"].label{border-radius:0 0 .21428571rem .21428571rem;bottom:0;top:auto}.ui[class*="top left attached"].label{border-radius:.21428571rem 0 .28571429rem 0;margin-top:0!important;width:auto}.ui[class*="top right attached"].label{border-radius:0 .21428571rem 0 .28571429rem;left:auto;right:0;width:auto}.ui[class*="bottom left attached"].label{border-radius:0 .28571429rem 0 .21428571rem;bottom:0;top:auto;width:auto}.ui[class*="bottom right attached"].label{border-radius:.28571429rem 0 .21428571rem 0;bottom:0;left:auto;right:0;top:auto;width:auto}.ui.label.disabled{opacity:.5}.ui.labels a.label:hover,a.ui.label:hover{background-color:#e0e0e0;background-image:none;border-color:#e0e0e0;color:rgba(0,0,0,.8)}.ui.labels a.label:hover:before,a.ui.label:hover:before{color:rgba(0,0,0,.8)}.ui.active.label{border-color:#d0d0d0}.ui.active.label,.ui.active.label:before{background-color:#d0d0d0;background-image:none;color:rgba(0,0,0,.95)}.ui.labels a.active.label:hover,a.ui.active.label:hover{border-color:#c8c8c8}.ui.labels a.active.label:hover,.ui.labels a.active.label:hover:before,a.ui.active.label:hover,a.ui.active.label:hover:before{background-color:#c8c8c8;background-image:none;color:rgba(0,0,0,.95)}.ui.label.visible:not(.dropdown),.ui.labels.visible .label{display:inline-block!important}.ui.label.hidden,.ui.labels.hidden .label{display:none!important}.ui.basic.label,.ui.basic.labels .label{background:none #fff;border:1px solid rgba(34,36,38,.15);box-shadow:none;color:rgba(0,0,0,.87)}.ui.basic.labels a.label:hover,a.ui.basic.label:hover{background:none #fff;box-shadow:none;color:#1e70bf;text-decoration:none}.ui.basic.pointing.label:before{border-color:inherit}.ui.fluid.labels>.label,.ui.label.fluid{box-sizing:border-box;width:100%}.ui.inverted.label,.ui.inverted.labels .label{background-color:#b5b5b5;color:hsla(0,0%,100%,.9)}.ui.inverted.corner.label{border-color:#b5b5b5}.ui.inverted.corner.label:hover{border-color:#e8e8e8;transition:none}.ui.inverted.basic.label,.ui.inverted.basic.label:hover,.ui.inverted.basic.labels .label{background:#1b1c1d;border-color:hsla(0,0%,100%,.5)}.ui.inverted.basic.label:hover{color:#4183c4}.ui.primary.labels .label,.ui.ui.ui.primary.label{background-color:#2185d0;border-color:#2185d0;color:hsla(0,0%,100%,.9)}.ui.primary.labels a.label:hover,a.ui.ui.ui.primary.label:hover{background-color:#1678c2;border-color:#1678c2;color:#fff}.ui.ui.ui.primary.ribbon.label{border-color:#1a69a4}.ui.basic.labels .primary.label,.ui.ui.ui.basic.primary.label{background:none #fff;border-color:#2185d0;color:#2185d0}.ui.basic.labels a.primary.label:hover,a.ui.ui.ui.basic.primary.label:hover{background:none #fff;border-color:#1678c2;color:#1678c2}.ui.inverted.labels .primary.label,.ui.ui.ui.inverted.primary.label{background-color:#54c8ff;border-color:#54c8ff;color:#1b1c1d}.ui.inverted.labels a.primary.label:hover,a.ui.ui.ui.inverted.primary.label:hover{background-color:#21b8ff;border-color:#21b8ff;color:#1b1c1d}.ui.ui.ui.inverted.primary.ribbon.label{border-color:#21b8ff}.ui.inverted.basic.labels .primary.label,.ui.ui.ui.inverted.basic.primary.label{background-color:#1b1c1d;border-color:#54c8ff;color:#54c8ff}.ui.inverted.basic.labels a.primary.label:hover,a.ui.ui.ui.inverted.basic.primary.label:hover{background-color:#1b1c1d;border-color:#21b8ff;color:#21b8ff}.ui.inverted.basic.tag.labels .primary.label,.ui.ui.ui.inverted.primary.basic.tag.label{border:1px solid #54c8ff}.ui.inverted.basic.tag.labels .primary.label:before,.ui.ui.ui.inverted.primary.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.secondary.labels .label,.ui.ui.ui.secondary.label{background-color:#1b1c1d;border-color:#1b1c1d;color:hsla(0,0%,100%,.9)}.ui.secondary.labels a.label:hover,a.ui.ui.ui.secondary.label:hover{background-color:#27292a;border-color:#27292a;color:#fff}.ui.ui.ui.secondary.ribbon.label{border-color:#020203}.ui.basic.labels .secondary.label,.ui.ui.ui.basic.secondary.label{background:none #fff;border-color:#1b1c1d;color:#1b1c1d}.ui.basic.labels a.secondary.label:hover,a.ui.ui.ui.basic.secondary.label:hover{background:none #fff;border-color:#27292a;color:#27292a}.ui.inverted.labels .secondary.label,.ui.ui.ui.inverted.secondary.label{background-color:#545454;border-color:#545454;color:#1b1c1d}.ui.inverted.labels a.secondary.label:hover,a.ui.ui.ui.inverted.secondary.label:hover{background-color:#6e6e6e;border-color:#6e6e6e;color:#1b1c1d}.ui.ui.ui.inverted.secondary.ribbon.label{border-color:#3b3b3b}.ui.inverted.basic.labels .secondary.label,.ui.ui.ui.inverted.basic.secondary.label{background-color:#1b1c1d;border-color:#545454;color:#545454}.ui.inverted.basic.labels a.secondary.label:hover,a.ui.ui.ui.inverted.basic.secondary.label:hover{background-color:#1b1c1d;border-color:#6e6e6e;color:#6e6e6e}.ui.inverted.basic.tag.labels .secondary.label,.ui.ui.ui.inverted.secondary.basic.tag.label{border:1px solid #545454}.ui.inverted.basic.tag.labels .secondary.label:before,.ui.ui.ui.inverted.secondary.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.red.labels .label,.ui.ui.ui.red.label{background-color:#db2828;border-color:#db2828;color:#fff}.ui.red.labels a.label:hover,a.ui.ui.ui.red.label:hover{background-color:#d01919;border-color:#d01919;color:#fff}.ui.ui.ui.red.ribbon.label{border-color:#b21e1e}.ui.basic.labels .red.label,.ui.ui.ui.basic.red.label{background:none #fff;border-color:#db2828;color:#db2828}.ui.basic.labels a.red.label:hover,a.ui.ui.ui.basic.red.label:hover{background:none #fff;border-color:#d01919;color:#d01919}.ui.inverted.labels .red.label,.ui.ui.ui.inverted.red.label{background-color:#ff695e;border-color:#ff695e;color:#1b1c1d}.ui.inverted.labels a.red.label:hover,a.ui.ui.ui.inverted.red.label:hover{background-color:#ff392b;border-color:#ff392b;color:#1b1c1d}.ui.ui.ui.inverted.red.ribbon.label{border-color:#ff392b}.ui.inverted.basic.labels .red.label,.ui.ui.ui.inverted.basic.red.label{background-color:#1b1c1d;border-color:#ff695e;color:#ff695e}.ui.inverted.basic.labels a.red.label:hover,a.ui.ui.ui.inverted.basic.red.label:hover{background-color:#1b1c1d;border-color:#ff392b;color:#ff392b}.ui.inverted.basic.tag.labels .red.label,.ui.ui.ui.inverted.red.basic.tag.label{border:1px solid #ff695e}.ui.inverted.basic.tag.labels .red.label:before,.ui.ui.ui.inverted.red.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.orange.labels .label,.ui.ui.ui.orange.label{background-color:#f2711c;border-color:#f2711c;color:#fff}.ui.orange.labels a.label:hover,a.ui.ui.ui.orange.label:hover{background-color:#f26202;border-color:#f26202;color:#fff}.ui.ui.ui.orange.ribbon.label{border-color:#cf590c}.ui.basic.labels .orange.label,.ui.ui.ui.basic.orange.label{background:none #fff;border-color:#f2711c;color:#f2711c}.ui.basic.labels a.orange.label:hover,a.ui.ui.ui.basic.orange.label:hover{background:none #fff;border-color:#f26202;color:#f26202}.ui.inverted.labels .orange.label,.ui.ui.ui.inverted.orange.label{background-color:#ff851b;border-color:#ff851b;color:#1b1c1d}.ui.inverted.labels a.orange.label:hover,a.ui.ui.ui.inverted.orange.label:hover{background-color:#e76b00;border-color:#e76b00;color:#1b1c1d}.ui.ui.ui.inverted.orange.ribbon.label{border-color:#e76b00}.ui.inverted.basic.labels .orange.label,.ui.ui.ui.inverted.basic.orange.label{background-color:#1b1c1d;border-color:#ff851b;color:#ff851b}.ui.inverted.basic.labels a.orange.label:hover,a.ui.ui.ui.inverted.basic.orange.label:hover{background-color:#1b1c1d;border-color:#e76b00;color:#e76b00}.ui.inverted.basic.tag.labels .orange.label,.ui.ui.ui.inverted.orange.basic.tag.label{border:1px solid #ff851b}.ui.inverted.basic.tag.labels .orange.label:before,.ui.ui.ui.inverted.orange.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.ui.ui.yellow.label,.ui.yellow.labels .label{background-color:#fbbd08;border-color:#fbbd08;color:#fff}.ui.yellow.labels a.label:hover,a.ui.ui.ui.yellow.label:hover{background-color:#eaae00;border-color:#eaae00;color:#fff}.ui.ui.ui.yellow.ribbon.label{border-color:#cd9903}.ui.basic.labels .yellow.label,.ui.ui.ui.basic.yellow.label{background:none #fff;border-color:#fbbd08;color:#fbbd08}.ui.basic.labels a.yellow.label:hover,a.ui.ui.ui.basic.yellow.label:hover{background:none #fff;border-color:#eaae00;color:#eaae00}.ui.inverted.labels .yellow.label,.ui.ui.ui.inverted.yellow.label{background-color:#ffe21f;border-color:#ffe21f;color:#1b1c1d}.ui.inverted.labels a.yellow.label:hover,a.ui.ui.ui.inverted.yellow.label:hover{background-color:#ebcd00;border-color:#ebcd00;color:#1b1c1d}.ui.ui.ui.inverted.yellow.ribbon.label{border-color:#ebcd00}.ui.inverted.basic.labels .yellow.label,.ui.ui.ui.inverted.basic.yellow.label{background-color:#1b1c1d;border-color:#ffe21f;color:#ffe21f}.ui.inverted.basic.labels a.yellow.label:hover,a.ui.ui.ui.inverted.basic.yellow.label:hover{background-color:#1b1c1d;border-color:#ebcd00;color:#ebcd00}.ui.inverted.basic.tag.labels .yellow.label,.ui.ui.ui.inverted.yellow.basic.tag.label{border:1px solid #ffe21f}.ui.inverted.basic.tag.labels .yellow.label:before,.ui.ui.ui.inverted.yellow.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.olive.labels .label,.ui.ui.ui.olive.label{background-color:#b5cc18;border-color:#b5cc18;color:#fff}.ui.olive.labels a.label:hover,a.ui.ui.ui.olive.label:hover{background-color:#a7bd0d;border-color:#a7bd0d;color:#fff}.ui.ui.ui.olive.ribbon.label{border-color:#8d9e13}.ui.basic.labels .olive.label,.ui.ui.ui.basic.olive.label{background:none #fff;border-color:#b5cc18;color:#b5cc18}.ui.basic.labels a.olive.label:hover,a.ui.ui.ui.basic.olive.label:hover{background:none #fff;border-color:#a7bd0d;color:#a7bd0d}.ui.inverted.labels .olive.label,.ui.ui.ui.inverted.olive.label{background-color:#d9e778;border-color:#d9e778;color:#1b1c1d}.ui.inverted.labels a.olive.label:hover,a.ui.ui.ui.inverted.olive.label:hover{background-color:#d2e745;border-color:#d2e745;color:#1b1c1d}.ui.ui.ui.inverted.olive.ribbon.label{border-color:#cddf4d}.ui.inverted.basic.labels .olive.label,.ui.ui.ui.inverted.basic.olive.label{background-color:#1b1c1d;border-color:#d9e778;color:#d9e778}.ui.inverted.basic.labels a.olive.label:hover,a.ui.ui.ui.inverted.basic.olive.label:hover{background-color:#1b1c1d;border-color:#d2e745;color:#d2e745}.ui.inverted.basic.tag.labels .olive.label,.ui.ui.ui.inverted.olive.basic.tag.label{border:1px solid #d9e778}.ui.inverted.basic.tag.labels .olive.label:before,.ui.ui.ui.inverted.olive.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.green.labels .label,.ui.ui.ui.green.label{background-color:#21ba45;border-color:#21ba45;color:#fff}.ui.green.labels a.label:hover,a.ui.ui.ui.green.label:hover{background-color:#16ab39;border-color:#16ab39;color:#fff}.ui.ui.ui.green.ribbon.label{border-color:#198f35}.ui.basic.labels .green.label,.ui.ui.ui.basic.green.label{background:none #fff;border-color:#21ba45;color:#21ba45}.ui.basic.labels a.green.label:hover,a.ui.ui.ui.basic.green.label:hover{background:none #fff;border-color:#16ab39;color:#16ab39}.ui.inverted.labels .green.label,.ui.ui.ui.inverted.green.label{background-color:#2ecc40;border-color:#2ecc40;color:#1b1c1d}.ui.inverted.labels a.green.label:hover,a.ui.ui.ui.inverted.green.label:hover{background-color:#1ea92e;border-color:#1ea92e;color:#1b1c1d}.ui.ui.ui.inverted.green.ribbon.label{border-color:#25a233}.ui.inverted.basic.labels .green.label,.ui.ui.ui.inverted.basic.green.label{background-color:#1b1c1d;border-color:#2ecc40;color:#2ecc40}.ui.inverted.basic.labels a.green.label:hover,a.ui.ui.ui.inverted.basic.green.label:hover{background-color:#1b1c1d;border-color:#1ea92e;color:#1ea92e}.ui.inverted.basic.tag.labels .green.label,.ui.ui.ui.inverted.green.basic.tag.label{border:1px solid #2ecc40}.ui.inverted.basic.tag.labels .green.label:before,.ui.ui.ui.inverted.green.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.teal.labels .label,.ui.ui.ui.teal.label{background-color:#00b5ad;border-color:#00b5ad;color:#fff}.ui.teal.labels a.label:hover,a.ui.ui.ui.teal.label:hover{background-color:#009c95;border-color:#009c95;color:#fff}.ui.ui.ui.teal.ribbon.label{border-color:#00827c}.ui.basic.labels .teal.label,.ui.ui.ui.basic.teal.label{background:none #fff;border-color:#00b5ad;color:#00b5ad}.ui.basic.labels a.teal.label:hover,a.ui.ui.ui.basic.teal.label:hover{background:none #fff;border-color:#009c95;color:#009c95}.ui.inverted.labels .teal.label,.ui.ui.ui.inverted.teal.label{background-color:#6dffff;border-color:#6dffff;color:#1b1c1d}.ui.inverted.labels a.teal.label:hover,a.ui.ui.ui.inverted.teal.label:hover{background-color:#3affff;border-color:#3affff;color:#1b1c1d}.ui.ui.ui.inverted.teal.ribbon.label{border-color:#3affff}.ui.inverted.basic.labels .teal.label,.ui.ui.ui.inverted.basic.teal.label{background-color:#1b1c1d;border-color:#6dffff;color:#6dffff}.ui.inverted.basic.labels a.teal.label:hover,a.ui.ui.ui.inverted.basic.teal.label:hover{background-color:#1b1c1d;border-color:#3affff;color:#3affff}.ui.inverted.basic.tag.labels .teal.label,.ui.ui.ui.inverted.teal.basic.tag.label{border:1px solid #6dffff}.ui.inverted.basic.tag.labels .teal.label:before,.ui.ui.ui.inverted.teal.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.blue.labels .label,.ui.ui.ui.blue.label{background-color:#2185d0;border-color:#2185d0;color:#fff}.ui.blue.labels a.label:hover,a.ui.ui.ui.blue.label:hover{background-color:#1678c2;border-color:#1678c2;color:#fff}.ui.ui.ui.blue.ribbon.label{border-color:#1a69a4}.ui.basic.labels .blue.label,.ui.ui.ui.basic.blue.label{background:none #fff;border-color:#2185d0;color:#2185d0}.ui.basic.labels a.blue.label:hover,a.ui.ui.ui.basic.blue.label:hover{background:none #fff;border-color:#1678c2;color:#1678c2}.ui.inverted.labels .blue.label,.ui.ui.ui.inverted.blue.label{background-color:#54c8ff;border-color:#54c8ff;color:#1b1c1d}.ui.inverted.labels a.blue.label:hover,a.ui.ui.ui.inverted.blue.label:hover{background-color:#21b8ff;border-color:#21b8ff;color:#1b1c1d}.ui.ui.ui.inverted.blue.ribbon.label{border-color:#21b8ff}.ui.inverted.basic.labels .blue.label,.ui.ui.ui.inverted.basic.blue.label{background-color:#1b1c1d;border-color:#54c8ff;color:#54c8ff}.ui.inverted.basic.labels a.blue.label:hover,a.ui.ui.ui.inverted.basic.blue.label:hover{background-color:#1b1c1d;border-color:#21b8ff;color:#21b8ff}.ui.inverted.basic.tag.labels .blue.label,.ui.ui.ui.inverted.blue.basic.tag.label{border:1px solid #54c8ff}.ui.inverted.basic.tag.labels .blue.label:before,.ui.ui.ui.inverted.blue.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.ui.ui.violet.label,.ui.violet.labels .label{background-color:#6435c9;border-color:#6435c9;color:#fff}.ui.violet.labels a.label:hover,a.ui.ui.ui.violet.label:hover{background-color:#5829bb;border-color:#5829bb;color:#fff}.ui.ui.ui.violet.ribbon.label{border-color:#502aa1}.ui.basic.labels .violet.label,.ui.ui.ui.basic.violet.label{background:none #fff;border-color:#6435c9;color:#6435c9}.ui.basic.labels a.violet.label:hover,a.ui.ui.ui.basic.violet.label:hover{background:none #fff;border-color:#5829bb;color:#5829bb}.ui.inverted.labels .violet.label,.ui.ui.ui.inverted.violet.label{background-color:#a291fb;border-color:#a291fb;color:#1b1c1d}.ui.inverted.labels a.violet.label:hover,a.ui.ui.ui.inverted.violet.label:hover{background-color:#745aff;border-color:#745aff;color:#1b1c1d}.ui.ui.ui.inverted.violet.ribbon.label{border-color:#7860f9}.ui.inverted.basic.labels .violet.label,.ui.ui.ui.inverted.basic.violet.label{background-color:#1b1c1d;border-color:#a291fb;color:#a291fb}.ui.inverted.basic.labels a.violet.label:hover,a.ui.ui.ui.inverted.basic.violet.label:hover{background-color:#1b1c1d;border-color:#745aff;color:#745aff}.ui.inverted.basic.tag.labels .violet.label,.ui.ui.ui.inverted.violet.basic.tag.label{border:1px solid #a291fb}.ui.inverted.basic.tag.labels .violet.label:before,.ui.ui.ui.inverted.violet.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.purple.labels .label,.ui.ui.ui.purple.label{background-color:#a333c8;border-color:#a333c8;color:#fff}.ui.purple.labels a.label:hover,a.ui.ui.ui.purple.label:hover{background-color:#9627ba;border-color:#9627ba;color:#fff}.ui.ui.ui.purple.ribbon.label{border-color:#82299f}.ui.basic.labels .purple.label,.ui.ui.ui.basic.purple.label{background:none #fff;border-color:#a333c8;color:#a333c8}.ui.basic.labels a.purple.label:hover,a.ui.ui.ui.basic.purple.label:hover{background:none #fff;border-color:#9627ba;color:#9627ba}.ui.inverted.labels .purple.label,.ui.ui.ui.inverted.purple.label{background-color:#dc73ff;border-color:#dc73ff;color:#1b1c1d}.ui.inverted.labels a.purple.label:hover,a.ui.ui.ui.inverted.purple.label:hover{background-color:#cf40ff;border-color:#cf40ff;color:#1b1c1d}.ui.ui.ui.inverted.purple.ribbon.label{border-color:#cf40ff}.ui.inverted.basic.labels .purple.label,.ui.ui.ui.inverted.basic.purple.label{background-color:#1b1c1d;border-color:#dc73ff;color:#dc73ff}.ui.inverted.basic.labels a.purple.label:hover,a.ui.ui.ui.inverted.basic.purple.label:hover{background-color:#1b1c1d;border-color:#cf40ff;color:#cf40ff}.ui.inverted.basic.tag.labels .purple.label,.ui.ui.ui.inverted.purple.basic.tag.label{border:1px solid #dc73ff}.ui.inverted.basic.tag.labels .purple.label:before,.ui.ui.ui.inverted.purple.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.pink.labels .label,.ui.ui.ui.pink.label{background-color:#e03997;border-color:#e03997;color:#fff}.ui.pink.labels a.label:hover,a.ui.ui.ui.pink.label:hover{background-color:#e61a8d;border-color:#e61a8d;color:#fff}.ui.ui.ui.pink.ribbon.label{border-color:#c71f7e}.ui.basic.labels .pink.label,.ui.ui.ui.basic.pink.label{background:none #fff;border-color:#e03997;color:#e03997}.ui.basic.labels a.pink.label:hover,a.ui.ui.ui.basic.pink.label:hover{background:none #fff;border-color:#e61a8d;color:#e61a8d}.ui.inverted.labels .pink.label,.ui.ui.ui.inverted.pink.label{background-color:#ff8edf;border-color:#ff8edf;color:#1b1c1d}.ui.inverted.labels a.pink.label:hover,a.ui.ui.ui.inverted.pink.label:hover{background-color:#ff5bd1;border-color:#ff5bd1;color:#1b1c1d}.ui.ui.ui.inverted.pink.ribbon.label{border-color:#ff5bd1}.ui.inverted.basic.labels .pink.label,.ui.ui.ui.inverted.basic.pink.label{background-color:#1b1c1d;border-color:#ff8edf;color:#ff8edf}.ui.inverted.basic.labels a.pink.label:hover,a.ui.ui.ui.inverted.basic.pink.label:hover{background-color:#1b1c1d;border-color:#ff5bd1;color:#ff5bd1}.ui.inverted.basic.tag.labels .pink.label,.ui.ui.ui.inverted.pink.basic.tag.label{border:1px solid #ff8edf}.ui.inverted.basic.tag.labels .pink.label:before,.ui.ui.ui.inverted.pink.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.brown.labels .label,.ui.ui.ui.brown.label{background-color:#a5673f;border-color:#a5673f;color:#fff}.ui.brown.labels a.label:hover,a.ui.ui.ui.brown.label:hover{background-color:#975b33;border-color:#975b33;color:#fff}.ui.ui.ui.brown.ribbon.label{border-color:#805031}.ui.basic.labels .brown.label,.ui.ui.ui.basic.brown.label{background:none #fff;border-color:#a5673f;color:#a5673f}.ui.basic.labels a.brown.label:hover,a.ui.ui.ui.basic.brown.label:hover{background:none #fff;border-color:#975b33;color:#975b33}.ui.inverted.labels .brown.label,.ui.ui.ui.inverted.brown.label{background-color:#d67c1c;border-color:#d67c1c;color:#1b1c1d}.ui.inverted.labels a.brown.label:hover,a.ui.ui.ui.inverted.brown.label:hover{background-color:#b0620f;border-color:#b0620f;color:#1b1c1d}.ui.ui.ui.inverted.brown.ribbon.label{border-color:#a96216}.ui.inverted.basic.labels .brown.label,.ui.ui.ui.inverted.basic.brown.label{background-color:#1b1c1d;border-color:#d67c1c;color:#d67c1c}.ui.inverted.basic.labels a.brown.label:hover,a.ui.ui.ui.inverted.basic.brown.label:hover{background-color:#1b1c1d;border-color:#b0620f;color:#b0620f}.ui.inverted.basic.tag.labels .brown.label,.ui.ui.ui.inverted.brown.basic.tag.label{border:1px solid #d67c1c}.ui.inverted.basic.tag.labels .brown.label:before,.ui.ui.ui.inverted.brown.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.grey.labels .label,.ui.ui.ui.grey.label{background-color:#767676;border-color:#767676;color:#fff}.ui.grey.labels a.label:hover,a.ui.ui.ui.grey.label:hover{background-color:#838383;border-color:#838383;color:#fff}.ui.ui.ui.grey.ribbon.label{border-color:#5d5d5d}.ui.basic.labels .grey.label,.ui.ui.ui.basic.grey.label{background:none #fff;border-color:#767676;color:#767676}.ui.basic.labels a.grey.label:hover,a.ui.ui.ui.basic.grey.label:hover{background:none #fff;border-color:#838383;color:#838383}.ui.inverted.labels .grey.label,.ui.ui.ui.inverted.grey.label{background-color:#dcddde;border-color:#dcddde;color:#1b1c1d}.ui.inverted.labels a.grey.label:hover,a.ui.ui.ui.inverted.grey.label:hover{background-color:#c2c4c5;border-color:#c2c4c5;color:#fff}.ui.ui.ui.inverted.grey.ribbon.label{border-color:#e9eaea}.ui.inverted.basic.labels .grey.label,.ui.ui.ui.inverted.basic.grey.label{background-color:#1b1c1d;border-color:#dcddde;color:hsla(0,0%,100%,.9)}.ui.inverted.basic.labels a.grey.label:hover,a.ui.ui.ui.inverted.basic.grey.label:hover{background-color:#1b1c1d;border-color:#c2c4c5}.ui.inverted.basic.tag.labels .grey.label,.ui.ui.ui.inverted.grey.basic.tag.label{border:1px solid #dcddde}.ui.inverted.basic.tag.labels .grey.label:before,.ui.ui.ui.inverted.grey.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.black.labels .label,.ui.ui.ui.black.label{background-color:#1b1c1d;border-color:#1b1c1d;color:#fff}.ui.black.labels a.label:hover,a.ui.ui.ui.black.label:hover{background-color:#27292a;border-color:#27292a;color:#fff}.ui.ui.ui.black.ribbon.label{border-color:#020203}.ui.basic.labels .black.label,.ui.ui.ui.basic.black.label{background:none #fff;border-color:#1b1c1d;color:#1b1c1d}.ui.basic.labels a.black.label:hover,a.ui.ui.ui.basic.black.label:hover{background:none #fff;border-color:#27292a;color:#27292a}.ui.inverted.labels .black.label,.ui.ui.ui.inverted.black.label{background-color:#545454;border-color:#545454;color:#1b1c1d}.ui.inverted.labels a.black.label:hover,a.ui.ui.ui.inverted.black.label:hover{background-color:#000;border-color:#000;color:#fff}.ui.ui.ui.inverted.black.ribbon.label{border-color:#616161}.ui.inverted.basic.labels .black.label,.ui.ui.ui.inverted.basic.black.label{background-color:#1b1c1d;border-color:#545454;color:hsla(0,0%,100%,.9)}.ui.inverted.basic.labels a.black.label:hover,a.ui.ui.ui.inverted.basic.black.label:hover{background-color:#1b1c1d;border-color:#000}.ui.inverted.basic.tag.labels .black.label,.ui.ui.ui.inverted.black.basic.tag.label{border:1px solid #545454}.ui.inverted.basic.tag.labels .black.label:before,.ui.ui.ui.inverted.black.basic.tag.label:before{background-color:#1b1c1d;border-color:inherit;border-style:inherit;border-width:1px 0 0 1px;right:calc(100% + 1px)}.ui.horizontal.label,.ui.horizontal.labels .label{margin:0 .5em 0 0;min-width:3em;padding:.4em .833em;text-align:center}.ui.circular.label,.ui.circular.labels .label{border-radius:500rem;line-height:1em;min-height:2em;min-width:2em;padding:.5em!important;text-align:center}.ui.empty.circular.label,.ui.empty.circular.labels .label{height:.5em;min-height:0;min-width:0;overflow:hidden;vertical-align:baseline;width:.5em}.ui.pointing.label{position:relative}.ui.attached.pointing.label{position:absolute}.ui.pointing.label:before{background-color:inherit;background-image:inherit;background-image:none;border:0 solid;border-color:inherit;content:"";height:.6666em;position:absolute;transform:rotate(45deg);transition:none;width:.6666em;z-index:2}.ui.pointing.label,.ui[class*="pointing above"].label{margin-top:1em}.ui.pointing.label:before,.ui[class*="pointing above"].label:before{border-width:1px 0 0 1px;left:50%;top:0;transform:translateX(-50%) translateY(-50%) rotate(45deg)}.ui[class*="bottom pointing"].label,.ui[class*="pointing below"].label{margin-bottom:1em;margin-top:0}.ui[class*="bottom pointing"].label:before,.ui[class*="pointing below"].label:before{border-width:0 1px 1px 0;left:50%;right:auto;top:auto;top:100%;transform:translateX(-50%) translateY(-50%) rotate(45deg)}.ui[class*="left pointing"].label{margin-left:.6666em;margin-top:0}.ui[class*="left pointing"].label:before{border-width:0 0 1px 1px;bottom:auto;left:0;right:auto;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg)}.ui[class*="right pointing"].label{margin-right:.6666em;margin-top:0}.ui[class*="right pointing"].label:before{border-width:1px 1px 0 0;bottom:auto;left:auto;right:0;top:50%;transform:translateX(50%) translateY(-50%) rotate(45deg)}.ui.basic.pointing.label:before,.ui.basic[class*="pointing above"].label:before{margin-top:-1px}.ui.basic[class*="bottom pointing"].label:before,.ui.basic[class*="pointing below"].label:before{bottom:auto;margin-top:1px;top:100%}.ui.basic[class*="left pointing"].label:before{left:-1px;top:50%}.ui.basic[class*="right pointing"].label:before{right:-1px;top:50%}.ui.floating.label{position:absolute;right:0;top:-1em;transform:translateX(50%);white-space:nowrap;z-index:100}.ui.right.aligned.floating.label{transform:translateX(1.2em)}.ui.left.floating.label{left:0;right:auto;transform:translateX(-50%)}.ui.left.aligned.floating.label{transform:translateX(-1.2em)}.ui.bottom.floating.label{bottom:-1em;top:auto}.ui.mini.label,.ui.mini.labels .label{font-size:.64285714rem}.ui.tiny.label,.ui.tiny.labels .label{font-size:.71428571rem}.ui.small.label,.ui.small.labels .label{font-size:.78571429rem}.ui.label,.ui.labels .label{font-size:.85714286rem}.ui.large.label,.ui.large.labels .label{font-size:1rem}.ui.big.label,.ui.big.labels .label{font-size:1.28571429rem}.ui.huge.label,.ui.huge.labels .label{font-size:1.42857143rem}.ui.massive.label,.ui.massive.labels .label{font-size:1.71428571rem}
/*!
 * # Fomantic-UI - List
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.list,ol.ui.list,ul.ui.list{list-style-type:none;margin:1em 0;padding:0}.ui.list:first-child,ol.ui.list:first-child,ul.ui.list:first-child{margin-top:0;padding-top:0}.ui.list:last-child,ol.ui.list:last-child,ul.ui.list:last-child{margin-bottom:0;padding-bottom:0}.ui.list .list>.item,.ui.list>.item,ol.ui.list li,ul.ui.list li{display:list-item;line-height:1.14285714em;list-style-position:outside;list-style-type:none;padding:.21428571em 0;table-layout:fixed}.ui.list>.item:after,.ui.list>.list>.item:after,ol.ui.list>li:first-child:after,ul.ui.list>li:first-child:after{clear:both;content:"";display:block;height:0;visibility:hidden}.ui.list .list>.item:first-child,.ui.list>.item:first-child,ol.ui.list li:first-child,ul.ui.list li:first-child{padding-top:0}.ui.list .list>.item:last-child,.ui.list>.item:last-child,ol.ui.list li:last-child,ul.ui.list li:last-child{padding-bottom:0}.ui.list .list:not(.icon),ol.ui.list ol,ul.ui.list ul{clear:both;margin:0;padding:.75em 0 .25em .5em}.ui.list .list>.item,ol.ui.list ol li,ul.ui.list ul li{line-height:inherit;padding:.14285714em 0}.ui.list .list>.item>i.icon,.ui.list>.item>i.icon{display:table-cell;margin:0;min-width:1.55em;padding-top:0;transition:color .1s ease}.ui.list .list>.item>i.icon:not(.loading),.ui.list>.item>i.icon:not(.loading){padding-right:.28571429em;vertical-align:top}.ui.list .list>.item>i.icon:only-child,.ui.list>.item>i.icon:only-child{display:inline-block;min-width:auto;vertical-align:top}.ui.list .list>.item>.image,.ui.list>.item>.image{background-color:transparent;display:table-cell;margin:0;vertical-align:top}.ui.list .list>.item>.image:not(:only-child):not(img),.ui.list>.item>.image:not(:only-child):not(img){padding-right:.5em}.ui.list .list>.item>.image img,.ui.list>.item>.image img{vertical-align:top}.ui.list .list>.item>.image:only-child,.ui.list .list>.item>img.image,.ui.list>.item>.image:only-child,.ui.list>.item>img.image{display:inline-block}.ui.list .list>.item>.content,.ui.list>.item>.content{color:rgba(0,0,0,.87);line-height:1.14285714em}.ui.list .list>.item>.icon+.content,.ui.list .list>.item>.image+.content,.ui.list>.item>.icon+.content,.ui.list>.item>.image+.content{display:table-cell;padding:0 0 0 .5em;vertical-align:top;width:100%}.ui.list .list>.item>.loading.icon+.content,.ui.list>.item>.loading.icon+.content{padding-left:.78571em}.ui.list .list>.item>img.image+.content,.ui.list>.item>img.image+.content{display:inline-block;width:auto}.ui.list .list>.item>.content>.list,.ui.list>.item>.content>.list{margin-left:0;padding-left:0}.ui.list .list>.item .header,.ui.list>.item .header{color:rgba(0,0,0,.87);display:block;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-weight:700;margin:0}.ui.list .list>.item .description,.ui.list>.item .description{color:rgba(0,0,0,.7);display:block}.ui.list .list>.item a,.ui.list>.item a{cursor:pointer}.ui.list .list>a.item,.ui.list>a.item{color:#4183c4;cursor:pointer}.ui.list .list>a.item:hover,.ui.list>a.item:hover{color:#1e70bf}.ui.list .list>a.item>i.icon,.ui.list>a.item>i.icon{color:rgba(0,0,0,.4)}.ui.list .list>.item a.header,.ui.list>.item a.header{color:#4183c4!important;cursor:pointer}.ui.list .list>.item>a.header:hover,.ui.list>.item>a.header:hover{color:#1e70bf!important}.ui[class*="left floated"].list{float:left}.ui[class*="right floated"].list{float:right}.ui.list .list>.item [class*="left floated"],.ui.list>.item [class*="left floated"]{float:left;margin:0 1em 0 0}.ui.list .list>.item [class*="right floated"],.ui.list>.item [class*="right floated"]{float:right;margin:0 0 0 1em}.ui.menu .ui.list .list>.item,.ui.menu .ui.list>.item{background-color:transparent;display:list-item;line-height:1.14285714em;list-style-position:outside;list-style-type:none;padding:.21428571em 0;table-layout:fixed}.ui.menu .ui.list .list>.item:before,.ui.menu .ui.list>.item:before{background:none;border:none}.ui.menu .ui.list .list>.item:first-child,.ui.menu .ui.list>.item:first-child{padding-top:0}.ui.menu .ui.list .list>.item:last-child,.ui.menu .ui.list>.item:last-child{padding-bottom:0}.ui.horizontal.list{display:inline-block;font-size:0}.ui.horizontal.list>.item{display:inline-block;font-size:1rem;margin-right:1em}.ui.horizontal.list:not(.celled)>.item:last-child{margin-right:0;padding-right:0}.ui.horizontal.list .list:not(.icon){padding-bottom:0;padding-left:0}.ui.horizontal.list .list>.item>.content,.ui.horizontal.list .list>.item>.icon,.ui.horizontal.list .list>.item>.image,.ui.horizontal.list>.item>.content,.ui.horizontal.list>.item>.icon,.ui.horizontal.list>.item>.image{vertical-align:middle}.ui.horizontal.list>.item:first-child,.ui.horizontal.list>.item:last-child{padding-bottom:.21428571em;padding-top:.21428571em}.ui.horizontal.list>.item>i.icon{margin:0;padding:0 .25em 0 0}.ui.horizontal.list>.item>.icon,.ui.horizontal.list>.item>.icon+.content,.ui.horizontal.list>.item>.image+.content{display:inline-block;float:none;width:auto}.ui.horizontal.list>.item>.image{display:inline-block}.ui.list .list>.disabled.item,.ui.list>.disabled.item{color:rgba(40,40,40,.3)!important;pointer-events:none}.ui.inverted.list .list>.disabled.item,.ui.inverted.list>.disabled.item{color:hsla(0,0%,88%,.3)!important}.ui.list .list>a.item:hover>.icon,.ui.list>a.item:hover>.icon{color:rgba(0,0,0,.87)}.ui.inverted.list .list>a.item>.icon,.ui.inverted.list>a.item>.icon{color:hsla(0,0%,100%,.7)}.ui.inverted.list .list>.item .header,.ui.inverted.list>.item .header{color:hsla(0,0%,100%,.9)}.ui.inverted.list .list>.item .description,.ui.inverted.list .list>.item>.content,.ui.inverted.list>.item .description,.ui.inverted.list>.item>.content{color:hsla(0,0%,100%,.7)}.ui.inverted.list .list>a.item,.ui.inverted.list>a.item{color:hsla(0,0%,100%,.9);cursor:pointer}.ui.inverted.list .list>a.item:hover,.ui.inverted.list>a.item:hover{color:#1e70bf}.ui.inverted.list .item a:not(.ui){color:hsla(0,0%,100%,.9)!important}.ui.inverted.list .item a:not(.ui):hover{color:#1e70bf!important}.ui.list [class*="top aligned"],.ui.list[class*="top aligned"] .content,.ui.list[class*="top aligned"] .image{vertical-align:top!important}.ui.list [class*="middle aligned"],.ui.list[class*="middle aligned"] .content,.ui.list[class*="middle aligned"] .image{vertical-align:middle!important}.ui.list [class*="bottom aligned"],.ui.list[class*="bottom aligned"] .content,.ui.list[class*="bottom aligned"] .image{vertical-align:bottom!important}.ui.link.list .item,.ui.link.list .item a:not(.ui),.ui.link.list a.item{color:rgba(0,0,0,.4);transition:color .1s ease}.ui.link.list.list .item a:not(.ui):hover,.ui.link.list.list a.item:hover{color:rgba(0,0,0,.8)}.ui.link.list.list .item a:not(.ui):active,.ui.link.list.list a.item:active{color:rgba(0,0,0,.9)}.ui.link.list.list .active.item,.ui.link.list.list .active.item a:not(.ui){color:rgba(0,0,0,.95)}.ui.inverted.link.list .item,.ui.inverted.link.list .item a:not(.ui),.ui.inverted.link.list a.item{color:hsla(0,0%,100%,.5)}.ui.inverted.link.list.list .active.item a:not(.ui),.ui.inverted.link.list.list .item a:not(.ui):active,.ui.inverted.link.list.list .item a:not(.ui):hover,.ui.inverted.link.list.list a.active.item,.ui.inverted.link.list.list a.item:active,.ui.inverted.link.list.list a.item:hover{color:#fff}.ui.selection.list .list>.item,.ui.selection.list>.item{background:transparent;border-radius:.5em;color:rgba(0,0,0,.4);cursor:pointer;margin:0;padding:.5em;transition:color .1s ease,padding-left .1s ease,background-color .1s ease}.ui.selection.list .list>.item:last-child,.ui.selection.list>.item:last-child{margin-bottom:0}.ui.selection.list .list>.item:hover,.ui.selection.list>.item:hover{background:rgba(0,0,0,.03);color:rgba(0,0,0,.8)}.ui.selection.list .list>.item:active,.ui.selection.list>.item:active{background:rgba(0,0,0,.05);color:rgba(0,0,0,.9)}.ui.selection.list .list>.item.active,.ui.selection.list>.item.active{background:rgba(0,0,0,.05);color:rgba(0,0,0,.95)}.ui.inverted.selection.list>.item{background:transparent;color:hsla(0,0%,100%,.5)}.ui.inverted.selection.list>.item:hover{background:hsla(0,0%,100%,.02);color:#fff}.ui.inverted.selection.list>.item.active,.ui.inverted.selection.list>.item:active{background:hsla(0,0%,100%,.08);color:#fff}.ui.celled.selection.list .list>.item,.ui.celled.selection.list>.item,.ui.divided.selection.list .list>.item,.ui.divided.selection.list>.item{border-radius:0}.ui.animated.list>.item{transition:color .25s ease .1s,padding-left .25s ease .1s,background-color .25s ease .1s}.ui.animated.list:not(.horizontal)>.item:hover{padding-left:1em}.ui.fitted.list:not(.selection) .list>.item,.ui.fitted.list:not(.selection)>.item{padding-left:0;padding-right:0}.ui.fitted.selection.list .list>.item,.ui.fitted.selection.list>.item{margin-left:-.5em;margin-right:-.5em}.ui.bulleted.list,ul.ui.list{margin-left:1.25rem}.ui.bulleted.list .list>.item,.ui.bulleted.list>.item,ul.ui.list li{position:relative}.ui.bulleted.list .list>.item:before,.ui.bulleted.list>.item:before,ul.ui.list li:before{color:inherit;content:"•";font-weight:400;left:auto;margin-left:-1.25rem;opacity:1;pointer-events:none;position:absolute;top:auto;user-select:none;vertical-align:top}.ui.bulleted.list .list>a.item:before,.ui.bulleted.list>a.item:before,ul.ui.list li:before{color:rgba(0,0,0,.87)}.ui.bulleted.list .list:not(.icon),ul.ui.list ul{padding-left:1.25rem}.ui.horizontal.bulleted.list,ul.ui.horizontal.bulleted.list{margin-left:0}.ui.horizontal.bulleted.list>.item,ul.ui.horizontal.bulleted.list li{margin-left:1.75rem}.ui.horizontal.bulleted.list>.item:first-child,ul.ui.horizontal.bulleted.list li:first-child{margin-left:0}.ui.horizontal.bulleted.list>.item:before,ul.ui.horizontal.bulleted.list li:before{color:rgba(0,0,0,.87)}.ui.horizontal.bulleted.list>.item:first-child:before,ul.ui.horizontal.bulleted.list li:first-child:before{display:none}.ui.ordered.list,.ui.ordered.list .list:not(.icon),ol.ui.list,ol.ui.list ol{counter-reset:ordered;list-style-type:none;margin-left:1.25rem}.ui.ordered.list .list>.item,.ui.ordered.list>.item,ol.ui.list li{list-style-type:none;position:relative}.ui.ordered.list .list>.item:before,.ui.ordered.list>.item:before,ol.ui.list li:before{color:rgba(0,0,0,.87);content:counters(ordered,".") " ";counter-increment:ordered;left:auto;margin-left:-1.25rem;opacity:.8;pointer-events:none;position:absolute;text-align:right;top:auto;user-select:none;vertical-align:middle}.ui.ordered.inverted.list .list>.item:before,.ui.ordered.inverted.list>.item:before,ol.ui.inverted.list li:before{color:hsla(0,0%,100%,.7)}.ui.ordered.list .list>.item[data-value]:before,.ui.ordered.list>.item[data-value]:before{content:attr(data-value)}ol.ui.list li[value]:before{content:attr(value)}.ui.ordered.list .list:not(.icon),ol.ui.list ol{margin-left:1em}.ui.ordered.list .list>.item:before,ol.ui.list ol li:before{margin-left:-2em}.ui.ordered.horizontal.list,ol.ui.horizontal.list{margin-left:0}.ui.ordered.horizontal.list .list>.item:before,.ui.ordered.horizontal.list>.item:before,ol.ui.horizontal.list li:before{margin:0 .5em 0 0;position:static}.ui.suffixed.ordered.list .list>.item:before,.ui.suffixed.ordered.list>.item:before,ol.ui.suffixed.list li:before{content:counters(ordered,".") "."}.ui.divided.list>.item{border-top:1px solid rgba(34,36,38,.15)}.ui.divided.list .item .list>.item,.ui.divided.list .list>.item,.ui.divided.list .list>.item:first-child,.ui.divided.list>.item:first-child{border-top:none}.ui.divided.list:not(.horizontal) .list>.item:first-child{border-top-width:1px}.ui.divided.bulleted.list .list:not(.icon),.ui.divided.bulleted.list:not(.horizontal){margin-left:0;padding-left:0}.ui.divided.bulleted.list>.item:not(.horizontal){padding-left:1.25rem}.ui.divided.ordered.list{margin-left:0}.ui.divided.ordered.list .list>.item,.ui.divided.ordered.list>.item{padding-left:1.25rem}.ui.divided.ordered.list .item .list:not(.icon){margin-left:0;margin-right:0;padding-bottom:.21428571em}.ui.divided.ordered.list .item .list>.item{padding-left:1em}.ui.divided.selection.list .list>.item,.ui.divided.selection.list>.item{border-radius:0;margin:0}.ui.divided.horizontal.list{margin-left:0}.ui.divided.horizontal.list>.item{padding-left:.5em}.ui.divided.horizontal.list>.item:not(:last-child){padding-right:.5em}.ui.divided.horizontal.list>.item{border-right:1px solid rgba(34,36,38,.15);border-top:none;line-height:.6;margin:0}.ui.horizontal.divided.list>.item:last-child{border-right:none}.ui.divided.inverted.horizontal.list>.item,.ui.divided.inverted.list>.item,.ui.divided.inverted.list>.list{border-color:hsla(0,0%,100%,.1)}.ui.celled.list>.item,.ui.celled.list>.list{border-top:1px solid rgba(34,36,38,.15);padding-left:.5em;padding-right:.5em}.ui.celled.list>.item:last-child{border-bottom:1px solid rgba(34,36,38,.15)}.ui.celled.list>.item:first-child,.ui.celled.list>.item:last-child{padding-bottom:.21428571em;padding-top:.21428571em}.ui.celled.list .item .list>.item{border-width:0}.ui.celled.list .list>.item:first-child{border-top-width:0}.ui.celled.bulleted.list{margin-left:0}.ui.celled.bulleted.list .list>.item,.ui.celled.bulleted.list>.item{padding-left:1.25rem}.ui.celled.bulleted.list .item .list:not(.icon){margin-left:-1.25rem;margin-right:-1.25rem;padding-bottom:.21428571em}.ui.celled.ordered.list{margin-left:0}.ui.celled.ordered.list .list>.item,.ui.celled.ordered.list>.item{padding-left:1.25rem}.ui.celled.ordered.list .item .list:not(.icon){margin-left:0;margin-right:0;padding-bottom:.21428571em}.ui.celled.ordered.list .list>.item{padding-left:1em}.ui.horizontal.celled.list{margin-left:0}.ui.horizontal.celled.list .list>.item,.ui.horizontal.celled.list>.item{border-left:1px solid rgba(34,36,38,.15);border-top:none;line-height:.6;margin:0;padding-left:.5em;padding-right:.5em}.ui.horizontal.celled.list .list>.item:last-child,.ui.horizontal.celled.list>.item:last-child{border-bottom:none;border-right:1px solid rgba(34,36,38,.15)}.ui.celled.inverted.horizontal.list .list>.item,.ui.celled.inverted.horizontal.list>.item,.ui.celled.inverted.list>.item,.ui.celled.inverted.list>.list{border-color:hsla(0,0%,100%,.1)}.ui.relaxed.list:not(.horizontal)>.item:not(:first-child){padding-top:.42857143em}.ui.relaxed.list:not(.horizontal)>.item:not(:last-child){padding-bottom:.42857143em}.ui.horizontal.relaxed.list .list>.item:not(:first-child),.ui.horizontal.relaxed.list>.item:not(:first-child){padding-left:1rem}.ui.horizontal.relaxed.list .list>.item:not(:last-child),.ui.horizontal.relaxed.list>.item:not(:last-child){padding-right:1rem}.ui[class*="very relaxed"].list:not(.horizontal)>.item:not(:first-child){padding-top:.85714286em}.ui[class*="very relaxed"].list:not(.horizontal)>.item:not(:last-child){padding-bottom:.85714286em}.ui.horizontal[class*="very relaxed"].list .list>.item:not(:first-child),.ui.horizontal[class*="very relaxed"].list>.item:not(:first-child){padding-left:1.5rem}.ui.horizontal[class*="very relaxed"].list .list>.item:not(:last-child),.ui.horizontal[class*="very relaxed"].list>.item:not(:last-child){padding-right:1.5rem}.ui.mini.list{font-size:.78571429em}.ui.tiny.list{font-size:.85714286em}.ui.small.list{font-size:.92857143em}.ui.list{font-size:1em}.ui.large.list{font-size:1.14285714em}.ui.big.list{font-size:1.28571429em}.ui.huge.list{font-size:1.42857143em}.ui.massive.list{font-size:1.71428571em}.ui.mini.horizontal.list .list>.item,.ui.mini.horizontal.list>.item{font-size:.78571429rem}.ui.tiny.horizontal.list .list>.item,.ui.tiny.horizontal.list>.item{font-size:.85714286rem}.ui.small.horizontal.list .list>.item,.ui.small.horizontal.list>.item{font-size:.92857143rem}.ui.horizontal.list .list>.item,.ui.horizontal.list>.item{font-size:1rem}.ui.large.horizontal.list .list>.item,.ui.large.horizontal.list>.item{font-size:1.14285714rem}.ui.big.horizontal.list .list>.item,.ui.big.horizontal.list>.item{font-size:1.28571429rem}.ui.huge.horizontal.list .list>.item,.ui.huge.horizontal.list>.item{font-size:1.42857143rem}.ui.massive.horizontal.list .list>.item,.ui.massive.horizontal.list>.item{font-size:1.71428571rem}
/*!
 * # Fomantic-UI - Loader
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.loader{display:none;left:50%;margin:0;position:absolute;text-align:center;top:50%;transform:translateX(-50%) translateY(-50%);z-index:1000}.ui.loader:before{border:.2em solid rgba(0,0,0,.1);border-radius:500rem}.ui.loader:after,.ui.loader:before{content:"";height:100%;left:50%;position:absolute;top:0;width:100%}.ui.loader:after{animation:loader .6s linear infinite;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent}.ui.fast.loader:after,.ui.fast.loading.loading .input>i.icon:after,.ui.fast.loading.loading:after,.ui.fast.loading.loading>i.icon:after{animation-duration:.3s}.ui.slow.loader:after,.ui.slow.loading.loading .input>i.icon:after,.ui.slow.loading.loading:after,.ui.slow.loading.loading>i.icon:after{animation-duration:.9s}@keyframes loader{to{transform:rotate(1turn)}}.ui.mini.loader:after,.ui.mini.loader:before{height:1rem;margin:0 0 0 -.5rem;width:1rem}.ui.tiny.loader:after,.ui.tiny.loader:before{height:1.14285714rem;margin:0 0 0 -.57142857rem;width:1.14285714rem}.ui.small.loader:after,.ui.small.loader:before{height:1.71428571rem;margin:0 0 0 -.85714286rem;width:1.71428571rem}.ui.loader:after,.ui.loader:before{height:2.28571429rem;margin:0 0 0 -1.14285714rem;width:2.28571429rem}.ui.large.loader:after,.ui.large.loader:before{height:3.42857143rem;margin:0 0 0 -1.71428571rem;width:3.42857143rem}.ui.big.loader:after,.ui.big.loader:before{height:3.71428571rem;margin:0 0 0 -1.85714286rem;width:3.71428571rem}.ui.huge.loader:after,.ui.huge.loader:before{height:4.14285714rem;margin:0 0 0 -2.07142857rem;width:4.14285714rem}.ui.massive.loader:after,.ui.massive.loader:before{height:4.57142857rem;margin:0 0 0 -2.28571429rem;width:4.57142857rem}.ui.dimmer>.loader{display:block}.ui.dimmer>.ui.loader{color:hsla(0,0%,100%,.9)}.ui.dimmer>.ui.loader:not(.elastic):before{border-color:hsla(0,0%,100%,.15)}.ui.inverted.dimmer>.ui.loader{color:rgba(0,0,0,.87)}.ui.inverted.dimmer>.ui.loader:not(.elastic):before{border-color:rgba(0,0,0,.1)}.ui.ui.ui.ui.text.loader{font-style:normal;height:auto;text-align:center;width:auto}.ui.indeterminate.loader:after{animation-direction:reverse;animation-duration:1.2s}.ui.loader.active,.ui.loader.visible{display:block}.ui.loader.disabled,.ui.loader.hidden{display:none}.ui.mini.loader{font-size:.78571429em;height:1rem;width:1rem}.ui.tiny.loader{font-size:.85714286em;height:1.14285714rem;width:1.14285714rem}.ui.small.loader{font-size:.92857143em;height:1.71428571rem;width:1.71428571rem}.ui.loader{font-size:1em;height:2.28571429rem;width:2.28571429rem}.ui.large.loader{font-size:1.14285714em;height:3.42857143rem;width:3.42857143rem}.ui.big.loader{font-size:1.28571429em;height:3.71428571rem;width:3.71428571rem}.ui.huge.loader{font-size:1.42857143em;height:4.14285714rem;width:4.14285714rem}.ui.massive.loader{font-size:1.71428571em;height:4.57142857rem;width:4.57142857rem}.ui.mini.text.loader{min-width:1rem;padding-top:1.78571429rem}.ui.tiny.text.loader{min-width:1.14285714rem;padding-top:1.92857143rem}.ui.small.text.loader{min-width:1.71428571rem;padding-top:2.5rem}.ui.text.loader{min-width:2.28571429rem;padding-top:3.07142857rem}.ui.large.text.loader{min-width:3.42857143rem;padding-top:4.21428571rem}.ui.big.text.loader{min-width:3.71428571rem;padding-top:4.5rem}.ui.huge.text.loader{min-width:4.14285714rem;padding-top:4.92857143rem}.ui.massive.text.loader{min-width:4.57142857rem;padding-top:5.35714286rem}.ui.primary.basic.elastic.loading.button:after,.ui.primary.basic.elastic.loading.button:before,.ui.primary.elastic.loader.loader:before,.ui.primary.elastic.loading.loading.loading .input>i.icon:before,.ui.primary.elastic.loading.loading.loading.loading>i.icon:before,.ui.primary.elastic.loading.loading.loading:not(.segment):before,.ui.primary.loader.loader.loader:after,.ui.primary.loading.loading.loading.loading .input>i.icon:after,.ui.primary.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.primary.loading.loading.loading.loading>i.icon:after{color:#2185d0}.ui.inverted.primary.elastic.loader:before,.ui.inverted.primary.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.primary.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.primary.elastic.loading.loading.loading>i.icon:before,.ui.inverted.primary.loader.loader.loader:after,.ui.inverted.primary.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.primary.loading.loading.loading.loading:not(.usual):after,.ui.inverted.primary.loading.loading.loading.loading>i.icon:after{color:#54c8ff}.ui.secondary.basic.elastic.loading.button:after,.ui.secondary.basic.elastic.loading.button:before,.ui.secondary.elastic.loader.loader:before,.ui.secondary.elastic.loading.loading.loading .input>i.icon:before,.ui.secondary.elastic.loading.loading.loading.loading>i.icon:before,.ui.secondary.elastic.loading.loading.loading:not(.segment):before,.ui.secondary.loader.loader.loader:after,.ui.secondary.loading.loading.loading.loading .input>i.icon:after,.ui.secondary.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.secondary.loading.loading.loading.loading>i.icon:after{color:#1b1c1d}.ui.inverted.secondary.elastic.loader:before,.ui.inverted.secondary.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.secondary.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.secondary.elastic.loading.loading.loading>i.icon:before,.ui.inverted.secondary.loader.loader.loader:after,.ui.inverted.secondary.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.secondary.loading.loading.loading.loading:not(.usual):after,.ui.inverted.secondary.loading.loading.loading.loading>i.icon:after{color:#545454}.ui.red.basic.elastic.loading.button:after,.ui.red.basic.elastic.loading.button:before,.ui.red.elastic.loader.loader:before,.ui.red.elastic.loading.loading.loading .input>i.icon:before,.ui.red.elastic.loading.loading.loading.loading>i.icon:before,.ui.red.elastic.loading.loading.loading:not(.segment):before,.ui.red.loader.loader.loader:after,.ui.red.loading.loading.loading.loading .input>i.icon:after,.ui.red.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.red.loading.loading.loading.loading>i.icon:after{color:#db2828}.ui.inverted.red.elastic.loader:before,.ui.inverted.red.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.red.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.red.elastic.loading.loading.loading>i.icon:before,.ui.inverted.red.loader.loader.loader:after,.ui.inverted.red.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.red.loading.loading.loading.loading:not(.usual):after,.ui.inverted.red.loading.loading.loading.loading>i.icon:after{color:#ff695e}.ui.orange.basic.elastic.loading.button:after,.ui.orange.basic.elastic.loading.button:before,.ui.orange.elastic.loader.loader:before,.ui.orange.elastic.loading.loading.loading .input>i.icon:before,.ui.orange.elastic.loading.loading.loading.loading>i.icon:before,.ui.orange.elastic.loading.loading.loading:not(.segment):before,.ui.orange.loader.loader.loader:after,.ui.orange.loading.loading.loading.loading .input>i.icon:after,.ui.orange.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.orange.loading.loading.loading.loading>i.icon:after{color:#f2711c}.ui.inverted.orange.elastic.loader:before,.ui.inverted.orange.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.orange.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.orange.elastic.loading.loading.loading>i.icon:before,.ui.inverted.orange.loader.loader.loader:after,.ui.inverted.orange.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.orange.loading.loading.loading.loading:not(.usual):after,.ui.inverted.orange.loading.loading.loading.loading>i.icon:after{color:#ff851b}.ui.yellow.basic.elastic.loading.button:after,.ui.yellow.basic.elastic.loading.button:before,.ui.yellow.elastic.loader.loader:before,.ui.yellow.elastic.loading.loading.loading .input>i.icon:before,.ui.yellow.elastic.loading.loading.loading.loading>i.icon:before,.ui.yellow.elastic.loading.loading.loading:not(.segment):before,.ui.yellow.loader.loader.loader:after,.ui.yellow.loading.loading.loading.loading .input>i.icon:after,.ui.yellow.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.yellow.loading.loading.loading.loading>i.icon:after{color:#fbbd08}.ui.inverted.yellow.elastic.loader:before,.ui.inverted.yellow.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.yellow.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.yellow.elastic.loading.loading.loading>i.icon:before,.ui.inverted.yellow.loader.loader.loader:after,.ui.inverted.yellow.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.yellow.loading.loading.loading.loading:not(.usual):after,.ui.inverted.yellow.loading.loading.loading.loading>i.icon:after{color:#ffe21f}.ui.olive.basic.elastic.loading.button:after,.ui.olive.basic.elastic.loading.button:before,.ui.olive.elastic.loader.loader:before,.ui.olive.elastic.loading.loading.loading .input>i.icon:before,.ui.olive.elastic.loading.loading.loading.loading>i.icon:before,.ui.olive.elastic.loading.loading.loading:not(.segment):before,.ui.olive.loader.loader.loader:after,.ui.olive.loading.loading.loading.loading .input>i.icon:after,.ui.olive.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.olive.loading.loading.loading.loading>i.icon:after{color:#b5cc18}.ui.inverted.olive.elastic.loader:before,.ui.inverted.olive.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.olive.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.olive.elastic.loading.loading.loading>i.icon:before,.ui.inverted.olive.loader.loader.loader:after,.ui.inverted.olive.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.olive.loading.loading.loading.loading:not(.usual):after,.ui.inverted.olive.loading.loading.loading.loading>i.icon:after{color:#d9e778}.ui.green.basic.elastic.loading.button:after,.ui.green.basic.elastic.loading.button:before,.ui.green.elastic.loader.loader:before,.ui.green.elastic.loading.loading.loading .input>i.icon:before,.ui.green.elastic.loading.loading.loading.loading>i.icon:before,.ui.green.elastic.loading.loading.loading:not(.segment):before,.ui.green.loader.loader.loader:after,.ui.green.loading.loading.loading.loading .input>i.icon:after,.ui.green.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.green.loading.loading.loading.loading>i.icon:after{color:#21ba45}.ui.inverted.green.elastic.loader:before,.ui.inverted.green.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.green.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.green.elastic.loading.loading.loading>i.icon:before,.ui.inverted.green.loader.loader.loader:after,.ui.inverted.green.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.green.loading.loading.loading.loading:not(.usual):after,.ui.inverted.green.loading.loading.loading.loading>i.icon:after{color:#2ecc40}.ui.teal.basic.elastic.loading.button:after,.ui.teal.basic.elastic.loading.button:before,.ui.teal.elastic.loader.loader:before,.ui.teal.elastic.loading.loading.loading .input>i.icon:before,.ui.teal.elastic.loading.loading.loading.loading>i.icon:before,.ui.teal.elastic.loading.loading.loading:not(.segment):before,.ui.teal.loader.loader.loader:after,.ui.teal.loading.loading.loading.loading .input>i.icon:after,.ui.teal.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.teal.loading.loading.loading.loading>i.icon:after{color:#00b5ad}.ui.inverted.teal.elastic.loader:before,.ui.inverted.teal.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.teal.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.teal.elastic.loading.loading.loading>i.icon:before,.ui.inverted.teal.loader.loader.loader:after,.ui.inverted.teal.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.teal.loading.loading.loading.loading:not(.usual):after,.ui.inverted.teal.loading.loading.loading.loading>i.icon:after{color:#6dffff}.ui.blue.basic.elastic.loading.button:after,.ui.blue.basic.elastic.loading.button:before,.ui.blue.elastic.loader.loader:before,.ui.blue.elastic.loading.loading.loading .input>i.icon:before,.ui.blue.elastic.loading.loading.loading.loading>i.icon:before,.ui.blue.elastic.loading.loading.loading:not(.segment):before,.ui.blue.loader.loader.loader:after,.ui.blue.loading.loading.loading.loading .input>i.icon:after,.ui.blue.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.blue.loading.loading.loading.loading>i.icon:after{color:#2185d0}.ui.inverted.blue.elastic.loader:before,.ui.inverted.blue.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.blue.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.blue.elastic.loading.loading.loading>i.icon:before,.ui.inverted.blue.loader.loader.loader:after,.ui.inverted.blue.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.blue.loading.loading.loading.loading:not(.usual):after,.ui.inverted.blue.loading.loading.loading.loading>i.icon:after{color:#54c8ff}.ui.violet.basic.elastic.loading.button:after,.ui.violet.basic.elastic.loading.button:before,.ui.violet.elastic.loader.loader:before,.ui.violet.elastic.loading.loading.loading .input>i.icon:before,.ui.violet.elastic.loading.loading.loading.loading>i.icon:before,.ui.violet.elastic.loading.loading.loading:not(.segment):before,.ui.violet.loader.loader.loader:after,.ui.violet.loading.loading.loading.loading .input>i.icon:after,.ui.violet.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.violet.loading.loading.loading.loading>i.icon:after{color:#6435c9}.ui.inverted.violet.elastic.loader:before,.ui.inverted.violet.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.violet.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.violet.elastic.loading.loading.loading>i.icon:before,.ui.inverted.violet.loader.loader.loader:after,.ui.inverted.violet.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.violet.loading.loading.loading.loading:not(.usual):after,.ui.inverted.violet.loading.loading.loading.loading>i.icon:after{color:#a291fb}.ui.purple.basic.elastic.loading.button:after,.ui.purple.basic.elastic.loading.button:before,.ui.purple.elastic.loader.loader:before,.ui.purple.elastic.loading.loading.loading .input>i.icon:before,.ui.purple.elastic.loading.loading.loading.loading>i.icon:before,.ui.purple.elastic.loading.loading.loading:not(.segment):before,.ui.purple.loader.loader.loader:after,.ui.purple.loading.loading.loading.loading .input>i.icon:after,.ui.purple.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.purple.loading.loading.loading.loading>i.icon:after{color:#a333c8}.ui.inverted.purple.elastic.loader:before,.ui.inverted.purple.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.purple.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.purple.elastic.loading.loading.loading>i.icon:before,.ui.inverted.purple.loader.loader.loader:after,.ui.inverted.purple.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.purple.loading.loading.loading.loading:not(.usual):after,.ui.inverted.purple.loading.loading.loading.loading>i.icon:after{color:#dc73ff}.ui.pink.basic.elastic.loading.button:after,.ui.pink.basic.elastic.loading.button:before,.ui.pink.elastic.loader.loader:before,.ui.pink.elastic.loading.loading.loading .input>i.icon:before,.ui.pink.elastic.loading.loading.loading.loading>i.icon:before,.ui.pink.elastic.loading.loading.loading:not(.segment):before,.ui.pink.loader.loader.loader:after,.ui.pink.loading.loading.loading.loading .input>i.icon:after,.ui.pink.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.pink.loading.loading.loading.loading>i.icon:after{color:#e03997}.ui.inverted.pink.elastic.loader:before,.ui.inverted.pink.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.pink.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.pink.elastic.loading.loading.loading>i.icon:before,.ui.inverted.pink.loader.loader.loader:after,.ui.inverted.pink.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.pink.loading.loading.loading.loading:not(.usual):after,.ui.inverted.pink.loading.loading.loading.loading>i.icon:after{color:#ff8edf}.ui.brown.basic.elastic.loading.button:after,.ui.brown.basic.elastic.loading.button:before,.ui.brown.elastic.loader.loader:before,.ui.brown.elastic.loading.loading.loading .input>i.icon:before,.ui.brown.elastic.loading.loading.loading.loading>i.icon:before,.ui.brown.elastic.loading.loading.loading:not(.segment):before,.ui.brown.loader.loader.loader:after,.ui.brown.loading.loading.loading.loading .input>i.icon:after,.ui.brown.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.brown.loading.loading.loading.loading>i.icon:after{color:#a5673f}.ui.inverted.brown.elastic.loader:before,.ui.inverted.brown.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.brown.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.brown.elastic.loading.loading.loading>i.icon:before,.ui.inverted.brown.loader.loader.loader:after,.ui.inverted.brown.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.brown.loading.loading.loading.loading:not(.usual):after,.ui.inverted.brown.loading.loading.loading.loading>i.icon:after{color:#d67c1c}.ui.grey.basic.elastic.loading.button:after,.ui.grey.basic.elastic.loading.button:before,.ui.grey.elastic.loader.loader:before,.ui.grey.elastic.loading.loading.loading .input>i.icon:before,.ui.grey.elastic.loading.loading.loading.loading>i.icon:before,.ui.grey.elastic.loading.loading.loading:not(.segment):before,.ui.grey.loader.loader.loader:after,.ui.grey.loading.loading.loading.loading .input>i.icon:after,.ui.grey.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.grey.loading.loading.loading.loading>i.icon:after{color:#767676}.ui.inverted.grey.elastic.loader:before,.ui.inverted.grey.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.grey.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.grey.elastic.loading.loading.loading>i.icon:before,.ui.inverted.grey.loader.loader.loader:after,.ui.inverted.grey.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.grey.loading.loading.loading.loading:not(.usual):after,.ui.inverted.grey.loading.loading.loading.loading>i.icon:after{color:#dcddde}.ui.black.basic.elastic.loading.button:after,.ui.black.basic.elastic.loading.button:before,.ui.black.elastic.loader.loader:before,.ui.black.elastic.loading.loading.loading .input>i.icon:before,.ui.black.elastic.loading.loading.loading.loading>i.icon:before,.ui.black.elastic.loading.loading.loading:not(.segment):before,.ui.black.loader.loader.loader:after,.ui.black.loading.loading.loading.loading .input>i.icon:after,.ui.black.loading.loading.loading.loading:not(.usual):not(.button):after,.ui.black.loading.loading.loading.loading>i.icon:after{color:#1b1c1d}.ui.inverted.black.elastic.loader:before,.ui.inverted.black.elastic.loading.loading.loading .input>i.icon:before,.ui.inverted.black.elastic.loading.loading.loading:not(.segment):before,.ui.inverted.black.elastic.loading.loading.loading>i.icon:before,.ui.inverted.black.loader.loader.loader:after,.ui.inverted.black.loading.loading.loading.loading .input>i.icon:after,.ui.inverted.black.loading.loading.loading.loading:not(.usual):after,.ui.inverted.black.loading.loading.loading.loading>i.icon:after{color:#545454}.ui.elastic.loader.loader:before,.ui.elastic.loading.loading.loading .input>i.icon:before,.ui.elastic.loading.loading.loading:before,.ui.elastic.loading.loading.loading>i.icon:before,.ui.loader.loader.loader:after,.ui.loading.loading.loading.loading .input>i.icon:after,.ui.loading.loading.loading.loading:not(.usual):after,.ui.loading.loading.loading.loading>i.icon:after{border-color:currentColor}.ui.elastic.loading.loading.loading.loading.button:not(.inverted):not(.basic):before{color:#fff}.ui.elastic.basic.loading.button:after,.ui.elastic.basic.loading.button:before{color:#767676}.ui.double.loading.loading.loading.loading.button:after{border-bottom-color:currentColor}.ui.inline.loader{left:0;margin:0;position:relative;top:0;transform:none;vertical-align:middle}.ui.inline.loader.active,.ui.inline.loader.visible{display:inline-block}.ui.centered.inline.loader.active,.ui.centered.inline.loader.visible{display:block;margin-left:auto;margin-right:auto}.ui.loader.loader.loader.loader.loader:after,.ui.loading.loading.loading.loading.loading.loading .input>i.icon:after,.ui.loading.loading.loading.loading.loading.loading:after,.ui.loading.loading.loading.loading.loading.loading>i.icon:after{border-left-color:transparent;border-right-color:transparent}.ui.loader.loader.loader.loader.loader.loader:not(.double):after,.ui.loading.loading.loading.loading.loading.loading.loading:not(.double) .input>i.icon:after,.ui.loading.loading.loading.loading.loading.loading.loading:not(.double):after,.ui.loading.loading.loading.loading.loading.loading.loading:not(.double)>i.icon:after{border-bottom-color:transparent}.ui.loading.loading.loading.loading.loading.loading.form:after,.ui.loading.loading.loading.loading.loading.loading.segment:after{border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1)}.ui.loading.loading.loading.loading.loading.loading.form:not(.double):after,.ui.loading.loading.loading.loading.loading.loading.segment:not(.double):after{border-bottom-color:rgba(0,0,0,.1)}.ui.dimmer>.ui.elastic.loader{color:#fff}.ui.inverted.dimmer>.ui.elastic.loader{color:#767676}.ui.elastic.loader.loader:after,.ui.elastic.loading.loading .input>i.icon:after,.ui.elastic.loading.loading:not(.form):not(.segment):after,.ui.elastic.loading.loading>i.icon:after{animation:loader 1s cubic-bezier(.27,1.05,.92,.61) infinite;animation-delay:.3s}.ui.elastic.loader.loader:before,.ui.elastic.loading.loading.loading .input>i.icon:before,.ui.elastic.loading.loading.loading:not(.form):not(.segment):before,.ui.elastic.loading.loading.loading>i.icon:before{animation:elastic-loader 1s cubic-bezier(.27,1.05,.92,.61) infinite;-moz-animation:currentcolor-elastic-loader 1s cubic-bezier(.27,1.05,.92,.61) infinite;border-right-color:transparent}.ui.elastic.inline.loader:empty{animation:loader 8s linear infinite}.ui.slow.elastic.loader.loader:after,.ui.slow.elastic.loading.loading .input>i.icon:after,.ui.slow.elastic.loading.loading:not(.form):not(.segment):after,.ui.slow.elastic.loading.loading>i.icon:after{animation-delay:.45s;animation-duration:1.5s}.ui.slow.elastic.loader.loader:before,.ui.slow.elastic.loading.loading.loading .input>i.icon:before,.ui.slow.elastic.loading.loading.loading:not(.form):not(.segment):before,.ui.slow.elastic.loading.loading.loading>i.icon:before{animation-duration:1.5s}.ui.fast.elastic.loader.loader:after,.ui.fast.elastic.loading.loading .input>i.icon:after,.ui.fast.elastic.loading.loading:not(.form):not(.segment):after,.ui.fast.elastic.loading.loading>i.icon:after{animation-delay:.2s;animation-duration:.66s}.ui.fast.elastic.loader.loader:before,.ui.fast.elastic.loading.loading.loading .input>i.icon:before,.ui.fast.elastic.loading.loading.loading:not(.form):not(.segment):before,.ui.fast.elastic.loading.loading.loading>i.icon:before{animation-duration:.66s}@keyframes elastic-loader{0%,1%{border-bottom-color:transparent;border-left-color:transparent}1.1%,50%{border-left-color:inherit}10%,35.1%{border-bottom-color:transparent}10.1%,35%{border-bottom-color:inherit}50.1%{border-left-color:transparent}to{border-bottom-color:transparent;border-left-color:transparent;transform:rotate(1turn)}}@keyframes currentcolor-elastic-loader{0%,1%{border-bottom-color:transparent;border-left-color:transparent}1.1%,50%{border-left-color:currentColor}10%,35.1%{border-bottom-color:transparent}10.1%,35%{border-bottom-color:currentColor}50.1%{border-left-color:transparent}to{border-bottom-color:transparent;border-left-color:transparent;transform:rotate(1turn)}}
/*!
 * # Fomantic-UI - Loader
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.placeholder{animation:placeholderShimmer 2s linear;animation-iteration-count:infinite;background-color:#fff;background-image:linear-gradient(90deg,rgba(0,0,0,.08) 0,rgba(0,0,0,.15) 15%,rgba(0,0,0,.08) 30%);background-size:1200px 100%;max-width:30rem;overflow:hidden;position:static}@keyframes placeholderShimmer{0%{background-position:-1200px 0}to{background-position:1200px 0}}.ui.placeholder+.ui.placeholder{animation-delay:.15s;margin-top:2rem}.ui.placeholder+.ui.placeholder+.ui.placeholder{animation-delay:.3s}.ui.placeholder+.ui.placeholder+.ui.placeholder+.ui.placeholder{animation-delay:.45s}.ui.placeholder+.ui.placeholder+.ui.placeholder+.ui.placeholder+.ui.placeholder{animation-delay:.6s}.ui.placeholder,.ui.placeholder .image.header:after,.ui.placeholder .line,.ui.placeholder .line:after,.ui.placeholder>:before{background-color:#fff}.ui.placeholder.hidden{display:none}.ui.placeholder .image:not(.header):not(.ui):not(.icon){height:100px}.ui.placeholder .square.image:not(.header){height:0;overflow:hidden;padding-top:100%}.ui.placeholder .rectangular.image:not(.header){height:0;overflow:hidden;padding-top:75%}.ui.placeholder .line{height:.85714286em;position:relative}.ui.placeholder .line:after,.ui.placeholder .line:before{background-color:inherit;content:"";position:absolute;top:100%}.ui.placeholder .line:before{left:0}.ui.placeholder .line:after{right:0}.ui.placeholder .line{margin-bottom:.5em}.ui.placeholder .line:after,.ui.placeholder .line:before{height:.5em}.ui.placeholder .line:not(:first-child){margin-top:.5em}.ui.placeholder .header{overflow:hidden;position:relative}.ui.placeholder .line:first-child:after{width:0}.ui.placeholder .line:nth-child(2):after{width:50%}.ui.placeholder .line:nth-child(3):after{width:10%}.ui.placeholder .line:nth-child(4):after{width:35%}.ui.placeholder .line:nth-child(5):after{width:65%}.ui.placeholder .header .line{margin-bottom:.64285714em}.ui.placeholder .header .line:after,.ui.placeholder .header .line:before{height:.64285714em}.ui.placeholder .header .line:not(:first-child){margin-top:.64285714em}.ui.placeholder .header .line:after{width:20%}.ui.placeholder .header .line:nth-child(2):after{width:60%}.ui.placeholder .image.header .line{margin-left:3em}.ui.placeholder .image.header .line:before{width:.71428571rem}.ui.placeholder .image.header:after{content:"";display:block;height:.85714286em;margin-left:3em}.ui.placeholder .header .line:first-child,.ui.placeholder .image .line:first-child,.ui.placeholder .paragraph .line:first-child{height:.01px}.ui.placeholder .header:not(:first-child):before,.ui.placeholder .image:not(:first-child):before,.ui.placeholder .paragraph:not(:first-child):before{content:"";display:block;height:1.42857143em}.ui.inverted.placeholder{background-image:linear-gradient(90deg,hsla(0,0%,100%,.08) 0,hsla(0,0%,100%,.14) 15%,hsla(0,0%,100%,.08) 30%)}.ui.inverted.placeholder,.ui.inverted.placeholder .image.header:after,.ui.inverted.placeholder .line,.ui.inverted.placeholder .line:after,.ui.inverted.placeholder>:before{background-color:#1b1c1d}.ui.placeholder .full.line.line.line:after{width:0}.ui.placeholder .very.long.line.line.line:after{width:10%}.ui.placeholder .long.line.line.line:after{width:35%}.ui.placeholder .medium.line.line.line:after{width:50%}.ui.placeholder .short.line.line.line:after{width:65%}.ui.placeholder .very.short.line.line.line:after{width:80%}.ui.fluid.placeholder{max-width:none}
/*!
 * # Fomantic-UI - Rail
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.rail{height:100%;position:absolute;top:0;width:300px}.ui.left.rail{left:auto;margin:0 2rem 0 0;padding:0 2rem 0 0;right:100%}.ui.right.rail{left:100%}.ui.left.internal.rail,.ui.right.rail{margin:0 0 0 2rem;padding:0 0 0 2rem;right:auto}.ui.left.internal.rail{left:0}.ui.right.internal.rail{left:auto;margin:0 2rem 0 0;padding:0 2rem 0 0;right:0}.ui.dividing.rail{width:302.5px}.ui.left.dividing.rail{border-right:1px solid rgba(34,36,38,.15);margin:0 2.5rem 0 0;padding:0 2.5rem 0 0}.ui.right.dividing.rail{border-left:1px solid rgba(34,36,38,.15);margin:0 0 0 2.5rem;padding:0 0 0 2.5rem}.ui.close.rail{width:calc(300px + 1em)}.ui.close.left.rail{margin:0 1em 0 0;padding:0 1em 0 0}.ui.close.right.rail{margin:0 0 0 1em;padding:0 0 0 1em}.ui.very.close.rail{width:calc(300px + .5em)}.ui.very.close.left.rail{margin:0 .5em 0 0;padding:0 .5em 0 0}.ui.very.close.right.rail{margin:0 0 0 .5em;padding:0 0 0 .5em}.ui.attached.left.rail,.ui.attached.right.rail{margin:0;padding:0}.ui.mini.rail{font-size:.78571429rem}.ui.tiny.rail{font-size:.85714286rem}.ui.small.rail{font-size:.92857143rem}.ui.rail{font-size:1rem}.ui.large.rail{font-size:1.14285714rem}.ui.big.rail{font-size:1.28571429rem}.ui.huge.rail{font-size:1.42857143rem}.ui.massive.rail{font-size:1.71428571rem}
/*!
 * # Fomantic-UI - Reveal
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.reveal{display:inherit;font-size:0!important;position:relative!important}.ui.reveal>.visible.content{left:0!important;position:absolute!important;top:0!important;transition:all .5s ease .1s;z-index:3!important}.ui.reveal>.hidden.content{position:relative!important;z-index:2!important}.ui.active.reveal .visible.content,.ui.reveal:hover .visible.content{z-index:4!important}.ui.slide.reveal{overflow:hidden!important;position:relative!important;white-space:nowrap}.ui.slide.reveal>.content{display:block;float:left;margin:0;transition:transform .5s ease .1s;white-space:normal;width:100%}.ui.slide.reveal>.visible.content{position:relative!important}.ui.slide.reveal>.hidden.content{left:0!important;position:absolute!important;transform:translateX(100%)!important;width:100%!important}.ui.slide.active.reveal>.visible.content,.ui.slide.reveal:hover>.visible.content{transform:translateX(-100%)!important}.ui.slide.active.reveal>.hidden.content,.ui.slide.reveal:hover>.hidden.content,.ui.slide.right.reveal>.visible.content{transform:translateX(0)!important}.ui.slide.right.reveal>.hidden.content{transform:translateX(-100%)!important}.ui.slide.right.active.reveal>.visible.content,.ui.slide.right.reveal:hover>.visible.content{transform:translateX(100%)!important}.ui.slide.right.active.reveal>.hidden.content,.ui.slide.right.reveal:hover>.hidden.content{transform:translateX(0)!important}.ui.slide.up.reveal>.hidden.content{transform:translateY(100%)!important}.ui.slide.up.active.reveal>.visible.content,.ui.slide.up.reveal:hover>.visible.content{transform:translateY(-100%)!important}.ui.slide.up.active.reveal>.hidden.content,.ui.slide.up.reveal:hover>.hidden.content{transform:translateY(0)!important}.ui.slide.down.reveal>.hidden.content{transform:translateY(-100%)!important}.ui.slide.down.active.reveal>.visible.content,.ui.slide.down.reveal:hover>.visible.content{transform:translateY(100%)!important}.ui.slide.down.active.reveal>.hidden.content,.ui.slide.down.reveal:hover>.hidden.content{transform:translateY(0)!important}.ui.fade.reveal>.visible.content{opacity:1}.ui.fade.active.reveal>.visible.content,.ui.fade.reveal:hover>.visible.content{opacity:0}.ui.move.reveal{overflow:hidden!important;position:relative!important;white-space:nowrap}.ui.move.reveal>.content{display:block;float:left;margin:0;transition:transform .5s cubic-bezier(.175,.885,.32,1) .1s;white-space:normal}.ui.move.reveal>.visible.content{position:relative!important}.ui.move.reveal>.hidden.content{left:0!important;position:absolute!important;width:100%!important}.ui.move.active.reveal>.visible.content,.ui.move.reveal:hover>.visible.content{transform:translateX(-100%)!important}.ui.move.right.active.reveal>.visible.content,.ui.move.right.reveal:hover>.visible.content{transform:translateX(100%)!important}.ui.move.up.active.reveal>.visible.content,.ui.move.up.reveal:hover>.visible.content{transform:translateY(-100%)!important}.ui.move.down.active.reveal>.visible.content,.ui.move.down.reveal:hover>.visible.content{transform:translateY(100%)!important}.ui.rotate.reveal>.visible.content{transform:rotate(0deg);transition-duration:.5s}.ui.rotate.reveal>.visible.content,.ui.rotate.right.reveal>.visible.content{transform-origin:bottom right}.ui.rotate.active.reveal>.visible.content,.ui.rotate.reveal:hover>.visible.content,.ui.rotate.right.active.reveal>.visible.content,.ui.rotate.right.reveal:hover>.visible.content{transform:rotate(110deg)}.ui.rotate.left.reveal>.visible.content{transform-origin:bottom left}.ui.rotate.left.active.reveal>.visible.content,.ui.rotate.left.reveal:hover>.visible.content{transform:rotate(-110deg)}.ui.disabled.reveal:hover>.visible.visible.content{bottom:auto!important;display:block!important;left:0!important;opacity:1!important;position:static!important;right:auto!important;top:0!important;transform:none!important}.ui.disabled.reveal:hover>.hidden.hidden.content{display:none!important}.ui.reveal>.ui.ribbon.label{z-index:5}.ui.visible.reveal{overflow:visible}.ui.instant.reveal>.content{transition-delay:0s!important}.ui.reveal>.content{font-size:1rem!important}
/*!
 * # Fomantic-UI - Segment
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.segment{background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:0 1px 2px 0 rgba(34,36,38,.15);margin:1rem 0;padding:1em;position:relative}.ui.segment:first-child{margin-top:0}.ui.segment:last-child{margin-bottom:0}.ui.vertical.segment{background:none transparent;border:none;border-bottom:1px solid rgba(34,36,38,.15);border-radius:0;box-shadow:none;margin:0;padding-left:0;padding-right:0}.ui.vertical.segment:last-child{border-bottom:none}.ui.inverted.segment>.ui.header,.ui.inverted.segment>.ui.header>.sub.header{color:#fff}.ui[class*="bottom attached"].segment>[class*="top attached"].label{border-top-left-radius:0;border-top-right-radius:0}.ui[class*="top attached"].segment>[class*="bottom attached"].label{border-bottom-left-radius:0;border-bottom-right-radius:0}.ui.attached.segment:not(.top):not(.bottom)>[class*="top attached"].label{border-top-left-radius:0;border-top-right-radius:0}.ui.attached.segment:not(.top):not(.bottom)>[class*="bottom attached"].label{border-bottom-left-radius:0;border-bottom-right-radius:0}.ui.grid>.row>.ui.segment.column,.ui.grid>.ui.segment.column,.ui.page.grid.segment{padding-bottom:2em;padding-top:2em}.ui.grid.segment{border-radius:.28571429rem;margin:1rem 0}.ui.basic.table.segment{background:#fff;border:1px solid rgba(34,36,38,.15);box-shadow:0 1px 2px 0 rgba(34,36,38,.15)}.ui[class*="very basic"].table.segment{padding:1em}.ui.segment.tab:last-child{margin-bottom:1rem}.ui.placeholder.segment{align-items:stretch;animation:none;background:#f9fafb;border-color:rgba(34,36,38,.15);box-shadow:inset 0 2px 25px 0 rgba(34,36,38,.05);display:flex;flex-direction:column;justify-content:center;max-width:none;min-height:18rem;overflow:visible;padding:1em}.ui.placeholder.segment .button,.ui.placeholder.segment textarea{display:block}.ui.placeholder.segment .button,.ui.placeholder.segment .column .button,.ui.placeholder.segment .column .field,.ui.placeholder.segment .column textarea,.ui.placeholder.segment .column>.ui.input,.ui.placeholder.segment .field,.ui.placeholder.segment textarea,.ui.placeholder.segment>.ui.input{margin-left:auto;margin-right:auto;max-width:15rem}.ui.placeholder.segment>.inline{align-self:center}.ui.placeholder.segment>.inline>.button{display:inline-block;margin:0 .35714286rem 0 0;width:auto}.ui.placeholder.segment>.inline>.button:last-child{margin-right:0}.ui.piled.segment,.ui.piled.segments{box-shadow:"";margin:3em 0;z-index:auto}.ui.piled.segment:first-child{margin-top:0}.ui.piled.segment:last-child{margin-bottom:0}.ui.piled.segment:after,.ui.piled.segment:before,.ui.piled.segments:after,.ui.piled.segments:before{background-color:#fff;border:1px solid rgba(34,36,38,.15);box-shadow:"";content:"";display:block;height:100%;left:0;position:absolute;visibility:visible;width:100%}.ui.piled.segment:before,.ui.piled.segments:before{top:0;transform:rotate(-1.2deg);z-index:-2}.ui.piled.segment:after,.ui.piled.segments:after{top:0;transform:rotate(1.2deg);z-index:-1}.ui[class*="top attached"].piled.segment{margin-bottom:0;margin-top:3em}.ui.piled.segment[class*="top attached"]:first-child{margin-top:0}.ui.piled.segment[class*="bottom attached"]{margin-bottom:3em;margin-top:0}.ui.piled.segment[class*="bottom attached"]:last-child{margin-bottom:0}.ui.stacked.segment{padding-bottom:1.4em}.ui.stacked.segment:after,.ui.stacked.segment:before,.ui.stacked.segments:after,.ui.stacked.segments:before{background:rgba(0,0,0,.03);border-top:1px solid rgba(34,36,38,.15);bottom:-3px;content:"";height:6px;left:0;position:absolute;visibility:visible;width:100%}.ui.stacked.segment:before,.ui.stacked.segments:before{display:none}.ui.tall.stacked.segment:before,.ui.tall.stacked.segments:before{bottom:0;display:block}.ui.stacked.inverted.segment:after,.ui.stacked.inverted.segment:before,.ui.stacked.inverted.segments:after,.ui.stacked.inverted.segments:before{background-color:rgba(0,0,0,.03);border-top:1px solid rgba(34,36,38,.35)}.ui.padded.segment{padding:1.5em}.ui[class*="very padded"].segment{padding:3em}.ui.padded.segment.vertical.segment,.ui[class*="very padded"].vertical.segment{padding-left:0;padding-right:0}.ui.compact.segment{display:table}.ui.compact.segments{display:inline-flex}.ui.compact.segments .segment,.ui.segments .compact.segment{display:block;flex:0 1 auto}.ui.circular.segment{border-radius:500em;display:table-cell;padding:2em;text-align:center;vertical-align:middle}.ui.raised.raised.segment,.ui.raised.raised.segments{box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.segments{border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:0 1px 2px 0 rgba(34,36,38,.15);flex-direction:column;margin:1rem 0;position:relative}.ui.segments:first-child{margin-top:0}.ui.segments:last-child{margin-bottom:0}.ui.segments>.segment{border:none;border-radius:0;border-top:1px solid rgba(34,36,38,.15);bottom:0;box-shadow:none;margin:0;top:0;width:auto}.ui.segments:not(.horizontal)>.segment:first-child{border-radius:.28571429rem .28571429rem 0 0;border-top:none;bottom:0;margin-bottom:0;margin-top:0;top:0}.ui.segments:not(.horizontal)>.segment:last-child{border-radius:0 0 .28571429rem .28571429rem;bottom:0;box-shadow:0 1px 2px 0 rgba(34,36,38,.15),none;margin-bottom:0;margin-top:0;top:0}.ui.segments:not(.horizontal)>.segment:only-child{border-radius:.28571429rem}.ui.segments>.ui.segments{border-top:1px solid rgba(34,36,38,.15);margin:1rem}.ui.segments>.segments:first-child{border-top:none}.ui.segments>.segment+.segments:not(.horizontal){margin-top:0}.ui.horizontal.segments{background-color:transparent;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:0 1px 2px 0 rgba(34,36,38,.15);display:flex;flex-direction:row;margin:1rem 0;padding:0}.ui.stackable.horizontal.segments{flex-wrap:wrap}.ui.segments>.horizontal.segments{background-color:transparent;border:none;border-radius:0;border-top:1px solid rgba(34,36,38,.15);box-shadow:none;margin:0}.ui.horizontal.segments:not(.compact)>.segment:not(.compact){flex:1 1 auto;-ms-flex:1 1 0}.ui.horizontal.segments>.segment{border:none;border-left:1px solid rgba(34,36,38,.15);border-radius:0;box-shadow:none;margin:0;min-width:0}.ui.segments>.horizontal.segments:first-child{border-top:none}.ui.horizontal.segments:not(.stackable)>.segment:first-child{border-left:none}.ui.disabled.segment{color:rgba(40,40,40,.3);opacity:.45}.ui.loading.segment{cursor:default;pointer-events:none;position:relative;text-shadow:none!important;transition:all 0s linear}.ui.loading.segment:before{background:hsla(0,0%,100%,.8);border-radius:.28571429rem;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:100}.ui.loading.segment:after{animation:loader .6s linear infinite;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent;content:"";height:3em;left:50%;margin:-1.5em 0 0 -1.5em;position:absolute;top:50%;visibility:visible;width:3em;z-index:101}.ui.basic.segment,.ui.basic.segments,.ui.segments .ui.basic.segment{background:none transparent;border:none;border-radius:0;box-shadow:none}.ui.clearing.segment:after{clear:both;content:"";display:block}.ui.red.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #db2828}.ui.inverted.red.segment.segment.segment.segment.segment{background-color:#db2828;color:#fff}.ui.orange.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #f2711c}.ui.inverted.orange.segment.segment.segment.segment.segment{background-color:#f2711c;color:#fff}.ui.yellow.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #fbbd08}.ui.inverted.yellow.segment.segment.segment.segment.segment{background-color:#fbbd08;color:#fff}.ui.olive.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #b5cc18}.ui.inverted.olive.segment.segment.segment.segment.segment{background-color:#b5cc18;color:#fff}.ui.green.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #21ba45}.ui.inverted.green.segment.segment.segment.segment.segment{background-color:#21ba45;color:#fff}.ui.teal.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #00b5ad}.ui.inverted.teal.segment.segment.segment.segment.segment{background-color:#00b5ad;color:#fff}.ui.blue.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #2185d0}.ui.inverted.blue.segment.segment.segment.segment.segment{background-color:#2185d0;color:#fff}.ui.violet.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #6435c9}.ui.inverted.violet.segment.segment.segment.segment.segment{background-color:#6435c9;color:#fff}.ui.purple.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #a333c8}.ui.inverted.purple.segment.segment.segment.segment.segment{background-color:#a333c8;color:#fff}.ui.pink.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #e03997}.ui.inverted.pink.segment.segment.segment.segment.segment{background-color:#e03997;color:#fff}.ui.brown.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #a5673f}.ui.inverted.brown.segment.segment.segment.segment.segment{background-color:#a5673f;color:#fff}.ui.grey.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #767676}.ui.inverted.grey.segment.segment.segment.segment.segment{background-color:#767676;color:#fff}.ui.black.segment.segment.segment.segment.segment:not(.inverted){border-top:2px solid #1b1c1d}.ui.inverted.black.segment.segment.segment.segment.segment{background-color:#1b1c1d;color:#fff}.ui[class*="left aligned"].segment{text-align:left}.ui[class*="right aligned"].segment{text-align:right}.ui[class*="center aligned"].segment{text-align:center}.ui.floated.segment,.ui[class*="left floated"].segment{float:left;margin-right:1em}.ui[class*="right floated"].segment{float:right;margin-left:1em}.ui.inverted.segment{border:none;box-shadow:none}.ui.inverted.segment,.ui.primary.inverted.segment{background:#1b1c1d;color:hsla(0,0%,100%,.9)}.ui.inverted.segment .segment{color:rgba(0,0,0,.87)}.ui.inverted.segment .inverted.segment{color:hsla(0,0%,100%,.9)}.ui.inverted.attached.segment{border-color:#555}.ui.inverted.loading.segment{color:#fff}.ui.inverted.loading.segment:before{background:rgba(0,0,0,.85)}.ui.secondary.segment{background:#f3f4f5;color:rgba(0,0,0,.6)}.ui.secondary.inverted.segment{background:#4c4f52 linear-gradient(hsla(0,0%,100%,.2),hsla(0,0%,100%,.2));color:hsla(0,0%,100%,.8)}.ui.tertiary.segment{background:#dcddde;color:rgba(0,0,0,.6)}.ui.tertiary.inverted.segment{background:#717579 linear-gradient(hsla(0,0%,100%,.35),hsla(0,0%,100%,.35));color:hsla(0,0%,100%,.8)}.ui.attached.segment{border:1px solid #d4d4d5;border-radius:0;bottom:0;box-shadow:none;margin:0 -1px;max-width:calc(100% + 2px);top:0;width:calc(100% + 2px)}.ui.attached:not(.message)+.ui.attached.segment:not(.top){border-top:none}.ui[class*="top attached"].segment{border-radius:.28571429rem .28571429rem 0 0;bottom:0;margin-bottom:0;margin-top:1rem;top:0}.ui.segment[class*="top attached"]:first-child{margin-top:0}.ui.segment[class*="bottom attached"]{border-radius:0 0 .28571429rem .28571429rem;bottom:0;box-shadow:0 1px 2px 0 rgba(34,36,38,.15),none;margin-bottom:1rem;margin-top:0;top:0}.ui.segment[class*="bottom attached"]:last-child{margin-bottom:1rem}.ui.fitted.segment:not(.horizontally){padding-bottom:0;padding-top:0}.ui.fitted.segment:not(.vertically){padding-left:0;padding-right:0}.ui.mini.segment,.ui.mini.segments .segment{font-size:.78571429rem}.ui.tiny.segment,.ui.tiny.segments .segment{font-size:.85714286rem}.ui.small.segment,.ui.small.segments .segment{font-size:.92857143rem}.ui.segment,.ui.segments .segment{font-size:1rem}.ui.large.segment,.ui.large.segments .segment{font-size:1.14285714rem}.ui.big.segment,.ui.big.segments .segment{font-size:1.28571429rem}.ui.huge.segment,.ui.huge.segments .segment{font-size:1.42857143rem}.ui.massive.segment,.ui.massive.segments .segment{font-size:1.71428571rem}
/*!
 * # Fomantic-UI - Step
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.steps{align-items:stretch;background:"";border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:none;display:inline-flex;flex-direction:row;line-height:1.14285714em;margin:1em 0}.ui.steps:not(.unstackable){flex-wrap:wrap}.ui.steps:first-child{margin-top:0}.ui.steps:last-child{margin-bottom:0}.ui.steps .step{align-items:center;background:#fff;border:none;border-radius:0;border-right:1px solid rgba(34,36,38,.15);box-shadow:none;color:rgba(0,0,0,.87);display:flex;flex:1 0 auto;flex-direction:row;flex-wrap:wrap;justify-content:center;margin:0;padding:1.14285714em 2em;position:relative;vertical-align:middle}.ui.steps .step,.ui.steps .step:after{transition:background-color .1s ease,opacity .1s ease,color .1s ease,box-shadow .1s ease}.ui.steps .step:after{background-color:#fff;border:solid rgba(34,36,38,.15);border-width:0 1px 1px 0;content:"";display:none;height:1.14285714em;position:absolute;right:0;top:50%;transform:translateY(-50%) translateX(50%) rotate(-45deg);width:1.14285714em;z-index:2}.ui.steps .step:first-child{border-radius:.28571429rem 0 0 .28571429rem;padding-left:2em}.ui.steps .step:last-child{border-radius:0 .28571429rem .28571429rem 0;border-right:none;margin-right:0}.ui.steps .step:only-child{border-radius:.28571429rem}.ui.steps .step .title{font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1.14285714em;font-weight:700}.ui.steps .step>.title{width:100%}.ui.steps .step .description{color:rgba(0,0,0,.87);font-size:.92857143em;font-weight:400}.ui.steps .step>.description{width:100%}.ui.steps .step .title~.description{margin-top:.25em}.ui.steps .step>.icon{font-size:2.5em;line-height:1;margin:0 1rem 0 0}.ui.steps .step>.icon,.ui.steps .step>.icon~.content{align-self:middle;display:block;flex:0 1 auto}.ui.steps:not(.vertical) .step>.icon{width:auto}.ui.steps .link.step,.ui.steps a.step{cursor:pointer}.ui.ordered.steps{counter-reset:ordered}.ui.ordered.steps .step:before{content:counter(ordered);counter-increment:ordered;font-family:inherit;font-size:2.5em;font-weight:700;margin-right:1rem;position:static;text-align:center}.ui.ordered.steps .step:before,.ui.ordered.steps .step>*{align-self:middle;display:block}.ui.vertical.steps{display:inline-flex;flex-direction:column;overflow:visible}.ui.vertical.steps .step{border-bottom:1px solid rgba(34,36,38,.15);border-radius:0;border-right:none;justify-content:flex-start;padding:1.14285714em 2em}.ui.vertical.steps .step:first-child{border-radius:.28571429rem .28571429rem 0 0;padding:1.14285714em 2em}.ui.vertical.steps .step:last-child{border-bottom:none;border-radius:0 0 .28571429rem .28571429rem}.ui.vertical.steps .step:only-child{border-radius:.28571429rem}.ui.vertical.steps .step:after{border-width:0 1px 1px 0;display:none;right:0;top:50%}.ui.vertical.steps .active.step:after{display:block}.ui.vertical.steps .step:last-child:after{display:none}.ui.vertical.steps .active.step:last-child:after{display:block}@media only screen and (max-width:767.98px){.ui.steps:not(.unstackable){display:inline-flex;flex-direction:column;overflow:visible}.ui.steps:not(.unstackable) .step{border-bottom:1px solid rgba(34,36,38,.15);border-radius:0;border-right:none;flex-direction:column;padding:1.14285714em 2em;width:100%!important}.ui.steps:not(.unstackable) .step:first-child{border-radius:.28571429rem .28571429rem 0 0;padding:1.14285714em 2em}.ui.steps:not(.unstackable) .step:last-child{border-bottom:none;border-radius:0 0 .28571429rem .28571429rem}.ui.steps:not(.unstackable) .step:after{bottom:-1.14285714em;right:50%;top:unset;transform:translateY(-50%) translateX(50%) rotate(45deg)}.ui.vertical.steps .active.step:last-child:after{display:none}.ui.steps:not(.unstackable) .step .content{text-align:center}.ui.ordered.steps:not(.unstackable) .step:before,.ui.steps:not(.unstackable) .step>.icon{margin:0 0 1rem}}.ui.steps .link.step:hover,.ui.steps .link.step:hover:after,.ui.steps a.step:hover,.ui.steps a.step:hover:after{background:#f9fafb;color:rgba(0,0,0,.8)}.ui.steps .link.step:active,.ui.steps .link.step:active:after,.ui.steps a.step:active,.ui.steps a.step:active:after{background:#f3f4f5;color:rgba(0,0,0,.9)}.ui.steps .step.active{background:#f3f4f5;cursor:auto}.ui.steps .step.active:after{background:#f3f4f5}.ui.steps .step.active .title{color:#4183c4}.ui.ordered.steps .step.active:before,.ui.steps .active.step .icon{color:rgba(0,0,0,.85)}.ui.steps .active.step:after,.ui.steps .step:after{display:block}.ui.steps .active.step:last-child:after,.ui.steps .step:last-child:after{display:none}.ui.steps .link.active.step:hover,.ui.steps .link.active.step:hover:after,.ui.steps a.active.step:hover,.ui.steps a.active.step:hover:after{background:#dcddde;color:rgba(0,0,0,.87);cursor:pointer}.ui.ordered.steps .step.completed:before,.ui.steps .step.completed>.icon:before{color:#21ba45}.ui.steps .disabled.step{background:#fff;cursor:auto;pointer-events:none}.ui.steps .disabled.step,.ui.steps .disabled.step .description,.ui.steps .disabled.step .title{color:rgba(40,40,40,.3)}.ui.steps .disabled.step:after{background:#fff}@media only screen and (max-width:991.98px){.ui[class*="tablet stackable"].steps{display:inline-flex;flex-direction:column;overflow:visible}.ui[class*="tablet stackable"].steps .step{border-bottom:1px solid rgba(34,36,38,.15);border-radius:0;border-right:none;flex-direction:column;padding:1.14285714em 2em}.ui[class*="tablet stackable"].steps .step:first-child{border-radius:.28571429rem .28571429rem 0 0;padding:1.14285714em 2em}.ui[class*="tablet stackable"].steps .step:last-child{border-bottom:none;border-radius:0 0 .28571429rem .28571429rem}.ui[class*="tablet stackable"].steps .step:after{bottom:-1.14285714em;right:50%;top:unset;transform:translateY(-50%) translateX(50%) rotate(45deg)}.ui[class*="tablet stackable"].steps .step .content{text-align:center}.ui[class*="tablet stackable"].ordered.steps .step:before,.ui[class*="tablet stackable"].steps .step>.icon{margin:0 0 1rem}}.ui.fluid.steps{display:flex;width:100%}.ui.attached.steps{border-radius:.28571429rem .28571429rem 0 0;margin:0 -1px;max-width:calc(100% + 2px);width:calc(100% + 2px)!important}.ui.attached.steps .step:first-child{border-radius:.28571429rem 0 0 0}.ui.attached.steps .step:last-child{border-radius:0 .28571429rem 0 0}.ui.bottom.attached.steps{border-radius:0 0 .28571429rem .28571429rem;margin:0 -1px}.ui.bottom.attached.steps .step:first-child{border-radius:0 0 0 .28571429rem}.ui.bottom.attached.steps .step:last-child{border-radius:0 0 .28571429rem 0}.ui.eight.steps,.ui.five.steps,.ui.four.steps,.ui.one.steps,.ui.seven.steps,.ui.six.steps,.ui.three.steps,.ui.two.steps{width:100%}.ui.eight.steps>.step,.ui.five.steps>.step,.ui.four.steps>.step,.ui.one.steps>.step,.ui.seven.steps>.step,.ui.six.steps>.step,.ui.three.steps>.step,.ui.two.steps>.step{flex-wrap:nowrap}.ui.one.steps>.step{width:100%}.ui.two.steps>.step{width:50%}.ui.three.steps>.step{width:33.333%}.ui.four.steps>.step{width:25%}.ui.five.steps>.step{width:20%}.ui.six.steps>.step{width:16.666%}.ui.seven.steps>.step{width:14.285%}.ui.eight.steps>.step{width:12.5%}.ui.mini.step,.ui.mini.steps .step{font-size:.78571429rem}.ui.tiny.step,.ui.tiny.steps .step{font-size:.85714286rem}.ui.small.step,.ui.small.steps .step{font-size:.92857143rem}.ui.step,.ui.steps .step{font-size:1rem}.ui.large.step,.ui.large.steps .step{font-size:1.14285714rem}.ui.big.step,.ui.big.steps .step{font-size:1.28571429rem}.ui.huge.step,.ui.huge.steps .step{font-size:1.42857143rem}.ui.massive.step,.ui.massive.steps .step{font-size:1.71428571rem}.ui.inverted.steps{border:1px solid #555}.ui.inverted.steps .step{background:#1b1c1d;border-color:#555;color:hsla(0,0%,100%,.9)}.ui.inverted.steps .step:after{background-color:#1b1c1d;border-color:#555}.ui.inverted.steps .step .description{color:hsla(0,0%,100%,.9)}.ui.inverted.steps .step.active,.ui.inverted.steps .step.active:after{background:#333}.ui.inverted.ordered.steps .step.active:before,.ui.inverted.steps .active.step .icon{color:#fff}.ui.inverted.steps .disabled.step,.ui.inverted.steps .disabled.step:after{background:#222}.ui.inverted.steps .disabled.step,.ui.inverted.steps .disabled.step .description,.ui.inverted.steps .disabled.step .title{color:hsla(0,0%,88%,.3)}.ui.inverted.steps .link.step:hover,.ui.inverted.steps .link.step:hover:after,.ui.inverted.steps a.step:hover,.ui.inverted.steps a.step:hover:after{background:#3f3f3f;color:#fff}.ui.inverted.steps .link.step:active,.ui.inverted.steps .link.step:active:after,.ui.inverted.steps a.step:active,.ui.inverted.steps a.step:active:after{background:#444;color:#fff}@font-face{font-family:Step;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAAOAIAAAwBgT1MvMj3hSQEAAADsAAAAVmNtYXDQEhm3AAABRAAAAUpjdnQgBkn/lAAABuwAAAAcZnBnbYoKeDsAAAcIAAAJkWdhc3AAAAAQAAAG5AAAAAhnbHlm32cEdgAAApAAAAC2aGVhZAErPHsAAANIAAAANmhoZWEHUwNNAAADgAAAACRobXR4CykAAAAAA6QAAAAMbG9jYQA4AFsAAAOwAAAACG1heHAApgm8AAADuAAAACBuYW1lzJ0aHAAAA9gAAALNcG9zdK69QJgAAAaoAAAAO3ByZXCSoZr/AAAQnAAAAFYAAQO4AZAABQAIAnoCvAAAAIwCegK8AAAB4AAxAQIAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABA6ADoAQNS/2oAWgMLAE8AAAABAAAAAAAAAAAAAwAAAAMAAAAcAAEAAAAAAEQAAwABAAAAHAAEACgAAAAGAAQAAQACAADoAf//AAAAAOgA//8AABgBAAEAAAAAAAAAAAEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAADpAKYABUAHEAZDwEAAQFCAAIBAmoAAQABagAAAGEUFxQDEisBFAcBBiInASY0PwE2Mh8BATYyHwEWA6QP/iAQLBD+6g8PTBAsEKQBbhAsEEwPAhYWEP4gDw8BFhAsEEwQEKUBbxAQTBAAAAH//f+xA18DCwAMABJADwABAQpDAAAACwBEFRMCESsBFA4BIi4CPgEyHgEDWXLG6MhuBnq89Lp+AV51xHR0xOrEdHTEAAAAAAEAAAABAADDeRpdXw889QALA+gAAAAAzzWYjQAAAADPNWBN//3/sQOkAwsAAAAIAAIAAAAAAAAAAQAAA1L/agBaA+gAAP/3A6QAAQAAAAAAAAAAAAAAAAAAAAMD6AAAA+gAAANZAAAAAAAAADgAWwABAAAAAwAWAAEAAAAAAAIABgATAG4AAAAtCZEAAAAAAAAAEgDeAAEAAAAAAAAANQAAAAEAAAAAAAEACAA1AAEAAAAAAAIABwA9AAEAAAAAAAMACABEAAEAAAAAAAQACABMAAEAAAAAAAUACwBUAAEAAAAAAAYACABfAAEAAAAAAAoAKwBnAAEAAAAAAAsAEwCSAAMAAQQJAAAAagClAAMAAQQJAAEAEAEPAAMAAQQJAAIADgEfAAMAAQQJAAMAEAEtAAMAAQQJAAQAEAE9AAMAAQQJAAUAFgFNAAMAAQQJAAYAEAFjAAMAAQQJAAoAVgFzAAMAAQQJAAsAJgHJQ29weXJpZ2h0IChDKSAyMDE0IGJ5IG9yaWdpbmFsIGF1dGhvcnMgQCBmb250ZWxsby5jb21mb250ZWxsb1JlZ3VsYXJmb250ZWxsb2ZvbnRlbGxvVmVyc2lvbiAxLjBmb250ZWxsb0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAEMAbwBwAHkAcgBpAGcAaAB0ACAAKABDACkAIAAyADAAMQA0ACAAYgB5ACAAbwByAGkAZwBpAG4AYQBsACAAYQB1AHQAaABvAHIAcwAgAEAAIABmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQBmAG8AbgB0AGUAbABsAG8AUgBlAGcAdQBsAGEAcgBmAG8AbgB0AGUAbABsAG8AZgBvAG4AdABlAGwAbABvAFYAZQByAHMAaQBvAG4AIAAxAC4AMABmAG8AbgB0AGUAbABsAG8ARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAAIAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAQIBAwljaGVja21hcmsGY2lyY2xlAAAAAAEAAf//AA8AAAAAAAAAAAAAAAAAAAAAADIAMgML/7EDC/+xsAAssCBgZi2wASwgZCCwwFCwBCZasARFW1ghIyEbilggsFBQWCGwQFkbILA4UFghsDhZWSCwCkVhZLAoUFghsApFILAwUFghsDBZGyCwwFBYIGYgiophILAKUFhgGyCwIFBYIbAKYBsgsDZQWCGwNmAbYFlZWRuwACtZWSOwAFBYZVlZLbACLCBFILAEJWFkILAFQ1BYsAUjQrAGI0IbISFZsAFgLbADLCMhIyEgZLEFYkIgsAYjQrIKAAIqISCwBkMgiiCKsAArsTAFJYpRWGBQG2FSWVgjWSEgsEBTWLAAKxshsEBZI7AAUFhlWS2wBCywB0MrsgACAENgQi2wBSywByNCIyCwACNCYbCAYrABYLAEKi2wBiwgIEUgsAJFY7ABRWJgRLABYC2wBywgIEUgsAArI7ECBCVgIEWKI2EgZCCwIFBYIbAAG7AwUFiwIBuwQFlZI7AAUFhlWbADJSNhRESwAWAtsAgssQUFRbABYUQtsAkssAFgICCwCUNKsABQWCCwCSNCWbAKQ0qwAFJYILAKI0JZLbAKLCC4BABiILgEAGOKI2GwC0NgIIpgILALI0IjLbALLEtUWLEHAURZJLANZSN4LbAMLEtRWEtTWLEHAURZGyFZJLATZSN4LbANLLEADENVWLEMDEOwAWFCsAorWbAAQ7ACJUKxCQIlQrEKAiVCsAEWIyCwAyVQWLEBAENgsAQlQoqKIIojYbAJKiEjsAFhIIojYbAJKiEbsQEAQ2CwAiVCsAIlYbAJKiFZsAlDR7AKQ0dgsIBiILACRWOwAUViYLEAABMjRLABQ7AAPrIBAQFDYEItsA4ssQAFRVRYALAMI0IgYLABYbUNDQEACwBCQopgsQ0FK7BtKxsiWS2wDyyxAA4rLbAQLLEBDistsBEssQIOKy2wEiyxAw4rLbATLLEEDistsBQssQUOKy2wFSyxBg4rLbAWLLEHDistsBcssQgOKy2wGCyxCQ4rLbAZLLAIK7EABUVUWACwDCNCIGCwAWG1DQ0BAAsAQkKKYLENBSuwbSsbIlktsBossQAZKy2wGyyxARkrLbAcLLECGSstsB0ssQMZKy2wHiyxBBkrLbAfLLEFGSstsCAssQYZKy2wISyxBxkrLbAiLLEIGSstsCMssQkZKy2wJCwgPLABYC2wJSwgYLANYCBDI7ABYEOwAiVhsAFgsCQqIS2wJiywJSuwJSotsCcsICBHICCwAkVjsAFFYmAjYTgjIIpVWCBHICCwAkVjsAFFYmAjYTgbIVktsCgssQAFRVRYALABFrAnKrABFTAbIlktsCkssAgrsQAFRVRYALABFrAnKrABFTAbIlktsCosIDWwAWAtsCssALADRWOwAUVisAArsAJFY7ABRWKwACuwABa0AAAAAABEPiM4sSoBFSotsCwsIDwgRyCwAkVjsAFFYmCwAENhOC2wLSwuFzwtsC4sIDwgRyCwAkVjsAFFYmCwAENhsAFDYzgtsC8ssQIAFiUgLiBHsAAjQrACJUmKikcjRyNhIFhiGyFZsAEjQrIuAQEVFCotsDAssAAWsAQlsAQlRyNHI2GwBkUrZYouIyAgPIo4LbAxLLAAFrAEJbAEJSAuRyNHI2EgsAQjQrAGRSsgsGBQWCCwQFFYswIgAyAbswImAxpZQkIjILAIQyCKI0cjRyNhI0ZgsARDsIBiYCCwACsgiophILACQ2BkI7ADQ2FkUFiwAkNhG7ADQ2BZsAMlsIBiYSMgILAEJiNGYTgbI7AIQ0awAiWwCENHI0cjYWAgsARDsIBiYCMgsAArI7AEQ2CwACuwBSVhsAUlsIBisAQmYSCwBCVgZCOwAyVgZFBYIRsjIVkjICCwBCYjRmE4WS2wMiywABYgICCwBSYgLkcjRyNhIzw4LbAzLLAAFiCwCCNCICAgRiNHsAArI2E4LbA0LLAAFrADJbACJUcjRyNhsABUWC4gPCMhG7ACJbACJUcjRyNhILAFJbAEJUcjRyNhsAYlsAUlSbACJWGwAUVjIyBYYhshWWOwAUViYCMuIyAgPIo4IyFZLbA1LLAAFiCwCEMgLkcjRyNhIGCwIGBmsIBiIyAgPIo4LbA2LCMgLkawAiVGUlggPFkusSYBFCstsDcsIyAuRrACJUZQWCA8WS6xJgEUKy2wOCwjIC5GsAIlRlJYIDxZIyAuRrACJUZQWCA8WS6xJgEUKy2wOSywMCsjIC5GsAIlRlJYIDxZLrEmARQrLbA6LLAxK4ogIDywBCNCijgjIC5GsAIlRlJYIDxZLrEmARQrsARDLrAmKy2wOyywABawBCWwBCYgLkcjRyNhsAZFKyMgPCAuIzixJgEUKy2wPCyxCAQlQrAAFrAEJbAEJSAuRyNHI2EgsAQjQrAGRSsgsGBQWCCwQFFYswIgAyAbswImAxpZQkIjIEewBEOwgGJgILAAKyCKimEgsAJDYGQjsANDYWRQWLACQ2EbsANDYFmwAyWwgGJhsAIlRmE4IyA8IzgbISAgRiNHsAArI2E4IVmxJgEUKy2wPSywMCsusSYBFCstsD4ssDErISMgIDywBCNCIzixJgEUK7AEQy6wJistsD8ssAAVIEewACNCsgABARUUEy6wLCotsEAssAAVIEewACNCsgABARUUEy6wLCotsEEssQABFBOwLSotsEIssC8qLbBDLLAAFkUjIC4gRoojYTixJgEUKy2wRCywCCNCsEMrLbBFLLIAADwrLbBGLLIAATwrLbBHLLIBADwrLbBILLIBATwrLbBJLLIAAD0rLbBKLLIAAT0rLbBLLLIBAD0rLbBMLLIBAT0rLbBNLLIAADkrLbBOLLIAATkrLbBPLLIBADkrLbBQLLIBATkrLbBRLLIAADsrLbBSLLIAATsrLbBTLLIBADsrLbBULLIBATsrLbBVLLIAAD4rLbBWLLIAAT4rLbBXLLIBAD4rLbBYLLIBAT4rLbBZLLIAADorLbBaLLIAATorLbBbLLIBADorLbBcLLIBATorLbBdLLAyKy6xJgEUKy2wXiywMiuwNistsF8ssDIrsDcrLbBgLLAAFrAyK7A4Ky2wYSywMysusSYBFCstsGIssDMrsDYrLbBjLLAzK7A3Ky2wZCywMyuwOCstsGUssDQrLrEmARQrLbBmLLA0K7A2Ky2wZyywNCuwNystsGgssDQrsDgrLbBpLLA1Ky6xJgEUKy2waiywNSuwNistsGsssDUrsDcrLbBsLLA1K7A4Ky2wbSwrsAhlsAMkUHiwARUwLQAAAEu4AMhSWLEBAY5ZuQgACABjILABI0SwAyNwsgQoCUVSRLIKAgcqsQYBRLEkAYhRWLBAiFixBgNEsSYBiFFYuAQAiFixBgFEWVlZWbgB/4WwBI2xBQBEAAA=) format("truetype"),url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAoUAA4AAAAAEPQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAABRAAAAEQAAABWPeFJAWNtYXAAAAGIAAAAOgAAAUrQEhm3Y3Z0IAAAAcQAAAAUAAAAHAZJ/5RmcGdtAAAB2AAABPkAAAmRigp4O2dhc3AAAAbUAAAACAAAAAgAAAAQZ2x5ZgAABtwAAACuAAAAtt9nBHZoZWFkAAAHjAAAADUAAAA2ASs8e2hoZWEAAAfEAAAAIAAAACQHUwNNaG10eAAAB+QAAAAMAAAADAspAABsb2NhAAAH8AAAAAgAAAAIADgAW21heHAAAAf4AAAAIAAAACAApgm8bmFtZQAACBgAAAF3AAACzcydGhxwb3N0AAAJkAAAACoAAAA7rr1AmHByZXAAAAm8AAAAVgAAAFaSoZr/eJxjYGTewTiBgZWBg6mKaQ8DA0MPhGZ8wGDIyMTAwMTAysyAFQSkuaYwOLxgeMHIHPQ/iyGKmZvBHyjMCJIDAPe9C2B4nGNgYGBmgGAZBkYGEHAB8hjBfBYGDSDNBqQZGZgYGF4w/v8PUvCCAURLMELVAwEjG8OIBwBk5AavAAB4nGNgQANGDEbM3P83gjAAELQD4XicnVXZdtNWFJU8ZHASOmSgoA7X3DhQ68qEKRgwaSrFdiEdHAitBB2kDHTkncc+62uOQrtWH/m07n09JLR0rbYsls++R1tn2DrnRhwjKn0aiGvUoZKXA6msPZZK90lc13Uvj5UMBnFdthJPSZuonSRKat3sUC7xWOsqWSdYJ+PlIFZPVZ5noAziFB5lSUQbRBuplyZJ4onjJ4kWZxAfJUkgJaMQp9LIUEI1GsRS1aFM6dCr1xNx00DKRqMedVhU90PFJ8c1p9SsA0YqVznCFevVRr4bpwMve5DEOsGzrYcxHnisfpQqkIqR6cg/dkpOlIaBVHHUoVbi6DCTX/eRTCrNQKaMYkWl7oG43f102xYxPXQ6vi5KlUaqurnOKJrt0fGogygP2cbppNzQ2fbw5RlTVKtdcbPtQGYNXErJbHSfRAAdJlLj6QFONZwCqRn1R8XZ588BEslclKo8VTKHegOZMzt7cTHtbiersnCknwcyb3Z2452HQ6dXh3/R+hdM4cxHj+Jifj5C+lBqfiJOJKVGWMzyp4YfcVcgQrkxiAsXyuBThDl0RdrZZl3jtTH2hs/5SqlhPQna6KP4fgr9TiQrHGdRo/VInM1j13Wt3GdQS7W7Fzsyr0OVIu7vCwuuM+eEYZ4WC1VfnvneBTT/Bohn/EDeNIVL+5YpSrRvm6JMu2iKCu0SVKVdNsUU7YoppmnPmmKG9h1TzNKeMzLj/8vc55H7HN7xkJv2XeSmfQ+5ad9HbtoPkJtWITdtHblpLyA3rUZu2lWjOnYEGgZpF1IVQdA0svph3Fab9UDWjDR8aWDyLmLI+upER521tcofxX914gsHcmmip7siF5viLq/bFj483e6rj5pG3bDV+MaR8jAeRnocmtBZ+c3hv+1N3S6a7jKqMugBFUwKwABl7UAC0zrbCaT1mqf48gdgXIZ4zkpDtVSfO4am7+V5X/exOfG+x+3GLrdcd3kJWdYNcmP28N9SZKrrH+UtrVQnR6wrJ49VaxhDKrwour6SlHu0tRu/KKmy8l6U1srnk5CbPYMbQlu27mGwI0xpyiUeXlOlKD3UUo6yQyxvKco84JSLC1qGxLgOdQ9qa8TpoXoYGwshhqG0vRBwSCldFd+0ynfxHqtr2Oj4xRXh6XpyEhGf4ir7UfBU10b96A7avGbdMoMpVaqn+4xPsa/b9lFZaaSOsxe3VAfXNOsaORXTT+Rr4HRvOGjdAz1UfDRBI1U1x+jGKGM0ljXl3wR0MVZ+w2jVYvs93E+dpFWsuUuY7JsT9+C0u/0q+7WcW0bW/dcGvW3kip8jMb8tCvw7B2K3ZA3UO5OBGAvIWdAYxhYmdxiug23EbfY/Jqf/34aFRXJXOxq7eerD1ZNRJXfZ8rjLTXZZ16M2R9VOGvsIjS0PN+bY4XIstsRgQbb+wf8x7gF3aVEC4NDIZZiI2nShnurh6h6rsW04VxIBds2x43QAegAuQd8cu9bzCYD13CPnLsB9cgh2yCH4lByCz8i5BfA5OQRfkEMwIIdgl5w7AA/IIXhIDsEeOQSPyNkE+JIcgq/IIYjJIUjIuQ3wmByCJ+QQfE0OwTdGrk5k/pYH2QD6zqKbQKmdGhzaOGRGrk3Y+zxY9oFFZB9aROqRkesT6lMeLPV7i0j9wSJSfzRyY0L9iQdL/dkiUn+xiNRnxpeZIymvDp7zjg7+BJfqrV4AAAAAAQAB//8AD3icY2BkAALmJUwzGEQZZBwk+RkZGBmdGJgYmbIYgMwsoGSiiLgIs5A2owg7I5uSOqOaiT2jmZE8I5gQY17C/09BQEfg3yt+fh8gvYQxD0j68DOJiQn8U+DnZxQDcQUEljLmCwBpBgbG/3//b2SOZ+Zm4GEQcuAH2sblDLSEm8FFVJhJEGgLH6OSHpMdo5EcI3Nk0bEXJ/LYqvZ82VXHGFd6pKTkyCsQwQAAq+QkqAAAeJxjYGRgYADiw5VSsfH8Nl8ZuJlfAEUYzpvO6IXQCb7///7fyLyEmRvI5WBgAokCAFb/DJAAAAB4nGNgZGBgDvqfxRDF/IKB4f935iUMQBEUwAwAi5YFpgPoAAAD6AAAA1kAAAAAAAAAOABbAAEAAAADABYAAQAAAAAAAgAGABMAbgAAAC0JkQAAAAB4nHWQy2rCQBSG//HSi0JbWui2sypKabxgN4IgWHTTbqS4LTHGJBIzMhkFX6Pv0IfpS/RZ+puMpShNmMx3vjlz5mQAXOMbAvnzxJGzwBmjnAs4Rc9ykf7Zcon8YrmMKt4sn9C/W67gAYHlKm7wwQqidM5ogU/LAlfi0nIBF+LOcpH+0XKJ3LNcxq14tXxC71muYCJSy1Xci6+BWm11FIRG1gZ12W62OnK6lYoqStxYumsTKp3KvpyrxPhxrBxPLfc89oN17Op9uJ8nvk4jlciW09yrkZ/42jX+bFc93QRtY+ZyrtVSDm2GXGm18D3jhMasuo3G3/MwgMIKW2hEvKoQBhI12jrnNppooUOaMkMyM8+KkMBFTONizR1htpIy7nPMGSW0PjNisgOP3+WRH5MC7o9ZRR+tHsYT0u6MKPOSfTns7jBrREqyTDezs9/eU2x4WpvWcNeuS511JTE8qCF5H7u1BY1H72S3Ymi7aPD95/9+AN1fhEsAeJxjYGKAAC4G7ICZgYGRiZGZMzkjNTk7N7Eomy05syg5J5WBAQBE1QZBAABLuADIUlixAQGOWbkIAAgAYyCwASNEsAMjcLIEKAlFUkSyCgIHKrEGAUSxJAGIUViwQIhYsQYDRLEmAYhRWLgEAIhYsQYBRFlZWVm4Af+FsASNsQUARAAA) format("woff")}.ui.ordered.steps .step.completed:before,.ui.steps .step.completed>.icon:before{content:"\e800";font-family:Step}
/*!
 * # Fomantic-UI - Text
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * https://github.com/fomantic/Fomantic-UI/blob/master/LICENSE.md
 *
 */span.ui.primary.text{color:#2185d0}span.ui.inverted.primary.text{color:#54c8ff}span.ui.secondary.text{color:#1b1c1d}span.ui.inverted.secondary.text{color:#545454}span.ui.red.text{color:#db2828}span.ui.inverted.red.text{color:#ff695e}span.ui.orange.text{color:#f2711c}span.ui.inverted.orange.text{color:#ff851b}span.ui.yellow.text{color:#fbbd08}span.ui.inverted.yellow.text{color:#ffe21f}span.ui.olive.text{color:#b5cc18}span.ui.inverted.olive.text{color:#d9e778}span.ui.green.text{color:#21ba45}span.ui.inverted.green.text{color:#2ecc40}span.ui.teal.text{color:#00b5ad}span.ui.inverted.teal.text{color:#6dffff}span.ui.blue.text{color:#2185d0}span.ui.inverted.blue.text{color:#54c8ff}span.ui.violet.text{color:#6435c9}span.ui.inverted.violet.text{color:#a291fb}span.ui.purple.text{color:#a333c8}span.ui.inverted.purple.text{color:#dc73ff}span.ui.pink.text{color:#e03997}span.ui.inverted.pink.text{color:#ff8edf}span.ui.brown.text{color:#a5673f}span.ui.inverted.brown.text{color:#d67c1c}span.ui.grey.text{color:#767676}span.ui.inverted.grey.text{color:#dcddde}span.ui.black.text{color:#1b1c1d}span.ui.inverted.black.text{color:#545454}span.ui.disabled.text{opacity:.45}span.ui.mini.text{font-size:.4em}span.ui.tiny.text{font-size:.5em}span.ui.small.text{font-size:.75em}span.ui.medium.text{font-size:1em}span.ui.large.text{font-size:1.5em}span.ui.big.text{font-size:2em}span.ui.huge.text{font-size:4em}span.ui.massive.text{font-size:8em}
/*!
 * # Fomantic-UI - Breadcrumb
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.breadcrumb{display:inline-block;line-height:1.4285em;margin:0;vertical-align:middle}.ui.breadcrumb:first-child{margin-top:0}.ui.breadcrumb:last-child{margin-bottom:0}.ui.breadcrumb .divider{color:rgba(0,0,0,.4);display:inline-block;font-size:.92857143em;margin:0 .21428571rem;opacity:.7;vertical-align:baseline}.ui.breadcrumb a{color:#4183c4}.ui.breadcrumb a:hover{color:#1e70bf}.ui.breadcrumb .icon.divider{font-size:.85714286em;vertical-align:baseline}.ui.breadcrumb a.section{cursor:pointer}.ui.breadcrumb .section{display:inline-block;margin:0;padding:0}.ui.breadcrumb.segment{display:inline-block;padding:.78571429em 1em}.ui.inverted.breadcrumb{color:#dcddde}.ui.inverted.breadcrumb>.active.section{color:#fff}.ui.inverted.breadcrumb>.divider{color:hsla(0,0%,100%,.7)}.ui.breadcrumb .active.section{font-weight:700}.ui.mini.breadcrumb{font-size:.78571429rem}.ui.tiny.breadcrumb{font-size:.85714286rem}.ui.small.breadcrumb{font-size:.92857143rem}.ui.breadcrumb{font-size:1rem}.ui.large.breadcrumb{font-size:1.14285714rem}.ui.big.breadcrumb{font-size:1.28571429rem}.ui.huge.breadcrumb{font-size:1.42857143rem}.ui.massive.breadcrumb{font-size:1.71428571rem}
/*!
 * # Fomantic-UI - Form
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.form{max-width:100%;position:relative}.ui.form>p{margin:1em 0}.ui.form .field{clear:both;margin:0 0 1em}.ui.form .field:last-child,.ui.form .fields:last-child .field{margin-bottom:0}.ui.form .fields .field{clear:both;margin:0}.ui.form .field>label{color:rgba(0,0,0,.87);display:block;font-size:.92857143em;font-weight:700;margin:0 0 .28571429rem;text-transform:none}.ui.form input:not([type]),.ui.form input[type=date],.ui.form input[type=datetime-local],.ui.form input[type=email],.ui.form input[type=file],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=search],.ui.form input[type=tel],.ui.form input[type=text],.ui.form input[type=time],.ui.form input[type=url],.ui.form textarea{vertical-align:top;width:100%}.ui.form ::-webkit-datetime-edit,.ui.form ::-webkit-inner-spin-button{height:1.21428571em}.ui.form input:not([type]),.ui.form input[type=date],.ui.form input[type=datetime-local],.ui.form input[type=email],.ui.form input[type=file],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=search],.ui.form input[type=tel],.ui.form input[type=text],.ui.form input[type=time],.ui.form input[type=url]{-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-appearance:none;background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:inset 0 0 0 0 transparent;color:rgba(0,0,0,.87);font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1em;line-height:1.21428571em;margin:0;outline:none;padding:.67857143em 1em;transition:color .1s ease,border-color .1s ease}.ui.form textarea,.ui.input textarea{-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-appearance:none;background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:inset 0 0 0 0 transparent;color:rgba(0,0,0,.87);font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1em;line-height:1.2857;margin:0;outline:none;padding:.78571429em 1em;resize:vertical;transition:color .1s ease,border-color .1s ease}.ui.form textarea:not([rows]){height:12em;max-height:24em;min-height:8em}.ui.form input[type=checkbox],.ui.form textarea{vertical-align:top}.ui.form .fields:not(.grouped):not(.inline) .field:not(:only-child) label+.ui.ui.checkbox{margin-top:.7em}.ui.form .fields:not(.grouped):not(.inline) .field:not(:only-child) .ui.checkbox{margin-top:2.41428571em}.ui.form .fields:not(.grouped):not(.inline) .field:not(:only-child) .ui.toggle.checkbox{margin-top:2.21428571em}.ui.form .fields:not(.grouped):not(.inline) .field:not(:only-child) .ui.slider.checkbox{margin-top:2.61428571em}.ui.ui.form .field .fields .field:not(:only-child) .ui.checkbox{margin-top:.6em}.ui.ui.form .field .fields .field:not(:only-child) .ui.toggle.checkbox{margin-top:.5em}.ui.ui.form .field .fields .field:not(:only-child) .ui.slider.checkbox{margin-top:.7em}.ui.form .field .transparent.input:not(.icon) input,.ui.form .field input.transparent,.ui.form .field textarea.transparent{padding:.67857143em 1em}.ui.form .field input.transparent,.ui.form .field textarea.transparent{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ui.form .field.error .transparent.input input,.ui.form .field.error .transparent.input textarea,.ui.form .field.error input.transparent,.ui.form .field.error textarea.transparent{background-color:#fff6f6!important;color:#9f3a38!important}.ui.form input.attached{width:auto}.ui.form select{background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:inset 0 0 0 0 transparent;color:rgba(0,0,0,.87);display:block;height:auto;padding:.62em 1em;transition:color .1s ease,border-color .1s ease;width:100%}.ui.form .field>.selection.dropdown{min-width:auto;width:100%}.ui.form .field>.selection.dropdown>.dropdown.icon{float:right}.ui.form .inline.field>.selection.dropdown,.ui.form .inline.fields .field>.selection.dropdown{width:auto}.ui.form .inline.field>.selection.dropdown>.dropdown.icon,.ui.form .inline.fields .field>.selection.dropdown>.dropdown.icon{float:none}.ui.form .field .ui.input,.ui.form .fields .field .ui.input,.ui.form .wide.field .ui.input{width:100%}.ui.form .inline.field:not(.wide) .ui.input,.ui.form .inline.fields .field:not(.wide) .ui.input{vertical-align:middle;width:auto}.ui.form .field .ui.input input,.ui.form .fields .field .ui.input input{width:auto}.ui.form .eight.fields .ui.input input,.ui.form .five.fields .ui.input input,.ui.form .four.fields .ui.input input,.ui.form .nine.fields .ui.input input,.ui.form .seven.fields .ui.input input,.ui.form .six.fields .ui.input input,.ui.form .ten.fields .ui.input input,.ui.form .three.fields .ui.input input,.ui.form .two.fields .ui.input input,.ui.form .wide.field .ui.input input{flex:1 0 auto;width:0}.ui.form .error.message,.ui.form .error.message:empty,.ui.form .success.message,.ui.form .warning.message{display:none}.ui.form .message:first-child{margin-top:0}.ui.form .field .prompt.label{background:#fff!important;border:1px solid #e0b4b4!important;color:#9f3a38!important;white-space:normal}.ui.form .inline.field .prompt,.ui.form .inline.fields .field .prompt{margin:-.25em 0 -.5em .5em;vertical-align:top}.ui.form .inline.field .prompt:before,.ui.form .inline.fields .field .prompt:before{border-width:0 0 1px 1px;bottom:auto;left:0;right:auto;top:50%}.ui.form .field.field input:-webkit-autofill{border-color:#e5dfa1!important;box-shadow:inset 0 0 0 100px ivory!important}.ui.form .field.field input:-webkit-autofill:focus{border-color:#d5c315!important;box-shadow:inset 0 0 0 100px ivory!important}.ui.form .error.error input:-webkit-autofill{border-color:#e0b4b4!important;box-shadow:inset 0 0 0 100px #fffaf0!important}.ui.form ::-webkit-input-placeholder{color:hsla(0,0%,75%,.87)}.ui.form :-ms-input-placeholder{color:hsla(0,0%,75%,.87)!important}.ui.form ::-moz-placeholder{color:hsla(0,0%,75%,.87)}.ui.form :focus::-webkit-input-placeholder{color:hsla(0,0%,45%,.87)}.ui.form :focus:-ms-input-placeholder{color:hsla(0,0%,45%,.87)!important}.ui.form :focus::-moz-placeholder{color:hsla(0,0%,45%,.87)}.ui.form .error ::-webkit-input-placeholder{color:#e7bdbc}.ui.form .error :-ms-input-placeholder{color:#e7bdbc!important}.ui.form .error ::-moz-placeholder{color:#e7bdbc}.ui.form .error :focus::-webkit-input-placeholder{color:#da9796}.ui.form .error :focus:-ms-input-placeholder{color:#da9796!important}.ui.form .error :focus::-moz-placeholder{color:#da9796}.ui.form input:not([type]):focus,.ui.form input[type=date]:focus,.ui.form input[type=datetime-local]:focus,.ui.form input[type=email]:focus,.ui.form input[type=file]:focus,.ui.form input[type=number]:focus,.ui.form input[type=password]:focus,.ui.form input[type=search]:focus,.ui.form input[type=tel]:focus,.ui.form input[type=text]:focus,.ui.form input[type=time]:focus,.ui.form input[type=url]:focus,.ui.form textarea:focus{background:#fff;border-color:#85b7d9;border-radius:.28571429rem;box-shadow:inset 0 0 0 0 rgba(34,36,38,.35);color:rgba(0,0,0,.95)}.ui.form textarea:focus{-webkit-appearance:none}.ui.form.success .success.message:not(:empty){display:block}.ui.form.success .compact.success.message:not(:empty){display:inline-block}.ui.form.success .icon.success.message:not(:empty){display:flex}.ui.form.warning .warning.message:not(:empty){display:block}.ui.form.warning .compact.warning.message:not(:empty){display:inline-block}.ui.form.warning .icon.warning.message:not(:empty){display:flex}.ui.form.error .error.message:not(:empty){display:block}.ui.form.error .compact.error.message:not(:empty){display:inline-block}.ui.form.error .icon.error.message:not(:empty){display:flex}.ui.ui.form .field.error .input,.ui.ui.form .field.error label,.ui.ui.form .fields.error .field .input,.ui.ui.form .fields.error .field label{color:#9f3a38}.ui.form .field.error .corner.label,.ui.form .fields.error .field .corner.label{border-color:#9f3a38;color:#fff}.ui.form .field.error input:not([type]),.ui.form .field.error input[type=date],.ui.form .field.error input[type=datetime-local],.ui.form .field.error input[type=email],.ui.form .field.error input[type=file],.ui.form .field.error input[type=number],.ui.form .field.error input[type=password],.ui.form .field.error input[type=search],.ui.form .field.error input[type=tel],.ui.form .field.error input[type=text],.ui.form .field.error input[type=time],.ui.form .field.error input[type=url],.ui.form .field.error select,.ui.form .field.error textarea,.ui.form .fields.error .field input:not([type]),.ui.form .fields.error .field input[type=date],.ui.form .fields.error .field input[type=datetime-local],.ui.form .fields.error .field input[type=email],.ui.form .fields.error .field input[type=file],.ui.form .fields.error .field input[type=number],.ui.form .fields.error .field input[type=password],.ui.form .fields.error .field input[type=search],.ui.form .fields.error .field input[type=tel],.ui.form .fields.error .field input[type=text],.ui.form .fields.error .field input[type=time],.ui.form .fields.error .field input[type=url],.ui.form .fields.error .field select,.ui.form .fields.error .field textarea{background:#fff6f6;border-color:#e0b4b4;border-radius:"";box-shadow:none;color:#9f3a38}.ui.form .field.error input:not([type]):focus,.ui.form .field.error input[type=date]:focus,.ui.form .field.error input[type=datetime-local]:focus,.ui.form .field.error input[type=email]:focus,.ui.form .field.error input[type=file]:focus,.ui.form .field.error input[type=number]:focus,.ui.form .field.error input[type=password]:focus,.ui.form .field.error input[type=search]:focus,.ui.form .field.error input[type=tel]:focus,.ui.form .field.error input[type=text]:focus,.ui.form .field.error input[type=time]:focus,.ui.form .field.error input[type=url]:focus,.ui.form .field.error select:focus,.ui.form .field.error textarea:focus{background:#fff6f6;border-color:#e0b4b4;box-shadow:none;color:#9f3a38}.ui.form .field.error select{-webkit-appearance:menulist-button}.ui.form .field.error .ui.dropdown,.ui.form .field.error .ui.dropdown .item,.ui.form .field.error .ui.dropdown .text,.ui.form .fields.error .field .ui.dropdown,.ui.form .fields.error .field .ui.dropdown .item{background:#fff6f6;color:#9f3a38}.ui.form .field.error .ui.dropdown,.ui.form .field.error .ui.dropdown:hover,.ui.form .fields.error .field .ui.dropdown,.ui.form .fields.error .field .ui.dropdown:hover{border-color:#e0b4b4!important}.ui.form .field.error .ui.dropdown:hover .menu,.ui.form .fields.error .field .ui.dropdown:hover .menu{border-color:#e0b4b4}.ui.form .field.error .ui.multiple.selection.dropdown>.label,.ui.form .fields.error .field .ui.multiple.selection.dropdown>.label{background-color:#eacbcb;color:#9f3a38}.ui.form .field.error .ui.dropdown .menu .item:hover,.ui.form .field.error .ui.dropdown .menu .selected.item,.ui.form .fields.error .field .ui.dropdown .menu .item:hover,.ui.form .fields.error .field .ui.dropdown .menu .selected.item{background-color:#fbe7e7}.ui.form .field.error .ui.dropdown .menu .active.item,.ui.form .fields.error .field .ui.dropdown .menu .active.item{background-color:#fdcfcf!important}.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box,.ui.form .field.error .checkbox:not(.toggle):not(.slider) label,.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box,.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label{color:#9f3a38}.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box:before,.ui.form .field.error .checkbox:not(.toggle):not(.slider) label:before,.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box:before,.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label:before{background:#fff6f6;border-color:#e0b4b4}.ui.form .field.error .checkbox .box:after,.ui.form .field.error .checkbox label:after,.ui.form .fields.error .field .checkbox .box:after,.ui.form .fields.error .field .checkbox label:after{color:#9f3a38}.ui.form .disabled.field,.ui.form .disabled.fields .field,.ui.form .field :disabled{opacity:.45;pointer-events:none}.ui.form .field.disabled>label,.ui.form .fields.disabled>label{opacity:.45}.ui.form .field.disabled :disabled{opacity:1}.ui.loading.form{cursor:default;pointer-events:none;position:relative}.ui.loading.form:before{background:hsla(0,0%,100%,.8);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:100}.ui.loading.form.segments:before{border-radius:.28571429rem}.ui.loading.form:after{animation:loader .6s linear infinite;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent;content:"";height:3em;left:50%;margin:-1.5em 0 0 -1.5em;position:absolute;top:50%;visibility:visible;width:3em;z-index:101}.ui.form .required.field>.checkbox:after,.ui.form .required.field>label:after,.ui.form .required.fields.grouped>label:after,.ui.form .required.fields:not(.grouped)>.field>.checkbox:after,.ui.form .required.fields:not(.grouped)>.field>label:after,.ui.form label.required:after{color:#db2828;content:"*";margin:-.2em 0 0 .2em}.ui.form .required.field>label:after,.ui.form .required.fields.grouped>label:after,.ui.form .required.fields:not(.grouped)>.field>label:after,.ui.form label.required:after{display:inline-block;vertical-align:top}.ui.form .required.field>.checkbox:after,.ui.form .required.fields:not(.grouped)>.field>.checkbox:after{left:100%;position:absolute;top:0}.ui.form .inverted.segment .ui.checkbox .box,.ui.form .inverted.segment .ui.checkbox label,.ui.form .inverted.segment label,.ui.inverted.form .inline.field>label,.ui.inverted.form .inline.field>p,.ui.inverted.form .inline.fields .field>label,.ui.inverted.form .inline.fields .field>p,.ui.inverted.form .inline.fields>label,.ui.inverted.form .ui.checkbox .box,.ui.inverted.form .ui.checkbox label,.ui.inverted.form label{color:hsla(0,0%,100%,.9)}.ui.inverted.loading.form{color:#fff}.ui.inverted.loading.form:before{background:rgba(0,0,0,.85)}.ui.inverted.form input:not([type]),.ui.inverted.form input[type=date],.ui.inverted.form input[type=datetime-local],.ui.inverted.form input[type=email],.ui.inverted.form input[type=file],.ui.inverted.form input[type=number],.ui.inverted.form input[type=password],.ui.inverted.form input[type=search],.ui.inverted.form input[type=tel],.ui.inverted.form input[type=text],.ui.inverted.form input[type=time],.ui.inverted.form input[type=url]{background:#fff;border-color:hsla(0,0%,100%,.1);box-shadow:none;color:rgba(0,0,0,.87)}.ui.form .grouped.fields{display:block;margin:0 0 1em}.ui.form .grouped.fields:last-child{margin-bottom:0}.ui.form .grouped.fields>label{color:rgba(0,0,0,.87);font-size:.92857143em;font-weight:700;margin:0 0 .28571429rem;text-transform:none}.ui.form .grouped.fields .field,.ui.form .grouped.inline.fields .field{display:block;margin:.5em 0;padding:0}.ui.form .fields{display:flex;flex-direction:row;margin:0 -.5em 1em}.ui.form .fields>.field{flex:0 1 auto;padding-left:.5em;padding-right:.5em}.ui.form .fields>.field:first-child{border-left:none;box-shadow:none}.ui.form .two.fields>.field,.ui.form .two.fields>.fields{width:50%}.ui.form .three.fields>.field,.ui.form .three.fields>.fields{width:33.33333333%}.ui.form .four.fields>.field,.ui.form .four.fields>.fields{width:25%}.ui.form .five.fields>.field,.ui.form .five.fields>.fields{width:20%}.ui.form .six.fields>.field,.ui.form .six.fields>.fields{width:16.66666667%}.ui.form .seven.fields>.field,.ui.form .seven.fields>.fields{width:14.28571429%}.ui.form .eight.fields>.field,.ui.form .eight.fields>.fields{width:12.5%}.ui.form .nine.fields>.field,.ui.form .nine.fields>.fields{width:11.11111111%}.ui.form .ten.fields>.field,.ui.form .ten.fields>.fields{width:10%}@media only screen and (max-width:767.98px){.ui.form .fields{flex-wrap:wrap}.ui.form:not(.unstackable) .eight.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .eight.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .five.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .five.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .four.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .four.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .nine.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .nine.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .seven.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .seven.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .six.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .six.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .ten.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .ten.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .three.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .three.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .two.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .two.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) [class*="equal width"].fields:not(.unstackable)>.field,.ui[class*="equal width"].form:not(.unstackable) .fields>.field{margin:0 0 1em;width:100%!important}}.ui.form .fields .wide.field{padding-left:.5em;padding-right:.5em;width:6.25%}.ui.form .one.wide.field{width:6.25%!important}.ui.form .two.wide.field{width:12.5%!important}.ui.form .three.wide.field{width:18.75%!important}.ui.form .four.wide.field{width:25%!important}.ui.form .five.wide.field{width:31.25%!important}.ui.form .six.wide.field{width:37.5%!important}.ui.form .seven.wide.field{width:43.75%!important}.ui.form .eight.wide.field{width:50%!important}.ui.form .nine.wide.field{width:56.25%!important}.ui.form .ten.wide.field{width:62.5%!important}.ui.form .eleven.wide.field{width:68.75%!important}.ui.form .twelve.wide.field{width:75%!important}.ui.form .thirteen.wide.field{width:81.25%!important}.ui.form .fourteen.wide.field{width:87.5%!important}.ui.form .fifteen.wide.field{width:93.75%!important}.ui.form .sixteen.wide.field{width:100%!important}@media only screen and (max-width:767.98px){.ui.form:not(.unstackable) .fields:not(.unstackable)>.eight.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.eleven.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.fifteen.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.five.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.four.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.fourteen.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.nine.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.seven.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.six.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.sixteen.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.ten.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.thirteen.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.three.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.twelve.wide.field,.ui.form:not(.unstackable) .fields:not(.unstackable)>.two.wide.field,.ui.form:not(.unstackable) .five.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .five.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .four.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .four.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .three.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .three.fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .two.fields:not(.unstackable)>.field,.ui.form:not(.unstackable) .two.fields:not(.unstackable)>.fields{width:100%!important}.ui.form .fields{margin-bottom:0}}.ui.form [class*="equal width"].fields>.field,.ui[class*="equal width"].form .fields>.field{flex:1 1 auto;width:100%}.ui.form .inline.fields{align-items:center;margin:0 0 1em}.ui.form .inline.fields .field{margin:0;padding:0 1em 0 0}.ui.form .inline.field>label,.ui.form .inline.field>p,.ui.form .inline.fields .field>label,.ui.form .inline.fields .field>p,.ui.form .inline.fields>label{color:rgba(0,0,0,.87);display:inline-block;font-size:.92857143em;font-weight:700;margin-bottom:0;margin-top:0;text-transform:none;vertical-align:baseline;width:auto}.ui.form .inline.fields>label{margin:.035714em 1em 0 0}.ui.form .inline.field>input,.ui.form .inline.field>select,.ui.form .inline.fields .field>input,.ui.form .inline.fields .field>select{display:inline-block;font-size:1em;margin-bottom:0;margin-top:0;vertical-align:middle;width:auto}.ui.form .inline.field>:first-child,.ui.form .inline.fields .field>:first-child{margin:0 .85714286em 0 0}.ui.form .inline.field>:only-child,.ui.form .inline.fields .field>:only-child{margin:0}.ui.form .inline.fields .wide.field{align-items:center;display:flex}.ui.form .inline.fields .wide.field>input,.ui.form .inline.fields .wide.field>select{width:100%}.ui.mini.form{font-size:.78571429rem}.ui.tiny.form{font-size:.85714286rem}.ui.small.form{font-size:.92857143rem}.ui.form{font-size:1rem}.ui.large.form{font-size:1.14285714rem}.ui.big.form{font-size:1.28571429rem}.ui.huge.form{font-size:1.42857143rem}.ui.massive.form{font-size:1.71428571rem}.ui.mini.form .field .dropdown{font-size:.78571429rem}.ui.tiny.form .field .dropdown{font-size:.85714286rem}.ui.small.form .field .dropdown{font-size:.92857143rem}.ui.form .field .dropdown{font-size:1rem}.ui.large.form .field .dropdown{font-size:1.14285714rem}.ui.big.form .field .dropdown{font-size:1.28571429rem}.ui.huge.form .field .dropdown{font-size:1.42857143rem}.ui.massive.form .field .dropdown{font-size:1.71428571rem}.ui.mini.form .field .dropdown .menu>.item{font-size:.78571429rem}.ui.tiny.form .field .dropdown .menu>.item{font-size:.85714286rem}.ui.small.form .field .dropdown .menu>.item{font-size:.92857143rem}.ui.form .field .dropdown .menu>.item{font-size:1rem}.ui.large.form .field .dropdown .menu>.item{font-size:1.14285714rem}.ui.big.form .field .dropdown .menu>.item{font-size:1.28571429rem}.ui.huge.form .field .dropdown .menu>.item{font-size:1.42857143rem}.ui.massive.form .field .dropdown .menu>.item{font-size:1.71428571rem}
/*!
 * # Fomantic-UI - Grid
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.grid{align-items:stretch;display:flex;flex-direction:row;flex-wrap:wrap;margin:-1rem;padding:0}.ui.relaxed.grid{margin-left:-1.5rem;margin-right:-1.5rem}.ui[class*="very relaxed"].grid{margin-left:-2.5rem;margin-right:-2.5rem}.ui.grid+.grid{margin-top:1rem}.ui.grid>.column:not(.row),.ui.grid>.row>.column{display:inline-block;padding-left:1rem;padding-right:1rem;position:relative;vertical-align:top;width:6.25%}.ui.grid>*{padding-left:1rem;padding-right:1rem}.ui.grid>.row{align-items:stretch;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:inherit;padding:1rem 0;position:relative;width:100%!important}.ui.grid>.column:not(.row){padding-bottom:1rem;padding-top:1rem}.ui.grid>.row>.column{margin-bottom:0;margin-top:0}.ui.grid>.row>.column>img,.ui.grid>.row>img{max-width:100%}.ui.grid>.ui.grid:first-child{margin-top:0}.ui.grid>.ui.grid:last-child{margin-bottom:0}.ui.aligned.grid .column>.segment:not(.compact):not(.attached),.ui.grid .aligned.row>.column>.segment:not(.compact):not(.attached){width:100%}.ui.grid .row+.ui.divider{flex-grow:1;margin:1rem}.ui.grid .column+.ui.vertical.divider{height:calc(50% - 1rem)}.ui.grid>.column:last-child>.horizontal.segment,.ui.grid>.row>.column:last-child>.horizontal.segment{box-shadow:none}@media only screen and (max-width:767.98px){.ui.page.grid{margin-left:0;margin-right:0;padding-left:0;padding-right:0;width:auto}}@media only screen and (min-width:768px) and (max-width:991.98px){.ui.page.grid{margin-left:0;margin-right:0;padding-left:2em;padding-right:2em;width:auto}}@media only screen and (min-width:992px) and (max-width:1199.98px){.ui.page.grid{margin-left:0;margin-right:0;padding-left:3%;padding-right:3%;width:auto}}@media only screen and (min-width:1200px) and (max-width:1919.98px){.ui.page.grid{margin-left:0;margin-right:0;padding-left:15%;padding-right:15%;width:auto}}@media only screen and (min-width:1920px){.ui.page.grid{margin-left:0;margin-right:0;padding-left:23%;padding-right:23%;width:auto}}.ui.grid>.column:only-child,.ui.grid>.row>.column:only-child,.ui[class*="one column"].grid>.column:not(.row),.ui[class*="one column"].grid>.row>.column{width:100%}.ui[class*="two column"].grid>.column:not(.row),.ui[class*="two column"].grid>.row>.column{width:50%}.ui[class*="three column"].grid>.column:not(.row),.ui[class*="three column"].grid>.row>.column{width:33.33333333%}.ui[class*="four column"].grid>.column:not(.row),.ui[class*="four column"].grid>.row>.column{width:25%}.ui[class*="five column"].grid>.column:not(.row),.ui[class*="five column"].grid>.row>.column{width:20%}.ui[class*="six column"].grid>.column:not(.row),.ui[class*="six column"].grid>.row>.column{width:16.66666667%}.ui[class*="seven column"].grid>.column:not(.row),.ui[class*="seven column"].grid>.row>.column{width:14.28571429%}.ui[class*="eight column"].grid>.column:not(.row),.ui[class*="eight column"].grid>.row>.column{width:12.5%}.ui[class*="nine column"].grid>.column:not(.row),.ui[class*="nine column"].grid>.row>.column{width:11.11111111%}.ui[class*="ten column"].grid>.column:not(.row),.ui[class*="ten column"].grid>.row>.column{width:10%}.ui[class*="eleven column"].grid>.column:not(.row),.ui[class*="eleven column"].grid>.row>.column{width:9.09090909%}.ui[class*="twelve column"].grid>.column:not(.row),.ui[class*="twelve column"].grid>.row>.column{width:8.33333333%}.ui[class*="thirteen column"].grid>.column:not(.row),.ui[class*="thirteen column"].grid>.row>.column{width:7.69230769%}.ui[class*="fourteen column"].grid>.column:not(.row),.ui[class*="fourteen column"].grid>.row>.column{width:7.14285714%}.ui[class*="fifteen column"].grid>.column:not(.row),.ui[class*="fifteen column"].grid>.row>.column{width:6.66666667%}.ui[class*="sixteen column"].grid>.column:not(.row),.ui[class*="sixteen column"].grid>.row>.column{width:6.25%}.ui.grid>[class*="one column"].row>.column{width:100%!important}.ui.grid>[class*="two column"].row>.column{width:50%!important}.ui.grid>[class*="three column"].row>.column{width:33.33333333%!important}.ui.grid>[class*="four column"].row>.column{width:25%!important}.ui.grid>[class*="five column"].row>.column{width:20%!important}.ui.grid>[class*="six column"].row>.column{width:16.66666667%!important}.ui.grid>[class*="seven column"].row>.column{width:14.28571429%!important}.ui.grid>[class*="eight column"].row>.column{width:12.5%!important}.ui.grid>[class*="nine column"].row>.column{width:11.11111111%!important}.ui.grid>[class*="ten column"].row>.column{width:10%!important}.ui.grid>[class*="eleven column"].row>.column{width:9.09090909%!important}.ui.grid>[class*="twelve column"].row>.column{width:8.33333333%!important}.ui.grid>[class*="thirteen column"].row>.column{width:7.69230769%!important}.ui.grid>[class*="fourteen column"].row>.column{width:7.14285714%!important}.ui.grid>[class*="fifteen column"].row>.column{width:6.66666667%!important}.ui.grid>[class*="sixteen column"].row>.column{width:6.25%!important}.ui.celled.page.grid{box-shadow:none}.ui.column.grid>[class*="one wide"].column,.ui.grid>.column.row>[class*="one wide"].column,.ui.grid>.row>[class*="one wide"].column,.ui.grid>[class*="one wide"].column{width:6.25%!important}.ui.column.grid>[class*="two wide"].column,.ui.grid>.column.row>[class*="two wide"].column,.ui.grid>.row>[class*="two wide"].column,.ui.grid>[class*="two wide"].column{width:12.5%!important}.ui.column.grid>[class*="three wide"].column,.ui.grid>.column.row>[class*="three wide"].column,.ui.grid>.row>[class*="three wide"].column,.ui.grid>[class*="three wide"].column{width:18.75%!important}.ui.column.grid>[class*="four wide"].column,.ui.grid>.column.row>[class*="four wide"].column,.ui.grid>.row>[class*="four wide"].column,.ui.grid>[class*="four wide"].column{width:25%!important}.ui.column.grid>[class*="five wide"].column,.ui.grid>.column.row>[class*="five wide"].column,.ui.grid>.row>[class*="five wide"].column,.ui.grid>[class*="five wide"].column{width:31.25%!important}.ui.column.grid>[class*="six wide"].column,.ui.grid>.column.row>[class*="six wide"].column,.ui.grid>.row>[class*="six wide"].column,.ui.grid>[class*="six wide"].column{width:37.5%!important}.ui.column.grid>[class*="seven wide"].column,.ui.grid>.column.row>[class*="seven wide"].column,.ui.grid>.row>[class*="seven wide"].column,.ui.grid>[class*="seven wide"].column{width:43.75%!important}.ui.column.grid>[class*="eight wide"].column,.ui.grid>.column.row>[class*="eight wide"].column,.ui.grid>.row>[class*="eight wide"].column,.ui.grid>[class*="eight wide"].column{width:50%!important}.ui.column.grid>[class*="nine wide"].column,.ui.grid>.column.row>[class*="nine wide"].column,.ui.grid>.row>[class*="nine wide"].column,.ui.grid>[class*="nine wide"].column{width:56.25%!important}.ui.column.grid>[class*="ten wide"].column,.ui.grid>.column.row>[class*="ten wide"].column,.ui.grid>.row>[class*="ten wide"].column,.ui.grid>[class*="ten wide"].column{width:62.5%!important}.ui.column.grid>[class*="eleven wide"].column,.ui.grid>.column.row>[class*="eleven wide"].column,.ui.grid>.row>[class*="eleven wide"].column,.ui.grid>[class*="eleven wide"].column{width:68.75%!important}.ui.column.grid>[class*="twelve wide"].column,.ui.grid>.column.row>[class*="twelve wide"].column,.ui.grid>.row>[class*="twelve wide"].column,.ui.grid>[class*="twelve wide"].column{width:75%!important}.ui.column.grid>[class*="thirteen wide"].column,.ui.grid>.column.row>[class*="thirteen wide"].column,.ui.grid>.row>[class*="thirteen wide"].column,.ui.grid>[class*="thirteen wide"].column{width:81.25%!important}.ui.column.grid>[class*="fourteen wide"].column,.ui.grid>.column.row>[class*="fourteen wide"].column,.ui.grid>.row>[class*="fourteen wide"].column,.ui.grid>[class*="fourteen wide"].column{width:87.5%!important}.ui.column.grid>[class*="fifteen wide"].column,.ui.grid>.column.row>[class*="fifteen wide"].column,.ui.grid>.row>[class*="fifteen wide"].column,.ui.grid>[class*="fifteen wide"].column{width:93.75%!important}.ui.column.grid>[class*="sixteen wide"].column,.ui.grid>.column.row>[class*="sixteen wide"].column,.ui.grid>.row>[class*="sixteen wide"].column,.ui.grid>[class*="sixteen wide"].column{width:100%!important}@media only screen and (min-width:320px) and (max-width:767.98px){.ui.column.grid>[class*="one wide mobile"].column,.ui.grid>.column.row>[class*="one wide mobile"].column,.ui.grid>.row>[class*="one wide mobile"].column,.ui.grid>[class*="one wide mobile"].column{width:6.25%!important}.ui.column.grid>[class*="two wide mobile"].column,.ui.grid>.column.row>[class*="two wide mobile"].column,.ui.grid>.row>[class*="two wide mobile"].column,.ui.grid>[class*="two wide mobile"].column{width:12.5%!important}.ui.column.grid>[class*="three wide mobile"].column,.ui.grid>.column.row>[class*="three wide mobile"].column,.ui.grid>.row>[class*="three wide mobile"].column,.ui.grid>[class*="three wide mobile"].column{width:18.75%!important}.ui.column.grid>[class*="four wide mobile"].column,.ui.grid>.column.row>[class*="four wide mobile"].column,.ui.grid>.row>[class*="four wide mobile"].column,.ui.grid>[class*="four wide mobile"].column{width:25%!important}.ui.column.grid>[class*="five wide mobile"].column,.ui.grid>.column.row>[class*="five wide mobile"].column,.ui.grid>.row>[class*="five wide mobile"].column,.ui.grid>[class*="five wide mobile"].column{width:31.25%!important}.ui.column.grid>[class*="six wide mobile"].column,.ui.grid>.column.row>[class*="six wide mobile"].column,.ui.grid>.row>[class*="six wide mobile"].column,.ui.grid>[class*="six wide mobile"].column{width:37.5%!important}.ui.column.grid>[class*="seven wide mobile"].column,.ui.grid>.column.row>[class*="seven wide mobile"].column,.ui.grid>.row>[class*="seven wide mobile"].column,.ui.grid>[class*="seven wide mobile"].column{width:43.75%!important}.ui.column.grid>[class*="eight wide mobile"].column,.ui.grid>.column.row>[class*="eight wide mobile"].column,.ui.grid>.row>[class*="eight wide mobile"].column,.ui.grid>[class*="eight wide mobile"].column{width:50%!important}.ui.column.grid>[class*="nine wide mobile"].column,.ui.grid>.column.row>[class*="nine wide mobile"].column,.ui.grid>.row>[class*="nine wide mobile"].column,.ui.grid>[class*="nine wide mobile"].column{width:56.25%!important}.ui.column.grid>[class*="ten wide mobile"].column,.ui.grid>.column.row>[class*="ten wide mobile"].column,.ui.grid>.row>[class*="ten wide mobile"].column,.ui.grid>[class*="ten wide mobile"].column{width:62.5%!important}.ui.column.grid>[class*="eleven wide mobile"].column,.ui.grid>.column.row>[class*="eleven wide mobile"].column,.ui.grid>.row>[class*="eleven wide mobile"].column,.ui.grid>[class*="eleven wide mobile"].column{width:68.75%!important}.ui.column.grid>[class*="twelve wide mobile"].column,.ui.grid>.column.row>[class*="twelve wide mobile"].column,.ui.grid>.row>[class*="twelve wide mobile"].column,.ui.grid>[class*="twelve wide mobile"].column{width:75%!important}.ui.column.grid>[class*="thirteen wide mobile"].column,.ui.grid>.column.row>[class*="thirteen wide mobile"].column,.ui.grid>.row>[class*="thirteen wide mobile"].column,.ui.grid>[class*="thirteen wide mobile"].column{width:81.25%!important}.ui.column.grid>[class*="fourteen wide mobile"].column,.ui.grid>.column.row>[class*="fourteen wide mobile"].column,.ui.grid>.row>[class*="fourteen wide mobile"].column,.ui.grid>[class*="fourteen wide mobile"].column{width:87.5%!important}.ui.column.grid>[class*="fifteen wide mobile"].column,.ui.grid>.column.row>[class*="fifteen wide mobile"].column,.ui.grid>.row>[class*="fifteen wide mobile"].column,.ui.grid>[class*="fifteen wide mobile"].column{width:93.75%!important}.ui.column.grid>[class*="sixteen wide mobile"].column,.ui.grid>.column.row>[class*="sixteen wide mobile"].column,.ui.grid>.row>[class*="sixteen wide mobile"].column,.ui.grid>[class*="sixteen wide mobile"].column{width:100%!important}}@media only screen and (min-width:768px) and (max-width:991.98px){.ui.column.grid>[class*="one wide tablet"].column,.ui.grid>.column.row>[class*="one wide tablet"].column,.ui.grid>.row>[class*="one wide tablet"].column,.ui.grid>[class*="one wide tablet"].column{width:6.25%!important}.ui.column.grid>[class*="two wide tablet"].column,.ui.grid>.column.row>[class*="two wide tablet"].column,.ui.grid>.row>[class*="two wide tablet"].column,.ui.grid>[class*="two wide tablet"].column{width:12.5%!important}.ui.column.grid>[class*="three wide tablet"].column,.ui.grid>.column.row>[class*="three wide tablet"].column,.ui.grid>.row>[class*="three wide tablet"].column,.ui.grid>[class*="three wide tablet"].column{width:18.75%!important}.ui.column.grid>[class*="four wide tablet"].column,.ui.grid>.column.row>[class*="four wide tablet"].column,.ui.grid>.row>[class*="four wide tablet"].column,.ui.grid>[class*="four wide tablet"].column{width:25%!important}.ui.column.grid>[class*="five wide tablet"].column,.ui.grid>.column.row>[class*="five wide tablet"].column,.ui.grid>.row>[class*="five wide tablet"].column,.ui.grid>[class*="five wide tablet"].column{width:31.25%!important}.ui.column.grid>[class*="six wide tablet"].column,.ui.grid>.column.row>[class*="six wide tablet"].column,.ui.grid>.row>[class*="six wide tablet"].column,.ui.grid>[class*="six wide tablet"].column{width:37.5%!important}.ui.column.grid>[class*="seven wide tablet"].column,.ui.grid>.column.row>[class*="seven wide tablet"].column,.ui.grid>.row>[class*="seven wide tablet"].column,.ui.grid>[class*="seven wide tablet"].column{width:43.75%!important}.ui.column.grid>[class*="eight wide tablet"].column,.ui.grid>.column.row>[class*="eight wide tablet"].column,.ui.grid>.row>[class*="eight wide tablet"].column,.ui.grid>[class*="eight wide tablet"].column{width:50%!important}.ui.column.grid>[class*="nine wide tablet"].column,.ui.grid>.column.row>[class*="nine wide tablet"].column,.ui.grid>.row>[class*="nine wide tablet"].column,.ui.grid>[class*="nine wide tablet"].column{width:56.25%!important}.ui.column.grid>[class*="ten wide tablet"].column,.ui.grid>.column.row>[class*="ten wide tablet"].column,.ui.grid>.row>[class*="ten wide tablet"].column,.ui.grid>[class*="ten wide tablet"].column{width:62.5%!important}.ui.column.grid>[class*="eleven wide tablet"].column,.ui.grid>.column.row>[class*="eleven wide tablet"].column,.ui.grid>.row>[class*="eleven wide tablet"].column,.ui.grid>[class*="eleven wide tablet"].column{width:68.75%!important}.ui.column.grid>[class*="twelve wide tablet"].column,.ui.grid>.column.row>[class*="twelve wide tablet"].column,.ui.grid>.row>[class*="twelve wide tablet"].column,.ui.grid>[class*="twelve wide tablet"].column{width:75%!important}.ui.column.grid>[class*="thirteen wide tablet"].column,.ui.grid>.column.row>[class*="thirteen wide tablet"].column,.ui.grid>.row>[class*="thirteen wide tablet"].column,.ui.grid>[class*="thirteen wide tablet"].column{width:81.25%!important}.ui.column.grid>[class*="fourteen wide tablet"].column,.ui.grid>.column.row>[class*="fourteen wide tablet"].column,.ui.grid>.row>[class*="fourteen wide tablet"].column,.ui.grid>[class*="fourteen wide tablet"].column{width:87.5%!important}.ui.column.grid>[class*="fifteen wide tablet"].column,.ui.grid>.column.row>[class*="fifteen wide tablet"].column,.ui.grid>.row>[class*="fifteen wide tablet"].column,.ui.grid>[class*="fifteen wide tablet"].column{width:93.75%!important}.ui.column.grid>[class*="sixteen wide tablet"].column,.ui.grid>.column.row>[class*="sixteen wide tablet"].column,.ui.grid>.row>[class*="sixteen wide tablet"].column,.ui.grid>[class*="sixteen wide tablet"].column{width:100%!important}}@media only screen and (min-width:992px){.ui.column.grid>[class*="one wide computer"].column,.ui.grid>.column.row>[class*="one wide computer"].column,.ui.grid>.row>[class*="one wide computer"].column,.ui.grid>[class*="one wide computer"].column{width:6.25%!important}.ui.column.grid>[class*="two wide computer"].column,.ui.grid>.column.row>[class*="two wide computer"].column,.ui.grid>.row>[class*="two wide computer"].column,.ui.grid>[class*="two wide computer"].column{width:12.5%!important}.ui.column.grid>[class*="three wide computer"].column,.ui.grid>.column.row>[class*="three wide computer"].column,.ui.grid>.row>[class*="three wide computer"].column,.ui.grid>[class*="three wide computer"].column{width:18.75%!important}.ui.column.grid>[class*="four wide computer"].column,.ui.grid>.column.row>[class*="four wide computer"].column,.ui.grid>.row>[class*="four wide computer"].column,.ui.grid>[class*="four wide computer"].column{width:25%!important}.ui.column.grid>[class*="five wide computer"].column,.ui.grid>.column.row>[class*="five wide computer"].column,.ui.grid>.row>[class*="five wide computer"].column,.ui.grid>[class*="five wide computer"].column{width:31.25%!important}.ui.column.grid>[class*="six wide computer"].column,.ui.grid>.column.row>[class*="six wide computer"].column,.ui.grid>.row>[class*="six wide computer"].column,.ui.grid>[class*="six wide computer"].column{width:37.5%!important}.ui.column.grid>[class*="seven wide computer"].column,.ui.grid>.column.row>[class*="seven wide computer"].column,.ui.grid>.row>[class*="seven wide computer"].column,.ui.grid>[class*="seven wide computer"].column{width:43.75%!important}.ui.column.grid>[class*="eight wide computer"].column,.ui.grid>.column.row>[class*="eight wide computer"].column,.ui.grid>.row>[class*="eight wide computer"].column,.ui.grid>[class*="eight wide computer"].column{width:50%!important}.ui.column.grid>[class*="nine wide computer"].column,.ui.grid>.column.row>[class*="nine wide computer"].column,.ui.grid>.row>[class*="nine wide computer"].column,.ui.grid>[class*="nine wide computer"].column{width:56.25%!important}.ui.column.grid>[class*="ten wide computer"].column,.ui.grid>.column.row>[class*="ten wide computer"].column,.ui.grid>.row>[class*="ten wide computer"].column,.ui.grid>[class*="ten wide computer"].column{width:62.5%!important}.ui.column.grid>[class*="eleven wide computer"].column,.ui.grid>.column.row>[class*="eleven wide computer"].column,.ui.grid>.row>[class*="eleven wide computer"].column,.ui.grid>[class*="eleven wide computer"].column{width:68.75%!important}.ui.column.grid>[class*="twelve wide computer"].column,.ui.grid>.column.row>[class*="twelve wide computer"].column,.ui.grid>.row>[class*="twelve wide computer"].column,.ui.grid>[class*="twelve wide computer"].column{width:75%!important}.ui.column.grid>[class*="thirteen wide computer"].column,.ui.grid>.column.row>[class*="thirteen wide computer"].column,.ui.grid>.row>[class*="thirteen wide computer"].column,.ui.grid>[class*="thirteen wide computer"].column{width:81.25%!important}.ui.column.grid>[class*="fourteen wide computer"].column,.ui.grid>.column.row>[class*="fourteen wide computer"].column,.ui.grid>.row>[class*="fourteen wide computer"].column,.ui.grid>[class*="fourteen wide computer"].column{width:87.5%!important}.ui.column.grid>[class*="fifteen wide computer"].column,.ui.grid>.column.row>[class*="fifteen wide computer"].column,.ui.grid>.row>[class*="fifteen wide computer"].column,.ui.grid>[class*="fifteen wide computer"].column{width:93.75%!important}.ui.column.grid>[class*="sixteen wide computer"].column,.ui.grid>.column.row>[class*="sixteen wide computer"].column,.ui.grid>.row>[class*="sixteen wide computer"].column,.ui.grid>[class*="sixteen wide computer"].column{width:100%!important}}@media only screen and (min-width:1200px) and (max-width:1919.98px){.ui.column.grid>[class*="one wide large screen"].column,.ui.grid>.column.row>[class*="one wide large screen"].column,.ui.grid>.row>[class*="one wide large screen"].column,.ui.grid>[class*="one wide large screen"].column{width:6.25%!important}.ui.column.grid>[class*="two wide large screen"].column,.ui.grid>.column.row>[class*="two wide large screen"].column,.ui.grid>.row>[class*="two wide large screen"].column,.ui.grid>[class*="two wide large screen"].column{width:12.5%!important}.ui.column.grid>[class*="three wide large screen"].column,.ui.grid>.column.row>[class*="three wide large screen"].column,.ui.grid>.row>[class*="three wide large screen"].column,.ui.grid>[class*="three wide large screen"].column{width:18.75%!important}.ui.column.grid>[class*="four wide large screen"].column,.ui.grid>.column.row>[class*="four wide large screen"].column,.ui.grid>.row>[class*="four wide large screen"].column,.ui.grid>[class*="four wide large screen"].column{width:25%!important}.ui.column.grid>[class*="five wide large screen"].column,.ui.grid>.column.row>[class*="five wide large screen"].column,.ui.grid>.row>[class*="five wide large screen"].column,.ui.grid>[class*="five wide large screen"].column{width:31.25%!important}.ui.column.grid>[class*="six wide large screen"].column,.ui.grid>.column.row>[class*="six wide large screen"].column,.ui.grid>.row>[class*="six wide large screen"].column,.ui.grid>[class*="six wide large screen"].column{width:37.5%!important}.ui.column.grid>[class*="seven wide large screen"].column,.ui.grid>.column.row>[class*="seven wide large screen"].column,.ui.grid>.row>[class*="seven wide large screen"].column,.ui.grid>[class*="seven wide large screen"].column{width:43.75%!important}.ui.column.grid>[class*="eight wide large screen"].column,.ui.grid>.column.row>[class*="eight wide large screen"].column,.ui.grid>.row>[class*="eight wide large screen"].column,.ui.grid>[class*="eight wide large screen"].column{width:50%!important}.ui.column.grid>[class*="nine wide large screen"].column,.ui.grid>.column.row>[class*="nine wide large screen"].column,.ui.grid>.row>[class*="nine wide large screen"].column,.ui.grid>[class*="nine wide large screen"].column{width:56.25%!important}.ui.column.grid>[class*="ten wide large screen"].column,.ui.grid>.column.row>[class*="ten wide large screen"].column,.ui.grid>.row>[class*="ten wide large screen"].column,.ui.grid>[class*="ten wide large screen"].column{width:62.5%!important}.ui.column.grid>[class*="eleven wide large screen"].column,.ui.grid>.column.row>[class*="eleven wide large screen"].column,.ui.grid>.row>[class*="eleven wide large screen"].column,.ui.grid>[class*="eleven wide large screen"].column{width:68.75%!important}.ui.column.grid>[class*="twelve wide large screen"].column,.ui.grid>.column.row>[class*="twelve wide large screen"].column,.ui.grid>.row>[class*="twelve wide large screen"].column,.ui.grid>[class*="twelve wide large screen"].column{width:75%!important}.ui.column.grid>[class*="thirteen wide large screen"].column,.ui.grid>.column.row>[class*="thirteen wide large screen"].column,.ui.grid>.row>[class*="thirteen wide large screen"].column,.ui.grid>[class*="thirteen wide large screen"].column{width:81.25%!important}.ui.column.grid>[class*="fourteen wide large screen"].column,.ui.grid>.column.row>[class*="fourteen wide large screen"].column,.ui.grid>.row>[class*="fourteen wide large screen"].column,.ui.grid>[class*="fourteen wide large screen"].column{width:87.5%!important}.ui.column.grid>[class*="fifteen wide large screen"].column,.ui.grid>.column.row>[class*="fifteen wide large screen"].column,.ui.grid>.row>[class*="fifteen wide large screen"].column,.ui.grid>[class*="fifteen wide large screen"].column{width:93.75%!important}.ui.column.grid>[class*="sixteen wide large screen"].column,.ui.grid>.column.row>[class*="sixteen wide large screen"].column,.ui.grid>.row>[class*="sixteen wide large screen"].column,.ui.grid>[class*="sixteen wide large screen"].column{width:100%!important}}@media only screen and (min-width:1920px){.ui.column.grid>[class*="one wide widescreen"].column,.ui.grid>.column.row>[class*="one wide widescreen"].column,.ui.grid>.row>[class*="one wide widescreen"].column,.ui.grid>[class*="one wide widescreen"].column{width:6.25%!important}.ui.column.grid>[class*="two wide widescreen"].column,.ui.grid>.column.row>[class*="two wide widescreen"].column,.ui.grid>.row>[class*="two wide widescreen"].column,.ui.grid>[class*="two wide widescreen"].column{width:12.5%!important}.ui.column.grid>[class*="three wide widescreen"].column,.ui.grid>.column.row>[class*="three wide widescreen"].column,.ui.grid>.row>[class*="three wide widescreen"].column,.ui.grid>[class*="three wide widescreen"].column{width:18.75%!important}.ui.column.grid>[class*="four wide widescreen"].column,.ui.grid>.column.row>[class*="four wide widescreen"].column,.ui.grid>.row>[class*="four wide widescreen"].column,.ui.grid>[class*="four wide widescreen"].column{width:25%!important}.ui.column.grid>[class*="five wide widescreen"].column,.ui.grid>.column.row>[class*="five wide widescreen"].column,.ui.grid>.row>[class*="five wide widescreen"].column,.ui.grid>[class*="five wide widescreen"].column{width:31.25%!important}.ui.column.grid>[class*="six wide widescreen"].column,.ui.grid>.column.row>[class*="six wide widescreen"].column,.ui.grid>.row>[class*="six wide widescreen"].column,.ui.grid>[class*="six wide widescreen"].column{width:37.5%!important}.ui.column.grid>[class*="seven wide widescreen"].column,.ui.grid>.column.row>[class*="seven wide widescreen"].column,.ui.grid>.row>[class*="seven wide widescreen"].column,.ui.grid>[class*="seven wide widescreen"].column{width:43.75%!important}.ui.column.grid>[class*="eight wide widescreen"].column,.ui.grid>.column.row>[class*="eight wide widescreen"].column,.ui.grid>.row>[class*="eight wide widescreen"].column,.ui.grid>[class*="eight wide widescreen"].column{width:50%!important}.ui.column.grid>[class*="nine wide widescreen"].column,.ui.grid>.column.row>[class*="nine wide widescreen"].column,.ui.grid>.row>[class*="nine wide widescreen"].column,.ui.grid>[class*="nine wide widescreen"].column{width:56.25%!important}.ui.column.grid>[class*="ten wide widescreen"].column,.ui.grid>.column.row>[class*="ten wide widescreen"].column,.ui.grid>.row>[class*="ten wide widescreen"].column,.ui.grid>[class*="ten wide widescreen"].column{width:62.5%!important}.ui.column.grid>[class*="eleven wide widescreen"].column,.ui.grid>.column.row>[class*="eleven wide widescreen"].column,.ui.grid>.row>[class*="eleven wide widescreen"].column,.ui.grid>[class*="eleven wide widescreen"].column{width:68.75%!important}.ui.column.grid>[class*="twelve wide widescreen"].column,.ui.grid>.column.row>[class*="twelve wide widescreen"].column,.ui.grid>.row>[class*="twelve wide widescreen"].column,.ui.grid>[class*="twelve wide widescreen"].column{width:75%!important}.ui.column.grid>[class*="thirteen wide widescreen"].column,.ui.grid>.column.row>[class*="thirteen wide widescreen"].column,.ui.grid>.row>[class*="thirteen wide widescreen"].column,.ui.grid>[class*="thirteen wide widescreen"].column{width:81.25%!important}.ui.column.grid>[class*="fourteen wide widescreen"].column,.ui.grid>.column.row>[class*="fourteen wide widescreen"].column,.ui.grid>.row>[class*="fourteen wide widescreen"].column,.ui.grid>[class*="fourteen wide widescreen"].column{width:87.5%!important}.ui.column.grid>[class*="fifteen wide widescreen"].column,.ui.grid>.column.row>[class*="fifteen wide widescreen"].column,.ui.grid>.row>[class*="fifteen wide widescreen"].column,.ui.grid>[class*="fifteen wide widescreen"].column{width:93.75%!important}.ui.column.grid>[class*="sixteen wide widescreen"].column,.ui.grid>.column.row>[class*="sixteen wide widescreen"].column,.ui.grid>.row>[class*="sixteen wide widescreen"].column,.ui.grid>[class*="sixteen wide widescreen"].column{width:100%!important}}.ui.centered.grid,.ui.centered.grid>.row,.ui.grid>.centered.row{justify-content:center;text-align:center}.ui.centered.grid>.column:not(.aligned):not(.justified):not(.row),.ui.centered.grid>.row>.column:not(.aligned):not(.justified),.ui.grid .centered.row>.column:not(.aligned):not(.justified){text-align:left}.ui.grid>.centered.column,.ui.grid>.row>.centered.column{display:block;margin-left:auto;margin-right:auto}.ui.grid>.relaxed.row>.column,.ui.relaxed.grid>.column:not(.row),.ui.relaxed.grid>.row>.column{padding-left:1.5rem;padding-right:1.5rem}.ui.grid>[class*="very relaxed"].row>.column,.ui[class*="very relaxed"].grid>.column:not(.row),.ui[class*="very relaxed"].grid>.row>.column{padding-left:2.5rem;padding-right:2.5rem}.ui.grid .relaxed.row+.ui.divider,.ui.relaxed.grid .row+.ui.divider{margin-left:1.5rem;margin-right:1.5rem}.ui.grid [class*="very relaxed"].row+.ui.divider,.ui[class*="very relaxed"].grid .row+.ui.divider{margin-left:2.5rem;margin-right:2.5rem}.ui.padded.grid:not(.vertically):not(.horizontally){margin:0!important}[class*="horizontally padded"].ui.grid{margin-left:0!important;margin-right:0!important}[class*="vertically padded"].ui.grid{margin-bottom:0!important;margin-top:0!important}.ui.grid [class*="left floated"].column{margin-right:auto}.ui.grid [class*="right floated"].column{margin-left:auto}.ui.divided.grid:not([class*="vertically divided"])>.column:not(.row),.ui.divided.grid:not([class*="vertically divided"])>.row>.column{box-shadow:-1px 0 0 0 rgba(34,36,38,.15)}.ui[class*="vertically divided"].grid>.column:not(.row),.ui[class*="vertically divided"].grid>.row>.column{margin-bottom:1rem;margin-top:1rem;padding-bottom:0;padding-top:0}.ui[class*="vertically divided"].grid>.row{margin-bottom:0;margin-top:0}.ui.divided.grid:not([class*="vertically divided"])>.column:first-child,.ui.divided.grid:not([class*="vertically divided"])>.row>.column:first-child{box-shadow:none}.ui[class*="vertically divided"].grid>.row:first-child>.column{margin-top:0}.ui.grid>.divided.row>.column{box-shadow:-1px 0 0 0 rgba(34,36,38,.15)}.ui.grid>.divided.row>.column:first-child{box-shadow:none}.ui[class*="vertically divided"].grid>.row{position:relative}.ui[class*="vertically divided"].grid>.row:before{box-shadow:0 -1px 0 0 rgba(34,36,38,.15);content:"";height:1px;left:0;margin:0 1rem;position:absolute;top:0;width:calc(100% - 2rem)}.ui.padded.divided.grid:not(.vertically):not(.horizontally),[class*="horizontally padded"].ui.divided.grid{width:100%}.ui[class*="vertically divided"].grid>.row:first-child:before{box-shadow:none}.ui.inverted.divided.grid:not([class*="vertically divided"])>.column:not(.row),.ui.inverted.divided.grid:not([class*="vertically divided"])>.row>.column{box-shadow:-1px 0 0 0 hsla(0,0%,100%,.1)}.ui.inverted.divided.grid:not([class*="vertically divided"])>.column:not(.row):first-child,.ui.inverted.divided.grid:not([class*="vertically divided"])>.row>.column:first-child{box-shadow:none}.ui.inverted[class*="vertically divided"].grid>.row:before{box-shadow:0 -1px 0 0 hsla(0,0%,100%,.1)}.ui.relaxed[class*="vertically divided"].grid>.row:before{margin-left:1.5rem;margin-right:1.5rem;width:calc(100% - 3rem)}.ui[class*="very relaxed"][class*="vertically divided"].grid>.row:before{margin-left:2.5rem;margin-right:2.5rem;width:calc(100% - 5rem)}.ui.celled.grid{box-shadow:0 0 0 1px #d4d4d5;margin:1em 0;width:100%}.ui.celled.grid>.row{box-shadow:0 -1px 0 0 #d4d4d5;margin:0;padding:0;width:100%!important}.ui.celled.grid>.column:not(.row),.ui.celled.grid>.row>.column{box-shadow:-1px 0 0 0 #d4d4d5}.ui.celled.grid>.column:first-child,.ui.celled.grid>.row>.column:first-child{box-shadow:none}.ui.celled.grid>.column:not(.row),.ui.celled.grid>.row>.column{padding:1em}.ui.relaxed.celled.grid>.column:not(.row),.ui.relaxed.celled.grid>.row>.column{padding:1.5em}.ui[class*="very relaxed"].celled.grid>.column:not(.row),.ui[class*="very relaxed"].celled.grid>.row>.column{padding:2em}.ui[class*="internally celled"].grid{box-shadow:none;margin:0}.ui[class*="internally celled"].grid>.row:first-child,.ui[class*="internally celled"].grid>.row>.column:first-child{box-shadow:none}.ui.grid>.row>[class*="top aligned"].column,.ui.grid>[class*="top aligned"].column:not(.row),.ui.grid>[class*="top aligned"].row>.column,.ui[class*="top aligned"].grid>.column:not(.row),.ui[class*="top aligned"].grid>.row>.column{align-self:flex-start!important;flex-direction:column;vertical-align:top}.ui.grid>.row>[class*="middle aligned"].column,.ui.grid>[class*="middle aligned"].column:not(.row),.ui.grid>[class*="middle aligned"].row>.column,.ui[class*="middle aligned"].grid>.column:not(.row),.ui[class*="middle aligned"].grid>.row>.column{align-self:center!important;flex-direction:column;vertical-align:middle}.ui.grid>.row>[class*="bottom aligned"].column,.ui.grid>[class*="bottom aligned"].column:not(.row),.ui.grid>[class*="bottom aligned"].row>.column,.ui[class*="bottom aligned"].grid>.column:not(.row),.ui[class*="bottom aligned"].grid>.row>.column{align-self:flex-end!important;flex-direction:column;vertical-align:bottom}.ui.grid>.row>.stretched.column,.ui.grid>.stretched.column:not(.row),.ui.grid>.stretched.row>.column,.ui.stretched.grid>.column,.ui.stretched.grid>.row>.column{align-self:stretch;display:inline-flex!important;flex-direction:column}.ui.grid>.row>.stretched.column>*,.ui.grid>.stretched.column:not(.row)>*,.ui.grid>.stretched.row>.column>*,.ui.stretched.grid>.column>*,.ui.stretched.grid>.row>.column>*{flex-grow:1}.ui.grid>.row>[class*="left aligned"].column.column,.ui.grid>[class*="left aligned"].column.column,.ui.grid>[class*="left aligned"].row>.column,.ui[class*="left aligned"].grid>.column,.ui[class*="left aligned"].grid>.row>.column{align-self:inherit;text-align:left}.ui.grid>.row>[class*="center aligned"].column.column,.ui.grid>[class*="center aligned"].column.column,.ui.grid>[class*="center aligned"].row>.column,.ui[class*="center aligned"].grid>.column,.ui[class*="center aligned"].grid>.row>.column{align-self:inherit;text-align:center}.ui[class*="center aligned"].grid{justify-content:center}.ui.grid>.row>[class*="right aligned"].column.column,.ui.grid>[class*="right aligned"].column.column,.ui.grid>[class*="right aligned"].row>.column,.ui[class*="right aligned"].grid>.column,.ui[class*="right aligned"].grid>.row>.column{align-self:inherit;text-align:right}.ui.grid>.justified.column.column,.ui.grid>.justified.row>.column,.ui.grid>.row>.justified.column.column,.ui.justified.grid>.column,.ui.justified.grid>.row>.column{hyphens:auto;text-align:justify}.ui.grid>.primary.column,.ui.grid>.primary.row,.ui.grid>.row>.primary.column{background-color:#2185d0;color:#fff}.ui.grid>.row>.secondary.column,.ui.grid>.secondary.column,.ui.grid>.secondary.row{background-color:#1b1c1d;color:#fff}.ui.grid>.red.column,.ui.grid>.red.row,.ui.grid>.row>.red.column{background-color:#db2828;color:#fff}.ui.grid>.orange.column,.ui.grid>.orange.row,.ui.grid>.row>.orange.column{background-color:#f2711c;color:#fff}.ui.grid>.row>.yellow.column,.ui.grid>.yellow.column,.ui.grid>.yellow.row{background-color:#fbbd08;color:#fff}.ui.grid>.olive.column,.ui.grid>.olive.row,.ui.grid>.row>.olive.column{background-color:#b5cc18;color:#fff}.ui.grid>.green.column,.ui.grid>.green.row,.ui.grid>.row>.green.column{background-color:#21ba45;color:#fff}.ui.grid>.row>.teal.column,.ui.grid>.teal.column,.ui.grid>.teal.row{background-color:#00b5ad;color:#fff}.ui.grid>.blue.column,.ui.grid>.blue.row,.ui.grid>.row>.blue.column{background-color:#2185d0;color:#fff}.ui.grid>.row>.violet.column,.ui.grid>.violet.column,.ui.grid>.violet.row{background-color:#6435c9;color:#fff}.ui.grid>.purple.column,.ui.grid>.purple.row,.ui.grid>.row>.purple.column{background-color:#a333c8;color:#fff}.ui.grid>.pink.column,.ui.grid>.pink.row,.ui.grid>.row>.pink.column{background-color:#e03997;color:#fff}.ui.grid>.brown.column,.ui.grid>.brown.row,.ui.grid>.row>.brown.column{background-color:#a5673f;color:#fff}.ui.grid>.grey.column,.ui.grid>.grey.row,.ui.grid>.row>.grey.column{background-color:#767676;color:#fff}.ui.grid>.black.column,.ui.grid>.black.row,.ui.grid>.row>.black.column{background-color:#1b1c1d;color:#fff}.ui.grid>[class*="equal width"].row>.column,.ui[class*="equal width"].grid>.column:not(.row),.ui[class*="equal width"].grid>.row>.column{display:inline-block;flex-grow:1}.ui.grid>[class*="equal width"].row>.wide.column,.ui[class*="equal width"].grid>.row>.wide.column,.ui[class*="equal width"].grid>.wide.column{flex-grow:0}@media only screen and (max-width:767.98px){.ui.grid>[class*="mobile reversed"].row,.ui[class*="mobile reversed"].grid,.ui[class*="mobile reversed"].grid>.row{flex-direction:row-reverse}.ui.stackable[class*="mobile reversed"],.ui[class*="mobile vertically reversed"].grid{flex-direction:column-reverse}.ui[class*="mobile reversed"].divided.grid:not([class*="vertically divided"])>.column:first-child,.ui[class*="mobile reversed"].divided.grid:not([class*="vertically divided"])>.row>.column:first-child{box-shadow:-1px 0 0 0 rgba(34,36,38,.15)}.ui[class*="mobile reversed"].divided.grid:not([class*="vertically divided"])>.column:last-child,.ui[class*="mobile reversed"].divided.grid:not([class*="vertically divided"])>.row>.column:last-child{box-shadow:none}.ui.grid[class*="vertically divided"][class*="mobile vertically reversed"]>.row:first-child:before{box-shadow:0 -1px 0 0 rgba(34,36,38,.15)}.ui.grid[class*="vertically divided"][class*="mobile vertically reversed"]>.row:last-child:before{box-shadow:none}.ui[class*="mobile reversed"].celled.grid>.row>.column:first-child{box-shadow:-1px 0 0 0 #d4d4d5}.ui[class*="mobile reversed"].celled.grid>.row>.column:last-child{box-shadow:none}}@media only screen and (min-width:768px) and (max-width:991.98px){.ui.grid>[class*="tablet reversed"].row,.ui[class*="tablet reversed"].grid,.ui[class*="tablet reversed"].grid>.row{flex-direction:row-reverse}.ui[class*="tablet vertically reversed"].grid{flex-direction:column-reverse}.ui[class*="tablet reversed"].divided.grid:not([class*="vertically divided"])>.column:first-child,.ui[class*="tablet reversed"].divided.grid:not([class*="vertically divided"])>.row>.column:first-child{box-shadow:-1px 0 0 0 rgba(34,36,38,.15)}.ui[class*="tablet reversed"].divided.grid:not([class*="vertically divided"])>.column:last-child,.ui[class*="tablet reversed"].divided.grid:not([class*="vertically divided"])>.row>.column:last-child{box-shadow:none}.ui.grid[class*="vertically divided"][class*="tablet vertically reversed"]>.row:first-child:before{box-shadow:0 -1px 0 0 rgba(34,36,38,.15)}.ui.grid[class*="vertically divided"][class*="tablet vertically reversed"]>.row:last-child:before{box-shadow:none}.ui[class*="tablet reversed"].celled.grid>.row>.column:first-child{box-shadow:-1px 0 0 0 #d4d4d5}.ui[class*="tablet reversed"].celled.grid>.row>.column:last-child{box-shadow:none}}@media only screen and (min-width:992px){.ui.grid>[class*="computer reversed"].row,.ui[class*="computer reversed"].grid,.ui[class*="computer reversed"].grid>.row{flex-direction:row-reverse}.ui[class*="computer vertically reversed"].grid{flex-direction:column-reverse}.ui[class*="computer reversed"].divided.grid:not([class*="vertically divided"])>.column:first-child,.ui[class*="computer reversed"].divided.grid:not([class*="vertically divided"])>.row>.column:first-child{box-shadow:-1px 0 0 0 rgba(34,36,38,.15)}.ui[class*="computer reversed"].divided.grid:not([class*="vertically divided"])>.column:last-child,.ui[class*="computer reversed"].divided.grid:not([class*="vertically divided"])>.row>.column:last-child{box-shadow:none}.ui.grid[class*="vertically divided"][class*="computer vertically reversed"]>.row:first-child:before{box-shadow:0 -1px 0 0 rgba(34,36,38,.15)}.ui.grid[class*="vertically divided"][class*="computer vertically reversed"]>.row:last-child:before{box-shadow:none}.ui[class*="computer reversed"].celled.grid>.row>.column:first-child{box-shadow:-1px 0 0 0 #d4d4d5}.ui[class*="computer reversed"].celled.grid>.row>.column:last-child{box-shadow:none}}@media only screen and (min-width:768px) and (max-width:991.98px){.ui.doubling.grid{width:auto}.ui.doubling.grid>.row,.ui.grid>.doubling.row{margin:0!important;padding:0!important}.ui.doubling.grid>.row>.column,.ui.grid>.doubling.row>.column{box-shadow:none!important;display:inline-block!important;margin:0;padding-bottom:1rem!important;padding-top:1rem!important}.ui.grid>[class*="two column"].doubling.row.row>.column,.ui[class*="two column"].doubling.grid>.column:not(.row),.ui[class*="two column"].doubling.grid>.row>.column{width:100%!important}.ui.grid>[class*="four column"].doubling.row.row>.column,.ui.grid>[class*="three column"].doubling.row.row>.column,.ui[class*="four column"].doubling.grid>.column:not(.row),.ui[class*="four column"].doubling.grid>.row>.column,.ui[class*="three column"].doubling.grid>.column:not(.row),.ui[class*="three column"].doubling.grid>.row>.column{width:50%!important}.ui.grid>[class*="five column"].doubling.row.row>.column,.ui.grid>[class*="seven column"].doubling.row.row>.column,.ui.grid>[class*="six column"].doubling.row.row>.column,.ui[class*="five column"].doubling.grid>.column:not(.row),.ui[class*="five column"].doubling.grid>.row>.column,.ui[class*="seven column"].doubling.grid>.column:not(.row),.ui[class*="seven column"].doubling.grid>.row>.column,.ui[class*="six column"].doubling.grid>.column:not(.row),.ui[class*="six column"].doubling.grid>.row>.column{width:33.33333333%!important}.ui.grid>[class*="eight column"].doubling.row.row>.column,.ui.grid>[class*="nine column"].doubling.row.row>.column,.ui[class*="eight column"].doubling.grid>.column:not(.row),.ui[class*="eight column"].doubling.grid>.row>.column,.ui[class*="nine column"].doubling.grid>.column:not(.row),.ui[class*="nine column"].doubling.grid>.row>.column{width:25%!important}.ui.grid>[class*="eleven column"].doubling.row.row>.column,.ui.grid>[class*="ten column"].doubling.row.row>.column,.ui[class*="eleven column"].doubling.grid>.column:not(.row),.ui[class*="eleven column"].doubling.grid>.row>.column,.ui[class*="ten column"].doubling.grid>.column:not(.row),.ui[class*="ten column"].doubling.grid>.row>.column{width:20%!important}.ui.grid>[class*="thirteen column"].doubling.row.row>.column,.ui.grid>[class*="twelve column"].doubling.row.row>.column,.ui[class*="thirteen column"].doubling.grid>.column:not(.row),.ui[class*="thirteen column"].doubling.grid>.row>.column,.ui[class*="twelve column"].doubling.grid>.column:not(.row),.ui[class*="twelve column"].doubling.grid>.row>.column{width:16.66666667%!important}.ui.grid>[class*="fifteen column"].doubling.row.row>.column,.ui.grid>[class*="fourteen column"].doubling.row.row>.column,.ui[class*="fifteen column"].doubling.grid>.column:not(.row),.ui[class*="fifteen column"].doubling.grid>.row>.column,.ui[class*="fourteen column"].doubling.grid>.column:not(.row),.ui[class*="fourteen column"].doubling.grid>.row>.column{width:14.28571429%!important}.ui.grid>[class*="sixteen column"].doubling.row.row>.column,.ui[class*="sixteen column"].doubling.grid>.column:not(.row),.ui[class*="sixteen column"].doubling.grid>.row>.column{width:12.5%!important}}@media only screen and (max-width:767.98px){.ui.doubling.grid>.row,.ui.grid>.doubling.row{margin:0!important;padding:0!important}.ui.doubling.grid>.row>.column,.ui.grid>.doubling.row>.column{box-shadow:none!important;margin:0!important;padding-bottom:1rem!important;padding-top:1rem!important}.ui.grid>[class*="two column"].doubling:not(.stackable).row.row>.column,.ui[class*="two column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="two column"].doubling:not(.stackable).grid>.row>.column{width:100%!important}.ui.grid>[class*="eight column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="five column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="four column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="seven column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="six column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="three column"].doubling:not(.stackable).row.row>.column,.ui[class*="eight column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="eight column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="five column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="five column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="four column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="four column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="seven column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="seven column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="six column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="six column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="three column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="three column"].doubling:not(.stackable).grid>.row>.column{width:50%!important}.ui.grid>[class*="eleven column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="nine column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="ten column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="thirteen column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="twelve column"].doubling:not(.stackable).row.row>.column,.ui[class*="eleven column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="eleven column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="nine column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="nine column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="ten column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="ten column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="thirteen column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="thirteen column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="twelve column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="twelve column"].doubling:not(.stackable).grid>.row>.column{width:33.33333333%!important}.ui.grid>[class*="fifteen column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="fourteen column"].doubling:not(.stackable).row.row>.column,.ui.grid>[class*="sixteen column"].doubling:not(.stackable).row.row>.column,.ui[class*="fifteen column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="fifteen column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="fourteen column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="fourteen column"].doubling:not(.stackable).grid>.row>.column,.ui[class*="sixteen column"].doubling:not(.stackable).grid>.column:not(.row),.ui[class*="sixteen column"].doubling:not(.stackable).grid>.row>.column{width:25%!important}.ui.stackable.grid{margin-left:0!important;margin-right:0!important;width:auto}.ui.grid>.stackable.stackable.row>.column,.ui.stackable.grid>.column.grid>.column,.ui.stackable.grid>.column.row>.column,.ui.stackable.grid>.column:not(.row),.ui.stackable.grid>.row>.column,.ui.stackable.grid>.row>.wide.column,.ui.stackable.grid>.wide.column{box-shadow:none!important;margin:0!important;padding:1rem!important;width:100%!important}.ui.stackable.grid:not(.vertically)>.row{margin:0;padding:0}.ui.container>.ui.stackable.grid>.column,.ui.container>.ui.stackable.grid>.row>.column{padding-left:0!important;padding-right:0!important}.ui.grid .ui.stackable.grid,.ui.segment:not(.vertical) .ui.stackable.page.grid{margin-left:-1rem!important;margin-right:-1rem!important}.ui.stackable.celled.grid>.column:not(.row):first-child,.ui.stackable.celled.grid>.row:first-child>.column:first-child,.ui.stackable.divided.grid>.column:not(.row):first-child,.ui.stackable.divided.grid>.row:first-child>.column:first-child{border-top:none!important}.ui.inverted.stackable.celled.grid>.column:not(.row),.ui.inverted.stackable.celled.grid>.row>.column,.ui.inverted.stackable.divided.grid>.column:not(.row),.ui.inverted.stackable.divided.grid>.row>.column{border-top:1px solid hsla(0,0%,100%,.1)}.ui.stackable.celled.grid>.column:not(.row),.ui.stackable.celled.grid>.row>.column,.ui.stackable.divided:not(.vertically).grid>.column:not(.row),.ui.stackable.divided:not(.vertically).grid>.row>.column{border-top:1px solid rgba(34,36,38,.15);box-shadow:none!important;padding-bottom:2rem!important;padding-top:2rem!important}.ui.stackable.celled.grid>.row{box-shadow:none!important}.ui.stackable.divided:not(.vertically).grid>.column:not(.row),.ui.stackable.divided:not(.vertically).grid>.row>.column{padding-left:0!important;padding-right:0!important}.ui.grid.grid.grid>.row>[class*="computer only"].column:not(.mobile),.ui.grid.grid.grid>.row>[class*="large screen only"].column:not(.mobile),.ui.grid.grid.grid>.row>[class*="tablet only"].column:not(.mobile),.ui.grid.grid.grid>.row>[class*="widescreen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="computer only"].column:not(.mobile),.ui.grid.grid.grid>[class*="computer only"].row:not(.mobile),.ui.grid.grid.grid>[class*="large screen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="large screen only"].row:not(.mobile),.ui.grid.grid.grid>[class*="tablet only"].column:not(.mobile),.ui.grid.grid.grid>[class*="tablet only"].row:not(.mobile),.ui.grid.grid.grid>[class*="widescreen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="widescreen only"].row:not(.mobile),.ui[class*="computer only"].grid.grid.grid:not(.mobile),.ui[class*="large screen only"].grid.grid.grid:not(.mobile),.ui[class*="tablet only"].grid.grid.grid:not(.mobile),.ui[class*="widescreen only"].grid.grid.grid:not(.mobile){display:none!important}}@media only screen and (min-width:768px) and (max-width:991.98px){.ui.grid.grid.grid>.row>[class*="computer only"].column:not(.tablet),.ui.grid.grid.grid>.row>[class*="large screen only"].column:not(.mobile),.ui.grid.grid.grid>.row>[class*="mobile only"].column:not(.tablet),.ui.grid.grid.grid>.row>[class*="widescreen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="computer only"].column:not(.tablet),.ui.grid.grid.grid>[class*="computer only"].row:not(.tablet),.ui.grid.grid.grid>[class*="large screen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="large screen only"].row:not(.mobile),.ui.grid.grid.grid>[class*="mobile only"].column:not(.tablet),.ui.grid.grid.grid>[class*="mobile only"].row:not(.tablet),.ui.grid.grid.grid>[class*="widescreen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="widescreen only"].row:not(.mobile),.ui[class*="computer only"].grid.grid.grid:not(.tablet),.ui[class*="large screen only"].grid.grid.grid:not(.mobile),.ui[class*="mobile only"].grid.grid.grid:not(.tablet),.ui[class*="widescreen only"].grid.grid.grid:not(.mobile){display:none!important}}@media only screen and (min-width:992px) and (max-width:1199.98px){.ui.grid.grid.grid>.row>[class*="large screen only"].column:not(.mobile),.ui.grid.grid.grid>.row>[class*="mobile only"].column:not(.computer),.ui.grid.grid.grid>.row>[class*="tablet only"].column:not(.computer),.ui.grid.grid.grid>.row>[class*="widescreen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="large screen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="large screen only"].row:not(.mobile),.ui.grid.grid.grid>[class*="mobile only"].column:not(.computer),.ui.grid.grid.grid>[class*="mobile only"].row:not(.computer),.ui.grid.grid.grid>[class*="tablet only"].column:not(.computer),.ui.grid.grid.grid>[class*="tablet only"].row:not(.computer),.ui.grid.grid.grid>[class*="widescreen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="widescreen only"].row:not(.mobile),.ui[class*="large screen only"].grid.grid.grid:not(.mobile),.ui[class*="mobile only"].grid.grid.grid:not(.computer),.ui[class*="tablet only"].grid.grid.grid:not(.computer),.ui[class*="widescreen only"].grid.grid.grid:not(.mobile){display:none!important}}@media only screen and (min-width:1200px) and (max-width:1919.98px){.ui.grid.grid.grid>.row>[class*="mobile only"].column:not(.computer),.ui.grid.grid.grid>.row>[class*="tablet only"].column:not(.computer),.ui.grid.grid.grid>.row>[class*="widescreen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="mobile only"].column:not(.computer),.ui.grid.grid.grid>[class*="mobile only"].row:not(.computer),.ui.grid.grid.grid>[class*="tablet only"].column:not(.computer),.ui.grid.grid.grid>[class*="tablet only"].row:not(.computer),.ui.grid.grid.grid>[class*="widescreen only"].column:not(.mobile),.ui.grid.grid.grid>[class*="widescreen only"].row:not(.mobile),.ui[class*="mobile only"].grid.grid.grid:not(.computer),.ui[class*="tablet only"].grid.grid.grid:not(.computer),.ui[class*="widescreen only"].grid.grid.grid:not(.mobile){display:none!important}}@media only screen and (min-width:1920px){.ui.grid.grid.grid>.row>[class*="mobile only"].column:not(.computer),.ui.grid.grid.grid>.row>[class*="tablet only"].column:not(.computer),.ui.grid.grid.grid>[class*="mobile only"].column:not(.computer),.ui.grid.grid.grid>[class*="mobile only"].row:not(.computer),.ui.grid.grid.grid>[class*="tablet only"].column:not(.computer),.ui.grid.grid.grid>[class*="tablet only"].row:not(.computer),.ui[class*="mobile only"].grid.grid.grid:not(.computer),.ui[class*="tablet only"].grid.grid.grid:not(.computer){display:none!important}}.ui.compact.grid>*,.ui.compact.grid>.column:not(.row),.ui.compact.grid>.row>.column{padding-left:.5rem;padding-right:.5rem}.ui.compact.grid>.column:not(.row),.ui.compact.grid>.row{padding-bottom:.5rem;padding-top:.5rem}.ui.compact.relaxed.celled.grid>.column:not(.row),.ui.compact.relaxed.celled.grid>.row>.column{padding:.75em}.ui.compact[class*="very relaxed"].celled.grid>.column:not(.row),.ui.compact[class*="very relaxed"].celled.grid>.row>.column{padding:1em}.ui[class*="very compact"].grid>.column:not(.row),.ui[class*="very compact"].grid>.row>.column{padding-left:.25rem;padding-right:.5rem}.ui[class*="very compact"].grid>*{padding-left:.25rem;padding-right:.25rem}.ui[class*="very compact"].grid>.column:not(.row),.ui[class*="very compact"].grid>.row{padding-bottom:.25rem;padding-top:.25rem}.ui[class*="very compact"].relaxed.celled.grid>.column:not(.row),.ui[class*="very compact"].relaxed.celled.grid>.row>.column{padding:.375em}.ui[class*="very compact"][class*="very relaxed"].celled.grid>.column:not(.row),.ui[class*="very compact"][class*="very relaxed"].celled.grid>.row>.column{padding:.5em}.ui.menu{background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:0 1px 2px 0 rgba(34,36,38,.15);display:flex;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-weight:400;margin:1rem 0;min-height:2.85714286em}.ui.menu:after{clear:both;content:"";display:block;height:0;visibility:hidden}.ui.menu:first-child{margin-top:0}.ui.menu:last-child{margin-bottom:0}.ui.menu .menu{margin:0}.ui.menu:not(.vertical)>.menu{display:flex}.ui.menu:not(.vertical) .item{align-items:center;display:flex}.ui.menu .item{-webkit-tap-highlight-color:transparent;background:none;color:rgba(0,0,0,.87);flex:0 0 auto;font-weight:400;line-height:1;padding:.92857143em 1.14285714em;position:relative;text-decoration:none;text-transform:none;transition:background .1s ease,box-shadow .1s ease,color .1s ease;user-select:none;vertical-align:middle}.ui.menu>.item:first-child{border-radius:.28571429rem 0 0 .28571429rem}.ui.menu .item:before{background:rgba(34,36,38,.1);content:"";height:100%;position:absolute;right:0;top:0;width:1px}.ui.menu .item>a:not(.ui),.ui.menu .item>p:only-child,.ui.menu .text.item>*{line-height:1.3;user-select:text}.ui.menu .item>p:first-child{margin-top:0}.ui.menu .item>p:last-child{margin-bottom:0}.ui.menu .item>i.icon{float:none;margin:0 .35714286em 0 0;opacity:.9}.ui.menu:not(.vertical) .item>.button{font-size:1em;margin:-.5em 0;padding-bottom:.78571429em;padding-top:.78571429em;position:relative;top:0}.ui.menu>.container,.ui.menu>.grid{align-items:inherit;display:flex;flex-direction:inherit}.ui.menu .item>.input{width:100%}.ui.menu:not(.vertical) .item>.input{margin:-.5em 0;position:relative;top:0}.ui.menu .item>.input input{font-size:1em;padding-bottom:.57142857em;padding-top:.57142857em}.ui.menu .header.item,.ui.vertical.menu .header.item{background:"";font-weight:700;margin:0;text-transform:normal}.ui.vertical.menu .item>.header:not(.ui){font-size:1em;font-weight:700;margin:0 0 .5em}.ui.menu .item>i.dropdown.icon{float:right;margin:0 0 0 1em;padding:0}.ui.menu .dropdown.item .menu{background:#fff;border-radius:0 0 .28571429rem .28571429rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.08);flex-direction:column!important;margin:0;min-width:calc(100% - 1px)}.ui.menu .ui.dropdown .menu>.item{background:transparent!important;box-shadow:none!important;color:rgba(0,0,0,.87)!important;font-size:1em!important;font-weight:400!important;margin:0;padding:.78571429em 1.14285714em!important;text-align:left;text-transform:none!important;transition:none!important}.ui.menu .ui.dropdown .menu>.item:hover,.ui.menu .ui.dropdown .menu>.selected.item{background:rgba(0,0,0,.05)!important;color:rgba(0,0,0,.95)!important}.ui.menu .ui.dropdown .menu>.active.item{background:rgba(0,0,0,.03)!important;color:rgba(0,0,0,.95)!important;font-weight:700!important}.ui.menu .ui.dropdown.item .menu .item:not(.filtered){display:block}.ui.menu .ui.dropdown .menu>.item .icon:not(.dropdown){display:inline-block;float:none;font-size:1em!important;margin:0 .75em 0 0!important}.ui.secondary.menu .dropdown.item>.menu,.ui.text.menu .dropdown.item>.menu{border-radius:.28571429rem;margin-top:.35714286em}.ui.menu .pointing.dropdown.item .menu{margin-top:.75em}.ui.inverted.menu .search.dropdown.item>.search,.ui.inverted.menu .search.dropdown.item>.text{color:hsla(0,0%,100%,.9)}.ui.vertical.menu .dropdown.item>.icon{content:"\f0da";float:right;margin-left:1em}.ui.vertical.menu .dropdown.item .menu{border-radius:0 .28571429rem .28571429rem .28571429rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.08);left:100%;margin:0;min-width:0;min-width:max-content}.ui.vertical.menu .dropdown.item.upward .menu{bottom:0}.ui.vertical.menu .dropdown.item:not(.upward) .menu{top:0}.ui.vertical.menu .active.dropdown.item{border-bottom-right-radius:0;border-top-right-radius:0}.ui.vertical.menu .dropdown.active.item{box-shadow:none}.ui.item.menu .dropdown .menu .item{width:100%}.ui.menu .item>.label:not(.floating){margin-left:1em;padding:.3em .78571429em}.ui.vertical.menu .item>.label{margin-bottom:-.15em;margin-top:-.15em;padding:.3em .78571429em}.ui.menu .item>.floating.label{padding:.3em .78571429em}.ui.menu .item>.label{background:#999;color:#fff}.ui.menu .item>.image.label img{height:1.5666em;margin:-.2833em .8em -.2833em -.8em}.ui.menu .item>img:not(.ui){display:inline-block;margin:-.3em 0;vertical-align:middle;width:2.5em}.ui.vertical.menu .item>img:not(.ui):only-child{display:block;max-width:100%;width:auto}.ui.menu .list .item:before{background:none!important}.ui.vertical.sidebar.menu>.item:first-child:before{display:block!important}.ui.vertical.sidebar.menu>.item:before{bottom:0;top:auto}@media only screen and (max-width:767.98px){.ui.menu>.ui.container{margin-left:0!important;margin-right:0!important;width:100%!important}}@media only screen and (min-width:768px){.ui.menu:not(.secondary):not(.text):not(.tabular):not(.borderless)>.container>.item:not(.right):not(.borderless):first-child{border-left:1px solid rgba(34,36,38,.1)}.ui.menu:not(.secondary):not(.text):not(.tabular):not(.borderless)>.container>.right.item:not(.borderless):last-child,.ui.menu:not(.secondary):not(.text):not(.tabular):not(.borderless)>.container>.right.menu>.item:not(.borderless):last-child{border-right:1px solid rgba(34,36,38,.1)}}.ui.link.menu .item:hover,.ui.menu .dropdown.item:hover,.ui.menu .link.item:hover,.ui.menu a.item:hover{background:rgba(0,0,0,.03);color:rgba(0,0,0,.95);cursor:pointer}.ui.link.menu .item:active,.ui.menu .link.item:active,.ui.menu a.item:active{background:rgba(0,0,0,.03);color:rgba(0,0,0,.95)}.ui.menu .active.item{background:rgba(0,0,0,.05);box-shadow:none;color:rgba(0,0,0,.95);font-weight:400}.ui.menu .active.item>i.icon{opacity:1}.ui.menu .active.item:hover,.ui.vertical.menu .active.item:hover{background-color:rgba(0,0,0,.05);color:rgba(0,0,0,.95)}.ui.ui.menu .item.disabled{background-color:transparent;color:rgba(40,40,40,.3);cursor:default;pointer-events:none}.ui.menu:not(.vertical) .left.item,.ui.menu:not(.vertical) .left.menu{display:flex;margin-right:auto!important}.ui.menu:not(.vertical) .right.item,.ui.menu:not(.vertical) .right.menu{display:flex;margin-left:auto!important}.ui.menu:not(.vertical) :not(.dropdown)>.left.menu,.ui.menu:not(.vertical) :not(.dropdown)>.right.menu{display:inherit}.ui.menu:not(.vertical) .center.item,.ui.menu:not(.vertical) .center.menu{display:flex;margin-left:auto!important;margin-right:auto!important}.ui.menu .right.item:before,.ui.menu .right.menu>.item:before{left:0;right:auto}.ui.menu .center.item:last-child:before,.ui.menu .center.menu>.item:last-child:before{display:none}.ui.vertical.menu{background:#fff;box-shadow:0 1px 2px 0 rgba(34,36,38,.15);display:block;flex-direction:column}.ui.vertical.menu .item{background:none;border-right:none;border-top:none;display:block}.ui.vertical.menu>.item:first-child{border-radius:.28571429rem .28571429rem 0 0}.ui.vertical.menu>.item:last-child{border-radius:0 0 .28571429rem .28571429rem}.ui.vertical.menu .item>.label{float:right;text-align:center}.ui.vertical.menu .item>i.icon,.ui.vertical.menu .item>i.icons{float:right;margin:0 0 0 .5em;width:1.18em}.ui.vertical.menu .item>.label+i.icon{float:none;margin:0 .5em 0 0}.ui.vertical.menu .item:before{background:rgba(34,36,38,.1);content:"";height:1px;left:0;position:absolute;top:0;width:100%}.ui.vertical.menu .item:first-child:before{display:none!important}.ui.vertical.menu .item>.menu{margin:.5em -1.14285714em 0}.ui.vertical.menu .menu .item{background:none;color:rgba(0,0,0,.5);font-size:.85714286em;padding:.5em 1.33333333em}.ui.vertical.menu .item .menu .link.item:hover,.ui.vertical.menu .item .menu a.item:hover{color:rgba(0,0,0,.85)}.ui.vertical.menu .menu .item:before{display:none}.ui.vertical.menu .active.item{background:rgba(0,0,0,.05);border-radius:0;box-shadow:none}.ui.vertical.menu>.active.item:first-child{border-radius:.28571429rem .28571429rem 0 0}.ui.vertical.menu>.active.item:last-child{border-radius:0 0 .28571429rem .28571429rem}.ui.vertical.menu>.active.item:only-child{border-radius:.28571429rem}.ui.vertical.menu .active.item .menu .active.item{border-left:none}.ui.vertical.menu .item .menu .active.item{background-color:transparent;color:rgba(0,0,0,.95);font-weight:700}.ui.tabular.menu{background:none transparent;border:none;border-bottom:1px solid #d4d4d5;border-radius:0;box-shadow:none!important}.ui.tabular.fluid.menu{width:calc(100% + 2px)!important}.ui.tabular.menu .item{background:transparent;border:1px solid transparent;border-bottom:none;border-top:2px solid transparent;color:rgba(0,0,0,.87);padding:.92857143em 1.42857143em}.ui.tabular.menu .item:before{display:none}.ui.tabular.menu .item:hover{background-color:transparent;color:rgba(0,0,0,.8)}.ui.tabular.menu .active.item{background:none #fff;border-color:#d4d4d5;border-radius:.28571429rem .28571429rem 0 0!important;border-top-width:1px;box-shadow:none;color:rgba(0,0,0,.95);font-weight:700;margin-bottom:-1px}.ui.tabular.menu+.attached:not(.top).segment,.ui.tabular.menu+.attached:not(.top).segment+.attached:not(.top).segment{border-top:none;margin-left:0;margin-right:0;margin-top:0;width:100%}.top.attached.segment+.ui.bottom.tabular.menu{left:-1px;position:relative;width:calc(100% + 2px)}.ui.bottom.tabular.menu{background:none transparent;border-bottom:none;border-radius:0;border-top:1px solid #d4d4d5;box-shadow:none!important}.ui.bottom.tabular.menu .item{background:none;border:1px solid transparent;border-top:none}.ui.bottom.tabular.menu .active.item{background:none #fff;border-color:#d4d4d5;border-radius:0 0 .28571429rem .28571429rem!important;color:rgba(0,0,0,.95);margin:-1px 0 0}.ui.vertical.tabular.menu{background:none transparent;border-bottom:none;border-radius:0;border-right:1px solid #d4d4d5;box-shadow:none!important}.ui.vertical.tabular.menu .item{background:none;border:1px solid transparent;border-right:none}.ui.vertical.tabular.menu .active.item{background:none #fff;border-color:#d4d4d5;border-radius:.28571429rem 0 0 .28571429rem!important;color:rgba(0,0,0,.95);margin:0 -1px 0 0}.ui.vertical.right.tabular.menu{background:none transparent;border-bottom:none;border-left:1px solid #d4d4d5;border-radius:0;border-right:none;box-shadow:none!important}.ui.vertical.right.tabular.menu .item{background:none;border:1px solid transparent;border-left:none}.ui.vertical.right.tabular.menu .active.item{background:none #fff;border-color:#d4d4d5;border-radius:0 .28571429rem .28571429rem 0!important;color:rgba(0,0,0,.95);margin:0 0 0 -1px}.ui.tabular.menu .active.dropdown.item{border:1px solid transparent;border-bottom:none;border-top:2px solid transparent;margin-bottom:0}.ui.pagination.menu{display:inline-flex;margin:0;vertical-align:middle}.ui.compact.menu .item:last-child,.ui.pagination.menu .item:last-child{border-radius:0 .28571429rem .28571429rem 0}.ui.pagination.menu .item:last-child:before{display:none}.ui.pagination.menu .item{min-width:3em;text-align:center}.ui.pagination.menu .icon.item i.icon{vertical-align:top}.ui.pagination.menu .active.item{background-color:rgba(0,0,0,.05);border-top:none;box-shadow:none;color:rgba(0,0,0,.95);padding-top:.92857143em}.ui.secondary.menu{background:none;border:none;border-radius:0;box-shadow:none;margin-left:-.35714286em;margin-right:-.35714286em}.ui.secondary.menu .item{align-self:center;background:none;border:none;border-radius:.28571429rem;box-shadow:none;margin:0 .35714286em;padding:.78571429em .92857143em;transition:color .1s ease}.ui.secondary.menu .item:before{display:none!important}.ui.secondary.menu .header.item{background:none transparent;border-radius:0;border-right:none}.ui.secondary.menu .item>img:not(.ui){margin:0}.ui.secondary.menu .dropdown.item:hover,.ui.secondary.menu .link.item:hover,.ui.secondary.menu a.item:hover{background:rgba(0,0,0,.05);color:rgba(0,0,0,.95)}.ui.secondary.menu .active.item{border-radius:.28571429rem}.ui.secondary.menu .active.item,.ui.secondary.menu .active.item:hover{background:rgba(0,0,0,.05);box-shadow:none;color:rgba(0,0,0,.95)}.ui.secondary.inverted.menu .link.item:not(.disabled),.ui.secondary.inverted.menu a.item:not(.disabled){color:hsla(0,0%,100%,.7)}.ui.secondary.inverted.menu .dropdown.item:hover,.ui.secondary.inverted.menu .link.item:hover,.ui.secondary.inverted.menu a.item:hover{background:hsla(0,0%,100%,.08);color:#fff}.ui.secondary.inverted.menu .active.item{background:hsla(0,0%,100%,.15);color:#fff}.ui.secondary.item.menu{margin-left:0;margin-right:0}.ui.secondary.item.menu .item:last-child{margin-right:0}.ui.secondary.attached.menu{box-shadow:none}.ui.vertical.secondary.menu .item:not(.dropdown)>.menu{margin:0 -.92857143em}.ui.vertical.secondary.menu .item:not(.dropdown)>.menu>.item{margin:0;padding:.5em 1.33333333em}.ui.secondary.vertical.menu>.item{border:none;border-radius:.28571429rem!important;margin:0 0 .35714286em}.ui.secondary.vertical.menu>.header.item{border-radius:0}.ui.secondary.inverted.menu,.ui.vertical.secondary.menu .item>.menu .item{background-color:transparent}.ui.secondary.pointing.menu{border-bottom:2px solid rgba(34,36,38,.15);margin-left:0;margin-right:0}.ui.secondary.pointing.menu .item{align-self:flex-end;border-bottom:2px solid transparent;border-radius:0;margin:0 0 -2px;padding:.85714286em 1.14285714em;transition:color .1s ease}.ui.secondary.pointing.menu .ui.dropdown .menu .item{border-bottom-width:0}.ui.secondary.pointing.menu .item>.label:not(.floating){margin-bottom:-.3em;margin-top:-.3em}.ui.secondary.pointing.menu .item>.circular.label{margin-bottom:-.5em;margin-top:-.5em}.ui.secondary.pointing.menu .header.item{color:rgba(0,0,0,.85)!important}.ui.secondary.pointing.menu .text.item{box-shadow:none!important}.ui.secondary.pointing.menu .item:after{display:none}.ui.secondary.pointing.menu .dropdown.item:hover,.ui.secondary.pointing.menu .link.item:hover,.ui.secondary.pointing.menu a.item:hover{background-color:transparent;color:rgba(0,0,0,.87)}.ui.secondary.pointing.menu .dropdown.item:active,.ui.secondary.pointing.menu .link.item:active,.ui.secondary.pointing.menu a.item:active{background-color:transparent;border-color:rgba(34,36,38,.15)}.ui.secondary.pointing.menu .active.item{background-color:transparent;box-shadow:none;font-weight:700}.ui.secondary.pointing.menu .active.item,.ui.secondary.pointing.menu .active.item:hover{border-color:currentColor;color:rgba(0,0,0,.95)}.ui.secondary.pointing.menu .active.dropdown.item{border-color:transparent}.ui.secondary.vertical.pointing.menu{border-bottom-width:0;border-right:2px solid rgba(34,36,38,.15)}.ui.secondary.vertical.pointing.menu .item{border-bottom:none;border-radius:0!important;border-right:2px solid transparent;margin:0 -2px 0 0}.ui.secondary.vertical.pointing.menu .active.item{border-color:currentColor}.ui.secondary.inverted.pointing.menu{border-color:hsla(0,0%,100%,.1)}.ui.secondary.inverted.pointing.menu .item:not(.disabled){color:hsla(0,0%,100%,.9)}.ui.secondary.inverted.pointing.menu .header.item{color:#fff!important}.ui.secondary.inverted.pointing.menu .link.item:hover,.ui.secondary.inverted.pointing.menu a.item:hover{color:#fff}.ui.ui.secondary.inverted.pointing.menu .active.item{background-color:transparent;border-color:#fff;color:#fff}.ui.text.menu{background:none transparent;border:none;border-radius:0;box-shadow:none;margin:1em -.5em}.ui.text.menu .item{align-self:center;border-radius:0;box-shadow:none;color:rgba(0,0,0,.6);font-weight:400;margin:0;padding:.35714286em .5em;transition:opacity .1s ease}.ui.text.menu .item:before,.ui.text.menu .menu .item:before{display:none!important}.ui.text.menu .header.item{background-color:transparent;color:rgba(0,0,0,.85);font-size:.92857143em;font-weight:700;opacity:1;text-transform:uppercase}.ui.text.item.menu .item,.ui.text.menu .item>img:not(.ui){margin:0}.ui.vertical.text.menu{margin:1em 0}.ui.vertical.text.menu:first-child{margin-top:0}.ui.vertical.text.menu:last-child{margin-bottom:0}.ui.vertical.text.menu .item{margin:.57142857em 0;padding-left:0;padding-right:0}.ui.vertical.text.menu .item>i.icon{float:none;margin:0 .35714286em 0 0}.ui.vertical.text.menu .header.item{margin:.57142857em 0 .71428571em}.ui.vertical.text.menu .item:not(.dropdown)>.menu{margin:0}.ui.vertical.text.menu .item:not(.dropdown)>.menu>.item{margin:0;padding:.5em 0}.ui.text.menu .item:hover{background-color:transparent;opacity:1}.ui.text.menu .active.item{border:none;box-shadow:none;color:rgba(0,0,0,.95);font-weight:400}.ui.text.menu .active.item,.ui.text.menu .active.item:hover{background-color:transparent}.ui.text.attached.menu,.ui.text.pointing.menu .active.item:after{box-shadow:none}.ui.inverted.text.menu,.ui.inverted.text.menu .active.item,.ui.inverted.text.menu .item,.ui.inverted.text.menu .item:hover{background-color:transparent}.ui.fluid.text.menu{margin-left:0;margin-right:0}.ui.vertical.icon.menu{display:inline-block;width:auto}.ui.icon.menu .item{color:#1b1c1d;height:auto;text-align:center}.ui.icon.menu .item>.icon:not(.dropdown){margin:0;opacity:1}.ui.icon.menu .icon:before{opacity:1}.ui.menu .icon.item>.icon{margin:0 auto;width:auto}.ui.vertical.icon.menu .item>.icon:not(.dropdown){display:block;float:none;margin:0 auto;opacity:1}.ui.inverted.icon.menu .item{color:#fff}.ui.labeled.icon.menu{text-align:center}.ui.labeled.icon.menu .item{flex-direction:column;min-width:6em}.ui.labeled.icon.menu>.item>.icon:not(.dropdown){display:block;font-size:1.71428571em!important;height:1em;margin:0 auto .5rem!important}.ui.fluid.labeled.icon.menu>.item{min-width:0}@media only screen and (max-width:767.98px){.ui.stackable.menu{flex-direction:column}.ui.stackable.menu .item{width:100%!important}.ui.stackable.menu .item:before{background:rgba(34,36,38,.1);bottom:0;content:"";height:1px;left:0;position:absolute;top:auto;width:100%}.ui.stackable.menu .left.item,.ui.stackable.menu .left.menu{margin-right:0!important}.ui.stackable.menu .right.item,.ui.stackable.menu .right.menu{margin-left:0!important}.ui.stackable.menu .center.item,.ui.stackable.menu .center.menu{margin-left:0!important;margin-right:0!important}.ui.stackable.menu .center.menu,.ui.stackable.menu .left.menu,.ui.stackable.menu .right.menu{flex-direction:column}}.ui.ui.menu .primary.active.item,.ui.ui.primary.menu .active.item,.ui.ui.primary.menu .active.item:hover{color:#2185d0}.ui.ui.menu .red.active.item,.ui.ui.red.menu .active.item,.ui.ui.red.menu .active.item:hover{color:#db2828}.ui.ui.menu .orange.active.item,.ui.ui.orange.menu .active.item,.ui.ui.orange.menu .active.item:hover{color:#f2711c}.ui.ui.menu .yellow.active.item,.ui.ui.yellow.menu .active.item,.ui.ui.yellow.menu .active.item:hover{color:#fbbd08}.ui.ui.menu .olive.active.item,.ui.ui.olive.menu .active.item,.ui.ui.olive.menu .active.item:hover{color:#b5cc18}.ui.ui.green.menu .active.item,.ui.ui.green.menu .active.item:hover,.ui.ui.menu .green.active.item{color:#21ba45}.ui.ui.menu .teal.active.item,.ui.ui.teal.menu .active.item,.ui.ui.teal.menu .active.item:hover{color:#00b5ad}.ui.ui.blue.menu .active.item,.ui.ui.blue.menu .active.item:hover,.ui.ui.menu .blue.active.item{color:#2185d0}.ui.ui.menu .violet.active.item,.ui.ui.violet.menu .active.item,.ui.ui.violet.menu .active.item:hover{color:#6435c9}.ui.ui.menu .purple.active.item,.ui.ui.purple.menu .active.item,.ui.ui.purple.menu .active.item:hover{color:#a333c8}.ui.ui.menu .pink.active.item,.ui.ui.pink.menu .active.item,.ui.ui.pink.menu .active.item:hover{color:#e03997}.ui.ui.brown.menu .active.item,.ui.ui.brown.menu .active.item:hover,.ui.ui.menu .brown.active.item{color:#a5673f}.ui.ui.grey.menu .active.item,.ui.ui.grey.menu .active.item:hover,.ui.ui.menu .grey.active.item{color:#767676}.ui.ui.black.menu .active.item,.ui.ui.black.menu .active.item:hover,.ui.ui.menu .black.active.item{color:#1b1c1d}.ui.inverted.menu{background:#1b1c1d;border:0 solid transparent;box-shadow:none}.ui.inverted.menu .item,.ui.inverted.menu .item>a:not(.ui){background:transparent;color:hsla(0,0%,100%,.9)}.ui.inverted.menu .item.menu{background:transparent}.ui.inverted.menu .item:before,.ui.vertical.inverted.menu .item:before{background:hsla(0,0%,100%,.08)}.ui.vertical.inverted.menu .menu .item,.ui.vertical.inverted.menu .menu .item a:not(.ui){color:hsla(0,0%,100%,.5)}.ui.inverted.menu .header.item{background:transparent;box-shadow:none;margin:0}.ui.ui.inverted.menu .item.disabled{color:hsla(0,0%,88%,.3)}.ui.inverted.menu .dropdown.item:hover,.ui.inverted.menu .link.item:hover,.ui.inverted.menu a.item:hover,.ui.link.inverted.menu .item:hover{background:hsla(0,0%,100%,.08);color:#fff}.ui.vertical.inverted.menu .item .menu .link.item:hover,.ui.vertical.inverted.menu .item .menu a.item:hover{background:transparent;color:#fff}.ui.inverted.menu .link.item:active,.ui.inverted.menu a.item:active{background:hsla(0,0%,100%,.08);color:#fff}.ui.inverted.menu .active.item{background:#3d3e3f;color:#fff!important}.ui.inverted.vertical.menu .item .menu .active.item{background:transparent;color:#fff}.ui.inverted.pointing.menu .active.item:after{background:#3d3e3f;border:none!important;box-shadow:none!important;margin:0!important}.ui.inverted.menu .active.item:hover{background:#3d3e3f;color:#fff!important}.ui.inverted.pointing.menu .active.item:hover:after{background:#3d3e3f}.ui.floated.menu{float:left;margin:0 .5rem 0 0}.ui.floated.menu .item:last-child:before{display:none}.ui.right.floated.menu{float:right;margin:0 0 0 .5rem}.ui.ui.inverted.menu .primary.active.item,.ui.ui.inverted.primary.menu{background-color:#2185d0}.ui.inverted.primary.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.primary.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.primary.menu .active.item{background-color:#1678c2}.ui.ui.inverted.menu .red.active.item,.ui.ui.inverted.red.menu{background-color:#db2828}.ui.inverted.red.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.red.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.red.menu .active.item{background-color:#d01919}.ui.ui.inverted.menu .orange.active.item,.ui.ui.inverted.orange.menu{background-color:#f2711c}.ui.inverted.orange.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.orange.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.orange.menu .active.item{background-color:#f26202}.ui.ui.inverted.menu .yellow.active.item,.ui.ui.inverted.yellow.menu{background-color:#fbbd08}.ui.inverted.yellow.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.yellow.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.yellow.menu .active.item{background-color:#eaae00}.ui.ui.inverted.menu .olive.active.item,.ui.ui.inverted.olive.menu{background-color:#b5cc18}.ui.inverted.olive.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.olive.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.olive.menu .active.item{background-color:#a7bd0d}.ui.ui.inverted.green.menu,.ui.ui.inverted.menu .green.active.item{background-color:#21ba45}.ui.inverted.green.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.green.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.green.menu .active.item{background-color:#16ab39}.ui.ui.inverted.menu .teal.active.item,.ui.ui.inverted.teal.menu{background-color:#00b5ad}.ui.inverted.teal.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.teal.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.teal.menu .active.item{background-color:#009c95}.ui.ui.inverted.blue.menu,.ui.ui.inverted.menu .blue.active.item{background-color:#2185d0}.ui.inverted.blue.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.blue.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.blue.menu .active.item{background-color:#1678c2}.ui.ui.inverted.menu .violet.active.item,.ui.ui.inverted.violet.menu{background-color:#6435c9}.ui.inverted.violet.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.violet.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.violet.menu .active.item{background-color:#5829bb}.ui.ui.inverted.menu .purple.active.item,.ui.ui.inverted.purple.menu{background-color:#a333c8}.ui.inverted.purple.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.purple.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.purple.menu .active.item{background-color:#9627ba}.ui.ui.inverted.menu .pink.active.item,.ui.ui.inverted.pink.menu{background-color:#e03997}.ui.inverted.pink.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.pink.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.pink.menu .active.item{background-color:#e61a8d}.ui.ui.inverted.brown.menu,.ui.ui.inverted.menu .brown.active.item{background-color:#a5673f}.ui.inverted.brown.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.brown.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.brown.menu .active.item{background-color:#975b33}.ui.ui.inverted.grey.menu,.ui.ui.inverted.menu .grey.active.item{background-color:#767676}.ui.inverted.grey.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.grey.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.grey.menu .active.item{background-color:#838383}.ui.ui.inverted.black.menu,.ui.ui.inverted.menu .black.active.item{background-color:#1b1c1d}.ui.inverted.black.menu .item:before{background-color:rgba(34,36,38,.1)}.ui.ui.inverted.black.menu .active.item{background-color:rgba(0,0,0,.1)}.ui.inverted.pointing.black.menu .active.item{background-color:#27292a}.ui.ui.ui.inverted.pointing.menu .active.item:after{background-color:inherit}.ui.fitted.menu .item,.ui.fitted.menu .item .menu .item,.ui.menu .fitted.item{padding:0}.ui.horizontally.fitted.menu .item,.ui.horizontally.fitted.menu .item .menu .item,.ui.menu .horizontally.fitted.item{padding-bottom:.92857143em;padding-top:.92857143em}.ui.menu .vertically.fitted.item,.ui.vertically.fitted.menu .item,.ui.vertically.fitted.menu .item .menu .item{padding-left:1.14285714em;padding-right:1.14285714em}.ui.borderless.menu .item .menu .item:before,.ui.borderless.menu .item:before,.ui.menu .borderless.item:before{background:none!important}.ui.compact.menu{display:inline-flex;margin:0;vertical-align:middle}.ui.compact.vertical.menu{display:-ms-inline-flexbox!important;display:inline-block}.ui.compact.menu:not(.secondary) .item:last-child{border-radius:0 .28571429rem .28571429rem 0}.ui.compact.menu .item:last-child:before{display:none}.ui.compact.vertical.menu{width:auto!important}.ui.compact.vertical.menu .item:last-child:before{display:block}.ui.menu.fluid,.ui.vertical.menu.fluid{width:100%!important}.ui.item.menu,.ui.item.menu .item{justify-content:center;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;text-align:center;width:100%}.ui.attached.item.menu:not(.tabular){margin:0 -1px!important}.ui.item.menu .item:last-child:before{display:none}.ui.menu.two.item .item{width:50%}.ui.menu.three.item .item{width:33.333%}.ui.menu.four.item .item{width:25%}.ui.menu.five.item .item{width:20%}.ui.menu.six.item .item{width:16.666%}.ui.menu.seven.item .item{width:14.285%}.ui.menu.eight.item .item{width:12.5%}.ui.menu.nine.item .item{width:11.11%}.ui.menu.ten.item .item{width:10%}.ui.menu.eleven.item .item{width:9.09%}.ui.menu.twelve.item .item{width:8.333%}.ui.menu.fixed{margin:0;position:fixed;width:100%;z-index:101}.ui.menu.fixed,.ui.menu.fixed .item:first-child,.ui.menu.fixed .item:last-child{border-radius:0!important}.ui.fixed.menu,.ui[class*="top fixed"].menu{bottom:auto;left:0;right:auto;top:0}.ui[class*="top fixed"].menu{border-left:none;border-right:none;border-top:none}.ui[class*="right fixed"].menu{border-bottom:none;border-right:none;border-top:none;bottom:auto;height:100%;left:auto;right:0;top:0;width:auto}.ui[class*="bottom fixed"].menu{border-bottom:none;border-left:none;border-right:none;bottom:0;left:0;right:auto;top:auto}.ui[class*="left fixed"].menu{border-bottom:none;border-left:none;border-top:none;bottom:auto;height:100%;left:0;right:auto;top:0;width:auto}.ui.fixed.menu+.ui.grid{padding-top:2.75rem}.ui.pointing.menu .item:after{background:none;border:1px solid #d4d4d5;border-left:none;border-top:none;content:"";height:.57142857em;left:50%;margin:.5px 0 0;position:absolute;top:100%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transition:background .1s ease;visibility:hidden;width:.57142857em;z-index:2}.ui.vertical.pointing.menu .item:after{border:1px solid #d4d4d5;border-bottom:none;border-left:none;bottom:auto;left:auto;margin:0 -.5px 0 0;position:absolute;right:0;top:50%;transform:translateX(50%) translateY(-50%) rotate(45deg)}.ui.pointing.menu .ui.dropdown .menu .item:after,.ui.vertical.pointing.menu .ui.dropdown .menu .item:after{display:none}.ui.pointing.menu .active.item:after{visibility:visible}.ui.pointing.menu .active.dropdown.item:after{visibility:hidden}.ui.pointing.menu .active.item .menu .active.item:after,.ui.pointing.menu .dropdown.active.item:after{display:none}.ui.pointing.menu .active.item:after,.ui.pointing.menu .active.item:hover:after,.ui.vertical.pointing.menu .active.item:after,.ui.vertical.pointing.menu .active.item:hover:after{background-color:#f2f2f2}.ui.vertical.pointing.menu .menu .active.item:after{background-color:#fff}.ui.inverted.pointing.menu .primary.active.item:after{background-color:#2185d0}.ui.inverted.pointing.menu .secondary.active.item:after{background-color:#1b1c1d}.ui.inverted.pointing.menu .red.active.item:after{background-color:#db2828}.ui.inverted.pointing.menu .orange.active.item:after{background-color:#f2711c}.ui.inverted.pointing.menu .yellow.active.item:after{background-color:#fbbd08}.ui.inverted.pointing.menu .olive.active.item:after{background-color:#b5cc18}.ui.inverted.pointing.menu .green.active.item:after{background-color:#21ba45}.ui.inverted.pointing.menu .teal.active.item:after{background-color:#00b5ad}.ui.inverted.pointing.menu .blue.active.item:after{background-color:#2185d0}.ui.inverted.pointing.menu .violet.active.item:after{background-color:#6435c9}.ui.inverted.pointing.menu .purple.active.item:after{background-color:#a333c8}.ui.inverted.pointing.menu .pink.active.item:after{background-color:#e03997}.ui.inverted.pointing.menu .brown.active.item:after{background-color:#a5673f}.ui.inverted.pointing.menu .grey.active.item:after{background-color:#767676}.ui.inverted.pointing.menu .black.active.item:after{background-color:#1b1c1d}.ui.attached.menu{border-radius:0;bottom:0;box-shadow:none;margin:0 -1px;max-width:calc(100% + 2px);top:0;width:calc(100% + 2px)}.ui.attached+.ui.attached.menu:not(.top){border-top:none}.ui[class*="top attached"].menu{border-radius:.28571429rem .28571429rem 0 0;bottom:0;margin-bottom:0;margin-top:1rem;top:0}.ui.menu[class*="top attached"]:first-child{margin-top:0}.ui[class*="bottom attached"].menu{border-radius:0 0 .28571429rem .28571429rem;bottom:0;box-shadow:0 1px 2px 0 rgba(34,36,38,.15),none;margin-bottom:1rem;margin-top:0;top:0}.ui[class*="bottom attached"].menu:last-child{margin-bottom:0}.ui.top.attached.menu>.item:first-child{border-radius:.28571429rem 0 0 0}.ui.bottom.attached.menu>.item:first-child{border-radius:0 0 0 .28571429rem}.ui.attached.menu:not(.tabular){border:1px solid #d4d4d5}.ui.attached.inverted.menu{border:none}.ui.attached.tabular.menu{margin-left:0;margin-right:0;width:100%}.ui.mini.menu{font-size:.78571429rem}.ui.mini.vertical.menu:not(.icon){width:9rem}.ui.mini.menu .dropdown,.ui.mini.menu .dropdown .menu>.item{font-size:.78571429rem}.ui.tiny.menu{font-size:.85714286rem}.ui.tiny.vertical.menu:not(.icon){width:11rem}.ui.tiny.menu .dropdown,.ui.tiny.menu .dropdown .menu>.item{font-size:.85714286rem}.ui.small.menu{font-size:.92857143rem}.ui.small.vertical.menu:not(.icon){width:13rem}.ui.small.menu .dropdown,.ui.small.menu .dropdown .menu>.item{font-size:.92857143rem}.ui.menu{font-size:1rem}.ui.vertical.menu{width:15rem}.ui.large.menu{font-size:1.07142857rem}.ui.large.vertical.menu:not(.icon){width:18rem}.ui.large.menu .dropdown,.ui.large.menu .dropdown .menu>.item{font-size:1.07142857rem}.ui.huge.menu{font-size:1.21428571rem}.ui.huge.vertical.menu:not(.icon){width:22rem}.ui.huge.menu .dropdown,.ui.huge.menu .dropdown .menu>.item{font-size:1.21428571rem}.ui.big.menu{font-size:1.14285714rem}.ui.big.vertical.menu:not(.icon){width:20rem}.ui.big.menu .dropdown,.ui.big.menu .dropdown .menu>.item{font-size:1.14285714rem}.ui.massive.menu{font-size:1.28571429rem}.ui.massive.vertical.menu:not(.icon){width:25rem}.ui.massive.menu .dropdown,.ui.massive.menu .dropdown .menu>.item{font-size:1.28571429rem}.ui.menu .ui.inverted.inverted.dropdown.item .menu{background:#1b1c1d;box-shadow:none}.ui.menu .ui.inverted.dropdown .menu>.item{color:hsla(0,0%,100%,.8)!important}.ui.menu .ui.inverted.dropdown .menu>.active.item{background:transparent!important;color:hsla(0,0%,100%,.8)!important}.ui.menu .ui.inverted.dropdown .menu>.item:hover{background:hsla(0,0%,100%,.08)!important;color:hsla(0,0%,100%,.8)!important}.ui.menu .ui.inverted.dropdown .menu>.selected.item{background:hsla(0,0%,100%,.15)!important;color:hsla(0,0%,100%,.8)!important}.ui.vertical.menu .inverted.dropdown.item .menu{box-shadow:none}
/*!
 * # Fomantic-UI - Message
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.message{background:#f8f8f9;border-radius:.28571429rem;box-shadow:inset 0 0 0 1px rgba(34,36,38,.22),0 0 0 0 transparent;color:rgba(0,0,0,.87);line-height:1.4285em;margin:1em 0;min-height:1em;padding:1em 1.5em;position:relative;transition:opacity .1s ease,color .1s ease,background .1s ease,box-shadow .1s ease}.ui.message:first-child{margin-top:0}.ui.message:last-child{margin-bottom:0}.ui.message .header{display:block;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-weight:700;margin:-.14285714em 0 0}.ui.message .header:not(.ui){font-size:1.14285714em}.ui.message p{margin:.75em 0;opacity:.85}.ui.message p:first-child{margin-top:0}.ui.message p:last-child{margin-bottom:0}.ui.message .header+p{margin-top:.25em}.ui.message .list:not(.ui){list-style-position:inside;margin:.5em 0 0;opacity:.85;padding:0;text-align:left}.ui.message .list:not(.ui):first-child{margin-top:0}.ui.message .list:not(.ui):last-child{margin-bottom:0}.ui.message .list:not(.ui) li{list-style-type:none;margin:0 0 .3em 1em;padding:0;position:relative}.ui.message .list:not(.ui) li:before{content:"•";height:100%;left:-1em;position:absolute;vertical-align:baseline}.ui.message .list:not(.ui) li:last-child{margin-bottom:0}.ui.message>.icon{margin-right:.6em}.ui.message>.close.icon{cursor:pointer;margin:0;opacity:.7;position:absolute;right:.5em;top:.78575em;transition:opacity .1s ease}.ui.message>.close.icon:hover{opacity:1}.ui.message>:first-child{margin-top:0}.ui.message>:last-child{margin-bottom:0}.ui.dropdown .menu>.message{margin:0 -1px}.ui.visible.visible.visible.visible.message{display:block}.ui.icon.visible.visible.visible.visible.message{display:flex}.ui.hidden.hidden.hidden.hidden.message{display:none}.ui.compact.message{display:inline-block}.ui.compact.icon.message{display:inline-flex;width:auto}.ui.attached.message{border-radius:.28571429rem .28571429rem 0 0;box-shadow:inset 0 0 0 1px rgba(34,36,38,.15);margin-bottom:-1px;margin-left:-1px;margin-right:-1px}.ui.attached+.ui.attached.message:not(.top):not(.bottom){border-radius:0;margin-top:-1px}.ui.bottom.attached.message{border-radius:0 0 .28571429rem .28571429rem;box-shadow:inset 0 0 0 1px rgba(34,36,38,.15),0 1px 2px 0 rgba(34,36,38,.15);margin-top:-1px}.ui.bottom.attached.message:not(:last-child){margin-bottom:1em}.ui.attached.icon.message{width:auto}.ui.icon.message{align-items:center;display:flex;width:100%}.ui.icon.message>.icon:not(.close){display:block;flex:0 0 auto;font-size:3em;line-height:1;opacity:.8;vertical-align:middle;width:auto}.ui.icon.message>.content{display:block;flex:1 1 auto;vertical-align:middle}.ui.icon.message .icon:not(.close)+.content{padding-left:0}.ui.icon.message .circular.icon{width:1em}.ui.floating.message{box-shadow:inset 0 0 0 1px rgba(34,36,38,.22),0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.positive.message{background-color:#fcfff5;color:#2c662d}.ui.attached.positive.message,.ui.positive.message{box-shadow:inset 0 0 0 1px #a3c293,0 0 0 0 transparent}.ui.floating.positive.message{box-shadow:inset 0 0 0 1px #a3c293,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.positive.message .header{color:#1a531b}.ui.negative.message{background-color:#fff6f6;color:#9f3a38}.ui.attached.negative.message,.ui.negative.message{box-shadow:inset 0 0 0 1px #e0b4b4,0 0 0 0 transparent}.ui.floating.negative.message{box-shadow:inset 0 0 0 1px #e0b4b4,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.negative.message .header{color:#912d2b}.ui.info.message{background-color:#f8ffff;color:#276f86}.ui.attached.info.message,.ui.info.message{box-shadow:inset 0 0 0 1px #a9d5de,0 0 0 0 transparent}.ui.floating.info.message{box-shadow:inset 0 0 0 1px #a9d5de,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.info.message .header{color:#0e566c}.ui.warning.message{background-color:#fffaf3;color:#573a08}.ui.attached.warning.message,.ui.warning.message{box-shadow:inset 0 0 0 1px #c9ba9b,0 0 0 0 transparent}.ui.floating.warning.message{box-shadow:inset 0 0 0 1px #c9ba9b,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.warning.message .header{color:#794b02}.ui.error.message{background-color:#fff6f6;color:#9f3a38}.ui.attached.error.message,.ui.error.message{box-shadow:inset 0 0 0 1px #e0b4b4,0 0 0 0 transparent}.ui.floating.error.message{box-shadow:inset 0 0 0 1px #e0b4b4,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.error.message .header{color:#912d2b}.ui.success.message{background-color:#fcfff5;color:#2c662d}.ui.attached.success.message,.ui.success.message{box-shadow:inset 0 0 0 1px #a3c293,0 0 0 0 transparent}.ui.floating.success.message{box-shadow:inset 0 0 0 1px #a3c293,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.success.message .header{color:#1a531b}.ui.primary.message{background-color:#dff0ff;color:hsla(0,0%,100%,.9)}.ui.attached.primary.message,.ui.primary.message{box-shadow:inset 0 0 0 1px #2185d0,0 0 0 0 transparent}.ui.floating.primary.message{box-shadow:inset 0 0 0 1px #2185d0,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.primary.message .header{color:hsla(0,0%,95%,.9)}.ui.secondary.message{background-color:#f4f4f4;color:hsla(0,0%,100%,.9)}.ui.attached.secondary.message,.ui.secondary.message{box-shadow:inset 0 0 0 1px #1b1c1d,0 0 0 0 transparent}.ui.floating.secondary.message{box-shadow:inset 0 0 0 1px #1b1c1d,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.secondary.message .header{color:hsla(0,0%,95%,.9)}.ui.red.message{background-color:#ffe8e6;color:#db2828}.ui.attached.red.message,.ui.red.message{box-shadow:inset 0 0 0 1px #db2828,0 0 0 0 transparent}.ui.floating.red.message{box-shadow:inset 0 0 0 1px #db2828,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.red.message .header{color:#c82121}.ui.orange.message{background-color:#ffedde;color:#f2711c}.ui.attached.orange.message,.ui.orange.message{box-shadow:inset 0 0 0 1px #f2711c,0 0 0 0 transparent}.ui.floating.orange.message{box-shadow:inset 0 0 0 1px #f2711c,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.orange.message .header{color:#e7640d}.ui.yellow.message{background-color:#fff8db;color:#b58105}.ui.attached.yellow.message,.ui.yellow.message{box-shadow:inset 0 0 0 1px #b58105,0 0 0 0 transparent}.ui.floating.yellow.message{box-shadow:inset 0 0 0 1px #b58105,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.yellow.message .header{color:#9c6f04}.ui.olive.message{background-color:#fbfdef;color:#8abc1e}.ui.attached.olive.message,.ui.olive.message{box-shadow:inset 0 0 0 1px #8abc1e,0 0 0 0 transparent}.ui.floating.olive.message{box-shadow:inset 0 0 0 1px #8abc1e,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.olive.message .header{color:#7aa61a}.ui.green.message{background-color:#e5f9e7;color:#1ebc30}.ui.attached.green.message,.ui.green.message{box-shadow:inset 0 0 0 1px #1ebc30,0 0 0 0 transparent}.ui.floating.green.message{box-shadow:inset 0 0 0 1px #1ebc30,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.green.message .header{color:#1aa62a}.ui.teal.message{background-color:#e1f7f7;color:#10a3a3}.ui.attached.teal.message,.ui.teal.message{box-shadow:inset 0 0 0 1px #10a3a3,0 0 0 0 transparent}.ui.floating.teal.message{box-shadow:inset 0 0 0 1px #10a3a3,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.teal.message .header{color:#0e8c8c}.ui.blue.message{background-color:#dff0ff;color:#2185d0}.ui.attached.blue.message,.ui.blue.message{box-shadow:inset 0 0 0 1px #2185d0,0 0 0 0 transparent}.ui.floating.blue.message{box-shadow:inset 0 0 0 1px #2185d0,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.blue.message .header{color:#1e77ba}.ui.violet.message{background-color:#eae7ff;color:#6435c9}.ui.attached.violet.message,.ui.violet.message{box-shadow:inset 0 0 0 1px #6435c9,0 0 0 0 transparent}.ui.floating.violet.message{box-shadow:inset 0 0 0 1px #6435c9,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.violet.message .header{color:#5a30b5}.ui.purple.message{background-color:#f6e7ff;color:#a333c8}.ui.attached.purple.message,.ui.purple.message{box-shadow:inset 0 0 0 1px #a333c8,0 0 0 0 transparent}.ui.floating.purple.message{box-shadow:inset 0 0 0 1px #a333c8,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.purple.message .header{color:#922eb4}.ui.pink.message{background-color:#ffe3fb;color:#e03997}.ui.attached.pink.message,.ui.pink.message{box-shadow:inset 0 0 0 1px #e03997,0 0 0 0 transparent}.ui.floating.pink.message{box-shadow:inset 0 0 0 1px #e03997,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.pink.message .header{color:#dd238b}.ui.brown.message{background-color:#f1e2d3;color:#a5673f}.ui.attached.brown.message,.ui.brown.message{box-shadow:inset 0 0 0 1px #a5673f,0 0 0 0 transparent}.ui.floating.brown.message{box-shadow:inset 0 0 0 1px #a5673f,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.brown.message .header{color:#935b38}.ui.grey.message{background-color:#f4f4f4;color:#767676}.ui.attached.grey.message,.ui.grey.message{box-shadow:inset 0 0 0 1px #767676,0 0 0 0 transparent}.ui.floating.grey.message{box-shadow:inset 0 0 0 1px #767676,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.grey.message .header{color:#696969}.ui.black.message{background-color:#1b1c1d}.ui.black.message,.ui.black.message .header,.ui.inverted.message{color:hsla(0,0%,100%,.9)}.ui.inverted.message{background-color:#1b1c1d}.ui.mini.message{font-size:.78571429em}.ui.tiny.message{font-size:.85714286em}.ui.small.message{font-size:.92857143em}.ui.message{font-size:1em}.ui.large.message{font-size:1.14285714em}.ui.big.message{font-size:1.28571429em}.ui.huge.message{font-size:1.42857143em}.ui.massive.message{font-size:1.71428571em}
/*!
 * # Fomantic-UI - Table
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.table{background:#fff;border:1px solid rgba(34,36,38,.15);border-collapse:separate;border-radius:.28571429rem;border-spacing:0;box-shadow:none;color:rgba(0,0,0,.87);margin:1em 0;text-align:left;vertical-align:middle;width:100%}.ui.table:first-child{margin-top:0}.ui.table:last-child{margin-bottom:0}.ui.table>tbody,.ui.table>thead{text-align:inherit;vertical-align:inherit}.ui.table td,.ui.table th{transition:background .1s ease,color .1s ease}.ui.table>thead{box-shadow:none}.ui.table>thead>tr>th{background:#f9fafb;border-bottom:1px solid rgba(34,36,38,.1);border-left:none;color:rgba(0,0,0,.87);cursor:auto;font-style:none;font-weight:700;padding:.92857143em .78571429em;text-align:inherit;text-transform:none;vertical-align:inherit}.ui.table>thead>tr>th:first-child{border-left:none}.ui.table>thead>tr:first-child>th:first-child{border-radius:.28571429rem 0 0 0}.ui.table>thead>tr:first-child>th:last-child{border-radius:0 .28571429rem 0 0}.ui.table>thead>tr:first-child>th:only-child{border-radius:.28571429rem .28571429rem 0 0}.ui.table>tfoot{box-shadow:none}.ui.table>tfoot>tr>th{background:#f9fafb;border-top:1px solid rgba(34,36,38,.15);color:rgba(0,0,0,.87);cursor:auto;font-style:normal;font-weight:400;padding:.78571429em;text-align:inherit;text-transform:none;vertical-align:middle}.ui.table>tfoot>tr>th:first-child{border-left:none}.ui.table>tfoot>tr:first-child>th:first-child{border-radius:0 0 0 .28571429rem}.ui.table>tfoot>tr:first-child>th:last-child{border-radius:0 0 .28571429rem 0}.ui.table>tfoot>tr:first-child>th:only-child{border-radius:0 0 .28571429rem .28571429rem}.ui.table>tbody>tr>td,.ui.table>tr>td{border-top:1px solid rgba(34,36,38,.1)}.ui.table>tbody>tr:first-child>td,.ui.table>tr:first-child>td{border-top:none}.ui.table>tbody+tbody tr:first-child>td{border-top:1px solid rgba(34,36,38,.1)}.ui.table>tbody>tr>td,.ui.table>tr>td{padding:.78571429em;text-align:inherit}.ui.table>.icon{vertical-align:baseline}.ui.table>.icon:only-child{margin:0}.ui.table.segment{padding:0}.ui.table.segment:after{display:none}.ui.table.segment.stacked:after{display:block}@media only screen and (max-width:767.98px){.ui.table:not(.unstackable){padding:0;width:100%}.ui.table:not(.unstackable)>tbody,.ui.table:not(.unstackable)>tbody>tr,.ui.table:not(.unstackable)>tbody>tr>td,.ui.table:not(.unstackable)>tbody>tr>th,.ui.table:not(.unstackable)>tfoot,.ui.table:not(.unstackable)>tfoot>tr,.ui.table:not(.unstackable)>tfoot>tr>th,.ui.table:not(.unstackable)>thead,.ui.table:not(.unstackable)>thead>tr,.ui.table:not(.unstackable)>thead>tr>th,.ui.table:not(.unstackable)>tr,.ui.table:not(.unstackable)>tr>td,.ui.table:not(.unstackable)>tr>th{display:block!important;width:auto!important}.ui.table:not(.unstackable)>tfoot,.ui.table:not(.unstackable)>thead{display:block}.ui.table:not(.unstackable)>tbody>tr,.ui.table:not(.unstackable)>tfoot>tr,.ui.table:not(.unstackable)>thead>tr,.ui.table:not(.unstackable)>tr{box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.1)!important;padding-bottom:1em;padding-top:1em}.ui.ui.ui.ui.table:not(.unstackable)>tbody>tr>td,.ui.ui.ui.ui.table:not(.unstackable)>tbody>tr>th,.ui.ui.ui.ui.table:not(.unstackable)>tfoot>tr>th,.ui.ui.ui.ui.table:not(.unstackable)>thead>tr>th,.ui.ui.ui.ui.table:not(.unstackable)>tr>td,.ui.ui.ui.ui.table:not(.unstackable)>tr>th{background:none;border:none;box-shadow:none!important;padding:.25em .75em}.ui.table:not(.unstackable)>tbody>tr>td:first-child,.ui.table:not(.unstackable)>tbody>tr>th:first-child,.ui.table:not(.unstackable)>tfoot>tr>th:first-child,.ui.table:not(.unstackable)>thead>tr>th:first-child,.ui.table:not(.unstackable)>tr>td:first-child,.ui.table:not(.unstackable)>tr>th:first-child{font-weight:700}.ui.definition.table:not(.unstackable)>thead>tr>th:first-child{box-shadow:none!important}}.ui.table .collapsing .image,.ui.table .collapsing .image img{max-width:none}.ui.structured.table{border-collapse:collapse}.ui.structured.table>thead>tr>th{border-left:none;border-right:none}.ui.structured.sortable.table>thead>tr>th{border-left:1px solid rgba(34,36,38,.15);border-right:1px solid rgba(34,36,38,.15)}.ui.structured.basic.table>tbody>tr>th,.ui.structured.basic.table>tfoot>tr>th,.ui.structured.basic.table>thead>tr>th,.ui.structured.basic.table>tr>th{border-left:none;border-right:none}.ui.structured.celled.table>tbody>tr>td,.ui.structured.celled.table>tbody>tr>th,.ui.structured.celled.table>tfoot>tr>th,.ui.structured.celled.table>thead>tr>th,.ui.structured.celled.table>tr>td,.ui.structured.celled.table>tr>th{border-left:1px solid rgba(34,36,38,.1);border-right:1px solid rgba(34,36,38,.1)}.ui.definition.table>thead:not(.full-width)>tr>th:first-child{background:#fff;box-shadow:-.1em -.2em 0 .1em #fff;color:rgba(0,0,0,.4);font-weight:400;pointer-events:none;-moz-transform:scale(1)}.ui.definition.table>tfoot:not(.full-width)>tr>th:first-child{background:#fff;box-shadow:-.1em .2em 0 .1em #fff;color:rgba(0,0,0,.4);font-weight:400;pointer-events:none;-moz-transform:scale(1)}.ui.definition.table tr td.definition,.ui.definition.table>tbody>tr>td:first-child:not(.ignored),.ui.definition.table>tr>td:first-child:not(.ignored){background:rgba(0,0,0,.03);box-shadow:"";color:rgba(0,0,0,.95);font-size:1em;font-weight:700;padding-left:"";padding-right:"";text-align:"";text-transform:""}.ui.definition.table>tbody>tr>td:nth-child(2),.ui.definition.table>tfoot:not(.full-width)>tr>th:nth-child(2),.ui.definition.table>thead:not(.full-width)>tr>th:nth-child(2),.ui.definition.table>tr>td:nth-child(2){border-left:1px solid rgba(34,36,38,.15)}.ui.ui.table td.positive,.ui.ui.ui.ui.table tr.positive{background:#fcfff5;box-shadow:inset 0 0 0 #a3c293;color:#2c662d}.ui.ui.table td.error,.ui.ui.table td.negative,.ui.ui.ui.ui.table tr.error,.ui.ui.ui.ui.table tr.negative{background:#fff6f6;box-shadow:inset 0 0 0 #e0b4b4;color:#9f3a38}.ui.ui.table td.warning,.ui.ui.ui.ui.table tr.warning{background:#fffaf3;box-shadow:inset 0 0 0 #c9ba9b;color:#573a08}.ui.ui.table td.active,.ui.ui.ui.ui.table tr.active{background:#e0e0e0;box-shadow:inset 0 0 0 rgba(0,0,0,.87);color:rgba(0,0,0,.87)}.ui.table tr td.disabled,.ui.table tr.disabled td,.ui.table tr.disabled:hover,.ui.table tr:hover td.disabled{color:rgba(40,40,40,.3);pointer-events:none}@media only screen and (max-width:991.98px){.ui[class*="tablet stackable"].table,.ui[class*="tablet stackable"].table>tbody,.ui[class*="tablet stackable"].table>tbody>tr,.ui[class*="tablet stackable"].table>tbody>tr>td,.ui[class*="tablet stackable"].table>tbody>tr>th,.ui[class*="tablet stackable"].table>tfoot,.ui[class*="tablet stackable"].table>tfoot>tr,.ui[class*="tablet stackable"].table>tfoot>tr>th,.ui[class*="tablet stackable"].table>thead,.ui[class*="tablet stackable"].table>thead>tr,.ui[class*="tablet stackable"].table>thead>tr>th,.ui[class*="tablet stackable"].table>tr,.ui[class*="tablet stackable"].table>tr>td,.ui[class*="tablet stackable"].table>tr>th{display:block!important;width:100%!important}.ui[class*="tablet stackable"].table{padding:0}.ui[class*="tablet stackable"].table>tfoot,.ui[class*="tablet stackable"].table>thead{display:block}.ui[class*="tablet stackable"].table>tbody>tr,.ui[class*="tablet stackable"].table>tfoot>tr,.ui[class*="tablet stackable"].table>thead>tr,.ui[class*="tablet stackable"].table>tr{box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.1)!important;padding-bottom:1em;padding-top:1em}.ui[class*="tablet stackable"].table>tbody>tr>td,.ui[class*="tablet stackable"].table>tbody>tr>th,.ui[class*="tablet stackable"].table>tfoot>tr>th,.ui[class*="tablet stackable"].table>thead>tr>th,.ui[class*="tablet stackable"].table>tr>td,.ui[class*="tablet stackable"].table>tr>th{background:none;border:none!important;box-shadow:none!important;padding:.25em .75em}.ui.definition[class*="tablet stackable"].table>thead>tr>th:first-child{box-shadow:none!important}}.ui.table [class*="left aligned"],.ui.table[class*="left aligned"]{text-align:left}.ui.table [class*="center aligned"],.ui.table[class*="center aligned"]{text-align:center}.ui.table [class*="right aligned"],.ui.table[class*="right aligned"]{text-align:right}.ui.table [class*="top aligned"],.ui.table[class*="top aligned"]{vertical-align:top}.ui.table [class*="middle aligned"],.ui.table[class*="middle aligned"]{vertical-align:middle}.ui.table [class*="bottom aligned"],.ui.table[class*="bottom aligned"]{vertical-align:bottom}.ui.table td.collapsing,.ui.table th.collapsing{white-space:nowrap;width:1px}.ui.fixed.table{table-layout:fixed}.ui.fixed.table td,.ui.fixed.table th{overflow:hidden;text-overflow:ellipsis}.ui.table tbody tr td.selectable:hover,.ui.ui.selectable.table>tbody>tr:hover{background:rgba(0,0,0,.05);color:rgba(0,0,0,.95)}.ui.inverted.table tbody tr td.selectable:hover,.ui.ui.selectable.inverted.table>tbody>tr:hover{background:hsla(0,0%,100%,.08);color:#fff}.ui.table tbody tr td.selectable{padding:0}.ui.table tbody tr td.selectable>a:not(.ui){color:inherit;display:block;padding:.78571429em}.ui.selectable.table>tbody>tr,.ui.selectable.table>tr,.ui.table>tbody>tr>td.selectable,.ui.table>tr>td.selectable{cursor:pointer}.ui.selectable.table tr:hover td.error,.ui.table tr td.selectable.error:hover,.ui.ui.selectable.table tr.error:hover{background:#ffe7e7;color:#943634}.ui.selectable.table tr:hover td.warning,.ui.table tr td.selectable.warning:hover,.ui.ui.selectable.table tr.warning:hover{background:#fff4e4;color:#493107}.ui.selectable.table tr:hover td.active,.ui.table tr td.selectable.active:hover,.ui.ui.selectable.table tr.active:hover{background:#e0e0e0;color:rgba(0,0,0,.87)}.ui.selectable.table tr:hover td.positive,.ui.table tr td.selectable.positive:hover,.ui.ui.selectable.table tr.positive:hover{background:#f7ffe6;color:#275b28}.ui.selectable.table tr:hover td.negative,.ui.table tr td.selectable.negative:hover,.ui.ui.selectable.table tr.negative:hover{background:#ffe7e7;color:#943634}.ui.attached.table{border:1px solid #d4d4d5;border-radius:0;bottom:0;box-shadow:none;margin:0 -1px;max-width:calc(100% + 2px);top:0;width:calc(100% + 2px)}.ui.attached+.ui.attached.table:not(.top){border-top:none}.ui[class*="top attached"].table{border-radius:.28571429rem .28571429rem 0 0;bottom:0;margin-bottom:0;margin-top:1em;top:0}.ui.table[class*="top attached"]:first-child{margin-top:0}.ui[class*="bottom attached"].table{border-radius:0 0 .28571429rem .28571429rem;bottom:0;box-shadow:none,none;margin-bottom:1em;margin-top:0;top:0}.ui[class*="bottom attached"].table:last-child{margin-bottom:0}.ui.striped.table>tbody>tr:nth-child(2n),.ui.striped.table>tr:nth-child(2n){background-color:rgba(0,0,50,.02)}.ui.inverted.striped.table>tbody>tr:nth-child(2n),.ui.inverted.striped.table>tr:nth-child(2n){background-color:hsla(0,0%,100%,.05)}.ui.striped.selectable.selectable.selectable.table tbody tr.active:hover{background:#efefef;color:rgba(0,0,0,.95)}.ui.table [class*="single line"],.ui.table[class*="single line"]{white-space:nowrap}.ui.primary.table{border-top:.2em solid #2185d0}.ui.inverted.primary.table{background-color:#2185d0;color:#fff}.ui.ui.table td.primary,.ui.ui.ui.ui.table tr.primary{background:#ddf4ff;box-shadow:inset 0 0 0 #1a69a4;color:hsla(0,0%,100%,.9)}.ui.selectable.table tr:hover td.primary,.ui.table tr td.selectable.primary:hover,.ui.ui.selectable.table tr.primary:hover{background:#d3f1ff;color:hsla(0,0%,100%,.9)}.ui.secondary.table{border-top:.2em solid #1b1c1d}.ui.inverted.secondary.table{background-color:#1b1c1d;color:#fff}.ui.ui.table td.secondary,.ui.ui.ui.ui.table tr.secondary{background:#ddd;box-shadow:inset 0 0 0 #020203;color:hsla(0,0%,100%,.9)}.ui.selectable.table tr:hover td.secondary,.ui.table tr td.selectable.secondary:hover,.ui.ui.selectable.table tr.secondary:hover{background:#e2e2e2;color:hsla(0,0%,100%,.9)}.ui.red.table{border-top:.2em solid #db2828}.ui.inverted.red.table{background-color:#db2828;color:#fff}.ui.ui.table td.red,.ui.ui.ui.ui.table tr.red{background:#ffe1df;box-shadow:inset 0 0 0 #b21e1e;color:#db2828}.ui.selectable.table tr:hover td.red,.ui.table tr td.selectable.red:hover,.ui.ui.selectable.table tr.red:hover{background:#ffd7d5;color:#db2828}.ui.orange.table{border-top:.2em solid #f2711c}.ui.inverted.orange.table{background-color:#f2711c;color:#fff}.ui.ui.table td.orange,.ui.ui.ui.ui.table tr.orange{background:#ffe7d1;box-shadow:inset 0 0 0 #cf590c;color:#f2711c}.ui.selectable.table tr:hover td.orange,.ui.table tr td.selectable.orange:hover,.ui.ui.selectable.table tr.orange:hover{background:#fae1cc;color:#f2711c}.ui.yellow.table{border-top:.2em solid #fbbd08}.ui.inverted.yellow.table{background-color:#fbbd08;color:#fff}.ui.ui.table td.yellow,.ui.ui.ui.ui.table tr.yellow{background:#fff9d2;box-shadow:inset 0 0 0 #cd9903;color:#b58105}.ui.selectable.table tr:hover td.yellow,.ui.table tr td.selectable.yellow:hover,.ui.ui.selectable.table tr.yellow:hover{background:#fbf5cc;color:#b58105}.ui.olive.table{border-top:.2em solid #b5cc18}.ui.inverted.olive.table{background-color:#b5cc18;color:#fff}.ui.ui.table td.olive,.ui.ui.ui.ui.table tr.olive{background:#f7fae4;box-shadow:inset 0 0 0 #8d9e13;color:#8abc1e}.ui.selectable.table tr:hover td.olive,.ui.table tr td.selectable.olive:hover,.ui.ui.selectable.table tr.olive:hover{background:#f6fada;color:#8abc1e}.ui.green.table{border-top:.2em solid #21ba45}.ui.inverted.green.table{background-color:#21ba45;color:#fff}.ui.ui.table td.green,.ui.ui.ui.ui.table tr.green{background:#d5f5d9;box-shadow:inset 0 0 0 #198f35;color:#1ebc30}.ui.selectable.table tr:hover td.green,.ui.table tr td.selectable.green:hover,.ui.ui.selectable.table tr.green:hover{background:#d2eed5;color:#1ebc30}.ui.teal.table{border-top:.2em solid #00b5ad}.ui.inverted.teal.table{background-color:#00b5ad;color:#fff}.ui.ui.table td.teal,.ui.ui.ui.ui.table tr.teal{background:#e2ffff;box-shadow:inset 0 0 0 #00827c;color:#10a3a3}.ui.selectable.table tr:hover td.teal,.ui.table tr td.selectable.teal:hover,.ui.ui.selectable.table tr.teal:hover{background:#d8ffff;color:#10a3a3}.ui.blue.table{border-top:.2em solid #2185d0}.ui.inverted.blue.table{background-color:#2185d0;color:#fff}.ui.ui.table td.blue,.ui.ui.ui.ui.table tr.blue{background:#ddf4ff;box-shadow:inset 0 0 0 #1a69a4;color:#2185d0}.ui.selectable.table tr:hover td.blue,.ui.table tr td.selectable.blue:hover,.ui.ui.selectable.table tr.blue:hover{background:#d3f1ff;color:#2185d0}.ui.violet.table{border-top:.2em solid #6435c9}.ui.inverted.violet.table{background-color:#6435c9;color:#fff}.ui.ui.table td.violet,.ui.ui.ui.ui.table tr.violet{background:#ece9fe;box-shadow:inset 0 0 0 #502aa1;color:#6435c9}.ui.selectable.table tr:hover td.violet,.ui.table tr td.selectable.violet:hover,.ui.ui.selectable.table tr.violet:hover{background:#e3deff;color:#6435c9}.ui.purple.table{border-top:.2em solid #a333c8}.ui.inverted.purple.table{background-color:#a333c8;color:#fff}.ui.ui.table td.purple,.ui.ui.ui.ui.table tr.purple{background:#f8e3ff;box-shadow:inset 0 0 0 #82299f;color:#a333c8}.ui.selectable.table tr:hover td.purple,.ui.table tr td.selectable.purple:hover,.ui.ui.selectable.table tr.purple:hover{background:#f5d9ff;color:#a333c8}.ui.pink.table{border-top:.2em solid #e03997}.ui.inverted.pink.table{background-color:#e03997;color:#fff}.ui.ui.table td.pink,.ui.ui.ui.ui.table tr.pink{background:#ffe8f9;box-shadow:inset 0 0 0 #c71f7e;color:#e03997}.ui.selectable.table tr:hover td.pink,.ui.table tr td.selectable.pink:hover,.ui.ui.selectable.table tr.pink:hover{background:#ffdef6;color:#e03997}.ui.brown.table{border-top:.2em solid #a5673f}.ui.inverted.brown.table{background-color:#a5673f;color:#fff}.ui.ui.table td.brown,.ui.ui.ui.ui.table tr.brown{background:#f7e5d2;box-shadow:inset 0 0 0 #805031;color:#a5673f}.ui.selectable.table tr:hover td.brown,.ui.table tr td.selectable.brown:hover,.ui.ui.selectable.table tr.brown:hover{background:#efe0cf;color:#a5673f}.ui.grey.table{border-top:.2em solid #767676}.ui.inverted.grey.table{background-color:#767676;color:#fff}.ui.ui.table td.grey,.ui.ui.ui.ui.table tr.grey{background:#dcddde;box-shadow:inset 0 0 0 #5d5d5d;color:#767676}.ui.selectable.table tr:hover td.grey,.ui.table tr td.selectable.grey:hover,.ui.ui.selectable.table tr.grey:hover{background:#c2c4c5;color:#767676}.ui.black.table{border-top:.2em solid #1b1c1d}.ui.inverted.black.table{background-color:#1b1c1d;color:#fff}.ui.ui.table td.black,.ui.ui.ui.ui.table tr.black{background:#545454;box-shadow:inset 0 0 0 #020203;color:#fff}.ui.selectable.table tr:hover td.black,.ui.table tr td.selectable.black:hover,.ui.ui.selectable.table tr.black:hover{background:#000;color:#fff}.ui.one.column.table td{width:100%}.ui.two.column.table td{width:50%}.ui.three.column.table td{width:33.33333333%}.ui.four.column.table td{width:25%}.ui.five.column.table td{width:20%}.ui.six.column.table td{width:16.66666667%}.ui.seven.column.table td{width:14.28571429%}.ui.eight.column.table td{width:12.5%}.ui.nine.column.table td{width:11.11111111%}.ui.ten.column.table td{width:10%}.ui.eleven.column.table td{width:9.09090909%}.ui.twelve.column.table td{width:8.33333333%}.ui.thirteen.column.table td{width:7.69230769%}.ui.fourteen.column.table td{width:7.14285714%}.ui.fifteen.column.table td{width:6.66666667%}.ui.sixteen.column.table td,.ui.table td.one.wide,.ui.table th.one.wide{width:6.25%}.ui.table td.two.wide,.ui.table th.two.wide{width:12.5%}.ui.table td.three.wide,.ui.table th.three.wide{width:18.75%}.ui.table td.four.wide,.ui.table th.four.wide{width:25%}.ui.table td.five.wide,.ui.table th.five.wide{width:31.25%}.ui.table td.six.wide,.ui.table th.six.wide{width:37.5%}.ui.table td.seven.wide,.ui.table th.seven.wide{width:43.75%}.ui.table td.eight.wide,.ui.table th.eight.wide{width:50%}.ui.table td.nine.wide,.ui.table th.nine.wide{width:56.25%}.ui.table td.ten.wide,.ui.table th.ten.wide{width:62.5%}.ui.table td.eleven.wide,.ui.table th.eleven.wide{width:68.75%}.ui.table td.twelve.wide,.ui.table th.twelve.wide{width:75%}.ui.table td.thirteen.wide,.ui.table th.thirteen.wide{width:81.25%}.ui.table td.fourteen.wide,.ui.table th.fourteen.wide{width:87.5%}.ui.table td.fifteen.wide,.ui.table th.fifteen.wide{width:93.75%}.ui.table td.sixteen.wide,.ui.table th.sixteen.wide{width:100%}.ui.sortable.table>thead>tr>th{border-left:1px solid rgba(34,36,38,.15);color:rgba(0,0,0,.87);cursor:pointer;white-space:nowrap}.ui.sortable.table>thead>tr>th:first-child{border-left:none}.ui.sortable.table thead th.sorted,.ui.sortable.table thead th.sorted:hover{user-select:none}.ui.sortable.table>thead>tr>th:after{content:"";display:none;font-family:Icons;font-style:normal;font-weight:400;height:1em;margin:0 0 0 .5em;opacity:.8;text-decoration:inherit;width:auto}.ui.sortable.table thead th.ascending:after{content:"\f0d8"}.ui.sortable.table thead th.descending:after{content:"\f0d7"}.ui.sortable.table th.disabled:hover{color:rgba(40,40,40,.3);cursor:auto}.ui.sortable.table>thead>tr>th:hover{background:rgba(0,0,0,.05);color:rgba(0,0,0,.8)}.ui.sortable.table thead th.sorted{background:rgba(0,0,0,.05);color:rgba(0,0,0,.95)}.ui.sortable.table thead th.sorted:after{display:inline-block}.ui.sortable.table thead th.sorted:hover{background:rgba(0,0,0,.05);color:rgba(0,0,0,.95)}.ui.inverted.sortable.table thead th.sorted{background:hsla(0,0%,100%,.15) linear-gradient(transparent,rgba(0,0,0,.05));color:#fff}.ui.inverted.sortable.table>thead>tr>th:hover{background:hsla(0,0%,100%,.08) linear-gradient(transparent,rgba(0,0,0,.05));color:#fff}.ui.inverted.sortable.table>thead>tr>th{border-left-color:transparent;border-right-color:transparent}.ui.inverted.table{background:#333;border:none;color:hsla(0,0%,100%,.9)}.ui.ui.inverted.table>tbody>tr>th,.ui.ui.inverted.table>tfoot>tr>th,.ui.ui.inverted.table>thead>tr>th,.ui.ui.inverted.table>tr>th{background-color:rgba(0,0,0,.15);border-color:hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.9)}.ui.inverted.table>tbody>tr>td,.ui.inverted.table>tr>td{border-color:hsla(0,0%,100%,.1)}.ui.inverted.table tr td.disabled,.ui.inverted.table tr.disabled td,.ui.inverted.table tr.disabled:hover td,.ui.inverted.table tr:hover td.disabled{color:hsla(0,0%,88%,.3);pointer-events:none}.ui.inverted.table tr td.disabled:not([class=disabled]),.ui.inverted.table tr.disabled td[class]:not(.disabled),.ui.inverted.table tr.disabled:not([class=disabled]) td,.ui.inverted.table tr:hover td.disabled:not([class=disabled]){color:rgba(40,40,40,.3)}.ui.inverted.definition.table>tfoot:not(.full-width)>tr>th:first-child,.ui.inverted.definition.table>thead:not(.full-width)>tr>th:first-child{background:#fff}.ui.inverted.definition.table>tbody>tr>td:first-child,.ui.inverted.definition.table>tr>td:first-child{background:hsla(0,0%,100%,.02);color:#fff}.ui.collapsing.table{width:auto}.ui.basic.table{background:transparent;border:1px solid rgba(34,36,38,.15);box-shadow:none}.ui.basic.table>tfoot,.ui.basic.table>thead{box-shadow:none}.ui.basic.table>tbody>tr>th,.ui.basic.table>tfoot>tr>th,.ui.basic.table>thead>tr>th,.ui.basic.table>tr>th{background:transparent;border-left:none}.ui.basic.table>tbody>tr{border-bottom:1px solid rgba(0,0,0,.1)}.ui.basic.table>tbody>tr>td,.ui.basic.table>tr>td{background:transparent}.ui.basic.striped.table>tbody>tr:nth-child(2n){background-color:rgba(0,0,0,.05)}.ui[class*="very basic"].table{border:none}.ui[class*="very basic"].table:not(.sortable):not(.striped)>tbody>tr>td,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tbody>tr>th,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tfoot>tr>th,.ui[class*="very basic"].table:not(.sortable):not(.striped)>thead>tr>th,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tr>td,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tr>th{padding:""}.ui[class*="very basic"].table:not(.sortable):not(.striped)>tbody>tr>td:first-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tbody>tr>th:first-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tfoot>tr>th:first-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>thead>tr>th:first-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tr>td:first-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tr>th:first-child{padding-left:0}.ui[class*="very basic"].table:not(.sortable):not(.striped)>tbody>tr>td:last-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tbody>tr>th:last-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tfoot>tr>th:last-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>thead>tr>th:last-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tr>td:last-child,.ui[class*="very basic"].table:not(.sortable):not(.striped)>tr>th:last-child{padding-right:0}.ui[class*="very basic"].table:not(.sortable):not(.striped)>thead>tr:first-child>th{padding-top:0}.ui.celled.table>tbody>tr>td,.ui.celled.table>tbody>tr>th,.ui.celled.table>tfoot>tr>th,.ui.celled.table>thead>tr>th,.ui.celled.table>tr>td,.ui.celled.table>tr>th{border-left:1px solid rgba(34,36,38,.1)}.ui.inverted.celled.table>tbody>tr>td,.ui.inverted.celled.table>tr>td{border-left:1px solid hsla(0,0%,100%,.1)}.ui.celled.table>tbody>tr>td:first-child,.ui.celled.table>tbody>tr>th:first-child,.ui.celled.table>tfoot>tr>th:first-child,.ui.celled.table>thead>tr>th:first-child,.ui.celled.table>tr>td:first-child,.ui.celled.table>tr>th:first-child{border-left:none}.ui.padded.table>tbody>tr>th,.ui.padded.table>tfoot>tr>th,.ui.padded.table>thead>tr>th,.ui.padded.table>tr>th{padding-left:1em;padding-right:1em}.ui.padded.table>tbody>tr>td,.ui.padded.table>tbody>tr>th,.ui.padded.table>tfoot>tr>th,.ui.padded.table>thead>tr>th,.ui.padded.table>tr>td,.ui.padded.table>tr>th{padding:1em}.ui[class*="very padded"].table>tbody>tr>th,.ui[class*="very padded"].table>tfoot>tr>th,.ui[class*="very padded"].table>thead>tr>th,.ui[class*="very padded"].table>tr>th{padding-left:1.5em;padding-right:1.5em}.ui[class*="very padded"].table>tbody>tr>td,.ui[class*="very padded"].table>tr>td{padding:1.5em}.ui.compact.table>tbody>tr>th,.ui.compact.table>tfoot>tr>th,.ui.compact.table>thead>tr>th,.ui.compact.table>tr>th{padding-left:.7em;padding-right:.7em}.ui.compact.table>tbody>tr>td,.ui.compact.table>tr>td{padding:.5em .7em}.ui[class*="very compact"].table>tbody>tr>th,.ui[class*="very compact"].table>tfoot>tr>th,.ui[class*="very compact"].table>thead>tr>th,.ui[class*="very compact"].table>tr>th{padding-left:.6em;padding-right:.6em}.ui[class*="very compact"].table>tbody>tr>td,.ui[class*="very compact"].table>tr>td{padding:.4em .6em}.ui.small.table{font-size:.9em}.ui.table{font-size:1em}.ui.large.table{font-size:1.1em}
/*!
 * # Fomantic-UI - Ad
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Copyright 2013 Contributors
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.ad{display:block;margin:1em 0;overflow:hidden}.ui.ad:first-child,.ui.ad:last-child{margin:0}.ui.ad iframe{border:none;margin:0;overflow:hidden;padding:0}.ui.leaderboard.ad{height:90px;width:728px}.ui[class*="medium rectangle"].ad{height:250px;width:300px}.ui[class*="large rectangle"].ad{height:280px;width:336px}.ui[class*="half page"].ad{height:600px;width:300px}.ui.square.ad{height:250px;width:250px}.ui[class*="small square"].ad{height:200px;width:200px}.ui[class*="small rectangle"].ad{height:150px;width:180px}.ui[class*="vertical rectangle"].ad{height:400px;width:240px}.ui.button.ad{height:90px;width:120px}.ui[class*="square button"].ad{height:125px;width:125px}.ui[class*="small button"].ad{height:60px;width:120px}.ui.skyscraper.ad{height:600px;width:120px}.ui[class*="wide skyscraper"].ad{width:160px}.ui.banner.ad{height:60px;width:468px}.ui[class*="vertical banner"].ad{height:240px;width:120px}.ui[class*="top banner"].ad{height:180px;width:930px}.ui[class*="half banner"].ad{height:60px;width:234px}.ui[class*="large leaderboard"].ad{height:90px;width:970px}.ui.billboard.ad{height:250px;width:970px}.ui.panorama.ad{height:120px;width:980px}.ui.netboard.ad{height:400px;width:580px}.ui[class*="large mobile banner"].ad{height:100px;width:320px}.ui[class*="mobile leaderboard"].ad{height:50px;width:320px}.ui.mobile.ad{display:none}@media only screen and (max-width:767.98px){.ui.mobile.ad{display:block}}.ui.centered.ad{margin-left:auto;margin-right:auto}.ui.test.ad{background:#545454;position:relative}.ui.test.ad:after{color:#fff;content:"Ad";font-size:1em;font-weight:700;left:50%;position:absolute;text-align:center;top:50%;transform:translateX(-50%) translateY(-50%);width:100%}.ui.mobile.test.ad:after{font-size:.85714286em}.ui.test.ad[data-text]:after{content:attr(data-text)}
/*!
 * # Fomantic-UI - Card
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.card,.ui.cards>.card{word-wrap:break-word;background:#fff;border:none;border-radius:.28571429rem;box-shadow:0 1px 3px 0 #d4d4d5,0 0 0 1px #d4d4d5;display:flex;flex-direction:column;max-width:100%;min-height:0;padding:0;position:relative;transition:box-shadow .1s ease,transform .1s ease;width:290px;z-index:""}.ui.card{margin:1em 0}.ui.card a,.ui.cards>.card a{cursor:pointer}.ui.card:first-child{margin-top:0}.ui.card:last-child{margin-bottom:0}.ui.cards{display:flex;flex-wrap:wrap;margin:-.875em -.5em}.ui.cards>.card{display:flex;float:none;margin:.875em .5em}.ui.card:after,.ui.cards:after{clear:both;content:" ";display:block;height:0;overflow:hidden;visibility:hidden}.ui.cards~.ui.cards{margin-top:.875em}.ui.card>:first-child,.ui.cards>.card>:first-child{border-radius:.28571429rem .28571429rem 0 0!important;border-top:none!important}.ui.card>:last-child,.ui.cards>.card>:last-child{border-radius:0 0 .28571429rem .28571429rem!important}.ui.card>:only-child,.ui.cards>.card>:only-child{border-radius:.28571429rem!important}.ui.card>.image,.ui.cards>.card>.image{background:rgba(0,0,0,.05);display:block;flex:0 0 auto;padding:0;position:relative}.ui.card>.image>img,.ui.cards>.card>.image>img{border-radius:inherit;display:block;height:auto;width:100%}.ui.card>.image:not(.ui)>img,.ui.cards>.card>.image:not(.ui)>img{border:none}.ui.card>.content,.ui.cards>.card>.content{background:none;border:none;border-radius:0;border-top:1px solid rgba(34,36,38,.1);box-shadow:none;flex-grow:1;font-size:1em;margin:0;padding:1em}.ui.card>.content:after,.ui.cards>.card>.content:after{clear:both;content:" ";display:block;height:0;overflow:hidden;visibility:hidden}.ui.card>.content>.header,.ui.cards>.card>.content>.header{color:rgba(0,0,0,.85);display:block;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;margin:""}.ui.card>.content>.header:not(.ui),.ui.cards>.card>.content>.header:not(.ui){font-size:1.28571429em;font-weight:700;line-height:1.28571429em;margin-top:-.21425em}.ui.card>.content>.header+.description,.ui.card>.content>.meta+.description,.ui.cards>.card>.content>.header+.description,.ui.cards>.card>.content>.meta+.description{margin-top:.5em}.ui.card [class*="left floated"],.ui.cards>.card [class*="left floated"]{float:left}.ui.card [class*="right floated"],.ui.cards>.card [class*="right floated"]{float:right}.ui.card [class*="left aligned"],.ui.cards>.card [class*="left aligned"]{text-align:left}.ui.card [class*="center aligned"],.ui.cards>.card [class*="center aligned"]{text-align:center}.ui.card [class*="right aligned"],.ui.cards>.card [class*="right aligned"]{text-align:right}.ui.card .content img,.ui.cards>.card .content img{display:inline-block;vertical-align:middle;width:""}.ui.card .avatar img,.ui.card img.avatar,.ui.cards>.card .avatar img,.ui.cards>.card img.avatar{border-radius:500rem;height:2em;width:2em}.ui.card>.content>.description,.ui.cards>.card>.content>.description{clear:both;color:rgba(0,0,0,.68)}.ui.card>.content p,.ui.cards>.card>.content p{margin:0 0 .5em}.ui.card>.content p:last-child,.ui.cards>.card>.content p:last-child{margin-bottom:0}.ui.card .meta,.ui.cards>.card .meta{color:rgba(0,0,0,.4);font-size:1em}.ui.card .meta *,.ui.cards>.card .meta *{margin-right:.3em}.ui.card .meta :last-child,.ui.cards>.card .meta :last-child{margin-right:0}.ui.card .meta [class*="right floated"],.ui.cards>.card .meta [class*="right floated"]{margin-left:.3em;margin-right:0}.ui.card>.content a:not(.ui),.ui.cards>.card>.content a:not(.ui){color:"";transition:color .1s ease}.ui.card>.content a:not(.ui):hover,.ui.cards>.card>.content a:not(.ui):hover{color:""}.ui.card>.content>a.header,.ui.cards>.card>.content>a.header{color:rgba(0,0,0,.85)}.ui.card>.content>a.header:hover,.ui.cards>.card>.content>a.header:hover{color:#1e70bf}.ui.card .meta>a:not(.ui),.ui.cards>.card .meta>a:not(.ui){color:rgba(0,0,0,.4)}.ui.card .meta>a:not(.ui):hover,.ui.cards>.card .meta>a:not(.ui):hover{color:rgba(0,0,0,.87)}.ui.card>.button,.ui.card>.buttons,.ui.cards>.card>.button,.ui.cards>.card>.buttons{margin:0 -1px;width:calc(100% + 2px)}.ui.card>.button:last-child,.ui.card>.buttons:last-child,.ui.cards>.card>.button:last-child,.ui.cards>.card>.buttons:last-child{margin-bottom:-1px}.ui.card .dimmer,.ui.cards>.card .dimmer{background-color:"";z-index:10}.ui.card>.content .star.icon,.ui.cards>.card>.content .star.icon{cursor:pointer;opacity:.75;transition:color .1s ease}.ui.card>.content .star.icon:hover,.ui.cards>.card>.content .star.icon:hover{color:#ffb70a;opacity:1}.ui.card>.content .active.star.icon,.ui.cards>.card>.content .active.star.icon{color:#ffe623}.ui.card>.content .like.icon,.ui.cards>.card>.content .like.icon{cursor:pointer;opacity:.75;transition:color .1s ease}.ui.card>.content .like.icon:hover,.ui.cards>.card>.content .like.icon:hover{color:#ff2733;opacity:1}.ui.card>.content .active.like.icon,.ui.cards>.card>.content .active.like.icon{color:#ff2733}.ui.card>.extra,.ui.cards>.card>.extra{background:none;border-top:1px solid rgba(0,0,0,.05)!important;box-shadow:none;color:rgba(0,0,0,.4);flex-grow:0;left:0;margin:0;max-width:100%;min-height:0!important;padding:.75em 1em;position:static;top:0;transition:color .1s ease;width:auto}.ui.card>.extra a:not(.ui),.ui.cards>.card>.extra a:not(.ui){color:rgba(0,0,0,.4)}.ui.card>.extra a:not(.ui):hover,.ui.cards>.card>.extra a:not(.ui):hover{color:#1e70bf}.ui.card.horizontal,.ui.horizontal.cards>.card{flex-direction:row;flex-wrap:wrap;max-width:100%;min-width:400px;width:400px}.ui.card.horizontal>.image,.ui.horizontal.cards>.card>.image{border-radius:.28571429rem 0 0 .28571429rem;width:150px}.ui.card.horizontal>.image>img,.ui.horizontal.cards>.card>.image>img{align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:.28571429rem 0 0 .28571429rem;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;height:100%;justify-content:center;width:100%}.ui.horizontal.card>.content,.ui.horizontal.cards>.card>.content{flex-basis:1px}.ui.horizontal.card>.extra,.ui.horizontal.cards>.card>.extra{flex-basis:100%}.ui.raised.card,.ui.raised.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.link.cards .raised.card:hover,.ui.link.raised.card:hover,.ui.raised.cards a.card:hover,a.ui.raised.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 4px 0 rgba(34,36,38,.15),0 2px 10px 0 rgba(34,36,38,.25)}.ui.centered.cards{justify-content:center}.ui.centered.card{margin-left:auto;margin-right:auto}.ui.fluid.card{max-width:9999px;width:100%}.ui.cards a.card,.ui.link.card,.ui.link.cards .card,a.ui.card{transform:none}.ui.cards a.card:hover,.ui.link.card:hover,.ui.link.cards .card:not(.icon):hover,a.ui.card:hover{background:#fff;border:none;box-shadow:0 1px 3px 0 #bcbdbd,0 0 0 1px #d4d4d5;cursor:pointer;transform:translateY(-3px);z-index:5}.ui.cards>.primary.card,.ui.primary.card,.ui.primary.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #2185d0,0 1px 3px 0 #d4d4d5}.ui.cards>.primary.card:hover,.ui.primary.card:hover,.ui.primary.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #1678c2,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.primary.card,.ui.inverted.primary.card,.ui.inverted.primary.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #54c8ff,0 0 0 1px #555}.ui.inverted.cards>.primary.card:hover,.ui.inverted.primary.card:hover,.ui.inverted.primary.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #21b8ff,0 0 0 1px #555}.ui.cards>.secondary.card,.ui.secondary.card,.ui.secondary.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #1b1c1d,0 1px 3px 0 #d4d4d5}.ui.cards>.secondary.card:hover,.ui.secondary.card:hover,.ui.secondary.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #27292a,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.secondary.card,.ui.inverted.secondary.card,.ui.inverted.secondary.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #545454,0 0 0 1px #555}.ui.inverted.cards>.secondary.card:hover,.ui.inverted.secondary.card:hover,.ui.inverted.secondary.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #6e6e6e,0 0 0 1px #555}.ui.cards>.red.card,.ui.red.card,.ui.red.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #db2828,0 1px 3px 0 #d4d4d5}.ui.cards>.red.card:hover,.ui.red.card:hover,.ui.red.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #d01919,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.red.card,.ui.inverted.red.card,.ui.inverted.red.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #ff695e,0 0 0 1px #555}.ui.inverted.cards>.red.card:hover,.ui.inverted.red.card:hover,.ui.inverted.red.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #ff392b,0 0 0 1px #555}.ui.cards>.orange.card,.ui.orange.card,.ui.orange.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #f2711c,0 1px 3px 0 #d4d4d5}.ui.cards>.orange.card:hover,.ui.orange.card:hover,.ui.orange.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #f26202,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.orange.card,.ui.inverted.orange.card,.ui.inverted.orange.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #ff851b,0 0 0 1px #555}.ui.inverted.cards>.orange.card:hover,.ui.inverted.orange.card:hover,.ui.inverted.orange.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #e76b00,0 0 0 1px #555}.ui.cards>.yellow.card,.ui.yellow.card,.ui.yellow.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #fbbd08,0 1px 3px 0 #d4d4d5}.ui.cards>.yellow.card:hover,.ui.yellow.card:hover,.ui.yellow.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #eaae00,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.yellow.card,.ui.inverted.yellow.card,.ui.inverted.yellow.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #ffe21f,0 0 0 1px #555}.ui.inverted.cards>.yellow.card:hover,.ui.inverted.yellow.card:hover,.ui.inverted.yellow.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #ebcd00,0 0 0 1px #555}.ui.cards>.olive.card,.ui.olive.card,.ui.olive.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #b5cc18,0 1px 3px 0 #d4d4d5}.ui.cards>.olive.card:hover,.ui.olive.card:hover,.ui.olive.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a7bd0d,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.olive.card,.ui.inverted.olive.card,.ui.inverted.olive.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #d9e778,0 0 0 1px #555}.ui.inverted.cards>.olive.card:hover,.ui.inverted.olive.card:hover,.ui.inverted.olive.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #d2e745,0 0 0 1px #555}.ui.cards>.green.card,.ui.green.card,.ui.green.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #21ba45,0 1px 3px 0 #d4d4d5}.ui.cards>.green.card:hover,.ui.green.card:hover,.ui.green.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #16ab39,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.green.card,.ui.inverted.green.card,.ui.inverted.green.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #2ecc40,0 0 0 1px #555}.ui.inverted.cards>.green.card:hover,.ui.inverted.green.card:hover,.ui.inverted.green.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #1ea92e,0 0 0 1px #555}.ui.cards>.teal.card,.ui.teal.card,.ui.teal.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #00b5ad,0 1px 3px 0 #d4d4d5}.ui.cards>.teal.card:hover,.ui.teal.card:hover,.ui.teal.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #009c95,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.teal.card,.ui.inverted.teal.card,.ui.inverted.teal.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #6dffff,0 0 0 1px #555}.ui.inverted.cards>.teal.card:hover,.ui.inverted.teal.card:hover,.ui.inverted.teal.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #3affff,0 0 0 1px #555}.ui.blue.card,.ui.blue.cards>.card,.ui.cards>.blue.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #2185d0,0 1px 3px 0 #d4d4d5}.ui.blue.card:hover,.ui.blue.cards>.card:hover,.ui.cards>.blue.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #1678c2,0 1px 3px 0 #bcbdbd}.ui.inverted.blue.card,.ui.inverted.blue.cards>.card,.ui.inverted.cards>.blue.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #54c8ff,0 0 0 1px #555}.ui.inverted.blue.card:hover,.ui.inverted.blue.cards>.card:hover,.ui.inverted.cards>.blue.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #21b8ff,0 0 0 1px #555}.ui.cards>.violet.card,.ui.violet.card,.ui.violet.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #6435c9,0 1px 3px 0 #d4d4d5}.ui.cards>.violet.card:hover,.ui.violet.card:hover,.ui.violet.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #5829bb,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.violet.card,.ui.inverted.violet.card,.ui.inverted.violet.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #a291fb,0 0 0 1px #555}.ui.inverted.cards>.violet.card:hover,.ui.inverted.violet.card:hover,.ui.inverted.violet.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #745aff,0 0 0 1px #555}.ui.cards>.purple.card,.ui.purple.card,.ui.purple.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a333c8,0 1px 3px 0 #d4d4d5}.ui.cards>.purple.card:hover,.ui.purple.card:hover,.ui.purple.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #9627ba,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.purple.card,.ui.inverted.purple.card,.ui.inverted.purple.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #dc73ff,0 0 0 1px #555}.ui.inverted.cards>.purple.card:hover,.ui.inverted.purple.card:hover,.ui.inverted.purple.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #cf40ff,0 0 0 1px #555}.ui.cards>.pink.card,.ui.pink.card,.ui.pink.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #e03997,0 1px 3px 0 #d4d4d5}.ui.cards>.pink.card:hover,.ui.pink.card:hover,.ui.pink.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #e61a8d,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.pink.card,.ui.inverted.pink.card,.ui.inverted.pink.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #ff8edf,0 0 0 1px #555}.ui.inverted.cards>.pink.card:hover,.ui.inverted.pink.card:hover,.ui.inverted.pink.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #ff5bd1,0 0 0 1px #555}.ui.brown.card,.ui.brown.cards>.card,.ui.cards>.brown.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a5673f,0 1px 3px 0 #d4d4d5}.ui.brown.card:hover,.ui.brown.cards>.card:hover,.ui.cards>.brown.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #975b33,0 1px 3px 0 #bcbdbd}.ui.inverted.brown.card,.ui.inverted.brown.cards>.card,.ui.inverted.cards>.brown.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #d67c1c,0 0 0 1px #555}.ui.inverted.brown.card:hover,.ui.inverted.brown.cards>.card:hover,.ui.inverted.cards>.brown.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #b0620f,0 0 0 1px #555}.ui.cards>.grey.card,.ui.grey.card,.ui.grey.cards>.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #767676,0 1px 3px 0 #d4d4d5}.ui.cards>.grey.card:hover,.ui.grey.card:hover,.ui.grey.cards>.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #838383,0 1px 3px 0 #bcbdbd}.ui.inverted.cards>.grey.card,.ui.inverted.grey.card,.ui.inverted.grey.cards>.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #dcddde,0 0 0 1px #555}.ui.inverted.cards>.grey.card:hover,.ui.inverted.grey.card:hover,.ui.inverted.grey.cards>.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #c2c4c5,0 0 0 1px #555}.ui.black.card,.ui.black.cards>.card,.ui.cards>.black.card{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #1b1c1d,0 1px 3px 0 #d4d4d5}.ui.black.card:hover,.ui.black.cards>.card:hover,.ui.cards>.black.card:hover{box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #27292a,0 1px 3px 0 #bcbdbd}.ui.inverted.black.card,.ui.inverted.black.cards>.card,.ui.inverted.cards>.black.card{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #545454,0 0 0 1px #555}.ui.inverted.black.card:hover,.ui.inverted.black.cards>.card:hover,.ui.inverted.cards>.black.card:hover{box-shadow:0 1px 3px 0 #555,0 2px 0 0 #000,0 0 0 1px #555}.ui.one.cards{margin-left:0;margin-right:0}.ui.one.cards>.card{width:100%}.ui.two.cards{margin-left:-1em;margin-right:-1em}.ui.two.cards>.card{margin-left:1em;margin-right:1em;width:calc(50% - 2em)}.ui.three.cards{margin-left:-1em;margin-right:-1em}.ui.three.cards>.card{margin-left:1em;margin-right:1em;width:calc(33.33333% - 2em)}.ui.four.cards{margin-left:-.75em;margin-right:-.75em}.ui.four.cards>.card{margin-left:.75em;margin-right:.75em;width:calc(25% - 1.5em)}.ui.five.cards{margin-left:-.75em;margin-right:-.75em}.ui.five.cards>.card{margin-left:.75em;margin-right:.75em;width:calc(20% - 1.5em)}.ui.six.cards{margin-left:-.75em;margin-right:-.75em}.ui.six.cards>.card{margin-left:.75em;margin-right:.75em;width:calc(16.66667% - 1.5em)}.ui.seven.cards{margin-left:-.5em;margin-right:-.5em}.ui.seven.cards>.card{margin-left:.5em;margin-right:.5em;width:calc(14.28571% - 1em)}.ui.eight.cards{margin-left:-.5em;margin-right:-.5em}.ui.eight.cards>.card{font-size:11px;margin-left:.5em;margin-right:.5em;width:calc(12.5% - 1em)}.ui.nine.cards{margin-left:-.5em;margin-right:-.5em}.ui.nine.cards>.card{font-size:10px;margin-left:.5em;margin-right:.5em;width:calc(11.11111% - 1em)}.ui.ten.cards{margin-left:-.5em;margin-right:-.5em}.ui.ten.cards>.card{margin-left:.5em;margin-right:.5em;width:calc(10% - 1em)}@media only screen and (max-width:767.98px){.ui.two.doubling.cards{margin-left:0;margin-right:0}.ui.two.doubling.cards>.card{margin-left:0;margin-right:0;width:100%}.ui.three.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.three.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(50% - 2em)}.ui.four.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.four.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(50% - 2em)}.ui.five.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.five.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(50% - 2em)}.ui.six.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.six.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(50% - 2em)}.ui.seven.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.seven.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(33.33333% - 2em)}.ui.eight.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.eight.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(33.33333% - 2em)}.ui.nine.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.nine.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(33.33333% - 2em)}.ui.ten.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.ten.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(33.33333% - 2em)}}@media only screen and (min-width:768px) and (max-width:991.98px){.ui.two.doubling.cards{margin-left:0;margin-right:0}.ui.two.doubling.cards>.card{margin-left:0;margin-right:0;width:100%}.ui.three.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.three.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(50% - 2em)}.ui.four.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.four.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(50% - 2em)}.ui.five.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.five.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(33.33333% - 2em)}.ui.six.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.six.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(33.33333% - 2em)}.ui.eight.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.eight.doubling.cards>.card{margin-left:1em;margin-right:1em;width:calc(33.33333% - 2em)}.ui.eight.doubling.cards{margin-left:-.75em;margin-right:-.75em}.ui.eight.doubling.cards>.card{margin-left:.75em;margin-right:.75em;width:calc(25% - 1.5em)}.ui.nine.doubling.cards{margin-left:-.75em;margin-right:-.75em}.ui.nine.doubling.cards>.card{margin-left:.75em;margin-right:.75em;width:calc(25% - 1.5em)}.ui.ten.doubling.cards{margin-left:-.75em;margin-right:-.75em}.ui.ten.doubling.cards>.card{margin-left:.75em;margin-right:.75em;width:calc(20% - 1.5em)}}@media only screen and (max-width:767.98px){.ui.stackable.cards{display:block!important}.ui.stackable.cards .card:first-child{margin-top:0!important}.ui.stackable.cards>.card{display:block!important;height:auto!important;margin:1em;padding:0!important;width:calc(100% - 2em)!important}}.ui.cards>.card{font-size:1em}.ui.inverted.card,.ui.inverted.cards>.card{background:#1b1c1d;box-shadow:0 1px 3px 0 #555,0 0 0 1px #555}.ui.inverted.card>.content,.ui.inverted.cards>.card>.content{border-top:1px solid hsla(0,0%,100%,.15)}.ui.inverted.card>.content>.header,.ui.inverted.cards>.card>.content>.header{color:hsla(0,0%,100%,.9)}.ui.inverted.card>.content>.description,.ui.inverted.cards>.card>.content>.description{color:hsla(0,0%,100%,.8)}.ui.inverted.card .meta,.ui.inverted.card .meta>a:not(.ui),.ui.inverted.cards>.card .meta,.ui.inverted.cards>.card .meta>a:not(.ui){color:hsla(0,0%,100%,.7)}.ui.inverted.card .meta>a:not(.ui):hover,.ui.inverted.cards>.card .meta>a:not(.ui):hover{color:#fff}.ui.inverted.card>.extra,.ui.inverted.cards>.card>.extra{border-top:1px solid hsla(0,0%,100%,.15)!important;color:hsla(0,0%,100%,.7)}.ui.inverted.card>.extra a:not(.ui),.ui.inverted.cards>.card>.extra a:not(.ui){color:hsla(0,0%,100%,.5)}.ui.inverted.card>.extra a:not(.ui):hover,.ui.inverted.cards>.card>.extra a:not(.ui):hover{color:#1e70bf}.ui.inverted.cards a.card:hover,.ui.inverted.link.card:hover,.ui.inverted.link.cards .card:not(.icon):hover,a.inverted.ui.card:hover{background:#1b1c1d}
/*!
 * # Fomantic-UI - Comment
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.comments{margin:1.5em 0;max-width:650px}.ui.comments:first-child{margin-top:0}.ui.comments:last-child{margin-bottom:0}.ui.comments .comment{background:none;border:none;line-height:1.2;margin:.5em 0 0;padding:.5em 0 0;position:relative}.ui.comments .comment:first-child{margin-top:0;padding-top:0}.ui.comments .comment>.comments{margin:0 0 .5em .5em;padding:1em 0 1em 1em}.ui.comments .comment>.comments:before{left:0;position:absolute;top:0}.ui.comments .comment>.comments .comment{background:none;border:none}.ui.comments .comment .avatar{display:block;float:left;height:auto;margin:.2em 0 0;width:2.5em}.ui.comments .comment .avatar img,.ui.comments .comment img.avatar{border-radius:.25rem;display:block;height:100%;margin:0 auto;width:100%}.ui.comments .comment>.content{display:block}.ui.comments .comment>.avatar~.content{margin-left:3.5em}.ui.comments .comment .author{color:rgba(0,0,0,.87);font-size:1em;font-weight:700}.ui.comments .comment a.author{cursor:pointer}.ui.comments .comment a.author:hover{color:#1e70bf}.ui.comments .comment .metadata{color:rgba(0,0,0,.4);display:inline-block;font-size:.875em;margin-left:.5em}.ui.comments .comment .metadata>*{display:inline-block;margin:0 .5em 0 0}.ui.comments .comment .metadata>:last-child{margin-right:0}.ui.comments .comment .text{word-wrap:break-word;color:rgba(0,0,0,.87);font-size:1em;line-height:1.3;margin:.25em 0 .5em}.ui.comments .comment .actions{font-size:.875em}.ui.comments .comment .actions a{color:rgba(0,0,0,.4);cursor:pointer;display:inline-block;margin:0 .75em 0 0}.ui.comments .comment .actions a:last-child{margin-right:0}.ui.comments .comment .actions a.active,.ui.comments .comment .actions a:hover{color:rgba(0,0,0,.8)}.ui.comments>.reply.form{margin-top:1em}.ui.comments .comment .reply.form{margin-top:1em;width:100%}.ui.comments .reply.form textarea{font-size:1em;height:12em}.ui.collapsed.comments,.ui.comments .collapsed.comment,.ui.comments .collapsed.comments{display:none}.ui.threaded.comments .comment>.comments{box-shadow:-1px 0 0 rgba(34,36,38,.15);margin:-1.5em 0 -1em 1.25em;padding:3em 0 2em 2.25em}.ui.minimal.comments .comment .actions{left:auto;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease;transition-delay:.1s}.ui.minimal.comments .comment>.content:hover>.actions{opacity:1}.ui.mini.comments{font-size:.78571429rem}.ui.tiny.comments{font-size:.85714286rem}.ui.small.comments{font-size:.92857143rem}.ui.comments{font-size:1rem}.ui.large.comments{font-size:1.14285714rem}.ui.big.comments{font-size:1.28571429rem}.ui.huge.comments{font-size:1.42857143rem}.ui.massive.comments{font-size:1.71428571rem}.ui.inverted.comments .comment{background-color:#1b1c1d}.ui.inverted.comments .comment .author,.ui.inverted.comments .comment .text{color:hsla(0,0%,100%,.9)}.ui.inverted.comments .comment .actions a,.ui.inverted.comments .comment .metadata{color:hsla(0,0%,100%,.7)}.ui.inverted.comments .comment .actions a.active,.ui.inverted.comments .comment .actions a:hover,.ui.inverted.comments .comment a.author:hover{color:#fff}.ui.inverted.threaded.comments .comment>.comments{box-shadow:-1px 0 0 #555}
/*!
 * # Fomantic-UI - Feed
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.feed{margin:1em 0}.ui.feed:first-child{margin-top:0}.ui.feed:last-child{margin-bottom:0}.ui.feed>.event{background:none;border-top:none;display:flex;flex-direction:row;margin:0;padding:.21428571rem 0;width:100%}.ui.feed>.event:first-child{border-top:0;padding-top:0}.ui.feed>.event:last-child{padding-bottom:0}.ui.feed>.event>.label{align-self:stretch;display:block;flex:0 0 auto;height:auto;text-align:left;width:2.5em}.ui.feed>.event>.label .icon{background:none;border:none;border-radius:none;color:rgba(0,0,0,.6);font-size:1.5em;opacity:1;padding:.25em;width:100%}.ui.feed>.event>.label img{border-radius:500rem;height:auto;width:100%}.ui.feed>.event>.label+.content{margin:.5em 0 .35714286em 1.14285714em}.ui.feed>.event>.content{word-wrap:break-word;align-self:stretch;display:block;flex:1 1 auto;text-align:left}.ui.feed>.event:last-child>.content{padding-bottom:0}.ui.feed>.event>.content a{cursor:pointer}.ui.feed>.event>.content .date{color:rgba(0,0,0,.4);font-size:1em;font-style:normal;font-weight:400;margin:-.5rem 0 0;padding:0}.ui.feed>.event>.content .summary{color:rgba(0,0,0,.87);font-size:1em;font-weight:700;margin:0}.ui.feed>.event>.content .summary img{border-radius:.25em;display:inline-block;height:10em;margin:-.25em .25em 0 0;vertical-align:middle;width:auto}.ui.feed>.event>.content .user{display:inline-block;font-weight:700;margin-right:0;vertical-align:baseline}.ui.feed>.event>.content .user img{height:10em;margin:-.25em .25em 0 0;vertical-align:middle;width:auto}.ui.feed>.event>.content .summary>.date{color:rgba(0,0,0,.4);display:inline-block;float:none;font-size:.85714286em;font-style:normal;font-weight:400;margin:0 0 0 .5em;padding:0}.ui.feed>.event>.content .extra{background:none;color:rgba(0,0,0,.87);margin:.5em 0 0;padding:0}.ui.feed>.event>.content .extra.images img{display:inline-block;margin:0 .25em 0 0;width:6em}.ui.feed>.event>.content .extra.text{border-left:none;font-size:1em;line-height:1.4285em;max-width:500px;padding:0}.ui.feed>.event>.content .meta{background:none;border:none;border-radius:0;box-shadow:none;color:rgba(0,0,0,.6);display:inline-block;font-size:.85714286em;margin:.5em 0 0;padding:0}.ui.feed>.event>.content .meta>*{margin-left:.75em;position:relative}.ui.feed>.event>.content .meta>:after{color:rgba(0,0,0,.2);content:"";left:-1em;opacity:1;position:absolute;top:0;vertical-align:top}.ui.feed>.event>.content .meta .like{color:"";transition:color .2s ease}.ui.feed>.event>.content .meta .like:hover .icon{color:#ff2733}.ui.feed>.event>.content .meta .active.like .icon{color:#ef404a}.ui.feed>.event>.content .meta>:first-child{margin-left:0}.ui.feed>.event>.content .meta>:first-child:after{display:none}.ui.feed>.event>.content .meta a,.ui.feed>.event>.content .meta>.icon{color:rgba(0,0,0,.5);cursor:pointer;opacity:1;transition:color .1s ease}.ui.feed>.event>.content .meta a:hover,.ui.feed>.event>.content .meta a:hover .icon,.ui.feed>.event>.content .meta>.icon:hover{color:rgba(0,0,0,.95)}.ui.small.feed{font-size:.92857143rem}.ui.feed{font-size:1rem}.ui.large.feed{font-size:1.14285714rem}.ui.inverted.feed>.event{background:#1b1c1d}.ui.inverted.feed>.event>.content .date,.ui.inverted.feed>.event>.content .meta .like{color:hsla(0,0%,100%,.7)}.ui.inverted.feed>.event>.content .extra.text,.ui.inverted.feed>.event>.content .summary{color:hsla(0,0%,100%,.9)}.ui.inverted.feed>.event>.content .meta .like:hover{color:#fff}
/*!
 * # Fomantic-UI - Item
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.items>.item{background:transparent;border:none;border-radius:0;box-shadow:none;display:flex;margin:1em 0;min-height:0;padding:0;transition:box-shadow .1s ease;width:100%;z-index:""}.ui.items>.item a{cursor:pointer}.ui.items{margin:1.5em 0}.ui.items:first-child{margin-top:0!important}.ui.items:last-child{margin-bottom:0!important}.ui.items>.item:after{clear:both;content:" ";display:block;height:0;overflow:hidden;visibility:hidden}.ui.items>.item:first-child{margin-top:0}.ui.items>.item:last-child{margin-bottom:0}.ui.items>.item>.image{align-self:start;display:block;flex:0 0 auto;float:none;margin:0;max-height:"";padding:0;position:relative}.ui.items>.item>.image>img{border:none;border-radius:.125rem;display:block;height:auto;width:100%}.ui.items>.item>.image:only-child>img{border-radius:0}.ui.items>.item>.content{background:none;border:none;border-radius:0;box-shadow:none;color:rgba(0,0,0,.87);display:block;flex:1 1 auto;font-size:1em;margin:0;padding:0}.ui.items>.item>.content:after{clear:both;content:" ";display:block;height:0;overflow:hidden;visibility:hidden}.ui.items>.item>.image+.content{align-self:start;display:block;margin-left:0;min-width:0;padding-left:1.5em;width:auto}.ui.items>.item>.content>.header{color:rgba(0,0,0,.85);display:inline-block;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-weight:700;margin:-.21425em 0 0}.ui.items>.item>.content>.header:not(.ui){font-size:1.28571429em}.ui.items>.item [class*="left floated"]{float:left}.ui.items>.item [class*="right floated"]{float:right}.ui.items>.item .content img{align-self:center;width:""}.ui.items>.item .avatar img,.ui.items>.item img.avatar{border-radius:500rem;height:"";width:""}.ui.items>.item>.content>.description{color:rgba(0,0,0,.87);font-size:1em;line-height:1.4285em;margin-top:.6em;max-width:auto}.ui.items>.item>.content p{margin:0 0 .5em}.ui.items>.item>.content p:last-child{margin-bottom:0}.ui.items>.item .meta{color:rgba(0,0,0,.6);font-size:1em;line-height:1em;margin:.5em 0}.ui.items>.item .meta *{margin-right:.3em}.ui.items>.item .meta :last-child{margin-right:0}.ui.items>.item .meta [class*="right floated"]{margin-left:.3em;margin-right:0}.ui.items>.item>.content a:not(.ui){color:"";transition:color .1s ease}.ui.items>.item>.content a:not(.ui):hover{color:""}.ui.items>.item>.content>a.header{color:rgba(0,0,0,.85)}.ui.items>.item>.content>a.header:hover{color:#1e70bf}.ui.items>.item .meta>a:not(.ui){color:rgba(0,0,0,.4)}.ui.items>.item .meta>a:not(.ui):hover{color:rgba(0,0,0,.87)}.ui.items>.item>.content .favorite.icon{cursor:pointer;opacity:.75;transition:color .1s ease}.ui.items>.item>.content .favorite.icon:hover{color:#ffb70a;opacity:1}.ui.items>.item>.content .active.favorite.icon{color:#ffe623}.ui.items>.item>.content .like.icon{cursor:pointer;opacity:.75;transition:color .1s ease}.ui.items>.item>.content .like.icon:hover{color:#ff2733;opacity:1}.ui.items>.item>.content .active.like.icon{color:#ff2733}.ui.items>.item .extra{background:none;border-top:none;box-shadow:none;color:rgba(0,0,0,.4);display:block;left:0;margin:.5rem 0 0;padding:0;position:relative;top:0;transition:color .1s ease;width:100%}.ui.items>.item .extra>*{margin:.25rem .5rem .25rem 0}.ui.items>.item .extra>[class*="right floated"]{margin:.25rem 0 .25rem .5rem}.ui.items>.item .extra:after{clear:both;content:" ";display:block;height:0;overflow:hidden;visibility:hidden}.ui.items>.item>.image:not(.ui){width:175px}@media only screen and (min-width:768px) and (max-width:991.98px){.ui.items>.item{margin:1em 0}.ui.items>.item>.image:not(.ui){width:150px}.ui.items>.item>.image+.content{display:block;padding:0 0 0 1em}}@media only screen and (max-width:767.98px){.ui.items:not(.unstackable)>.item{flex-direction:column;margin:2em 0}.ui.items:not(.unstackable)>.item>.image{display:block;margin-left:auto;margin-right:auto}.ui.items:not(.unstackable)>.item>.image,.ui.items:not(.unstackable)>.item>.image>img{max-height:250px!important;max-width:100%!important;width:auto!important}.ui.items:not(.unstackable)>.item>.image+.content{display:block;padding:1.5em 0 0}}.ui.items>.item>.image+[class*="top aligned"].content{align-self:flex-start}.ui.items>.item>.image+[class*="middle aligned"].content{align-self:center}.ui.items>.item>.image+[class*="bottom aligned"].content{align-self:flex-end}.ui.relaxed.items>.item{margin:1.5em 0}.ui[class*="very relaxed"].items>.item{margin:2em 0}.ui.divided.items>.item{border-top:1px solid rgba(34,36,38,.15);margin:0;padding:1em 0}.ui.divided.items>.item:first-child{border-top:none;margin-top:0!important;padding-top:0!important}.ui.divided.items>.item:last-child{margin-bottom:0!important;padding-bottom:0!important}.ui.relaxed.divided.items>.item{margin:0;padding:1.5em 0}.ui[class*="very relaxed"].divided.items>.item{margin:0;padding:2em 0}.ui.items a.item:hover,.ui.link.items>.item:hover{cursor:pointer}.ui.items a.item:hover .content .header,.ui.link.items>.item:hover .content .header{color:#1e70bf}.ui.items>.item{font-size:1em}@media only screen and (max-width:767.98px){.ui.unstackable.items>.item>.image,.ui.unstackable.items>.item>.image>img{width:125px!important}}.ui.inverted.items>.item{background:transparent}.ui.inverted.items>.item>.content{background:none;color:hsla(0,0%,100%,.9)}.ui.inverted.items>.item .extra{background:none}.ui.inverted.items>.item>.content>.description,.ui.inverted.items>.item>.content>.header{color:hsla(0,0%,100%,.9)}.ui.inverted.items>.item .meta{color:hsla(0,0%,100%,.8)}.ui.inverted.items>.item>.content a:not(.ui){color:#57a4ef}.ui.inverted.items>.item>.content a:not(.ui):hover{color:#4183c4}.ui.inverted.items>.item>.content>a.header{color:hsla(0,0%,100%,.9)}.ui.inverted.items>.item>.content>a.header:hover{color:#fff}.ui.inverted.items>.item .meta>a:not(.ui){color:hsla(0,0%,100%,.7)}.ui.inverted.items>.item .meta>a:not(.ui):hover{color:hsla(0,0%,100%,.9)}.ui.inverted.items>.item>.content .favorite.icon:hover{color:#ffc63d}.ui.inverted.items>.item>.content .active.favorite.icon{color:#ffec56}.ui.inverted.items>.item>.content .active.like.icon,.ui.inverted.items>.item>.content .like.icon:hover{color:#ff5a63}.ui.inverted.items>.item .extra{color:hsla(0,0%,100%,.7)}.ui.inverted.items a.item:hover .content .header,.ui.inverted.link.items>.item:hover .content .header{color:#fff}.ui.inverted.divided.items>.item{border-top:1px solid hsla(0,0%,100%,.1)}.ui.inverted.divided.items>.item:first-child{border-top:none}
/*!
 * # Fomantic-UI - Statistic
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.statistic{display:inline-flex;flex-direction:column;margin:1em 0;max-width:none}.ui.statistic+.ui.statistic{margin:0 0 0 1.5em}.ui.statistic:first-child{margin-top:0}.ui.statistic:last-child{margin-bottom:0}.ui.statistics{align-items:flex-start;flex-wrap:wrap}.ui.statistics>.statistic{display:inline-flex;flex:0 1 auto;flex-direction:column;margin:0 1.5em 1em;max-width:none}.ui.statistics{display:flex;margin:1em -1.5em -1em}.ui.statistics:after{clear:both;content:" ";display:block;height:0;overflow:hidden;visibility:hidden}.ui.statistics:first-child{margin-top:0}.ui.statistic>.value,.ui.statistics .statistic>.value{color:#1b1c1d;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:4rem;font-weight:400;line-height:1em;text-align:center;text-transform:uppercase}.ui.statistic>.label,.ui.statistics .statistic>.label{color:rgba(0,0,0,.87);font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1em;font-weight:700;text-align:center;text-transform:uppercase}.ui.statistic>.label~.value,.ui.statistic>.value~.label,.ui.statistics .statistic>.label~.value,.ui.statistics .statistic>.value~.label{margin-top:0}.ui.statistic>.value .icon,.ui.statistics .statistic>.value .icon{margin:0;opacity:1;width:auto}.ui.statistic>.text.value,.ui.statistics .statistic>.text.value{font-weight:700;line-height:1em;min-height:2em;text-align:center}.ui.statistic>.text.value+.label,.ui.statistics .statistic>.text.value+.label{text-align:center}.ui.statistic>.value img,.ui.statistics .statistic>.value img{max-height:3rem;vertical-align:baseline}.ui.ten.statistics{margin:0 0 -1em}.ui.ten.statistics .statistic{margin:0 0 1em;min-width:10%}.ui.nine.statistics{margin:0 0 -1em}.ui.nine.statistics .statistic{margin:0 0 1em;min-width:11.11111111%}.ui.eight.statistics{margin:0 0 -1em}.ui.eight.statistics .statistic{margin:0 0 1em;min-width:12.5%}.ui.seven.statistics{margin:0 0 -1em}.ui.seven.statistics .statistic{margin:0 0 1em;min-width:14.28571429%}.ui.six.statistics{margin:0 0 -1em}.ui.six.statistics .statistic{margin:0 0 1em;min-width:16.66666667%}.ui.five.statistics{margin:0 0 -1em}.ui.five.statistics .statistic{margin:0 0 1em;min-width:20%}.ui.four.statistics{margin:0 0 -1em}.ui.four.statistics .statistic{margin:0 0 1em;min-width:25%}.ui.three.statistics{margin:0 0 -1em}.ui.three.statistics .statistic{margin:0 0 1em;min-width:33.33333333%}.ui.two.statistics{margin:0 0 -1em}.ui.two.statistics .statistic{margin:0 0 1em;min-width:50%}.ui.one.statistics{margin:0 0 -1em}.ui.one.statistics .statistic{margin:0 0 1em;min-width:100%}.ui.horizontal.statistic{align-items:center;flex-direction:row}.ui.horizontal.statistics{flex-direction:column;margin:0;max-width:none}.ui.horizontal.statistics .statistic{align-items:center;flex-direction:row;margin:1em 0;max-width:none}.ui.horizontal.statistic>.text.value,.ui.horizontal.statistics>.statistic>.text.value{min-height:0!important}.ui.horizontal.statistic>.value .icon,.ui.horizontal.statistics .statistic>.value .icon{width:1.18em}.ui.horizontal.statistic>.value,.ui.horizontal.statistics .statistic>.value{display:inline-block;vertical-align:middle}.ui.horizontal.statistic>.label,.ui.horizontal.statistics .statistic>.label{display:inline-block;margin:0 0 0 .75em;vertical-align:middle}.ui.inverted.statistic .value,.ui.inverted.statistics .statistic>.value{color:#fff}.ui.inverted.statistic .label,.ui.inverted.statistics .statistic>.label{color:hsla(0,0%,100%,.9)}.ui.primary.statistic>.value,.ui.primary.statistics .statistic>.value,.ui.statistics .primary.statistic>.value{color:#2185d0}.ui.inverted.primary.statistic>.value,.ui.inverted.primary.statistics .statistic>.value,.ui.statistics .inverted.primary.statistic>.value{color:#54c8ff}.ui.secondary.statistic>.value,.ui.secondary.statistics .statistic>.value,.ui.statistics .secondary.statistic>.value{color:#1b1c1d}.ui.inverted.secondary.statistic>.value,.ui.inverted.secondary.statistics .statistic>.value,.ui.statistics .inverted.secondary.statistic>.value{color:#545454}.ui.red.statistic>.value,.ui.red.statistics .statistic>.value,.ui.statistics .red.statistic>.value{color:#db2828}.ui.inverted.red.statistic>.value,.ui.inverted.red.statistics .statistic>.value,.ui.statistics .inverted.red.statistic>.value{color:#ff695e}.ui.orange.statistic>.value,.ui.orange.statistics .statistic>.value,.ui.statistics .orange.statistic>.value{color:#f2711c}.ui.inverted.orange.statistic>.value,.ui.inverted.orange.statistics .statistic>.value,.ui.statistics .inverted.orange.statistic>.value{color:#ff851b}.ui.statistics .yellow.statistic>.value,.ui.yellow.statistic>.value,.ui.yellow.statistics .statistic>.value{color:#fbbd08}.ui.inverted.yellow.statistic>.value,.ui.inverted.yellow.statistics .statistic>.value,.ui.statistics .inverted.yellow.statistic>.value{color:#ffe21f}.ui.olive.statistic>.value,.ui.olive.statistics .statistic>.value,.ui.statistics .olive.statistic>.value{color:#b5cc18}.ui.inverted.olive.statistic>.value,.ui.inverted.olive.statistics .statistic>.value,.ui.statistics .inverted.olive.statistic>.value{color:#d9e778}.ui.green.statistic>.value,.ui.green.statistics .statistic>.value,.ui.statistics .green.statistic>.value{color:#21ba45}.ui.inverted.green.statistic>.value,.ui.inverted.green.statistics .statistic>.value,.ui.statistics .inverted.green.statistic>.value{color:#2ecc40}.ui.statistics .teal.statistic>.value,.ui.teal.statistic>.value,.ui.teal.statistics .statistic>.value{color:#00b5ad}.ui.inverted.teal.statistic>.value,.ui.inverted.teal.statistics .statistic>.value,.ui.statistics .inverted.teal.statistic>.value{color:#6dffff}.ui.blue.statistic>.value,.ui.blue.statistics .statistic>.value,.ui.statistics .blue.statistic>.value{color:#2185d0}.ui.inverted.blue.statistic>.value,.ui.inverted.blue.statistics .statistic>.value,.ui.statistics .inverted.blue.statistic>.value{color:#54c8ff}.ui.statistics .violet.statistic>.value,.ui.violet.statistic>.value,.ui.violet.statistics .statistic>.value{color:#6435c9}.ui.inverted.violet.statistic>.value,.ui.inverted.violet.statistics .statistic>.value,.ui.statistics .inverted.violet.statistic>.value{color:#a291fb}.ui.purple.statistic>.value,.ui.purple.statistics .statistic>.value,.ui.statistics .purple.statistic>.value{color:#a333c8}.ui.inverted.purple.statistic>.value,.ui.inverted.purple.statistics .statistic>.value,.ui.statistics .inverted.purple.statistic>.value{color:#dc73ff}.ui.pink.statistic>.value,.ui.pink.statistics .statistic>.value,.ui.statistics .pink.statistic>.value{color:#e03997}.ui.inverted.pink.statistic>.value,.ui.inverted.pink.statistics .statistic>.value,.ui.statistics .inverted.pink.statistic>.value{color:#ff8edf}.ui.brown.statistic>.value,.ui.brown.statistics .statistic>.value,.ui.statistics .brown.statistic>.value{color:#a5673f}.ui.inverted.brown.statistic>.value,.ui.inverted.brown.statistics .statistic>.value,.ui.statistics .inverted.brown.statistic>.value{color:#d67c1c}.ui.grey.statistic>.value,.ui.grey.statistics .statistic>.value,.ui.statistics .grey.statistic>.value{color:#767676}.ui.inverted.grey.statistic>.value,.ui.inverted.grey.statistics .statistic>.value,.ui.statistics .inverted.grey.statistic>.value{color:#dcddde}.ui.black.statistic>.value,.ui.black.statistics .statistic>.value,.ui.statistics .black.statistic>.value{color:#1b1c1d}.ui.inverted.black.statistic>.value,.ui.inverted.black.statistics .statistic>.value,.ui.statistics .inverted.black.statistic>.value{color:#545454}.ui[class*="left floated"].statistic{float:left;margin:0 2em 1em 0}.ui[class*="right floated"].statistic{float:right;margin:0 0 1em 2em}.ui.floated.statistic:last-child{margin-bottom:0}@media only screen and (max-width:767.98px){.ui.stackable.statistics{margin-left:0!important;margin-right:0!important;width:auto}.ui.stackable.statistics>.statistic{margin:0!important;padding:1rem!important;width:100%!important}}.ui.mini.horizontal.statistic>.value,.ui.mini.horizontal.statistics .statistic>.value,.ui.mini.statistic>.value,.ui.mini.statistics .statistic>.value{font-size:1.5rem!important}.ui.mini.statistic>.text.value,.ui.mini.statistics .statistic>.text.value{font-size:1rem!important}.ui.tiny.horizontal.statistic>.value,.ui.tiny.horizontal.statistics .statistic>.value,.ui.tiny.statistic>.value,.ui.tiny.statistics .statistic>.value{font-size:2rem!important}.ui.tiny.statistic>.text.value,.ui.tiny.statistics .statistic>.text.value{font-size:1rem!important}.ui.small.statistic>.value,.ui.small.statistics .statistic>.value{font-size:3rem!important}.ui.small.horizontal.statistic>.value,.ui.small.horizontal.statistics .statistic>.value{font-size:2rem!important}.ui.small.statistic>.text.value,.ui.small.statistics .statistic>.text.value{font-size:1rem!important}.ui.statistic>.value,.ui.statistics .statistic>.value{font-size:4rem!important}.ui.horizontal.statistic>.value,.ui.horizontal.statistics .statistic>.value{font-size:3rem!important}.ui.statistic>.text.value,.ui.statistics .statistic>.text.value{font-size:2rem!important}.ui.large.statistic>.value,.ui.large.statistics .statistic>.value{font-size:5rem!important}.ui.large.horizontal.statistic>.value,.ui.large.horizontal.statistics .statistic>.value{font-size:4rem!important}.ui.large.statistic>.text.value,.ui.large.statistics .statistic>.text.value{font-size:2.5rem!important}.ui.huge.statistic>.value,.ui.huge.statistics .statistic>.value{font-size:6rem!important}.ui.huge.horizontal.statistic>.value,.ui.huge.horizontal.statistics .statistic>.value{font-size:5rem!important}.ui.huge.statistic>.text.value,.ui.huge.statistics .statistic>.text.value{font-size:2.5rem!important}
/*!
 * # Fomantic-UI - Accordion
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.accordion,.ui.accordion .accordion{max-width:100%}.ui.accordion .accordion{margin:1em 0 0;padding:0}.ui.accordion .accordion .title,.ui.accordion .title{cursor:pointer}.ui.accordion .title:not(.ui){color:rgba(0,0,0,.87);font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1em;padding:.5em 0}.ui.accordion:not(.styled) .accordion .title~.content:not(.ui),.ui.accordion:not(.styled) .title~.content:not(.ui){margin:"";padding:.5em 0 1em}.ui.accordion:not(.styled) .title~.content:not(.ui):last-child{padding-bottom:0}.ui.accordion .accordion .title .dropdown.icon,.ui.accordion .title .dropdown.icon{display:inline-block;float:none;font-size:1em;height:1em;margin:0 .25rem 0 0;opacity:1;padding:0;transform:none;transition:transform .1s ease,opacity .1s ease;vertical-align:baseline;width:1.25em}.ui.accordion.menu .item .title{display:block;padding:0}.ui.accordion.menu .item .title>.dropdown.icon{float:right;margin:.21425em 0 0 1em;transform:rotate(180deg)}.ui.accordion .ui.header .dropdown.icon{font-size:1em;margin:0 .25rem 0 0}.ui.accordion .accordion .active.title .dropdown.icon,.ui.accordion .active.title .dropdown.icon,.ui.accordion.menu .item .active.title>.dropdown.icon{transform:rotate(90deg)}.ui.styled.accordion{width:600px}.ui.styled.accordion,.ui.styled.accordion .accordion{background:#fff;border-radius:.28571429rem;box-shadow:0 1px 2px 0 rgba(34,36,38,.15),0 0 0 1px rgba(34,36,38,.15)}.ui.styled.accordion .accordion .title,.ui.styled.accordion .title{border-top:1px solid rgba(34,36,38,.15);color:rgba(0,0,0,.4);font-weight:700;margin:0;padding:.75em 1em;transition:background .1s ease,color .1s ease}.ui.styled.accordion .accordion .title:first-child,.ui.styled.accordion>.title:first-child{border-top:none}.ui.styled.accordion .accordion .content,.ui.styled.accordion .content{margin:0;padding:.5em 1em 1.5em}.ui.styled.accordion .accordion .active.title,.ui.styled.accordion .accordion .title:hover,.ui.styled.accordion .active.title,.ui.styled.accordion .title:hover{background:transparent;color:rgba(0,0,0,.87)}.ui.styled.accordion .accordion .active.title,.ui.styled.accordion .active.title{background:transparent;color:rgba(0,0,0,.95)}.ui.accordion .accordion .title~.content:not(.active),.ui.accordion .title~.content:not(.active){display:none}.ui.fluid.accordion,.ui.fluid.accordion .accordion{width:100%}.ui.inverted.accordion .title:not(.ui){color:hsla(0,0%,100%,.9)}@font-face{font-family:Accordion;font-style:normal;font-weight:400;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjB5AAAAC8AAAAYGNtYXAPfOIKAAABHAAAAExnYXNwAAAAEAAAAWgAAAAIZ2x5Zryj6HgAAAFwAAAAyGhlYWT/0IhHAAACOAAAADZoaGVhApkB5wAAAnAAAAAkaG10eAJuABIAAAKUAAAAGGxvY2EAjABWAAACrAAAAA5tYXhwAAgAFgAAArwAAAAgbmFtZfC1n04AAALcAAABPHBvc3QAAwAAAAAEGAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQASAEkAtwFuABMAADc0PwE2FzYXFh0BFAcGJwYvASY1EgaABQgHBQYGBQcIBYAG2wcGfwcBAQcECf8IBAcBAQd/BgYAAAAAAQAAAEkApQFuABMAADcRNDc2MzIfARYVFA8BBiMiJyY1AAUGBwgFgAYGgAUIBwYFWwEACAUGBoAFCAcFgAYGBQcAAAABAAAAAQAAqWYls18PPPUACwIAAAAAAM/9o+4AAAAAz/2j7gAAAAAAtwFuAAAACAACAAAAAAAAAAEAAAHg/+AAAAIAAAAAAAC3AAEAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAQAAAAC3ABIAtwAAAAAAAAAKABQAHgBCAGQAAAABAAAABgAUAAEAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format("truetype"),url(data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAASwAAoAAAAABGgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAS0AAAEtFpovuE9TLzIAAAIkAAAAYAAAAGAIIweQY21hcAAAAoQAAABMAAAATA984gpnYXNwAAAC0AAAAAgAAAAIAAAAEGhlYWQAAALYAAAANgAAADb/0IhHaGhlYQAAAxAAAAAkAAAAJAKZAedobXR4AAADNAAAABgAAAAYAm4AEm1heHAAAANMAAAABgAAAAYABlAAbmFtZQAAA1QAAAE8AAABPPC1n05wb3N0AAAEkAAAACAAAAAgAAMAAAEABAQAAQEBB3JhdGluZwABAgABADr4HAL4GwP4GAQeCgAZU/+Lix4KABlT/4uLDAeLa/iU+HQFHQAAAHkPHQAAAH4RHQAAAAkdAAABJBIABwEBBw0PERQZHnJhdGluZ3JhdGluZ3UwdTF1MjB1RjBEOXVGMERBAAACAYkABAAGAQEEBwoNVp38lA78lA78lA77lA773Z33bxWLkI2Qj44I9xT3FAWOj5CNkIuQi4+JjoePiI2Gi4YIi/uUBYuGiYeHiIiHh4mGi4aLho2Ijwj7FPcUBYeOiY+LkAgO+92L5hWL95QFi5CNkI6Oj4+PjZCLkIuQiY6HCPcU+xQFj4iNhouGi4aJh4eICPsU+xQFiIeGiYaLhouHjYePiI6Jj4uQCA74lBT4lBWLDAoAAAAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAEAADfYOJZfDzz1AAsCAAAAAADP/aPuAAAAAM/9o+4AAAAAALcBbgAAAAgAAgAAAAAAAAABAAAB4P/gAAACAAAAAAAAtwABAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAEAAAAAtwASALcAAAAAUAAABgAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format("woff")}.ui.accordion .accordion .title .dropdown.icon,.ui.accordion .title .dropdown.icon{backface-visibility:hidden;font-family:Accordion;font-style:normal;font-weight:400;line-height:1;text-align:center}.ui.accordion .accordion .title .dropdown.icon:before,.ui.accordion .title .dropdown.icon:before{content:"\f0da"}
/*!
 * # Fomantic-UI - Calendar
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.calendar .ui.popup{border:none;max-width:none;padding:0;user-select:none}.ui.calendar .calendar:focus{outline:0}.ui.calendar .ui.popup .ui.grid{display:block;white-space:nowrap}.ui.calendar .ui.popup .ui.grid>.column{width:auto}.ui.calendar .ui.table.minute,.ui.calendar .ui.table.month,.ui.calendar .ui.table.year{min-width:15em}.ui.calendar .ui.table.day{min-width:18em}.ui.calendar .ui.table.day.andweek{min-width:22em}.ui.calendar .ui.table.hour{min-width:20em}.ui.calendar .ui.table tr td,.ui.calendar .ui.table tr th{padding:.5em;white-space:nowrap}.ui.calendar .ui.table tr th{border-left:none}.ui.calendar .ui.table tr th .icon{margin:0}.ui.calendar .ui.table tr:first-child th{padding-left:0;padding-right:0;position:relative}.ui.calendar .ui.table.day tr:first-child th{border:none}.ui.calendar .ui.table.day tr:nth-child(2) th{padding-bottom:.3em;padding-top:.2em}.ui.calendar .ui.table tr td{padding-left:.1em;padding-right:.1em}.ui.calendar .ui.table tr .link{cursor:pointer}.ui.calendar .ui.table tr .prev.link{left:0;position:absolute;width:14.28571429%}.ui.calendar .ui.table tr .next.link{position:absolute;right:0;width:14.28571429%}.ui.calendar .ui.table tr .disabled{color:rgba(40,40,40,.3);cursor:default;pointer-events:auto}.ui.calendar .ui.table tr .adjacent:not(.disabled){background:rgba(0,0,0,.03);color:rgba(0,0,0,.6)}.ui.calendar .ui.table tr td.today{font-weight:700}.ui.calendar .ui.table tr td.range{background:rgba(0,0,0,.05);box-shadow:none;color:rgba(0,0,0,.95)}.ui.calendar .ui.table.inverted tr td.range{background:hsla(0,0%,100%,.08);box-shadow:none;color:#fff}.ui.calendar:not(.disabled) .calendar.active .ui.table tbody tr td.focus,.ui.calendar:not(.disabled) .calendar.active .ui.table.inverted tbody tr td.focus,.ui.calendar:not(.disabled) .calendar:focus .ui.table tbody tr td.focus,.ui.calendar:not(.disabled) .calendar:focus .ui.table.inverted tbody tr td.focus{box-shadow:inset 0 0 0 1px #85b7d9}.ui.disabled.calendar{opacity:.45}.ui.disabled.calendar .ui.table tr .link,.ui.disabled.calendar>.input{pointer-events:none}
/*!
 * # Fomantic-UI - Checkbox
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.checkbox{backface-visibility:hidden;display:inline-block;font-size:1em;font-style:normal;line-height:17px;min-height:17px;min-width:17px;outline:none;position:relative;vertical-align:baseline}.ui.checkbox input[type=checkbox],.ui.checkbox input[type=radio]{cursor:pointer;height:17px;left:0;opacity:0!important;outline:none;position:absolute;top:0;width:17px;z-index:3}.ui.checkbox .box,.ui.checkbox label{cursor:auto;display:block;font-size:1em;outline:none;padding-left:1.85714em;position:relative}.ui.checkbox .box:before,.ui.checkbox label:before{background:#fff;border:1px solid #d4d4d5;border-radius:.21428571rem;content:""}.ui.checkbox .box:after,.ui.checkbox .box:before,.ui.checkbox label:after,.ui.checkbox label:before{height:17px;left:0;position:absolute;top:0;transition:border .1s ease,opacity .1s ease,transform .1s ease,box-shadow .1s ease;width:17px}.ui.checkbox .box:after,.ui.checkbox label:after{color:rgba(0,0,0,.87);font-size:14px;opacity:0;text-align:center}.ui.checkbox label,.ui.checkbox+label{color:rgba(0,0,0,.87);transition:color .1s ease}.ui.checkbox+label{vertical-align:middle}.ui.checkbox .box:hover:before,.ui.checkbox label:hover:before{background:#fff;border-color:rgba(34,36,38,.35)}.ui.checkbox label:hover,.ui.checkbox+label:hover{color:rgba(0,0,0,.8)}.ui.checkbox .box:active:before,.ui.checkbox label:active:before{background:#f9fafb;border-color:rgba(34,36,38,.35)}.ui.checkbox .box:active:after,.ui.checkbox input:active~label,.ui.checkbox label:active:after{color:rgba(0,0,0,.95)}.ui.checkbox input:focus~.box:before,.ui.checkbox input:focus~label:before{background:#fff;border-color:#96c8da}.ui.checkbox input:focus~.box:after,.ui.checkbox input:focus~label,.ui.checkbox input:focus~label:after{color:rgba(0,0,0,.95)}.ui.checkbox input:checked~.box:before,.ui.checkbox input:checked~label:before{background:#fff;border-color:rgba(34,36,38,.35)}.ui.checkbox input:checked~.box:after,.ui.checkbox input:checked~label:after{color:rgba(0,0,0,.95);opacity:1}.ui.checkbox input:not([type=radio]):indeterminate~.box:before,.ui.checkbox input:not([type=radio]):indeterminate~label:before{background:#fff;border-color:rgba(34,36,38,.35)}.ui.checkbox input:not([type=radio]):indeterminate~.box:after,.ui.checkbox input:not([type=radio]):indeterminate~label:after{color:rgba(0,0,0,.95);opacity:1}.ui.indeterminate.toggle.checkbox input:not([type=radio]):indeterminate~label:before{background:rgba(0,0,0,.15)}.ui.indeterminate.toggle.checkbox input:not([type=radio])~label:after{left:1.075rem}.ui.checkbox input:checked:focus~.box:before,.ui.checkbox input:checked:focus~label:before,.ui.checkbox input:not([type=radio]):indeterminate:focus~.box:before,.ui.checkbox input:not([type=radio]):indeterminate:focus~label:before{background:#fff;border-color:#96c8da}.ui.checkbox input:checked:focus~.box:after,.ui.checkbox input:checked:focus~label:after,.ui.checkbox input:not([type=radio]):indeterminate:focus~.box:after,.ui.checkbox input:not([type=radio]):indeterminate:focus~label:after{color:rgba(0,0,0,.95)}.ui.read-only.checkbox,.ui.read-only.checkbox label{cursor:default}.ui.checkbox input[disabled]~.box:after,.ui.checkbox input[disabled]~label,.ui.disabled.checkbox .box:after,.ui.disabled.checkbox label{color:#000;cursor:default!important;opacity:.5}.ui.checkbox input.hidden{z-index:-1}.ui.checkbox input.hidden+label{cursor:pointer;user-select:none}.ui.radio.checkbox{min-height:15px}.ui.radio.checkbox .box,.ui.radio.checkbox label{padding-left:1.85714em}.ui.radio.checkbox .box:before,.ui.radio.checkbox label:before{border-radius:500rem;content:"";height:15px;left:0;top:1px;transform:none;width:15px}.ui.radio.checkbox .box:after,.ui.radio.checkbox label:after{background-color:rgba(0,0,0,.87);border:none;border-radius:500rem;content:""!important;height:15px;left:0;line-height:15px;top:1px;transform:scale(.46666667);width:15px}.ui.radio.checkbox input:focus~.box:before,.ui.radio.checkbox input:focus~label:before{background-color:#fff}.ui.radio.checkbox input:focus~.box:after,.ui.radio.checkbox input:focus~label:after{background-color:rgba(0,0,0,.95)}.ui.radio.checkbox input:indeterminate~.box:after,.ui.radio.checkbox input:indeterminate~label:after{opacity:0}.ui.radio.checkbox input:checked~.box:before,.ui.radio.checkbox input:checked~label:before{background-color:#fff}.ui.radio.checkbox input:checked~.box:after,.ui.radio.checkbox input:checked~label:after{background-color:rgba(0,0,0,.95)}.ui.radio.checkbox input:focus:checked~.box:before,.ui.radio.checkbox input:focus:checked~label:before{background-color:#fff}.ui.radio.checkbox input:focus:checked~.box:after,.ui.radio.checkbox input:focus:checked~label:after{background-color:rgba(0,0,0,.95)}.ui.slider.checkbox{min-height:1.25rem}.ui.slider.checkbox input{height:1.25rem;width:3.5rem}.ui.slider.checkbox .box,.ui.slider.checkbox label{color:rgba(0,0,0,.4);line-height:1rem;padding-left:4.5rem}.ui.slider.checkbox .box:before,.ui.slider.checkbox label:before{background-color:rgba(0,0,0,.05);border:none!important;border-radius:500rem;content:"";display:block;height:.21428571rem;left:0;position:absolute;top:.4rem;transform:none;transition:background .3s ease;width:3.5rem;z-index:1}.ui.slider.checkbox .box:after,.ui.slider.checkbox label:after{background:#fff linear-gradient(transparent,rgba(0,0,0,.05));border:none;border-radius:500rem;box-shadow:0 1px 2px 0 rgba(34,36,38,.15),inset 0 0 0 1px rgba(34,36,38,.15);content:""!important;height:1.5rem;left:0;opacity:1;position:absolute;top:-.25rem;transform:none;transition:left .3s ease;width:1.5rem;z-index:2}.ui.slider.checkbox input:focus~.box:before,.ui.slider.checkbox input:focus~label:before{background-color:rgba(0,0,0,.15);border:none}.ui.slider.checkbox .box:hover,.ui.slider.checkbox label:hover{color:rgba(0,0,0,.8)}.ui.slider.checkbox .box:hover:before,.ui.slider.checkbox label:hover:before{background:rgba(0,0,0,.15)}.ui.slider.checkbox input:checked~.box,.ui.slider.checkbox input:checked~label{color:rgba(0,0,0,.95)!important}.ui.slider.checkbox input:checked~.box:before,.ui.slider.checkbox input:checked~label:before{background-color:#545454!important}.ui.slider.checkbox input:checked~.box:after,.ui.slider.checkbox input:checked~label:after{left:2rem}.ui.slider.checkbox input:focus:checked~.box,.ui.slider.checkbox input:focus:checked~label{color:rgba(0,0,0,.95)!important}.ui.slider.checkbox input:focus:checked~.box:before,.ui.slider.checkbox input:focus:checked~label:before{background-color:#000!important}.ui.toggle.checkbox{min-height:1.5rem}.ui.toggle.checkbox input{height:1.5rem;width:3.5rem}.ui.toggle.checkbox .box,.ui.toggle.checkbox label{color:rgba(0,0,0,.87);min-height:1.5rem;padding-left:4.5rem}.ui.toggle.checkbox label{padding-top:.15em}.ui.toggle.checkbox .box:before,.ui.toggle.checkbox label:before{background:rgba(0,0,0,.05);border:none;border-radius:500rem;box-shadow:none;content:"";display:block;height:1.5rem;position:absolute;top:0;transform:none;width:3.5rem;z-index:1}.ui.toggle.checkbox .box:after,.ui.toggle.checkbox label:after{background:#fff linear-gradient(transparent,rgba(0,0,0,.05));border:none;border-radius:500rem;box-shadow:0 1px 2px 0 rgba(34,36,38,.15),inset 0 0 0 1px rgba(34,36,38,.15);content:""!important;height:1.5rem;left:0;opacity:1;position:absolute;top:0;transition:background .3s ease,left .3s ease;width:1.5rem;z-index:2}.ui.toggle.checkbox input~.box:after,.ui.toggle.checkbox input~label:after{box-shadow:0 1px 2px 0 rgba(34,36,38,.15),inset 0 0 0 1px rgba(34,36,38,.15);left:-.05rem}.ui.toggle.checkbox .box:hover:before,.ui.toggle.checkbox input:focus~.box:before,.ui.toggle.checkbox input:focus~label:before,.ui.toggle.checkbox label:hover:before{background-color:rgba(0,0,0,.15);border:none}.ui.toggle.checkbox input:checked~.box,.ui.toggle.checkbox input:checked~label{color:rgba(0,0,0,.95)!important}.ui.toggle.checkbox input:checked~.box:before,.ui.toggle.checkbox input:checked~label:before{background-color:#2185d0!important}.ui.toggle.checkbox input:checked~.box:after,.ui.toggle.checkbox input:checked~label:after{box-shadow:0 1px 2px 0 rgba(34,36,38,.15),inset 0 0 0 1px rgba(34,36,38,.15);left:2.15rem}.ui.toggle.checkbox input:focus:checked~.box,.ui.toggle.checkbox input:focus:checked~label{color:rgba(0,0,0,.95)!important}.ui.toggle.checkbox input:focus:checked~.box:before,.ui.toggle.checkbox input:focus:checked~label:before{background-color:#0d71bb!important}.ui.fitted.checkbox .box,.ui.fitted.checkbox label{padding-left:0!important}.ui.fitted.slider.checkbox,.ui.fitted.toggle.checkbox{width:3.5rem}.ui.inverted.checkbox label,.ui.inverted.checkbox+label{color:hsla(0,0%,100%,.9)!important}.ui.inverted.checkbox .box:hover,.ui.inverted.checkbox label:hover{color:#fff!important}.ui.inverted.checkbox .box:hover:before,.ui.inverted.checkbox label:hover:before{border-color:rgba(34,36,38,.5)}.ui.inverted.slider.checkbox .box,.ui.inverted.slider.checkbox label{color:hsla(0,0%,100%,.5)}.ui.inverted.slider.checkbox .box:before,.ui.inverted.slider.checkbox label:before{background-color:hsla(0,0%,100%,.5)!important}.ui.inverted.slider.checkbox .box:hover:before,.ui.inverted.slider.checkbox label:hover:before{background:hsla(0,0%,100%,.7)!important}.ui.inverted.slider.checkbox input:checked~.box,.ui.inverted.slider.checkbox input:checked~label{color:#fff!important}.ui.inverted.slider.checkbox input:checked~.box:before,.ui.inverted.slider.checkbox input:checked~label:before{background-color:hsla(0,0%,100%,.8)!important}.ui.inverted.slider.checkbox input:focus:checked~.box,.ui.inverted.slider.checkbox input:focus:checked~label{color:#fff!important}.ui.inverted.slider.checkbox input:focus:checked~.box:before,.ui.inverted.slider.checkbox input:focus:checked~label:before{background-color:hsla(0,0%,100%,.8)!important}.ui.inverted.toggle.checkbox .box:before,.ui.inverted.toggle.checkbox label:before{background-color:hsla(0,0%,100%,.9)!important}.ui.inverted.toggle.checkbox .box:hover:before,.ui.inverted.toggle.checkbox label:hover:before{background:#fff!important}.ui.inverted.toggle.checkbox input:checked~.box,.ui.inverted.toggle.checkbox input:checked~label{color:#fff!important}.ui.inverted.toggle.checkbox input:checked~.box:before,.ui.inverted.toggle.checkbox input:checked~label:before{background-color:#2185d0!important}.ui.inverted.toggle.checkbox input:focus:checked~.box,.ui.inverted.toggle.checkbox input:focus:checked~label{color:#fff!important}.ui.inverted.toggle.checkbox input:focus:checked~.box:before,.ui.inverted.toggle.checkbox input:focus:checked~label:before{background-color:#0d71bb!important}.ui.mini.checkbox{font-size:.78571429em}.ui.tiny.checkbox{font-size:.85714286em}.ui.small.checkbox{font-size:.92857143em}.ui.large.checkbox{font-size:1.14285714em}.ui.large.checkbox.radio .box:before,.ui.large.checkbox.radio label:before,.ui.large.checkbox:not(.slider):not(.toggle):not(.radio) .box:after,.ui.large.checkbox:not(.slider):not(.toggle):not(.radio) .box:before,.ui.large.checkbox:not(.slider):not(.toggle):not(.radio) label:after,.ui.large.checkbox:not(.slider):not(.toggle):not(.radio) label:before,.ui.large.form .checkbox.radio .box:before,.ui.large.form .checkbox.radio label:before,.ui.large.form .checkbox:not(.slider):not(.toggle):not(.radio) .box:after,.ui.large.form .checkbox:not(.slider):not(.toggle):not(.radio) .box:before,.ui.large.form .checkbox:not(.slider):not(.toggle):not(.radio) label:after,.ui.large.form .checkbox:not(.slider):not(.toggle):not(.radio) label:before{transform:scale(1.14285714);transform-origin:left}.ui.large.checkbox.radio .box:after,.ui.large.checkbox.radio label:after,.ui.large.form .checkbox.radio .box:after,.ui.large.form .checkbox.radio label:after{left:.33571429em;transform:scale(.57142857);transform-origin:left}.ui.big.checkbox{font-size:1.28571429em}.ui.big.checkbox.radio .box:before,.ui.big.checkbox.radio label:before,.ui.big.checkbox:not(.slider):not(.toggle):not(.radio) .box:after,.ui.big.checkbox:not(.slider):not(.toggle):not(.radio) .box:before,.ui.big.checkbox:not(.slider):not(.toggle):not(.radio) label:after,.ui.big.checkbox:not(.slider):not(.toggle):not(.radio) label:before,.ui.big.form .checkbox.radio .box:before,.ui.big.form .checkbox.radio label:before,.ui.big.form .checkbox:not(.slider):not(.toggle):not(.radio) .box:after,.ui.big.form .checkbox:not(.slider):not(.toggle):not(.radio) .box:before,.ui.big.form .checkbox:not(.slider):not(.toggle):not(.radio) label:after,.ui.big.form .checkbox:not(.slider):not(.toggle):not(.radio) label:before{transform:scale(1.28571429);transform-origin:left}.ui.big.checkbox.radio .box:after,.ui.big.checkbox.radio label:after,.ui.big.form .checkbox.radio .box:after,.ui.big.form .checkbox.radio label:after{left:.37142857em;transform:scale(.64285714);transform-origin:left}.ui.huge.checkbox{font-size:1.42857143em}.ui.huge.checkbox.radio .box:before,.ui.huge.checkbox.radio label:before,.ui.huge.checkbox:not(.slider):not(.toggle):not(.radio) .box:after,.ui.huge.checkbox:not(.slider):not(.toggle):not(.radio) .box:before,.ui.huge.checkbox:not(.slider):not(.toggle):not(.radio) label:after,.ui.huge.checkbox:not(.slider):not(.toggle):not(.radio) label:before,.ui.huge.form .checkbox.radio .box:before,.ui.huge.form .checkbox.radio label:before,.ui.huge.form .checkbox:not(.slider):not(.toggle):not(.radio) .box:after,.ui.huge.form .checkbox:not(.slider):not(.toggle):not(.radio) .box:before,.ui.huge.form .checkbox:not(.slider):not(.toggle):not(.radio) label:after,.ui.huge.form .checkbox:not(.slider):not(.toggle):not(.radio) label:before{transform:scale(1.42857143);transform-origin:left}.ui.huge.checkbox.radio .box:after,.ui.huge.checkbox.radio label:after,.ui.huge.form .checkbox.radio .box:after,.ui.huge.form .checkbox.radio label:after{left:.40714286em;transform:scale(.71428571);transform-origin:left}.ui.massive.checkbox{font-size:1.71428571em}.ui.massive.checkbox.radio .box:before,.ui.massive.checkbox.radio label:before,.ui.massive.checkbox:not(.slider):not(.toggle):not(.radio) .box:after,.ui.massive.checkbox:not(.slider):not(.toggle):not(.radio) .box:before,.ui.massive.checkbox:not(.slider):not(.toggle):not(.radio) label:after,.ui.massive.checkbox:not(.slider):not(.toggle):not(.radio) label:before,.ui.massive.form .checkbox.radio .box:before,.ui.massive.form .checkbox.radio label:before,.ui.massive.form .checkbox:not(.slider):not(.toggle):not(.radio) .box:after,.ui.massive.form .checkbox:not(.slider):not(.toggle):not(.radio) .box:before,.ui.massive.form .checkbox:not(.slider):not(.toggle):not(.radio) label:after,.ui.massive.form .checkbox:not(.slider):not(.toggle):not(.radio) label:before{transform:scale(1.71428571);transform-origin:left}.ui.massive.checkbox.radio .box:after,.ui.massive.checkbox.radio label:after,.ui.massive.form .checkbox.radio .box:after,.ui.massive.form .checkbox.radio label:after{left:.47857143em;transform:scale(.85714286);transform-origin:left}@font-face{font-family:Checkbox;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBD8AAAC8AAAAYGNtYXAYVtCJAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5Zn4huwUAAAF4AAABYGhlYWQGPe1ZAAAC2AAAADZoaGVhB30DyAAAAxAAAAAkaG10eBBKAEUAAAM0AAAAHGxvY2EAmgESAAADUAAAABBtYXhwAAkALwAAA2AAAAAgbmFtZSC8IugAAAOAAAABknBvc3QAAwAAAAAFFAAAACAAAwMTAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADoAgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6AL//f//AAAAAAAg6AD//f//AAH/4xgEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAEUAUQO7AvgAGgAAARQHAQYjIicBJjU0PwE2MzIfAQE2MzIfARYVA7sQ/hQQFhcQ/uMQEE4QFxcQqAF2EBcXEE4QAnMWEP4UEBABHRAXFhBOEBCoAXcQEE4QFwAAAAABAAABbgMlAkkAFAAAARUUBwYjISInJj0BNDc2MyEyFxYVAyUQEBf9SRcQEBAQFwK3FxAQAhJtFxAQEBAXbRcQEBAQFwAAAAABAAAASQMlA24ALAAAARUUBwYrARUUBwYrASInJj0BIyInJj0BNDc2OwE1NDc2OwEyFxYdATMyFxYVAyUQEBfuEBAXbhYQEO4XEBAQEBfuEBAWbhcQEO4XEBACEm0XEBDuFxAQEBAX7hAQF20XEBDuFxAQEBAX7hAQFwAAAQAAAAIAAHRSzT9fDzz1AAsEAAAAAADRsdR3AAAAANGx1HcAAAAAA7sDbgAAAAgAAgAAAAAAAAABAAADwP/AAAAEAAAAAAADuwABAAAAAAAAAAAAAAAAAAAABwQAAAAAAAAAAAAAAAIAAAAEAABFAyUAAAMlAAAAAAAAAAoAFAAeAE4AcgCwAAEAAAAHAC0AAQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAIAAAAAQAAAAAAAgAHAGkAAQAAAAAAAwAIADkAAQAAAAAABAAIAH4AAQAAAAAABQALABgAAQAAAAAABgAIAFEAAQAAAAAACgAaAJYAAwABBAkAAQAQAAgAAwABBAkAAgAOAHAAAwABBAkAAwAQAEEAAwABBAkABAAQAIYAAwABBAkABQAWACMAAwABBAkABgAQAFkAAwABBAkACgA0ALBDaGVja2JveABDAGgAZQBjAGsAYgBvAHhWZXJzaW9uIDIuMABWAGUAcgBzAGkAbwBuACAAMgAuADBDaGVja2JveABDAGgAZQBjAGsAYgBvAHhDaGVja2JveABDAGgAZQBjAGsAYgBvAHhSZWd1bGFyAFIAZQBnAHUAbABhAHJDaGVja2JveABDAGgAZQBjAGsAYgBvAHhGb250IGdlbmVyYXRlZCBieSBJY29Nb29uLgBGAG8AbgB0ACAAZwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABJAGMAbwBNAG8AbwBuAC4AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format("truetype")}.ui.checkbox .box:after,.ui.checkbox label:after{font-family:Checkbox}.ui.checkbox input:checked~.box:after,.ui.checkbox input:checked~label:after{content:"\e800"}.ui.checkbox input:indeterminate~.box:after,.ui.checkbox input:indeterminate~label:after{content:"\e801";font-size:12px}
/*!
 * # Fomantic-UI - Dimmer
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.dimmable:not(body){position:relative}.ui.dimmer{align-items:center;animation-duration:.5s;animation-fill-mode:both;background-color:rgba(0,0,0,.85);display:none;flex-direction:column;height:100%;justify-content:center;left:0!important;line-height:1;opacity:0;padding:1em;position:absolute;text-align:center;top:0!important;transition:background-color .5s linear;user-select:none;vertical-align:middle;width:100%;will-change:opacity;z-index:1000}.ui.dimmer>.content{color:#fff;user-select:text}.ui.segment>.ui.dimmer{border-radius:inherit!important}.ui.dimmer:not(.inverted)::-webkit-scrollbar-track{background:hsla(0,0%,100%,.1)}.ui.dimmer:not(.inverted)::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.25)}.ui.dimmer:not(.inverted)::-webkit-scrollbar-thumb:window-inactive{background:hsla(0,0%,100%,.15)}.ui.dimmer:not(.inverted)::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.35)}.animating.dimmable:not(body),.dimmed.dimmable:not(body){overflow:hidden}.dimmed.dimmable>.ui.animating.dimmer,.dimmed.dimmable>.ui.visible.dimmer,.ui.active.dimmer{display:flex;opacity:1}.ui.disabled.dimmer{height:0!important;width:0!important}.dimmed.dimmable>.ui.animating.legacy.dimmer,.dimmed.dimmable>.ui.visible.legacy.dimmer,.ui.active.legacy.dimmer{display:block}.ui[class*="top aligned"].dimmer{justify-content:flex-start}.ui[class*="bottom aligned"].dimmer{justify-content:flex-end}.ui.page.dimmer{perspective:2000px;position:fixed;transform-origin:center center;transform-style:""}body.animating.in.dimmable,body.dimmed.dimmable{overflow:hidden}body.dimmable>.dimmer{position:fixed}.blurring.dimmable>:not(.dimmer){filter:none;transition:filter .8s ease}.blurring.dimmed.dimmable>:not(.dimmer):not(.popup){filter:blur(5px) grayscale(.7)}.blurring.dimmable>.dimmer{background-color:rgba(0,0,0,.6)}.blurring.dimmable>.inverted.dimmer{background-color:hsla(0,0%,100%,.6)}.ui.dimmer>.top.aligned.content>*{vertical-align:top}.ui.dimmer>.bottom.aligned.content>*{vertical-align:bottom}.medium.medium.medium.medium.medium.dimmer{background-color:rgba(0,0,0,.65)}.light.light.light.light.light.dimmer{background-color:rgba(0,0,0,.45)}.very.light.light.light.light.dimmer{background-color:rgba(0,0,0,.25)}.ui.inverted.dimmer{background-color:hsla(0,0%,100%,.85)}.ui.inverted.dimmer>.content,.ui.inverted.dimmer>.content>*{color:#000}.medium.medium.medium.medium.medium.inverted.dimmer{background-color:hsla(0,0%,100%,.65)}.light.light.light.light.light.inverted.dimmer{background-color:hsla(0,0%,100%,.45)}.very.light.light.light.light.inverted.dimmer{background-color:hsla(0,0%,100%,.25)}.ui.simple.dimmer{background-color:transparent;display:block;height:0;opacity:0;overflow:hidden;width:0;z-index:-100}.dimmed.dimmable>.ui.simple.dimmer{background-color:rgba(0,0,0,.85);height:100%;opacity:1;overflow:visible;width:100%;z-index:1}.ui.simple.inverted.dimmer{background-color:hsla(0,0%,100%,0)}.dimmed.dimmable>.ui.simple.inverted.dimmer{background-color:hsla(0,0%,100%,.85)}.ui[class*="bottom dimmer"],.ui[class*="center dimmer"],.ui[class*="top dimmer"]{height:auto}.ui[class*="bottom dimmer"]{bottom:0;top:auto!important}.ui[class*="center dimmer"]{top:50%!important;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}.ui.segment>.ui[class*="top dimmer"]{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.segment>.ui[class*="center dimmer"]{border-radius:0!important}.ui.segment>.ui[class*="bottom dimmer"]{border-top-left-radius:0!important;border-top-right-radius:0!important}.ui[class*="center dimmer"].transition[class*="fade up"].in{animation-name:fadeInUpCenter}.ui[class*="center dimmer"].transition[class*="fade down"].in{animation-name:fadeInDownCenter}.ui[class*="center dimmer"].transition[class*="fade up"].out{animation-name:fadeOutUpCenter}.ui[class*="center dimmer"].transition[class*="fade down"].out{animation-name:fadeOutDownCenter}.ui[class*="center dimmer"].bounce.transition{animation-name:bounceCenter}@keyframes fadeInUpCenter{0%{opacity:0;transform:translateY(-40%);-webkit-transform:translateY(calc(-40% - .5px))}to{opacity:1;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}}@keyframes fadeInDownCenter{0%{opacity:0;transform:translateY(-60%);-webkit-transform:translateY(calc(-60% - .5px))}to{opacity:1;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}}@keyframes fadeOutUpCenter{0%{opacity:1;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}to{opacity:0;transform:translateY(-45%);-webkit-transform:translateY(calc(-45% - .5px))}}@keyframes fadeOutDownCenter{0%{opacity:1;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}to{opacity:0;transform:translateY(-55%);-webkit-transform:translateY(calc(-55% - .5px))}}@keyframes bounceCenter{0%,20%,50%,80%,to{transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}40%{transform:translateY(calc(-50% - 30px))}60%{transform:translateY(calc(-50% - 15px))}}
/*!
 * # Fomantic-UI - Dropdown
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.dropdown{-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer;display:inline-block;outline:none;position:relative;text-align:left;transition:box-shadow .1s ease,width .1s ease;user-select:none}.ui.dropdown .menu{background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:0 2px 3px 0 rgba(34,36,38,.15);cursor:auto;display:none;font-size:1em;margin:0;min-width:max-content;outline:none;padding:0;position:absolute;text-align:left;text-shadow:none;top:100%;transition:opacity .1s ease;will-change:transform,opacity;z-index:11}.ui.dropdown .menu>*{white-space:nowrap}.ui.dropdown>input:not(.search):first-child,.ui.dropdown>select{display:none!important}.ui.dropdown>.dropdown.icon.icon{font-size:.85714286em;margin:0 0 0 1em;position:relative;width:auto}.ui.dropdown .menu>.item .dropdown.icon{float:right;margin:0 0 0 1em;width:auto}.ui.dropdown .menu>.item .dropdown.icon+.text{margin-right:1em}.ui.dropdown>.text{display:inline-block;transition:none}.ui.dropdown .menu>.item{-webkit-touch-callout:none;border:none;box-shadow:none;color:rgba(0,0,0,.87);cursor:pointer;display:block;font-weight:400;height:auto;line-height:1em;padding:.78571429rem 1.14285714rem!important;position:relative;text-align:left;text-transform:none}.ui.dropdown .menu>.item:first-child{border-top-width:0}.ui.dropdown .menu .item>[class*="right floated"],.ui.dropdown>.text>[class*="right floated"]{float:right!important;margin-left:1em!important;margin-right:0!important}.ui.dropdown .menu .item>[class*="left floated"],.ui.dropdown>.text>[class*="left floated"]{float:left!important;margin-left:0!important;margin-right:1em!important}.ui.dropdown .menu .item>.flag.floated,.ui.dropdown .menu .item>.icon.floated,.ui.dropdown .menu .item>.image.floated,.ui.dropdown .menu .item>img.floated{margin-top:0}.ui.dropdown .menu>.header{font-weight:700;margin:1rem 0 .75rem;padding:0 1.14285714rem;text-transform:uppercase}.ui.dropdown .menu>.header:not(.ui){color:rgba(0,0,0,.85);font-size:.78571429em}.ui.dropdown .menu>.divider{border-top:1px solid rgba(34,36,38,.1);height:0;margin:.5em 0}.ui.dropdown .menu>.horizontal.divider{border-top:none}.ui.dropdown.dropdown .menu>.input{display:flex;margin:1.14285714rem .78571429rem;min-width:10rem;width:auto}.ui.dropdown .menu>.header+.input{margin-top:0}.ui.dropdown .menu>.input:not(.transparent) input{padding:.5em 1em}.ui.dropdown .menu>.input:not(.transparent) .button,.ui.dropdown .menu>.input:not(.transparent) .icon,.ui.dropdown .menu>.input:not(.transparent) .label{padding-bottom:.5em;padding-top:.5em}.ui.dropdown .menu>.item>.description,.ui.dropdown>.text>.description{color:rgba(0,0,0,.4);float:right;margin:0 0 0 1em}.ui.dropdown .menu>.message{font-weight:400;padding:.78571429rem 1.14285714rem}.ui.dropdown .menu>.message:not(.ui){color:rgba(0,0,0,.4)}.ui.dropdown .menu .menu{border-radius:.28571429rem!important;left:100%;margin:0 0 0 -.5em!important;right:auto;top:0;z-index:21!important}.ui.dropdown .menu .menu:after{display:none}.ui.dropdown .menu>.item>.flag,.ui.dropdown .menu>.item>.icon,.ui.dropdown .menu>.item>.image,.ui.dropdown .menu>.item>.label,.ui.dropdown .menu>.item>img,.ui.dropdown>.text>.flag,.ui.dropdown>.text>.icon,.ui.dropdown>.text>.image,.ui.dropdown>.text>.label,.ui.dropdown>.text>img{margin-top:0}.ui.dropdown .menu>.item>.flag,.ui.dropdown .menu>.item>.icon,.ui.dropdown .menu>.item>.image,.ui.dropdown .menu>.item>.label,.ui.dropdown .menu>.item>img,.ui.dropdown>.text>.flag,.ui.dropdown>.text>.icon,.ui.dropdown>.text>.image,.ui.dropdown>.text>.label,.ui.dropdown>.text>img{float:none;margin-left:0;margin-right:.78571429rem}.ui.dropdown .menu>.item>.image:not(.icon),.ui.dropdown .menu>.item>img,.ui.dropdown>.text>.image:not(.icon),.ui.dropdown>.text>img{display:inline-block;margin-bottom:-.5em;margin-top:-.5em;max-height:2em;vertical-align:top;width:auto}.ui.dropdown .ui.menu>.item:before,.ui.menu .ui.dropdown .menu>.item:before{display:none}.ui.menu .ui.dropdown .menu .active.item{border-left:none}.ui.buttons>.ui.dropdown:last-child .menu,.ui.menu .right.dropdown.item .menu,.ui.menu .right.menu .dropdown:last-child .menu{left:auto;right:0}.ui.label.dropdown .menu{min-width:100%}.ui.dropdown.icon.button>.dropdown.icon{margin:0}.ui.button.dropdown .menu{min-width:100%}.ui.selection.dropdown{word-wrap:break-word;background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:none;color:rgba(0,0,0,.87);cursor:pointer;display:inline-block;line-height:1em;min-height:2.71428571em;min-width:14em;outline:0;padding:.78571429em 3.2em .78571429em 1em;transform:rotate(0deg);transition:box-shadow .1s ease,width .1s ease;white-space:normal}.ui.selection.dropdown.active,.ui.selection.dropdown.visible{z-index:10}select.ui.dropdown{border:1px solid rgba(34,36,38,.15);height:38px;padding:.5em;visibility:visible}.ui.selection.dropdown>.delete.icon,.ui.selection.dropdown>.dropdown.icon,.ui.selection.dropdown>.search.icon{cursor:pointer;height:auto;line-height:1.21428571em;margin:-.78571429em;opacity:.8;padding:.91666667em;position:absolute;right:1em;top:.78571429em;transition:opacity .1s ease;width:auto;z-index:3}.ui.compact.selection.dropdown{min-width:0}.ui.selection.dropdown .menu{-webkit-overflow-scrolling:touch;backface-visibility:hidden;border-radius:0 0 .28571429rem .28571429rem;border-top-width:0!important;box-shadow:0 2px 3px 0 rgba(34,36,38,.15);margin:0 -1px;min-width:calc(100% + 2px);outline:none;overflow-x:hidden;overflow-y:auto;transition:opacity .1s ease;width:auto;width:calc(100% + 2px)}.ui.selection.dropdown .menu:after,.ui.selection.dropdown .menu:before{display:none}.ui.selection.dropdown .menu>.message{padding:.78571429rem 1.14285714rem}@media only screen and (max-width:767.98px){.ui.selection.dropdown[class*="very short"] .menu{max-height:4.00714286rem}.ui.selection.dropdown.short .menu{max-height:6.01071429rem}.ui.selection.dropdown .menu{max-height:8.01428571rem}.ui.selection.dropdown.long .menu{max-height:16.02857143rem}.ui.selection.dropdown[class*="very long"] .menu{max-height:24.04285714rem}}@media only screen and (min-width:768px){.ui.selection.dropdown[class*="very short"] .menu{max-height:5.34285714rem}.ui.selection.dropdown.short .menu{max-height:8.01428571rem}.ui.selection.dropdown .menu{max-height:10.68571429rem}.ui.selection.dropdown.long .menu{max-height:21.37142857rem}.ui.selection.dropdown[class*="very long"] .menu{max-height:32.05714286rem}}@media only screen and (min-width:992px){.ui.selection.dropdown[class*="very short"] .menu{max-height:8.01428571rem}.ui.selection.dropdown.short .menu{max-height:12.02142857rem}.ui.selection.dropdown .menu{max-height:16.02857143rem}.ui.selection.dropdown.long .menu{max-height:32.05714286rem}.ui.selection.dropdown[class*="very long"] .menu{max-height:48.08571429rem}}@media only screen and (min-width:1920px){.ui.selection.dropdown[class*="very short"] .menu{max-height:10.68571429rem}.ui.selection.dropdown.short .menu{max-height:16.02857143rem}.ui.selection.dropdown .menu{max-height:21.37142857rem}.ui.selection.dropdown.long .menu{max-height:42.74285714rem}.ui.selection.dropdown[class*="very long"] .menu{max-height:64.11428571rem}}.ui.selection.dropdown .menu>.item{word-wrap:normal;border-top:1px solid #fafafa;padding:.78571429rem 1.14285714rem!important;white-space:normal}.ui.selection.dropdown .menu>.hidden.addition.item{display:none}.ui.selection.dropdown:hover{border-color:rgba(34,36,38,.35);box-shadow:none}.ui.selection.active.dropdown,.ui.selection.active.dropdown .menu{border-color:#96c8da;box-shadow:0 2px 3px 0 rgba(34,36,38,.15)}.ui.selection.dropdown:focus{border-color:#96c8da;box-shadow:none}.ui.selection.dropdown:focus .menu{border-color:#96c8da;box-shadow:0 2px 3px 0 rgba(34,36,38,.15)}.ui.selection.visible.dropdown>.text:not(.default){color:rgba(0,0,0,.8);font-weight:400}.ui.selection.active.dropdown:hover,.ui.selection.active.dropdown:hover .menu{border-color:#96c8da;box-shadow:0 2px 3px 0 rgba(34,36,38,.15)}.ui.active.selection.dropdown>.dropdown.icon,.ui.visible.selection.dropdown>.dropdown.icon{opacity:"";z-index:3}.ui.active.selection.dropdown{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.active.empty.selection.dropdown{border-radius:.28571429rem!important;box-shadow:none!important}.ui.active.empty.selection.dropdown .menu{border:none!important;box-shadow:none!important}.ui.search.dropdown{min-width:""}.ui.search.dropdown>input.search{-webkit-tap-highlight-color:rgba(255,255,255,0);background:none transparent!important;border:none!important;box-shadow:none!important;cursor:text;left:1px;outline:none;padding:inherit;position:absolute;top:0;width:100%;z-index:2}.ui.search.dropdown>.text{cursor:text;left:1px;position:relative;z-index:3}.ui.search.selection.dropdown>input.search,.ui.search.selection.dropdown>span.sizer{line-height:1.21428571em;padding:.67857143em 3.2em .67857143em 1em}.ui.search.selection.dropdown>span.sizer{display:none;white-space:pre}.ui.search.dropdown.active>input.search,.ui.search.dropdown.visible>input.search{cursor:auto}.ui.search.dropdown.active>.text,.ui.search.dropdown.visible>.text{pointer-events:none}.ui.active.search.dropdown input.search:focus+.text .flag,.ui.active.search.dropdown input.search:focus+.text .icon{opacity:.45}.ui.active.search.dropdown input.search:focus+.text{color:hsla(0,0%,45%,.87)!important}.ui.search.dropdown .menu{-webkit-overflow-scrolling:touch;backface-visibility:hidden;overflow-x:hidden;overflow-y:auto}@media only screen and (max-width:767.98px){.ui.search.dropdown .menu{max-height:8.01428571rem}}@media only screen and (min-width:768px){.ui.search.dropdown .menu{max-height:10.68571429rem}}@media only screen and (min-width:992px){.ui.search.dropdown .menu{max-height:16.02857143rem}}@media only screen and (min-width:1920px){.ui.search.dropdown .menu{max-height:21.37142857rem}}.ui.dropdown>.remove.icon{cursor:pointer;font-size:.85714286em;margin:-.78571429em;opacity:.6;padding:.91666667em;position:absolute;right:3em;top:.78571429em;z-index:3}.ui.clearable.dropdown .text,.ui.clearable.dropdown a:last-of-type{margin-right:1.5em}.ui.dropdown input:not([value])~.remove.icon,.ui.dropdown input[value=""]~.remove.icon,.ui.dropdown select.noselection~.remove.icon,.ui.dropdown.loading>.remove.icon{display:none}.ui.multiple.dropdown{padding:.22619048em 3.2em .22619048em .35714286em}.ui.multiple.dropdown .menu{cursor:auto}.ui.multiple.search.dropdown,.ui.multiple.search.dropdown>input.search{cursor:text}.ui.multiple.dropdown>.label{box-shadow:inset 0 0 0 1px rgba(34,36,38,.15);display:inline-block;font-size:1em;margin:.14285714rem .28571429rem .14285714rem 0;padding:.35714286em .78571429em;white-space:normal}.ui.multiple.dropdown .dropdown.icon{margin:"";padding:""}.ui.multiple.dropdown>.text{line-height:1.21428571em;margin:.45238095em 0 .45238095em .64285714em;max-width:100%;padding:0;position:static}.ui.multiple.dropdown>.label~input.search{margin-left:.14285714em!important}.ui.multiple.dropdown>.label~.text{display:none}.ui.multiple.dropdown>.label:not(.image)>img:not(.centered){margin-right:.78571429rem}.ui.multiple.dropdown>.label:not(.image)>img.ui:not(.avatar){margin-bottom:.39285714rem}.ui.multiple.dropdown>.image.label img{height:1.71428571em;margin:-.35714286em .78571429em -.35714286em -.78571429em}.ui.multiple.search.dropdown>.text{display:inline-block;left:0;line-height:1.21428571em;margin:.45238095em 0 .45238095em .64285714em;padding:inherit;position:absolute;top:0}.ui.multiple.search.dropdown>.label~.text{display:none}.ui.multiple.search.dropdown>input.search{line-height:1.21428571em;margin:.45238095em 0 .45238095em .64285714em;max-width:100%;padding:0;position:static;width:2.2em}.ui.inline.dropdown{color:inherit;cursor:pointer;display:inline-block}.ui.inline.dropdown .dropdown.icon{margin:0 .21428571em;vertical-align:baseline}.ui.inline.dropdown>.text{font-weight:700}.ui.inline.dropdown .menu{border-radius:.28571429rem;cursor:auto;margin-top:.21428571em}.ui.dropdown .menu .active.item{background:transparent;box-shadow:none;color:rgba(0,0,0,.95);font-weight:700;z-index:12}.ui.dropdown .menu>.item:hover{background:rgba(0,0,0,.05);color:rgba(0,0,0,.95);z-index:13}.ui.loading.dropdown>i.icon{height:1em!important}.ui.loading.selection.dropdown>i.icon{padding:1.5em 1.28571429em!important}.ui.loading.dropdown>i.icon:before{border:.2em solid rgba(0,0,0,.1);border-radius:500rem}.ui.loading.dropdown>i.icon:after,.ui.loading.dropdown>i.icon:before{content:"";height:1.28571429em;left:50%;margin:-.64285714em 0 0 -.64285714em;position:absolute;top:50%;width:1.28571429em}.ui.loading.dropdown>i.icon:after{animation:loader .6s linear infinite;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent}.ui.loading.dropdown.button>i.icon:after,.ui.loading.dropdown.button>i.icon:before{display:none}.ui.default.dropdown:not(.button)>.text,.ui.dropdown:not(.button)>.default.text{color:hsla(0,0%,75%,.87)}.ui.default.dropdown:not(.button)>input:focus~.text,.ui.dropdown:not(.button)>input:focus~.default.text{color:hsla(0,0%,45%,.87)}.ui.loading.dropdown>.text{transition:none}.ui.dropdown .loading.menu{display:block;visibility:hidden;z-index:-1}.ui.dropdown>.loading.menu{left:0!important;right:auto!important}.ui.dropdown>.menu .loading.menu{left:100%!important;right:auto!important}.ui.dropdown .menu .selected.item,.ui.dropdown.selected{background:rgba(0,0,0,.03);color:rgba(0,0,0,.95)}.ui.dropdown>.filtered.text{visibility:hidden}.ui.dropdown .filtered.item{display:none!important}.ui.dropdown.error,.ui.dropdown.error>.default.text,.ui.dropdown.error>.text{color:#9f3a38}.ui.selection.dropdown.error{background:#fff6f6;border-color:#e0b4b4}.ui.dropdown.error>.menu,.ui.dropdown.error>.menu .menu,.ui.selection.dropdown.error:hover{border-color:#e0b4b4}.ui.dropdown.error>.menu>.item{color:#9f3a38}.ui.multiple.selection.error.dropdown>.label{border-color:#e0b4b4}.ui.dropdown.error>.menu>.item:hover{background-color:#fff2f2}.ui.dropdown.error>.menu .active.item{background-color:#fdcfcf}.ui.dropdown>.clear.dropdown.icon{opacity:.8;transition:opacity .1s ease}.ui.dropdown>.clear.dropdown.icon:hover{opacity:1}.ui.disabled.dropdown,.ui.dropdown .menu>.disabled.item{cursor:default;opacity:.45;pointer-events:none}.ui.dropdown .menu{left:0}.ui.dropdown .menu .right.menu,.ui.dropdown .right.menu>.menu{border-radius:.28571429rem!important;left:100%!important;right:auto!important}.ui.dropdown>.left.menu{left:auto!important;right:0!important}.ui.dropdown .menu .left.menu,.ui.dropdown>.left.menu .menu{border-radius:.28571429rem!important;left:auto;margin:0 -.5em 0 0!important;right:100%}.ui.dropdown .item .left.dropdown.icon,.ui.dropdown .left.menu .item .dropdown.icon{float:left;margin:0;width:auto}.ui.dropdown .item .left.dropdown.icon+.text,.ui.dropdown .left.menu .item .dropdown.icon+.text{margin-left:1em;margin-right:0}.ui.upward.dropdown>.menu{border-radius:.28571429rem .28571429rem 0 0;bottom:100%;box-shadow:0 0 3px 0 rgba(0,0,0,.08);top:auto}.ui.dropdown .upward.menu{bottom:0!important;top:auto!important}.ui.simple.upward.active.dropdown,.ui.simple.upward.dropdown:hover{border-radius:.28571429rem .28571429rem 0 0!important}.ui.upward.dropdown.button:not(.pointing):not(.floating).active{border-radius:.28571429rem .28571429rem 0 0}.ui.upward.selection.dropdown .menu{border-bottom-width:0!important;border-top-width:1px!important;box-shadow:0 -2px 3px 0 rgba(0,0,0,.08)}.ui.upward.selection.dropdown:hover{box-shadow:0 0 2px 0 rgba(0,0,0,.05)}.ui.active.upward.selection.dropdown,.ui.upward.selection.dropdown.visible{border-radius:0 0 .28571429rem .28571429rem!important}.ui.upward.selection.dropdown.visible{box-shadow:0 0 3px 0 rgba(0,0,0,.08)}.ui.upward.active.selection.dropdown:hover{box-shadow:0 0 3px 0 rgba(0,0,0,.05)}.ui.upward.active.selection.dropdown:hover .menu{box-shadow:0 -2px 3px 0 rgba(0,0,0,.08)}.ui.dropdown .scrolling.menu,.ui.scrolling.dropdown .menu{overflow-x:hidden;overflow-y:auto}.ui.scrolling.dropdown .menu{-webkit-overflow-scrolling:touch;backface-visibility:hidden;overflow-x:hidden}.ui.dropdown .scrolling.menu,.ui.scrolling.dropdown .menu{min-width:100%!important;overflow-y:auto;width:auto!important}.ui.dropdown .scrolling.menu{border:none;border-radius:0!important;border-top:1px solid rgba(34,36,38,.15);box-shadow:none!important;margin:0!important;position:static}.ui.dropdown .scrolling.menu .item:first-child,.ui.dropdown .scrolling.menu>.item.item.item,.ui.scrolling.dropdown .menu .item.item.item,.ui.scrolling.dropdown .menu .item:first-child{border-top:none}.ui.dropdown>.animating.menu .scrolling.menu,.ui.dropdown>.visible.menu .scrolling.menu{display:block}@media (-ms-high-contrast:none){.ui.dropdown .scrolling.menu,.ui.scrolling.dropdown .menu{min-width:calc(100% - 17px)}}@media only screen and (max-width:767.98px){.ui.dropdown .scrolling.menu,.ui.scrolling.dropdown .menu{max-height:10.28571429rem}}@media only screen and (min-width:768px){.ui.dropdown .scrolling.menu,.ui.scrolling.dropdown .menu{max-height:15.42857143rem}}@media only screen and (min-width:992px){.ui.dropdown .scrolling.menu,.ui.scrolling.dropdown .menu{max-height:20.57142857rem}}@media only screen and (min-width:1920px){.ui.dropdown .scrolling.menu,.ui.scrolling.dropdown .menu{max-height:20.57142857rem}}.ui.dropdown[class*="two column"]>.menu>.item{display:inline-block;width:50%}.ui.dropdown[class*="three column"]>.menu>.item{display:inline-block;width:33%}.ui.dropdown[class*="four column"]>.menu>.item{display:inline-block;width:25%}.ui.dropdown[class*="five column"]>.menu>.item{display:inline-block;width:20%}.ui.simple.dropdown .menu:after,.ui.simple.dropdown .menu:before{display:none}.ui.simple.dropdown .menu{display:-ms-inline-flexbox!important;display:block;height:0;margin-top:0!important;opacity:0;overflow:hidden;position:absolute;top:-9999px;transition:opacity .1s ease;width:0}.ui.simple.active.dropdown,.ui.simple.dropdown:hover{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.simple.active.dropdown>.menu,.ui.simple.dropdown:hover>.menu{height:auto;opacity:1;overflow:visible;top:100%;width:auto}.ui.simple.dropdown:hover>.menu>.item:hover>.menu,.ui.simple.dropdown>.menu>.item:active>.menu{height:auto;left:100%!important;opacity:1;overflow:visible;top:0!important;width:auto}.ui.simple.disabled.dropdown:hover .menu{display:none;height:0;overflow:hidden;width:0}.ui.simple.visible.dropdown>.menu{display:block}.ui.simple.scrolling.active.dropdown>.menu,.ui.simple.scrolling.dropdown:hover>.menu{overflow-x:hidden;overflow-y:auto}.ui.fluid.dropdown{display:block;min-width:0;width:100%!important}.ui.fluid.dropdown>.dropdown.icon{float:right}.ui.floating.dropdown .menu{box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)!important;left:0;right:auto}.ui.floating.dropdown .menu,.ui.floating.dropdown>.menu{border-radius:.28571429rem!important}.ui:not(.upward).floating.dropdown>.menu{margin-top:.5em}.ui.upward.floating.dropdown>.menu{margin-bottom:.5em}.ui.pointing.dropdown>.menu{border-radius:.28571429rem;margin-top:.78571429rem;top:100%}.ui.pointing.dropdown>.menu:not(.hidden):after{background:#fff;box-shadow:-1px -1px 0 0 rgba(34,36,38,.15);content:"";display:block;height:.5em;left:50%;margin:0 0 0 -.25em;pointer-events:none;position:absolute;top:-.25em;transform:rotate(45deg);visibility:visible;width:.5em;z-index:2}.ui.top.left.pointing.dropdown>.menu{bottom:auto;left:0;margin:1em 0 0;right:auto;top:100%}.ui.top.left.pointing.dropdown>.menu:after{left:1em;margin:0;right:auto;top:-.25em;transform:rotate(45deg)}.ui.top.right.pointing.dropdown>.menu{bottom:auto;left:auto;margin:1em 0 0;right:0;top:100%}.ui.top.pointing.dropdown>.left.menu:after,.ui.top.right.pointing.dropdown>.menu:after{left:auto!important;margin:0;right:1em!important;top:-.25em;transform:rotate(45deg)}.ui.left.pointing.dropdown>.menu{left:100%;margin:0 0 0 1em;right:auto;top:0}.ui.left.pointing.dropdown>.menu:after{left:-.25em;margin:0;top:1em;transform:rotate(-45deg)}.ui.left:not(.top):not(.bottom).pointing.dropdown>.left.menu{left:auto!important;margin:0 1em 0 0;right:100%!important}.ui.left:not(.top):not(.bottom).pointing.dropdown>.left.menu:after{left:auto;margin:0;right:-.25em;top:1em;transform:rotate(135deg)}.ui.right.pointing.dropdown>.menu{left:auto;margin:0 1em 0 0;right:100%;top:0}.ui.right.pointing.dropdown>.menu:after{left:auto;margin:0;right:-.25em;top:1em;transform:rotate(135deg)}.ui.bottom.pointing.dropdown>.menu{bottom:100%;left:0;margin:0 0 1em;right:auto;top:auto}.ui.bottom.pointing.dropdown>.menu:after{bottom:-.25em;margin:0;right:auto;top:auto;transform:rotate(-135deg)}.ui.bottom.pointing.dropdown>.menu .menu{bottom:0!important;top:auto!important}.ui.bottom.left.pointing.dropdown>.menu{left:0;right:auto}.ui.bottom.left.pointing.dropdown>.menu:after{left:1em;right:auto}.ui.bottom.right.pointing.dropdown>.menu{left:auto;right:0}.ui.bottom.right.pointing.dropdown>.menu:after{left:auto;right:1em}.ui.pointing.upward.dropdown .menu,.ui.top.pointing.upward.dropdown .menu{border-radius:.28571429rem;bottom:100%!important;margin:0 0 .78571429rem;top:auto!important}.ui.pointing.upward.dropdown .menu:after,.ui.top.pointing.upward.dropdown .menu:after{bottom:auto!important;box-shadow:1px 1px 0 0 rgba(34,36,38,.15);margin:-.25em 0 0;top:100%!important}.ui.right.pointing.upward.dropdown:not(.top):not(.bottom) .menu{bottom:0!important;margin:0 1em 0 0;top:auto!important}.ui.right.pointing.upward.dropdown:not(.top):not(.bottom) .menu:after{bottom:0!important;box-shadow:-1px -1px 0 0 rgba(34,36,38,.15);margin:0 0 1em;top:auto!important}.ui.left.pointing.upward.dropdown:not(.top):not(.bottom) .menu{bottom:0!important;margin:0 0 0 1em;top:auto!important}.ui.left.pointing.upward.dropdown:not(.top):not(.bottom) .menu:after{bottom:0!important;box-shadow:-1px -1px 0 0 rgba(34,36,38,.15);margin:0 0 1em;top:auto!important}.ui.mini.dropdown{font-size:.78571429rem}.ui.tiny.dropdown{font-size:.85714286rem}.ui.small.dropdown{font-size:.92857143rem}.ui.dropdown{font-size:1rem}.ui.large.dropdown{font-size:1.14285714rem}.ui.big.dropdown{font-size:1.28571429rem}.ui.huge.dropdown{font-size:1.42857143rem}.ui.massive.dropdown{font-size:1.71428571rem}.ui.mini.dropdown .menu>.item{font-size:.78571429rem}.ui.tiny.dropdown .menu>.item{font-size:.85714286rem}.ui.small.dropdown .menu>.item{font-size:.92857143rem}.ui.dropdown .menu>.item{font-size:1rem}.ui.large.dropdown .menu>.item{font-size:1.14285714rem}.ui.big.dropdown .menu>.item{font-size:1.28571429rem}.ui.huge.dropdown .menu>.item{font-size:1.42857143rem}.ui.massive.dropdown .menu>.item{font-size:1.71428571rem}.ui.inverted.dropdown .menu{background:#1b1c1d;border:1px solid hsla(0,0%,100%,.15);box-shadow:none}.ui.inverted.dropdown .menu>.item{color:hsla(0,0%,100%,.8)}.ui.inverted.dropdown .menu .active.item{background:transparent;box-shadow:none;color:hsla(0,0%,100%,.8)}.ui.inverted.dropdown .menu>.item:hover{background:hsla(0,0%,100%,.08);color:hsla(0,0%,100%,.8)}.ui.inverted.dropdown .menu .selected.item,.ui.inverted.dropdown.selected{background:hsla(0,0%,100%,.15);color:hsla(0,0%,100%,.8)}.ui.inverted.dropdown .menu>.header{color:#fff}.ui.inverted.dropdown .menu>.item>.description,.ui.inverted.dropdown>.text>.description{color:hsla(0,0%,100%,.5)}.ui.inverted.dropdown .menu>.divider{border-top:1px solid hsla(0,0%,100%,.15)}.ui.inverted.dropdown .scrolling.menu{border:none;border-top:1px solid hsla(0,0%,100%,.15)}.ui.inverted.selection.dropdown{background:#1b1c1d;border:1px solid hsla(0,0%,100%,.15);color:hsla(0,0%,100%,.8)}.ui.inverted.selection.dropdown:hover{border-color:hsla(0,0%,100%,.25);box-shadow:none}.ui.inverted.selection.dropdown input{color:#fff}.ui.inverted.default.dropdown:not(.button)>.text,.ui.inverted.dropdown:not(.button)>.default.text{color:hsla(0,0%,100%,.5)}.ui.inverted.default.dropdown:not(.button)>input:focus~.text,.ui.inverted.dropdown:not(.button)>input:focus~.default.text{color:hsla(0,0%,100%,.7)}.ui.inverted.selection.visible.dropdown>.text:not(.default){color:hsla(0,0%,100%,.9)}.ui.inverted.active.search.dropdown input.search:focus+.text .flag,.ui.inverted.active.search.dropdown input.search:focus+.text .icon{opacity:.45}.ui.inverted.active.search.dropdown input.search:focus+.text{color:hsla(0,0%,100%,.7)!important}.ui.inverted.selection.active.dropdown .menu,.ui.inverted.selection.active.dropdown:hover{border-color:hsla(0,0%,100%,.15)}.ui.inverted.selection.dropdown .menu>.item{border-top:1px solid #242526}.ui.inverted.dropdown .menu>.message:not(.ui){color:hsla(0,0%,100%,.5)}.ui.inverted.dropdown .menu>.item:first-child{border-top-width:0}.ui.inverted.multiple.dropdown>.label{background-color:hsla(0,0%,100%,.7);background-image:none;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,0);color:#000}.ui.inverted.multiple.dropdown>.label:hover{background-color:hsla(0,0%,100%,.9);background-image:none;border-color:hsla(0,0%,100%,.9);color:#000}.ui.inverted.multiple.dropdown>.label>.close.icon,.ui.inverted.multiple.dropdown>.label>.delete.icon{opacity:.6}.ui.inverted.multiple.dropdown>.label>.close.icon:hover,.ui.inverted.multiple.dropdown>.label>.delete.icon:hover{opacity:.8}.ui.inverted.dropdown input::-webkit-selection,.ui.inverted.dropdown textarea::-webkit-selection{background-color:hsla(0,0%,100%,.25);color:hsla(0,0%,100%,.8)}.ui.inverted.dropdown input::-moz-selection,.ui.inverted.dropdown textarea::-moz-selection{background-color:hsla(0,0%,100%,.25);color:hsla(0,0%,100%,.8)}.ui.inverted.dropdown input::selection,.ui.inverted.dropdown textarea::selection{background-color:hsla(0,0%,100%,.25);color:hsla(0,0%,100%,.8)}.ui.inverted.dropdown .menu::-webkit-scrollbar-track{background:hsla(0,0%,100%,.1)}.ui.inverted.dropdown .menu::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.25)}.ui.inverted.dropdown .menu::-webkit-scrollbar-thumb:window-inactive{background:hsla(0,0%,100%,.15)}.ui.inverted.dropdown .menu::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.35)}.ui.inverted.pointing.dropdown>.menu:after{background:#1b1c1d;box-shadow:-1px -1px 0 0 hsla(0,0%,100%,.15)}@font-face{font-family:Dropdown;font-style:normal;font-weight:400;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjB5AAAAC8AAAAYGNtYXAPfuIIAAABHAAAAExnYXNwAAAAEAAAAWgAAAAIZ2x5Zjo82LgAAAFwAAABVGhlYWQAQ88bAAACxAAAADZoaGVhAwcB6QAAAvwAAAAkaG10eAS4ABIAAAMgAAAAIGxvY2EBNgDeAAADQAAAABJtYXhwAAoAFgAAA1QAAAAgbmFtZVcZpu4AAAN0AAABRXBvc3QAAwAAAAAEvAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDX//3//wAB/+MPLQADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAIABJQElABMAABM0NzY3BTYXFhUUDwEGJwYvASY1AAUGBwEACAUGBoAFCAcGgAUBEgcGBQEBAQcECQYHfwYBAQZ/BwYAAQAAAG4BJQESABMAADc0PwE2MzIfARYVFAcGIyEiJyY1AAWABgcIBYAGBgUI/wAHBgWABwaABQWABgcHBgUFBgcAAAABABIASQC3AW4AEwAANzQ/ATYXNhcWHQEUBwYnBi8BJjUSBoAFCAcFBgYFBwgFgAbbBwZ/BwEBBwQJ/wgEBwEBB38GBgAAAAABAAAASQClAW4AEwAANxE0NzYzMh8BFhUUDwEGIyInJjUABQYHCAWABgaABQgHBgVbAQAIBQYGgAUIBwWABgYFBwAAAAEAAAABAADZuaKOXw889QALAgAAAAAA0ABHWAAAAADQAEdYAAAAAAElAW4AAAAIAAIAAAAAAAAAAQAAAeD/4AAAAgAAAAAAASUAAQAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAABAAAAASUAAAElAAAAtwASALcAAAAAAAAACgAUAB4AQgBkAIgAqgAAAAEAAAAIABQAAQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAOAAAAAQAAAAAAAgAOAEcAAQAAAAAAAwAOACQAAQAAAAAABAAOAFUAAQAAAAAABQAWAA4AAQAAAAAABgAHADIAAQAAAAAACgA0AGMAAwABBAkAAQAOAAAAAwABBAkAAgAOAEcAAwABBAkAAwAOACQAAwABBAkABAAOAFUAAwABBAkABQAWAA4AAwABBAkABgAOADkAAwABBAkACgA0AGMAaQBjAG8AbQBvAG8AbgBWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbQBvAG8Abmljb21vb24AaQBjAG8AbQBvAG8AbgBSAGUAZwB1AGwAYQByAGkAYwBvAG0AbwBvAG4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=) format("truetype"),url(data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAAVwAAoAAAAABSgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAdkAAAHZLDXE/09TLzIAAALQAAAAYAAAAGAIIweQY21hcAAAAzAAAABMAAAATA9+4ghnYXNwAAADfAAAAAgAAAAIAAAAEGhlYWQAAAOEAAAANgAAADYAQ88baGhlYQAAA7wAAAAkAAAAJAMHAelobXR4AAAD4AAAACAAAAAgBLgAEm1heHAAAAQAAAAABgAAAAYACFAAbmFtZQAABAgAAAFFAAABRVcZpu5wb3N0AAAFUAAAACAAAAAgAAMAAAEABAQAAQEBCGljb21vb24AAQIAAQA6+BwC+BsD+BgEHgoAGVP/i4seCgAZU/+LiwwHi2v4lPh0BR0AAACIDx0AAACNER0AAAAJHQAAAdASAAkBAQgPERMWGyAlKmljb21vb25pY29tb29udTB1MXUyMHVGMEQ3dUYwRDh1RjBEOXVGMERBAAACAYkABgAIAgABAAQABwAKAA0AVgCfAOgBL/yUDvyUDvyUDvuUDvtvi/emFYuQjZCOjo+Pj42Qiwj3lIsFkIuQiY6Hj4iNhouGi4aJh4eHCPsU+xQFiIiGiYaLhouHjYeOCPsU9xQFiI+Jj4uQCA77b4v3FBWLkI2Pjo8I9xT3FAWPjo+NkIuQi5CJjogI9xT7FAWPh42Hi4aLhomHh4eIiIaJhosI+5SLBYaLh42HjoiPiY+LkAgO+92d928Vi5CNkI+OCPcU9xQFjo+QjZCLkIuPiY6Hj4iNhouGCIv7lAWLhomHh4iIh4eJhouGi4aNiI8I+xT3FAWHjomPi5AIDvvdi+YVi/eUBYuQjZCOjo+Pj42Qi5CLkImOhwj3FPsUBY+IjYaLhouGiYeHiAj7FPsUBYiHhomGi4aLh42Hj4iOiY+LkAgO+JQU+JQViwwKAAAAAAMCAAGQAAUAAAFMAWYAAABHAUwBZgAAAPUAGQCEAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAA8NoB4P/g/+AB4AAgAAAAAQAAAAAAAAAAAAAAIAAAAAAAAgAAAAMAAAAUAAMAAQAAABQABAA4AAAACgAIAAIAAgABACDw2v/9//8AAAAAACDw1//9//8AAf/jDy0AAwABAAAAAAAAAAAAAAABAAH//wAPAAEAAAABAAA5emozXw889QALAgAAAAAA0ABHWAAAAADQAEdYAAAAAAElAW4AAAAIAAIAAAAAAAAAAQAAAeD/4AAAAgAAAAAAASUAAQAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAABAAAAASUAAAElAAAAtwASALcAAAAAUAAACAAAAAAADgCuAAEAAAAAAAEADgAAAAEAAAAAAAIADgBHAAEAAAAAAAMADgAkAAEAAAAAAAQADgBVAAEAAAAAAAUAFgAOAAEAAAAAAAYABwAyAAEAAAAAAAoANABjAAMAAQQJAAEADgAAAAMAAQQJAAIADgBHAAMAAQQJAAMADgAkAAMAAQQJAAQADgBVAAMAAQQJAAUAFgAOAAMAAQQJAAYADgA5AAMAAQQJAAoANABjAGkAYwBvAG0AbwBvAG4AVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG0AbwBvAG5pY29tb29uAGkAYwBvAG0AbwBvAG4AUgBlAGcAdQBsAGEAcgBpAGMAbwBtAG8AbwBuAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format("woff")}.ui.dropdown>.dropdown.icon{backface-visibility:hidden;font-family:Dropdown;font-style:normal;font-weight:400;height:1em;line-height:1;text-align:center;width:1.23em;width:auto}.ui.dropdown>.dropdown.icon:before{content:"\f0d7"}.ui.dropdown .menu .item .dropdown.icon:before{content:"\f0da"}.ui.dropdown .item .left.dropdown.icon:before,.ui.dropdown .left.menu .item .dropdown.icon:before{content:"\f0d9"}.ui.vertical.menu .dropdown.item>.dropdown.icon:before{content:"\f0da"}
/*!
 * # Fomantic-UI - Video
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.embed{background:#dcddde;height:0;max-width:100%;overflow:hidden;padding-bottom:56.25%;position:relative}.ui.embed embed,.ui.embed iframe,.ui.embed object{border:none;height:100%;left:0;margin:0;overflow:hidden;padding:0;position:absolute;top:0;width:100%}.ui.embed>.embed{display:none}.ui.embed>.placeholder{background-color:radial-gradient(transparent 45%,rgba(0,0,0,.3));display:block}.ui.embed>.icon,.ui.embed>.placeholder{cursor:pointer;height:100%;left:0;position:absolute;top:0;width:100%}.ui.embed>.icon{z-index:2}.ui.embed>.icon:after{background:radial-gradient(transparent 45%,rgba(0,0,0,.3));content:"";height:100%;left:0;opacity:.5;position:absolute;top:0;transition:opacity .5s ease;width:100%;z-index:3}.ui.embed>.icon:before{color:#fff;font-size:6rem;left:50%;position:absolute;text-shadow:0 2px 10px rgba(34,36,38,.2);top:50%;transform:translateX(-50%) translateY(-50%);transition:opacity .5s ease,color .5s ease;z-index:10}.ui.embed .icon:hover:after{background:radial-gradient(transparent 45%,rgba(0,0,0,.3));opacity:1}.ui.embed .icon:hover:before{color:#fff}.ui.active.embed>.icon,.ui.active.embed>.placeholder{display:none}.ui.active.embed>.embed{display:block}.ui.square.embed{padding-bottom:100%}.ui[class*="4:3"].embed{padding-bottom:75%}.ui[class*="16:9"].embed{padding-bottom:56.25%}.ui[class*="21:9"].embed{padding-bottom:42.85714286%}
/*!
 * # Fomantic-UI - Modal
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.modal{background:#fff;border:none;border-radius:.28571429rem;box-shadow:1px 3px 3px 0 rgba(0,0,0,.2),1px 3px 15px 2px rgba(0,0,0,.2);display:none;flex:0 0 auto;position:absolute;text-align:left;transform-origin:50% 25%;user-select:text;will-change:top,left,margin,transform,opacity;z-index:1001}.ui.modal>.dimmer:first-child+.icon+*,.ui.modal>.dimmer:first-child+:not(.icon),.ui.modal>.icon:first-child+*,.ui.modal>:first-child:not(.icon):not(.dimmer){border-top-left-radius:.28571429rem;border-top-right-radius:.28571429rem}.ui.modal>:last-child{border-bottom-left-radius:.28571429rem;border-bottom-right-radius:.28571429rem}.ui.modal>.close{color:#fff;cursor:pointer;font-size:1.25em;height:2.25rem;opacity:.8;padding:.625rem 0 0;position:absolute;right:-2.5rem;top:-2.5rem;width:2.25rem;z-index:1}.ui.modal>.close:hover{opacity:1}.ui.modal>.header{background:#fff;border-bottom:1px solid rgba(34,36,38,.15);box-shadow:none;color:rgba(0,0,0,.85);display:block;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;margin:0;padding:1.25rem 1.5rem}.ui.modal>.header:not(.ui){font-size:1.42857143rem;font-weight:700;line-height:1.28571429em}.ui.modal>.content{background:#fff;display:block;font-size:1em;line-height:1.4;padding:1.5rem;width:100%}.ui.modal>.image.content{display:flex;flex-direction:row}.ui.modal>.content>.image{align-self:start;display:block;flex:0 1 auto;max-width:100%;width:""}.ui.modal>[class*="top aligned"]{align-self:start}.ui.modal>[class*="middle aligned"]{align-self:center}.ui.modal>[class*=stretched]{align-self:stretch}.ui.modal>.content>.description{align-self:start;display:block;flex:1 0 auto;min-width:0}.ui.modal>.content>.icon+.description,.ui.modal>.content>.image+.description{flex:0 1 auto;min-width:"";padding-left:2em;width:auto}.ui.modal>.content>.image>i.icon{font-size:8rem;line-height:1;margin:0;opacity:1;width:auto}.ui.modal>.actions{background:#f9fafb;border-top:1px solid rgba(34,36,38,.15);padding:1rem;text-align:right}.ui.modal .actions>.button{margin-left:.75em}.ui.basic.modal>.actions{border-top:none}@media only screen and (max-width:767.98px){.ui.modal:not(.fullscreen){margin:0;width:95%}}@media only screen and (min-width:768px){.ui.modal:not(.fullscreen){margin:0;width:88%}}@media only screen and (min-width:992px){.ui.modal:not(.fullscreen){margin:0;width:850px}}@media only screen and (min-width:1200px){.ui.modal:not(.fullscreen){margin:0;width:900px}}@media only screen and (min-width:1920px){.ui.modal:not(.fullscreen){margin:0;width:950px}}@media only screen and (max-width:991.98px){.ui.modal>.header{padding-right:2.25rem}.ui.modal>.close{color:rgba(0,0,0,.87);right:1rem;top:1.0535rem}}@media only screen and (max-width:767.98px){.ui.modal>.header{padding:.75rem 2.25rem .75rem 1rem!important}.ui.overlay.fullscreen.modal>.content.content.content{min-height:calc(100vh - 8.1rem)}.ui.overlay.fullscreen.modal>.scrolling.content.content.content{max-height:calc(100vh - 8.1rem)}.ui.modal>.content{display:block;padding:1rem!important}.ui.modal>.close{right:.5rem!important;top:.5rem!important}.ui.modal .image.content{flex-direction:column}.ui.modal .content>.image{display:block;margin:0 auto!important;max-width:100%;padding:0 0 1rem!important;text-align:center}.ui.modal>.content>.image>i.icon{font-size:5rem;text-align:center}.ui.modal .content>.description{box-shadow:none;display:block;margin:0!important;padding:1rem 0!important;width:100%!important}.ui.modal>.actions{padding:1rem 1rem 0!important}.ui.modal .actions>.button,.ui.modal .actions>.buttons{margin-bottom:1rem}}.ui.inverted.dimmer>.ui.modal{box-shadow:1px 3px 10px 2px rgba(0,0,0,.2)}.ui.basic.modal{border:none;border-radius:0;box-shadow:none!important;color:#fff}.ui.basic.modal,.ui.basic.modal>.actions,.ui.basic.modal>.content,.ui.basic.modal>.header{background-color:transparent}.ui.basic.modal>.header{color:#fff}.ui.basic.modal>.close{color:#fff;right:1.5rem;top:1rem}.ui.inverted.dimmer>.basic.modal{color:rgba(0,0,0,.87)}.ui.inverted.dimmer>.ui.basic.modal>.header{color:rgba(0,0,0,.85)}.ui.legacy.legacy.modal,.ui.legacy.legacy.page.dimmer>.ui.modal{left:50%!important}.ui.legacy.legacy.modal:not(.aligned),.ui.legacy.legacy.page.dimmer>.ui.modal:not(.aligned){top:50%}.ui.legacy.legacy.page.dimmer>.ui.scrolling.modal:not(.aligned),.ui.page.dimmer>.ui.scrolling.legacy.legacy.modal:not(.aligned),.ui.top.aligned.dimmer>.ui.legacy.legacy.modal:not(.aligned),.ui.top.aligned.legacy.legacy.page.dimmer>.ui.modal:not(.aligned){top:auto}.ui.legacy.overlay.fullscreen.modal{margin-top:-1rem!important}.ui.loading.modal{display:block;visibility:hidden;z-index:-1}.ui.active.modal{display:block}.ui.top.aligned.modal{top:5vh}.ui.bottom.aligned.modal{bottom:5vh}@media only screen and (max-width:767.98px){.ui.top.aligned.modal{top:1rem}.ui.bottom.aligned.modal{bottom:1rem}}.scrolling.dimmable.dimmed{overflow:hidden}.scrolling.dimmable>.dimmer{justify-content:flex-start;position:fixed}.scrolling.dimmable.dimmed>.dimmer{-webkit-overflow-scrolling:touch;overflow:auto}.modals.dimmer .ui.scrolling.modal:not(.fullscreen){margin:1rem auto}.scrolling.undetached.dimmable.dimmed{-webkit-overflow-scrolling:touch;overflow:auto}.scrolling.undetached.dimmable.dimmed>.dimmer{overflow:hidden}.scrolling.undetached.dimmable .ui.scrolling.modal:not(.fullscreen){left:50%;margin-top:1rem!important;position:absolute}.ui.modal>.scrolling.content{max-height:calc(80vh - 10rem);overflow:auto}.ui.overlay.fullscreen.modal>.content{min-height:calc(100vh - 9.1rem)}.ui.overlay.fullscreen.modal>.scrolling.content{max-height:calc(100vh - 9.1rem)}.ui.fullscreen.modal{left:2.5%;margin:1em auto;width:95%}.ui.overlay.fullscreen.modal{border-radius:0;left:0;margin:0 auto;top:0;width:100%}.ui.fullscreen.modal>.header{padding-right:2.25rem}.ui.fullscreen.modal>.close{color:rgba(0,0,0,.87);right:1rem;top:1.0535rem}.ui.basic.fullscreen.modal>.close{color:#fff}.ui.modal{font-size:1rem}.ui.mini.modal>.header:not(.ui){font-size:1.3em}@media only screen and (max-width:767.98px){.ui.mini.modal{margin:0;width:95%}}@media only screen and (min-width:768px){.ui.mini.modal{margin:0;width:35.2%}}@media only screen and (min-width:992px){.ui.mini.modal{margin:0;width:340px}}@media only screen and (min-width:1200px){.ui.mini.modal{margin:0;width:360px}}@media only screen and (min-width:1920px){.ui.mini.modal{margin:0;width:380px}}.ui.tiny.modal>.header:not(.ui){font-size:1.3em}@media only screen and (max-width:767.98px){.ui.tiny.modal{margin:0;width:95%}}@media only screen and (min-width:768px){.ui.tiny.modal{margin:0;width:52.8%}}@media only screen and (min-width:992px){.ui.tiny.modal{margin:0;width:510px}}@media only screen and (min-width:1200px){.ui.tiny.modal{margin:0;width:540px}}@media only screen and (min-width:1920px){.ui.tiny.modal{margin:0;width:570px}}.ui.small.modal>.header:not(.ui){font-size:1.3em}@media only screen and (max-width:767.98px){.ui.small.modal{margin:0;width:95%}}@media only screen and (min-width:768px){.ui.small.modal{margin:0;width:70.4%}}@media only screen and (min-width:992px){.ui.small.modal{margin:0;width:680px}}@media only screen and (min-width:1200px){.ui.small.modal{margin:0;width:720px}}@media only screen and (min-width:1920px){.ui.small.modal{margin:0;width:760px}}.ui.large.modal>.header{font-size:1.6em}@media only screen and (max-width:767.98px){.ui.large.modal{margin:0;width:95%}}@media only screen and (min-width:768px){.ui.large.modal{margin:0;width:88%}}@media only screen and (min-width:992px){.ui.large.modal{margin:0;width:1020px}}@media only screen and (min-width:1200px){.ui.large.modal{margin:0;width:1080px}}@media only screen and (min-width:1920px){.ui.large.modal{margin:0;width:1140px}}.ui.inverted.modal{background:rgba(0,0,0,.9)}.ui.inverted.modal>.content,.ui.inverted.modal>.header{background:rgba(0,0,0,.9);color:#fff}.ui.inverted.modal>.actions{background:#191a1b;border-top:1px solid rgba(34,36,38,.85);color:#fff}.ui.inverted.dimmer>.modal>.close{color:rgba(0,0,0,.85)}@media only screen and (max-width:991.98px){.ui.dimmer .inverted.modal>.close{color:#fff}}.ui.inverted.fullscreen.modal>.close{color:#fff}
/*!
 * # Fomantic-UI - Nag
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.nag{background:#555;border-radius:0 0 .28571429rem .28571429rem;box-shadow:0 1px 2px 0 rgba(0,0,0,.2);color:rgba(0,0,0,.87);display:none;font-size:1rem;left:0;margin:0;min-height:0;opacity:.95;padding:.75em 1em;position:relative;text-align:center;top:0;transition:background .2s ease;width:100%;z-index:999}a.ui.nag{cursor:pointer}.ui.nag>.title{color:#fff;display:inline-block;margin:0 .5em}.ui.nag>.close.icon{color:#fff;cursor:pointer;font-size:1em;margin:-.5em 0 0;opacity:.4;position:absolute;right:1em;top:50%;transition:opacity .2s ease}.ui.nag:hover{background:#555;opacity:1}.ui.nag .close:hover{opacity:1}.ui.overlay.nag{display:block;position:absolute}.ui.fixed.nag{position:fixed}.ui.bottom.nag,.ui.bottom.nags{border-radius:.28571429rem .28571429rem 0 0;bottom:0;top:auto}.ui.inverted.nag,.ui.inverted.nags .nag{background-color:#f3f4f5;color:rgba(0,0,0,.85)}.ui.inverted.nag .close,.ui.inverted.nag .title,.ui.inverted.nags .nag .close,.ui.inverted.nags .nag .title{color:rgba(0,0,0,.4)}.ui.nags .nag{border-radius:0!important}.ui.nags .nag:last-child{border-radius:0 0 .28571429rem .28571429rem}.ui.bottom.nags .nag:last-child{border-radius:.28571429rem .28571429rem 0 0}
/*!
 * # Fomantic-UI - Popup
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.popup{background:#fff;border:1px solid #d4d4d5;border-radius:.28571429rem;box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);color:rgba(0,0,0,.87);display:none;font-style:normal;font-weight:400;line-height:1.4285em;max-width:250px;min-width:min-content;padding:.833em 1em;position:absolute;right:0;top:0;z-index:1900}.ui.popup>.header{font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1.14285714em;font-weight:700;line-height:1.2;padding:0}.ui.popup>.header+.content{padding-top:.5em}.ui.popup:before{background:#fff;box-shadow:1px 1px 0 0 #bababc;content:"";height:.71428571em;position:absolute;transform:rotate(45deg);width:.71428571em;z-index:1901}[data-tooltip]{position:relative}[data-tooltip]:before{box-shadow:1px 1px 0 0 #bababc;content:"";height:.71428571em;transform:rotate(45deg);width:.71428571em;z-index:1901}[data-tooltip]:after,[data-tooltip]:before{background:#fff;font-size:1rem;pointer-events:none;position:absolute}[data-tooltip]:after{border:1px solid #d4d4d5;border-radius:.28571429rem;box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);color:rgba(0,0,0,.87);content:attr(data-tooltip);font-style:normal;font-weight:400;line-height:1.4285em;max-width:none;padding:.833em 1em;text-align:left;text-transform:none;white-space:nowrap;z-index:1900}[data-tooltip]:not([data-position]):before{background:#fff;bottom:100%;left:50%;margin-bottom:.14285714rem;margin-left:-.07142857rem;right:auto;top:auto}[data-tooltip]:not([data-position]):after{bottom:100%;left:50%;margin-bottom:.5em;transform:translateX(-50%)}[data-tooltip]:after,[data-tooltip]:before{pointer-events:none;visibility:hidden}[data-tooltip]:before{opacity:0;transform:rotate(45deg) scale(0)!important;transform-origin:center top;transition:all .1s ease}[data-tooltip]:after{opacity:1;transform-origin:center bottom;transition:all .1s ease}[data-tooltip]:hover:after,[data-tooltip]:hover:before{pointer-events:auto;visibility:visible}[data-tooltip]:hover:before{opacity:1;transform:rotate(45deg) scale(1)!important}[data-tooltip]:after,[data-tooltip][data-position="bottom center"]:after,[data-tooltip][data-position="top center"]:after{transform:translateX(-50%) scale(0)!important}[data-tooltip]:hover:after,[data-tooltip][data-position="bottom center"]:hover:after{transform:translateX(-50%) scale(1)!important}[data-tooltip][data-position="left center"]:after,[data-tooltip][data-position="right center"]:after{transform:translateY(-50%) scale(0)!important}[data-tooltip][data-position="left center"]:hover:after,[data-tooltip][data-position="right center"]:hover:after{transform:translateY(-50%) scale(1)!important}[data-tooltip][data-position="bottom left"]:after,[data-tooltip][data-position="bottom right"]:after,[data-tooltip][data-position="top left"]:after,[data-tooltip][data-position="top right"]:after{transform:scale(0)!important}[data-tooltip][data-position="bottom left"]:hover:after,[data-tooltip][data-position="bottom right"]:hover:after,[data-tooltip][data-position="top left"]:hover:after,[data-tooltip][data-position="top right"]:hover:after{transform:scale(1)!important}[data-tooltip][data-inverted]:before{background:#1b1c1d;box-shadow:none!important}[data-tooltip][data-inverted]:after{background:#1b1c1d;border:none;box-shadow:none;color:#fff}[data-tooltip][data-inverted]:after .header{background:none;color:#fff}[data-position="top center"][data-tooltip]:after{bottom:100%;left:50%;margin-bottom:.5em;right:auto;top:auto;transform:translateX(-50%)}[data-position="top center"][data-tooltip]:before{background:#fff;bottom:100%;left:50%;margin-bottom:.14285714rem;margin-left:-.07142857rem;right:auto;top:auto}[data-position="top left"][data-tooltip]:after{bottom:100%;left:0;margin-bottom:.5em;right:auto;top:auto}[data-position="top left"][data-tooltip]:before{bottom:100%;left:1em;margin-bottom:.14285714rem;margin-left:-.07142857rem;right:auto;top:auto}[data-position="top right"][data-tooltip]:after{bottom:100%;left:auto;margin-bottom:.5em;right:0;top:auto}[data-position="top right"][data-tooltip]:before{bottom:100%;left:auto;margin-bottom:.14285714rem;margin-left:-.07142857rem;right:1em;top:auto}[data-position="bottom center"][data-tooltip]:after{bottom:auto;left:50%;margin-top:.5em;right:auto;top:100%;transform:translateX(-50%)}[data-position="bottom center"][data-tooltip]:before{bottom:auto;left:50%;margin-left:-.07142857rem;margin-top:.14285714rem;right:auto;top:100%}[data-position="bottom left"][data-tooltip]:after{left:0;margin-top:.5em;top:100%}[data-position="bottom left"][data-tooltip]:before{bottom:auto;left:1em;margin-left:-.07142857rem;margin-top:.14285714rem;right:auto;top:100%}[data-position="bottom right"][data-tooltip]:after{margin-top:.5em;right:0;top:100%}[data-position="bottom right"][data-tooltip]:before{bottom:auto;left:auto;margin-left:-.14285714rem;margin-top:.07142857rem;right:1em;top:100%}[data-position="left center"][data-tooltip]:after{margin-right:.5em;right:100%;top:50%;transform:translateY(-50%)}[data-position="left center"][data-tooltip]:before{margin-right:-.07142857rem;margin-top:-.14285714rem;right:100%;top:50%}[data-position="right center"][data-tooltip]:after{left:100%;margin-left:.5em;top:50%;transform:translateY(-50%)}[data-position="right center"][data-tooltip]:before{left:100%;margin-left:.14285714rem;margin-top:-.07142857rem;top:50%}[data-position~=bottom][data-tooltip]:before{background:#fff;box-shadow:-1px -1px 0 0 #bababc}[data-position="left center"][data-tooltip]:before{background:#fff;box-shadow:1px -1px 0 0 #bababc}[data-position="right center"][data-tooltip]:before{background:#fff;box-shadow:-1px 1px 0 0 #bababc}[data-position~=top][data-tooltip]:before{background:#fff}[data-inverted][data-position~=bottom][data-tooltip]:before{background:#1b1c1d;box-shadow:-1px -1px 0 0 #bababc}[data-inverted][data-position="left center"][data-tooltip]:before{background:#1b1c1d;box-shadow:1px -1px 0 0 #bababc}[data-inverted][data-position="right center"][data-tooltip]:before{background:#1b1c1d;box-shadow:-1px 1px 0 0 #bababc}[data-inverted][data-position~=top][data-tooltip]:before{background:#1b1c1d}[data-position~=bottom][data-tooltip]:before{transform-origin:center bottom}[data-position~=bottom][data-tooltip]:after{transform-origin:center top}[data-position="left center"][data-tooltip]:before{transform-origin:top center}[data-position="left center"][data-tooltip]:after,[data-position="right center"][data-tooltip]:before{transform-origin:right center}[data-position="right center"][data-tooltip]:after{transform-origin:left center}[data-tooltip][data-variation~=mini]:after,[data-tooltip][data-variation~=mini]:before{font-size:.78571429rem}[data-tooltip][data-variation~=tiny]:after,[data-tooltip][data-variation~=tiny]:before{font-size:.85714286rem}[data-tooltip][data-variation~=small]:after,[data-tooltip][data-variation~=small]:before{font-size:.92857143rem}[data-tooltip][data-variation~=medium]:after,[data-tooltip][data-variation~=medium]:before{font-size:1rem}[data-tooltip][data-variation~=large]:after,[data-tooltip][data-variation~=large]:before{font-size:1.14285714rem}[data-tooltip][data-variation~=huge]:after,[data-tooltip][data-variation~=huge]:before{font-size:1.42857143rem}[data-tooltip][data-variation~=basic]:before{display:none}.ui.popup{margin:0}.ui.top.popup{margin:0 0 .71428571em}.ui.top.left.popup{transform-origin:left bottom}.ui.top.center.popup{transform-origin:center bottom}.ui.top.right.popup{transform-origin:right bottom}.ui.left.center.popup{margin:0 .71428571em 0 0;transform-origin:right 50%}.ui.right.center.popup{margin:0 0 0 .71428571em;transform-origin:left 50%}.ui.bottom.popup{margin:.71428571em 0 0}.ui.bottom.left.popup{transform-origin:left top}.ui.bottom.center.popup{transform-origin:center top}.ui.bottom.right.popup{transform-origin:right top}.ui.bottom.center.popup:before{bottom:auto;box-shadow:-1px -1px 0 0 #bababc;left:50%;margin-left:-.30714286em;right:auto;top:-.30714286em}.ui.bottom.left.popup{margin-left:0}.ui.bottom.left.popup:before{bottom:auto;box-shadow:-1px -1px 0 0 #bababc;left:1em;margin-left:0;right:auto;top:-.30714286em}.ui.bottom.right.popup{margin-right:0}.ui.bottom.right.popup:before{bottom:auto;box-shadow:-1px -1px 0 0 #bababc;left:auto;margin-left:0;right:1em;top:-.30714286em}.ui.top.center.popup:before{bottom:-.30714286em;left:50%;margin-left:-.30714286em;right:auto;top:auto}.ui.top.left.popup{margin-left:0}.ui.top.left.popup:before{bottom:-.30714286em;left:1em;margin-left:0;right:auto;top:auto}.ui.top.right.popup{margin-right:0}.ui.top.right.popup:before{bottom:-.30714286em;left:auto;margin-left:0;right:1em;top:auto}.ui.left.center.popup:before{bottom:auto;box-shadow:1px -1px 0 0 #bababc;left:auto;margin-top:-.30714286em;right:-.30714286em;top:50%}.ui.right.center.popup:before{bottom:auto;box-shadow:-1px 1px 0 0 #bababc;left:-.30714286em;margin-top:-.30714286em;right:auto;top:50%}.ui.bottom.popup:before,.ui.left.center.popup:before,.ui.right.center.popup:before,.ui.top.popup:before{background:#fff}.ui.inverted.bottom.popup:before,.ui.inverted.left.center.popup:before,.ui.inverted.right.center.popup:before,.ui.inverted.top.popup:before{background:#1b1c1d}.ui.popup>.ui.grid:not(.padded){margin:-.7rem -.875rem;width:calc(100% + 1.75rem)}.ui.loading.popup{display:block;visibility:hidden;z-index:-1}.ui.animating.popup,.ui.visible.popup{display:block}.ui.visible.popup{backface-visibility:hidden;transform:translateZ(0)}.ui.basic.popup:before{display:none}.ui.wide.popup{max-width:350px}.ui[class*="very wide"].popup{max-width:550px}@media only screen and (max-width:767.98px){.ui.wide.popup,.ui[class*="very wide"].popup{max-width:250px}}.ui.fluid.popup{max-width:none;width:100%}.ui.inverted.popup{background:#1b1c1d;border:none;box-shadow:none;color:#fff}.ui.inverted.popup .header{background-color:none;color:#fff}.ui.inverted.popup:before{background-color:#1b1c1d;box-shadow:none!important}.ui.flowing.popup{max-width:none}.ui.mini.popup{font-size:.78571429rem}.ui.tiny.popup{font-size:.85714286rem}.ui.small.popup{font-size:.92857143rem}.ui.popup{font-size:1rem}.ui.large.popup{font-size:1.14285714rem}.ui.huge.popup{font-size:1.42857143rem}
/*!
 * # Fomantic-UI - Progress Bar
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.progress{background:rgba(0,0,0,.1);border:none;border-radius:.28571429rem;box-shadow:none;display:block;margin:1em 0 2.5em;max-width:100%;padding:0;position:relative}.ui.progress:first-child{margin:0 0 2.5em}.ui.progress:last-child{margin:0 0 1.5em}.ui.progress .bar{background:#888;border-radius:.28571429rem;display:block;line-height:1;min-width:2em;overflow:hidden;position:relative;transition:width .1s ease,background-color .1s ease;width:0}.ui.ui.ui.progress:not([data-percent]):not(.indeterminate) .bar,.ui.ui.ui.progress[data-percent="0"]:not(.indeterminate) .bar{background:transparent}.ui.progress[data-percent="0"] .bar .progress{color:rgba(0,0,0,.87)}.ui.inverted.progress[data-percent="0"] .bar .progress{color:hsla(0,0%,100%,.9)}.ui.progress .bar>.progress{color:hsla(0,0%,100%,.7);font-size:.92857143em;left:auto;margin-top:-.5em;right:.5em;text-align:left;top:50%;white-space:nowrap;width:auto}.ui.progress .bar>.progress,.ui.progress>.label{bottom:auto;font-weight:700;position:absolute;text-shadow:none}.ui.progress>.label{color:rgba(0,0,0,.87);font-size:1em;left:0;margin-top:.2em;right:auto;text-align:center;top:100%;transition:color .4s ease;width:100%}.ui.indicating.progress[data-percent^="1"] .bar,.ui.indicating.progress[data-percent^="2"] .bar{background-color:#d95c5c}.ui.indicating.progress[data-percent^="3"] .bar{background-color:#efbc72}.ui.indicating.progress[data-percent^="4"] .bar,.ui.indicating.progress[data-percent^="5"] .bar{background-color:#e6bb48}.ui.indicating.progress[data-percent^="6"] .bar{background-color:#ddc928}.ui.indicating.progress[data-percent^="7"] .bar,.ui.indicating.progress[data-percent^="8"] .bar{background-color:#b4d95c}.ui.indicating.progress[data-percent^="100"] .bar,.ui.indicating.progress[data-percent^="9"] .bar{background-color:#66da81}.ui.indicating.progress[data-percent^="1"] .label,.ui.indicating.progress[data-percent^="100"] .label,.ui.indicating.progress[data-percent^="2"] .label,.ui.indicating.progress[data-percent^="3"] .label,.ui.indicating.progress[data-percent^="4"] .label,.ui.indicating.progress[data-percent^="5"] .label,.ui.indicating.progress[data-percent^="6"] .label,.ui.indicating.progress[data-percent^="7"] .label,.ui.indicating.progress[data-percent^="8"] .label,.ui.indicating.progress[data-percent^="9"] .label{color:rgba(0,0,0,.87)}.ui.inverted.indicating.progress[data-percent^="1"] .label,.ui.inverted.indicating.progress[data-percent^="100"] .label,.ui.inverted.indicating.progress[data-percent^="2"] .label,.ui.inverted.indicating.progress[data-percent^="3"] .label,.ui.inverted.indicating.progress[data-percent^="4"] .label,.ui.inverted.indicating.progress[data-percent^="5"] .label,.ui.inverted.indicating.progress[data-percent^="6"] .label,.ui.inverted.indicating.progress[data-percent^="7"] .label,.ui.inverted.indicating.progress[data-percent^="8"] .label,.ui.inverted.indicating.progress[data-percent^="9"] .label{color:hsla(0,0%,100%,.9)}.ui.indicating.progress[data-percent="1"] .bar,.ui.indicating.progress[data-percent="2"] .bar,.ui.indicating.progress[data-percent="3"] .bar,.ui.indicating.progress[data-percent="4"] .bar,.ui.indicating.progress[data-percent="5"] .bar,.ui.indicating.progress[data-percent="6"] .bar,.ui.indicating.progress[data-percent="7"] .bar,.ui.indicating.progress[data-percent="8"] .bar,.ui.indicating.progress[data-percent="9"] .bar{background-color:#d95c5c}.ui.indicating.progress[data-percent="0"] .label,.ui.indicating.progress[data-percent="1"] .label,.ui.indicating.progress[data-percent="2"] .label,.ui.indicating.progress[data-percent="3"] .label,.ui.indicating.progress[data-percent="4"] .label,.ui.indicating.progress[data-percent="5"] .label,.ui.indicating.progress[data-percent="6"] .label,.ui.indicating.progress[data-percent="7"] .label,.ui.indicating.progress[data-percent="8"] .label,.ui.indicating.progress[data-percent="9"] .label{color:rgba(0,0,0,.87)}.ui.inverted.indicating.progress[data-percent="0"] .label,.ui.inverted.indicating.progress[data-percent="1"] .label,.ui.inverted.indicating.progress[data-percent="2"] .label,.ui.inverted.indicating.progress[data-percent="3"] .label,.ui.inverted.indicating.progress[data-percent="4"] .label,.ui.inverted.indicating.progress[data-percent="5"] .label,.ui.inverted.indicating.progress[data-percent="6"] .label,.ui.inverted.indicating.progress[data-percent="7"] .label,.ui.inverted.indicating.progress[data-percent="8"] .label,.ui.inverted.indicating.progress[data-percent="9"] .label{color:hsla(0,0%,100%,.9)}.ui.ui.indicating.progress.success .label{color:#1a531b}.ui.multiple.progress{display:flex}.ui.ui.progress.success .bar{background-color:#21ba45}.ui.ui.progress.success .bar,.ui.ui.progress.success .bar:after{animation:none}.ui.progress.success>.label{color:#1a531b}.ui.ui.progress.warning .bar{background-color:#f2c037}.ui.ui.progress.warning .bar,.ui.ui.progress.warning .bar:after{animation:none}.ui.progress.warning>.label{color:#794b02}.ui.ui.progress.error .bar{background-color:#db2828}.ui.ui.progress.error .bar,.ui.ui.progress.error .bar:after{animation:none}.ui.progress.error>.label{color:#912d2b}.ui.active.progress .bar{min-width:2em;position:relative}.ui.active.progress .bar:after{animation:progress-active 2s ease infinite;background:#fff;border-radius:.28571429rem;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transform-origin:left}@keyframes progress-active{0%{opacity:.3;transform:scaleX(0)}to{opacity:0;transform:scale(1)}}.ui.disabled.progress{opacity:.35}.ui.ui.disabled.progress .bar,.ui.ui.disabled.progress .bar:after{animation:none}.ui.inverted.progress{background:hsla(0,0%,100%,.08);border:none}.ui.inverted.progress .bar{background:#888}.ui.inverted.progress .bar>.progress{color:#1b1c1d}.ui.inverted.progress>.label{color:#fff}.ui.inverted.progress.success>.label{color:#21ba45}.ui.inverted.progress.warning>.label{color:#f2c037}.ui.inverted.progress.error>.label{color:#db2828}.ui.progress.attached{background:transparent;border:none;margin:0;position:relative}.ui.progress.attached,.ui.progress.attached .bar{border-radius:0 0 .28571429rem .28571429rem;display:block;height:.2rem;overflow:hidden;padding:0}.ui.progress.attached .bar{border-radius:0}.ui.progress.top.attached,.ui.progress.top.attached .bar{border-radius:.28571429rem .28571429rem 0 0;top:0}.ui.progress.top.attached .bar{border-radius:0}.ui.card>.ui.attached.progress,.ui.segment>.ui.attached.progress{bottom:100%;left:0;position:absolute;top:auto;width:100%}.ui.card>.ui.bottom.attached.progress,.ui.segment>.ui.bottom.attached.progress{bottom:auto;top:100%}.ui.indeterminate.primary.progress .bar:before,.ui.primary.progress .bar,.ui.progress .primary.bar{background-color:#2185d0}.ui.inverted.indeterminate.primary.progress .bar:before,.ui.inverted.progress .primary.bar,.ui.primary.inverted.progress .bar{background-color:#54c8ff}.ui.indeterminate.secondary.progress .bar:before,.ui.progress .secondary.bar,.ui.secondary.progress .bar{background-color:#1b1c1d}.ui.inverted.indeterminate.secondary.progress .bar:before,.ui.inverted.progress .secondary.bar,.ui.secondary.inverted.progress .bar{background-color:#545454}.ui.indeterminate.red.progress .bar:before,.ui.progress .red.bar,.ui.red.progress .bar{background-color:#db2828}.ui.inverted.indeterminate.red.progress .bar:before,.ui.inverted.progress .red.bar,.ui.red.inverted.progress .bar{background-color:#ff695e}.ui.indeterminate.orange.progress .bar:before,.ui.orange.progress .bar,.ui.progress .orange.bar{background-color:#f2711c}.ui.inverted.indeterminate.orange.progress .bar:before,.ui.inverted.progress .orange.bar,.ui.orange.inverted.progress .bar{background-color:#ff851b}.ui.indeterminate.yellow.progress .bar:before,.ui.progress .yellow.bar,.ui.yellow.progress .bar{background-color:#fbbd08}.ui.inverted.indeterminate.yellow.progress .bar:before,.ui.inverted.progress .yellow.bar,.ui.yellow.inverted.progress .bar{background-color:#ffe21f}.ui.indeterminate.olive.progress .bar:before,.ui.olive.progress .bar,.ui.progress .olive.bar{background-color:#b5cc18}.ui.inverted.indeterminate.olive.progress .bar:before,.ui.inverted.progress .olive.bar,.ui.olive.inverted.progress .bar{background-color:#d9e778}.ui.green.progress .bar,.ui.indeterminate.green.progress .bar:before,.ui.progress .green.bar{background-color:#21ba45}.ui.green.inverted.progress .bar,.ui.inverted.indeterminate.green.progress .bar:before,.ui.inverted.progress .green.bar{background-color:#2ecc40}.ui.indeterminate.teal.progress .bar:before,.ui.progress .teal.bar,.ui.teal.progress .bar{background-color:#00b5ad}.ui.inverted.indeterminate.teal.progress .bar:before,.ui.inverted.progress .teal.bar,.ui.teal.inverted.progress .bar{background-color:#6dffff}.ui.blue.progress .bar,.ui.indeterminate.blue.progress .bar:before,.ui.progress .blue.bar{background-color:#2185d0}.ui.blue.inverted.progress .bar,.ui.inverted.indeterminate.blue.progress .bar:before,.ui.inverted.progress .blue.bar{background-color:#54c8ff}.ui.indeterminate.violet.progress .bar:before,.ui.progress .violet.bar,.ui.violet.progress .bar{background-color:#6435c9}.ui.inverted.indeterminate.violet.progress .bar:before,.ui.inverted.progress .violet.bar,.ui.violet.inverted.progress .bar{background-color:#a291fb}.ui.indeterminate.purple.progress .bar:before,.ui.progress .purple.bar,.ui.purple.progress .bar{background-color:#a333c8}.ui.inverted.indeterminate.purple.progress .bar:before,.ui.inverted.progress .purple.bar,.ui.purple.inverted.progress .bar{background-color:#dc73ff}.ui.indeterminate.pink.progress .bar:before,.ui.pink.progress .bar,.ui.progress .pink.bar{background-color:#e03997}.ui.inverted.indeterminate.pink.progress .bar:before,.ui.inverted.progress .pink.bar,.ui.pink.inverted.progress .bar{background-color:#ff8edf}.ui.brown.progress .bar,.ui.indeterminate.brown.progress .bar:before,.ui.progress .brown.bar{background-color:#a5673f}.ui.brown.inverted.progress .bar,.ui.inverted.indeterminate.brown.progress .bar:before,.ui.inverted.progress .brown.bar{background-color:#d67c1c}.ui.grey.progress .bar,.ui.indeterminate.grey.progress .bar:before,.ui.progress .grey.bar{background-color:#767676}.ui.grey.inverted.progress .bar,.ui.inverted.indeterminate.grey.progress .bar:before,.ui.inverted.progress .grey.bar{background-color:#dcddde}.ui.black.progress .bar,.ui.indeterminate.black.progress .bar:before,.ui.progress .black.bar{background-color:#1b1c1d}.ui.black.inverted.progress .bar,.ui.inverted.indeterminate.black.progress .bar:before,.ui.inverted.progress .black.bar{background-color:#545454}.ui.tiny.progress{font-size:.85714286rem}.ui.tiny.progress .bar{height:.5em}.ui.small.progress{font-size:.92857143rem}.ui.small.progress .bar{height:1em}.ui.progress{font-size:1rem}.ui.progress .bar{height:1.75em}.ui.large.progress{font-size:1.14285714rem}.ui.large.progress .bar{height:2.5em}.ui.big.progress{font-size:1.28571429rem}.ui.big.progress .bar{height:3.5em}.ui.indeterminate.progress .bar{width:100%}.ui.indeterminate.progress .bar .progress,.ui.progress .bar .centered.progress{position:relative;text-align:center}.ui.indeterminate.progress .bar:before{animation:progress-pulsating 2s ease infinite;border-radius:.28571429rem;bottom:0;content:"";position:absolute;top:0;transform-origin:center;width:100%}.ui.slow.indeterminate.progress .bar:before{animation-duration:4s}.ui.fast.indeterminate.progress .bar:before{animation-duration:1s}.ui.swinging.indeterminate.progress .bar:before{animation-name:progress-swinging;transform-origin:left}.ui.sliding.indeterminate.progress .bar:before{animation-name:progress-sliding;transform-origin:left}.ui.filling.indeterminate.progress .bar:before{animation-name:progress-filling}.ui.indeterminate.progress:not(.sliding):not(.filling):not(.swinging) .bar:before{background:#fff}.ui.filling.indeterminate.progress .bar,.ui.sliding.indeterminate.progress .bar,.ui.swinging.indeterminate.progress .bar{background:rgba(0,0,0,.1)}.ui.inverted.filling.indeterminate.progress .bar,.ui.inverted.sliding.indeterminate.progress .bar,.ui.inverted.swinging.indeterminate.progress .bar{background:hsla(0,0%,100%,.08)}.ui.sliding.indeterminate.progress .bar .progress,.ui.swinging.indeterminate.progress .bar .progress{color:#1b1c1d}.ui.inverted.sliding.indeterminate.progress .bar .progress,.ui.inverted.swinging.indeterminate.progress .bar .progress{color:hsla(0,0%,100%,.7)}@keyframes progress-swinging{0%,to{left:-25%;width:10%}25%,65%{width:70%}50%{left:100%;width:10%}}@keyframes progress-sliding{0%{left:-25%;width:10%}50%{width:70%}to{left:100%;width:10%}}@keyframes progress-filling{0%{transform:scaleX(0)}80%{opacity:1;transform:scale(1)}to{opacity:0}}@keyframes progress-pulsating{0%{opacity:.7;transform:scaleX(0)}to{opacity:0;transform:scale(1)}}.ui.slider:not(.vertical):not(.checkbox){padding:1em .5em;width:100%}.ui.slider:not(.checkbox){position:relative}.ui.slider:not(.checkbox):focus{outline:0}.ui.slider .inner{position:relative;z-index:2}.ui.slider:not(.vertical) .inner{height:1.5em}.ui.slider .inner:hover{cursor:auto}.ui.slider .inner .track{background-color:rgba(0,0,0,.05);border-radius:4px;position:absolute}.ui.slider:not(.vertical) .inner .track{height:.4em;left:0;top:.55em;width:100%}.ui.slider .inner .track-fill{background-color:#1b1c1d;border-radius:4px;position:absolute}.ui.slider:not(.vertical) .inner .track-fill{height:.4em;left:0;top:.55em}.ui.slider .inner .thumb{background:#fff linear-gradient(transparent,rgba(0,0,0,.05));border-radius:100%;box-shadow:0 1px 2px 0 rgba(34,36,38,.15),inset 0 0 0 1px rgba(34,36,38,.15);height:1.5em;left:0;position:absolute;top:0;transition:background .3s ease;width:1.5em}.ui.slider:not(.disabled) .inner .thumb:hover{cursor:pointer}.ui.slider:not(.disabled) .inner .thumb:hover,.ui.slider:not(.disabled):focus .inner .thumb{background:#f2f2f2 linear-gradient(transparent,rgba(0,0,0,.05))}.ui.disabled.slider:not(.checkbox){opacity:.5}.ui.disabled.slider .inner:hover{cursor:auto}.ui.disabled.slider .inner .track-fill{background:#ccc}.ui.reversed.slider .inner .thumb,.ui.reversed.slider .inner .track-fill{left:auto;right:0}.ui.labeled.reversed.slider>.labels .label{transform:translate(-100%,-100%)}.ui.vertical.slider{height:100%;padding:.5em 1em;width:1.5em}.ui.vertical.slider .inner{height:100%}.ui.vertical.slider .inner .track{height:100%;left:.55em;top:0;width:.4em}.ui.vertical.slider .inner .track-fill{left:.55em;top:0;width:.4em}.ui.vertical.reversed.slider .inner .thumb,.ui.vertical.reversed.slider .inner .track-fill{bottom:0;top:auto}.ui.labeled.slider>.labels{height:1.5em;left:0;margin:0;padding:0;position:absolute;right:0;top:50%;width:auto}.ui.labeled.slider:not(.vertical)>.labels{transform:translateY(-50%)}.ui.labeled.slider>.labels .label{display:inline-flex;position:absolute;transform:translate(-50%,-100%)}.ui.labeled.ticked.slider>.labels .label:after{background:#ccc;content:" ";height:1.5em;left:50%;position:absolute;top:100%;width:1px}.ui.labeled.ticked.slider>.labels .halftick.label:after{height:.75em}.ui.labeled.vertical.slider>.labels{bottom:0;height:auto;left:50%;top:0;transform:translateX(-50%);width:1.5em}.ui.labeled.vertical.slider>.labels .label{transform:translate(-100%,-50%)}.ui.labeled.vertical.slider>.labels .label:after{height:1px;left:100%;top:50%;width:1.5em}.ui.labeled.vertical.slider>.labels .halftick.label:after{height:1px;width:.75em}.ui.labeled.vertical.reversed.slider>.labels .label{transform:translate(-100%,50%)}.ui.hover.slider .inner .thumb{opacity:0;transition:opacity .2s linear}.ui.hover.slider:not(.disabled):focus .inner .thumb,.ui.hover.slider:not(.disabled):hover .inner .thumb{opacity:1}.ui.inverted.slider .inner .track-fill{background-color:#545454}.ui.inverted.slider .inner .track{background-color:hsla(0,0%,100%,.08)}.ui.primary.slider .inner .track-fill{background-color:#2185d0}.ui.primary.inverted.slider .inner .track-fill{background-color:#54c8ff}.ui.primary.slider.basic .inner .thumb{background-color:#2185d0}.ui.primary.slider.basic .inner .thumb:hover,.ui.primary.slider.basic:focus .inner .thumb{background-color:#1678c2}.ui.primary.inverted.slider.basic .inner .thumb{background-color:#54c8ff}.ui.primary.inverted.slider.basic .inner .thumb:hover,.ui.primary.inverted.slider.basic:focus .inner .thumb{background-color:#21b8ff}.ui.secondary.slider .inner .track-fill{background-color:#1b1c1d}.ui.secondary.inverted.slider .inner .track-fill{background-color:#545454}.ui.secondary.slider.basic .inner .thumb{background-color:#1b1c1d}.ui.secondary.slider.basic .inner .thumb:hover,.ui.secondary.slider.basic:focus .inner .thumb{background-color:#27292a}.ui.secondary.inverted.slider.basic .inner .thumb{background-color:#545454}.ui.secondary.inverted.slider.basic .inner .thumb:hover,.ui.secondary.inverted.slider.basic:focus .inner .thumb{background-color:#6e6e6e}.ui.red.slider .inner .track-fill{background-color:#db2828}.ui.red.inverted.slider .inner .track-fill{background-color:#ff695e}.ui.red.slider.basic .inner .thumb{background-color:#db2828}.ui.red.slider.basic .inner .thumb:hover,.ui.red.slider.basic:focus .inner .thumb{background-color:#d01919}.ui.red.inverted.slider.basic .inner .thumb{background-color:#ff695e}.ui.red.inverted.slider.basic .inner .thumb:hover,.ui.red.inverted.slider.basic:focus .inner .thumb{background-color:#ff392b}.ui.orange.slider .inner .track-fill{background-color:#f2711c}.ui.orange.inverted.slider .inner .track-fill{background-color:#ff851b}.ui.orange.slider.basic .inner .thumb{background-color:#f2711c}.ui.orange.slider.basic .inner .thumb:hover,.ui.orange.slider.basic:focus .inner .thumb{background-color:#f26202}.ui.orange.inverted.slider.basic .inner .thumb{background-color:#ff851b}.ui.orange.inverted.slider.basic .inner .thumb:hover,.ui.orange.inverted.slider.basic:focus .inner .thumb{background-color:#e76b00}.ui.yellow.slider .inner .track-fill{background-color:#fbbd08}.ui.yellow.inverted.slider .inner .track-fill{background-color:#ffe21f}.ui.yellow.slider.basic .inner .thumb{background-color:#fbbd08}.ui.yellow.slider.basic .inner .thumb:hover,.ui.yellow.slider.basic:focus .inner .thumb{background-color:#eaae00}.ui.yellow.inverted.slider.basic .inner .thumb{background-color:#ffe21f}.ui.yellow.inverted.slider.basic .inner .thumb:hover,.ui.yellow.inverted.slider.basic:focus .inner .thumb{background-color:#ebcd00}.ui.olive.slider .inner .track-fill{background-color:#b5cc18}.ui.olive.inverted.slider .inner .track-fill{background-color:#d9e778}.ui.olive.slider.basic .inner .thumb{background-color:#b5cc18}.ui.olive.slider.basic .inner .thumb:hover,.ui.olive.slider.basic:focus .inner .thumb{background-color:#a7bd0d}.ui.olive.inverted.slider.basic .inner .thumb{background-color:#d9e778}.ui.olive.inverted.slider.basic .inner .thumb:hover,.ui.olive.inverted.slider.basic:focus .inner .thumb{background-color:#d2e745}.ui.green.slider .inner .track-fill{background-color:#21ba45}.ui.green.inverted.slider .inner .track-fill{background-color:#2ecc40}.ui.green.slider.basic .inner .thumb{background-color:#21ba45}.ui.green.slider.basic .inner .thumb:hover,.ui.green.slider.basic:focus .inner .thumb{background-color:#16ab39}.ui.green.inverted.slider.basic .inner .thumb{background-color:#2ecc40}.ui.green.inverted.slider.basic .inner .thumb:hover,.ui.green.inverted.slider.basic:focus .inner .thumb{background-color:#1ea92e}.ui.teal.slider .inner .track-fill{background-color:#00b5ad}.ui.teal.inverted.slider .inner .track-fill{background-color:#6dffff}.ui.teal.slider.basic .inner .thumb{background-color:#00b5ad}.ui.teal.slider.basic .inner .thumb:hover,.ui.teal.slider.basic:focus .inner .thumb{background-color:#009c95}.ui.teal.inverted.slider.basic .inner .thumb{background-color:#6dffff}.ui.teal.inverted.slider.basic .inner .thumb:hover,.ui.teal.inverted.slider.basic:focus .inner .thumb{background-color:#3affff}.ui.blue.slider .inner .track-fill{background-color:#2185d0}.ui.blue.inverted.slider .inner .track-fill{background-color:#54c8ff}.ui.blue.slider.basic .inner .thumb{background-color:#2185d0}.ui.blue.slider.basic .inner .thumb:hover,.ui.blue.slider.basic:focus .inner .thumb{background-color:#1678c2}.ui.blue.inverted.slider.basic .inner .thumb{background-color:#54c8ff}.ui.blue.inverted.slider.basic .inner .thumb:hover,.ui.blue.inverted.slider.basic:focus .inner .thumb{background-color:#21b8ff}.ui.violet.slider .inner .track-fill{background-color:#6435c9}.ui.violet.inverted.slider .inner .track-fill{background-color:#a291fb}.ui.violet.slider.basic .inner .thumb{background-color:#6435c9}.ui.violet.slider.basic .inner .thumb:hover,.ui.violet.slider.basic:focus .inner .thumb{background-color:#5829bb}.ui.violet.inverted.slider.basic .inner .thumb{background-color:#a291fb}.ui.violet.inverted.slider.basic .inner .thumb:hover,.ui.violet.inverted.slider.basic:focus .inner .thumb{background-color:#745aff}.ui.purple.slider .inner .track-fill{background-color:#a333c8}.ui.purple.inverted.slider .inner .track-fill{background-color:#dc73ff}.ui.purple.slider.basic .inner .thumb{background-color:#a333c8}.ui.purple.slider.basic .inner .thumb:hover,.ui.purple.slider.basic:focus .inner .thumb{background-color:#9627ba}.ui.purple.inverted.slider.basic .inner .thumb{background-color:#dc73ff}.ui.purple.inverted.slider.basic .inner .thumb:hover,.ui.purple.inverted.slider.basic:focus .inner .thumb{background-color:#cf40ff}.ui.pink.slider .inner .track-fill{background-color:#e03997}.ui.pink.inverted.slider .inner .track-fill{background-color:#ff8edf}.ui.pink.slider.basic .inner .thumb{background-color:#e03997}.ui.pink.slider.basic .inner .thumb:hover,.ui.pink.slider.basic:focus .inner .thumb{background-color:#e61a8d}.ui.pink.inverted.slider.basic .inner .thumb{background-color:#ff8edf}.ui.pink.inverted.slider.basic .inner .thumb:hover,.ui.pink.inverted.slider.basic:focus .inner .thumb{background-color:#ff5bd1}.ui.brown.slider .inner .track-fill{background-color:#a5673f}.ui.brown.inverted.slider .inner .track-fill{background-color:#d67c1c}.ui.brown.slider.basic .inner .thumb{background-color:#a5673f}.ui.brown.slider.basic .inner .thumb:hover,.ui.brown.slider.basic:focus .inner .thumb{background-color:#975b33}.ui.brown.inverted.slider.basic .inner .thumb{background-color:#d67c1c}.ui.brown.inverted.slider.basic .inner .thumb:hover,.ui.brown.inverted.slider.basic:focus .inner .thumb{background-color:#b0620f}.ui.grey.slider .inner .track-fill{background-color:#767676}.ui.grey.inverted.slider .inner .track-fill{background-color:#dcddde}.ui.grey.slider.basic .inner .thumb{background-color:#767676}.ui.grey.slider.basic .inner .thumb:hover,.ui.grey.slider.basic:focus .inner .thumb{background-color:#838383}.ui.grey.inverted.slider.basic .inner .thumb{background-color:#dcddde}.ui.grey.inverted.slider.basic .inner .thumb:hover,.ui.grey.inverted.slider.basic:focus .inner .thumb{background-color:#c2c4c5}.ui.black.slider .inner .track-fill{background-color:#1b1c1d}.ui.black.inverted.slider .inner .track-fill{background-color:#545454}.ui.black.slider.basic .inner .thumb{background-color:#1b1c1d}.ui.black.slider.basic .inner .thumb:hover,.ui.black.slider.basic:focus .inner .thumb{background-color:#27292a}.ui.black.inverted.slider.basic .inner .thumb{background-color:#545454}.ui.black.inverted.slider.basic .inner .thumb:hover,.ui.black.inverted.slider.basic:focus .inner .thumb{background-color:#000}.ui.slider.basic .inner .thumb{background-color:#1b1c1d}.ui.slider.basic .inner .thumb:hover,.ui.slider.basic:focus .inner .thumb{background-color:#27292a}.ui.inverted.slider.basic .inner .thumb{background-color:#545454}.ui.inverted.slider.basic .inner .thumb:hover,.ui.inverted.slider.basic:focus .inner .thumb{background-color:#000}.ui.slider.small .inner .thumb{height:1em;width:1em}.ui.slider.small:not(.vertical) .inner{height:1em}.ui.slider.small:not(.vertical) .inner .track,.ui.slider.small:not(.vertical) .inner .track-fill{height:.3em;top:.35em}.ui.small.labeled.slider:not(.vertical)>.labels,.ui.small.labeled.slider:not(.vertical)>.labels .label:after{height:1em}.ui.small.labeled.slider:not(.vertical)>.labels .halftick.label:after{height:.5em}.ui.slider.small.vertical .inner{width:1em}.ui.slider.small.vertical .inner .track,.ui.slider.small.vertical .inner .track-fill{left:.35em;width:.3em}.ui.small.labeled.vertical.slider>.labels,.ui.small.labeled.vertical.slider>.labels .label:after{width:1em}.ui.small.labeled.vertical.slider>.labels .halftick.label:after{width:.5em}.ui.slider.large .inner .thumb{height:2em;width:2em}.ui.slider.large:not(.vertical) .inner{height:2em}.ui.slider.large:not(.vertical) .inner .track,.ui.slider.large:not(.vertical) .inner .track-fill{height:.5em;top:.75em}.ui.large.labeled.slider:not(.vertical)>.labels,.ui.large.labeled.slider:not(.vertical)>.labels .label:after{height:2em}.ui.large.labeled.slider:not(.vertical)>.labels .halftick.label:after{height:1em}.ui.slider.large.vertical .inner{width:2em}.ui.slider.large.vertical .inner .track,.ui.slider.large.vertical .inner .track-fill{left:.75em;width:.5em}.ui.large.labeled.vertical.slider>.labels,.ui.large.labeled.vertical.slider>.labels .label:after{width:2em}.ui.large.labeled.vertical.slider>.labels .halftick.label:after{width:1em}.ui.slider.big .inner .thumb{height:2.5em;width:2.5em}.ui.slider.big:not(.vertical) .inner{height:2.5em}.ui.slider.big:not(.vertical) .inner .track,.ui.slider.big:not(.vertical) .inner .track-fill{height:.6em;top:.95em}.ui.big.labeled.slider:not(.vertical)>.labels,.ui.big.labeled.slider:not(.vertical)>.labels .label:after{height:2.5em}.ui.big.labeled.slider:not(.vertical)>.labels .halftick.label:after{height:1.25em}.ui.slider.big.vertical .inner{width:2.5em}.ui.slider.big.vertical .inner .track,.ui.slider.big.vertical .inner .track-fill{left:.95em;width:.6em}.ui.big.labeled.vertical.slider>.labels,.ui.big.labeled.vertical.slider>.labels .label:after{width:2.5em}.ui.big.labeled.vertical.slider>.labels .halftick.label:after{width:1.25em}
/*!
 * # Fomantic-UI - Rating
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.rating{display:inline-flex;vertical-align:baseline;white-space:nowrap}.ui.rating:last-child{margin-right:0}.ui.rating .icon{backface-visibility:hidden;background:transparent;color:rgba(0,0,0,.15);cursor:pointer;flex:1 0 auto;font-style:normal;font-weight:400;height:auto;line-height:1;margin:0;padding:0;text-align:center;transition:opacity .1s ease,background .1s ease,text-shadow .1s ease,color .1s ease;width:1.25em}.ui.rating .active.icon{background:transparent;color:rgba(0,0,0,.85)}.ui.rating .icon.selected,.ui.rating .icon.selected.active{background:transparent;color:rgba(0,0,0,.87)}.ui.primary.rating .active.icon{color:#54c8ff;text-shadow:0 -1px 0 #2185d0,-1px 0 0 #2185d0,0 1px 0 #2185d0,1px 0 0 #2185d0}.ui.primary.rating .icon.selected,.ui.primary.rating .icon.selected.active{color:#21b8ff;text-shadow:0 -1px 0 #1678c2,-1px 0 0 #1678c2,0 1px 0 #1678c2,1px 0 0 #1678c2}.ui.secondary.rating .active.icon{color:#545454;text-shadow:0 -1px 0 #1b1c1d,-1px 0 0 #1b1c1d,0 1px 0 #1b1c1d,1px 0 0 #1b1c1d}.ui.secondary.rating .icon.selected,.ui.secondary.rating .icon.selected.active{color:#6e6e6e;text-shadow:0 -1px 0 #27292a,-1px 0 0 #27292a,0 1px 0 #27292a,1px 0 0 #27292a}.ui.red.rating .active.icon{color:#ff695e;text-shadow:0 -1px 0 #db2828,-1px 0 0 #db2828,0 1px 0 #db2828,1px 0 0 #db2828}.ui.red.rating .icon.selected,.ui.red.rating .icon.selected.active{color:#ff392b;text-shadow:0 -1px 0 #d01919,-1px 0 0 #d01919,0 1px 0 #d01919,1px 0 0 #d01919}.ui.orange.rating .active.icon{color:#ff851b;text-shadow:0 -1px 0 #f2711c,-1px 0 0 #f2711c,0 1px 0 #f2711c,1px 0 0 #f2711c}.ui.orange.rating .icon.selected,.ui.orange.rating .icon.selected.active{color:#e76b00;text-shadow:0 -1px 0 #f26202,-1px 0 0 #f26202,0 1px 0 #f26202,1px 0 0 #f26202}.ui.yellow.rating .active.icon{color:#ffe21f;text-shadow:0 -1px 0 #fbbd08,-1px 0 0 #fbbd08,0 1px 0 #fbbd08,1px 0 0 #fbbd08}.ui.yellow.rating .icon.selected,.ui.yellow.rating .icon.selected.active{color:#ebcd00;text-shadow:0 -1px 0 #eaae00,-1px 0 0 #eaae00,0 1px 0 #eaae00,1px 0 0 #eaae00}.ui.olive.rating .active.icon{color:#d9e778;text-shadow:0 -1px 0 #b5cc18,-1px 0 0 #b5cc18,0 1px 0 #b5cc18,1px 0 0 #b5cc18}.ui.olive.rating .icon.selected,.ui.olive.rating .icon.selected.active{color:#d2e745;text-shadow:0 -1px 0 #a7bd0d,-1px 0 0 #a7bd0d,0 1px 0 #a7bd0d,1px 0 0 #a7bd0d}.ui.green.rating .active.icon{color:#2ecc40;text-shadow:0 -1px 0 #21ba45,-1px 0 0 #21ba45,0 1px 0 #21ba45,1px 0 0 #21ba45}.ui.green.rating .icon.selected,.ui.green.rating .icon.selected.active{color:#1ea92e;text-shadow:0 -1px 0 #16ab39,-1px 0 0 #16ab39,0 1px 0 #16ab39,1px 0 0 #16ab39}.ui.teal.rating .active.icon{color:#6dffff;text-shadow:0 -1px 0 #00b5ad,-1px 0 0 #00b5ad,0 1px 0 #00b5ad,1px 0 0 #00b5ad}.ui.teal.rating .icon.selected,.ui.teal.rating .icon.selected.active{color:#3affff;text-shadow:0 -1px 0 #009c95,-1px 0 0 #009c95,0 1px 0 #009c95,1px 0 0 #009c95}.ui.blue.rating .active.icon{color:#54c8ff;text-shadow:0 -1px 0 #2185d0,-1px 0 0 #2185d0,0 1px 0 #2185d0,1px 0 0 #2185d0}.ui.blue.rating .icon.selected,.ui.blue.rating .icon.selected.active{color:#21b8ff;text-shadow:0 -1px 0 #1678c2,-1px 0 0 #1678c2,0 1px 0 #1678c2,1px 0 0 #1678c2}.ui.violet.rating .active.icon{color:#a291fb;text-shadow:0 -1px 0 #6435c9,-1px 0 0 #6435c9,0 1px 0 #6435c9,1px 0 0 #6435c9}.ui.violet.rating .icon.selected,.ui.violet.rating .icon.selected.active{color:#745aff;text-shadow:0 -1px 0 #5829bb,-1px 0 0 #5829bb,0 1px 0 #5829bb,1px 0 0 #5829bb}.ui.purple.rating .active.icon{color:#dc73ff;text-shadow:0 -1px 0 #a333c8,-1px 0 0 #a333c8,0 1px 0 #a333c8,1px 0 0 #a333c8}.ui.purple.rating .icon.selected,.ui.purple.rating .icon.selected.active{color:#cf40ff;text-shadow:0 -1px 0 #9627ba,-1px 0 0 #9627ba,0 1px 0 #9627ba,1px 0 0 #9627ba}.ui.pink.rating .active.icon{color:#ff8edf;text-shadow:0 -1px 0 #e03997,-1px 0 0 #e03997,0 1px 0 #e03997,1px 0 0 #e03997}.ui.pink.rating .icon.selected,.ui.pink.rating .icon.selected.active{color:#ff5bd1;text-shadow:0 -1px 0 #e61a8d,-1px 0 0 #e61a8d,0 1px 0 #e61a8d,1px 0 0 #e61a8d}.ui.brown.rating .active.icon{color:#d67c1c;text-shadow:0 -1px 0 #a5673f,-1px 0 0 #a5673f,0 1px 0 #a5673f,1px 0 0 #a5673f}.ui.brown.rating .icon.selected,.ui.brown.rating .icon.selected.active{color:#b0620f;text-shadow:0 -1px 0 #975b33,-1px 0 0 #975b33,0 1px 0 #975b33,1px 0 0 #975b33}.ui.grey.rating .active.icon{color:#dcddde;text-shadow:0 -1px 0 #767676,-1px 0 0 #767676,0 1px 0 #767676,1px 0 0 #767676}.ui.grey.rating .icon.selected,.ui.grey.rating .icon.selected.active{color:#c2c4c5;text-shadow:0 -1px 0 #838383,-1px 0 0 #838383,0 1px 0 #838383,1px 0 0 #838383}.ui.black.rating .active.icon{color:#545454;text-shadow:0 -1px 0 #1b1c1d,-1px 0 0 #1b1c1d,0 1px 0 #1b1c1d,1px 0 0 #1b1c1d}.ui.black.rating .icon.selected,.ui.black.rating .icon.selected.active{color:#000;text-shadow:0 -1px 0 #27292a,-1px 0 0 #27292a,0 1px 0 #27292a,1px 0 0 #27292a}.ui.disabled.rating .icon{cursor:default}.ui.rating .icon.selected,.ui.rating.selected .active.icon,.ui.rating.selected .icon.selected{opacity:1}.ui.mini.rating{font-size:.78571429rem}.ui.tiny.rating{font-size:.85714286rem}.ui.small.rating{font-size:.92857143rem}.ui.rating{font-size:1rem}.ui.large.rating{font-size:1.14285714rem}.ui.huge.rating{font-size:1.42857143rem}.ui.massive.rating{font-size:2rem}
/*!
 * # Fomantic-UI - Search
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.search{position:relative}.ui.search>.prompt{-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-appearance:none;background:#fff;border:1px solid rgba(34,36,38,.15);box-shadow:inset 0 0 0 0 transparent;color:rgba(0,0,0,.87);font-size:1em;font-style:normal;font-weight:400;line-height:1.21428571em;margin:0;outline:none;padding:.67857143em 1em;text-shadow:none;transition:background-color .1s ease,color .1s ease,box-shadow .1s ease,border-color .1s ease}.ui.search .prompt{border-radius:500rem}.ui.search .prompt~.search.icon{cursor:pointer}.ui.search>.results{background:#fff;border:1px solid #d4d4d5;border-radius:.28571429rem;box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);display:none;left:0;margin-top:.5em;position:absolute;text-align:left;text-transform:none;top:100%;transform-origin:center top;white-space:normal;width:18em;z-index:998}.ui.search>.results>:first-child{border-radius:.28571429rem .28571429rem 0 0}.ui.search>.results>:last-child{border-radius:0 0 .28571429rem .28571429rem}.ui.search>.results .result{border-bottom:1px solid rgba(34,36,38,.1);color:rgba(0,0,0,.87);cursor:pointer;display:block;font-size:1em;line-height:1.33;overflow:hidden;padding:.85714286em 1.14285714em}.ui.search>.results .result:last-child{border-bottom:none!important}.ui.search>.results .result .image{background:none;border-radius:.25em;float:right;height:3em;overflow:hidden;width:5em}.ui.search>.results .result .image img{display:block;height:100%;width:auto}.ui.search>.results .result .image+.content{margin:0 6em 0 0}.ui.search>.results .result .title{color:rgba(0,0,0,.85);font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1em;font-weight:700;margin:-.14285714em 0 0}.ui.search>.results .result .description{color:rgba(0,0,0,.4);font-size:.92857143em;margin-top:0}.ui.search>.results .result .price{color:#21ba45;float:right}.ui.search>.results>.message{padding:1em}.ui.search>.results>.message .header{color:rgba(0,0,0,.87);font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1rem;font-weight:700}.ui.search>.results>.message .description{color:rgba(0,0,0,.87);font-size:1em;margin-top:.25rem}.ui.search>.results>.action{background:#f3f4f5;border-top:none;color:rgba(0,0,0,.87);display:block;font-weight:700;padding:.92857143em 1em;text-align:center}.ui.search>.prompt:focus{background:#fff;border-color:rgba(34,36,38,.35);color:rgba(0,0,0,.95)}.ui.loading.search .input>i.icon:before{border:.2em solid rgba(0,0,0,.1);border-radius:500rem}.ui.loading.search .input>i.icon:after,.ui.loading.search .input>i.icon:before{content:"";height:1.28571429em;left:50%;margin:-.64285714em 0 0 -.64285714em;position:absolute;top:50%;width:1.28571429em}.ui.loading.search .input>i.icon:after{animation:loader .6s linear infinite;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent}.ui.category.search>.results .category .result:hover,.ui.search>.results .result:hover{background:#f9fafb}.ui.search .action:hover:not(div){background:#e0e0e0}.ui.category.search>.results .category.active{background:#f3f4f5}.ui.category.search>.results .category.active>.name{color:rgba(0,0,0,.87)}.ui.category.search>.results .category .result.active,.ui.search>.results .result.active{background:#f3f4f5;border-left-color:rgba(34,36,38,.1);box-shadow:none;position:relative}.ui.search>.results .result.active .description,.ui.search>.results .result.active .title{color:rgba(0,0,0,.85)}.ui.disabled.search{cursor:default;opacity:.45;pointer-events:none}.ui.search.selection .prompt{border-radius:.28571429rem}.ui.search.selection>.icon.input>.remove.icon{color:"";left:auto;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:color .1s ease,opacity .1s ease}.ui.search.selection>.icon.input>.active.remove.icon{cursor:pointer;opacity:.8;pointer-events:auto}.ui.search.selection>.icon.input:not([class*="left icon"])>.icon~.remove.icon{right:1.85714em}.ui.search.selection>.icon.input>.remove.icon:hover{color:#db2828;opacity:1}.ui.category.search .results{width:28em}.ui.category.search .results.animating,.ui.category.search .results.visible{display:table}.ui.category.search>.results .category{background:#f3f4f5;box-shadow:none;display:table-row;transition:background .1s ease,border-color .1s ease}.ui.category.search>.results .category:last-child{border-bottom:none}.ui.category.search>.results .category:first-child .name+.result{border-radius:0 .28571429rem 0 0}.ui.category.search>.results .category:last-child .result:last-child{border-radius:0 0 .28571429rem 0}.ui.category.search>.results .category>.name{background:transparent;border-bottom:1px solid rgba(34,36,38,.1);color:rgba(0,0,0,.4);display:table-cell;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif;font-size:1em;font-weight:700;padding:.4em 1em;text-overflow:ellipsis;white-space:nowrap;width:100px}.ui.category.search>.results .category .results{background:#fff;border-bottom:1px solid rgba(34,36,38,.1);border-left:1px solid rgba(34,36,38,.15);display:table-cell}.ui.category.search>.results .category .result{border-bottom:1px solid rgba(34,36,38,.1);padding:.85714286em 1.14285714em;transition:background .1s ease,border-color .1s ease}.ui[class*="left aligned"].search>.results{left:0;right:auto}.ui[class*="right aligned"].search>.results{left:auto;right:0}.ui.fluid.search .results{width:100%}.ui.mini.search{font-size:.78571429em}.ui.small.search{font-size:.92857143em}.ui.search{font-size:1em}.ui.large.search{font-size:1.14285714em}.ui.big.search{font-size:1.28571429em}.ui.huge.search{font-size:1.42857143em}.ui.massive.search{font-size:1.71428571em}@media only screen and (max-width:767.98px){.ui.search .results{max-width:calc(100vw - 2rem)}}
/*!
 * # Fomantic-UI - Shape
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.shape{display:inline-block;perspective:2000px;position:relative;transition:transform .6s ease-in-out,left .6s ease-in-out,width .6s ease-in-out,height .6s ease-in-out;vertical-align:top}.ui.shape .sides{transform-style:preserve-3d}.ui.shape .side{backface-visibility:hidden;display:none;margin:0!important;opacity:1;width:100%}.ui.shape .side *{backface-visibility:visible!important}.ui.cube.shape .side{background-color:#e6e6e6;box-shadow:0 0 2px rgba(0,0,0,.3);color:rgba(0,0,0,.87);height:15em;min-width:15em;padding:2em}.ui.cube.shape .side>.content{display:table;height:100%;text-align:center;user-select:text;width:100%}.ui.cube.shape .side>.content>div{display:table-cell;font-size:2em;vertical-align:middle}.ui.text.shape.animating .sides{position:static}.ui.text.shape .side{white-space:nowrap}.ui.text.shape .side>*{white-space:normal}.ui.loading.shape{left:-9999px;position:absolute;top:-9999px}.ui.shape .animating.side{display:block;left:0;position:absolute;top:0;z-index:100}.ui.shape .hidden.side{opacity:.6}.ui.shape.animating .sides{position:absolute;transition:transform .6s ease-in-out,left .6s ease-in-out,width .6s ease-in-out,height .6s ease-in-out}.ui.shape.animating .side{transition:opacity .6s ease-in-out}.ui.shape .animating.side *,.ui.shape.animating .side *{transition:none}.ui.shape .active.side{display:block}
/*!
 * # Fomantic-UI - Sidebar
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.sidebar{-webkit-overflow-scrolling:touch;border-radius:0!important;height:100%!important;left:0;margin:0!important;max-height:100%;overflow-y:auto!important;position:fixed;top:0;transform:translateZ(0);transition:none;visibility:hidden;will-change:transform;z-index:102}.ui.sidebar,.ui.sidebar>*{backface-visibility:hidden}.ui.left.sidebar{left:0;right:auto;transform:translate3d(-100%,0,0)}.ui.right.sidebar{left:auto!important;right:0!important;transform:translate3d(100%,0,0)}.ui.bottom.sidebar,.ui.top.sidebar{height:auto!important;width:100%!important}.ui.top.sidebar{bottom:auto!important;top:0!important;transform:translate3d(0,-100%,0)}.ui.bottom.sidebar{bottom:0!important;top:auto!important;transform:translate3d(0,100%,0)}.pushable{height:100%;overflow-x:hidden;padding:0!important}body.pushable{background:#545454}body.pushable.dimmed{background:inherit}.pushable:not(body){transform:translateZ(0)}.pushable:not(body)>.fixed,.pushable:not(body)>.pusher:after,.pushable:not(body)>.ui.sidebar{position:absolute}.pushable>.fixed{position:fixed;will-change:transform;z-index:101}.pushable>.fixed,.pushable>.pusher{backface-visibility:hidden;transition:transform .5s ease}.pushable>.pusher{background:inherit;min-height:100%;overflow:hidden;position:relative;z-index:2}body.pushable>.pusher{background:#fff}.pushable>.pusher:after{background-color:rgba(0,0,0,.4);content:"";opacity:0;overflow:hidden;position:fixed;right:0;top:0;transition:opacity .5s;will-change:opacity;z-index:1000}.ui.sidebar.menu .item{border-radius:0!important}.pushable>.pusher.dimmed:after{height:100%!important;opacity:1!important;width:100%!important}.ui.animating.sidebar{visibility:visible}.ui.visible.sidebar{transform:translateZ(0);visibility:visible}.ui.bottom.visible.sidebar,.ui.left.visible.sidebar,.ui.right.visible.sidebar,.ui.top.visible.sidebar{box-shadow:0 0 20px rgba(34,36,38,.15)}.ui.visible.left.sidebar~.fixed,.ui.visible.left.sidebar~.pusher{transform:translate3d(260px,0,0)}.ui.visible.right.sidebar~.fixed,.ui.visible.right.sidebar~.pusher{transform:translate3d(-260px,0,0)}.ui.visible.top.sidebar~.fixed,.ui.visible.top.sidebar~.pusher{transform:translate3d(0,36px,0)}.ui.visible.bottom.sidebar~.fixed,.ui.visible.bottom.sidebar~.pusher{transform:translate3d(0,-36px,0)}.ui.visible.left.sidebar~.ui.visible.right.sidebar~.fixed,.ui.visible.left.sidebar~.ui.visible.right.sidebar~.pusher,.ui.visible.right.sidebar~.ui.visible.left.sidebar~.fixed,.ui.visible.right.sidebar~.ui.visible.left.sidebar~.pusher{transform:translateZ(0)}.ui.thin.left.sidebar,.ui.thin.right.sidebar{width:150px}.ui[class*="very thin"].left.sidebar,.ui[class*="very thin"].right.sidebar{width:60px}.ui.left.sidebar,.ui.right.sidebar{width:260px}.ui.wide.left.sidebar,.ui.wide.right.sidebar{width:350px}.ui[class*="very wide"].left.sidebar,.ui[class*="very wide"].right.sidebar{width:475px}.ui.visible.thin.left.sidebar~.fixed,.ui.visible.thin.left.sidebar~.pusher{transform:translate3d(150px,0,0)}.ui.visible[class*="very thin"].left.sidebar~.fixed,.ui.visible[class*="very thin"].left.sidebar~.pusher{transform:translate3d(60px,0,0)}.ui.visible.wide.left.sidebar~.fixed,.ui.visible.wide.left.sidebar~.pusher{transform:translate3d(350px,0,0)}.ui.visible[class*="very wide"].left.sidebar~.fixed,.ui.visible[class*="very wide"].left.sidebar~.pusher{transform:translate3d(475px,0,0)}.ui.visible.thin.right.sidebar~.fixed,.ui.visible.thin.right.sidebar~.pusher{transform:translate3d(-150px,0,0)}.ui.visible[class*="very thin"].right.sidebar~.fixed,.ui.visible[class*="very thin"].right.sidebar~.pusher{transform:translate3d(-60px,0,0)}.ui.visible.wide.right.sidebar~.fixed,.ui.visible.wide.right.sidebar~.pusher{transform:translate3d(-350px,0,0)}.ui.visible[class*="very wide"].right.sidebar~.fixed,.ui.visible[class*="very wide"].right.sidebar~.pusher{transform:translate3d(-475px,0,0)}.ui.overlay.sidebar{z-index:102}.ui.left.overlay.sidebar{transform:translate3d(-100%,0,0)}.ui.right.overlay.sidebar{transform:translate3d(100%,0,0)}.ui.top.overlay.sidebar{transform:translate3d(0,-100%,0)}.ui.bottom.overlay.sidebar{transform:translate3d(0,100%,0)}.animating.ui.overlay.sidebar,.ui.visible.overlay.sidebar{transition:transform .5s ease}.ui.visible.bottom.overlay.sidebar,.ui.visible.left.overlay.sidebar,.ui.visible.right.overlay.sidebar,.ui.visible.top.overlay.sidebar{transform:translateZ(0)}.ui.visible.overlay.sidebar~.fixed,.ui.visible.overlay.sidebar~.pusher{transform:none!important}.ui.push.sidebar{transition:transform .5s ease;z-index:102}.ui.left.push.sidebar{transform:translate3d(-100%,0,0)}.ui.right.push.sidebar{transform:translate3d(100%,0,0)}.ui.top.push.sidebar{transform:translate3d(0,-100%,0)}.ui.bottom.push.sidebar{transform:translate3d(0,100%,0)}.ui.uncover.sidebar,.ui.visible.push.sidebar{transform:translateZ(0)}.ui.uncover.sidebar{z-index:1}.ui.visible.uncover.sidebar{transform:translateZ(0);transition:transform .5s ease}.ui.slide.along.sidebar{z-index:1}.ui.left.slide.along.sidebar{transform:translate3d(-50%,0,0)}.ui.right.slide.along.sidebar{transform:translate3d(50%,0,0)}.ui.top.slide.along.sidebar{transform:translate3d(0,-50%,0)}.ui.bottom.slide.along.sidebar{transform:translate3d(0,50%,0)}.ui.animating.slide.along.sidebar{transition:transform .5s ease}.ui.visible.slide.along.sidebar{transform:translateZ(0)}.ui.slide.out.sidebar{z-index:1}.ui.left.slide.out.sidebar{transform:translate3d(50%,0,0)}.ui.right.slide.out.sidebar{transform:translate3d(-50%,0,0)}.ui.top.slide.out.sidebar{transform:translate3d(0,50%,0)}.ui.bottom.slide.out.sidebar{transform:translate3d(0,-50%,0)}.ui.animating.slide.out.sidebar{transition:transform .5s ease}.ui.visible.slide.out.sidebar{transform:translateZ(0)}.ui.scale.down.sidebar{transition:transform .5s ease;z-index:102}.ui.left.scale.down.sidebar{transform:translate3d(-100%,0,0)}.ui.right.scale.down.sidebar{transform:translate3d(100%,0,0)}.ui.top.scale.down.sidebar{transform:translate3d(0,-100%,0)}.ui.bottom.scale.down.sidebar{transform:translate3d(0,100%,0)}.ui.scale.down.left.sidebar~.pusher{transform-origin:75% 50%}.ui.scale.down.right.sidebar~.pusher{transform-origin:25% 50%}.ui.scale.down.top.sidebar~.pusher{transform-origin:50% 75%}.ui.scale.down.bottom.sidebar~.pusher{transform-origin:50% 25%}.ui.animating.scale.down>.visible.ui.sidebar{transition:transform .5s ease}.ui.animating.scale.down.sidebar~.pusher,.ui.visible.scale.down.sidebar~.pusher{display:block!important;height:100%;overflow:hidden!important;width:100%}.ui.visible.scale.down.sidebar{transform:translateZ(0)}.ui.visible.scale.down.sidebar~.pusher{transform:scale(.75)}
/*!
 * # Fomantic-UI - Sticky
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.sticky{position:static;transition:none;z-index:800}.ui.sticky.bound{left:auto;position:absolute;right:auto}.ui.sticky.fixed{left:auto;position:fixed;right:auto}.ui.sticky.bound.top,.ui.sticky.fixed.top{bottom:auto;top:0}.ui.sticky.bound.bottom,.ui.sticky.fixed.bottom{bottom:0;top:auto}.ui.native.sticky{position:-webkit-sticky;position:-moz-sticky;position:-ms-sticky;position:-o-sticky;position:sticky}
/*!
 * # Fomantic-UI - Tab
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.tab{display:none}.ui.tab.active,.ui.tab.open{display:block}.ui.tab.loading{display:block;min-height:250px;overflow:hidden;position:relative}.ui.tab.loading *{left:-10000px!important;position:relative!important}.ui.tab.loading.segment:before,.ui.tab.loading:before{border:.2em solid rgba(0,0,0,.1);border-radius:500rem;content:"";height:2.5em;left:50%;margin:-1.25em 0 0 -1.25em;position:absolute;top:50%;width:2.5em}.ui.tab.loading.segment:after,.ui.tab.loading:after{animation:loader .6s linear infinite;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent;content:"";height:2.5em;left:50%;margin:-1.25em 0 0 -1.25em;position:absolute;top:50%;width:2.5em}
/*!
 * # Fomantic-UI - Toast
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.toast-container{position:fixed;z-index:9999}.ui.top.right.toast-container{margin-left:.85714286em;right:.85714286em;top:.85714286em}.ui.top.left.toast-container{left:.85714286em;margin-right:.85714286em;top:.85714286em}.ui.top.center.toast-container{left:50%;top:.85714286em;transform:translate(-50%)}.ui.bottom.right.toast-container{bottom:.85714286em;margin-left:.85714286em;right:.85714286em}.ui.bottom.left.toast-container{bottom:.85714286em;left:.85714286em;margin-right:.85714286em}.ui.bottom.center.toast-container{bottom:.85714286em;left:50%;transform:translate(-50%)}.toast{border-radius:.28571429rem;color:hsla(0,0%,100%,.9);display:block;margin:0 0 6px;padding:.78571429em 1em}.floating.toast,.hoverfloating.toast:hover{box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.hoverfloating.message:hover{box-shadow:inset 0 0 0 1px,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.center.toast-container .toast-box,.right.toast-container .toast-box{margin-left:auto}.center.toast-container .toast-box{margin-right:auto}.animating.toast-box,.toast-box,.visible.toast-box{display:table!important}.toast-container .compact{display:block;width:300px}.toast-container .message,.toast:hover{cursor:pointer;opacity:1}.icon.toast .content{padding-left:3em}.toast>.content>.header{font-weight:700}.info.toast{background-color:#31ccec}.warning.toast{background-color:#f2c037}.success.toast{background-color:#21ba45}.error.toast{background-color:#db2828}.toast-box .info.attached.progress .bar{background:#12a1bf!important}.toast-box .warning.attached.progress .bar{background:#cf9b0d!important}.toast-box .success.attached.progress .bar{background:#15792d!important}.toast-box .error.attached.progress .bar{background:#9c1a1a!important}.primary.toast{background-color:#2185d0}.inverted.primary.toast,.toast-box .inverted.primary.attached.progress .bar{background-color:#54c8ff}.secondary.toast{background-color:#1b1c1d}.inverted.secondary.toast,.toast-box .inverted.secondary.attached.progress .bar{background-color:#545454}.red.toast{background-color:#db2828}.inverted.red.toast,.toast-box .inverted.red.attached.progress .bar{background-color:#ff695e}.orange.toast{background-color:#f2711c}.inverted.orange.toast,.toast-box .inverted.orange.attached.progress .bar{background-color:#ff851b}.yellow.toast{background-color:#fbbd08}.inverted.yellow.toast,.toast-box .inverted.yellow.attached.progress .bar{background-color:#ffe21f}.olive.toast{background-color:#b5cc18}.inverted.olive.toast,.toast-box .inverted.olive.attached.progress .bar{background-color:#d9e778}.green.toast{background-color:#21ba45}.inverted.green.toast,.toast-box .inverted.green.attached.progress .bar{background-color:#2ecc40}.teal.toast{background-color:#00b5ad}.inverted.teal.toast,.toast-box .inverted.teal.attached.progress .bar{background-color:#6dffff}.blue.toast{background-color:#2185d0}.inverted.blue.toast,.toast-box .inverted.blue.attached.progress .bar{background-color:#54c8ff}.violet.toast{background-color:#6435c9}.inverted.violet.toast,.toast-box .inverted.violet.attached.progress .bar{background-color:#a291fb}.purple.toast{background-color:#a333c8}.inverted.purple.toast,.toast-box .inverted.purple.attached.progress .bar{background-color:#dc73ff}.pink.toast{background-color:#e03997}.inverted.pink.toast,.toast-box .inverted.pink.attached.progress .bar{background-color:#ff8edf}.brown.toast{background-color:#a5673f}.inverted.brown.toast,.toast-box .inverted.brown.attached.progress .bar{background-color:#d67c1c}.grey.toast{background-color:#767676}.inverted.grey.toast,.toast-box .inverted.grey.attached.progress .bar{background-color:#dcddde}.black.toast{background-color:#1b1c1d}.inverted.black.toast,.toast-box .inverted.black.attached.progress .bar{background-color:#545454}.inverted.toast{color:rgba(0,0,0,.87)}.icon.toast>.icon:not(.close){font-size:1.5em;position:absolute}.icon.toast>.content,.icon.toast>.icon:not(.close){display:inline-block;vertical-align:middle}.toast-box .attached.progress .bar{min-width:0}.toast-box .active.progress .bar:after{animation:progress-active 2s ease infinite!important}.toast-box{margin-bottom:6px}.toast-box .message,.toast-box .toast{margin-bottom:0;margin-top:0;position:relative}.toast-box .attached.progress{z-index:1}.toast-box .bottom.attached.progress{margin:-3px 0 6px}.toast-box .top.attached.progress{margin:6px 0 -3px}.toast-box .message>.close.icon{right:.3em;top:.3em}.toast-box .toast>.close.icon{cursor:pointer;margin:0;opacity:.7;position:absolute;right:.3em;top:.3em;transition:opacity .1s ease}.toast-box .toast>.close.icon:hover{opacity:1}
/*!
 * # Fomantic-UI - Transition
 * http://github.com/fomantic/Fomantic-UI/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.transition{animation-duration:.3s;animation-fill-mode:both;animation-iteration-count:1;animation-timing-function:ease}.animating.transition{backface-visibility:hidden;visibility:visible!important}.loading.transition{left:-99999px;position:absolute;top:-99999px}.hidden.transition{display:none;visibility:hidden}.visible.transition{display:block!important;visibility:visible!important}.disabled.transition{animation-play-state:paused}.looping.transition{animation-iteration-count:infinite}.transition.browse{animation-duration:.5s}.transition.browse.in{animation-name:browseIn}.transition.browse.left.out,.transition.browse.out{animation-name:browseOutLeft}.transition.browse.right.out{animation-name:browseOutRight}@keyframes browseIn{0%{transform:scale(.8) translateZ(0);z-index:-1}10%{opacity:.7;transform:scale(.8) translateZ(0);z-index:-1}80%{opacity:1;transform:scale(1.05) translateZ(0);z-index:999}to{transform:scale(1) translateZ(0);z-index:999}}@keyframes browseOutLeft{0%{transform:translateX(0) rotateY(0deg) rotateX(0deg);z-index:999}50%{transform:translateX(-105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);z-index:-1}80%{opacity:1}to{opacity:0;transform:translateX(0) rotateY(0deg) rotateX(0deg) translateZ(-10px);z-index:-1}}@keyframes browseOutRight{0%{transform:translateX(0) rotateY(0deg) rotateX(0deg);z-index:999}50%{transform:translateX(105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);z-index:1}80%{opacity:1}to{opacity:0;transform:translateX(0) rotateY(0deg) rotateX(0deg) translateZ(-10px);z-index:1}}.drop.transition{animation-duration:.4s;animation-timing-function:cubic-bezier(.34,1.61,.7,1);transform-origin:top center}.drop.transition.in{animation-name:dropIn}.drop.transition.out{animation-name:dropOut}@keyframes dropIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes dropOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}.transition.fade.in{animation-name:fadeIn}.transition[class*="fade up"].in{animation-name:fadeInUp}.transition[class*="fade down"].in{animation-name:fadeInDown}.transition[class*="fade left"].in{animation-name:fadeInLeft}.transition[class*="fade right"].in{animation-name:fadeInRight}.transition.fade.out{animation-name:fadeOut}.transition[class*="fade up"].out{animation-name:fadeOutUp}.transition[class*="fade down"].out{animation-name:fadeOutDown}.transition[class*="fade left"].out{animation-name:fadeOutLeft}.transition[class*="fade right"].out{animation-name:fadeOutRight}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10%)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10%)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(10%)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(-10%)}to{opacity:1;transform:translateX(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(5%)}}@keyframes fadeOutDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5%)}}@keyframes fadeOutLeft{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(5%)}}@keyframes fadeOutRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-5%)}}.flip.transition.in,.flip.transition.out{animation-duration:.6s}.horizontal.flip.transition.in{animation-name:horizontalFlipIn}.horizontal.flip.transition.out{animation-name:horizontalFlipOut}.vertical.flip.transition.in{animation-name:verticalFlipIn}.vertical.flip.transition.out{animation-name:verticalFlipOut}@keyframes horizontalFlipIn{0%{opacity:0;transform:perspective(2000px) rotateY(-90deg)}to{opacity:1;transform:perspective(2000px) rotateY(0deg)}}@keyframes verticalFlipIn{0%{opacity:0;transform:perspective(2000px) rotateX(-90deg)}to{opacity:1;transform:perspective(2000px) rotateX(0deg)}}@keyframes horizontalFlipOut{0%{opacity:1;transform:perspective(2000px) rotateY(0deg)}to{opacity:0;transform:perspective(2000px) rotateY(90deg)}}@keyframes verticalFlipOut{0%{opacity:1;transform:perspective(2000px) rotateX(0deg)}to{opacity:0;transform:perspective(2000px) rotateX(-90deg)}}.scale.transition.in{animation-name:scaleIn}.scale.transition.out{animation-name:scaleOut}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.transition.fly{animation-duration:.6s;transition-timing-function:cubic-bezier(.215,.61,.355,1)}.transition.fly.in{animation-name:flyIn}.transition[class*="fly up"].in{animation-name:flyInUp}.transition[class*="fly down"].in{animation-name:flyInDown}.transition[class*="fly left"].in{animation-name:flyInLeft}.transition[class*="fly right"].in{animation-name:flyInRight}.transition.fly.out{animation-name:flyOut}.transition[class*="fly up"].out{animation-name:flyOutUp}.transition[class*="fly down"].out{animation-name:flyOutDown}.transition[class*="fly left"].out{animation-name:flyOutLeft}.transition[class*="fly right"].out{animation-name:flyOutRight}@keyframes flyIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scaleX(1)}}@keyframes flyInUp{0%{opacity:0;transform:translate3d(0,1500px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes flyInDown{0%{opacity:0;transform:translate3d(0,-1500px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes flyInLeft{0%{opacity:0;transform:translate3d(1500px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes flyInRight{0%{opacity:0;transform:translate3d(-1500px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes flyOut{20%{transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;transform:scale3d(1.1,1.1,1.1)}to{opacity:0;transform:scale3d(.3,.3,.3)}}@keyframes flyOutUp{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}@keyframes flyOutDown{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes flyOutRight{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes flyOutLeft{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}.transition.slide.in,.transition[class*="slide down"].in{animation-name:slideInY;transform-origin:top center}.transition[class*="slide up"].in{animation-name:slideInY;transform-origin:bottom center}.transition[class*="slide left"].in{animation-name:slideInX;transform-origin:center right}.transition[class*="slide right"].in{animation-name:slideInX;transform-origin:center left}.transition.slide.out,.transition[class*="slide down"].out{animation-name:slideOutY;transform-origin:top center}.transition[class*="slide up"].out{animation-name:slideOutY;transform-origin:bottom center}.transition[class*="slide left"].out{animation-name:slideOutX;transform-origin:center right}.transition[class*="slide right"].out{animation-name:slideOutX;transform-origin:center left}@keyframes slideInY{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes slideInX{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes slideOutY{0%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(0)}}@keyframes slideOutX{0%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(0)}}.transition.swing{animation-duration:.8s}.transition[class*="swing down"].in{animation-name:swingInX;transform-origin:top center}.transition[class*="swing up"].in{animation-name:swingInX;transform-origin:bottom center}.transition[class*="swing left"].in{animation-name:swingInY;transform-origin:center right}.transition[class*="swing right"].in{animation-name:swingInY;transform-origin:center left}.transition.swing.out,.transition[class*="swing down"].out{animation-name:swingOutX;transform-origin:top center}.transition[class*="swing up"].out{animation-name:swingOutX;transform-origin:bottom center}.transition[class*="swing left"].out{animation-name:swingOutY;transform-origin:center right}.transition[class*="swing right"].out{animation-name:swingOutY;transform-origin:center left}@keyframes swingInX{0%{opacity:0;transform:perspective(1000px) rotateX(90deg)}40%{opacity:1;transform:perspective(1000px) rotateX(-30deg)}60%{transform:perspective(1000px) rotateX(15deg)}80%{transform:perspective(1000px) rotateX(-7.5deg)}to{transform:perspective(1000px) rotateX(0deg)}}@keyframes swingInY{0%{opacity:0;transform:perspective(1000px) rotateY(-90deg)}40%{opacity:1;transform:perspective(1000px) rotateY(30deg)}60%{transform:perspective(1000px) rotateY(-17.5deg)}80%{transform:perspective(1000px) rotateY(7.5deg)}to{transform:perspective(1000px) rotateY(0deg)}}@keyframes swingOutX{0%{transform:perspective(1000px) rotateX(0deg)}40%{transform:perspective(1000px) rotateX(-7.5deg)}60%{transform:perspective(1000px) rotateX(17.5deg)}80%{opacity:1;transform:perspective(1000px) rotateX(-30deg)}to{opacity:0;transform:perspective(1000px) rotateX(90deg)}}@keyframes swingOutY{0%{transform:perspective(1000px) rotateY(0deg)}40%{transform:perspective(1000px) rotateY(7.5deg)}60%{transform:perspective(1000px) rotateY(-10deg)}80%{opacity:1;transform:perspective(1000px) rotateY(30deg)}to{opacity:0;transform:perspective(1000px) rotateY(-90deg)}}.transition.zoom.in{animation-name:zoomIn}.transition.zoom.out{animation-name:zoomOut}@keyframes zoomIn{0%{opacity:1;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes zoomOut{0%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(0)}}.flash.transition{animation-duration:.75s;animation-name:flash}.shake.transition{animation-duration:.75s;animation-name:shake}.bounce.transition{animation-duration:.75s;animation-name:bounce}.tada.transition{animation-duration:.75s;animation-name:tada}.pulse.transition{animation-duration:.5s;animation-name:pulse}.jiggle.transition{animation-duration:.75s;animation-name:jiggle}.transition.glow{animation-duration:2s;animation-name:glow;animation-timing-function:cubic-bezier(.19,1,.22,1)}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-30px)}60%{transform:translateY(-15px)}}@keyframes tada{0%{transform:scale(1)}10%,20%{transform:scale(.9) rotate(-3deg)}30%,50%,70%,90%{transform:scale(1.1) rotate(3deg)}40%,60%,80%{transform:scale(1.1) rotate(-3deg)}to{transform:scale(1) rotate(0)}}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes jiggle{0%{transform:scaleX(1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}to{transform:scaleX(1)}}@keyframes glow{0%{background-color:#fcfcfd}30%{background-color:#fff6cd}to{background-color:#fcfcfd}}
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;src:url(/18bc5140c285a5168bb7.eot?v=4.7.0);src:url(/18bc5140c285a5168bb7.eot?#iefix&v=4.7.0) format("embedded-opentype"),url(/5453b986bedad0f27d3d.woff2?v=4.7.0) format("woff2"),url(/58d76a9c2a8c3a9e4f18.woff?v=4.7.0) format("woff"),url(/b3fef8c1aa5ea1512e2e.ttf?v=4.7.0) format("truetype"),url(/acd2061ce2cbd1b527ee.svg?v=4.7.0#fontawesomeregular) format("svg")}.fa{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{text-align:center;width:1.28571429em}.fa-ul{list-style-type:none;margin-left:2.14285714em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2.14285714em;position:absolute;text-align:center;top:.14285714em;width:2.14285714em}.fa-li.fa-lg{left:-1.85714286em}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-close:before,.fa-remove:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-repeat:before,.fa-rotate-right:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-exclamation-triangle:before,.fa-warning:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-floppy-o:before,.fa-save:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-bolt:before,.fa-flash:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-chain-broken:before,.fa-unlink:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"\f150"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"\f151"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"\f152"}.fa-eur:before,.fa-euro:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-inr:before,.fa-rupee:before{content:"\f156"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"\f158"}.fa-krw:before,.fa-won:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-try:before,.fa-turkish-lira:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-bank:before,.fa-institution:before,.fa-university:before{content:"\f19c"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:"\f1c5"}.fa-file-archive-o:before,.fa-file-zip-o:before{content:"\f1c6"}.fa-file-audio-o:before,.fa-file-sound-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:"\f1d0"}.fa-empire:before,.fa-ge:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-paper-plane:before,.fa-send:before{content:"\f1d8"}.fa-paper-plane-o:before,.fa-send-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-bed:before,.fa-hotel:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-y-combinator:before,.fa-yc:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before,.fa-battery:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-television:before,.fa-tv:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:"\f2a3"}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-address-card:before,.fa-vcard:before{content:"\f2bb"}.fa-address-card-o:before,.fa-vcard-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer-full:before,.fa-thermometer:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bath:before,.fa-bathtub:before,.fa-s15:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVuZG9ycy4yMjhlYjVjZDk3MDNjN2UzNjViYy5jc3MiLCJtYXBwaW5ncyI6IkFBWUE7Ozs7Ozs7O0VBUUUsQ0NJRixpQkFHRSxrQkQ0cEJGLENDMXBCQSxLQUNFLHFCRDRwQkYsQ0N4cEJBLDJFQUNFLHVCQUF3QixDQUN4QixvQkQrcEJGO0FBQ0EsMkVBQTJFLENFMXJCM0UsS0FFRSw2QkFBOEIsQ0FEOUIsZ0JGcXNCRixDRWxyQkEsS0FDRSxhRityQkYsQ0V2ckJBLEdBQ0UsYUFBYyxDQUNkLGNGNnJCRixDRWxyQkEsR0FDRSxzQkFBdUIsQ0FDdkIsUUFBUyxDQUNULGdCRjZyQkYsQ0VyckJBLElBQ0UsK0JBQWlDLENBQ2pDLGFGNnJCRixDRW5yQkEsRUFDRSw0QkYwckJGLENFbHJCQSxZQUNFLGtCQUFtQixDQUNuQix5QkFBMEIsQ0FDMUIsZ0NGMnJCRixDRXByQkEsU0FFRSxrQkZ5ckJGLENFanJCQSxjQUdFLCtCQUFpQyxDQUNqQyxhRnlyQkYsQ0VsckJBLE1BQ0UsYUZ1ckJGLENFL3FCQSxRQUVFLGFBQWMsQ0FDZCxhQUFjLENBQ2QsaUJBQWtCLENBQ2xCLHVCRnFyQkYsQ0VsckJBLElBQ0UsYUZvckJGLENFanJCQSxJQUNFLFNGbXJCRixDRXpxQkEsSUFDRSxpQkZnckJGLENFcnFCQSxzQ0FLRSxtQkFBb0IsQ0FDcEIsY0FBZSxDQUNmLGdCQUFpQixDQUNqQixRRmlyQkYsQ0V6cUJBLGFBRUUsZ0JGZ3JCRixDRXhxQkEsY0FFRSxtQkYrcUJGLENFeHFCQSxnREFJRSx5QkY2cUJGLENFdHFCQSx3SEFJRSxpQkFBa0IsQ0FDbEIsU0YycUJGLENFcHFCQSw0R0FJRSw2QkZ5cUJGLENFbHFCQSxTQUNFLDBCRnVxQkYsQ0U3cEJBLE9BQ0UscUJBQXNCLENBQ3RCLGFBQWMsQ0FDZCxhQUFjLENBQ2QsY0FBZSxDQUNmLFNBQVUsQ0FDVixrQkYycUJGLENFcHFCQSxTQUNFLHVCRnlxQkYsQ0VscUJBLFNBQ0UsYUZ1cUJGLENFL3BCQSw2QkFFRSxxQkFBc0IsQ0FDdEIsU0Z1cUJGLENFaHFCQSxrRkFFRSxXRnFxQkYsQ0U3cEJBLGNBQ0UsNEJBQTZCLENBQzdCLG1CRnFxQkYsQ0U5cEJBLHlDQUNFLHVCRm1xQkYsQ0UzcEJBLDZCQUNFLHlCQUEwQixDQUMxQixZRm1xQkYsQ0V6cEJBLFFBQ0UsYUZncUJGLENFenBCQSxRQUNFLGlCRjhwQkYsQ0U1b0JBLGtCQUNFLFlGeXBCRjtBQUlBOzs7Ozs7OztFQVFFLENHdCtCRixVQUVFLFdIbWdFRixDR2hnRUEsS0FDRSxjSGtnRUYsQ0cvL0RBLEtBS0UsZ0JBSUEsc0JBRkEsZUFDQSxxQkFQQSxRQUFTLENBR1QsZ0JBREEsaUJIdWdFRixDRzEvREEsb0JBVkUsMkRBSkEsU0hzaEVGLENHeGdFQSxlQVFFLGdCQUZBLHlCQUNBLG1DSGlnRUYsQ0c1L0RBLEdBRUUsZUFEQSxlSCsvREYsQ0c1L0RBLEdBQ0UsdUJIOC9ERixDRzUvREEsR0FDRSx1Qkg4L0RGLENHNS9EQSxHQUNFLHVCSDgvREYsQ0c1L0RBLEdBQ0UsY0g4L0RGLENHMy9EQSwyRUFLRSxZSDYvREYsQ0cxL0RBLHNFQUtFLGVINC9ERixDR3AvREEsRUFFRSxxQkFEQSxjSDAvREYsQ0d2L0RBLGNBQ0UsWUh5L0RGLENHdi9EQSxhQUNFLGVIeS9ERixDR2wvREEsRUFDRSxhSHcvREYsQ0dyL0RBLFVBRkUsb0JIMi9ERixDR3ovREEsUUFDRSxhSHcvREYsQ0dsOERBLG9CQUNFLHlCQUNBLHFCSDI4REYsQ0d6OERBLGlCQUNFLHlCQUNBLHFCSDI4REYsQ0d6OERBLFlBQ0UseUJBQ0EscUJIMjhERixDR3Y4REEscURBRUUsbUNBQ0EscUJIMDhERixDR3g4REEsK0NBRUUsbUNBQ0EscUJIMDhERixDR3g4REEscUNBRUUsbUNBQ0EscUJIMDhERixDRy9nRUUseUJBQ0UsdUJBQXdCLENBRXhCLFlBREEsVUhtaEVKLENHaGhFRSwrQkFDRSwwQkFDQSxlSGtoRUosQ0doaEVFLCtCQUdFLDJCQURBLGtCQURBLGNBQWUsQ0FHZix5QkhraEVKLENHaGhFRSwrQ0FDRSwwQkhraEVKLENHaGhFRSxxQ0FDRSw4QkhraEVKLENHOWdFRSx3REFDRSw2QkhpaEVKLENHL2dFRSx3REFDRSw4QkhpaEVKLENHL2dFRSx3RUFDRSw4QkhpaEVKLENHL2dFRSw4REFDRSw4QkhpaEVKO0FBUUE7Ozs7Ozs7O0VBUUUsQ0lockVGLFdBZ0NFLHdDQXZCQSx3QkFGQSxXQUFZLENBa0JaLDJCQWZBLHFCQVRBLGNBQWUsQ0FDZixvQkFBcUIsQ0FVckIsMkRBU0EsaUJBQWtCLENBRmxCLGdCQUNBLGdCQU5BLG1CQVZBLGNBQWUsQ0FFZixZQUFhLENBU2IsMEJBT0EsaUJBQWtCLENBQ2xCLG9CQUFxQixDQUxyQixpQkFEQSxvQkFZQSw2R0FEQSxnQkFBaUIsQ0FwQmpCLHdCQXNCQSxnQkorN0ZGLENJajdGQSw0QkFsQkUsdUVKKzhGRixDSTc3RkEsaUJBQ0UseUJBQ0Esc0JBRUEsb0JKeTdGRixDSXQ3RkEsdUJBQ0UsV0p3N0ZGLENJajdGQSxpQkFDRSx5QkFFQSxzQkFDQSxjQUZBLG9CSnc3RkYsQ0luN0ZBLHVCQUNFLFdKcTdGRixDSTk2RkEsMkNBRUUseUJBQ0Esb0JBRUEsNENBREEsb0JKbzdGRixDSTU2RkEsa0JBR0Usc0NKazdGRixDSS82RkEsMENBRkUscUJKczdGRixDSS82RkEsbUVBVkUseUJBQ0EscUJKNDdGRixDSXg2RkEsMkRBSUUsaUJBQWtCLENBRmxCLGNBQWUsQ0FHZixVQUNBLG9CQUxBLGlCQUFrQixDQUVsQiwwQkFBNEIsQ0FJNUIseUNKODZGRixDSTU2RkEsMEJBV0Usa0NBREEsb0JKNjZGRixDSTE2RkEsbURBWEUsVUFBVyxDQU1YLG9CQUpBLFFBQVMsQ0FFVCxxQ0FMQSxpQkFBa0IsQ0FFbEIsT0FBUSxDQUlSLGtCSjg3RkYsQ0l4N0ZBLHlCQVlFLHFDQUNBLGtCQUhBLHFCQU1BLGdDQUFpQyxDQUZqQyxVSjA2RkYsQ0l0NkZBLHNDQUNFLDRCQUE2QixDQUM3QixlSnc2RkYsQ0lyNkZBLCtDQUNFLDJCSnU2RkYsQ0lyNkZBLDhDQUNFLG9CSnU2RkYsQ0loNkZBLHNJQU9FLHFCQUFzQixDQUN0QixlQUFnQixDQUhoQixjQUFlLENBQ2Ysc0JBR0EsNkJKcTZGRixDSWo2RkEsc0NBQ0UsOEJKbzZGRixDSXo1RkEsb0JBRUUsZUFBZ0IsQ0FDaEIseUJBQTJCLENBRjNCLGlCQUFrQixDQUdsQixzQkFDQSxTSmk2RkYsQ0k5NUZBLDZCQUNFLDZCSmc2RkYsQ0k5NUZBLHFDQUVFLG1CQURBLGlCSmk2RkYsQ0k5NUZBLG9DQUNFLGlCQUFrQixDQUNsQixVSmc2RkYsQ0k1NUZBLHlFQUVFLDRCSis1RkYsQ0k3NUZBLHFDQUNFLFNBQVUsQ0FDVixPSis1RkYsQ0k3NUZBLG9DQUVFLFNBQVUsQ0FFVixpQkFEQSxXQUFZLENBRlosT0prNkZGLENJNzVGQSxzRkFFRSxTQUFVLENBQ1YsVUorNUZGLENJNzVGQSxvRkFFRSxTQUFVLENBQ1YsT0orNUZGLENJMzVGQSwyRkFFRSwwQ0o4NUZGLENJNTVGQSw4Q0FFRSxVQUFXLENBRFgsdUJKKzVGRixDSTU1RkEsNkNBRUUsTUFBTyxDQUNQLFVBQVcsQ0FGWCxRSmc2RkYsQ0k1NUZBLHdHQUdFLFVBQVcsQ0FEWCwwQkorNUZGLENJNTVGQSxzR0FHRSxVQUFXLENBRFgsT0orNUZGLENJMTVGQSxtRkFFRSw4Q0o2NUZGLENJMzVGQSwwQ0FDRSxTQUFVLENBRVYsU0FBVSxDQURWLFVBQVcsQ0FFWCxrQko2NUZGLENJMzVGQSx5Q0FFRSxNQUFPLENBRFAsU0FBVSxDQUVWLFVBQVcsQ0FDWCxvQko2NUZGLENJMzVGQSxnR0FFRSxTQUFVLENBRVYsU0FBVSxDQURWLFVBQVcsQ0FFWCxvQko2NUZGLENJMzVGQSw4RkFFRSxNQUFPLENBRVAsU0FBVSxDQURWLFVBQVcsQ0FFWCxrQko2NUZGLENJdDVGQSxvQkFFRSwyQkFBNEIsQ0FENUIsZ0NBRUEsV0FDQSwwQkoyNUZGLENJdjVGQSw2QkFDRSxpQkowNUZGLENJeDVGQSx5Q0FDRSxhSjA1RkYsQ0l4NUZBLHNDQUNFLGVKMDVGRixDSXg1RkEsa0RBQ0UsWUowNUZGLENJNzRGQSwrRUFFRSxnQkFDQSxnQ0FDQSxvQkp1NUZGLENJbjVGQSxpQ0FDRSxtQkFDQSxtQ0FDQSxvQkpzNUZGLENJOTRGQSw4QkFHRSxlQUFnQixDQUVoQixXQUFZLENBQ1osZUFBZ0IsQ0FMaEIsbUJBQW9CLENBQ3BCLGtCQUFtQixDQUVuQixtQkpxNUZGLENJaDVGQSwyQkFDRSxRSms1RkYsQ0loNUZBLDBCQUVFLG1CQUlBLGdDQUxBLFlBQWEsQ0FHYixjQURBLDRCQUVBLFVKbTVGRixDSTk0RkEscUNBRUUsY0FEQSxZSms1RkYsQ0k3NEZBLHdEQUVFLDRCQUE2QixDQUQ3Qix5QkppNUZGLENJeDRGQSxpR0FFRSwyQkFBNEIsQ0FENUIsd0JKZzVGRixDSTc0RkEseUNBRUUsNEJBQTZCLENBRDdCLHlCSmc1RkYsQ0l2NEZBLG9CQUNFLHlCQUdBLHNCQUNBLDRDQUhBLFdBQ0EsZ0JKKzRGRixDSTM0RkEsMEJBQ0UseUJBQ0EsV0FDQSxnQko2NEZGLENJMzRGQSwyQkFDRSx5QkFDQSxXQUNBLGdCSjY0RkYsQ0l6NEZBLG1CQUNFLHlCQUdBLHNCQUNBLDRDQUhBLFdBQ0EsZ0JKODRGRixDSTE0RkEseUJBQ0UseUJBQ0EsV0FDQSxnQko0NEZGLENJMTRGQSwwQkFDRSx5QkFDQSxXQUNBLGdCSjQ0RkYsQ0l4NEZBLHVCQUNFLHlCQUdBLHNCQUNBLDRDQUhBLFdBQ0EsZ0JKNjRGRixDSXo0RkEsNkJBQ0UseUJBQ0EsV0FDQSxnQkoyNEZGLENJejRGQSw4QkFDRSx5QkFDQSxXQUNBLGdCSjI0RkYsQ0l2NEZBLG9CQUNFLHlCQUNBLFdBQ0EsZ0JKMDRGRixDSXg0RkEsMEJBQ0UseUJBQ0EsV0FDQSxnQkowNEZGLENJeDRGQSwyQkFDRSx5QkFDQSxXQUNBLGdCSjA0RkYsQ0l0NEZBLG1CQUNFLHFCQUdBLHNCQUNBLDRDQUhBLFdBQ0EsZ0JKMjRGRixDSXY0RkEseUJBQ0UseUJBQ0EsV0FDQSxnQkp5NEZGLENJdjRGQSwwQkFDRSxzQkFDQSxXQUNBLGdCSnk0RkYsQ0lyNEZBLHFCQUNFLHlCQUdBLHNCQUNBLDRDQUhBLFdBQ0EsZ0JKMDRGRixDSXQ0RkEsMkJBQ0UseUJBQ0EsV0FDQSxnQkp3NEZGLENJdDRGQSw0QkFDRSx5QkFDQSxXQUNBLGdCSnc0RkYsQ0lwNEZBLHFCQUNFLHlCQUdBLHNCQUNBLDRDQUhBLFdBQ0EsZ0JKeTRGRixDSXI0RkEsMkJBQ0UseUJBQ0EsV0FDQSxnQkp1NEZGLENJcjRGQSw0QkFDRSx5QkFDQSxXQUNBLGdCSnU0RkYsQ0luNEZBLGNBQ0UseUJBRUEsc0JBQ0EsNENBRkEsVUp3NEZGLENJcDRGQSxvQkFDRSx5QkFDQSxVSnM0RkYsQ0lwNEZBLHFCQUNFLHlCQUNBLFVKczRGRixDSWw0RkEsb0JBQ0UseUJBRUEsc0JBQ0EsNENBRkEsVUp1NEZGLENJbjRGQSwwQkFDRSx5QkFDQSxVSnE0RkYsQ0luNEZBLDJCQUNFLHlCQUNBLFVKcTRGRixDSWo0RkEsb0JBQ0Usc0JBRUEsc0JBQ0EsNENBRkEsVUpzNEZGLENJbDRGQSwwQkFDRSx5QkFDQSxVSm80RkYsQ0lsNEZBLDJCQUNFLHNCQUNBLFVKbzRGRixDSTczRkEsOEJBTUUsU0FMQSxZQUNBLFdBRUEsNEJBQ0EsaUJKbTRGRixDSS8zRkEsK0lBTkUsbUNKeTRGRixDSS8zRkEsOERBQ0UsbUNKaTRGRixDSXIzRkEscUVBRUUsVUFBVyxDQUNYLGFBQWMsQ0FDZCxrQko2M0ZGLENJMzNGQSx1RUFFRSxXQUFZLENBRVosa0JBREEsY0o4M0ZGLENJdDNGQSwrQ0FFRSwyQkoyM0ZGLENJejNGQSx5REFFRSxtQkoyM0ZGLENJejNGQSx5RUFFRSxnQ0oyM0ZGLENJejNGQSxxRkFFRSxxQkoyM0ZGLENJcDNGQSx1RUFHRSxzQkp5M0ZGLENJdjNGQSx1RUFHRSxzQkp5M0ZGLENJdjNGQSwwRUFHRSxzQkp5M0ZGLENJdjNGQSwrQ0FHRSxjSnkzRkYsQ0l2M0ZBLDBFQUdFLHVCSnkzRkYsQ0l2M0ZBLG9FQUdFLHVCSnkzRkYsQ0l2M0ZBLHVFQUdFLHVCSnkzRkYsQ0l2M0ZBLGdGQUdFLHVCSnkzRkYsQ0lsM0ZBLGtFQUNFLHNCSnczRkYsQ0luM0ZBLGtFQUNFLHNCSnczRkYsQ0luM0ZBLG9FQUNFLHNCSnczRkYsQ0luM0ZBLG9FQUNFLHVCSnczRkYsQ0luM0ZBLGdFQUNFLHVCSnczRkYsQ0luM0ZBLGtFQUNFLHVCSnczRkYsQ0luM0ZBLHdFQUNFLHVCSnczRkYsQ0lqM0ZBLHlDQUVFLG1CSnMzRkYsQ0lwM0ZBLHFEQUdFLGtCQUFvQixDQURwQixXQUVBLGtCSnMzRkYsQ0k5MkZBLDJDQUVFLDRCQUdBLDJCQUdBLDhDQUxBLHFCQUNBLGdCQUdBLDBCQUE0QixDQUQ1QixtQkpxM0ZGLENJajNGQSxrQkFFRSxvQ0FDQSwyQkFGQSxlSnEzRkYsQ0lqM0ZBLDBCQUNFLGVKbTNGRixDSTEyRkEsOEdBRUUsZ0JBRUEsK0VBREEsb0JKbTNGRixDSWgzRkEseURBRUUsbUJBRUEsZ0ZBREEsb0JKbTNGRixDSWgzRkEseURBRUUsMkJBQ0EsY0FDQSxxQkprM0ZGLENJaDNGQSxxRUFFRSxnQ0prM0ZGLENJOTJGQSxnQ0FDRSxvRkppM0ZGLENJLzJGQSxpQ0FDRSxxRkppM0ZGLENJLzJGQSxpQ0FDRSxhSmkzRkYsQ0k3MkZBLDZEQUVFLDRCQUE2QixDQUU3Qiw4Q0FEQSxhSmkzRkYsQ0l6MkZBLGtKQUdFLGdDQURBLFVKaTNGRixDSTkyRkEsMkVBRUUscUNBRUEsOENBREEsVUppM0ZGLENJOTJGQSwyRUFFRSxxQ0FHQSw4Q0FGQSxXQUNBLGdCSmkzRkYsQ0k5MkZBLHVGQUVFLHFDQUNBLCtCSmczRkYsQ0kzMkZBLDBCQUNFLHlDQUNBLGVKODJGRixDSTUyRkEsbUNBRUUsYUFBb0IsQ0FDcEIsdUNKODJGRixDSTUyRkEsK0NBQ0Usa0JKODJGRixDSXIyRkEsb0JBdUJFLGdCQXJCQSxlQUFnQixDQWtCZCxlQUFnQixDQUVsQixxQkFuQkEsaURBTUEsdUJBUkEsbUNKaTNGRixDSXYwRkEsb0RBSEUsZ0JBWEUsZ0NBVUYsVUpxMUZGLENJajBGQSwyQkFnQkUsZ0JBYkUsNENBREEsZ0NBYUYsVUp3ekZGLENJaHpGQSx5REFHRSxvQ0FDQSw4QkFGQSxpQkp1ekZGLENJanpGQSxxRUFXRSxlQUtBLGlDQVRBLGVBQWdCLENBRWhCLGlDQUFrQyxDQURsQyw4QkFBK0IsQ0FVL0Isd0NBREEsU0FaQSxXQUFZLENBRFosTUFBTyxDQUVQLGFBQWMsQ0FRZCxTQUZBLHNCQVZBLGlCQUFrQixDQVFsQixpQkFBa0IsQ0FQbEIsS0FBTSxDQVlOLGtCSnN6RkYsQ0kveUZBLHdDQUVFLDZCQURBLG9DSm16RkYsQ0loekZBLDhDQUdFLGVBQWdCLENBRWhCLGtDQUFtQyxDQURuQywrQkFBZ0MsQ0FFaEMsdUNBTEEsU0FBVSxDQUNWLE9Kc3pGRixDSTl5RkEsb0tBSUUsYUFBYyxDQUNkLGlCQUFrQixDQUdsQixpQkFBa0IsQ0FEbEIsS0FBTSxDQUROLFVKa3pGRixDSTd5RkEsdUNBQ0UsZUoreUZGLENJN3lGQSxtREFFRSx1Q0FEQSxtQ0pnekZGLENJN3lGQSxrREFFRSx3Q0FEQSxvQ0pnekZGLENJN3lGQSw0REFDRSxlQUFnQixDQUNoQixtQ0oreUZGLENJN3lGQSwyREFDRSxlQUFnQixDQUNoQixzQ0oreUZGLENJM3lGQSw2Q0FDRSxtQ0o4eUZGLENJcnlGQSw2RkFHRSx5QkFDQSxlQUFnQixDQUVoQixXQURBLGdCSjR5RkYsQ0l6eUZBLCtCQUNFLHlCQUVBLFdBREEsZ0JKNHlGRixDSXB5RkEsb0JBQ0Usa0JKeXlGRixDSXZ5RkEsMEJBRUUsdUJBQXdCLENBRHhCLFNKMHlGRixDSWp5RkEsZ0JBR0Usb0JBRkEsaUJBQWtCLENBQ2xCLFdBRUEsU0pzeUZGLENJcHlGQSx1QkFRRSxzQkFMQSxxQkFvQkEsdUNBTEEscUJBYkEsYUFlQSxrQkFDQSxnQkFOQSxvQkFSQSxRQUFTLENBVVQseUJBTEEseUJBREEsd0JBVkEsaUJBQWtCLENBQ2xCLGlCQUFrQixDQU9sQixpQkFIQSxPQUFRLENBUVIsa0JKeXlGRixDSTl4RkEsa0NBQ0UsdUJKZ3lGRixDSTV4RkEsc0JBQ0UsaUJKK3hGRixDSTd4RkEsNEJBQ0UsWUoreEZGLENJcnhGQSxvQkFJRSxlQUFnQixDQUNoQix3Q0FIQSxhQUFjLENBQ2QsUUFBUyxDQUZULGlCSit4RkYsQ0l2eEZBLHdCQUNFLDJDSjB4RkYsQ0l4eEZBLDJCQUNFLDJDSjB4RkYsQ0l0eEZBLHlCQUVFLGdCQUFpQixDQUlqQiw0Q0FMQSxvQkFBcUIsQ0FJckIsb0JBRkEsZ0JKMnhGRixDSXR4RkEsMEJBSUUsNENBSEEsb0JBQXFCLENBRXJCLG1CQURBLGVKMHhGRixDSXB4RkEscUJBR0UsZUFBZ0IsQ0FEaEIsWUFBYSxDQUliLGlCQUNBLGtCQU5BLGlCQUFrQixDQUdsQixvQkFBc0IsQ0FDdEIsWUp5eEZGLENJcnhGQSw2QkFDRSxRSnV4RkYsQ0lseEZBLGlGQUNFLGVKdXhGRixDSW54RkEsbUNBRUUsNENBREEsa0JKdXhGRixDSXB4RkEsdURBQ0UsZ0NKc3hGRixDSXB4RkEsc0RBQ0UsZ0NKc3hGRixDSW54RkEsc0NBRUUsNENBREEsZUpzeEZGLENJbnhGQSwwREFDRSxnQ0pxeEZGLENJbnhGQSx5REFDRSxnQ0pxeEZGLENJanhGQSxvQ0FJRSw0Q0FIQSxtQkFBb0IsQ0FFcEIsaUJBREEsY0pzeEZGLENJbHhGQSx3REFFRSxpQ0FEQSxnQkpxeEZGLENJbHhGQSx1REFFRSxpQ0FEQSxnQkpxeEZGLENJanhGQSxxQ0FJRSw0Q0FIQSxtQkFBb0IsQ0FDcEIsYUFBYyxDQUNkLGlCSm94RkYsQ0lqeEZBLHlEQUVFLGlDQURBLGdCSm94RkYsQ0lqeEZBLHdEQUVFLGlDQURBLGdCSm94RkYsQ0k1d0ZBLG1DQUVFLFVKaXhGRixDSS93RkEsaUJBQ0UsYUppeEZGLENJOXdGQSxnQkFDRSxVSmd4RkYsQ0k5d0ZBLHdCQUNFLFNKZ3hGRixDSTd3RkEsa0JBQ0UsVUord0ZGLENJN3dGQSwwQkFDRSxhSit3RkYsQ0k1d0ZBLGlCQUNFLFVKOHdGRixDSTV3RkEseUJBQ0UsU0o4d0ZGLENJM3dGQSxpQkFDRSxVSjZ3RkYsQ0kzd0ZBLHlCQUNFLFNKNndGRixDSTF3RkEsZ0JBQ0UsVUo0d0ZGLENJMXdGQSx3QkFDRSxhSjR3RkYsQ0l6d0ZBLGtCQUNFLFVKMndGRixDSXp3RkEsMEJBQ0UsYUoyd0ZGLENJeHdGQSxrQkFDRSxVSjB3RkYsQ0l4d0ZBLDBCQUNFLFdKMHdGRixDSXZ3RkEsaUJBQ0UsVUp5d0ZGLENJdndGQSx5QkFDRSxZSnl3RkYsQ0l0d0ZBLGdCQUNFLFVKd3dGRixDSXR3RkEsd0JBQ0UsU0p3d0ZGLENJcndGQSxtQkFDRSxVSnV3RkYsQ0lyd0ZBLDJCQUNFLFdKdXdGRixDSXB3RkEsbUJBQ0UsVUpzd0ZGLENJcHdGQSwyQkFDRSxhSnN3RkYsQ0lsd0ZBLDhEQUVFLFlBQWEsQ0FFYixzQkFBdUIsQ0FEdkIsVUpzd0ZGLENJbHdGQSxpQ0FDRSxVSm93RkYsQ0lsd0ZBLG1DQUNFLGNKb3dGRixDSWx3RkEsa0NBQ0UsVUpvd0ZGLENJbHdGQSxrQ0FDRSxVSm93RkYsQ0lsd0ZBLGlDQUNFLGNKb3dGRixDSWx3RkEsbUNBQ0UsY0pvd0ZGLENJbHdGQSxtQ0FDRSxZSm93RkYsQ0lsd0ZBLGtDQUNFLGFKb3dGRixDSWx3RkEsaUNBQ0UsVUpvd0ZGLENJbHdGQSxvQ0FDRSxZSm93RkYsQ0lsd0ZBLG9DQUNFLGNKb3dGRixDSy9sSUMsK0NENDNDRyx5QkFHQSxzQkFGQSxXQUNBLGdCSjJ1RkosQ0t6bUlDLG1CRGs0Q0csMkNKMHVGSixDSzVtSUMsMkREczRDRyx5QkFDQSxXQUNBLGdCSjB1RkosQ0tsbklDLDJERDQ0Q0cseUJBQ0EsV0FDQSxnQkowdUZKLENLeG5JQyw2RERrNUNHLHlCQUNBLFdBQ0EsZ0JKMHVGSixDSzluSUMsZ0pEMDVDRyx5QkFDQSxXQUNBLGdCSjB1RkosQ0t0b0lDLDJERGs2Q0csc0JBQXVCLENBQ3ZCLG1DQUNBLGFKeXVGSixDSzdvSUMsdUVEdzZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUp5dUZKLENLbnBJQyx1RUQ4NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSnl1RkosQ0t6cElDLHlFRG83Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKeXVGSixDSy9wSUMseUVEMDdDRyxtQ0FDQSxhSnl1RkosQ0twcUlDLG1FRDg3Q0csZ0JKeXVGSixDS3ZxSUMsaUVEbzhDRyw0QkFBNkIsQ0FRM0IsbUNBQ0EsYUppdUZOLENLOXFJQyx3VER3OUNHLGVBQWlCLENBQ2pCLFVKZ3VGSixDS3pySUMsNkVENjlDRyx3QkpndUZKLENLN3JJQyw2RURpK0NHLHdCSmd1RkosQ0tqc0lDLCtFRHErQ0csd0JKZ3VGSixDS3JzSUMsK0VEeStDRyx3QkpndUZKLENLenNJQyx3SERnL0NHLDRCQUE2QixDQUM3Qiw4Q0FDQSxVSit0RkosQ0tqdElDLDBJRHUvQ0csbUNBT0UsYUp5dEZOLENLdnRJQyx5RkRvZ0RHLG1DQUNBLGFKd3RGSixDSzd0SUMsNklEMGdERyxtQ0FPRSxhSmt0Rk4sQ0tudUlDLDZJRHVoREcsbUNBT0UsYUoyc0ZOLENLenVJQywrR0R1aURHLHNCQUF1QixDQVdyQixlQUFnQixDQUVsQixhSjZyRkosQ0tqdklDLHVIRDRqREssbUNBV0YsYUpnckZKLENLdnZJQyxpSUQra0RLLG1DQVdGLGFKbXFGSixDSzd2SUMsd1FEcW1ESyxtQ0FXRixhSnNwRkosQ0t0d0lDLG1ERDQzQ0cseUJBR0Esc0JBRkEsV0FDQSxnQkorNEZKLENLN3dJQyxxQkRrNENHLDJDSjg0RkosQ0toeElDLCtERHM0Q0cseUJBQ0EsV0FDQSxnQko4NEZKLENLdHhJQywrREQ0NENHLHlCQUNBLFdBQ0EsZ0JKODRGSixDSzV4SUMsaUVEazVDRyx5QkFDQSxXQUNBLGdCSjg0RkosQ0tseUlDLHdKRDA1Q0cseUJBQ0EsV0FDQSxnQko4NEZKLENLMXlJQywrRERrNkNHLHNCQUF1QixDQUN2QixtQ0FDQSxhSjY0RkosQ0tqeklDLDJFRHc2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKNjRGSixDS3Z6SUMsMkVEODZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUo2NEZKLENLN3pJQyw2RURvN0NHLHNCQUF3QixDQUN4QixtQ0FDQSxhSjY0RkosQ0tuMElDLDZFRDA3Q0csbUNBQ0EsYUo2NEZKLENLeDBJQyxxRUQ4N0NHLGdCSjY0RkosQ0szMElDLHFFRG84Q0csNEJBQTZCLENBUTNCLG1DQUNBLGFKcTRGTixDS2wxSUMsd1VEdzlDRyxlQUFpQixDQUNqQixVSm80RkosQ0s3MUlDLGlGRDY5Q0csd0JKbzRGSixDS2oySUMsaUZEaStDRyx3QkpvNEZKLENLcjJJQyxtRkRxK0NHLHdCSm80RkosQ0t6MklDLG1GRHkrQ0csd0JKbzRGSixDSzcySUMsOEhEZy9DRyw0QkFBNkIsQ0FDN0IsOENBQ0EsVUptNEZKLENLcjNJQyxnSkR1L0NHLG1DQU9FLGFKNjNGTixDSzMzSUMsNkZEb2dERyxtQ0FDQSxhSjQzRkosQ0tqNElDLG1KRDBnREcsbUNBT0UsYUpzM0ZOLENLdjRJQyxtSkR1aERHLG1DQU9FLGFKKzJGTixDSzc0SUMscUhEdWlERyxzQkFBdUIsQ0FXckIsZUFBZ0IsQ0FFbEIsYUppMkZKLENLcjVJQyw2SEQ0akRLLG1DQVdGLGFKbzFGSixDSzM1SUMsdUlEK2tESyxtQ0FXRixhSnUwRkosQ0tqNklDLG9SRHFtREssbUNBV0YsYUowekZKLENLMTZJQyx1Q0Q0M0NHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKbWpHSixDS2o3SUMsZURrNENHLDJDSmtqR0osQ0twN0lDLG1ERHM0Q0cseUJBQ0EsV0FDQSxnQkprakdKLENLMTdJQyxtREQ0NENHLHlCQUNBLFdBQ0EsZ0JKa2pHSixDS2g4SUMscUREazVDRyx5QkFDQSxXQUNBLGdCSmtqR0osQ0t0OElDLGdJRDA1Q0cseUJBQ0EsV0FDQSxnQkprakdKLENLOThJQyxtRERrNkNHLHNCQUF1QixDQUN2QixtQ0FDQSxhSmlqR0osQ0tyOUlDLCtERHc2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKaWpHSixDSzM5SUMsK0REODZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUppakdKLENLaitJQyxpRURvN0NHLHNCQUF3QixDQUN4QixtQ0FDQSxhSmlqR0osQ0t2K0lDLGlFRDA3Q0csbUNBQ0EsYUppakdKLENLNStJQywrREQ4N0NHLGdCSmlqR0osQ0svK0lDLHlERG84Q0csNEJBQTZCLENBUTNCLG1DQUNBLGFKeWlHTixDS3QvSUMsd1JEdzlDRyxlQUFpQixDQUNqQixVSndpR0osQ0tqZ0pDLHFFRDY5Q0csd0JKd2lHSixDS3JnSkMscUVEaStDRyx3Qkp3aUdKLENLemdKQyx1RURxK0NHLHdCSndpR0osQ0s3Z0pDLHVFRHkrQ0csd0JKd2lHSixDS2poSkMsNEdEZy9DRyw0QkFBNkIsQ0FDN0IsOENBQ0EsVUp1aUdKLENLemhKQyw4SER1L0NHLG1DQU9FLGFKaWlHTixDSy9oSkMsaUZEb2dERyxtQ0FDQSxhSmdpR0osQ0tyaUpDLGlJRDBnREcsbUNBT0UsYUowaEdOLENLM2lKQyxpSUR1aERHLG1DQU9FLGFKbWhHTixDS2pqSkMsbUdEdWlERyxzQkFBdUIsQ0FXckIsZUFBZ0IsQ0FFbEIsYUpxZ0dKLENLempKQywyR0Q0akRLLG1DQVdGLGFKdy9GSixDSy9qSkMscUhEK2tESyxtQ0FXRixhSjIrRkosQ0tya0pDLGdQRHFtREssbUNBV0YsYUo4OUZKLENLOWtKQyw2Q0Q0M0NHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKdXRHSixDS3JsSkMsa0JEazRDRywyQ0pzdEdKLENLeGxKQyx5RERzNENHLHlCQUNBLFdBQ0EsZ0JKc3RHSixDSzlsSkMseURENDRDRyx5QkFDQSxXQUNBLGdCSnN0R0osQ0twbUpDLDJERGs1Q0cseUJBQ0EsV0FDQSxnQkpzdEdKLENLMW1KQyw0SUQwNUNHLHlCQUNBLFdBQ0EsZ0JKc3RHSixDS2xuSkMseUREazZDRyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUpxdEdKLENLem5KQyxxRUR3NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSnF0R0osQ0svbkpDLHFFRDg2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKcXRHSixDS3JvSkMsdUVEbzdDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUpxdEdKLENLM29KQyx1RUQwN0NHLG1DQUNBLGFKcXRHSixDS2hwSkMsa0VEODdDRyxnQkpxdEdKLENLbnBKQywrRERvOENHLDRCQUE2QixDQVEzQixtQ0FDQSxhSjZzR04sQ0sxcEpDLGdURHc5Q0csZUFBaUIsQ0FDakIsVUo0c0dKLENLcnFKQywyRUQ2OUNHLHdCSjRzR0osQ0t6cUpDLDJFRGkrQ0csd0JKNHNHSixDSzdxSkMsNkVEcStDRyx3Qko0c0dKLENLanJKQyw2RUR5K0NHLHdCSjRzR0osQ0tyckpDLHFIRGcvQ0csNEJBQTZCLENBQzdCLDhDQUNBLFVKMnNHSixDSzdySkMsdUlEdS9DRyxtQ0FPRSxhSnFzR04sQ0tuc0pDLHVGRG9nREcsbUNBQ0EsYUpvc0dKLENLenNKQywwSUQwZ0RHLG1DQU9FLGFKOHJHTixDSy9zSkMsMElEdWhERyxtQ0FPRSxhSnVyR04sQ0tydEpDLDRHRHVpREcsc0JBQXVCLENBV3JCLGVBQWdCLENBRWxCLGFKeXFHSixDSzd0SkMsb0hENGpESyxtQ0FXRixhSjRwR0osQ0tudUpDLDhIRCtrREssbUNBV0YsYUorb0dKLENLenVKQyxrUURxbURLLG1DQVdGLGFKa29HSixDS2x2SkMsNkNENDNDRyx5QkFHQSxzQkFGQSxXQUNBLGdCSjIzR0osQ0t6dkpDLGtCRGs0Q0csMkNKMDNHSixDSzV2SkMseUREczRDRyx5QkFDQSxXQUNBLGdCSjAzR0osQ0tsd0pDLHlERDQ0Q0cseUJBQ0EsV0FDQSxnQkowM0dKLENLeHdKQywyRERrNUNHLHlCQUNBLFdBQ0EsZ0JKMDNHSixDSzl3SkMsNElEMDVDRyx5QkFDQSxXQUNBLGdCSjAzR0osQ0t0eEpDLHlERGs2Q0csc0JBQXVCLENBQ3ZCLG1DQUNBLGFKeTNHSixDSzd4SkMscUVEdzZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUp5M0dKLENLbnlKQyxxRUQ4NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSnkzR0osQ0t6eUpDLHVFRG83Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKeTNHSixDSy95SkMsdUVEMDdDRyxtQ0FDQSxhSnkzR0osQ0twekpDLGtFRDg3Q0csZ0JKeTNHSixDS3Z6SkMsK0REbzhDRyw0QkFBNkIsQ0FRM0IsbUNBQ0EsYUppM0dOLENLOXpKQyxnVER3OUNHLGVBQWlCLENBQ2pCLG9CSmczR0osQ0t6MEpDLDJFRDY5Q0csd0JKZzNHSixDSzcwSkMsMkVEaStDRyx3QkpnM0dKLENLajFKQyw2RURxK0NHLHdCSmczR0osQ0tyMUpDLDZFRHkrQ0csd0JKZzNHSixDS3oxSkMscUhEZy9DRyw0QkFBNkIsQ0FDN0IsOENBQ0EsVUorMkdKLENLajJKQyx1SUR1L0NHLG1DQU9FLGFKeTJHTixDS3YySkMsdUZEb2dERyxtQ0FDQSxhSncyR0osQ0s3MkpDLDBJRDBnREcsbUNBT0UsYUprMkdOLENLbjNKQywwSUR1aERHLG1DQU9FLGFKMjFHTixDS3ozSkMsNEdEdWlERyxzQkFBdUIsQ0FXckIsZUFBZ0IsQ0FFbEIsYUo2MEdKLENLajRKQyxvSEQ0akRLLG1DQVdGLGFKZzBHSixDS3Y0SkMsOEhEK2tESyxtQ0FXRixhSm16R0osQ0s3NEpDLGtRRHFtREssbUNBV0YsYUpzeUdKLENLdDVKQywyQ0Q0M0NHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKK2hISixDSzc1SkMsaUJEazRDRywyQ0o4aEhKLENLaDZKQyx1RERzNENHLHlCQUNBLFdBQ0EsZ0JKOGhISixDS3Q2SkMsdURENDRDRyx5QkFDQSxXQUNBLGdCSjhoSEosQ0s1NkpDLHlERGs1Q0cseUJBQ0EsV0FDQSxnQko4aEhKLENLbDdKQyx3SUQwNUNHLHlCQUNBLFdBQ0EsZ0JKOGhISixDSzE3SkMsdUREazZDRyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUo2aEhKLENLajhKQyxtRUR3NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSjZoSEosQ0t2OEpDLG1FRDg2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKNmhISixDSzc4SkMscUVEbzdDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUo2aEhKLENLbjlKQyxxRUQwN0NHLG1DQUNBLGFKNmhISixDS3g5SkMsaUVEODdDRyxnQko2aEhKLENLMzlKQyw2RERvOENHLDRCQUE2QixDQVEzQixtQ0FDQSxhSnFoSE4sQ0tsK0pDLHdTRHc5Q0csZUFBaUIsQ0FDakIsb0JKb2hISixDSzcrSkMseUVENjlDRyx3QkpvaEhKLENLai9KQyx5RURpK0NHLHdCSm9oSEosQ0tyL0pDLDJFRHErQ0csd0JKb2hISixDS3ovSkMsMkVEeStDRyx3QkpvaEhKLENLNy9KQyxrSERnL0NHLDRCQUE2QixDQUM3Qiw4Q0FDQSxVSm1oSEosQ0tyZ0tDLG9JRHUvQ0csbUNBT0UsYUo2Z0hOLENLM2dLQyxxRkRvZ0RHLG1DQUNBLGFKNGdISixDS2poS0MsdUlEMGdERyxtQ0FPRSxhSnNnSE4sQ0t2aEtDLHVJRHVoREcsbUNBT0UsYUorL0dOLENLN2hLQyx5R0R1aURHLHNCQUF1QixDQVdyQixlQUFnQixDQUVsQixhSmkvR0osQ0tyaUtDLGlIRDRqREssbUNBV0YsYUpvK0dKLENLM2lLQywySEQra0RLLG1DQVdGLGFKdTlHSixDS2pqS0MsNFBEcW1ESyxtQ0FXRixhSjA4R0osQ0sxaktDLDJDRDQzQ0cseUJBR0Esc0JBRkEsV0FDQSxnQkptc0hKLENLamtLQyxpQkRrNENHLDJDSmtzSEosQ0twa0tDLHVERHM0Q0cseUJBQ0EsV0FDQSxnQkprc0hKLENLMWtLQyx1REQ0NENHLHlCQUNBLFdBQ0EsZ0JKa3NISixDS2hsS0MseUREazVDRyx5QkFDQSxXQUNBLGdCSmtzSEosQ0t0bEtDLHdJRDA1Q0cseUJBQ0EsV0FDQSxnQkprc0hKLENLOWxLQyx1RERrNkNHLHNCQUF1QixDQUN2QixtQ0FDQSxhSmlzSEosQ0tybUtDLG1FRHc2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKaXNISixDSzNtS0MsbUVEODZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUppc0hKLENLam5LQyxxRURvN0NHLHNCQUF3QixDQUN4QixtQ0FDQSxhSmlzSEosQ0t2bktDLHFFRDA3Q0csbUNBQ0EsYUppc0hKLENLNW5LQyxpRUQ4N0NHLGdCSmlzSEosQ0svbktDLDZERG84Q0csNEJBQTZCLENBUTNCLG1DQUNBLGFKeXJITixDS3RvS0Msd1NEdzlDRyxlQUFpQixDQUNqQixVSndySEosQ0tqcEtDLHlFRDY5Q0csd0JKd3JISixDS3JwS0MseUVEaStDRyx3Qkp3ckhKLENLenBLQywyRURxK0NHLHdCSndySEosQ0s3cEtDLDJFRHkrQ0csd0JKd3JISixDS2pxS0Msa0hEZy9DRyw0QkFBNkIsQ0FDN0IsOENBQ0EsVUp1ckhKLENLenFLQyxvSUR1L0NHLG1DQU9FLGFKaXJITixDSy9xS0MscUZEb2dERyxtQ0FDQSxhSmdySEosQ0tycktDLHVJRDBnREcsbUNBT0UsYUowcUhOLENLM3JLQyx1SUR1aERHLG1DQU9FLGFKbXFITixDS2pzS0MseUdEdWlERyxzQkFBdUIsQ0FXckIsZUFBZ0IsQ0FFbEIsYUpxcEhKLENLenNLQyxpSEQ0akRLLG1DQVdGLGFKd29ISixDSy9zS0MsMkhEK2tESyxtQ0FXRixhSjJuSEosQ0tydEtDLDRQRHFtREssbUNBV0YsYUo4bUhKLENLOXRLQyx5Q0Q0M0NHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKdTJISixDS3J1S0MsZ0JEazRDRywyQ0pzMkhKLENLeHVLQyxxRERzNENHLHlCQUNBLFdBQ0EsZ0JKczJISixDSzl1S0MscURENDRDRyx5QkFDQSxXQUNBLGdCSnMySEosQ0twdktDLHVERGs1Q0cseUJBQ0EsV0FDQSxnQkpzMkhKLENLMXZLQyxvSUQwNUNHLHlCQUNBLFdBQ0EsZ0JKczJISixDS2x3S0MscUREazZDRyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUpxMkhKLENLendLQyxpRUR3NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSnEySEosQ0svd0tDLGlFRDg2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKcTJISixDS3J4S0MsbUVEbzdDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUpxMkhKLENLM3hLQyxtRUQwN0NHLG1DQUNBLGFKcTJISixDS2h5S0MsZ0VEODdDRyxnQkpxMkhKLENLbnlLQywyRERvOENHLDRCQUE2QixDQVEzQixtQ0FDQSxhSjYxSE4sQ0sxeUtDLGdTRHc5Q0csZUFBaUIsQ0FDakIsb0JKNDFISixDS3J6S0MsdUVENjlDRyx3Qko0MUhKLENLenpLQyx1RURpK0NHLHFCSjQxSEosQ0s3ektDLHlFRHErQ0csd0JKNDFISixDS2owS0MseUVEeStDRyx3Qko0MUhKLENLcjBLQywrR0RnL0NHLDRCQUE2QixDQUM3Qiw4Q0FDQSxVSjIxSEosQ0s3MEtDLGlJRHUvQ0csbUNBT0UsYUpxMUhOLENLbjFLQyxtRkRvZ0RHLGdDQUNBLGFKbzFISixDS3oxS0Msb0lEMGdERyxtQ0FPRSxhSjgwSE4sQ0svMUtDLG9JRHVoREcsbUNBT0UsYUp1MEhOLENLcjJLQyxzR0R1aURHLHNCQUF1QixDQVdyQixlQUFnQixDQUVsQixhSnl6SEosQ0s3MktDLDhHRDRqREssbUNBV0YsYUo0eUhKLENLbjNLQyx3SEQra0RLLG1DQVdGLGFKK3hISixDS3ozS0Msc1BEcW1ESyxtQ0FXRixhSmt4SEosQ0tsNEtDLHlDRDQzQ0cseUJBR0Esc0JBRkEsV0FDQSxnQkoyZ0lKLENLejRLQyxnQkRrNENHLDJDSjBnSUosQ0s1NEtDLHFERHM0Q0cseUJBQ0EsV0FDQSxnQkowZ0lKLENLbDVLQyxxREQ0NENHLHlCQUNBLFdBQ0EsZ0JKMGdJSixDS3g1S0MsdUREazVDRyx5QkFDQSxXQUNBLGdCSjBnSUosQ0s5NUtDLG9JRDA1Q0cseUJBQ0EsV0FDQSxnQkowZ0lKLENLdDZLQyxxRERrNkNHLHNCQUF1QixDQUN2QixtQ0FDQSxhSnlnSUosQ0s3NktDLGlFRHc2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKeWdJSixDS243S0MsaUVEODZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUp5Z0lKLENLejdLQyxtRURvN0NHLHNCQUF3QixDQUN4QixtQ0FDQSxhSnlnSUosQ0svN0tDLG1FRDA3Q0csbUNBQ0EsYUp5Z0lKLENLcDhLQyxnRUQ4N0NHLGdCSnlnSUosQ0t2OEtDLDJERG84Q0csNEJBQTZCLENBUTNCLG1DQUNBLGFKaWdJTixDSzk4S0MsZ1NEdzlDRyxlQUFpQixDQUNqQixVSmdnSUosQ0t6OUtDLHVFRDY5Q0csd0JKZ2dJSixDSzc5S0MsdUVEaStDRyx3QkpnZ0lKLENLaitLQyx5RURxK0NHLHdCSmdnSUosQ0tyK0tDLHlFRHkrQ0csd0JKZ2dJSixDS3orS0MsK0dEZy9DRyw0QkFBNkIsQ0FDN0IsOENBQ0EsVUorL0hKLENLai9LQyxpSUR1L0NHLG1DQU9FLGFKeS9ITixDS3YvS0MsbUZEb2dERyxtQ0FDQSxhSncvSEosQ0s3L0tDLG9JRDBnREcsbUNBT0UsYUprL0hOLENLbmdMQyxvSUR1aERHLG1DQU9FLGFKMitITixDS3pnTEMsc0dEdWlERyxzQkFBdUIsQ0FXckIsZUFBZ0IsQ0FFbEIsYUo2OUhKLENLamhMQyw4R0Q0akRLLG1DQVdGLGFKZzlISixDS3ZoTEMsd0hEK2tESyxtQ0FXRixhSm04SEosQ0s3aExDLHNQRHFtREssbUNBV0YsYUpzN0hKLENLdGlMQyw2Q0Q0M0NHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKK3FJSixDSzdpTEMsa0JEazRDRywyQ0o4cUlKLENLaGpMQyx5RERzNENHLHlCQUNBLFdBQ0EsZ0JKOHFJSixDS3RqTEMseURENDRDRyx5QkFDQSxXQUNBLGdCSjhxSUosQ0s1akxDLDJERGs1Q0cseUJBQ0EsV0FDQSxnQko4cUlKLENLbGtMQyw0SUQwNUNHLHlCQUNBLFdBQ0EsZ0JKOHFJSixDSzFrTEMseUREazZDRyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUo2cUlKLENLamxMQyxxRUR3NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSjZxSUosQ0t2bExDLHFFRDg2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKNnFJSixDSzdsTEMsdUVEbzdDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUo2cUlKLENLbm1MQyx1RUQwN0NHLG1DQUNBLGFKNnFJSixDS3htTEMsa0VEODdDRyxnQko2cUlKLENLM21MQywrRERvOENHLDRCQUE2QixDQVEzQixtQ0FDQSxhSnFxSU4sQ0tsbkxDLGdURHc5Q0csZUFBaUIsQ0FDakIsVUpvcUlKLENLN25MQywyRUQ2OUNHLHdCSm9xSUosQ0tqb0xDLDJFRGkrQ0csd0JKb3FJSixDS3JvTEMsNkVEcStDRyx3QkpvcUlKLENLem9MQyw2RUR5K0NHLHdCSm9xSUosQ0s3b0xDLHFIRGcvQ0csNEJBQTZCLENBQzdCLDhDQUNBLFVKbXFJSixDS3JwTEMsdUlEdS9DRyxtQ0FPRSxhSjZwSU4sQ0szcExDLHVGRG9nREcsbUNBQ0EsYUo0cElKLENLanFMQywwSUQwZ0RHLG1DQU9FLGFKc3BJTixDS3ZxTEMsMElEdWhERyxtQ0FPRSxhSitvSU4sQ0s3cUxDLDRHRHVpREcsc0JBQXVCLENBV3JCLGVBQWdCLENBRWxCLGFKaW9JSixDS3JyTEMsb0hENGpESyxtQ0FXRixhSm9uSUosQ0szckxDLDhIRCtrREssbUNBV0YsYUp1bUlKLENLanNMQyxrUURxbURLLG1DQVdGLGFKMGxJSixDSzFzTEMsNkNENDNDRyx5QkFHQSxzQkFGQSxXQUNBLGdCSm0xSUosQ0tqdExDLGtCRGs0Q0csMkNKazFJSixDS3B0TEMseUREczRDRyx5QkFDQSxXQUNBLGdCSmsxSUosQ0sxdExDLHlERDQ0Q0cseUJBQ0EsV0FDQSxnQkprMUlKLENLaHVMQywyRERrNUNHLHlCQUNBLFdBQ0EsZ0JKazFJSixDS3R1TEMsNElEMDVDRyx5QkFDQSxXQUNBLGdCSmsxSUosQ0s5dUxDLHlERGs2Q0csc0JBQXVCLENBQ3ZCLG1DQUNBLGFKaTFJSixDS3J2TEMscUVEdzZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUppMUlKLENLM3ZMQyxxRUQ4NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSmkxSUosQ0tqd0xDLHVFRG83Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKaTFJSixDS3Z3TEMsdUVEMDdDRyxtQ0FDQSxhSmkxSUosQ0s1d0xDLGtFRDg3Q0csZ0JKaTFJSixDSy93TEMsK0REbzhDRyw0QkFBNkIsQ0FRM0IsbUNBQ0EsYUp5MElOLENLdHhMQyxnVER3OUNHLGVBQWlCLENBQ2pCLFVKdzBJSixDS2p5TEMsMkVENjlDRyx3Qkp3MElKLENLcnlMQywyRURpK0NHLHdCSncwSUosQ0t6eUxDLDZFRHErQ0csd0JKdzBJSixDSzd5TEMsNkVEeStDRyx3Qkp3MElKLENLanpMQyxxSERnL0NHLDRCQUE2QixDQUM3Qiw4Q0FDQSxVSnUwSUosQ0t6ekxDLHVJRHUvQ0csbUNBT0UsYUppMElOLENLL3pMQyx1RkRvZ0RHLG1DQUNBLGFKZzBJSixDS3IwTEMsMElEMGdERyxtQ0FPRSxhSjB6SU4sQ0szMExDLDBJRHVoREcsbUNBT0UsYUpteklOLENLajFMQyw0R0R1aURHLHNCQUF1QixDQVdyQixlQUFnQixDQUVsQixhSnF5SUosQ0t6MUxDLG9IRDRqREssbUNBV0YsYUp3eElKLENLLzFMQyw4SEQra0RLLG1DQVdGLGFKMndJSixDS3IyTEMsa1FEcW1ESyxtQ0FXRixhSjh2SUosQ0s5MkxDLHlDRDQzQ0cseUJBR0Esc0JBRkEsV0FDQSxnQkp1L0lKLENLcjNMQyxnQkRrNENHLDJDSnMvSUosQ0t4M0xDLHFERHM0Q0cseUJBQ0EsV0FDQSxnQkpzL0lKLENLOTNMQyxxREQ0NENHLHlCQUNBLFdBQ0EsZ0JKcy9JSixDS3A0TEMsdUREazVDRyx5QkFDQSxXQUNBLGdCSnMvSUosQ0sxNExDLG9JRDA1Q0cseUJBQ0EsV0FDQSxnQkpzL0lKLENLbDVMQyxxRERrNkNHLHNCQUF1QixDQUN2QixtQ0FDQSxhSnEvSUosQ0t6NUxDLGlFRHc2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKcS9JSixDSy81TEMsaUVEODZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUpxL0lKLENLcjZMQyxtRURvN0NHLHNCQUF3QixDQUN4QixtQ0FDQSxhSnEvSUosQ0szNkxDLG1FRDA3Q0csbUNBQ0EsYUpxL0lKLENLaDdMQyxnRUQ4N0NHLGdCSnEvSUosQ0tuN0xDLDJERG84Q0csNEJBQTZCLENBUTNCLG1DQUNBLGFKNitJTixDSzE3TEMsZ1NEdzlDRyxlQUFpQixDQUNqQixVSjQrSUosQ0tyOExDLHVFRDY5Q0csd0JKNCtJSixDS3o4TEMsdUVEaStDRyx3Qko0K0lKLENLNzhMQyx5RURxK0NHLHdCSjQrSUosQ0tqOUxDLHlFRHkrQ0csd0JKNCtJSixDS3I5TEMsK0dEZy9DRyw0QkFBNkIsQ0FDN0IsOENBQ0EsVUoyK0lKLENLNzlMQyxpSUR1L0NHLG1DQU9FLGFKcStJTixDS24rTEMsbUZEb2dERyxtQ0FDQSxhSm8rSUosQ0t6K0xDLG9JRDBnREcsbUNBT0UsYUo4OUlOLENLLytMQyxvSUR1aERHLG1DQU9FLGFKdTlJTixDS3IvTEMsc0dEdWlERyxzQkFBdUIsQ0FXckIsZUFBZ0IsQ0FFbEIsYUp5OElKLENLNy9MQyw4R0Q0akRLLG1DQVdGLGFKNDdJSixDS25nTUMsd0hEK2tESyxtQ0FXRixhSis2SUosQ0t6Z01DLHNQRHFtREssbUNBV0YsYUprNklKLENLbGhNQywyQ0Q0M0NHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKMnBKSixDS3poTUMsaUJEazRDRywyQ0owcEpKLENLNWhNQyx1RERzNENHLHlCQUNBLFdBQ0EsZ0JKMHBKSixDS2xpTUMsdURENDRDRyx5QkFDQSxXQUNBLGdCSjBwSkosQ0t4aU1DLHlERGs1Q0cseUJBQ0EsV0FDQSxnQkowcEpKLENLOWlNQyx3SUQwNUNHLHlCQUNBLFdBQ0EsZ0JKMHBKSixDS3RqTUMsdUREazZDRyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUp5cEpKLENLN2pNQyxtRUR3NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSnlwSkosQ0tua01DLG1FRDg2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKeXBKSixDS3prTUMscUVEbzdDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUp5cEpKLENLL2tNQyxxRUQwN0NHLG1DQUNBLGFKeXBKSixDS3BsTUMsaUVEODdDRyxnQkp5cEpKLENLdmxNQyw2RERvOENHLDRCQUE2QixDQVEzQixtQ0FDQSxhSmlwSk4sQ0s5bE1DLHdTRHc5Q0csZUFBaUIsQ0FDakIsVUpncEpKLENLem1NQyx5RUQ2OUNHLHdCSmdwSkosQ0s3bU1DLHlFRGkrQ0csd0JKZ3BKSixDS2puTUMsMkVEcStDRyx3QkpncEpKLENLcm5NQywyRUR5K0NHLHdCSmdwSkosQ0t6bk1DLGtIRGcvQ0csNEJBQTZCLENBQzdCLDhDQUNBLFVKK29KSixDS2pvTUMsb0lEdS9DRyxtQ0FPRSxhSnlvSk4sQ0t2b01DLHFGRG9nREcsbUNBQ0EsYUp3b0pKLENLN29NQyx1SUQwZ0RHLG1DQU9FLGFKa29KTixDS25wTUMsdUlEdWhERyxtQ0FPRSxhSjJuSk4sQ0t6cE1DLHlHRHVpREcsc0JBQXVCLENBV3JCLGVBQWdCLENBRWxCLGFKNm1KSixDS2pxTUMsaUhENGpESyxtQ0FXRixhSmdtSkosQ0t2cU1DLDJIRCtrREssbUNBV0YsYUptbEpKLENLN3FNQyw0UERxbURLLG1DQVdGLGFKc2tKSixDS3RyTUMseUNENDNDRyx5QkFHQSxzQkFGQSxXQUNBLGdCSit6SkosQ0s3ck1DLGdCRGs0Q0csMkNKOHpKSixDS2hzTUMscUREczRDRyx5QkFDQSxXQUNBLGdCSjh6SkosQ0t0c01DLHFERDQ0Q0cseUJBQ0EsV0FDQSxnQko4ekpKLENLNXNNQyx1RERrNUNHLHlCQUNBLFdBQ0EsZ0JKOHpKSixDS2x0TUMsb0lEMDVDRyx5QkFDQSxXQUNBLGdCSjh6SkosQ0sxdE1DLHFERGs2Q0csc0JBQXVCLENBQ3ZCLG1DQUNBLGFKNnpKSixDS2p1TUMsaUVEdzZDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUo2ekpKLENLdnVNQyxpRUQ4NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSjZ6SkosQ0s3dU1DLG1FRG83Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKNnpKSixDS252TUMsbUVEMDdDRyxtQ0FDQSxhSjZ6SkosQ0t4dk1DLGdFRDg3Q0csZ0JKNnpKSixDSzN2TUMsMkREbzhDRyw0QkFBNkIsQ0FHM0IsbUNBQ0EsVUowekpOLENLbHdNQyxnU0R3OUNHLGVBQWlCLENBQ2pCLG9CSm96SkosQ0s3d01DLHVFRDY5Q0csd0JKb3pKSixDS2p4TUMsdUVEaStDRyx3QkpvekpKLENLcnhNQyx5RURxK0NHLHdCSm96SkosQ0t6eE1DLHlFRHkrQ0csd0JKb3pKSixDSzd4TUMsK0dEZy9DRyw0QkFBNkIsQ0FDN0IsOENBQ0EsVUptekpKLENLcnlNQyxpSUR1L0NHLG1DQUdFLFVKaXpKTixDSzN5TUMsbUZEb2dERyxtQ0FDQSxhSjR5SkosQ0tqek1DLG9JRDBnREcsbUNBR0UsVUoweUpOLENLdnpNQyxvSUR1aERHLG1DQUdFLFVKbXlKTixDSzd6TUMsc0dEdWlERyxzQkFBdUIsQ0FXckIsZUFBZ0IsQ0FFbEIsYUppeEpKLENLcjBNQyw4R0Q0akRLLG1DQVdGLGFKb3dKSixDSzMwTUMsd0hEK2tESyxtQ0FXRixhSnV2SkosQ0tqMU1DLHNQRHFtREssbUNBV0YsYUowdUpKLENLMTFNQywyQ0Q0M0NHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKbStKSixDS2oyTUMsaUJEazRDRywyQ0prK0pKLENLcDJNQyx1RERzNENHLHlCQUNBLFdBQ0EsZ0JKaytKSixDSzEyTUMsdURENDRDRyx5QkFDQSxXQUNBLGdCSmsrSkosQ0toM01DLHlERGs1Q0cseUJBQ0EsV0FDQSxnQkprK0pKLENLdDNNQyx3SUQwNUNHLHlCQUNBLFdBQ0EsZ0JKaytKSixDSzkzTUMsdUREazZDRyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUppK0pKLENLcjRNQyxtRUR3NkNHLHNCQUF3QixDQUN4QixtQ0FDQSxhSmkrSkosQ0szNE1DLG1FRDg2Q0csc0JBQXdCLENBQ3hCLG1DQUNBLGFKaStKSixDS2o1TUMscUVEbzdDRyxzQkFBd0IsQ0FDeEIsbUNBQ0EsYUppK0pKLENLdjVNQyxxRUQwN0NHLG1DQUNBLGFKaStKSixDSzU1TUMsaUVEODdDRyxnQkppK0pKLENLLzVNQyw2RERvOENHLDRCQUE2QixDQUczQixtQ0FDQSxVSjg5Sk4sQ0t0Nk1DLHdTRHc5Q0csZUFBaUIsQ0FDakIsVUp3OUpKLENLajdNQyx3U0R5K0NHLHFCSnc5SkosQ0tqOE1DLGtIRGcvQ0csNEJBQTZCLENBQzdCLDhDQUNBLFVKdTlKSixDS3o4TUMsb0lEdS9DRyxnQ0FHRSxVSnE5Sk4sQ0svOE1DLHFGRG9nREcsZ0NBQ0EsYUpnOUpKLENLcjlNQyw4UUQwZ0RHLGdDQUdFLFVKbzlKTixDS2orTUMseUdEdWlERyxzQkFBdUIsQ0FXckIsZUFBZ0IsQ0FFbEIsYUpxN0pKLENLeitNQyxpSEQ0akRLLG1DQVdGLGFKdzZKSixDSy8rTUMsMkhEK2tESyxtQ0FXRixhSjI1SkosQ0tyL01DLDRQRHFtREssbUNBV0YsYUo4NEpKLENLOS9NQyxpRERpb0RHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKczRKSixDS3pnTkMsb0JEdW9ERywyQ0pxNEpKLENLNWdOQyw2REQyb0RHLHlCQUNBLFdBQ0EsZ0JKcTRKSixDS2xoTkMsNkREaXBERyx5QkFDQSxXQUNBLGdCSnE0SkosQ0t4aE5DLCtERHVwREcseUJBQ0EsV0FDQSxnQkpxNEpKLENLOWhOQyxvSkQrcERHLHlCQUNBLFdBQ0EsZ0JKcTRKSixDS3RpTkMsNkREdXFERyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUpvNEpKLENLN2lOQyx5RUQ2cURHLHNCQUF1QixDQUN2QixtQ0FDQSxhSm80SkosQ0tuak5DLHlFRG1yREcsc0JBQXVCLENBQ3ZCLG1DQUNBLGFKbzRKSixDS3pqTkMsMkVEeXJERyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUpvNEpKLENLL2pOQywyRUQrckRHLG1DQUNBLGFKbzRKSixDS3BrTkMsb0VEbXNERyxnQkpvNEpKLENLdmtOQyxpRERpb0RHLHlCQUdBLHNCQUZBLFdBQ0EsZ0JKKzhKSixDS2xsTkMsb0JEdW9ERywyQ0o4OEpKLENLcmxOQyw2REQyb0RHLHlCQUNBLFdBQ0EsZ0JKODhKSixDSzNsTkMsNkREaXBERyx5QkFDQSxXQUNBLGdCSjg4SkosQ0tqbU5DLCtERHVwREcseUJBQ0EsV0FDQSxnQko4OEpKLENLdm1OQyxvSkQrcERHLHlCQUNBLFdBQ0EsZ0JKODhKSixDSy9tTkMsNkREdXFERyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUo2OEpKLENLdG5OQyx5RUQ2cURHLHNCQUF1QixDQUN2QixtQ0FDQSxhSjY4SkosQ0s1bk5DLHlFRG1yREcsc0JBQXVCLENBQ3ZCLG1DQUNBLGFKNjhKSixDS2xvTkMsMkVEeXJERyxzQkFBdUIsQ0FDdkIsbUNBQ0EsYUo2OEpKLENLeG9OQywyRUQrckRHLG1DQUNBLGFKNjhKSixDSzdvTkMsb0VEbXNERyxnQko2OEpKLENJejdKQSxZQUNFLG1CQUFvQixDQUNwQixrQkFBbUIsQ0FDbkIsV0FBWSxDQUVaLG1CQURBLHVCSis3SkYsQ0k1N0pBLHVDQUNFLGVKODdKRixDSTE3SkEsa0JBSUUsVUFBVyxDQUhYLFdBQVksQ0FDWixhQUFjLENBQ2QsUUFBUyxDQUVULGlCSjY3SkYsQ0l6N0pBLG9CQUVFLGVBQWdCLENBRGhCLGFBQWMsQ0FFZCxRSjQ3SkYsQ0kxN0pBLDBFQUNFLHVFSjQ3SkYsQ0l6N0pBLGdDQUlFLHVDQUhBLGdCQUFpQixDQUVqQixvQ0FEQSxhSjY3SkYsQ0l6N0pBLCtCQUVFLHdDQURBLG9DSjQ3SkYsQ0l2N0pBLHFCQUNFLG1CQUFvQixDQUNwQixxQkowN0pGLENJeDdKQSw2QkFNRSxlQUFnQixDQURoQixnQkFKQSxhQUFjLENBQ2QsVUFBVyxDQUVYLFNBREEsVUo2N0pGLENJeDdKQSx5Q0FDRSxvQ0FDQSxvQ0owN0pGLENJeDdKQSx3Q0FFRSx1Q0FDQSx3Q0FGQSxlSjQ3SkYsQ0l4N0pBLHdDQUNFLDBCSjA3SkY7QUFPQTs7Ozs7Ozs7RUFRRSxDTXhzTkYsY0FDRSxhQUFjLENBQ2QsY040M09GLENNeDNPQSw0Q0FDRSxnQ0FFRSxnQkFDQSxpQkFGQSxVTjYzT0YsQ01uM09BLHVGQUNFLFVOMjNPRixDQUNGLENNdjNPQSxrRUFDRSxnQ0FFRSxpQkFDQSxrQkFGQSxXTjQzT0YsQ014M09BLHNCQUNFLHdCTjAzT0YsQ014M09BLDhCQUNFLHdCTjAzT0YsQ014M09BLG1DQUNFLHdCTjAzT0YsQ0FDRixDTXQzT0EsbUVBQ0UsZ0NBRUUsaUJBQ0Esa0JBRkEsV04yM09GLENNdjNPQSxzQkFDRSx3Qk55M09GLENNdjNPQSw4QkFDRSx3Qk55M09GLENNdjNPQSxtQ0FDRSx3Qk55M09GLENBQ0YsQ01yM09BLDBDQUNFLGdDQUVFLGlCQUNBLGtCQUZBLFlOMDNPRixDTXQzT0Esc0JBQ0UseUJOdzNPRixDTXQzT0EsOEJBQ0UseUJOdzNPRixDTXQzT0EsbUNBQ0UseUJOdzNPRixDQUNGLENNLzJPQSxtQkFDRSwyREFHQSx3QkFEQSxnQkFEQSxlTnUzT0YsQ01qM09BLG9CQUNFLFVObzNPRixDTTUyT0EscUNBQ0UsZU5pM09GLENNLzJPQSx1Q0FDRSxpQk5pM09GLENNLzJPQSxzQ0FDRSxnQk5pM09GLENNLzJPQSx3QkFFRSxZQUFhLENBRGIsa0JOazNPRjtBQU9BOzs7Ozs7OztFQVFFLENPLytPRixZQVlFLHlDQUE2QyxDQUg3QyxzQkFIQSxnQkFGQSxRQUFTLENBSVQscUJBTEEsYUFBYyxDQUZkLGNBTUEseUJBSUEsZ0JQMHFRRixDT2xxUUEsNENBRUUsMkNBREEsdUNQd3FRRixDTy9wUUEseURBRUUsU1BxcVFGLENPOXBRQSx1QkFDRSxhQUFjLENBR2QsV0FBWSxDQUVaLGFBQWMsQ0FEZCxVQUVBLGlCQUFrQixDQUxsQixrQlB1cVFGLENPL3BRQSwyREFPRSwyQkFBNEIsQ0FMNUIsVUFBVyxDQUNYLGtCQUFtQixDQUNuQixpQkFBa0IsQ0FDbEIsT0FBUSxDQUNSLFNQa3FRRixDTzlwUUEsOEJBQ0UscUNQZ3FRRixDTzlwUUEsNkJBQ0Usb0NQZ3FRRixDT3pwUUEscUJBU0UsVUFBVyxDQUxYLFFBQVMsQ0FPVCxhQUFjLENBTGQsUUFBUyxDQUNULFNBQVUsQ0FOVixpQkFBa0IsQ0FXbEIsaUJBQWtCLENBVGxCLE9BQVEsQ0FVUiwwQkFBMkIsQ0FMM0IsVUFBVyxDQU5YLFNQdXFRRixDT3pwUUEsdURBT0UseUNBQ0EsMENBSkEsVUFBVyxDQU9YLHlCQVJBLFFBQVMsQ0FEVCxpQkFBa0IsQ0FRbEIsT0FBUSxDQUxSLFNQK3BRRixDT3RwUUEsNEJBQ0UsU1B3cFFGLENPdHBRQSwyQkFFRSxRQUFTLENBRFQsUVB5cFFGLENPcHBRQSw0Q0FFRSxxRkFFRSxhQUFjLENBRWQsV0FBWSxDQU9aLE1BQU8sQ0FKUCxhQUFjLENBRmQsVUFDQSxlQUFnQixDQUdoQixlQUFnQixDQURoQixpQkFBa0IsQ0FFbEIsS0FBTSxDQUVOLGNBQWUsQ0FUZixrQlArcFFGLENPbnBRQSxvTUFZRSwyQkFBNEIsQ0FQNUIsZ0JBQWlCLENBQ2pCLGlCQUFrQixDQUNsQixVQUFXLENBQ1gsa0JBQW1CLENBSm5CLE1BQU8sQ0FLUCxpQkFBa0IsQ0FDbEIsT0FBUSxDQUNSLFNQc3BRRixDT2xwUUEsbUdBRUUscUNQb3BRRixDT2xwUUEsaUdBRUUsb0NQb3BRRixDQUNGLENPN29RQSxrQkFFRSxlQUNBLFVBQVcsQ0FGWCxTQUdBLHFCUGtwUUYsQ08zb1FFLHFEQUNFLFlQZ3BRSixDT3pvUUUsMEdBQ0UsVVA4b1FKLENPNW9RRSxxREFDRSxZUDhvUUosQ09sb1FBLG1CQUNFLGtDUDBvUUYsQ094b1FBLG1EQUVFLFlQMG9RRixDT25vUUEsbUZBR0UsVVB3b1FGLENPdG9RQSw0RUFNRSxvR1B3b1FGLENPam9RQSxtQkFDRSxRUHNvUUYsQ08vblFBLHFCQUNFLFVQb29RRixDTzduUUEsb0JBRUUsbUJBREEsZVBtb1FGLENPM25RQSxZQUNFLGNQZ29RRixDUXg0UUEsMkRBRUUsNHlDUjY0UUYsQ1ExNFFBLHlDQUNFLG9NQUlFLDR5Q1I0NFFGLENBQ0Y7QUFJQTs7Ozs7Ozs7RUFRRSxDUy80UUYsa0JBWUUsVUFBVyxDQUNYLGtDQUFtQyxDQUNuQywwQkFBMkIsQ0FSM0IsaUJBRUEsa0JBRUEsdUJBQXdCLENBSHhCLHVCVHVqU0YsQ1M1aVNBLDJDQWpCRSxvQkFBcUIsQ0FHckIsWUFEQSxVVG1rU0YsQ1NwalNBLHlCQUdFLG1FQURBLFVUa2pTRixDVXhsU0EsdUNBRUUsdUJWK2xTRixDVTdsU0Esc0VBR0UsMkJWK2xTRixDVTdsU0EsMkNBRUUsMkJWK2xTRixDVTdsU0EsdUNBRUUsMkJWK2xTRixDVTdsU0Esd0NBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0Esb0RBRUUsNEJWK2xTRixDVTdsU0Esc0NBRUUsNEJWK2xTRixDVTdsU0EseUNBRUUsNEJWK2xTRixDVTdsU0EsOENBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0EseUNBRUUsNEJWK2xTRixDVTdsU0EscUNBRUUsNEJWK2xTRixDVTdsU0EsNkNBRUUsNEJWK2xTRixDVTdsU0EsMENBRUUsNEJWK2xTRixDVTdsU0Esc0NBRUUsNEJWK2xTRixDVTdsU0Esd0NBRUUsNEJWK2xTRixDVTdsU0EsMENBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0EsNENBRUUsNEJWK2xTRixDVTdsU0Esd0NBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0EscUNBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0Esc0NBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0Esc0NBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0Esc0NBRUUsNEJWK2xTRixDVTdsU0EsNkNBRUUsNEJWK2xTRixDVTdsU0Esd0NBRUUsNEJWK2xTRixDVTdsU0EsdUNBRUUsNEJWK2xTRixDVTdsU0Esc0NBRUUsNEJWK2xTRixDVTdsU0Esc0NBRUUsNEJWK2xTRixDVTdsU0EsNkNBRUUsNEJWK2xTRixDVTdsU0EscUNBRUUsNEJWK2xTRixDVTdsU0Esd0RBRUUsNkJWK2xTRixDVTdsU0EsaURBRUUsNkJWK2xTRixDVTdsU0EsMkNBRUUsNkJWK2xTRixDVTdsU0EsNENBRUUsNkJWK2xTRixDVTdsU0EsNENBRUUsNkJWK2xTRixDVTdsU0EscUNBRUUsNkJWK2xTRixDVTdsU0Esd0NBRUUsNkJWK2xTRixDVTdsU0EscUNBRUUsNkJWK2xTRixDVTdsU0Esd0NBRUUsNkJWK2xTRixDVTdsU0EsMENBRUUsNkJWK2xTRixDVTdsU0Esc0NBRUUsNkJWK2xTRixDVTdsU0Esb0NBRUUsNkJWK2xTRixDVTdsU0EsMENBRUUsNkJWK2xTRixDVTdsU0EsZ0RBRUUsNkJWK2xTRixDVTdsU0Esc0NBRUUsNkJWK2xTRixDVTdsU0EsOENBRUUsNkJWK2xTRixDVTdsU0EsdUNBRUUsNkJWK2xTRixDVTdsU0Esd0NBRUUsNkJWK2xTRixDVTdsU0EsdUNBRUUsNkJWK2xTRixDVTdsU0Esd0NBRUUsNkJWK2xTRixDVTdsU0Esa0RBRUUsNkJWK2xTRixDVTdsU0EsdUNBRUUsNkJWK2xTRixDVTdsU0EsdUNBRUUsNkJWK2xTRixDVTdsU0EsdUNBRUUsNkJWK2xTRixDVTdsU0EscUNBRUUsNkJWK2xTRixDVTdsU0EsOENBRUUsNkJWK2xTRixDVTdsU0EsMkNBRUUsNkJWK2xTRixDVTdsU0EsdUNBRUUsNkJWK2xTRixDVTdsU0EscUNBRUUsNkJWK2xTRixDVTdsU0Esd0NBRUUsNkJWK2xTRixDVTdsU0EsOENBRUUsNkJWK2xTRixDVTdsU0EsdUNBRUUsNkJWK2xTRixDVTdsU0Esb0NBRUUsNkJWK2xTRixDVTdsU0EsZ0RBRUUsNkJWK2xTRixDVTdsU0EsMENBRUUsNkJWK2xTRixDVTdsU0EsNkNBRUUsNkJWK2xTRixDVTdsU0Esc0NBRUUsNkJWK2xTRixDVTdsU0EscUNBRUUsMkJWK2xTRixDVTdsU0EsK0RBR0UsK0JWK2xTRixDVTdsU0EsdUNBRUUsK0JWK2xTRixDVTdsU0EsdUNBRUUsK0JWK2xTRixDVTdsU0EsNkNBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0EseUNBRUUsZ0NWK2xTRixDVTdsU0EseUNBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0EsMENBRUUsZ0NWK2xTRixDVTdsU0EsaURBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0EsZ0RBRUUsZ0NWK2xTRixDVTdsU0EseUNBRUUsZ0NWK2xTRixDVTdsU0Esb0NBRUUsZ0NWK2xTRixDVTdsU0EsNkNBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0EseUNBRUUsZ0NWK2xTRixDVTdsU0EsNENBRUUsZ0NWK2xTRixDVTdsU0Esd0NBRUUsZ0NWK2xTRixDVTdsU0EsdUNBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0EsdUNBRUUsZ0NWK2xTRixDVTdsU0EseUNBRUUsZ0NWK2xTRixDVTdsU0EsdUNBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0Esc0RBRUUsZ0NWK2xTRixDVTdsU0Esb0NBRUUsZ0NWK2xTRixDVTdsU0Esb0NBRUUsZ0NWK2xTRixDVTdsU0EsdUNBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0EsdUNBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0EsMENBRUUsZ0NWK2xTRixDVTdsU0Esd0NBRUUsZ0NWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EscURBRUUsaUNWK2xTRixDVTdsU0EsMkNBRUUsaUNWK2xTRixDVTdsU0EsMkNBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0EsOENBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0Esb0NBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EsMkNBRUUsaUNWK2xTRixDVTdsU0EsNkNBRUUsaUNWK2xTRixDVTdsU0EseUNBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EseUNBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0EscUNBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0EsZ0RBRUUsaUNWK2xTRixDVTdsU0EseUNBRUUsaUNWK2xTRixDVTdsU0Esb0NBRUUsaUNWK2xTRixDVTdsU0EsMkRBR0UsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0EscUNBRUUsaUNWK2xTRixDVTdsU0Esd0RBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0EscUNBRUUsaUNWK2xTRixDVTdsU0EseUNBRUUsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsMkJWK2xTRixDVTdsU0Esd0NBRUUsK0JWK2xTRixDVTdsU0EsMENBRUUsK0JWK2xTRixDVTdsU0EsdUNBRUUsK0JWK2xTRixDVTdsU0EsNkNBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0EsOENBRUUsZ0NWK2xTRixDVTdsU0EsdUNBRUUsZ0NWK2xTRixDVTdsU0EseUNBRUUsZ0NWK2xTRixDVTdsU0EsMkNBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0Esb0NBRUUsZ0NWK2xTRixDVTdsU0EsMkNBRUUsZ0NWK2xTRixDVTdsU0Esb0NBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0Esb0NBRUUsZ0NWK2xTRixDVTdsU0EsZ0RBRUUsZ0NWK2xTRixDVTdsU0EsMENBRUUsZ0NWK2xTRixDVTdsU0EsMkNBRUUsZ0NWK2xTRixDVTdsU0Esd0NBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0EsNENBRUUsZ0NWK2xTRixDVTdsU0EsZ0RBRUUsZ0NWK2xTRixDVTdsU0EsMkNBRUUsZ0NWK2xTRixDVTdsU0EseUNBRUUsZ0NWK2xTRixDVTdsU0Esd0NBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0Esd0NBRUUsZ0NWK2xTRixDVTdsU0EscUNBRUUsZ0NWK2xTRixDVTdsU0EsdUNBRUUsZ0NWK2xTRixDVTdsU0EsdUNBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0Esc0NBRUUsZ0NWK2xTRixDVTdsU0EsNENBRUUsZ0NWK2xTRixDVTdsU0EsK0NBRUUsZ0NWK2xTRixDVTdsU0EsMENBRUUsZ0NWK2xTRixDVTdsU0EsNENBRUUsaUNWK2xTRixDVTdsU0EscUNBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0EseUNBRUUsaUNWK2xTRixDVTdsU0EsNENBRUUsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0EsZ0VBR0UsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0EsNENBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0EsMkNBRUUsaUNWK2xTRixDVTdsU0EscUNBRUUsaUNWK2xTRixDVTdsU0EseUNBRUUsaUNWK2xTRixDVTdsU0EsOENBRUUsaUNWK2xTRixDVTdsU0Esb0NBRUUsaUNWK2xTRixDVTdsU0Esa0RBRUUsaUNWK2xTRixDVTdsU0Esb0NBRUUsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsaUNWK2xTRixDVTdsU0EsNENBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EscUNBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0EsZ0RBRUUsaUNWK2xTRixDVTdsU0EsbUVBR0UsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EsMENBRUUsNEJWK2xTRixDVTdsU0EsNENBRUUsZ0NWK2xTRixDVTdsU0EsNkNBRUUsZ0NWK2xTRixDVTdsU0EseUNBRUUsZ0NWK2xTRixDVTdsU0Esc0RBRUUsaUNWK2xTRixDVTdsU0EsaURBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EseUNBRUUsaUNWK2xTRixDVTdsU0EsaURBRUUsaUNWK2xTRixDVTdsU0EscUNBRUUsaUNWK2xTRixDVTdsU0EscUNBRUUsaUNWK2xTRixDVTdsU0EsdUNBRUUsaUNWK2xTRixDVTdsU0EsNENBRUUsaUNWK2xTRixDVTdsU0Esc0NBRUUsaUNWK2xTRixDVTdsU0Esd0NBRUUsaUNWK2xTRjtBQUtBOzs7Ozs7OztFQVFFLENXaGpVRixXQUNFLFdBQVksQ0FPWixzQkFKQSwyREFDQSxnQkFDQSx5QkFKQSxvQ0FDQSxVQUlBLG1CWDZ2VkYsQ1d6dlZBLHVCQUNFLHVCWDJ2VkYsQ1d6dlZBLHNCQUNFLGVYMnZWRixDV3B2VkEsdUJBT0UscUJBTkEsYUFBYyxDQUNkLGdCQUlBLGtCQUZBLFNBREEsU1g2dlZGLENXbHZWQSxpQkFDRSxrQkFBbUIsQ0FFbkIsZ0JBREEsVUFFQSxjQUNBLHFCWHV2VkYsQ1dudlZBLDRCQUNFLG9CQUFxQixDQUVyQixvQkFEQSxTWHV2VkYsQ1cvdVZBLDRDQUVFLG9CQUFxQixDQUdyQixZQUZBLHVCQUdBLHNCQUZBLFdYc3ZWRixDV2x2VkEsa0VBRUUsbUJYb3ZWRixDVzd1VkEsb0JBQ0Usb0JBQXFCLENBQ3JCLGtCWGt2VkYsQ1d2dVZBLDZFQUxFLG9CQUNBLHFCWHV2VkYsQ1dudlZBLDBCQUVFLGtCWGl2VkYsQ1d4dVZBLHFCQUNFLGFBQ0Esa0JBQ0EscUJYNnVWRixDV3p1VkEsYUFDRSxZWDR1VkYsQ1c5dFZBLGFBQ0UsY1hzdVZGLENXcHVWQSxhQUNFLHVCWHN1VkYsQ1dwdVZBLGFBQ0UsdUJYc3VWRixDV3B1VkEsYUFDRSx1QlhzdVZGLENXcHVWQSxhQUNFLGNYc3VWRixDVzl0VkEsa0RBQ0UsdUJYb3VWRixDVy90VkEsa0RBQ0UsY1hvdVZGLENXbHVWQSx5QkFDRSxzQlhvdVZGLENXNXRWQSxnQkFFRSxjQURBLGNYa3VWRixDVy90VkEsaUJBQ0Usc0JYaXVWRixDVy90VkEsa0JBQ0Usc0JYaXVWRixDVy90VkEsaUJBQ0Usc0JYaXVWRixDVy90VkEsZ0JBQ0UsYVhpdVZGLENXMXRWQSx5REFDRSx1QlhndVZGLENXM3RWQSxvREFDRSxjWGd1VkYsQ1c5dFZBLDRCQUNFLHNCWGd1VkYsQ1d6dFZBLGVBTUUsU0FGQSxzQkFEQSxnQkFEQSwyQkFEQSxTQUFVLENBSVYsd0JYK3RWRixDVzN0VkEscUJBQ0UscUJYNnRWRixDVzN0VkEscUJBQ0UscUJYNnRWRixDVzN0VkEsb0JBQ0UsYVg2dFZGLENXcHRWQSxnQkFDRSxvQkFBcUIsQ0FFckIsbUJBREEsaUJYMHRWRixDV3Z0VkEsc0JBSUUsVUFBVyxDQUhYLFVBQVcsQ0FDWCxhQUFjLENBQ2QsUUFBUyxDQUVULGlCWHl0VkYsQ1d0dFZBLDRCQUNFLFlYd3RWRixDV3R0VkEsc0JBRUUsYUFBYyxDQURkLFVBQVcsQ0FNWCxjQUhBLFdBQVksQ0FDWixhQUFjLENBR2Qsb0JBQ0EsVUFIQSxTQUFVLENBSFYsVVg4dFZGLENXdHRWQSw2QkFDRSxnQlh3dFZGLENXdHRWQSx5QkFDRSxhQUFjLENBQ2QsU1h3dFZGLENXbnRWQSw0REFDRSxhWHd0VkYsQ1d0dFZBLDRCQUNFLGVYd3RWRixDV3R0VkEsd0JBR0UsYUFBYyxDQUZkLGdCQUFpQixDQUNqQixpQlh5dFZGLENXanRWQSxvQkFDRSxXWHN0VkYsQ1cxc1ZBLG9CQUNFLFVYa3RWRixDV2h0VkEsZ0NBQ0Usd0JYa3RWRixDV2h0VkEsNkJBQ0UsbUJBRUEsd0JBQXlCLENBRHpCLGVYbXRWRixDV2h0VkEsMEJBQ0UsZ0VBRUEsa0JBQW1CLENBRG5CLGVYbXRWRixDS3hoV0MsbUJNc1ZHLGFYd3NWSixDSzloV0MsMEJNeVZHLGFYd3NWSixDS2ppV0MsNEJNNFZHLCtCWHdzVkosQ0twaVdDLDBDTStWRyxhWHdzVkosQ0t2aVdDLGlETWtXRyxhWHdzVkosQ0sxaVdDLHFDTXFXRywrQlh3c1ZKLENLN2lXQyxxQk1zVkcsYVgwdFZKLENLaGpXQyw0Qk15VkcsYVgwdFZKLENLbmpXQyw4Qk00VkcsK0JYMHRWSixDS3RqV0MsNENNK1ZHLGFYMHRWSixDS3pqV0MsbURNa1dHLGFYMHRWSixDSzVqV0MsdUNNcVdHLCtCWDB0VkosQ0svaldDLGVNc1ZHLGFYNHVWSixDS2xrV0Msc0JNeVZHLGFYNHVWSixDS3JrV0Msd0JNNFZHLCtCWDR1VkosQ0t4a1dDLHNDTStWRyxhWDR1VkosQ0sza1dDLDZDTWtXRyxhWDR1VkosQ0s5a1dDLGlDTXFXRywrQlg0dVZKLENLamxXQyxrQk1zVkcsYVg4dlZKLENLcGxXQyx5Qk15VkcsYVg4dlZKLENLdmxXQywyQk00VkcsK0JYOHZWSixDSzFsV0MseUNNK1ZHLGFYOHZWSixDSzdsV0MsZ0RNa1dHLGFYOHZWSixDS2htV0Msb0NNcVdHLCtCWDh2VkosQ0tubVdDLGtCTXNWRyxhWGd4VkosQ0t0bVdDLHlCTXlWRyxhWGd4VkosQ0t6bVdDLDJCTTRWRywrQlhneFZKLENLNW1XQyx5Q00rVkcsYVhneFZKLENLL21XQyxnRE1rV0csYVhneFZKLENLbG5XQyxvQ01xV0csK0JYZ3hWSixDS3JuV0MsaUJNc1ZHLGFYa3lWSixDS3huV0Msd0JNeVZHLGFYa3lWSixDSzNuV0MsMEJNNFZHLCtCWGt5VkosQ0s5bldDLHdDTStWRyxhWGt5VkosQ0tqb1dDLCtDTWtXRyxhWGt5VkosQ0twb1dDLG1DTXFXRywrQlhreVZKLENLdm9XQyxpQk1zVkcsYVhvelZKLENLMW9XQyx3Qk15VkcsYVhvelZKLENLN29XQywwQk00VkcsK0JYb3pWSixDS2hwV0Msd0NNK1ZHLGFYb3pWSixDS25wV0MsK0NNa1dHLGFYb3pWSixDS3RwV0MsbUNNcVdHLCtCWG96VkosQ0t6cFdDLGdCTXNWRyxhWHMwVkosQ0s1cFdDLHVCTXlWRyxhWHMwVkosQ0svcFdDLHlCTTRWRywrQlhzMFZKLENLbHFXQyx1Q00rVkcsYVhzMFZKLENLcnFXQyw4Q01rV0csYVhzMFZKLENLeHFXQyxrQ01xV0csK0JYczBWSixDSzNxV0MsZ0JNc1ZHLGFYdzFWSixDSzlxV0MsdUJNeVZHLGFYdzFWSixDS2pyV0MseUJNNFZHLCtCWHcxVkosQ0twcldDLHVDTStWRyxhWHcxVkosQ0t2cldDLDhDTWtXRyxhWHcxVkosQ0sxcldDLGtDTXFXRywrQlh3MVZKLENLN3JXQyxrQk1zVkcsYVgwMlZKLENLaHNXQyx5Qk15VkcsYVgwMlZKLENLbnNXQywyQk00VkcsK0JYMDJWSixDS3RzV0MseUNNK1ZHLGFYMDJWSixDS3pzV0MsZ0RNa1dHLGFYMDJWSixDSzVzV0Msb0NNcVdHLCtCWDAyVkosQ0svc1dDLGtCTXNWRyxhWDQzVkosQ0tsdFdDLHlCTXlWRyxhWDQzVkosQ0tydFdDLDJCTTRWRywrQlg0M1ZKLENLeHRXQyx5Q00rVkcsYVg0M1ZKLENLM3RXQyxnRE1rV0csYVg0M1ZKLENLOXRXQyxvQ01xV0csK0JYNDNWSixDS2p1V0MsZ0JNc1ZHLGFYODRWSixDS3B1V0MsdUJNeVZHLGFYODRWSixDS3Z1V0MseUJNNFZHLCtCWDg0VkosQ0sxdVdDLHVDTStWRyxhWDg0VkosQ0s3dVdDLDhDTWtXRyxhWDg0VkosQ0todldDLGtDTXFXRywrQlg4NFZKLENLbnZXQyxpQk1zVkcsYVhnNlZKLENLdHZXQyx3Qk15VkcsYVhnNlZKLENLenZXQywwQk00VkcsK0JYZzZWSixDSzV2V0Msd0NNK1ZHLGFYZzZWSixDSy92V0MsK0NNa1dHLGFYZzZWSixDS2x3V0MsbUNNcVdHLCtCWGc2VkosQ0tyd1dDLGdCTXNWRyxhWGs3VkosQ0t4d1dDLHVCTXlWRyxhWGs3VkosQ0szd1dDLHlCTTRWRywrQlhrN1ZKLENLOXdXQyx1Q00rVkcsYVhrN1ZKLENLanhXQyw4Q01rV0csYVhrN1ZKLENLcHhXQyxrQ01xV0csK0JYazdWSixDS3Z4V0MsaUJNc1ZHLGFYbzhWSixDSzF4V0Msd0JNeVZHLGFYbzhWSixDSzd4V0MsMEJNNFZHLCtCWG84VkosQ0toeVdDLHdDTStWRyxhWG84VkosQ0tueVdDLCtDTWtXRyxVWG84VkosQ0t0eVdDLG1DTXFXRywrQlhvOFZKLENXMzdWQSx3QkFDRSxlWGc4VkYsQ1c5N1ZBLHlCQUNFLGdCWGc4VkYsQ1c5N1ZBLDhDQUVFLGlCWGc4VkYsQ1c5N1ZBLHFCQUNFLGtCWGc4VkYsQ1c5N1ZBLDJCQUVFLFVBQVcsQ0FEWCxvQkFBcUIsQ0FFckIsVVhnOFZGLENXejdWQSxxREFFRSxVQUFXLENBRVgsa0JBREEsWVgrN1ZGLENXNTdWQSxtQ0FDRSxXQUFZLENBRVosaUJBREEsWVgrN1ZGLENXdjdWQSxrQkFDRSxTWDQ3VkYsQ1dwN1ZBLG9CQUVFLDBDWHk3VkYsQ1d2N1ZBLG9EQUhFLDJCWDY3VkYsQ1d2N1ZBLDBCQUNFLGVYeTdWRixDV3Q3VkEsNkJBQ0Usc0NYdzdWRixDV2g3VkEsaUJBQ0UsbUJBR0EseUJBQ0EsMkJBRkEsZ0JBREEseUJYdzdWRixDV2w3VkEsc0JBQ0Usc0JYbzdWRixDV2w3VkEsdUJBQ0Usc0JYbzdWRixDV2w3VkEsaUVBQ0UsY1hvN1ZGLENXbDdWQSx1QkFDRSx1QlhvN1ZGLENXbDdWQSxzQkFDRSx1QlhvN1ZGLENXNzZWQSxvQkFDRSxnQkFJQSx5QkFDQSxlQUFnQixDQUZoQixnQkFEQSxjQURBLHlCWHM3VkYsQ1doN1ZBLDBCQUNFLGtCWGs3VkYsQ1doN1ZBLDhCQUNFLGVYazdWRixDV2g3VkEsd0JBQ0UsMkNYazdWRixDV2g3VkEsMkJBQ0UsMkNYazdWRixDVzk2VkEseUJBQ0UscUJYaTdWRixDVy82VkEsMEJBQ0UscUJYaTdWRixDVy82VkEsb0VBQ0UsYVhpN1ZGLENXLzZWQSwwQkFDRSxzQlhpN1ZGLENXLzZWQSx5QkFDRSxzQlhpN1ZGLENXMTZWQSwyREFDRSxzQlgrNlZGO0FBT0E7Ozs7Ozs7O0VBUUUsQ1k5NVdGLFdBQ0UsaUJBQW9CLENBR3BCLGlCQUFrQixDQUVsQixtQkFBb0IsQ0FEcEIsZ0JBSEEsbUNBQ0EsMlFBSUEsdUJBQXdCLENBQ3hCLG1CWm1sWUYsQ1lobFlBLE9BZUUsVUFBVyxDQUNYLGlDQUFrQyxDQUNsQyxrQ0FBbUMsQ0FDbkMsMEJBQTJCLENBakIzQixvQkFBcUIsQ0FRckIsaUJBQW9CLENBQ3BCLGlCQUFrQixDQUNsQixnQkFKQSxXQUhBLG9CQUZBLFVBV0EsaUJBQWtCLENBRGxCLHVCQUF3QixDQU54QixZWjBsWUYsQ1kza1lBLGNBQ0UseUJaNmtZRixDWWxrWUEsZUFHRSxvQ0FGQSxVQUFXLENBQ1gsYVoya1lGLENZbmtZQSwySEFHRSxTWjJrWUYsQ1l4a1lBLGlDQUVFLGNBQWUsQ0FEZixZQUVBLG1CWjJrWUYsQ1k5allBLGNBRUUsa0JBQW9CLENBRHBCLFVadWtZRixDWS9qWUEsdURBQ0UsY0FBZSxDQUNmLFdBQ0EsMkJacWtZRixDWW5rWUEscUNBQ0UsU1pza1lGLENZL2pZQSxnQkFDRSw2QkFBK0IsQ0FJL0IsMkNBR0EscUJBTkEsdUJBQXlCLENBRXpCLHlCQUdBLG1CWm1rWUYsQ1loa1lBLHlCQUNFLFdBQVksQ0FDWixlWmtrWUYsQ1kzallBLDJDQUVFLG9CWmdrWUYsQ1k5allBLDBCQUNFLG9CWmdrWUYsQ1l6allBLDZEQUdFLHVCWjhqWUYsQ1kzallBLG9EQUVFLHdCWjZqWUYsQ1kxallBLHVCQUNFLHdCWjRqWUYsQ1l0allBLHFGQUdFLGtDWjJqWUYsQ1l4allBLG9FQUVFLG1DWjBqWUYsQ1l2allBLCtCQUNFLG1DWnlqWUYsQ1l0allBLHNIQUdFLGtDWndqWUYsQ1lyallBLDBGQUVFLG1DWnVqWUYsQ1lwallBLDBDQUNFLG1DWnNqWUYsQ1kvaVlBLGdCQU9FLDJDQUZBLFdBSkEsYUFBYyxDQUtkLHlCQUpBLHVCQUF3QixDQUV4QixTWnNqWUYsQ1lqallBLHlCQUNFLFdBQVksQ0FDWixlWm1qWUYsQ1kzaVlBLGtEQUVFLHlCQUNBLFVaaWpZRixDWTlpWUEsZ0JBQ0UsVVpnallGLENLeHhZQyw4Qk9zUEcsYVp3aVlKLENLOXhZQyx1Q095UEcsYVp3aVlKLENLanlZQyxnR082UEcseUJBQ0EsVVp3aVlKLENLdHlZQyxnQ09zUEcsYVptallKLENLenlZQyx5Q095UEcsYVptallKLENLNXlZQyxvR082UEcseUJBQ0EsVVptallKLENLanpZQywwQk9zUEcsYVo4allKLENLcHpZQyxtQ095UEcsYVo4allKLENLdnpZQyx3Rk82UEcseUJBQ0EsVVo4allKLENLNXpZQyw2Qk9zUEcsYVp5a1lKLENLL3pZQyxzQ095UEcsYVp5a1lKLENLbDBZQyw4Rk82UEcseUJBQ0EsVVp5a1lKLENLdjBZQyw2Qk9zUEcsYVpvbFlKLENLMTBZQyxzQ095UEcsYVpvbFlKLENLNzBZQyw4Rk82UEcseUJBQ0EsVVpvbFlKLENLbDFZQyw0Qk9zUEcsYVorbFlKLENLcjFZQyxxQ095UEcsYVorbFlKLENLeDFZQyw0Rk82UEcseUJBQ0EsVVorbFlKLENLNzFZQyw0Qk9zUEcsYVowbVlKLENLaDJZQyxxQ095UEcsYVowbVlKLENLbjJZQyw0Rk82UEcseUJBQ0EsVVowbVlKLENLeDJZQywyQk9zUEcsYVpxbllKLENLMzJZQyxvQ095UEcsYVpxbllKLENLOTJZQywwRk82UEcseUJBQ0EsVVpxbllKLENLbjNZQywyQk9zUEcsYVpnb1lKLENLdDNZQyxvQ095UEcsYVpnb1lKLENLejNZQywwRk82UEcseUJBQ0EsVVpnb1lKLENLOTNZQyw2Qk9zUEcsYVoyb1lKLENLajRZQyxzQ095UEcsYVoyb1lKLENLcDRZQyw4Rk82UEcseUJBQ0EsVVoyb1lKLENLejRZQyw2Qk9zUEcsYVpzcFlKLENLNTRZQyxzQ095UEcsYVpzcFlKLENLLzRZQyw4Rk82UEcseUJBQ0EsVVpzcFlKLENLcDVZQywyQk9zUEcsYVppcVlKLENLdjVZQyxvQ095UEcsYVppcVlKLENLMTVZQywwRk82UEcseUJBQ0EsVVppcVlKLENLLzVZQyw0Qk9zUEcsYVo0cVlKLENLbDZZQyxxQ095UEcsYVo0cVlKLENLcjZZQyw0Rk82UEcseUJBQ0EsVVo0cVlKLENLMTZZQywyQk9zUEcsYVp1cllKLENLNzZZQyxvQ095UEcsYVp1cllKLENLaDdZQywwRk82UEcseUJBQ0EsVVp1cllKLENLcjdZQyw0Qk9zUEcsYVprc1lKLENLeDdZQyxxQ095UEcsYVprc1lKLENLMzdZQyw0Rk82UEcseUJBQ0EsVVprc1lKLENZenJZQSw2Q0FHRSxlQURBLGFaK3JZRixDWTVyWUEsNkNBR0UsZUFEQSxhWityWUYsQ1k1cllBLG1EQUdFLGdCQURBLGFaK3JZRixDWTVyWUEsZUFFRSxhWjhyWUYsQ1k1cllBLG1EQUlFLGdCQUZBLGFBQWMsQ0FDZCxxQlorcllGLENZNXJZQSx1Q0FJRSxjQUZBLGFBQWMsQ0FDZCxxQlorcllGLENZNXJZQSw2Q0FJRSxjQUZBLGFBQWMsQ0FDZCxxQlorcllGLENZNXJZQSwrREFJRSxjQUZBLGFBQWMsQ0FDZCxxQlorcllGLENZdnJZQSxRQUNFLG9CQUFxQixDQUVyQixhQUFjLENBRGQsaUJaNnJZRixDWXpyWUEsY0FHRSxRQUFTLENBRVQsUUFBUyxDQUpULGlCQUFrQixDQUNsQixPQUFRLENBRVIsMkNaNHJZRixDWXhyWUEsMEJBR0UsV0FBWSxDQUZaLGVBQWdCLENBSWhCLGNBQWUsQ0FEZixrQkFBbUIsQ0FGbkIsVVo2cllGLENZdHJZQSxxQkFJRSxRQUFTLENBRVQsZ0JBSkEsU0FBVSxDQUNWLE9BQVEsQ0FJUiw0RUFOQSxRQUFTLENBSVQsY1oycllGLENZdnJZQSx5Q0FJRSxXQUFZLENBRlosU0FBVSxDQUNWLE9BQVEsQ0FGUixLWjRyWUYsQ1l2cllBLHdDQUlFLFdBQVksQ0FGWixNQUFPLENBQ1AsVUFBVyxDQUZYLEtaNHJZRixDWXZyWUEsMkNBSUUsUUFBUyxDQUZULE1BQU8sQ0FDUCxVQUFXLENBRlgsUVo0cllGLENZdnJZQSw0Q0FJRSxRQUFTLENBRlQsU0FBVSxDQUNWLE9BQVEsQ0FGUixRWjRyWUYsQ1l0cllBLDhCQUNFLHVGWndyWUYsQ2F4L1lBLGlCQUFtQixlYm1qWm5CLENhbGpaQSwyQkFBNkIsZWJxalo3QixDYXBqWkEsMkJBQTZCLGVidWpaN0IsQ2F0alpBLHFCQUF1QixlYnlqWnZCLENheGpaQSw0QkFBOEIsZWIyalo5QixDYTFqWkEsMkJBQTZCLGViNmpaN0IsQ2E1alpBLDRCQUE4QixlYitqWjlCLENhOWpaQSx5QkFBMkIsZWJpa1ozQixDYWhrWkEsMEJBQTRCLGVibWtaNUIsQ2Fsa1pBLHdCQUEwQixlYnFrWjFCLENhcGtaQSx3QkFBMEIsZWJ1a1oxQixDYXRrWkEsa0RBQW9ELGVieWtacEQsQ2F4a1pBLHFCQUF1QixlYjJrWnZCLENhMWtaQSxnQ0FBa0MsZWI2a1psQyxDYTVrWkEsZ0NBQWtDLGViK2tabEMsQ2E5a1pBLGlDQUFtQyxlYmlsWm5DLENhaGxaQSw4QkFBZ0MsZWJtbFpoQyxDYWxsWkEseUJBQTJCLGVicWxaM0IsQ2FwbFpBLDBCQUE0QixlYnVsWjVCLENhdGxaQSx1QkFBeUIsZWJ5bFp6QixDYXhsWkEseUJBQTJCLGViMmxaM0IsQ2ExbFpBLG9CQUFzQixlYjZsWnRCLENhNWxaQSxtQkFBcUIsZWIrbFpyQixDYTlsWkEsc0JBQXdCLGViaW1aeEIsQ2FobVpBLHNCQUF3QixlYm1tWnhCLENhbG1aQSwwQ0FBNEMsZWJxbVo1QyxDYXBtWkEsMENBQTRDLGVidW1aNUMsQ2F0bVpBLDJDQUE2QyxlYnltWjdDLENheG1aQSx3Q0FBMEMsZWIybVoxQyxDYTFtWkEsZ0NBQWtDLGViNm1abEMsQ2E1bVpBLGdDQUFrQyxlYittWmxDLENhOW1aQSxpQ0FBbUMsZWJpblpuQyxDYWhuWkEsOEJBQWdDLGVibW5aaEMsQ2FsblpBLHlCQUEyQixlYnFuWjNCLENhcG5aQSx5QkFBMkIsZWJ1blozQixDYXRuWkEsMEJBQTRCLGVieW5aNUIsQ2F4blpBLHVCQUF5QixlYjJuWnpCLENhMW5aQSwrQkFBaUMsZWI2blpqQyxDYTVuWkEsMENBQTRDLGViK25aNUMsQ2E5blpBLHdDQUEwQyxlYmlvWjFDLENhaG9aQSwwQ0FBNEMsZWJtb1o1QyxDYWxvWkEsdUJBQXlCLGVicW9aekIsQ2Fwb1pBLGlCQUFtQixlYnVvWm5CLENhdG9aQSxvQkFBc0IsZWJ5b1p0QixDYXhvWkEsbUJBQXFCLGViMm9ackIsQ2Exb1pBLGdDQUFrQyxlYjZvWmxDLENhNW9aQSxvQkFBc0IsZWIrb1p0QixDYTlvWkEsbUJBQXFCLGViaXBackIsQ2FocFpBLDRCQUE4QixlYm1wWjlCLENhbHBaQSx3QkFBMEIsZWJxcFoxQixDYXBwWkEsdUJBQXlCLGVidXBaekIsQ2F0cFpBLG9CQUFzQixlYnlwWnRCLENheHBaQSw0QkFBOEIsZWIycFo5QixDYTFwWkEsaUNBQW1DLGViNnBabkMsQ2E1cFpBLGtDQUFvQyxlYitwWnBDLENhOXBaQSxrQkFBb0IsZWJpcVpwQixDYWhxWkEsdUJBQXlCLGVibXFaekIsQ2FscVpBLHNCQUF3QixlYnFxWnhCLENhcHFaQSxtQkFBcUIsZWJ1cVpyQixDYXRxWkEsNEJBQThCLGVieXFaOUIsQ2F4cVpBLDhCQUFnQyxlYjJxWmhDLENhMXFaQSxtQkFBcUIsZWI2cVpyQixDYTVxWkEsNEJBQThCLGViK3FaOUIsQ2E5cVpBLDJCQUE2QixlYmlyWjdCLENhaHJaQSwyQkFBNkIsZWJtclo3QixDYWxyWkEsOEJBQWdDLGVicXJaaEMsQ2FwclpBLHFDQUF1QyxlYnVyWnZDLENhdHJaQSxrQkFBb0IsZWJ5clpwQixDYXhyWkEsbUJBQXFCLGViMnJackIsQ2ExclpBLG1CQUFxQixlYjZyWnJCLENhNXJaQSx5QkFBMkIsZWIrclozQixDYTlyWkEsMkJBQTZCLGViaXNaN0IsQ2Foc1pBLG9CQUFzQixlYm1zWnRCLENhbHNaQSxzQkFBd0IsZWJxc1p4QixDYXBzWkEscUJBQXVCLGVidXNadkIsQ2F0c1pBLHlCQUEyQixlYnlzWjNCLENheHNaQSx3QkFBMEIsZWIyc1oxQixDYTFzWkEsNEJBQThCLGViNnNaOUIsQ2E1c1pBLHNCQUF3QixlYitzWnhCLENhOXNaQSw0QkFBOEIsZWJpdFo5QixDYWh0WkEsb0JBQXNCLGVibXRadEIsQ2FsdFpBLG1CQUFxQixlYnF0WnJCLENhcHRaQSxtQkFBcUIsZWJ1dFpyQixDYXR0WkEsbUJBQXFCLGVieXRackIsQ2F4dFpBLG1CQUFxQixlYjJ0WnJCLENhMXRaQSxtQkFBcUIsZWI2dFpyQixDYTV0WkEsbUJBQXFCLGViK3RackIsQ2E5dFpBLG1CQUFxQixlYml1WnJCLENhaHVaQSx3QkFBMEIsZWJtdVoxQixDYWx1WkEsMkJBQTZCLGVicXVaN0IsQ2FwdVpBLHdCQUEwQixlYnV1WjFCLENhdHVaQSwwQkFBNEIsZWJ5dVo1QixDYXh1WkEsdUJBQXlCLGViMnVaekIsQ2ExdVpBLHlCQUEyQixlYjZ1WjNCLENhNXVaQSwwQkFBNEIsZWIrdVo1QixDYTl1WkEsMkJBQTZCLGViaXZaN0IsQ2FodlpBLDJCQUE2QixlYm12WjdCLENhbHZaQSxrQkFBb0IsZWJxdlpwQixDYXB2WkEsdUJBQXlCLGVidXZaekIsQ2F0dlpBLG9CQUFzQixlYnl2WnRCLENheHZaQSxzQkFBd0IsZWIydlp4QixDYTF2WkEsb0JBQXNCLGViNnZadEIsQ2E1dlpBLDBCQUE0QixlYit2WjVCLENhOXZaQSx3QkFBMEIsZWJpd1oxQixDYWh3WkEsZ0NBQWtDLGVibXdabEMsQ2Fsd1pBLDhCQUFnQyxlYnF3WmhDLENhcHdaQSxvQkFBc0IsZWJ1d1p0QixDYXR3WkEsb0JBQXNCLGVieXdadEIsQ2F4d1pBLGtCQUFvQixlYjJ3WnBCLENhMXdaQSx1QkFBeUIsZWI2d1p6QixDYTV3WkEsdUJBQXlCLGViK3daekIsQ2E5d1pBLHVCQUF5QixlYml4WnpCLENhaHhaQSxtQkFBcUIsZWJteFpyQixDYWx4WkEsa0JBQW9CLGVicXhacEIsQ2FweFpBLDRCQUE4QixlYnV4WjlCLENhdHhaQSw0QkFBOEIsZWJ5eFo5QixDYXh4WkEseUJBQTJCLGViMnhaM0IsQ2ExeFpBLHVCQUF5QixlYjZ4WnpCLENhNXhaQSxpQ0FBbUMsZWIreFpuQyxDYTl4WkEsNkJBQStCLGViaXlaL0IsQ2FoeVpBLDJCQUE2QixlYm15WjdCLENhbHlaQSw2QkFBK0IsZWJxeVovQixDYXB5WkEsNEJBQThCLGVidXlaOUIsQ2F0eVpBLDZCQUErQixlYnl5Wi9CLENheHlaQSw0QkFBOEIsZWIyeVo5QixDYTF5WkEscUJBQXVCLGViNnladkIsQ2E1eVpBLDJCQUE2QixlYit5WjdCLENhOXlaQSx5QkFBMkIsZWJpelozQixDYWh6WkEseUJBQTJCLGVibXpaM0IsQ2FselpBLHVCQUF5QixlYnF6WnpCLENhcHpaQSx1QkFBeUIsZWJ1elp6QixDYXR6WkEsa0JBQW9CLGVieXpacEIsQ2F4elpBLDRCQUE4QixlYjJ6WjlCLENhMXpaQSwwQkFBNEIsZWI2elo1QixDYTV6WkEsd0JBQTBCLGViK3paMUIsQ2E5elpBLHVCQUF5QixlYmkwWnpCLENhaDBaQSx5QkFBMkIsZWJtMFozQixDYWwwWkEseUJBQTJCLGVicTBaM0IsQ2FwMFpBLDBCQUE0QixlYnUwWjVCLENhdDBaQSxnQ0FBa0MsZWJ5MFpsQyxDYXgwWkEsZ0NBQWtDLGViMjBabEMsQ2ExMFpBLGlDQUFtQyxlYjYwWm5DLENhNTBaQSw4QkFBZ0MsZWIrMFpoQyxDYTkwWkEsdUJBQXlCLGViaTFaekIsQ2FoMVpBLHFCQUF1QixlYm0xWnZCLENhbDFaQSw4QkFBZ0MsZWJxMVpoQyxDYXAxWkEsd0JBQTBCLGVidTFaMUIsQ2F0MVpBLDRCQUE4QixlYnkxWjlCLENheDFaQSxrQkFBb0IsZWIyMVpwQixDYTExWkEsMEJBQTRCLGViNjFaNUIsQ2E1MVpBLG9CQUFzQixlYisxWnRCLENhOTFaQSx5QkFBMkIsZWJpMlozQixDYWgyWkEsaUNBQW1DLGVibTJabkMsQ2FsMlpBLCtCQUFpQyxlYnEyWmpDLENhcDJaQSx5QkFBMkIsZWJ1MlozQixDYXQyWkEsd0JBQTBCLGVieTJaMUIsQ2F4MlpBLHlCQUEyQixlYjIyWjNCLENhMTJaQSx3QkFBMEIsZWI2MloxQixDYTUyWkEsb0JBQXNCLGViKzJadEIsQ2E5MlpBLDJCQUE2QixlYmkzWjdCLENhaDNaQSwyQkFBNkIsZWJtM1o3QixDYWwzWkEsMkJBQTZCLGVicTNaN0IsQ2FwM1pBLHFCQUF1QixlYnUzWnZCLENhdDNaQSxvQkFBc0IsZWJ5M1p0QixDYXgzWkEsMkJBQTZCLGViMjNaN0IsQ2ExM1pBLDBCQUE0QixlYjYzWjVCLENhNTNaQSx5QkFBMkIsZWIrM1ozQixDYTkzWkEsMkJBQTZCLGViaTRaN0IsQ2FoNFpBLHlCQUEyQixlYm00WjNCLENhbDRaQSwwQkFBNEIsZWJxNFo1QixDYXA0WkEseUJBQTJCLGVidTRaM0IsQ2F0NFpBLGtDQUFvQyxlYnk0WnBDLENheDRaQSxrQ0FBb0MsZWIyNFpwQyxDYTE0WkEsbUNBQXFDLGViNjRackMsQ2E1NFpBLGdDQUFrQyxlYis0WmxDLENhOTRaQSwyQkFBNkIsZWJpNVo3QixDYWg1WkEsMkJBQTZCLGVibTVaN0IsQ2FsNVpBLDRCQUE4QixlYnE1WjlCLENhcDVaQSx5QkFBMkIsZWJ1NVozQixDYXQ1WkEsb0JBQXNCLGVieTVadEIsQ2F4NVpBLHFCQUF1QixlYjI1WnZCLENhMTVaQSxxQkFBdUIsZWI2NVp2QixDYTU1WkEsMkJBQTZCLGViKzVaN0IsQ2E5NVpBLG1CQUFxQixlYmk2WnJCLENhaDZaQSw2QkFBK0IsZWJtNlovQixDYWw2WkEsd0JBQTBCLGVicTZaMUIsQ2FwNlpBLDhCQUFnQyxlYnU2WmhDLENhdDZaQSw2QkFBK0IsZWJ5NlovQixDYXg2WkEsb0JBQXNCLGViMjZadEIsQ2ExNlpBLG9CQUFzQixlYjY2WnRCLENhNTZaQSxnQ0FBa0MsZWIrNlpsQyxDYTk2WkEsb0JBQXNCLGViaTdadEIsQ2FoN1pBLHVDQUF5QyxlYm03WnpDLENhbDdaQSw2QkFBK0IsZWJxN1ovQixDYXA3WkEseUJBQTJCLGVidTdaM0IsQ2F0N1pBLDhCQUFnQyxlYnk3WmhDLENheDdaQSx5QkFBMkIsZWIyN1ozQixDYTE3WkEsa0NBQW9DLGViNjdacEMsQ2E1N1pBLHdCQUEwQixlYis3WjFCLENhOTdaQSw2QkFBK0IsZWJpOFovQixDYWg4WkEscUNBQXVDLGVibThadkMsQ2FsOFpBLHVCQUF5QixlYnE4WnpCLENhcDhaQSxtQkFBcUIsZWJ1OFpyQixDYXQ4WkEsMEJBQTRCLGVieThaNUIsQ2F4OFpBLHFCQUF1QixlYjI4WnZCLENhMThaQSxrQkFBb0IsZWI2OFpwQixDYTU4WkEsbUJBQXFCLGViKzhackIsQ2E5OFpBLG9CQUFzQixlYmk5WnRCLENhaDlaQSxzQkFBd0IsZWJtOVp4QixDYWw5WkEsc0JBQXdCLGVicTlaeEIsQ2FwOVpBLGdDQUFrQyxlYnU5WmxDLENhdDlaQSw2QkFBK0IsZWJ5OVovQixDYXg5WkEsMkJBQTZCLGViMjlaN0IsQ2ExOVpBLDhCQUFnQyxlYjY5WmhDLENhNTlaQSw0QkFBOEIsZWIrOVo5QixDYTk5WkEsdUJBQXlCLGViaStaekIsQ2FoK1pBLDhCQUFnQyxlYm0rWmhDLENhbCtaQSwyQkFBNkIsZWJxK1o3QixDYXArWkEsc0JBQXdCLGVidStaeEIsQ2F0K1pBLHVCQUF5QixlYnkrWnpCLENheCtaQSx3Q0FBMEMsZWIyK1oxQyxDYTErWkEsNkJBQStCLGViNitaL0IsQ2E1K1pBLHFCQUF1QixlYisrWnZCLENhOStaQSwwQkFBNEIsZWJpL1o1QixDYWgvWkEsbUJBQXFCLGVibS9ackIsQ2FsL1pBLHdCQUEwQixlYnEvWjFCLENhcC9aQSxvQkFBc0IsZWJ1L1p0QixDYXQvWkEsMEJBQTRCLGVieS9aNUIsQ2F4L1pBLG1CQUFxQixlYjIvWnJCLENhMS9aQSw2QkFBK0IsZWI2L1ovQixDYTUvWkEsb0JBQXNCLGViKy9adEIsQ2E5L1pBLHlCQUEyQixlYmlnYTNCLENhaGdhQSxtQkFBcUIsZWJtZ2FyQixDYWxnYUEsb0JBQXNCLGVicWdhdEIsQ2FwZ2FBLHFCQUF1QixlYnVnYXZCLENhdGdhQSxtQkFBcUIsZWJ5Z2FyQixDYXhnYUEsb0JBQXNCLGViMmdhdEIsQ2ExZ2FBLGtCQUFvQixlYjZnYXBCLENhNWdhQSx1QkFBeUIsZWIrZ2F6QixDYTlnYUEsbUJBQXFCLGViaWhhckIsQ2FoaGFBLHVCQUF5QixlYm1oYXpCLENhbGhhQSxzQkFBd0IsZWJxaGF4QixDYXBoYUEsMkJBQTZCLGVidWhhN0IsQ2F0aGFBLHdCQUEwQixlYnloYTFCLENheGhhQSxtQkFBcUIsZWIyaGFyQixDYTFoYUEsdUJBQXlCLGViNmhhekIsQ2E1aGFBLHNCQUF3QixlYitoYXhCLENhOWhhQSx3QkFBMEIsZWJpaWExQixDYWhpYUEsd0JBQTBCLGVibWlhMUIsQ2FsaWFBLHVCQUF5QixlYnFpYXpCLENhcGlhQSx1QkFBeUIsZWJ1aWF6QixDYXRpYUEseUJBQTJCLGVieWlhM0IsQ2F4aWFBLHVCQUF5QixlYjJpYXpCLENhMWlhQSxpQ0FBbUMsZWI2aWFuQyxDYTVpYUEseUJBQTJCLGViK2lhM0IsQ2E5aWFBLHFCQUF1QixlYmlqYXZCLENhaGphQSxvQkFBc0IsZWJtamF0QixDYWxqYUEsa0JBQW9CLGVicWphcEIsQ2FwamFBLGtCQUFvQixlYnVqYXBCLENhdGphQSwwQkFBNEIsZWJ5amE1QixDYXhqYUEsb0JBQXNCLGViMmphdEIsQ2ExamFBLDRCQUE4QixlYjZqYTlCLENhNWphQSxxQkFBdUIsZWIramF2QixDYTlqYUEsMEJBQTRCLGViaWthNUIsQ2Foa2FBLHdCQUEwQixlYm1rYTFCLENhbGthQSx5QkFBMkIsZWJxa2EzQixDYXBrYUEsbUJBQXFCLGVidWthckIsQ2F0a2FBLHVCQUF5QixlYnlrYXpCLENheGthQSwrQkFBaUMsZWIya2FqQyxDYTFrYUEscUJBQXVCLGViNmthdkIsQ2E1a2FBLDJCQUE2QixlYitrYTdCLENhOWthQSxtQkFBcUIsZWJpbGFyQixDYWhsYUEsNEJBQThCLGVibWxhOUIsQ2FsbGFBLDZCQUErQixlYnFsYS9CLENhcGxhQSx1QkFBeUIsZWJ1bGF6QixDYXRsYUEsdUJBQXlCLGVieWxhekIsQ2F4bGFBLDRCQUE4QixlYjJsYTlCLENhMWxhQSxzQkFBd0IsZWI2bGF4QixDYTVsYUEsbUJBQXFCLGViK2xhckIsQ2E5bGFBLGtCQUFvQixlYmltYXBCLENhaG1hQSxvQkFBc0IsZWJtbWF0QixDYWxtYUEsa0NBQW9DLGVicW1hcEMsQ2FwbWFBLGdDQUFrQyxlYnVtYWxDLENhdG1hQSx1QkFBeUIsZWJ5bWF6QixDYXhtYUEsNEJBQThCLGViMm1hOUIsQ2ExbWFBLGlDQUFtQyxlYjZtYW5DLENhNW1hQSw4QkFBZ0MsZWIrbWFoQyxDYTltYUEscUJBQXVCLGViaW5hdkIsQ2FobmFBLHFCQUF1QixlYm1uYXZCLENhbG5hQSx1QkFBeUIsZWJxbmF6QixDYXBuYUEsd0JBQTBCLGVidW5hMUIsQ2F0bmFBLGlDQUFtQyxlYnluYW5DLENheG5hQSwwQkFBNEIsZWIybmE1QixDYTFuYUEsaUNBQW1DLGViNm5hbkMsQ2E1bmFBLG1DQUFxQyxlYituYXJDLENhOW5hQSxxQkFBdUIsZWJpb2F2QixDYWhvYUEsc0NBQXdDLGVibW9heEMsQ2Fsb2FBLGlDQUFtQyxlYnFvYW5DLENhcG9hQSw2Q0FBK0MsZWJ1b2EvQyxDYXRvYUEsa0JBQW9CLGVieW9hcEIsQ2F4b2FBLDBCQUE0QixlYjJvYTVCLENhMW9hQSx3QkFBMEIsZWI2b2ExQixDYTVvYUEsa0JBQW9CLGViK29hcEIsQ2E5b2FBLDRCQUE4QixlYmlwYTlCLENhaHBhQSwyQkFBNkIsZWJtcGE3QixDYWxwYUEsa0JBQW9CLGVicXBhcEIsQ2FwcGFBLHNCQUF3QixlYnVwYXhCLENhdHBhQSxnQ0FBa0MsZWJ5cGFsQyxDYXhwYUEscUJBQXVCLGViMnBhdkIsQ2ExcGFBLDBCQUE0QixlYjZwYTVCLENhNXBhQSxtQkFBcUIsZWIrcGFyQixDYTlwYUEsNkJBQStCLGViaXFhL0IsQ2FocWFBLDJCQUE2QixlYm1xYTdCLENhbHFhQSx5QkFBMkIsZWJxcWEzQixDYXBxYUEsd0JBQTBCLGVidXFhMUIsQ2F0cWFBLDRCQUE4QixlYnlxYTlCLENheHFhQSx1QkFBeUIsZWIycWF6QixDYTFxYUEsNEJBQThCLGViNnFhOUIsQ2E1cWFBLHlCQUEyQixlYitxYTNCLENhOXFhQSwwQkFBNEIsZWJpcmE1QixDYWhyYUEseUJBQTJCLGVibXJhM0IsQ2FscmFBLDBCQUE0QixlYnFyYTVCLENhcHJhQSwyQkFBNkIsZWJ1cmE3QixDYXRyYUEsa0NBQW9DLGVieXJhcEMsQ2F4cmFBLDJCQUE2QixlYjJyYTdCLENhMXJhQSxxQ0FBdUMsZWI2cmF2QyxDYTVyYUEsdUJBQXlCLGViK3JhekIsQ2E5cmFBLDhCQUFnQyxlYmlzYWhDLENhaHNhQSxnQ0FBa0MsZWJtc2FsQyxDYWxzYUEsNkJBQStCLGVicXNhL0IsQ2Fwc2FBLDBCQUE0QixlYnVzYTVCLENhdHNhQSx5QkFBMkIsZWJ5c2EzQixDYXhzYUEsd0JBQTBCLGViMnNhMUIsQ2Exc2FBLG1CQUFxQixlYjZzYXJCLENhNXNhQSx3QkFBMEIsZWIrc2ExQixDYTlzYUEsbUJBQXFCLGViaXRhckIsQ2FodGFBLHFCQUF1QixlYm10YXZCLENhbHRhQSwwQkFBNEIsZWJxdGE1QixDYXB0YUEsbUJBQXFCLGVidXRhckIsQ2F0dGFBLDZCQUErQixlYnl0YS9CLENheHRhQSxnQ0FBa0MsZWIydGFsQyxDYTF0YUEsd0JBQTBCLGViNnRhMUIsQ2E1dGFBLG1CQUFxQixlYit0YXJCLENhOXRhQSwwQkFBNEIsZWJpdWE1QixDYWh1YUEsbUJBQXFCLGVibXVhckIsQ2FsdWFBLDZCQUErQixlYnF1YS9CLENhcHVhQSx1QkFBeUIsZWJ1dWF6QixDYXR1YUEsb0JBQXNCLGVieXVhdEIsQ2F4dWFBLHNCQUF3QixlYjJ1YXhCLENhMXVhQSxxQkFBdUIsZWI2dWF2QixDYTV1YUEsMkJBQTZCLGViK3VhN0IsQ2E5dWFBLDBCQUE0QixlYml2YTVCLENhaHZhQSwwQkFBNEIsZWJtdmE1QixDYWx2YUEsbUJBQXFCLGVicXZhckIsQ2FwdmFBLDRCQUE4QixlYnV2YTlCLENhdHZhQSxzQkFBd0IsZWJ5dmF4QixDYXh2YUEsbUJBQXFCLGViMnZhckIsQ2ExdmFBLG9CQUFzQixlYjZ2YXRCLENhNXZhQSx5QkFBMkIsZWIrdmEzQixDYTl2YUEsMEJBQTRCLGViaXdhNUIsQ2Fod2FBLDRCQUE4QixlYm13YTlCLENhbHdhQSxxQkFBdUIsZWJxd2F2QixDYXB3YUEsc0JBQXdCLGVidXdheEIsQ2F0d2FBLHVCQUF5QixlYnl3YXpCLENheHdhQSxvQkFBc0IsZWIyd2F0QixDYTF3YUEsa0JBQW9CLGViNndhcEIsQ2E1d2FBLHlCQUEyQixlYit3YTNCLENhOXdhQSxvQkFBc0IsZWJpeGF0QixDYWh4YUEsbUJBQXFCLGVibXhhckIsQ2FseGFBLG9CQUFzQixlYnF4YXRCLENhcHhhQSwyQkFBNkIsZWJ1eGE3QixDYXR4YUEsNEJBQThCLGVieXhhOUIsQ2F4eGFBLHNDQUF3QyxlYjJ4YXhDLENhMXhhQSw0QkFBOEIsZWI2eGE5QixDYTV4YUEsc0JBQXdCLGViK3hheEIsQ2E5eGFBLG9CQUFzQixlYml5YXRCLENhaHlhQSwyQkFBNkIsZWJteWE3QixDYWx5YUEsNkJBQStCLGVicXlhL0IsQ2FweWFBLHlCQUEyQixlYnV5YTNCLENhdHlhQSwyQkFBNkIsZWJ5eWE3QixDYXh5YUEsd0JBQTBCLGViMnlhMUIsQ2ExeWFBLHNCQUF3QixlYjZ5YXhCLENhNXlhQSw2QkFBK0IsZWIreWEvQixDYTl5YUEsMkJBQTZCLGViaXphN0IsQ2FoemFBLGlDQUFtQyxlYm16YW5DLENhbHphQSxzQkFBd0IsZWJxemF4QixDYXB6YUEsbUJBQXFCLGVidXphckIsQ2F0emFBLDZCQUErQixlYnl6YS9CLENheHphQSx3QkFBMEIsZWIyemExQixDYTF6YUEsOEJBQWdDLGViNnphaEMsQ2E1emFBLDBCQUE0QixlYit6YTVCLENhOXphQSwwQkFBNEIsZWJpMGE1QixDYWgwYUEsZ0NBQWtDLGVibTBhbEMsQ2FsMGFBLHlCQUEyQixlYnEwYTNCLENhcDBhQSx5QkFBMkIsZWJ1MGEzQixDYXQwYUEsMEJBQTRCLGVieTBhNUIsQ2F4MGFBLGlDQUFtQyxlYjIwYW5DLENhMTBhQSwrQkFBaUMsZWI2MGFqQyxDYTUwYUEsd0JBQTBCLGViKzBhMUIsQ2E5MGFBLDhCQUFnQyxlYmkxYWhDLENhaDFhQSx5QkFBMkIsZWJtMWEzQixDYWwxYUEsa0NBQW9DLGVicTFhcEMsQ2FwMWFBLDRCQUE4QixlYnUxYTlCLENhdDFhQSxxQkFBdUIsZWJ5MWF2QixDYXgxYUEsdUJBQXlCLGViMjFhekIsQ2ExMWFBLHdCQUEwQixlYjYxYTFCLENhNTFhQSxxQkFBdUIsZWIrMWF2QixDYTkxYUEsb0JBQXNCLGViaTJhdEIsQ2FoMmFBLDJCQUE2QixlYm0yYTdCLENhbDJhQSxpQ0FBbUMsZWJxMmFuQyxDYXAyYUEsK0JBQWlDLGVidTJhakMsQ2F0MmFBLDBCQUE0QixlYnkyYTVCLENheDJhQSxpQ0FBbUMsZWIyMmFuQyxDYTEyYUEseUJBQTJCLGViNjJhM0IsQ2E1MmFBLHlCQUEyQixlYisyYTNCLENhOTJhQSw4QkFBZ0MsZWJpM2FoQyxDYWgzYUEsOEJBQWdDLGVibTNhaEMsQ2FsM2FBLCtCQUFpQyxlYnEzYWpDLENhcDNhQSw0QkFBOEIsZWJ1M2E5QixDYXQzYUEsMkJBQTZCLGVieTNhN0IsQ2F4M2FBLHdCQUEwQixlYjIzYTFCLENhMTNhQSw0QkFBOEIsZWI2M2E5QixDYTUzYUEseUJBQTJCLGViKzNhM0IsQ2E5M2FBLG9CQUFzQixlYmk0YXRCLENhaDRhQSw0QkFBOEIsZWJtNGE5QixDYWw0YUEsd0JBQTBCLGVicTRhMUIsQ2FwNGFBLHVCQUF5QixlYnU0YXpCLENhdDRhQSx1QkFBeUIsZWJ5NGF6QixDYXg0YUEsc0JBQXdCLGViMjRheEIsQ2ExNGFBLHlCQUEyQixlYjY0YTNCLENhNTRhQSxxQkFBdUIsZWIrNGF2QixDYTk0YUEsa0JBQW9CLGViaTVhcEIsQ2FoNWFBLHNCQUF3QixlYm01YXhCLENhbDVhQSx5QkFBMkIsZWJxNWEzQixDYXA1YUEsbUNBQXFDLGVidTVhckMsQ2F0NWFBLHNCQUF3QixlYnk1YXhCLENheDVhQSxvQkFBc0IsZWIyNWF0QixDYTE1YUEsMkJBQTZCLGViNjVhN0IsQ2E1NWFBLHdCQUEwQixlYis1YTFCLENhOTVhQSx5QkFBMkIsZWJpNmEzQixDYWg2YUEsMEJBQTRCLGVibTZhNUIsQ2FsNmFBLHFCQUF1QixlYnE2YXZCLENhcDZhQSxvQkFBc0IsZWJ1NmF0QixDYXQ2YUEsc0JBQXdCLGVieTZheEIsQ2F4NmFBLDBCQUE0QixlYjI2YTVCLENhMTZhQSwwQkFBNEIsZWI2NmE1QixDYTU2YUEsbUJBQXFCLGViKzZhckIsQ2E5NmFBLG9CQUFzQixlYmk3YXRCLENhaDdhQSx5QkFBMkIsZWJtN2EzQixDYWw3YUEsdUJBQXlCLGVicTdhekIsQ2FwN2FBLGlDQUFtQyxlYnU3YW5DLENhdDdhQSw4QkFBZ0MsZWJ5N2FoQyxDYXg3YUEsc0JBQXdCLGViMjdheEIsQ2ExN2FBLHFCQUF1QixlYjY3YXZCLENhNTdhQSxvQkFBc0IsZWIrN2F0QixDYTk3YUEsd0JBQTBCLGViaThhMUIsQ2FoOGFBLDRCQUE4QixlYm04YTlCLENhbDhhQSw2QkFBK0IsZWJxOGEvQixDYXA4YUEsOEJBQWdDLGVidThhaEMsQ2F0OGFBLDJCQUE2QixlYnk4YTdCLENheDhhQSxzQkFBd0IsZWIyOGF4QixDYTE4YUEsdUJBQXlCLGViNjhhekIsQ2E1OGFBLHdCQUEwQixlYis4YTFCLENhOThhQSxzQkFBd0IsZWJpOWF4QixDYWg5YUEsb0JBQXNCLGVibTlhdEIsQ2FsOWFBLHVCQUF5QixlYnE5YXpCLENhcDlhQSxzQkFBd0IsZWJ1OWF4QixDYXQ5YUEsZ0NBQWtDLGVieTlhbEMsQ2F4OWFBLG9CQUFzQixlYjI5YXRCLENhMTlhQSxvQkFBc0IsZWI2OWF0QixDYTU5YUEscUJBQXVCLGViKzlhdkIsQ2E5OWFBLG9CQUFzQixlYmkrYXRCLENhaCthQSxxQkFBdUIsZWJtK2F2QixDYWwrYUEsdUJBQXlCLGVicSthekIsQ2FwK2FBLHVCQUF5QixlYnUrYXpCLENhdCthQSxtQkFBcUIsZWJ5K2FyQixDYXgrYUEsMEJBQTRCLGViMithNUIsQ2ExK2FBLHFCQUF1QixlYjYrYXZCLENhNSthQSxtQkFBcUIsZWIrK2FyQixDYTkrYUEsb0JBQXNCLGViaS9hdEIsQ2FoL2FBLDZCQUErQixlYm0vYS9CLENhbC9hQSxvQkFBc0IsZWJxL2F0QixDYXAvYUEsa0JBQW9CLGVidS9hcEIsQ2F0L2FBLHVCQUF5QixlYnkvYXpCLENheC9hQSxxQkFBdUIsZWIyL2F2QixDYTEvYUEsbUJBQXFCLGViNi9hckIsQ2E1L2FBLHdCQUEwQixlYisvYTFCLENhOS9hQSw4QkFBZ0MsZWJpZ2JoQyxDYWhnYkEsd0JBQTBCLGVibWdiMUIsQ2FsZ2JBLHVCQUF5QixlYnFnYnpCLENhcGdiQSx1QkFBeUIsZWJ1Z2J6QixDYXRnYkEscUJBQXVCLGVieWdidkIsQ2F4Z2JBLDBCQUE0QixlYjJnYjVCLENhMWdiQSw2QkFBK0IsZWI2Z2IvQixDYTVnYkEsb0JBQXNCLGViK2didEIsQ2E5Z2JBLHlCQUEyQixlYmloYjNCLENhaGhiQSwyQkFBNkIsZWJtaGI3QixDYWxoYkEseUJBQTJCLGVicWhiM0IsQ2FwaGJBLDBCQUE0QixlYnVoYjVCLENhdGhiQSxtQkFBcUIsZWJ5aGJyQixDYXhoYkEsb0JBQXNCLGViMmhidEIsQ2ExaGJBLHdCQUEwQixlYjZoYjFCLENhNWhiQSw4QkFBZ0MsZWIraGJoQyxDYTloYkEsbUNBQXFDLGViaWlickMsQ2FoaWJBLGlDQUFtQyxlYm1pYm5DLENhbGliQSx3QkFBMEIsZWJxaWIxQixDYXBpYkEsd0JBQTBCLGVidWliMUIsQ2FyaWJBLHdCQUEwQixlYjJpYjFCLENhMWliQSxtQkFBcUIsZWI2aWJyQixDYTVpYkEsNkJBQStCLGViK2liL0IsQ2E5aWJBLHNCQUF3QixlYmlqYnhCLENhaGpiQSxzQkFBd0IsZWJtamJ4QixDYWxqYkEsNkJBQStCLGVicWpiL0IsQ2FwamJBLG1CQUFxQixlYnVqYnJCLENhdGpiQSx3QkFBMEIsZWJ5amIxQixDYXhqYkEsd0NBQTBDLGViMmpiMUMsQ2ExamJBLHdDQUEwQyxlYjZqYjFDLENhNWpiQSx5Q0FBMkMsZWIramIzQyxDYTlqYkEsc0NBQXdDLGViaWtieEMsQ2Foa2JBLHlCQUEyQixlYm1rYjNCLENhbGtiQSwyQkFBNkIsZWJxa2I3QixDYXBrYkEsb0JBQXNCLGVidWtidEIsQ2F0a2JBLHFCQUF1QixlYnlrYnZCLENheGtiQSx3QkFBMEIsZWIya2IxQixDYTFrYkEsbUJBQXFCLGViNmtickIsQ2E1a2JBLGtCQUFvQixlYitrYnBCLENhOWtiQSx5QkFBMkIsZWJpbGIzQixDYWhsYkEsbUNBQXFDLGVibWxickMsQ2FsbGJBLHlCQUEyQixlYnFsYjNCLENhcGxiQSxtQ0FBcUMsZWJ1bGJyQyxDYXRsYkEsc0JBQXdCLGVieWxieEIsQ2F4bGJBLHdCQUEwQixlYjJsYjFCLENhMWxiQSxxQkFBdUIsZWI2bGJ2QixDYTVsYkEsbUJBQXFCLGViK2xickIsQ2E5bGJBLDBCQUE0QixlYmltYjVCLENhaG1iQSwwQkFBNEIsZWJtbWI1QixDYWxtYkEscUNBQXVDLGVicW1idkMsQ2FwbWJBLG1DQUFxQyxlYnVtYnJDLENhdG1iQSxtQkFBcUIsZWJ5bWJyQixDYXhtYkEsb0JBQXNCLGViMm1idEIsQ2ExbWJBLHFCQUF1QixlYjZtYnZCLENhNW1iQSxrQkFBb0IsZWIrbWJwQixDYTltYkEsd0JBQTBCLGViaW5iMUIsQ2FobmJBLCtCQUFpQyxlYm1uYmpDLENhbG5iQSxxQkFBdUIsZWJxbmJ2QixDYXBuYkEsc0JBQXdCLGVidW5ieEIsQ2F0bmJBLHNCQUF3QixlYnluYnhCLENheG5iQSxxQkFBdUIsZWIybmJ2QixDYTFuYkEsd0JBQTBCLGViNm5iMUIsQ2E1bmJBLHlCQUEyQixlYituYjNCLENhOW5iQSxtQ0FBcUMsZWJpb2JyQyxDYWhvYkEseUNBQTJDLGVibW9iM0MsQ2Fsb2JBLCtCQUFpQyxlYnFvYmpDLENhcG9iQSx5QkFBMkIsZWJ1b2IzQixDYXRvYkEsb0JBQXNCLGVieW9idEIsQ2F4b2JBLDJCQUE2QixlYjJvYjdCLENhMW9iQSwyQkFBNkIsZWI2b2I3QixDYTVvYkEscUJBQXVCLGViK29idkIsQ2E5b2JBLHFCQUF1QixlYmlwYnZCLENhaHBiQSwrQkFBaUMsZWJtcGJqQyxDYWxwYkEseUJBQTJCLGVicXBiM0IsQ2FwcGJBLG1DQUFxQyxlYnVwYnJDLENhdHBiQSw4QkFBZ0MsZWJ5cGJoQyxDYXhwYkEsd0NBQTBDLGViMnBiMUMsQ2ExcGJBLDBCQUE0QixlYjZwYjVCLENhNXBiQSxvQ0FBc0MsZWIrcGJ0QyxDYTlwYkEsdUJBQXlCLGViaXFiekIsQ2FocWJBLG1CQUFxQixlYm1xYnJCLENhbHFiQSw0QkFBOEIsZWJxcWI5QixDYXBxYkEscUJBQXVCLGVidXFidkIsQ2F0cWJBLHlCQUEyQixlYnlxYjNCLENheHFiQSx1QkFBeUIsZWIycWJ6QixDYTFxYkEsNEJBQThCLGViNnFiOUIsQ2E1cWJBLHNCQUF3QixlYitxYnhCLENhOXFiQSxvQkFBc0IsZWJpcmJ0QixDYWhyYkEsNEJBQThCLGVibXJiOUIsQ2FscmJBLHFCQUF1QixlYnFyYnZCLENhcHJiQSx3QkFBMEIsZWJ1cmIxQixDYXRyYkEsd0JBQTBCLGVieXJiMUIsQ2F4cmJBLDRCQUE4QixlYjJyYjlCLENhMXJiQSwyQkFBNkIsZWI2cmI3QixDYTVyYkEsNkJBQStCLGViK3JiL0IsQ2E5cmJBLHNCQUF3QixlYmlzYnhCLENhaHNiQSxpQkFBbUIsZWJtc2JuQixDYWxzYkEsb0JBQXNCLGVicXNidEIsQ2Fwc2JBLHNCQUF3QixlYnVzYnhCLENhdHNiQSxvQkFBc0IsZWJ5c2J0QixDYXhzYkEsMEJBQTRCLGViMnNiNUIsQ2Exc2JBLDJCQUE2QixlYjZzYjdCLENhNXNiQSxzQkFBd0IsZWIrc2J4QixDYTlzYkEscUJBQXVCLGViaXRidkIsQ2FodGJBLDBCQUE0QixlYm10YjVCLENhbHRiQSx3QkFBMEIsZWJxdGIxQixDYXB0YkEsNEJBQThCLGVidXRiOUIsQ2F0dGJBLHdCQUEwQixlYnl0YjFCLENheHRiQSxzQkFBd0IsZWIydGJ4QixDYTF0YkEsdUJBQXlCLGViNnRiekIsQ2E1dGJBLDZCQUErQixlYit0Yi9CLENhOXRiQSxvQkFBc0IsZWJpdWJ0QixDYWh1YkEsb0JBQXNCLGVibXVidEIsQ2FsdWJBLDJCQUE2QixlYnF1YjdCLENhcHViQSxrQkFBb0IsZWJ1dWJwQixDYXR1YkEsb0JBQXNCLGVieXVidEIsQ2F4dWJBLGtCQUFvQixlYjJ1YnBCLENhMXViQSw0QkFBOEIsZWI2dWI5QixDYTV1YkEsd0JBQTBCLGViK3ViMUIsQ2E5dWJBLHNCQUF3QixlYml2YnhCLENhaHZiQSx5QkFBMkIsZWJtdmIzQixDYWx2YkEsK0JBQWlDLGVicXZiakMsQ2FwdmJBLDJCQUE2QixlYnV2YjdCLENhdHZiQSwyQkFBNkIsZWJ5dmI3QixDYXh2YkEseUJBQTJCLGViMnZiM0IsQ2ExdmJBLHNCQUF3QixlYjZ2YnhCLENhNXZiQSx5QkFBMkIsZWIrdmIzQixDYTl2YkEsMkJBQTZCLGViaXdiN0IsQ2Fod2JBLG9CQUFzQixlYm13YnRCLENhbHdiQSw4QkFBZ0MsZWJxd2JoQyxDYXB3YkEsMEJBQTRCLGVidXdiNUIsQ2F0d2JBLDJCQUE2QixlYnl3YjdCLENheHdiQSxxQ0FBdUMsZWIyd2J2QyxDYTF3YkEsMkJBQTZCLGViNndiN0IsQ2E1d2JBLDBCQUE0QixlYit3YjVCLENhOXdiQSx5QkFBMkIsZWJpeGIzQixDYWh4YkEsb0JBQXNCLGVibXhidEIsQ2FseGJBLDBCQUE0QixlYnF4YjVCLENhcHhiQSwrQkFBaUMsZWJ1eGJqQyxDYXR4YkEsb0JBQXNCLGVieXhidEIsQ2F4eGJBLDRCQUE4QixlYjJ4YjlCLENhMXhiQSw4QkFBZ0MsZWI2eGJoQyxDYTV4YkEsbUJBQXFCLGViK3hickIsQ2E5eGJBLDBCQUE0QixlYml5YjVCLENhaHliQSxtQkFBcUIsZWJteWJyQixDYWx5YkEsbUJBQXFCLGVicXlickIsQ2FweWJBLDBCQUE0QixlYnV5YjVCLENhdHliQSwwQkFBNEIsZWJ5eWI1QixDYXh5YkEsc0JBQXdCLGViMnlieEIsQ2ExeWJBLG1CQUFxQixlYjZ5YnJCLENhNXliQSw4QkFBZ0MsZWIreWJoQyxDYTl5YkEsa0JBQW9CLGViaXpicEIsQ2FoemJBLHdCQUEwQixlYm16YjFCLENhbHpiQSxtQkFBcUIsZWJxemJyQixDYXB6YkEsdUJBQXlCLGVidXpiekIsQ2F0emJBLHlCQUEyQixlYnl6YjNCLENheHpiQSx3QkFBMEIsZWIyemIxQixDYTF6YkEsbUJBQXFCLGViNnpickIsQ2E1emJBLDRCQUE4QixlYit6YjlCLENhOXpiQSwyQkFBNkIsZWJpMGI3QixDYWgwYkEsa0NBQW9DLGVibTBicEMsQ2FsMGJBLDRDQUE4QyxlYnEwYjlDLENhcDBiQSxvQkFBc0IsZWJ1MGJ0QixDYXQwYkEseUJBQTJCLGVieTBiM0IsQ2F4MGJBLDhCQUFnQyxlYjIwYmhDLENhMTBiQSwyQkFBNkIsZWI2MGI3QixDYTUwYkEscUJBQXVCLGViKzBidkIsQ2E5MGJBLHVCQUF5QixlYmkxYnpCLENhaDFiQSw4QkFBZ0MsZWJtMWJoQyxDYWwxYkEsd0JBQTBCLGVicTFiMUIsQ2FwMWJBLHlCQUEyQixlYnUxYjNCLENhdDFiQSwwQkFBNEIsZWJ5MWI1QixDYXgxYkEsb0JBQXNCLGViMjFidEIsQ2ExMWJBLHdCQUEwQixlYjYxYjFCLENhNTFiQSxrQ0FBb0MsZWIrMWJwQyxDYTkxYkEsc0JBQXdCLGViaTJieEIsQ2FoMmJBLHFCQUF1QixlYm0yYnZCLENhbDJiQSxzQkFBd0IsZWJxMmJ4QixDYXAyYkEsc0JBQXdCLGVidTJieEIsQ2F0MmJBLG1CQUFxQixlYnkyYnJCLENheDJiQSw2QkFBK0IsZWIyMmIvQixDYTEyYkEseUJBQTJCLGViNjJiM0IsQ2E1MmJBLDRCQUE4QixlYisyYjlCLENhOTJiQSxvQkFBc0IsZWJpM2J0QixDYWgzYkEsd0JBQTBCLGVibTNiMUIsQ2FsM2JBLHlCQUEyQixlYnEzYjNCLENhcDNiQSx1QkFBeUIsZWJ1M2J6QixDYXQzYkEsc0JBQXdCLGVieTNieEIsQ2F4M2JBLHFCQUF1QixlYjIzYnZCLENhMTNiQSxtQkFBcUIsZWI2M2JyQixDYTUzYkEsbUJBQXFCLGViKzNickIsQ2E5M2JBLG9CQUFzQixlYmk0YnRCLENhaDRiQSxxQkFBdUIsZWJtNGJ2QixDYWw0YkEsb0JBQXNCLGVicTRidEIsQ2FwNGJBLGtCQUFvQixlYnU0YnBCLENhdDRiQSx5QkFBMkIsZWJ5NGIzQixDYXg0YkEseUJBQTJCLGViMjRiM0IsQ2ExNGJBLG9CQUFzQixlYjY0YnRCLENhNTRiQSw2QkFBK0IsZWIrNGIvQixDYTk0YkEsK0JBQWlDLGViaTViakMsQ2FoNWJBLDZCQUErQixlYm01Yi9CLENhbDViQSxzQkFBd0IsZWJxNWJ4QixDYXA1YkEseUJBQTJCLGVidTViM0IsQ2F0NWJBLHNCQUF3QixlYnk1YnhCLENheDViQSx1QkFBeUIsZWIyNWJ6QixDYTE1YkEsd0JBQTBCLGViNjViMUIsQ2E1NWJBLDZCQUErQixlYis1Yi9CLENhOTViQSxtQkFBcUIsZWJpNmJyQixDYWg2YkEscUJBQXVCLGVibTZidkIsQ2FsNmJBLDBCQUE0QixlYnE2YjVCLENhcDZiQSxxQkFBdUIsZWJ1NmJ2QixDYXQ2YkEsc0JBQXdCLGVieTZieEIsQ2F4NmJBLHFCQUF1QixlYjI2YnZCLENhMTZiQSw0QkFBOEIsZWI2NmI5QixDYTU2YkEsOEJBQWdDLGViKzZiaEMsQ2E5NmJBLDJCQUE2QixlYmk3YjdCLENhaDdiQSwwQkFBNEIsZWJtN2I1QixDYWw3YkEsdUJBQXlCLGVicTdiekIsQ2FwN2JBLHFCQUF1QixlYnU3YnZCLENhdDdiQSxxQkFBdUIsZWJ5N2J2QixDYXg3YkEsb0JBQXNCLGViMjdidEIsQ2ExN2JBLDhCQUFnQyxlYjY3YmhDLENhNTdiQSxxQ0FBdUMsZWIrN2J2QyxDYTk3YkEsMkJBQTZCLGViaThiN0IsQ2FoOGJBLDBCQUE0QixlYm04YjVCLENhbDhiQSwrQkFBaUMsZWJxOGJqQyxDYXA4YkEsbUJBQXFCLGVidThickIsQ2F0OGJBLDRCQUE4QixlYnk4YjlCLENheDhiQSwwQkFBNEIsZWIyOGI1QixDYTE4YkEsMkJBQTZCLGViNjhiN0IsQ2E1OGJBLDhCQUFnQyxlYis4YmhDLENhOThiQSw0QkFBOEIsZWJpOWI5QixDYWg5YkEscUJBQXVCLGVibTlidkIsQ2FsOWJBLDBCQUE0QixlYnE5YjVCLENhcDliQSxtQkFBcUIsZWJ1OWJyQixDYXQ5YkEsZ0NBQWtDLGVieTlibEMsQ2F4OWJBLDRCQUE4QixlYjI5YjlCLENhMTliQSxpQ0FBbUMsZWI2OWJuQyxDYTU5YkEscUJBQXVCLGViKzlidkIsQ2E5OWJBLHdCQUEwQixlYmkrYjFCLENhaCtiQSx1QkFBeUIsZWJtK2J6QixDYWwrYkEsc0JBQXdCLGVicStieEIsQ2FwK2JBLHNCQUF3QixlYnUrYnhCLENhdCtiQSxxQkFBdUIsZWJ5K2J2QixDYXgrYkEsNEJBQThCLGViMitiOUIsQ2ExK2JBLG9CQUFzQixlYjYrYnRCLENhNStiQSwrQkFBaUMsZWIrK2JqQyxDYTkrYkEsb0JBQXNCLGViaS9idEIsQ2FoL2JBLHFCQUF1QixlYm0vYnZCLENhbC9iQSxpQ0FBbUMsZWJxL2JuQyxDYXAvYkEsb0JBQXNCLGVidS9idEIsQ2F0L2JBLHlCQUEyQixlYnkvYjNCLENheC9iQSx5QkFBMkIsZWIyL2IzQixDYTEvYkEsbUJBQXFCLGViNi9ickIsQ2E1L2JBLHNCQUF3QixlYisvYnhCLENhOS9iQSwwQkFBNEIsZWJpZ2M1QixDYWhnY0Esa0JBQW9CLGVibWdjcEIsQ2FsZ2NBLDJCQUE2QixlYnFnYzdCLENhcGdjQSx3QkFBMEIsZWJ1Z2MxQixDYXRnY0Esc0JBQXdCLGVieWdjeEIsQ2F4Z2NBLHVCQUF5QixlYjJnY3pCLENhMWdjQSxvQkFBc0IsZWI2Z2N0QixDYTVnY0EsMEJBQTRCLGViK2djNUIsQ2E5Z2NBLG1CQUFxQixlYmloY3JCLENhaGhjQSxpQ0FBbUMsZWJtaGNuQyxDYWxoY0EsMkNBQTZDLGVicWhjN0MsQ2FwaGNBLCtCQUFpQyxlYnVoY2pDLENhdGhjQSx5Q0FBMkMsZWJ5aGMzQyxDYXhoY0EsK0JBQWlDLGViMmhjakMsQ2ExaGNBLHlDQUEyQyxlYjZoYzNDLENhNWhjQSw2QkFBK0IsZWIraGMvQixDYTloY0EsdUNBQXlDLGViaWljekMsQ2FoaWNBLHdCQUEwQixlYm1pYzFCLENhbGljQSxnQ0FBa0MsZWJxaWNsQyxDYXBpY0EsMENBQTRDLGVidWljNUMsQ2F0aWNBLDhCQUFnQyxlYnlpY2hDLENheGljQSx3Q0FBMEMsZWIyaWMxQyxDYTFpY0Esc0JBQXdCLGViNmljeEIsQ2E1aWNBLGtCQUFvQixlYitpY3BCLENhOWljQSw0QkFBOEIsZWJpamM5QixDYWhqY0EsMEJBQTRCLGVibWpjNUIsQ2FsamNBLHFCQUF1QixlYnFqY3ZCLENhcGpjQSxzQkFBd0IsZWJ1amN4QixDYXRqY0Esc0JBQXdCLGVieWpjeEIsQ2F4amNBLHdCQUEwQixlYjJqYzFCLENhMWpjQSxxQkFBdUIsZWI2amN2QixDYTVqY0EsMEJBQTRCLGViK2pjNUIsQ2E5amNBLG9DQUFzQyxlYmlrY3RDLENhaGtjQSxvQkFBc0IsZWJta2N0QixDYWxrY0EsbUJBQXFCLGVicWtjckIsQ2Fwa2NBLGdDQUFrQyxlYnVrY2xDLENhdGtjQSx3QkFBMEIsZWJ5a2MxQixDYXhrY0Esa0NBQW9DLGViMmtjcEMsQ2Exa2NBLDRCQUE4QixlYjZrYzlCLENhNWtjQSwyQkFBNkIsZWIra2M3QixDYTlrY0EsNEJBQThCLGViaWxjOUIsQ2FobGNBLDJCQUE2QixlYm1sYzdCLENhbGxjQSwwQkFBNEIsZWJxbGM1QixDYXBsY0EsMEJBQTRCLGVidWxjNUIsQ2F0bGNBLG1CQUFxQixlYnlsY3JCLENheGxjQSwwQkFBNEIsZWIybGM1QixDYTFsY0Esd0JBQTBCLGViNmxjMUIsQ2E1bGNBLG9CQUFzQixlYitsY3RCLENhOWxjQSw4QkFBZ0MsZWJpbWNoQyxDYWhtY0EscUJBQXVCLGVibW1jdkIsQ2FsbWNBLDBCQUE0QixlYnFtYzVCLENhcG1jQSw0QkFBOEIsZWJ1bWM5QixDYXRtY0EsMEJBQTRCLGVieW1jNUIsQ2F4bWNBLHdCQUEwQixlYjJtYzFCLENhMW1jQSxxQkFBdUIsZWI2bWN2QixDYTVtY0EsdUJBQXlCLGViK21jekIsQ2E5bWNBLCtCQUFpQyxlYmluY2pDLENhaG5jQSxrQkFBb0IsZWJtbmNwQixDYWxuY0EsMEJBQTRCLGVicW5jNUIsQ2FwbmNBLHVCQUF5QixlYnVuY3pCLENhdG5jQSx5QkFBMkIsZWJ5bmMzQixDYXhuY0Esc0JBQXdCLGViMm5jeEIsQ2ExbmNBLDRCQUE4QixlYjZuYzlCLENhNW5jQSx3QkFBMEIsZWIrbmMxQixDYTluY0EsbUJBQXFCLGViaW9jckIsQ2Fob2NBLDZCQUErQixlYm1vYy9CLENhbG9jQSxzQkFBd0IsZWJxb2N4QixDYXBvY0Esb0JBQXNCLGVidW9jdEIsQ2F0b2NBLDJCQUE2QixlYnlvYzdCLENheG9jQSxxQkFBdUIsZWIyb2N2QixDYTFvY0EsK0JBQWlDLGViNm9jakMsQ2E1b2NBLHNCQUF3QixlYitvY3hCLENhOW9jQSxtQ0FBcUMsZWJpcGNyQyxDYWhwY0Esa0JBQW9CLGVibXBjcEIsQ2FscGNBLG1CQUFxQixlYnFwY3JCLENhcHBjQSxtQkFBcUIsZWJ1cGNyQixDYXRwY0Esb0JBQXNCLGVieXBjdEIsQ2F4cGNBLG1CQUFxQixlYjJwY3JCLENhMXBjQSxvQkFBc0IsZWI2cGN0QixDYTVwY0EseUJBQTJCLGViK3BjM0IsQ2E5cGNBLCtCQUFpQyxlYmlxY2pDLENhaHFjQSw4QkFBZ0MsZWJtcWNoQyxDYWxxY0Esb0JBQXNCLGVicXFjdEIsQ2FwcWNBLHVCQUF5QixlYnVxY3pCLENhdHFjQSwwQkFBNEIsZWJ5cWM1QixDYXhxY0EseUJBQTJCLGViMnFjM0IsQ2ExcWNBLGlCQUFtQixlYjZxY25CLENhNXFjQSx1QkFBeUIsZWIrcWN6QixDYTlxY0Esc0JBQXdCLGViaXJjeEIsQ2FocmNBLDRCQUE4QixlYm1yYzlCLENhbHJjQSwwQkFBNEIsZWJxcmM1QixDYXByY0EsZ0NBQWtDLGVidXJjbEMsQ2F0cmNBLCtCQUFpQyxlYnlyY2pDLENheHJjQSwrQkFBaUMsZWIycmNqQyxDYTFyY0Esa0NBQW9DLGViNnJjcEMsQ2E1cmNBLHlDQUEyQyxlYityYzNDLENhOXJjQSwwQkFBNEIsZWJpc2M1QixDYWhzY0Esd0JBQTBCLGVibXNjMUIsQ2Fsc2NBLHdCQUEwQixlYnFzYzFCLENhcHNjQSwrQkFBaUMsZWJ1c2NqQyxDYXRzY0Esb0JBQXNCLGVieXNjdEIsQ2F4c2NBLDJCQUE2QixlYjJzYzdCLENhMXNjQSxtQkFBcUIsZWI2c2NyQixDYTVzY0EseUJBQTJCLGViK3NjM0IsQ2E5c2NBLG9CQUFzQixlYml0Y3RCLENhaHRjQSx5QkFBMkIsZWJtdGMzQixDYWx0Y0Esd0JBQTBCLGVicXRjMUIsQ2FwdGNBLHFCQUF1QixlYnV0Y3ZCLENhdHRjQSwyQkFBNkIsZWJ5dGM3QixDYXh0Y0Esc0JBQXdCLGViMnRjeEIsQ2ExdGNBLG9CQUFzQixlYjZ0Y3RCLENhNXRjQSxvQkFBc0IsZWIrdGN0QixDYTl0Y0Esb0JBQXNCLGViaXVjdEIsQ2FodWNBLHlCQUEyQixlYm11YzNCLENhbHVjQSxzQkFBd0IsZWJxdWN4QixDYXB1Y0Esd0JBQTBCLGVidXVjMUIsQ2F0dWNBLDRCQUE4QixlYnl1YzlCLENheHVjQSxvQkFBc0IsZWIydWN0QixDYTF1Y0EsbUJBQXFCLGViNnVjckIsQ2E1dWNBLDBCQUE0QixlYit1YzVCLENhOXVjQSxvQ0FBc0MsZWJpdmN0QyxDYWh2Y0Esb0JBQXNCLGVibXZjdEIsQ2FsdmNBLDhCQUFnQyxlYnF2Y2hDLENhcHZjQSw0QkFBOEIsZWJ1dmM5QixDYXR2Y0Esc0NBQXdDLGVieXZjeEMsQ2F4dmNBLG1CQUFxQixlYjJ2Y3JCLENhMXZjQSxxQkFBdUIsZWI2dmN2QixDYTV2Y0Esb0JBQXNCLGViK3ZjdEIsQ2E5dmNBLDRCQUE4QixlYml3YzlCLENhaHdjQSwyQkFBNkIsZWJtd2M3QixDYWx3Y0EsNEJBQThCLGVicXdjOUIsQ2Fwd2NBLDJCQUE2QixlYnV3YzdCLENhdHdjQSxxQkFBdUIsZWJ5d2N2QixDYXh3Y0Esa0JBQW9CLGViMndjcEIsQ2Exd2NBLGlCQUFtQixlYjZ3Y25CLENhNXdjQSx1QkFBeUIsZWIrd2N6QixDYTl3Y0EsNkJBQStCLGViaXhjL0IsQ2FoeGNBLHdCQUEwQixlYm14YzFCLENhbHhjQSxtQkFBcUIsZWJxeGNyQixDYXB4Y0EsNkJBQStCLGVidXhjL0IsQ2F0eGNBLCtCQUFpQyxlYnl4Y2pDLENheHhjQSx5QkFBMkIsZWIyeGMzQixDYTF4Y0EscUJBQXVCLGViNnhjdkIsQ2E1eGNBLHFCQUF1QixlYit4Y3ZCLENhOXhjQSwrQkFBaUMsZWJpeWNqQyxDYWh5Y0EscUJBQXVCLGVibXljdkIsQ2FseWNBLG1CQUFxQixlYnF5Y3JCLENhcHljQSw2QkFBK0IsZWJ1eWMvQixDYXR5Y0EsbUNBQXFDLGVieXljckMsQ2F4eWNBLDZCQUErQixlYjJ5Yy9CLENhMXljQSx5QkFBMkIsZWI2eWMzQixDYTV5Y0EsMEJBQTRCLGViK3ljNUIsQ2E5eWNBLHlCQUEyQixlYml6YzNCLENhaHpjQSx1QkFBeUIsZWJtemN6QixDYWx6Y0Esd0JBQTBCLGVicXpjMUIsQ2FwemNBLDJCQUE2QixlYnV6YzdCLENhdHpjQSw0QkFBOEIsZWJ5emM5QixDYXh6Y0EsMkJBQTZCLGViMnpjN0IsQ2ExemNBLHdCQUEwQixlYjZ6YzFCLENhNXpjQSxzQkFBd0IsZWIremN4QixDYTl6Y0EseUJBQTJCLGViaTBjM0IsQ2FoMGNBLHlCQUEyQixlYm0wYzNCLENhbDBjQSx5QkFBMkIsZWJxMGMzQixDYXAwY0Esd0JBQTBCLGVidTBjMUIsQ2F0MGNBLDBCQUE0QixlYnkwYzVCLENheDBjQSwwQkFBNEIsZWIyMGM1QixDYTEwY0EseUJBQTJCLGViNjBjM0IsQ2E1MGNBLHVCQUF5QixlYiswY3pCLENhOTBjQSx1QkFBeUIsZWJpMWN6QixDYWgxY0EseUJBQTJCLGVibTFjM0IsQ2FsMWNBLG9CQUFzQixlYnExY3RCLENhcDFjQSx3QkFBMEIsZWJ1MWMxQixDYXQxY0EsNEJBQThCLGVieTFjOUIsQ2F4MWNBLHVCQUF5QixlYjIxY3pCLENhMTFjQSw0QkFBOEIsZWI2MWM5QixDYTUxY0Esb0JBQXNCLGViKzFjdEIsQ2E5MWNBLDJCQUE2QixlYmkyYzdCLENhaDJjQSx5QkFBMkIsZWJtMmMzQixDYWwyY0EsbUJBQXFCLGVicTJjckIsQ2FwMmNBLG9CQUFzQixlYnUyY3RCLENhdDJjQSxvQkFBc0IsZWJ5MmN0QixDYXgyY0EsMEJBQTRCLGViMjJjNUIsQ2ExMmNBLHFCQUF1QixlYjYyY3ZCLENhNTJjQSx3QkFBMEIsZWIrMmMxQixDYTkyY0EsOEJBQWdDLGViaTNjaEMsQ2FoM2NBLDBCQUE0QixlYm0zYzVCLENhbDNjQSwwQkFBNEIsZWJxM2M1QixDYXAzY0EseUJBQTJCLGVidTNjM0IsQ2F0M2NBLHdCQUEwQixlYnkzYzFCLENheDNjQSx1QkFBeUIsZWIyM2N6QixDYTEzY0EsMkJBQTZCLGViNjNjN0IsQ2E1M2NBLHNCQUF3QixlYiszY3hCLENhOTNjQSxxQkFBdUIsZWJpNGN2QixDYWg0Y0Esd0JBQTBCLGVibTRjMUIsQ2FsNGNBLG9CQUFzQixlYnE0Y3RCLENhcDRjQSwwQkFBNEIsZWJ1NGM1QixDYXQ0Y0EscUJBQXVCLGVieTRjdkIsQ2F4NGNBLDZCQUErQixlYjI0Yy9CLENhMTRjQSx5QkFBMkIsZWI2NGMzQixDYTU0Y0EsbUJBQXFCLGViKzRjckIsQ2E5NGNBLG1CQUFxQixlYmk1Y3JCLENhaDVjQSwyQkFBNkIsZWJtNWM3QixDYWw1Y0EsOEJBQWdDLGVicTVjaEMsQ2FwNWNBLDhCQUFnQyxlYnU1Y2hDLENhdDVjQSw2QkFBK0IsZWJ5NWMvQixDYXg1Y0EsMEJBQTRCLGViMjVjNUIsQ2ExNWNBLHlCQUEyQixlYjY1YzNCLENhNTVjQSxtQ0FBcUMsZWIrNWNyQyxDYTk1Y0EsdUJBQXlCLGViaTZjekIsQ2FoNmNBLHFCQUF1QixlYm02Y3ZCLENhbDZjQSxvQkFBc0IsZWJxNmN0QixDYXA2Y0EsdUJBQXlCLGVidTZjekIsQ2F0NmNBLHVCQUF5QixlYnk2Y3pCLENhdDZjQSxrQkFBb0IsZWIwNmNwQixDYXo2Y0EseUJBQTJCLGViNDZjM0IsQ2EzNmNBLHlCQUEyQixlYjg2YzNCLENhNzZjQSw4QkFBZ0MsZWJnN2NoQyxDYS82Y0EsMEJBQTRCLGViazdjNUIsQ2FqN2NBLHVCQUF5QixlYm83Y3pCLENhbjdjQSxvQkFBc0IsZWJzN2N0QixDYXI3Y0EseUJBQTJCLGVidzdjM0IsQ2F0N2NBLG9DQUFvQixlYjQ3Y3BCLENhMzdjQSwyQkFBNkIsZWI4N2M3QixDYTU3Y0Esa0RBQTJCLGViazhjM0IsQ2FqOGNBLDhCQUFnQyxlYm84Y2hDLENhbjhjQSxzQkFBd0IsZWJzOGN4QixDYXA4Y0EsaURBQWlDLGViMDhjakMsQ2F6OGNBLDBDQUE0QyxlYjQ4YzVDLENhMzhjQSxxQkFBdUIsZWI4OGN2QixDYTc4Y0Esd0JBQTBCLGViZzljMUIsQ2EvOGNBLHNCQUF3QixlYms5Y3hCLENhajljQSxrQkFBb0IsZWJvOWNwQixDYW45Y0Esc0JBQXdCLGViczljeEIsQ2FyOWNBLDJCQUE2QixlYnc5YzdCLENhdjljQSwyQkFBNkIsZWIwOWM3QixDYXo5Y0EsMEJBQTRCLGViNDljNUIsQ2EzOWNBLDZCQUErQixlYjg5Yy9CLENhNzljQSwwQkFBNEIsZWJnK2M1QixDYS85Y0EsNEJBQThCLGViaytjOUIsQ2FqK2NBLDBCQUE0QixlYm8rYzVCLENhbitjQSwyQkFBNkIsZWJzK2M3QixDYXIrY0EsdUJBQXlCLGVidytjekIsQ2F2K2NBLDJCQUE2QixlYjArYzdCLENheitjQSwyQkFBNkIsZWI0K2M3QixDYTMrY0Esc0JBQXdCLGViOCtjeEIsQ2E3K2NBLG1CQUFxQixlYmcvY3JCLENhLytjQSwwQkFBNEIsZWJrL2M1QixDYWovY0EscUJBQXVCLGViby9jdkIsQ2FuL2NBLG1CQUFxQixlYnMvY3JCLENhci9jQSxpQkFBbUIsZWJ3L2NuQixDYXYvY0Esb0JBQXNCLGViMC9jdEIsQ2F6L2NBLG1CQUFxQixlYjQvY3JCLENhMy9jQSwrQkFBaUMsZWI4L2NqQyxDYTcvY0Esd0JBQTBCLGViZ2dkMUIsQ2EvL2NBLDRCQUE4QixlYmtnZDlCLENhamdkQSx5QkFBMkIsZWJvZ2QzQixDYW5nZEEsNkJBQStCLGVic2dkL0IsQ2FyZ2RBLDBCQUE0QixlYndnZDVCLENhdmdkQSxvQkFBc0IsZWIwZ2R0QixDYXpnZEEsNkJBQStCLGViNGdkL0IsQ2EzZ2RBLDJCQUE2QixlYjhnZDdCLENhN2dkQSxrQkFBb0IsZWJnaGRwQixDYS9nZEEsdUJBQXlCLGVia2hkekIsQ2FqaGRBLHlCQUEyQixlYm9oZDNCLENhbmhkQSxzQkFBd0IsZWJzaGR4QixDYXJoZEEsdUJBQXlCLGVid2hkekIsQ2F2aGRBLHdCQUEwQixlYjBoZDFCLENhemhkQSxzQkFBd0IsZWI0aGR4QixDYTNoZEEsMkJBQTZCLGViOGhkN0IsQ2E3aGRBLHNDQUF3QyxlYmdpZHhDLENhL2hkQSx1QkFBeUIsZWJraWR6QixDYWppZEEsd0JBQTBCLGVib2lkMUIsQ2FuaWRBLHVCQUF5QixlYnNpZHpCLENhcmlkQSxxQkFBdUIsZWJ3aWR2QixDYXZpZEEsOEJBQWdDLGViMGlkaEMsQ2F6aWRBLHdCQUEwQixlYjRpZDFCLENhM2lkQSxzQkFBd0IsZWI4aWR4QixDYTdpZEEsMEJBQTRCLGViZ2pkNUIsQ2EvaWRBLG1CQUFxQixlYmtqZHJCLENhampkQSxxQkFBdUIsZWJvamR2QixDYW5qZEEscUJBQXVCLGVic2pkdkIsQ2FyamRBLG1CQUFxQixlYndqZHJCLENhdmpkQSw4QkFBZ0MsZWIwamRoQyxDYXpqZEEsdUJBQXlCLGViNGpkekIsQ2EzamRBLHdCQUEwQixlYjhqZDFCLENhN2pkQSxvQkFBc0IsZWJna2R0QixDYTlqZEEscUNBQXFCLGVib2tkckIsQ2Fua2RBLHVCQUF5QixlYnNrZHpCLENhcmtkQSx1QkFBeUIsZWJ3a2R6QixDYXZrZEEsNkJBQStCLGViMGtkL0IsQ2F6a2RBLDhCQUFnQyxlYjRrZGhDLENhM2tkQSx5QkFBMkIsZWI4a2QzQixDYTdrZEEsc0JBQXdCLGViZ2xkeEIsQ2Eva2RBLHVCQUF5QixlYmtsZHpCLENhamxkQSxtQkFBcUIsZWJvbGRyQixDYW5sZEEsZ0NBQWtDLGVic2xkbEMsQ2FybGRBLHdCQUEwQixlYndsZDFCLENhdmxkQSxtQkFBcUIsZWIwbGRyQixDYXpsZEEsd0JBQTBCLGViNGxkMUIsQ2EzbGRBLG1CQUFxQixlYjhsZHJCLENhN2xkQSxtQkFBcUIsZWJnbWRyQixDYS9sZEEsbUJBQXFCLGVia21kckIsQ2FqbWRBLGtCQUFvQixlYm9tZHBCLENhbm1kQSxrQkFBb0IsZWJzbWRwQixDYXJtZEEsbUJBQXFCLGVid21kckIsQ2F2bWRBLHlCQUEyQixlYjBtZDNCLENhem1kQSwwQkFBNEIsZWI0bWQ1QixDYTNtZEEsb0JBQXNCLGViOG1kdEIsQ2E3bWRBLGdCQUFrQixlYmduZGxCLENhL21kQSx3QkFBMEIsZWJrbmQxQixDYWpuZEEsMkJBQTZCLGVib25kN0IsQ2FubmRBLHVCQUF5QixlYnNuZHpCLENhcm5kQSw4QkFBZ0MsZWJ3bmRoQyxDYXZuZEEscUJBQXVCLGViMG5kdkIsQ2F6bmRBLDBCQUE0QixlYjRuZDVCLENhM25kQSxtQkFBcUIsZWI4bmRyQixDYTduZEEsMEJBQTRCLGViZ29kNUIsQ2EvbmRBLDJCQUE2QixlYmtvZDdCLENham9kQSxtQkFBcUIsZWJvb2RyQixDYW5vZEEsb0JBQXNCLGVic29kdEIsQ2Fwb2RBLDBEQUErQixlYjBvZC9CLENhem9kQSw0QkFBOEIsZWI0b2Q5QixDYTNvZEEsOEJBQWdDLGViOG9kaEMsQ2E3b2RBLDRCQUE4QixlYmdwZDlCLENhL29kQSw2QkFBK0IsZWJrcGQvQixDYWpwZEEsbUJBQXFCLGVib3BkckIsQ2FucGRBLGtCQUFvQixlYnNwZHBCLENhcnBkQSxzQkFBd0IsZWJ3cGR4QixDYXZwZEEsa0JBQW9CLGViMHBkcEIsQ2F4cGRBLGlEQUF5QixlYjhwZHpCLENhN3BkQSxrQkFBb0IsZWJncWRwQixDYS9wZEEsa0JBQW9CLGVia3FkcEIsQ2FqcWRBLGtCQUFvQixlYm9xZHBCLENhbnFkQSxrQkFBb0IsZWJzcWRwQixDYXJxZEEsb0JBQXNCLGVid3FkdEIsQ2F2cWRBLHNCQUF3QixlYjBxZHhCLENhenFkQSx5QkFBMkIsZWI0cWQzQixDYTNxZEEsdUJBQXlCLGViOHFkekIsQ2E3cWRBLHdCQUEwQixlYmdyZDFCLENhL3FkQSxtQkFBcUIsZWJrcmRyQixDYWpyZEEseUJBQTJCLGVib3JkM0IsQ2FucmRBLHNCQUF3QixlYnNyZHhCLENhcnJkQSxtQkFBcUIsZWJ3cmRyQixDYXZyZEEsMEJBQTRCLGViMHJkNUIsQ2F6cmRBLHNCQUF3QixlYjRyZHhCLENhM3JkQSxzQkFBd0IsZWI4cmR4QixDYTdyZEEsbUJBQXFCLGViZ3NkckIsQ2EvcmRBLDJCQUE2QixlYmtzZDdCLENhanNkQSwwQkFBNEIsZWJvc2Q1QixDYW5zZEEsOEJBQWdDLGVic3NkaEMsQ2Fyc2RBLGtCQUFvQixlYndzZHBCLENhdnNkQSxxQkFBdUIsZWIwc2R2QixDYXpzZEEsNkJBQStCLGViNHNkL0IsQ2Ezc2RBLDhCQUFnQyxlYjhzZGhDLENhN3NkQSw0QkFBOEIsZWJndGQ5QixDYS9zZEEsdUJBQXlCLGVia3RkekIsQ2FqdGRBLHVCQUF5QixlYm90ZHpCLENhbnRkQSxvQkFBc0IsZWJzdGR0QixDYXJ0ZEEsbUJBQXFCLGVid3RkckIsQ2F2dGRBLG1CQUFxQixlYjB0ZHJCLENhenRkQSxxQ0FBdUMsZWI0dGR2QyxDYTN0ZEEsNEJBQThCLGViOHRkOUIsQ2E3dGRBLHNCQUF3QixlYmd1ZHhCLENhL3RkQSwyQkFBNkIsZWJrdWQ3QixDYWp1ZEEsMkJBQTZCLGVib3VkN0IsQ2FudWRBLHNDQUF3QyxlYnN1ZHhDLENhcnVkQSxvQ0FBc0MsZWJ3dWR0QyxDYXZ1ZEEsc0JBQXdCLGViMHVkeEIsQ2F6dWRBLHFCQUF1QixlYjR1ZHZCLENhM3VkQSw0QkFBOEIsZWI4dWQ5QixDYTd1ZEEsb0JBQXNCLGViZ3ZkdEIsQ2EvdWRBLHNCQUF3QixlYmt2ZHhCLENhaHZkQSxnREFBMEIsZWJzdmQxQixDYXJ2ZEEsa0JBQW9CLGVid3ZkcEIsQ2F2dmRBLHdCQUEwQixlYjB2ZDFCLENhenZkQSxvQkFBc0IsZWI0dmR0QixDYTN2ZEEsNEJBQThCLGViOHZkOUIsQ2E3dmRBLDRCQUE4QixlYmd3ZDlCLENhL3ZkQSw2QkFBK0IsZWJrd2QvQixDYWp3ZEEsMEJBQTRCLGVib3dkNUIsQ2Fud2RBLG9CQUFzQixlYnN3ZHRCLENhcndkQSxvQkFBc0IsZWJ3d2R0QixDYXZ3ZEEseUJBQTJCLGViMHdkM0IsQ2F6d2RBLHNCQUF3QixlYjR3ZHhCLENhM3dkQSxzQkFBd0IsZWI4d2R4QixDYTd3ZEEscUJBQXVCLGViZ3hkdkIsQ2Evd2RBLHVCQUF5QixlYmt4ZHpCLENhanhkQSxvQkFBc0IsZWJveGR0QixDYW54ZEEsbUJBQXFCLGVic3hkckIsQ2FyeGRBLHFCQUF1QixlYnd4ZHZCLENhdnhkQSxzQkFBd0IsZWIweGR4QixDYXp4ZEEscUJBQXVCLGViNHhkdkIsQ2EzeGRBLDhCQUFnQyxlYjh4ZGhDLENhN3hkQSw0QkFBOEIsZWJneWQ5QixDYS94ZEEsbUNBQXFDLGVia3lkckMsQ2FqeWRBLDBCQUE0QixlYm95ZDVCLENhbnlkQSxxQkFBdUIsZWJzeWR2QixDYXJ5ZEEsZ0NBQWtDLGVid3lkbEMsQ2F2eWRBLDhCQUFnQyxlYjB5ZGhDLENhenlkQSxrQkFBb0IsZWI0eWRwQixDYXp5ZEEsMkRBQXNCLGVia3pkdEIsQ2FqemRBLG9CQUFzQixlYm96ZHRCLENhbnpkQSxrQkFBb0IsZWJzemRwQixDYXJ6ZEEsNkJBQStCLGVid3pkL0IsQ2F2emRBLG1CQUFxQixlYjB6ZHJCLENhenpkQSxzQkFBd0IsZWI0emR4QixDYTN6ZEEsdUJBQXlCLGViOHpkekIsQ2E1emRBLDBDQUF1QixlYmswZHZCLENhajBkQSxxQkFBdUIsZWJvMGR2QixDYW4wZEEsdUJBQXlCLGViczBkekIsQ2FyMGRBLG1CQUFxQixlYncwZHJCLENhdjBkQSxzQkFBd0IsZWIwMGR4QixDYXowZEEsdUJBQXlCLGViNDBkekIsQ2EzMGRBLHNCQUF3QixlYjgwZHhCLENhNzBkQSxzQkFBd0IsZWJnMWR4QixDYS8wZEEsdUJBQXlCLGViazFkekIsQ2FqMWRBLHNCQUF3QixlYm8xZHhCLENhbjFkQSxxQkFBdUIsZWJzMWR2QixDYXIxZEEsc0JBQXdCLGVidzFkeEIsQ2F2MWRBLHFCQUF1QixlYjAxZHZCLENhejFkQSxzQ0FBd0MsZWI0MWR4QyxDYTMxZEEsdUNBQXlDLGViODFkekMsQ2E3MWRBLDZCQUErQixlYmcyZC9CLENhLzFkQSxxQ0FBdUMsZWJrMmR2QyxDYWoyZEEsc0NBQXdDLGVibzJkeEMsQ2FuMmRBLDhCQUFnQyxlYnMyZGhDLENhcjJkQSxxQ0FBdUMsZWJ3MmR2QyxDYXYyZEEsc0NBQXdDLGViMDJkeEMsQ2F6MmRBLG9CQUFzQixlYjQyZHRCLENhMzJkQSxvQkFBc0IsZWI4MmR0QixDYTcyZEEsa0JBQW9CLGViZzNkcEIsQ2EvMmRBLHlCQUEyQixlYmszZDNCLENhaDNkQSwyREFBK0IsZWJzM2QvQixDYXIzZEEsc0JBQXdCLGVidzNkeEIsQ2F2M2RBLG1CQUFxQixlYjAzZHJCLENhejNkQSxxQkFBdUIsZWI0M2R2QixDYTMzZEEsdUJBQXlCLGViODNkekIsQ2E3M2RBLHlCQUEyQixlYmc0ZDNCLENhLzNkQSwwQkFBNEIsZWJrNGQ1QixDYWo0ZEEsNkJBQStCLGVibzRkL0IsQ2FuNGRBLG9CQUFzQixlYnM0ZHRCLENhcjRkQSwwQkFBNEIsZWJ3NGQ1QixDYXY0ZEEseUJBQTJCLGViMDRkM0IsQ2F6NGRBLHFCQUF1QixlYjQ0ZHZCLENhMzRkQSxtQkFBcUIsZWI4NGRyQixDYTc0ZEEsOEJBQWdDLGViZzVkaEMsQ2EvNGRBLGlCQUFtQixlYms1ZG5CLENhajVkQSwwQkFBNEIsZWJvNWQ1QixDYW41ZEEsMEJBQTRCLGViczVkNUIsQ2FyNWRBLDJCQUE2QixlYnc1ZDdCLENhdjVkQSx3QkFBMEIsZWIwNWQxQixDYXo1ZEEsd0JBQTBCLGViNDVkMUIsQ2EzNWRBLHFCQUF1QixlYjg1ZHZCLENhNzVkQSx3QkFBMEIsZWJnNmQxQixDYS81ZEEsNEJBQThCLGViazZkOUIsQ2FqNmRBLDRCQUE4QixlYm82ZDlCLENhbjZkQSw2QkFBK0IsZWJzNmQvQixDYXI2ZEEsMEJBQTRCLGVidzZkNUIsQ2F2NmRBLGtCQUFvQixlYjA2ZHBCLENhejZkQSxxQkFBdUIsZWI0NmR2QixDYTM2ZEEsd0JBQTBCLGViODZkMUIsQ2E3NmRBLHFCQUF1QixlYmc3ZHZCLENhLzZkQSw2QkFBK0IsZWJrN2QvQixDYWo3ZEEsa0JBQW9CLGVibzdkcEIsQ2FqN2RBLDZFQUE0QixlYjA3ZDVCLENhejdkQSwwQkFBNEIsZWI0N2Q1QixDYTM3ZEEscUJBQXVCLGViODdkdkIsQ2E3N2RBLG9CQUFzQixlYmc4ZHRCLENhLzdkQSwyQkFBNkIsZWJrOGQ3QixDYWo4ZEEseUJBQTJCLGVibzhkM0IsQ2FuOGRBLG1DQUFxQyxlYnM4ZHJDLENhcjhkQSxtQkFBcUIsZWJ3OGRyQixDYXY4ZEEsc0JBQXdCLGViMDhkeEIsQ2F6OGRBLDZCQUErQixlYjQ4ZC9CLENhMzhkQSwyQkFBNkIsZWI4OGQ3QixDYTc4ZEEsb0JBQXNCLGViZzlkdEIsQ2EvOGRBLHFCQUF1QixlYms5ZHZCLENhajlkQSxxQkFBdUIsZWJvOWR2QixDYW45ZEEsb0JBQXNCLGViczlkdEIsQ2FyOWRBLGtCQUFvQixlYnc5ZHBCLENhdjlkQSxvQkFBc0IsZWIwOWR0QixDYXo5ZEEsb0JBQXNCLGViNDlkdEIsQ2EzOWRBLDJCQUE2QixlYjg5ZDdCLENhNzlkQSxnQkFBa0IsZWJnK2RsQixDYS85ZEEsa0JBQW9CLGViaytkcEIsQ2FqK2RBLGtCQUFvQixlYm8rZHBCLENhbCtkQSx5Q0FBd0IsZWJ3K2R4QixDYXYrZEEsdUJBQXlCLGViMCtkekIsQ2FqK2RFLFdBQ0UsMEJBR0EsaUJBQWtCLENBRWxCLG1CQUFvQixDQURwQixnQkFIQSxtQ0FDQSwyUUFJQSx1QkFBd0IsQ0FDeEIsbUJidytkSixDYXIrZEUsZUFDRSx5QmJ1K2RKLENhbitkRSxtQ0FBcUMsZWJ1K2R2QyxDYXQrZEUsbUNBQXFDLGVieStkdkMsQ2F4K2RFLDRCQUE4QixlYjIrZGhDLENhMStkRSxrREFBb0QsZWI2K2R0RCxDYTUrZEUsa0RBQW9ELGViKytkdEQsQ2E5K2RFLG1EQUFxRCxlYmkvZHZELENhaC9kRSxnREFBa0QsZWJtL2RwRCxDYWwvZEUsMkJBQTZCLGVicS9kL0IsQ2FwL2RFLGlDQUFtQyxlYnUvZHJDLENhdC9kRSwrQkFBaUMsZWJ5L2RuQyxDYXgvZEUsK0JBQWlDLGViMi9kbkMsQ2ExL2RFLHlDQUEyQyxlYjYvZDdDLENhNS9kRSxxQ0FBdUMsZWIrL2R6QyxDYTkvZEUscUNBQXVDLGViaWdlekMsQ2FoZ2VFLCtCQUFpQyxlYm1nZW5DLENhbGdlRSxvQ0FBc0MsZWJxZ2V4QyxDYXBnZUUscUNBQXVDLGVidWdlekMsQ2F0Z2VFLHdDQUEwQyxlYnlnZTVDLENheGdlRSx3Q0FBMEMsZWIyZ2U1QyxDYTFnZUUseUNBQTJDLGViNmdlN0MsQ2E1Z2VFLHNDQUF3QyxlYitnZTFDLENhOWdlRSxnQ0FBa0MsZWJpaGVwQyxDYWhoZUUsbUNBQXFDLGVibWhldkMsQ2FsaGVFLG1DQUFxQyxlYnFoZXZDLENhcGhlRSw2QkFBK0IsZWJ1aGVqQyxDYXRoZUUsZ0NBQWtDLGVieWhlcEMsQ2F4aGVFLDRCQUE4QixlYjJoZWhDLENhMWhlRSw0QkFBOEIsZWI2aGVoQyxDYTVoZUUsd0NBQTBDLGViK2hlNUMsQ2E5aGVFLHdDQUEwQyxlYmlpZTVDLENhaGllRSxtQ0FBcUMsZWJtaWV2QyxDYWxpZUUsOEJBQWdDLGVicWllbEMsQ2FwaWVFLCtCQUFpQyxlYnVpZW5DLENhdGllRSw4QkFBZ0MsZWJ5aWVsQyxDYXhpZUUsMkJBQTZCLGViMmllL0IsQ2ExaWVFLGdDQUFrQyxlYjZpZXBDLENhNWllRSxrQ0FBb0MsZWIraWV0QyxDYTlpZUUsNEJBQThCLGViaWplaEMsQ2FoamVFLGlDQUFtQyxlYm1qZXJDLENhbGplRSwyQkFBNkIsZWJxamUvQixDYXBqZUUsb0NBQXNDLGVidWpleEMsQ2F0amVFLCtCQUFpQyxlYnlqZW5DLENheGplRSwwQkFBNEIsZWIyamU5QixDYTFqZUUsZ0NBQWtDLGViNmplcEMsQ2E1amVFLHFDQUF1QyxlYitqZXpDLENhOWplRSxtQ0FBcUMsZWJpa2V2QyxDYWhrZUUsaUNBQW1DLGVibWtlckMsQ2Fsa2VFLGdDQUFrQyxlYnFrZXBDLENhcGtlRSxpQ0FBbUMsZWJ1a2VyQyxDYXRrZUUsaUNBQW1DLGVieWtlckMsQ2F4a2VFLDJCQUE2QixlYjJrZS9CLENhMWtlRSwrQkFBaUMsZWI2a2VuQyxDYTVrZUUsc0NBQXdDLGViK2tlMUMsQ2E5a2VFLGlDQUFtQyxlYmlsZXJDLENhaGxlRSxnQ0FBa0MsZWJtbGVwQyxDYWxsZUUsMkJBQTZCLGVicWxlL0IsQ2FwbGVFLDhCQUFnQyxlYnVsZWxDLENhdGxlRSxrQ0FBb0MsZWJ5bGV0QyxDYXhsZUUsNkJBQStCLGViMmxlakMsQ2ExbGVFLGlDQUFtQyxlYjZsZXJDLENhNWxlRSw0QkFBOEIsZWIrbGVoQyxDYTlsZUUsNkJBQStCLGViaW1lakMsQ2FobWVFLDBCQUE0QixlYm1tZTlCLENhbG1lRSw4QkFBZ0MsZWJxbWVsQyxDYXBtZUUscUNBQXVDLGVidW1lekMsQ2F0bWVFLGdDQUFrQyxlYnltZXBDLENheG1lRSxzQ0FBd0MsZWIybWUxQyxDYTFtZUUsa0NBQW9DLGViNm1ldEMsQ2E1bWVFLDJCQUE2QixlYittZS9CLENhOW1lRSxrQ0FBb0MsZWJpbmV0QyxDYWhuZUUsd0NBQTBDLGVibW5lNUMsQ2FsbmVFLGlDQUFtQyxlYnFuZXJDLENhcG5lRSxpQ0FBbUMsZWJ1bmVyQyxDYXRuZUUsa0NBQW9DLGVieW5ldEMsQ2F4bmVFLHlDQUEyQyxlYjJuZTdDLENhMW5lRSx1Q0FBeUMsZWI2bmUzQyxDYTVuZUUsZ0NBQWtDLGViK25lcEMsQ2E5bmVFLGtDQUFvQyxlYmlvZXRDLENhaG9lRSxpQ0FBbUMsZWJtb2VyQyxDYWxvZUUsaUNBQW1DLGVicW9lckMsQ2Fwb2VFLHNDQUF3QyxlYnVvZTFDLENhdG9lRSxzQ0FBd0MsZWJ5b2UxQyxDYXhvZUUsdUNBQXlDLGViMm9lM0MsQ2Exb2VFLG9DQUFzQyxlYjZvZXhDLENhNW9lRSxtQ0FBcUMsZWIrb2V2QyxDYTlvZUUsZ0NBQWtDLGViaXBlcEMsQ2FocGVFLG9DQUFzQyxlYm1wZXhDLENhbHBlRSxpQ0FBbUMsZWJxcGVyQyxDYXBwZUUsZ0NBQWtDLGVidXBlcEMsQ2F0cGVFLDBCQUE0QixlYnlwZTlCLENheHBlRSw0QkFBOEIsZWIycGVoQyxDYTFwZUUsK0JBQWlDLGViNnBlbkMsQ2E1cGVFLGdDQUFrQyxlYitwZXBDLENhOXBlRSwrQkFBaUMsZWJpcWVuQyxDYWhxZUUsOEJBQWdDLGVibXFlbEMsQ2FscWVFLDRCQUE4QixlYnFxZWhDLENhcHFlRSw2QkFBK0IsZWJ1cWVqQyxDYXRxZUUsK0JBQWlDLGVieXFlbkMsQ2F4cWVFLGdDQUFrQyxlYjJxZXBDLENhMXFlRSwyQkFBNkIsZWI2cWUvQixDYTVxZUUsc0NBQXdDLGViK3FlMUMsQ2E5cWVFLGlDQUFtQyxlYmlyZXJDLENhaHJlRSw0QkFBOEIsZWJtcmVoQyxDYWxyZUUsbUNBQXFDLGVicXJldkMsQ2FwcmVFLGlDQUFtQyxlYnVyZXJDLENhdHJlRSw0QkFBOEIsZWJ5cmVoQyxDYXhyZUUsZ0NBQWtDLGViMnJlcEMsQ2ExcmVFLGdDQUFrQyxlYjZyZXBDLENhNXJlRSxxQ0FBdUMsZWIrcmV6QyxDYTlyZUUsMEJBQTRCLGViaXNlOUIsQ2Foc2VFLGdDQUFrQyxlYm1zZXBDLENhbHNlRSwwQkFBNEIsZWJxc2U5QixDYXBzZUUsdUNBQXlDLGVidXNlM0MsQ2F0c2VFLG1DQUFxQyxlYnlzZXZDLENheHNlRSwyQ0FBNkMsZWIyc2UvQyxDYTFzZUUsMkJBQTZCLGViNnNlL0IsQ2E1c2VFLGdDQUFrQyxlYitzZXBDLENhOXNlRSxtQ0FBcUMsZWJpdGV2QyxDYWh0ZUUscUNBQXVDLGVibXRlekMsQ2FsdGVFLGtDQUFvQyxlYnF0ZXRDLENhcHRlRSxtQ0FBcUMsZWJ1dGV2QyxDYXR0ZUUsa0NBQW9DLGVieXRldEMsQ2F4dGVFLGtDQUFvQyxlYjJ0ZXRDLENhMXRlRSxzQ0FBd0MsZWI2dGUxQyxDYTV0ZUUsaUNBQW1DLGViK3RlckMsQ2E5dGVFLDhCQUFnQyxlYml1ZWxDLENhaHVlRSwrQkFBaUMsZWJtdWVuQyxDYWx1ZUUsMkJBQTZCLGVicXVlL0IsQ2FwdWVFLG1DQUFxQyxlYnV1ZXZDLENhdHVlRSxpQ0FBbUMsZWJ5dWVyQyxDYXh1ZUUsNEJBQThCLGViMnVlaEMsQ2ExdWVFLGlDQUFtQyxlYjZ1ZXJDLENhNXVlRSxnQ0FBa0MsZWIrdWVwQyxDYTl1ZUUsNkJBQStCLGViaXZlakMsQ2FodmVFLGdDQUFrQyxlYm12ZXBDLENhbHZlRSwyQkFBNkIsZWJxdmUvQixDYXB2ZUUsa0NBQW9DLGVidXZldEMsQ2F0dmVFLGtDQUFvQyxlYnl2ZXRDLENheHZlRSwwQkFBNEIsZWIydmU5QixDYTF2ZUUsK0JBQWlDLGViNnZlbkMsQ2E1dmVFLGtDQUFvQyxlYit2ZXRDLENhOXZlRSxnQ0FBa0MsZWJpd2VwQyxDYWh3ZUUsbUNBQXFDLGVibXdldkMsQ2Fsd2VFLDRCQUE4QixlYnF3ZWhDLENhcHdlRSxzQ0FBd0MsZWJ1d2UxQyxDYXR3ZUUsa0NBQW9DLGVieXdldEMsQ2F4d2VFLDJCQUE2QixlYjJ3ZS9CLENhMXdlRSxtQ0FBcUMsZWI2d2V2QyxDYTV3ZUUsc0NBQXdDLGViK3dlMUMsQ2E5d2VFLHNDQUF3QyxlYml4ZTFDLENhaHhlRSxxQ0FBdUMsZWJteGV6QyxDYXB3ZUUsV0FDRSx3QkFHQSxpQkFBa0IsQ0FFbEIsbUJBQW9CLENBRHBCLGdCQUhBLG1DQUNBLDJRQUlBLHVCQUF3QixDQUN4QixtQmIwd2VKLENhdHdlRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmIyd2U3QyxDYTF3ZUUseUJBQTJCLGVBQWdCLENBQUUsdUJiOHdlL0MsQ2E3d2VFLHVCQUF5QixlQUFnQixDQUFFLHVCYml4ZTdDLENhaHhlRSx3Q0FBMEMsZUFBZ0IsQ0FBRSx1QmJveGU5RCxDYW54ZUUsa0JBQW9CLGVBQWdCLENBQUUsdUJidXhleEMsQ2F0eGVFLG9CQUFzQixlQUFnQixDQUFFLHVCYjB4ZTFDLENhenhlRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmI2eGU3QyxDYTV4ZUUsNkJBQStCLGVBQWdCLENBQUUsdUJiZ3llbkQsQ2EveGVFLHFCQUF1QixlQUFnQixDQUFFLHVCYm15ZTNDLENhbHllRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJzeWU1QyxDYXJ5ZUUscUJBQXVCLGVBQWdCLENBQUUsdUJieXllM0MsQ2F4eWVFLHFCQUF1QixlQUFnQixDQUFFLHVCYjR5ZTNDLENhM3llRSx5QkFBMkIsZUFBZ0IsQ0FBRSx1QmIreWUvQyxDYTl5ZUUscUJBQXVCLGVBQWdCLENBQUUsdUJia3plM0MsQ2FqemVFLHNCQUF3QixlQUFnQixDQUFFLHVCYnF6ZTVDLENhcHplRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmJ3emU5QyxDYXZ6ZUUsNEJBQThCLGVBQWdCLENBQUUsdUJiMnplbEQsQ2ExemVFLHNCQUF3QixlQUFnQixDQUFFLHVCYjh6ZTVDLENhN3plRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmJpMGU5QyxDYWgwZUUsNEJBQThCLGVBQWdCLENBQUUsdUJibzBlbEQsQ2FuMGVFLG9CQUFzQixlQUFnQixDQUFFLHVCYnUwZTFDLENhdDBlRSxvQkFBc0IsZUFBZ0IsQ0FBRSx1QmIwMGUxQyxDYXowZUUsd0JBQTBCLGVBQWdCLENBQUUsdUJiNjBlOUMsQ2E1MGVFLHlCQUEyQixlQUFnQixDQUFFLHVCYmcxZS9DLENhLzBlRSx5QkFBMkIsZUFBZ0IsQ0FBRSx1QmJtMWUvQyxDYWwxZUUsd0JBQTBCLGVBQWdCLENBQUUsdUJiczFlOUMsQ2FyMWVFLHNCQUF3QixlQUFnQixDQUFFLHVCYnkxZTVDLENheDFlRSwyQkFBNkIsZUFBZ0IsQ0FBRSx1QmI0MWVqRCxDYTMxZUUsc0JBQXdCLGVBQWdCLENBQUUsdUJiKzFlNUMsQ2E5MWVFLHFCQUF1QixlQUFnQixDQUFFLHVCYmsyZTNDLENhajJlRSxrQkFBb0IsZUFBZ0IsQ0FBRSx1QmJxMmV4QyxDYXAyZUUsdUJBQXlCLGVBQWdCLENBQUUsdUJidzJlN0MsQ2F2MmVFLHlCQUEyQixlQUFnQixDQUFFLHVCYjIyZS9DLENhMTJlRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmI4MmU1QyxDYTcyZUUsNkJBQStCLGVBQWdCLENBQUUsdUJiaTNlbkQsQ2FoM2VFLHdCQUEwQixlQUFnQixDQUFFLHVCYm8zZTlDLENhbjNlRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmJ1M2U5QyxDYXQzZUUsc0JBQXdCLGVBQWdCLENBQUUsdUJiMDNlNUMsQ2F6M2VFLG1CQUFxQixlQUFnQixDQUFFLHVCYjYzZXpDLENhNTNlRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmJnNGU5QyxDYS8zZUUseUJBQTJCLGVBQWdCLENBQUUsdUJibTRlL0MsQ2FsNGVFLHNCQUF3QixlQUFnQixDQUFFLHVCYnM0ZTVDLENhcjRlRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmJ5NGU5QyxDYXg0ZUUsd0JBQTBCLGVBQWdCLENBQUUsdUJiNDRlOUMsQ2EzNGVFLDBCQUE0QixlQUFnQixDQUFFLHVCYis0ZWhELENhOTRlRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmJrNWU5QyxDYWo1ZUUsa0JBQW9CLGVBQWdCLENBQUUsdUJicTVleEMsQ2FwNWVFLHFCQUF1QixlQUFnQixDQUFFLHVCYnc1ZTNDLENhdjVlRSwrQkFBaUMsZUFBZ0IsQ0FBRSx1QmIyNWVyRCxDYTE1ZUUseUJBQTJCLGVBQWdCLENBQUUsdUJiODVlL0MsQ2E3NWVFLGtDQUFvQyxlQUFnQixDQUFFLHVCYmk2ZXhELENhaDZlRSw0QkFBOEIsZUFBZ0IsQ0FBRSx1QmJvNmVsRCxDYW42ZUUsc0JBQXdCLGVBQWdCLENBQUUsdUJidTZlNUMsQ2F0NmVFLDJCQUE2QixlQUFnQixDQUFFLHVCYjA2ZWpELENhejZlRSw2QkFBK0IsZUFBZ0IsQ0FBRSx1QmI2NmVuRCxDYTU2ZUUsMEJBQTRCLGVBQWdCLENBQUUsdUJiZzdlaEQsQ2EvNmVFLHFCQUF1QixlQUFnQixDQUFFLHVCYm03ZTNDLENhbDdlRSw0QkFBOEIsZUFBZ0IsQ0FBRSx1QmJzN2VsRCxDYXI3ZUUsd0JBQTBCLGVBQWdCLENBQUUsdUJieTdlOUMsQ2F4N2VFLHdCQUEwQixlQUFnQixDQUFFLHVCYjQ3ZTlDLENhMzdlRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmIrN2U1QyxDYTk3ZUUseUJBQTJCLGVBQWdCLENBQUUsdUJiazhlL0MsQ2FqOGVFLHFCQUF1QixlQUFnQixDQUFFLHVCYnE4ZTNDLENhcDhlRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmJ3OGUzQyxDYXY4ZUUseUJBQTJCLGVBQWdCLENBQUUsdUJiMjhlL0MsQ2ExOGVFLHlCQUEyQixlQUFnQixDQUFFLHVCYjg4ZS9DLENhNzhlRSx5QkFBMkIsZUFBZ0IsQ0FBRSx1QmJpOWUvQyxDYWg5ZUUsMkJBQTZCLGVBQWdCLENBQUUsdUJibzllakQsQ2FuOWVFLHNCQUF3QixlQUFnQixDQUFFLHVCYnU5ZTVDLENhdDllRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmIwOWU3QyxDYXo5ZUUseUJBQTJCLGVBQWdCLENBQUUsdUJiNjllL0MsQ2E1OWVFLDZCQUErQixlQUFnQixDQUFFLHVCYmcrZW5ELENhLzllRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmJtK2UzQyxDYWwrZUUscUJBQXVCLGVBQWdCLENBQUUsdUJicytlM0MsQ2FyK2VFLCtCQUFpQyxlQUFnQixDQUFFLHVCYnkrZXJELENheCtlRSxrQ0FBb0MsZUFBZ0IsQ0FBRSx1QmI0K2V4RCxDYTMrZUUsa0NBQW9DLGVBQWdCLENBQUUsdUJiKytleEQsQ2E5K2VFLHFDQUF1QyxlQUFnQixDQUFFLHVCYmsvZTNELENhai9lRSxxQ0FBdUMsZUFBZ0IsQ0FBRSx1QmJxL2UzRCxDYXAvZUUsa0NBQW9DLGVBQWdCLENBQUUsdUJidy9leEQsQ2F2L2VFLGtDQUFvQyxlQUFnQixDQUFFLHVCYjIvZXhELENhMS9lRSw0Q0FBOEMsZUFBZ0IsQ0FBRSx1QmI4L2VsRSxDYTcvZUUscUNBQXVDLGVBQWdCLENBQUUsdUJiaWdmM0QsQ2FoZ2ZFLGtDQUFvQyxlQUFnQixDQUFFLHVCYm9nZnhELENhbmdmRSx3Q0FBMEMsZUFBZ0IsQ0FBRSx1QmJ1Z2Y5RCxDYXRnZkUsNkNBQStDLGVBQWdCLENBQUUsdUJiMGdmbkUsQ2F6Z2ZFLHFDQUF1QyxlQUFnQixDQUFFLHVCYjZnZjNELENhNWdmRSxvQ0FBc0MsZUFBZ0IsQ0FBRSx1QmJnaGYxRCxDYS9nZkUsNEJBQThCLGVBQWdCLENBQUUsdUJibWhmbEQsQ2FsaGZFLG1CQUFxQixlQUFnQixDQUFFLHVCYnNoZnpDLENhcmhmRSw2QkFBK0IsZUFBZ0IsQ0FBRSx1QmJ5aGZuRCxDYXhoZkUseUJBQTJCLGVBQWdCLENBQUUsdUJiNGhmL0MsQ2EzaGZFLHNCQUF3QixlQUFnQixDQUFFLHVCYitoZjVDLENhOWhmRSw2QkFBK0IsZUFBZ0IsQ0FBRSx1QmJraWZuRCxDYWppZkUsdUJBQXlCLGVBQWdCLENBQUUsdUJicWlmN0MsQ2FwaWZFLHdCQUEwQixlQUFnQixDQUFFLHVCYndpZjlDLENhdmlmRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmIyaWY5QyxDYTFpZkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiOGlmNUMsQ2E3aWZFLGtCQUFvQixlQUFnQixDQUFFLHVCYmlqZnhDLENhaGpmRSx5QkFBMkIsZUFBZ0IsQ0FBRSx1QmJvamYvQyxDYW5qZkUsa0JBQW9CLGVBQWdCLENBQUUsdUJidWpmeEMsQ2F0amZFLHVCQUF5QixlQUFnQixDQUFFLHVCYjBqZjdDLENhempmRSxtQkFBcUIsZUFBZ0IsQ0FBRSx1QmI2amZ6QyxDYTVqZkUsNEJBQThCLGVBQWdCLENBQUUsdUJiZ2tmbEQsQ2EvamZFLHNCQUF3QixlQUFnQixDQUFFLHVCYm1rZjVDLENhbGtmRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmJza2Y5QyxDYXJrZkUscUJBQXVCLGVBQWdCLENBQUUsdUJieWtmM0MsQ2F4a2ZFLHFCQUF1QixlQUFnQixDQUFFLHVCYjRrZjNDLENhM2tmRSw0QkFBOEIsZUFBZ0IsQ0FBRSx1QmIra2ZsRCxDYTlrZkUsdUJBQXlCLGVBQWdCLENBQUUsdUJia2xmN0MsQ2FqbGZFLDhCQUFnQyxlQUFnQixDQUFFLHVCYnFsZnBELENhcGxmRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJ3bGY1QyxDYXZsZkUscUJBQXVCLGVBQWdCLENBQUUsdUJiMmxmM0MsQ2ExbGZFLHFCQUF1QixlQUFnQixDQUFFLHVCYjhsZjNDLENhN2xmRSx5QkFBMkIsZUFBZ0IsQ0FBRSx1QmJpbWYvQyxDYWhtZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJib21mekMsQ2FubWZFLG1CQUFxQixlQUFnQixDQUFFLHVCYnVtZnpDLENhdG1mRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmIwbWY5QyxDYXptZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiNm1mekMsQ2E1bWZFLG9CQUFzQixlQUFnQixDQUFFLHVCYmduZjFDLENhL21mRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmJtbmYzQyxDYWxuZkUscUJBQXVCLGVBQWdCLENBQUUsdUJic25mM0MsQ2FybmZFLHFCQUF1QixlQUFnQixDQUFFLHVCYnluZjNDLENheG5mRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmI0bmY3QyxDYTNuZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiK25mekMsQ2E5bmZFLHVCQUF5QixlQUFnQixDQUFFLHVCYmtvZjdDLENham9mRSwyQkFBNkIsZUFBZ0IsQ0FBRSx1QmJxb2ZqRCxDYXBvZkUsdUJBQXlCLGVBQWdCLENBQUUsdUJid29mN0MsQ2F2b2ZFLHlCQUEyQixlQUFnQixDQUFFLHVCYjJvZi9DLENhMW9mRSxpQ0FBbUMsZUFBZ0IsQ0FBRSx1QmI4b2Z2RCxDYTdvZkUsOEJBQWdDLGVBQWdCLENBQUUsdUJiaXBmcEQsQ2FocGZFLG1DQUFxQyxlQUFnQixDQUFFLHVCYm9wZnpELENhbnBmRSxvQkFBc0IsZUFBZ0IsQ0FBRSx1QmJ1cGYxQyxDYXRwZkUscUJBQXVCLGVBQWdCLENBQUUsdUJiMHBmM0MsQ2F6cGZFLG9CQUFzQixlQUFnQixDQUFFLHVCYjZwZjFDLENhNXBmRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJncWY1QyxDYS9wZkUsMEJBQTRCLGVBQWdCLENBQUUsdUJibXFmaEQsQ2FscWZFLG9DQUFzQyxlQUFnQixDQUFFLHVCYnNxZjFELENhcnFmRSx5QkFBMkIsZUFBZ0IsQ0FBRSx1QmJ5cWYvQyxDYXhxZkUscUJBQXVCLGVBQWdCLENBQUUsdUJiNHFmM0MsQ2EzcWZFLHdCQUEwQixlQUFnQixDQUFFLHVCYitxZjlDLENhOXFmRSxrQkFBb0IsZUFBZ0IsQ0FBRSx1QmJrcmZ4QyxDYWpyZkUsMkJBQTZCLGVBQWdCLENBQUUsdUJicXJmakQsQ2FwcmZFLHFDQUF1QyxlQUFnQixDQUFFLHVCYndyZjNELENhdnJmRSxnQ0FBa0MsZUFBZ0IsQ0FBRSx1QmIycmZ0RCxDYTFyZkUsd0JBQTBCLGVBQWdCLENBQUUsdUJiOHJmOUMsQ2E3cmZFLDJCQUE2QixlQUFnQixDQUFFLHVCYmlzZmpELENhaHNmRSwyQkFBNkIsZUFBZ0IsQ0FBRSx1QmJvc2ZqRCxDYW5zZkUscUNBQXVDLGVBQWdCLENBQUUsdUJidXNmM0QsQ2F0c2ZFLHVCQUF5QixlQUFnQixDQUFFLHVCYjBzZjdDLENhenNmRSx5QkFBMkIsZUFBZ0IsQ0FBRSx1QmI2c2YvQyxDYTVzZkUsNkJBQStCLGVBQWdCLENBQUUsdUJiZ3RmbkQsQ2Evc2ZFLHNCQUF3QixlQUFnQixDQUFFLHVCYm10ZjVDLENhbHRmRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJzdGY1QyxDYXJ0ZkUsZ0NBQWtDLGVBQWdCLENBQUUsdUJieXRmdEQsQ2F4dGZFLDhCQUFnQyxlQUFnQixDQUFFLHVCYjR0ZnBELENhM3RmRSx5QkFBMkIsZUFBZ0IsQ0FBRSx1QmIrdGYvQyxDYTl0ZkUsaUJBQW1CLGVBQWdCLENBQUUsdUJia3VmdkMsQ2FqdWZFLHdCQUEwQixlQUFnQixDQUFFLHVCYnF1ZjlDLENhcHVmRSxrQkFBb0IsZUFBZ0IsQ0FBRSx1QmJ3dWZ4QyxDYXZ1ZkUsNEJBQThCLGVBQWdCLENBQUUsdUJiMnVmbEQsQ2ExdWZFLHlCQUEyQixlQUFnQixDQUFFLHVCYjh1Zi9DLENhN3VmRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmJpdmYzQyxDYWh2ZkUsK0JBQWlDLGVBQWdCLENBQUUsdUJib3ZmckQsQ2FudmZFLDRCQUE4QixlQUFnQixDQUFFLHVCYnV2ZmxELENhdHZmRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmIwdmY5QyxDYXp2ZkUscUJBQXVCLGVBQWdCLENBQUUsdUJiNnZmM0MsQ2E1dmZFLHFCQUF1QixlQUFnQixDQUFFLHVCYmd3ZjNDLENhL3ZmRSxvQkFBc0IsZUFBZ0IsQ0FBRSx1QmJtd2YxQyxDYWx3ZkUsc0JBQXdCLGVBQWdCLENBQUUsdUJic3dmNUMsQ2Fyd2ZFLHFCQUF1QixlQUFnQixDQUFFLHVCYnl3ZjNDLENheHdmRSx3QkFBMEIsZUFBZ0IsQ0FBRSx1QmI0d2Y5QyxDYTN3ZkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiK3dmaEQsQ2E5d2ZFLHFCQUF1QixlQUFnQixDQUFFLHVCYmt4ZjNDLENhanhmRSwyQkFBNkIsZUFBZ0IsQ0FBRSx1QmJxeGZqRCxDYXB4ZkUsMEJBQTRCLGVBQWdCLENBQUUsdUJid3hmaEQsQ2F2eGZFLDBCQUE0QixlQUFnQixDQUFFLHVCYjJ4ZmhELENhMXhmRSw0QkFBOEIsZUFBZ0IsQ0FBRSx1QmI4eGZsRCxDYTd4ZkUsaUNBQW1DLGVBQWdCLENBQUUsdUJiaXlmdkQsQ2FoeWZFLDRCQUE4QixlQUFnQixDQUFFLHVCYm95ZmxELENhbnlmRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmJ1eWY3QyxDYXR5ZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiMHlmekMsQ2F6eWZFLHVCQUF5QixlQUFnQixDQUFFLHVCYjZ5ZjdDLENhNXlmRSxvQkFBc0IsZUFBZ0IsQ0FBRSx1QmJnemYxQyxDYS95ZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJibXpmekMsQ2FsemZFLDBCQUE0QixlQUFnQixDQUFFLHVCYnN6ZmhELENhcnpmRSxpQ0FBbUMsZUFBZ0IsQ0FBRSx1QmJ5emZ2RCxDYXh6ZkUseUJBQTJCLGVBQWdCLENBQUUsdUJiNHpmL0MsQ2EzemZFLG1CQUFxQixlQUFnQixDQUFFLHVCYit6ZnpDLENhOXpmRSw0QkFBOEIsZUFBZ0IsQ0FBRSx1QmJrMGZsRCxDYWowZkUsb0JBQXNCLGVBQWdCLENBQUUsdUJicTBmMUMsQ2FwMGZFLHVCQUF5QixlQUFnQixDQUFFLHVCYncwZjdDLENhdjBmRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmIyMGYzQyxDYTEwZkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiODBmMUMsQ2E3MGZFLG9CQUFzQixlQUFnQixDQUFFLHVCYmkxZjFDLENhaDFmRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJvMWY1QyxDYW4xZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJidTFmekMsQ2F0MWZFLHdCQUEwQixlQUFnQixDQUFFLHVCYjAxZjlDLENhejFmRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmI2MWY3QyxDYTUxZkUsZ0NBQWtDLGVBQWdCLENBQUUsdUJiZzJmdEQsQ2EvMWZFLHVCQUF5QixlQUFnQixDQUFFLHVCYm0yZjdDLENhbDJmRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJzMmY1QyxDYXIyZkUsc0JBQXdCLGVBQWdCLENBQUUsdUJieTJmNUMsQ2F4MmZFLHFCQUF1QixlQUFnQixDQUFFLHVCYjQyZjNDLENhMzJmRSwwQkFBNEIsZUFBZ0IsQ0FBRSx1QmIrMmZoRCxDYTkyZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiazNmekMsQ2FqM2ZFLHlCQUEyQixlQUFnQixDQUFFLHVCYnEzZi9DLENhcDNmRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJ3M2Y1QyxDYXYzZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiMjNmekMsQ2ExM2ZFLG9CQUFzQixlQUFnQixDQUFFLHVCYjgzZjFDLENhNzNmRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmJpNGYzQyxDYWg0ZkUsaUJBQW1CLGVBQWdCLENBQUUsdUJibzRmdkMsQ2FuNGZFLHdCQUEwQixlQUFnQixDQUFFLHVCYnU0ZjlDLENhdDRmRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmIwNGY3QyxDYXo0ZkUscUJBQXVCLGVBQWdCLENBQUUsdUJiNjRmM0MsQ2E1NGZFLHNCQUF3QixlQUFnQixDQUFFLHVCYmc1ZjVDLENhLzRmRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmJtNWYzQyxDYWw1ZkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiczVmaEQsQ2FyNWZFLDRCQUE4QixlQUFnQixDQUFFLHVCYnk1ZmxELENheDVmRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmI0NWYzQyxDYTM1ZkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiKzVmNUMsQ2E5NWZFLHFCQUF1QixlQUFnQixDQUFFLHVCYms2ZjNDLENhajZmRSw0QkFBOEIsZUFBZ0IsQ0FBRSx1QmJxNmZsRCxDYXA2ZkUsc0JBQXdCLGVBQWdCLENBQUUsdUJidzZmNUMsQ2F2NmZFLHNCQUF3QixlQUFnQixDQUFFLHVCYjI2ZjVDLENhMTZmRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmI4NmY3QyxDYTc2ZkUsdUJBQXlCLGVBQWdCLENBQUUsdUJiaTdmN0MsQ2FoN2ZFLDBCQUE0QixlQUFnQixDQUFFLHVCYm83ZmhELENhbjdmRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmJ1N2YzQyxDYXQ3ZkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiMDdmMUMsQ2F6N2ZFLG1CQUFxQixlQUFnQixDQUFFLHVCYjY3ZnpDLENhNTdmRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJnOGY1QyxDYS83ZkUsd0JBQTBCLGVBQWdCLENBQUUsdUJibThmOUMsQ2FsOGZFLDBCQUE0QixlQUFnQixDQUFFLHVCYnM4ZmhELENhcjhmRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmJ5OGY3QyxDYXg4ZkUsdUJBQXlCLGVBQWdCLENBQUUsdUJiNDhmN0MsQ2EzOGZFLHFCQUF1QixlQUFnQixDQUFFLHVCYis4ZjNDLENhOThmRSxzQkFBd0IsZUFBZ0IsQ0FBRSx1QmJrOWY1QyxDYWo5ZkUscUJBQXVCLGVBQWdCLENBQUUsdUJicTlmM0MsQ2FwOWZFLHVCQUF5QixlQUFnQixDQUFFLHVCYnc5ZjdDLENhdjlmRSxvQkFBc0IsZUFBZ0IsQ0FBRSx1QmIyOWYxQyxDYTE5ZkUscUJBQXVCLGVBQWdCLENBQUUsdUJiODlmM0MsQ2E3OWZFLHVCQUF5QixlQUFnQixDQUFFLHVCYmkrZjdDLENhaCtmRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmJvK2Y3QyxDYW4rZkUsd0JBQTBCLGVBQWdCLENBQUUsdUJidStmOUMsQ2F0K2ZFLGtCQUFvQixlQUFnQixDQUFFLHVCYjArZnhDLENheitmRSx1QkFBeUIsZUFBZ0IsQ0FBRSx1QmI2K2Y3QyxDYTUrZkUscUJBQXVCLGVBQWdCLENBQUUsdUJiZy9mM0MsQ2EvK2ZFLG1CQUFxQixlQUFnQixDQUFFLHVCYm0vZnpDLENhbC9mRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmJzL2YzQyxDYXIvZkUsc0JBQXdCLGVBQWdCLENBQUUsdUJieS9mNUMsQ2F4L2ZFLG1CQUFxQixlQUFnQixDQUFFLHVCYjQvZnpDLENhMy9mRSxxQkFBdUIsZUFBZ0IsQ0FBRSx1QmIrL2YzQyxDYTkvZkUsbUJBQXFCLGVBQWdCLENBQUUsdUJia2dnQnpDLENhamdnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJicWdnQjVDLENhcGdnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJid2dnQnhDLENhdmdnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJiMmdnQnhDLENhMWdnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiOGdnQmhELENhN2dnQkUsNEJBQThCLGVBQWdCLENBQUUsdUJiaWhnQmxELENhaGhnQkUsbUNBQXFDLGVBQWdCLENBQUUsdUJib2hnQnpELENhbmhnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJidWhnQmpELENhdGhnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJiMGhnQjdDLENhemhnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiNmhnQjNDLENhNWhnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiZ2lnQjFDLENhL2hnQkUsNEJBQThCLGVBQWdCLENBQUUsdUJibWlnQmxELENhbGlnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJic2lnQnhDLENhcmlnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJieWlnQjFDLENheGlnQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJiNGlnQjlDLENhM2lnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiK2lnQjNDLENhOWlnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJia2pnQjVDLENhampnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJicWpnQjNDLENhcGpnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJid2pnQmpELENhdmpnQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJiMmpnQjlDLENhMWpnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiOGpnQmhELENhN2pnQkUsZ0NBQWtDLGVBQWdCLENBQUUsdUJiaWtnQnRELENhaGtnQkUsK0JBQWlDLGVBQWdCLENBQUUsdUJib2tnQnJELENhbmtnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJidWtnQnhDLENhdGtnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJiMGtnQi9DLENhemtnQkUsbUNBQXFDLGVBQWdCLENBQUUsdUJiNmtnQnpELENhNWtnQkUsNkJBQStCLGViZ2xnQmpDLENhL2tnQkUsNEJBQThCLGVBQWdCLENBQUUsdUJibWxnQmxELENhbGxnQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJic2xnQjlDLENhcmxnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJieWxnQmhELENheGxnQkUsK0JBQWlDLGVBQWdCLENBQUUsdUJiNGxnQnJELENhM2xnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiK2xnQmhELENhOWxnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJia21nQmpELENham1nQkUscUJBQXVCLGVBQWdCLENBQUUsdUJicW1nQjNDLENhcG1nQkUscUJBQXVCLGVBQWdCLENBQUUsdUJid21nQjNDLENhdm1nQkUsaUJBQW1CLGVBQWdCLENBQUUsdUJiMm1nQnZDLENhMW1nQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJiOG1nQjlDLENhN21nQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiaW5nQjFDLENhaG5nQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJib25nQjlDLENhbm5nQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJidW5nQmpELENhdG5nQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiMG5nQjVDLENhem5nQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiNm5nQjFDLENhNW5nQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiZ29nQmhELENhL25nQkUscUJBQXVCLGVBQWdCLENBQUUsdUJibW9nQjNDLENhbG9nQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJic29nQjFDLENhcm9nQkUscUJBQXVCLGVBQWdCLENBQUUsdUJieW9nQjNDLENheG9nQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJiNG9nQmpELENhM29nQkUsNEJBQThCLGVBQWdCLENBQUUsdUJiK29nQmxELENhOW9nQkUscUJBQXVCLGVBQWdCLENBQUUsdUJia3BnQjNDLENhanBnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJicXBnQjdDLENhcHBnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJid3BnQjVDLENhdnBnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiMnBnQjNDLENhMXBnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiOHBnQjNDLENhN3BnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJiaXFnQmpELENhaHFnQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJib3FnQjlDLENhbnFnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJidXFnQnhDLENhdHFnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJiMHFnQi9DLENhenFnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiNnFnQjVDLENhNXFnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiZ3JnQjNDLENhL3FnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJibXJnQi9DLENhbHJnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJic3JnQnpDLENhcnJnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJieXJnQjNDLENheHJnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiNHJnQjNDLENhM3JnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiK3JnQmhELENhOXJnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJia3NnQjdDLENhanNnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJicXNnQjNDLENhcHNnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJid3NnQmpELENhdnNnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJiMnNnQmpELENhMXNnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJiOHNnQjdDLENhN3NnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiaXRnQmhELENhaHRnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJib3RnQjVDLENhbnRnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJidXRnQnpDLENhdHRnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiMHRnQjNDLENhenRnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJiNnRnQjdDLENhNXRnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiZ3VnQjFDLENhL3RnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJibXVnQjFDLENhbHVnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJic3VnQi9DLENhcnVnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJieXVnQi9DLENheHVnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJiNHVnQjdDLENhM3VnQkUsNkJBQStCLGVBQWdCLENBQUUsdUJiK3VnQm5ELENhOXVnQkUsOEJBQWdDLGVBQWdCLENBQUUsdUJia3ZnQnBELENhanZnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJicXZnQi9DLENhcHZnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJid3ZnQi9DLENhdnZnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiMnZnQjVDLENhMXZnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJiOHZnQmpELENhN3ZnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiaXdnQjVDLENhaHdnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJib3dnQmhELENhbndnQkUsNkJBQStCLGVBQWdCLENBQUUsdUJidXdnQm5ELENhdHdnQkUsNkJBQStCLGVBQWdCLENBQUUsdUJiMHdnQm5ELENhendnQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJiNndnQjlDLENhNXdnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJiZ3hnQi9DLENhL3dnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJibXhnQjFDLENhbHhnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJic3hnQmpELENhcnhnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJieXhnQmpELENheHhnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJiNHhnQmpELENhM3hnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiK3hnQjNDLENhOXhnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJia3lnQjNDLENhanlnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJicXlnQjdDLENhcHlnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJid3lnQmpELENhdnlnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiMnlnQmhELENhMXlnQkUsaUNBQW1DLGVBQWdCLENBQUUsdUJiOHlnQnZELENhN3lnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiaXpnQmhELENhaHpnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJib3pnQjNDLENhbnpnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJidXpnQnpDLENhdHpnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiMHpnQjVDLENhenpnQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJiNnpnQjlDLENhNXpnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJiZzBnQjdDLENhL3pnQkUsNkJBQStCLGVBQWdCLENBQUUsdUJibTBnQm5ELENhbDBnQkUsNEJBQThCLGVBQWdCLENBQUUsdUJiczBnQmxELENhcjBnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJieTBnQjVDLENheDBnQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJiNDBnQjlDLENhMzBnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiKzBnQmhELENhOTBnQkUsK0JBQWlDLGVBQWdCLENBQUUsdUJiazFnQnJELENhajFnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJicTFnQjNDLENhcDFnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJidzFnQmhELENhdjFnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiMjFnQjNDLENhMTFnQkUsNEJBQThCLGVBQWdCLENBQUUsdUJiODFnQmxELENhNzFnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiaTJnQjNDLENhaDJnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJibzJnQjVDLENhbjJnQkUsNkJBQStCLGVBQWdCLENBQUUsdUJidTJnQm5ELENhdDJnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiMDJnQjFDLENhejJnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiNjJnQnpDLENhNTJnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiZzNnQjNDLENhLzJnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJibTNnQjFDLENhbDNnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiczNnQmhELENhcjNnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJieTNnQjVDLENheDNnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJiNDNnQnhDLENhMzNnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJiKzNnQnhDLENhOTNnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiazRnQnpDLENhajRnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJicTRnQjdDLENhcDRnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJidzRnQjNDLENhdjRnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiMjRnQjVDLENhMTRnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiODRnQjNDLENhNzRnQkUsNEJBQThCLGVBQWdCLENBQUUsdUJiaTVnQmxELENhaDVnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJibzVnQjFDLENhbjVnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJidTVnQjFDLENhdDVnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJiMDVnQmpELENhejVnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiNjVnQjVDLENhNTVnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiZzZnQnpDLENhLzVnQkUsaUJBQW1CLGVBQWdCLENBQUUsdUJibTZnQnZDLENhbDZnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJiczZnQnhDLENhcjZnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJieTZnQjFDLENheDZnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiNDZnQnpDLENhMzZnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiKzZnQjNDLENhOTZnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiazdnQjFDLENhajdnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJicTdnQjNDLENhcDdnQkUsdUJBQXlCLGVBQWdCLENBQUUsdUJidzdnQjdDLENhdjdnQkUsOEJBQWdDLGVBQWdCLENBQUUsdUJiMjdnQnBELENhMTdnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiODdnQjFDLENhNzdnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiaThnQmhELENhaDhnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJibzhnQjVDLENhbjhnQkUsa0JBQW9CLGVBQWdCLENBQUUsdUJidThnQnhDLENhdDhnQkUsbUNBQXFDLGVBQWdCLENBQUUsdUJiMDhnQnpELENhejhnQkUsa0NBQW9DLGVBQWdCLENBQUUsdUJiNjhnQnhELENhNThnQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJiZzlnQjlDLENhLzhnQkUsK0JBQWlDLGVBQWdCLENBQUUsdUJibTlnQnJELENhbDlnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJiczlnQi9DLENhcjlnQkUseUJBQTJCLGVBQWdCLENBQUUsdUJieTlnQi9DLENheDlnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiNDlnQjVDLENhMzlnQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJiKzlnQjVDLENhOTlnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiaytnQnpDLENhaitnQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJicStnQnpDLENhcCtnQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJidytnQmhELENhditnQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJiMitnQmpELENhMStnQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiOCtnQjFDLENhNytnQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiaS9nQjNDLENhaC9nQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiby9nQjNDLENhbi9nQkUsbUNBQXFDLGVBQWdCLENBQUUsdUJidS9nQnpELENhdC9nQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiMC9nQnpDLENhei9nQkUsbUJBQXFCLGVBQWdCLENBQUUsdUJiNi9nQnpDLENhNS9nQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJiZ2doQjFDLENhLy9nQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJibWdoQjVDLENhbGdoQkUsNkJBQStCLGVBQWdCLENBQUUsdUJic2doQm5ELENhcmdoQkUsb0JBQXNCLGVBQWdCLENBQUUsdUJieWdoQjFDLENhbmdoQkUsc0ZBQXFCLGVBQWdCLENBQUUsdUJiZ2hoQnpDLENhL2doQkUsK0JBQWlDLGVBQWdCLENBQUUsdUJibWhoQnJELENhbGhoQkUsb0NBQXNDLGVBQWdCLENBQUUsdUJic2hoQjFELENhcmhoQkUscUNBQXVDLGVBQWdCLENBQUUsdUJieWhoQjNELENheGhoQkUsMkNBQTZDLGVBQWdCLENBQUUsdUJiNGhoQmpFLENhM2hoQkUsc0NBQXdDLGVBQWdCLENBQUUsdUJiK2hoQjVELENhOWhoQkUsbUNBQXFDLGVBQWdCLENBQUUsdUJia2loQnpELENhamloQkUsOEJBQWdDLGVBQWdCLENBQUUsdUJicWloQnBELENhcGloQkUscUNBQXVDLGVBQWdCLENBQUUsdUJid2loQjNELENhdmloQkUsaUNBQW1DLGVBQWdCLENBQUUsdUJiMmloQnZELENhMWloQkUsaUNBQW1DLGVBQWdCLENBQUUsdUJiOGloQnZELENhN2loQkUsK0JBQWlDLGVBQWdCLENBQUUsdUJiaWpoQnJELENhL2loQkUseURBRDRCLGVBQWdCLENBQUUsdUJid2poQmhELENhcmpoQkUsbURBRHlCLGVBQWdCLENBQUUsdUJiOGpoQjdDLENhNWpoQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJiZ2toQmpELENhL2poQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJibWtoQjVDLENhbGtoQkUsc0JBQXdCLGVBQWdCLENBQUUsdUJic2toQjVDLENhcmtoQkUsNkJBQStCLGVBQWdCLENBQUUsdUJieWtoQm5ELENheGtoQkUsaUJBQW1CLGVBQWdCLENBQUUsdUJiNGtoQnZDLENhM2toQkUsZ0NBQWtDLGVBQWdCLENBQUUsdUJiK2toQnRELENhOWtoQkUsa0NBQW9DLGVBQWdCLENBQUUsdUJia2xoQnhELENhamxoQkUscUJBQXVCLGVBQWdCLENBQUUsdUJicWxoQjNDLENhbmxoQkUsb0VBRG1DLGVBQWdCLENBQUUsdUJiNGxoQnZELENheGxoQkUsMkZBQW9CLGVBQWdCLENBQUUsdUJib21oQnhDLENhbm1oQkUsOEJBQWdDLGVBQWdCLENBQUUsdUJidW1oQnBELENhcm1oQkUsdURBRDJCLGVBQWdCLENBQUUsdUJiOG1oQi9DLENhM21oQkUsbURBRCtCLGVBQWdCLENBQUUsdUJib25oQm5ELENhbG5oQkUsNkJBQStCLGVBQWdCLENBQUUsdUJic25oQm5ELENhcm5oQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJieW5oQmpELENheG5oQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJiNG5oQmhELENhM25oQkUsNkJBQStCLGVBQWdCLENBQUUsdUJiK25oQm5ELENhOW5oQkUscUJBQXVCLGVBQWdCLENBQUUsdUJia29oQjNDLENham9oQkUsMEJBQTRCLGVBQWdCLENBQUUsdUJicW9oQmhELENhcG9oQkUseUJBQTJCLGVBQWdCLENBQUUsdUJid29oQi9DLENhdG9oQkUsMkNBRHFCLGVBQWdCLENBQUUsdUJiK29oQnpDLENhN29oQkUscUJBQXVCLGVBQWdCLENBQUUsdUJiaXBoQjNDLENhaHBoQkUsd0JBQTBCLGVBQWdCLENBQUUsdUJib3BoQjlDLENhbnBoQkUsaUNBQW1DLGVBQWdCLENBQUUsdUJidXBoQnZELENhdHBoQkUsOEJBQWdDLGVBQWdCLENBQUUsdUJiMHBoQnBELENheHBoQkUsMkNBRG1CLGVBQWdCLENBQUUsdUJiaXFoQnZDLENhL3BoQkUsMkJBQTZCLGVBQWdCLENBQUUsdUJibXFoQmpEO0FBSUE7Ozs7Ozs7O0VBUUUsQ2NobGxCRixVQUtFLDZCQUhBLG9CQUFxQixDQUVyQixjQUFlLENBSGYsaUJBQWtCLENBRWxCLHFCZDJ3bUJGLENjdHdtQkEsYUFDRSxhZHd3bUJGLENjcndtQkEsNEJBRUUsYUFBYyxDQUVkLFdBQVksQ0FEWixjZHd3bUJGLENjL3ZtQkEsc0NBRUUsWWRvd21CRixDY2x3bUJBLHlEQUVFLGFBQWMsQ0FDZCxpQmRvd21CRixDY2x3bUJBLDhCQUNFLG9CQUFxQixDQUNyQixpQmRvd21CRixDY2h3bUJBLHVDQUVFLGNBQWUsQ0FDZixXZGt3bUJGLENjcnZtQkEsMkRBR0Usb0JkNnZtQkYsQ2N0dm1CQSx3R0FJRSxvQkFBcUIsQ0FDckIsa0JkMnZtQkYsQ2N6dm1CQSxvSEFJRSxvQkFBcUIsQ0FDckIscUJkMnZtQkYsQ2N6dm1CQSxvSEFJRSxvQkFBcUIsQ0FDckIscUJkMnZtQkYsQ2Nwdm1CQSw0RkFJRSxxQmR5dm1CRixDY2x2bUJBLCtJQU1FLCtCZHV2bUJGLENjaHZtQkEsdUNBRUUsZWRxdm1CRixDY2x2bUJBLGdHQUlFLDZCQUNBLDBCQUNBLG9CZG92bUJGLENjN3VtQkEsbUhBTUUsYUFBYyxDQUVkLFdBQVksQ0FEWixVZG12bUJGLENjMXVtQkEsZ0lBWUUsNkJBQ0EsMEJBQ0EscUJBTkEsb0JBQXFCLENBRXJCLFdBSkEsbUJBR0EsU2Rrdm1CRixDY3R1bUJBLGlCQUNFLDhCQUFnQyxDQUNoQyxpQkFDQSxpQmQydW1CRixDY3h1bUJBLGdDQUNFLGlCQUNBLGNkMHVtQkYsQ2N2dW1CQSxpQ0FDRSxhQUFjLENBQ2QsaUJkeXVtQkYsQ2NsdW1CQSxxQ0FFRSxVQUFXLENBRVgsa0JBREEsZ0Jkd3VtQkYsQ2NydW1CQSxpREFFRSxXQUFZLENBRVosa0JBQ0EsZ0JBRkEsY2R5dW1CRixDY3B1bUJBLDJEQUVFLGVkc3VtQkYsQ2NsdW1CQSx1Q0FFRSxnQkFBaUIsQ0FDakIsaUJkb3VtQkYsQ2M3dG1CQSw4RUFNRSx1QkFEQSxXQUFZLENBRFosVWRvdW1CRixDY2h1bUJBLDhFQU1FLHVCQURBLFdBQVksQ0FEWixVZG91bUJGLENjaHVtQkEsa0ZBTUUsdUJBREEsV0FBWSxDQURaLFdkb3VtQkYsQ2NodW1CQSxzRkFNRSxlQURBLFdBQVksQ0FEWixXZG91bUJGLENjaHVtQkEsa0ZBTUUsd0JBREEsV0FBWSxDQURaLFdkb3VtQkYsQ2NodW1CQSwwRUFNRSx3QkFEQSxXQUFZLENBRFosV2RvdW1CRixDY2h1bUJBLDhFQU1FLHdCQURBLFdBQVksQ0FEWixXZG91bUJGLENjaHVtQkEsMEZBTUUsd0JBREEsV0FBWSxDQURaLFdkb3VtQkYsQ2MxdG1CQSxXQUNFLFdBQVksQ0FDWixnQmQrdG1CRixDYzV0bUJBLGdEQUdFLG9CQUFxQixDQUNyQixxQmQ4dG1CRjtBQU9BOzs7Ozs7OztFQVFFLENlcGhuQkYsVUFLRSxzQkFEQSxtQkFBb0IsQ0FEcEIsaUJBQWtCLENBRGxCLGdCQURBLGlCZm91b0JGLENlOXRvQkEsZ0JBS0UsK0NBQW1ELENBT25ELGdCQUNBLG9DQUVBLDJCQUdBLGdCQUpBLHNCQVhBLGFBQWMsQ0FNZCwyREFGQSx5QkFOQSxRQUFTLENBQ1QsY0FBZSxDQUVmLFlBQWEsQ0FNYix3QkFKQSxnQkFVQSxvRGYrdG9CRixDZW50b0JBLDJDQUNFLHdCZnl0b0JGLENldnRvQkEsa0NBQ0Usd0JmeXRvQkYsQ2V2dG9CQSxzQ0FDRSx3QmZ5dG9CRixDZTdzb0JBLDREQUVFLFdmcXRvQkYsQ2VsdG9CQSxrRUFFRSxtQmZvdG9CRixDZTdzb0JBLDRDQUdFLG1CQURBLDRCQUdBLGdCQURBLHFCZm10b0JGLENlM3NvQkEsd0NBV0UsaUNBREEsb0JmK3NvQkYsQ2U1c29CQSwrRUFYRSxVQUFXLENBTVgsb0JBSkEsUUFBUyxDQUVULHFDQUxBLGlCQUFrQixDQUVsQixPQUFRLENBSVIsa0JmK3RvQkYsQ2V6dG9CQSx1Q0FVRSxxQ0FFQSwwQkFDQSxxQkFFQSxnQ2Ywc29CRixDZWxzb0JBLDRDQUdFLGdCQURBLHFCQUdBLGdCQURBLG9CZndzb0JGLENlcnNvQkEsa0dBRUUsd0JmdXNvQkYsQ2Vyc29CQSxnRkFFRSx3QmZ1c29CRixDZXJzb0JBLHdGQUVFLHdCZnVzb0JGLENlOXJvQkEsc0JBQ0UseUJBQ0EscUJBRUEsZ0JBREEsYWZvc29CRixDZS9yb0JBLGlEQUNFLGFma3NvQkYsQ2Voc29CQSx3Q0FDRSxhZmtzb0JGLENlaHNvQkEsNENBQ0UsdUJma3NvQkYsQ2U5cm9CQSx1REFDRSxhZmlzb0JGLENlL3JvQkEsOENBQ0UsYWZpc29CRixDZS9yb0JBLGtEQUNFLHVCZmlzb0JGLENlcnJvQkEsMkRBR0Usc0NBQXdDLENBRHhDLGtDQUFvQyxDQUlwQyx5QkFBMkIsQ0FEM0IseUJBQTJCLENBRDNCLFNmK3JvQkYsQ2Uzcm9CQSxzQ0FDRSx1QmY2cm9CRixDZXpyb0JBLCtDQUNFLFdmNHJvQkYsQ2Uxcm9CQSw4Q0FDRSxjQUFlLENBQ2YsaUJmNHJvQkYsQ2Uxcm9CQSw2REFDRSxpQkFDQSxlZjRyb0JGLENleHJvQkEsK0JBQ0UsVWYycm9CRixDZXpyb0JBLG1GQUVFLGFmMnJvQkYsQ2V4cm9CQSxnRUFDRSx3QmYwcm9CRixDZXhyb0JBLHVEQUNFLHdCZjByb0JGLENleHJvQkEsMkRBQ0Usd0JmMHJvQkYsQ2Vscm9CQSxzQkFZRSw0Q0FYQSxjQUFlLENBT2YsV0FBWSxDQUxaLGFBQWMsQ0FJZCxRQUFTLENBSVQsV0FUQSxpQkFBa0IsQ0FJbEIsT0FBUSxDQUZSLGlCQUFrQixDQUNsQixLQUFNLENBUU4sNEJBSEEsa0JmeXJvQkYsQ2Vwcm9CQSxpQ0FDRSxtQmZzcm9CRixDZXByb0JBLG1EQUVFLDBCZnNyb0JGLENlbnJvQkEseURBRUUsTUFBTyxDQUtQLGlCQUpBLGlCQUFrQixDQUNsQixpQkFBa0IsQ0FDbEIsT0FBUSxDQUNSLFVmc3JvQkYsQ2Vucm9CQSwyQkFDRSxjZnFyb0JGLENlbnJvQkEsK0JBRUUsV0FEQSxTZnNyb0JGLENlanJvQkEscUNBR0UsNENBREEsU0FEQSxVZnNyb0JGLENlbHJvQkEsOENBRUUsVUFEQSxVZnFyb0JGLENlbHJvQkEsaUZBRUUsMEJBQ0EsaUJmb3JvQkYsQ2Vocm9CQSx1RUFFRSxTZm1yb0JGLENlM3FvQkEseUJBQ0UsYUFBYyxDQUVkLGNBREEsUWZrcm9CRixDZS9xb0JBLHNDQUVFLDJCQURBLHVCZmtyb0JGLENlN3FvQkEsb0VBRUUsNEJBQTZCLENBRDdCLHlCZmlyb0JGLENlOXFvQkEsMEVBRUUsMkJBQTRCLENBQzVCLDZCQUE4QixDQUY5Qix3QmZrcm9CRixDZTlxb0JBLGdGQUNFLHlCZmdyb0JGLENlNXFvQkEsd0NBRUUsc0NBQXdDLENBQ3hDLHdDQUEwQyxDQUYxQyxtQ2Zpcm9CRixDZTdxb0JBLCtDQUVFLDJCQUE0QixDQUQ1Qix3QmZncm9CRixDZTVxb0JBLDhDQUNFLG9DZjhxb0JGLENlMXFvQkEsZ0NBSUUsaUNBREEsc0JBREEsVUFEQSxPZmdyb0JGLENlenFvQkEsNktBRUUsNkJmNHFvQkYsQ2UxcW9CQSx1S0FFRSw4QmY0cW9CRixDZTFxb0JBLGtGQUNFLG1CZjRxb0JGLENleHFvQkEsK0dBRUUsNEJmMnFvQkYsQ2V6cW9CQSx5R0FFRSw2QmYycW9CRixDZXpxb0JBLG1EQUNFLGtCZjJxb0JGLENlenFvQkEsOEJBQ0UsVWYycW9CRixDZXpxb0JBLHVEQUNFLFlmMnFvQkYsQ2V2cW9CQSwyQkFFRSxVQURBLE9mMnFvQkYsQ2V4cW9CQSxnQ0FFRSxTQURBLFVmMnFvQkYsQ2V0cW9CQSxzT0FLRSxnQ0FEQSw0QmYwcW9CRixDZXZxb0JBLHdRQUlFLDZCZnlxb0JGLENldnFvQkEsZ1NBSUUsOEJmeXFvQkYsQ2V2cW9CQSxzTEFFRSw2QmZ5cW9CRixDZWpxb0JBLG1EQUdFLGtCQUFtQixDQURuQixZQUFhLENBRWIsYWZzcW9CRixDZXBxb0JBLDJEQUlFLFFBQVMsQ0FEVCwyQkFEQSx1QmZ3cW9CRixDZWxxb0JBLG1EQUVFLHNDQUF3QyxDQUN4Qyx3Q0FBMEMsQ0FGMUMsbUNmdXFvQkYsQ2VucW9CQSxnT0FHRSxlZnFxb0JGLENlbnFvQkEsMk1BR0UsMkNmcXFvQkYsQ2VqcW9CQSx5REFDRSxvQ2ZvcW9CRixDZWhxb0JBLHNDQUVFLHFDQUF1QyxDQUN2Qyx1Q0FBeUMsQ0FGekMsa0NmcXFvQkYsQ2VqcW9CQSxtSUFHRSxlZm1xb0JGLENlanFvQkEsdUtBR0UsMkNmbXFvQkYsQ2VocW9CQSw0Q0FDRSxtQ2ZtcW9CRixDZTNwb0JBLHlCQUNFLFdmaXFvQkYsQ2UxcG9CQSxnQkFDRSxZZitwb0JGLENlN3BvQkEsc0JBQ0UsaUJmK3BvQkYsQ2V4cG9CQSxlQUNFLHFCZjZwb0JGLENlM3BvQkEsZUFDRSxxQmY2cG9CRixDZTNwb0JBLGdCQUNFLHFCZjZwb0JGLENlM3BvQkEsVUFDRSxhZjZwb0JGLENlM3BvQkEsZ0JBQ0Usc0JmNnBvQkYsQ2UzcG9CQSxjQUNFLHNCZjZwb0JGLENlM3BvQkEsZUFDRSxzQmY2cG9CRixDZTNwb0JBLGtCQUNFLHNCZjZwb0JGO0FBT0E7Ozs7Ozs7O0VBUUUsQ2dCdHJwQkYsVUFPRSx5QkFDQSxzQkFPQSwyQkFDQSwyQkFOQSxxQkFUQSxvQkFBcUIsQ0FZckIsZ0JBWEEsYUFBYyxDQUdkLHFCQUlBLHVCQUdBLG9CQUtBLCtCQWRBLHVCaEI2N3FCRixDZ0I1NnFCQSxzQkFDRSxhaEI4NnFCRixDZ0I1NnFCQSxxQkFDRSxjaEI4NnFCRixDZ0JyNnFCQSx1QkFKRSxjaEJvN3FCRixDZ0JoN3FCQSxZQUVFLGFBQWMsQ0FDZCxXQUNBLDJCaEI0NnFCRixDZ0IxNnFCQSxrQkFDRSxTaEI0NnFCRixDZ0J4NnFCQSxjQUdFLGdCQURBLHFCQUFzQixDQUR0QixvQmhCNjZxQkYsQ2dCdjZxQkEsMENBR0UsbUJBREEsVWhCMjZxQkYsQ2dCdDZxQkEsa0JBQ0Usb0JBQXFCLENBRXJCLGdCQUNBLGdCQUNBLFdBSEEsa0JoQjQ2cUJGLENnQnY2cUJBLHdCQUNFLGtCaEJ5NnFCRixDZ0JyNnFCQSw2Q0FFRSxjQUFlLENBQ2Ysc0JBQ0EsV0FDQSw4QmhCdzZxQkYsQ2dCdDZxQkEseURBRUUsU2hCdzZxQkYsQ2dCcDZxQkEsaUVBRUUsaUJoQnU2cUJGLENnQnI2cUJBLG1FQUVFLGlCaEJ1NnFCRixDZ0JuNnFCQSxxQkFDRSxhaEJzNnFCRixDZ0JsNnFCQSwyQkFDRSxrQmhCcTZxQkYsQ2dCOTVxQkEsa0JBQ0Usb0JoQm02cUJGLENnQjM1cUJBLHFCQUNFLG9CaEJnNnFCRixDZ0IzNXFCQSx5R0FFRSx3QmhCODVxQkYsQ2dCNTVxQkEsMkdBRUUseUJoQjg1cUJGLENnQjU1cUJBLHdEQUNFLDJCaEI4NXFCRixDZ0I1NXFCQSx5REFDRSw0QmhCODVxQkYsQ2dCMTVxQkEsd0dBRUUseUJoQjY1cUJGLENnQjM1cUJBLHFEQUVFLDZCQURBLFloQjg1cUJGLENnQnI1cUJBLGdCQVFFLG1CQUVBLDJCQUNBLGdCQVJBLGVBQWdCLENBRGhCLFlBQWEsQ0FFYixnQkFBaUIsQ0FLakIsb0NBSEEsbUJBQW9CLENBRHBCLHVCQUF3QixDQUp4QixvQmhCbTZxQkYsQ2dCdDVxQkEsb0JBTUUsNENBTEEsb0JBQXFCLENBR3JCLGdCQUNBLG9DQUhBLGtCaEIyNXFCRixDZ0JwNXFCQSx3QkFDRSwwQkFHQSw0Q0FGQSxzQ0FDQSxzQmhCdTVxQkYsQ2dCLzRxQkEsb0NBT0UsNENBTEEsZUFBZ0IsQ0FFaEIsbUJBQ0Esb0JBRkEsaUJBQWtCLENBS2xCLGVoQm01cUJGLENnQmo1cUJBLGtEQVNJLHdCQUF5QixDQUN6QixzQkFIQSxVQUFXLENBTVgsY0FYQSxpQkFBa0IsQ0FJbEIsV0FEQSxRQUZBLHlEQUEwRCxDQVcxRCxnQkFGQSxZaEJrNXFCSixDZ0I1NHFCQSxnREFRRSxzQkFLQSxxQkFEQSx1Q0FUQSxVQUFXLENBT1gsWUFMQSxZQUVBLGtCQUxBLGlCQUFrQixDQUVsQixPQUFRLENBS1IsVWhCZzVxQkYsQ2dCMTRxQkEsOERBRUUsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFFQSxzQmhCNDRxQkYsQ2dCMTRxQkEsNERBRUUsc0NoQjQ0cUJGLENnQnI0cUJBLGlCQWtCRSxzQ0FBd0MsQ0FWeEMscUJBR0EsV0FQQSxRQUFTLENBQ1QsU0FBVSxDQUNWLGlCQUFrQixDQUlsQixVQUVBLFNoQnk0cUJGLENnQmo0cUJBLHdDQW5CRSxpQkFBa0IsQ0FFbEIsT0FBUSxDQURSLEtBQU0sQ0FXTixnQ2hCNDVxQkYsQ2dCcjVxQkEsdUJBU0UsNEJBQTZCLENBSzdCLHdCQUFnQyxDQUVoQywwQkFBMkIsQ0FGM0Isa0JBQWdDLENBQWhDLHdCQUFnQyxDQVpoQyxVQUFXLENBTVgsUUFBUyxDQURULE9BQVEsQ0FGUixVaEJnNXFCRixDZ0JqNHFCQSx1QkFDRSxjQUFlLENBS2YsdUJBRkEsU0FBVSxDQUdWLFFBQVMsQ0FMVCxpQkFBa0IsQ0FHbEIsa0JBRkEsZWhCdTRxQkYsQ2dCLzNxQkEsa0RBR0UsTUFBTyxDQURQLFVoQm00cUJGLENnQmg0cUJBLDRCQUlFLHdCQUFnQyxDQUFoQyxrQkFBZ0MsQ0FFaEMsd0JBQXlCLENBRnpCLHdCaEJtNHFCRixDZ0IvM3FCQSw0QkFDRSxpQkFDQSxVaEJpNHFCRixDZ0I3M3FCQSw2QkFFRSxVQUFXLENBRFgsUWhCaTRxQkYsQ2dCOTNxQkEsa0NBRUUsU0FBVSxDQURWLFVoQmk0cUJGLENnQnozcUJBLGlCQUtFLDZCQURBLDRDQUZBLFFBQVMsQ0FDVCxxQkFBc0IsQ0FGdEIsaUJoQms0cUJGLENnQjMzcUJBLHVCQU1FLDRCQUE2QixDQUk3Qix3QkFBeUIsQ0FDekIsMEJBQTJCLENBRDNCLGtCQUF5QixDQUF6Qiw0QkFBeUIsQ0FSekIsVUFBVyxDQVlYLFFBQVMsQ0FUVCxNQUFPLENBSlAsaUJBQWtCLENBR2xCLFFBQVMsQ0FTVCxPaEIyM3FCRixDZ0J2M3FCQSxpQkFDRSx5QkFDQSxvQkFDQSxnQ0FDQSxtQmhCMDNxQkYsQ2dCeDNxQkEsaUNBQ0UsK0JBQ0EsbUJBQ0EsZ0NoQjAzcUJGLENnQngzcUJBLHVCQUVFLG1DQURBLCtCaEIyM3FCRixDZ0J4M3FCQSxvREFDRSxzQ0FDQSwrQmhCMDNxQkYsQ2dCeDNxQkEsdUNBQ0UsK0JBQ0Esc0NoQjAzcUJGLENnQngzcUJBLDZCQUNFLG9CaEIwM3FCRixDZ0J4M3FCQSwwREFDRSxTaEIwM3FCRixDZ0J4M3FCQSw2Q0FDRSxVaEIwM3FCRixDZ0J0M3FCQSxpQ0FHRSw0Q0FGQSxlQUFnQixDQUNoQiwyQmhCMDNxQkYsQ2dCdjNxQkEsdUNBTUUsd0JBQXlCLENBQXpCLGtCQUF5QixDQUN6Qix3QkFBeUIsQ0FEekIsNEJBQXlCLENBTHpCLFNBQVUsQ0FDVixPaEI2M3FCRixDZ0JwM3FCQSxzREFFRSxpQkFBa0IsQ0FDbEIsUWhCdTNxQkYsQ2dCcjNxQkEsNERBRUUseUJoQnUzcUJGLENnQnIzcUJBLDRGQUVFLGlDQUNBLG1CaEJ1M3FCRixDZ0JuM3FCQSw4QkFDRSxXaEJzM3FCRixDZ0JwM3FCQSw4Q0FDRSx3QkFDQSxtQmhCczNxQkYsQ2dCOTJxQkEsb0RBVUUsNENBSkEsTUFBTyxDQUZQLFFBQVMsQ0FJVCxrQkFMQSxpQkFBa0IsQ0FFbEIsS0FBTSxDQUhOLFVoQnkzcUJGLENnQi8ycUJBLG9DQUdFLDRDQURBLFFBQVMsQ0FEVCxRaEJtM3FCRixDZ0I5MnFCQSxzQ0FHRSw0Q0FEQSxzQkFBd0IsQ0FEeEIsVWhCazNxQkYsQ2dCNzJxQkEsdUNBSUUsNENBRkEsU0FBVSxDQUNWLE9BQVEsQ0FGUixVaEJrM3FCRixDZ0I3MnFCQSx5Q0FJRSw0Q0FEQSxRQUFTLENBRFQsUUFBUyxDQURULFVoQmszcUJGLENnQjcycUJBLDBDQU1FLDRDQUpBLFFBQVMsQ0FDVCxTQUFVLENBQ1YsT0FBUSxDQUhSLFFBQVMsQ0FJVCxVaEJnM3FCRixDZ0JuMnFCQSxtQkFDRSxVaEIyMnFCRixDZ0JwMnFCQSwwQ0FFRSx5QkFHQSxzQkFGQSxxQkFHQSxvQmhCdzJxQkYsQ2dCdDJxQkEsd0RBRUUsb0JoQncycUJGLENnQmoycUJBLGlCQUVFLG9CaEJ3MnFCRixDZ0JuMnFCQSx5Q0FORSx5QkFHQSxzQkFDQSxxQmhCMDJxQkYsQ2dCOTFxQkEsd0RBR0Usb0JoQnEycUJGLENnQmgycUJBLDhIQU5FLHlCQUdBLHNCQUNBLHFCaEJ3MnFCRixDZ0IxMXFCQSwyREFFRSw4QmhCKzFxQkYsQ2dCeDFxQkEsMENBRUUsc0JoQjYxcUJGLENnQi8wcUJBLHdDQUVFLHFCQUNBLG9DQUVBLGdCQURBLHFCaEJ3MXFCRixDZ0JuMXFCQSxzREFHRSxxQkFFQSxnQkFEQSxjQUZBLG9CaEJ5MXFCRixDZ0JsMXFCQSxnQ0FDRSxvQmhCcTFxQkYsQ2dCNzBxQkEsd0NBR0UscUJBQXNCLENBRHRCLFVoQm0xcUJGLENnQjMwcUJBLDhDQUdFLHlCQURBLHdCaEJpMXFCRixDZ0I5MHFCQSwwQkFDSSxvQmhCZzFxQkosQ2dCOTBxQkEsZ0NBQ0kscUJBQ0EsZWhCZzFxQkosQ2dCOTBxQkEseUZBSUUsbUJBREEsK0JoQmkxcUJGLENnQjkwcUJBLCtCQUNFLGFoQmcxcUJGLENLNTlyQkMsa0RXa3FCRyx5QkFDQSxxQkFDQSx3QmhCaTBxQkosQ0tyK3JCQyxnRVd5cUJHLHlCQUNBLHFCQUNBLFVoQmkwcUJKLENLNStyQkMsK0JXK3FCRyxvQmhCaTBxQkosQ0toL3JCQyw4RFdvckJHLHFCQUNBLHFCQUNBLGFoQmkwcUJKLENLdi9yQkMsNEVXMHJCRyxxQkFDQSxxQkFDQSxhaEJpMHFCSixDSzcvckJDLG9FV2lzQkcseUJBQ0EscUJBQ0EsYWhCaTBxQkosQ0twZ3NCQyxrRld3c0JHLHlCQUNBLHFCQUVFLGFoQmcwcUJOLENLM2dzQkMsd0NXbXRCRyxvQmhCNHpxQkosQ0svZ3NCQyxnRld3dEJHLHlCQUNBLHFCQUVFLGFoQjJ6cUJOLENLdGhzQkMsOEZXb3VCRyx5QkFEQSxxQkFHRSxhaEJzenFCTixDSzVoc0JDLHdGVzR1Qkcsd0JoQnF6cUJKLENLamlzQkMsc0dXbXZCRyx5QkFIQSxvQkFBcUIsQ0FFckIsb0JBQXFCLENBRHJCLHlCQUdBLHNCaEJxenFCSixDS3ppc0JDLHNEV2txQkcseUJBQ0EscUJBQ0Esd0JoQjI0cUJKLENLL2lzQkMsb0VXeXFCRyx5QkFDQSxxQkFDQSxVaEIyNHFCSixDS3Rqc0JDLGlDVytxQkcsb0JoQjI0cUJKLENLMWpzQkMsa0VXb3JCRyxxQkFDQSxxQkFDQSxhaEIyNHFCSixDS2prc0JDLGdGVzByQkcscUJBQ0EscUJBQ0EsYWhCMjRxQkosQ0t2a3NCQyx3RVdpc0JHLHlCQUNBLHFCQUNBLGFoQjI0cUJKLENLOWtzQkMsc0ZXd3NCRyx5QkFDQSxxQkFFRSxhaEIwNHFCTixDS3Jsc0JDLDBDV210Qkcsb0JoQnM0cUJKLENLemxzQkMsb0ZXd3RCRyx5QkFDQSxxQkFFRSxhaEJxNHFCTixDS2htc0JDLGtHV291QkcseUJBREEscUJBR0UsYWhCZzRxQk4sQ0t0bXNCQyw0Rlc0dUJHLHdCaEIrM3FCSixDSzNtc0JDLDBHV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCKzNxQkosQ0tubnNCQywwQ1drcUJHLHlCQUNBLHFCQUNBLFVoQnE5cUJKLENLem5zQkMsd0RXeXFCRyx5QkFDQSxxQkFDQSxVaEJxOXFCSixDS2hvc0JDLDJCVytxQkcsb0JoQnE5cUJKLENLcG9zQkMsc0RXb3JCRyxxQkFDQSxxQkFDQSxhaEJxOXFCSixDSzNvc0JDLG9FVzByQkcscUJBQ0EscUJBQ0EsYWhCcTlxQkosQ0tqcHNCQyw0RFdpc0JHLHlCQUNBLHFCQUNBLGFoQnE5cUJKLENLeHBzQkMsMEVXd3NCRyx5QkFDQSxxQkFFRSxhaEJvOXFCTixDSy9wc0JDLG9DV210Qkcsb0JoQmc5cUJKLENLbnFzQkMsd0VXd3RCRyx5QkFDQSxxQkFFRSxhaEIrOHFCTixDSzFxc0JDLHNGV291QkcseUJBREEscUJBR0UsYWhCMDhxQk4sQ0tocnNCQyxnRlc0dUJHLHdCaEJ5OHFCSixDS3Jyc0JDLDhGV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCeThxQkosQ0s3cnNCQyxnRFdrcUJHLHlCQUNBLHFCQUNBLFVoQitockJKLENLbnNzQkMsOERXeXFCRyx5QkFDQSxxQkFDQSxVaEIraHJCSixDSzFzc0JDLDhCVytxQkcsb0JoQitockJKLENLOXNzQkMsNERXb3JCRyxxQkFDQSxxQkFDQSxhaEIraHJCSixDS3J0c0JDLDBFVzByQkcscUJBQ0EscUJBQ0EsYWhCK2hyQkosQ0szdHNCQyxrRVdpc0JHLHlCQUNBLHFCQUNBLGFoQitockJKLENLbHVzQkMsZ0ZXd3NCRyx5QkFDQSxxQkFFRSxhaEI4aHJCTixDS3p1c0JDLHVDV210Qkcsb0JoQjBockJKLENLN3VzQkMsOEVXd3RCRyx5QkFDQSxxQkFFRSxhaEJ5aHJCTixDS3B2c0JDLDRGV291QkcseUJBREEscUJBR0UsYWhCb2hyQk4sQ0sxdnNCQyxzRlc0dUJHLHdCaEJtaHJCSixDSy92c0JDLG9HV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCbWhyQkosQ0t2d3NCQyxnRFdrcUJHLHlCQUNBLHFCQUNBLFVoQnltckJKLENLN3dzQkMsOERXeXFCRyx5QkFDQSxxQkFDQSxVaEJ5bXJCSixDS3B4c0JDLDhCVytxQkcsb0JoQnltckJKLENLeHhzQkMsNERXb3JCRyxxQkFDQSxxQkFDQSxhaEJ5bXJCSixDSy94c0JDLDBFVzByQkcscUJBQ0EscUJBQ0EsYWhCeW1yQkosQ0tyeXNCQyxrRVdpc0JHLHlCQUNBLHFCQUNBLGFoQnltckJKLENLNXlzQkMsZ0ZXd3NCRyx5QkFDQSxxQkFFRSxhaEJ3bXJCTixDS256c0JDLHVDV210Qkcsb0JoQm9tckJKLENLdnpzQkMsOEVXd3RCRyx5QkFDQSxxQkFFRSxhaEJtbXJCTixDSzl6c0JDLDRGV291QkcseUJBREEscUJBR0UsYWhCOGxyQk4sQ0twMHNCQyxzRlc0dUJHLHdCaEI2bHJCSixDS3owc0JDLG9HV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCNmxyQkosQ0tqMXNCQyw4Q1drcUJHLHlCQUNBLHFCQUNBLFVoQm1yckJKLENLdjFzQkMsNERXeXFCRyx5QkFDQSxxQkFDQSxVaEJtcnJCSixDSzkxc0JDLDZCVytxQkcsb0JoQm1yckJKLENLbDJzQkMsMERXb3JCRyxxQkFDQSxxQkFDQSxhaEJtcnJCSixDS3oyc0JDLHdFVzByQkcscUJBQ0EscUJBQ0EsYWhCbXJyQkosQ0svMnNCQyxnRVdpc0JHLHlCQUNBLHFCQUNBLGFoQm1yckJKLENLdDNzQkMsOEVXd3NCRyx5QkFDQSxxQkFFRSxhaEJrcnJCTixDSzczc0JDLHNDV210Qkcsb0JoQjhxckJKLENLajRzQkMsNEVXd3RCRyx5QkFDQSxxQkFFRSxhaEI2cXJCTixDS3g0c0JDLDBGV291QkcseUJBREEscUJBR0UsYWhCd3FyQk4sQ0s5NHNCQyxvRlc0dUJHLHdCaEJ1cXJCSixDS241c0JDLGtHV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCdXFyQkosQ0szNXNCQyw4Q1drcUJHLHlCQUNBLHFCQUNBLFVoQjZ2ckJKLENLajZzQkMsNERXeXFCRyx5QkFDQSxxQkFDQSxVaEI2dnJCSixDS3g2c0JDLDZCVytxQkcsb0JoQjZ2ckJKLENLNTZzQkMsMERXb3JCRyxxQkFDQSxxQkFDQSxhaEI2dnJCSixDS243c0JDLHdFVzByQkcscUJBQ0EscUJBQ0EsYWhCNnZyQkosQ0t6N3NCQyxnRVdpc0JHLHlCQUNBLHFCQUNBLGFoQjZ2ckJKLENLaDhzQkMsOEVXd3NCRyx5QkFDQSxxQkFFRSxhaEI0dnJCTixDS3Y4c0JDLHNDV210Qkcsb0JoQnd2ckJKLENLMzhzQkMsNEVXd3RCRyx5QkFDQSxxQkFFRSxhaEJ1dnJCTixDS2w5c0JDLDBGV291QkcseUJBREEscUJBR0UsYWhCa3ZyQk4sQ0t4OXNCQyxvRlc0dUJHLHdCaEJpdnJCSixDSzc5c0JDLGtHV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCaXZyQkosQ0tyK3NCQyw0Q1drcUJHLHlCQUNBLHFCQUNBLFVoQnUwckJKLENLMytzQkMsMERXeXFCRyx5QkFDQSxxQkFDQSxVaEJ1MHJCSixDS2wvc0JDLDRCVytxQkcsb0JoQnUwckJKLENLdC9zQkMsd0RXb3JCRyxxQkFDQSxxQkFDQSxhaEJ1MHJCSixDSzcvc0JDLHNFVzByQkcscUJBQ0EscUJBQ0EsYWhCdTByQkosQ0tuZ3RCQyw4RFdpc0JHLHlCQUNBLHFCQUNBLGFoQnUwckJKLENLMWd0QkMsNEVXd3NCRyx5QkFDQSxxQkFFRSxhaEJzMHJCTixDS2podEJDLHFDV210Qkcsb0JoQmswckJKLENLcmh0QkMsMEVXd3RCRyx5QkFDQSxxQkFFRSxhaEJpMHJCTixDSzVodEJDLHdGV291QkcseUJBREEscUJBR0UsYWhCNHpyQk4sQ0tsaXRCQyxrRlc0dUJHLHdCaEIyenJCSixDS3ZpdEJDLGdHV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCMnpyQkosQ0svaXRCQyw0Q1drcUJHLHlCQUNBLHFCQUNBLFVoQmk1ckJKLENLcmp0QkMsMERXeXFCRyx5QkFDQSxxQkFDQSxVaEJpNXJCSixDSzVqdEJDLDRCVytxQkcsb0JoQmk1ckJKLENLaGt0QkMsd0RXb3JCRyxxQkFDQSxxQkFDQSxhaEJpNXJCSixDS3ZrdEJDLHNFVzByQkcscUJBQ0EscUJBQ0EsYWhCaTVyQkosQ0s3a3RCQyw4RFdpc0JHLHlCQUNBLHFCQUNBLGFoQmk1ckJKLENLcGx0QkMsNEVXd3NCRyx5QkFDQSxxQkFFRSxhaEJnNXJCTixDSzNsdEJDLHFDV210Qkcsb0JoQjQ0ckJKLENLL2x0QkMsMEVXd3RCRyx5QkFDQSxxQkFFRSxhaEIyNHJCTixDS3RtdEJDLHdGV291QkcseUJBREEscUJBR0UsYWhCczRyQk4sQ0s1bXRCQyxrRlc0dUJHLHdCaEJxNHJCSixDS2pudEJDLGdHV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCcTRyQkosQ0t6bnRCQyxnRFdrcUJHLHlCQUNBLHFCQUNBLFVoQjI5ckJKLENLL250QkMsOERXeXFCRyx5QkFDQSxxQkFDQSxVaEIyOXJCSixDS3RvdEJDLDhCVytxQkcsb0JoQjI5ckJKLENLMW90QkMsNERXb3JCRyxxQkFDQSxxQkFDQSxhaEIyOXJCSixDS2pwdEJDLDBFVzByQkcscUJBQ0EscUJBQ0EsYWhCMjlyQkosQ0t2cHRCQyxrRVdpc0JHLHlCQUNBLHFCQUNBLGFoQjI5ckJKLENLOXB0QkMsZ0ZXd3NCRyx5QkFDQSxxQkFFRSxhaEIwOXJCTixDS3JxdEJDLHVDV210Qkcsb0JoQnM5ckJKLENLenF0QkMsOEVXd3RCRyx5QkFDQSxxQkFFRSxhaEJxOXJCTixDS2hydEJDLDRGV291QkcseUJBREEscUJBR0UsYWhCZzlyQk4sQ0t0cnRCQyxzRlc0dUJHLHdCaEIrOHJCSixDSzNydEJDLG9HV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCKzhyQkosQ0tuc3RCQyxnRFdrcUJHLHlCQUNBLHFCQUNBLFVoQnFpc0JKLENLenN0QkMsOERXeXFCRyx5QkFDQSxxQkFDQSxVaEJxaXNCSixDS2h0dEJDLDhCVytxQkcsb0JoQnFpc0JKLENLcHR0QkMsNERXb3JCRyxxQkFDQSxxQkFDQSxhaEJxaXNCSixDSzN0dEJDLDBFVzByQkcscUJBQ0EscUJBQ0EsYWhCcWlzQkosQ0tqdXRCQyxrRVdpc0JHLHlCQUNBLHFCQUNBLGFoQnFpc0JKLENLeHV0QkMsZ0ZXd3NCRyx5QkFDQSxxQkFFRSxhaEJvaXNCTixDSy91dEJDLHVDV210Qkcsb0JoQmdpc0JKLENLbnZ0QkMsOEVXd3RCRyx5QkFDQSxxQkFFRSxhaEIraHNCTixDSzF2dEJDLDRGV291QkcseUJBREEscUJBR0UsYWhCMGhzQk4sQ0tod3RCQyxzRlc0dUJHLHdCaEJ5aHNCSixDS3J3dEJDLG9HV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCeWhzQkosQ0s3d3RCQyw0Q1drcUJHLHlCQUNBLHFCQUNBLFVoQittc0JKLENLbnh0QkMsMERXeXFCRyx5QkFDQSxxQkFDQSxVaEIrbXNCSixDSzF4dEJDLDRCVytxQkcsb0JoQittc0JKLENLOXh0QkMsd0RXb3JCRyxxQkFDQSxxQkFDQSxhaEIrbXNCSixDS3J5dEJDLHNFVzByQkcscUJBQ0EscUJBQ0EsYWhCK21zQkosQ0szeXRCQyw4RFdpc0JHLHlCQUNBLHFCQUNBLGFoQittc0JKLENLbHp0QkMsNEVXd3NCRyx5QkFDQSxxQkFFRSxhaEI4bXNCTixDS3p6dEJDLHFDV210Qkcsb0JoQjBtc0JKLENLN3p0QkMsMEVXd3RCRyx5QkFDQSxxQkFFRSxhaEJ5bXNCTixDS3AwdEJDLHdGV291QkcseUJBREEscUJBR0UsYWhCb21zQk4sQ0sxMHRCQyxrRlc0dUJHLHdCaEJtbXNCSixDSy8wdEJDLGdHV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCbW1zQkosQ0t2MXRCQyw4Q1drcUJHLHlCQUNBLHFCQUNBLFVoQnlyc0JKLENLNzF0QkMsNERXeXFCRyx5QkFDQSxxQkFDQSxVaEJ5cnNCSixDS3AydEJDLDZCVytxQkcsb0JoQnlyc0JKLENLeDJ0QkMsMERXb3JCRyxxQkFDQSxxQkFDQSxhaEJ5cnNCSixDSy8ydEJDLHdFVzByQkcscUJBQ0EscUJBQ0EsYWhCeXJzQkosQ0tyM3RCQyxnRVdpc0JHLHlCQUNBLHFCQUNBLGFoQnlyc0JKLENLNTN0QkMsOEVXd3NCRyx5QkFDQSxxQkFFRSxhaEJ3cnNCTixDS240dEJDLHNDV210Qkcsb0JoQm9yc0JKLENLdjR0QkMsNEVXd3RCRyx5QkFDQSxxQkFFRSxhaEJtcnNCTixDSzk0dEJDLDBGV291QkcseUJBREEscUJBR0UsYWhCOHFzQk4sQ0twNXRCQyxvRlc0dUJHLHdCaEI2cXNCSixDS3o1dEJDLGtHV212QkcseUJBSEEsb0JBQXFCLENBRXJCLG9CQUFxQixDQURyQix5QkFHQSxzQmhCNnFzQkosQ0tqNnRCQyw0Q1drcUJHLHlCQUNBLHFCQUNBLFVoQm13c0JKLENLdjZ0QkMsMERXeXFCRyx5QkFDQSxxQkFDQSxVaEJtd3NCSixDSzk2dEJDLDRCVytxQkcsb0JoQm13c0JKLENLbDd0QkMsd0RXb3JCRyxxQkFDQSxxQkFDQSxhaEJtd3NCSixDS3o3dEJDLHNFVzByQkcscUJBQ0EscUJBQ0EsYWhCbXdzQkosQ0svN3RCQyw4RFdpc0JHLHlCQUNBLHFCQUNBLGFoQm13c0JKLENLdDh0QkMsNEVXd3NCRyx5QkFDQSxxQkFLRSxVaEIrdnNCTixDSzc4dEJDLHFDV210Qkcsb0JoQjh2c0JKLENLajl0QkMsMEVXd3RCRyx5QkFDQSxxQkFLRSx3QmhCMHZzQk4sQ0t4OXRCQyx3RldvdUJHLHlCQURBLG9CaEIwdnNCSixDSzc5dEJDLGtGVzR1Qkcsd0JoQnN2c0JKLENLbCt0QkMsZ0dXbXZCRyx5QkFIQSxvQkFBcUIsQ0FFckIsb0JBQXFCLENBRHJCLHlCQUdBLHNCaEJzdnNCSixDSzErdEJDLDhDV2txQkcseUJBQ0EscUJBQ0EsVWhCNDBzQkosQ0toL3RCQyw0RFd5cUJHLHlCQUNBLHFCQUNBLFVoQjQwc0JKLENLdi90QkMsNkJXK3FCRyxvQmhCNDBzQkosQ0szL3RCQywwRFdvckJHLHFCQUNBLHFCQUNBLGFoQjQwc0JKLENLbGd1QkMsd0VXMHJCRyxxQkFDQSxxQkFDQSxhaEI0MHNCSixDS3hndUJDLGdFV2lzQkcseUJBQ0EscUJBQ0EsYWhCNDBzQkosQ0svZ3VCQyw4RVd3c0JHLHNCQUNBLGtCQUtFLFVoQncwc0JOLENLdGh1QkMsc0NXbXRCRyxvQmhCdTBzQkosQ0sxaHVCQyw0RVd3dEJHLHlCQUNBLHFCQUtFLHdCaEJtMHNCTixDS2ppdUJDLDBGV291QkcseUJBREEsaUJoQm0wc0JKLENLdGl1QkMsb0ZXNHVCRyx3QmhCK3pzQkosQ0szaXVCQyxrR1dtdkJHLHlCQUhBLG9CQUFxQixDQUVyQixvQkFBcUIsQ0FEckIseUJBR0Esc0JoQit6c0JKLENnQnZ6c0JBLGtEQUVFLGtCQUdBLGNBREEsb0JBRUEsaUJoQjJ6c0JGLENnQm56c0JBLDhDQVNFLHFCQUZBLGVBQWdCLENBSmhCLGVBREEsY0FHQSx1QkFHQSxpQmhCdXpzQkYsQ2dCcHpzQkEsMERBTUUsWUFIQSxZQUFhLENBRGIsV0FBWSxDQUVaLGVBQWdCLENBR2hCLHVCQUF3QixDQUZ4QixVaEJ3enNCRixDZ0IveXNCQSxtQkFDRSxpQmhCb3pzQkYsQ2dCanpzQkEsNEJBQ0UsaUJoQm16c0JGLENnQmh6c0JBLDBCQUNFLHdCQUF5QixDQUN6Qix3QkFBeUIsQ0FVekIscUJBQXNCLENBUHRCLG9DQUtBLFVBQVcsQ0FNWCxlQVBBLGlCQUFrQixDQUVsQix1QkFBd0IsQ0FNeEIsZ0JBRkEsY0FEQSxTaEJ5eXNCRixDZ0JseXNCQSxzREFFRSxjaEJnenNCRixDZ0I5eXNCQSxvRUFFRSx5QkFHQSxRQUFTLENBRFQsS0FBTSxDQUROLHlEaEJrenNCRixDZ0I3eXNCQSx1RUFHRSxrQkFEQSxZaEJpenNCRixDZ0I5eXNCQSxxRkFFRSx5QkFLQSxRQUFTLENBSFQsVUFBVyxDQURYLFFBQVMsQ0FHVCxRQUFTLENBRFQseURoQmt6c0JGLENnQjd5c0JBLGtDQUVFLG9CQURBLFloQml6c0JGLENnQjl5c0JBLHlDQUNFLHlCQUVBLFdBQVksQ0FHWixNQUFPLENBRlAsVUFBVyxDQUNYLE9BQVEsQ0FIUix5RGhCb3pzQkYsQ2dCN3lzQkEsbUNBRUUscUJBREEsWWhCaXpzQkYsQ2dCOXlzQkEsMENBQ0UseUJBSUEsV0FBWSxDQUNaLFNBQVUsQ0FGVixPQUFRLENBRFIsT0FBUSxDQURSLHdEaEJvenNCRixDZ0IxeXNCQSxnRkFFRSxlaEI4eXNCRixDZ0IzeXNCQSxpR0FFRSxXQUFZLENBRVosZUFEQSxRaEIreXNCRixDZ0IzeXNCQSwrQ0FFRSxVQURBLE9oQit5c0JGLENnQjN5c0JBLGdEQUVFLFdBREEsT2hCK3lzQkYsQ2dCdHlzQkEsbUJBQ0UsaUJBQWtCLENBR2xCLE9BQVEsQ0FEUixTQUdBLHlCQUEwQixDQUQxQixrQkFBbUIsQ0FIbkIsV2hCK3lzQkYsQ2dCenlzQkEsaUNBQ0UsMkJoQjJ5c0JGLENnQnp5c0JBLHdCQUNFLE9BQ0EsV0FDQSwwQmhCMnlzQkYsQ2dCenlzQkEsZ0NBQ0UsNEJoQjJ5c0JGLENnQnp5c0JBLDBCQUVFLFlBREEsUWhCNHlzQkYsQ2dCcHlzQkEsc0NBRUUsc0JoQnl5c0JGLENnQnZ5c0JBLHNDQUVFLHNCaEJ5eXNCRixDZ0J2eXNCQSx3Q0FFRSxzQmhCeXlzQkYsQ2dCdnlzQkEsNEJBRUUsc0JoQnl5c0JGLENnQnZ5c0JBLHdDQUVFLGNoQnl5c0JGLENnQnZ5c0JBLG9DQUVFLHVCaEJ5eXNCRixDZ0J2eXNCQSxzQ0FFRSx1QmhCeXlzQkYsQ2dCdnlzQkEsNENBRUUsdUJoQnl5c0JGO0FBT0E7Ozs7Ozs7O0VBUUUsQ2lCOXV1QkYsK0JBR0UscUJBQ0EsYUFDQSxTakJtK3ZCRixDaUJoK3ZCQSxtRUFHRSxZQUFhLENBQ2IsYWpCayt2QkYsQ2lCLzl2QkEsZ0VBR0UsZUFBZ0IsQ0FDaEIsZ0JqQmkrdkJGLENpQno5dkJBLGdFQUlFLGlCQUFrQixDQU1sQix5QkFIQSw0QkFEQSxxQkFHQSxzQkFKQSxrQmpCbSt2QkYsQ2lCMzl2QkEsZ0hBT0UsVUFBVyxDQUhYLFVBQVcsQ0FDWCxhQUFjLENBQ2QsUUFBUyxDQUVULGlCakI2OXZCRixDaUIxOXZCQSxnSEFJRSxhakI0OXZCRixDaUIxOXZCQSw0R0FJRSxnQmpCNDl2QkYsQ2lCeDl2QkEsc0RBR0UsVUFBVyxDQUNYLFFBQVMsQ0FDVCwwQmpCMjl2QkYsQ2lCdjl2QkEsdURBSUUsb0JBREEscUJqQjI5dkJGLENpQnI5dkJBLGtEQUVFLGtCQUFtQixDQUVuQixRQUFTLENBRFQsZ0JBQWlCLENBRWpCLGNBQ0EseUJqQnc5dkJGLENpQnY5dkJFLDhFQUNFLDBCQUNBLGtCakIwOXZCSixDaUJ2OXZCQSx3RUFFRSxvQkFBcUIsQ0FDckIsY0FBZSxDQUNmLGtCakJ5OXZCRixDaUJwOXZCQSxrREFHRSw0QkFBNkIsQ0FEN0Isa0JBQW1CLENBRW5CLFFBQVMsQ0FDVCxrQmpCdTl2QkYsQ2lCcjl2QkEsc0dBRUUsa0JqQnU5dkJGLENpQnI5dkJBLDBEQUVFLGtCakJ1OXZCRixDaUJwOXZCQSxnSUFJRSxvQmpCczl2QkYsQ2lCbDl2QkEsc0RBR0Usc0JBREEsd0JqQnM5dkJGLENpQm45dkJBLHNJQUlFLGtCQUFtQixDQUVuQixtQkFDQSxtQkFGQSxVakJ1OXZCRixDaUJuOXZCQSxrRkFFRSxxQmpCcTl2QkYsQ2lCbjl2QkEsMEVBRUUsb0JBQXFCLENBQ3JCLFVqQnE5dkJGLENpQm45dkJBLGtFQUVFLGFBQWMsQ0FDZCxjakJxOXZCRixDaUJqOXZCQSxvREFNRSxzQkFKQSxhQUFjLENBRWQsMkRBQ0EsZ0JBRkEsUWpCdTl2QkYsQ2lCaDl2QkEsOERBR0UscUJBREEsYWpCbzl2QkYsQ2lCLzh2QkEsd0NBRUUsY2pCazl2QkYsQ2lCOTh2QkEsc0NBR0UsY0FEQSxjakJrOXZCRixDaUIvOHZCQSxrREFFRSxhakJpOXZCRixDaUI3OHZCQSxvREFFRSxvQmpCZzl2QkYsQ2lCNTh2QkEsc0RBR0Usd0JBREEsY2pCZzl2QkYsQ2lCNzh2QkEsa0VBRUUsdUJqQis4dkJGLENpQjM4dkJBLGdDQUNFLFVqQjg4dkJGLENpQjU4dkJBLGlDQUNFLFdqQjg4dkJGLENpQjM4dkJBLG9GQUVFLFVBQVcsQ0FDWCxnQmpCNjh2QkYsQ2lCMzh2QkEsc0ZBRUUsV0FBWSxDQUNaLGdCakI2OHZCRixDaUJ0OHZCQSxzREFJRSw0QkFBNkIsQ0FGN0IsaUJBQWtCLENBUWxCLHlCQUhBLDRCQURBLHFCQUdBLHNCQU5BLGtCakJnOXZCRixDaUJ2OHZCQSxvRUFHRSxlQUFnQixDQURoQixXakIwOHZCRixDaUJ2OHZCQSw4RUFFRSxhakJ5OHZCRixDaUJ2OHZCQSw0RUFFRSxnQmpCeTh2QkYsQ2lCNzd2QkEsb0JBQ0Usb0JBQXFCLENBQ3JCLFdqQnE4dkJGLENpQm44dkJBLDBCQUNFLG9CQUFxQixDQUVyQixjQUFlLENBRGYsZ0JqQnM4dkJGLENpQm44dkJBLGtEQUNFLGNBQWUsQ0FDZixlakJxOHZCRixDaUJuOHZCQSxxQ0FFRSxnQkFBaUIsQ0FEakIsY2pCczh2QkYsQ2lCbDh2QkEsME5BTUUscUJqQm84dkJGLENpQmg4dkJBLDJFQUdFLDJCQURBLHVCakJvOHZCRixDaUIvN3ZCQSxpQ0FDRSxRQUFTLENBQ1QsbUJqQms4dkJGLENpQmg4dkJBLG1IQUlFLG9CQUFxQixDQURyQixVQUFXLENBRVgsVWpCazh2QkYsQ2lCaDh2QkEsaUNBQ0Usb0JqQms4dkJGLENpQnY3dkJBLHNEQUdFLGtDQURBLG1CakJnOHZCRixDaUI3N3ZCQSx3RUFFRSxpQ2pCKzd2QkYsQ2lCeDd2QkEsOERBRUUscUJqQjY3dkJGLENpQmo3dkJBLG9FQUVFLHdCakJ5N3ZCRixDaUJ2N3ZCQSxzRUFFRSx3QmpCeTd2QkYsQ2lCbjd2QkEsd0pBRUUsd0JqQnk3dkJGLENpQnQ3dkJBLHdEQUdFLHlCQURBLGNqQjA3dkJGLENpQnY3dkJBLG9FQUVFLGFqQnk3dkJGLENpQnA3dkJBLG1DQUNFLGtDakJ1N3ZCRixDaUJyN3ZCQSx5Q0FDRSx1QmpCdTd2QkYsQ2lCaDd2QkEsOEdBR0UsNEJqQnE3dkJGLENpQm43dkJBLHVIQUdFLCtCakJxN3ZCRixDaUJuN3ZCQSx1SEFHRSwrQmpCcTd2QkYsQ2lCOTZ2QkEsd0VBR0UscUJBQ0EseUJqQm03dkJGLENpQmo3dkJBLDBFQUVFLG9CakJtN3ZCRixDaUJqN3ZCQSw0RUFFRSxvQmpCbTd2QkYsQ2lCajd2QkEsMkVBRUUscUJqQm03dkJGLENpQi82dkJBLG1HQUdFLHdCakJrN3ZCRixDaUJ4NnZCQSx3UkFFRSxVakJrN3ZCRixDaUIzNnZCQSx3REFHRSx1QkFJQSxtQkFEQSxxQkFKQSxjQUFlLENBR2YsU0FEQSxhQUlBLHlFakJnN3ZCRixDaUI5NnZCQSw4RUFFRSxlakJnN3ZCRixDaUI5NnZCQSxvRUFFRSwyQkFDQSxvQmpCZzd2QkYsQ2lCOTZ2QkEsc0VBRUUsMkJBQ0Esb0JqQmc3dkJGLENpQjk2dkJBLHNFQUVFLDJCQUNBLHFCakJnN3ZCRixDaUI1NnZCQSxrQ0FDRSx1QkFDQSx3QmpCKzZ2QkYsQ2lCNzZ2QkEsd0NBQ0UsK0JBQ0EsVWpCKzZ2QkYsQ2lCejZ2QkEsa0ZBSEUsK0JBQ0EsVWpCbTd2QkYsQ2lCMzZ2QkEsOElBSUUsZWpCODZ2QkYsQ2lCdjZ2QkEsd0JBQ0Usd0ZqQjQ2dkJGLENpQjE2dkJBLCtDQUNFLGdCakI0NnZCRixDaUJ0NnZCQSxrRkFFRSxjQUFlLENBQ2YsZWpCMjZ2QkYsQ2lCejZ2QkEsc0VBRUUsa0JBQ0Esa0JqQjI2dkJGLENpQnA2dkJBLDZCQUVFLG1CakJ5NnZCRixDaUJ2NnZCQSxvRUFHRSxpQmpCeTZ2QkYsQ2lCdjZ2QkEseUZBWUUsY0FGQSxZQUZBLGdCQURBLFNBQVUsQ0FFVixxQkFFQSxVQVBBLG1CQUFvQixDQUNwQixpQkFBa0IsQ0FDbEIsUUFBUyxDQUhULGdCQUFpQixDQVVqQixrQmpCeTZ2QkYsQ2lCdDZ2QkEsMkZBR0UscUJqQnc2dkJGLENpQnI2dkJBLGlEQUVFLG9CakJ1NnZCRixDaUJuNnZCQSw0REFFRSxhakJzNnZCRixDaUJwNnZCQSxxRUFFRSxtQmpCczZ2QkYsQ2lCcDZ2QkEsNkZBRUUsYWpCczZ2QkYsQ2lCcDZ2QkEsbUZBRUUscUJqQnM2dkJGLENpQnA2dkJBLDJHQUVFLFlqQnM2dkJGLENpQi81dkJBLDRFQUlFLHFCQUFzQixDQUV0QixvQkFBcUIsQ0FEckIsbUJqQnE2dkJGLENpQmw2dkJBLGtFQUdFLG9CQUFxQixDQUNyQixpQmpCbzZ2QkYsQ2lCbDZ2QkEsdUZBWUUsc0JBRkEsa0NBREEsMEJBSkEsU0FBVSxDQUdWLHFCQU1BLFdBUEEsbUJBQW9CLENBSnBCLGlCQUFrQixDQVFsQixpQkFQQSxRQUFTLENBRVQsZ0JBQWlCLENBT2pCLHFCakJxNnZCRixDaUJqNnZCQSxrSEFHRSx3QmpCbTZ2QkYsQ2lCLzV2QkEsMEZBRUUsd0JqQms2dkJGLENpQmg2dkJBLDRCQUNFLG1CakJrNnZCRixDaUI5NXZCQSxnREFFRSxlakJpNnZCRixDaUIvNXZCQSw0REFFRSxnQmpCaTZ2QkYsQ2lCNzV2QkEsa0RBRUUsYWpCZzZ2QkYsQ2lCOTV2QkEsd0hBSUUsa0JBREEsZWpCaTZ2QkYsQ2lCNTV2QkEsa0hBR0UsaUNqQis1dkJGLENpQnY1dkJBLHVCQUNFLHVDakI0NXZCRixDaUJwNXZCQSw0SUFFRSxlakI0NXZCRixDaUJ4NXZCQSwwREFDRSxvQmpCMjV2QkYsQ2lCdjV2QkEsc0ZBRUUsYUFBYyxDQUNkLGNqQjA1dkJGLENpQng1dkJBLGlEQUNFLG9CakIwNXZCRixDaUJ0NXZCQSx5QkFDRSxhakJ5NXZCRixDaUJ2NXZCQSxvRUFFRSxvQmpCeTV2QkYsQ2lCdjV2QkEsZ0RBQ0UsYUFBYyxDQUNkLGNBQWUsQ0FDZiwwQmpCeTV2QkYsQ2lCdjV2QkEsMkNBQ0UsZ0JqQnk1dkJGLENpQnI1dkJBLHdFQUdFLGVBQWdCLENBRGhCLFFqQnk1dkJGLENpQnA1dkJBLDRCQUNFLGFqQnU1dkJGLENpQnI1dkJBLGtDQUNFLGlCakJ1NXZCRixDaUJyNXZCQSxtREFDRSxrQmpCdTV2QkYsQ2lCcjV2QkEsa0NBRUUsMENBREEsZUFBZ0IsQ0FHaEIsZUFEQSxRakJ3NXZCRixDaUJyNXZCQSw2Q0FDRSxpQmpCdTV2QkYsQ2lCcDV2QkEsMkdBR0UsK0JqQnU1dkJGLENpQi80dkJBLDRDQUVFLHdDQUNBLGtCQUNBLGtCakJvNXZCRixDaUJsNXZCQSxpQ0FDRSwwQ2pCbzV2QkYsQ2lCaDV2QkEsbUVBR0UsMkJBREEsdUJqQm81dkJGLENpQi80dkJBLGtDQUNFLGNqQms1dkJGLENpQmg1dkJBLHdDQUNFLGtCakJrNXZCRixDaUI5NHZCQSx5QkFDRSxhakJpNXZCRixDaUIvNHZCQSxvRUFFRSxvQmpCaTV2QkYsQ2lCLzR2QkEsZ0RBQ0UscUJBQ0Esc0JBQ0EsMEJqQmk1dkJGLENpQjc0dkJBLHdCQUNFLGFqQmc1dkJGLENpQjk0dkJBLGtFQUVFLG9CakJnNXZCRixDaUI5NHZCQSwrQ0FDRSxhQUFjLENBQ2QsY0FBZSxDQUNmLDBCakJnNXZCRixDaUI5NHZCQSxvQ0FDRSxnQmpCZzV2QkYsQ2lCNTR2QkEsMkJBQ0UsYWpCKzR2QkYsQ2lCNzR2QkEsd0VBR0UseUNBREEsZUFBZ0IsQ0FNaEIsZUFKQSxRQUFTLENBQ1Qsa0JBQ0Esa0JqQmc1dkJGLENpQjU0dkJBLDhGQUVFLGtCQUFtQixDQUNuQix5Q2pCODR2QkYsQ2lCdDR2QkEsd0pBRUUsK0JqQjY0dkJGLENpQnQ0dkJBLDBEQUNFLHVCakIyNHZCRixDaUJ6NHZCQSx5REFDRSwwQmpCMjR2QkYsQ2lCejR2QkEsOEdBRUUsaUJqQjI0dkJGLENpQno0dkJBLDRHQUVFLGtCakIyNHZCRixDaUJ2NHZCQSx5RUFDRSx1QmpCMDR2QkYsQ2lCeDR2QkEsd0VBQ0UsMEJqQjA0dkJGLENpQng0dkJBLDRJQUVFLG1CakIwNHZCRixDaUJ4NHZCQSwwSUFFRSxvQmpCMDR2QkYsQ2lCbjR2QkEsY0FDRSxxQmpCdzR2QkYsQ2lCdDR2QkEsY0FDRSxxQmpCdzR2QkYsQ2lCdDR2QkEsZUFDRSxxQmpCdzR2QkYsQ2lCdDR2QkEsU0FDRSxhakJ3NHZCRixDaUJ0NHZCQSxlQUNFLHNCakJ3NHZCRixDaUJ0NHZCQSxhQUNFLHNCakJ3NHZCRixDaUJ0NHZCQSxjQUNFLHNCakJ3NHZCRixDaUJ0NHZCQSxpQkFDRSxzQmpCdzR2QkYsQ2lCcjR2QkEsb0VBRUUsc0JqQnU0dkJGLENpQnI0dkJBLG9FQUVFLHNCakJ1NHZCRixDaUJyNHZCQSxzRUFFRSxzQmpCdTR2QkYsQ2lCcjR2QkEsMERBRUUsY2pCdTR2QkYsQ2lCcjR2QkEsc0VBRUUsdUJqQnU0dkJGLENpQnI0dkJBLGtFQUVFLHVCakJ1NHZCRixDaUJyNHZCQSxvRUFFRSx1QmpCdTR2QkYsQ2lCcjR2QkEsMEVBRUUsdUJqQnU0dkJGO0FBT0E7Ozs7Ozs7O0VBUUUsQ2tCdDB4QkYsV0FDRSxZQUFhLENBR2IsU0FDQSxRQUFTLENBSFQsaUJBQWtCLENBSWxCLGlCQUFrQixDQUhsQixRQUtBLDJDQUE0QyxDQUQ1QyxZbEJxZ3pCRixDa0JoZ3pCQSxrQkFTRSxpQ0FEQSxvQmxCbWd6QkYsQ2tCOS95QkEsbUNBWEUsVUFBVyxDQUlYLFdBQVksQ0FGWixRQUFTLENBSFQsaUJBQWtCLENBRWxCLEtBQU0sQ0FFTixVbEJtaHpCRixDa0IzZ3pCQSxpQkFRRSxxQ0FDQSwwQkFDQSxxQkFFQSxnQ2xCKy95QkYsQ2tCMS95QkEsd0lBSUUsc0JsQjYveUJGLENrQjEveUJBLHdJQUlFLHNCbEI0L3lCRixDa0J4L3lCQSxrQkFDRSxHQUNFLHVCbEIyL3lCRixDQUNGLENrQnYveUJBLDZDQUdFLFlBQ0Esb0JBRkEsVWxCNC95QkYsQ2tCeC95QkEsNkNBR0UscUJBQ0EsMkJBRkEsbUJsQjQveUJGLENrQngveUJBLCtDQUdFLHFCQUNBLDJCQUZBLG1CbEI0L3lCRixDa0J4L3lCQSxtQ0FHRSxxQkFDQSw0QkFGQSxtQmxCNC95QkYsQ2tCeC95QkEsK0NBR0UscUJBQ0EsNEJBRkEsbUJsQjQveUJGLENrQngveUJBLDJDQUdFLHFCQUNBLDRCQUZBLG1CbEI0L3lCRixDa0J4L3lCQSw2Q0FHRSxxQkFDQSw0QkFGQSxtQmxCNC95QkYsQ2tCeC95QkEsbURBR0UscUJBQ0EsNEJBRkEsbUJsQjQveUJGLENrQmwveUJBLG1CQUNFLGFsQncveUJGLENrQnAveUJBLHNCQUNFLHdCbEJ1L3lCRixDa0JyL3lCQSwyQ0FDRSxnQ2xCdS95QkYsQ2tCbi95QkEsK0JBQ0UscUJsQnMveUJGLENrQnAveUJBLG9EQUNFLDJCbEJzL3lCRixDa0IzK3lCQSx5QkFJRSxpQkFBa0IsQ0FGbEIsV0FBWSxDQUNaLGlCQUFrQixDQUZsQixVbEJzL3lCRixDa0IzK3lCQSwrQkFDRSw0QkFDQSx1QmxCZy95QkYsQ2tCNyt5QkEscUNBRUUsYWxCKyt5QkYsQ2tCNyt5QkEsc0NBRUUsWWxCKyt5QkYsQ2tCait5QkEsZ0JBR0Usc0JBREEsWUFEQSxVbEI0K3lCRixDa0J4K3lCQSxnQkFHRSxzQkFEQSxxQkFEQSxtQmxCNCt5QkYsQ2tCeCt5QkEsaUJBR0Usc0JBREEscUJBREEsbUJsQjQreUJGLENrQngreUJBLFdBR0UsY0FEQSxxQkFEQSxtQmxCNCt5QkYsQ2tCeCt5QkEsaUJBR0UsdUJBREEscUJBREEsbUJsQjQreUJGLENrQngreUJBLGVBR0UsdUJBREEscUJBREEsbUJsQjQreUJGLENrQngreUJBLGdCQUdFLHVCQURBLHFCQURBLG1CbEI0K3lCRixDa0J4K3lCQSxtQkFHRSx1QkFEQSxxQkFEQSxtQmxCNCt5QkYsQ2tCdCt5QkEscUJBQ0UsZUFDQSx5QmxCeSt5QkYsQ2tCdit5QkEscUJBQ0Usd0JBQ0EseUJsQnkreUJGLENrQnYreUJBLHNCQUNFLHdCQUNBLGtCbEJ5K3lCRixDa0J2K3lCQSxnQkFDRSx3QkFDQSx5QmxCeSt5QkYsQ2tCdit5QkEsc0JBQ0Usd0JBQ0EseUJsQnkreUJGLENrQnYreUJBLG9CQUNFLHdCQUNBLGtCbEJ5K3lCRixDa0J2K3lCQSxxQkFDRSx3QkFDQSx5QmxCeSt5QkYsQ2tCdit5QkEsd0JBQ0Usd0JBQ0EseUJsQnkreUJGLENLaHd6QkMsdWpCYThTRyxhbEJpK3lCSixDSy93ekJDLG9nQmF3VEcsYWxCaSt5QkosQ0t6eHpCQywya0JhOFNHLGFsQnUveUJKLENLcnl6QkMsb2hCYXdURyxhbEJ1L3lCSixDSy95ekJDLCtnQmE4U0csYWxCNmd6QkosQ0szenpCQyxvZWF3VEcsYWxCNmd6QkosQ0tyMHpCQyw2aUJhOFNHLGFsQm1pekJKLENLajF6QkMsNGZhd1RHLGFsQm1pekJKLENLMzF6QkMsNmlCYThTRyxhbEJ5anpCSixDS3YyekJDLDRmYXdURyxhbEJ5anpCSixDS2ozekJDLG1pQmE4U0csYWxCK2t6QkosQ0s3M3pCQyxvZmF3VEcsYWxCK2t6QkosQ0t2NHpCQyxtaUJhOFNHLGFsQnFtekJKLENLbjV6QkMsb2Zhd1RHLGFsQnFtekJKLENLNzV6QkMseWhCYThTRyxhbEIybnpCSixDS3o2ekJDLDRlYXdURyxhbEIybnpCSixDS243ekJDLHloQmE4U0csYWxCaXB6QkosQ0svN3pCQyw0ZWF3VEcsYWxCaXB6QkosQ0t6OHpCQyw2aUJhOFNHLGFsQnVxekJKLENLcjl6QkMsNGZhd1RHLGFsQnVxekJKLENLLzl6QkMsNmlCYThTRyxhbEI2cnpCSixDSzMrekJDLDRmYXdURyxhbEI2cnpCSixDS3IvekJDLHloQmE4U0csYWxCbXR6QkosQ0tqZzBCQyw0ZWF3VEcsYWxCbXR6QkosQ0szZzBCQyxtaUJhOFNHLGFsQnl1ekJKLENLdmgwQkMsb2Zhd1RHLGFsQnl1ekJKLENLamkwQkMseWhCYThTRyxhbEIrdnpCSixDSzdpMEJDLDRlYXdURyxhbEIrdnpCSixDS3ZqMEJDLG1pQmE4U0csYWxCcXh6QkosQ0tuazBCQyxvZmF3VEcsYWxCcXh6QkosQ2tCanh6QkEscVhBUUUseUJsQm14ekJGLENrQmp4ekJBLHFGQUNFLFVsQm14ekJGLENrQmp4ekJBLCtFQUVFLGFsQm14ekJGLENrQmp4ekJBLHdEQUNFLGdDbEJteHpCRixDa0I3d3pCQSxrQkFJRSxNQUFPLENBRFAsU0FGQSxpQkFBa0IsQ0FJbEIsS0FBTSxDQUNOLGNBQWUsQ0FKZixxQmxCc3h6QkYsQ2tCL3d6QkEsbURBRUUsb0JsQml4ekJGLENrQjd3ekJBLHFFQUVFLGFBQWMsQ0FDZCxnQkFBaUIsQ0FDakIsaUJsQmd4ekJGLENrQjd3ekJBLGdQQUlFLDhCQUNBLDhCbEIrd3pCRixDa0I3d3pCQSxtVUFJRSwrQmxCK3d6QkYsQ2tCN3d6QkEsaUlBRUUsaUNBQ0EsaUNsQit3ekJGLENrQjd3ekJBLDJKQUVFLGtDbEIrd3pCRixDa0J4d3pCQSw4QkFDRSxVbEI2d3pCRixDa0Izd3pCQSx1Q0FDRSxhbEI2d3pCRixDa0Izd3pCQSxvTEFJRSw0REFDQSxtQmxCNnd6QkYsQ2tCM3d6QkEsZ05BSUUsb0VBQ0Esc0ZBQ0EsOEJsQjZ3ekJGLENrQjN3ekJBLGdDQUNFLG1DbEI2d3pCRixDa0Izd3pCQSx3TUFLRSxvQkFBc0IsQ0FEdEIsdUJsQjh3ekJGLENrQjN3ekJBLG9PQUlFLHVCbEI2d3pCRixDa0Izd3pCQSx3TUFLRSxvQkFEQSx1QmxCOHd6QkYsQ2tCM3d6QkEsb09BSUUsdUJsQjZ3ekJGLENrQjN3ekJBLDBCQUNFLE1BRUUsK0JBQWdDLENBRGhDLDZCbEIrd3pCRixDa0I1d3pCQSxTQUNFLHlCbEIrd3pCRixDa0I3d3pCQSxVQUNFLCtCbEJneHpCRixDa0I5d3pCQSxVQUNFLDJCbEJpeHpCRixDa0Ivd3pCQSxNQUNFLDZCbEJpeHpCRixDa0Ivd3pCQSxHQUVFLCtCQUFnQyxDQURoQyw2QkFBOEIsQ0FFOUIsdUJsQml4ekJGLENBQ0YsQ2tCOXd6QkEsdUNBQ0UsTUFFRSwrQkFBZ0MsQ0FEaEMsNkJsQmt4ekJGLENrQi93ekJBLFNBQ0UsOEJsQmt4ekJGLENrQmh4ekJBLFVBQ0UsK0JsQm14ekJGLENrQmp4ekJBLFVBQ0UsZ0NsQm94ekJGLENrQmx4ekJBLE1BQ0UsNkJsQm94ekJGLENrQmx4ekJBLEdBRUUsK0JBQWdDLENBRGhDLDZCQUE4QixDQUU5Qix1QmxCb3h6QkYsQ0FDRjtBQU9BOzs7Ozs7OztFQVFFLENtQmp2MEJGLGdCQUdFLHVDQUNBLGtDQUFtQyxDQUNuQyxzQkFDQSxrR0FDQSw0QkFDQSxnQkFOQSxlQUFnQixDQURoQixlbkI4NTFCRixDbUJwNTFCQSw4QkFDRSxHQUNFLDZCbkJzNTFCRixDbUJwNTFCQSxHQUNFLDRCbkJzNTFCRixDQUNGLENtQm41MUJBLGdDQUlFLHFCQUhBLGVuQnE1MUJGLENtQmg1MUJBLGdEQUNFLG1CbkJxNTFCRixDbUJuNTFCQSxnRUFDRSxvQm5CcTUxQkYsQ21CbjUxQkEsZ0ZBQ0UsbUJuQnE1MUJGLENtQmw1MUJBLDhIQUtFLHFCbkJvNTFCRixDbUJqNTFCQSx1QkFDRSxZbkJtNTFCRixDbUIvNDFCQSx3REFDRSxZbkJrNTFCRixDbUJoNTFCQSwyQ0FDRSxRQUFTLENBQ1QsZUFBZ0IsQ0FFaEIsZ0JuQms1MUJGLENtQmg1MUJBLGdEQUNFLFFBQVMsQ0FDVCxlQUFnQixDQUVoQixlbkJrNTFCRixDbUI3NDFCQSxzQkFFRSxtQkFEQSxpQm5CaTUxQkYsQ21COTQxQkEseURBS0Usd0JBQXlCLENBRHpCLFVBQVcsQ0FEWCxpQkFBa0IsQ0FEbEIsUW5CbTUxQkYsQ21COTQxQkEsNkJBQ0UsTW5CZzUxQkYsQ21COTQxQkEsNEJBQ0UsT25CZzUxQkYsQ21CNTQxQkEsc0JBQ0Usa0JuQis0MUJGLENtQjc0MUJBLHlEQUVFLFduQis0MUJGLENtQjc0MUJBLHdDQUNFLGVuQis0MUJGLENtQjM0MUJBLHdCQUVFLGVBQWdCLENBRGhCLGlCbkIrNDFCRixDbUIxNDFCQSx3Q0FDRSxPbkI2NDFCRixDbUIzNDFCQSx5Q0FDRSxTbkI2NDFCRixDbUIzNDFCQSx5Q0FDRSxTbkI2NDFCRixDbUIzNDFCQSx5Q0FDRSxTbkI2NDFCRixDbUIzNDFCQSx5Q0FDRSxTbkI2NDFCRixDbUJ6NDFCQSw4QkFDRSx5Qm5CNDQxQkYsQ21CMTQxQkEseUVBRUUsa0JuQjQ0MUJGLENtQjE0MUJBLGdEQUNFLHNCbkI0NDFCRixDbUIxNDFCQSxvQ0FDRSxTbkI0NDFCRixDbUIxNDFCQSxpREFDRSxTbkI0NDFCRixDbUJ4NDFCQSxvQ0FDRSxlbkIyNDFCRixDbUJ6NDFCQSwyQ0FDRSxrQm5CMjQxQkYsQ21CejQxQkEsb0NBR0UsVUFBVyxDQUZYLGFBQWMsQ0FDZCxtQkFFQSxlbkIyNDFCRixDbUJ2NDFCQSxnSUFHRSxZbkIwNDFCRixDbUJ4NDFCQSxxSkFJRSxVQUFXLENBQ1gsYUFBYyxDQUZkLG1CbkI0NDFCRixDbUJ0NDFCQSx5QkFDRSw2R25CeTQxQkYsQ21CdjQxQkEsMktBS0Usd0JuQnk0MUJGLENtQjczMUJBLDJDQUNFLE9uQnE0MUJGLENtQm40MUJBLGdEQUNFLFNuQnE0MUJGLENtQm40MUJBLDJDQUNFLFNuQnE0MUJGLENtQm40MUJBLDZDQUNFLFNuQnE0MUJGLENtQm40MUJBLDRDQUNFLFNuQnE0MUJGLENtQm40MUJBLGlEQUNFLFNuQnE0MUJGLENtQjczMUJBLHNCQUNFLGNuQms0MUJGO0FBSUE7Ozs7Ozs7O0VBUUUsQ29Cam0yQkYsU0FJRSxZQUhBLGlCQUFrQixDQUNsQixLQUFNLENBQ04sV3BCaXgzQkYsQ29CN3czQkEsY0FDRSxTQUFVLENBR1Ysa0JBREEsbUJBREEsVXBCaXgzQkYsQ29CNXczQkEsZUFDRSxTcEJpeDNCRixDb0JudzNCQSxzQ0FYRSxrQkFEQSxtQkFEQSxVcEI0eDNCRixDb0IvdzNCQSx1QkFDRSxNcEI4dzNCRixDb0J4dzNCQSx3QkFDRSxTQUFVLENBR1Ysa0JBREEsbUJBREEsT3BCNHczQkYsQ29CbHczQkEsa0JBQ0UsYXBCdXczQkYsQ29CcnczQkEsdUJBR0UsMENBREEsb0JBREEsb0JwQnl3M0JGLENvQnJ3M0JBLHdCQUNFLHlDQUVBLG9CQURBLG9CcEJ3dzNCRixDb0JodzNCQSxlQUNFLHVCcEJxdzNCRixDb0JudzNCQSxvQkFFRSxpQkFEQSxpQnBCc3czQkYsQ29CbnczQkEscUJBRUUsaUJBREEsaUJwQnN3M0JGLENvQmx3M0JBLG9CQUNFLHdCcEJvdzNCRixDb0JsdzNCQSx5QkFFRSxrQkFEQSxrQnBCcXczQkYsQ29CbHczQkEsMEJBRUUsa0JBREEsa0JwQnF3M0JGLENvQjd2M0JBLCtDQUdFLFFBQVMsQ0FEVCxTcEJtdzNCRixDb0IzdjNCQSxjQUNFLHNCcEJndzNCRixDb0I5djNCQSxjQUNFLHNCcEJndzNCRixDb0I5djNCQSxlQUNFLHNCcEJndzNCRixDb0I5djNCQSxTQUNFLGNwQmd3M0JGLENvQjl2M0JBLGVBQ0UsdUJwQmd3M0JGLENvQjl2M0JBLGFBQ0UsdUJwQmd3M0JGLENvQjl2M0JBLGNBQ0UsdUJwQmd3M0JGLENvQjl2M0JBLGlCQUNFLHVCcEJndzNCRjtBQU9BOzs7Ozs7OztFQVFFLENxQjc0M0JGLFdBQ0UsZUFBZ0IsQ0FFaEIscUJBQXVCLENBRHZCLDJCckIraTVCRixDcUIzaTVCQSw0QkFHRSxnQkFBa0IsQ0FGbEIsMkJBQTZCLENBQzdCLGVBQWlCLENBR2pCLDRCQURBLG1CckI4aTVCRixDcUIzaTVCQSwyQkFDRSwyQkFBNkIsQ0FDN0IsbUJyQjZpNUJGLENxQnppNUJBLHFFQUVFLG1CckI0aTVCRixDcUIvaDVCQSxpQkFFRSx5QkFBMkIsQ0FEM0IsMkJBQTZCLENBRTdCLGtCckJ1aTVCRixDcUJwaTVCQSwwQkFDRSxhQUFjLENBR2QsVUFBVyxDQUVYLFFBQVMsQ0FDVCxrQ0FKQSxrQkFBbUIsQ0FEbkIsVXJCMGk1QkYsQ3FCbGk1QkEsa0NBQ0UsMkJyQm9pNUJGLENxQmxpNUJBLGlDQUVFLGdCQUFrQixDQURsQiwyQkFBNkIsQ0FHN0Isb0NBQXNDLENBRHRDLG9CckJxaTVCRixDcUJsaTVCQSxpRkFFRSxxQ3JCb2k1QkYsQ3FCN2g1QkEsdUhBQ0UsaUNyQm1pNUJGLENxQmppNUJBLHVDQUNFLHFDckJtaTVCRixDcUJqaTVCQSw2RkFFRSxvQ3JCbWk1QkYsQ3FCamk1QkEsMkZBRUUsaUNyQm1pNUJGLENxQmhpNUJBLG9DQUNFLG9DckJraTVCRixDcUJoaTVCQSx1RkFFRSxxQ3JCa2k1QkYsQ3FCaGk1QkEscUZBRUUsaUNyQmtpNUJGLENxQi9oNUJBLHNDQUNFLHFDckJpaTVCRixDcUIvaDVCQSwyRkFFRSxvQ3JCaWk1QkYsQ3FCL2g1QkEseUZBRUUsaUNyQmlpNUJGLENxQnpoNUJBLGlDQUNFLFNyQjhoNUJGLENxQjVoNUJBLCtFQUVFLFNyQjhoNUJGLENxQnRoNUJBLGdCQUVFLHlCQUEyQixDQUQzQiwyQkFBNkIsQ0FFN0Isa0JyQjJoNUJGLENxQnhoNUJBLHlCQUNFLGFBQWMsQ0FDZCxVQUFXLENBR1gsUUFBUyxDQUNULDJEQUhBLGtCckI0aDVCRixDcUJ0aDVCQSxpQ0FDRSwyQnJCd2g1QkYsQ3FCdGg1QkEsZ0NBRUUsZ0JBQWtCLENBRGxCLDJCQUE2QixDQUU3QixvQnJCd2g1QkYsQ3FCdGg1QkEsK0VBRUUscUNyQndoNUJGLENxQnRoNUJBLDJGQUVFLG9DckJ3aDVCRixDcUJ0aDVCQSxxRkFFRSxxQ3JCd2g1QkYsQ3FCdGg1QkEseUZBRUUsb0NyQndoNUJGLENxQi9nNUJBLG1DQUVFLHNCQUF1QixDQUR2Qix1QnJCcWg1QkYsQ3FCamg1QkEsNEVBRUUsNkJyQm1oNUJGLENxQmpoNUJBLGtMQUlFLHdCckJtaDVCRixDcUJoaDVCQSx3Q0FDRSw0QnJCa2g1QkYsQ3FCaGg1QkEsNkZBRUUseUJyQmtoNUJGLENxQjNnNUJBLG1EQU9FLHFCQUF1QixDQUx2Qix1QkFBeUIsQ0FHekIsZ0JBQWtCLENBRmxCLG1CQUFxQixDQUZyQix5QkFBMkIsQ0FLM0Isb0JBQXNCLENBRnRCLGVBQWlCLENBSWpCLHdCckJnaDVCRixDcUI5ZzVCQSxpREFDRSxzQnJCZ2g1QkYsQ3FCeGc1QkEsNEJBQ0UsU3JCNmc1QkYsQ3FCbGc1QkEsbUJBQ0UsZ0JyQjBnNUJGLENxQm5nNUJBLDRCQUNFLDZCckJ3ZzVCRixDcUJoZzVCQSxvQkFDRSx3QnJCcWc1QkY7QUFPQTs7Ozs7Ozs7RUFRRSxDc0I1dzVCRixZQUVFLGdCQUtBLG9DQURBLDJCQUhBLDBDQUNBLGNBQ0EsWUFKQSxpQnRCbS82QkYsQ3NCMSs2QkEsd0JBQ0UsWXRCNCs2QkYsQ3NCMSs2QkEsdUJBQ0UsZXRCNCs2QkYsQ3NCdis2QkEscUJBS0UsMkJBQTRCLENBSTVCLHVEQUhBLGVBQWdCLENBQ2hCLGVBQWdCLENBTmhCLFFBQVMsQ0FDVCxjQUFlLENBQ2YsZXRCKys2QkYsQ3NCdis2QkEsZ0NBQ0Usa0J0QnkrNkJGLENzQmgrNkJBLDRFQUVFLFV0QnMrNkJGLENzQmwrNkJBLG9FQUNFLHdCQUF5QixDQUN6Qix5QnRCcSs2QkYsQ3NCbis2QkEsb0VBQ0UsMkJBQTRCLENBQzVCLDRCdEJxKzZCRixDc0JuKzZCQSwwRUFDRSx3QkFBeUIsQ0FDekIseUJ0QnErNkJGLENzQm4rNkJBLDZFQUNFLDJCQUE0QixDQUM1Qiw0QnRCcSs2QkYsQ3NCais2QkEsbUZBSUUsbUJBREEsZXRCcSs2QkYsQ3NCbCs2QkEsaUJBRUUsMkJBREEsYXRCcSs2QkYsQ3NCaCs2QkEsd0JBQ0UsZ0JBQ0Esb0NBQ0EseUN0Qm0rNkJGLENzQmorNkJBLHVDQUNFLFd0Qm0rNkJGLENzQi85NkJBLDJCQUNFLGtCdEJrKzZCRixDc0J0OTZCQSx3QkFJRSxtQkFBb0IsQ0FFcEIsY0FBZSxDQUlmLG1CQUNBLGdDQUNBLGlEQVhBLFlBQWEsQ0FDYixxQkFBc0IsQ0FDdEIsc0JBQXVCLENBRXZCLGNBQWtCLENBSWxCLGlCQUZBLGdCQUFpQixDQUNqQixXdEJrKzZCRixDc0IzOTZCQSxpRUFFRSxhdEI2OTZCRixDc0JuOTZCQSxvU0FLRSxnQkFBaUIsQ0FDakIsaUJBQWtCLENBRmxCLGV0Qis5NkJGLENzQjE5NkJBLGdDQUNFLGlCdEI0OTZCRixDc0IxOTZCQSx3Q0FDRSxvQkFBcUIsQ0FFckIsMEJBREEsVXRCNjk2QkYsQ3NCMTk2QkEsbURBQ0UsY3RCNDk2QkYsQ3NCcDk2QkEscUNBR0UsY0FEQSxhQUVBLFl0Qnk5NkJGLENzQnY5NkJBLDhCQUNFLFl0Qnk5NkJGLENzQnY5NkJBLDZCQUNFLGV0Qnk5NkJGLENzQnY5NkJBLG9HQUlFLHNCQVFBLG9DQUNBLGNBUEEsVUFBVyxDQUNYLGFBQWMsQ0FDZCxXQUFZLENBQ1osTUFBTyxDQUNQLGlCQUFrQixDQUxsQixrQkFBbUIsQ0FNbkIsVXRCMjk2QkYsQ3NCdjk2QkEsbURBR0UsS0FBTSxDQUROLDBCQUVBLFV0Qnk5NkJGLENzQnY5NkJBLGlEQUdFLEtBQU0sQ0FETix5QkFFQSxVdEJ5OTZCRixDc0JyOTZCQSx5Q0FFRSxlQUFnQixDQURoQixjdEJ5OTZCRixDc0J0OTZCQSxxREFDRSxZdEJ3OTZCRixDc0J0OTZCQSw0Q0FFRSxrQkFEQSxZdEJ5OTZCRixDc0J0OTZCQSx1REFDRSxldEJ3OTZCRixDc0JqOTZCQSxvQkFDRSxvQnRCczk2QkYsQ3NCcDk2QkEsNEdBVUUsMkJBREEsd0NBSEEsWUFGQSxVQUFXLENBU1gsV0FOQSxNQUFPLENBRlAsaUJBQWtCLENBU2xCLGtCQUFtQixDQUZuQixVdEJzOTZCRixDc0JsOTZCQSx1REFFRSxZdEJvOTZCRixDc0JoOTZCQSxpRUFHRSxRQUFTLENBRFQsYXRCbzk2QkYsQ3NCLzg2QkEsZ0pBSUUsaUNBQ0EsdUN0Qms5NkJGLENzQjM4NkJBLG1CQUNFLGF0Qmc5NkJGLENzQjc4NkJBLGtDQUNFLFd0Qis4NkJGLENzQjM4NkJBLCtFQUVFLGNBQWUsQ0FDZixldEI4ODZCRixDc0J2ODZCQSxvQkFDRSxhdEI0ODZCRixDc0J4ODZCQSxxQkFDRSxtQnRCMjg2QkYsQ3NCejg2QkEsNERBRUUsYUFBYyxDQUNkLGF0QjI4NkJGLENzQnA4NkJBLHFCQUtFLG1CQUFvQixDQUpwQixrQkFBbUIsQ0FDbkIsWUFDQSxpQkFBa0IsQ0FDbEIscUJ0QjA4NkJGLENzQmw4NkJBLHFEQUVFLHlFdEJ1ODZCRixDc0I5NzZCQSxhQUlFLG9DQUVBLDJCQURBLDBDQUpBLHFCQUFzQixDQUV0QixjQURBLGlCdEJ3ODZCRixDc0JsODZCQSx5QkFDRSxZdEJvODZCRixDc0JsODZCQSx3QkFDRSxldEJvODZCRixDc0IvNzZCQSxzQkFRRSxZQUxBLGVBQWdCLENBS2hCLHdDQU5BLFFBQVMsQ0FJVCxnQkFGQSxTQUhBLEtBQU0sQ0FJTixVdEJxODZCRixDc0IvNzZCQSxtREFNRSw0Q0FIQSxlQUFnQixDQURoQixRQUFTLENBR1QsZUFBZ0IsQ0FEaEIsWUFBYSxDQUhiLEt0QnM4NkJGLENzQjc3NkJBLGtEQU1FLDRDQUpBLFFBQVMsQ0FHVCwrQ0FEQSxlQUFnQixDQURoQixZQUFhLENBRmIsS3RCcTg2QkYsQ3NCNTc2QkEsa0RBQ0UsMEJ0Qis3NkJGLENzQjE3NkJBLDBCQUNFLHdDQUNBLFd0QjY3NkJGLENzQjM3NkJBLG1DQUNFLGV0QjY3NkJGLENzQjM3NkJBLGlEQUNFLFl0QjY3NkJGLENzQno3NkJBLHdCQUdFLDRCQUE2QixDQUs3QixvQ0FEQSwyQkFGQSwwQ0FKQSxZQUFhLENBQ2Isa0JBQW1CLENBSW5CLGNBRkEsU3RCZzg2QkYsQ3NCMTc2QkEsa0NBQ0UsY3RCNDc2QkYsQ3NCeDc2QkEsa0NBRUUsNEJBQTZCLENBSTdCLFlBSEEsZUFBZ0IsQ0FHaEIsd0NBREEsZUFBZ0IsQ0FKaEIsUXRCZzg2QkYsQ3NCdjc2QkEsNkRBQ0UsYUFBYyxDQUNkLGN0QjI3NkJGLENzQno3NkJBLGlDQU1FLHFEQUhBLGVBQWdCLENBRWhCLGVBQWdCLENBSmhCLFFBQVMsQ0FDVCxXdEIrNzZCRixDc0J2NzZCQSw4Q0FDRSxldEIwNzZCRixDc0J4NzZCQSw2REFDRSxnQnRCMDc2QkYsQ3NCOTY2QkEscUJBRUUsd0JBREEsV3RCdTc2QkYsQ3NCLzY2QkEsb0JBRUUsY0FBZSxDQUNmLG1CQUFvQixDQUZwQixpQkFBa0IsQ0FHbEIsMEJBQTRCLENBQzVCLHdCdEJvNzZCRixDc0JsNzZCQSwyQkFLRSw4QkFHQSwyQkFOQSxVQUFXLENBS1gsV0FBWSxDQUhaLE1BQU8sQ0FIUCxpQkFBa0IsQ0FFbEIsS0FBTSxDQUdOLFVBQVcsQ0FHWCxXdEJvNzZCRixDc0JsNzZCQSwwQkFVRSxxQ0FDQSwwQkFDQSxxQkFFQSxnQ0FBaUMsQ0FaakMsVUFBVyxDQU1YLFdBSkEsUUFBUyxDQUVULHlCQUxBLGlCQUFrQixDQUVsQixPQUFRLENBWVIsa0JBQW1CLENBUm5CLFVBU0EsV3RCaTc2QkYsQ3NCbjY2QkEsb0VBR0UsNEJBRUEsWUFDQSxnQkFGQSxldEI2NjZCRixDc0JwNjZCQSwyQkFHRSxVQUFXLENBRlgsVUFBVyxDQUNYLGF0QjA2NkJGLENLOTc3QkMsK0RpQmlpQkssNEJ0Qm02NkJOLENLcDg3QkMseURpQm9pQksseUJBQ0EsVXRCbTY2Qk4sQ0t4ODdCQyxrRWlCaWlCSyw0QnRCMDY2Qk4sQ0szODdCQyw0RGlCb2lCSyx5QkFDQSxVdEIwNjZCTixDSy84N0JDLGtFaUJpaUJLLDRCdEJpNzZCTixDS2w5N0JDLDREaUJvaUJLLHlCQUNBLFV0Qmk3NkJOLENLdDk3QkMsaUVpQmlpQkssNEJ0Qnc3NkJOLENLejk3QkMsMkRpQm9pQksseUJBQ0EsVXRCdzc2Qk4sQ0s3OTdCQyxpRWlCaWlCSyw0QnRCKzc2Qk4sQ0toKzdCQywyRGlCb2lCSyx5QkFDQSxVdEIrNzZCTixDS3ArN0JDLGdFaUJpaUJLLDRCdEJzODZCTixDS3YrN0JDLDBEaUJvaUJLLHlCQUNBLFV0QnM4NkJOLENLMys3QkMsZ0VpQmlpQkssNEJ0QjY4NkJOLENLOSs3QkMsMERpQm9pQksseUJBQ0EsVXRCNjg2Qk4sQ0tsLzdCQyxrRWlCaWlCSyw0QnRCbzk2Qk4sQ0tyLzdCQyw0RGlCb2lCSyx5QkFDQSxVdEJvOTZCTixDS3ovN0JDLGtFaUJpaUJLLDRCdEIyOTZCTixDSzUvN0JDLDREaUJvaUJLLHlCQUNBLFV0QjI5NkJOLENLaGc4QkMsZ0VpQmlpQkssNEJ0QmsrNkJOLENLbmc4QkMsMERpQm9pQksseUJBQ0EsVXRCays2Qk4sQ0t2ZzhCQyxpRWlCaWlCSyw0QnRCeSs2Qk4sQ0sxZzhCQywyRGlCb2lCSyx5QkFDQSxVdEJ5KzZCTixDSzlnOEJDLGdFaUJpaUJLLDRCdEJnLzZCTixDS2poOEJDLDBEaUJvaUJLLHlCQUNBLFV0QmcvNkJOLENLcmg4QkMsaUVpQmlpQkssNEJ0QnUvNkJOLENLeGg4QkMsMkRpQm9pQksseUJBQ0EsVXRCdS82Qk4sQ3NCOSs2QkEsbUNBQ0UsZXRCbS82QkYsQ3NCai82QkEsb0NBQ0UsZ0J0Qm0vNkJGLENzQmovNkJBLHFDQUNFLGlCdEJtLzZCRixDc0I1KzZCQSx1REFFRSxVQUFXLENBQ1gsZ0J0QmkvNkJGLENzQi8rNkJBLG9DQUNFLFdBQVksQ0FDWixldEJpLzZCRixDc0J6KzZCQSxxQkFDRSxXQUFZLENBQ1osZXRCOCs2QkYsQ3NCNSs2QkEsa0RBRUUsbUJBQ0Esd0J0QjgrNkJGLENzQjErNkJBLDhCQUNFLHFCdEI2KzZCRixDc0IzKzZCQSx1Q0FDRSx3QnRCNis2QkYsQ3NCeis2QkEsOEJBQ0UsaUJ0QjQrNkJGLENzQngrNkJBLDZCQUNFLFV0QjIrNkJGLENzQnorNkJBLG9DQUNFLDBCdEIyKzZCRixDc0JuKzZCQSxzQkFDRSxtQkFDQSxvQnRCeSs2QkYsQ3NCdis2QkEsK0JBQ0UsMEVBQ0Esd0J0QnkrNkJGLENzQnIrNkJBLHFCQUNFLG1CQUNBLG9CdEJ3KzZCRixDc0J0KzZCQSw4QkFDRSw0RUFDQSx3QnRCdys2QkYsQ3NCLzk2QkEscUJBUUUseUJBTEEsZUFBZ0IsQ0FEaEIsUUFBUyxDQUtULGdCQUhBLGNBRUEsMkJBTEEsS0FBTSxDQUlOLHNCdEJ3KzZCRixDc0JuKzZCQSwwREFDRSxldEJxKzZCRixDc0JqKzZCQSxtQ0FLRSw0Q0FKQSxRQUFTLENBQ1QsZUFBZ0IsQ0FFaEIsZ0JBREEsS3RCcys2QkYsQ3NCbCs2QkEsK0NBQ0UsWXRCbys2QkYsQ3NCaCs2QkEsc0NBTUUsNENBTEEsUUFBUyxDQUlULCtDQURBLG1CQUZBLFlBQWEsQ0FDYixLdEJzKzZCRixDc0JqKzZCQSxpREFDRSxrQnRCbSs2QkYsQ3NCNTk2QkEsc0NBRUUsZ0JBQWlCLENBRGpCLGF0QmsrNkJGLENzQi85NkJBLG9DQUNFLGNBQWUsQ0FDZixldEJpKzZCRixDc0IxOTZCQSw0Q0FFRSxzQnRCKzk2QkYsQ3NCNzk2QkEsNENBRUUsc0J0Qis5NkJGLENzQjc5NkJBLDhDQUVFLHNCdEIrOTZCRixDc0I3OTZCQSxrQ0FFRSxjdEIrOTZCRixDc0I3OTZCQSw4Q0FFRSx1QnRCKzk2QkYsQ3NCNzk2QkEsMENBRUUsdUJ0Qis5NkJGLENzQjc5NkJBLDRDQUVFLHVCdEIrOTZCRixDc0I3OTZCQSxrREFFRSx1QnRCKzk2QkY7QUFPQTs7Ozs7Ozs7RUFRRSxDdUJocjhCRixVQUdFLG1CQUFvQixDQUVwQixjQUlBLG9DQURBLDJCQUZBLGdCQUxBLG1CQUFvQixDQUNwQixrQkFBbUIsQ0FLbkIseUJBSEEsWXZCKzQ5QkYsQ3VCeDQ5QkEsNEJBQ0UsY3ZCMDQ5QkYsQ3VCdDQ5QkEsc0JBQ0UsWXZCeTQ5QkYsQ3VCcjQ5QkEscUJBQ0UsZXZCdzQ5QkYsQ3VCaDQ5QkEsZ0JBT0Usa0JBQW1CLENBS25CLGdCQUtBLFlBRkEsZ0JBRUEsMENBSEEsZ0JBREEsc0JBWEEsWUFBYSxDQUNiLGFBQWMsQ0FFZCxrQkFBbUIsQ0FEbkIsY0FBZSxDQUlmLHVCQUVBLFNBQ0EseUJBVkEsaUJBQWtCLENBS2xCLHFCdkJnNTlCRixDdUJoNDlCQSxzQ0FKRSx3RnZCczU5QkYsQ3VCbDU5QkEsc0JBUUUsc0JBTUEseURBVkEsVUFBVyxDQUhYLFlBQWEsQ0FTYixvQkFSQSxpQkFBa0IsQ0FJbEIsUUFEQSxRQVlBLHlEQUEwRCxDQVIxRCxtQkFOQSxTdkIrNDlCRixDdUI3MzlCQSw0QkFFRSw0Q0FEQSxnQnZCaTQ5QkYsQ3VCNTM5QkEsMkJBQ0UsNENBQ0EsaUJBQWtCLENBQ2xCLGN2QiszOUJGLEN1QjMzOUJBLDJCQUNFLDBCdkI4MzlCRixDdUJyMzlCQSx1QkFDRSwyREFDQSx1QkFDQSxldkIyMzlCRixDdUJ6MzlCQSx1QkFDRSxVdkIyMzlCRixDdUJ2MzlCQSw2QkFHRSxzQkFEQSxzQkFEQSxldkI0MzlCRixDdUJ4MzlCQSw2QkFDRSxVdkIwMzlCRixDdUJ4MzlCQSxvQ0FDRSxnQnZCMDM5QkYsQ3VCdDM5QkEsc0JBRUUsZ0JBREEsYUFBYyxDQUVkLGlCdkJ5MzlCRixDdUJ2MzlCQSxxREFJRSxrQkFGQSxhQUFjLENBQ2QsYXZCMDM5QkYsQ3VCcjM5QkEscUNBQ0UsVXZCdzM5QkYsQ3VCcDM5QkEsc0NBRUUsY3ZCdTM5QkYsQ3VCNTI5QkEsa0JBQ0UscUJ2Qm8zOUJGLEN1QmwzOUJBLCtCQUlFLHdCQUF5QixDQUl6Qix5QkFBMEIsQ0FDMUIsb0JBRkEsZ0JBR0EsZ0JBSkEsa0JBSkEsZUFBZ0IsQ0FDaEIsaUJ2QjIzOUJGLEN1QmozOUJBLHlEQVJFLGtCQUpBLGF2Qmk0OUJGLEN1QjMyOUJBLG1CQUNFLG1CQUFvQixDQUNwQixxQkFBc0IsQ0FDdEIsZ0J2QmczOUJGLEN1QjkyOUJBLHlCQUtFLDJDQUhBLGdCQUVBLGlCQUFrQixDQUhsQiwwQkFBMkIsQ0FFM0Isd0J2QmszOUJGLEN1QjkyOUJBLHFDQUVFLDRDQURBLHdCdkJpMzlCRixDdUI5MjlCQSxvQ0FDRSxrQkFBbUIsQ0FDbkIsMkN2QmczOUJGLEN1QjkyOUJBLG9DQUNFLDBCdkJnMzlCRixDdUIzMjlCQSwrQkFHRSx5QkFDQSxhQUZBLFFBREEsT3ZCaTM5QkYsQ3VCMzI5QkEsc0NBQ0UsYXZCNjI5QkYsQ3VCMzI5QkEsMENBQ0UsWXZCNjI5QkYsQ3VCMzI5QkEsaURBQ0UsYXZCNjI5QkYsQ3VCcDI5QkEsNENBRUUsNEJBQ0UsbUJBQW9CLENBRXBCLHFCQUFzQixDQUR0QixnQnZCMDI5QkYsQ3VCdjI5QkEsa0NBTUUsMkNBSEEsZ0JBRUEsaUJBQWtCLENBSGxCLHFCQUFzQixDQUV0Qix5QkFIQSxvQnZCODI5QkYsQ3VCdjI5QkEsOENBRUUsNENBREEsd0J2QjAyOUJGLEN1QnYyOUJBLDZDQUVFLGtCQUFtQixDQURuQiwyQ3ZCMDI5QkYsQ3VCcjI5QkEsd0NBRUUscUJBQ0EsU0FBVSxDQUZWLFNBQVUsQ0FHVix3RHZCdzI5QkYsQ3VCdDI5QkEsaURBQ0UsWXZCdzI5QkYsQ3VCcjI5QkEsMkNBQ0UsaUJ2QncyOUJGLEN1QnAyOUJBLHlGQUVFLGV2QnUyOUJGLENBQ0YsQ3VCOTE5QkEsZ0hBSUUsbUJBQ0Esb0J2Qm8yOUJGLEN1QmgyOUJBLG9IQUlFLG1CQUNBLG9CdkJtMjlCRixDdUIvMTlCQSx1QkFFRSxtQkFEQSxXdkJtMjlCRixDdUJoMjlCQSw2QkFDRSxrQnZCazI5QkYsQ3VCaDI5QkEsOEJBQ0UsYXZCazI5QkYsQ3VCaDI5QkEsbUVBRUUscUJ2QmsyOUJGLEN1QjMxOUJBLG1EQUNFLGF2QmkyOUJGLEN1QjUxOUJBLHlFQUNFLFl2QmkyOUJGLEN1QjcxOUJBLDRJQUtFLG1CQUNBLHNCQUZBLGN2QmsyOUJGLEN1QjUxOUJBLGdGQUVFLGF2QisxOUJGLEN1QjMxOUJBLHlCQUVFLGdCQURBLFdBQVksQ0FFWixtQnZCODE5QkYsQ3VCNTE5QkEsK0ZBR0UsdUJ2QjgxOUJGLEN1QjUxOUJBLCtCQUNFLGV2QjgxOUJGLEN1QmgxOUJBLDRDQUVBLHFDQUNFLG1CQUFvQixDQUVwQixxQkFBc0IsQ0FEdEIsZ0J2QnkxOUJBLEN1QnAxOUJGLDJDQUtFLDJDQUhBLGdCQUVBLGlCQUFrQixDQUhsQixxQkFBc0IsQ0FFdEIsd0J2QnkxOUJBLEN1QnIxOUJGLHVEQUVFLDRDQURBLHdCdkJ3MTlCQSxDdUJyMTlCRixzREFFRSxrQkFBbUIsQ0FEbkIsMkN2QncxOUJBLEN1Qm4xOUJGLGlEQUVFLHFCQUNBLFNBQVUsQ0FGVixTQUFVLENBR1Ysd0R2QnMxOUJBLEN1QmwxOUJGLG9EQUNFLGlCdkJxMTlCQSxDdUJqMTlCRiwyR0FFRSxldkJvMTlCQSxDQUNGLEN1QjMwOUJBLGdCQUNFLFlBQWEsQ0FDYixVdkJpMTlCRixDdUJ6MDlCQSxtQkFJRSw0Q0FGQSxjQUNBLDJCQUZBLGdDdkJrMTlCRixDdUI3MDlCQSxxQ0FDRSxnQ3ZCKzA5QkYsQ3VCNzA5QkEsb0NBQ0UsZ0N2QiswOUJGLEN1QjMwOUJBLDBCQUVFLDRDQURBLGF2QiswOUJGLEN1QjUwOUJBLDRDQUNFLGdDdkI4MDlCRixDdUI1MDlCQSwyQ0FDRSxnQ3ZCODA5QkYsQ3VCdjA5QkEsd0hBUUUsVXZCNDA5QkYsQ3VCMTA5QkEsd0tBUUUsZ0J2QjQwOUJGLEN1QjEwOUJBLG9CQUNFLFV2QjQwOUJGLEN1QjEwOUJBLG9CQUNFLFN2QjQwOUJGLEN1QjEwOUJBLHNCQUNFLGF2QjQwOUJGLEN1QjEwOUJBLHFCQUNFLFN2QjQwOUJGLEN1QjEwOUJBLHFCQUNFLFN2QjQwOUJGLEN1QjEwOUJBLG9CQUNFLGF2QjQwOUJGLEN1QjEwOUJBLHNCQUNFLGF2QjQwOUJGLEN1QjEwOUJBLHNCQUNFLFd2QjQwOUJGLEN1QnAwOUJBLG1DQUVFLHNCdkJ5MDlCRixDdUJ2MDlCQSxtQ0FFRSxzQnZCeTA5QkYsQ3VCdjA5QkEscUNBRUUsc0J2QnkwOUJGLEN1QnYwOUJBLHlCQUVFLGN2QnkwOUJGLEN1QnYwOUJBLHFDQUVFLHVCdkJ5MDlCRixDdUJ2MDlCQSxpQ0FFRSx1QnZCeTA5QkYsQ3VCdjA5QkEsbUNBRUUsdUJ2QnkwOUJGLEN1QnYwOUJBLHlDQUVFLHVCdkJ5MDlCRixDdUJsMDlCQSxtQkFDRSxxQnZCdTA5QkYsQ3VCcDA5QkEseUJBRUUsbUJBQ0Esa0JBRkEsd0J2QncwOUJGLEN1Qm4wOUJBLCtCQUNFLHlCQUNBLGlCdkJxMDlCRixDdUJsMDlCQSxzQ0FDRSx3QnZCbzA5QkYsQ3VCaDA5QkEsc0VBRUUsZXZCbTA5QkYsQ3VCajA5QkEscUZBRUUsVXZCbTA5QkYsQ3VCL3o5QkEsMEVBRUUsZXZCazA5QkYsQ3VCaDA5QkEsMEhBR0UsdUJ2QmswOUJGLEN1Qjl6OUJBLG9KQUlFLG1CQUNBLFV2QmkwOUJGLEN1Qjd6OUJBLHdKQUlFLGdCQUNBLFV2QmcwOUJGLEN3Qjk2K0JBLFdBQ0UsZ0JBQW1CLENBQ25CLDhwU3hCbTcrQkYsQ3dCOTYrQkEsZ0ZBR0UsZUFBZ0IsQ0FEaEIsZ0J4Qms3K0JGO0FBSUE7Ozs7Ozs7O0VBUUUsQ0szOCtCRCxxQm9CK0JHLGF6QitrZ0NKLENLOW1nQ0MsOEJvQmtDRyxhekIra2dDSixDS2puZ0NDLHVCb0IrQkcsYXpCcWxnQ0osQ0twbmdDQyxnQ29Ca0NHLGF6QnFsZ0NKLENLdm5nQ0MsaUJvQitCRyxhekIybGdDSixDSzFuZ0NDLDBCb0JrQ0csYXpCMmxnQ0osQ0s3bmdDQyxvQm9CK0JHLGF6QmltZ0NKLENLaG9nQ0MsNkJvQmtDRyxhekJpbWdDSixDS25vZ0NDLG9Cb0IrQkcsYXpCdW1nQ0osQ0t0b2dDQyw2Qm9Ca0NHLGF6QnVtZ0NKLENLem9nQ0MsbUJvQitCRyxhekI2bWdDSixDSzVvZ0NDLDRCb0JrQ0csYXpCNm1nQ0osQ0svb2dDQyxtQm9CK0JHLGF6Qm1uZ0NKLENLbHBnQ0MsNEJvQmtDRyxhekJtbmdDSixDS3JwZ0NDLGtCb0IrQkcsYXpCeW5nQ0osQ0t4cGdDQywyQm9Ca0NHLGF6QnluZ0NKLENLM3BnQ0Msa0JvQitCRyxhekIrbmdDSixDSzlwZ0NDLDJCb0JrQ0csYXpCK25nQ0osQ0tqcWdDQyxvQm9CK0JHLGF6QnFvZ0NKLENLcHFnQ0MsNkJvQmtDRyxhekJxb2dDSixDS3ZxZ0NDLG9Cb0IrQkcsYXpCMm9nQ0osQ0sxcWdDQyw2Qm9Ca0NHLGF6QjJvZ0NKLENLN3FnQ0Msa0JvQitCRyxhekJpcGdDSixDS2hyZ0NDLDJCb0JrQ0csYXpCaXBnQ0osQ0tucmdDQyxtQm9CK0JHLGF6QnVwZ0NKLENLdHJnQ0MsNEJvQmtDRyxhekJ1cGdDSixDS3pyZ0NDLGtCb0IrQkcsYXpCNnBnQ0osQ0s1cmdDQywyQm9Ca0NHLGF6QjZwZ0NKLENLL3JnQ0MsbUJvQitCRyxhekJtcWdDSixDS2xzZ0NDLDRCb0JrQ0csYXpCbXFnQ0osQ3lCL3BnQ0Esc0JBQ0UsV3pCaXFnQ0YsQ3lCN3BnQ0Esa0JBQ0UsY3pCZ3FnQ0YsQ3lCOXBnQ0Esa0JBQ0UsY3pCZ3FnQ0YsQ3lCOXBnQ0EsbUJBQ0UsZXpCZ3FnQ0YsQ3lCOXBnQ0Esb0JBQ0UsYXpCZ3FnQ0YsQ3lCOXBnQ0EsbUJBQ0UsZXpCZ3FnQ0YsQ3lCOXBnQ0EsaUJBQ0UsYXpCZ3FnQ0YsQ3lCOXBnQ0Esa0JBQ0UsYXpCZ3FnQ0YsQ3lCOXBnQ0EscUJBQ0UsYXpCZ3FnQ0Y7QUFLQTs7Ozs7Ozs7RUFRRSxDMEJ0dGdDRixlQUVFLHFCQURBLHFCQUVBLFNBQ0EscUIxQnE0aENGLEMwQm40aENBLDJCQUNFLFkxQnE0aENGLEMwQm40aENBLDBCQUNFLGUxQnE0aENGLEMwQjczaENBLHdCQU1FLHFCQUxBLG9CQUFxQixDQUlyQixzQkFGQSxzQkFEQSxXQUtBLHVCMUJrNGhDRixDMEI5M2hDQSxpQkFDRSxhMUJpNGhDRixDMEIvM2hDQSx1QkFDRSxhMUJpNGhDRixDMEI1M2hDQSw2QkFDRSxzQkFDQSx1QjFCKzNoQ0YsQzBCMzNoQ0EseUJBQ0UsYzFCODNoQ0YsQzBCNTNoQ0Esd0JBQ0Usb0JBQXFCLENBQ3JCLFNBQ0EsUzFCODNoQ0YsQzBCMTNoQ0EsdUJBQ0Usb0JBQXFCLENBQ3JCLHVCMUI2M2hDRixDMEJ6M2hDQSx3QkFDRSxhMUI0M2hDRixDMEIxM2hDQSx3Q0FDRSxVMUI0M2hDRixDMEIxM2hDQSxpQ0FDRSx3QjFCNDNoQ0YsQzBCcjNoQ0EsK0JBQ0UsZTFCMDNoQ0YsQzBCbDNoQ0Esb0JBQ0Usc0IxQnUzaENGLEMwQnIzaENBLG9CQUNFLHNCMUJ1M2hDRixDMEJyM2hDQSxxQkFDRSxzQjFCdTNoQ0YsQzBCcjNoQ0EsZUFDRSxjMUJ1M2hDRixDMEJyM2hDQSxxQkFDRSx1QjFCdTNoQ0YsQzBCcjNoQ0EsbUJBQ0UsdUIxQnUzaENGLEMwQnIzaENBLG9CQUNFLHVCMUJ1M2hDRixDMEJyM2hDQSx1QkFDRSx1QjFCdTNoQ0Y7QUFPQTs7Ozs7Ozs7RUFRRSxDMkI1K2hDRixTQUVFLGNBQWUsQ0FEZixpQjNCaXVqQ0YsQzJCenRqQ0EsV0FDRSxZM0I4dGpDRixDMkJ2dGpDQSxnQkFDRSxVQUFXLENBQ1gsYzNCNHRqQ0YsQzJCenRqQ0EsOERBRUUsZTNCMnRqQ0YsQzJCeHRqQ0Esd0JBQ0UsVUFBVyxDQUNYLFEzQjB0akNGLEMyQmx0akNBLHNCQUdFLHNCQUZBLGFBQWMsQ0FHZCxzQkFDQSxnQkFIQSx3QkFJQSxtQjNCdXRqQ0YsQzJCL3NqQ0EsNFZBY0Usa0JBQW1CLENBRG5CLFUzQnF0akNGLEMyQmh0akNBLHNFQUVFLG1CM0JtdGpDRixDMkJodGpDQSwwVUFnQkUsZ0RBREEsdUJBQXdCLENBT3hCLGdCQUNBLG9DQUVBLDJCQUNBLHFDQUZBLHNCQVpBLDJEQVFBLGNBRkEseUJBTEEsUUFBUyxDQUNULFlBQWEsQ0FLYix3QkFRQSwrQzNCZ3RqQ0YsQzJCNXNqQ0EscUNBSUUsZ0RBREEsdUJBQXdCLENBSXhCLGdCQUNBLG9DQUdBLDJCQUNBLHFDQUZBLHNCQUtBLDJEQURBLGNBRUEsbUJBZEEsUUFBUyxDQU9ULFlBQWEsQ0FIYix3QkFXQSxnQkFKQSwrQzNCa3RqQ0YsQzJCNXNqQ0EsOEJBQ0UsWUFFQSxnQkFEQSxjM0Irc2pDRixDMkIzc2pDQSxnREFFRSxrQjNCNnNqQ0YsQzJCdHNqQ0EsMEZBQ0UsZTNCMnNqQ0YsQzJCenNqQ0EsaUZBQ0UsdUIzQjJzakNGLEMyQnpzakNBLHdGQUNFLHVCM0Iyc2pDRixDMkJ6c2pDQSx3RkFDRSx1QjNCMnNqQ0YsQzJCenNqQ0EsZ0VBQ0UsZTNCMnNqQ0YsQzJCenNqQ0EsdUVBQ0UsZTNCMnNqQ0YsQzJCenNqQ0EsdUVBQ0UsZTNCMnNqQ0YsQzJCcHNqQ0EsMkhBR0UsdUIzQnlzakNGLEMyQnRzakNBLHVFQUdFLHNDQUF3QyxDQUR4QyxrQ0FBb0MsQ0FFcEMseUIzQndzakNGLEMyQnJzakNBLG9MQUlFLG1DQUNBLHVCM0J1c2pDRixDMkJoc2pDQSx3QkFDRSxVM0Jxc2pDRixDMkI3cmpDQSxnQkFJRSxnQkFDQSxvQ0FDQSwyQkFDQSxxQ0FFQSxzQkFSQSxhQUFjLENBQ2QsV0FBWSxDQU1aLGtCQUVBLGdEQVBBLFUzQnlzakNGLEMyQjFyakNBLG9DQUNFLGNBQWUsQ0FDZixVM0Jnc2pDRixDMkI5cmpDQSxtREFDRSxXM0Jnc2pDRixDMkI1cmpDQSw4RkFFRSxVM0IrcmpDRixDMkI3cmpDQSw0SEFFRSxVM0IrcmpDRixDMkJ2cmpDQSwyRkFHRSxVM0I2cmpDRixDMkJ6cmpDQSxnR0FHRSxxQkFBc0IsQ0FEdEIsVTNCNnJqQ0YsQzJCeHJqQ0Esd0VBRUUsVTNCMnJqQ0YsQzJCdnJqQ0EsMlhBVUUsYUFBYyxDQUNkLE8zQjByakNGLEMyQmxyakNBLDBHQUlFLFkzQnVyakNGLEMyQm5yakNBLDhCQUNFLFkzQnNyakNGLEMyQi9xakNBLDhCQUVFLDBCQUNBLG1DQUNBLHdCQUhBLGtCM0J1cmpDRixDMkJscmpDQSxzRUFHRSwyQkFEQSxrQjNCcXJqQ0YsQzJCbHJqQ0Esb0ZBRUUseUJBQ0EsV0FBWSxDQUdaLE1BQU8sQ0FGUCxVQUFXLENBQ1gsTzNCcXJqQ0YsQzJCeHFqQ0EsNkNBRUUsK0JBREEsNEMzQmlyakNGLEMyQjVxakNBLG1EQUVFLCtCQURBLDRDM0JncmpDRixDMkIzcWpDQSw2Q0FFRSwrQkFEQSw4QzNCK3FqQ0YsQzJCcHFqQ0EscUNBQ0Usd0IzQjBxakNGLEMyQnhxakNBLGdDQUNFLGtDM0IwcWpDRixDMkJ4cWpDQSw0QkFDRSx3QjNCMHFqQ0YsQzJCdnFqQ0EsMkNBQ0Usd0IzQnlxakNGLEMyQnZxakNBLHNDQUNFLGtDM0J5cWpDRixDMkJ2cWpDQSxrQ0FDRSx3QjNCeXFqQ0YsQzJCcnFqQ0EsNENBQ0UsYTNCd3FqQ0YsQzJCdHFqQ0EsdUNBQ0UsdUIzQndxakNGLEMyQnRxakNBLG1DQUNFLGEzQndxakNGLEMyQnJxakNBLGtEQUNFLGEzQnVxakNGLEMyQnJxakNBLDZDQUNFLHVCM0J1cWpDRixDMkJycWpDQSx5Q0FDRSxhM0J1cWpDRixDMkI3b2pDQSwwYUFIRSxnQkFGQSxxQkFDQSwyQkFFQSw0Q0FKQSxxQjNCZ3JqQ0YsQzJCMXFqQ0Esd0JBTUUsdUIzQm9xakNGLEMyQjNwakNBLDhDQUNFLGEzQmlxakNGLEMyQi9wakNBLHNEQUNFLG9CM0JpcWpDRixDMkIvcGpDQSxtREFDRSxZM0JpcWpDRixDMkJ6cGpDQSw4Q0FDRSxhM0IrcGpDRixDMkI3cGpDQSxzREFDRSxvQjNCK3BqQ0YsQzJCN3BqQ0EsbURBQ0UsWTNCK3BqQ0YsQzJCdnBqQ0EsMENBQ0UsYTNCNnBqQ0YsQzJCM3BqQ0Esa0RBQ0Usb0IzQjZwakNGLEMyQjNwakNBLCtDQUNFLFkzQjZwakNGLEMyQnpwakNBLDhJQUlFLGEzQjRwakNGLEMyQnpwakNBLGdGQUVFLHFCQUNBLFUzQjJwakNGLEMyQnhwakNBLG9yQ0E0QkUsbUJBQ0EscUJBRUEsaUJBQ0EsZ0JBRkEsYTNCNHBqQ0YsQzJCeHBqQ0Esc25CQWNFLG1CQUNBLHFCQUdBLGdCQUZBLGEzQjJwakNGLEMyQnJwakNBLDZCQUNFLGtDM0J3cGpDRixDMkJqcGpDQSxpTkFLRSxtQkFDQSxhM0JzcGpDRixDMkJocGpDQSx3S0FFRSw4QjNCc3BqQ0YsQzJCcHBqQ0Esc0dBRUUsb0IzQnNwakNGLEMyQnBwakNBLGtJQUVFLHlCQUNBLGEzQnNwakNGLEMyQjVvakNBLDBPQUVFLHdCM0JvcGpDRixDMkIvb2pDQSxvSEFFRSxrQzNCa3BqQ0YsQzJCM29qQ0EsOFFBSUUsYTNCZ3BqQ0YsQzJCOW9qQ0EsMFNBSUUsbUJBQ0Esb0IzQmdwakNGLEMyQjlvakNBLDhMQUlFLGEzQmdwakNGLEMyQnpvakNBLG9GQUlFLFlBREEsbUIzQitvakNGLEMyQjVvakNBLCtEQUVFLFczQjhvakNGLEMyQjVvakNBLG1DQUNFLFMzQjhvakNGLEMyQnRvakNBLGlCQUVFLGNBQWUsQ0FDZixtQkFBb0IsQ0FGcEIsaUIzQjZvakNGLEMyQnpvakNBLHdCQUtFLDhCQUhBLFVBQVcsQ0FLWCxXQUFZLENBSFosTUFBTyxDQUhQLGlCQUFrQixDQUVsQixLQUFNLENBR04sVUFBVyxDQUVYLFczQjJvakNGLEMyQnhvakNBLGlDQUNFLDBCM0Iwb2pDRixDMkJ2b2pDQSx1QkFVRSxxQ0FDQSwwQkFDQSxxQkFFQSxnQ0FBaUMsQ0FaakMsVUFBVyxDQU1YLFdBSkEsUUFBUyxDQUVULHlCQUxBLGlCQUFrQixDQUVsQixPQUFRLENBWVIsa0JBQW1CLENBUm5CLFVBU0EsVzNCc29qQ0YsQzJCM25qQ0Esb1JBUUUsY0FEQSxZQURBLHFCM0Jxb2pDRixDMkJob2pDQSw0S0FJRSxvQkFBcUIsQ0FDckIsa0IzQmtvakNGLEMyQi9uakNBLHdHQUlFLFNBQVUsQ0FGVixpQkFBa0IsQ0FDbEIsSzNCa29qQ0YsQzJCcG5qQ0Esb2FBV0Usd0IzQjRuakNGLEMyQjFuakNBLDBCQUNFLFUzQjRuakNGLEMyQjFuakNBLGlDQUNFLDBCM0I0bmpDRixDMkJ6bmpDQSxzYkFZRSxnQkFDQSxnQ0FFQSxnQkFEQSxxQjNCNm5qQ0YsQzJCcG5qQ0EseUJBQ0UsYUFBYyxDQUNkLGMzQjBuakNGLEMyQnhuakNBLG9DQUNFLGUzQjBuakNGLEMyQnZuakNBLCtCQUVFLHNCQUNBLHNCQUNBLGdCQUhBLHdCQUlBLG1CM0J5bmpDRixDMkJ0bmpDQSx1RUFFRSxhQUFjLENBQ2QsY0FDQSxTM0J3bmpDRixDMkJobmpDQSxpQkFDRSxZQUFhLENBQ2Isa0JBQW1CLENBQ25CLGtCM0JzbmpDRixDMkJwbmpDQSx3QkFDRSxhQUFjLENBQ2Qsa0JBQ0Esa0IzQnNuakNGLEMyQnBuakNBLG9DQUNFLGdCQUFpQixDQUNqQixlM0JzbmpDRixDMkJsbmpDQSx5REFFRSxTM0JxbmpDRixDMkJubmpDQSw2REFFRSxrQjNCcW5qQ0YsQzJCbm5qQ0EsMkRBRUUsUzNCcW5qQ0YsQzJCbm5qQ0EsMkRBRUUsUzNCcW5qQ0YsQzJCbm5qQ0EseURBRUUsa0IzQnFuakNGLEMyQm5uakNBLDZEQUVFLGtCM0JxbmpDRixDMkJubmpDQSw2REFFRSxXM0JxbmpDRixDMkJubmpDQSwyREFFRSxrQjNCcW5qQ0YsQzJCbm5qQ0EseURBRUUsUzNCcW5qQ0YsQzJCam5qQ0EsNENBQ0UsaUJBQ0UsYzNCb25qQ0YsQzJCam5qQ0EsNnlDQXFCRSxlQURBLG9CM0JvbmpDRixDQUNGLEMyQjltakNBLDZCQUVFLGtCQUNBLG1CQUZBLFczQm1uakNGLEMyQjltakNBLHlCQUNFLHFCM0JnbmpDRixDMkI5bWpDQSx5QkFDRSxxQjNCZ25qQ0YsQzJCOW1qQ0EsMkJBQ0Usc0IzQmduakNGLEMyQjltakNBLDBCQUNFLG1CM0JnbmpDRixDMkI5bWpDQSwwQkFDRSxzQjNCZ25qQ0YsQzJCOW1qQ0EseUJBQ0UscUIzQmduakNGLEMyQjltakNBLDJCQUNFLHNCM0JnbmpDRixDMkI5bWpDQSwyQkFDRSxtQjNCZ25qQ0YsQzJCOW1qQ0EsMEJBQ0Usc0IzQmduakNGLEMyQjltakNBLHlCQUNFLHFCM0JnbmpDRixDMkI5bWpDQSw0QkFDRSxzQjNCZ25qQ0YsQzJCOW1qQ0EsNEJBQ0UsbUIzQmduakNGLEMyQjltakNBLDhCQUNFLHNCM0JnbmpDRixDMkI5bWpDQSw4QkFDRSxxQjNCZ25qQ0YsQzJCOW1qQ0EsNkJBQ0Usc0IzQmduakNGLEMyQjltakNBLDZCQUNFLG9CM0JnbmpDRixDMkI1bWpDQSw0Q0FDRSx3akRBdUJFLG9CM0IrbWpDRixDMkI3bWpDQSxpQkFDRSxlM0IrbWpDRixDQUNGLEMyQnhtakNBLDRGQUdFLGFBQWMsQ0FEZCxVM0I4bWpDRixDMkJ0bWpDQSx3QkFFRSxrQkFBbUIsQ0FEbkIsYzNCNG1qQ0YsQzJCem1qQ0EsK0JBQ0UsUUFBUyxDQUNULGlCM0IybWpDRixDMkJ2bWpDQSwwSkFZRSxzQkFQQSxvQkFBcUIsQ0FLckIsc0JBQ0EsZ0JBSEEsZUFBZ0IsQ0FEaEIsWUFBYSxDQU1iLG9CQUpBLHVCQUF3QixDQUh4QixVM0JpbmpDRixDMkJ0bWpDQSw4QkFDRSx3QjNCeW1qQ0YsQzJCcm1qQ0Esc0lBSUUsb0JBQXFCLENBT3JCLGNBSEEsZUFBZ0IsQ0FEaEIsWUFBYSxDQUdiLHFCQUFzQixDQUx0QixVM0I0bWpDRixDMkJsbWpDQSxnRkFFRSx3QjNCcW1qQ0YsQzJCbm1qQ0EsOEVBRUUsUTNCcW1qQ0YsQzJCam1qQ0Esb0NBRUUsa0JBQW1CLENBRG5CLFkzQnFtakNGLEMyQmxtakNBLHFGQUVFLFUzQm9takNGLEMyQjVsakNBLGNBQ0Usc0IzQmltakNGLEMyQi9sakNBLGNBQ0Usc0IzQmltakNGLEMyQi9sakNBLGVBQ0Usc0IzQmltakNGLEMyQi9sakNBLFNBQ0UsYzNCaW1qQ0YsQzJCL2xqQ0EsZUFDRSx1QjNCaW1qQ0YsQzJCL2xqQ0EsYUFDRSx1QjNCaW1qQ0YsQzJCL2xqQ0EsY0FDRSx1QjNCaW1qQ0YsQzJCL2xqQ0EsaUJBQ0UsdUIzQmltakNGLEMyQjdsakNBLCtCQUNFLHNCM0JnbWpDRixDMkI5bGpDQSwrQkFDRSxzQjNCZ21qQ0YsQzJCOWxqQ0EsZ0NBQ0Usc0IzQmdtakNGLEMyQjlsakNBLDBCQUNFLGMzQmdtakNGLEMyQjlsakNBLGdDQUNFLHVCM0JnbWpDRixDMkI5bGpDQSw4QkFDRSx1QjNCZ21qQ0YsQzJCOWxqQ0EsK0JBQ0UsdUIzQmdtakNGLEMyQjlsakNBLGtDQUNFLHVCM0JnbWpDRixDMkI1bGpDQSwyQ0FDRSxzQjNCK2xqQ0YsQzJCN2xqQ0EsMkNBQ0Usc0IzQitsakNGLEMyQjdsakNBLDRDQUNFLHNCM0IrbGpDRixDMkI3bGpDQSxzQ0FDRSxjM0IrbGpDRixDMkI3bGpDQSw0Q0FDRSx1QjNCK2xqQ0YsQzJCN2xqQ0EsMENBQ0UsdUIzQitsakNGLEMyQjdsakNBLDJDQUNFLHVCM0IrbGpDRixDMkI3bGpDQSw4Q0FDRSx1QjNCK2xqQ0Y7QUFPQTs7Ozs7Ozs7RUFRRSxDNEJydGxDRixTQUlFLG1CQUFvQixDQUhwQixZQUFhLENBQ2Isa0JBQW1CLENBQ25CLGNBQWUsQ0FhZixhQVhBLFM1QnM3bUNGLEM0Qno2bUNBLGlCQUNFLG9CQUNBLG9CNUJvN21DRixDNEJsN21DQSxnQ0FDRSxvQkFDQSxvQjVCbzdtQ0YsQzRCLzZtQ0EsZUFDRSxlNUJrN21DRixDNEIxNm1DQSxpREFHRSxvQkFBcUIsQ0FHckIsa0JBQ0EsbUJBTEEsaUJBQWtCLENBTWxCLGtCQUFtQixDQUhuQixXNUJrN21DRixDNEI1Nm1DQSxXQUNFLGtCQUNBLGtCNUI4Nm1DRixDNEJ2Nm1DQSxjQU1FLG1CQUFvQixDQUpwQixZQUFhLENBQ2Isa0JBQW1CLENBQ25CLGNBQWUsQ0FDZix1QkFBd0IsQ0FLeEIsZUFUQSxpQkFBa0IsQ0FNbEIsb0I1Qis2bUNGLEM0QnA2bUNBLDJCQUVFLG9CQURBLGdCNUIyNm1DRixDNEJ4Nm1DQSxzQkFFRSxlQUFnQixDQURoQixZNUIyNm1DRixDNEJuNm1DQSw0Q0FFRSxjNUJ3Nm1DRixDNEJoNm1DQSw4QkFDRSxZNUJzNm1DRixDNEJwNm1DQSw2QkFDRSxlNUJzNm1DRixDNEJsNm1DQSxtSUFFRSxVNUJxNm1DRixDNEJqNm1DQSwwQkFDRSxXQUFZLENBQ1osVzVCbzZtQ0YsQzRCbDZtQ0Esc0NBQ0UsdUI1Qm82bUNGLEM0Qmg2bUNBLHFHQUVFLGU1Qm02bUNGLEM0QnY1bUNBLDRDQUNFLGNBSUUsYUFBYyxDQUNkLGNBQWUsQ0FIZixlQUNBLGdCQUZBLFU1Qm02bUNGLENBQ0YsQzRCNzVtQ0Esa0VBQ0UsY0FFRSxjQUNBLGVBQ0EsaUJBQ0Esa0JBSkEsVTVCbTZtQ0YsQ0FDRixDNEI3NW1DQSxtRUFDRSxjQUVFLGNBQ0EsZUFDQSxnQkFDQSxpQkFKQSxVNUJtNm1DRixDQUNGLEM0Qjc1bUNBLG9FQUNFLGNBRUUsY0FDQSxlQUNBLGlCQUNBLGtCQUpBLFU1Qm02bUNGLENBQ0YsQzRCNzVtQ0EsMENBQ0UsY0FFRSxjQUNBLGVBQ0EsaUJBQ0Esa0JBSkEsVTVCbTZtQ0YsQ0FDRixDNEJoNW1DQSx3SkFFRSxVNUIyNW1DRixDNEJ6NW1DQSwyRkFFRSxTNUIyNW1DRixDNEJ6NW1DQSwrRkFFRSxrQjVCMjVtQ0YsQzRCejVtQ0EsNkZBRUUsUzVCMjVtQ0YsQzRCejVtQ0EsNkZBRUUsUzVCMjVtQ0YsQzRCejVtQ0EsMkZBRUUsa0I1QjI1bUNGLEM0Qno1bUNBLCtGQUVFLGtCNUIyNW1DRixDNEJ6NW1DQSwrRkFFRSxXNUIyNW1DRixDNEJ6NW1DQSw2RkFFRSxrQjVCMjVtQ0YsQzRCejVtQ0EsMkZBRUUsUzVCMjVtQ0YsQzRCejVtQ0EsaUdBRUUsaUI1QjI1bUNGLEM0Qno1bUNBLGlHQUVFLGlCNUIyNW1DRixDNEJ6NW1DQSxxR0FFRSxpQjVCMjVtQ0YsQzRCejVtQ0EscUdBRUUsaUI1QjI1bUNGLEM0Qno1bUNBLG1HQUVFLGlCNUIyNW1DRixDNEJ6NW1DQSxtR0FFRSxXNUIyNW1DRixDNEJ2NW1DQSwyQ0FDRSxvQjVCMDVtQ0YsQzRCeDVtQ0EsMkNBQ0UsbUI1QjA1bUNGLEM0Qng1bUNBLDZDQUNFLDRCNUIwNW1DRixDNEJ4NW1DQSw0Q0FDRSxtQjVCMDVtQ0YsQzRCeDVtQ0EsNENBQ0UsbUI1QjA1bUNGLEM0Qng1bUNBLDJDQUNFLDRCNUIwNW1DRixDNEJ4NW1DQSw2Q0FDRSw0QjVCMDVtQ0YsQzRCeDVtQ0EsNkNBQ0UscUI1QjA1bUNGLEM0Qng1bUNBLDRDQUNFLDRCNUIwNW1DRixDNEJ4NW1DQSwyQ0FDRSxtQjVCMDVtQ0YsQzRCeDVtQ0EsOENBQ0UsMkI1QjA1bUNGLEM0Qng1bUNBLDhDQUNFLDJCNUIwNW1DRixDNEJ4NW1DQSxnREFDRSwyQjVCMDVtQ0YsQzRCeDVtQ0EsZ0RBQ0UsMkI1QjA1bUNGLEM0Qng1bUNBLCtDQUNFLDJCNUIwNW1DRixDNEJ4NW1DQSwrQ0FDRSxxQjVCMDVtQ0YsQzRCdDVtQ0EscUJBQ0UsZTVCeTVtQ0YsQzRCajVtQ0Esd0tBSUUscUI1QnU1bUNGLEM0QnI1bUNBLHdLQUlFLHFCNUJ1NW1DRixDNEJyNW1DQSxnTEFJRSxzQjVCdTVtQ0YsQzRCcjVtQ0EsNEtBSUUsbUI1QnU1bUNGLEM0QnI1bUNBLDRLQUlFLHNCNUJ1NW1DRixDNEJyNW1DQSx3S0FJRSxxQjVCdTVtQ0YsQzRCcjVtQ0EsZ0xBSUUsc0I1QnU1bUNGLEM0QnI1bUNBLGdMQUlFLG1CNUJ1NW1DRixDNEJyNW1DQSw0S0FJRSxzQjVCdTVtQ0YsQzRCcjVtQ0Esd0tBSUUscUI1QnU1bUNGLEM0QnI1bUNBLG9MQUlFLHNCNUJ1NW1DRixDNEJyNW1DQSxvTEFJRSxtQjVCdTVtQ0YsQzRCcjVtQ0EsNExBSUUsc0I1QnU1bUNGLEM0QnI1bUNBLDRMQUlFLHFCNUJ1NW1DRixDNEJyNW1DQSx3TEFJRSxzQjVCdTVtQ0YsQzRCcjVtQ0Esd0xBSUUsb0I1QnU1bUNGLEM0Qi80bUNBLGtFQUNFLG9NQUlFLHFCNUJxNW1DRixDNEJuNW1DQSxvTUFJRSxxQjVCcTVtQ0YsQzRCbjVtQ0EsNE1BSUUsc0I1QnE1bUNGLEM0Qm41bUNBLHdNQUlFLG1CNUJxNW1DRixDNEJuNW1DQSx3TUFJRSxzQjVCcTVtQ0YsQzRCbjVtQ0Esb01BSUUscUI1QnE1bUNGLEM0Qm41bUNBLDRNQUlFLHNCNUJxNW1DRixDNEJuNW1DQSw0TUFJRSxtQjVCcTVtQ0YsQzRCbjVtQ0Esd01BSUUsc0I1QnE1bUNGLEM0Qm41bUNBLG9NQUlFLHFCNUJxNW1DRixDNEJuNW1DQSxnTkFJRSxzQjVCcTVtQ0YsQzRCbjVtQ0EsZ05BSUUsbUI1QnE1bUNGLEM0Qm41bUNBLHdOQUlFLHNCNUJxNW1DRixDNEJuNW1DQSx3TkFJRSxxQjVCcTVtQ0YsQzRCbjVtQ0Esb05BSUUsc0I1QnE1bUNGLEM0Qm41bUNBLG9OQUlFLG9CNUJxNW1DRixDQUNGLEM0Qmo1bUNBLGtFQUNFLG9NQUlFLHFCNUJvNW1DRixDNEJsNW1DQSxvTUFJRSxxQjVCbzVtQ0YsQzRCbDVtQ0EsNE1BSUUsc0I1Qm81bUNGLEM0Qmw1bUNBLHdNQUlFLG1CNUJvNW1DRixDNEJsNW1DQSx3TUFJRSxzQjVCbzVtQ0YsQzRCbDVtQ0Esb01BSUUscUI1Qm81bUNGLEM0Qmw1bUNBLDRNQUlFLHNCNUJvNW1DRixDNEJsNW1DQSw0TUFJRSxtQjVCbzVtQ0YsQzRCbDVtQ0Esd01BSUUsc0I1Qm81bUNGLEM0Qmw1bUNBLG9NQUlFLHFCNUJvNW1DRixDNEJsNW1DQSxnTkFJRSxzQjVCbzVtQ0YsQzRCbDVtQ0EsZ05BSUUsbUI1Qm81bUNGLEM0Qmw1bUNBLHdOQUlFLHNCNUJvNW1DRixDNEJsNW1DQSx3TkFJRSxxQjVCbzVtQ0YsQzRCbDVtQ0Esb05BSUUsc0I1Qm81bUNGLEM0Qmw1bUNBLG9OQUlFLG9CNUJvNW1DRixDQUNGLEM0Qmg1bUNBLHlDQUNJLDRNQUlBLHFCNUJtNW1DRixDNEJqNW1DQSw0TUFJRSxxQjVCbTVtQ0YsQzRCajVtQ0Esb05BSUUsc0I1Qm01bUNGLEM0Qmo1bUNBLGdOQUlFLG1CNUJtNW1DRixDNEJqNW1DQSxnTkFJRSxzQjVCbTVtQ0YsQzRCajVtQ0EsNE1BSUUscUI1Qm01bUNGLEM0Qmo1bUNBLG9OQUlFLHNCNUJtNW1DRixDNEJqNW1DQSxvTkFJRSxtQjVCbTVtQ0YsQzRCajVtQ0EsZ05BSUUsc0I1Qm01bUNGLEM0Qmo1bUNBLDRNQUlFLHFCNUJtNW1DRixDNEJqNW1DQSx3TkFJRSxzQjVCbTVtQ0YsQzRCajVtQ0Esd05BSUUsbUI1Qm01bUNGLEM0Qmo1bUNBLGdPQUlFLHNCNUJtNW1DRixDNEJqNW1DQSxnT0FJRSxxQjVCbTVtQ0YsQzRCajVtQ0EsNE5BSUUsc0I1Qm01bUNGLEM0Qmo1bUNBLDROQUlFLG9CNUJtNW1DRixDQUNGLEM0Qi80bUNBLG9FQUNFLDROQUlFLHFCNUJrNW1DRixDNEJoNW1DQSw0TkFJRSxxQjVCazVtQ0YsQzRCaDVtQ0Esb09BSUUsc0I1Qms1bUNGLEM0Qmg1bUNBLGdPQUlFLG1CNUJrNW1DRixDNEJoNW1DQSxnT0FJRSxzQjVCazVtQ0YsQzRCaDVtQ0EsNE5BSUUscUI1Qms1bUNGLEM0Qmg1bUNBLG9PQUlFLHNCNUJrNW1DRixDNEJoNW1DQSxvT0FJRSxtQjVCazVtQ0YsQzRCaDVtQ0EsZ09BSUUsc0I1Qms1bUNGLEM0Qmg1bUNBLDROQUlFLHFCNUJrNW1DRixDNEJoNW1DQSx3T0FJRSxzQjVCazVtQ0YsQzRCaDVtQ0Esd09BSUUsbUI1Qms1bUNGLEM0Qmg1bUNBLGdQQUlFLHNCNUJrNW1DRixDNEJoNW1DQSxnUEFJRSxxQjVCazVtQ0YsQzRCaDVtQ0EsNE9BSUUsc0I1Qms1bUNGLEM0Qmg1bUNBLDRPQUlFLG9CNUJrNW1DRixDQUNGLEM0Qjk0bUNBLDBDQUNFLG9OQUlFLHFCNUJpNW1DRixDNEIvNG1DQSxvTkFJRSxxQjVCaTVtQ0YsQzRCLzRtQ0EsNE5BSUUsc0I1Qmk1bUNGLEM0Qi80bUNBLHdOQUlFLG1CNUJpNW1DRixDNEIvNG1DQSx3TkFJRSxzQjVCaTVtQ0YsQzRCLzRtQ0Esb05BSUUscUI1Qmk1bUNGLEM0Qi80bUNBLDROQUlFLHNCNUJpNW1DRixDNEIvNG1DQSw0TkFJRSxtQjVCaTVtQ0YsQzRCLzRtQ0Esd05BSUUsc0I1Qmk1bUNGLEM0Qi80bUNBLG9OQUlFLHFCNUJpNW1DRixDNEIvNG1DQSxnT0FJRSxzQjVCaTVtQ0YsQzRCLzRtQ0EsZ09BSUUsbUI1Qmk1bUNGLEM0Qi80bUNBLHdPQUlFLHNCNUJpNW1DRixDNEIvNG1DQSx3T0FJRSxxQjVCaTVtQ0YsQzRCLzRtQ0Esb09BSUUsc0I1Qmk1bUNGLEM0Qi80bUNBLG9PQUlFLG9CNUJpNW1DRixDQUNGLEM0QjE0bUNBLGdFQUlFLHNCQUF1QixDQUR2QixpQjVCZzVtQ0YsQzRCNzRtQ0EsNExBR0UsZTVCKzRtQ0YsQzRCNTRtQ0EseURBRUUsYUFBYyxDQUNkLGdCQUFpQixDQUNqQixpQjVCODRtQ0YsQzRCdjRtQ0EsK0ZBR0Usb0JBQ0Esb0I1QjQ0bUNGLEM0Qno0bUNBLDRJQUdFLG9CQUNBLG9CNUIyNG1DRixDNEJ2NG1DQSxvRUFFRSxtQkFDQSxtQjVCMDRtQ0YsQzRCeDRtQ0Esa0dBRUUsbUJBQ0EsbUI1QjA0bUNGLEM0Qmw0bUNBLG9EQUNFLGtCNUJ1NG1DRixDNEJyNG1DQSx1Q0FDRSx1QkFBeUIsQ0FDekIsd0I1QnU0bUNGLEM0QnI0bUNBLHFDQUVFLHlCQUEyQixDQUQzQixzQjVCdzRtQ0YsQzRCaDRtQ0Esd0NBQ0UsaUI1QnE0bUNGLEM0Qm40bUNBLHlDQUNFLGdCNUJxNG1DRixDNEI3M21DQSx1SUFFRSx3QzVCazRtQ0YsQzRCOTNtQ0EsMkdBR0UsbUJBREEsZ0JBR0EsZ0JBQWlCLENBRGpCLGE1Qms0bUNGLEM0Qi8zbUNBLDJDQUVFLGVBQWdCLENBRGhCLFk1Qms0bUNGLEM0QjMzbUNBLHFKQUVFLGU1QjgzbUNGLEM0QjEzbUNBLCtEQUNFLFk1QjYzbUNGLEM0QngzbUNBLDhCQUNFLHdDNUIyM21DRixDNEJ6M21DQSwwQ0FDRSxlNUIyM21DRixDNEJ2M21DQSwyQ0FDRSxpQjVCMDNtQ0YsQzRCeDNtQ0Esa0RBVUUseUNBUkEsVUFBVyxDQUtYLFVBQVcsQ0FIWCxNQUFPLENBS1AsY0FSQSxpQkFBa0IsQ0FFbEIsS0FBTSxDQUdOLHVCNUI0M21DRixDNEJwM21DQSwyR0FFRSxVNUJ1M21DRixDNEJuM21DQSw4REFDRSxlNUJzM21DRixDNEJsM21DQSx5SkFFRSx3QzVCcTNtQ0YsQzRCbjNtQ0EsaUxBRUUsZTVCcTNtQ0YsQzRCbjNtQ0EsMkRBQ0Usd0M1QnEzbUNGLEM0QmozbUNBLDBEQUNFLG1CQUNBLG9CQUNBLHVCNUJvM21DRixDNEJsM21DQSx5RUFDRSxtQkFDQSxvQkFDQSx1QjVCbzNtQ0YsQzRCNzJtQ0EsZ0JBR0UsNkJBREEsYUFEQSxVNUJvM21DRixDNEIvMm1DQSxxQkFJRSw4QkFGQSxRQUFTLENBQ1QsU0FBVSxDQUZWLG9CNUJvM21DRixDNEIvMm1DQSwrREFFRSw2QjVCaTNtQ0YsQzRCOTJtQ0EsNkVBRUUsZTVCZzNtQ0YsQzRCNzJtQ0EsK0RBRUUsVzVCKzJtQ0YsQzRCNzJtQ0EsK0VBRUUsYTVCKzJtQ0YsQzRCNzJtQ0EsNkdBRUUsVzVCKzJtQ0YsQzRCMzJtQ0EscUNBQ0UsZUFBZ0IsQ0FDaEIsUTVCODJtQ0YsQzRCejJtQ0Esb0hBQ0UsZTVCODJtQ0YsQzRCdDJtQ0Esc09BT0UsK0JBQWlDLENBRmpDLHFCQUFzQixDQUN0QixrQjVCNjJtQ0YsQzRCeDJtQ0EscVBBT0UsMkJBQTZCLENBRjdCLHFCQUFzQixDQUN0QixxQjVCNDJtQ0YsQzRCdjJtQ0EscVBBT0UsNkJBQStCLENBRi9CLHFCQUFzQixDQUN0QixxQjVCMjJtQ0YsQzRCdDJtQ0EsZ0tBTUUsa0JBQW1CLENBRG5CLDZCQUErQixDQUUvQixxQjVCeTJtQ0YsQzRCdDJtQ0EsMEtBS0UsVzVCdzJtQ0YsQzRCaDJtQ0EscU9BTUUsa0JBQW1CLENBRG5CLGU1QnUybUNGLEM0QmwybUNBLCtPQU1FLGtCQUFtQixDQURuQixpQjVCczJtQ0YsQzRCbjJtQ0Esa0NBQ0Usc0I1QnEybUNGLEM0QmoybUNBLDBPQU1FLGtCQUFtQixDQURuQixnQjVCcTJtQ0YsQzRCaDJtQ0Esb0tBTUUsWUFBYSxDQURiLGtCNUJvMm1DRixDSzVscENDLDZFdUJ1d0NHLHlCQUNBLFU1QjYxbUNKLENLcm1wQ0MsbUZ1QnV3Q0cseUJBQ0EsVTVCbTJtQ0osQ0szbXBDQyxpRXVCdXdDRyx5QkFDQSxVNUJ5Mm1DSixDS2pucENDLDBFdUJ1d0NHLHlCQUNBLFU1QisybUNKLENLdm5wQ0MsMEV1QnV3Q0cseUJBQ0EsVTVCcTNtQ0osQ0s3bnBDQyx1RXVCdXdDRyx5QkFDQSxVNUIyM21DSixDS25vcENDLHVFdUJ1d0NHLHlCQUNBLFU1Qmk0bUNKLENLem9wQ0Msb0V1QnV3Q0cseUJBQ0EsVTVCdTRtQ0osQ0svb3BDQyxvRXVCdXdDRyx5QkFDQSxVNUI2NG1DSixDS3JwcENDLDBFdUJ1d0NHLHlCQUNBLFU1Qm01bUNKLENLM3BwQ0MsMEV1QnV3Q0cseUJBQ0EsVTVCeTVtQ0osQ0tqcXBDQyxvRXVCdXdDRyx5QkFDQSxVNUIrNW1DSixDS3ZxcENDLHVFdUJ1d0NHLHlCQUNBLFU1QnE2bUNKLENLN3FwQ0Msb0V1QnV3Q0cseUJBQ0EsVTVCMjZtQ0osQ0tucnBDQyx1RXVCdXdDRyx5QkFDQSxVNUJpN21DSixDNEJ4Nm1DQSx5SUFHRSxvQkFBcUIsQ0FDckIsVzVCNjZtQ0YsQzRCMzZtQ0EsOElBR0UsVzVCNjZtQ0YsQzRCbjZtQ0EsNENBQ0UsbUhBR0UsMEI1Qnk2bUNGLEM0QnY2bUNBLHNGQUVFLDZCNUJ5Nm1DRixDNEJyNm1DQSx5TUFFRSx3QzVCdzZtQ0YsQzRCdDZtQ0EsdU1BRUUsZTVCdzZtQ0YsQzRCcjZtQ0EsbUdBQ0Usd0M1Qnc2bUNGLEM0QnQ2bUNBLGtHQUNFLGU1Qnc2bUNGLEM0QnI2bUNBLG1FQUNFLDZCNUJ3Nm1DRixDNEJ0Nm1DQSxrRUFDRSxlNUJ3Nm1DRixDQUNGLEM0QnA2bUNBLGtFQUNFLG1IQUdFLDBCNUJ1Nm1DRixDNEJyNm1DQSw4Q0FDRSw2QjVCdTZtQ0YsQzRCbjZtQ0EseU1BRUUsd0M1QnM2bUNGLEM0QnA2bUNBLHVNQUVFLGU1QnM2bUNGLEM0Qm42bUNBLG1HQUNFLHdDNUJzNm1DRixDNEJwNm1DQSxrR0FDRSxlNUJzNm1DRixDNEJuNm1DQSxtRUFDRSw2QjVCczZtQ0YsQzRCcDZtQ0Esa0VBQ0UsZTVCczZtQ0YsQ0FDRixDNEJsNm1DQSx5Q0FDRSx5SEFHRSwwQjVCcTZtQ0YsQzRCbjZtQ0EsZ0RBQ0UsNkI1QnE2bUNGLEM0Qmo2bUNBLDZNQUVFLHdDNUJvNm1DRixDNEJsNm1DQSwyTUFFRSxlNUJvNm1DRixDNEJqNm1DQSxxR0FDRSx3QzVCbzZtQ0YsQzRCbDZtQ0Esb0dBQ0UsZTVCbzZtQ0YsQzRCajZtQ0EscUVBQ0UsNkI1Qm82bUNGLEM0Qmw2bUNBLG9FQUNFLGU1Qm82bUNGLENBQ0YsQzRCMzVtQ0Esa0VBQ0Usa0JBQ0UsVTVCaTZtQ0YsQzRCLzVtQ0EsOENBRUUsa0JBQW9CLENBQ3BCLG1CNUJpNm1DRixDNEIvNW1DQSw4REFLRSx5QkFBMkIsQ0FIM0IsOEJBQWdDLENBSWhDLFFBQVMsQ0FGVCw4QkFEQSwwQjVCbzZtQ0YsQzRCLzVtQ0EscUtBR0Usb0I1Qmk2bUNGLEM0QjE1bUNBLG1WQUdFLG1CNUJpNm1DRixDNEJyNW1DQSx3ZkFHRSw0QjVCaTZtQ0YsQzRCMTVtQ0EsbVZBR0UsbUI1Qmk2bUNGLEM0QjE1bUNBLG1WQUdFLG1CNUJpNm1DRixDNEIxNW1DQSxrV0FHRSw0QjVCaTZtQ0YsQzRCMTVtQ0EscVdBR0UsNEI1Qmk2bUNGLEM0Qi81bUNBLGlMQUdFLHFCNUJpNm1DRixDQUNGLEM0Qjc1bUNBLDRDQUNFLDhDQUVFLGtCQUFvQixDQUNwQixtQjVCZzZtQ0YsQzRCOTVtQ0EsOERBS0UseUJBQTJCLENBRDNCLGtCQUFvQixDQURwQiw4QkFEQSwwQjVCbTZtQ0YsQzRCOTVtQ0EscU5BR0Usb0I1Qmc2bUNGLEM0QnI0bUNBLHN4Q0FHRSxtQjVCZzZtQ0YsQzRCMTRtQ0EsNmtDQUdFLDRCNUJnNm1DRixDNEJwNW1DQSxzcUJBR0UsbUI1Qmc2bUNGLEM0QnY1bUNBLG1CQUVFLHVCQUF5QixDQUN6Qix3QkFBMEIsQ0FGMUIsVTVCZzZtQ0YsQzRCNTVtQ0EsbVFBU0UseUJBQTJCLENBRDNCLGtCQUFzQixDQUV0Qix1QkFIQSxvQjVCaTZtQ0YsQzRCNTVtQ0EseUNBQ0UsUUFBUyxDQUNULFM1Qjg1bUNGLEM0QjE1bUNBLHVGQUVFLHdCQUEwQixDQUMxQix5QjVCNjVtQ0YsQzRCejVtQ0EsK0VBRUUsNEJBQ0EsNEI1QjQ1bUNGLEM0Qng1bUNBLGdQQUlFLHlCNUIyNW1DRixDNEJ6NW1DQSw0TUFJRSx1QzVCMjVtQ0YsQzRCeDVtQ0EsME1BSUUsd0NBQ0EseUJBQTJCLENBRTNCLDhCQURBLDBCNUIyNW1DRixDNEJ2NW1DQSwrQkFDRSx5QjVCeTVtQ0YsQzRCdjVtQ0EsdUhBRUUsd0JBQTBCLENBQzFCLHlCNUJ5NW1DRixDNEJ6M21DQSx3L0JBSUUsc0I1Qm81bUNGLENBbEdGLEM0Qjl5bUNBLGtFQW1CRSx3L0JBSUUsc0I1Qm81bUNGLENBQ0YsQzRCaDVtQ0EsbUVBbUJFLGdnQ0FJRSxzQjVCbTVtQ0YsQ0FDRixDNEIvNG1DQSxvRUFhRSxzdkJBSUUsc0I1Qms1bUNGLENBQ0YsQzRCOTRtQ0EsMENBT0Usb2ZBSUUsc0I1Qmk1bUNGLENBQ0YsQzRCcDRtQ0Esb0ZBQ0UsbUJBQ0EsbUI1Qjg0bUNGLEM0QnA0bUNBLHlEQUVFLHFCQURBLGlCNUI2NG1DRixDNEJ4NG1DQSwrRkFFRSxhNUIyNG1DRixDNEJ6NG1DQSw2SEFFRSxXNUIyNG1DRixDNEJwNG1DQSwrRkFFRSxvQkFDQSxtQjVCeTRtQ0YsQzRCdDRtQ0Esa0NBQ0Usb0JBQ0Esb0I1Qnc0bUNGLEM0QjkzbUNBLHVGQUVFLHNCQURBLGtCNUJ1NG1DRixDNEJsNG1DQSw2SEFFRSxjNUJxNG1DRixDNEJuNG1DQSwySkFFRSxZNUJxNG1DRixDNkIxc3FDQSxTQUlFLGdCQUVBLG9DQUVBLDJCQURBLDBDQU5BLFlBQWEsQ0FFYiwyREFFQSxnQkFIQSxjQU9BLHVCN0I4Z3NDRixDNkIzZ3NDQSxlQUlFLFVBQVcsQ0FIWCxVQUFXLENBQ1gsYUFBYyxDQUNkLFFBQVMsQ0FFVCxpQjdCNmdzQ0YsQzZCMWdzQ0EscUJBQ0UsWTdCNGdzQ0YsQzZCMWdzQ0Esb0JBQ0UsZTdCNGdzQ0YsQzZCcGdzQ0EsZUFDRSxRN0J5Z3NDRixDNkJ0Z3NDQSw4QkFDRSxZN0J3Z3NDRixDNkJqZ3NDQSw4QkFFRSxrQkFBbUIsQ0FEbkIsWTdCdWdzQ0YsQzZCbmdzQ0EsZUFLRSx1Q0FBd0MsQ0FJeEMsZ0JBR0Esc0JBTkEsYUFBYyxDQU9kLGdCQVZBLGFBQWMsQ0FPZCxpQ0FUQSxpQkFBa0IsQ0FHbEIsb0JBQXFCLENBT3JCLG9CQUdBLGtFQVBBLGdCQUFpQixDQUxqQixxQjdCZ2hzQ0YsQzZCamdzQ0EsMkJBQ0UsMkM3Qm1nc0NGLEM2Qi8vckNBLHNCQVFFLDZCQU5BLFVBQVcsQ0FHWCxXQUFZLENBSlosaUJBQWtCLENBR2xCLE9BQVEsQ0FEUixLQUFNLENBSU4sUzdCa2dzQ0YsQzZCMS9yQ0EsNEVBSUUsZ0JBREEsZ0I3Qmdnc0NGLEM2QjcvckNBLDZCQUNFLFk3QisvckNGLEM2QjcvckNBLDRCQUNFLGU3QisvckNGLEM2QngvckNBLHNCQUVFLFdBQ0EseUJBRkEsVTdCKy9yQ0YsQzZCdC9yQ0Esc0NBTUUsY0FIQSxlQUNBLDJCQUNBLHdCQUpBLGlCQUFrQixDQUNsQixLN0IrL3JDRixDNkJwL3JDQSxtQ0FHRSxtQkFBb0IsQ0FEcEIsWUFBYSxDQUViLHNCN0J5L3JDRixDNkJsL3JDQSxzQkFDRSxVN0J1L3JDRixDNkJyL3JDQSxxQ0FHRSxlQUZBLGlCQUFrQixDQUNsQixLN0J3L3JDRixDNkJyL3JDQSw0QkFDRSxjQUVBLDJCQURBLHVCN0J3L3JDRixDNkIvK3JDQSxxREFHRSxjQUVBLGdCQUhBLFFBQVMsQ0FFVCxxQjdCcS9yQ0YsQzZCai9yQ0EseUNBRUUsY0FDQSxnQkFGQSxlN0JxL3JDRixDNkIxK3JDQSwrQkFFRSxZQUNBLGlCQUZBLFM3QmsvckNGLEM2QjUrckNBLDhCQUdFLGdCQURBLDRDQUdBLHVDQUNBLCtCQUFpQyxDQUZqQyxTQUhBLDBCN0JvL3JDRixDNkIxK3JDQSxrQ0FLRSxpQ0FJQSwwQkFIQSxnQ0FIQSx3QkFLQSwwQkFQQSxRQUFTLENBR1QsMkNBRkEsZUFBZ0IsQ0FLaEIsOEJBR0EseUI3QjYrckNGLEM2QnYrckNBLG1GQUNFLHFDQUNBLCtCN0I2K3JDRixDNkIzK3JDQSx5Q0FDRSxxQ0FFQSxnQ0FEQSx5QjdCOCtyQ0YsQzZCMStyQ0Esc0RBQ0UsYTdCNCtyQ0YsQzZCMStyQ0EsdURBQ0Usb0JBQXFCLENBRXJCLFdBREEsd0JBRUEsNEI3QjQrckNGLEM2QnYrckNBLDJFQUVFLDJCQUNBLHNCN0IwK3JDRixDNkJ0K3JDQSx1Q0FDRSxnQjdCeStyQ0YsQzZCcityQ0EsOEZBRUUsd0I3QncrckNGLEM2QnArckNBLHVDQUVFLGVBQWdCLENBRGhCLFdBQVksQ0FFWixlN0J1K3JDRixDNkJyK3JDQSx1Q0FPRSx1REFEQSx1Q0FMQSxTQUFVLENBSVYsU0FGQSxXQUFZLENBQ1oscUI3QjArckNGLEM2QnIrckNBLDhDQUNFLFE3QnUrckNGLEM2QnIrckNBLG9EQUNFLEs3QnUrckNGLEM2QnIrckNBLHdDQUVFLDRCQUE2QixDQUQ3Qix5QjdCdytyQ0YsQzZCcityQ0Esd0NBQ0UsZTdCdStyQ0YsQzZCbityQ0Esb0NBQ0UsVTdCcytyQ0YsQzZCLzlyQ0EscUNBQ0UsZ0JBQ0Esd0I3Qm8rckNGLEM2QmwrckNBLCtCQUVFLHFCQURBLGtCQUVBLHdCN0JvK3JDRixDNkJsK3JDQSwrQkFDRSx3QjdCbytyQ0YsQzZCbCtyQ0Esc0JBQ0UsZ0JBQ0EsVTdCbytyQ0YsQzZCbCtyQ0EsZ0NBRUUsZ0JBREEsbUM3QnErckNGLEM2Qjk5ckNBLDRCQUNFLG9CQUFxQixDQUVyQixlQURBLHFCQUFzQixDQUV0QixXN0JtK3JDRixDNkJqK3JDQSxnREFDRSxhQUFjLENBQ2QsY0FBZSxDQUNmLFU3Qm0rckNGLEM2QnY5ckNBLDRCQUNFLHlCN0JnK3JDRixDNkJ2OXJDQSxtREFDRSx1QjdCNjlyQ0YsQzZCMzlyQ0EsdUNBRUUsUUFBUyxDQURULFE3Qjg5ckNGLEM2QnQ5ckNBLDRDQUNFLHVCQUVFLHVCQUF5QixDQUN6Qix3QkFBMEIsQ0FGMUIsb0I3QjY5ckNGLENBQ0YsQzZCejlyQ0EseUNBQ0UsNkhBQ0UsdUM3QjI5ckNGLEM2Qno5ckNBLGtQQUVFLHdDN0IyOXJDRixDQUNGLEM2Qjk4ckNBLHdHQUtFLDJCQUNBLHNCQUZBLGM3Qnc5ckNGLEM2Qjk4ckNBLDZFQUdFLDJCQUNBLHFCN0JtOXJDRixDNkIzOHJDQSxzQkFDRSwyQkFHQSxnQkFGQSxzQkFDQSxlN0JpOXJDRixDNkI5OHJDQSw2QkFDRSxTN0JnOXJDRixDNkJ6OHJDQSxpRUFFRSxpQ0FDQSxxQjdCODhyQ0YsQzZCdDhyQ0EsMkJBRUUsNEJBQTZCLENBQzdCLHdCQUZBLGNBQWUsQ0FHZixtQjdCMjhyQ0YsQzZCOTdyQ0Esc0VBRUUsWUFBYSxDQUNiLDJCN0J1OHJDRixDNkJwOHJDQSx3RUFFRSxZQUFhLENBQ2IsMEI3QnU4ckNGLEM2QnA4ckNBLHVHQUVFLGU3QnM4ckNGLEM2Qmw4ckNBLDBFQUVFLFlBQWEsQ0FDYiwwQkFBNEIsQ0FDNUIsMkI3QnE4ckNGLEM2Qmo4ckNBLDhEQUdFLE1BQU8sQ0FEUCxVN0JxOHJDRixDNkJoOHJDQSxzRkFFRSxZN0JtOHJDRixDNkI1N3JDQSxrQkFHRSxnQkFDQSwwQ0FIQSxhQUFjLENBQ2QscUI3Qm04ckNGLEM2Qjc3ckNBLHdCQUVFLGdCQUVBLGlCQUFrQixDQURsQixlQUFnQixDQUZoQixhN0JtOHJDRixDNkI5N3JDQSxvQ0FDRSwyQzdCZzhyQ0YsQzZCOTdyQ0EsbUNBQ0UsMkM3Qmc4ckNGLEM2QjU3ckNBLCtCQUNFLFdBQVksQ0FDWixpQjdCKzdyQ0YsQzZCMzdyQ0EsK0RBR0UsWUFDQSxrQkFGQSxZN0JnOHJDRixDNkI1N3JDQSxzQ0FDRSxXQUNBLGlCN0I4N3JDRixDNkJ6N3JDQSwrQkFPRSw2QkFMQSxVQUFXLENBSVgsV0FGQSxNQUFPLENBSFAsaUJBQWtCLENBRWxCLEtBQU0sQ0FFTixVN0I4N3JDRixDNkJ6N3JDQSwyQ0FDRSxzQjdCMjdyQ0YsQzZCdDdyQ0EsOEJBQ0UsMkI3Qnk3ckNGLEM2QnY3ckNBLDhCQUNFLGVBQWdCLENBR2hCLHFCQURBLHNCQURBLHlCN0IyN3JDRixDNkJ2N3JDQSwwRkFFRSxxQjdCeTdyQ0YsQzZCdjdyQ0EscUNBQ0UsWTdCeTdyQ0YsQzZCcjdyQ0EsK0JBQ0UsMkJBQ0EsZUFBZ0IsQ0FDaEIsZTdCdzdyQ0YsQzZCdDdyQ0EsMkNBQ0UsMkM3Qnc3ckNGLEM2QnQ3ckNBLDBDQUNFLDJDN0J3N3JDRixDNkJ0N3JDQSwwQ0FDRSwwQjdCdzdyQ0YsQzZCdDdyQ0Esa0RBQ0UsZ0I3Qnc3ckNGLEM2QnQ3ckNBLDJDQUNFLDZCQUVBLHNCQURBLGU3Qnk3ckNGLEM2Qmg3ckNBLGlCQUlFLDRCQUNBLDRDQUpBLGVBQWdCLENBQ2hCLHlCN0J3N3JDRixDNkJuN3JDQSx1QkFDRSxnQzdCcTdyQ0YsQzZCbjdyQ0EsdUJBQ0Usc0JBQXVCLENBS3ZCLGlGQUVBLHNCQURBLGdDN0JxN3JDRixDNkJsN3JDQSw4QkFDRSxZN0JvN3JDRixDNkJoN3JDQSw2QkFDRSw0QkFBNkIsQ0FDN0Isb0I3Qm03ckNGLEM2Qi82ckNBLDhCQUNFLHFCQUdBLHFCQUlBLHNEQUxBLHFCQUlBLGdCQUxBLHNCQUdBLGdCQUNBLGtCN0JvN3JDRixDNkI5NnJDQSxzSEFFRSxlQUFnQixDQUNoQixhQUFjLENBRWQsY0FBZSxDQURmLFlBQWEsQ0FFYixVN0JpN3JDRixDNkIvNnJDQSw4Q0FHRSxVQUZBLGlCQUFrQixDQUNsQixzQjdCazdyQ0YsQzZCNzZyQ0Esd0JBQ0UsNEJBR0Esa0JBQW1CLENBRm5CLGVBQWdCLENBR2hCLDZCQUZBLHlCN0JrN3JDRixDNkI5NnJDQSw4QkFDRSxlQUFnQixDQUloQiw0QkFBZ0IsQ0FBaEIsZTdCZzdyQ0YsQzZCOTZyQ0EscUNBQ0UscUJBRUEscUJBRUEsc0RBSEEsc0JBRUEsZTdCaTdyQ0YsQzZCNTZyQ0EsMEJBQ0UsNEJBR0Esa0JBQW1CLENBRm5CLGVBQWdCLENBR2hCLCtCQUZBLHlCN0JpN3JDRixDNkI3NnJDQSxnQ0FDRSxlQUFnQixDQUloQiw0QkFBa0IsQ0FBbEIsaUI3Qis2ckNGLEM2Qjc2ckNBLHVDQUNFLHFCQUVBLHFCQUVBLHNEQUhBLHNCQUVBLGlCN0JnN3JDRixDNkIzNnJDQSxnQ0FDRSw0QkFHQSxrQkFBbUIsQ0FFbkIsOEJBSkEsZUFBZ0IsQ0FHaEIsaUJBQWtCLENBRmxCLHlCN0JpN3JDRixDNkI1NnJDQSxzQ0FDRSxlQUFnQixDQUloQiw0QkFBaUIsQ0FBakIsZ0I3Qjg2ckNGLEM2QjU2ckNBLDZDQUNFLHFCQUVBLHFCQUVBLHNEQUhBLHNCQUVBLGlCN0IrNnJDRixDNkIxNnJDQSx1Q0FLRSw0QkFBbUIsQ0FBbkIsa0JBQW1CLENBQW5CLGdDQUFtQixDQUpuQixlN0JpN3JDRixDNkJwNnJDQSxvQkFFRSxtQkFBb0IsQ0FEcEIsUUFBUyxDQUVULHFCN0J5NnJDRixDNkJwNnJDQSx1RUFDRSwyQzdCeTZyQ0YsQzZCdjZyQ0EsNENBQ0UsWTdCeTZyQ0YsQzZCdDZyQ0EsMEJBQ0UsY0FDQSxpQjdCdzZyQ0YsQzZCdDZyQ0Esc0NBQ0Usa0I3Qnc2ckNGLEM2QnA2ckNBLGlDQUdFLGlDQUZBLGVBQWdCLENBSWhCLGVBQWdCLENBRGhCLHNCQUZBLHVCN0IwNnJDRixDNkJoNnJDQSxtQkFDRSxnQkFJQSxXQUFZLENBRFosZUFBZ0IsQ0FFaEIsZUFBZ0IsQ0FKaEIseUJBQ0EseUI3Qnc2ckNGLEM2Qmo2ckNBLHlCQUNFLGlCQUFrQixDQUtsQixnQkFIQSxXQUFZLENBS1osMkJBTkEsZUFBZ0IsQ0FHaEIscUJBREEsZ0NBR0EseUI3QnE2ckNGLEM2Qmg2ckNBLGdDQUNFLHNCN0JtNnJDRixDNkIvNXJDQSxnQ0FHRSw0QkFGQSxlQUFnQixDQUNoQixpQjdCbTZyQ0YsQzZCOTVyQ0Esc0NBQ0UsUTdCaTZyQ0YsQzZCNzVyQ0EsNEdBR0UsMkJBQ0EscUI3Qmc2ckNGLEM2QjU1ckNBLGdDQUlFLDBCN0IrNXJDRixDNkIzNXJDQSxzRUFORSwyQkFEQSxlQUFnQixDQUVoQixxQjdCczZyQ0YsQzZCejVyQ0Esd0dBRUUsd0I3QjQ1ckNGLEM2QjE1ckNBLHVJQUdFLCtCQUNBLFU3QjQ1ckNGLEM2QjE1ckNBLHlDQUNFLCtCQUNBLFU3QjQ1ckNGLEM2Qng1ckNBLHdCQUNFLGFBQWMsQ0FDZCxjN0IyNXJDRixDNkJ6NXJDQSx5Q0FDRSxjN0IyNXJDRixDNkJ6NXJDQSw0QkFDRSxlN0IyNXJDRixDNkJ2NXJDQSx1REFDRSxxQjdCMDVyQ0YsQzZCeDVyQ0EsNkRBQ0UsU0FDQSx5QjdCMDVyQ0YsQzZCbDVyQ0Esa0NBQ0UsV0FBWSxDQUVaLHFDQURBLHNCN0J3NXJDRixDNkJyNXJDQSx5Q0FDRSxlN0J1NXJDRixDNkI5NHJDQSwwRUFDRSw0QjdCcTVyQ0YsQzZCOTRyQ0EsNEJBR0UsMkNBRkEsYUFBYyxDQUNkLGM3Qm81ckNGLEM2Qmg1ckNBLGtDQUlFLG1CQUFvQixDQUlwQixvQ0FMQSxlQUFnQixDQUdoQixnQkFDQSxpQ0FFQSx5QjdCaTVyQ0YsQzZCLzRyQ0EscURBQ0UscUI3Qmk1ckNGLEM2Qjk0ckNBLHdEQUVFLG9CQURBLGdCN0JpNXJDRixDNkI5NHJDQSxrREFFRSxvQkFEQSxnQjdCaTVyQ0YsQzZCNTRyQ0EseUNBQ0UsK0I3Qis0ckNGLEM2Qjc0ckNBLHVDQUNFLHlCN0IrNHJDRixDNkI3NHJDQSx3Q0FDRSxZN0IrNHJDRixDNkIzNHJDQSx1SUFHRSw0QkFBNkIsQ0FDN0IscUI3Qjg0ckNGLEM2QjE0ckNBLDBJQUdFLDRCQUE2QixDQUM3QiwrQjdCNjRyQ0YsQzZCejRyQ0EseUNBQ0UsNEJBQTZCLENBQzdCLGVBQWdCLENBRWhCLGU3QjY0ckNGLEM2Qng0ckNBLHdGQU5FLDBCQUVBLHFCN0JpNXJDRixDNkJ2NHJDQSxrREFDRSx3QjdCMDRyQ0YsQzZCdDRyQ0EscUNBQ0UscUJBQXNCLENBR3RCLHlDN0J5NHJDRixDNkJ2NHJDQSwyQ0FDRSxrQkFBbUIsQ0FHbkIseUJBQTJCLENBRTNCLG1DQURBLGlCN0IwNHJDRixDNkJyNHJDQSxrREFDRSx5QjdCdzRyQ0YsQzZCcDRyQ0EscUNBQ0UsK0I3QnU0ckNGLEM2QnA0ckNBLDBEQUNFLHdCN0JzNHJDRixDNkJwNHJDQSxrREFDRSxvQjdCczRyQ0YsQzZCbDRyQ0Esd0dBRUUsVTdCcTRyQ0YsQzZCaDRyQ0EscURBR0UsNEJBQTZCLENBRjdCLGtCQUNBLFU3Qm80ckNGLEM2QjUzckNBLGNBQ0UsMkJBQTRCLENBRzVCLFdBQVksQ0FGWixlQUFnQixDQUNoQixlQUFnQixDQUdoQixnQjdCZzRyQ0YsQzZCOTNyQ0Esb0JBR0UsaUJBQWtCLENBRmxCLGVBQWdCLENBQ2hCLGVBQWdCLENBS2hCLHFCQURBLGdCQUZBLFNBQ0EseUJBR0EsMkI3Qmc0ckNGLEM2QjUzckNBLDREQUVFLHNCN0IrM3JDRixDNkIzM3JDQSwyQkFDRSw0QkFBNkIsQ0FFN0Isc0JBQ0Esc0JBRUEsZ0JBSkEsU0FBVSxDQUdWLHdCN0IrM3JDRixDNkJyM3JDQSwwREFDRSxRN0I0M3JDRixDNkJ4M3JDQSx1QkFDRSxZN0IyM3JDRixDNkJ6M3JDQSxtQ0FDRSxZN0IyM3JDRixDNkJ6M3JDQSxrQ0FDRSxlN0IyM3JDRixDNkJ6M3JDQSw2QkFDRSxxQkFDQSxjQUFlLENBQ2YsZTdCMjNyQ0YsQzZCejNyQ0Esb0NBQ0UsV0FDQSx3QjdCMjNyQ0YsQzZCejNyQ0Esb0NBQ0UsZ0M3QjIzckNGLEM2QnYzckNBLGtEQUNFLFE3QjAzckNGLEM2QngzckNBLHdEQUNFLFNBQ0EsYzdCMDNyQ0YsQzZCdDNyQ0EsMEJBRUUsNEJBQTZCLENBRDdCLFM3QjAzckNGLEM2QnIzckNBLDJCQUVFLFdBQVksQ0FDWixlQUFnQixDQUVoQixzQkFEQSxlN0J5M3JDRixDNkJwM3JDQSw0REFSRSw0QjdCZzRyQ0YsQzZCaDNyQ0EsaUVBQ0UsZTdCczNyQ0YsQzZCbDNyQ0EsMkhBSUUsNEI3QnEzckNGLEM2QmozckNBLG9CQUNFLGFBQWMsQ0FDZCxjN0JvM3JDRixDNkI1MnJDQSx1QkFDRSxvQkFBcUIsQ0FDckIsVTdCazNyQ0YsQzZCOTJyQ0Esb0JBR0UsY0FGQSxXQUFZLENBQ1osaUI3QmszckNGLEM2QjcyckNBLHlDQUNFLFFBQVMsQ0FDVCxTN0JnM3JDRixDNkI1MnJDQSwyQkFDRSxTN0IrMnJDRixDNkIzMnJDQSwwQkFFRSxhQUFjLENBRGQsVTdCKzJyQ0YsQzZCMTJyQ0Esa0RBQ0UsYUFBYyxDQUdkLFVBQVcsQ0FEWCxhQUFjLENBRGQsUzdCKzJyQ0YsQzZCejJyQ0EsNkJBQ0UsVTdCNDJyQ0YsQzZCcDJyQ0Esc0JBQ0UsaUI3QjAyckNGLEM2QnQyckNBLDRCQUVFLHFCQUFzQixDQUR0QixhN0IwMnJDRixDNkJyMnJDQSxpREFFRSxhQUFjLENBQ2QsaUNBRkEsVUFBVyxDQUdYLDZCN0J3MnJDRixDNkJwMnJDQSxrQ0FDRSxXN0J1MnJDRixDNkIzMXJDQSw0Q0FDRSxtQkFDRSxxQjdCbTJyQ0YsQzZCajJyQ0EseUJBQ0Usb0I3Qm0yckNGLEM2QmoyckNBLGdDQVFFLDZCQUpBLFFBQVMsQ0FGVCxVQUFXLENBS1gsV0FGQSxNQUFPLENBSlAsaUJBQWtCLENBRWxCLFFBQVMsQ0FHVCxVN0JxMnJDRixDNkJoMnJDQSw0REFFRSx3QjdCazJyQ0YsQzZCaDJyQ0EsOERBRUUsdUI3QmsyckNGLEM2QmgyckNBLGdFQUVFLHVCQUF5QixDQUN6Qix3QjdCazJyQ0YsQzZCLzFyQ0EsNkZBR0UscUI3QmkyckNGLENBQ0YsQ0tobnVDQyx5R3dCaXlDSyxhN0J1MXJDTixDS3hudUNDLDZGd0JpeUNLLGE3QjQxckNOLENLN251Q0Msc0d3Qml5Q0ssYTdCaTJyQ04sQ0tsb3VDQyxzR3dCaXlDSyxhN0JzMnJDTixDS3ZvdUNDLG1Hd0JpeUNLLGE3QjIyckNOLENLNW91Q0MsbUd3Qml5Q0ssYTdCZzNyQ04sQ0tqcHVDQyxnR3dCaXlDSyxhN0JxM3JDTixDS3RwdUNDLGdHd0JpeUNLLGE3QjAzckNOLENLM3B1Q0Msc0d3Qml5Q0ssYTdCKzNyQ04sQ0tocXVDQyxzR3dCaXlDSyxhN0JvNHJDTixDS3JxdUNDLGdHd0JpeUNLLGE3Qnk0ckNOLENLMXF1Q0MsbUd3Qml5Q0ssYTdCODRyQ04sQ0svcXVDQyxnR3dCaXlDSyxhN0JtNXJDTixDS3BydUNDLG1Hd0JpeUNLLGE3Qnc1ckNOLEM2Qi80ckNBLGtCQUVFLG1CQURBLDJCQUVBLGU3Qm81ckNGLEM2Qmg1ckNBLDJEQUVFLHVCQUNBLHdCN0JtNXJDRixDNkJqNXJDQSw2QkFDRSxzQjdCbTVyQ0YsQzZCNTRyQ0EsdUVBQ0UsOEI3Qms1ckNGLEM2Qjk0ckNBLHlGQUVFLHdCN0JpNXJDRixDNkI3NHJDQSwrQkFFRSx1QkFDQSxlQUFnQixDQUZoQixRN0JrNXJDRixDNkI1NHJDQSxvQ0FDRSx1QjdCKzRyQ0YsQzZCMzRyQ0EsNElBSUUsK0JBQ0EsVTdCODRyQ0YsQzZCNTRyQ0EsNEdBRUUsdUJBQ0EsVTdCODRyQ0YsQzZCMTRyQ0Esb0VBRUUsK0JBQ0EsVTdCNjRyQ0YsQzZCejRyQ0EsK0JBQ0UsbUJBQ0Esb0I3QjQ0ckNGLEM2QjE0ckNBLG9EQUNFLHVCQUNBLFU3QjQ0ckNGLEM2QjE0ckNBLDhDQUNFLG1CQUdBLHFCQUF1QixDQUR2Qix5QkFBMkIsQ0FEM0Isa0I3Qjg0ckNGLEM2Qng0ckNBLHFDQUNFLG1CQUNBLG9CN0IyNHJDRixDNkJ6NHJDQSxvREFDRSxrQjdCMjRyQ0YsQzZCbjRyQ0EsaUJBQ0UsVUFBVyxDQUNYLGtCN0J3NHJDRixDNkJ0NHJDQSx5Q0FDRSxZN0J3NHJDRixDNkJyNHJDQSx1QkFDRSxXQUFZLENBQ1osa0I3QnU0ckNGLENLeHh1Q0MsdUV3Qmk2Q0ssd0I3QjgzckNOLENLL3h1Q0MsdUN3Qm82Q0ssa0M3QjgzckNOLENLbHl1Q0MsMEN3QnU2Q0ssK0I3QjgzckNOLENLcnl1Q0MsZ0R3QjA2Q0ssd0I3QjgzckNOLENLeHl1Q0MsK0R3Qmk2Q0ssd0I3QjI0ckNOLENLNXl1Q0MsbUN3Qm82Q0ssa0M3QjI0ckNOLENLL3l1Q0Msc0N3QnU2Q0ssK0I3QjI0ckNOLENLbHp1Q0MsNEN3QjA2Q0ssd0I3QjI0ckNOLENLcnp1Q0MscUV3Qmk2Q0ssd0I3Qnc1ckNOLENLenp1Q0Msc0N3Qm82Q0ssa0M3Qnc1ckNOLENLNXp1Q0MseUN3QnU2Q0ssK0I3Qnc1ckNOLENLL3p1Q0MsK0N3QjA2Q0ssd0I3Qnc1ckNOLENLbDB1Q0MscUV3Qmk2Q0ssd0I3QnE2ckNOLENLdDB1Q0Msc0N3Qm82Q0ssa0M3QnE2ckNOLENLejB1Q0MseUN3QnU2Q0ssK0I3QnE2ckNOLENLNTB1Q0MsK0N3QjA2Q0ssd0I3QnE2ckNOLENLLzB1Q0MsbUV3Qmk2Q0ssd0I3Qms3ckNOLENLbjF1Q0MscUN3Qm82Q0ssa0M3Qms3ckNOLENLdDF1Q0Msd0N3QnU2Q0ssK0I3Qms3ckNOLENLejF1Q0MsOEN3QjA2Q0ssd0I3Qms3ckNOLENLNTF1Q0MsbUV3Qmk2Q0ssd0I3Qis3ckNOLENLaDJ1Q0MscUN3Qm82Q0ssa0M3Qis3ckNOLENLbjJ1Q0Msd0N3QnU2Q0ssK0I3Qis3ckNOLENLdDJ1Q0MsOEN3QjA2Q0ssd0I3Qis3ckNOLENLejJ1Q0MsaUV3Qmk2Q0ssd0I3QjQ4ckNOLENLNzJ1Q0Msb0N3Qm82Q0ssa0M3QjQ4ckNOLENLaDN1Q0MsdUN3QnU2Q0ssK0I3QjQ4ckNOLENLbjN1Q0MsNkN3QjA2Q0ssd0I3QjQ4ckNOLENLdDN1Q0MsaUV3Qmk2Q0ssd0I3Qnk5ckNOLENLMTN1Q0Msb0N3Qm82Q0ssa0M3Qnk5ckNOLENLNzN1Q0MsdUN3QnU2Q0ssK0I3Qnk5ckNOLENLaDR1Q0MsNkN3QjA2Q0ssd0I3Qnk5ckNOLENLbjR1Q0MscUV3Qmk2Q0ssd0I3QnMrckNOLENLdjR1Q0Msc0N3Qm82Q0ssa0M3QnMrckNOLENLMTR1Q0MseUN3QnU2Q0ssK0I3QnMrckNOLENLNzR1Q0MsK0N3QjA2Q0ssd0I3QnMrckNOLENLaDV1Q0MscUV3Qmk2Q0ssd0I3Qm0vckNOLENLcDV1Q0Msc0N3Qm82Q0ssa0M3Qm0vckNOLENLdjV1Q0MseUN3QnU2Q0ssK0I3Qm0vckNOLENLMTV1Q0MsK0N3QjA2Q0ssd0I3Qm0vckNOLENLNzV1Q0MsaUV3Qmk2Q0ssd0I3Qmdnc0NOLENLajZ1Q0Msb0N3Qm82Q0ssa0M3Qmdnc0NOLENLcDZ1Q0MsdUN3QnU2Q0ssK0I3Qmdnc0NOLENLdjZ1Q0MsNkN3QjA2Q0ssd0I3Qmdnc0NOLENLMTZ1Q0MsbUV3Qmk2Q0ssd0I3QjZnc0NOLENLOTZ1Q0MscUN3Qm82Q0ssa0M3QjZnc0NOLENLajd1Q0Msd0N3QnU2Q0ssK0I3QjZnc0NOLENLcDd1Q0MsOEN3QjA2Q0ssd0I3QjZnc0NOLENLdjd1Q0MsaUV3Qmk2Q0ssd0I3QjBoc0NOLENLMzd1Q0Msb0N3Qm82Q0ssa0M3QjBoc0NOLENLOTd1Q0MsdUN3QnU2Q0ssK0I3QjBoc0NOLENLajh1Q0MsNkN3QjA2Q0ssd0I3QjBoc0NOLENLcDh1Q0MsbUV3Qmk2Q0ssd0I3QnVpc0NOLENLeDh1Q0MscUN3Qm82Q0ssa0M3QnVpc0NOLENLMzh1Q0Msd0N3QnU2Q0ssK0I3QnVpc0NOLENLOTh1Q0MsOEN3QjA2Q0ssd0I3QnVpc0NOLEM2Qmxpc0NBLG9EQUNFLHdCN0JvaXNDRixDNkI3aHNDQSw4RUFHRSxTN0JraXNDRixDNkJoaXNDQSxxSEFJRSwyQkFEQSx1QjdCbWlzQ0YsQzZCaGlzQ0EsK0dBR0UsMEJBQ0EsMEI3Qmtpc0NGLEM2QjNoc0NBLCtHQUdFLHlCN0JnaXNDRixDNkJ6aHNDQSxpQkFDRSxtQkFBb0IsQ0FDcEIsUUFBUyxDQUNULHFCN0I4aHNDRixDNkI1aHNDQSwwQkFFRSxvQ0FBc0MsQ0FDdEMsb0I3Qjhoc0NGLEM2QjVoc0NBLGtEQUNFLDJDN0I4aHNDRixDNkI1aHNDQSx5Q0FDRSxZN0I4aHNDRixDNkI1aHNDQSwwQkFDRSxvQjdCOGhzQ0YsQzZCNWhzQ0Esa0RBQ0UsYTdCOGhzQ0YsQzZCdmhzQ0EsdUNBRUUsb0I3QjRoc0NGLEM2QnBoc0NBLGtDQVFFLHNCQUF1QixDQUh2Qix1QkFBeUIsQ0FDekIsd0JBQTBCLENBSDFCLHdCQUEwQixDQUMxQix5QkFBMkIsQ0FHM0IsaUJBQWtCLENBTGxCLFU3Qitoc0NGLEM2QnZoc0NBLHFDQUNFLHVCN0J5aHNDRixDNkJ0aHNDQSxzQ0FDRSxZN0J3aHNDRixDNkJyaHNDQSx3QkFDRSxTN0J1aHNDRixDNkJyaHNDQSwwQkFDRSxhN0J1aHNDRixDNkJyaHNDQSx5QkFDRSxTN0J1aHNDRixDNkJyaHNDQSx5QkFDRSxTN0J1aHNDRixDNkJyaHNDQSx3QkFDRSxhN0J1aHNDRixDNkJyaHNDQSwwQkFDRSxhN0J1aHNDRixDNkJyaHNDQSwwQkFDRSxXN0J1aHNDRixDNkJyaHNDQSx5QkFDRSxZN0J1aHNDRixDNkJyaHNDQSx3QkFDRSxTN0J1aHNDRixDNkJyaHNDQSwyQkFDRSxXN0J1aHNDRixDNkJyaHNDQSwyQkFDRSxZN0J1aHNDRixDNkJoaHNDQSxlQUdFLFFBQVMsQ0FGVCxjQUFlLENBR2YsVUFBVyxDQUZYLFc3QnVoc0NGLEM2Qm5oc0NBLGdGQUdFLHlCN0JxaHNDRixDNkJsaHNDQSw0Q0FLRSxXQUFZLENBRlosTUFBTyxDQUNQLFVBQVcsQ0FGWCxLN0J1aHNDRixDNkJsaHNDQSw2QkFFRSxnQkFBaUIsQ0FDakIsaUJBQWtCLENBRmxCLGU3QnNoc0NGLEM2Qmxoc0NBLCtCQUVFLGtCQUFtQixDQUNuQixpQkFBa0IsQ0FGbEIsZUFBZ0IsQ0FNaEIsV0FBWSxDQUVaLFdBQVksQ0FIWixTQUFVLENBRFYsT0FBUSxDQURSLEtBQU0sQ0FJTixVN0JxaHNDRixDNkJsaHNDQSxnQ0FDRSxrQkFBbUIsQ0FDbkIsZ0JBQWlCLENBQ2pCLGlCQUFrQixDQUNsQixRQUFTLENBQ1QsTUFBTyxDQUVQLFVBQVcsQ0FEWCxRN0JxaHNDRixDNkJsaHNDQSw4QkFFRSxrQkFBbUIsQ0FDbkIsZ0JBQWlCLENBRmpCLGVBQWdCLENBTWhCLFdBQVksQ0FFWixXQUFZLENBSlosTUFBTyxDQUNQLFVBQVcsQ0FGWCxLQUFNLENBSU4sVTdCcWhzQ0YsQzZCaGhzQ0Esd0JBQ0UsbUI3Qm1oc0NGLEM2QjNnc0NBLDhCQU9FLGVBQWdCLENBUWhCLDBEQVpBLFVBQVcsQ0FRWCxtQkFOQSxRQUFTLENBSVQsZ0JBUEEsaUJBQWtCLENBRWxCLFFBQVMsQ0FFVCx5REFBMEQsQ0FZMUQsK0JBakJBLGlCQUFrQixDQVNsQixrQkFPQSxTN0I4Z3NDRixDNkIzZ3NDQSx1Q0FZRSw2REFSQSxXQUFZLENBQ1osU0FBVSxDQUdWLG1CQVBBLGlCQUFrQixDQUVsQixPQUFRLENBRFIsT0FBUSxDQUtSLHdEN0JnaHNDRixDNkJ6Z3NDQSwyR0FFRSxZN0IyZ3NDRixDNkJ2Z3NDQSxxQ0FDRSxrQjdCMGdzQ0YsQzZCeGdzQ0EsOENBQ0UsaUI3QjBnc0NGLEM2QnRnc0NBLHNHQUVFLFk3Qnlnc0NGLEM2QngvckNBLGtMQUNFLHdCN0J1Z3NDRixDNkJyZ3NDQSxvREFDRSxxQjdCdWdzQ0YsQ0twc3ZDQyxzRHdCcXNERyx3QjdCa2dzQ0osQ0t2c3ZDQyx3RHdCcXNERyx3QjdCcWdzQ0osQ0sxc3ZDQyxrRHdCcXNERyx3QjdCd2dzQ0osQ0s3c3ZDQyxxRHdCcXNERyx3QjdCMmdzQ0osQ0todHZDQyxxRHdCcXNERyx3QjdCOGdzQ0osQ0tudHZDQyxvRHdCcXNERyx3QjdCaWhzQ0osQ0t0dHZDQyxvRHdCcXNERyx3QjdCb2hzQ0osQ0t6dHZDQyxtRHdCcXNERyx3QjdCdWhzQ0osQ0s1dHZDQyxtRHdCcXNERyx3QjdCMGhzQ0osQ0svdHZDQyxxRHdCcXNERyx3QjdCNmhzQ0osQ0tsdXZDQyxxRHdCcXNERyx3QjdCZ2lzQ0osQ0tydXZDQyxtRHdCcXNERyx3QjdCbWlzQ0osQ0t4dXZDQyxvRHdCcXNERyx3QjdCc2lzQ0osQ0szdXZDQyxtRHdCcXNERyx3QjdCeWlzQ0osQ0s5dXZDQyxvRHdCcXNERyx3QjdCNGlzQ0osQzZCbmlzQ0Esa0JBR0UsZUFBZ0IsQ0FEaEIsUUFBUyxDQUtULGdCQUhBLGNBRUEsMkJBTEEsS0FBTSxDQUlOLHNCN0IyaXNDRixDNkJ2aXNDQSx5Q0FDRSxlN0J5aXNDRixDNkJyaXNDQSxnQ0FLRSw0Q0FKQSxRQUFTLENBQ1QsZUFBZ0IsQ0FFaEIsZ0JBREEsSzdCMGlzQ0YsQzZCdGlzQ0EsNENBQ0UsWTdCd2lzQ0YsQzZCcGlzQ0EsbUNBTUUsNENBTEEsUUFBUyxDQUlULCtDQURBLG1CQUZBLFlBQWEsQ0FDYixLN0IwaXNDRixDNkJyaXNDQSw4Q0FDRSxlN0J1aXNDRixDNkJuaXNDQSx3Q0FDRSxnQzdCc2lzQ0YsQzZCcGlzQ0EsMkNBQ0UsZ0M3QnNpc0NGLEM2Qmxpc0NBLGdDQUNFLHdCN0JxaXNDRixDNkJuaXNDQSwyQkFDRSxXN0JxaXNDRixDNkJuaXNDQSwwQkFDRSxhQUFjLENBQ2QsY0FBZSxDQUNmLFU3QnFpc0NGLEM2Qjdoc0NBLGNBQ0Usc0I3Qm1pc0NGLEM2Qmppc0NBLGtDQUNFLFU3Qm1pc0NGLEM2Qjloc0NBLDREQUNFLHNCN0JtaXNDRixDNkIvaHNDQSxjQUNFLHNCN0JraXNDRixDNkJoaXNDQSxrQ0FDRSxXN0JraXNDRixDNkI3aHNDQSw0REFDRSxzQjdCa2lzQ0YsQzZCOWhzQ0EsZUFDRSxzQjdCaWlzQ0YsQzZCL2hzQ0EsbUNBQ0UsVzdCaWlzQ0YsQzZCNWhzQ0EsOERBQ0Usc0I3Qmlpc0NGLEM2Qjdoc0NBLFNBQ0UsYzdCZ2lzQ0YsQzZCOWhzQ0Esa0JBQ0UsVzdCZ2lzQ0YsQzZCNWhzQ0EsZUFDRSx1QjdCK2hzQ0YsQzZCN2hzQ0EsbUNBQ0UsVzdCK2hzQ0YsQzZCMWhzQ0EsOERBQ0UsdUI3Qitoc0NGLEM2QjNoc0NBLGNBQ0UsdUI3Qjhoc0NGLEM2QjVoc0NBLGtDQUNFLFc3Qjhoc0NGLEM2Qnpoc0NBLDREQUNFLHVCN0I4aHNDRixDNkIxaHNDQSxhQUNFLHVCN0I2aHNDRixDNkIzaHNDQSxpQ0FDRSxXN0I2aHNDRixDNkJ4aHNDQSwwREFDRSx1QjdCNmhzQ0YsQzZCemhzQ0EsaUJBQ0UsdUI3QjRoc0NGLEM2QjFoc0NBLHFDQUNFLFc3QjRoc0NGLEM2QnZoc0NBLGtFQUNFLHVCN0I0aHNDRixDNkJ0aHNDQSxtREFDRSxtQkFDQSxlN0IyaHNDRixDNkJ4aHNDQSwyQ0FDRSxrQzdCMGhzQ0YsQzZCdmhzQ0Esa0RBQ0UsaUNBQ0Esa0M3Qnloc0NGLEM2QnRoc0NBLGlEQUNFLHlDQUNBLGtDN0J3aHNDRixDNkJyaHNDQSxvREFDRSx5Q0FDQSxrQzdCdWhzQ0YsQzZCbmhzQ0EsZ0RBQ0UsZTdCc2hzQ0Y7QUFPQTs7Ozs7Ozs7RUFRRSxDOEJsNnZDRixZQUlFLG1CQUtBLDJCQUNBLGtFQUhBLHNCQURBLHFCQUhBLGFBREEsY0FBZSxDQUdmLGtCQUpBLGlCQUFrQixDQU9sQixrRjlCbW14Q0YsQzhCOWx4Q0Esd0JBQ0UsWTlCZ214Q0YsQzhCOWx4Q0EsdUJBQ0UsZTlCZ214Q0YsQzhCdmx4Q0Esb0JBQ0UsY0FDQSwyREFDQSxnQkFDQSx1QjlCNmx4Q0YsQzhCemx4Q0EsNkJBQ0Usc0I5QjRseENGLEM4QnhseENBLGNBRUUsZUFEQSxXOUI0bHhDRixDOEJ6bHhDQSwwQkFDRSxZOUIybHhDRixDOEJ6bHhDQSx5QkFDRSxlOUIybHhDRixDOEJ6bHhDQSxzQkFDRSxnQjlCMmx4Q0YsQzhCdmx4Q0EsMkJBSUUsMkJBQ0EsZ0JBRkEsWUFEQSxTQUFVLENBRFYsZTlCOGx4Q0YsQzhCeGx4Q0EsdUNBQ0UsWTlCMGx4Q0YsQzhCeGx4Q0Esc0NBQ0UsZTlCMGx4Q0YsQzhCeGx4Q0EsOEJBRUUsb0JBQXFCLENBQ3JCLG9CQUNBLFNBQVUsQ0FIVixpQjlCNmx4Q0YsQzhCeGx4Q0EscUNBRUUsV0FBWSxDQUVaLFdBQVksQ0FEWixTQUFVLENBRlYsaUJBQWtCLENBSWxCLHVCOUIwbHhDRixDOEJ4bHhDQSx5Q0FDRSxlOUIwbHhDRixDOEJybHhDQSxrQkFDRSxpQjlCd2x4Q0YsQzhCcGx4Q0Esd0JBQ0UsY0FBZSxDQUVmLFFBQVMsQ0FHVCxXQUpBLGlCQUFrQixDQUdsQixXQURBLGFBR0EsMkI5QnVseENGLEM4QnJseENBLDhCQUNFLFM5QnVseENGLEM4Qm5seENBLHlCQUNFLFk5QnNseENGLEM4QnBseENBLHdCQUNFLGU5QnNseENGLEM4Qi9reENBLDRCQUNFLGE5Qm9seENGLEM4QnpreENBLDRDQUNFLGE5QmlseENGLEM4QjlreENBLGlEQUNFLFk5QmdseENGLEM4QnpreENBLHdDQUNFLFk5QjhreENGLEM4QmxreENBLG9CQUNFLG9COUIwa3hDRixDOEJ4a3hDQSx5QkFDRSxtQkFBb0IsQ0FDcEIsVTlCMGt4Q0YsQzhCbGt4Q0EscUJBRUUsNENBQ0EsOENBRkEsbUJBR0EsaUJBQ0EsaUI5QnVreENGLEM4QnJreENBLHlEQUVFLGVBQWdCLENBRGhCLGU5QndreENGLEM4QnJreENBLDRCQUVFLDRDQUNBLDZFQUZBLGU5QnlreENGLEM4QnJreENBLDZDQUNFLGlCOUJ1a3hDRixDOEJya3hDQSwwQkFDRSxVOUJ1a3hDRixDOEIvanhDQSxpQkFHRSxrQkFBbUIsQ0FGbkIsWUFBYSxDQUNiLFU5QnFreENGLEM4QmxreENBLG1DQUNFLGFBQWMsQ0FDZCxhQUFjLENBSWQsY0FGQSxhQUFjLENBR2QsV0FGQSxzQkFGQSxVOUJ3a3hDRixDOEJsa3hDQSwwQkFDRSxhQUFjLENBQ2QsYUFBYyxDQUNkLHFCOUJva3hDRixDOEJoa3hDQSw0Q0FDRSxjOUJra3hDRixDOEJoa3hDQSxnQ0FDRSxTOUJra3hDRixDOEIzanhDQSxxQkFDRSw0RzlCZ2t4Q0YsQ0sxenhDQyxxQnlCK1RHLHlCQUNBLGE5Qm9neENKLENLcDB4Q0MsbUR5QnFVRyxzRDlCbWd4Q0osQ0t4MHhDQyw4QnlCeVVLLGlHOUJrZ3hDTixDSzMweENDLDZCeUI2VUcsYTlCaWd4Q0osQ0s5MHhDQyxxQnlCK1RHLHlCQUNBLGE5QmtoeENKLENLbDF4Q0MsbUR5QnFVRyxzRDlCaWh4Q0osQ0t0MXhDQyw4QnlCeVVLLGlHOUJnaHhDTixDS3oxeENDLDZCeUI2VUcsYTlCK2d4Q0osQ0s1MXhDQyxpQnlCK1RHLHlCQUNBLGE5QmdpeENKLENLaDJ4Q0MsMkN5QnFVRyxzRDlCK2h4Q0osQ0twMnhDQywwQnlCeVVLLGlHOUI4aHhDTixDS3YyeENDLHlCeUI2VUcsYTlCNmh4Q0osQ0sxMnhDQyxvQnlCK1RHLHlCQUNBLGE5QjhpeENKLENLOTJ4Q0MsaUR5QnFVRyxzRDlCNml4Q0osQ0tsM3hDQyw2QnlCeVVLLGlHOUI0aXhDTixDS3IzeENDLDRCeUI2VUcsYTlCMml4Q0osQ0t4M3hDQyxrQnlCK1RHLHlCQUNBLGE5QjRqeENKLENLNTN4Q0MsNkN5QnFVRyxzRDlCMmp4Q0osQ0toNHhDQywyQnlCeVVLLGlHOUIwanhDTixDS240eENDLDBCeUI2VUcsYTlCeWp4Q0osQ0t0NHhDQyxvQnlCK1RHLHlCQUNBLGE5QjBreENKLENLMTR4Q0MsaUR5QnFVRyxzRDlCeWt4Q0osQ0s5NHhDQyw2QnlCeVVLLGlHOUJ3a3hDTixDS2o1eENDLDRCeUI2VUcsYTlCdWt4Q0osQ0twNXhDQyxvQnlCNFZLLHlCQUNBLHdCOUIyanhDTixDS3g1eENDLGlEeUJ3V0ssc0Q5Qm9qeENOLENLNTV4Q0MsNkJ5QjhXSyxpRzlCaWp4Q04sQ0svNXhDQyw0QnlCb1hLLHVCOUI4aXhDTixDS2w2eENDLHNCeUI0VksseUJBQ0Esd0I5QnlreENOLENLdDZ4Q0MscUR5QndXSyxzRDlCa2t4Q04sQ0sxNnhDQywrQnlCOFdLLGlHOUIranhDTixDSzc2eENDLDhCeUJvWEssdUI5QjRqeENOLENLaDd4Q0MsZ0J5QjRWSyx5QkFDQSxhOUJ1bHhDTixDS3A3eENDLHlDeUJ3V0ssc0Q5QmdseENOLENLeDd4Q0MseUJ5QjhXSyxpRzlCNmt4Q04sQ0szN3hDQyx3QnlCb1hLLGE5QjBreENOLENLOTd4Q0MsbUJ5QjRWSyx5QkFDQSxhOUJxbXhDTixDS2w4eENDLCtDeUJ3V0ssc0Q5QjhseENOLENLdDh4Q0MsNEJ5QjhXSyxpRzlCMmx4Q04sQ0t6OHhDQywyQnlCb1hLLGE5QndseENOLENLNTh4Q0MsbUJ5QjRWSyx5QkFDQSxhOUJtbnhDTixDS2g5eENDLCtDeUJ3V0ssc0Q5QjRteENOLENLcDl4Q0MsNEJ5QjhXSyxpRzlCeW14Q04sQ0t2OXhDQywyQnlCb1hLLGE5QnNteENOLENLMTl4Q0Msa0J5QjRWSyx5QkFDQSxhOUJpb3hDTixDSzk5eENDLDZDeUJ3V0ssc0Q5QjBueENOLENLbCt4Q0MsMkJ5QjhXSyxpRzlCdW54Q04sQ0tyK3hDQywwQnlCb1hLLGE5Qm9ueENOLENLeCt4Q0Msa0J5QjRWSyx5QkFDQSxhOUIrb3hDTixDSzUreENDLDZDeUJ3V0ssc0Q5QndveENOLENLaC94Q0MsMkJ5QjhXSyxpRzlCcW94Q04sQ0tuL3hDQywwQnlCb1hLLGE5QmtveENOLENLdC94Q0MsaUJ5QjRWSyx5QkFDQSxhOUI2cHhDTixDSzEveENDLDJDeUJ3V0ssc0Q5QnNweENOLENLOS94Q0MsMEJ5QjhXSyxpRzlCbXB4Q04sQ0tqZ3lDQyx5QnlCb1hLLGE5QmdweENOLENLcGd5Q0MsaUJ5QjRWSyx5QkFDQSxhOUIycXhDTixDS3hneUNDLDJDeUJ3V0ssc0Q5Qm9xeENOLENLNWd5Q0MsMEJ5QjhXSyxpRzlCaXF4Q04sQ0svZ3lDQyx5QnlCb1hLLGE5QjhweENOLENLbGh5Q0MsbUJ5QjRWSyx5QkFDQSxhOUJ5cnhDTixDS3RoeUNDLCtDeUJ3V0ssc0Q5QmtyeENOLENLMWh5Q0MsNEJ5QjhXSyxpRzlCK3F4Q04sQ0s3aHlDQywyQnlCb1hLLGE5QjRxeENOLENLaGl5Q0MsbUJ5QjRWSyx5QkFDQSxhOUJ1c3hDTixDS3BpeUNDLCtDeUJ3V0ssc0Q5QmdzeENOLENLeGl5Q0MsNEJ5QjhXSyxpRzlCNnJ4Q04sQ0szaXlDQywyQnlCb1hLLGE5QjByeENOLENLOWl5Q0MsaUJ5QjRWSyx5QkFDQSxhOUJxdHhDTixDS2xqeUNDLDJDeUJ3V0ssc0Q5QjhzeENOLENLdGp5Q0MsMEJ5QjhXSyxpRzlCMnN4Q04sQ0t6anlDQyx5QnlCb1hLLGE5QndzeENOLENLNWp5Q0Msa0J5QjRWSyx5QkFDQSxhOUJtdXhDTixDS2hreUNDLDZDeUJ3V0ssc0Q5QjR0eENOLENLcGt5Q0MsMkJ5QjhXSyxpRzlCeXR4Q04sQ0t2a3lDQywwQnlCb1hLLGE5QnN0eENOLENLMWt5Q0MsaUJ5QjRWSyx5QkFDQSxhOUJpdnhDTixDSzlreUNDLDJDeUJ3V0ssc0Q5QjB1eENOLENLbGx5Q0MsMEJ5QjhXSyxpRzlCdXV4Q04sQ0tybHlDQyx5QnlCb1hLLGE5Qm91eENOLENLeGx5Q0Msa0J5QmdXSyx3QjlCNHZ4Q04sQzhCL3R4Q0EsaUVBNUJNLHdCOUJrd3hDTixDOEJ0dXhDQSxxQkFDRSx3QjlCcXV4Q0YsQzhCN3R4Q0EsaUJBQ0UscUI5Qmt1eENGLEM4Qmh1eENBLGlCQUNFLHFCOUJrdXhDRixDOEJodXhDQSxrQkFDRSxxQjlCa3V4Q0YsQzhCaHV4Q0EsWUFDRSxhOUJrdXhDRixDOEJodXhDQSxrQkFDRSxzQjlCa3V4Q0YsQzhCaHV4Q0EsZ0JBQ0Usc0I5Qmt1eENGLEM4Qmh1eENBLGlCQUNFLHNCOUJrdXhDRixDOEJodXhDQSxvQkFDRSxzQjlCa3V4Q0Y7QUFPQTs7Ozs7Ozs7RUFRRSxDK0JwbnlDRixVQUVFLGdCQUVBLG9DQU1BLHlCQUpBLDJCQUtBLGlCQU5BLGdCQUlBLHNCQU5BLGFBSUEsZ0JBQ0Esc0JBUEEsVS9CNDJ6Q0YsQytCLzF6Q0Esc0JBQ0UsWS9CaTJ6Q0YsQytCLzF6Q0EscUJBQ0UsZS9CaTJ6Q0YsQytCLzF6Q0EsZ0NBRUUsa0JBQW1CLENBQ25CLHNCL0JpMnpDRixDK0J6MXpDQSwwQkFFRSw2Qy9CKzF6Q0YsQytCMzF6Q0EsZ0JBQ0UsZS9CODF6Q0YsQytCNTF6Q0Esc0JBRUUsbUJBUUEsMENBQ0EsaUJBUEEsc0JBSEEsV0FBWSxDQU1aLGdCQUNBLGdCQUhBLGdDQUZBLG1CQU1BLG9CQUhBLHNCL0JtMnpDRixDK0IzMXpDQSxrQ0FDRSxnQi9CNjF6Q0YsQytCMTF6Q0EsOENBQ0UsZ0MvQjQxekNGLEMrQjExekNBLDZDQUNFLGdDL0I0MXpDRixDK0IxMXpDQSw2Q0FDRSwyQy9CNDF6Q0YsQytCeDF6Q0EsZ0JBQ0UsZS9CMjF6Q0YsQytCejF6Q0Esc0JBR0UsbUJBREEsd0NBR0Esc0JBSkEsV0FBWSxDQU9aLGtCQUNBLGdCQUhBLG9CQUZBLG1CQU1BLG9CQUhBLHFCL0I4MXpDRixDK0J6MXpDQSxrQ0FDRSxnQi9CMjF6Q0YsQytCejF6Q0EsOENBQ0UsZ0MvQjIxekNGLEMrQnoxekNBLDZDQUNFLGdDL0IyMXpDRixDK0J6MXpDQSw2Q0FDRSwyQy9CMjF6Q0YsQytCdjF6Q0Esc0NBRUUsc0MvQjAxekNGLEMrQngxekNBLDhEQUVFLGUvQjAxekNGLEMrQnQxekNBLHdDQUNFLHNDL0J5MXpDRixDK0JyMXpDQSxzQ0FFRSxvQkFDQSxrQi9CdzF6Q0YsQytCcDF6Q0EsZ0JBQ0UsdUIvQnUxekNGLEMrQnIxekNBLDJCQUNFLFEvQnUxekNGLEMrQm4xekNBLGtCQUNFLFMvQnMxekNGLEMrQnAxekNBLHdCQUNFLFkvQnMxekNGLEMrQnAxekNBLGdDQUNFLGEvQnMxekNGLEMrQmoxekNBLDRDQUNFLDRCQUVFLFNBQVUsQ0FEVixVL0JxMXpDRixDK0JsMXpDQSx3ZEFhRSx1QkFBeUIsQ0FDekIsb0IvQm8xekNGLEMrQjkwekNBLG9FQUNFLGEvQm0xekNGLEMrQmoxekNBLDhJQU1FLHFEQURBLG1CQURBLGUvQnExekNGLEMrQmgxekNBLDBSQU1FLGVBQWdCLENBQ2hCLFdBQVksQ0FFWiwwQkFEQSxtQi9CbTF6Q0YsQytCaDF6Q0EsNFNBTUUsZS9CazF6Q0YsQytCOTB6Q0EsK0RBQ0UseUIvQmkxekNGLENBQ0YsQytCeDB6Q0EsOERBRUUsYy9CODB6Q0YsQytCbDB6Q0EscUJBQ0Usd0IvQjAwekNGLEMrQngwekNBLGlDQUNFLGlCQUNBLGlCL0IwMHpDRixDK0J4MHpDQSwwQ0FDRSx5Q0FDQSx5Qy9CMDB6Q0YsQytCeDB6Q0Esc0pBSUUsaUJBQ0EsaUIvQjAwekNGLEMrQngwekNBLG9PQU1FLHdDQUNBLHdDL0IwMHpDRixDK0JuMHpDQSw4REFFRSxnQkFHQSxtQ0FEQSxxQkFEQSxnQkFGQSxtQkFBb0IsQ0FLcEIsdUIvQncwekNGLEMrQnIwekNBLDhEQUVFLGdCQUdBLGtDQURBLHFCQURBLGdCQUZBLG1CQUFvQixDQUtwQix1Qi9CdTB6Q0YsQytCbjB6Q0Esc0pBR0UsMkJBSUEsY0FGQSxzQkFJQSxjQUxBLGdCQU1BLGdCQUNBLGlCQUhBLGNBRkEsaUIvQjIwekNGLEMrQjN6ekNBLG9OQUVFLHdDL0JvMHpDRixDK0J6enpDQSx3REFHRSxtQkFEQSwrQkFFQSxhL0JpMHpDRixDK0IveXpDQSwwR0FHRSxtQkFEQSwrQkFFQSxhL0I2enpDRixDK0J0enpDQSxzREFHRSxtQkFEQSwrQkFFQSxhL0IyenpDRixDK0JwenpDQSxvREFHRSxtQkFEQSx1Q0FFQSxxQi9CeXp6Q0YsQytCaHp6Q0EsNkdBS0Usd0JBREEsbUIvQnN6ekNGLEMrQjF5ekNBLDRDQUVFLGtuQkFjRSx1QkFBeUIsQ0FDekIsb0IvQml6ekNGLEMrQjl5ekNBLHFDQUNFLFMvQmd6ekNGLEMrQjN5ekNBLHNGQUNFLGEvQmd6ekNGLEMrQjl5ekNBLGtMQU1FLHFEQURBLG1CQURBLGUvQmt6ekNGLEMrQjl5ekNBLDBSQU1FLGVBQWdCLENBQ2hCLHFCQUF1QixDQUV2QiwwQkFEQSxtQi9CaXp6Q0YsQytCNXl6Q0Esd0VBQ0UseUIvQit5ekNGLENBQ0YsQytCeHl6Q0EsbUVBRUUsZS9CNnl6Q0YsQytCM3l6Q0EsdUVBRUUsaUIvQjZ5ekNGLEMrQjN5ekNBLHFFQUVFLGdCL0I2eXpDRixDK0J0eXpDQSxpRUFFRSxrQi9CMnl6Q0YsQytCenl6Q0EsdUVBRUUscUIvQjJ5ekNGLEMrQnp5ekNBLHVFQUVFLHFCL0IyeXpDRixDK0JweXpDQSxnREFHRSxrQkFBbUIsQ0FEbkIsUy9CMHl6Q0YsQytCbHl6Q0EsZ0JBQ0Usa0IvQnV5ekNGLEMrQnB5ekNBLHNDQUVFLGVBQWdCLENBQ2hCLHNCL0JzeXpDRixDK0I5eHpDQSw4RUFFRSwyQkFDQSxxQi9CbXl6Q0YsQytCanl6Q0EsZ0dBRUUsK0JBQ0EsVS9CbXl6Q0YsQytCL3h6Q0EsaUNBQ0UsUy9Ca3l6Q0YsQytCaHl6Q0EsNENBRUUsYUFBYyxDQURkLGFBQWMsQ0FFZCxtQi9Ca3l6Q0YsQytCaHl6Q0Esa0hBSUUsYy9Ca3l6Q0YsQytCOXh6Q0EscUhBR0UsbUJBQ0EsYS9CaXl6Q0YsQytCL3h6Q0EsMkhBR0UsbUJBQ0EsYS9CaXl6Q0YsQytCL3h6Q0Esd0hBR0UsbUJBQ0EscUIvQml5ekNGLEMrQi94ekNBLDhIQUdFLG1CQUNBLGEvQml5ekNGLEMrQi94ekNBLDhIQUdFLG1CQUNBLGEvQml5ekNGLEMrQnZ4ekNBLG1CQVFFLHlCQUxBLGVBQWdCLENBRGhCLFFBQVMsQ0FLVCxnQkFIQSxjQUVBLDJCQUxBLEtBQU0sQ0FJTixzQi9CZ3l6Q0YsQytCM3h6Q0EsMENBQ0UsZS9CNnh6Q0YsQytCenh6Q0EsaUNBS0UsNENBSkEsUUFBUyxDQUNULGVBQWdCLENBRWhCLGVBREEsSy9COHh6Q0YsQytCMXh6Q0EsNkNBQ0UsWS9CNHh6Q0YsQytCeHh6Q0Esb0NBTUUsNENBTEEsUUFBUyxDQUlULHFCQURBLGtCQUZBLFlBQWEsQ0FDYixLL0I4eHpDRixDK0J6eHpDQSwrQ0FDRSxlL0IyeHpDRixDK0JueHpDQSw0RUFFRSxpQy9CeXh6Q0YsQytCcnh6Q0EsOEZBRUUsb0MvQnd4ekNGLEMrQnB4ekNBLHlFQUNFLG1CQUNBLHFCL0J1eHpDRixDK0JoeHpDQSxpRUFFRSxrQi9CcXh6Q0YsQ0t2NjBDQyxrQjBCdXFCRyw2Qi9Cc3d6Q0osQ0s3NjBDQywyQjBCMHFCRyx5QkFDQSxVL0Jzd3pDSixDS2o3MENDLHNEMEJvckJLLG1CQUxGLCtCQVdFLHdCL0I2dnpDTixDS3Y3MENDLDJIMEJvc0JLLG1CQU1BLHdCL0JtdnpDTixDSzc3MENDLG9CMEJ1cUJHLDZCL0J5eHpDSixDS2g4MENDLDZCMEIwcUJHLHlCQUNBLFUvQnl4ekNKLENLcDgwQ0MsMEQwQm9yQkssZ0JBTEYsK0JBV0Usd0IvQmd4ekNOLENLMTgwQ0MsaUkwQm9zQkssbUJBTUEsd0IvQnN3ekNOLENLaDkwQ0MsYzBCdXFCRyw2Qi9CNHl6Q0osQ0tuOTBDQyx1QjBCMHFCRyx5QkFDQSxVL0I0eXpDSixDS3Y5MENDLDhDMEJvckJLLG1CQUxGLCtCQVdFLGEvQm15ekNOLENLNzkwQ0MsK0cwQm9zQkssbUJBTUEsYS9CeXh6Q04sQ0tuKzBDQyxpQjBCdXFCRyw2Qi9CK3p6Q0osQ0t0KzBDQywwQjBCMHFCRyx5QkFDQSxVL0IrenpDSixDSzErMENDLG9EMEJvckJLLG1CQUxGLCtCQVdFLGEvQnN6ekNOLENLaC8wQ0Msd0gwQm9zQkssbUJBTUEsYS9CNHl6Q04sQ0t0LzBDQyxpQjBCdXFCRyw2Qi9CazF6Q0osQ0t6LzBDQywwQjBCMHFCRyx5QkFDQSxVL0JrMXpDSixDSzcvMENDLG9EMEJvckJLLG1CQUxGLCtCQVdFLGEvQnkwekNOLENLbmcxQ0Msd0gwQm9zQkssbUJBTUEsYS9CK3p6Q04sQ0t6ZzFDQyxnQjBCdXFCRyw2Qi9CcTJ6Q0osQ0s1ZzFDQyx5QjBCMHFCRyx5QkFDQSxVL0JxMnpDSixDS2hoMUNDLGtEMEJvckJLLG1CQUxGLCtCQVdFLGEvQjQxekNOLENLdGgxQ0MscUgwQm9zQkssbUJBTUEsYS9CazF6Q04sQ0s1aDFDQyxnQjBCdXFCRyw2Qi9CdzN6Q0osQ0svaDFDQyx5QjBCMHFCRyx5QkFDQSxVL0J3M3pDSixDS25pMUNDLGtEMEJvckJLLG1CQUxGLCtCQVdFLGEvQisyekNOLENLemkxQ0MscUgwQm9zQkssbUJBTUEsYS9CcTJ6Q04sQ0svaTFDQyxlMEJ1cUJHLDZCL0IyNHpDSixDS2xqMUNDLHdCMEIwcUJHLHlCQUNBLFUvQjI0ekNKLENLdGoxQ0MsZ0QwQm9yQkssbUJBTEYsK0JBV0UsYS9CazR6Q04sQ0s1ajFDQyxrSDBCb3NCSyxtQkFNQSxhL0J3M3pDTixDS2xrMUNDLGUwQnVxQkcsNkIvQjg1ekNKLENLcmsxQ0Msd0IwQjBxQkcseUJBQ0EsVS9CODV6Q0osQ0t6azFDQyxnRDBCb3JCSyxtQkFMRiwrQkFXRSxhL0JxNXpDTixDSy9rMUNDLGtIMEJvc0JLLG1CQU1BLGEvQjI0ekNOLENLcmwxQ0MsaUIwQnVxQkcsNkIvQmk3ekNKLENLeGwxQ0MsMEIwQjBxQkcseUJBQ0EsVS9CaTd6Q0osQ0s1bDFDQyxvRDBCb3JCSyxtQkFMRiwrQkFXRSxhL0J3NnpDTixDS2xtMUNDLHdIMEJvc0JLLG1CQU1BLGEvQjg1ekNOLENLeG0xQ0MsaUIwQnVxQkcsNkIvQm84ekNKLENLM20xQ0MsMEIwQjBxQkcseUJBQ0EsVS9Cbzh6Q0osQ0svbTFDQyxvRDBCb3JCSyxtQkFMRiwrQkFXRSxhL0IyN3pDTixDS3JuMUNDLHdIMEJvc0JLLG1CQU1BLGEvQmk3ekNOLENLM24xQ0MsZTBCdXFCRyw2Qi9CdTl6Q0osQ0s5bjFDQyx3QjBCMHFCRyx5QkFDQSxVL0J1OXpDSixDS2xvMUNDLGdEMEJvckJLLG1CQUxGLCtCQVdFLGEvQjg4ekNOLENLeG8xQ0Msa0gwQm9zQkssbUJBTUEsYS9Cbzh6Q04sQ0s5bzFDQyxnQjBCdXFCRyw2Qi9CMCt6Q0osQ0tqcDFDQyx5QjBCMHFCRyx5QkFDQSxVL0IwK3pDSixDS3JwMUNDLGtEMEJvckJLLG1CQUxGLCtCQVdFLGEvQmkrekNOLENLM3AxQ0MscUgwQm9zQkssbUJBTUEsYS9CdTl6Q04sQ0tqcTFDQyxlMEJ1cUJHLDZCL0I2L3pDSixDS3BxMUNDLHdCMEIwcUJHLHlCQUNBLFUvQjYvekNKLENLeHExQ0MsZ0QwQmlyQkssbUJBRkYsK0JBV0UsYS9Cby96Q04sQ0s5cTFDQyxrSDBCaXNCSyxtQkFTQSxhL0IwK3pDTixDS3ByMUNDLGdCMEJ1cUJHLDZCL0JnaDBDSixDS3ZyMUNDLHlCMEIwcUJHLHlCQUNBLFUvQmdoMENKLENLM3IxQ0Msa0QwQmlyQkssbUJBRkYsK0JBUUUsVS9CMGcwQ04sQ0tqczFDQyxxSDBCaXNCSyxnQkFNQSxVL0JnZzBDTixDK0JuL3pDQSx3QkFDRSxVL0J5L3pDRixDK0J2L3pDQSx3QkFDRSxTL0J5L3pDRixDK0J2L3pDQSwwQkFDRSxrQi9CeS96Q0YsQytCdi96Q0EseUJBQ0UsUy9CeS96Q0YsQytCdi96Q0EseUJBQ0UsUy9CeS96Q0YsQytCdi96Q0Esd0JBQ0Usa0IvQnkvekNGLEMrQnYvekNBLDBCQUNFLGtCL0J5L3pDRixDK0J2L3pDQSwwQkFDRSxXL0J5L3pDRixDK0J2L3pDQSx5QkFDRSxrQi9CeS96Q0YsQytCdi96Q0Esd0JBQ0UsUy9CeS96Q0YsQytCdi96Q0EsMkJBQ0UsaUIvQnkvekNGLEMrQnYvekNBLDJCQUNFLGlCL0J5L3pDRixDK0J2L3pDQSw2QkFDRSxpQi9CeS96Q0YsQytCdi96Q0EsNkJBQ0UsaUIvQnkvekNGLEMrQnYvekNBLDRCQUNFLGlCL0J5L3pDRixDK0JsL3pDQSx3RUFFRSxXL0J3L3pDRixDK0J0L3pDQSw0Q0FFRSxXL0J3L3pDRixDK0J0L3pDQSxnREFFRSxZL0J3L3pDRixDK0J0L3pDQSw4Q0FFRSxTL0J3L3pDRixDK0J0L3pDQSw4Q0FFRSxZL0J3L3pDRixDK0J0L3pDQSw0Q0FFRSxXL0J3L3pDRixDK0J0L3pDQSxnREFFRSxZL0J3L3pDRixDK0J0L3pDQSxnREFFRSxTL0J3L3pDRixDK0J0L3pDQSw4Q0FFRSxZL0J3L3pDRixDK0J0L3pDQSw0Q0FFRSxXL0J3L3pDRixDK0J0L3pDQSxrREFFRSxZL0J3L3pDRixDK0J0L3pDQSxrREFFRSxTL0J3L3pDRixDK0J0L3pDQSxzREFFRSxZL0J3L3pDRixDK0J0L3pDQSxzREFFRSxXL0J3L3pDRixDK0J0L3pDQSxvREFFRSxZL0J3L3pDRixDK0J0L3pDQSxvREFFRSxVL0J3L3pDRixDK0JqL3pDQSwrQkFHRSx5Q0FDQSxzQkFIQSxjQUFlLENBQ2Ysa0IvQncvekNGLEMrQnAvekNBLDJDQUNFLGdCL0JzL3pDRixDK0JwL3pDQSw0RUFFRSxnQi9Ccy96Q0YsQytCbi96Q0EscUNBS0UsVUFBVyxDQUpYLFlBQWEsQ0FTYixrQkFSQSxpQkFBa0IsQ0FDbEIsZ0JBR0EsVUFBVyxDQUdYLGtCQURBLFdBSkEsdUJBQXdCLENBR3hCLFUvQncvekNGLEMrQm4vekNBLDRDQUNFLGUvQnEvekNGLEMrQm4vekNBLDZDQUNFLGUvQnEvekNGLEMrQmovekNBLHFDQUVFLHdCQURBLFcvQnEvekNGLEMrQmwvekNBLHFDQUNFLDJCQUNBLG9CL0JvL3pDRixDK0JoL3pDQSxtQ0FDRSwyQkFDQSxxQi9CbS96Q0YsQytCai96Q0EseUNBQ0Usb0IvQm0vekNGLEMrQi8rekNBLHlDQUNFLDJCQUNBLHFCL0JrL3pDRixDK0I5K3pDQSw0Q0FDRSw0RUFDQSxVL0JpL3pDRixDK0IvK3pDQSw4Q0FDRSw0RUFDQSxVL0JpL3pDRixDK0IvK3pDQSx3Q0FDRSw4QkFDQSw4Qi9CaS96Q0YsQytCeCt6Q0EsbUJBQ0UsZ0JBRUEsWUFEQSx3Qi9CKyt6Q0YsQytCNSt6Q0Esa0lBSUUsaUNBQ0EsZ0NBQ0Esd0IvQjgrekNGLEMrQjUrekNBLHdEQUVFLCtCL0I4K3pDRixDK0IzK3pDQSxvSkFLRSx3QkFEQSxtQi9COCt6Q0YsQytCMyt6Q0Esc09BSUUsdUIvQjYrekNGLEMrQjErekNBLDhJQUVFLGUvQjYrekNGLEMrQjMrekNBLHNHQUVFLCtCQUNBLFUvQjYrekNGLEMrQnQrekNBLHFCQUNFLFUvQjIrekNGLEMrQnArekNBLGdCQUNFLHVCQUNBLG9DQUNBLGUvQnkrekNGLEMrQnYrekNBLDRDQUVFLGUvQnkrekNGLEMrQnYrekNBLDBHQUlFLHVCQUNBLGdCL0J5K3pDRixDK0J2K3pDQSx5QkFDRSxzQy9CeSt6Q0YsQytCdit6Q0Esa0RBRUUsc0IvQnkrekNGLEMrQnYrekNBLCtDQUNFLGdDL0J5K3pDRixDK0JyK3pDQSwrQkFDRSxXL0J3K3pDRixDK0J0K3pDQSxvYUFNRSxVL0J3K3pDRixDK0J0K3pDQSw0ZUFNRSxjL0J3K3pDRixDK0J0K3pDQSxzZUFNRSxlL0J3K3pDRixDK0J0K3pDQSxvRkFDRSxhL0J3K3pDRixDK0JqK3pDQSxrS0FNRSx1Qy9Ccyt6Q0YsQytCcCt6Q0Esc0VBRUUsd0MvQnMrekNGLEMrQnArekNBLDBPQU1FLGdCL0JzK3pDRixDK0IvOXpDQSw4R0FJRSxpQkFDQSxpQi9Cbyt6Q0YsQytCbCt6Q0Esa0tBTUUsVy9Cbyt6Q0YsQytCaCt6Q0EsMEtBSUUsbUJBQ0EsbUIvQm0rekNGLEMrQmorekNBLGtGQUVFLGEvQm0rekNGLEMrQjU5ekNBLGtIQUlFLGtCQUNBLGtCL0JpK3pDRixDK0IvOXpDQSxzREFFRSxpQi9CaSt6Q0YsQytCNzl6Q0EsOEtBSUUsa0JBQ0Esa0IvQmcrekNGLEMrQjk5ekNBLG9GQUVFLGlCL0JnK3pDRixDK0J4OXpDQSxnQkFDRSxjL0I4OXpDRixDK0IxOXpDQSxVQUNFLGEvQjY5ekNGLEMrQno5ekNBLGdCQUNFLGUvQjQ5ekNGO0FBS0E7Ozs7Ozs7OztFQVNFLENnQ25rMkNGLE9BQ0UsYUFBYyxDQUVkLGFBREEsZWhDbXUzQ0YsQ2dDM3QzQ0EscUNBQ0UsUWhDZ3UzQ0YsQ2dDN3QzQ0EsY0FHRSxXQUFZLENBRlosUUFBUyxDQUdULGVBQWdCLENBRmhCLFNoQ2l1M0NGLENnQ3Z0M0NBLG1CQUVFLFdBQVksQ0FEWixXaEM4dDNDRixDZ0N6dDNDQSxrQ0FFRSxZQUFhLENBRGIsV2hDNnQzQ0YsQ2dDeHQzQ0EsaUNBRUUsWUFBYSxDQURiLFdoQzR0M0NGLENnQ3h0M0NBLDJCQUVFLFlBQWEsQ0FEYixXaEM0dDNDRixDZ0NudDNDQSxjQUVFLFlBQWEsQ0FEYixXaEMwdDNDRixDZ0NydDNDQSw4QkFFRSxZQUFhLENBRGIsV2hDeXQzQ0YsQ2dDaHQzQ0EsaUNBRUUsWUFBYSxDQURiLFdoQ3V0M0NGLENnQ2x0M0NBLG9DQUVFLFlBQWEsQ0FEYixXaENzdDNDRixDZ0M5czNDQSxjQUVFLFdBQVksQ0FEWixXaENvdDNDRixDZ0NqdDNDQSwrQkFFRSxZQUFhLENBRGIsV2hDb3QzQ0YsQ2dDanQzQ0EsOEJBRUUsV0FBWSxDQURaLFdoQ290M0NGLENnQzNzM0NBLGtCQUVFLFlBQWEsQ0FEYixXaENrdDNDRixDZ0M3czNDQSxpQ0FDRSxXaENndDNDRixDZ0N4czNDQSxjQUVFLFdBQVksQ0FEWixXaEMrczNDRixDZ0MxczNDQSxpQ0FFRSxZQUFhLENBRGIsV2hDOHMzQ0YsQ2dDenMzQ0EsNEJBRUUsWUFBYSxDQURiLFdoQzZzM0NGLENnQ3hzM0NBLDZCQUVFLFdBQVksQ0FEWixXaEM0czNDRixDZ0NuczNDQSxtQ0FFRSxXQUFZLENBRFosV2hDMHMzQ0YsQ2dDcnMzQ0EsaUJBRUUsWUFBYSxDQURiLFdoQ3lzM0NGLENnQ2hzM0NBLGdCQUVFLFlBQWEsQ0FEYixXaEN1czNDRixDZ0M5cjNDQSxnQkFFRSxZQUFhLENBRGIsV2hDcXMzQ0YsQ2dDMXIzQ0EscUNBRUUsWUFBYSxDQURiLFdoQ2lzM0NGLENnQzVyM0NBLG9DQUVFLFdBQVksQ0FEWixXaENnczNDRixDZ0N2cjNDQSxjQUNFLFloQzZyM0NGLENnQzFyM0NBLDRDQUNFLGNBQ0UsYWhDNHIzQ0YsQ0FDRixDZ0NwcjNDQSxnQkFDRSxnQkFBaUIsQ0FDakIsaUJoQ3lyM0NGLENnQ3RyM0NBLFlBRUUsbUJBREEsaUJoQ3lyM0NGLENnQ3RyM0NBLGtCQVNFLFdBREEsYUFFQSxjQUNBLGdCQVJBLFFBQVMsQ0FGVCxpQkFBa0IsQ0FJbEIsaUJBQWtCLENBSGxCLE9BQVEsQ0FJUiwyQ0FBNEMsQ0FGNUMsVWhDOHIzQ0YsQ2dDcnIzQ0EseUJBQ0UscUJoQ3VyM0NGLENnQ3JyM0NBLDZCQUNFLHVCaEN1cjNDRjtBQU9BOzs7Ozs7OztFQVFFLENpQ243M0NGLHlCQWlCRSxvQkFBcUIsQ0FSckIsZ0JBR0EsWUFDQSwyQkFDQSxpREFWQSxhQUNBLHFCQUFzQixDQUh0QixjQUFlLENBTWYsYUFFQSxVQVBBLGlCQUFrQixDQVlsQixrREFSQSxZQVNBLFVqQzBwNUNGLENpQ3ZwNUNBLFNBQ0UsWWpDeXA1Q0YsQ2lDdHA1Q0EsNkJBRUUsY2pDd3A1Q0YsQ2lDcnA1Q0EscUJBQ0UsWWpDdXA1Q0YsQ2lDcnA1Q0Esb0JBQ0UsZWpDdXA1Q0YsQ2lDaHA1Q0EsVUFDRSxhQUVBLGNBQWUsQ0FEZixvQmpDc3A1Q0YsQ2lDbHA1Q0EsZ0JBQ0UsYUFFQSxXQURBLGtCakNxcDVDRixDaUNocDVDQSwrQkFLRSxVQUFXLENBRlgsV0FBWSxDQURaLGFBQWMsQ0FFZCxRQUFTLENBRVQsZUFBZ0IsQ0FDaEIsaUJqQ21wNUNGLENpQzlvNUNBLG9CQUNFLGlCakNpcDVDRixDaUN6bzVDQSxtREFFRSxzREFDQSx5QmpDOG81Q0YsQ2lDM281Q0EsaURBRUUscURqQzZvNUNGLENpQzFvNUNBLGlEQUVFLG9DakM0bzVDRixDaUNybzVDQSx1Q0FNRSwyQkFIQSxhQUFjLENBQ2QsYUFBYyxDQUNkLFVBSEEsaUJqQzhvNUNGLENpQ3hvNUNBLCtDQUtFLHFCQUFzQixDQUh0QixhQUFjLENBRWQsV0FBWSxDQURaLFVqQzRvNUNGLENpQ3hvNUNBLGlFQUVFLFdqQzBvNUNGLENpQ25vNUNBLDJDQUtFLGdCQURBLFlBTUEsZ0JBTkEsdUNBSUEsZ0JBTkEsV0FBWSxDQU9aLGNBSEEsU0FDQSxXakMybzVDRixDaUNybzVDQSx1REFLRSxVQUFXLENBRlgsV0FBWSxDQURaLGFBQWMsQ0FFZCxRQUFTLENBRVQsZUFBZ0IsQ0FDaEIsaUJqQ3VvNUNGLENpQ3BvNUNBLDJEQUtFLHNCQUhBLGFBQWMsQ0FFZCwyREFEQSxTakN3bzVDRixDaUNsbzVDQSw2RUFHRSx1QkFEQSxnQkFHQSx5QkFEQSxvQmpDc281Q0YsQ2lDbG81Q0Esc0tBSUUsZWpDb281Q0YsQ2lDN241Q0EseUVBRUUsVWpDa281Q0YsQ2lDaG81Q0EsMkVBRUUsV2pDa281Q0YsQ2lDM241Q0EseUVBRUUsZWpDZ281Q0YsQ2lDOW41Q0EsNkVBRUUsaUJqQ2dvNUNGLENpQzluNUNBLDJFQUVFLGdCakNnbzVDRixDaUN4bjVDQSxtREFFRSxvQkFBcUIsQ0FDckIsc0JBQ0EsUWpDNm41Q0YsQ2lDM241Q0EsZ0dBTUUscUJBREEsV0FEQSxTakMrbjVDRixDaUNybjVDQSxxRUFFRSxVQUFXLENBQ1gscUJqQzBuNUNGLENpQ25uNUNBLCtDQUVFLGVqQ3duNUNGLENpQ3RuNUNBLHFFQUVFLGVqQ3duNUNGLENpQ2puNUNBLHFDQUdFLHFCQURBLGFqQ3VuNUNGLENpQ3BuNUNBLHlDQUVFLGlCakNzbjVDRixDaUNwbjVDQSw2REFFRSxjakNzbjVDRixDaUNubjVDQSx1RkFHRSxpQkFEQSxjakNzbjVDRixDaUM3bTVDQSxpRUFFRSxTQUNBLHlCakNtbjVDRixDaUNqbjVDQSw2RUFFRSxRakNtbjVDRixDaUMvbTVDQSw2REFFRSxxQmpDa241Q0YsQ2lDaG41Q0EseUVBRUUsYWpDa241Q0YsQ2lDOW01Q0EsMkRBRUUsb0JqQ2luNUNGLENpQy9tNUNBLHVFQUVFLHFCakNpbjVDRixDaUMxbTVDQSxvRkFJRSxjQUNBLHNCakMrbTVDRixDaUM5bTVDRSxnSUFDRSxrQmpDbW41Q0osQ2lDM201Q0EseUNBRUUsb0JBQ0EsVWpDZ241Q0YsQ2lDdG01Q0EsaUVBRUUsY0FBZSxDQUNmLFlBQ0EseUJqQzZtNUNGLENpQzNtNUNBLDZFQUdFLGNBREEsU2pDOG01Q0YsQ2lDM201Q0EsK0VBRUUsYWpDNm01Q0YsQ2lDdm01Q0EsaUVBRUUsY0FBZSxDQUNmLFlBQ0EseUJqQzJtNUNGLENpQ3ptNUNBLDZFQUdFLGNBREEsU2pDNG01Q0YsQ2lDem01Q0EsK0VBRUUsYWpDMm01Q0YsQ2lDcG01Q0EsdUNBT0UsZ0JBRkEsK0NBU0EsZ0JBREEscUJBVEEsV0FBWSxDQVFaLE9BSEEsU0FQQSxjQUFlLENBQ2Ysc0JBQXdCLENBT3hCLGtCQUpBLGdCQUtBLE1BSUEsMEJBUEEsVWpDZ241Q0YsQ2lDdm01Q0EsNkRBRUUsb0JqQ3ltNUNGLENpQ3ZtNUNBLHlFQUVFLGFqQ3ltNUNGLENpQzdsNUNBLCtDQUVFLGtCQUFtQixDQUNuQixjQUFlLENBR2YsY0FBZSxDQUZmLGdCQUNBLFdqQ3NtNUNGLENpQ2xtNUNBLDZEQUVFLDRDQUNBLFdqQ29tNUNGLENpQ2ptNUNBLHFFQU1FLGtCQUFtQixDQUZuQix1QkFBMkIsQ0FEM0IsMkJBQTRCLENBRDVCLHFCQUFzQixDQVl0Qiw0Q0FQQSxtQkFBb0IsQ0FDcEIsZ0JBQWlCLENBQ2pCLG1CQUFvQixDQUNwQixvQkFBcUIsQ0FDckIsWUFBYSxDQUViLFdBQVksQ0FSWixzQkFBdUIsQ0FPdkIsVWpDcW01Q0YsQ2lDam01Q0EsaUVBQ0UsY2pDb201Q0YsQ2lDbG01Q0EsNkRBQ0UsZWpDcW01Q0YsQ2lDOWw1Q0EsdUNBRUUsMkZqQ21tNUNGLENpQ2ptNUNBLGtIQUlFLDJGakNtbTVDRixDaUM1bDVDQSxtQkFDRSxzQmpDaW01Q0YsQ2lDL2w1Q0Esa0JBQ0UsZ0JBQWlCLENBQ2pCLGlCakNpbTVDRixDaUMxbDVDQSxlQUVFLGdCQUFpQixDQURqQixVakNnbTVDRixDaUN4bDVDQSw4REFJRSxjakM2bDVDRixDaUN6bDVDQSxpR0FNRSxnQkFDQSxZQUNBLGlEQUpBLGNBQWUsQ0FLZiwyQkFKQSxTakMrbDVDRixDS3htNkNDLGlFNEI4aEJHLGtFakNrbDVDSixDaUM3azVDSSxtRkFDQSxrRWpDaWw1Q0osQ0tybjZDQyw0RjRCOGlCRyw0RGpDNGs1Q0osQ2lDdms1Q0ksOEdBQ0EsNERqQzJrNUNKLENLL242Q0MsdUU0QjhoQkcsa0VqQ3NtNUNKLENpQ2ptNUNJLHlGQUNBLGtFakNxbTVDSixDS3pvNkNDLGtHNEI4aUJHLDREakNnbTVDSixDaUMzbDVDSSxvSEFDQSw0RGpDK2w1Q0osQ0tucDZDQyxxRDRCOGhCRyxrRWpDMG41Q0osQ2lDcm41Q0ksdUVBQ0Esa0VqQ3luNUNKLENLN3A2Q0MsZ0Y0QjhpQkcsNERqQ29uNUNKLENpQy9tNUNJLGtHQUNBLDREakNtbjVDSixDS3ZxNkNDLDhENEI4aEJHLGtFakM4bzVDSixDaUN6bzVDSSxnRkFDQSxrRWpDNm81Q0osQ0tqcjZDQyx5RjRCOGlCRyw0RGpDd281Q0osQ2lDbm81Q0ksMkdBQ0EsNERqQ3VvNUNKLENLM3I2Q0MsOEQ0QjhoQkcsa0VqQ2txNUNKLENpQzdwNUNJLGdGQUNBLGtFakNpcTVDSixDS3JzNkNDLHlGNEI4aUJHLDREakM0cDVDSixDaUN2cDVDSSwyR0FDQSw0RGpDMnA1Q0osQ0svczZDQywyRDRCOGhCRyxrRWpDc3I1Q0osQ2lDanI1Q0ksNkVBQ0Esa0VqQ3FyNUNKLENLenQ2Q0Msc0Y0QjhpQkcsNERqQ2dyNUNKLENpQzNxNUNJLHdHQUNBLDREakMrcTVDSixDS251NkNDLDJENEI4aEJHLGtFakMwczVDSixDaUNyczVDSSw2RUFDQSxrRWpDeXM1Q0osQ0s3dTZDQyxzRjRCOGlCRyw0RGpDb3M1Q0osQ2lDL3I1Q0ksd0dBQ0EsNERqQ21zNUNKLENLdnY2Q0Msd0Q0QjhoQkcsa0VqQzh0NUNKLENpQ3p0NUNJLDBFQUNBLGtFakM2dDVDSixDS2p3NkNDLG1GNEI4aUJHLDREakN3dDVDSixDaUNudDVDSSxxR0FDQSw0RGpDdXQ1Q0osQ0szdzZDQyx3RDRCOGhCRyxrRWpDa3Y1Q0osQ2lDN3U1Q0ksMEVBQ0Esa0VqQ2l2NUNKLENLcng2Q0MsbUY0QjhpQkcsNERqQzR1NUNKLENpQ3Z1NUNJLHFHQUNBLDREakMydTVDSixDSy94NkNDLDhENEI4aEJHLGtFakNzdzVDSixDaUNqdzVDSSxnRkFDQSxrRWpDcXc1Q0osQ0t6eTZDQyx5RjRCOGlCRyw0RGpDZ3c1Q0osQ2lDM3Y1Q0ksMkdBQ0EsNERqQyt2NUNKLENLbno2Q0MsOEQ0QjhoQkcsa0VqQzB4NUNKLENpQ3J4NUNJLGdGQUNBLGtFakN5eDVDSixDSzd6NkNDLHlGNEI4aUJHLDREakNveDVDSixDaUMvdzVDSSwyR0FDQSw0RGpDbXg1Q0osQ0t2MDZDQyx3RDRCOGhCRyxrRWpDOHk1Q0osQ2lDenk1Q0ksMEVBQ0Esa0VqQzZ5NUNKLENLajE2Q0MsbUY0QjhpQkcsNERqQ3d5NUNKLENpQ255NUNJLHFHQUNBLDREakN1eTVDSixDSzMxNkNDLDJENEI4aEJHLGtFakNrMDVDSixDaUM3ejVDSSw2RUFDQSxrRWpDaTA1Q0osQ0tyMjZDQyxzRjRCOGlCRyw0RGpDNHo1Q0osQ2lDdno1Q0ksd0dBQ0EsNERqQzJ6NUNKLENLLzI2Q0Msd0Q0QjhoQkcsa0VqQ3MxNUNKLENpQ2oxNUNJLDBFQUNBLGtFakNxMTVDSixDS3ozNkNDLG1GNEI4aUJHLDREakNnMTVDSixDaUMzMDVDSSxxR0FDQSw0RGpDKzA1Q0osQ0tuNDZDQywyRDRCOGhCRyxrRWpDMDI1Q0osQ2lDcjI1Q0ksNkVBQ0Esa0VqQ3kyNUNKLENLNzQ2Q0Msc0Y0QjhpQkcsNERqQ28yNUNKLENpQy8xNUNJLHdHQUNBLHlEakNtMjVDSixDaUN0MTVDQSxjQUNFLGNBQ0EsY2pDMjE1Q0YsQ2lDejE1Q0Esb0JBQ0UsVWpDMjE1Q0YsQ2lDeDE1Q0EsY0FDRSxpQkFDQSxpQmpDMDE1Q0YsQ2lDeDE1Q0Esb0JBRUUsZ0JBQ0EsaUJBRkEscUJqQzQxNUNGLENpQ3YxNUNBLGdCQUNFLGlCQUNBLGlCakN5MTVDRixDaUN2MTVDQSxzQkFFRSxnQkFDQSxpQkFGQSwyQmpDMjE1Q0YsQ2lDdDE1Q0EsZUFDRSxtQkFDQSxtQmpDdzE1Q0YsQ2lDdDE1Q0EscUJBRUUsa0JBQ0EsbUJBRkEsdUJqQzAxNUNGLENpQ3IxNUNBLGVBQ0UsbUJBQ0EsbUJqQ3UxNUNGLENpQ3IxNUNBLHFCQUVFLGtCQUNBLG1CQUZBLHVCakN5MTVDRixDaUNwMTVDQSxjQUNFLG1CQUNBLG1CakNzMTVDRixDaUNwMTVDQSxvQkFFRSxrQkFDQSxtQkFGQSw2QmpDdzE1Q0YsQ2lDbjE1Q0EsZ0JBQ0Usa0JBQ0Esa0JqQ3ExNUNGLENpQ24xNUNBLHNCQUVFLGlCQUNBLGtCQUZBLDJCakN1MTVDRixDaUNsMTVDQSxnQkFDRSxrQkFDQSxrQmpDbzE1Q0YsQ2lDbDE1Q0Esc0JBSUUsY0FBZSxDQUZmLGlCQUNBLGtCQUZBLHVCakN1MTVDRixDaUNqMTVDQSxlQUNFLGtCQUNBLGtCakNtMTVDRixDaUNqMTVDQSxxQkFJRSxjQUFlLENBRmYsaUJBQ0Esa0JBRkEsMkJqQ3MxNUNGLENpQ2gxNUNBLGNBQ0Usa0JBQ0Esa0JqQ2sxNUNGLENpQ2gxNUNBLG9CQUVFLGlCQUNBLGtCQUZBLHFCakNvMTVDRixDaUN6MDVDQSw0Q0FDRSx1QkFDRSxjQUNBLGNqQyswNUNGLENpQzcwNUNBLDZCQUVFLGNBQ0EsZUFGQSxVakNpMTVDRixDaUM3MDVDQSx5QkFDRSxpQkFDQSxpQmpDKzA1Q0YsQ2lDNzA1Q0EsK0JBRUUsZ0JBQ0EsaUJBRkEscUJqQ2kxNUNGLENpQzcwNUNBLHdCQUNFLGlCQUNBLGlCakMrMDVDRixDaUM3MDVDQSw4QkFFRSxnQkFDQSxpQkFGQSxxQmpDaTE1Q0YsQ2lDNzA1Q0Esd0JBQ0UsaUJBQ0EsaUJqQyswNUNGLENpQzcwNUNBLDhCQUVFLGdCQUNBLGlCQUZBLHFCakNpMTVDRixDaUM3MDVDQSx1QkFDRSxpQkFDQSxpQmpDKzA1Q0YsQ2lDNzA1Q0EsNkJBRUUsZ0JBQ0EsaUJBRkEscUJqQ2kxNUNGLENpQzcwNUNBLHlCQUNFLGlCQUNBLGlCakMrMDVDRixDaUM3MDVDQSwrQkFFRSxnQkFDQSxpQkFGQSwyQmpDaTE1Q0YsQ2lDNzA1Q0EseUJBQ0UsaUJBQ0EsaUJqQyswNUNGLENpQzcwNUNBLCtCQUVFLGdCQUNBLGlCQUZBLDJCakNpMTVDRixDaUM3MDVDQSx3QkFDRSxpQkFDQSxpQmpDKzA1Q0YsQ2lDNzA1Q0EsOEJBRUUsZ0JBQ0EsaUJBRkEsMkJqQ2kxNUNGLENpQzcwNUNBLHVCQUNFLGlCQUNBLGlCakMrMDVDRixDaUM3MDVDQSw2QkFFRSxnQkFDQSxpQkFGQSwyQmpDaTE1Q0YsQ0FDRixDaUMzMDVDQSxrRUFDRSx1QkFDRSxjQUNBLGNqQzgwNUNGLENpQzUwNUNBLDZCQUVFLGNBQ0EsZUFGQSxVakNnMTVDRixDaUM1MDVDQSx5QkFDRSxpQkFDQSxpQmpDODA1Q0YsQ2lDNTA1Q0EsK0JBRUUsZ0JBQ0EsaUJBRkEscUJqQ2cxNUNGLENpQzUwNUNBLHdCQUNFLGlCQUNBLGlCakM4MDVDRixDaUM1MDVDQSw4QkFFRSxnQkFDQSxpQkFGQSxxQmpDZzE1Q0YsQ2lDNTA1Q0Esd0JBQ0UsaUJBQ0EsaUJqQzgwNUNGLENpQzUwNUNBLDhCQUVFLGdCQUNBLGlCQUZBLDJCakNnMTVDRixDaUM1MDVDQSx1QkFDRSxpQkFDQSxpQmpDODA1Q0YsQ2lDNTA1Q0EsNkJBRUUsZ0JBQ0EsaUJBRkEsMkJqQ2cxNUNGLENpQzUwNUNBLHlCQUNFLGlCQUNBLGlCakM4MDVDRixDaUM1MDVDQSwrQkFFRSxnQkFDQSxpQkFGQSwyQmpDZzE1Q0YsQ2lDNTA1Q0EseUJBQ0UsbUJBQ0EsbUJqQzgwNUNGLENpQzUwNUNBLCtCQUVFLGtCQUNBLG1CQUZBLHVCakNnMTVDRixDaUM1MDVDQSx3QkFDRSxtQkFDQSxtQmpDODA1Q0YsQ2lDNTA1Q0EsOEJBRUUsa0JBQ0EsbUJBRkEsdUJqQ2cxNUNGLENpQzUwNUNBLHVCQUNFLG1CQUNBLG1CakM4MDVDRixDaUM1MDVDQSw2QkFFRSxrQkFDQSxtQkFGQSx1QmpDZzE1Q0YsQ0FDRixDaUN2MDVDQSw0Q0FDRSxvQkFDRSx1QmpDNDA1Q0YsQ2lDMTA1Q0Esc0NBQ0Usc0JqQzQwNUNGLENpQzEwNUNBLDBCQUNFLHVCQUF5QixDQUN6QixxQkFBdUIsQ0FDdkIsV0FDQSxtQkFBcUIsQ0FDckIsZ0NqQzQwNUNGLENBQ0YsQ2lDcjA1Q0EsZ0JBQ0UsYWpDMDA1Q0YsQ2lDbjA1Q0EsMkNBRUUsbUJBQ0EsMENqQ3cwNUNGLENpQ3AwNUNBLDZEQUVFLHdDakN1MDVDRixDaUNuMDVDQSw2RUFFRSx3QmpDczA1Q0YsQ2lDbDA1Q0EsdUZBRUUsd0JqQ3EwNUNGLENpQzd6NUNBLG9JQUVFLHdCakNvMDVDRixDaUNsMDVDQSx5RkFFRSxVakNvMDVDRixDaUNoMDVDQSx5REFFRSxtREFDQSx3QmpDbTA1Q0YsQ2lDajA1Q0EsK0VBRUUsd0JqQ20wNUNGLENpQ2owNUNBLDJGQUVFLGFqQ20wNUNGLENpQy96NUNBLHFJQUlFLGtCakNrMDVDRjtBQU9BOzs7Ozs7OztFQVFFLENrQ2x1N0NGLGFBQ0UsZUFDQSxlbEM0NjhDRixDa0N6NjhDQSx5QkFDRSxZbEMyNjhDRixDa0N6NjhDQSx3QkFDRSxlbEMyNjhDRixDa0NwNjhDQSxzQkFFRSxnQkFJQSxZQUNBLGdCQUpBLGdCQUNBLGlCQUhBLGlCbEMrNjhDRixDa0N2NjhDQSxrQ0FDRSxhQUNBLGFsQ3k2OENGLENrQ2o2OENBLGdDQUNFLHFCQUNBLHFCbENzNjhDRixDa0NwNjhDQSx1Q0FHRSxNQUFPLENBRlAsaUJBQWtCLENBQ2xCLEtsQ3U2OENGLENrQ3A2OENBLHlDQUdFLGdCQURBLFdsQ3U2OENGLENrQy81OENBLDhCQUNFLGNBR0EsV0FEQSxZQUVBLGdCQUhBLFdsQ3U2OENGLENrQ2w2OENBLG1FQU1FLHFCQUpBLGFBQWMsQ0FHZCxXQUFZLENBRlosYUFBYyxDQUNkLFVsQ3M2OENGLENrQzc1OENBLCtCQUNFLGFsQ2s2OENGLENrQy81OENBLHVDQUNFLGlCbENrNjhDRixDa0MzNThDQSw4QkFFRSxzQkFEQSxjQUVBLGVsQ2c2OENGLENrQzk1OENBLCtCQUNFLGNsQ2c2OENGLENrQzk1OENBLHFDQUNFLGFsQ2c2OENGLENrQ3o1OENBLGdDQUdFLHFCQUZBLHFCQUdBLGlCQUZBLGdCbENnNjhDRixDa0M1NThDQSxrQ0FDRSxvQkFBcUIsQ0FDckIsaUJsQzg1OENGLENrQzU1OENBLDRDQUNFLGNsQzg1OENGLENrQ3Y1OENBLDRCQUdFLHFCQUNBLHNCQUZBLGNBR0EsZ0JBSkEsbUJsQ2c2OENGLENrQ3A1OENBLCtCQUNFLGdCbEN5NThDRixDa0N2NThDQSxpQ0FJRSxxQkFIQSxjQUFlLENBQ2Ysb0JBQXFCLENBQ3JCLGtCbEMwNThDRixDa0N2NThDQSw0Q0FDRSxjbEN5NThDRixDa0N2NThDQSwrRUFFRSxvQmxDeTU4Q0YsQ2tDbDU4Q0EseUJBQ0UsY2xDdTU4Q0YsQ2tDcjU4Q0Esa0NBRUUsZUFEQSxVbEN3NThDRixDa0NyNThDQSxrQ0FDRSxjQUNBLFdsQ3U1OENGLENrQ2g1OENBLHdGQUdFLFlsQ3E1OENGLENrQ3o0OENBLHlDQUdFLHVDQUZBLDRCQUNBLHdCbENrNThDRixDa0MxNDhDQSx1Q0FLRSxVQUpBLFNBQVUsQ0FDVixrQkFFQSxRQURBLE1BR0EsNEJBQ0Esb0JsQys0OENGLENrQzc0OENBLHNEQUNFLFNsQys0OENGLENrQ3Y0OENBLGtCQUNFLHNCbEM0NDhDRixDa0MxNDhDQSxrQkFDRSxzQmxDNDQ4Q0YsQ2tDMTQ4Q0EsbUJBQ0Usc0JsQzQ0OENGLENrQzE0OENBLGFBQ0UsY2xDNDQ4Q0YsQ2tDMTQ4Q0EsbUJBQ0UsdUJsQzQ0OENGLENrQzE0OENBLGlCQUNFLHVCbEM0NDhDRixDa0MxNDhDQSxrQkFDRSx1QmxDNDQ4Q0YsQ2tDMTQ4Q0EscUJBQ0UsdUJsQzQ0OENGLENrQ3Q0OENBLCtCQUNFLHdCbEMyNDhDRixDa0N4NDhDQSw0RUFFRSx3QmxDMDQ4Q0YsQ2tDdjQ4Q0EsbUZBRUUsd0JsQ3k0OENGLENrQ3Q0OENBLCtJQUdFLFVsQ3c0OENGLENrQ3I0OENBLGtEQUNFLHdCbEN1NDhDRjtBQU9BOzs7Ozs7OztFQVFFLENtQ2xxOUNGLFNBQ0UsWW5DcTMrQ0YsQ21DbjMrQ0EscUJBQ0UsWW5DcTMrQ0YsQ21DbjMrQ0Esb0JBQ0UsZW5DcTMrQ0YsQ21DNTIrQ0EsZ0JBTUUsZ0JBQ0EsZ0JBTkEsWUFBYSxDQUNiLGtCQUFtQixDQUduQixTQURBLHVCQURBLFVuQ3MzK0NGLENtQ2gzK0NBLDRCQUNFLFlBQWEsQ0FDYixhbkNrMytDRixDbUNoMytDQSwyQkFDRSxnQm5DazMrQ0YsQ21DOTIrQ0EsdUJBS0UsbUJBSkEsYUFBYyxDQUNkLGFBQWMsQ0FFZCxZQUVBLGdCQUhBLFduQ28zK0NGLENtQy8yK0NBLDZCQUtFLGdCQUNBLFlBQ0EsbUJBQ0EscUJBTkEsZ0JBREEsVUFHQSxjQURBLFVuQ3MzK0NGLENtQy8yK0NBLDJCQUdFLHFCQURBLFlBREEsVW5DbTMrQ0YsQ21DLzIrQ0EsZ0NBQ0Usc0NuQ2kzK0NGLENtQ3oyK0NBLHlCQUtFLHFCQUZBLG1CQUZBLGFBQWMsQ0FDZCxhQUFjLENBRWQsZW5DZzMrQ0YsQ21DNzIrQ0Esb0NBQ0UsZ0JuQysyK0NGLENtQzMyK0NBLDJCQUNFLGNuQzgyK0NGLENtQ3YyK0NBLCtCQUdFLHFCQUVBLGNBQ0Esa0JBRkEsZ0JBSEEsa0JBQ0EsU25DZzMrQ0YsQ21DcjIrQ0Esa0NBSUUsc0JBRkEsY0FDQSxnQkFGQSxRbkM2MitDRixDbUN0MitDQSxzQ0FLRSxvQkFKQSxvQkFBcUIsQ0FFckIsWUFDQSx3QkFFQSxzQkFKQSxVbkM2MitDRixDbUNuMitDQSwrQkFDRSxvQkFBcUIsQ0FDckIsZ0JBQ0EsZUFDQSx1Qm5DdzIrQ0YsQ21DdDIrQ0EsbUNBR0UsWUFGQSx3QkFHQSxzQkFGQSxVbkMwMitDRixDbUNqMitDQSx3Q0FRRSxxQkFQQSxxQkFDQSxXQUVBLHNCQUNBLGtCQUZBLGdCQUdBLGtCQUNBLFNuQ3cyK0NGLENtQ2gyK0NBLGdDQUVFLGdCQUVBLHNCQUhBLGdCQUVBLFNuQ3MyK0NGLENtQ2oyK0NBLDJDQUNFLG9CQUFxQixDQUNyQixtQkFDQSxTbkNvMitDRixDbUNoMitDQSxxQ0FFRSxpQkFDQSxjQUVBLHFCQURBLGdCQUhBLFNuQ3UyK0NGLENtQzUxK0NBLCtCQUlFLGdCQUNBLFlBQ0EsZ0JBQ0EsZ0JBRUEscUJBUkEscUJBQ0Esc0JBQ0EsZ0JBS0EsU25DazIrQ0YsQ21DOTErQ0EsaUNBRUUsa0JBREEsaUJuQ2kyK0NGLENtQzkxK0NBLHNDQUVFLHFCQURBLFdBR0EsVUFDQSxTQUFVLENBQ1YsaUJBQWtCLENBSGxCLEtBQU0sQ0FJTixrQm5DZzIrQ0YsQ21DNzErQ0EscUNBQ0UsU0FDQSx5Qm5DKzErQ0YsQ21DNzErQ0EsaURBQ0UsYW5DKzErQ0YsQ21DNzErQ0Esa0RBQ0UsYW5DKzErQ0YsQ21DMzErQ0EsNENBQ0UsYW5DODErQ0YsQ21DNTErQ0Esa0RBQ0UsWW5DODErQ0YsQ21DMTErQ0Esc0VBSUUscUJBRkEsZUFDQSxVQUVBLHlCbkM2MStDRixDbUMzMStDQSwrSEFHRSxxQm5DNjErQ0YsQ21DcDErQ0EsZUFDRSxzQm5DeTErQ0YsQ21DdjErQ0EsU0FDRSxjbkN5MStDRixDbUN2MStDQSxlQUNFLHVCbkN5MStDRixDbUNsMStDQSx5QkFDRSxrQm5DdTErQ0YsQ21DcDErQ0Esc0ZBRUUsd0JuQ3MxK0NGLENtQ24xK0NBLHlGQUVFLHdCbkNxMStDRixDbUNsMStDQSxvREFDRSxVbkNvMStDRjtBQU9BOzs7Ozs7OztFQVFFLENvQy9tL0NGLGdCQUtFLHVCQUdBLFlBQ0EsZ0JBQ0EsZ0JBVEEsYUFDQSxhQUVBLGFBRUEsVUFLQSwrQkFSQSxXQVNBLFVwQ3cwZ0RGLENvQ3QwZ0RBLGtCQUNFLGNwQ3cwZ0RGLENvQ2owZ0RBLFVBQ0UsY3BDczBnREYsQ29DbjBnREEsc0JBQ0Usc0JwQ3EwZ0RGLENvQ24wZ0RBLHFCQUNFLHlCcENxMGdERixDb0M5emdEQSxzQkFJRSxVQUFXLENBRlgsV0FBWSxDQURaLGFBQWMsQ0FFZCxRQUFTLENBRVQsZUFBZ0IsQ0FDaEIsaUJwQ20wZ0RGLENvQ2owZ0RBLDRCQUNFLFlwQ20wZ0RGLENvQ2owZ0RBLDJCQUNFLGVwQ20wZ0RGLENvQzF6Z0RBLHVCQVFFLGlCQUxBLGNBREEsYUFBYyxDQUVkLFdBQ0EsU0FFQSxjQURBLFVBTEEsaUJwQ3MwZ0RGLENvQzd6Z0RBLDJCQUtFLFlBREEsc0JBSEEsYUFBYyxDQUVkLFdBQVksQ0FEWixVcENrMGdERixDb0M1emdEQSxzQ0FDRSxlcEM4emdERixDb0N0emdEQSx5QkFHRSxnQkFNQSxZQUNBLGdCQUhBLGdCQUhBLHNCQUhBLGFBQWMsQ0FDZCxhQUFjLENBTWQsY0FIQSxTQUNBLFNwQyt6Z0RGLENvQ3p6Z0RBLCtCQUlFLFVBQVcsQ0FGWCxXQUFZLENBRFosYUFBYyxDQUVkLFFBQVMsQ0FFVCxlQUFnQixDQUNoQixpQnBDMnpnREYsQ29DeHpnREEsZ0NBS0UsaUJBRkEsY0FDQSxjQUhBLFdBQVksQ0FLWixtQkFKQSxVcEM4emdERixDb0N2emdEQSxpQ0FLRSxzQkFKQSxvQkFBcUIsQ0FFckIsMkRBQ0EsZ0JBRkEsb0JwQzR6Z0RGLENvQ3R6Z0RBLDBDQUNFLHNCcEN5emdERixDb0NsemdEQSx3Q0FDRSxVcEN1emdERixDb0NyemdEQSx5Q0FDRSxXcEN1emdERixDb0MveWdEQSw2QkFDRSxrQkFDQSxRcENvemdERixDb0NsemdEQSx1REFJRSxxQkFEQSxVQURBLFFwQ3N6Z0RGLENvQzV5Z0RBLHNDQUtFLHNCQUZBLGNBQ0EscUJBSEEsZ0JBQ0EsY3BDb3pnREYsQ29DMXlnREEsMkJBQ0UsZXBDK3lnREYsQ29DN3lnREEsc0NBQ0UsZXBDK3lnREYsQ29DeHlnREEsc0JBSUUscUJBRkEsY0FDQSxnQkFGQSxhcENnemdERixDb0MzeWdEQSx3QkFDRSxpQnBDNnlnREYsQ29DM3lnREEsa0NBQ0UsY3BDNnlnREYsQ29DMXlnREEsK0NBRUUsaUJBREEsY3BDNnlnREYsQ29DcHlnREEsb0NBQ0UsU0FDQSx5QnBDMHlnREYsQ29DeHlnREEsMENBQ0UsUXBDMHlnREYsQ29DdHlnREEsa0NBQ0UscUJwQ3l5Z0RGLENvQ3Z5Z0RBLHdDQUNFLGFwQ3l5Z0RGLENvQ3J5Z0RBLGlDQUNFLG9CcEN3eWdERixDb0N0eWdEQSx1Q0FDRSxxQnBDd3lnREYsQ29DNXhnREEsd0NBQ0UsY0FBZSxDQUNmLFlBQ0EseUJwQ215Z0RGLENvQ2p5Z0RBLDhDQUVFLGNBREEsU3BDb3lnREYsQ29DanlnREEsK0NBQ0UsYXBDbXlnREYsQ29DN3hnREEsb0NBQ0UsY0FBZSxDQUNmLFlBQ0EseUJwQ2l5Z0RGLENvQy94Z0RBLDBDQUVFLGNBREEsU3BDa3lnREYsQ29DL3hnREEsMkNBQ0UsYXBDaXlnREYsQ29DMXhnREEsdUJBR0UsZ0JBU0EsZ0JBRkEsZ0JBREEscUJBUkEsY0FPQSxPQUpBLGlCQUVBLFVBSkEsa0JBS0EsTUFJQSwwQkFOQSxVcENzeWdERixDb0M3eGdEQSx5QkFDRSw0QnBDK3hnREYsQ29DN3hnREEsZ0RBQ0UsNEJwQyt4Z0RGLENvQzV4Z0RBLDZCQUlFLFVBQVcsQ0FGWCxXQUFZLENBRFosYUFBYyxDQUVkLFFBQVMsQ0FFVCxlQUFnQixDQUNoQixpQnBDOHhnREYsQ29DcnhnREEsZ0NBQ0UsV3BDMnhnREYsQ29DdHhnREEsa0VBQ0UsZ0JBQ0UsWXBDeXhnREYsQ29DdnhnREEsZ0NBQ0UsV3BDeXhnREYsQ29DdnhnREEsZ0NBQ0UsYUFBYyxDQUNkLGlCcEN5eGdERixDQUNGLENvQ3B4Z0RBLDRDQUNFLGtDQUNFLHFCQUFzQixDQUN0QixZcEN1eGdERixDb0NyeGdEQSx5Q0FDRSxhQUFjLENBQ2QsZ0JBQWlCLENBQ2pCLGlCcEN1eGdERixDb0NyeGdEQSxzRkFJRSwyQkFGQSx3QkFBMEIsQ0FDMUIsb0JwQ3d4Z0RGLENvQ3J4Z0RBLGtEQUNFLGFBQWMsQ0FDZCxpQnBDdXhnREYsQ0FDRixDb0Mxd2dEQSxzREFDRSxxQnBDa3hnREYsQ29DaHhnREEseURBQ0UsaUJwQ2t4Z0RGLENvQ2h4Z0RBLHlEQUNFLG1CcENreGdERixDb0Mxd2dEQSx3QkFDRSxjcEMrd2dERixDb0M3d2dEQSx1Q0FDRSxZcEMrd2dERixDb0N2d2dEQSx3QkFDRSx3Q0FDQSxTQUNBLGFwQzR3Z0RGLENvQzF3Z0RBLG9DQUNFLGVBQWdCLENBQ2hCLHVCQUNBLHVCcEM0d2dERixDb0Mxd2dEQSxtQ0FDRSwwQkFDQSwwQnBDNHdnREYsQ29DeHdnREEsZ0NBQ0UsUUFBUyxDQUNULGVwQzJ3Z0RGLENvQ3p3Z0RBLCtDQUNFLFFBQVMsQ0FDVCxhcEMyd2dERixDb0Nud2dEQSxrREFFRSxjcEN3d2dERixDb0Nyd2dEQSxvRkFFRSxhcEN1d2dERixDb0MvdmdEQSxnQkFDRSxhcENvd2dERixDb0M3dmdEQSw0Q0FDRSwwRUFFRSxxQnBDa3dnREYsQ0FDRixDb0MzdmdEQSx5QkFDRSxzQnBDZ3dnREYsQ29DOXZnREEsa0NBQ0UsZ0JBQ0Esd0JwQ2d3Z0RGLENvQzl2Z0RBLGdDQUNFLGVwQ2d3Z0RGLENvQzN2Z0RBLHlGQUNFLHdCcENnd2dERixDb0M5dmdEQSwrQkFDRSx3QnBDZ3dnREYsQ29DOXZnREEsNkNBQ0UsYXBDZ3dnREYsQ29DOXZnREEsbURBQ0UsYXBDZ3dnREYsQ29DOXZnREEsMkNBQ0Usd0JwQ2d3Z0RGLENvQzl2Z0RBLGlEQUNFLFVwQ2d3Z0RGLENvQzl2Z0RBLDBDQUNFLHdCcENnd2dERixDb0M5dmdEQSxnREFDRSx3QnBDZ3dnREYsQ29DOXZnREEsdURBQ0UsYXBDZ3dnREYsQ29DOXZnREEsd0RBQ0UsYXBDZ3dnREYsQ29DM3ZnREEsdUdBQ0UsYXBDZ3dnREYsQ29DOXZnREEsZ0NBQ0Usd0JwQ2d3Z0RGLENvQzl2Z0RBLHNHQUVFLFVwQ2d3Z0RGLENvQzl2Z0RBLGlDQUNFLHVDcENnd2dERixDb0M5dmdEQSw2Q0FDRSxlcENnd2dERjtBQU9BOzs7Ozs7OztFQVFFLENxQ2p4aERGLGNBQ0UsbUJBQW9CLENBQ3BCLHFCQUFzQixDQUN0QixhQUNBLGNyQys5aURGLENxQzU5aURBLDRCQUNFLGtCckM4OWlERixDcUMzOWlEQSwwQkFDRSxZckM2OWlERixDcUMzOWlEQSx5QkFDRSxlckM2OWlERixDcUNuOWlEQSxlQUVFLHNCQUF1QixDQUN2QixjckN5OWlERixDcUN2OWlEQSwwQkFDRSxtQkFBb0IsQ0FDcEIsYUFBYyxDQUNkLHFCQUFzQixDQUN0QixtQkFDQSxjckN5OWlERixDcUN2OWlEQSxlQUNFLFlBQWEsQ0FDYixzQnJDeTlpREYsQ3FDcjlpREEscUJBSUUsVUFBVyxDQUZYLFdBQVksQ0FEWixhQUFjLENBRWQsUUFBUyxDQUVULGVBQWdCLENBQ2hCLGlCckN3OWlERixDcUNyOWlEQSwyQkFDRSxZckN1OWlERixDcUMxOGlEQSxzREFNRSxjQUpBLDJEQUNBLGVBQ0EsZ0JBQ0EsZ0JBR0Esa0JBREEsd0JyQ205aURGLENxQzM4aURBLHNEQUtFLHNCQUhBLDJEQUNBLGNBQ0EsZ0JBR0Esa0JBREEsd0JyQ2k5aURGLENxQ3Q4aURBLHdJQUVFLFlyQzg4aURGLENxQ2o4aURBLGtFQUlFLFFBQVMsQ0FGVCxTQUFVLENBQ1YsVXJDMDhpREYsQ3FDbDhpREEsZ0VBSUUsZ0JBRkEsZ0JBQ0EsZUFFQSxpQnJDdThpREYsQ3FDcjhpREEsOEVBRUUsaUJyQ3U4aURGLENxQ2g4aURBLDhEQUVFLGdCQUNBLHVCckNxOGlERixDcUN0N2lEQSxtQkFDRSxlckM4N2lERixDcUM1N2lEQSw4QkFFRSxlQURBLGFyQys3aURGLENxQzM3aURBLG9CQUNFLGVyQzY3aURGLENxQzM3aURBLCtCQUVFLGVBREEsc0JyQzg3aURGLENxQzE3aURBLHFCQUNFLGVyQzQ3aURGLENxQzE3aURBLGdDQUVFLGVBREEsZXJDNjdpREYsQ3FDejdpREEscUJBQ0UsZXJDMjdpREYsQ3FDejdpREEsZ0NBRUUsZUFEQSxzQnJDNDdpREYsQ3FDeDdpREEsbUJBQ0UsZXJDMDdpREYsQ3FDeDdpREEsOEJBRUUsZUFEQSxzQnJDMjdpREYsQ3FDdjdpREEsb0JBQ0UsZXJDeTdpREYsQ3FDdjdpREEsK0JBRUUsZUFEQSxhckMwN2lERixDcUN0N2lEQSxvQkFDRSxlckN3N2lERixDcUN0N2lEQSwrQkFFRSxlQURBLGFyQ3k3aURGLENxQ3I3aURBLHFCQUNFLGVyQ3U3aURGLENxQ3I3aURBLGdDQUVFLGVBREEsc0JyQ3c3aURGLENxQ3A3aURBLG1CQUNFLGVyQ3M3aURGLENxQ3A3aURBLDhCQUVFLGVBREEsYXJDdTdpREYsQ3FDbjdpREEsbUJBQ0UsZXJDcTdpREYsQ3FDbjdpREEsOEJBRUUsZUFEQSxjckNzN2lERixDcUMzNmlEQSx5QkFFRSxrQkFBbUIsQ0FEbkIsa0JyQ2k3aURGLENxQzk2aURBLDBCQUNFLHFCQUFzQixDQUN0QixRQUFTLENBQ1QsY3JDZzdpREYsQ3FDOTZpREEscUNBRUUsa0JBQW1CLENBRG5CLGtCQUFtQixDQUduQixhQURBLGNyQ2k3aURGLENxQzc2aURBLHNGQUVFLHNCckMrNmlERixDcUM3NmlEQSx3RkFFRSxZckMrNmlERixDcUM1NmlEQSw0RUFFRSxvQkFBcUIsQ0FDckIscUJyQzg2aURGLENxQzU2aURBLDRFQUVFLG9CQUFxQixDQUVyQixtQkFEQSxxQnJDKzZpREYsQ3FDdjZpREEsd0VBRUUsVXJDNDZpREYsQ3FDMTZpREEsd0VBRUUsd0JyQzQ2aURGLENLeHVqREMsK0dnQzJVRyxhckNxNmlESixDS2h2akRDLDBJZ0NnVkcsYXJDcTZpREosQ0tydmpEQyxxSGdDMlVHLGFyQys2aURKLENLMXZqREMsZ0pnQ2dWRyxhckMrNmlESixDSy92akRDLG1HZ0MyVUcsYXJDeTdpREosQ0twd2pEQyw4SGdDZ1ZHLGFyQ3k3aURKLENLendqREMsNEdnQzJVRyxhckNtOGlESixDSzl3akRDLHVJZ0NnVkcsYXJDbThpREosQ0tueGpEQyw0R2dDMlVHLGFyQzY4aURKLENLeHhqREMsdUlnQ2dWRyxhckM2OGlESixDSzd4akRDLHlHZ0MyVUcsYXJDdTlpREosQ0tseWpEQyxvSWdDZ1ZHLGFyQ3U5aURKLENLdnlqREMseUdnQzJVRyxhckNpK2lESixDSzV5akRDLG9JZ0NnVkcsYXJDaStpREosQ0tqempEQyxzR2dDMlVHLGFyQzIraURKLENLdHpqREMsaUlnQ2dWRyxhckMyK2lESixDSzN6akRDLHNHZ0MyVUcsYXJDcS9pREosQ0toMGpEQyxpSWdDZ1ZHLGFyQ3EvaURKLENLcjBqREMsNEdnQzJVRyxhckMrL2lESixDSzEwakRDLHVJZ0NnVkcsYXJDKy9pREosQ0svMGpEQyw0R2dDMlVHLGFyQ3lnakRKLENLcDFqREMsdUlnQ2dWRyxhckN5Z2pESixDS3oxakRDLHNHZ0MyVUcsYXJDbWhqREosQ0s5MWpEQyxpSWdDZ1ZHLGFyQ21oakRKLENLbjJqREMseUdnQzJVRyxhckM2aGpESixDS3gyakRDLG9JZ0NnVkcsYXJDNmhqREosQ0s3MmpEQyxzR2dDMlVHLGFyQ3VpakRKLENLbDNqREMsaUlnQ2dWRyxhckN1aWpESixDS3YzakRDLHlHZ0MyVUcsYXJDaWpqREosQ0s1M2pEQyxvSWdDZ1ZHLGFyQ2lqakRKLENxQ3ppakRBLHFDQUNFLFVBQVcsQ0FDWCxrQnJDOGlqREYsQ3FDNWlqREEsc0NBQ0UsV0FBWSxDQUNaLGtCckM4aWpERixDcUM1aWpEQSxpQ0FDRSxlckM4aWpERixDcUN2aWpEQSw0Q0FDRSx5QkFFRSx1QkFBeUIsQ0FDekIsd0JBQTBCLENBRjFCLFVyQzhpakRGLENxQzFpakRBLG9DQUVFLGtCQUFzQixDQUN0Qix1QkFGQSxvQnJDOGlqREYsQ0FDRixDcUM5aGpEQSxzSkFFRSwwQnJDd2lqREYsQ3FDdGlqREEsMEVBRUUsd0JyQ3dpakRGLENxQy9oakRBLHNKQUVFLHdCckNzaWpERixDcUNwaWpEQSwwRUFFRSx3QnJDc2lqREYsQ3FDbGlqREEsa0VBRUUsd0JyQ3FpakRGLENxQ25pakRBLHdGQUVFLHdCckNxaWpERixDcUNuaWpEQSw0RUFFRSx3QnJDcWlqREYsQ3FDamlqREEsc0RBRUUsd0JyQ29pakRGLENxQ2xpakRBLDRFQUVFLHdCckNvaWpERixDcUNsaWpEQSxnRUFFRSx3QnJDb2lqREYsQ3FDaGlqREEsa0VBRUUsd0JyQ21pakRGLENxQ2ppakRBLHdGQUVFLHdCckNtaWpERixDcUNqaWpEQSw0RUFFRSwwQnJDbWlqREYsQ3FDL2hqREEsZ0VBRUUsd0JyQ2tpakRGLENxQ2hpakRBLHNGQUVFLHdCckNraWpERixDcUNoaWpEQSwwRUFFRSwwQnJDa2lqREY7QUFRQTs7Ozs7Ozs7RUFRRSxDc0N4K2pERix1Q0FFRSxjdEMrcWxERixDc0M3cWxEQSx5QkFDRSxlQUNBLFN0QytxbERGLENzQzNxbERBLHFEQUVFLGN0QzhxbERGLENzQzFxbERBLDhCQUlFLHNCQUZBLDJEQUNBLGNBRkEsY3RDZ3JsREYsQ3NDenFsREEsbUhBRUUsVUFDQSxrQnRDNHFsREYsQ3NDMXFsREEsK0RBQ0UsZ0J0QzRxbERGLENzQ3hxbERBLG1GQUVFLHFCQUNBLFdBTUEsY0FIQSxXQUNBLG9CQUhBLFVBSUEsVUFJQSxlQUZBLCtDQUNBLHdCQU5BLFl0Q2tybERGLENzQ25xbERBLGdDQUNFLGFBQWMsQ0FDZCxTdEN5cWxERixDc0N2cWxEQSwrQ0FDRSxZQUNBLHdCQUNBLHdCdEN5cWxERixDc0NycWxEQSx3Q0FDRSxjQUNBLG1CdEN3cWxERixDc0M1cGxEQSx1SkFDRSx1QnRDcXFsREYsQ3NDMXBsREEscUJBQ0UsV3RDa3FsREYsQ3NDL3BsREEscURBR0UsZ0JBREEsMkJBRUEsc0V0Q2lxbERGLENzQy9wbERBLG1FQU1FLHdDQUZBLHFCQUNBLGdCQUhBLFNBQ0Esa0JBSUEsNkN0Q2lxbERGLENzQy9wbERBLDJGQUVFLGV0Q2lxbERGLENzQ3ZwbERBLHVFQUNFLFNBQ0Esc0J0QytwbERGLENzQ25wbERBLGdLQUVFLHVCQUNBLHFCdEM2cGxERixDc0NwcGxEQSxpRkFIRSx1QkFDQSxxQnRDK3BsREYsQ3NDL29sREEsaUdBRUUsWXRDdXBsREYsQ3NDNW9sREEsbURBRUUsVXRDb3BsREYsQ3NDN29sREEsdUNBQ0Usd0J0Q2twbERGLEN1Qy8xbERBLFdBQ0UscUJBQXdCLENBTXhCLGlCQUFrQixDQURsQixlQUFtQixDQUpuQixrbkd2Q3MybERGLEN1QzcxbERBLG1GQUlFLDBCQUEyQixDQUYzQixxQkFBc0IsQ0FJdEIsaUJBQWtCLENBRGxCLGVBQW1CLENBRm5CLGFBQWMsQ0FJZCxpQnZDZzJsREYsQ3VDNzFsREEsaUdBRUUsZXZDKzFsREY7QUFJQTs7Ozs7Ozs7RUFRRSxDd0M5MmxERix1QkFHRSxXQUFZLENBRlosY0FBZSxDQUNmLFNBQVUsQ0FFVixnQnhDMGduREYsQ3dDbmduREEsNkJBQ0UsU3hDd2duREYsQ3dDamduREEsZ0NBQ0UsYUFBYyxDQUNkLGtCeENzZ25ERixDd0NuZ25EQSx3Q0FDRSxVeENxZ25ERixDd0M5L21EQSx1RkFHRSxjeENtZ25ERixDd0NoZ25EQSwyQkFDRSxjeENrZ25ERixDd0MvL21EQSxtQ0FDRSxjeENpZ25ERixDd0M5L21EQSw0QkFDRSxjeENnZ25ERixDd0M3L21EQSwwREFFRSxZQUFjLENBQ2Qsa0J4QysvbURGLEN3QzUvbURBLDZCQUNFLGdCeEM4L21ERixDd0MzL21EQSxtQ0FDRSxReEM2L21ERixDd0MxL21EQSx5Q0FFRSxjQUFlLENBQ2YsZUFBZ0IsQ0FGaEIsaUJ4QzgvbURGLEN3Q3ovbURBLDZDQUNFLFd4QzIvbURGLEN3Q3gvbURBLDhDQUVFLG1CQUFxQixDQURyQixnQnhDMi9tREYsQ3dDdi9tREEsNkJBQ0UsaUJBQW1CLENBQ25CLGtCeEN5L21ERixDd0N0L21EQSxnQ0FDRSxjeEN3L21ERixDd0NyL21EQSxxQ0FHRSxNQUFPLENBRFAsaUJBQWtCLENBRGxCLGtCeEN5L21ERixDd0NwL21EQSxxQ0FFRSxpQkFBa0IsQ0FDbEIsT0FBUSxDQUZSLGtCeEN3L21ERixDd0NuL21EQSxvQ0FHRSx3QkFEQSxjQUFlLENBRGYsbUJ4Q3UvbURGLEN3Q2wvbURBLG1EQUVFLDJCQURBLG9CeENxL21ERixDd0M3K21EQSxtQ0FDRSxleENrL21ERixDd0MvK21EQSxtQ0FDRSwyQkFFQSxnQkFEQSxxQnhDay9tREYsQ3dDOSttREEsNENBQ0UsK0JBRUEsZ0JBREEsVXhDaS9tREYsQ3dDeCttREEsb1RBRUUsa0N4QzgrbURGLEN3Q2wrbURBLHNCQUNFLFd4QzArbURGLEN3Q3YrbURBLHNFQUVFLG1CeEN5K21ERjtBQUlBOzs7Ozs7OztFQVFFLEN5QzVvbkRGLGFBR0UsMEJBQTJCLENBRDNCLG9CQUFxQixDQU9yQixjQUhBLGlCQUFrQixDQUlsQixpQkFGQSxnQkFHQSxlQVBBLFlBQWEsQ0FIYixpQkFBa0IsQ0FJbEIsdUJ6Qysyb0RGLEN5Q3Iyb0RBLGlFQUVFLGNBQWUsQ0FRZixZQUxBLE1BQU8sQ0FDUCxtQkFBcUIsQ0FDckIsWUFBYSxDQUpiLGlCQUFrQixDQUNsQixLQUFNLENBS04sV0FEQSxTekMwMm9ERixDeUMvMW9EQSxxQ0FFRSxXQUFZLENBRVosYUFBYyxDQUdkLGNBREEsWUFBYSxDQURiLHVCQUZBLGlCekN3Mm9ERixDeUNqMm9EQSxtREFVRSxnQkFJQSx5QkFIQSwyQkFIQSxVekNzMm9ERixDeUN6MW9EQSxvR0FkRSxZQUhBLE1BQU8sQ0FGUCxpQkFBa0IsQ0FDbEIsS0FBTSxDQVVOLG1GQVBBLFV6Q3czb0RGLEN5Q3oyb0RBLGlEQVdFLHNCQVJBLGVBT0EsU0FBVSxDQUZWLGlCekNpMm9ERixDeUNyMW9EQSxzQ0FFRSxzQkFDQSx5QnpDMjFvREYsQ3lDdjFvREEsbUJBQ0UscUJ6QzAxb0RGLEN5Qzcwb0RBLCtEQUVFLGdCQUNBLCtCekNxMW9ERixDeUNuMW9EQSxrREFFRSxvQnpDcTFvREYsQ3lDOTBvREEsaUVBRUUsbUJBQ0EsK0J6Q20xb0RGLEN5Qzcwb0RBLCtGQUNFLHFCekNtMW9ERixDeUM1MG9EQSwyRUFFRSxnQkFDQSxvQnpDaTFvREYsQ3lDMzBvREEsd0dBQ0UscUJ6Q2kxb0RGLEN5QzEwb0RBLCtFQUVFLGdCQUNBLCtCekMrMG9ERixDeUM3MG9EQSw2RUFHRSxzQkFEQSxTekNnMW9ERixDeUN4MG9EQSwrSEFFRSxnQkFDQSwrQnpDNjBvREYsQ3lDMzBvREEsNkhBR0Usc0JBREEsU3pDODBvREYsQ3lDMTBvREUscUZBQ0UsMEJ6QzQwb0RKLEN5QzEwb0RFLHNFQUNFLGF6QzQwb0RKLEN5Q3Awb0RBLHNPQUlFLGdCQUNBLG9CekN5MG9ERixDeUN2MG9EQSxrT0FJRSxxQnpDeTBvREYsQ3lDajBvREEsb0RBRUUsY3pDczBvREYsQ3lDOXpvREEsd0lBTUUsV0FGQSx3QkFBMEIsQ0FDMUIsVXpDbzBvREYsQ3lDMXpvREEsMEJBQ0UsVXpDaTBvREYsQ3lDN3pvREEsZ0NBQ0UsY0FBZSxDQUNmLGdCekNnMG9ERixDeUNuem9EQSxtQkFDRSxlekMyem9ERixDeUN4em9EQSxpREFFRSxzQnpDMHpvREYsQ3lDdHpvREEsK0RBT0UscUJBTEEsVUFBVyxDQUlYLFlBR0EsT0FEQSxRQUxBLGNBQWUsQ0FFZixVekM0em9ERixDeUNwem9EQSw2REFrQkUsaUNBaEJBLFdBQVksQ0FjWixxQkFiQSxvQkFBc0IsQ0FZdEIsWUFGQSxPQVBBLGlCQU1BLFFBS0EsMkJBSEEsVXpDK3lvREYsQ3lDdnlvREEsdUZBRUUscUJ6Q3F6b0RGLEN5Q256b0RBLHFGQUVFLGdDekNxem9ERixDeUNqem9EQSxxR0FFRSxTekNvem9ERixDeUNoem9EQSwyRkFFRSxxQnpDbXpvREYsQ3lDanpvREEseUZBRUUsZ0N6Q216b0RGLEN5Qy95b0RBLHVHQUVFLHFCekNrem9ERixDeUNoem9EQSxxR0FFRSxnQ3pDa3pvREYsQ3lDM3lvREEsb0JBQ0Usa0J6Q2d6b0RGLEN5QzV5b0RBLDBCQUVFLGVBREEsWXpDZ3pvREYsQ3lDM3lvREEsbURBSUUscUJBREEsaUJBREEsbUJ6Q2d6b0RGLEN5QzF5b0RBLGlFQVlFLGlDQU5BLHFCQUF1QixDQVV2QixxQkFaQSxVQUFXLENBRlgsYUFBYyxDQVlkLG9CQVBBLE1BQU8sQ0FKUCxpQkFBa0IsQ0FPbEIsVUFMQSxjQUFlLENBWWYsK0JBSkEsYUFMQSxTekNtem9ERixDeUNyeW9EQSwrREFFRSw2REFNQSxXQUFZLENBUVoscUJBUEEsNkVBTEEsb0JBQXNCLENBT3RCLGNBRUEsTUFBTyxDQVJQLFNBQVUsQ0FGVixpQkFBa0IsQ0FTbEIsWUFFQSxjQUFlLENBR2YseUJBUEEsYUFKQSxTekNpem9ERixDeUNseW9EQSx5RkFFRSxpQ0FDQSxXekNxeW9ERixDeUNqeW9EQSwrREFFRSxvQnpDb3lvREYsQ3lDbHlvREEsNkVBRUUsMEJ6Q295b0RGLEN5Q2h5b0RBLCtFQUVFLCtCekNteW9ERixDeUNqeW9EQSw2RkFFRSxrQ3pDbXlvREYsQ3lDanlvREEsMkZBRUUsU3pDbXlvREYsQ3lDL3hvREEsMkZBRUUsK0J6Q2t5b0RGLEN5Q2h5b0RBLHlHQUVFLCtCekNreW9ERixDeUMxeG9EQSxvQkFDRSxpQnpDK3hvREYsQ3lDM3hvREEsMEJBRUUsY0FEQSxZekMreG9ERixDeUMxeG9EQSxtREFJRSxzQkFGQSxrQkFDQSxtQnpDOHhvREYsQ3lDM3hvREEsMEJBQ0UsaUJ6QzZ4b0RGLEN5Q3p4b0RBLGlFQVdFLDJCQUpBLFdBQVksQ0FRWixxQkFIQSxnQkFSQSxVQUFXLENBRlgsYUFBYyxDQVlkLGNBWEEsaUJBQWtCLENBTWxCLE1BSEEsY0FBZSxDQU9mLGFBUkEsU3pDb3lvREYsQ3lDdHhvREEsK0RBRUUsNkRBTUEsV0FBWSxDQU9aLHFCQU5BLDZFQUxBLG9CQUFzQixDQU90QixjQUVBLE1BQU8sQ0FSUCxTQUFVLENBRlYsaUJBQWtCLENBU2xCLE1BSUEsNkNBTkEsYUFKQSxTekNpeW9ERixDeUNweG9EQSwyRUFHRSw2RUFEQSxZekN1eG9ERixDeUMzd29EQSxzS0FFRSxpQ0FDQSxXekNveG9ERixDeUNoeG9EQSwrRUFFRSwrQnpDbXhvREYsQ3lDanhvREEsNkZBRUUsa0N6Q214b0RGLEN5Q2p4b0RBLDJGQUdFLDZFQURBLFl6Q294b0RGLEN5Qzl3b0RBLDJGQUVFLCtCekNpeG9ERixDeUMvd29EQSx5R0FFRSxrQ3pDaXhvREYsQ3lDdHdvREEsbURBRUUsd0J6Qzh3b0RGLEN5Q3Z3b0RBLHNEQUNFLFl6QzR3b0RGLEN5Q3R3b0RBLHdEQUVFLGtDekMyd29ERixDeUN2d29EQSxtRUFFRSxvQnpDMHdvREYsQ3lDeHdvREEsaUZBRUUsOEJ6QzB3b0RGLEN5Q3R3b0RBLHFFQUVFLHdCekN5d29ERixDeUNyd29EQSxtRkFFRSw2Q3pDd3dvREYsQ3lDcHdvREEsK0ZBRUUsdUN6Q3V3b0RGLEN5Q253b0RBLGlHQUVFLG9CekNzd29ERixDeUNwd29EQSwrR0FFRSw2Q3pDc3dvREYsQ3lDbHdvREEsNkdBRUUsb0J6Q3F3b0RGLEN5Q253b0RBLDJIQUVFLDZDekNxd29ERixDeUNqd29EQSxtRkFFRSw2Q3pDb3dvREYsQ3lDaHdvREEsK0ZBRUUseUJ6Q213b0RGLEN5Qy92b0RBLGlHQUVFLG9CekNrd29ERixDeUNod29EQSwrR0FFRSxrQ3pDa3dvREYsQ3lDOXZvREEsNkdBRUUsb0J6Q2l3b0RGLEN5Qy92b0RBLDJIQUVFLGtDekNpd29ERixDS2g3cERDLGtCb0M2ckJHLHFCekN5dm9ESixDS3Q3cERDLGtCb0M2ckJHLHFCekM0dm9ESixDS3o3cERDLG1Cb0M2ckJHLHFCekMrdm9ESixDSzU3cERDLG1Cb0M2ckJHLHNCekNrd29ESixDeUNqdm9EUSxrdUJBR0UsNEJBQ0EscUJ6Qyt2b0RWLEN5Qzd2b0RRLDhKQUtFLGlCQUZBLDJCQUNBLHFCekNpd29EVixDS3o5cERDLGlCb0M2ckJHLHNCekMreG9ESixDeUM5d29EUSwwc0JBR0UsNEJBQ0EscUJ6QzR4b0RWLEN5QzF4b0RRLHNKQUtFLGlCQUZBLDJCQUNBLHFCekM4eG9EVixDS3QvcERDLGtCb0M2ckJHLHNCekM0em9ESixDeUMzeW9EUSxzdEJBR0UsNEJBQ0EscUJ6Q3l6b0RWLEN5Q3Z6b0RRLDBKQUtFLGlCQUZBLDJCQUNBLHFCekMyem9EVixDS25ocURDLHFCb0M2ckJHLHNCekN5MW9ESixDeUN4MG9EUSwwdkJBR0UsNEJBQ0EscUJ6Q3Mxb0RWLEN5Q3Axb0RRLHNLQUtFLGlCQUZBLDJCQUNBLHFCekN3MW9EVixDMEM1aXFEQSxXQUNFLG9CQUF1QixDQUN2Qiw2ekQxQ2lqcURGLEMwQzNpcURBLGlEQUVFLG9CMUM4aXFERixDMEMxaXFEQSw2RUFFRSxlMUM2aXFERixDMEN6aXFEQSx5RkFHRSxlQUFnQixDQURoQixjMUM2aXFERjtBQVNBOzs7Ozs7OztFQVFFLEMyQ2prcURGLG9CQUNFLGlCM0N3dnJERixDMkNydnJEQSxXQXNCRSxrQkFBbUIsQ0FKbkIsdUJBREEsd0JBQXlCLENBSnpCLGlDQVpBLFlBQWEsQ0FvQmIscUJBQXNCLENBZHRCLFdBQVksQ0FnQlosc0JBQXVCLENBbkJ2QixnQkFBa0IsQ0FXbEIsY0FEQSxVQUhBLFlBVEEsa0JBT0Esa0JBTkEsZUFBaUIsQ0FnQmpCLHVDQU1BLGdCQUFpQixDQWZqQixzQkFKQSxVQUFXLENBb0JYLG1CQUFvQixDQUNwQixZM0NpdnJERixDMkM3dXJEQSxvQkFFRSxXQURBLGdCM0NpdnJERixDMkMzdXJEQSx1QkFDRSwrQjNDOHVyREYsQzJDenVyREUsbURBQ0UsNkIzQzR1ckRKLEMyQzF1ckRFLG1EQUNFLDhCM0M0dXJESixDMkMxdXJERSxtRUFDRSw4QjNDNHVyREosQzJDMXVyREUseURBQ0UsOEIzQzR1ckRKLEMyQ2x1ckRBLHlEQUVFLGUzQ3d1ckRGLEMyQ3B1ckRBLDRGQUdFLFlBQWEsQ0FDYixTM0N1dXJERixDMkNudXJEQSxvQkFFRSxrQkFBb0IsQ0FEcEIsaUIzQ3V1ckRGLEMyQ3h0ckRBLGlIQUdFLGEzQ2l1ckRGLEMyQzF0ckRBLGlDQUNFLDBCM0MrdHJERixDMkM3dHJEQSxvQ0FDRSx3QjNDK3RyREYsQzJDeHRyREEsZ0JBR0UsbUJBRkEsZUFHQSw4QkFBK0IsQ0FGL0Isa0IzQyt0ckRGLEMyQzF0ckRBLGdEQUVFLGUzQzR0ckRGLEMyQ3p0ckRBLHNCQUNFLGMzQzJ0ckRGLEMyQ3B0ckRBLGlDQUNFLFlBQ0EsMEIzQ3l0ckRGLEMyQ3Z0ckRBLG9EQUNFLDhCM0N5dHJERixDMkNydHJEQSwyQkFDRSwrQjNDd3RyREYsQzJDdHRyREEsb0NBQ0UsbUMzQ3d0ckRGLEMyQ2p0ckRBLGtDQUNFLGtCM0NzdHJERixDMkNwdHJEQSxxQ0FDRSxxQjNDc3RyREYsQzJDL3NyREEsMkNBQ0UsZ0MzQ290ckRGLEMyQ2x0ckRBLHNDQUNFLGdDM0NvdHJERixDMkNsdHJEQSxxQ0FDRSxnQzNDb3RyREYsQzJDN3NyREEsb0JBQ0Usb0MzQ2t0ckRGLEMyQ2h0ckRBLDREQUVFLFUzQ2t0ckRGLEMyQzNzckRBLG9EQUNFLG9DM0NndHJERixDMkM5c3JEQSwrQ0FDRSxvQzNDZ3RyREYsQzJDOXNyREEsOENBQ0Usb0MzQ2d0ckRGLEMyQ3hzckRBLGtCQU9FLDZCQU5BLGFBQWMsQ0FJZCxRQUFTLENBRlQsU0FBVSxDQURWLGVBQWdCLENBRWhCLE9BQVEsQ0FFUixZM0Mrc3JERixDMkM1c3JEQSxtQ0FLRSxpQ0FEQSxXQUFZLENBRlosU0FBVSxDQURWLGdCQUFpQixDQUVqQixVQUFXLENBR1gsUzNDOHNyREYsQzJDM3NyREEsMkJBQ0Usa0MzQzZzckRGLEMyQzNzckRBLDRDQUNFLG9DM0M2c3JERixDMkN0c3JEQSxpRkFHRSxXM0Myc3JERixDMkN6c3JEQSw0QkFFRSxRQUFTLENBRFQsa0IzQzRzckRGLEMyQ3pzckRBLDRCQUNFLGtCQUNBLDBCQUEyQixDQUMzQiwrQzNDMnNyREYsQzJDeHNyREEscUNBQ0kscUNBQXVDLENBQ3ZDLHNDM0Mwc3JESixDMkN4c3JEQSx3Q0FDSSx5QjNDMHNyREosQzJDeHNyREEsd0NBQ0ksa0NBQW9DLENBQ3BDLG1DM0Mwc3JESixDMkN2c3JEQSw0REFDRSw2QjNDeXNyREYsQzJDdnNyREEsOERBQ0UsK0IzQ3lzckRGLEMyQ3ZzckRBLDZEQUNFLDhCM0N5c3JERixDMkN2c3JEQSwrREFDRSxnQzNDeXNyREYsQzJDdnNyREEsOENBQ0UsMkIzQ3lzckRGLEMyQ3ZzckRBLDBCQUNFLEdBQ0UsU0FBVSxDQUNWLDBCQUEyQixDQUMzQiwrQzNDeXNyREYsQzJDdnNyREEsR0FDRSxTQUFVLENBQ1YsMEJBQTJCLENBQzNCLCtDM0N5c3JERixDQUNGLEMyQ3ZzckRBLDRCQUNFLEdBQ0UsU0FBVSxDQUNWLDBCQUEyQixDQUMzQiwrQzNDeXNyREYsQzJDdnNyREEsR0FDRSxTQUFVLENBQ1YsMEJBQTJCLENBQzNCLCtDM0N5c3JERixDQUNGLEMyQ3ZzckRBLDJCQUNFLEdBQ0UsU0FBVSxDQUNWLDBCQUEyQixDQUMzQiwrQzNDeXNyREYsQzJDdnNyREEsR0FDRSxTQUFVLENBQ1YsMEJBQTJCLENBQzNCLCtDM0N5c3JERixDQUNGLEMyQ3ZzckRBLDZCQUNFLEdBQ0UsU0FBVSxDQUNWLDBCQUEyQixDQUMzQiwrQzNDeXNyREYsQzJDdnNyREEsR0FDRSxTQUFVLENBQ1YsMEJBQTJCLENBQzNCLCtDM0N5c3JERixDQUNGLEMyQ3ZzckRBLHdCQUNFLGtCQUNFLDBCQUEyQixDQUMzQiwrQzNDNnNyREYsQzJDM3NyREEsSUFDRSx1QzNDNnNyREYsQzJDM3NyREEsSUFDRSx1QzNDNnNyREYsQ0FDRjtBQU9BOzs7Ozs7OztFQVFFLEM0Qy9pc0RGLGFBU0UseUNBQTZDLENBUjdDLGNBQWUsQ0FFZixvQkFBcUIsQ0FDckIsWUFBYSxDQUZiLGlCQUFrQixDQUdsQixlQUFnQixDQUNoQiw4Q0FDQSxnQjVDdTN0REYsQzRDMTJ0REEsbUJBVUUsZ0JBT0Esb0NBQ0EsMkJBRkEsMENBZkEsV0FBWSxDQUVaLFlBQWEsQ0FTYixjQUpBLFNBRkEscUJBQXNCLENBRnRCLFlBQWEsQ0FLYixVQVBBLGlCQUFrQixDQVlsQixnQkFEQSxnQkFBaUIsQ0FSakIsUUFBUyxDQWNULDRCQUVBLDZCQUErQixDQUQvQixVNUNnM3RERixDNEM1MnREQSxxQkFDRSxrQjVDODJ0REYsQzRDdDJ0REEsZ0VBRUUsc0I1QzIydERGLEM0Q3AydERBLGlDQUdFLHNCQUNBLGlCQUhBLGlCQUFrQixDQUNsQixVNUMyMnRERixDNEN2MnREQSx3Q0FFRSxZQUNBLGlCQUZBLFU1QzIydERGLEM0Q3YydERBLDhDQUNFLGdCNUN5MnRERixDNENqMnREQSxtQkFDRSxvQkFBcUIsQ0FDckIsZTVDczJ0REYsQzRDLzF0REEseUJBaUJFLDBCQUEyQixDQVQzQixZQVFBLGdCQUxBLHNCQVRBLGNBQWUsQ0FDZixhQUFjLENBWWQsZ0JBVkEsWUFJQSxnQkFJQSw2Q0FaQSxpQkFBa0IsQ0FLbEIsZ0JBUUEsbUI1Q3EydERGLEM0Q2gydERBLHFDQUNFLGtCNUNrMnRERixDNEMzMXREQSw4RkFFRSxxQkFBdUIsQ0FFdkIsMEJBREEsd0I1Q2kydERGLEM0QzkxdERBLDRGQUVFLG9CQUFzQixDQUN0Qix1QkFBeUIsQ0FDekIsMEI1Q2cydERGLEM0QzcxdERBLDJKQUlFLFk1QysxdERGLEM0Q3YxdERBLDJCQUdFLGdCQUZBLHFCQUNBLHdCQUVBLHdCNUM0MXRERixDNEMxMXREQSxvQ0FDRSxzQkFDQSxxQjVDNDF0REYsQzRDMTF0REEsNEJBQ0UsdUNBQ0EsUUFBUyxDQUNULGE1QzQxdERGLEM0QzExdERBLHVDQUNFLGU1QzQxdERGLEM0Q3oxdERBLG1DQUVFLFlBQWEsQ0FDYixrQ0FDQSxnQkFIQSxVNUM4MXRERixDNEN6MXREQSxrQ0FDRSxZNUMyMXRERixDNEN6MXREQSxrREFDRSxnQjVDMjF0REYsQzRDejF0REEseUpBSUUsb0JBREEsZ0I1QzQxdERGLEM0Q3AxdERBLHNFQUlFLHFCQUZBLFlBQ0EsZ0I1QzAxdERGLEM0Q2wxdERBLDRCQUVFLGdCQURBLGtDNUN3MXRERixDNENyMXREQSxxQ0FDRSxvQjVDdTF0REYsQzRDaDF0REEseUJBS0UscUNBSEEsVUFFQSw2QkFEQSxXQUZBLE1BS0Esb0I1Q3ExdERGLEM0Q2oxdERBLCtCQUNFLFk1Q28xdERGLEM0Q3IwdERBLHdSQUtFLFk1Q2sxdERGLEM0Qy8wdERBLHdSQVdFLFdBREEsYUFBYyxDQUVkLHlCNUNpMXRERixDNEMxMHREQSxvSUFJRSxvQkFBcUIsQ0FJckIsb0JBREEsaUJBRUEsZUFKQSxrQkFBbUIsQ0FDbkIsVTVDazF0REYsQzRDajB0REEsNEVBRUUsWTVDMDB0REYsQzRDdDB0REEseUNBQ0UsZ0I1Q3kwdERGLEM0Q3IwdERBLDhIQUdFLFNBQVUsQ0FDVixPNUN3MHRERixDNENoMHREQSx5QkFDRSxjNUNzMHRERixDNEM5enREQSx3Q0FDRSxRNUNvMHRERixDNENsMHREQSwwQkFDRSxjNUNvMHRERixDNEN0enREQSx1QkFFRSxvQkFBcUIsQ0FTckIsZ0JBS0Esb0NBQ0EsMkJBRkEsZ0JBREEsc0JBYkEsY0FBZSxDQVdmLHFCQVRBLGVBQWdCLENBTWhCLHdCQURBLGVBSEEsU0FBVSxDQVFWLDBDQVBBLHNCQUF3QixDQVl4Qiw4Q0FkQSxrQjVDMjB0REYsQzRDM3p0REEsNkRBRUUsVTVDNnp0REYsQzRDMXp0REEsbUJBR0Usb0NBRkEsWUFDQSxhQUVBLGtCNUM0enRERixDNEMxenREQSw4R0FHRSxjQUFlLENBR2YsV0FBWSxDQUNaLHlCQUlBLG9CQUVBLFdBREEsb0JBUkEsaUJBQWtCLENBS2xCLFVBREEsZ0JBTUEsNEJBVEEsVUFBVyxDQUtYLFM1Q2cwdERGLEM0Q3h6dERBLCtCQUNFLFc1QzJ6dERGLEM0Q3Z6dERBLDZCQUlFLGdDQUFpQyxDQURqQywwQkFBMkIsQ0FTM0IsNENBUEEsNEJBQThCLENBUTlCLDBDQUxBLGNBQ0EsMkJBRkEsWUFBYSxDQU5iLGlCQUFrQixDQUNsQixlQUFnQixDQVloQiw0QkFSQSxVQUFXLENBSVgsc0I1QzZ6dERGLEM0Q3Z6dERBLHVFQUVFLFk1Q3l6dERGLEM0Q2x6dERBLHNDQUNFLGtDNUN1enRERixDNENwenREQSw0Q0FDRSxrREFDRSx3QjVDc3p0REYsQzRDcHp0REEsbUNBQ0Usd0I1Q3N6dERGLEM0Q3B6dERBLDZCQUNFLHdCNUNzenRERixDNENwenREQSxrQ0FDRSx5QjVDc3p0REYsQzRDcHp0REEsaURBQ0UseUI1Q3N6dERGLENBQ0YsQzRDcHp0REEseUNBQ0Usa0RBQ0Usd0I1Q3N6dERGLEM0Q3B6dERBLG1DQUNFLHdCNUNzenRERixDNENwenREQSw2QkFDRSx5QjVDc3p0REYsQzRDcHp0REEsa0NBQ0UseUI1Q3N6dERGLEM0Q3B6dERBLGlEQUNFLHlCNUNzenRERixDQUNGLEM0Q3B6dERBLHlDQUNFLGtEQUNFLHdCNUNzenRERixDNENwenREQSxtQ0FDRSx5QjVDc3p0REYsQzRDcHp0REEsNkJBQ0UseUI1Q3N6dERGLEM0Q3B6dERBLGtDQUNFLHlCNUNzenRERixDNENwenREQSxpREFDRSx5QjVDc3p0REYsQ0FDRixDNENwenREQSwwQ0FDRSxrREFDRSx5QjVDc3p0REYsQzRDcHp0REEsbUNBQ0UseUI1Q3N6dERGLEM0Q3B6dERBLDZCQUNFLHlCNUNzenRERixDNENwenREQSxrQ0FDRSx5QjVDc3p0REYsQzRDcHp0REEsaURBQ0UseUI1Q3N6dERGLENBQ0YsQzRDbHp0REEsbUNBSUUsZ0JBQWlCLENBSGpCLDZCQUNBLDZDQUNBLGtCNUNzenRERixDNENqenREQSxtREFDRSxZNUNvenRERixDNENoenREQSw2QkFDRSxnQ0FDQSxlNUNtenRERixDNEMzeXREQSxrRUFDRSxxQkFDQSx5QzVDa3p0REYsQzRDOXl0REEsNkJBQ0UscUJBQ0EsZTVDaXp0REYsQzRDL3l0REEsbUNBQ0UscUJBQ0EseUM1Q2l6dERGLEM0Qzd5dERBLG1EQUVFLHFCQURBLGU1Q2l6dERGLEM0Q3h5dERBLDhFQUNFLHFCQUNBLHlDNUMreXRERixDNEMzeXREQSwyRkFFRSxXQUNBLFM1Qzh5dERGLEM0QzF5dERBLDhCQUNFLHNDQUNBLHNDNUM2eXRERixDNEN6eXREQSxvQ0FDRSxxQ0FDQSx5QjVDNHl0REYsQzRDMXl0REEsMENBQ0UscUJBQXVCLENBQ3ZCLHlCNUM0eXRERixDNENweXREQSxvQkFDRSxZNUMweXRERixDNEN0eXREQSxpQ0FTRSwrQ0FBbUQsQ0FSbkQscUNBQXVDLENBQ3ZDLHFCQUF1QixDQUN2Qix5QkFBMkIsQ0FDM0IsV0FBWSxDQUVaLFNBRUEsWUFBYSxDQUViLGVBQWdCLENBS2hCLGlCQUFrQixDQVZsQixLQUFNLENBRU4sVUFBVyxDQVNYLFM1Q215dERGLEM0Q2p5dERBLDBCQUNFLFdBQVksQ0FFWixTQURBLGlCQUFrQixDQUVsQixTNUN3eXRERixDNEM5eHREQSxvRkFMRSx5QkFDQSx5QzVDOHl0REYsQzRDMXl0REEseUNBR0UsWUFBYSxDQUNiLGU1Q3N5dERGLEM0Q2x5dERBLGlGQUVFLFc1Q3F5dERGLEM0Q255dERBLG1FQUVFLG1CNUNxeXRERixDNENqeXREQSxvSEFFRSxXNUNveXRERixDNENseXREQSxvREFDRSxrQzVDb3l0REYsQzRDaHl0REEsMEJBSUUsZ0NBQWlDLENBRGpDLDBCQUEyQixDQUYzQixpQkFBa0IsQ0FDbEIsZTVDcXl0REYsQzRDanl0REEsNENBQ0UsMEJBQ0Usd0I1Q215dERGLENBQ0YsQzRDanl0REEseUNBQ0UsMEJBQ0UseUI1Q215dERGLENBQ0YsQzRDanl0REEseUNBQ0UsMEJBQ0UseUI1Q215dERGLENBQ0YsQzRDanl0REEsMENBQ0UsMEJBQ0UseUI1Q215dERGLENBQ0YsQzRDL3h0REEsMEJBQ0UsY0FBZSxDQUNmLHNCQUNBLG9CQUtBLFVBQVksQ0FKWixvQkFHQSxpQkFBa0IsQ0FGbEIsU0FBVSxDQUNWLGdCQUdBLFM1Q2t5dERGLEM0Qy94dERBLG1FQUVFLGtCNUNpeXRERixDNEM5eHREQSxzS0FJRSxZNUNneXRERixDNEN4eHREQSxzQkFDRSxpRDVDOHh0REYsQzRDNXh0REEsNEJBQ0UsVzVDOHh0REYsQzRDMXh0REEsdUVBRUUsVzVDNnh0REYsQzRDenh0REEsNkJBTUUsOENBTEEsb0JBQXFCLENBRXJCLGNBRUEsZ0RBREEsZ0NBRkEsa0I1Q2d5dERGLEM0Q3h4dERBLHFDQUNFLFVBQ0EsVTVDMnh0REYsQzRDdnh0REEsNEJBS0UseUJBREEsNkNBREEsY0FBZSxDQURmLFNBQVUsQ0FEVixlNUM4eHRERixDNEN4eHREQSwwQ0FDRSxpQzVDMHh0REYsQzRDeHh0REEsbUNBQ0UsWTVDMHh0REYsQzRDeHh0REEsNERBQ0UseUI1QzB4dERGLEM0Q3h4dERBLDZEQUNFLDBCNUMweHRERixDNEN4eHREQSx1Q0FFRSxvQkFEQSx5RDVDMnh0REYsQzRDbHh0REEsbUNBQ0Usb0JBQXFCLENBR3JCLE1BQU8sQ0FHUCx5QkFEQSw2Q0FEQSxlQUFnQixDQUhoQixpQkFBa0IsQ0FDbEIsSzVDNHh0REYsQzRDcnh0REEsMENBQ0UsWTVDdXh0REYsQzRDbnh0REEsMENBTUUseUJBRkEsNkNBREEsY0FBZSxDQURmLFNBQVUsQ0FEVixlQUFnQixDQUloQixXNUN1eHRERixDNEM5d3REQSxvQkFHRSxjQUZBLGNBQWUsQ0FDZixvQjVDb3h0REYsQzRDanh0REEsbUNBQ0UscUJBQ0EsdUI1Q214dERGLEM0Q2p4dERBLDBCQUNFLGU1Q214dERGLEM0Q2p4dERBLDBCQUdFLDJCQUZBLFdBQVksQ0FDWixzQjVDb3h0REYsQzRDcnd0REEsZ0NBQ0UsdUJBR0EsZ0JBREEsc0JBREEsZ0JBR0EsVTVDOHd0REYsQzRDcnd0REEsK0JBQ0UsMkJBQ0Esc0JBQ0EsVTVDMnd0REYsQzRDcHd0REEsNEJBQ0Usb0I1Q3l3dERGLEM0Q3Z3dERBLHNDQUNFLG9DNUN5d3RERixDNEN2d3REQSxtQ0FXRSxpQ0FEQSxvQjVDd3d0REYsQzRDcnd0REEscUVBWEUsVUFBVyxDQU1YLG9CQUpBLFFBQVMsQ0FFVCxxQ0FMQSxpQkFBa0IsQ0FFbEIsT0FBUSxDQUlSLGtCNUN3eHRERixDNENseHREQSxrQ0FXRSxxQ0FDQSwwQkFDQSxxQkFSQSxnQzVDNnd0REYsQzRDaHd0REEsbUZBRUUsWTVDbXd0REYsQzRDNXZ0REEsZ0ZBRUUsd0I1Q2l3dERGLEM0Qy92dERBLHdHQUVFLHdCNUNpd3RERixDNEMzdnREQSwyQkFDRSxlNUNnd3RERixDNEM1dnREQSwyQkFDRSxhQUFjLENBQ2QsaUJBQWtCLENBQ2xCLFU1Qyt2dERGLEM0Qzd2dERBLDJCQUNFLGdCQUFrQixDQUNsQixvQjVDK3Z0REYsQzRDN3Z0REEsaUNBQ0UsbUJBQXFCLENBQ3JCLG9CNUMrdnRERixDNEN2dnREQSx3REFFRSwyQkFDQSxxQjVDNnZ0REYsQzRDcHZ0REEsNEJBQ0UsaUI1QzB2dERGLEM0Q3h2dERBLDRCQUNFLHNCNUMwdnRERixDNENsdnREQSw2RUFHRSxhNUN1dnRERixDNENwdnREQSw2QkFDRSxtQkFDQSxvQjVDc3Z0REYsQzRDaHZ0REEsMkZBRUUsb0I1Q3F2dERGLEM0Q252dERBLCtCQUNFLGE1Q3F2dERGLEM0Q252dERBLDZDQUNFLG9CNUNxdnRERixDNENqdnREQSxxQ0FDRSx3QjVDb3Z0REYsQzRDaHZ0REEsc0NBQ0Usd0I1Q212dERGLEM0QzN1dERBLGtDQUNFLFdBQ0EsMkI1Q2d2dERGLEM0Qzl1dERBLHdDQUNFLFM1Q2d2dERGLEM0Q3Z1dERBLHdEQUVFLGNBQWUsQ0FFZixZQURBLG1CNUM4dXRERixDNENodXREQSxtQkFDRSxNNUN5dXRERixDNENwdXREQSw4REFJRSxxQ0FGQSxtQkFBcUIsQ0FDckIsb0I1Q3d1dERGLEM0Q251dERBLHdCQUNFLG1CQUFxQixDQUNyQixpQjVDc3V0REYsQzRDbnV0REEsNERBS0UscUNBSEEsU0FBVSxDQUVWLDZCQURBLFU1Q3V1dERGLEM0QzV0dERBLG9GQUdFLFdBQ0EsU0FGQSxVNUNzdXRERixDNENsdXREQSxnR0FFRSxnQkFDQSxjNUNvdXRERixDNEMzdHREQSwwQkFJRSw0Q0FGQSxXQUFZLENBQ1oscUNBRkEsUTVDb3V0REYsQzRDN3R0REEsMEJBRUUsa0JBQW9CLENBRHBCLGtCNUNpdXRERixDNEM1dHREQSxtRUFFRSxxRDVDK3R0REYsQzRDN3R0REEsZ0VBQ0UsMkM1Qyt0dERGLEM0QzN0dERBLG9DQUVFLCtCQUFpQyxDQURqQywrQkFFQSx1QzVDOHR0REYsQzRDNXR0REEsb0NBQ0Usb0M1Qzh0dERGLEM0Q3J0dERBLDJFQUpFLHFENUNrdXRERixDNEM5dHREQSxzQ0FDRSxvQzVDNnR0REYsQzRDeHR0REEsMkNBQ0Usb0M1QzJ0dERGLEM0Q3p0dERBLGlEQUNFLHVDNUMydHRERixDNENudHREQSwwREFFRSxpQkFBa0IsQ0FDbEIsZTVDeXR0REYsQzRDdHR0REEsNkJBSUUsZ0NBQWlDLENBRGpDLDBCQUEyQixDQUYzQixpQjVDNnR0REYsQzRDcnR0REEsMERBSkUsd0JBQTBCLENBSDFCLGVBQWdCLENBSWhCLG9CNUNtdXRERixDNENodXREQSw2QkFTRSxZQUpBLHlCQUEyQixDQUkzQix3Q0FMQSx5QkFBMkIsQ0FFM0Isa0JBQW9CLENBTHBCLGU1Qyt0dERGLEM0Q2p0dERBLHdMQUVFLGU1Q3V0dERGLEM0Q3J0dERBLHdGQUVFLGE1Q3V0dERGLEM0Q250dERBLGdDQUNFLDBEQUVFLDJCNUNzdHRERixDQUNGLEM0Q3B0dERBLDRDQUNFLDBEQUVFLHlCNUNzdHRERixDQUNGLEM0Q3B0dERBLHlDQUNFLDBEQUVFLHlCNUNzdHRERixDQUNGLEM0Q3B0dERBLHlDQUNFLDBEQUVFLHlCNUNzdHRERixDQUNGLEM0Q3B0dERBLDBDQUNFLDBEQUVFLHlCNUNzdHRERixDQUNGLEM0Q2h0dERBLDhDQUNFLG9CQUFxQixDQUNyQixTNUNxdHRERixDNENudHREQSxnREFDRSxvQkFBcUIsQ0FDckIsUzVDcXR0REYsQzRDbnR0REEsK0NBQ0Usb0JBQXFCLENBQ3JCLFM1Q3F0dERGLEM0Q250dERBLCtDQUNFLG9CQUFxQixDQUNyQixTNUNxdHRERixDNEMzc3REQSxpRUFFRSxZNUNpdHRERixDNEMvc3REQSwwQkFHRSxvQ0FBc0MsQ0FDdEMsYUFBYyxDQUtkLFFBQVMsQ0FFVCxzQkFBd0IsQ0FKeEIsU0FBVSxDQUZWLGVBQWdCLENBSmhCLGlCQUFrQixDQUtsQixXQUFZLENBSVosNEJBRkEsTzVDb3R0REYsQzRDOXN0REEscURBRUUscUNBQXVDLENBQ3ZDLHNDNUNndHRERixDNEM3c3REQSxpRUFJRSxXQUFZLENBRVosU0FBVSxDQUpWLGdCQUFpQixDQUdqQixRQUFTLENBRlQsVTVDa3R0REYsQzRDN3N0REEsK0ZBSUUsV0FBWSxDQUVaLG1CQUFxQixDQUNyQixTQUFVLENBTFYsZ0JBQWlCLENBR2pCLGVBQWlCLENBRmpCLFU1Q210dERGLEM0QzdzdERBLHlDQUNFLFlBQWEsQ0FDYixRQUFTLENBRVQsZUFBZ0IsQ0FEaEIsTzVDZ3R0REYsQzRDM3N0REEsa0NBQ0UsYTVDOHN0REYsQzRDMXN0REEscUZBRUUsaUJBQWtCLENBQ2xCLGU1QzZzdERGLEM0Q3RzdERBLG1CQUNFLGFBQWMsQ0FFZCxXQUFZLENBRFosb0I1QzRzdERGLEM0Q3pzdERBLGtDQUNFLFc1QzJzdERGLEM0Q25zdERBLDRCQUdFLG9GQUZBLE1BQU8sQ0FDUCxVNUMwc3RERixDNEN0c3REQSx3REFGRSxvQzVDMnN0REYsQzRDdHN0REEseUNBQ0UsZTVDd3N0REYsQzRDdHN0REEsbUNBQ0Usa0I1Q3dzdERGLEM0Q2pzdERBLDRCQUdFLDJCQURBLHdCQURBLFE1Q3dzdERGLEM0Q25zdERBLCtDQVdFLGdCQURBLDRDQU5BLFVBQVcsQ0FIWCxhQUFjLENBUWQsWUFRQSxRQUFTLENBQ1Qsb0JBZkEsbUJBQW9CLENBRHBCLGlCQUFrQixDQWNsQixXQVZBLHVCQUF3QixDQUR4QixrQkFBbUIsQ0FHbkIsV0FJQSxTNUNvc3RERixDNENucnREQSxxQ0FFRSxXQUFZLENBQ1osTUFBTyxDQUVQLGVBREEsVUFBVyxDQUhYLFE1Q3NzdERGLEM0Q2hzdERBLDJDQUVFLFNBRUEsUUFBUyxDQURULFVBQVcsQ0FGWCxXQUlBLHVCNUNrc3RERixDNEMvcnREQSxzQ0FFRSxXQUFZLENBRVosU0FBVSxDQUNWLGVBRkEsT0FBUSxDQUZSLFE1Q3NzdERGLEM0Q2hzdERBLHVGQUdFLG1CQUFxQixDQUVyQixRQUFTLENBRFQsb0JBRkEsV0FJQSx1QjVDa3N0REYsQzRDOXJ0REEsaUNBRUUsU0FBVSxDQUVWLGlCQURBLFVBQVcsQ0FGWCxLNUNvc3RERixDNEMvcnREQSx1Q0FFRSxZQUNBLFFBQWUsQ0FGZixPQUFRLENBR1Isd0I1Q2lzdERGLEM0Qy9ydERBLDZEQUNFLG1CQUFxQixDQUVyQixpQkFEQSxvQjVDa3N0REYsQzRDL3J0REEsbUVBRUUsU0FBVSxDQUVWLFFBQWUsQ0FEZixhQUZBLE9BQVEsQ0FJUix3QjVDaXN0REYsQzRDNXJ0REEsa0NBRUUsU0FBVSxDQUVWLGlCQURBLFVBQVcsQ0FGWCxLNUNrc3RERixDNEM3cnREQSx3Q0FFRSxTQUFVLENBRVYsUUFBZSxDQURmLGFBRkEsT0FBUSxDQUlSLHdCNUMrcnRERixDNEMzcnREQSxtQ0FFRSxXQUFZLENBQ1osTUFBTyxDQUVQLGVBREEsVUFBVyxDQUhYLFE1Q2tzdERGLEM0QzVydERBLHlDQUVFLGNBRUEsUUFBUyxDQURULFVBQVcsQ0FGWCxRQUFTLENBSVQseUI1QzhydERGLEM0QzNydERBLHlDQUVFLGtCQUFvQixDQURwQixrQjVDK3J0REYsQzRDMXJ0REEsd0NBQ0UsTUFBTyxDQUNQLFU1QzZydERGLEM0QzNydERBLDhDQUNFLFNBQ0EsVTVDNnJ0REYsQzRDenJ0REEseUNBRUUsU0FBVSxDQURWLE81QzZydERGLEM0QzFydERBLCtDQUNFLFNBQVUsQ0FDVixTNUM0cnRERixDNEN4cnREQSwwRUFLRSwyQkFGQSxxQkFBdUIsQ0FDdkIsd0JBRkEsa0I1QzhydERGLEM0Q3pydERBLHNGQUdFLHFCQUF1QixDQUN2QiwwQ0FDQSxrQkFIQSxrQjVDOHJ0REYsQzRDdnJ0REEsZ0VBRUUsa0JBQW9CLENBQ3BCLGlCQUZBLGtCNUM0cnRERixDNEN4cnREQSxzRUFFRSxrQkFBb0IsQ0FFcEIsNENBREEsZUFGQSxrQjVDNnJ0REYsQzRDcnJ0REEsK0RBRUUsa0JBQW9CLENBQ3BCLGlCQUZBLGtCNUMwcnRERixDNEN0cnREQSxxRUFFRSxrQkFBb0IsQ0FFcEIsNENBREEsZUFGQSxrQjVDMnJ0REYsQzRDaHJ0REEsa0JBQ0Usc0I1Q3NydERGLEM0Q3BydERBLGtCQUNFLHNCNUNzcnRERixDNENwcnREQSxtQkFDRSxzQjVDc3J0REYsQzRDcHJ0REEsYUFDRSxjNUNzcnRERixDNENwcnREQSxtQkFDRSx1QjVDc3J0REYsQzRDcHJ0REEsaUJBQ0UsdUI1Q3NydERGLEM0Q3BydERBLGtCQUNFLHVCNUNzcnRERixDNENwcnREQSxxQkFDRSx1QjVDc3J0REYsQzRDbHJ0REEsOEJBQ0Usc0I1Q3FydERGLEM0Q25ydERBLDhCQUNFLHNCNUNxcnRERixDNENucnREQSwrQkFDRSxzQjVDcXJ0REYsQzRDbnJ0REEseUJBQ0UsYzVDcXJ0REYsQzRDbnJ0REEsK0JBQ0UsdUI1Q3FydERGLEM0Q25ydERBLDZCQUNFLHVCNUNxcnRERixDNENucnREQSw4QkFDRSx1QjVDcXJ0REYsQzRDbnJ0REEsaUNBQ0UsdUI1Q3FydERGLEM0QzdxdERBLDRCQUNFLG1CQUVBLHFDQURBLGU1Q29ydERGLEM0Q2hydERBLGtDQUNFLHdCNUNrcnRERixDNEMvcXREQSx5Q0FDRSx1QkFFQSxnQkFEQSx3QjVDa3J0REYsQzRDOXF0REEsd0NBQ0UsK0JBQ0Esd0I1Q2dydERGLEM0QzdxdERBLDBFQUVFLCtCQUNBLHdCNUMrcXRERixDNEM1cXREQSxvQ0FDRSxVNUM4cXRERixDNEMzcXREQSx3RkFFRSx3QjVDNnF0REYsQzRDMXF0REEscUNBQ0Usd0M1QzRxdERGLEM0Q3pxdERBLHNDQUVFLG9ENUMycXRERixDNEN2cXREQSxnQ0FFRSxtQkFEQSxxQ0FFQSx3QjVDMHF0REYsQzRDdnF0REEsc0NBQ0UsaUNBQ0EsZTVDeXF0REYsQzRDdHF0REEsc0NBQ0UsVTVDd3F0REYsQzRDcnF0REEsa0dBRUUsd0I1Q3VxdERGLEM0Q3JxdERBLDBIQUVFLHdCNUN1cXRERixDNENwcXREQSw0REFDRSx3QjVDc3F0REYsQzRDbnF0REEsc0lBRUUsVzVDcXF0REYsQzRDbnF0REEsNkRBQ0Usa0M1Q3FxdERGLEM0Q2xxdERBLDBGQUVFLGdDNUNvcXRERixDNENqcXREQSw0Q0FDRSw0QjVDbXF0REYsQzRDaHF0REEsOENBQ0Usd0I1Q2txdERGLEM0QzlwdERBLDhDQUNFLGtCNUNpcXRERixDNEM3cHREQSxzQ0FDRSxvQ0FDQSxzQkFFQSw2Q0FEQSxVNUNpcXRERixDNEM3cHREQSw0Q0FDRSxvQ0FHQSxzQkFGQSxnQ0FHQSxVNUM4cHRERixDNEMzcHREQSxxR0FFRSxVNUM2cHRERixDNEMxcHREQSxpSEFFRSxVNUM0cHRERixDNEN4cHREQSxpR0FFRSxxQ0FDQSx3QjVDMnB0REYsQzRDenB0REEsMkZBRUUscUNBQ0Esd0I1QzJwdERGLEM0Q3pwdERBLGlGQUVFLHFDQUNBLHdCNUMycHRERixDNEN2cHREQSxxREFDRSw2QjVDMHB0REYsQzRDeHB0REEscURBQ0UsOEI1QzBwdERGLEM0Q3hwdERBLHFFQUNFLDhCNUMwcHRERixDNEN4cHREQSwyREFDRSw4QjVDMHB0REYsQzRDdnB0REEsMkNBQ0UsbUJBQ0EsNEM1Q3lwdERGLEM2Q3Yyd0RBLFdBQ0Usb0JBQXVCLENBTXZCLGlCQUFrQixDQURsQixlQUFtQixDQUpuQiw4a0g3Qysyd0RGLEM2Q3Yyd0RBLDRCQUtFLDBCQUEyQixDQUozQixvQkFBdUIsQ0FNdkIsaUJBQWtCLENBRGxCLGVBQW1CLENBSG5CLFVBQVcsQ0FEWCxhQUFjLENBTWQsaUJBQWtCLENBSmxCLFlBQWEsQ0FRYixVN0NxMndERixDNkNuMndEQSxtQ0FDRSxlN0N3MndERixDNkNwMndEQSwrQ0FDRSxlN0N1MndERixDNkNwMndEQSxrR0FFRSxlN0NzMndERixDNkNsMndEQSx1REFDRSxlN0NxMndERjtBQWtCQTs7Ozs7Ozs7RUFRRSxDOENwNXdERixVQUtFLG1CQUZBLFFBQVMsQ0FEVCxjQUFlLENBRWYsZUFBZ0IsQ0FFaEIsc0JBTEEsaUI5Q21seURGLEM4Q3ZreURBLGtEQUlFLFdBQVksQ0FFWixXQUFZLENBRVosTUFBTyxDQUNQLFFBQVMsQ0FFVCxlQUFnQixDQURoQixTQUFVLENBUFYsaUJBQWtCLENBSWxCLEtBQU0sQ0FGTixVOUNrbHlERixDOENya3lEQSxpQkFDRSxZOUMwa3lERixDOENua3lEQSx1QkFRRSxpRUFIQSxhOUMya3lERixDOENqa3lEQSx1Q0FiRSxjQUFlLENBS2YsV0FBWSxDQUhaLE1BQU8sQ0FIUCxpQkFBa0IsQ0FFbEIsS0FBTSxDQUdOLFU5Q3NseURGLEM4QzdreURBLGdCQU9FLFM5Q3NreURGLEM4Q3BreURBLHNCQVFFLDJEQURBLFVBQVcsQ0FGWCxXQUFZLENBRlosTUFBTyxDQU1QLFdBUkEsaUJBQWtCLENBQ2xCLEtBQU0sQ0FRTiw0QkFOQSxVQUFXLENBRVgsUzlDMGt5REYsQzhDcGt5REEsdUJBTUUsV0FDQSxlQUpBLFFBQVMsQ0FGVCxpQkFBa0IsQ0FPbEIseUNBTkEsT0FBUSxDQUVSLDJDQUE0QyxDQUs1QywyQ0FDQSxVOUNxa3lERixDOEMxanlEQSw0QkFDRSwyREFDQSxTOUNra3lERixDOENoa3lEQSw2QkFDRSxVOUNra3lERixDOEMzanlEQSxxREFFRSxZOUNna3lERixDOEM5anlEQSx3QkFDRSxhOUNna3lERixDOEN0anlEQSxpQkFDRSxtQjlDaWt5REYsQzhDL2p5REEsd0JBQ0Usa0I5Q2lreURGLEM4Qy9qeURBLHlCQUNFLHFCOUNpa3lERixDOEMvanlEQSx5QkFDRSwyQjlDaWt5REY7QUFDQTs7Ozs7Ozs7RUFRRSxDK0Mvc3lERixVQU1FLGdCQUNBLFlBTUEsMkJBTEEsd0VBTkEsWUFBYSxDQVNiLGFBQWMsQ0FWZCxpQkFBa0IsQ0FHbEIsZUFBZ0IsQ0FLaEIseUJBS0EsZ0JBQWlCLENBQ2pCLDZDQUFrRCxDQVpsRCxZL0M2NnpERixDK0M5NXpEQSw2SkFJRSxvQ0FDQSxvQy9DZzZ6REYsQytDNzV6REEsc0JBQ0UsdUNBQ0EsdUMvQys1ekRGLEMrQ3A1ekRBLGlCQVNFLFdBUkEsY0FBZSxDQU9mLGlCQUlBLGVBTEEsV0FNQSxvQkFYQSxpQkFBa0IsQ0FFbEIsY0FEQSxZQVFBLGNBTkEsUy9DazZ6REYsQytDeDV6REEsdUJBQ0UsUy9DMDV6REYsQytDbjV6REEsa0JBR0UsZ0JBTUEsMkNBSEEsZ0JBRUEsc0JBUEEsYUFBYyxDQUNkLDJEQUVBLFNBQ0Esc0IvQzI1ekRGLEMrQ3I1ekRBLDJCQUNFLHdCQUVBLGdCQURBLHdCL0N3NXpERixDK0NoNXpEQSxtQkFNRSxnQkFMQSxhQUFjLENBRWQsY0FDQSxnQkFDQSxlQUhBLFUvQ3k1ekRGLEMrQ241ekRBLHlCQUNFLFlBQWEsQ0FDYixrQi9DcTV6REYsQytDajV6REEsMEJBSUUsaUJBSEEsYUFBYyxDQUNkLGFBQWMsQ0FHZCxjQUFlLENBRmYsUS9DczV6REYsQytDbDV6REEsaUNBQ0UsZ0IvQ281ekRGLEMrQ2w1ekRBLG9DQUNFLGlCL0NvNXpERixDK0NsNXpEQSw2QkFDRSxrQi9DbzV6REYsQytDaDV6REEsZ0NBSUUsaUJBSEEsYUFBYyxDQUNkLGFBQWMsQ0FDZCxXL0NvNXpERixDK0NoNXpEQSw2RUFFRSxhQUFjLENBQ2QsYUFFQSxpQkFEQSxVL0NtNXpERixDK0M5NHpEQSxpQ0FLRSxlQURBLGFBQWMsQ0FIZCxRQUFTLENBQ1QsU0FBVSxDQUNWLFUvQ201ekRGLEMrQzE0ekRBLG1CQUNFLG1CQUVBLHdDQURBLGFBRUEsZ0IvQys0ekRGLEMrQzc0ekRBLDJCQUNFLGlCL0MrNHpERixDK0M3NHpEQSx5QkFDRSxlL0MrNHpERixDK0N2NHpEQSw0Q0FDRSwyQkFFRSxTQURBLFMvQzg0ekRGLENBQ0YsQytDMzR6REEseUNBQ0UsMkJBRUUsU0FEQSxTL0M4NHpERixDQUNGLEMrQzM0ekRBLHlDQUNFLDJCQUVFLFNBREEsVy9DODR6REYsQ0FDRixDK0MzNHpEQSwwQ0FDRSwyQkFFRSxTQURBLFcvQzg0ekRGLENBQ0YsQytDMzR6REEsMENBQ0UsMkJBRUUsU0FEQSxXL0M4NHpERixDQUNGLEMrQ3o0ekRBLDRDQUNFLGtCQUNFLHFCL0M0NHpERixDK0MxNHpEQSxpQkFHRSxzQkFEQSxXQURBLGEvQzg0ekRGLENBQ0YsQytDeDR6REEsNENBRUUsa0JBRUUsNEMvQzA0ekRGLEMrQ3g0ekRBLHNEQUNFLCtCL0MwNHpERixDK0N4NHpEQSxnRUFDRSwrQi9DMDR6REYsQytDeDR6REEsbUJBQ0UsYUFBYyxDQUNkLHNCL0MwNHpERixDK0N4NHpEQSxpQkFFRSxzQkFEQSxtQi9DMjR6REYsQytDdDR6REEseUJBQ0UscUIvQ3k0ekRGLEMrQ3Y0ekRBLDBCQUNFLGFBQWMsQ0FFZCx1QkFBeUIsQ0FEekIsY0FBZSxDQUdmLDJCQURBLGlCL0MwNHpERixDK0N2NHpEQSxpQ0FDRSxlQUNBLGlCL0N5NHpERixDK0NyNHpEQSxnQ0FLRSxlQUFnQixDQUpoQixhQUFjLENBRWQsa0JBQW9CLENBQ3BCLHlCQUZBLG9CL0MyNHpERixDK0NwNHpEQSxtQkFDRSw2Qi9DdTR6REYsQytDcjR6REEsdURBRUUsa0IvQ3U0ekRGLENBQ0YsQytDaDR6REEsOEJBQ0UsMEMvQ3E0ekRGLEMrQzkzekRBLGdCQUVFLFdBQVksQ0FDWixlQUFnQixDQUNoQix5QkFBMkIsQ0FDM0IsVS9DbTR6REYsQytDajR6REEsMEZBTkUsNEIvQzQ0ekRGLEMrQ2o0ekRBLHdCQUNFLFUvQ200ekRGLEMrQ2o0ekRBLHVCQUdFLFdBREEsYUFEQSxRL0NxNHpERixDK0NoNHpEQSxpQ0FDRSxxQi9DazR6REYsQytDaDR6REEsNENBQ0UscUIvQ2s0ekRGLEMrQy8zekRBLGdFQUVFLGtCL0NrNHpERixDK0NoNHpEQSw0RkFFRSxPL0NrNHpERixDK0NoNHpEQSwrUEFJRSxRL0NrNHpERixDK0MvM3pEQSxvQ0FDRSwwQi9DaTR6REYsQytDMTN6REEsa0JBQ0UsYUFBYyxDQUNkLGlCQUFrQixDQUNsQixVL0MrM3pERixDK0M1M3pEQSxpQkFDRSxhL0M4M3pERixDK0NuM3pEQSxzQkFDRSxPL0MyM3pERixDK0N6M3pEQSx5QkFDRSxVL0MyM3pERixDK0N4M3pEQSw0Q0FDRSxzQkFDRSxRL0MwM3pERixDK0N4M3pEQSx5QkFDRSxXL0MwM3pERixDQUNGLEMrQ2ozekRBLDJCQUNFLGUvQ3UzekRGLEMrQ3IzekRBLDRCQUNFLDBCQUEyQixDQUMzQixjL0N1M3pERixDK0NyM3pEQSxtQ0FFRSxnQ0FBaUMsQ0FEakMsYS9DdzN6REYsQytDcjN6REEsb0RBQ0UsZ0IvQ3UzekRGLEMrQ24zekRBLHNDQUVFLGdDQUFpQyxDQURqQyxhL0N1M3pERixDK0NwM3pEQSw4Q0FDRSxlL0NzM3pERixDK0NwM3pEQSxvRUFFRSxRQUFTLENBQ1QsMEJBRkEsaUIvQ3czekRGLEMrQ2wzekRBLDZCQUNFLDhCQUNBLGEvQ3EzekRGLEMrQ24zekRBLHNDQUNFLCtCL0NxM3pERixDK0NuM3pEQSxnREFDRSwrQi9DcTN6REYsQytDOTJ6REEscUJBRUUsVUFDQSxnQkFGQSxTL0NxM3pERixDK0NqM3pEQSw2QkFLRSxnQkFIQSxNQUFPLENBQ1AsYUFBYyxDQUNkLEtBQU0sQ0FITixVL0N1M3pERixDK0NqM3pEQSw2QkFDRSxxQi9DbTN6REYsQytDajN6REEsNEJBR0Usc0JBREEsV0FEQSxhL0NxM3pERixDK0NqM3pEQSxrQ0FDRSxVL0NtM3pERixDK0M3MnpEQSxVQUNFLGMvQ2szekRGLEMrQzkyekRBLGdDQUNFLGUvQ2kzekRGLEMrQzcyekRBLDRDQUNFLGVBRUUsU0FEQSxTL0NpM3pERixDQUNGLEMrQzkyekRBLHlDQUNFLGVBRUUsU0FEQSxXL0NpM3pERixDQUNGLEMrQzkyekRBLHlDQUNFLGVBRUUsU0FEQSxXL0NpM3pERixDQUNGLEMrQzkyekRBLDBDQUNFLGVBRUUsU0FEQSxXL0NpM3pERixDQUNGLEMrQzkyekRBLDBDQUNFLGVBRUUsU0FEQSxXL0NpM3pERixDQUNGLEMrQzUyekRBLGdDQUNFLGUvQysyekRGLEMrQzMyekRBLDRDQUNFLGVBRUUsU0FEQSxTL0MrMnpERixDQUNGLEMrQzUyekRBLHlDQUNFLGVBRUUsU0FEQSxXL0MrMnpERixDQUNGLEMrQzUyekRBLHlDQUNFLGVBRUUsU0FEQSxXL0MrMnpERixDQUNGLEMrQzUyekRBLDBDQUNFLGVBRUUsU0FEQSxXL0MrMnpERixDQUNGLEMrQzUyekRBLDBDQUNFLGVBRUUsU0FEQSxXL0MrMnpERixDQUNGLEMrQzEyekRBLGlDQUNFLGUvQzYyekRGLEMrQ3oyekRBLDRDQUNFLGdCQUVFLFNBREEsUy9DNjJ6REYsQ0FDRixDK0MxMnpEQSx5Q0FDRSxnQkFFRSxTQURBLFcvQzYyekRGLENBQ0YsQytDMTJ6REEseUNBQ0UsZ0JBRUUsU0FEQSxXL0M2MnpERixDQUNGLEMrQzEyekRBLDBDQUNFLGdCQUVFLFNBREEsVy9DNjJ6REYsQ0FDRixDK0MxMnpEQSwwQ0FDRSxnQkFFRSxTQURBLFcvQzYyekRGLENBQ0YsQytDeDJ6REEsd0JBQ0UsZS9DMjJ6REYsQytDejJ6REEsNENBQ0UsZ0JBRUUsU0FEQSxTL0M0MnpERixDQUNGLEMrQ3oyekRBLHlDQUNFLGdCQUVFLFNBREEsUy9DNDJ6REYsQ0FDRixDK0N6MnpEQSx5Q0FDRSxnQkFFRSxTQURBLFkvQzQyekRGLENBQ0YsQytDejJ6REEsMENBQ0UsZ0JBRUUsU0FEQSxZL0M0MnpERixDQUNGLEMrQ3oyekRBLDBDQUNFLGdCQUVFLFNBREEsWS9DNDJ6REYsQ0FDRixDK0NwMnpEQSxtQkFDRSx5Qi9DeTJ6REYsQytDdDJ6REEsdURBRUUsMEJBQ0EsVS9DdzJ6REYsQytDcjJ6REEsNEJBQ0UsbUJBQ0Esd0NBQ0EsVS9DdTJ6REYsQytDcDJ6REEsa0NBQ0UscUIvQ3MyekRGLEMrQ2wyekRBLDRDQUNFLGtDQUNFLFUvQ28yekRGLENBQ0YsQytDajJ6REEscUNBQ0UsVS9DbTJ6REY7QUFPQTs7Ozs7Ozs7RUFRRSxDZ0Q1OTBERixRQWVFLGdCQU9BLDRDQU5BLHNDQUlBLHNCQW5CQSxZQUFhLENBaUJiLGVBWkEsTUFBTyxDQU1QLFNBSEEsYUFQQSxZQVdBLGtCQVZBLGtCQWdCQSxrQkFkQSxNQWtCQSwrQkFiQSxXQUhBLFdoRDJxMkRGLENnRHhwMkRBLFNBQ0UsY2hEMHAyREYsQ2dEdnAyREEsZUFHRSxXQUZBLG9CQUFxQixDQUNyQixhaEQwcDJERixDZ0RycDJEQSxvQkFXRSxXQVZBLGNBQWUsQ0FPZixjQUVBLGlCQVJBLFdBRUEsaUJBQWtCLENBRWxCLFVBREEsUUFPQSwyQmhEb3AyREYsQ2dEMW8yREEsY0FDRSxnQkFDQSxTaERncDJERixDZ0Q3bzJEQSxxQkFDRSxTaEQrbzJERixDZ0RsbzJEQSxnQkFFRSxhQUFjLENBRGQsaUJoRDJvMkRGLENnRG5vMkRBLGNBQ0UsY2hEd28yREYsQ2dEam8yREEsK0JBRUUsNENBRUEsU0FEQSxRaER1bzJERixDZ0QvbjJEQSx3Q0FFRSx5QkFDQSxxQmhEb28yREYsQ2dEbG8yREEsNEdBSUUsb0JoRG9vMkRGLENnRDVuMkRBLGNBQ0UseUJoRGlvMkRGLENnRC9uMkRBLHlCQUNFLDJDaERpbzJERixDZ0QvbjJEQSxnQ0FDRSwyQ2hEaW8yREY7QUFPQTs7Ozs7Ozs7RUFRRSxDaURqeDJERixVQWFFLGdCQUhBLHlCQVVBLDJCQUNBLDBFQUhBLHNCQWpCQSxZQUFhLENBZ0JiLGtCQURBLGdCQUxBLHFCQUNBLGdCQUxBLHFCQUFzQixDQVF0QixtQkFiQSxpQkFBa0IsQ0FFbEIsT0FBUSxDQURSLEtBQU0sQ0FLTixZakR1LzNERixDaUR4KzNEQSxrQkFHRSwyREFDQSx1QkFFQSxnQkFEQSxnQkFKQSxTakQ4KzNERixDaUR2KzNEQSwyQkFDRSxnQmpEeSszREYsQ2lEdCszREEsaUJBTUUsZ0JBSUEsK0JBUkEsVUFBVyxDQUVYLG1CQUhBLGlCQUFrQixDQU1sQix1QkFBd0IsQ0FKeEIsa0JBTUEsWWpEdSszREYsQ2lEMTkzREEsZUFDRSxpQmpEbSszREYsQ2lELzkzREEsc0JBWUUsK0JBVEEsVUFBVyxDQUdYLG1CQUdBLHVCQUF3QixDQUp4QixrQkFNQSxZakRpKzNERixDaUQ1OTNEQSwyQ0FSRSxnQkFKQSxlQUhBLG1CQUFvQixDQUNwQixpQmpEKy8zREYsQ2lEai8zREEscUJBVUUseUJBVUEsMkJBQ0EsMEVBSEEsc0JBaEJBLDBCQUEyQixDQWUzQixrQkFEQSxnQkFMQSxxQkFDQSxlQUdBLG1CQVZBLGVBQWdCLENBRGhCLG1CQUFvQixDQUVwQixrQkFBbUIsQ0FnQm5CLFlqRDI5M0RGLENpRHY5M0RBLDJDQUtFLGdCQUZBLFdBQVksQ0FDWixRQUFTLENBR1QsMkJBREEsMEJBSkEsVUFBVyxDQURYLFFqRGcrM0RGLENpRHg5M0RBLDBDQUdFLFdBQVksQ0FGWixRQUFTLENBR1QsbUJBRkEsMEJqRDQ5M0RGLENpRHQ5M0RBLDJDQUVFLG1CQUFvQixDQUNwQixpQmpEeTkzREYsQ2lEdjkzREEsc0JBQ0UsU0FBVSxDQUNWLDBDQUE0QyxDQUM1QywyQkFBNEIsQ0FDNUIsdUJqRHk5M0RGLENpRHI5M0RBLHFCQUNFLFNBQVUsQ0FDViw4QkFBK0IsQ0FDL0IsdUJqRHU5M0RGLENpRG45M0RBLHVEQUdFLG1CQUFvQixDQURwQixrQmpEczkzREYsQ2lEbjkzREEsNEJBRUUsU0FBVSxDQURWLDBDakRzOTNERixDaURqOTNEQSwwSEFHRSw2Q2pEbzkzREYsQ2lEbDkzREEscUZBRUUsNkNqRG85M0RGLENpRGw5M0RBLHFHQUVFLDZDakRvOTNERixDaURsOTNEQSxpSEFFRSw2Q2pEbzkzREYsQ2lEbDkzREEsb01BSUUsNEJqRG85M0RGLENpRGw5M0RBLDROQUlFLDRCakRvOTNERixDaUQzODNEQSxxQ0FNRSxtQkFMQSx5QmpEaTkzREYsQ2lEeDgzREEsb0NBQ0UsbUJBRUEsWUFDQSxnQkFGQSxVakRpOTNERixDaUQ3ODNEQSw0Q0FDRSxnQkFDQSxVakQrODNERixDaUR2ODNEQSxpREFJRSxXQUFZLENBRFosUUFBUyxDQUdULG1CQUpBLFVBQVcsQ0FEWCxRQUFTLENBSVQsMEJqRDg4M0RGLENpRDM4M0RBLGtEQUtFLGdCQUZBLFdBQVksQ0FDWixRQUFTLENBR1QsMkJBREEsMEJBSkEsVUFBVyxDQURYLFFqRG05M0RGLENpRHo4M0RBLCtDQUlFLFdBQVksQ0FEWixNQUFPLENBRVAsbUJBSEEsVUFBVyxDQURYLFFqRGc5M0RGLENpRDE4M0RBLGdEQUdFLFdBQVksQ0FDWixTQUVBLDJCQURBLDBCQUhBLFVBQVcsQ0FEWCxRakRpOTNERixDaUR4ODNEQSxnREFJRSxXQUFZLENBRlosU0FBVSxDQUdWLG1CQUZBLE9BQVEsQ0FGUixRakQrODNERixDaUR6ODNEQSxpREFHRSxXQUFZLENBRFosU0FBVSxDQUlWLDJCQURBLDBCQURBLFVBSEEsUWpEZzkzREYsQ2lEdDgzREEsb0RBQ0UsV0FBWSxDQUVaLFFBQVMsQ0FHVCxnQkFKQSxVQUFXLENBRVgsUUFBUyxDQUNULDBCakQwODNERixDaUR2ODNEQSxxREFDRSxXQUFZLENBR1osUUFBUyxDQUNULDBCQUNBLHdCQUpBLFVBQVcsQ0FDWCxRakQ0ODNERixDaURyODNEQSxrREFDRSxNQUFPLENBRVAsZ0JBREEsUWpEeTgzREYsQ2lEdDgzREEsbURBQ0UsV0FBWSxDQUdaLFNBQ0EsMEJBQ0Esd0JBSkEsVUFBVyxDQUNYLFFqRDI4M0RGLENpRHA4M0RBLG1EQUdFLGdCQUZBLE9BQVEsQ0FDUixRakR3ODNERixDaURyODNEQSxvREFDRSxXQUFZLENBQ1osU0FBVSxDQUdWLDBCQUNBLHdCQUZBLFVBREEsUWpEMDgzREYsQ2lEbjgzREEsa0RBR0Usa0JBRkEsVUFBVyxDQUNYLE9BQVEsQ0FFUiwwQmpEczgzREYsQ2lEcDgzREEsbURBSUUsMkJBREEseUJBRkEsVUFBVyxDQUNYLE9qRHc4M0RGLENpRGw4M0RBLG1EQUNFLFNBQVUsQ0FFVixpQkFEQSxPQUFRLENBRVIsMEJqRHE4M0RGLENpRG44M0RBLG9EQUNFLFNBQVUsQ0FHVix5QkFEQSx5QkFEQSxPakR1ODNERixDaURqODNEQSw2Q0FDRSxnQkFDQSxnQ2pEbzgzREYsQ2lEbDgzREEsbURBQ0UsZ0JBQ0EsK0JqRG84M0RGLENpRGw4M0RBLG9EQUNFLGdCQUNBLCtCakRvODNERixDaURsODNEQSwwQ0FDRSxlakRvODNERixDaURoODNEQSw0REFDRSxtQkFDQSxnQ2pEbTgzREYsQ2lEajgzREEsa0VBQ0UsbUJBQ0EsK0JqRG04M0RGLENpRGo4M0RBLG1FQUNFLG1CQUNBLCtCakRtODNERixDaURqODNEQSx5REFDRSxrQmpEbTgzREYsQ2lEaDgzREEsNkNBQ0UsOEJqRGs4M0RGLENpRGg4M0RBLDRDQUNFLDJCakRrODNERixDaURoODNEQSxtREFDRSwyQmpEazgzREYsQ2lENzczREEsc0dBQ0UsNkJqRGs4M0RGLENpRGg4M0RBLG1EQUNFLDRCakRrODNERixDaUQzNzNEQSx1RkFFRSxzQmpEZzgzREYsQ2lEOTczREEsdUZBRUUsc0JqRGc4M0RGLENpRDk3M0RBLHlGQUVFLHNCakRnODNERixDaUQ5NzNEQSwyRkFFRSxjakRnODNERixDaUQ5NzNEQSx5RkFFRSx1QmpEZzgzREYsQ2lEOTczREEsdUZBRUUsdUJqRGc4M0RGLENpRDE3M0RBLDZDQUNFLFlqRCs3M0RGLENpRHg3M0RBLFVBQ0UsUWpENjczREYsQ2lEejczREEsY0FDRSxzQmpENDczREYsQ2lEMTczREEsbUJBQ0UsNEJqRDQ3M0RGLENpRDE3M0RBLHFCQUNFLDhCakQ0NzNERixDaUQxNzNEQSxvQkFDRSw2QmpENDczREYsQ2lEeDczREEsc0JBQ0UseUJBQ0EsMEJqRDI3M0RGLENpRHo3M0RBLHVCQUNFLHlCQUNBLHlCakQyNzNERixDaUR2NzNEQSxpQkFDRSxzQmpEMDczREYsQ2lEeDczREEsc0JBQ0UseUJqRDA3M0RGLENpRHg3M0RBLHdCQUNFLDJCakQwNzNERixDaUR4NzNEQSx1QkFDRSwwQmpEMDczREYsQ2lEbDczREEsK0JBS0UsV0FBWSxDQUNaLGlDQUhBLFFBQVMsQ0FGVCx5QkFHQSxVQUFXLENBRlgsZ0JqRDQ3M0RGLENpRHI3M0RBLHNCQUNFLGFqRHU3M0RGLENpRHA3M0RBLDZCQUlFLFdBQVksQ0FFWixpQ0FKQSxTQUdBLGFBQWMsQ0FGZCxVQUFXLENBRlgsZ0JqRDQ3M0RGLENpRHA3M0RBLHVCQUNFLGNqRHM3M0RGLENpRG43M0RBLDhCQUdFLFdBQVksQ0FHWixpQ0FGQSxTQUFVLENBQ1YsYUFBYyxDQUhkLFVBREEsZ0JqRDI3M0RGLENpRGw3M0RBLDRCQUdFLG9CQUNBLFFBQVMsQ0FDVCx5QkFIQSxVQUFXLENBRFgsUWpEeTczREYsQ2lEbjczREEsbUJBQ0UsYWpEcTczREYsQ2lEbDczREEsMEJBQ0Usb0JBQ0EsU0FHQSxhQUFjLENBRGQsVUFBVyxDQURYLFFqRHU3M0RGLENpRG43M0RBLG9CQUNFLGNqRHE3M0RGLENpRGw3M0RBLDJCQUNFLG9CQUdBLFNBQVUsQ0FDVixhQUFjLENBSGQsVUFDQSxRakR1NzNERixDaURoNzNEQSw2QkFHRSxXQUFZLENBR1osZ0NBRkEsU0FBVSxDQUNWLHdCQUhBLG1CQURBLE9qRHk3M0RGLENpRC82M0RBLDhCQUdFLFdBQVksQ0FHWixnQ0FKQSxrQkFHQSx3QkFEQSxVQUFXLENBSFgsT2pEdzczREYsQ2lEeDYzREEsd0dBQ0UsZWpEazczREYsQ2lEdjYzREEsNElBQ0Usa0JqRGk3M0RGLENpRHg2M0RBLGdDQUVFLHVCQURBLDBCakQrNjNERixDaUR2NjNEQSxrQkFDRSxhQUFjLENBQ2QsaUJBQWtCLENBQ2xCLFVqRDQ2M0RGLENpRHo2M0RBLHNDQUVFLGFqRDI2M0RGLENpRHg2M0RBLGtCQUVFLDBCQUEyQixDQUQzQix1QmpEMjYzREYsQ2lEOTUzREEsdUJBQ0UsWWpEczYzREYsQ2lEOTUzREEsZUFDRSxlakRtNjNERixDaURqNjNEQSw4QkFDRSxlakRtNjNERixDaURoNjNEQSw0Q0FDRSw2Q0FFRSxlakRrNjNERixDQUNGLENpRDE1M0RBLGdCQUVFLGNBQWUsQ0FEZixVakRnNjNERixDaUR0NTNEQSxtQkFDRSxtQkFFQSxZQUNBLGdCQUZBLFVqRDg1M0RGLENpRDE1M0RBLDJCQUNFLHNCQUNBLFVqRDQ1M0RGLENpRDE1M0RBLDBCQUNFLHlCQUNBLHlCakQ0NTNERixDaURyNTNEQSxrQkFDRSxjakQwNTNERixDaURsNTNEQSxlQUNFLHNCakR1NTNERixDaURyNTNEQSxlQUNFLHNCakR1NTNERixDaURyNTNEQSxnQkFDRSxzQmpEdTUzREYsQ2lEcjUzREEsVUFDRSxjakR1NTNERixDaURyNTNEQSxnQkFDRSx1QmpEdTUzREYsQ2lEcjUzREEsZUFDRSx1QmpEdTUzREY7QUFPQTs7Ozs7Ozs7RUFRRSxDa0RybjVERixhQU9FLDBCQUhBLFlBS0EsMkJBSEEsZ0JBSkEsYUFBYyxDQUdkLG1CQUZBLGNBQWUsQ0FLZixVQVBBLGlCbERvMDZERixDa0R6ejZEQSx5QkFDRSxnQmxEMno2REYsQ2tEeno2REEsd0JBQ0UsZ0JsRDJ6NkRGLENrRG56NkRBLGtCQU1FLGdCQUNBLDJCQU5BLGFBQWMsQ0FDZCxhQUFjLENBR2QsY0FJQSxlQUFnQixDQU5oQixrQkFLQSxvREFKQSxPbEQ4ejZERixDa0R2ejZEQSw4SEFFRSxzQmxEeXo2REYsQ2tEdno2REEsOENBQ0UscUJsRHl6NkRGLENrRHZ6NkRBLHVEQUNFLHdCbER5ejZERixDa0RyejZEQSw0QkFTRSx5QkFMQSxzQkFHQSxVQUlBLGlCQUxBLFdBT0EsZ0JBUkEsUUFKQSxrQkFBbUIsQ0FFbkIsVWxEazA2REYsQ2tEcHo2REEsZ0RBVEUsWUFJQSxnQkFWQSxrQkFRQSxnQmxEMjA2REYsQ2tEcDA2REEsb0JBUUUsc0JBTEEsY0FHQSxPQUtBLGdCQU5BLFdBT0Esa0JBUkEsU0FTQSwwQkFYQSxVbERrMDZERixDa0Q3eTZEQSxnR0FFRSx3QmxEbXo2REYsQ2tEano2REEsZ0RBQ0Usd0JsRG16NkRGLENrRGp6NkRBLGdHQUVFLHdCbERtejZERixDa0RqejZEQSxnREFDRSx3QmxEbXo2REYsQ2tEano2REEsZ0dBRUUsd0JsRG16NkRGLENrRGp6NkRBLGtHQUVFLHdCbERtejZERixDa0Q3eDZEQSxzZkFFRSxxQmxEa3o2REYsQ2tENXg2REEsZ2xCQUVFLHdCbERpejZERixDa0Q3eTZEQSx1YUFTRSx3QmxEZ3o2REYsQ2tEOXk2REEsMGVBVUUscUJsRGd6NkRGLENrRDl5NkRBLG9rQkFVRSx3QmxEZ3o2REYsQ2tENXk2REEsMENBQ0UsYWxEK3k2REYsQ2tEM3k2REEsc0JBQ0UsWWxEOHk2REYsQ2tEbHk2REEsNkJBQ0Usd0JsRDB5NkRGLENrRHh5NkRBLGdFQUVFLGNsRDB5NkRGLENrRHh5NkRBLDRCQUNFLGFsRDB5NkRGLENrRG55NkRBLDZCQUNFLHdCbER3eTZERixDa0R0eTZEQSxnRUFFRSxjbER3eTZERixDa0R0eTZEQSw0QkFDRSxhbER3eTZERixDa0RqeTZEQSwyQkFDRSx3QmxEc3k2REYsQ2tEcHk2REEsNERBRUUsY2xEc3k2REYsQ2tEcHk2REEsMEJBQ0UsYWxEc3k2REYsQ2tEL3g2REEseUJBRUUsY0FEQSxpQmxEcXk2REYsQ2tEbHk2REEsK0JBYUUsMkNBSkEsZ0JBRUEsMkJBSEEsUUFBUyxDQVBULFVBQVcsQ0FLWCxNQUFPLENBSlAsU0FBVSxDQUVWLGlCQUFrQixDQUdsQixPQUFRLENBRlIsS0FBTSxDQVNOLHFCbERpeTZERixDa0QveDZEQSwyQkFDRSxHQUNFLFdBQ0EsbUJsRGl5NkRGLENrRC94NkRBLEdBQ0UsU0FBVSxDQUNWLGtCbERpeTZERixDQUNGLENrRDF4NkRBLHNCQUNFLFdsRCt4NkRGLENrRDd4NkRBLGtFQUVFLGNsRCt4NkRGLENrRGx4NkRBLHNCQUNFLCtCQUNBLFdsRDB4NkRGLENrRHh4NkRBLDJCQUNFLGVsRDB4NkRGLENrRHh4NkRBLHFDQUNFLGFsRDB4NkRGLENrRHh4NkRBLDZCQUNFLFVsRDB4NkRGLENrRHh4NkRBLHFDQUNFLGFsRDB4NkRGLENrRHh4NkRBLHFDQUNFLGFsRDB4NkRGLENrRHh4NkRBLG1DQUNFLGFsRDB4NkRGLENrRGx4NkRBLHNCQUNFLHVCQUVBLFdBQVksQ0FDWixRQUFTLENBRlQsaUJsRDB4NkRGLENrRHR4NkRBLGlEQU1FLDRDQUpBLGFBQWMsQ0FDZCxhQUVBLGVBQWdCLENBRGhCLFNsRDB4NkRGLENrRHR4NkRBLDJCQUNFLGVsRHd4NkRGLENrRHB4NkRBLHlEQUdFLDRDQURBLEtsRHd4NkRGLENrRHJ4NkRBLCtCQUNFLGVsRHV4NkRGLENrRG54NkRBLGlFQUtFLFdBQVksQ0FEWixNQUFPLENBRlAsaUJBQWtCLENBQ2xCLFFBQVMsQ0FHVCxVbERzeDZERixDa0RweDZEQSwrRUFHRSxXQUFZLENBRFosUWxEdXg2REYsQ0sxcTdEQyxtRzZDbWFHLHdCbEQrdzZESixDS2xyN0RDLDhINkN3YUcsd0JsRCt3NkRKLENLdnI3REMseUc2Q21hRyx3QmxEeXg2REosQ0s1cjdEQyxvSTZDd2FHLHdCbER5eDZESixDS2pzN0RDLHVGNkNtYUcsd0JsRG15NkRKLENLdHM3REMsa0g2Q3dhRyx3QmxEbXk2REosQ0szczdEQyxnRzZDbWFHLHdCbEQ2eTZESixDS2h0N0RDLDJINkN3YUcsd0JsRDZ5NkRKLENLcnQ3REMsZ0c2Q21hRyx3QmxEdXo2REosQ0sxdDdEQywySDZDd2FHLHdCbER1ejZESixDSy90N0RDLDZGNkNtYUcsd0JsRGkwNkRKLENLcHU3REMsd0g2Q3dhRyx3QmxEaTA2REosQ0t6dTdEQyw2RjZDbWFHLHdCbEQyMDZESixDSzl1N0RDLHdINkN3YUcsd0JsRDIwNkRKLENLbnY3REMsMEY2Q21hRyx3QmxEcTE2REosQ0t4djdEQyxxSDZDd2FHLHdCbERxMTZESixDSzd2N0RDLDBGNkNtYUcsd0JsRCsxNkRKLENLbHc3REMscUg2Q3dhRyx3QmxEKzE2REosQ0t2dzdEQyxnRzZDbWFHLHdCbER5MjZESixDSzV3N0RDLDJINkN3YUcsd0JsRHkyNkRKLENLang3REMsZ0c2Q21hRyx3QmxEbTM2REosQ0t0eDdEQywySDZDd2FHLHdCbERtMzZESixDSzN4N0RDLDBGNkNtYUcsd0JsRDYzNkRKLENLaHk3REMscUg2Q3dhRyx3QmxENjM2REosQ0tyeTdEQyw2RjZDbWFHLHdCbER1NDZESixDSzF5N0RDLHdINkN3YUcsd0JsRHU0NkRKLENLL3k3REMsMEY2Q21hRyx3QmxEaTU2REosQ0twejdEQyxxSDZDd2FHLHdCbERpNTZESixDS3p6N0RDLDZGNkNtYUcsd0JsRDI1NkRKLENLOXo3REMsd0g2Q3dhRyx3QmxEMjU2REosQ2tEbjU2REEsa0JBQ0Usc0JsRHc1NkRGLENrRHQ1NkRBLHVCQUNFLFdsRHc1NkRGLENrRHI1NkRBLG1CQUNFLHNCbER1NTZERixDa0RyNTZEQSx3QkFDRSxVbER1NTZERixDa0RwNTZEQSxhQUNFLGNsRHM1NkRGLENrRHA1NkRBLGtCQUNFLGFsRHM1NkRGLENrRG41NkRBLG1CQUNFLHVCbERxNTZERixDa0RuNTZEQSx3QkFDRSxZbERxNTZERixDa0RsNTZEQSxpQkFDRSx1QmxEbzU2REYsQ2tEbDU2REEsc0JBQ0UsWWxEbzU2REYsQ2tENzQ2REEsZ0NBQ0UsVWxEazU2REYsQ2tEaDU2REEsK0VBR0UsaUJBQWtCLENBRGxCLGlCbERtNTZERixDa0RoNTZEQSx1Q0FNRSw4Q0FEQSwyQkFEQSxRQUFTLENBSFQsVUFBVyxDQUNYLGlCQUFrQixDQUNsQixLQUFNLENBSU4sdUJBQXdCLENBQ3hCLFVsRGs1NkRGLENrRGg1NkRBLDRDQUNFLHFCbERrNTZERixDa0RoNTZEQSw0Q0FDRSxxQmxEazU2REYsQ2tEaDU2REEsZ0RBRUUsZ0NBQWlDLENBRGpDLHFCbERtNTZERixDa0RoNTZEQSwrQ0FFRSwrQkFBZ0MsQ0FEaEMscUJsRG01NkRGLENrRGg1NkRBLCtDQUNFLCtCbERrNTZERixDa0RoNTZEQSxrRkFDRSxlbERrNTZERixDa0RoNTZEQSx5SEFHRSx5QmxEazU2REYsQ2tEaDU2REEsb0pBR0UsOEJsRGs1NkRGLENrRGg1NkRBLHFHQUVFLGFsRGs1NkRGLENrRGg1NkRBLHVIQUVFLHdCbERrNTZERixDa0QvNDZEQSw2QkFDRSxNQUVFLFVBREEsU2xEbTU2REYsQ2tEaDU2REEsUUFDRSxTbERtNTZERixDa0RqNTZEQSxJQUVFLFVBREEsU2xEbzU2REYsQ0FDRixDa0RoNTZEQSw0QkFDRSxHQUVFLFVBREEsU2xEbTU2REYsQ2tEaDU2REEsSUFDRSxTbERrNTZERixDa0RoNTZEQSxHQUVFLFVBREEsU2xEbTU2REYsQ0FDRixDa0QvNDZEQSw0QkFDRSxHQUNFLG1CbERpNTZERixDa0QvNDZEQSxJQUVFLFVBREEsa0JsRGs1NkRGLENrRC80NkRBLEdBQ0UsU2xEaTU2REYsQ0FDRixDa0Q5NDZEQSw4QkFDRSxHQUVFLFdBREEsbUJsRGk1NkRGLENrRDk0NkRBLEdBRUUsVUFEQSxrQmxEaTU2REYsQ0FDRixDbUR4ODdEQSx5Q0FFRSxpQkFEQSxVbkQ0bzlERixDbUR4bzlEQSwwQkFDRSxpQm5EMG85REYsQ21Edm85REEsZ0NBQ0UsU25EeW85REYsQ21EdG85REEsa0JBQ0UsaUJBQWtCLENBQ2xCLFNuRHdvOURGLENtRHJvOURBLGlDQUNFLFluRHVvOURGLENtRHBvOURBLHdCQUNFLFduRHNvOURGLENtRG5vOURBLHlCQUdFLGlDQURBLGtCQURBLGlCbkR1bzlERixDbURsbzlEQSx3Q0FFRSxZQUVBLE1BQU8sQ0FEUCxVQUZBLFVuRHVvOURGLENtRGpvOURBLDhCQUdFLHlCQURBLGtCQURBLGlCbkRxbzlERixDbURobzlEQSw2Q0FDRSxZQUVBLE1BQU8sQ0FEUCxTbkRtbzlERixDbUQvbjlEQSx5QkFNRSw2REFDQSxtQkFDQSw2RUFKQSxhQUZBLE1BQU8sQ0FEUCxpQkFBa0IsQ0FFbEIsS0FBTSxDQU1OLCtCQUpBLFduRHFvOURGLENtRDluOURBLDhDQUNFLGNuRGlvOURGLENtRDduOURBLDRGQUhFLCtEbkRtbzlERixDbURsbjlEQSxtQ0FDRSxVbkQwbjlERixDbUR2bjlEQSxpQ0FDRSxXbkR5bjlERixDbUR0bjlEQSx1Q0FDRSxlbkR3bjlERixDbUQ1bTlEQSx5RUFDRSxTQUFVLENBQ1YsT25EcW45REYsQ21EbG45REEsMkNBQ0UsZ0NuRG9uOURGLENtRHptOURBLG9CQUNFLFdBQVksQ0FFWixpQkFEQSxXbkRrbjlERixDbUQ5bTlEQSwyQkFDRSxXbkRnbjlERixDbUQ3bTlEQSxrQ0FDRSxXQUFZLENBRVosV0FDQSxLQUFNLENBRk4sVW5EaW45REYsQ21ENW05REEsdUNBRUUsV0FDQSxLQUFNLENBRk4sVW5EZ245REYsQ21Ecm05REEsMkZBRUUsUUFBUyxDQURULFFuRDZtOURGLENtRHJtOURBLDJCQUNFLGFBTUEsTUFBTyxDQUpQLFFBQVMsQ0FDVCxTQUFVLENBQ1YsaUJBQWtCLENBR2xCLE9BQVEsQ0FGUixPQUFRLENBSlIsVW5EZ245REYsQ21Edm05REEsMENBQ0UsMEJuRHltOURGLENtRHRtOURBLGtDQUNFLG1CQUFvQixDQUNwQixpQkFBa0IsQ0FDbEIsK0JuRHdtOURGLENtRHJtOURBLCtDQUlFLGdCQUhBLFdBQVksQ0FDWixhQUtBLFFBQVMsQ0FGVCxpQkFBa0IsQ0FDbEIsUUFBUyxDQUhULFNuRDJtOURGLENtRHJtOURBLHdEQUNFLFluRHVtOURGLENtRGxtOURBLG9DQUtFLFFBQVMsQ0FIVCxXQUFZLENBQ1osUUFBUyxDQUNULEtBQU0sQ0FFTiwwQkFBMkIsQ0FMM0IsV25EMG05REYsQ21EbG05REEsMkNBQ0UsK0JuRG9tOURGLENtRGptOURBLGlEQUVFLFdBQ0EsU0FBVSxDQUNWLE9BQVEsQ0FIUixXbkRzbTlERixDbURqbTlEQSwwREFFRSxXQURBLFduRG9tOURGLENtRC9sOURBLG9EQUNFLDhCbkRrbTlERixDbUQzbDlEQSwrQkFDRSxVQUNBLDZCbkRnbTlERixDbUQ3bDlEQSx3R0FDRSxTbkRnbTlERixDbUR2bDlEQSx1Q0FDRSx3Qm5ENGw5REYsQ21Eemw5REEsa0NBQ0Usb0NuRDJsOURGLENLMzE5REMsc0M4Q2dSRyx3Qm5Ea2w5REosQ0tsMjlEQywrQzhDbVJHLHdCbkRrbDlESixDS3IyOURDLHVDOEN3Ukcsd0JuRGlsOURKLENLejI5REMsMEY4QzRSRyx3Qm5EaWw5REosQ0s3MjlEQyxnRDhDaVNHLHdCbkRnbDlESixDS2ozOURDLDRHOENxU0csd0JuRGdsOURKLENLcjM5REMsd0M4Q2dSRyx3Qm5EeW05REosQ0t6MzlEQyxpRDhDbVJHLHdCbkR5bTlESixDSzUzOURDLHlDOEN3Ukcsd0JuRHdtOURKLENLaDQ5REMsOEY4QzRSRyx3Qm5Ed205REosQ0twNDlEQyxrRDhDaVNHLHdCbkR1bTlESixDS3g0OURDLGdIOENxU0csd0JuRHVtOURKLENLNTQ5REMsa0M4Q2dSRyx3Qm5EZ285REosQ0toNTlEQywyQzhDbVJHLHdCbkRnbzlESixDS241OURDLG1DOEN3Ukcsd0JuRCtuOURKLENLdjU5REMsa0Y4QzRSRyx3Qm5EK245REosQ0szNTlEQyw0QzhDaVNHLHdCbkQ4bjlESixDSy81OURDLG9HOENxU0csd0JuRDhuOURKLENLbjY5REMscUM4Q2dSRyx3Qm5EdXA5REosQ0t2NjlEQyw4QzhDbVJHLHdCbkR1cDlESixDSzE2OURDLHNDOEN3Ukcsd0JuRHNwOURKLENLOTY5REMsd0Y4QzRSRyx3Qm5Ec3A5REosQ0tsNzlEQywrQzhDaVNHLHdCbkRxcDlESixDS3Q3OURDLDBHOENxU0csd0JuRHFwOURKLENLMTc5REMscUM4Q2dSRyx3Qm5EOHE5REosQ0s5NzlEQyw4QzhDbVJHLHdCbkQ4cTlESixDS2o4OURDLHNDOEN3Ukcsd0JuRDZxOURKLENLcjg5REMsd0Y4QzRSRyx3Qm5ENnE5REosQ0t6ODlEQywrQzhDaVNHLHdCbkQ0cTlESixDSzc4OURDLDBHOENxU0csd0JuRDRxOURKLENLajk5REMsb0M4Q2dSRyx3Qm5EcXM5REosQ0tyOTlEQyw2QzhDbVJHLHdCbkRxczlESixDS3g5OURDLHFDOEN3Ukcsd0JuRG9zOURKLENLNTk5REMsc0Y4QzRSRyx3Qm5Eb3M5REosQ0toKzlEQyw4QzhDaVNHLHdCbkRtczlESixDS3ArOURDLHdHOENxU0csd0JuRG1zOURKLENLeCs5REMsb0M4Q2dSRyx3Qm5ENHQ5REosQ0s1KzlEQyw2QzhDbVJHLHdCbkQ0dDlESixDSy8rOURDLHFDOEN3Ukcsd0JuRDJ0OURKLENLbi85REMsc0Y4QzRSRyx3Qm5EMnQ5REosQ0t2LzlEQyw4QzhDaVNHLHdCbkQwdDlESixDSzMvOURDLHdHOENxU0csd0JuRDB0OURKLENLLy85REMsbUM4Q2dSRyx3Qm5EbXY5REosQ0tuZytEQyw0QzhDbVJHLHdCbkRtdjlESixDS3RnK0RDLG9DOEN3Ukcsd0JuRGt2OURKLENLMWcrREMsb0Y4QzRSRyx3Qm5Ea3Y5REosQ0s5ZytEQyw2QzhDaVNHLHdCbkRpdjlESixDS2xoK0RDLHNHOENxU0csd0JuRGl2OURKLENLdGgrREMsbUM4Q2dSRyx3Qm5EMHc5REosQ0sxaCtEQyw0QzhDbVJHLHdCbkQwdzlESixDSzdoK0RDLG9DOEN3Ukcsd0JuRHl3OURKLENLamkrREMsb0Y4QzRSRyx3Qm5EeXc5REosQ0tyaStEQyw2QzhDaVNHLHdCbkR3dzlESixDS3ppK0RDLHNHOENxU0csd0JuRHd3OURKLENLN2krREMscUM4Q2dSRyx3Qm5EaXk5REosQ0tqaitEQyw4QzhDbVJHLHdCbkRpeTlESixDS3BqK0RDLHNDOEN3Ukcsd0JuRGd5OURKLENLeGorREMsd0Y4QzRSRyx3Qm5EZ3k5REosQ0s1aitEQywrQzhDaVNHLHdCbkQreDlESixDS2hrK0RDLDBHOENxU0csd0JuRCt4OURKLENLcGsrREMscUM4Q2dSRyx3Qm5Ed3o5REosQ0t4aytEQyw4QzhDbVJHLHdCbkR3ejlESixDSzNrK0RDLHNDOEN3Ukcsd0JuRHV6OURKLENLL2srREMsd0Y4QzRSRyx3Qm5EdXo5REosQ0tubCtEQywrQzhDaVNHLHdCbkRzejlESixDS3ZsK0RDLDBHOENxU0csd0JuRHN6OURKLENLM2wrREMsbUM4Q2dSRyx3Qm5EKzA5REosQ0svbCtEQyw0QzhDbVJHLHdCbkQrMDlESixDS2xtK0RDLG9DOEN3Ukcsd0JuRDgwOURKLENLdG0rREMsb0Y4QzRSRyx3Qm5EODA5REosQ0sxbStEQyw2QzhDaVNHLHdCbkQ2MDlESixDSzltK0RDLHNHOENxU0csd0JuRDYwOURKLENLbG4rREMsb0M4Q2dSRyx3Qm5EczI5REosQ0t0bitEQyw2QzhDbVJHLHdCbkRzMjlESixDS3puK0RDLHFDOEN3Ukcsd0JuRHEyOURKLENLN24rREMsc0Y4QzRSRyx3Qm5EcTI5REosQ0tqbytEQyw4QzhDaVNHLHdCbkRvMjlESixDS3JvK0RDLHdHOENxU0csd0JuRG8yOURKLENLem8rREMsbUM4Q2dSRyx3Qm5ENjM5REosQ0s3bytEQyw0QzhDbVJHLHdCbkQ2MzlESixDS2hwK0RDLG9DOEN3Ukcsd0JuRDQzOURKLENLcHArREMsb0Y4QzRSRyx3Qm5ENDM5REosQ0t4cCtEQyw2QzhDaVNHLHdCbkQyMzlESixDSzVwK0RDLHNHOENxU0csd0JuRDIzOURKLENLaHErREMsb0M4Q2dSRyx3Qm5EbzU5REosQ0twcStEQyw2QzhDbVJHLHdCbkRvNTlESixDS3ZxK0RDLHFDOEN3Ukcsd0JuRG01OURKLENLM3ErREMsc0Y4QzRSRyx3Qm5EbTU5REosQ0svcStEQyw4QzhDaVNHLHdCbkRrNTlESixDS25yK0RDLHdHOENxU0cscUJuRGs1OURKLENtRHg0OURBLCtCQUNFLHdCbkQ4NDlERixDbUQ1NDlEQSwwRUFDRSx3Qm5EKzQ5REYsQ21EdjQ5REEsd0NBQ0Usd0JuRDY0OURGLENtRDM0OURBLDRGQUNFLHFCbkQ4NDlERixDbURyNDlEQSwrQkFDRSxXQUNBLFNuRDI0OURGLENtRHo0OURBLHVDQUNFLFVuRDI0OURGLENtRHo0OURBLGlHQUVFLFlBQ0EsU25EMjQ5REYsQ21EejQ5REEsNkdBRUUsVW5EMjQ5REYsQ21EejQ5REEsc0VBQ0UsV25EMjQ5REYsQ21EdjQ5REEsaUNBQ0UsU25EMDQ5REYsQ21EeDQ5REEscUZBR0UsV0FEQSxVbkQyNDlERixDbUR4NDlEQSxpR0FFRSxTbkQwNDlERixDbUR4NDlEQSxnRUFDRSxVbkQwNDlERixDbUR0NDlEQSwrQkFDRSxXQUNBLFNuRHk0OURGLENtRHY0OURBLHVDQUNFLFVuRHk0OURGLENtRHY0OURBLGlHQUVFLFlBQ0EsU25EeTQ5REYsQ21EdjQ5REEsNkdBRUUsVW5EeTQ5REYsQ21EdjQ5REEsc0VBQ0UsVW5EeTQ5REYsQ21EcjQ5REEsaUNBQ0UsU25EdzQ5REYsQ21EdDQ5REEscUZBR0UsV0FEQSxVbkR5NDlERixDbUR0NDlEQSxpR0FFRSxTbkR3NDlERixDbUR0NDlEQSxnRUFDRSxTbkR3NDlERixDbURwNDlEQSw2QkFDRSxhQUNBLFduRHU0OURGLENtRHI0OURBLHFDQUNFLFluRHU0OURGLENtRHI0OURBLDZGQUVFLFlBQ0EsU25EdTQ5REYsQ21EcjQ5REEseUdBRUUsWW5EdTQ5REYsQ21EcjQ5REEsb0VBQ0UsYW5EdTQ5REYsQ21EbjQ5REEsK0JBQ0UsV25EczQ5REYsQ21EcDQ5REEsaUZBR0UsV0FEQSxVbkR1NDlERixDbURwNDlEQSw2RkFFRSxXbkRzNDlERixDbURwNDlEQSw4REFDRSxZbkRzNDlERjtBQUlBOzs7Ozs7OztFQVFFLENvRGh6K0RGLFdBQ0UsbUJBQW9CLENBRXBCLHdCQURBLGtCcERvKy9ERixDb0RqKy9EQSxzQkFDRSxjcERtKy9ERixDb0QvOS9EQSxpQkFZRSwwQkFBMkIsQ0FlM0IsdUJBQ0Esc0JBckJBLGVBREEsYUFBYyxDQURkLGlCQUFrQixDQURsQixnQkFLQSxZQUVBLGFBQWMsQ0FUZCxRQUFTLENBRFQsU0FBVSxDQUVWLGlCQUFrQixDQU9sQixvRkFGQSxZcERzKy9ERixDb0Q5OC9EQSx3QkFDRSx1QkFDQSxxQnBENDkvREYsQ29EeDkvREEsMkRBRUUsdUJBQ0EscUJwRDI5L0RGLENLdGlnRUMsZ0MrQzJGRyxjQUNBLDZFcERpOS9ESixDSzdpZ0VDLDJFK0NtR0csY0FDQSw2RXBEODgvREosQ0tsamdFQyxrQytDMkZHLGNBQ0EsNkVwRDA5L0RKLENLdGpnRUMsK0UrQ21HRyxjQUNBLDZFcER1OS9ESixDSzNqZ0VDLDRCK0MyRkcsY0FDQSw2RXBEbSsvREosQ0svamdFQyxtRStDbUdHLGNBQ0EsNkVwRGcrL0RKLENLcGtnRUMsK0IrQzJGRyxjQUNBLDZFcEQ0Ky9ESixDS3hrZ0VDLHlFK0NtR0csY0FDQSw2RXBEeSsvREosQ0s3a2dFQywrQitDMkZHLGNBQ0EsNkVwRHEvL0RKLENLamxnRUMseUUrQ21HRyxjQUNBLDZFcERrLy9ESixDS3RsZ0VDLDhCK0MyRkcsY0FDQSw2RXBEOC8vREosQ0sxbGdFQyx1RStDbUdHLGNBQ0EsNkVwRDIvL0RKLENLL2xnRUMsOEIrQzJGRyxjQUNBLDZFcER1Z2dFSixDS25tZ0VDLHVFK0NtR0csY0FDQSw2RXBEb2dnRUosQ0t4bWdFQyw2QitDMkZHLGNBQ0EsNkVwRGdoZ0VKLENLNW1nRUMscUUrQ21HRyxjQUNBLDZFcEQ2Z2dFSixDS2puZ0VDLDZCK0MyRkcsY0FDQSw2RXBEeWhnRUosQ0tybmdFQyxxRStDbUdHLGNBQ0EsNkVwRHNoZ0VKLENLMW5nRUMsK0IrQzJGRyxjQUNBLDZFcERraWdFSixDSzluZ0VDLHlFK0NtR0csY0FDQSw2RXBEK2hnRUosQ0tub2dFQywrQitDMkZHLGNBQ0EsNkVwRDJpZ0VKLENLdm9nRUMseUUrQ21HRyxjQUNBLDZFcER3aWdFSixDSzVvZ0VDLDZCK0MyRkcsY0FDQSw2RXBEb2pnRUosQ0tocGdFQyxxRStDbUdHLGNBQ0EsNkVwRGlqZ0VKLENLcnBnRUMsOEIrQzJGRyxjQUNBLDZFcEQ2amdFSixDS3pwZ0VDLHVFK0NtR0csY0FDQSw2RXBEMGpnRUosQ0s5cGdFQyw2QitDMkZHLGNBQ0EsNkVwRHNrZ0VKLENLbHFnRUMscUUrQ21HRyxjQUNBLDZFcERta2dFSixDS3ZxZ0VDLDhCK0MyRkcsY0FDQSw2RXBEK2tnRUosQ0szcWdFQyx1RStDbUdHLFdBQ0EsNkVwRDRrZ0VKLENvRDNqZ0VBLDBCQUNFLGNwRG9rZ0VGLENvRHhqZ0VBLDhGQUVFLFNwRGlrZ0VGLENvRHhqZ0VBLGdCQUNFLHNCcEQ2amdFRixDb0QzamdFQSxnQkFDRSxzQnBENmpnRUYsQ29EM2pnRUEsaUJBQ0Usc0JwRDZqZ0VGLENvRDNqZ0VBLFdBQ0UsY3BENmpnRUYsQ29EM2pnRUEsaUJBQ0UsdUJwRDZqZ0VGLENvRDNqZ0VBLGdCQUNFLHVCcEQ2amdFRixDb0QzamdFQSxtQkFDRSxjcEQ2amdFRjtBQU9BOzs7Ozs7OztFQVFFLENxRHB0Z0VGLFdBQ0UsaUJyRGk2aEVGLENxRDk1aEVBLG1CQUlFLGdEQURBLHVCQUF3QixDQVd4QixnQkFDQSxvQ0FFQSxxQ0FEQSxzQkFKQSxjQUxBLGlCQUFrQixDQUNsQixnQkFFQSx5QkFUQSxRQUFTLENBQ1QsWUFBYSxDQVNiLHdCQUxBLGdCQUFpQixDQVlqQiw2RnJENjVoRUYsQ3FEMTVoRUEsbUJBQ0Usb0JyRDQ1aEVGLENxRHA1aEVBLGdDQUNFLGNyRHk1aEVGLENxRGw1aEVBLG9CQVdFLGdCQU9BLHlCQUZBLDJCQUNBLDBFQWhCQSxZQUFhLENBSWIsTUFBTyxDQVFQLGdCQVZBLGlCQUFrQixDQUtsQixlQUFnQixDQUNoQixtQkFBb0IsQ0FMcEIsUUFBUyxDQUVULDJCQUE0QixDQUM1QixrQkFBbUIsQ0FPbkIsV0FLQSxXckRtNWhFRixDcURqNWhFQSxpQ0FDRSwyQ3JEbTVoRUYsQ3FEajVoRUEsZ0NBQ0UsMkNyRG01aEVGLENxRDU0aEVBLDRCQVFFLDBDQUZBLHNCQUxBLGNBQWUsQ0FDZixhQUFjLENBRWQsY0FHQSxpQkFKQSxlQUFnQixDQUVoQixnQ3JEbzVoRUYsQ3FELzRoRUEsdUNBQ0UsNEJyRGk1aEVGLENxRDc0aEVBLG1DQUdFLGdCQUdBLG9CQUxBLFlBSUEsV0FIQSxlQUFnQixDQUVoQixTckRrNWhFRixDcUQ5NGhFQSx1Q0FDRSxhQUFjLENBRWQsV0FBWSxDQURaLFVyRGk1aEVGLENxRHo0aEVBLDRDQUNFLGdCckQ4NGhFRixDcUQzNGhFQSxtQ0FLRSxzQkFIQSwyREFFQSxjQURBLGdCQUZBLHVCckRpNWhFRixDcUQzNGhFQSx5Q0FHRSxxQkFEQSxzQkFEQSxZckQrNGhFRixDcUQzNGhFQSxtQ0FFRSxjQURBLFdyRDg0aEVGLENxRHQ0aEVBLDZCQUNFLFdyRDI0aEVGLENxRHo0aEVBLHFDQUlFLHNCQUhBLDJEQUNBLGVBQ0EsZXJENDRoRUYsQ3FEejRoRUEsMENBR0Usc0JBREEsY0FEQSxpQnJENjRoRUYsQ3FEdjRoRUEsNEJBR0UsbUJBREEsZ0JBR0Esc0JBSkEsYUFBYyxDQUtkLGdCQUZBLHdCQUdBLGlCckQwNGhFRixDcUQ5M2hFQSx5QkFFRSxnQkFEQSxnQ0FFQSxxQnJEczRoRUYsQ3FELzNoRUEsd0NBV0UsaUNBREEsb0JyRG00aEVGLENxRGg0aEVBLCtFQVhFLFVBQVcsQ0FNWCxvQkFKQSxRQUFTLENBRVQscUNBTEEsaUJBQWtCLENBRWxCLE9BQVEsQ0FJUixrQnJEbTVoRUYsQ3FENzRoRUEsdUNBVUUscUNBQ0EsMEJBQ0EscUJBRUEsZ0NyRCszaEVGLENxRHYzaEVBLHVGQUVFLGtCckQ0M2hFRixDcUQxM2hFQSxrQ0FDRSxrQnJENDNoRUYsQ3FEcjNoRUEsOENBQ0Usa0JyRDAzaEVGLENxRHgzaEVBLG9EQUNFLHFCckQwM2hFRixDcUR2M2hFQSx5RkFJRSxtQkFEQSxvQ0FFQSxnQkFIQSxpQnJENDNoRUYsQ3FEcDNoRUEsMEZBQ0UscUJyRHkzaEVGLENxRGozaEVBLG9CQUNFLGNBQWUsQ0FFZixZQURBLG1CckR3M2hFRixDcUQzMmhFQSw2QkFDRSwwQnJEbTNoRUYsQ3FELzJoRUEsOENBS0UsU0FGQSxTQUFVLENBQ1YsU0FBVSxDQUhWLG1CQUFvQixDQUNwQixpQkFBa0IsQ0FLbEIsUUFEQSxNQUVBLDBDckRrM2hFRixDcURoM2hFQSxxREFDRSxjQUFlLENBQ2YsV0FDQSxtQnJEazNoRUYsQ3FEaDNoRUEsOEVBQ0UsZXJEazNoRUYsQ3FEaDNoRUEsb0RBRUUsY0FEQSxTckRtM2hFRixDcUQxMmhFQSw2QkFDRSxVckQrMmhFRixDcUQ1MmhFQSw0RUFFRSxhckQ4MmhFRixDcUQxMmhFQSx1Q0FFRSxtQkFDQSxnQkFGQSxpQkFBa0IsQ0FHbEIsb0RyRDYyaEVGLENxRHoyaEVBLGtEQUNFLGtCckQ0MmhFRixDcUR4MmhFQSxpRUFDRSxnQ3JEMjJoRUYsQ3FEejJoRUEscUVBQ0UsZ0NyRDIyaEVGLENxRHYyaEVBLDZDQUtFLHVCQU1BLDBDQURBLHFCQVRBLGtCQUFtQixDQUtuQiwyREFDQSxjQUVBLGdCQURBLGlCQU5BLHNCQUF1QixDQUV2QixtQkFEQSxXckRrM2hFRixDcUR0MmhFQSxnREFFRSxnQkFFQSwwQ0FEQSx5Q0FGQSxrQnJENDJoRUYsQ3FEdjJoRUEsK0NBQ0UsMENBRUEsaUNBREEsb0RyRDAyaEVGLENxRDkxaEVBLDJDQUVFLE1BQU8sQ0FEUCxVckR1MmhFRixDcURwMmhFQSw0Q0FFRSxTQUFVLENBRFYsT3JEdTJoRUYsQ3FELzFoRUEsMEJBQ0UsVXJEbzJoRUYsQ3FENTFoRUEsZ0JBQ0UscUJyRGkyaEVGLENxRC8xaEVBLGlCQUNFLHFCckRpMmhFRixDcUQvMWhFQSxXQUNFLGFyRGkyaEVGLENxRC8xaEVBLGlCQUNFLHNCckRpMmhFRixDcUQvMWhFQSxlQUNFLHNCckRpMmhFRixDcUQvMWhFQSxnQkFDRSxzQnJEaTJoRUYsQ3FELzFoRUEsbUJBQ0Usc0JyRGkyaEVGLENxRDExaEVBLDRDQUNFLG9CQUNFLDRCckQrMWhFRixDQUNGO0FBT0E7Ozs7Ozs7O0VBUUUsQ3NENXdpRUYsVUFHRSxxQkFDQSxtQkFIQSxpQkFBa0IsQ0FJbEIsdUdBSEEsa0J0RDA3akVGLENzRHA3akVBLGlCQUNFLDJCdERzN2pFRixDc0RuN2pFQSxnQkFNRSwyQkFMQSxZQUFhLENBSWIsbUJBSEEsU0FBVSxDQUNWLFV0RHU3akVGLENzRGo3akVBLGtCQUNFLHFDdERtN2pFRixDc0Q1NmpFQSxxQkFNRSx5QkFFQSxrQ0FEQSxzQkFMQSxZQURBLGVBR0EsV3REbTdqRUYsQ3NENzZqRUEsOEJBR0UsYUFBYyxDQURkLFdBQVksQ0FHWixrQkFDQSxnQkFBaUIsQ0FMakIsVXREbTdqRUYsQ3NENTZqRUEsa0NBQ0Usa0JBQW1CLENBRW5CLGNBREEscUJ0RCs2akVGLENzRHY2akVBLGdDQUNFLGV0RDQ2akVGLENzRDE2akVBLHFCQUNFLGtCdEQ0NmpFRixDc0QxNmpFQSx1QkFDRSxrQnRENDZqRUYsQ3NEaDZqRUEsa0JBR0UsWUFBYSxDQUZiLGlCQUFrQixDQUNsQixXdER5NmpFRixDc0RoNmpFQSwwQkFJRSxhQUFjLENBRGQsTUFBTyxDQUZQLGlCQUFrQixDQUNsQixLQUFNLENBR04sV3REcTZqRUYsQ3NEbjZqRUEsdUJBQ0UsVXREcTZqRUYsQ3NENzVqRUEsMkJBQ0UsaUJBQWtCLENBQ2xCLHNHdERrNmpFRixDc0RoNmpFQSwwQkFDRSxrQ3REazZqRUYsQ3NEaDZqRUEsd0RBRUUsZXREazZqRUYsQ3NEMzVqRUEsdUJBQ0UsYXREZzZqRUY7QUFPQTs7Ozs7Ozs7RUFRRSxDdUR0aWtFRixZQVVFLGdDQUFpQyxDQUlqQyx5QkFBMkIsQ0FGM0IscUJBQXVCLENBVHZCLE1BQU8sQ0FZUCxrQkFBb0IsQ0FGcEIsZUFBZ0IsQ0FHaEIseUJBQTJCLENBZjNCLGNBQWUsQ0FDZixLQUFNLENBTU4sdUJBQStCLENBRi9CLGVBQWdCLENBR2hCLGlCQUFrQixDQUZsQixxQkFBc0IsQ0FVdEIsV3ZEOHRsRUYsQ3VEMXRsRUEsMEJBaEJFLDBCdkQ4dWxFRixDdURydGxFQSxpQkFFRSxNQUFPLENBRFAsVUFBVyxDQUVYLGdDdkQwdGxFRixDdUR4dGxFQSxrQkFFRSxtQkFBcUIsQ0FEckIsaUJBQW1CLENBRW5CLCtCdkQwdGxFRixDdUR2dGxFQSxtQ0FHRSxxQkFBdUIsQ0FEdkIsb0J2RDB0bEVGLEN1RHZ0bEVBLGdCQUVFLHFCQUF1QixDQUR2QixlQUFpQixDQUVqQixnQ3ZEeXRsRUYsQ3VEdnRsRUEsbUJBRUUsa0JBQW9CLENBRHBCLGtCQUFvQixDQUVwQiwrQnZEeXRsRUYsQ3VEanRsRUEsVUFDRSxXQUFZLENBQ1osaUJBQWtCLENBQ2xCLG1CdkRzdGxFRixDdURsdGxFQSxjQUNFLGtCdkRxdGxFRixDdURwdGxFRSxxQkFDRSxrQnZEc3RsRUosQ3VEanRsRUEsb0JBQ0UsdUJ2RG90bEVGLEN1RGx0bEVBLDZGQUdFLGlCdkRvdGxFRixDdUQ1c2xFQSxpQkFDRSxjQUFlLENBSWYscUJBQXNCLENBQ3RCLFd2RGd0bEVGLEN1RHpzbEVBLG1DQVhFLDBCQUEyQixDQUUzQiw2QnZEK3RsRUYsQ3VEdHRsRUEsa0JBU0Usa0JBQW1CLENBTG5CLGVBQWdCLENBRGhCLGVBQWdCLENBRmhCLGlCQUFrQixDQUtsQixTdkRndGxFRixDdUQxc2xFQSxzQkFDRSxldkQ0c2xFRixDdURyc2xFQSx3QkFLRSxnQ0FEQSxVQUFXLENBR1gsU0FBVSxDQURWLGVBQWdCLENBTGhCLGNBQWUsQ0FFZixPQUFRLENBRFIsS0FBTSxDQU1OLHVCQUNBLG1CQUFvQixDQUNwQixZdkQwc2xFRixDdURuc2xFQSx1QkFDRSx5QnZEd3NsRUYsQ3VEN3JsRUEsK0JBRUUscUJBQXVCLENBQ3ZCLG1CQUFxQixDQUZyQixvQnZEdXNsRUYsQ3VEOXJsRUEsc0JBQ0Usa0J2RG1zbEVGLEN1RDVybEVBLG9CQUVFLHVCQUErQixDQUQvQixrQnZEa3NsRUYsQ3VEenJsRUEsc0dBRUUsc0N2RGdzbEVGLEN1RDVybEVBLGlFQUVFLGdDdkQrcmxFRixDdUQ3cmxFQSxtRUFFRSxpQ3ZEK3JsRUYsQ3VEN3JsRUEsK0RBRUUsK0J2RCtybEVGLEN1RDdybEVBLHFFQUVFLGdDdkQrcmxFRixDdUQzcmxFQSwwT0FJRSx1QnZEOHJsRUYsQ3VEN3FsRUEsNkNBRUUsV3ZEeXJsRUYsQ3VEdnJsRUEsMkVBRUUsVXZEeXJsRUYsQ3VEdnJsRUEsbUNBRUUsV3ZEeXJsRUYsQ3VEdnJsRUEsNkNBRUUsV3ZEeXJsRUYsQ3VEdnJsRUEsMkVBRUUsV3ZEeXJsRUYsQ3VEcnJsRUEsMkVBRUUsZ0N2RHdybEVGLEN1RHRybEVBLHlHQUVFLCtCdkR3cmxFRixDdUR0cmxFQSwyRUFFRSxnQ3ZEd3JsRUYsQ3VEdHJsRUEseUdBRUUsZ0N2RHdybEVGLEN1RHBybEVBLDZFQUVFLGlDdkR1cmxFRixDdURycmxFQSwyR0FFRSxnQ3ZEdXJsRUYsQ3VEcnJsRUEsNkVBRUUsaUN2RHVybEVGLEN1RHJybEVBLDJHQUVFLGlDdkR1cmxFRixDdUR6cWxFQSxvQkFDRSxXdkRrcmxFRixDdUQ5cWxFQSx5QkFDRSxnQ3ZEaXJsRUYsQ3VEL3FsRUEsMEJBQ0UsK0J2RGlybEVGLEN1RC9xbEVBLHdCQUNFLGdDdkRpcmxFRixDdUQvcWxFQSwyQkFDRSwrQnZEaXJsRUYsQ3VEN3FsRUEsMERBRUUsNkJ2RGdybEVGLEN1RG5xbEVBLHNJQUNFLHVCdkQrcWxFRixDdUQzcWxFQSx1RUFFRSx3QnZEOHFsRUYsQ3VEcHFsRUEsaUJBQ0UsOEJBQ0EsV3ZEMHFsRUYsQ3VEdHFsRUEsc0JBQ0UsZ0N2RHlxbEVGLEN1RHZxbEVBLHVCQUNFLCtCdkR5cWxFRixDdUR2cWxFQSxxQkFDRSxnQ3ZEeXFsRUYsQ3VEdnFsRUEsd0JBQ0UsK0J2RHlxbEVGLEN1RDNwbEVBLDZDQVRFLHVCdkRncmxFRixDdUR2cWxFQSxvQkFFRSxTdkRxcWxFRixDdURqcWxFQSw0QkFDRSx1QkFBK0IsQ0FDL0IsNkJ2RG9xbEVGLEN1RDNwbEVBLHdCQUNFLFN2RGlxbEVGLEN1RDdwbEVBLDZCQUNFLCtCdkRncWxFRixDdUQ5cGxFQSw4QkFDRSw4QnZEZ3FsRUYsQ3VEOXBsRUEsNEJBQ0UsK0J2RGdxbEVGLEN1RDlwbEVBLCtCQUNFLDhCdkRncWxFRixDdUQ1cGxFQSxrQ0FDRSw2QnZEK3BsRUYsQ3VEM3BsRUEsZ0NBQ0UsdUJ2RDhwbEVGLEN1RHJwbEVBLHNCQUNFLFN2RDJwbEVGLEN1RHZwbEVBLDJCQUNFLDhCdkQwcGxFRixDdUR4cGxFQSw0QkFDRSwrQnZEMHBsRUYsQ3VEeHBsRUEsMEJBQ0UsOEJ2RDBwbEVGLEN1RHhwbEVBLDZCQUNFLCtCdkQwcGxFRixDdUR0cGxFQSxnQ0FDRSw2QnZEeXBsRUYsQ3VEcnBsRUEsOEJBQ0UsdUJ2RHdwbEVGLEN1RGhwbEVBLHVCQUNFLDhCQUNBLFd2RHNwbEVGLEN1RGxwbEVBLDRCQUNFLGdDdkRxcGxFRixDdURucGxFQSw2QkFDRSwrQnZEcXBsRUYsQ3VEbnBsRUEsMkJBQ0UsZ0N2RHFwbEVGLEN1RG5wbEVBLDhCQUNFLCtCdkRxcGxFRixDdURqcGxFQSxvQ0FDRSx3QnZEb3BsRUYsQ3VEbHBsRUEscUNBQ0Usd0J2RG9wbEVGLEN1RGxwbEVBLG1DQUNFLHdCdkRvcGxFRixDdURscGxFQSxzQ0FDRSx3QnZEb3BsRUYsQ3VEaHBsRUEsNkNBQ0UsNkJ2RG1wbEVGLEN1RGpwbEVBLGdGQUVFLHVCQUF5QixDQUV6QixXQUFZLENBQ1oseUJBQTJCLENBRjNCLFV2RHFwbEVGLEN1RC9vbEVBLCtCQUNFLHVCdkRrcGxFRixDdURocGxFQSx1Q0FDRSxvQnZEa3BsRUY7QUFPQTs7Ozs7Ozs7RUFRRSxDd0RocW1FRixXQUNFLGVBQWdCLENBQ2hCLGdCQUNBLFd4RCt6bkVGLEN3RHZ6bkVBLGlCQUVFLFNBQVUsQ0FEVixpQkFBa0IsQ0FFbEIsVXhENnpuRUYsQ3dEenpuRUEsaUJBRUUsU0FBVSxDQURWLGNBQWUsQ0FFZixVeEQ0em5FRixDd0R4em5FQSwwQ0FHRSxXQUFZLENBRFosS3hENHpuRUYsQ3dEenpuRUEsZ0RBR0UsUUFBUyxDQURULFF4RDR6bkVGLEN3RG56bkVBLGtCQUNFLHVCQUF3QixDQUN4QixvQkFBcUIsQ0FDckIsbUJBQW9CLENBQ3BCLGtCQUFtQixDQUNuQixleER3em5FRjtBQU9BOzs7Ozs7OztFQVFFLEN5RHIzbkVGLFFBQ0UsWXpEc2hwRUYsQ3lEM2dwRUEsNEJBRUUsYXpEbWhwRUYsQ3lENWdwRUEsZ0JBR0UsYUFBYyxDQUNkLGlCQUZBLGVBQWdCLENBRGhCLGlCekRvaHBFRixDeUQvZ3BFQSxrQkFFRSx3QkFEQSwyQnpEa2hwRUYsQ3lEOWdwRUEsc0RBWUUsaUNBREEscUJBUkEsVUFBVyxDQU1YLGFBSkEsUUFBUyxDQUVULDJCQUxBLGlCQUFrQixDQUVsQixRQUlBLFd6RGtocEVGLEN5RDVncEVBLG9EQVdFLHFDQUNBLDBCQUNBLHFCQUVBLGdDQUFpQyxDQVpqQyxVQUFXLENBTVgsYUFKQSxRQUFTLENBRVQsMkJBTEEsaUJBQWtCLENBRWxCLFFBSUEsV3pEa2hwRUY7QUFPQTs7Ozs7Ozs7RUFRRSxDMER2bHBFRixvQkFDSSxjQUFlLENBQ2YsWTFEbXdxRUosQzBEaHdxRUEsOEJBR0ksd0JBREEsa0JBREEsZTFEb3dxRUosQzBEL3ZxRUEsNkJBRUksaUJBQ0EseUJBRkEsZTFEbXdxRUosQzBEOXZxRUEsK0JBQ0ksUUFBUyxDQUVULGdCQURBLHlCMURpd3FFSixDMEQ3dnFFQSxpQ0FDSSxtQkFFQSx3QkFEQSxpQjFEZ3dxRUosQzBENXZxRUEsZ0NBQ0ksbUJBQ0EsaUJBQ0Esd0IxRDh2cUVKLEMwRDN2cUVBLGtDQUdJLG1CQUZBLFFBQVMsQ0FDVCx5QjFEOHZxRUosQzBEdHZxRUEsT0FFSSwyQkFHQSx5QkFKQSxhQUFjLENBR2QsZUFEQSx1QjFENnZxRUosQzBEeHZxRUEsMkNBRUUseUUxRDB2cUVGLEMwRHZ2cUVBLDZCQUNFLHlGMUR5dnFFRixDMER0dnFFQSxxRUFFSSxnQjFEd3ZxRUosQzBEcnZxRUEsbUNBQ0ksaUIxRHV2cUVKLEMwRHB2cUVBLG1EQUdJLHVCMURzdnFFSixDMERsdnFFQSwwQkFDRSxhQUFjLENBQ2QsVzFEb3ZxRUYsQzBEanZxRUEsdUNBR0ksZUFEQSxTMURvdnFFSixDMEQvdXFFQSxxQkFDRSxnQjFEaXZxRUYsQzBEOXVxRUEsd0JBQ0ksZTFEZ3ZxRUosQzBEN3VxRUEsWUFDSSx3QjFEK3VxRUosQzBENXVxRUEsZUFDSSx3QjFEOHVxRUosQzBEM3VxRUEsZUFDSSx3QjFENnVxRUosQzBEMXVxRUEsYUFDSSx3QjFENHVxRUosQzBEenVxRUEsd0NBQ0ksNEIxRDJ1cUVKLEMwRHh1cUVBLDJDQUNJLDRCMUQwdXFFSixDMER2dXFFQSwyQ0FDSSw0QjFEeXVxRUosQzBEdHVxRUEseUNBQ0ksNEIxRHd1cUVKLENLLzNxRUMsZXFEb0tHLHdCMURpdXFFSixDS3I0cUVDLDRFcUR3S0csd0IxRGl1cUVKLENLejRxRUMsaUJxRG9LRyx3QjFEd3VxRUosQ0s1NHFFQyxnRnFEd0tHLHdCMUR3dXFFSixDS2g1cUVDLFdxRG9LRyx3QjFEK3VxRUosQ0tuNXFFQyxvRXFEd0tHLHdCMUQrdXFFSixDS3Y1cUVDLGNxRG9LRyx3QjFEc3ZxRUosQ0sxNXFFQywwRXFEd0tHLHdCMURzdnFFSixDSzk1cUVDLGNxRG9LRyx3QjFENnZxRUosQ0tqNnFFQywwRXFEd0tHLHdCMUQ2dnFFSixDS3I2cUVDLGFxRG9LRyx3QjFEb3dxRUosQ0t4NnFFQyx3RXFEd0tHLHdCMURvd3FFSixDSzU2cUVDLGFxRG9LRyx3QjFEMndxRUosQ0svNnFFQyx3RXFEd0tHLHdCMUQyd3FFSixDS243cUVDLFlxRG9LRyx3QjFEa3hxRUosQ0t0N3FFQyxzRXFEd0tHLHdCMURreHFFSixDSzE3cUVDLFlxRG9LRyx3QjFEeXhxRUosQ0s3N3FFQyxzRXFEd0tHLHdCMUR5eHFFSixDS2o4cUVDLGNxRG9LRyx3QjFEZ3lxRUosQ0twOHFFQywwRXFEd0tHLHdCMURneXFFSixDS3g4cUVDLGNxRG9LRyx3QjFEdXlxRUosQ0szOHFFQywwRXFEd0tHLHdCMUR1eXFFSixDSy84cUVDLFlxRG9LRyx3QjFEOHlxRUosQ0tsOXFFQyxzRXFEd0tHLHdCMUQ4eXFFSixDS3Q5cUVDLGFxRG9LRyx3QjFEcXpxRUosQ0t6OXFFQyx3RXFEd0tHLHdCMURxenFFSixDSzc5cUVDLFlxRG9LRyx3QjFENHpxRUosQ0toK3FFQyxzRXFEd0tHLHdCMUQ0enFFSixDS3ArcUVDLGFxRG9LRyx3QjFEbTBxRUosQ0t2K3FFQyx3RXFEd0tHLHdCMURtMHFFSixDMEQvenFFQSxnQkFDRSxxQjFEaTBxRUYsQzBEMXpxRUEsOEJBR0ksZ0JBQ0EsaUIxRCt6cUVKLEMwRDF6cUVBLG1EQVJJLG9CQUFxQixDQUNyQixxQjFEcTBxRUosQzBEcnpxRUEsbUNBQ0ksVzFEMHpxRUosQzBEdnpxRUEsdUNBQ0Usb0QxRHl6cUVGLEMwRHR6cUVBLFdBQ0ksaUIxRHd6cUVKLEMwRHJ6cUVBLHNDQUdJLGVBQWdCLENBRGhCLFlBQWEsQ0FFYixpQjFEdXpxRUosQzBEcnpxRUEsOEJBQ0ksUzFEdXpxRUosQzBEcHpxRUEscUNBQ0UsaUIxRHN6cUVGLEMwRG56cUVBLGtDQUNFLGlCMURxenFFRixDMEQ5eXFFQSxnQ0FFRSxXQURBLFExRG96cUVGLEMwRC95cUVBLDhCQUNFLGNBQWUsQ0FFZixRQUFTLENBR1QsV0FKQSxpQkFBa0IsQ0FHbEIsV0FEQSxTQUdBLDJCMURpenFFRixDMEQ5eXFFQSxvQ0FDRSxTMURnenFFRjtBQUNBOzs7Ozs7OztFQVFFLEMyRDFockVGLFlBRUUsdUJBRUEseUJBSEEsMkJBQTRCLENBRTVCLDhCM0QwcnNFRixDMkRocnNFQSxzQkFDRSwyQkFDQSw0QjNEc3JzRUYsQzJEbHJzRUEsb0JBR0UsYUFBYyxDQUZkLGlCQUFrQixDQUNsQixZM0RzcnNFRixDMkRqcnNFQSxtQkFDRSxZQUFhLENBQ2IsaUIzRG9yc0VGLEMyRGhyc0VBLG9CQUNFLHVCQUF5QixDQUN6Qiw0QjNEcXJzRUYsQzJEL3FzRUEscUJBQ0UsMkIzRGtyc0VGLEMyRDNxc0VBLG9CQUNFLGtDM0RncnNFRixDNER6dXNFQSxtQkFDRSxzQjVEd3ZzRUYsQzREdHZzRUEsc0JBQ0UsdUI1RHd2c0VGLEM0RHR2c0VBLG1EQUVFLDRCNUR3dnNFRixDNER0dnNFQSw2QkFDRSw2QjVEd3ZzRUYsQzREcHZzRUEsb0JBQ0UsR0FDRSxpQ0FBcUMsQ0FDckMsVTVEdXZzRUYsQzREcnZzRUEsSUFHRSxVQUFZLENBRlosaUNBQXFDLENBQ3JDLFU1RHd2c0VGLEM0RHJ2c0VBLElBRUUsU0FBVSxDQURWLG1DQUFzQyxDQUV0QyxXNUR1dnNFRixDNERydnNFQSxHQUNFLGdDQUFtQyxDQUNuQyxXNUR1dnNFRixDQUNGLEM0RG52c0VBLHlCQUNFLEdBRUUsbURBQXFELENBRHJELFc1RHV2c0VGLEM0RHB2c0VBLElBRUUsMkVBQTRFLENBRDVFLFU1RHV2c0VGLEM0RHB2c0VBLElBQ0UsUzVEc3ZzRUYsQzREcHZzRUEsR0FHRSxTQUFVLENBRFYscUVBQXVFLENBRHZFLFU1RHd2c0VGLENBQ0YsQzREcHZzRUEsMEJBQ0UsR0FFRSxtREFBcUQsQ0FEckQsVzVEdXZzRUYsQzREcHZzRUEsSUFFRSwwRUFBMkUsQ0FEM0UsUzVEdXZzRUYsQzREcHZzRUEsSUFDRSxTNURzdnNFRixDNERwdnNFQSxHQUdFLFNBQVUsQ0FEVixxRUFBdUUsQ0FEdkUsUzVEd3ZzRUYsQ0FDRixDNEQ5dXNFQSxpQkFFRSxzQkFBeUIsQ0FDekIscURBQTJELENBRjNELDJCNURxdnNFRixDNERqdnNFQSxvQkFDRSxxQjVEbXZzRUYsQzREanZzRUEscUJBQ0Usc0I1RG12c0VGLEM0RC91c0VBLGtCQUNFLEdBQ0UsU0FBVSxDQUNWLGtCNURrdnNFRixDNERodnNFQSxHQUNFLFNBQVUsQ0FDVixrQjVEa3ZzRUYsQ0FDRixDNERodnNFQSxtQkFDRSxHQUNFLFNBQVUsQ0FDVixrQjVEa3ZzRUYsQzREaHZzRUEsR0FDRSxTQUFVLENBQ1Ysa0I1RGt2c0VGLENBQ0YsQzREM3VzRUEsb0JBQ0UscUI1RGd2c0VGLEM0RDl1c0VBLGlDQUNFLHVCNURndnNFRixDNEQ5dXNFQSxtQ0FDRSx5QjVEZ3ZzRUYsQzREOXVzRUEsbUNBQ0UseUI1RGd2c0VGLEM0RDl1c0VBLG9DQUNFLDBCNURndnNFRixDNEQ3dXNFQSxxQkFDRSxzQjVEK3VzRUYsQzREN3VzRUEsa0NBQ0Usd0I1RCt1c0VGLEM0RDd1c0VBLG9DQUNFLDBCNUQrdXNFRixDNEQ3dXNFQSxvQ0FDRSwwQjVEK3VzRUYsQzREN3VzRUEscUNBQ0UsMkI1RCt1c0VGLEM0RDN1c0VBLGtCQUNFLEdBQ0UsUzVEOHVzRUYsQzRENXVzRUEsR0FDRSxTNUQ4dXNFRixDQUNGLEM0RDV1c0VBLG9CQUNFLEdBQ0UsU0FBVSxDQUNWLHlCNUQ4dXNFRixDNEQ1dXNFQSxHQUNFLFNBQVUsQ0FDVix1QjVEOHVzRUYsQ0FDRixDNEQ1dXNFQSxzQkFDRSxHQUNFLFNBQVUsQ0FDViwwQjVEOHVzRUYsQzRENXVzRUEsR0FDRSxTQUFVLENBQ1YsdUI1RDh1c0VGLENBQ0YsQzRENXVzRUEsc0JBQ0UsR0FDRSxTQUFVLENBQ1YseUI1RDh1c0VGLEM0RDV1c0VBLEdBQ0UsU0FBVSxDQUNWLHVCNUQ4dXNFRixDQUNGLEM0RDV1c0VBLHVCQUNFLEdBQ0UsU0FBVSxDQUNWLDBCNUQ4dXNFRixDNEQ1dXNFQSxHQUNFLFNBQVUsQ0FDVix1QjVEOHVzRUYsQ0FDRixDNEQxdXNFQSxtQkFDRSxHQUNFLFM1RDZ1c0VGLEM0RDN1c0VBLEdBQ0UsUzVENnVzRUYsQ0FDRixDNEQzdXNFQSxxQkFDRSxHQUNFLFNBQVUsQ0FDVix1QjVENnVzRUYsQzREM3VzRUEsR0FDRSxTQUFVLENBQ1Ysd0I1RDZ1c0VGLENBQ0YsQzREM3VzRUEsdUJBQ0UsR0FDRSxTQUFVLENBQ1YsdUI1RDZ1c0VGLEM0RDN1c0VBLEdBQ0UsU0FBVSxDQUNWLHlCNUQ2dXNFRixDQUNGLEM0RDN1c0VBLHVCQUNFLEdBQ0UsU0FBVSxDQUNWLHVCNUQ2dXNFRixDNEQzdXNFQSxHQUNFLFNBQVUsQ0FDVix3QjVENnVzRUYsQ0FDRixDNEQzdXNFQSx3QkFDRSxHQUNFLFNBQVUsQ0FDVix1QjVENnVzRUYsQzREM3VzRUEsR0FDRSxTQUFVLENBQ1YseUI1RDZ1c0VGLENBQ0YsQzREdHVzRUEseUNBRUUsc0I1RDJ1c0VGLEM0RHp1c0VBLCtCQUNFLCtCNUQydXNFRixDNER6dXNFQSxnQ0FDRSxnQzVEMnVzRUYsQzREenVzRUEsNkJBQ0UsNkI1RDJ1c0VGLEM0RHp1c0VBLDhCQUNFLDhCNUQydXNFRixDNER2dXNFQSw0QkFDRSxHQUVFLFNBQVUsQ0FEViw2QzVEMnVzRUYsQzREeHVzRUEsR0FFRSxTQUFVLENBRFYsMkM1RDJ1c0VGLENBQ0YsQzREeHVzRUEsMEJBQ0UsR0FFRSxTQUFVLENBRFYsNkM1RDJ1c0VGLEM0RHh1c0VBLEdBRUUsU0FBVSxDQURWLDJDNUQydXNFRixDQUNGLEM0RHR1c0VBLDZCQUNFLEdBRUUsU0FBVSxDQURWLDJDNUQwdXNFRixDNER2dXNFQSxHQUVFLFNBQVUsQ0FEViw0QzVEMHVzRUYsQ0FDRixDNER2dXNFQSwyQkFDRSxHQUVFLFNBQVUsQ0FEViwyQzVEMHVzRUYsQzREdnVzRUEsR0FFRSxTQUFVLENBRFYsNkM1RDB1c0VGLENBQ0YsQzREbHVzRUEscUJBQ0Usc0I1RHV1c0VGLEM0RHJ1c0VBLHNCQUNFLHVCNUR1dXNFRixDNERwdXNFQSxtQkFDRSxHQUNFLFNBQVUsQ0FDVixtQjVEc3VzRUYsQzREcHVzRUEsR0FDRSxTQUFVLENBQ1Ysa0I1RHN1c0VGLENBQ0YsQzREbHVzRUEsb0JBQ0UsR0FDRSxTQUFVLENBQ1Ysa0I1RHF1c0VGLEM0RG51c0VBLEdBQ0UsU0FBVSxDQUNWLG1CNURxdXNFRixDQUNGLEM0RDV0c0VBLGdCQUNFLHNCQUF3QixDQUN4Qix3RDVEa3VzRUYsQzREaHVzRUEsbUJBQ0Usb0I1RGt1c0VGLEM0RGh1c0VBLGdDQUNFLHNCNURrdXNFRixDNERodXNFQSxrQ0FDRSx3QjVEa3VzRUYsQzREaHVzRUEsa0NBQ0Usd0I1RGt1c0VGLEM0RGh1c0VBLG1DQUNFLHlCNURrdXNFRixDNEQ5dHNFQSxvQkFDRSxxQjVEaXVzRUYsQzREL3RzRUEsaUNBQ0UsdUI1RGl1c0VGLEM0RC90c0VBLG1DQUNFLHlCNURpdXNFRixDNEQvdHNFQSxtQ0FDRSx5QjVEaXVzRUYsQzREL3RzRUEsb0NBQ0UsMEI1RGl1c0VGLEM0RDd0c0VBLGlCQUNFLEdBQ0UsU0FBVSxDQUNWLDJCNURndXNFRixDNEQ5dHNFQSxJQUNFLDhCNURndXNFRixDNEQ5dHNFQSxJQUNFLDJCNURndXNFRixDNEQ5dHNFQSxJQUNFLFNBQVUsQ0FDVixpQzVEZ3VzRUYsQzREOXRzRUEsSUFDRSw4QjVEZ3VzRUYsQzREOXRzRUEsR0FDRSxTQUFVLENBQ1YsbUI1RGd1c0VGLENBQ0YsQzREOXRzRUEsbUJBQ0UsR0FDRSxTQUFVLENBQ1YsaUM1RGd1c0VGLEM0RDl0c0VBLElBQ0UsU0FBVSxDQUNWLGdDNURndXNFRixDNEQ5dHNFQSxJQUNFLCtCNURndXNFRixDNEQ5dHNFQSxJQUNFLCtCNURndXNFRixDNEQ5dHNFQSxHQUNFLHVCNURndXNFRixDQUNGLEM0RDl0c0VBLHFCQUNFLEdBQ0UsU0FBVSxDQUNWLGtDNURndXNFRixDNEQ5dHNFQSxJQUNFLFNBQVUsQ0FDViwrQjVEZ3VzRUYsQzREOXRzRUEsSUFDRSxnQzVEZ3VzRUYsQzREOXRzRUEsSUFDRSw4QjVEZ3VzRUYsQzREOXRzRUEsR0FDRSxjNURndXNFRixDQUNGLEM0RDl0c0VBLHFCQUNFLEdBQ0UsU0FBVSxDQUNWLGlDNURndXNFRixDNEQ5dHNFQSxJQUNFLFNBQVUsQ0FDVixnQzVEZ3VzRUYsQzREOXRzRUEsSUFDRSwrQjVEZ3VzRUYsQzREOXRzRUEsSUFDRSwrQjVEZ3VzRUYsQzREOXRzRUEsR0FDRSxjNURndXNFRixDQUNGLEM0RDl0c0VBLHNCQUNFLEdBQ0UsU0FBVSxDQUNWLGtDNURndXNFRixDNEQ5dHNFQSxJQUNFLFNBQVUsQ0FDViwrQjVEZ3VzRUYsQzREOXRzRUEsSUFDRSxnQzVEZ3VzRUYsQzREOXRzRUEsSUFDRSw4QjVEZ3VzRUYsQzREOXRzRUEsR0FDRSxjNURndXNFRixDQUNGLEM0RDV0c0VBLGtCQUNFLElBQ0UsMkI1RCt0c0VGLEM0RDd0c0VBLFFBQ0UsU0FBVSxDQUNWLDhCNURndXNFRixDNEQ5dHNFQSxHQUNFLFNBQVUsQ0FDViwyQjVEZ3VzRUYsQ0FDRixDNEQ5dHNFQSxvQkFDRSxJQUNFLCtCNURndXNFRixDNEQ5dHNFQSxRQUNFLFNBQVUsQ0FDVixnQzVEaXVzRUYsQzREL3RzRUEsR0FDRSxTQUFVLENBQ1YsaUM1RGl1c0VGLENBQ0YsQzREL3RzRUEsc0JBQ0UsSUFDRSxnQzVEaXVzRUYsQzREL3RzRUEsUUFDRSxTQUFVLENBQ1YsK0I1RGt1c0VGLEM0RGh1c0VBLEdBQ0UsU0FBVSxDQUNWLGtDNURrdXNFRixDQUNGLEM0RGh1c0VBLHVCQUNFLElBQ0UsU0FBVSxDQUNWLCtCNURrdXNFRixDNERodXNFQSxHQUNFLFNBQVUsQ0FDVixrQzVEa3VzRUYsQ0FDRixDNERodXNFQSxzQkFDRSxJQUNFLFNBQVUsQ0FDVixnQzVEa3VzRUYsQzREaHVzRUEsR0FDRSxTQUFVLENBQ1YsaUM1RGt1c0VGLENBQ0YsQzREM3RzRUEseURBRUUsdUJBQXdCLENBQ3hCLDJCNURndXNFRixDNEQ5dHNFQSxrQ0FDRSx1QkFBd0IsQ0FDeEIsOEI1RGd1c0VGLEM0RDl0c0VBLG9DQUNFLHVCQUF3QixDQUN4Qiw2QjVEZ3VzRUYsQzREOXRzRUEscUNBQ0UsdUJBQXdCLENBQ3hCLDRCNURndXNFRixDNEQ3dHNFQSwyREFFRSx3QkFBeUIsQ0FDekIsMkI1RCt0c0VGLEM0RDd0c0VBLG1DQUNFLHdCQUF5QixDQUN6Qiw4QjVEK3RzRUYsQzREN3RzRUEscUNBQ0Usd0JBQXlCLENBQ3pCLDZCNUQrdHNFRixDNEQ3dHNFQSxzQ0FDRSx3QkFBeUIsQ0FDekIsNEI1RCt0c0VGLEM0RDN0c0VBLG9CQUNFLEdBQ0UsU0FBVSxDQUNWLG1CNUQ4dHNFRixDNEQ1dHNFQSxHQUNFLFNBQVUsQ0FDVixtQjVEOHRzRUYsQ0FDRixDNEQ1dHNFQSxvQkFDRSxHQUNFLFNBQVUsQ0FDVixtQjVEOHRzRUYsQzRENXRzRUEsR0FDRSxTQUFVLENBQ1YsbUI1RDh0c0VGLENBQ0YsQzREMXRzRUEscUJBQ0UsR0FDRSxTQUFVLENBQ1YsbUI1RDZ0c0VGLEM0RDN0c0VBLEdBQ0UsU0FBVSxDQUNWLG1CNUQ2dHNFRixDQUNGLEM0RDN0c0VBLHFCQUNFLEdBQ0UsU0FBVSxDQUNWLG1CNUQ2dHNFRixDNEQzdHNFQSxHQUNFLFNBQVUsQ0FDVixtQjVENnRzRUYsQ0FDRixDNERydHNFQSxrQkFDRSxzQjVEMHRzRUYsQzREdnRzRUEsb0NBQ0UsdUJBQXdCLENBQ3hCLDJCNUR5dHNFRixDNER2dHNFQSxrQ0FDRSx1QkFBd0IsQ0FDeEIsOEI1RHl0c0VGLEM0RHZ0c0VBLG9DQUNFLHVCQUF3QixDQUN4Qiw2QjVEeXRzRUYsQzREdnRzRUEscUNBQ0UsdUJBQXdCLENBQ3hCLDRCNUR5dHNFRixDNER0dHNFQSwyREFFRSx3QkFBeUIsQ0FDekIsMkI1RHd0c0VGLEM0RHR0c0VBLG1DQUNFLHdCQUF5QixDQUN6Qiw4QjVEd3RzRUYsQzREdHRzRUEscUNBQ0Usd0JBQXlCLENBQ3pCLDZCNUR3dHNFRixDNER0dHNFQSxzQ0FDRSx3QkFBeUIsQ0FDekIsNEI1RHd0c0VGLEM0RHB0c0VBLG9CQUNFLEdBRUUsU0FBVSxDQURWLDRDNUR3dHNFRixDNERydHNFQSxJQUVFLFNBQVUsQ0FEViw2QzVEd3RzRUYsQzREcnRzRUEsSUFDRSw0QzVEdXRzRUYsQzREcnRzRUEsSUFDRSw4QzVEdXRzRUYsQzREcnRzRUEsR0FDRSwyQzVEdXRzRUYsQ0FDRixDNERydHNFQSxvQkFDRSxHQUVFLFNBQVUsQ0FEViw2QzVEd3RzRUYsQzREcnRzRUEsSUFFRSxTQUFVLENBRFYsNEM1RHd0c0VGLEM0RHJ0c0VBLElBQ0UsK0M1RHV0c0VGLEM0RHJ0c0VBLElBQ0UsNkM1RHV0c0VGLEM0RHJ0c0VBLEdBQ0UsMkM1RHV0c0VGLENBQ0YsQzREbnRzRUEscUJBQ0UsR0FDRSwyQzVEc3RzRUYsQzREcHRzRUEsSUFDRSw4QzVEc3RzRUYsQzREcHRzRUEsSUFDRSw4QzVEc3RzRUYsQzREcHRzRUEsSUFFRSxTQUFVLENBRFYsNkM1RHV0c0VGLEM0RHB0c0VBLEdBRUUsU0FBVSxDQURWLDRDNUR1dHNFRixDQUNGLEM0RHB0c0VBLHFCQUNFLEdBQ0UsMkM1RHN0c0VGLEM0RHB0c0VBLElBQ0UsNkM1RHN0c0VGLEM0RHB0c0VBLElBQ0UsNkM1RHN0c0VGLEM0RHB0c0VBLElBRUUsU0FBVSxDQURWLDRDNUR1dHNFRixDNERwdHNFQSxHQUVFLFNBQVUsQ0FEViw2QzVEdXRzRUYsQ0FDRixDNEQ5c3NFQSxvQkFDRSxxQjVEbXRzRUYsQzREanRzRUEscUJBQ0Usc0I1RG10c0VGLEM0RGp0c0VBLGtCQUNFLEdBQ0UsU0FBVSxDQUNWLGtCNURtdHNFRixDNERqdHNFQSxHQUNFLFNBQVUsQ0FDVixrQjVEbXRzRUYsQ0FDRixDNERqdHNFQSxtQkFDRSxHQUNFLFNBQVUsQ0FDVixrQjVEbXRzRUYsQzREanRzRUEsR0FDRSxTQUFVLENBQ1Ysa0I1RG10c0VGLENBQ0YsQzREdHNzRUEsa0JBQ0UsdUJBQXlCLENBQ3pCLG9CNUQ4c3NFRixDNEQ1c3NFQSxrQkFDRSx1QkFBeUIsQ0FDekIsb0I1RDhzc0VGLEM0RDVzc0VBLG1CQUNFLHVCQUF5QixDQUN6QixxQjVEOHNzRUYsQzRENXNzRUEsaUJBQ0UsdUJBQXlCLENBQ3pCLG1CNUQ4c3NFRixDNEQ1c3NFQSxrQkFDRSxzQkFBeUIsQ0FDekIsb0I1RDhzc0VGLEM0RDVzc0VBLG1CQUNFLHVCQUF5QixDQUN6QixxQjVEOHNzRUYsQzRENXNzRUEsaUJBQ0UscUJBQTBCLENBSTFCLG1CQUFvQixDQUhwQixtRDVEOHNzRUYsQzREdHNzRUEsaUJBQ0UsVUFDRSxTNUQ4c3NFRixDNEQ1c3NFQSxRQUNFLFM1RCtzc0VGLENBQ0YsQzREM3NzRUEsaUJBQ0UsTUFDRSx1QjVEK3NzRUYsQzREN3NzRUEsb0JBQ0UsMkI1RG10c0VGLEM0RGp0c0VBLGdCQUNFLDBCNURzdHNFRixDQUNGLEM0RGx0c0VBLGtCQUNFLGtCQUNFLHVCNUR5dHNFRixDNER2dHNFQSxJQUNFLDJCNUR5dHNFRixDNER2dHNFQSxJQUNFLDJCNUR5dHNFRixDQUNGLEM0RHJ0c0VBLGdCQUNFLEdBQ0Usa0I1RHd0c0VGLEM0RHR0c0VBLFFBQ0UsaUM1RHl0c0VGLEM0RHZ0c0VBLGdCQUNFLGlDNUQ0dHNFRixDNEQxdHNFQSxZQUNFLGtDNUQ4dHNFRixDNEQ1dHNFQSxHQUNFLDRCNUQ4dHNFRixDQUNGLEM0RDF0c0VBLGlCQUNFLEdBRUUsU0FBVSxDQURWLGtCNUQ4dHNFRixDNEQzdHNFQSxJQUVFLFVBQVksQ0FEWixtQjVEOHRzRUYsQzREM3RzRUEsR0FFRSxTQUFVLENBRFYsa0I1RDh0c0VGLENBQ0YsQzREeHRzRUEsa0JBQ0UsR0FDRSxtQjVEMnRzRUYsQzREenRzRUEsSUFDRSw2QjVEMnRzRUYsQzREenRzRUEsSUFDRSw2QjVEMnRzRUYsQzREenRzRUEsSUFDRSw2QjVEMnRzRUYsQzREenRzRUEsSUFDRSw2QjVEMnRzRUYsQzREenRzRUEsSUFDRSw2QjVEMnRzRUYsQzREenRzRUEsR0FDRSxtQjVEMnRzRUYsQ0FDRixDNER2dHNFQSxnQkFDRSxHQUNFLHdCNUQwdHNFRixDNER4dHNFQSxJQUNFLHdCNUQwdHNFRixDNER4dHNFQSxHQUNFLHdCNUQwdHNFRixDQUNGO0FBSUE7OztFQUdFLEM2RDdwdUVGLFdBQ0UsdUJBQTBCLENBUzFCLGlCQUFrQixDQURsQixlQUFtQixDQVBuQiwyQ0FDQSwrVDdEbXF1RUYsQ0t6cXVFQyxJeURRQyxrQ0FBbUMsQ0FDbkMsaUNBQWtDLENBTGxDLG9CQUFxQixDQUNyQiw2Q0FDQSxpQkFBa0IsQ0FDbEIsbUI5RDBxdUVGLENLanJ1RUMsTzBES0MsdUJBQ0Esa0JBQ0EsbUIvRGdydUVGLENLdnJ1RUMsTzBEU3NCLGEvRGlydUV2QixDSzFydUVDLE8wRFVzQixhL0RtcnVFdkIsQ0s3cnVFQyxPMERXc0IsYS9EcXJ1RXZCLENLaHN1RUMsTzBEWXNCLGEvRHVydUV2QixDS25zdUVDLE8yRElDLGlCQUFrQixDQURsQixrQmhFb3N1RUYsQ0t2c3VFQyxPNERNQyxvQkFBcUIsQ0FEckIseUJBREEsY2pFd3N1RUYsQ0s1c3VFQyxVNERPUSxpQmpFd3N1RVQsQ0svc3VFQyxPNERXQyxtQkFEQSxpQkFBa0IsQ0FJbEIsaUJBQWtCLENBRGxCLGdCQURBLGtCakUwc3VFRixDS3R0dUVDLGE0RGdCRyxrQmpFeXN1RUosQ0t6dHVFQyxXNkRLQyx3QkFDQSxtQkFGQSx3QmxFMHR1RUYsQ0s5dHVFQyxjNkRTNkIsVWxFd3R1RTlCLENLanV1RUMsZTZEVThCLFdsRTB0dUUvQixDS3B1dUVDLGlCNkRhZ0MsaUJsRTB0dUVqQyxDS3Z1dUVDLGtCNkRjaUMsZ0JsRTR0dUVsQyxDa0V4dHVFQSxZQUFjLFdsRTR0dUVkLENrRTN0dUVBLFdBQWEsVWxFOHR1RWIsQ2tFM3R1RUUsY0FBYyxpQmxFOHR1RWhCLENrRTd0dUVFLGVBQWUsZ0JsRWd1dUVqQixDS3Z2dUVDLFM4RElDLDRDQUE2QyxDQUNyQyxvQ25Fc3Z1RVYsQ0szdnVFQyxVOERTQyw4Q0FBK0MsQ0FDdkMsc0NuRXF2dUVWLENtRWx2dUVBLDJCQUNFLEdBQ0UsOEJBQStCLENBQ3ZCLHNCbkVvdnVFVixDbUVsdnVFQSxHQUNFLGdDQUFpQyxDQUN6Qix3Qm5Fb3Z1RVYsQ0FDRixDbUVqdnVFQSxtQkFDRSxHQUNFLDhCQUErQixDQUN2QixzQm5FbXZ1RVYsQ21FanZ1RUEsR0FDRSxnQ0FBaUMsQ0FDekIsd0JuRW12dUVWLENBQ0YsQ0tueHVFQyxjK0RjQyxzRUFDQSxnQ0FDSSw0QkFDSSx1QnBFd3d1RVYsQ0t6eHVFQyxlK0RjQyxzRUFDQSxpQ0FDSSw2QkFDSSx3QnBFOHd1RVYsQ0sveHVFQyxlK0RjQyxzRUFDQSxpQ0FDSSw2QkFDSSx3QnBFb3h1RVYsQ0tyeXVFQyxvQitEcUJDLGdGQUNBLDZCQUNJLHlCQUNJLG9CcEVteHVFVixDSzN5dUVDLGtCK0RxQkMsZ0ZBQ0EsNkJBQ0kseUJBQ0ksb0JwRXl4dUVWLENLanp1RUMsZ0hnRWtCQyxXckVzeXVFRixDS3h6dUVDLFVpRUtDLG9CQUFxQixDQUVyQixVQUFXLENBQ1gsZUFBZ0IsQ0FKaEIsaUJBQWtCLENBS2xCLHFCQUFzQixDQUh0QixTdEUwenVFRixDS2gwdUVDLDBCaUVhQyxNQUFPLENBRFAsaUJBQWtCLENBR2xCLGlCQUFrQixDQURsQixVdEV5enVFRixDS3YwdUVDLGFpRWlCNEIsbUJ0RXl6dUU3QixDSzEwdUVDLGFpRWtCNEIsYXRFMnp1RTdCLENLNzB1RUMsWWlFbUIyQixVdEU2enVFNUIsQ0toMXVFQyxpQmtFR2dDLGV2RWsxdUVqQyxDS3IxdUVDLGlCa0VJZ0MsZXZFbzF1RWpDLENLeDF1RUMsa0JrRUtpQyxldkVzMXVFbEMsQ0szMXVFQyxzQmtFTXFDLGV2RXcxdUV0QyxDSzkxdUVDLGlCa0VPZ0MsZXZFMDF1RWpDLENLajJ1RUMsZ0JrRVErQixldkU0MXVFaEMsQ0twMnVFQyxrQmtFU2lDLGV2RTgxdUVsQyxDS3YydUVDLGdCa0VVK0IsZXZFZzJ1RWhDLENLMTJ1RUMsZ0JrRVcrQixldkVrMnVFaEMsQ0s3MnVFQyxvQmtFWW1DLGV2RW8ydUVwQyxDS2gzdUVDLGNrRWE2QixldkVzMnVFOUIsQ0tuM3VFQyxtQmtFY2tDLGV2RXcydUVuQyxDS3QzdUVDLGlCa0VlZ0MsZXZFMDJ1RWpDLENLejN1RUMsb0RrRWtCZ0MsZXZFNDJ1RWpDLENLOTN1RUMsdUJrRW1Cc0MsZXZFODJ1RXZDLENLajR1RUMsd0JrRW9CdUMsZXZFZzN1RXhDLENLcDR1RUMscUJrRXFCb0MsZXZFazN1RXJDLENLdjR1RUMsa0JrRXNCaUMsZXZFbzN1RWxDLENLMTR1RUMsK0JrRXdCOEIsZXZFczN1RS9CLENLOTR1RUMsbUJrRXlCa0MsZXZFdzN1RW5DLENLajV1RUMsZ0JrRTBCK0IsZXZFMDN1RWhDLENLcDV1RUMsa0JrRTJCaUMsZXZFNDN1RWxDLENLdjV1RUMsbUJrRTRCa0MsZXZFODN1RW5DLENLMTV1RUMsZ0JrRTZCK0IsZXZFZzR1RWhDLENLNzV1RUMsb0JrRThCbUMsZXZFazR1RXBDLENLaDZ1RUMsK0JrRStCOEMsZXZFbzR1RS9DLENLbjZ1RUMsNkJrRWdDNEMsZXZFczR1RTdDLENLdDZ1RUMsaUJrRWlDZ0MsZXZFdzR1RWpDLENLejZ1RUMseUJrRWtDd0MsZXZFMDR1RXpDLENLNTZ1RUMsMENrRW9DaUMsZXZFNDR1RWxDLENLaDd1RUMsbUJrRXFDa0MsZXZFODR1RW5DLENLbjd1RUMsb0JrRXNDbUMsZXZFZzV1RXBDLENLdDd1RUMsZ0JrRXVDK0IsZXZFazV1RWhDLENLejd1RUMsZ0JrRXdDK0IsZXZFbzV1RWhDLENLNTd1RUMsc0JrRXlDcUMsZXZFczV1RXRDLENLLzd1RUMsc0JrRTBDcUMsZXZFdzV1RXRDLENLbDh1RUMsdUJrRTJDc0MsZXZFMDV1RXZDLENLcjh1RUMscUJrRTRDb0MsZXZFNDV1RXJDLENLeDh1RUMsa0JrRTZDaUMsZXZFODV1RWxDLENLMzh1RUMsbUJrRThDa0MsZXZFZzZ1RW5DLENLOTh1RUMsZWtFK0M4QixldkVrNnVFL0IsQ0tqOXVFQyxnQmtFZ0QrQixldkVvNnVFaEMsQ0twOXVFQyxnQmtFaUQrQixldkVzNnVFaEMsQ0t2OXVFQyxvQmtFa0RtQyxldkV3NnVFcEMsQ0sxOXVFQyxpQmtFbURnQyxldkUwNnVFakMsQ0s3OXVFQyxrQmtFb0RpQyxldkU0NnVFbEMsQ0toK3VFQyxnQmtFcUQrQixldkU4NnVFaEMsQ0tuK3VFQyxnQmtFc0QrQixldkVnN3VFaEMsQ0t0K3VFQyxrQmtFdURpQyxldkVrN3VFbEMsQ0t6K3VFQyx1QmtFd0RzQyxldkVvN3VFdkMsQ0s1K3VFQyxzQmtFeURxQyxldkVzN3VFdEMsQ0svK3VFQyxzQmtFMERxQyxldkV3N3VFdEMsQ0tsL3VFQyx3QmtFMkR1QyxldkUwN3VFeEMsQ0tyL3VFQyx1QmtFNERzQyxldkU0N3VFdkMsQ0t4L3VFQyx5QmtFNkR3QyxldkU4N3VFekMsQ0szL3VFQyxnQmtFOEQrQixldkVnOHVFaEMsQ0s5L3VFQyxxQ2tFZ0VrQyxldkVrOHVFbkMsQ0tsZ3ZFQyxrQmtFaUVpQyxldkVvOHVFbEMsQ0tyZ3ZFQyx3QmtFa0V1QyxldkVzOHVFeEMsQ0t4Z3ZFQyx1RGtFcUVvQyxldkV3OHVFckMsQ0s3Z3ZFQyxrQmtFc0VpQyxldkUwOHVFbEMsQ0toaHZFQyxzQmtFdUVxQyxldkU0OHVFdEMsQ0tuaHZFQyxrQmtFd0VpQyxldkU4OHVFbEMsQ0t0aHZFQyxnQmtFeUUrQixldkVnOXVFaEMsQ0t6aHZFQywyQ2tFMkUwQyxldkVrOXVFM0MsQ0s3aHZFQywwQmtFNEV5QyxldkVvOXVFMUMsQ0toaXZFQywwQmtFNkV5QyxldkVzOXVFMUMsQ0tuaXZFQyxrQmtFOEVpQyxldkV3OXVFbEMsQ0t0aXZFQyx5QmtFK0V3QyxldkUwOXVFekMsQ0t6aXZFQyx5QmtFZ0Z3QyxldkU0OXVFekMsQ0s1aXZFQyxvQmtFaUZtQyxldkU4OXVFcEMsQ0svaXZFQyxnQmtFa0YrQixldkVnK3VFaEMsQ0tsanZFQyxpQmtFbUZnQyxldkVrK3VFakMsQ0tyanZFQyxnQmtFb0YrQixldkVvK3VFaEMsQ0t4anZFQyxtQmtFcUZrQyxldkVzK3VFbkMsQ0szanZFQyx3QmtFc0Z1QyxldkV3K3VFeEMsQ0s5anZFQyx3QmtFdUZ1QyxldkUwK3VFeEMsQ0tqa3ZFQyxpQmtFd0ZnQyxldkU0K3VFakMsQ0twa3ZFQyx3QmtFeUZ1QyxldkU4K3VFeEMsQ0t2a3ZFQyx5QmtFMEZ3QyxldkVnL3VFekMsQ0sxa3ZFQyx1QmtFMkZzQyxldkVrL3VFdkMsQ0s3a3ZFQyx3QmtFNEZ1QyxldkVvL3VFeEMsQ0tobHZFQyx3QmtFNkZ1QyxldkVzL3VFeEMsQ0tubHZFQyx3QmtFOEZ1QyxldkV3L3VFeEMsQ0t0bHZFQywyQmtFK0YwQyxldkUwL3VFM0MsQ0t6bHZFQyx1QmtFZ0dzQyxldkU0L3VFdkMsQ0s1bHZFQyxzQmtFaUdxQyxldkU4L3VFdEMsQ0svbHZFQywwQmtFa0d5QyxldkVnZ3ZFMUMsQ0tsbXZFQywwQmtFbUd5QyxldkVrZ3ZFMUMsQ0tybXZFQyxla0VvRzhCLGV2RW9ndkUvQixDS3htdkVDLHNCa0VxR3FDLGV2RXNndkV0QyxDSzNtdkVDLHVCa0VzR3NDLGV2RXdndkV2QyxDSzltdkVDLG9Ca0V1R21DLGV2RTBndkVwQyxDS2pudkVDLHNCa0V3R3FDLGV2RTRndkV0QyxDS3BudkVDLHlDa0UwR2dDLGV2RThndkVqQyxDS3hudkVDLGtCa0UyR2lDLGV2RWdodkVsQyxDSzNudkVDLG9Ca0U0R21DLGV2RWtodkVwQyxDSzludkVDLGdCa0U2RytCLGV2RW9odkVoQyxDS2pvdkVDLGlCa0U4R2dDLGV2RXNodkVqQyxDS3BvdkVDLG9Ca0UrR21DLGV2RXdodkVwQyxDS3ZvdkVDLDhCa0VnSDZDLGV2RTBodkU5QyxDSzFvdkVDLGdCa0VpSCtCLGV2RTRodkVoQyxDSzdvdkVDLGdCa0VrSCtCLGV2RThodkVoQyxDS2hwdkVDLGdCa0VtSCtCLGV2RWdpdkVoQyxDS25wdkVDLGVrRW9IOEIsZXZFa2l2RS9CLENLdHB2RUMscUJrRXFIb0MsZXZFb2l2RXJDLENLenB2RUMsbURrRXVIK0MsZXZFc2l2RWhELENLN3B2RUMsaUJrRXdIZ0MsZXZFd2l2RWpDLENLaHF2RUMsb0JrRXlIbUMsZXZFMGl2RXBDLENLbnF2RUMsa0JrRTBIaUMsZXZFNGl2RWxDLENLdHF2RUMsbUJrRTJIa0MsZXZFOGl2RW5DLENLenF2RUMsa0JrRTRIaUMsZXZFZ2p2RWxDLENLNXF2RUMsc0JrRTZIcUMsZXZFa2p2RXRDLENLL3F2RUMsd0JrRThIdUMsZXZFb2p2RXhDLENLbHJ2RUMsbUJrRStIa0MsZXZFc2p2RW5DLENLcnJ2RUMseUJrRWdJd0MsZXZFd2p2RXpDLENLeHJ2RUMsa0JrRWlJaUMsZXZFMGp2RWxDLENLM3J2RUMsdUJrRWtJc0MsZXZFNGp2RXZDLENLOXJ2RUMsb0JrRW1JbUMsZXZFOGp2RXBDLENLanN2RUMsb0JrRW9JbUMsZXZFZ2t2RXBDLENLcHN2RUMsNENrRXNJb0MsZXZFa2t2RXJDLENLeHN2RUMsMEJrRXVJeUMsZXZFb2t2RTFDLENLM3N2RUMsMkJrRXdJMEMsZXZFc2t2RTNDLENLOXN2RUMsd0JrRXlJdUMsZXZFd2t2RXhDLENLanR2RUMsZWtFMEk4QixldkUwa3ZFL0IsQ0twdHZFQyxpQ2tFNEkrQixldkU0a3ZFaEMsQ0t4dHZFQyxvQmtFNkltQyxldkU4a3ZFcEMsQ0szdHZFQyx1QmtFOElzQyxldkVnbHZFdkMsQ0s5dHZFQyx5QmtFK0l3QyxldkVrbHZFekMsQ0tqdXZFQyxxQmtFZ0pvQyxldkVvbHZFckMsQ0twdXZFQyxtQmtFaUprQyxldkVzbHZFbkMsQ0t2dXZFQyxvQmtFa0ptQyxldkV3bHZFcEMsQ0sxdXZFQywyQmtFbUowQyxldkUwbHZFM0MsQ0s3dXZFQyxzQmtFb0pxQyxldkU0bHZFdEMsQ0todnZFQyx5QmtFcUp3QyxldkU4bHZFekMsQ0tudnZFQyxtQmtFc0prQyxldkVnbXZFbkMsQ0t0dnZFQyxrQmtFdUppQyxldkVrbXZFbEMsQ0t6dnZFQyx5QmtFd0p3QyxldkVvbXZFekMsQ0s1dnZFQyxrQmtFeUppQyxldkVzbXZFbEMsQ0svdnZFQyxtQmtFMEprQyxldkV3bXZFbkMsQ0tsd3ZFQyxpQmtFMkpnQyxldkUwbXZFakMsQ0tyd3ZFQyxvQmtFNEptQyxldkU0bXZFcEMsQ0t4d3ZFQyxzQmtFNkpxQyxldkU4bXZFdEMsQ0szd3ZFQyx3QmtFOEp1QyxldkVnbnZFeEMsQ0s5d3ZFQyxtQmtFK0prQyxldkVrbnZFbkMsQ0tqeHZFQywwQ2tFaUttQyxldkVvbnZFcEMsQ0tyeHZFQyxrQmtFa0tpQyxldkVzbnZFbEMsQ0t4eHZFQyxrQmtFbUtpQyxldkV3bnZFbEMsQ0szeHZFQyx1QmtFb0tzQyxldkUwbnZFdkMsQ0s5eHZFQywrQmtFc0s4QixldkU0bnZFL0IsQ0tseXZFQyxpQmtFdUtnQyxldkU4bnZFakMsQ0tyeXZFQyxvQmtFd0ttQyxldkVnb3ZFcEMsQ0t4eXZFQyxnQmtFeUsrQixldkVrb3ZFaEMsQ0szeXZFQyx1QmtFMEtzQyxldkVvb3ZFdkMsQ0s5eXZFQyx3QmtFMkt1QyxldkVzb3ZFeEMsQ0tqenZFQyx1QmtFNEtzQyxldkV3b3ZFdkMsQ0twenZFQyxxQmtFNktvQyxldkUwb3ZFckMsQ0t2enZFQyx1QmtFOEtzQyxldkU0b3ZFdkMsQ0sxenZFQyw2QmtFK0s0QyxldkU4b3ZFN0MsQ0s3enZFQyw4QmtFZ0w2QyxldkVncHZFOUMsQ0toMHZFQywyQmtFaUwwQyxldkVrcHZFM0MsQ0tuMHZFQyw2QmtFa0w0QyxldkVvcHZFN0MsQ0t0MHZFQyxpQmtFbUxnQyxldkVzcHZFakMsQ0t6MHZFQyxrQmtFb0xpQyxldkV3cHZFbEMsQ0s1MHZFQyxpQmtFcUxnQyxldkUwcHZFakMsQ0svMHZFQyxrQmtFc0xpQyxldkU0cHZFbEMsQ0tsMXZFQyxxQmtFdUxvQyxldkU4cHZFckMsQ0tyMXZFQyxzQmtFd0xxQyxldkVncXZFdEMsQ0t4MXZFQyxrQ2tFMExnQyxldkVrcXZFakMsQ0s1MXZFQyxpQ2tFNEwrQixldkVvcXZFaEMsQ0toMnZFQyxpQmtFNkxnQyxldkVzcXZFakMsQ0tuMnZFQyxpQmtFOExnQyxldkV3cXZFakMsQ0t0MnZFQyxtQ2tFZ01tQyxldkUwcXZFcEMsQ0sxMnZFQyxtQ2tFa01rQyxldkU0cXZFbkMsQ0s5MnZFQyxxQmtFbU1vQyxldkU4cXZFckMsQ0tqM3ZFQyxvQ2tFcU1tQyxldkVncnZFcEMsQ0tyM3ZFQyxrQmtFc01pQyxldkVrcnZFbEMsQ0t4M3ZFQyxzRGtFeU0rQixldkVvcnZFaEMsQ0s3M3ZFQyxtQmtFME1rQyxldkVzcnZFbkMsQ0toNHZFQyxtQmtFMk1rQyxldkV3cnZFbkMsQ0tuNHZFQyx5QmtFNE13QyxldkUwcnZFekMsQ0t0NHZFQyxxQmtFNk1vQyxldkU0cnZFckMsQ0t6NHZFQyxpQmtFOE1nQyxldkU4cnZFakMsQ0s1NHZFQyxpQmtFK01nQyxldkVnc3ZFakMsQ0svNHZFQyxpQmtFZ05nQyxldkVrc3ZFakMsQ0tsNXZFQyxxQmtFaU5vQyxldkVvc3ZFckMsQ0tyNXZFQyw0QmtFa04yQyxldkVzc3ZFNUMsQ0t4NXZFQyw4QmtFbU42QyxldkV3c3ZFOUMsQ0szNXZFQyx1QmtFb05zQyxldkUwc3ZFdkMsQ0s5NXZFQyxpQmtFcU5nQyxldkU0c3ZFakMsQ0tqNnZFQyxzQmtFc05xQyxldkU4c3ZFdEMsQ0twNnZFQyxvQmtFdU5tQyxldkVndHZFcEMsQ0t2NnZFQyxzQmtFd05xQyxldkVrdHZFdEMsQ0sxNnZFQyx1QmtFeU5zQyxldkVvdHZFdkMsQ0s3NnZFQyxtQmtFME5rQyxldkVzdHZFbkMsQ0toN3ZFQyxvQ2tFNE4rQixldkV3dHZFaEMsQ0twN3ZFQywwQ2tFOE5vQyxldkUwdHZFckMsQ0t4N3ZFQyx1Q2tFZ09tQyxldkU0dHZFcEMsQ0s1N3ZFQyxvQmtFaU9tQyxldkU4dHZFcEMsQ0svN3ZFQyxvQmtFa09tQyxldkVndXZFcEMsQ0tsOHZFQyx1Q2tFb08rQixldkVrdXZFaEMsQ0t0OHZFQyxrQ2tFc09nQyxldkVvdXZFakMsQ0sxOHZFQywyQ2tFd09xQyxldkVzdXZFdEMsQ0s5OHZFQyxxQmtFeU9vQyxldkV3dXZFckMsQ0tqOXZFQyxzQmtFME9xQyxldkUwdXZFdEMsQ0twOXZFQyxpQ2tFNE8rQixldkU0dXZFaEMsQ0t4OXZFQyxtQmtFNk9rQyxldkU4dXZFbkMsQ0szOXZFQyxvQmtFOE9tQyxldkVndnZFcEMsQ0s5OXZFQyxzQ2tFZ1BvQyxldkVrdnZFckMsQ0tsK3ZFQyx1QmtFaVBzQyxldkVvdnZFdkMsQ0tyK3ZFQyxvQmtFa1BtQyxldkVzdnZFcEMsQ0t4K3ZFQywwQmtFbVB5QyxldkV3dnZFMUMsQ0szK3ZFQyx3QmtFb1B1QyxldkUwdnZFeEMsQ0s5K3ZFQyxtQmtFcVBrQyxldkU0dnZFbkMsQ0tqL3ZFQyx1QmtFc1BzQyxldkU4dnZFdkMsQ0twL3ZFQyxvQmtFdVBtQyxldkVnd3ZFcEMsQ0t2L3ZFQyxrQmtFd1BpQyxldkVrd3ZFbEMsQ0sxL3ZFQyxrQmtFeVBpQyxldkVvd3ZFbEMsQ0s3L3ZFQyxtQmtFMFBrQyxldkVzd3ZFbkMsQ0toZ3dFQyx1QmtFMlBzQyxldkV3d3ZFdkMsQ0tuZ3dFQyxzQmtFNFBxQyxldkUwd3ZFdEMsQ0t0Z3dFQyxzQmtFNlBxQyxldkU0d3ZFdEMsQ0t6Z3dFQyxxQmtFOFBvQyxldkU4d3ZFckMsQ0s1Z3dFQyxrQmtFK1BpQyxldkVneHZFbEMsQ0svZ3dFQyx1QmtFZ1FzQyxldkVreHZFdkMsQ0tsaHdFQyxnQmtFaVErQixldkVveHZFaEMsQ0tyaHdFQyxvQmtFa1FtQyxldkVzeHZFcEMsQ0t4aHdFQyx1QmtFbVFzQyxldkV3eHZFdkMsQ0szaHdFQyw2QmtFb1E0QyxldkUweHZFN0MsQ0s5aHdFQyw4QmtFcVE2QyxldkU0eHZFOUMsQ0tqaXdFQywyQmtFc1EwQyxldkU4eHZFM0MsQ0twaXdFQyw2QmtFdVE0QyxldkVneXZFN0MsQ0t2aXdFQyxzQmtFd1FxQyxldkVreXZFdEMsQ0sxaXdFQyx1QmtFeVFzQyxldkVveXZFdkMsQ0s3aXdFQyxvQmtFMFFtQyxldkVzeXZFcEMsQ0toandFQyxzQmtFMlFxQyxldkV3eXZFdEMsQ0tuandFQyxtQmtFNFFrQyxldkUweXZFbkMsQ0t0andFQyxrQmtFNlFpQyxldkU0eXZFbEMsQ0t6andFQyxrQmtFOFFpQyxldkU4eXZFbEMsQ0s1andFQywwQ2tFZ1JpQyxldkVnenZFbEMsQ0toa3dFQyxvQmtFaVJtQyxldkVrenZFcEMsQ0tua3dFQyxzQmtFa1JxQyxldkVvenZFdEMsQ0t0a3dFQyx1QmtFbVJzQyxldkVzenZFdkMsQ0t6a3dFQyxtQmtFb1JrQyxldkV3enZFbkMsQ0s1a3dFQyxrQmtFcVJpQyxldkUwenZFbEMsQ0sva3dFQyx1Q2tFdVJnQyxldkU0enZFakMsQ0tubHdFQyxzQmtFd1JxQyxldkU4enZFdEMsQ0t0bHdFQyxvQmtFeVJtQyxldkVnMHZFcEMsQ0t6bHdFQyx5QmtFMFJ3QyxldkVrMHZFekMsQ0s1bHdFQyxtQmtFMlJrQyxldkVvMHZFbkMsQ0svbHdFQyxtQmtFNFJrQyxldkVzMHZFbkMsQ0tsbXdFQyxpQmtFNlJnQyxldkV3MHZFakMsQ0tybXdFQyxtQmtFOFJrQyxldkUwMHZFbkMsQ0t4bXdFQyxzQmtFK1JxQyxldkU0MHZFdEMsQ0szbXdFQyxrQmtFZ1NpQyxldkU4MHZFbEMsQ0s5bXdFQywwQmtFaVN5QyxldkVnMXZFMUMsQ0tqbndFQyxvQmtFa1NtQyxldkVrMXZFcEMsQ0twbndFQyxnQmtFbVMrQixldkVvMXZFaEMsQ0t2bndFQywrQ2tFcVNvQyxldkVzMXZFckMsQ0szbndFQyw0RWtFd1NzQyxldkV3MXZFdkMsQ0tob3dFQywwQmtFeVN5QyxldkUwMXZFMUMsQ0tub3dFQyxnQmtFMFMrQixldkU0MXZFaEMsQ0t0b3dFQyxxQmtFMlNvQyxldkU4MXZFckMsQ0t6b3dFQywwQ2tFNlN1QyxldkVnMnZFeEMsQ0s3b3dFQyxvQmtFOFNtQyxldkVrMnZFcEMsQ0tocHdFQyxnQmtFK1MrQixldkVvMnZFaEMsQ0tucHdFQyx1QmtFZ1RzQyxldkVzMnZFdkMsQ0t0cHdFQyx1QmtFaVRzQyxldkV3MnZFdkMsQ0t6cHdFQyxxQmtFa1RvQyxldkUwMnZFckMsQ0s1cHdFQyxrQmtFbVRpQyxldkU0MnZFbEMsQ0svcHdFQyx3QmtFb1R1QyxldkU4MnZFeEMsQ0tscXdFQyxzQmtFcVRxQyxldkVnM3ZFdEMsQ0tycXdFQyw0QmtFc1QyQyxldkVrM3ZFNUMsQ0t4cXdFQyxrQmtFdVRpQyxldkVvM3ZFbEMsQ0szcXdFQyxzQmtFd1RxQyxldkVzM3ZFdEMsQ0s5cXdFQyw2QmtFeVQ0QyxldkV3M3ZFN0MsQ0tqcndFQyxrQmtFMFRpQyxldkUwM3ZFbEMsQ0twcndFQyxrQmtFMlRpQyxldkU0M3ZFbEMsQ0t2cndFQywrQmtFNFQ4QyxldkU4M3ZFL0MsQ0sxcndFQyxnQ2tFNlQrQyxldkVnNHZFaEQsQ0s3cndFQyw2QmtFOFQ0QyxldkVrNHZFN0MsQ0toc3dFQywrQmtFK1Q4QyxldkVvNHZFL0MsQ0tuc3dFQyxpQmtFZ1VnQyxldkVzNHZFakMsQ0t0c3dFQyxnQmtFaVUrQixldkV3NHZFaEMsQ0t6c3dFQyxrQmtFa1VpQyxldkUwNHZFbEMsQ0s1c3dFQyxzQmtFbVVxQyxldkU0NHZFdEMsQ0svc3dFQyxvQmtFb1VtQyxldkU4NHZFcEMsQ0tsdHdFQyxzQmtFcVVxQyxldkVnNXZFdEMsQ0tydHdFQyxzQmtFc1VxQyxldkVrNXZFdEMsQ0t4dHdFQyxzQmtFdVVxQyxldkVvNXZFdEMsQ0szdHdFQyx1QmtFd1VzQyxldkVzNXZFdkMsQ0s5dHdFQyxrQmtFeVVpQyxldkV3NXZFbEMsQ0tqdXdFQyx3QmtFMFV1QyxldkUwNXZFeEMsQ0twdXdFQywwQmtFMlV5QyxldkU0NXZFMUMsQ0t2dXdFQyxvQmtFNFVtQyxldkU4NXZFcEMsQ0sxdXdFQyxzQmtFNlVxQyxldkVnNnZFdEMsQ0s3dXdFQyx3QmtFOFV1QyxldkVrNnZFeEMsQ0todndFQyx5QmtFK1V3QyxldkVvNnZFekMsQ0tudndFQyxnQ2tFZ1YrQyxldkVzNnZFaEQsQ0t0dndFQyx3QmtFaVZ1QyxldkV3NnZFeEMsQ0t6dndFQyxtQmtFa1ZrQyxldkUwNnZFbkMsQ0s1dndFQyxzRGtFb1Y4QyxldkU0NnZFL0MsQ0tod3dFQyxrRGtFc1Y0QyxldkU4NnZFN0MsQ0twd3dFQyx3RGtFd1YrQyxldkVnN3ZFaEQsQ0t4d3dFQywrQmtFMFY4QixldkVrN3ZFL0IsQ0s1d3dFQyxla0UyVjhCLGV2RW83dkUvQixDSy93d0VDLGlDa0U2VjhCLGV2RXM3dkUvQixDS254d0VDLGdDa0UrVjhCLGV2RXc3dkUvQixDS3Z4d0VDLDREa0VtVzhCLGV2RTA3dkUvQixDSzd4d0VDLGtEa0VzVzhCLGV2RTQ3dkUvQixDS2x5d0VDLDhCa0V3VzhCLGV2RTg3dkUvQixDS3R5d0VDLGtDa0UwVzhCLGV2RWc4dkUvQixDSzF5d0VDLGdCa0UyVytCLGV2RWs4dkVoQyxDSzd5d0VDLHFCa0U0V29DLGV2RW84dkVyQyxDS2h6d0VDLDBCa0U2V3lDLGV2RXM4dkUxQyxDS256d0VDLDJCa0U4VzBDLGV2RXc4dkUzQyxDS3R6d0VDLDJCa0UrVzBDLGV2RTA4dkUzQyxDS3p6d0VDLDRCa0VnWDJDLGV2RTQ4dkU1QyxDSzV6d0VDLDRCa0VpWDJDLGV2RTg4dkU1QyxDSy96d0VDLDZCa0VrWDRDLGV2RWc5dkU3QyxDS2wwd0VDLHFCa0VtWG9DLGV2RWs5dkVyQyxDS3Iwd0VDLHVCa0VvWHNDLGV2RW85dkV2QyxDS3gwd0VDLDBCa0VxWHlDLGV2RXM5dkUxQyxDSzMwd0VDLG1Ca0VzWGtDLGV2RXc5dkVuQyxDSzkwd0VDLGdCa0V1WCtCLGV2RTA5dkVoQyxDS2oxd0VDLHVCa0V3WHNDLGV2RTQ5dkV2QyxDS3Axd0VDLHdCa0V5WHVDLGV2RTg5dkV4QyxDS3Yxd0VDLG1Ca0UwWGtDLGV2RWcrdkVuQyxDSzExd0VDLDBCa0UyWHlDLGV2RWsrdkUxQyxDSzcxd0VDLHFCa0U0WG9DLGV2RW8rdkVyQyxDS2gyd0VDLGtCa0U2WGlDLGV2RXMrdkVsQyxDS24yd0VDLGVrRThYOEIsZXZFdyt2RS9CLENLdDJ3RUMscUJrRStYb0MsZXZFMCt2RXJDLENLejJ3RUMsNEJrRWdZMkMsZXZFNCt2RTVDLENLNTJ3RUMsa0JrRWlZaUMsZXZFOCt2RWxDLENLLzJ3RUMseUJrRWtZd0MsZXZFZy92RXpDLENLbDN3RUMsMkJrRW1ZMEMsZXZFay92RTNDLENLcjN3RUMseUJrRW9Zd0MsZXZFby92RXpDLENLeDN3RUMsMkJrRXFZMEMsZXZFcy92RTNDLENLMzN3RUMsNEJrRXNZMkMsZXZFdy92RTVDLENLOTN3RUMsaUJrRXVZZ0MsZXZFMC92RWpDLENLajR3RUMsbUJrRXdZa0MsZXZFNC92RW5DLENLcDR3RUMsbUJrRXlZa0MsZXZFOC92RW5DLENLdjR3RUMsaUJrRTBZZ0MsZXZFZ2d3RWpDLENLMTR3RUMsb0JrRTJZbUMsZXZFa2d3RXBDLENLNzR3RUMsaUJrRTRZZ0MsZXZFb2d3RWpDLENLaDV3RUMsc0JrRTZZcUMsZXZFc2d3RXRDLENLbjV3RUMsa0JrRThZaUMsZXZFd2d3RWxDLENLdDV3RUMsa0JrRStZaUMsZXZFMGd3RWxDLENLejV3RUMsZ0JrRWdaK0IsZXZFNGd3RWhDLENLNTV3RUMsc0NrRWtabUMsZXZFOGd3RXBDLENLaDZ3RUMsaUJrRW1aZ0MsZXZFZ2h3RWpDLENLbjZ3RUMsa0JrRW9aaUMsZXZFa2h3RWxDLENLdDZ3RUMsbUJrRXFaa0MsZXZFb2h3RW5DLENLejZ3RUMsZWtFc1o4QixldkVzaHdFL0IsQ0s1NndFQyxja0V1WjZCLGV2RXdod0U5QixDSy82d0VDLGlCa0V3WmdDLGV2RTBod0VqQyxDS2w3d0VDLGtCa0V5WmlDLGV2RTRod0VsQyxDS3I3d0VDLHFCa0UwWm9DLGV2RThod0VyQyxDS3g3d0VDLDBCa0UyWnlDLGV2RWdpd0UxQyxDSzM3d0VDLGdDa0U0WitDLGV2RWtpd0VoRCxDSzk3d0VDLCtCa0U2WjhDLGV2RW9pd0UvQyxDS2o4d0VDLHNEa0UrWjhDLGV2RXNpd0UvQyxDS3I4d0VDLHdCa0VnYXVDLGV2RXdpd0V4QyxDS3g4d0VDLHNCa0VpYXFDLGV2RTBpd0V0QyxDSzM4d0VDLHdCa0VrYXVDLGV2RTRpd0V4QyxDSzk4d0VDLHVDa0VvYThCLGV2RThpd0UvQixDS2w5d0VDLHlCa0VxYXdDLGV2RWdqd0V6QyxDS3I5d0VDLHlCa0VzYXdDLGV2RWtqd0V6QyxDS3g5d0VDLGlCa0V1YWdDLGV2RW9qd0VqQyxDSzM5d0VDLDJCa0V3YTBDLGV2RXNqd0UzQyxDSzk5d0VDLHFCa0V5YW9DLGV2RXdqd0VyQyxDS2ord0VDLGtCa0UwYWlDLGV2RTBqd0VsQyxDS3Ard0VDLDZEa0U2YXFDLGV2RTRqd0V0QyxDS3ord0VDLGtEa0UrYXlDLGV2RThqd0UxQyxDSzcrd0VDLGlCa0VnYmdDLGV2RWdrd0VqQyxDS2gvd0VDLGtCa0VpYmlDLGV2RWtrd0VsQyxDS24vd0VDLGtCa0VrYmlDLGV2RW9rd0VsQyxDS3Qvd0VDLHlCa0VtYndDLGV2RXNrd0V6QyxDS3ovd0VDLDhCa0VvYjZDLGV2RXdrd0U5QyxDSzUvd0VDLHVCa0VxYnNDLGV2RTBrd0V2QyxDSy8vd0VDLHFCa0VzYm9DLGV2RTRrd0VyQyxDS2xneEVDLGdCa0V1YitCLGV2RThrd0VoQyxDS3JneEVDLHlCa0V3YndDLGV2RWdsd0V6QyxDS3hneEVDLDBCa0V5YnlDLGV2RWtsd0UxQyxDSzNneEVDLGtCa0UwYmlDLGV2RW9sd0VsQyxDSzlneEVDLGtCa0UyYmlDLGV2RXNsd0VsQyxDS2poeEVDLG9Ca0U0Ym1DLGV2RXdsd0VwQyxDS3BoeEVDLGVrRTZiOEIsZXZFMGx3RS9CLENLdmh4RUMsb0JrRThibUMsZXZFNGx3RXBDLENLMWh4RUMsaUJrRStiZ0MsZXZFOGx3RWpDLENLN2h4RUMsZWtFZ2M4QixldkVnbXdFL0IsQ0toaXhFQyxpQmtFaWNnQyxldkVrbXdFakMsQ0tuaXhFQyxnQmtFa2MrQixldkVvbXdFaEMsQ0t0aXhFQyxpQmtFbWNnQyxldkVzbXdFakMsQ0t6aXhFQyxtQmtFb2NrQyxldkV3bXdFbkMsQ0s1aXhFQywwQmtFcWN5QyxldkUwbXdFMUMsQ0svaXhFQyxpQmtFc2NnQyxldkU0bXdFakMsQ0tsanhFQyx3QmtFdWN1QyxldkU4bXdFeEMsQ0tyanhFQyxtQmtFd2NrQyxldkVnbndFbkMsQ0t4anhFQyxxQ2tFMGM4QixldkVrbndFL0IsQ0s1anhFQywrQmtFNGMrQixldkVvbndFaEMsQ0toa3hFQyxnQmtFNmMrQixldkVzbndFaEMsQ0tua3hFQyxtQmtFOGNrQyxldkV3bndFbkMsQ0t0a3hFQyxzQmtFK2NxQyxldkUwbndFdEMsQ0t6a3hFQyxzQmtFZ2RxQyxldkU0bndFdEMsQ0s1a3hFQyxvQmtFaWRtQyxldkU4bndFcEMsQ0sva3hFQyxzQmtFa2RxQyxldkVnb3dFdEMsQ0tsbHhFQyx1QmtFbWRzQyxldkVrb3dFdkMsQ0tybHhFQyx3QmtFb2R1QyxldkVvb3dFeEMsQ0t4bHhFQyw2QmtFcWQ0QyxldkVzb3dFN0MsQ0szbHhFQywwRWtFd2R1QyxldkV3b3dFeEMsQ0tobXhFQyxnRGtFMGR5QyxldkUwb3dFMUMsQ0twbXhFQyxnRGtFNGR1QyxldkU0b3dFeEMsQ0t4bXhFQyxnRGtFOGR1QyxldkU4b3dFeEMsQ0s1bXhFQyx1QmtFK2RzQyxldkVncHdFdkMsQ0svbXhFQyxnQmtFZ2UrQixldkVrcHdFaEMsQ0tsbnhFQyxtQmtFaWVrQyxldkVvcHdFbkMsQ0tybnhFQyxvQmtFa2VtQyxldkVzcHdFcEMsQ0t4bnhFQyx3R2tFdWVvQyxldkV3cHdFckMsQ0svbnhFQywwQmtFd2V5QyxldkUwcHdFMUMsQ0tsb3hFQyxxRGtFMmVnQyxldkU0cHdFakMsQ0t2b3hFQyxnQ2tFNmVpQyxldkU4cHdFbEMsQ0szb3hFQyxzQmtFOGVxQyxldkVncXdFdEMsQ0s5b3hFQyxla0UrZThCLGV2RWtxd0UvQixDS2pweEVDLDJFa0VrZnNDLGV2RW9xd0V2QyxDS3RweEVDLHlCa0VtZndDLGV2RXNxd0V6QyxDS3pweEVDLGNrRW9mNkIsZXZFd3F3RTlCLENLNXB4RUMsb0NrRXNmaUMsZXZFMHF3RWxDLENLaHF4RUMsdUNrRXdmc0MsZXZFNHF3RXZDLENLcHF4RUMsMkNrRTBmd0MsZXZFOHF3RXpDLENLeHF4RUMsbUJrRTJma0MsZXZFZ3J3RW5DLENLM3F4RUMsdUJrRTRmc0MsZXZFa3J3RXZDLENLOXF4RUMsa0JrRTZmaUMsZXZFb3J3RWxDLENLanJ4RUMscUJrRThmb0MsZXZFc3J3RXJDLENLcHJ4RUMsbUJrRStma0MsZXZFd3J3RW5DLENLdnJ4RUMscUJrRWdnQm9DLGV2RTByd0VyQyxDSzFyeEVDLDRCa0VpZ0IyQyxldkU0cndFNUMsQ0s3cnhFQyxnQmtFa2dCK0IsZXZFOHJ3RWhDLENLaHN4RUMsNkNrRW9nQm1DLGV2RWdzd0VwQyxDS3BzeEVDLGVrRXFnQjhCLGV2RWtzd0UvQixDS3ZzeEVDLHNCa0VzZ0JxQyxldkVvc3dFdEMsQ0sxc3hFQyxnQmtFdWdCK0IsZXZFc3N3RWhDLENLN3N4RUMsc0JrRXdnQnFDLGV2RXdzd0V0QyxDS2h0eEVDLGtCa0V5Z0JpQyxldkUwc3dFbEMsQ0tudHhFQyxnQmtFMGdCK0IsZXZFNHN3RWhDLENLdHR4RUMsdUJrRTJnQnNDLGV2RThzd0V2QyxDS3p0eEVDLGdCa0U0Z0IrQixldkVndHdFaEMsQ0s1dHhFQyxzQmtFNmdCcUMsZXZFa3R3RXRDLENLL3R4RUMsa0JrRThnQmlDLGV2RW90d0VsQyxDS2x1eEVDLHlCa0UrZ0J3QyxldkVzdHdFekMsQ0tydXhFQyxtQmtFZ2hCa0MsZXZFd3R3RW5DLENLeHV4RUMseUJrRWloQndDLGV2RTB0d0V6QyxDSzN1eEVDLHVCa0VraEJzQyxldkU0dHdFdkMsQ0s5dXhFQyxtQmtFbWhCa0MsZXZFOHR3RW5DLENLanZ4RUMscUJrRW9oQm9DLGV2RWd1d0VyQyxDS3B2eEVDLHFCa0VxaEJvQyxldkVrdXdFckMsQ0t2dnhFQyxzQmtFc2hCcUMsZXZFb3V3RXRDLENLMXZ4RUMsd0JrRXVoQnVDLGV2RXN1d0V4QyxDSzd2eEVDLGlCa0V3aEJnQyxldkV3dXdFakMsQ0tod3hFQyxxQmtFeWhCb0MsZXZFMHV3RXJDLENLbnd4RUMsY2tFMGhCNkIsZXZFNHV3RTlCLENLdHd4RUMsc0JrRTJoQnFDLGV2RTh1d0V0QyxDS3p3eEVDLHVCa0U0aEJzQyxldkVndndFdkMsQ0s1d3hFQyx5QmtFNmhCd0MsZXZFa3Z3RXpDLENLL3d4RUMsc0JrRThoQnFDLGV2RW92d0V0QyxDS2x4eEVDLHFCa0UraEJvQyxldkVzdndFckMsQ0tyeHhFQyxzQmtFZ2lCcUMsZXZFd3Z3RXRDLENLeHh4RUMsa0JrRWlpQmlDLGV2RTB2d0VsQyxDSzN4eEVDLHlCa0VraUJ3QyxldkU0dndFekMsQ0s5eHhFQyxzQmtFbWlCcUMsZXZFOHZ3RXRDLENLanl4RUMscUJrRW9pQm9DLGV2RWd3d0VyQyxDS3B5eEVDLG1Ca0VxaUJrQyxldkVrd3dFbkMsQ0t2eXhFQyxla0VzaUI4QixldkVvd3dFL0IsQ0sxeXhFQyxtQmtFdWlCa0MsZXZFc3d3RW5DLENLN3l4RUMscUJrRXdpQm9DLGV2RXd3d0VyQyxDS2h6eEVDLGNrRXlpQjZCLGV2RTB3d0U5QixDS256eEVDLG1Ea0U0aUI4QixldkU0d3dFL0IsQ0t4enhFQyxvQmtFNmlCbUMsZXZFOHd3RXBDLENLM3p4RUMsc0JrRThpQnFDLGV2RWd4d0V0QyxDSzl6eEVDLDBCa0UraUJ5QyxldkVreHdFMUMsQ0tqMHhFQyxvQmtFZ2pCbUMsZXZFb3h3RXBDLENLcDB4RUMsb0JrRWlqQm1DLGV2RXN4d0VwQyxDS3YweEVDLG1Ca0VrakJrQyxldkV3eHdFbkMsQ0sxMHhFQyxrQmtFbWpCaUMsZXZFMHh3RWxDLENLNzB4RUMsd0JrRW9qQnVDLGV2RTR4d0V4QyxDS2gxeEVDLHVCa0VxakJzQyxldkU4eHdFdkMsQ0tuMXhFQyxvQmtFc2pCbUMsZXZFZ3l3RXBDLENLdDF4RUMscUJrRXVqQm9DLGV2RWt5d0VyQyxDS3oxeEVDLDJCa0V3akIwQyxldkVveXdFM0MsQ0s1MXhFQyxtQmtFeWpCa0MsZXZFc3l3RW5DLENLLzF4RUMsZ0JrRTBqQitCLGV2RXd5d0VoQyxDS2wyeEVDLHVCa0UyakJzQyxldkUweXdFdkMsQ0tyMnhFQyxzQmtFNGpCcUMsZXZFNHl3RXRDLENLeDJ4RUMsdUJrRTZqQnNDLGV2RTh5d0V2QyxDSzMyeEVDLHFCa0U4akJvQyxldkVnendFckMsQ0s5MnhFQyxpQmtFK2pCZ0MsZXZFa3p3RWpDLENLajN4RUMsZ0JrRWdrQitCLGV2RW96d0VoQyxDS3AzeEVDLG1Ca0Vpa0JrQyxldkVzendFbkMsQ0t2M3hFQywyQ2tFbWtCc0MsZXZFd3p3RXZDLENLMzN4RUMsMkJrRW9rQjBDLGV2RTB6d0UzQyxDSzkzeEVDLHdCa0Vxa0J1QyxldkU0endFeEMsQ0tqNHhFQyx1QmtFc2tCc0MsZXZFOHp3RXZDLENLcDR4RUMsc0JrRXVrQnFDLGV2RWcwd0V0QyxDS3Y0eEVDLHVCa0V3a0JzQyxldkVrMHdFdkMsQ0sxNHhFQyx5QmtFeWtCd0MsZXZFbzB3RXpDLENLNzR4RUMseUJrRTBrQndDLGV2RXMwd0V6QyxDS2g1eEVDLGtCa0Uya0JpQyxldkV3MHdFbEMsQ0tuNXhFQyxzQmtFNGtCcUMsZXZFMDB3RXRDLENLdDV4RUMsNkJrRTZrQjRDLGV2RTQwd0U3QyxDS3o1eEVDLHVCa0U4a0JzQyxldkU4MHdFdkMsQ0s1NXhFQyxvQmtFK2tCbUMsZXZFZzF3RXBDLENLLzV4RUMsa0JrRWdsQmlDLGV2RWsxd0VsQyxDS2w2eEVDLHFCa0VpbEJvQyxldkVvMXdFckMsQ0tyNnhFQyxzQmtFa2xCcUMsZXZFczF3RXRDLENLeDZ4RUMsZ0NrRW9sQjhCLGV2RXcxd0UvQixDSzU2eEVDLG1Ca0VxbEJrQyxldkUwMXdFbkMsQ0svNnhFQyxpQmtFc2xCZ0MsZXZFNDF3RWpDLENLbDd4RUMsa0JrRXVsQmlDLGV2RTgxd0VsQyxDS3I3eEVDLGtCa0V3bEJpQyxldkVnMndFbEMsQ0t4N3hFQyxzQ2tFMGxCdUMsZXZFazJ3RXhDLENLNTd4RUMseUJrRTJsQndDLGV2RW8yd0V6QyxDSy83eEVDLG9Ca0U0bEJtQyxldkVzMndFcEMsQ0tsOHhFQyx3QmtFNmxCdUMsZXZFdzJ3RXhDLENLcjh4RUMsZ0VrRWdtQnVDLGV2RTAyd0V4QyxDSzE4eEVDLHVEa0VrbUJpRCxldkU0MndFbEQsQ0s5OHhFQyw2Q2tFb21CdUMsZXZFODJ3RXhDLENLbDl4RUMsZ0RrRXNtQjBDLGV2RWczd0UzQyxDS3Q5eEVDLDhDa0V3bUJ3QyxldkVrM3dFekMsQ0sxOXhFQyx5QmtFeW1Cd0MsZXZFbzN3RXpDLENLNzl4RUMsb0JrRTBtQm1DLGV2RXMzd0VwQyxDS2greEVDLHdCa0UybUJ1QyxldkV3M3dFeEMsQ0tuK3hFQywwQmtFNG1CeUMsZXZFMDN3RTFDLENLdCt4RUMsdUJrRTZtQnNDLGV2RTQzd0V2QyxDS3oreEVDLHlCa0U4bUJ3QyxldkU4M3dFekMsQ0s1K3hFQyxrQmtFK21CaUMsZXZFZzR3RWxDLENLLyt4RUMsMEJrRWduQnlDLGV2RWs0d0UxQyxDS2wveEVDLGlCa0VpbkJnQyxldkVvNHdFakMsQ0tyL3hFQyx5QmtFa25Cd0MsZXZFczR3RXpDLENLeC94RUMsdUJrRW1uQnNDLGV2RXc0d0V2QyxDSzMveEVDLGtEa0VxbkIwQyxldkUwNHdFM0MsQ0svL3hFQyxpRGtFdW5CeUMsZXZFNDR3RTFDLENLbmd5RUMsZ0RrRXluQndDLGV2RTg0d0V6QyxDS3ZneUVDLHFCa0UwbkJvQyxldkVnNXdFckMsQ0sxZ3lFQyw4Q2tFNG5Cc0MsZXZFazV3RXZDLENLOWd5RUMsK0NrRThuQnVDLGV2RW81d0V4QyxDS2xoeUVDLDJCa0UrbkIwQyxldkVzNXdFM0MsQ0tyaHlFQyx5QmtFZ29Cd0MsZXZFdzV3RXpDLENLeGh5RUMsd0JrRWlvQnVDLGV2RTA1d0V4QyxDSzNoeUVDLDBCa0Vrb0J5QyxldkU0NXdFMUMsQ0s5aHlFQyx3QmtFbW9CdUMsZXZFODV3RXhDLENLaml5RUMscUJrRW9vQm9DLGV2RWc2d0VyQyxDS3BpeUVDLHNCa0Vxb0JxQyxldkVrNndFdEMsQ0t2aXlFQyw0QmtFc29CMkMsZXZFbzZ3RTVDLENLMWl5RUMsY2tFdW9CNkIsZXZFczZ3RTlCLENLN2l5RUMscUJrRXdvQm9DLGV2RXc2d0VyQyxDS2hqeUVDLHVCa0V5b0JzQyxldkUwNndFdkMsQ0tuanlFQyx5QmtFMG9Cd0MsZXZFNDZ3RXpDLENLdGp5RUMsZ0NrRTJvQitDLGV2RTg2d0VoRCxDS3pqeUVDLHNCa0U0b0JxQyxldkVnN3dFdEMsQ0s1anlFQyx1QmtFNm9Cc0MsZXZFazd3RXZDLENLL2p5RUMsa0JrRThvQmlDLGV2RW83d0VsQyxDS2xreUVDLGtCa0Urb0JpQyxldkVzN3dFbEMsQ0tya3lFQyxtQmtFZ3BCa0MsZXZFdzd3RW5DLENLeGt5RUMsaUJrRWlwQmdDLGV2RTA3d0VqQyxDSzNreUVDLDZCa0VrcEI0QyxldkU0N3dFN0MsQ0s5a3lFQyxvQ2tFb3BCcUMsZXZFODd3RXRDLENLbGx5RUMsa0JrRXFwQmlDLGV2RWc4d0VsQyxDS3JseUVDLGlCa0VzcEJnQyxldkVrOHdFakMsQ0t4bHlFQyxrQmtFdXBCaUMsZXZFbzh3RWxDLENLM2x5RUMsMkJrRXdwQjBDLGV2RXM4d0UzQyxDSzlseUVDLDRCa0V5cEIyQyxldkV3OHdFNUMsQ0tqbXlFQyw0QmtFMHBCMkMsZXZFMDh3RTVDLENLcG15RUMsNEJrRTJwQjJDLGV2RTQ4d0U1QyxDS3ZteUVDLG9Ca0U0cEJtQyxldkU4OHdFcEMsQ0sxbXlFQyxtQmtFNnBCa0MsZXZFZzl3RW5DLENLN215RUMscUJrRThwQm9DLGV2RWs5d0VyQyxDS2hueUVDLGlCa0UrcEJnQyxldkVvOXdFakMsQ0tubnlFQyxla0VncUI4QixldkVzOXdFL0IsQ0t0bnlFQyxzQmtFaXFCcUMsZXZFdzl3RXRDLENLem55RUMsd0JrRWtxQnVDLGV2RTA5d0V4QyxDSzVueUVDLGlCa0VtcUJnQyxldkU0OXdFakMsQ0svbnlFQyxpQmtFb3FCZ0MsZXZFODl3RWpDLENLbG95RUMscUJrRXFxQm9DLGV2RWcrd0VyQyxDS3JveUVDLHFCa0VzcUJvQyxldkVrK3dFckMsQ0t4b3lFQyx3QmtFdXFCdUMsZXZFbyt3RXhDLENLM295RUMsZ0JrRXdxQitCLGV2RXMrd0VoQyxDSzlveUVDLDJCa0V5cUIwQyxldkV3K3dFM0MsQ0tqcHlFQyxvQmtFMHFCbUMsZXZFMCt3RXBDLENLcHB5RUMsZ0JrRTJxQitCLGV2RTQrd0VoQyxDS3ZweUVDLHdCa0U0cUJ1QyxldkU4K3dFeEMsQ0sxcHlFQyxla0U2cUI4QixldkVnL3dFL0IsQ0s3cHlFQyx3QmtFOHFCdUMsZXZFay93RXhDLENLaHF5RUMsb0JrRStxQm1DLGV2RW8vd0VwQyxDS25xeUVDLGtCa0VnckJpQyxldkVzL3dFbEMsQ0t0cXlFQyx3QmtFaXJCdUMsZXZFdy93RXhDLENLenF5RUMsMEJrRWtyQnlDLGV2RTAvd0UxQyxDSzVxeUVDLHVCa0VtckJzQyxldkU0L3dFdkMsQ0svcXlFQyx5QmtFb3JCd0MsZXZFOC93RXpDLENLbHJ5RUMsd0JrRXFyQnVDLGV2RWdneEV4QyxDS3JyeUVDLDJCa0VzckIwQyxldkVrZ3hFM0MsQ0t4cnlFQyxtQmtFdXJCa0MsZXZFb2d4RW5DLENLM3J5RUMscUJrRXdyQm9DLGV2RXNneEVyQyxDSzlyeUVDLHVCa0V5ckJzQyxldkV3Z3hFdkMsQ0tqc3lFQyxtQmtFMHJCa0MsZXZFMGd4RW5DLENLcHN5RUMsa0JrRTJyQmlDLGV2RTRneEVsQyxDS3ZzeUVDLHNCa0U0ckJxQyxldkU4Z3hFdEMsQ0sxc3lFQyxtQmtFNnJCa0MsZXZFZ2h4RW5DLENLN3N5RUMsa0JrRThyQmlDLGV2RWtoeEVsQyxDS2h0eUVDLDRCa0UrckIyQyxldkVvaHhFNUMsQ0tudHlFQywwQmtFZ3NCeUMsZXZFc2h4RTFDLENLdHR5RUMsNkJrRWlzQjRDLGV2RXdoeEU3QyxDS3p0eUVDLGlCa0Vrc0JnQyxldkUwaHhFakMsQ0s1dHlFQyw2QmtFbXNCNEMsZXZFNGh4RTdDLENLL3R5RUMsZ0NrRW9zQitDLGV2RThoeEVoRCxDS2x1eUVDLG1Ca0Vxc0JrQyxldkVnaXhFbkMsQ0tydXlFQyx1Q2tFc3NCc0QsZXZFa2l4RXZELENLeHV5RUMsMkVrRXdzQjhELGV2RW9peEUvRCxDSzV1eUVDLCtEa0Uyc0IrQixldkVzaXhFaEMsQ0tqdnlFQyxpQmtFNHNCZ0MsZXZFd2l4RWpDLENLcHZ5RUMsbUJrRTZzQmtDLGV2RTBpeEVuQyxDS3Z2eUVDLDRDa0Urc0J3QyxldkU0aXhFekMsQ0szdnlFQyxzQmtFZ3RCcUMsZXZFOGl4RXRDLENLOXZ5RUMsa0JrRWl0QmlDLGV2RWdqeEVsQyxDS2p3eUVDLHlCa0VrdEJ3QyxldkVranhFekMsQ0twd3lFQyxvQmtFbXRCbUMsZXZFb2p4RXBDLENLdnd5RUMsMEJrRW90QnlDLGV2RXNqeEUxQyxDSzF3eUVDLDJCa0VxdEIwQyxldkV3anhFM0MsQ0s3d3lFQyxzQmtFc3RCcUMsZXZFMGp4RXRDLENLaHh5RUMsdUJrRXV0QnNDLGV2RTRqeEV2QyxDS254eUVDLGlCa0V3dEJnQyxldkU4anhFakMsQ0t0eHlFQyxxQmtFeXRCb0MsZXZFZ2t4RXJDLENLenh5RUMsOERrRTJ0QitDLGV2RWtreEVoRCxDSzd4eUVDLHNDa0U2dEJ1QyxldkVva3hFeEMsQ0tqeXlFQyx1QmtFOHRCc0MsZXZFc2t4RXZDLENLcHl5RUMseUJrRSt0QndDLGV2RXdreEV6QyxDS3Z5eUVDLDJCa0VndUIwQyxldkUwa3hFM0MsQ0sxeXlFQyxrQmtFaXVCaUMsZXZFNGt4RWxDLENLN3l5RUMsd0JrRWt1QnVDLGV2RThreEV4QyxDS2h6eUVDLDBCa0VtdUJ5QyxldkVnbHhFMUMsQ0tuenlFQyx5Q2tFcXVCdUMsZXZFa2x4RXhDLENLdnp5RUMsNkNrRXV1QnlDLGV2RW9seEUxQyxDSzN6eUVDLHVCa0V3dUJzQyxldkVzbHhFdkMsQ0s5enlFQyx5QmtFeXVCd0MsZXZFd2x4RXpDLENLajB5RUMsa0JrRTB1QmlDLGV2RTBseEVsQyxDS3AweUVDLG9Ca0UydUJtQyxldkU0bHhFcEMsQ0t2MHlFQyw4Q2tFNnVCa0MsZXZFOGx4RW5DLENLMzB5RUMsa0RrRSt1Qm9DLGV2RWdteEVyQyxDSy8weUVDLGlCa0VndkJnQyxldkVrbXhFakMsQ0tsMXlFQywwQmtFaXZCeUMsZXZFb214RTFDLENLcjF5RUMsb0JrRWt2Qm1DLGV2RXNteEVwQyxDS3gxeUVDLDRFa0VxdkIyQyxldkV3bXhFNUMsQ0s3MXlFQywrRGtFdXZCcUQsZXZFMG14RXRELENLajJ5RUMscURrRXl2QjJDLGV2RTRteEU1QyxDS3IyeUVDLHdEa0UydkI4QyxldkU4bXhFL0MsQ0t6MnlFQyxzRGtFNnZCNEMsZXZFZ254RTdDLENLNzJ5RUMsa0JrRTh2QmlDLGV2RWtueEVsQyxDS2gzeUVDLGtEa0Vpd0IrQixldkVvbnhFaEMsQ0tyM3lFQyxtQmtFa3dCa0MsZXZFc254RW5DLENLeDN5RUMsMkJrRW13QjBDLGV2RXdueEUzQyxDSzMzeUVDLDJCa0Vvd0IwQyxldkUwbnhFM0MsQ0s5M3lFQywwQmtFcXdCeUMsZXZFNG54RTFDLENLajR5RUMsbURrRXV3QnVDLGV2RThueEV4QyxDS3I0eUVDLHVEa0V5d0J5QyxldkVnb3hFMUMsQ0t6NHlFQyxvQmtFMHdCbUMsZXZFa294RXBDLENLNTR5RUMsZ0JrRTJ3QitCLGV2RW9veEVoQyxDSy80eUVDLGdCa0U0d0IrQixldkVzb3hFaEMsQ0tsNXlFQyxnQmtFNndCK0IsZXZFd294RWhDLENLcjV5RUMsbUJrRTh3QmtDLGV2RTBveEVuQyxDS3g1eUVDLG1Ca0Urd0JrQyxldkU0b3hFbkMsQ0szNXlFQyxxQmtFZ3hCb0MsZXZFOG94RXJDLENLOTV5RUMsdUJrRWl4QnNDLGV2RWdweEV2QyxDS2o2eUVDLHVCa0VreEJzQyxldkVrcHhFdkMsQ0twNnlFQyxzQmtFbXhCcUMsZXZFb3B4RXRDLENLdjZ5RUMsa0JrRW94QmlDLGV2RXNweEVsQyxDd0V2NnlFQSxTSm9DRSxtQkFDQSxRQUFTLENBTFQsVUFBVyxDQUVYLFdBQVksQ0FDWixlQUFnQixDQUZoQixTQUFVLENBSFYsaUJBQWtCLENBQ2xCLFNwRWs1eUVGLENvRWw0eUVFLG1EQU9FLFNBQVUsQ0FIVixXQUFZLENBQ1osUUFBUyxDQUNULGdCQUFpQixDQUpqQixlQUFnQixDQUNoQixVcEV3NHlFSiIsInNvdXJjZXMiOlsid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9zcmMvbGVzcy92ZW5kb3JzLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2dsb2JhbHMvcmVzZXQubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvZ2xvYmFscy9yZXNldC5vdmVycmlkZXMiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2dsb2JhbHMvc2l0ZS5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9idXR0b24ubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vc3JjL3NlbWFudGljLXVpL3NpdGUvbW9kdWxlcy90cmFuc2l0aW9uLm92ZXJyaWRlcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvZWxlbWVudHMvY29udGFpbmVyLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2VsZW1lbnRzL2RpdmlkZXIubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvZWxlbWVudHMvZGl2aWRlci5vdmVycmlkZXMiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2VsZW1lbnRzL2ZsYWcubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvZWxlbWVudHMvZmxhZy5vdmVycmlkZXMiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2VsZW1lbnRzL2hlYWRlci5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9pY29uLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L2VsZW1lbnRzL2ljb24ub3ZlcnJpZGVzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9pbWFnZS5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9pbnB1dC5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9sYWJlbC5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9saXN0Lmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2VsZW1lbnRzL2xvYWRlci5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9wbGFjZWhvbGRlci5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9yYWlsLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2VsZW1lbnRzL3JldmVhbC5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9lbGVtZW50cy9zZWdtZW50Lmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2VsZW1lbnRzL3N0ZXAubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvZWxlbWVudHMvc3RlcC5vdmVycmlkZXMiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2VsZW1lbnRzL3RleHQubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvY29sbGVjdGlvbnMvYnJlYWRjcnVtYi5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9jb2xsZWN0aW9ucy9mb3JtLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2NvbGxlY3Rpb25zL2dyaWQubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvY29sbGVjdGlvbnMvbWVudS5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9jb2xsZWN0aW9ucy9tZXNzYWdlLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL2NvbGxlY3Rpb25zL3RhYmxlLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL3ZpZXdzL2FkLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL3ZpZXdzL2NhcmQubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvdmlld3MvY29tbWVudC5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy92aWV3cy9mZWVkLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL3ZpZXdzL2l0ZW0ubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvdmlld3Mvc3RhdGlzdGljLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvYWNjb3JkaW9uLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L21vZHVsZXMvYWNjb3JkaW9uLm92ZXJyaWRlcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvbW9kdWxlcy9jYWxlbmRhci5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9tb2R1bGVzL2NoZWNrYm94Lmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L21vZHVsZXMvY2hlY2tib3gub3ZlcnJpZGVzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9tb2R1bGVzL2RpbW1lci5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9tb2R1bGVzL2Ryb3Bkb3duLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L21vZHVsZXMvZHJvcGRvd24ub3ZlcnJpZGVzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9tb2R1bGVzL2VtYmVkLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvbW9kYWwubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvbW9kdWxlcy9uYWcubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvbW9kdWxlcy9wb3B1cC5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy9kZWZpbml0aW9ucy9tb2R1bGVzL3Byb2dyZXNzLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvc2xpZGVyLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvcmF0aW5nLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvc2VhcmNoLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvc2hhcGUubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvbW9kdWxlcy9zaWRlYmFyLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvc3RpY2t5Lmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvdGFiLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL2RlZmluaXRpb25zL21vZHVsZXMvdG9hc3QubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvZGVmaW5pdGlvbnMvbW9kdWxlcy90cmFuc2l0aW9uLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L21vZHVsZXMvdHJhbnNpdGlvbi5vdmVycmlkZXMiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvbGVzcy9wYXRoLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvbGVzcy9jb3JlLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvbGVzcy9sYXJnZXIubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9sZXNzL2ZpeGVkLXdpZHRoLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvbGVzcy9saXN0Lmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvbGVzcy9ib3JkZXJlZC1wdWxsZWQubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9sZXNzL2FuaW1hdGVkLmxlc3MiLCJ3ZWJwYWNrOi8vYW5kZXJzZW4tZGFzaC8uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvbGVzcy9taXhpbnMubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9sZXNzL3JvdGF0ZWQtZmxpcHBlZC5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL2xlc3Mvc3RhY2tlZC5sZXNzIiwid2VicGFjazovL2FuZGVyc2VuLWRhc2gvLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL2xlc3MvaWNvbnMubGVzcyIsIndlYnBhY2s6Ly9hbmRlcnNlbi1kYXNoLy4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9sZXNzL3NjcmVlbi1yZWFkZXIubGVzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuXG7ilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZcg4paI4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKVlyAgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyDilojilojilojilojilojilojilZcgICAg4paI4paI4pWXICAg4paI4paI4pWX4paI4paI4pWXXG7ilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4paI4paI4pWX4paI4paI4paI4paI4pWXICDilojilojilZHilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZHilojilojilZTilZDilZDilZDilZDilZ0gICAg4paI4paI4pWRICAg4paI4paI4pWR4paI4paI4pWRXG7ilojilojilojilojilojilojilojilZfilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKWiOKWiOKVlyDilojilojilZEgICDilojilojilZEgICDilojilojilZHilojilojilZEgICAgICAgICDilojilojilZEgICDilojilojilZHilojilojilZFcbuKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWR4pWa4paI4paI4pWX4paI4paI4pWRICAg4paI4paI4pWRICAg4paI4paI4pWR4paI4paI4pWRICAgICAgICAg4paI4paI4pWRICAg4paI4paI4pWR4paI4paI4pWRXG7ilojilojilojilojilojilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWRIOKVmuKWiOKWiOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkeKVmuKWiOKWiOKWiOKWiOKWiOKWiOKVlyAgICDilZrilojilojilojilojilojilojilZTilZ3ilojilojilZFcbuKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZ0gIOKVmuKVkOKVkOKVkOKVnSAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSDilZrilZDilZDilZDilZDilZDilZ0gICAgIOKVmuKVkOKVkOKVkOKVkOKVkOKVnSDilZrilZDilZ1cblxuICBJbXBvcnQgdGhpcyBmaWxlIGludG8geW91ciBMRVNTIHByb2plY3QgdG8gdXNlIEZvbWFudGljLVVJIHdpdGhvdXQgYnVpbGQgdG9vbHNcbiovXG4vKiBHbG9iYWwgKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFJlc2V0XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBSZXNldFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFJlc2V0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFJlc2V0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQm9yZGVyLUJveCAqL1xuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi8qIGlQYWQgSW5wdXQgU2hhZG93cyAqL1xuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC8qIG1vYmlsZSBmaXJlZm94IHRvbyEgKi9cbn1cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xufVxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovXG59XG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqL1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbn1cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFNpdGVcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgUGFnZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmh0bWwsXG5ib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgbWluLXdpZHRoOiAzMjBweDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1ZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBIZWFkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG4gIG1hcmdpbjogY2FsYygycmVtIC0gMC4xNDI4NTcxNDI4NTcxNDI5ZW0pIDAgMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDA7XG59XG5oMSB7XG4gIG1pbi1oZWlnaHQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbmgyIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuaDMge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5oNCB7XG4gIGZvbnQtc2l6ZTogMS4wNzE0Mjg1N3JlbTtcbn1cbmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuaDE6Zmlyc3QtY2hpbGQsXG5oMjpmaXJzdC1jaGlsZCxcbmgzOmZpcnN0LWNoaWxkLFxuaDQ6Zmlyc3QtY2hpbGQsXG5oNTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5oMTpsYXN0LWNoaWxkLFxuaDI6bGFzdC1jaGlsZCxcbmgzOmxhc3QtY2hpbGQsXG5oNDpsYXN0LWNoaWxkLFxuaDU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFRleHRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5wIHtcbiAgbWFyZ2luOiAwIDAgMWVtO1xuICBsaW5lLWhlaWdodDogMS40Mjg1ZW07XG59XG5wOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbnA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmEge1xuICBjb2xvcjogIzQxODNDNDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2Nyb2xsYmFyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgSGlnaGxpZ2h0aW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSAqL1xuOjotd2Via2l0LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDQ0UyRkY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDQ0UyRkY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0NFMkZGO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi8qIEZvcm0gKi9cbnRleHRhcmVhOjotd2Via2l0LXNlbGVjdGlvbixcbmlucHV0Ojotd2Via2l0LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwLCAxMDAsIDEwMCwgMC40KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG50ZXh0YXJlYTo6LW1vei1zZWxlY3Rpb24sXG5pbnB1dDo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCwgMTAwLCAxMDAsIDAuNCk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxudGV4dGFyZWE6OnNlbGVjdGlvbixcbmlucHV0OjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCwgMTAwLCAxMDAsIDAuNCk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyogRm9yY2UgU2ltcGxlIFNjcm9sbGJhcnMgKi9cbmJvZHkgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbn1cbmJvZHkgOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbmJvZHkgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5ib2R5IDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6d2luZG93LWluYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbmJvZHkgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTI4LCAxMzUsIDEzOSwgMC44KTtcbn1cbi8qIEludmVydGVkIFVJICovXG5ib2R5IC51aS5pbnZlcnRlZDpub3QoLmRpbW1lcik6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuYm9keSAudWkuaW52ZXJ0ZWQ6bm90KC5kaW1tZXIpOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG5ib2R5IC51aS5pbnZlcnRlZDpub3QoLmRpbW1lcik6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOndpbmRvdy1pbmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG59XG5ib2R5IC51aS5pbnZlcnRlZDpub3QoLmRpbW1lcik6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEdsb2JhbCBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBFbGVtZW50cyAqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gQnV0dG9uXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEJ1dHRvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEJ1dHRvbiAqL1xuLyogQnV0dG9uIGRlZmF1bHRzIHRvIHVzaW5nIHNhbWUgaGVpZ2h0IGFzIGlucHV0IGdsb2JhbGx5ICovXG4vKiBUZXh0ICovXG4vKiBJbnRlcm5hbCBTaGFkb3cgKi9cbi8qIEJveCBTaGFkb3cgKi9cbi8qIEljb24gKi9cbi8qIExvYWRlciAqL1xuLypcbkB3aWxsQ2hhbmdlOiBib3gtc2hhZG93LCB0cmFuc2Zvcm0sIG9wYWNpdHksIGNvbG9yLCBiYWNrZ3JvdW5kO1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcm91cFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSG92ZXJlZCAqL1xuLyogRm9jdXNlZCAqL1xuLyogRGlzYWJsZWQgKi9cbi8qIFByZXNzZWQgRG93biAqL1xuLyogQWN0aXZlICovXG4vKiBBY3RpdmUgKyBIb3ZlcmVkICovXG4vKiBMb2FkaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE9yICovXG4vKiBJY29uICovXG4vKiBMYWJlbGVkICovXG4vKiBoeXBvdGVudXNlIG9mIHRyaWFuZ2xlICovXG4vKiBMYWJlbGVkIEljb24gKi9cbi8qIEludmVydGVkICovXG4vKiBCYXNpYyAqL1xuLyogQmFzaWMgSG92ZXIgKi9cbi8qIEJhc2ljIEZvY3VzICovXG4vKiBCYXNpYyBEb3duICovXG4vKiBCYXNpYyBBY3RpdmUgKi9cbi8qIEJhc2ljIEludmVydGVkICovXG4vKiBCYXNpYyBHcm91cCAqL1xuLyotLS0tLS0tLS0tLS0tXG4gICBUZXJ0aWFyeVxuLS0tLS0tLS0tLS0tLSovXG4vKiBUZXJ0aWFyeSBIb3ZlciAqL1xuLyogVGVydGlhcnkgRm9jdXMgKi9cbi8qIFRlcnRpYXJ5IEFjdGl2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBDb2xvcnMgKi9cbi8qIENvbG9yZWQgKi9cbi8qIEludmVydGVkICovXG4vKiBPcmRpbmFsaXR5ICovXG4vKiBDb21wYWN0ICovXG4vKiBBdHRhY2hlZCAqL1xuLyogRmxvYXRlZCAqL1xuLyogQW5pbWF0ZWQgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQnV0dG9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQnV0dG9uICovXG4vKiBCdXR0b24gZGVmYXVsdHMgdG8gdXNpbmcgc2FtZSBoZWlnaHQgYXMgaW5wdXQgZ2xvYmFsbHkgKi9cbi8qIFRleHQgKi9cbi8qIEludGVybmFsIFNoYWRvdyAqL1xuLyogQm94IFNoYWRvdyAqL1xuLyogSWNvbiAqL1xuLyogTG9hZGVyICovXG4vKlxuQHdpbGxDaGFuZ2U6IGJveC1zaGFkb3csIHRyYW5zZm9ybSwgb3BhY2l0eSwgY29sb3IsIGJhY2tncm91bmQ7XG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyb3VwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBIb3ZlcmVkICovXG4vKiBGb2N1c2VkICovXG4vKiBEaXNhYmxlZCAqL1xuLyogUHJlc3NlZCBEb3duICovXG4vKiBBY3RpdmUgKi9cbi8qIEFjdGl2ZSArIEhvdmVyZWQgKi9cbi8qIExvYWRpbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogT3IgKi9cbi8qIEljb24gKi9cbi8qIExhYmVsZWQgKi9cbi8qIGh5cG90ZW51c2Ugb2YgdHJpYW5nbGUgKi9cbi8qIExhYmVsZWQgSWNvbiAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJhc2ljICovXG4vKiBCYXNpYyBIb3ZlciAqL1xuLyogQmFzaWMgRm9jdXMgKi9cbi8qIEJhc2ljIERvd24gKi9cbi8qIEJhc2ljIEFjdGl2ZSAqL1xuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi8qIEJhc2ljIEdyb3VwICovXG4vKi0tLS0tLS0tLS0tLS1cbiAgIFRlcnRpYXJ5XG4tLS0tLS0tLS0tLS0tKi9cbi8qIFRlcnRpYXJ5IEhvdmVyICovXG4vKiBUZXJ0aWFyeSBGb2N1cyAqL1xuLyogVGVydGlhcnkgQWN0aXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIENvbG9ycyAqL1xuLyogQ29sb3JlZCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIE9yZGluYWxpdHkgKi9cbi8qIENvbXBhY3QgKi9cbi8qIEF0dGFjaGVkICovXG4vKiBGbG9hdGVkICovXG4vKiBBbmltYXRlZCAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEJ1dHRvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogMWVtO1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZDogI0UwRTFFMiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDAgMC4yNWVtIDAgMDtcbiAgcGFkZGluZzogMC43ODU3MTQyOWVtIDEuNWVtIDAuNzg1NzE0MjllbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50IGluc2V0LCAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2UsIGJhY2tncm91bmQgMC4xcyBlYXNlO1xuICB3aWxsLWNoYW5nZTogYXV0bztcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0FDQkNEO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIDAgMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi51aS5idXR0b246aG92ZXIgLmljb24ge1xuICBvcGFjaXR5OiAwLjg1O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0NBQ0JDRDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogJyc7XG59XG4udWkuYnV0dG9uOmZvY3VzIC5pY29uIHtcbiAgb3BhY2l0eTogMC44NTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIERvd25cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuYnV0dG9uOmFjdGl2ZSxcbi51aS5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCQUJCQkM7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICcnO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0MwQzFDMjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50IGluc2V0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cbi51aS5hY3RpdmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0MwQzFDMjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4udWkuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzBDMUMyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBTcGVjaWZpY2l0eSBoYWNrICovXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcuYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXIsIG9wYWNpdHkgMC4xcyBlYXNlO1xufVxuLnVpLmxvYWRpbmcuYnV0dG9uOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTAuNjQyODU3MTRlbSAwIDAgLTAuNjQyODU3MTRlbTtcbiAgd2lkdGg6IDEuMjg1NzE0MjllbTtcbiAgaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLnVpLmxvYWRpbmcuYnV0dG9uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NTcxNGVtIDAgMCAtMC42NDI4NTcxNGVtO1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBhbmltYXRpb246IGxvYWRlciAwLjZzIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG59XG4udWkubGFiZWxlZC5pY29uLmxvYWRpbmcuYnV0dG9uIC5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkuYmFzaWMubG9hZGluZy5idXR0b246bm90KC5pbnZlcnRlZCk6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkuYmFzaWMubG9hZGluZy5idXR0b246bm90KC5pbnZlcnRlZCk6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICM3Njc2NzY7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuYnV0dG9ucyAuZGlzYWJsZWQuYnV0dG9uOm5vdCguYmFzaWMpLFxuLnVpLmRpc2FibGVkLmJ1dHRvbixcbi51aS5idXR0b246ZGlzYWJsZWQsXG4udWkuZGlzYWJsZWQuYnV0dG9uOmhvdmVyLFxuLnVpLmRpc2FibGVkLmFjdGl2ZS5idXR0b24ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG9wYWNpdHk6IDAuNDUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcbn1cbi8qIEJhc2ljIEdyb3VwIFdpdGggRGlzYWJsZWQgKi9cbi51aS5iYXNpYy5idXR0b25zIC51aS5kaXNhYmxlZC5idXR0b24ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC41KTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBbmltYXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmFuaW1hdGVkLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB6LWluZGV4OiAxO1xufVxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAuY29udGVudCB7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG59XG4udWkuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1yaWdodDogMS41ZW07XG59XG4udWkuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBIb3Jpem9udGFsICovXG4udWkuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQsXG4udWkuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIHRyYW5zaXRpb246IHJpZ2h0IDAuM3MgZWFzZSAwcztcbn1cbi51aS5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAuaGlkZGVuLmNvbnRlbnQge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tdG9wOiAtMC41ZW07XG59XG4udWkuYW5pbWF0ZWQuYnV0dG9uOmZvY3VzIC52aXNpYmxlLmNvbnRlbnQsXG4udWkuYW5pbWF0ZWQuYnV0dG9uOmhvdmVyIC52aXNpYmxlLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMjAwJTtcbn1cbi51aS5hbmltYXRlZC5idXR0b246Zm9jdXMgLmhpZGRlbi5jb250ZW50LFxuLnVpLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAuaGlkZGVuLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cbi8qIFZlcnRpY2FsICovXG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQsXG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICByaWdodDogYXV0bztcbn1cbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgdG9wOiAtNTAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b246Zm9jdXMgLnZpc2libGUuY29udGVudCxcbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b246aG92ZXIgLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAlKTtcbiAgcmlnaHQ6IGF1dG87XG59XG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uOmZvY3VzIC5oaWRkZW4uY29udGVudCxcbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b246aG92ZXIgLmhpZGRlbi5jb250ZW50IHtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiBhdXRvO1xufVxuLyogRmFkZSAqL1xuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQsXG4udWkuZmFkZS5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG4udWkuZmFkZS5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIG9wYWNpdHk6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG59XG4udWkuZmFkZS5hbmltYXRlZC5idXR0b246Zm9jdXMgLnZpc2libGUuY29udGVudCxcbi51aS5mYWRlLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAudmlzaWJsZS5jb250ZW50IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG59XG4udWkuZmFkZS5hbmltYXRlZC5idXR0b246Zm9jdXMgLmhpZGRlbi5jb250ZW50LFxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uOmhvdmVyIC5oaWRkZW4uY29udGVudCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI0ZGRkZGRiBpbnNldDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG4vKiBHcm91cCAqL1xuLnVpLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIG1hcmdpbjogMCAwIDAgLTJweDtcbn1cbi51aS5pbnZlcnRlZC5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi51aS5pbnZlcnRlZC52ZXJ0aWNhbC5idXR0b25zIC5idXR0b24ge1xuICBtYXJnaW46IDAgMCAtMnB4IDA7XG59XG4udWkuaW52ZXJ0ZWQudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi8qIFN0YXRlcyAqL1xuLyogSG92ZXIgKi9cbi51aS5pbnZlcnRlZC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI0ZGRkZGRiBpbnNldDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi8qIEFjdGl2ZSAvIEZvY3VzICovXG4udWkuaW52ZXJ0ZWQuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJ1dHRvbi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI0ZGRkZGRiBpbnNldDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuLnVpLmludmVydGVkLmJ1dHRvbi5hY3RpdmU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjRENERERFO1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI0RDRERERSBpbnNldDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIExhYmVsZWQgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubGFiZWxlZC5idXR0b246bm90KC5pY29uKSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS5sYWJlbGVkLmJ1dHRvbiA+IC5idXR0b24ge1xuICBtYXJnaW46IDA7XG59XG4udWkubGFiZWxlZC5idXR0b24gPiAubGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDAgMCAwIC0xcHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmc6ICcnO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4vKiBUYWcgKi9cbi51aS5sYWJlbGVkLmJ1dHRvbiA+IC50YWcubGFiZWw6YmVmb3JlIHtcbiAgd2lkdGg6IDEuODVlbTtcbiAgaGVpZ2h0OiAxLjg1ZW07XG59XG4vKiBSaWdodCAqL1xuLnVpLmxhYmVsZWQuYnV0dG9uOm5vdChbY2xhc3MqPVwibGVmdCBsYWJlbGVkXCJdKSA+IC5idXR0b24ge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4udWkubGFiZWxlZC5idXR0b246bm90KFtjbGFzcyo9XCJsZWZ0IGxhYmVsZWRcIl0pID4gLmxhYmVsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi8qIExlZnQgU2lkZSAqL1xuLnVpW2NsYXNzKj1cImxlZnQgbGFiZWxlZFwiXS5idXR0b24gPiAuYnV0dG9uIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGxhYmVsZWRcIl0uYnV0dG9uID4gLmxhYmVsIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU29jaWFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGYWNlYm9vayAqL1xuLnVpLmZhY2Vib29rLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzQjU5OTg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLmZhY2Vib29rLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMDRkOGE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5mYWNlYm9vay5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkNDM3MztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLyogVHdpdHRlciAqL1xuLnVpLnR3aXR0ZXIuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFEQTFGMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkudHdpdHRlci5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI5OGYzO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkudHdpdHRlci5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBjODVkMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLyogR29vZ2xlIFBsdXMgKi9cbi51aS5nb29nbGUucGx1cy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREQ0QjM5O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi51aS5nb29nbGUucGx1cy5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTAzMjFjO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkuZ29vZ2xlLnBsdXMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMjMzMjE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi8qIExpbmtlZCBJbiAqL1xuLnVpLmxpbmtlZGluLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDc3QjU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5saW5rZWRpbi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2NjljO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkubGlua2VkaW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDU1ODI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi8qIFlvdVR1YmUgKi9cbi51aS55b3V0dWJlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRjAwMDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLnlvdXR1YmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2MDAwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnlvdXR1YmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzAwMDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi8qIEluc3RhZ3JhbSAqL1xuLnVpLmluc3RhZ3JhbS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDk3NjlDO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi51aS5pbnN0YWdyYW0uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNkNjk4ZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLmluc3RhZ3JhbS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5NWM3OTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLyogUGludGVyZXN0ICovXG4udWkucGludGVyZXN0LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRDA4MUM7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLnBpbnRlcmVzdC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWMwMDEzO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkucGludGVyZXN0LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGMwNjE1O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBWSyAqL1xuLnVpLnZrLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NTY2OEU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkudmsuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5NTk4MDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudmsuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDRkNmM7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogV2hhdHNBcHAgKi9cbi51aS53aGF0c2FwcC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjVEMzY2O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLndoYXRzYXBwLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOWM1NWE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLndoYXRzYXBwLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWRhODUxO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFRlbGVncmFtICovXG4udWkudGVsZWdyYW0uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODhDQztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi51aS50ZWxlZ3JhbS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3N2IzO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS50ZWxlZ3JhbS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjY5OTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuYnV0dG9uID4gLmljb246bm90KC5idXR0b24pIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAwLjg7XG4gIG1hcmdpbjogMCAwLjQyODU3MTQzZW0gMCAtMC4yMTQyODU3MWVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbiAgdmVydGljYWwtYWxpZ246ICcnO1xuICBjb2xvcjogJyc7XG59XG4udWkuYnV0dG9uOm5vdCguaWNvbikgPiAuaWNvbjpub3QoLmJ1dHRvbik6bm90KC5kcm9wZG93biksXG4udWkuYnV0dG9uOm5vdCguaWNvbikgPiAuaWNvbnM6bm90KC5idXR0b24pOm5vdCguZHJvcGRvd24pIHtcbiAgbWFyZ2luOiAwIDAuNDI4NTcxNDNlbSAwIC0wLjIxNDI4NTcxZW07XG59XG4udWkuYnV0dG9uOm5vdCguaWNvbikgPiAucmlnaHQuaWNvbjpub3QoLmJ1dHRvbik6bm90KC5kcm9wZG93bikge1xuICBtYXJnaW46IDAgLTAuMjE0Mjg1NzFlbSAwIDAuNDI4NTcxNDNlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmJ1dHRvbnMsXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmJ1dHRvbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG59XG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5idXR0b25zLFxuLnVpW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0uYnV0dG9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb21wYWN0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuY29tcGFjdC5idXR0b25zIC5idXR0b24sXG4udWkuY29tcGFjdC5idXR0b24ge1xuICBwYWRkaW5nOiAwLjU4OTI4NTcxZW0gMS4xMjVlbSAwLjU4OTI4NTcxZW07XG59XG4udWkuY29tcGFjdC5pY29uLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5jb21wYWN0Lmljb24uYnV0dG9uIHtcbiAgcGFkZGluZzogMC41ODkyODU3MWVtIDAuNTg5Mjg1NzFlbSAwLjU4OTI4NTcxZW07XG59XG4udWkuY29tcGFjdC5sYWJlbGVkLmljb24uYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmNvbXBhY3QubGFiZWxlZC5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNTg5Mjg1NzFlbSAzLjY5NjQyODU3ZW0gMC41ODkyODU3MWVtO1xufVxuLnVpLmNvbXBhY3QubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbiA+IC5pY29uLFxuLnVpLmNvbXBhY3QubGFiZWxlZC5pY29uLmJ1dHRvbiA+IC5pY29uIHtcbiAgcGFkZGluZzogMC41ODkyODU3MWVtIDAgMC41ODkyODU3MWVtIDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5taW5pLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5taW5pLmJ1dHRvbnMgLm9yLFxuLnVpLnVpLnVpLnVpLm1pbmkuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuLnVpLnRpbnkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnRpbnkuYnV0dG9ucyAub3IsXG4udWkudWkudWkudWkudGlueS5idXR0b24ge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG4udWkuc21hbGwuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnNtYWxsLmJ1dHRvbnMgLm9yLFxuLnVpLnVpLnVpLnVpLnNtYWxsLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5idXR0b25zIC5idXR0b24sXG4udWkuYnV0dG9ucyAub3IsXG4udWkuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5sYXJnZS5idXR0b25zIC5vcixcbi51aS51aS51aS51aS5sYXJnZS5idXR0b24ge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4udWkuYmlnLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iaWcuYnV0dG9ucyAub3IsXG4udWkudWkudWkudWkuYmlnLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi51aS5odWdlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5odWdlLmJ1dHRvbnMgLm9yLFxuLnVpLnVpLnVpLnVpLmh1Z2UuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLnVpLm1hc3NpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLm1hc3NpdmUuYnV0dG9ucyAub3IsXG4udWkudWkudWkudWkubWFzc2l2ZS5idXR0b24ge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG4vKiBEcm9wZG93biBjb3VwbGVkIGJ1dHRvbnMgc2l6ZXMgKi9cbi51aS5taW5pLmJ1dHRvbnMgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuLnVpLm1pbmkuYnV0dG9ucyAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LmJ1dHRvbnMgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuLnVpLnRpbnkuYnV0dG9ucyAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5idXR0b25zIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5zbWFsbC5idXR0b25zIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLmxhcmdlLmJ1dHRvbnMgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuLnVpLmxhcmdlLmJ1dHRvbnMgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4udWkuYmlnLmJ1dHRvbnMgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuLnVpLmJpZy5idXR0b25zIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuLnVpLmh1Z2UuYnV0dG9ucyAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG4udWkuaHVnZS5idXR0b25zIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLnVpLm1hc3NpdmUuYnV0dG9ucyAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG4udWkubWFzc2l2ZS5idXR0b25zIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEljb24gT25seVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pY29uLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjllbSAwLjc4NTcxNDI5ZW0gMC43ODU3MTQyOWVtO1xufVxuLnVpLmljb24uYnV0dG9ucyAuYnV0dG9uID4gLmljb24sXG4udWkuaWNvbi5idXR0b24gPiAuaWNvbiB7XG4gIG9wYWNpdHk6IDAuOTtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQmFzaWNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLmJhc2ljLmJ1dHRvbnMge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0LCAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0LCAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI0Y4RjhGODtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSkgaW5zZXQsIDAgMXB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgYm94LXNoYWRvdzogJyc7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLnVpLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuYWN0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG4vKiBWZXJ0aWNhbCAqL1xuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0LCAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQgaW5zZXQ7XG59XG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpIGluc2V0LCAwIDFweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0IGluc2V0O1xufVxuLnVpLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAnJztcbn1cbi8qIFN0YW5kYXJkIEJhc2ljIEludmVydGVkICovXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI0Y5RkFGQjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldDtcbn1cbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZmZmZmZmIGluc2V0O1xufVxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b246Zm9jdXMge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZmZmZmYgaW5zZXQ7XG59XG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgaW5zZXQ7XG59XG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5pbnZlcnRlZC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIGluc2V0O1xufVxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYWN0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZmZmZmZmIGluc2V0O1xufVxuLyogQmFzaWMgR3JvdXAgKi9cbi51aS5iYXNpYy5idXR0b25zIC5idXR0b24ge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkuYmFzaWMudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5iYXNpYy52ZXJ0aWNhbC5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGVydGlhcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE92ZXJsaW5lIE1peGluICovXG4udWkudGVydGlhcnkuYnV0dG9uIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbjogMC4yODU3MTQyOWVtIDAuMjVlbSAwLjI4NTcxNDI5ZW0gMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwLjVlbSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLnVpLnRlcnRpYXJ5LmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzY2NjY2NjtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4udWkudGVydGlhcnkuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjNjY2NjY2O1xuICBjb2xvcjogIzMzMzMzMztcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi51aS50ZXJ0aWFyeS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjOTk5OTk5O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xuICBjb2xvcjogIzY2NjY2NjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgTGFiZWxlZCBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b24sXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiA0LjA3MTQyODU3ZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMS41ZW0gIWltcG9ydGFudDtcbn1cbi8qIExlZnQgTGFiZWxlZCAqL1xuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zID4gLmJ1dHRvbiA+IC5pY29uLFxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b24gPiAuaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGFuaW1hdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMC43ODU3MTQyOWVtIDAgMC43ODU3MTQyOWVtIDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDIuNTcxNDI4NTdlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6ICcnO1xuICBib3gtc2hhZG93OiAtMXB4IDAgMCAwIHRyYW5zcGFyZW50IGluc2V0O1xufVxuLyogUmlnaHQgTGFiZWxlZCAqL1xuLnVpW2NsYXNzKj1cInJpZ2h0IGxhYmVsZWRcIl0uaWNvbi5idXR0b24ge1xuICBwYWRkaW5nLXJpZ2h0OiA0LjA3MTQyODU3ZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbSAhaW1wb3J0YW50O1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IGxhYmVsZWRcIl0uaWNvbi5idXR0b24gPiAuaWNvbiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJveC1zaGFkb3c6IDFweCAwIDAgMCB0cmFuc3BhcmVudCBpbnNldDtcbn1cbi51aS5sYWJlbGVkLmljb24uYnV0dG9ucyA+IC5idXR0b24gPiAuaWNvbjpiZWZvcmUsXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiA+IC5pY29uOmJlZm9yZSxcbi51aS5sYWJlbGVkLmljb24uYnV0dG9ucyA+IC5idXR0b24gPiAuaWNvbjphZnRlcixcbi51aS5sYWJlbGVkLmljb24uYnV0dG9uID4gLmljb246YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbiA+IC5pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi51aS5sYWJlbGVkLmljb24uYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkID4gLmljb24ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCA+IC5pY29uIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLnZlcnRpY2FsLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQgPiAuaWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG4udWkudmVydGljYWwubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkID4gLmljb24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLyogTG9hZGluZyBJY29uIGluIExhYmVsZWQgQnV0dG9uICovXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiA+IC5sb2FkaW5nLmljb246YmVmb3JlIHtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgMnMgbGluZWFyIGluZmluaXRlO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUb2dnbGVcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUb2dnbGUgKE1vZGlmaWVzIGFjdGl2ZSBzdGF0ZSB0byBnaXZlIGFmZm9yZGFuY2VzKSAqL1xuLnVpLnRvZ2dsZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJ1dHRvbnMgLmJ1dHRvbi50b2dnbGUuYWN0aXZlLFxuLnVpLmJ1dHRvbi50b2dnbGUuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmJ1dHRvbi50b2dnbGUuYWN0aXZlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2YWIzOTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENpcmN1bGFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNpcmN1bGFyLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDEwZW07XG59XG4udWkuY2lyY3VsYXIuYnV0dG9uID4gLmljb24ge1xuICB3aWR0aDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIE9yIEJ1dHRvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5idXR0b25zIC5vciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDAuM2VtO1xuICBoZWlnaHQ6IDIuNTcxNDI4NTdlbTtcbiAgei1pbmRleDogMztcbn1cbi51aS5idXR0b25zIC5vcjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBjb250ZW50OiAnb3InO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuODkyODU3MTRlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjg5Mjg1NzE0ZW07XG4gIHdpZHRoOiAxLjc4NTcxNDI5ZW07XG4gIGhlaWdodDogMS43ODU3MTQyOWVtO1xuICBsaW5lLWhlaWdodDogMS43ODU3MTQyOWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQgaW5zZXQ7XG59XG4udWkuYnV0dG9ucyAub3JbZGF0YS10ZXh0XTpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7XG59XG4vKiBGbHVpZCBPciAqL1xuLnVpLmZsdWlkLmJ1dHRvbnMgLm9yIHtcbiAgd2lkdGg6IDAgIWltcG9ydGFudDtcbn1cbi51aS5mbHVpZC5idXR0b25zIC5vcjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2luZ3VsYXIgKi9cbi51aS5hdHRhY2hlZC5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLyogVG9wIC8gQm90dG9tICovXG4udWkuYXR0YWNoZWQudG9wLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwIDA7XG59XG4udWkuYXR0YWNoZWQuYm90dG9tLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG59XG4vKiBMZWZ0IC8gUmlnaHQgKi9cbi51aS5sZWZ0LmF0dGFjaGVkLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMCAwIDAuMjg1NzE0MjlyZW07XG59XG4udWkucmlnaHQuYXR0YWNoZWQuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVlbTtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMDtcbn1cbi8qIFBsdXJhbCAqL1xuLnVpLmF0dGFjaGVkLmJ1dHRvbnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG4udWkuYXR0YWNoZWQuYnV0dG9ucyAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwO1xufVxuLnVpLmF0dGFjaGVkLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4udWkuYXR0YWNoZWQuYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLyogVG9wIC8gQm90dG9tICovXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmJ1dHRvbnMge1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAgMCAwO1xufVxuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yODU3MTQyOXJlbSAwIDA7XG59XG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLmJ1dHRvbnMge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuLnVpW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwLjI4NTcxNDI5cmVtO1xufVxuLnVpW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDA7XG59XG4vKiBMZWZ0IC8gUmlnaHQgKi9cbi51aVtjbGFzcyo9XCJsZWZ0IGF0dGFjaGVkXCJdLmJ1dHRvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMDtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGF0dGFjaGVkXCJdLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLnVpW2NsYXNzKj1cImxlZnQgYXR0YWNoZWRcIl0uYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMDtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBhdHRhY2hlZFwiXS5idXR0b25zIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMCAwIDAuMjg1NzE0MjlyZW07XG59XG4udWlbY2xhc3MqPVwicmlnaHQgYXR0YWNoZWRcIl0uYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMCAwIDA7XG59XG4udWlbY2xhc3MqPVwicmlnaHQgYXR0YWNoZWRcIl0uYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMC4yODU3MTQyOXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZsdWlkLmJ1dHRvbnMsXG4udWkuZmx1aWQuYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkuZmx1aWQuYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udWkudHdvLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS50d28uYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogNTAlO1xufVxuLnVpLnRocmVlLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS50aHJlZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuLnVpLmZvdXIuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmZvdXIuYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogMjUlO1xufVxuLnVpLmZpdmUuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmZpdmUuYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogMjAlO1xufVxuLnVpLnNpeC5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkuc2l4LmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDE2LjY2NiU7XG59XG4udWkuc2V2ZW4uYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnNldmVuLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDE0LjI4NSU7XG59XG4udWkuZWlnaHQuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmVpZ2h0LmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuLnVpLm5pbmUuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLm5pbmUuYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogMTEuMTElO1xufVxuLnVpLnRlbi5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkudGVuLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDEwJTtcbn1cbi51aS5lbGV2ZW4uYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmVsZXZlbi5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiA5LjA5JTtcbn1cbi51aS50d2VsdmUuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnR3ZWx2ZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiA4LjMzMzMlO1xufVxuLyogRmx1aWQgVmVydGljYWwgQnV0dG9ucyAqL1xuLnVpLmZsdWlkLnZlcnRpY2FsLmJ1dHRvbnMsXG4udWkuZmx1aWQudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogYXV0bztcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4udWkudHdvLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiA1MCU7XG59XG4udWkudGhyZWUudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDMzLjMzMyU7XG59XG4udWkuZm91ci52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMjUlO1xufVxuLnVpLmZpdmUudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDIwJTtcbn1cbi51aS5zaXgudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDE2LjY2NiU7XG59XG4udWkuc2V2ZW4udmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDE0LjI4NSU7XG59XG4udWkuZWlnaHQudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDEyLjUlO1xufVxuLnVpLm5pbmUudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDExLjExJTtcbn1cbi51aS50ZW4udmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDEwJTtcbn1cbi51aS5lbGV2ZW4udmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDkuMDklO1xufVxuLnVpLnR3ZWx2ZS52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogOC4zMzMzJTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnByaW1hcnkuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLnVpLnByaW1hcnkuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnByaW1hcnkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2NzhjMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnByaW1hcnkuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNzFiYjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5wcmltYXJ5LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWE2OWE0O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkucHJpbWFyeS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkucHJpbWFyeS5hY3RpdmUuYnV0dG9uLFxuLnVpLnByaW1hcnkuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjc5YzY7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMucHJpbWFyeS5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMucHJpbWFyeS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMyMTg1RDAgaW5zZXQ7XG4gIGNvbG9yOiAjMjE4NUQwO1xufVxuLnVpLmJhc2ljLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnByaW1hcnkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzE2NzhjMiBpbnNldDtcbiAgY29sb3I6ICMxNjc4YzI7XG59XG4udWkuYmFzaWMucHJpbWFyeS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMucHJpbWFyeS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMGQ3MWJiIGluc2V0O1xuICBjb2xvcjogIzE2NzhjMjtcbn1cbi51aS5iYXNpYy5wcmltYXJ5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMucHJpbWFyeS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzEyNzljNiBpbnNldDtcbiAgY29sb3I6ICMxYTY5YTQ7XG59XG4udWkuYmFzaWMucHJpbWFyeS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnByaW1hcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMWE2OWE0IGluc2V0O1xuICBjb2xvcjogIzFhNjlhNDtcbn1cbi51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLnByaW1hcnkuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNTRDOEZGIGluc2V0O1xuICBjb2xvcjogIzU0QzhGRjtcbn1cbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBub25lIDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFiOGZmO1xufVxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJiYmJmZjtcbn1cbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhYzBmZjtcbn1cbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxYjhmZjtcbn1cbi8qIEludmVydGVkIEJhc2ljICovXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzIxYjhmZiBpbnNldDtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzJiYmJmZiBpbnNldDtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzNhYzBmZiBpbnNldDtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzIxYjhmZiBpbnNldDtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG4vKiBUZXJ0aWFyeSAqL1xuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjMjE4NUQwO1xufVxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9ucyBidXR0b246aG92ZXIsXG4udWkudGVydGlhcnkucHJpbWFyeS5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICMyYjc1YWM7XG4gIGNvbG9yOiAjMmI3NWFjO1xufVxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmZvY3VzLFxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjMjE2ZWE3O1xuICBjb2xvcjogIzIxNmVhNztcbn1cbi51aS50ZXJ0aWFyeS5wcmltYXJ5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkucHJpbWFyeS5idXR0b25zIC50ZXJ0aWFyeS5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkucHJpbWFyeS5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LnByaW1hcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzAwN2JkODtcbiAgY29sb3I6ICMxMjc5YzY7XG59XG4udWkuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5zZWNvbmRhcnkuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLnVpLnNlY29uZGFyeS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5zZWNvbmRhcnkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MjkyYTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnNlY29uZGFyeS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuc2Vjb25kYXJ5LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZTMwMzI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDM2Mzc7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5zZWNvbmRhcnkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5zZWNvbmRhcnkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkuc2Vjb25kYXJ5LmFjdGl2ZS5idXR0b24sXG4udWkuc2Vjb25kYXJ5LmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyOTJhO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLnNlY29uZGFyeS5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMuc2Vjb25kYXJ5LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzFCMUMxRCBpbnNldDtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4udWkuYmFzaWMuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzI3MjkyYSBpbnNldDtcbiAgY29sb3I6ICMyNzI5MmE7XG59XG4udWkuYmFzaWMuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzJlMzAzMiBpbnNldDtcbiAgY29sb3I6ICMyNzI5MmE7XG59XG4udWkuYmFzaWMuc2Vjb25kYXJ5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMuc2Vjb25kYXJ5LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMjcyOTJhIGluc2V0O1xuICBjb2xvcjogIzM0MzYzNztcbn1cbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMzQzNjM3IGluc2V0O1xuICBjb2xvcjogIzM0MzYzNztcbn1cbi51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLnNlY29uZGFyeS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNTQ1NDU0IGluc2V0O1xuICBjb2xvcjogIzU0NTQ1NDtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZTZlNmU7XG59XG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY4Njg2ODtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MTYxNjE7XG59XG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmU2ZTZlO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNmU2ZTZlIGluc2V0O1xuICBjb2xvcjogIzU0NTQ1NDtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNjg2ODY4IGluc2V0O1xuICBjb2xvcjogIzU0NTQ1NDtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNjE2MTYxIGluc2V0O1xuICBjb2xvcjogIzU0NTQ1NDtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNmU2ZTZlIGluc2V0O1xuICBjb2xvcjogIzU0NTQ1NDtcbn1cbi8qIFRlcnRpYXJ5ICovXG4udWkudGVydGlhcnkuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5zZWNvbmRhcnkuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnNlY29uZGFyeS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4udWkudGVydGlhcnkuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5zZWNvbmRhcnkuYnV0dG9ucyBidXR0b246aG92ZXIsXG4udWkudGVydGlhcnkuc2Vjb25kYXJ5LmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzI5MjkyOTtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG4udWkudGVydGlhcnkuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5zZWNvbmRhcnkuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmZvY3VzLFxuLnVpLnRlcnRpYXJ5LnNlY29uZGFyeS5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICMzMDMwMzA7XG4gIGNvbG9yOiAjMzAzMDMwO1xufVxuLnVpLnRlcnRpYXJ5LnNlY29uZGFyeS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnNlY29uZGFyeS5idXR0b25zIC50ZXJ0aWFyeS5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnNlY29uZGFyeS5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnNlY29uZGFyeS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LnNlY29uZGFyeS5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LnNlY29uZGFyeS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjMWYyOTMzO1xuICBjb2xvcjogIzI3MjkyYTtcbn1cbi51aS5yZWQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnJlZC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4udWkucmVkLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi51aS5yZWQuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnJlZC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAxOTE5O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkucmVkLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5yZWQuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NhMTAxMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnJlZC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnJlZC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IyMWUxZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnJlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnJlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5yZWQuYWN0aXZlLmJ1dHRvbixcbi51aS5yZWQuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNDE1MTU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMucmVkLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5yZWQuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjREIyODI4IGluc2V0O1xuICBjb2xvcjogI0RCMjgyODtcbn1cbi51aS5iYXNpYy5yZWQuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnJlZC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZDAxOTE5IGluc2V0O1xuICBjb2xvcjogI2QwMTkxOTtcbn1cbi51aS5iYXNpYy5yZWQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLnJlZC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjY2ExMDEwIGluc2V0O1xuICBjb2xvcjogI2QwMTkxOTtcbn1cbi51aS5iYXNpYy5yZWQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5yZWQuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNkNDE1MTUgaW5zZXQ7XG4gIGNvbG9yOiAjYjIxZTFlO1xufVxuLnVpLmJhc2ljLnJlZC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnJlZC5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNiMjFlMWUgaW5zZXQ7XG4gIGNvbG9yOiAjYjIxZTFlO1xufVxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMucmVkLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNGRjY5NUUgaW5zZXQ7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnJlZC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBub25lIDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMzkyYjtcbn1cbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnJlZC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY0MzM1O1xufVxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNTE0NDtcbn1cbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjM5MmI7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5yZWQuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZjM5MmIgaW5zZXQ7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucmVkLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5yZWQuYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZjQzMzUgaW5zZXQ7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZjUxNDQgaW5zZXQ7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZjM5MmIgaW5zZXQ7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuLyogVGVydGlhcnkgKi9cbi51aS50ZXJ0aWFyeS5yZWQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnJlZC5idXR0b25zIC50ZXJ0aWFyeS5idXR0b24sXG4udWkudGVydGlhcnkucmVkLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogI0RCMjgyODtcbn1cbi51aS50ZXJ0aWFyeS5yZWQuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5LnJlZC5idXR0b25zIGJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5yZWQuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjYjkzMTMxO1xuICBjb2xvcjogI2I5MzEzMTtcbn1cbi51aS50ZXJ0aWFyeS5yZWQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnRlcnRpYXJ5LnJlZC5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkucmVkLmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgI2I1MjYyNjtcbiAgY29sb3I6ICNiNTI2MjY7XG59XG4udWkudGVydGlhcnkucmVkLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkucmVkLmJ1dHRvbnMgLnRlcnRpYXJ5LmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkucmVkLmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkucmVkLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkucmVkLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkucmVkLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICNlYTAwMDA7XG4gIGNvbG9yOiAjZDQxNTE1O1xufVxuLnVpLm9yYW5nZS5idXR0b25zIC5idXR0b24sXG4udWkub3JhbmdlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjcxMUM7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi51aS5vcmFuZ2UuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLm9yYW5nZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkub3JhbmdlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMjYyMDI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLm9yYW5nZS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTU1YjAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkub3JhbmdlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2Y1OTBjO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkub3JhbmdlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkub3JhbmdlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLm9yYW5nZS5hY3RpdmUuYnV0dG9uLFxuLnVpLm9yYW5nZS5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1NjEwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLyogQmFzaWMgKi9cbi51aS5iYXNpYy5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNGMjcxMUMgaW5zZXQ7XG4gIGNvbG9yOiAjRjI3MTFDO1xufVxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMub3JhbmdlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmMjYyMDIgaW5zZXQ7XG4gIGNvbG9yOiAjZjI2MjAyO1xufVxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMub3JhbmdlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNlNTViMDAgaW5zZXQ7XG4gIGNvbG9yOiAjZjI2MjAyO1xufVxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLm9yYW5nZS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2Y1NjEwMCBpbnNldDtcbiAgY29sb3I6ICNjZjU5MGM7XG59XG4udWkuYmFzaWMub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMub3JhbmdlLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2NmNTkwYyBpbnNldDtcbiAgY29sb3I6ICNjZjU5MGM7XG59XG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5vcmFuZ2UuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI0ZGODUxQiBpbnNldDtcbiAgY29sb3I6ICNGRjg1MUI7XG59XG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTc2YjAwO1xufVxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMTcwMDA7XG59XG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY3NzAxO1xufVxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U3NmIwMDtcbn1cbi8qIEludmVydGVkIEJhc2ljICovXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLm9yYW5nZS5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLm9yYW5nZS5iYXNpYy5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI2U3NmIwMCBpbnNldDtcbiAgY29sb3I6ICNGRjg1MUI7XG59XG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLm9yYW5nZS5iYXNpYy5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI2YxNzAwMCBpbnNldDtcbiAgY29sb3I6ICNGRjg1MUI7XG59XG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI2ZmNzcwMSBpbnNldDtcbiAgY29sb3I6ICNGRjg1MUI7XG59XG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI2U3NmIwMCBpbnNldDtcbiAgY29sb3I6ICNGRjg1MUI7XG59XG4vKiBUZXJ0aWFyeSAqL1xuLnVpLnRlcnRpYXJ5Lm9yYW5nZS5idXR0b25zIC5idXR0b24sXG4udWkudGVydGlhcnkub3JhbmdlLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5vcmFuZ2UuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjRjI3MTFDO1xufVxuLnVpLnRlcnRpYXJ5Lm9yYW5nZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkudGVydGlhcnkub3JhbmdlLmJ1dHRvbnMgYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5Lm9yYW5nZS5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICNkYTY3MWI7XG4gIGNvbG9yOiAjZGE2NzFiO1xufVxuLnVpLnRlcnRpYXJ5Lm9yYW5nZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkub3JhbmdlLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5vcmFuZ2UuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjY2U2MDE3O1xuICBjb2xvcjogI2NlNjAxNztcbn1cbi51aS50ZXJ0aWFyeS5vcmFuZ2UuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5vcmFuZ2UuYnV0dG9ucyAudGVydGlhcnkuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5vcmFuZ2UuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS5vcmFuZ2UuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS5vcmFuZ2UuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgI2Y1NjEwMDtcbiAgY29sb3I6ICNmNTYxMDA7XG59XG4udWkueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS55ZWxsb3cuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwODtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLnVpLnllbGxvdy5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS55ZWxsb3cuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhYWUwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnllbGxvdy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkueWVsbG93LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWEzMDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS55ZWxsb3cuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZDk5MDM7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS55ZWxsb3cuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS55ZWxsb3cuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkueWVsbG93LmFjdGl2ZS5idXR0b24sXG4udWkueWVsbG93LmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFhZTAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLnllbGxvdy5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMueWVsbG93LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0ZCQkQwOCBpbnNldDtcbiAgY29sb3I6ICNGQkJEMDg7XG59XG4udWkuYmFzaWMueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2VhYWUwMCBpbnNldDtcbiAgY29sb3I6ICNlYWFlMDA7XG59XG4udWkuYmFzaWMueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2RhYTMwMCBpbnNldDtcbiAgY29sb3I6ICNlYWFlMDA7XG59XG4udWkuYmFzaWMueWVsbG93LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMueWVsbG93LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZWFhZTAwIGluc2V0O1xuICBjb2xvcjogI2NkOTkwMztcbn1cbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjY2Q5OTAzIGluc2V0O1xuICBjb2xvcjogI2NkOTkwMztcbn1cbi51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLnllbGxvdy5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjRkZFMjFGIGluc2V0O1xuICBjb2xvcjogI0ZGRTIxRjtcbn1cbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViY2QwMDtcbn1cbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVkNTAwO1xufVxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnllbGxvdy5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGYwNTtcbn1cbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmNkMDA7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNlYmNkMDAgaW5zZXQ7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmNWQ1MDAgaW5zZXQ7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZmRmMDUgaW5zZXQ7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNlYmNkMDAgaW5zZXQ7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuLyogVGVydGlhcnkgKi9cbi51aS50ZXJ0aWFyeS55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnllbGxvdy5idXR0b25zIC50ZXJ0aWFyeS5idXR0b24sXG4udWkudGVydGlhcnkueWVsbG93LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogI0ZCQkQwODtcbn1cbi51aS50ZXJ0aWFyeS55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5LnllbGxvdy5idXR0b25zIGJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS55ZWxsb3cuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjZDJhMjE3O1xuICBjb2xvcjogI2QyYTIxNztcbn1cbi51aS50ZXJ0aWFyeS55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnRlcnRpYXJ5LnllbGxvdy5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkueWVsbG93LmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgI2M0OTgxNjtcbiAgY29sb3I6ICNjNDk4MTY7XG59XG4udWkudGVydGlhcnkueWVsbG93LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkueWVsbG93LmJ1dHRvbnMgLnRlcnRpYXJ5LmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkueWVsbG93LmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkueWVsbG93LmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkueWVsbG93LmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICNlYWFlMDA7XG4gIGNvbG9yOiAjZWFhZTAwO1xufVxuLnVpLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5vbGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjVDQzE4O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4udWkub2xpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5vbGl2ZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdiZDBkO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLm9saXZlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMGI2MDU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5vbGl2ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLm9saXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGQ5ZTEzO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkub2xpdmUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5vbGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5vbGl2ZS5hY3RpdmUuYnV0dG9uLFxuLnVpLm9saXZlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFjMTA5O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5vbGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNCNUNDMTggaW5zZXQ7XG4gIGNvbG9yOiAjQjVDQzE4O1xufVxuLnVpLmJhc2ljLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5vbGl2ZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjYTdiZDBkIGluc2V0O1xuICBjb2xvcjogI2E3YmQwZDtcbn1cbi51aS5iYXNpYy5vbGl2ZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMub2xpdmUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2EwYjYwNSBpbnNldDtcbiAgY29sb3I6ICNhN2JkMGQ7XG59XG4udWkuYmFzaWMub2xpdmUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5vbGl2ZS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2FhYzEwOSBpbnNldDtcbiAgY29sb3I6ICM4ZDllMTM7XG59XG4udWkuYmFzaWMub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5vbGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM4ZDllMTMgaW5zZXQ7XG4gIGNvbG9yOiAjOGQ5ZTEzO1xufVxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMub2xpdmUuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNEOUU3NzggaW5zZXQ7XG4gIGNvbG9yOiAjRDlFNzc4O1xufVxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMmU3NDU7XG59XG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWVmNDc7XG59XG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vbGl2ZS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhZWQ1OTtcbn1cbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2RkZjRkO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLm9saXZlLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLm9saXZlLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZDJlNzQ1IGluc2V0O1xuICBjb2xvcjogI0Q5RTc3ODtcbn1cbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLm9saXZlLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZGFlZjQ3IGluc2V0O1xuICBjb2xvcjogI0Q5RTc3ODtcbn1cbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQub2xpdmUuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZGFlZDU5IGluc2V0O1xuICBjb2xvcjogI0Q5RTc3ODtcbn1cbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjY2RkZjRkIGluc2V0O1xuICBjb2xvcjogI0Q5RTc3ODtcbn1cbi8qIFRlcnRpYXJ5ICovXG4udWkudGVydGlhcnkub2xpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5Lm9saXZlLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5vbGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICNCNUNDMTg7XG59XG4udWkudGVydGlhcnkub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5Lm9saXZlLmJ1dHRvbnMgYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5Lm9saXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzk4YTkyMjtcbiAgY29sb3I6ICM5OGE5MjI7XG59XG4udWkudGVydGlhcnkub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnRlcnRpYXJ5Lm9saXZlLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5vbGl2ZS5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICM5MmE0MTg7XG4gIGNvbG9yOiAjOTJhNDE4O1xufVxuLnVpLnRlcnRpYXJ5Lm9saXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkub2xpdmUuYnV0dG9ucyAudGVydGlhcnkuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5vbGl2ZS5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5Lm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkub2xpdmUuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS5vbGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjYjFjYjAwO1xuICBjb2xvcjogI2FhYzEwOTtcbn1cbi51aS5ncmVlbi5idXR0b25zIC5idXR0b24sXG4udWkuZ3JlZW4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLnVpLmdyZWVuLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi51aS5ncmVlbi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuZ3JlZW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2YWIzOTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5ncmVlbi5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGVhNDMyO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5ncmVlbi5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5OGYzNTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLmdyZWVuLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuZ3JlZW4uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkuZ3JlZW4uYWN0aXZlLmJ1dHRvbixcbi51aS5ncmVlbi5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEzYWUzODtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLyogQmFzaWMgKi9cbi51aS5iYXNpYy5ncmVlbi5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMjFCQTQ1IGluc2V0O1xuICBjb2xvcjogIzIxQkE0NTtcbn1cbi51aS5iYXNpYy5ncmVlbi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzE2YWIzOSBpbnNldDtcbiAgY29sb3I6ICMxNmFiMzk7XG59XG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLmdyZWVuLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMwZWE0MzIgaW5zZXQ7XG4gIGNvbG9yOiAjMTZhYjM5O1xufVxuLnVpLmJhc2ljLmdyZWVuLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMuZ3JlZW4uYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMxM2FlMzggaW5zZXQ7XG4gIGNvbG9yOiAjMTk4ZjM1O1xufVxuLnVpLmJhc2ljLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMTk4ZjM1IGluc2V0O1xuICBjb2xvcjogIzE5OGYzNTtcbn1cbi51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLmdyZWVuLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjMkVDQzQwIGluc2V0O1xuICBjb2xvcjogIzJFQ0M0MDtcbn1cbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlYTkyZTtcbn1cbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5YjgyYjtcbn1cbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmdyZWVuLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWZjMjMxO1xufVxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNWEyMzM7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICMxZWE5MmUgaW5zZXQ7XG4gIGNvbG9yOiAjMkVDQzQwO1xufVxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICMxOWI4MmIgaW5zZXQ7XG4gIGNvbG9yOiAjMkVDQzQwO1xufVxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICMxZmMyMzEgaW5zZXQ7XG4gIGNvbG9yOiAjMkVDQzQwO1xufVxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICMyNWEyMzMgaW5zZXQ7XG4gIGNvbG9yOiAjMkVDQzQwO1xufVxuLyogVGVydGlhcnkgKi9cbi51aS50ZXJ0aWFyeS5ncmVlbi5idXR0b25zIC5idXR0b24sXG4udWkudGVydGlhcnkuZ3JlZW4uYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LmdyZWVuLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzIxQkE0NTtcbn1cbi51aS50ZXJ0aWFyeS5ncmVlbi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkudGVydGlhcnkuZ3JlZW4uYnV0dG9ucyBidXR0b246aG92ZXIsXG4udWkudGVydGlhcnkuZ3JlZW4uYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjMmE5ODQ0O1xuICBjb2xvcjogIzJhOTg0NDtcbn1cbi51aS50ZXJ0aWFyeS5ncmVlbi5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkuZ3JlZW4uYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmZvY3VzLFxuLnVpLnRlcnRpYXJ5LmdyZWVuLmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzIwOTIzYjtcbiAgY29sb3I6ICMyMDkyM2I7XG59XG4udWkudGVydGlhcnkuZ3JlZW4uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ncmVlbi5idXR0b25zIC50ZXJ0aWFyeS5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LmdyZWVuLmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS5ncmVlbi5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LmdyZWVuLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICMwMGMyMmU7XG4gIGNvbG9yOiAjMTNhZTM4O1xufVxuLnVpLnRlYWwuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnRlYWwuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLnVpLnRlYWwuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnRlYWwuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOWM5NTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnRlYWwuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOGM4NjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZWFsLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4MjdjO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkudGVhbC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlYWwuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkudGVhbC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlYWwuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDljOTU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMudGVhbC5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMudGVhbC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMwMEI1QUQgaW5zZXQ7XG4gIGNvbG9yOiAjMDBCNUFEO1xufVxuLnVpLmJhc2ljLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnRlYWwuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzAwOWM5NSBpbnNldDtcbiAgY29sb3I6ICMwMDljOTU7XG59XG4udWkuYmFzaWMudGVhbC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMudGVhbC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMDA4Yzg2IGluc2V0O1xuICBjb2xvcjogIzAwOWM5NTtcbn1cbi51aS5iYXNpYy50ZWFsLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMudGVhbC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzAwOWM5NSBpbnNldDtcbiAgY29sb3I6ICMwMDgyN2M7XG59XG4udWkuYmFzaWMudGVhbC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnRlYWwuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMDA4MjdjIGluc2V0O1xuICBjb2xvcjogIzAwODI3Yztcbn1cbi51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLnRlYWwuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNkRGRkZGIGluc2V0O1xuICBjb2xvcjogIzZERkZGRjtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBub25lIDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWZmZmY7XG59XG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDRmZmZmO1xufVxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC50ZWFsLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTRmZmZmO1xufVxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FmZmZmO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjM2FmZmZmIGluc2V0O1xuICBjb2xvcjogIzZERkZGRjtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNDRmZmZmIGluc2V0O1xuICBjb2xvcjogIzZERkZGRjtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjNTRmZmZmIGluc2V0O1xuICBjb2xvcjogIzZERkZGRjtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjM2FmZmZmIGluc2V0O1xuICBjb2xvcjogIzZERkZGRjtcbn1cbi8qIFRlcnRpYXJ5ICovXG4udWkudGVydGlhcnkudGVhbC5idXR0b25zIC5idXR0b24sXG4udWkudGVydGlhcnkudGVhbC5idXR0b25zIC50ZXJ0aWFyeS5idXR0b24sXG4udWkudGVydGlhcnkudGVhbC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICMwMEI1QUQ7XG59XG4udWkudGVydGlhcnkudGVhbC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkudGVydGlhcnkudGVhbC5idXR0b25zIGJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS50ZWFsLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzEwOGM4NjtcbiAgY29sb3I6ICMxMDhjODY7XG59XG4udWkudGVydGlhcnkudGVhbC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkudGVhbC5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkudGVhbC5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICMwZTdlNzk7XG4gIGNvbG9yOiAjMGU3ZTc5O1xufVxuLnVpLnRlcnRpYXJ5LnRlYWwuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS50ZWFsLmJ1dHRvbnMgLnRlcnRpYXJ5LmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkudGVhbC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnRlYWwuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS50ZWFsLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkudGVhbC5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjMDA5Yzk1O1xuICBjb2xvcjogIzAwOWM5NTtcbn1cbi51aS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5ibHVlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg1RDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi51aS5ibHVlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi51aS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5ibHVlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjc4YzI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5ibHVlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDcxYmI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmx1ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFhNjlhNDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLmJsdWUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5ibHVlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLmJsdWUuYWN0aXZlLmJ1dHRvbixcbi51aS5ibHVlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI3OWM2O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmJsdWUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmJsdWUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMjE4NUQwIGluc2V0O1xuICBjb2xvcjogIzIxODVEMDtcbn1cbi51aS5iYXNpYy5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5ibHVlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMxNjc4YzIgaW5zZXQ7XG4gIGNvbG9yOiAjMTY3OGMyO1xufVxuLnVpLmJhc2ljLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLmJsdWUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzBkNzFiYiBpbnNldDtcbiAgY29sb3I6ICMxNjc4YzI7XG59XG4udWkuYmFzaWMuYmx1ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLmJsdWUuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMxMjc5YzYgaW5zZXQ7XG4gIGNvbG9yOiAjMWE2OWE0O1xufVxuLnVpLmJhc2ljLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5ibHVlLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzFhNjlhNCBpbnNldDtcbiAgY29sb3I6ICMxYTY5YTQ7XG59XG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5ibHVlLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzU0QzhGRiBpbnNldDtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxYjhmZjtcbn1cbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYmJiZmY7XG59XG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsdWUuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWMwZmY7XG59XG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMWI4ZmY7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICMyMWI4ZmYgaW5zZXQ7XG4gIGNvbG9yOiAjNTRDOEZGO1xufVxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICMyYmJiZmYgaW5zZXQ7XG4gIGNvbG9yOiAjNTRDOEZGO1xufVxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmx1ZS5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICMzYWMwZmYgaW5zZXQ7XG4gIGNvbG9yOiAjNTRDOEZGO1xufVxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICMyMWI4ZmYgaW5zZXQ7XG4gIGNvbG9yOiAjNTRDOEZGO1xufVxuLyogVGVydGlhcnkgKi9cbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzIxODVEMDtcbn1cbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbnMgYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5LmJsdWUuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjMmI3NWFjO1xuICBjb2xvcjogIzJiNzVhYztcbn1cbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzIxNmVhNztcbiAgY29sb3I6ICMyMTZlYTc7XG59XG4udWkudGVydGlhcnkuYmx1ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LmJsdWUuYnV0dG9ucyAudGVydGlhcnkuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ibHVlLmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkuYmx1ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LmJsdWUuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS5ibHVlLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICMwMDdiZDg7XG4gIGNvbG9yOiAjMTI3OWM2O1xufVxuLnVpLnZpb2xldC5idXR0b25zIC5idXR0b24sXG4udWkudmlvbGV0LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDM1Qzk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi51aS52aW9sZXQuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLnZpb2xldC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkudmlvbGV0LmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODI5YmI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS52aW9sZXQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnZpb2xldC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGYyMGI1O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkudmlvbGV0LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTAyYWExO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkudmlvbGV0LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkudmlvbGV0LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnZpb2xldC5hY3RpdmUuYnV0dG9uLFxuLnVpLnZpb2xldC5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2MjZiZjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLyogQmFzaWMgKi9cbi51aS5iYXNpYy52aW9sZXQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnZpb2xldC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM2NDM1QzkgaW5zZXQ7XG4gIGNvbG9yOiAjNjQzNUM5O1xufVxuLnVpLmJhc2ljLnZpb2xldC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMudmlvbGV0LmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM1ODI5YmIgaW5zZXQ7XG4gIGNvbG9yOiAjNTgyOWJiO1xufVxuLnVpLmJhc2ljLnZpb2xldC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMudmlvbGV0LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM0ZjIwYjUgaW5zZXQ7XG4gIGNvbG9yOiAjNTgyOWJiO1xufVxuLnVpLmJhc2ljLnZpb2xldC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLnZpb2xldC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzU2MjZiZiBpbnNldDtcbiAgY29sb3I6ICM1MDJhYTE7XG59XG4udWkuYmFzaWMudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMudmlvbGV0LmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzUwMmFhMSBpbnNldDtcbiAgY29sb3I6ICM1MDJhYTE7XG59XG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy52aW9sZXQuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLnZpb2xldC5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI0EyOTFGQiBpbnNldDtcbiAgY29sb3I6ICNBMjkxRkI7XG59XG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzQ1YWZmO1xufVxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZDY0ZmY7XG59XG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE3M2ZmO1xufVxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc4NjBmOTtcbn1cbi8qIEludmVydGVkIEJhc2ljICovXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLnZpb2xldC5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnZpb2xldC5iYXNpYy5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzc0NWFmZiBpbnNldDtcbiAgY29sb3I6ICNBMjkxRkI7XG59XG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC52aW9sZXQuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnZpb2xldC5iYXNpYy5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzdkNjRmZiBpbnNldDtcbiAgY29sb3I6ICNBMjkxRkI7XG59XG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzhhNzNmZiBpbnNldDtcbiAgY29sb3I6ICNBMjkxRkI7XG59XG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzc4NjBmOSBpbnNldDtcbiAgY29sb3I6ICNBMjkxRkI7XG59XG4vKiBUZXJ0aWFyeSAqL1xuLnVpLnRlcnRpYXJ5LnZpb2xldC5idXR0b25zIC5idXR0b24sXG4udWkudGVydGlhcnkudmlvbGV0LmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbixcbi51aS50ZXJ0aWFyeS52aW9sZXQuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjNjQzNUM5O1xufVxuLnVpLnRlcnRpYXJ5LnZpb2xldC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkudGVydGlhcnkudmlvbGV0LmJ1dHRvbnMgYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5LnZpb2xldC5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICM2MDQwYTU7XG4gIGNvbG9yOiAjNjA0MGE1O1xufVxuLnVpLnRlcnRpYXJ5LnZpb2xldC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkudmlvbGV0LmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS52aW9sZXQuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjNTczNWEwO1xuICBjb2xvcjogIzU3MzVhMDtcbn1cbi51aS50ZXJ0aWFyeS52aW9sZXQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS52aW9sZXQuYnV0dG9ucyAudGVydGlhcnkuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS52aW9sZXQuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS52aW9sZXQuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS52aW9sZXQuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS52aW9sZXQuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzRlMGZkNjtcbiAgY29sb3I6ICM1NjI2YmY7XG59XG4udWkucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5wdXJwbGUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EzMzNDODtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLnVpLnB1cnBsZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5wdXJwbGUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk2MjdiYTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnB1cnBsZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkucHVycGxlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ZjFlYjQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5wdXJwbGUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MjI5OWY7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5wdXJwbGUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5wdXJwbGUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkucHVycGxlLmFjdGl2ZS5idXR0b24sXG4udWkucHVycGxlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTcyNGJlO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLnB1cnBsZS5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0EzMzNDOCBpbnNldDtcbiAgY29sb3I6ICNBMzMzQzg7XG59XG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzk2MjdiYSBpbnNldDtcbiAgY29sb3I6ICM5NjI3YmE7XG59XG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzhmMWViNCBpbnNldDtcbiAgY29sb3I6ICM5NjI3YmE7XG59XG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMucHVycGxlLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjOTcyNGJlIGluc2V0O1xuICBjb2xvcjogIzgyMjk5Zjtcbn1cbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjODIyOTlmIGluc2V0O1xuICBjb2xvcjogIzgyMjk5Zjtcbn1cbi51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLnB1cnBsZS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjREM3M0ZGIGluc2V0O1xuICBjb2xvcjogI0RDNzNGRjtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZjQwZmY7XG59XG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyNGFmZjtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wdXJwbGUuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNjVhZmY7XG59XG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2Y0MGZmO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjY2Y0MGZmIGluc2V0O1xuICBjb2xvcjogI0RDNzNGRjtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnB1cnBsZS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZDI0YWZmIGluc2V0O1xuICBjb2xvcjogI0RDNzNGRjtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZDY1YWZmIGluc2V0O1xuICBjb2xvcjogI0RDNzNGRjtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjY2Y0MGZmIGluc2V0O1xuICBjb2xvcjogI0RDNzNGRjtcbn1cbi8qIFRlcnRpYXJ5ICovXG4udWkudGVydGlhcnkucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5wdXJwbGUuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnB1cnBsZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICNBMzMzQzg7XG59XG4udWkudGVydGlhcnkucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5wdXJwbGUuYnV0dG9ucyBidXR0b246aG92ZXIsXG4udWkudGVydGlhcnkucHVycGxlLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzhhM2VhNDtcbiAgY29sb3I6ICM4YTNlYTQ7XG59XG4udWkudGVydGlhcnkucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5wdXJwbGUuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmZvY3VzLFxuLnVpLnRlcnRpYXJ5LnB1cnBsZS5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICM4NDMzOWY7XG4gIGNvbG9yOiAjODQzMzlmO1xufVxuLnVpLnRlcnRpYXJ5LnB1cnBsZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnB1cnBsZS5idXR0b25zIC50ZXJ0aWFyeS5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnB1cnBsZS5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnB1cnBsZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LnB1cnBsZS5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LnB1cnBsZS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjYTMwZGQ0O1xuICBjb2xvcjogIzk3MjRiZTtcbn1cbi51aS5waW5rLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5waW5rLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTc7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi51aS5waW5rLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi51aS5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5waW5rLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNjFhOGQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5waW5rLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMTBmODU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5waW5rLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkucGluay5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M3MWY3ZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnBpbmsuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5waW5rLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnBpbmsuYWN0aXZlLmJ1dHRvbixcbi51aS5waW5rLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWExNThkO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLnBpbmsuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnBpbmsuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRTAzOTk3IGluc2V0O1xuICBjb2xvcjogI0UwMzk5Nztcbn1cbi51aS5iYXNpYy5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5waW5rLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNlNjFhOGQgaW5zZXQ7XG4gIGNvbG9yOiAjZTYxYThkO1xufVxuLnVpLmJhc2ljLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLnBpbmsuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2UxMGY4NSBpbnNldDtcbiAgY29sb3I6ICNlNjFhOGQ7XG59XG4udWkuYmFzaWMucGluay5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLnBpbmsuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNlYTE1OGQgaW5zZXQ7XG4gIGNvbG9yOiAjYzcxZjdlO1xufVxuLnVpLmJhc2ljLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5waW5rLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2M3MWY3ZSBpbnNldDtcbiAgY29sb3I6ICNjNzFmN2U7XG59XG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5waW5rLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI0ZGOEVERiBpbnNldDtcbiAgY29sb3I6ICNGRjhFREY7XG59XG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNWJkMTtcbn1cbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjY1ZDM7XG59XG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnBpbmsuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjc0ZDg7XG59XG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjViZDE7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZjViZDEgaW5zZXQ7XG4gIGNvbG9yOiAjRkY4RURGO1xufVxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZjY1ZDMgaW5zZXQ7XG4gIGNvbG9yOiAjRkY4RURGO1xufVxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucGluay5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZjc0ZDggaW5zZXQ7XG4gIGNvbG9yOiAjRkY4RURGO1xufVxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucGluay5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZjViZDEgaW5zZXQ7XG4gIGNvbG9yOiAjRkY4RURGO1xufVxuLyogVGVydGlhcnkgKi9cbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogI0UwMzk5Nztcbn1cbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbnMgYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5LnBpbmsuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjY2MzMzg5O1xuICBjb2xvcjogI2NjMzM4OTtcbn1cbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgI2M5Mjc4MjtcbiAgY29sb3I6ICNjOTI3ODI7XG59XG4udWkudGVydGlhcnkucGluay5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LnBpbmsuYnV0dG9ucyAudGVydGlhcnkuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5waW5rLmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkucGluay5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LnBpbmsuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS5waW5rLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICNmZjAwOTA7XG4gIGNvbG9yOiAjZWExNThkO1xufVxuLnVpLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5icm93bi5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTU2NzNGO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4udWkuYnJvd24uYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5icm93bi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTc1YjMzO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkuYnJvd24uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJyb3duLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MDUzMmI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5icm93bi5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJyb3duLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODA1MDMxO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkuYnJvd24uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5icm93bi5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5icm93bi5hY3RpdmUuYnV0dG9uLFxuLnVpLmJyb3duLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk1YTMxO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5icm93bi5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNBNTY3M0YgaW5zZXQ7XG4gIGNvbG9yOiAjQTU2NzNGO1xufVxuLnVpLmJhc2ljLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5icm93bi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjOTc1YjMzIGluc2V0O1xuICBjb2xvcjogIzk3NWIzMztcbn1cbi51aS5iYXNpYy5icm93bi5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMuYnJvd24uYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzkwNTMyYiBpbnNldDtcbiAgY29sb3I6ICM5NzViMzM7XG59XG4udWkuYmFzaWMuYnJvd24uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5icm93bi5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzk5NWEzMSBpbnNldDtcbiAgY29sb3I6ICM4MDUwMzE7XG59XG4udWkuYmFzaWMuYnJvd24uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5icm93bi5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM4MDUwMzEgaW5zZXQ7XG4gIGNvbG9yOiAjODA1MDMxO1xufVxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMuYnJvd24uYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNENjdDMUMgaW5zZXQ7XG4gIGNvbG9yOiAjRDY3QzFDO1xufVxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjA2MjBmO1xufVxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzE2ODA4O1xufVxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYnJvd24uYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzZmMGQ7XG59XG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E5NjIxNjtcbn1cbi8qIEludmVydGVkIEJhc2ljICovXG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5icm93bi5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5icm93bi5iYXNpYy5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI2IwNjIwZiBpbnNldDtcbiAgY29sb3I6ICNENjdDMUM7XG59XG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJyb3duLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5icm93bi5iYXNpYy5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI2MxNjgwOCBpbnNldDtcbiAgY29sb3I6ICNENjdDMUM7XG59XG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmJyb3duLmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI2NjNmYwZCBpbnNldDtcbiAgY29sb3I6ICNENjdDMUM7XG59XG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJyb3duLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggI2E5NjIxNiBpbnNldDtcbiAgY29sb3I6ICNENjdDMUM7XG59XG4vKiBUZXJ0aWFyeSAqL1xuLnVpLnRlcnRpYXJ5LmJyb3duLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5icm93bi5idXR0b25zIC50ZXJ0aWFyeS5idXR0b24sXG4udWkudGVydGlhcnkuYnJvd24uYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjQTU2NzNGO1xufVxuLnVpLnRlcnRpYXJ5LmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5icm93bi5idXR0b25zIGJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5icm93bi5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICM4MzVmNDg7XG4gIGNvbG9yOiAjODM1ZjQ4O1xufVxuLnVpLnRlcnRpYXJ5LmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5icm93bi5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkuYnJvd24uYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjN2Q1NzNlO1xuICBjb2xvcjogIzdkNTczZTtcbn1cbi51aS50ZXJ0aWFyeS5icm93bi5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LmJyb3duLmJ1dHRvbnMgLnRlcnRpYXJ5LmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkuYnJvd24uYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5icm93bi5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LmJyb3duLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkuYnJvd24uYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgI2FlNTYxZDtcbiAgY29sb3I6ICM5OTVhMzE7XG59XG4udWkuZ3JleS5idXR0b25zIC5idXR0b24sXG4udWkuZ3JleS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4udWkuZ3JleS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkuZ3JleS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuZ3JleS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODM4MzgzO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkuZ3JleS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuZ3JleS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkuZ3JleS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmdyZXkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MDkwOTA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5ncmV5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuZ3JleS5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5ncmV5LmFjdGl2ZS5idXR0b24sXG4udWkuZ3JleS5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY5Njk2OTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLyogQmFzaWMgKi9cbi51aS5iYXNpYy5ncmV5LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5ncmV5LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzc2NzY3NiBpbnNldDtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4udWkuYmFzaWMuZ3JleS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuZ3JleS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjODM4MzgzIGluc2V0O1xuICBjb2xvcjogIzgzODM4Mztcbn1cbi51aS5iYXNpYy5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5ncmV5LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM4YThhOGEgaW5zZXQ7XG4gIGNvbG9yOiAjODM4MzgzO1xufVxuLnVpLmJhc2ljLmdyZXkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5ncmV5LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjNjk2OTY5IGluc2V0O1xuICBjb2xvcjogIzkwOTA5MDtcbn1cbi51aS5iYXNpYy5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMuZ3JleS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM5MDkwOTAgaW5zZXQ7XG4gIGNvbG9yOiAjOTA5MDkwO1xufVxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMuZ3JleS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNENEQ0RDUgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MyYzRjNTtcbn1cbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjN2M5Y2I7XG59XG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmdyZXkuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmQwZDI7XG59XG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMmM0YzU7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNjMmM0YzUgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNjN2M5Y2IgaW5zZXQ7XG4gIGNvbG9yOiAjRENERERFO1xufVxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNjZmQwZDIgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNjMmM0YzUgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogVGVydGlhcnkgKi9cbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbnMgYnV0dG9uOmhvdmVyLFxuLnVpLnRlcnRpYXJ5LmdyZXkuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjODM4MzgzO1xuICBjb2xvcjogIzgzODM4Mztcbn1cbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzhhOGE4YTtcbiAgY29sb3I6ICM4YThhOGE7XG59XG4udWkudGVydGlhcnkuZ3JleS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LmdyZXkuYnV0dG9ucyAudGVydGlhcnkuYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ncmV5LmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkuZ3JleS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LmdyZXkuYnV0dG9ucyAudGVydGlhcnkuYnV0dG9uOmFjdGl2ZSxcbi51aS50ZXJ0aWFyeS5ncmV5LmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICM3ZTU0NTQ7XG4gIGNvbG9yOiAjNjk2OTY5O1xufVxuLnVpLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5ibGFjay5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4udWkuYmxhY2suYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5ibGFjay5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyOTJhO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJsYWNrLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZjMwMzI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5ibGFjay5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJsYWNrLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzNjM3O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udWkuYmxhY2suYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5ibGFjay5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5ibGFjay5hY3RpdmUuYnV0dG9uLFxuLnVpLmJsYWNrLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwZjEwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5ibGFjay5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMxQjFDMUQgaW5zZXQ7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLnVpLmJhc2ljLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5ibGFjay5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMjcyOTJhIGluc2V0O1xuICBjb2xvcjogIzI3MjkyYTtcbn1cbi51aS5iYXNpYy5ibGFjay5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMuYmxhY2suYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzJmMzAzMiBpbnNldDtcbiAgY29sb3I6ICMyNzI5MmE7XG59XG4udWkuYmFzaWMuYmxhY2suYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5ibGFjay5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzBmMGYxMCBpbnNldDtcbiAgY29sb3I6ICMzNDM2Mzc7XG59XG4udWkuYmFzaWMuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5ibGFjay5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMzNDM2MzcgaW5zZXQ7XG4gIGNvbG9yOiAjMzQzNjM3O1xufVxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMuYmxhY2suYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNENEQ0RDUgaW5zZXQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmxhY2suYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbn1cbi8qIEludmVydGVkIEJhc2ljICovXG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzAwMDAwMCBpbnNldDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b246Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzAwMDAwMCBpbnNldDtcbiAgY29sb3I6ICM1NDU0NTQ7XG59XG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzAwMDAwMCBpbnNldDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzAwMDAwMCBpbnNldDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBUZXJ0aWFyeSAqL1xuLnVpLnRlcnRpYXJ5LmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ibGFjay5idXR0b25zIC50ZXJ0aWFyeS5idXR0b24sXG4udWkudGVydGlhcnkuYmxhY2suYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLnVpLnRlcnRpYXJ5LmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5ibGFjay5idXR0b25zIGJ1dHRvbjpob3Zlcixcbi51aS50ZXJ0aWFyeS5ibGFjay5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjJlbSAwICM4YjhmOTM7XG4gIGNvbG9yOiAjOGI4ZjkzO1xufVxuLnVpLnRlcnRpYXJ5LmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS50ZXJ0aWFyeS5ibGFjay5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246Zm9jdXMsXG4udWkudGVydGlhcnkuYmxhY2suYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4yZW0gMCAjOTM5NjlhO1xuICBjb2xvcjogIzkzOTY5YTtcbn1cbi51aS50ZXJ0aWFyeS5ibGFjay5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlcnRpYXJ5LmJsYWNrLmJ1dHRvbnMgLnRlcnRpYXJ5LmFjdGl2ZS5idXR0b24sXG4udWkudGVydGlhcnkuYmxhY2suYWN0aXZlLmJ1dHRvbixcbi51aS50ZXJ0aWFyeS5ibGFjay5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnRlcnRpYXJ5LmJsYWNrLmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjphY3RpdmUsXG4udWkudGVydGlhcnkuYmxhY2suYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTAuMmVtIDAgIzQwNDI0NTtcbiAgY29sb3I6ICMwZjBmMTA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLVxuICAgIFBvc2l0aXZlXG4tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFN0YW5kYXJkICovXG4udWkucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi51aS5wb3NpdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNmFiMzk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5wb3NpdGl2ZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkucG9zaXRpdmUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBlYTQzMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLnBvc2l0aXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkucG9zaXRpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOThmMzU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5wb3NpdGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnBvc2l0aXZlLmFjdGl2ZS5idXR0b24sXG4udWkucG9zaXRpdmUuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxM2FlMzg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnBvc2l0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzIxQkE0NSBpbnNldDtcbiAgY29sb3I6ICMyMUJBNDU7XG59XG4udWkuYmFzaWMucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnBvc2l0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzE2YWIzOSBpbnNldDtcbiAgY29sb3I6ICMxNmFiMzk7XG59XG4udWkuYmFzaWMucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLnBvc2l0aXZlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzBlYTQzMiBpbnNldDtcbiAgY29sb3I6ICMxNmFiMzk7XG59XG4udWkuYmFzaWMucG9zaXRpdmUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5wb3NpdGl2ZS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMTNhZTM4IGluc2V0O1xuICBjb2xvcjogIzE5OGYzNTtcbn1cbi51aS5iYXNpYy5wb3NpdGl2ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnBvc2l0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzE5OGYzNSBpbnNldDtcbiAgY29sb3I6ICMxOThmMzU7XG59XG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5wb3NpdGl2ZS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5lZ2F0aXZlXG4tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFN0YW5kYXJkICovXG4udWkubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi51aS5uZWdhdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG4udWkubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDE5MTk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5uZWdhdGl2ZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkubmVnYXRpdmUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NhMTAxMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnVpLm5lZ2F0aXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkubmVnYXRpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMjFlMWU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi51aS5uZWdhdGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLm5lZ2F0aXZlLmFjdGl2ZS5idXR0b24sXG4udWkubmVnYXRpdmUuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNDE1MTU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLm5lZ2F0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0RCMjgyOCBpbnNldDtcbiAgY29sb3I6ICNEQjI4Mjg7XG59XG4udWkuYmFzaWMubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLm5lZ2F0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2QwMTkxOSBpbnNldDtcbiAgY29sb3I6ICNkMDE5MTk7XG59XG4udWkuYmFzaWMubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLm5lZ2F0aXZlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2NhMTAxMCBpbnNldDtcbiAgY29sb3I6ICNkMDE5MTk7XG59XG4udWkuYmFzaWMubmVnYXRpdmUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5uZWdhdGl2ZS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZDQxNTE1IGluc2V0O1xuICBjb2xvcjogI2IyMWUxZTtcbn1cbi51aS5iYXNpYy5uZWdhdGl2ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLm5lZ2F0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2IyMWUxZSBpbnNldDtcbiAgY29sb3I6ICNiMjFlMWU7XG59XG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5uZWdhdGl2ZS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBHcm91cHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmb250LXNpemU6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luOiAwIDAuMjVlbSAwIDA7XG59XG4udWkuYnV0dG9uczpub3QoLmJhc2ljKTpub3QoLmludmVydGVkKSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4vKiBDbGVhcmZpeCAqL1xuLnVpLmJ1dHRvbnM6YWZ0ZXIge1xuICBjb250ZW50OiBcIi5cIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qIFN0YW5kYXJkIEdyb3VwICovXG4udWkuYnV0dG9ucyAuYnV0dG9uIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbjogMCAwIDAgMDtcbn1cbi51aS5idXR0b25zOm5vdCguYmFzaWMpOm5vdCguaW52ZXJ0ZWQpID4gLmJ1dHRvbjpub3QoLmJhc2ljKTpub3QoLmludmVydGVkKSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCB0cmFuc3BhcmVudCBpbnNldCwgMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLnVpLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cbi51aS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cbi8qIFZlcnRpY2FsICBTdHlsZSAqL1xuLnVpLnZlcnRpY2FsLmJ1dHRvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi51aS52ZXJ0aWNhbC5idXR0b25zIC5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4udWkudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG4udWkudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cbi51aS52ZXJ0aWNhbC5idXR0b25zIC5idXR0b246b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gQ29udGFpbmVyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRhaW5lclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1pbmltdW0gR3V0dGVyIGlzIHVzZWQgdG8gZGV0ZXJtaW5lICB0aGUgbWF4aW11bSBjb250YWluZXIgd2lkdGggZm9yIGEgZ2l2ZW4gZGV2aWNlICovXG4vKiBEZXZpY2VzICovXG4vKiBDb3VwbGluZyAoQWRkIE5lZ2F0aXZlIE1hcmdpbiB0byBjb250YWluZXIgc2l6ZSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUZXh0ICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRhaW5lclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1pbmltdW0gR3V0dGVyIGlzIHVzZWQgdG8gZGV0ZXJtaW5lICB0aGUgbWF4aW11bSBjb250YWluZXIgd2lkdGggZm9yIGEgZ2l2ZW4gZGV2aWNlICovXG4vKiBEZXZpY2VzICovXG4vKiBDb3VwbGluZyAoQWRkIE5lZ2F0aXZlIE1hcmdpbiB0byBjb250YWluZXIgc2l6ZSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUZXh0ICovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGFpbmVyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQWxsIFNpemVzICovXG4udWkuY29udGFpbmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi8qIE1vYmlsZSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudWkudWkudWkuY29udGFpbmVyOm5vdCguZmx1aWQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLnVpLnVpLnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC51aS51aS52ZXJ5LnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4vKiBUYWJsZXQgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAudWkudWkudWkuY29udGFpbmVyOm5vdCguZmx1aWQpIHtcbiAgICB3aWR0aDogNzIzcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIC51aS51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGNhbGMoNzIzcHggKyAycmVtKTtcbiAgfVxuICAudWkudWkucmVsYXhlZC5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGNhbGMoNzIzcHggKyAzcmVtKTtcbiAgfVxuICAudWkudWkudmVyeS5yZWxheGVkLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYyg3MjNweCArIDVyZW0pO1xuICB9XG59XG4vKiBTbWFsbCBNb25pdG9yICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC51aS51aS51aS5jb250YWluZXI6bm90KC5mbHVpZCkge1xuICAgIHdpZHRoOiA5MzNweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgLnVpLnVpLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYyg5MzNweCArIDJyZW0pO1xuICB9XG4gIC51aS51aS5yZWxheGVkLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYyg5MzNweCArIDNyZW0pO1xuICB9XG4gIC51aS51aS52ZXJ5LnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBjYWxjKDkzM3B4ICsgNXJlbSk7XG4gIH1cbn1cbi8qIExhcmdlIE1vbml0b3IgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51aS51aS51aS5jb250YWluZXI6bm90KC5mbHVpZCkge1xuICAgIHdpZHRoOiAxMTI3cHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIC51aS51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGNhbGMoMTEyN3B4ICsgMnJlbSk7XG4gIH1cbiAgLnVpLnVpLnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBjYWxjKDExMjdweCArIDNyZW0pO1xuICB9XG4gIC51aS51aS52ZXJ5LnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBjYWxjKDExMjdweCArIDVyZW0pO1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVGV4dCBDb250YWluZXIgKi9cbi51aS50ZXh0LmNvbnRhaW5lciB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIG1heC13aWR0aDogNzAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi8qIEZsdWlkICovXG4udWkuZmx1aWQuY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnVpW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLmNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLmNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLnVpLmp1c3RpZmllZC5jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIERpdmlkZXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRGl2aWRlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRleHQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJY29uICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEhvcml6b250YWwgLyBWZXJ0aWNhbCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIFNlY3Rpb24gKi9cbi8qIFNpemVzICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIERpdmlkZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUZXh0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSWNvbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBIb3Jpem9udGFsIC8gVmVydGljYWwgKi9cbi8qIEludmVydGVkICovXG4vKiBTZWN0aW9uICovXG4vKiBTaXplcyAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIERpdmlkZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuZGl2aWRlciB7XG4gIG1hcmdpbjogMXJlbSAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgaGVpZ2h0OiAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXZpZGVyOm5vdCgudmVydGljYWwpOm5vdCguaG9yaXpvbnRhbCkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEFsbG93IGRpdmlkZXIgYmV0d2VlbiBlYWNoIGNvbHVtbiByb3cgKi9cbi51aS5ncmlkID4gLmNvbHVtbiArIC5kaXZpZGVyLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbiArIC5kaXZpZGVyIHtcbiAgbGVmdDogYXV0bztcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEhvcml6b250YWxcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaG9yaXpvbnRhbC5kaXZpZGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAnJztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YmVmb3JlLFxuLnVpLmhvcml6b250YWwuZGl2aWRlcjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLnVpLmhvcml6b250YWwuZGl2aWRlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxZW0gdG9wIDUwJTtcbn1cbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDFlbSB0b3AgNTAlO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFZlcnRpY2FsXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnZlcnRpY2FsLmRpdmlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogNTAlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4udWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4udWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICBjb250ZW50OiAnJztcbiAgei1pbmRleDogMztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xufVxuLnVpLnZlcnRpY2FsLmRpdmlkZXI6YmVmb3JlIHtcbiAgdG9wOiAtMTAwJTtcbn1cbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG59XG4vKiBJbnNpZGUgZ3JpZCAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXIsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46ICcnO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbiAgLnVpLnN0YWNrYWJsZS5ncmlkIC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyLFxuICAudWkuZ3JpZCAuc3RhY2thYmxlLnJvdyAudWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMWVtIHRvcCA1MCU7XG4gIH1cbiAgLnVpLnN0YWNrYWJsZS5ncmlkIC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyLFxuICAudWkuZ3JpZCAuc3RhY2thYmxlLnJvdyAudWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAxZW0gdG9wIDUwJTtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXZpZGVyID4gLmljb24ge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5ob3Jpem9udGFsLmRpdmlkZXJbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udWkuaG9yaXpvbnRhbC5kaXZpZGVyW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXTphZnRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmhvcml6b250YWwuZGl2aWRlcltjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdOmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmhvcml6b250YWwuZGl2aWRlcltjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBIaWRkZW5cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaGlkZGVuLmRpdmlkZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4udWkuaGlkZGVuLmRpdmlkZXI6YmVmb3JlLFxuLnVpLmhpZGRlbi5kaXZpZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXZpZGVyLmludmVydGVkLFxuLnVpLnZlcnRpY2FsLmludmVydGVkLmRpdmlkZXIsXG4udWkuaG9yaXpvbnRhbC5pbnZlcnRlZC5kaXZpZGVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuZGl2aWRlci5pbnZlcnRlZCxcbi51aS5kaXZpZGVyLmludmVydGVkOmFmdGVyLFxuLnVpLmRpdmlkZXIuaW52ZXJ0ZWQ6YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEZpdHRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5maXR0ZWQuZGl2aWRlciB7XG4gIG1hcmdpbjogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDbGVhcmluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jbGVhcmluZy5kaXZpZGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU2VjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zZWN0aW9uLmRpdmlkZXIge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXZpZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YmVmb3JlLFxuLnVpLmhvcml6b250YWwuZGl2aWRlcjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUJhQUFBQUFDQ0FZQUFBQ3VUSHVLQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUF5RnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU5TMWpNREUwSURjNUxqRTFNVFE0TVN3Z01qQXhNeTh3TXk4eE15MHhNam93T1RveE5TQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1BTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZJaUI0Yld4dWN6cDRiWEJOVFQwaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOTRZWEF2TVM0d0wyMXRMeUlnZUcxc2JuTTZjM1JTWldZOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOXpWSGx3WlM5U1pYTnZkWEpqWlZKbFppTWlJSGh0Y0RwRGNtVmhkRzl5Vkc5dmJEMGlRV1J2WW1VZ1VHaHZkRzl6YUc5d0lFTkRJQ2hYYVc1a2IzZHpLU0lnZUcxd1RVMDZTVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRG8xT1RoQlJEWTRPVU5ETVRZeE1VVTBPVUUzTlVWR09FSkRNek16TWpFMk55SWdlRzF3VFUwNlJHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEbzFPVGhCUkRZNFFVTkRNVFl4TVVVME9VRTNOVVZHT0VKRE16TXpNakUyTnlJK0lEeDRiWEJOVFRwRVpYSnBkbVZrUm5KdmJTQnpkRkpsWmpwcGJuTjBZVzVqWlVsRVBTSjRiWEF1YVdsa09qVTVPRUZFTmpnM1EwTXhOakV4UlRRNVFUYzFSVVk0UWtNek16TXlNVFkzSWlCemRGSmxaanBrYjJOMWJXVnVkRWxFUFNKNGJYQXVaR2xrT2pVNU9FRkVOamc0UTBNeE5qRXhSVFE1UVRjMVJVWTRRa016TXpNeU1UWTNJaTgrSUR3dmNtUm1Pa1JsYzJOeWFYQjBhVzl1UGlBOEwzSmtaanBTUkVZK0lEd3ZlRHA0YlhCdFpYUmhQaUE4UDNod1lXTnJaWFFnWlc1a1BTSnlJajgrVlU1MTNnQUFBRFZKUkVGVWVOcnMwREVOQUNBUUJEQklXTEdCSlFieS9tVWNKbjVzSlhRbU9RTUFBQUFBQUpxdCsycHJBQUFBQUFDZzJ4ZGdBTms2QkVWdUpneU1BQUFBQUVsRlRrU3VRbUNDJyk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbiAgLnVpLnN0YWNrYWJsZS5ncmlkIC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyLFxuICAudWkuZ3JpZCAuc3RhY2thYmxlLnJvdyAudWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQmFBQUFBQUNDQVlBQUFDdVRIdUtBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQXlGcFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrSUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1TlMxak1ERTBJRGM1TGpFMU1UUTRNU3dnTWpBeE15OHdNeTh4TXkweE1qb3dPVG94TlNBZ0lDQWdJQ0FnSWo0Z1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNGdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlnZUcxc2JuTTZlRzF3UFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdklpQjRiV3h1Y3pwNGJYQk5UVDBpYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5NFlYQXZNUzR3TDIxdEx5SWdlRzFzYm5NNmMzUlNaV1k5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5elZIbHdaUzlTWlhOdmRYSmpaVkpsWmlNaUlIaHRjRHBEY21WaGRHOXlWRzl2YkQwaVFXUnZZbVVnVUdodmRHOXphRzl3SUVORElDaFhhVzVrYjNkektTSWdlRzF3VFUwNlNXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEbzFPVGhCUkRZNE9VTkRNVFl4TVVVME9VRTNOVVZHT0VKRE16TXpNakUyTnlJZ2VHMXdUVTA2Ukc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRvMU9UaEJSRFk0UVVORE1UWXhNVVUwT1VFM05VVkdPRUpETXpNek1qRTJOeUkrSUR4NGJYQk5UVHBFWlhKcGRtVmtSbkp2YlNCemRGSmxaanBwYm5OMFlXNWpaVWxFUFNKNGJYQXVhV2xrT2pVNU9FRkVOamczUTBNeE5qRXhSVFE1UVRjMVJVWTRRa016TXpNeU1UWTNJaUJ6ZEZKbFpqcGtiMk4xYldWdWRFbEVQU0o0YlhBdVpHbGtPalU1T0VGRU5qZzRRME14TmpFeFJUUTVRVGMxUlVZNFFrTXpNek15TVRZM0lpOCtJRHd2Y21SbU9rUmxjMk55YVhCMGFXOXVQaUE4TDNKa1pqcFNSRVkrSUR3dmVEcDRiWEJ0WlhSaFBpQThQM2h3WVdOclpYUWdaVzVrUFNKeUlqOCtWVTUxM2dBQUFEVkpSRUZVZU5yczBERU5BQ0FRQkRCSVdMR0JKUWJ5L21VY0puNXNKWFFtT1FNQUFBQUFBSnF0KzJwckFBQUFBQUNnMnhkZ0FOazZCRVZ1Smd5TUFBQUFBRWxGVGtTdVFtQ0MnKTtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gRmxhZ1xuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGbGFnXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGbGFnXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBGbGFnIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEZsYWdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5pLmZsYWc6bm90KC5pY29uKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDExcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luOiAwIDAuNWVtIDAgMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICBzcGVhazogbm9uZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qIFNwcml0ZSAqL1xuaS5mbGFnOm5vdCguaWNvbik6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ltYWdlcy9mbGFncy5wbmdcIikgbm8tcmVwZWF0IC0xMDhweCAtMTk3NnB4O1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxMXB4O1xufVxuLyogRmxhZyBTcHJpdGUgQmFzZWQgT24gaHR0cDovL3d3dy5mYW1mYW1mYW0uY29tL2xhYi9pY29ucy9mbGFncy8gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKnJ0bDpiZWdpbjppZ25vcmUqL1xuaS5mbGFnLmFkOmJlZm9yZSxcbmkuZmxhZy5hbmRvcnJhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cbmkuZmxhZy5hZTpiZWZvcmUsXG5pLmZsYWcudW5pdGVkLmFyYWIuZW1pcmF0ZXM6YmVmb3JlLFxuaS5mbGFnLnVhZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNnB4O1xufVxuaS5mbGFnLmFmOmJlZm9yZSxcbmkuZmxhZy5hZmdoYW5pc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01MnB4O1xufVxuaS5mbGFnLmFnOmJlZm9yZSxcbmkuZmxhZy5hbnRpZ3VhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTc4cHg7XG59XG5pLmZsYWcuYWk6YmVmb3JlLFxuaS5mbGFnLmFuZ3VpbGxhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwNHB4O1xufVxuaS5mbGFnLmFsOmJlZm9yZSxcbmkuZmxhZy5hbGJhbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEzMHB4O1xufVxuaS5mbGFnLmFtOmJlZm9yZSxcbmkuZmxhZy5hcm1lbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1NnB4O1xufVxuaS5mbGFnLmFuOmJlZm9yZSxcbmkuZmxhZy5uZXRoZXJsYW5kcy5hbnRpbGxlczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xODJweDtcbn1cbmkuZmxhZy5hbzpiZWZvcmUsXG5pLmZsYWcuYW5nb2xhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTIwOHB4O1xufVxuaS5mbGFnLmFyOmJlZm9yZSxcbmkuZmxhZy5hcmdlbnRpbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjM0cHg7XG59XG5pLmZsYWcuYXM6YmVmb3JlLFxuaS5mbGFnLmFtZXJpY2FuLnNhbW9hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI2MHB4O1xufVxuaS5mbGFnLmF0OmJlZm9yZSxcbmkuZmxhZy5hdXN0cmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI4NnB4O1xufVxuaS5mbGFnLmF1OmJlZm9yZSxcbmkuZmxhZy5hdXN0cmFsaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzEycHg7XG59XG5pLmZsYWcuYXc6YmVmb3JlLFxuaS5mbGFnLmFydWJhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTMzOHB4O1xufVxuaS5mbGFnLmF4OmJlZm9yZSxcbmkuZmxhZy5hbGFuZC5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM2NHB4O1xufVxuaS5mbGFnLmF6OmJlZm9yZSxcbmkuZmxhZy5hemVyYmFpamFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM5MHB4O1xufVxuaS5mbGFnLmJhOmJlZm9yZSxcbmkuZmxhZy5ib3NuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDE2cHg7XG59XG5pLmZsYWcuYmI6YmVmb3JlLFxuaS5mbGFnLmJhcmJhZG9zOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ0MnB4O1xufVxuaS5mbGFnLmJkOmJlZm9yZSxcbmkuZmxhZy5iYW5nbGFkZXNoOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ2OHB4O1xufVxuaS5mbGFnLmJlOmJlZm9yZSxcbmkuZmxhZy5iZWxnaXVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ5NHB4O1xufVxuaS5mbGFnLmJmOmJlZm9yZSxcbmkuZmxhZy5idXJraW5hLmZhc286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTIwcHg7XG59XG5pLmZsYWcuYmc6YmVmb3JlLFxuaS5mbGFnLmJ1bGdhcmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTU0NnB4O1xufVxuaS5mbGFnLmJoOmJlZm9yZSxcbmkuZmxhZy5iYWhyYWluOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTU3MnB4O1xufVxuaS5mbGFnLmJpOmJlZm9yZSxcbmkuZmxhZy5idXJ1bmRpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTU5OHB4O1xufVxuaS5mbGFnLmJqOmJlZm9yZSxcbmkuZmxhZy5iZW5pbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02MjRweDtcbn1cbmkuZmxhZy5ibTpiZWZvcmUsXG5pLmZsYWcuYmVybXVkYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02NTBweDtcbn1cbmkuZmxhZy5ibjpiZWZvcmUsXG5pLmZsYWcuYnJ1bmVpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTY3NnB4O1xufVxuaS5mbGFnLmJvOmJlZm9yZSxcbmkuZmxhZy5ib2xpdmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTcwMnB4O1xufVxuaS5mbGFnLmJyOmJlZm9yZSxcbmkuZmxhZy5icmF6aWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzI4cHg7XG59XG5pLmZsYWcuYnM6YmVmb3JlLFxuaS5mbGFnLmJhaGFtYXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzU0cHg7XG59XG5pLmZsYWcuYnQ6YmVmb3JlLFxuaS5mbGFnLmJodXRhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03ODBweDtcbn1cbmkuZmxhZy5idjpiZWZvcmUsXG5pLmZsYWcuYm91dmV0LmlzbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04MDZweDtcbn1cbmkuZmxhZy5idzpiZWZvcmUsXG5pLmZsYWcuYm90c3dhbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtODMycHg7XG59XG5pLmZsYWcuYnk6YmVmb3JlLFxuaS5mbGFnLmJlbGFydXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtODU4cHg7XG59XG5pLmZsYWcuYno6YmVmb3JlLFxuaS5mbGFnLmJlbGl6ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04ODRweDtcbn1cbmkuZmxhZy5jYTpiZWZvcmUsXG5pLmZsYWcuY2FuYWRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTkxMHB4O1xufVxuaS5mbGFnLmNjOmJlZm9yZSxcbmkuZmxhZy5jb2Nvcy5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTk2MnB4O1xufVxuaS5mbGFnLmNkOmJlZm9yZSxcbmkuZmxhZy5jb25nbzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05ODhweDtcbn1cbmkuZmxhZy5jZjpiZWZvcmUsXG5pLmZsYWcuY2VudHJhbC5hZnJpY2FuLnJlcHVibGljOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwMTRweDtcbn1cbmkuZmxhZy5jZzpiZWZvcmUsXG5pLmZsYWcuY29uZ28uYnJhenphdmlsbGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTA0MHB4O1xufVxuaS5mbGFnLmNoOmJlZm9yZSxcbmkuZmxhZy5zd2l0emVybGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMDY2cHg7XG59XG5pLmZsYWcuY2k6YmVmb3JlLFxuaS5mbGFnLmNvdGUuZGl2b2lyZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMDkycHg7XG59XG5pLmZsYWcuY2s6YmVmb3JlLFxuaS5mbGFnLmNvb2suaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMTE4cHg7XG59XG5pLmZsYWcuY2w6YmVmb3JlLFxuaS5mbGFnLmNoaWxlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTExNDRweDtcbn1cbmkuZmxhZy5jbTpiZWZvcmUsXG5pLmZsYWcuY2FtZXJvb246YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTE3MHB4O1xufVxuaS5mbGFnLmNuOmJlZm9yZSxcbmkuZmxhZy5jaGluYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMTk2cHg7XG59XG5pLmZsYWcuY286YmVmb3JlLFxuaS5mbGFnLmNvbG9tYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyMjJweDtcbn1cbmkuZmxhZy5jcjpiZWZvcmUsXG5pLmZsYWcuY29zdGEucmljYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjQ4cHg7XG59XG5pLmZsYWcuY3M6YmVmb3JlLFxuaS5mbGFnLnNlcmJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjc0cHg7XG59XG5pLmZsYWcuY3U6YmVmb3JlLFxuaS5mbGFnLmN1YmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTMwMHB4O1xufVxuaS5mbGFnLmN2OmJlZm9yZSxcbmkuZmxhZy5jYXBlLnZlcmRlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEzMjZweDtcbn1cbmkuZmxhZy5jeDpiZWZvcmUsXG5pLmZsYWcuY2hyaXN0bWFzLmlzbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMzUycHg7XG59XG5pLmZsYWcuY3k6YmVmb3JlLFxuaS5mbGFnLmN5cHJ1czpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMzc4cHg7XG59XG5pLmZsYWcuY3o6YmVmb3JlLFxuaS5mbGFnLmN6ZWNoLnJlcHVibGljOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MDRweDtcbn1cbmkuZmxhZy5kZTpiZWZvcmUsXG5pLmZsYWcuZ2VybWFueTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDMwcHg7XG59XG5pLmZsYWcuZGo6YmVmb3JlLFxuaS5mbGFnLmRqaWJvdXRpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0NTZweDtcbn1cbmkuZmxhZy5kazpiZWZvcmUsXG5pLmZsYWcuZGVubWFyazpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDgycHg7XG59XG5pLmZsYWcuZG06YmVmb3JlLFxuaS5mbGFnLmRvbWluaWNhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1MDhweDtcbn1cbmkuZmxhZy5kbzpiZWZvcmUsXG5pLmZsYWcuZG9taW5pY2FuLnJlcHVibGljOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1MzRweDtcbn1cbmkuZmxhZy5kejpiZWZvcmUsXG5pLmZsYWcuYWxnZXJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNTYwcHg7XG59XG5pLmZsYWcuZWM6YmVmb3JlLFxuaS5mbGFnLmVjdWFkb3I6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTU4NnB4O1xufVxuaS5mbGFnLmVlOmJlZm9yZSxcbmkuZmxhZy5lc3RvbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2MTJweDtcbn1cbmkuZmxhZy5lZzpiZWZvcmUsXG5pLmZsYWcuZWd5cHQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTYzOHB4O1xufVxuaS5mbGFnLmVoOmJlZm9yZSxcbmkuZmxhZy53ZXN0ZXJuLnNhaGFyYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNjY0cHg7XG59XG5pLmZsYWcuZ2IuZW5nOmJlZm9yZSxcbmkuZmxhZy5lbmdsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2OTBweDtcbn1cbmkuZmxhZy5lcjpiZWZvcmUsXG5pLmZsYWcuZXJpdHJlYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNzE2cHg7XG59XG5pLmZsYWcuZXM6YmVmb3JlLFxuaS5mbGFnLnNwYWluOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE3NDJweDtcbn1cbmkuZmxhZy5ldDpiZWZvcmUsXG5pLmZsYWcuZXRoaW9waWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTc2OHB4O1xufVxuaS5mbGFnLmV1OmJlZm9yZSxcbmkuZmxhZy5ldXJvcGVhbi51bmlvbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNzk0cHg7XG59XG5pLmZsYWcuZmk6YmVmb3JlLFxuaS5mbGFnLmZpbmxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTg0NnB4O1xufVxuaS5mbGFnLmZqOmJlZm9yZSxcbmkuZmxhZy5maWppOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE4NzJweDtcbn1cbmkuZmxhZy5mazpiZWZvcmUsXG5pLmZsYWcuZmFsa2xhbmQuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xODk4cHg7XG59XG5pLmZsYWcuZm06YmVmb3JlLFxuaS5mbGFnLm1pY3JvbmVzaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTkyNHB4O1xufVxuaS5mbGFnLmZvOmJlZm9yZSxcbmkuZmxhZy5mYXJvZS5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE5NTBweDtcbn1cbmkuZmxhZy5mcjpiZWZvcmUsXG5pLmZsYWcuZnJhbmNlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE5NzZweDtcbn1cbmkuZmxhZy5nYTpiZWZvcmUsXG5pLmZsYWcuZ2Fib246YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggMDtcbn1cbmkuZmxhZy5nYjpiZWZvcmUsXG5pLmZsYWcudWs6YmVmb3JlLFxuaS5mbGFnLnVuaXRlZC5raW5nZG9tOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0yNnB4O1xufVxuaS5mbGFnLmdkOmJlZm9yZSxcbmkuZmxhZy5ncmVuYWRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC01MnB4O1xufVxuaS5mbGFnLmdlOmJlZm9yZSxcbmkuZmxhZy5nZW9yZ2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC03OHB4O1xufVxuaS5mbGFnLmdmOmJlZm9yZSxcbmkuZmxhZy5mcmVuY2guZ3VpYW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMDRweDtcbn1cbmkuZmxhZy5naDpiZWZvcmUsXG5pLmZsYWcuZ2hhbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEzMHB4O1xufVxuaS5mbGFnLmdpOmJlZm9yZSxcbmkuZmxhZy5naWJyYWx0YXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE1NnB4O1xufVxuaS5mbGFnLmdsOmJlZm9yZSxcbmkuZmxhZy5ncmVlbmxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE4MnB4O1xufVxuaS5mbGFnLmdtOmJlZm9yZSxcbmkuZmxhZy5nYW1iaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTIwOHB4O1xufVxuaS5mbGFnLmduOmJlZm9yZSxcbmkuZmxhZy5ndWluZWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTIzNHB4O1xufVxuaS5mbGFnLmdwOmJlZm9yZSxcbmkuZmxhZy5ndWFkZWxvdXBlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0yNjBweDtcbn1cbmkuZmxhZy5ncTpiZWZvcmUsXG5pLmZsYWcuZXF1YXRvcmlhbC5ndWluZWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTI4NnB4O1xufVxuaS5mbGFnLmdyOmJlZm9yZSxcbmkuZmxhZy5ncmVlY2U6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTMxMnB4O1xufVxuaS5mbGFnLmdzOmJlZm9yZSxcbmkuZmxhZy5zYW5kd2ljaC5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0zMzhweDtcbn1cbmkuZmxhZy5ndDpiZWZvcmUsXG5pLmZsYWcuZ3VhdGVtYWxhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0zNjRweDtcbn1cbmkuZmxhZy5ndTpiZWZvcmUsXG5pLmZsYWcuZ3VhbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMzkwcHg7XG59XG5pLmZsYWcuZ3c6YmVmb3JlLFxuaS5mbGFnLmd1aW5lYS1iaXNzYXU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTQxNnB4O1xufVxuaS5mbGFnLmd5OmJlZm9yZSxcbmkuZmxhZy5ndXlhbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTQ0MnB4O1xufVxuaS5mbGFnLmhrOmJlZm9yZSxcbmkuZmxhZy5ob25nLmtvbmc6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTQ2OHB4O1xufVxuaS5mbGFnLmhtOmJlZm9yZSxcbmkuZmxhZy5oZWFyZC5pc2xhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTQ5NHB4O1xufVxuaS5mbGFnLmhuOmJlZm9yZSxcbmkuZmxhZy5ob25kdXJhczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNTIwcHg7XG59XG5pLmZsYWcuaHI6YmVmb3JlLFxuaS5mbGFnLmNyb2F0aWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTU0NnB4O1xufVxuaS5mbGFnLmh0OmJlZm9yZSxcbmkuZmxhZy5oYWl0aTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNTcycHg7XG59XG5pLmZsYWcuaHU6YmVmb3JlLFxuaS5mbGFnLmh1bmdhcnk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTU5OHB4O1xufVxuaS5mbGFnLmlkOmJlZm9yZSxcbmkuZmxhZy5pbmRvbmVzaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTYyNHB4O1xufVxuaS5mbGFnLmllOmJlZm9yZSxcbmkuZmxhZy5pcmVsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC02NTBweDtcbn1cbmkuZmxhZy5pbDpiZWZvcmUsXG5pLmZsYWcuaXNyYWVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC02NzZweDtcbn1cbmkuZmxhZy5pbjpiZWZvcmUsXG5pLmZsYWcuaW5kaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTcwMnB4O1xufVxuaS5mbGFnLmlvOmJlZm9yZSxcbmkuZmxhZy5pbmRpYW4ub2NlYW4udGVycml0b3J5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC03MjhweDtcbn1cbmkuZmxhZy5pcTpiZWZvcmUsXG5pLmZsYWcuaXJhcTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNzU0cHg7XG59XG5pLmZsYWcuaXI6YmVmb3JlLFxuaS5mbGFnLmlyYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTc4MHB4O1xufVxuaS5mbGFnLmlzOmJlZm9yZSxcbmkuZmxhZy5pY2VsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC04MDZweDtcbn1cbmkuZmxhZy5pdDpiZWZvcmUsXG5pLmZsYWcuaXRhbHk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTgzMnB4O1xufVxuaS5mbGFnLmptOmJlZm9yZSxcbmkuZmxhZy5qYW1haWNhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC04NThweDtcbn1cbmkuZmxhZy5qbzpiZWZvcmUsXG5pLmZsYWcuam9yZGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC04ODRweDtcbn1cbmkuZmxhZy5qcDpiZWZvcmUsXG5pLmZsYWcuamFwYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTkxMHB4O1xufVxuaS5mbGFnLmtlOmJlZm9yZSxcbmkuZmxhZy5rZW55YTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtOTM2cHg7XG59XG5pLmZsYWcua2c6YmVmb3JlLFxuaS5mbGFnLmt5cmd5enN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTk2MnB4O1xufVxuaS5mbGFnLmtoOmJlZm9yZSxcbmkuZmxhZy5jYW1ib2RpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtOTg4cHg7XG59XG5pLmZsYWcua2k6YmVmb3JlLFxuaS5mbGFnLmtpcmliYXRpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMDE0cHg7XG59XG5pLmZsYWcua206YmVmb3JlLFxuaS5mbGFnLmNvbW9yb3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwNDBweDtcbn1cbmkuZmxhZy5rbjpiZWZvcmUsXG5pLmZsYWcuc2FpbnQua2l0dHMuYW5kLm5ldmlzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMDY2cHg7XG59XG5pLmZsYWcua3A6YmVmb3JlLFxuaS5mbGFnLm5vcnRoLmtvcmVhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMDkycHg7XG59XG5pLmZsYWcua3I6YmVmb3JlLFxuaS5mbGFnLnNvdXRoLmtvcmVhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMTE4cHg7XG59XG5pLmZsYWcua3c6YmVmb3JlLFxuaS5mbGFnLmt1d2FpdDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTE0NHB4O1xufVxuaS5mbGFnLmt5OmJlZm9yZSxcbmkuZmxhZy5jYXltYW4uaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTE3MHB4O1xufVxuaS5mbGFnLmt6OmJlZm9yZSxcbmkuZmxhZy5rYXpha2hzdGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMTk2cHg7XG59XG5pLmZsYWcubGE6YmVmb3JlLFxuaS5mbGFnLmxhb3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEyMjJweDtcbn1cbmkuZmxhZy5sYjpiZWZvcmUsXG5pLmZsYWcubGViYW5vbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTI0OHB4O1xufVxuaS5mbGFnLmxjOmJlZm9yZSxcbmkuZmxhZy5zYWludC5sdWNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTI3NHB4O1xufVxuaS5mbGFnLmxpOmJlZm9yZSxcbmkuZmxhZy5saWVjaHRlbnN0ZWluOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMzAwcHg7XG59XG5pLmZsYWcubGs6YmVmb3JlLFxuaS5mbGFnLnNyaS5sYW5rYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTMyNnB4O1xufVxuaS5mbGFnLmxyOmJlZm9yZSxcbmkuZmxhZy5saWJlcmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMzUycHg7XG59XG5pLmZsYWcubHM6YmVmb3JlLFxuaS5mbGFnLmxlc290aG86YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEzNzhweDtcbn1cbmkuZmxhZy5sdDpiZWZvcmUsXG5pLmZsYWcubGl0aHVhbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNDA0cHg7XG59XG5pLmZsYWcubHU6YmVmb3JlLFxuaS5mbGFnLmx1eGVtYm91cmc6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE0MzBweDtcbn1cbmkuZmxhZy5sdjpiZWZvcmUsXG5pLmZsYWcubGF0dmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNDU2cHg7XG59XG5pLmZsYWcubHk6YmVmb3JlLFxuaS5mbGFnLmxpYnlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNDgycHg7XG59XG5pLmZsYWcubWE6YmVmb3JlLFxuaS5mbGFnLm1vcm9jY286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE1MDhweDtcbn1cbmkuZmxhZy5tYzpiZWZvcmUsXG5pLmZsYWcubW9uYWNvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNTM0cHg7XG59XG5pLmZsYWcubWQ6YmVmb3JlLFxuaS5mbGFnLm1vbGRvdmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE1NjBweDtcbn1cbmkuZmxhZy5tZTpiZWZvcmUsXG5pLmZsYWcubW9udGVuZWdybzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTU4NnB4O1xufVxuaS5mbGFnLm1nOmJlZm9yZSxcbmkuZmxhZy5tYWRhZ2FzY2FyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNjEzcHg7XG59XG5pLmZsYWcubWg6YmVmb3JlLFxuaS5mbGFnLm1hcnNoYWxsLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE2MzlweDtcbn1cbmkuZmxhZy5tazpiZWZvcmUsXG5pLmZsYWcubWFjZWRvbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNjY1cHg7XG59XG5pLmZsYWcubWw6YmVmb3JlLFxuaS5mbGFnLm1hbGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE2OTFweDtcbn1cbmkuZmxhZy5tbTpiZWZvcmUsXG5pLmZsYWcubXlhbm1hcjpiZWZvcmUsXG5pLmZsYWcuYnVybWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE3MTdweDtcbn1cbmkuZmxhZy5tbjpiZWZvcmUsXG5pLmZsYWcubW9uZ29saWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE3NDNweDtcbn1cbmkuZmxhZy5tbzpiZWZvcmUsXG5pLmZsYWcubWFjYXU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE3NjlweDtcbn1cbmkuZmxhZy5tcDpiZWZvcmUsXG5pLmZsYWcubm9ydGhlcm4ubWFyaWFuYS5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNzk1cHg7XG59XG5pLmZsYWcubXE6YmVmb3JlLFxuaS5mbGFnLm1hcnRpbmlxdWU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE4MjFweDtcbn1cbmkuZmxhZy5tcjpiZWZvcmUsXG5pLmZsYWcubWF1cml0YW5pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTg0N3B4O1xufVxuaS5mbGFnLm1zOmJlZm9yZSxcbmkuZmxhZy5tb250c2VycmF0OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xODczcHg7XG59XG5pLmZsYWcubXQ6YmVmb3JlLFxuaS5mbGFnLm1hbHRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xODk5cHg7XG59XG5pLmZsYWcubXU6YmVmb3JlLFxuaS5mbGFnLm1hdXJpdGl1czpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTkyNXB4O1xufVxuaS5mbGFnLm12OmJlZm9yZSxcbmkuZmxhZy5tYWxkaXZlczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTk1MXB4O1xufVxuaS5mbGFnLm13OmJlZm9yZSxcbmkuZmxhZy5tYWxhd2k6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE5NzdweDtcbn1cbmkuZmxhZy5teDpiZWZvcmUsXG5pLmZsYWcubWV4aWNvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IDA7XG59XG5pLmZsYWcubXk6YmVmb3JlLFxuaS5mbGFnLm1hbGF5c2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0yNnB4O1xufVxuaS5mbGFnLm16OmJlZm9yZSxcbmkuZmxhZy5tb3phbWJpcXVlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC01MnB4O1xufVxuaS5mbGFnLm5hOmJlZm9yZSxcbmkuZmxhZy5uYW1pYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC03OHB4O1xufVxuaS5mbGFnLm5jOmJlZm9yZSxcbmkuZmxhZy5uZXcuY2FsZWRvbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMDRweDtcbn1cbmkuZmxhZy5uZTpiZWZvcmUsXG5pLmZsYWcubmlnZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzMHB4O1xufVxuaS5mbGFnLm5mOmJlZm9yZSxcbmkuZmxhZy5ub3Jmb2xrLmlzbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTU2cHg7XG59XG5pLmZsYWcubmc6YmVmb3JlLFxuaS5mbGFnLm5pZ2VyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE4MnB4O1xufVxuaS5mbGFnLm5pOmJlZm9yZSxcbmkuZmxhZy5uaWNhcmFndWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTIwOHB4O1xufVxuaS5mbGFnLm5sOmJlZm9yZSxcbmkuZmxhZy5uZXRoZXJsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMjM0cHg7XG59XG5pLmZsYWcubm86YmVmb3JlLFxuaS5mbGFnLm5vcndheTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMjYwcHg7XG59XG5pLmZsYWcubnA6YmVmb3JlLFxuaS5mbGFnLm5lcGFsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0yODZweDtcbn1cbmkuZmxhZy5ucjpiZWZvcmUsXG5pLmZsYWcubmF1cnU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTMxMnB4O1xufVxuaS5mbGFnLm51OmJlZm9yZSxcbmkuZmxhZy5uaXVlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0zMzhweDtcbn1cbmkuZmxhZy5uejpiZWZvcmUsXG5pLmZsYWcubmV3LnplYWxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTM2NHB4O1xufVxuaS5mbGFnLm9tOmJlZm9yZSxcbmkuZmxhZy5vbWFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0zOTBweDtcbn1cbmkuZmxhZy5wYTpiZWZvcmUsXG5pLmZsYWcucGFuYW1hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC00MTZweDtcbn1cbmkuZmxhZy5wZTpiZWZvcmUsXG5pLmZsYWcucGVydTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNDQycHg7XG59XG5pLmZsYWcucGY6YmVmb3JlLFxuaS5mbGFnLmZyZW5jaC5wb2x5bmVzaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTQ2OHB4O1xufVxuaS5mbGFnLnBnOmJlZm9yZSxcbmkuZmxhZy5uZXcuZ3VpbmVhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC00OTRweDtcbn1cbmkuZmxhZy5waDpiZWZvcmUsXG5pLmZsYWcucGhpbGlwcGluZXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTUyMHB4O1xufVxuaS5mbGFnLnBrOmJlZm9yZSxcbmkuZmxhZy5wYWtpc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNTQ2cHg7XG59XG5pLmZsYWcucGw6YmVmb3JlLFxuaS5mbGFnLnBvbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNTcycHg7XG59XG5pLmZsYWcucG06YmVmb3JlLFxuaS5mbGFnLnNhaW50LnBpZXJyZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNTk4cHg7XG59XG5pLmZsYWcucG46YmVmb3JlLFxuaS5mbGFnLnBpdGNhaXJuLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTYyNHB4O1xufVxuaS5mbGFnLnByOmJlZm9yZSxcbmkuZmxhZy5wdWVydG8ucmljbzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNjUwcHg7XG59XG5pLmZsYWcucHM6YmVmb3JlLFxuaS5mbGFnLnBhbGVzdGluZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNjc2cHg7XG59XG5pLmZsYWcucHQ6YmVmb3JlLFxuaS5mbGFnLnBvcnR1Z2FsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC03MDJweDtcbn1cbmkuZmxhZy5wdzpiZWZvcmUsXG5pLmZsYWcucGFsYXU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTcyOHB4O1xufVxuaS5mbGFnLnB5OmJlZm9yZSxcbmkuZmxhZy5wYXJhZ3VheTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNzU0cHg7XG59XG5pLmZsYWcucWE6YmVmb3JlLFxuaS5mbGFnLnFhdGFyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC03ODBweDtcbn1cbmkuZmxhZy5yZTpiZWZvcmUsXG5pLmZsYWcucmV1bmlvbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtODA2cHg7XG59XG5pLmZsYWcucm86YmVmb3JlLFxuaS5mbGFnLnJvbWFuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTgzMnB4O1xufVxuaS5mbGFnLnJzOmJlZm9yZSxcbmkuZmxhZy5zZXJiaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTg1OHB4O1xufVxuaS5mbGFnLnJ1OmJlZm9yZSxcbmkuZmxhZy5ydXNzaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTg4NHB4O1xufVxuaS5mbGFnLnJ3OmJlZm9yZSxcbmkuZmxhZy5yd2FuZGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTkxMHB4O1xufVxuaS5mbGFnLnNhOmJlZm9yZSxcbmkuZmxhZy5zYXVkaS5hcmFiaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTkzNnB4O1xufVxuaS5mbGFnLnNiOmJlZm9yZSxcbmkuZmxhZy5zb2xvbW9uLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTk2MnB4O1xufVxuaS5mbGFnLnNjOmJlZm9yZSxcbmkuZmxhZy5zZXljaGVsbGVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC05ODhweDtcbn1cbmkuZmxhZy5nYi5zY3Q6YmVmb3JlLFxuaS5mbGFnLnNjb3RsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMDE0cHg7XG59XG5pLmZsYWcuc2Q6YmVmb3JlLFxuaS5mbGFnLnN1ZGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMDQwcHg7XG59XG5pLmZsYWcuc2U6YmVmb3JlLFxuaS5mbGFnLnN3ZWRlbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTA2NnB4O1xufVxuaS5mbGFnLnNnOmJlZm9yZSxcbmkuZmxhZy5zaW5nYXBvcmU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEwOTJweDtcbn1cbmkuZmxhZy5zaDpiZWZvcmUsXG5pLmZsYWcuc2FpbnQuaGVsZW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMTE4cHg7XG59XG5pLmZsYWcuc2k6YmVmb3JlLFxuaS5mbGFnLnNsb3ZlbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMTQ0cHg7XG59XG5pLmZsYWcuc2o6YmVmb3JlLFxuaS5mbGFnLnN2YWxiYXJkOmJlZm9yZSxcbmkuZmxhZy5qYW4ubWF5ZW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTExNzBweDtcbn1cbmkuZmxhZy5zazpiZWZvcmUsXG5pLmZsYWcuc2xvdmFraWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTExOTZweDtcbn1cbmkuZmxhZy5zbDpiZWZvcmUsXG5pLmZsYWcuc2llcnJhLmxlb25lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMjIycHg7XG59XG5pLmZsYWcuc206YmVmb3JlLFxuaS5mbGFnLnNhbi5tYXJpbm86YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEyNDhweDtcbn1cbmkuZmxhZy5zbjpiZWZvcmUsXG5pLmZsYWcuc2VuZWdhbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTI3NHB4O1xufVxuaS5mbGFnLnNvOmJlZm9yZSxcbmkuZmxhZy5zb21hbGlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMzAwcHg7XG59XG5pLmZsYWcuc3I6YmVmb3JlLFxuaS5mbGFnLnN1cmluYW1lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMzI2cHg7XG59XG5pLmZsYWcuc3Q6YmVmb3JlLFxuaS5mbGFnLnNhby50b21lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMzUycHg7XG59XG5pLmZsYWcuc3Y6YmVmb3JlLFxuaS5mbGFnLmVsLnNhbHZhZG9yOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMzc4cHg7XG59XG5pLmZsYWcuc3k6YmVmb3JlLFxuaS5mbGFnLnN5cmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNDA0cHg7XG59XG5pLmZsYWcuc3o6YmVmb3JlLFxuaS5mbGFnLnN3YXppbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTQzMHB4O1xufVxuaS5mbGFnLnRjOmJlZm9yZSxcbmkuZmxhZy5jYWljb3MuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTQ1NnB4O1xufVxuaS5mbGFnLnRkOmJlZm9yZSxcbmkuZmxhZy5jaGFkOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNDgycHg7XG59XG5pLmZsYWcudGY6YmVmb3JlLFxuaS5mbGFnLmZyZW5jaC50ZXJyaXRvcmllczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTUwOHB4O1xufVxuaS5mbGFnLnRnOmJlZm9yZSxcbmkuZmxhZy50b2dvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNTM0cHg7XG59XG5pLmZsYWcudGg6YmVmb3JlLFxuaS5mbGFnLnRoYWlsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNTYwcHg7XG59XG5pLmZsYWcudGo6YmVmb3JlLFxuaS5mbGFnLnRhamlraXN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE1ODZweDtcbn1cbmkuZmxhZy50azpiZWZvcmUsXG5pLmZsYWcudG9rZWxhdTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTYxMnB4O1xufVxuaS5mbGFnLnRsOmJlZm9yZSxcbmkuZmxhZy50aW1vcmxlc3RlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNjM4cHg7XG59XG5pLmZsYWcudG06YmVmb3JlLFxuaS5mbGFnLnR1cmttZW5pc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTY2NHB4O1xufVxuaS5mbGFnLnRuOmJlZm9yZSxcbmkuZmxhZy50dW5pc2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNjkwcHg7XG59XG5pLmZsYWcudG86YmVmb3JlLFxuaS5mbGFnLnRvbmdhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNzE2cHg7XG59XG5pLmZsYWcudHI6YmVmb3JlLFxuaS5mbGFnLnR1cmtleTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTc0MnB4O1xufVxuaS5mbGFnLnR0OmJlZm9yZSxcbmkuZmxhZy50cmluaWRhZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTc2OHB4O1xufVxuaS5mbGFnLnR2OmJlZm9yZSxcbmkuZmxhZy50dXZhbHU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE3OTRweDtcbn1cbmkuZmxhZy50dzpiZWZvcmUsXG5pLmZsYWcudGFpd2FuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xODIwcHg7XG59XG5pLmZsYWcudHo6YmVmb3JlLFxuaS5mbGFnLnRhbnphbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xODQ2cHg7XG59XG5pLmZsYWcudWE6YmVmb3JlLFxuaS5mbGFnLnVrcmFpbmU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE4NzJweDtcbn1cbmkuZmxhZy51ZzpiZWZvcmUsXG5pLmZsYWcudWdhbmRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xODk4cHg7XG59XG5pLmZsYWcudW06YmVmb3JlLFxuaS5mbGFnLnVzLm1pbm9yLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE5MjRweDtcbn1cbmkuZmxhZy51czpiZWZvcmUsXG5pLmZsYWcuYW1lcmljYTpiZWZvcmUsXG5pLmZsYWcudW5pdGVkLnN0YXRlczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTk1MHB4O1xufVxuaS5mbGFnLnV5OmJlZm9yZSxcbmkuZmxhZy51cnVndWF5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xOTc2cHg7XG59XG5pLmZsYWcudXo6YmVmb3JlLFxuaS5mbGFnLnV6YmVraXN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IDA7XG59XG5pLmZsYWcudmE6YmVmb3JlLFxuaS5mbGFnLnZhdGljYW4uY2l0eTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTI2cHg7XG59XG5pLmZsYWcudmM6YmVmb3JlLFxuaS5mbGFnLnNhaW50LnZpbmNlbnQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC01MnB4O1xufVxuaS5mbGFnLnZlOmJlZm9yZSxcbmkuZmxhZy52ZW5lenVlbGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC03OHB4O1xufVxuaS5mbGFnLnZnOmJlZm9yZSxcbmkuZmxhZy5icml0aXNoLnZpcmdpbi5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMTA0cHg7XG59XG5pLmZsYWcudmk6YmVmb3JlLFxuaS5mbGFnLnVzLnZpcmdpbi5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMTMwcHg7XG59XG5pLmZsYWcudm46YmVmb3JlLFxuaS5mbGFnLnZpZXRuYW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0xNTZweDtcbn1cbmkuZmxhZy52dTpiZWZvcmUsXG5pLmZsYWcudmFudWF0dTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTE4MnB4O1xufVxuaS5mbGFnLmdiLndsczpiZWZvcmUsXG5pLmZsYWcud2FsZXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0yMDhweDtcbn1cbmkuZmxhZy53ZjpiZWZvcmUsXG5pLmZsYWcud2FsbGlzLmFuZC5mdXR1bmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0yMzRweDtcbn1cbmkuZmxhZy53czpiZWZvcmUsXG5pLmZsYWcuc2Ftb2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0yNjBweDtcbn1cbmkuZmxhZy55ZTpiZWZvcmUsXG5pLmZsYWcueWVtZW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0yODZweDtcbn1cbmkuZmxhZy55dDpiZWZvcmUsXG5pLmZsYWcubWF5b3R0ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTMxMnB4O1xufVxuaS5mbGFnLnphOmJlZm9yZSxcbmkuZmxhZy5zb3V0aC5hZnJpY2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0zMzhweDtcbn1cbmkuZmxhZy56bTpiZWZvcmUsXG5pLmZsYWcuemFtYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMzY0cHg7XG59XG5pLmZsYWcuenc6YmVmb3JlLFxuaS5mbGFnLnppbWJhYndlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMzkwcHg7XG59XG4vKnJ0bDplbmQ6aWdub3JlKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEhlYWRlclxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBIZWFkZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTdWIgSGVhZGluZyAqL1xuLyogU3ViIEhlYWRlciAqL1xuLyogSWNvbiAqL1xuLyogSW1hZ2UgKi9cbi8qIExhYmVsICovXG4vKiBDb250ZW50ICovXG4vKiBQYXJhZ3JhcGggYWZ0ZXIgSGVhZGVyICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNpemluZyAqL1xuLyogU3ViIEhlYWRlciAqL1xuLyogSWNvbiBIZWFkZXIgKi9cbi8qIE5vIExpbmUgSGVpZ2h0IE9mZnNldCAqL1xuLyogRGl2aWRlZCAqL1xuLyogQmxvY2sgKi9cbi8qIEF0dGFjaGVkICovXG4vKiBJbnZlcnRlZCAqL1xuLyogRmxvYXRlZCAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBIZWFkZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTdWIgSGVhZGluZyAqL1xuLyogU3ViIEhlYWRlciAqL1xuLyogSWNvbiAqL1xuLyogSW1hZ2UgKi9cbi8qIExhYmVsICovXG4vKiBDb250ZW50ICovXG4vKiBQYXJhZ3JhcGggYWZ0ZXIgSGVhZGVyICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNpemluZyAqL1xuLyogU3ViIEhlYWRlciAqL1xuLyogSWNvbiBIZWFkZXIgKi9cbi8qIE5vIExpbmUgSGVpZ2h0IE9mZnNldCAqL1xuLyogRGl2aWRlZCAqL1xuLyogQmxvY2sgKi9cbi8qIEF0dGFjaGVkICovXG4vKiBJbnZlcnRlZCAqL1xuLyogRmxvYXRlZCAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEhlYWRlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFN0YW5kYXJkICovXG4udWkuaGVhZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IGNhbGMoMnJlbSAtIDAuMTQyODU3MTQyODU3MTQyOWVtKSAwIDFyZW07XG4gIHBhZGRpbmc6IDAgMDtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi51aS5oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAtMC4xNDI4NTcxNGVtO1xufVxuLnVpLmhlYWRlcjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFN1YiBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmhlYWRlciA+IC5pY29uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgb3BhY2l0eTogMTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4vKiBXaXRoIFRleHQgTm9kZSAqL1xuLnVpLmhlYWRlciAuaWNvbjpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSW1hZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5oZWFkZXIgPiAuaW1hZ2U6bm90KC5pY29uKSxcbi51aS5oZWFkZXIgPiBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IDAuMTQyODU3MTRlbTtcbiAgd2lkdGg6IDIuNWVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4udWkuaGVhZGVyID4gLmltYWdlOm5vdCguaWNvbik6b25seS1jaGlsZCxcbi51aS5oZWFkZXIgPiBpbWc6b25seS1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5oZWFkZXIgLmNvbnRlbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4vKiBBZnRlciBJbWFnZSAqL1xuLnVpLmhlYWRlciA+IGltZyArIC5jb250ZW50LFxuLnVpLmhlYWRlciA+IC5pbWFnZSArIC5jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLyogQWZ0ZXIgSWNvbiAqL1xuLnVpLmhlYWRlciA+IC5pY29uICsgLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gTG9vc2UgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaGVhZGVyIC51aS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogJyc7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4vKiBQb3NpdGlvbmluZyAqL1xuLnVpLmhlYWRlciArIHAge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuaDEudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuaDIudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuaDMudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuaDQudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjA3MTQyODU3cmVtO1xufVxuaDUudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLyogU3ViIEhlYWRlciAqL1xuaDEudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuaDIudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuaDMudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuaDQudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuaDUudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuIENvbnRlbnQgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5odWdlLmhlYWRlciB7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgZm9udC1zaXplOiAyZW07XG59XG4udWkubGFyZ2UuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxZW07XG59XG4udWkubWVkaXVtLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOWVtO1xufVxuLnVpLnNtYWxsLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4wNzE0Mjg1N2VtO1xufVxuLnVpLnRpbnkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG4vKiBTdWIgSGVhZGVyICovXG4udWkuaHVnZS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4udWkubGFyZ2UuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuLnVpLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi51aS5zbWFsbC5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDFyZW07XG59XG4udWkudGlueS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdWIgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zdWIuaGVhZGVyIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4xNDI4NTcxNHJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJyc7XG59XG4udWkuc21hbGwuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOWVtO1xufVxuLnVpLmxhcmdlLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cbi51aS5odWdlLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDFlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaWNvbi5oZWFkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAycmVtIDAgMXJlbTtcbn1cbi51aS5pY29uLmhlYWRlcjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnVpLmljb24uaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5pY29uLmhlYWRlciAuaWNvbiB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBtYXJnaW46IDAgYXV0byAwLjVyZW07XG4gIG9wYWNpdHk6IDE7XG59XG4udWkuaWNvbi5oZWFkZXIgLmNvcm5lci5pY29uIHtcbiAgZm9udC1zaXplOiBjYWxjKDNlbSAqIDAuNDUpO1xufVxuLnVpLmljb24uaGVhZGVyIC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG59XG4udWkuaWNvbi5oZWFkZXIgLmNpcmN1bGFyLmljb24ge1xuICBmb250LXNpemU6IDJlbTtcbn1cbi51aS5pY29uLmhlYWRlciAuc3F1YXJlLmljb24ge1xuICBmb250LXNpemU6IDJlbTtcbn1cbi51aS5ibG9jay5pY29uLmhlYWRlciAuaWNvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4udWkuaWNvbi5oZWFkZXIuYWxpZ25lZCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5kaXNhYmxlZC5oZWFkZXIge1xuICBvcGFjaXR5OiAwLjQ1O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5oZWFkZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuLnVpLmludmVydGVkLmF0dGFjaGVkLmhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICMxQjFDMUQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4udWkuaW52ZXJ0ZWQuYmxvY2suaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogIzU0NTQ1NCBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucHJpbWFyeS5oZWFkZXIge1xuICBjb2xvcjogIzIxODVEMDtcbn1cbmEudWkucHJpbWFyeS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzE2NzhjMjtcbn1cbi51aS5wcmltYXJ5LmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMjE4NUQwO1xufVxuLnVpLmludmVydGVkLnByaW1hcnkuaGVhZGVyLmhlYWRlci5oZWFkZXIge1xuICBjb2xvcjogIzU0QzhGRjtcbn1cbmEudWkuaW52ZXJ0ZWQucHJpbWFyeS5oZWFkZXIuaGVhZGVyLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMjFiOGZmO1xufVxuLnVpLmludmVydGVkLnByaW1hcnkuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM1NEM4RkY7XG59XG4udWkuc2Vjb25kYXJ5LmhlYWRlciB7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuYS51aS5zZWNvbmRhcnkuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICMyNzI5MmE7XG59XG4udWkuc2Vjb25kYXJ5LmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMUIxQzFEO1xufVxuLnVpLmludmVydGVkLnNlY29uZGFyeS5oZWFkZXIuaGVhZGVyLmhlYWRlciB7XG4gIGNvbG9yOiAjNTQ1NDU0O1xufVxuYS51aS5pbnZlcnRlZC5zZWNvbmRhcnkuaGVhZGVyLmhlYWRlci5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzZlNmU2ZTtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM1NDU0NTQ7XG59XG4udWkucmVkLmhlYWRlciB7XG4gIGNvbG9yOiAjREIyODI4O1xufVxuYS51aS5yZWQuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNkMDE5MTk7XG59XG4udWkucmVkLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjREIyODI4O1xufVxuLnVpLmludmVydGVkLnJlZC5oZWFkZXIuaGVhZGVyLmhlYWRlciB7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuYS51aS5pbnZlcnRlZC5yZWQuaGVhZGVyLmhlYWRlci5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmMzkyYjtcbn1cbi51aS5pbnZlcnRlZC5yZWQuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGRjY5NUU7XG59XG4udWkub3JhbmdlLmhlYWRlciB7XG4gIGNvbG9yOiAjRjI3MTFDO1xufVxuYS51aS5vcmFuZ2UuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNmMjYyMDI7XG59XG4udWkub3JhbmdlLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRjI3MTFDO1xufVxuLnVpLmludmVydGVkLm9yYW5nZS5oZWFkZXIuaGVhZGVyLmhlYWRlciB7XG4gIGNvbG9yOiAjRkY4NTFCO1xufVxuYS51aS5pbnZlcnRlZC5vcmFuZ2UuaGVhZGVyLmhlYWRlci5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2U3NmIwMDtcbn1cbi51aS5pbnZlcnRlZC5vcmFuZ2UuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGRjg1MUI7XG59XG4udWkueWVsbG93LmhlYWRlciB7XG4gIGNvbG9yOiAjRkJCRDA4O1xufVxuYS51aS55ZWxsb3cuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNlYWFlMDA7XG59XG4udWkueWVsbG93LmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRkJCRDA4O1xufVxuLnVpLmludmVydGVkLnllbGxvdy5oZWFkZXIuaGVhZGVyLmhlYWRlciB7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuYS51aS5pbnZlcnRlZC55ZWxsb3cuaGVhZGVyLmhlYWRlci5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2ViY2QwMDtcbn1cbi51aS5pbnZlcnRlZC55ZWxsb3cuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGRkUyMUY7XG59XG4udWkub2xpdmUuaGVhZGVyIHtcbiAgY29sb3I6ICNCNUNDMTg7XG59XG5hLnVpLm9saXZlLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjYTdiZDBkO1xufVxuLnVpLm9saXZlLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjQjVDQzE4O1xufVxuLnVpLmludmVydGVkLm9saXZlLmhlYWRlci5oZWFkZXIuaGVhZGVyIHtcbiAgY29sb3I6ICNEOUU3Nzg7XG59XG5hLnVpLmludmVydGVkLm9saXZlLmhlYWRlci5oZWFkZXIuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNkMmU3NDU7XG59XG4udWkuaW52ZXJ0ZWQub2xpdmUuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNEOUU3Nzg7XG59XG4udWkuZ3JlZW4uaGVhZGVyIHtcbiAgY29sb3I6ICMyMUJBNDU7XG59XG5hLnVpLmdyZWVuLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMTZhYjM5O1xufVxuLnVpLmdyZWVuLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMjFCQTQ1O1xufVxuLnVpLmludmVydGVkLmdyZWVuLmhlYWRlci5oZWFkZXIuaGVhZGVyIHtcbiAgY29sb3I6ICMyRUNDNDA7XG59XG5hLnVpLmludmVydGVkLmdyZWVuLmhlYWRlci5oZWFkZXIuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICMxZWE5MmU7XG59XG4udWkuaW52ZXJ0ZWQuZ3JlZW4uZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMyRUNDNDA7XG59XG4udWkudGVhbC5oZWFkZXIge1xuICBjb2xvcjogIzAwQjVBRDtcbn1cbmEudWkudGVhbC5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzAwOWM5NTtcbn1cbi51aS50ZWFsLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDBCNUFEO1xufVxuLnVpLmludmVydGVkLnRlYWwuaGVhZGVyLmhlYWRlci5oZWFkZXIge1xuICBjb2xvcjogIzZERkZGRjtcbn1cbmEudWkuaW52ZXJ0ZWQudGVhbC5oZWFkZXIuaGVhZGVyLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjM2FmZmZmO1xufVxuLnVpLmludmVydGVkLnRlYWwuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM2REZGRkY7XG59XG4udWkuYmx1ZS5oZWFkZXIge1xuICBjb2xvcjogIzIxODVEMDtcbn1cbmEudWkuYmx1ZS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzE2NzhjMjtcbn1cbi51aS5ibHVlLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMjE4NUQwO1xufVxuLnVpLmludmVydGVkLmJsdWUuaGVhZGVyLmhlYWRlci5oZWFkZXIge1xuICBjb2xvcjogIzU0QzhGRjtcbn1cbmEudWkuaW52ZXJ0ZWQuYmx1ZS5oZWFkZXIuaGVhZGVyLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMjFiOGZmO1xufVxuLnVpLmludmVydGVkLmJsdWUuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM1NEM4RkY7XG59XG4udWkudmlvbGV0LmhlYWRlciB7XG4gIGNvbG9yOiAjNjQzNUM5O1xufVxuYS51aS52aW9sZXQuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICM1ODI5YmI7XG59XG4udWkudmlvbGV0LmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNjQzNUM5O1xufVxuLnVpLmludmVydGVkLnZpb2xldC5oZWFkZXIuaGVhZGVyLmhlYWRlciB7XG4gIGNvbG9yOiAjQTI5MUZCO1xufVxuYS51aS5pbnZlcnRlZC52aW9sZXQuaGVhZGVyLmhlYWRlci5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzc0NWFmZjtcbn1cbi51aS5pbnZlcnRlZC52aW9sZXQuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNBMjkxRkI7XG59XG4udWkucHVycGxlLmhlYWRlciB7XG4gIGNvbG9yOiAjQTMzM0M4O1xufVxuYS51aS5wdXJwbGUuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICM5NjI3YmE7XG59XG4udWkucHVycGxlLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjQTMzM0M4O1xufVxuLnVpLmludmVydGVkLnB1cnBsZS5oZWFkZXIuaGVhZGVyLmhlYWRlciB7XG4gIGNvbG9yOiAjREM3M0ZGO1xufVxuYS51aS5pbnZlcnRlZC5wdXJwbGUuaGVhZGVyLmhlYWRlci5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2NmNDBmZjtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNEQzczRkY7XG59XG4udWkucGluay5oZWFkZXIge1xuICBjb2xvcjogI0UwMzk5Nztcbn1cbmEudWkucGluay5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2U2MWE4ZDtcbn1cbi51aS5waW5rLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRTAzOTk3O1xufVxuLnVpLmludmVydGVkLnBpbmsuaGVhZGVyLmhlYWRlci5oZWFkZXIge1xuICBjb2xvcjogI0ZGOEVERjtcbn1cbmEudWkuaW52ZXJ0ZWQucGluay5oZWFkZXIuaGVhZGVyLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmY1YmQxO1xufVxuLnVpLmludmVydGVkLnBpbmsuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGRjhFREY7XG59XG4udWkuYnJvd24uaGVhZGVyIHtcbiAgY29sb3I6ICNBNTY3M0Y7XG59XG5hLnVpLmJyb3duLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjOTc1YjMzO1xufVxuLnVpLmJyb3duLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjQTU2NzNGO1xufVxuLnVpLmludmVydGVkLmJyb3duLmhlYWRlci5oZWFkZXIuaGVhZGVyIHtcbiAgY29sb3I6ICNENjdDMUM7XG59XG5hLnVpLmludmVydGVkLmJyb3duLmhlYWRlci5oZWFkZXIuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNiMDYyMGY7XG59XG4udWkuaW52ZXJ0ZWQuYnJvd24uZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNENjdDMUM7XG59XG4udWkuZ3JleS5oZWFkZXIge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbmEudWkuZ3JleS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzgzODM4Mztcbn1cbi51aS5ncmV5LmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNzY3Njc2O1xufVxuLnVpLmludmVydGVkLmdyZXkuaGVhZGVyLmhlYWRlci5oZWFkZXIge1xuICBjb2xvcjogI0RDRERERTtcbn1cbmEudWkuaW52ZXJ0ZWQuZ3JleS5oZWFkZXIuaGVhZGVyLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjYzJjNGM1O1xufVxuLnVpLmludmVydGVkLmdyZXkuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNEQ0REREU7XG59XG4udWkuYmxhY2suaGVhZGVyIHtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG5hLnVpLmJsYWNrLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMjcyOTJhO1xufVxuLnVpLmJsYWNrLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMUIxQzFEO1xufVxuLnVpLmludmVydGVkLmJsYWNrLmhlYWRlci5oZWFkZXIuaGVhZGVyIHtcbiAgY29sb3I6ICM1NDU0NTQ7XG59XG5hLnVpLmludmVydGVkLmJsYWNrLmhlYWRlci5oZWFkZXIuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG4udWkuaW52ZXJ0ZWQuYmxhY2suZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM1NDU0NTQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubGVmdC5hbGlnbmVkLmhlYWRlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWkucmlnaHQuYWxpZ25lZC5oZWFkZXIge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi51aS5jZW50ZXJlZC5oZWFkZXIsXG4udWkuY2VudGVyLmFsaWduZWQuaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnVpLmp1c3RpZmllZC5oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuLnVpLmp1c3RpZmllZC5oZWFkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMTAwJTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mbG9hdGVkLmhlYWRlcixcbi51aVtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uaGVhZGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG59XG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5oZWFkZXIge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZpdHRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZpdHRlZC5oZWFkZXIge1xuICBwYWRkaW5nOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXZpZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmRpdmlkaW5nLmhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjIxNDI4NTcxcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5kaXZpZGluZy5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMC4yMTQyODU3MXJlbTtcbn1cbi51aS5kaXZpZGluZy5oZWFkZXIgLmljb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVpLmludmVydGVkLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBCbG9ja1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmJsb2NrLmhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0RjU7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjlyZW0gMXJlbTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cbi51aS50aW55LmJsb2NrLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5ibG9jay5oZWFkZXIge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG4udWkuYmxvY2suaGVhZGVyOm5vdChoMSk6bm90KGgyKTpub3QoaDMpOm5vdChoNCk6bm90KGg1KTpub3QoaDYpIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLmJsb2NrLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5odWdlLmJsb2NrLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuYXR0YWNoZWQuaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgcGFkZGluZzogMC43ODU3MTQyOXJlbSAxcmVtO1xuICBtYXJnaW46IDAgLTFweCAwIC0xcHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENEQ0RDU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4udWkuYXR0YWNoZWQuYmxvY2suaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI0YzRjRGNTtcbn1cbi51aS5hdHRhY2hlZDpub3QoLnRvcCkuaGVhZGVyIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi51aS50b3AuYXR0YWNoZWQuaGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDAgMDtcbn1cbi51aS5ib3R0b20uYXR0YWNoZWQuaGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi8qIEF0dGFjaGVkIFNpemVzICovXG4udWkudGlueS5hdHRhY2hlZC5oZWFkZXIge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cbi51aS5zbWFsbC5hdHRhY2hlZC5oZWFkZXIge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cbi51aS5hdHRhY2hlZC5oZWFkZXI6bm90KGgxKTpub3QoaDIpOm5vdChoMyk6bm90KGg0KTpub3QoaDUpOm5vdChoNikge1xuICBmb250LXNpemU6IDFlbTtcbn1cbi51aS5sYXJnZS5hdHRhY2hlZC5oZWFkZXIge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cbi51aS5odWdlLmF0dGFjaGVkLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M2VtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmhlYWRlcjpub3QoaDEpOm5vdChoMik6bm90KGgzKTpub3QoaDQpOm5vdChoNSk6bm90KGg2KSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOWVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEljb25cbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEljb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb250IEZpbGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogU29saWQgSWNvbnMgKi9cbi8qIE91dGxpbmUgSWNvbnMgKi9cbi8qIEJyYW5kIEljb25zICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBEZWZpbml0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSWNvbiBWYXJpYWJsZXMgKi9cbi8qIFZhcmlhdGlvbnMgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEljb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb250IEZpbGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogU29saWQgSWNvbnMgKi9cbi8qIE91dGxpbmUgSWNvbnMgKi9cbi8qIEJyYW5kIEljb25zICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBEZWZpbml0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSWNvbiBWYXJpYWJsZXMgKi9cbi8qIFZhcmlhdGlvbnMgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgSWNvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ljb25zJztcbiAgc3JjOiB1cmwoXCIuLi8uLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvaWNvbnMuZW90XCIpO1xuICBzcmM6IHVybChcIi4uLy4uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9pY29ucy5lb3Q/I2llZml4XCIpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL2ljb25zLndvZmYyXCIpIGZvcm1hdCgnd29mZjInKSwgdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL2ljb25zLndvZmZcIikgZm9ybWF0KCd3b2ZmJyksIHVybChcIi4uLy4uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9pY29ucy50dGZcIikgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoXCIuLi8uLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvaWNvbnMuc3ZnI2ljb25zXCIpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5pLmljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIG1hcmdpbjogMCAwLjI1cmVtIDAgMDtcbiAgd2lkdGg6IDEuMThlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGZvbnQtZmFtaWx5OiAnSWNvbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBzcGVhazogbm9uZTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbmkuaWNvbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5pLmljb24ubG9hZGluZyB7XG4gIGhlaWdodDogMWVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgMnMgbGluZWFyIGluZmluaXRlO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5pLmljb246aG92ZXIsXG5pLmljb25zOmhvdmVyLFxuaS5pY29uOmFjdGl2ZSxcbmkuaWNvbnM6YWN0aXZlLFxuaS5lbXBoYXNpemVkLmljb246bm90KC5kaXNhYmxlZCksXG5pLmVtcGhhc2l6ZWQuaWNvbnM6bm90KC5kaXNhYmxlZCkge1xuICBvcGFjaXR5OiAxO1xufVxuaS5kaXNhYmxlZC5pY29uLFxuaS5kaXNhYmxlZC5pY29ucyB7XG4gIG9wYWNpdHk6IDAuNDU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZpdHRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaS5maXR0ZWQuaWNvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgTGlua1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaS5saW5rLmljb246bm90KC5kaXNhYmxlZCksXG5pLmxpbmsuaWNvbnM6bm90KC5kaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuODtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG59XG5pLmxpbmsuaWNvbjpob3ZlcixcbmkubGluay5pY29uczpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIENpcmN1bGFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5pLmNpcmN1bGFyLmljb24ge1xuICBib3JkZXItcmFkaXVzOiA1MDBlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwLjVlbSAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMWVtIHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldDtcbiAgd2lkdGg6IDJlbSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDJlbSAhaW1wb3J0YW50O1xufVxuaS5jaXJjdWxhci5pbnZlcnRlZC5pY29uIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBGbGlwcGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5pLmZsaXBwZWQuaWNvbixcbmkuaG9yaXpvbnRhbGx5LmZsaXBwZWQuaWNvbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xufVxuaS52ZXJ0aWNhbGx5LmZsaXBwZWQuaWNvbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBSb3RhdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5pLnJvdGF0ZWQuaWNvbixcbmkucmlnaHQucm90YXRlZC5pY29uLFxuaS5jbG9ja3dpc2Uucm90YXRlZC5pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuaS5sZWZ0LnJvdGF0ZWQuaWNvbixcbmkuY291bnRlcmNsb2Nrd2lzZS5yb3RhdGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuaS5oYWxmd2F5LnJvdGF0ZWQuaWNvbiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBGbGlwcGVkICYgUm90YXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmkucm90YXRlZC5mbGlwcGVkLmljb24sXG5pLnJpZ2h0LnJvdGF0ZWQuZmxpcHBlZC5pY29uLFxuaS5jbG9ja3dpc2Uucm90YXRlZC5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKSByb3RhdGUoOTBkZWcpO1xufVxuaS5sZWZ0LnJvdGF0ZWQuZmxpcHBlZC5pY29uLFxuaS5jb3VudGVyY2xvY2t3aXNlLnJvdGF0ZWQuZmxpcHBlZC5pY29uIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSkgcm90YXRlKC05MGRlZyk7XG59XG5pLmhhbGZ3YXkucm90YXRlZC5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKSByb3RhdGUoMTgwZGVnKTtcbn1cbmkucm90YXRlZC52ZXJ0aWNhbGx5LmZsaXBwZWQuaWNvbixcbmkucmlnaHQucm90YXRlZC52ZXJ0aWNhbGx5LmZsaXBwZWQuaWNvbixcbmkuY2xvY2t3aXNlLnJvdGF0ZWQudmVydGljYWxseS5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKSByb3RhdGUoOTBkZWcpO1xufVxuaS5sZWZ0LnJvdGF0ZWQudmVydGljYWxseS5mbGlwcGVkLmljb24sXG5pLmNvdW50ZXJjbG9ja3dpc2Uucm90YXRlZC52ZXJ0aWNhbGx5LmZsaXBwZWQuaWNvbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpIHJvdGF0ZSgtOTBkZWcpO1xufVxuaS5oYWxmd2F5LnJvdGF0ZWQudmVydGljYWxseS5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKSByb3RhdGUoMTgwZGVnKTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmkuYm9yZGVyZWQuaWNvbiB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIHdpZHRoOiAyZW07XG4gIGhlaWdodDogMmVtO1xuICBwYWRkaW5nOiAwLjVlbSAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMWVtIHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldDtcbn1cbmkuYm9yZGVyZWQuaW52ZXJ0ZWQuaWNvbiB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkIFNoYXBlcyAqL1xuaS5pbnZlcnRlZC5ib3JkZXJlZC5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5pLmludmVydGVkLmljb24ge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaS5wcmltYXJ5Lmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogIzIxODVEMDtcbn1cbmkuaW52ZXJ0ZWQucHJpbWFyeS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG5pLmludmVydGVkLmJvcmRlcmVkLnByaW1hcnkuaWNvbi5pY29uLmljb24uaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIucHJpbWFyeS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5pLnNlY29uZGFyeS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG5pLmludmVydGVkLnNlY29uZGFyeS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICM1NDU0NTQ7XG59XG5pLmludmVydGVkLmJvcmRlcmVkLnNlY29uZGFyeS5pY29uLmljb24uaWNvbi5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5zZWNvbmRhcnkuaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuaS5yZWQuaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGNvbG9yOiAjREIyODI4O1xufVxuaS5pbnZlcnRlZC5yZWQuaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuaS5pbnZlcnRlZC5ib3JkZXJlZC5yZWQuaWNvbi5pY29uLmljb24uaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIucmVkLmljb24uaWNvbi5pY29uLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbmkub3JhbmdlLmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogI0YyNzExQztcbn1cbmkuaW52ZXJ0ZWQub3JhbmdlLmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogI0ZGODUxQjtcbn1cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQub3JhbmdlLmljb24uaWNvbi5pY29uLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLm9yYW5nZS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyNzExQztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5pLnllbGxvdy5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICNGQkJEMDg7XG59XG5pLmludmVydGVkLnllbGxvdy5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICNGRkUyMUY7XG59XG5pLmludmVydGVkLmJvcmRlcmVkLnllbGxvdy5pY29uLmljb24uaWNvbi5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci55ZWxsb3cuaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkJEMDg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuaS5vbGl2ZS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICNCNUNDMTg7XG59XG5pLmludmVydGVkLm9saXZlLmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogI0Q5RTc3ODtcbn1cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQub2xpdmUuaWNvbi5pY29uLmljb24uaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIub2xpdmUuaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNUNDMTg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuaS5ncmVlbi5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICMyMUJBNDU7XG59XG5pLmludmVydGVkLmdyZWVuLmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogIzJFQ0M0MDtcbn1cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQuZ3JlZW4uaWNvbi5pY29uLmljb24uaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIuZ3JlZW4uaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuaS50ZWFsLmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogIzAwQjVBRDtcbn1cbmkuaW52ZXJ0ZWQudGVhbC5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICM2REZGRkY7XG59XG5pLmludmVydGVkLmJvcmRlcmVkLnRlYWwuaWNvbi5pY29uLmljb24uaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIudGVhbC5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5pLmJsdWUuaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGNvbG9yOiAjMjE4NUQwO1xufVxuaS5pbnZlcnRlZC5ibHVlLmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogIzU0QzhGRjtcbn1cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQuYmx1ZS5pY29uLmljb24uaWNvbi5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5ibHVlLmljb24uaWNvbi5pY29uLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbmkudmlvbGV0Lmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogIzY0MzVDOTtcbn1cbmkuaW52ZXJ0ZWQudmlvbGV0Lmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogI0EyOTFGQjtcbn1cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQudmlvbGV0Lmljb24uaWNvbi5pY29uLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLnZpb2xldC5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY0MzVDOTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5pLnB1cnBsZS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICNBMzMzQzg7XG59XG5pLmludmVydGVkLnB1cnBsZS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICNEQzczRkY7XG59XG5pLmludmVydGVkLmJvcmRlcmVkLnB1cnBsZS5pY29uLmljb24uaWNvbi5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5wdXJwbGUuaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMzMzQzg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuaS5waW5rLmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogI0UwMzk5Nztcbn1cbmkuaW52ZXJ0ZWQucGluay5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICNGRjhFREY7XG59XG5pLmludmVydGVkLmJvcmRlcmVkLnBpbmsuaWNvbi5pY29uLmljb24uaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIucGluay5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwMzk5NztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5pLmJyb3duLmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogI0E1NjczRjtcbn1cbmkuaW52ZXJ0ZWQuYnJvd24uaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGNvbG9yOiAjRDY3QzFDO1xufVxuaS5pbnZlcnRlZC5ib3JkZXJlZC5icm93bi5pY29uLmljb24uaWNvbi5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5icm93bi5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0E1NjczRjtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5pLmdyZXkuaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuaS5pbnZlcnRlZC5ncmV5Lmljb24uaWNvbi5pY29uLmljb24ge1xuICBjb2xvcjogI0RDRERERTtcbn1cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQuZ3JleS5pY29uLmljb24uaWNvbi5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5ncmV5Lmljb24uaWNvbi5pY29uLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbmkuYmxhY2suaWNvbi5pY29uLmljb24uaWNvbiB7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuaS5pbnZlcnRlZC5ibGFjay5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgY29sb3I6ICM1NDU0NTQ7XG59XG5pLmludmVydGVkLmJvcmRlcmVkLmJsYWNrLmljb24uaWNvbi5pY29uLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLmJsYWNrLmljb24uaWNvbi5pY29uLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaS5taW5pLm1pbmkubWluaS5pY29uLFxuaS5taW5pLm1pbmkubWluaS5pY29ucyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNGVtO1xufVxuaS50aW55LnRpbnkudGlueS5pY29uLFxuaS50aW55LnRpbnkudGlueS5pY29ucyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNWVtO1xufVxuaS5zbWFsbC5zbWFsbC5zbWFsbC5pY29uLFxuaS5zbWFsbC5zbWFsbC5zbWFsbC5pY29ucyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cbmkuaWNvbixcbmkuaWNvbnMge1xuICBmb250LXNpemU6IDFlbTtcbn1cbmkubGFyZ2UubGFyZ2UubGFyZ2UuaWNvbixcbmkubGFyZ2UubGFyZ2UubGFyZ2UuaWNvbnMge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbn1cbmkuYmlnLmJpZy5iaWcuaWNvbixcbmkuYmlnLmJpZy5iaWcuaWNvbnMge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAyZW07XG59XG5pLmh1Z2UuaHVnZS5odWdlLmljb24sXG5pLmh1Z2UuaHVnZS5odWdlLmljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogNGVtO1xufVxuaS5tYXNzaXZlLm1hc3NpdmUubWFzc2l2ZS5pY29uLFxuaS5tYXNzaXZlLm1hc3NpdmUubWFzc2l2ZS5pY29ucyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDhlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBHcm91cHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5pLmljb25zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuaS5pY29ucyAuaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIG1hcmdpbjogMDtcbn1cbmkuaWNvbnMgLmljb246Zmlyc3QtY2hpbGQge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4vKiBDb3JuZXIgSWNvbiAqL1xuaS5pY29ucyAuY29ybmVyLmljb24ge1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC1zaXplOiAwLjQ1ZW07XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMCAjRkZGRkZGLCAxcHggLTFweCAwICNGRkZGRkYsIC0xcHggMXB4IDAgI0ZGRkZGRiwgMXB4IDFweCAwICNGRkZGRkY7XG59XG5pLmljb25zIC5pY29uLmNvcm5lcltjbGFzcyo9XCJ0b3AgcmlnaHRcIl0ge1xuICB0b3A6IDA7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IGF1dG87XG59XG5pLmljb25zIC5pY29uLmNvcm5lcltjbGFzcyo9XCJ0b3AgbGVmdFwiXSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbn1cbmkuaWNvbnMgLmljb24uY29ybmVyW2NsYXNzKj1cImJvdHRvbSBsZWZ0XCJdIHtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuaS5pY29ucyAuaWNvbi5jb3JuZXJbY2xhc3MqPVwiYm90dG9tIHJpZ2h0XCJdIHtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xufVxuaS5pY29ucyAuaW52ZXJ0ZWQuY29ybmVyLmljb24ge1xuICB0ZXh0LXNoYWRvdzogLTFweCAtMXB4IDAgIzFCMUMxRCwgMXB4IC0xcHggMCAjMUIxQzFELCAtMXB4IDFweCAwICMxQjFDMUQsIDFweCAxcHggMCAjMUIxQzFEO1xufVxuLypcbiogRm9udCBBd2Vzb21lIDUuOS4wIGJ5IEBmb250YXdlc29tZSBbaHR0cHM6Ly9mb250YXdlc29tZS5jb21dXG4qIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChJY29uczogQ0MgQlkgNC4wIExpY2Vuc2UsIEZvbnRzOiBTSUwgT0ZMIDEuMSBMaWNlbnNlLCBDU1M6IE1JVCBMaWNlbnNlKVxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkZvbWFudGljLVVJIGludGVncmF0aW9uIG9mIEZvbnRBd2Vzb21lIDpcblxuLy8gY2xhc3MgbmFtZXMgYXJlIHNlcGFyYXRlZFxuaS5pY29uLmFuZ2xlLWxlZnQgID0+ICBpLmljb24uYW5nbGUubGVmdFxuXG4vLyB2YXJpYXRpb25zIGFyZSBleHRyYWN0ZWRcbmkuaWNvbi5jaXJjbGUgICAgICA9PiAgaS5pY29uLmNpcmNsZVxuaS5pY29uLmNpcmNsZS1vICAgID0+ICBpLmljb24uY2lyY2xlLm91dGxpbmVcblxuLy8gYWJicmV2aWF0aW9uIGFyZSByZXBsYWNlZCBieSBmdWxsIHdvcmRzXG5pLmljb24uKi1oICAgICAgICAgPT4gIGkuaWNvbi4qLmhvcml6b250YWxcbmkuaWNvbi4qLXYgICAgICAgICA9PiAgaS5pY29uLioudmVydGljYWxcbmkuaWNvbi5hbHBoYSAgICAgICA9PiAgaS5pY29uLmFscGhhYmV0XG5pLmljb24uYXNjICAgICAgICAgPT4gIGkuaWNvbi5hc2NlbmRpbmdcbmkuaWNvbi5kZXNjICAgICAgICA9PiAgaS5pY29uLmRlc2NlbmRpbmdcbmkuaWNvbi5hbHQgICAgICAgICA9PiAgaS5pY29uLmFsdGVybmF0ZVxuXG5cbkljb25zIGFyZSBvcmRlciBBLVogaW4gdGhlaXIgZ3JvdXAsIFNvbGlkLCBPdXRsaW5lLCBUaGluIChQcm8gb25seSkgYW5kIEJyYW5kXG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEljb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogRGVwcmVjYXRlZCAqSW4vT3V0IE5hbWluZyBDb25mbGljdCkgKi9cbmkuaWNvbi5saW5rZWRpbi5pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMVwiO1xufVxuaS5pY29uLnpvb20uaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGVcIjtcbn1cbmkuaWNvbi56b29tLm91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMFwiO1xufVxuaS5pY29uLnNpZ24uaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjZcIjtcbn1cbmkuaWNvbi5pbi5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE4XCI7XG59XG5pLmljb24ubG9nLm91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJmNVwiO1xufVxuaS5pY29uLnNpZ24ub3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmY1XCI7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFNvbGlkIEljb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogSWNvbnMgKi9cbmkuaWNvbi5hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY0MVwiO1xufVxuaS5pY29uLmFkZHJlc3MuYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiOVwiO1xufVxuaS5pY29uLmFkZHJlc3MuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiYlwiO1xufVxuaS5pY29uLmFkanVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0MlwiO1xufVxuaS5pY29uLmFpci5mcmVzaGVuZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZDBcIjtcbn1cbmkuaWNvbi5hbGlnbi5jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzdcIjtcbn1cbmkuaWNvbi5hbGlnbi5qdXN0aWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDM5XCI7XG59XG5pLmljb24uYWxpZ24ubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzNlwiO1xufVxuaS5pY29uLmFsaWduLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDM4XCI7XG59XG5pLmljb24uYWxsZXJnaWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDYxXCI7XG59XG5pLmljb24uYW1idWxhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY5XCI7XG59XG5pLmljb24uYW1lcmljYW4uc2lnbi5sYW5ndWFnZS5pbnRlcnByZXRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTNcIjtcbn1cbmkuaWNvbi5hbmNob3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2RcIjtcbn1cbmkuaWNvbi5hbmdsZS5kb3VibGUuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwM1wiO1xufVxuaS5pY29uLmFuZ2xlLmRvdWJsZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAwXCI7XG59XG5pLmljb24uYW5nbGUuZG91YmxlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAxXCI7XG59XG5pLmljb24uYW5nbGUuZG91YmxlLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAyXCI7XG59XG5pLmljb24uYW5nbGUubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNFwiO1xufVxuaS5pY29uLmFuZ2xlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA1XCI7XG59XG5pLmljb24uYW5nbGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDZcIjtcbn1cbmkuaWNvbi5hbmdsZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG59XG5pLmljb24uYW5ncnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTZcIjtcbn1cbmkuaWNvbi5hbmtoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjQ0XCI7XG59XG5pLmljb24uYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4N1wiO1xufVxuaS5pY29uLmFyY2h3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTdcIjtcbn1cbmkuaWNvbi5hcnJvdy5hbHRlcm5hdGUuY2lyY2xlLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNThcIjtcbn1cbmkuaWNvbi5hcnJvdy5hbHRlcm5hdGUuY2lyY2xlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNTlcIjtcbn1cbmkuaWNvbi5hcnJvdy5hbHRlcm5hdGUuY2lyY2xlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzVhXCI7XG59XG5pLmljb24uYXJyb3cuYWx0ZXJuYXRlLmNpcmNsZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1YlwiO1xufVxuaS5pY29uLmFycm93LmNpcmNsZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFiXCI7XG59XG5pLmljb24uYXJyb3cuY2lyY2xlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYThcIjtcbn1cbmkuaWNvbi5hcnJvdy5jaXJjbGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTlcIjtcbn1cbmkuaWNvbi5hcnJvdy5jaXJjbGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWFcIjtcbn1cbmkuaWNvbi5hcnJvdy5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYzXCI7XG59XG5pLmljb24uYXJyb3cubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2MFwiO1xufVxuaS5pY29uLmFycm93LnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG59XG5pLmljb24uYXJyb3cudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjJcIjtcbn1cbmkuaWNvbi5hcnJvd3MuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIyXCI7XG59XG5pLmljb24uYXJyb3dzLmFsdGVybmF0ZS5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzM3XCI7XG59XG5pLmljb24uYXJyb3dzLmFsdGVybmF0ZS52ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMzOFwiO1xufVxuaS5pY29uLmFzc2lzdGl2ZS5saXN0ZW5pbmcuc3lzdGVtczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhMlwiO1xufVxuaS5pY29uLmFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY5XCI7XG59XG5pLmljb24uYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZmFcIjtcbn1cbmkuaWNvbi5hdGxhczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1OFwiO1xufVxuaS5pY29uLmF0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZDJcIjtcbn1cbmkuaWNvbi5hdWRpby5kZXNjcmlwdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5ZVwiO1xufVxuaS5pY29uLmF3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTU5XCI7XG59XG5pLmljb24uYmFieTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc3Y1wiO1xufVxuaS5pY29uLmJhYnkuY2FycmlhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3N2RcIjtcbn1cbmkuaWNvbi5iYWNrc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NWFcIjtcbn1cbmkuaWNvbi5iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0YVwiO1xufVxuaS5pY29uLmJhY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2U1XCI7XG59XG5pLmljb24uYmFsYW5jZS5zY2FsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZVwiO1xufVxuaS5pY29uLmJhbGFuY2Uuc2NhbGUubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxNVwiO1xufVxuaS5pY29uLmJhbGFuY2Uuc2NhbGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MTZcIjtcbn1cbmkuaWNvbi5iYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWVcIjtcbn1cbmkuaWNvbi5iYW5kLmFpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2MlwiO1xufVxuaS5pY29uLmJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmFcIjtcbn1cbmkuaWNvbi5iYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM5XCI7XG59XG5pLmljb24uYmFzZWJhbGwuYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQzM1wiO1xufVxuaS5pY29uLmJhc2tldGJhbGwuYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQzNFwiO1xufVxuaS5pY29uLmJhdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2RcIjtcbn1cbmkuaWNvbi5iYXR0ZXJ5LmVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ0XCI7XG59XG5pLmljb24uYmF0dGVyeS5mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQwXCI7XG59XG5pLmljb24uYmF0dGVyeS5oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQyXCI7XG59XG5pLmljb24uYmF0dGVyeS5xdWFydGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQzXCI7XG59XG5pLmljb24uYmF0dGVyeS50aHJlZS5xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0MVwiO1xufVxuaS5pY29uLmJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNlwiO1xufVxuaS5pY29uLmJlZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmNcIjtcbn1cbmkuaWNvbi5iZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYzXCI7XG59XG5pLmljb24uYmVsbC5zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNlwiO1xufVxuaS5pY29uLmJlemllci5jdXJ2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1YlwiO1xufVxuaS5pY29uLmJpYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjQ3XCI7XG59XG5pLmljb24uYmljeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwNlwiO1xufVxuaS5pY29uLmJpa2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg0YVwiO1xufVxuaS5pY29uLmJpbm9jdWxhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTVcIjtcbn1cbmkuaWNvbi5iaW9oYXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODBcIjtcbn1cbmkuaWNvbi5iaXJ0aGRheS5jYWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZkXCI7XG59XG5pLmljb24uYmxlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxN1wiO1xufVxuaS5pY29uLmJsZW5kZXIucGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YjZcIjtcbn1cbmkuaWNvbi5ibGluZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5ZFwiO1xufVxuaS5pY29uLmJsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODFcIjtcbn1cbmkuaWNvbi5ib2xkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMyXCI7XG59XG5pLmljb24uYm9sdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlN1wiO1xufVxuaS5pY29uLmJvbWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTJcIjtcbn1cbmkuaWNvbi5ib25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWQ3XCI7XG59XG5pLmljb24uYm9uZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1Y1wiO1xufVxuaS5pY29uLmJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmRcIjtcbn1cbmkuaWNvbi5ib29rLmRlYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YjdcIjtcbn1cbmkuaWNvbi5ib29rLm1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZTZcIjtcbn1cbmkuaWNvbi5ib29rLm9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MThcIjtcbn1cbmkuaWNvbi5ib29rLnJlYWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVkYVwiO1xufVxuaS5pY29uLmJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJlXCI7XG59XG5pLmljb24uYm9yZGVyLmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg0Y1wiO1xufVxuaS5pY29uLmJvcmRlci5ub25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODUwXCI7XG59XG5pLmljb24uYm9yZGVyLnN0eWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODUzXCI7XG59XG5pLmljb24uYm93bGluZy5iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDM2XCI7XG59XG5pLmljb24uYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDY2XCI7XG59XG5pLmljb24uYm94Lm9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OWVcIjtcbn1cbmkuaWNvbi5ib3hlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2OFwiO1xufVxuaS5pY29uLmJyYWlsbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTFcIjtcbn1cbmkuaWNvbi5icmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVkY1wiO1xufVxuaS5pY29uLmJyZWFkLnNsaWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2VjXCI7XG59XG5pLmljb24uYnJpZWZjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIxXCI7XG59XG5pLmljb24uYnJpZWZjYXNlLm1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NjlcIjtcbn1cbmkuaWNvbi5icm9hZGNhc3QudG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MTlcIjtcbn1cbmkuaWNvbi5icm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxYVwiO1xufVxuaS5pY29uLmJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTVkXCI7XG59XG5pLmljb24uYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg4XCI7XG59XG5pLmljb24uYnVpbGRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWRcIjtcbn1cbmkuaWNvbi5idWxsaG9ybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMVwiO1xufVxuaS5pY29uLmJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQwXCI7XG59XG5pLmljb24uYnVybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2YVwiO1xufVxuaS5pY29uLmJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwN1wiO1xufVxuaS5pY29uLmJ1cy5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NWVcIjtcbn1cbmkuaWNvbi5idXNpbmVzcy50aW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjRhXCI7XG59XG5pLmljb24uY2FsY3VsYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlY1wiO1xufVxuaS5pY29uLmNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMzXCI7XG59XG5pLmljb24uY2FsZW5kYXIuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDczXCI7XG59XG5pLmljb24uY2FsZW5kYXIuY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzRcIjtcbn1cbmkuaWNvbi5jYWxlbmRhci5kYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODNcIjtcbn1cbmkuaWNvbi5jYWxlbmRhci5taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3MlwiO1xufVxuaS5pY29uLmNhbGVuZGFyLnBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzFcIjtcbn1cbmkuaWNvbi5jYWxlbmRhci50aW1lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3M1wiO1xufVxuaS5pY29uLmNhbGVuZGFyLndlZWs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODRcIjtcbn1cbmkuaWNvbi5jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzBcIjtcbn1cbmkuaWNvbi5jYW1lcmEucmV0cm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODNcIjtcbn1cbmkuaWNvbi5jYW1wZ3JvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmJiXCI7XG59XG5pLmljb24uY2FuZHkuY2FuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc4NlwiO1xufVxuaS5pY29uLmNhbm5hYmlzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTVmXCI7XG59XG5pLmljb24uY2Fwc3VsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NmJcIjtcbn1cbmkuaWNvbi5jYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjlcIjtcbn1cbmkuaWNvbi5jYXIuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWRlXCI7XG59XG5pLmljb24uY2FyLmJhdHRlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZGZcIjtcbn1cbmkuaWNvbi5jYXIuY3Jhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZTFcIjtcbn1cbmkuaWNvbi5jYXIuc2lkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVlNFwiO1xufVxuaS5pY29uLmNhcmV0LmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDdcIjtcbn1cbmkuaWNvbi5jYXJldC5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ5XCI7XG59XG5pLmljb24uY2FyZXQucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGFcIjtcbn1cbmkuaWNvbi5jYXJldC5zcXVhcmUuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MFwiO1xufVxuaS5pY29uLmNhcmV0LnNxdWFyZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkxXCI7XG59XG5pLmljb24uY2FyZXQuc3F1YXJlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUyXCI7XG59XG5pLmljb24uY2FyZXQuc3F1YXJlLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUxXCI7XG59XG5pLmljb24uY2FyZXQudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDhcIjtcbn1cbmkuaWNvbi5jYXJyb3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODdcIjtcbn1cbmkuaWNvbi5jYXJ0LmFycm93LmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMThcIjtcbn1cbmkuaWNvbi5jYXJ0LnBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTdcIjtcbn1cbmkuaWNvbi5jYXNoLnJlZ2lzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzg4XCI7XG59XG5pLmljb24uY2F0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmJlXCI7XG59XG5pLmljb24uY2VydGlmaWNhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTNcIjtcbn1cbmkuaWNvbi5jaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZjMFwiO1xufVxuaS5pY29uLmNoYWxrYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MWJcIjtcbn1cbmkuaWNvbi5jaGFsa2JvYXJkLnRlYWNoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MWNcIjtcbn1cbmkuaWNvbi5jaGFyZ2luZy5zdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWU3XCI7XG59XG5pLmljb24uY2hhcnQuYXJlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmZVwiO1xufVxuaS5pY29uLmNoYXJ0LmJhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4MFwiO1xufVxuaS5pY29uLmNoYXJ0LmxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDFcIjtcbn1cbmkuaWNvbi5jaGFydC5waWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDBcIjtcbn1cbmkuaWNvbi5jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwY1wiO1xufVxuaS5pY29uLmNoZWNrLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OFwiO1xufVxuaS5pY29uLmNoZWNrLmRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2MFwiO1xufVxuaS5pY29uLmNoZWNrLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YVwiO1xufVxuaS5pY29uLmNoZWVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdlZlwiO1xufVxuaS5pY29uLmNoZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDM5XCI7XG59XG5pLmljb24uY2hlc3MuYmlzaG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDNhXCI7XG59XG5pLmljb24uY2hlc3MuYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0M2NcIjtcbn1cbmkuaWNvbi5jaGVzcy5raW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDNmXCI7XG59XG5pLmljb24uY2hlc3Mua25pZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDQxXCI7XG59XG5pLmljb24uY2hlc3MucGF3bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0M1wiO1xufVxuaS5pY29uLmNoZXNzLnF1ZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDQ1XCI7XG59XG5pLmljb24uY2hlc3Mucm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0N1wiO1xufVxuaS5pY29uLmNoZXZyb24uY2lyY2xlLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2FcIjtcbn1cbmkuaWNvbi5jaGV2cm9uLmNpcmNsZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM3XCI7XG59XG5pLmljb24uY2hldnJvbi5jaXJjbGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzhcIjtcbn1cbmkuaWNvbi5jaGV2cm9uLmNpcmNsZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzOVwiO1xufVxuaS5pY29uLmNoZXZyb24uZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3OFwiO1xufVxuaS5pY29uLmNoZXZyb24ubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1M1wiO1xufVxuaS5pY29uLmNoZXZyb24ucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjtcbn1cbmkuaWNvbi5jaGV2cm9uLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG59XG5pLmljb24uY2hpbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWVcIjtcbn1cbmkuaWNvbi5jaHVyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MWRcIjtcbn1cbmkuaWNvbi5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTFcIjtcbn1cbmkuaWNvbi5jaXJjbGUubm90Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2VcIjtcbn1cbmkuaWNvbi5jaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjRmXCI7XG59XG5pLmljb24uY2xpbmljLm1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZjJcIjtcbn1cbmkuaWNvbi5jbGlwYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMjhcIjtcbn1cbmkuaWNvbi5jbGlwYm9hcmQuY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NmNcIjtcbn1cbmkuaWNvbi5jbGlwYm9hcmQubGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2ZFwiO1xufVxuaS5pY29uLmNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE3XCI7XG59XG5pLmljb24uY2xvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGRcIjtcbn1cbmkuaWNvbi5jbG9zZWQuY2FwdGlvbmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYVwiO1xufVxuaS5pY29uLmNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMyXCI7XG59XG5pLmljb24uY2xvdWQuZG93bmxvYWQuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzgxXCI7XG59XG5pLmljb24uY2xvdWQubWVhdGJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3M2JcIjtcbn1cbmkuaWNvbi5jbG91ZC5tb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmMzXCI7XG59XG5pLmljb24uY2xvdWQubW9vbi5yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzNjXCI7XG59XG5pLmljb24uY2xvdWQucmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjczZFwiO1xufVxuaS5pY29uLmNsb3VkLnNob3dlcnMuaGVhdnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NDBcIjtcbn1cbmkuaWNvbi5jbG91ZC5zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YzRcIjtcbn1cbmkuaWNvbi5jbG91ZC5zdW4ucmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc0M1wiO1xufVxuaS5pY29uLmNsb3VkLnVwbG9hZC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODJcIjtcbn1cbmkuaWNvbi5jb2NrdGFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2MVwiO1xufVxuaS5pY29uLmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjFcIjtcbn1cbmkuaWNvbi5jb2RlLmJyYW5jaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNlwiO1xufVxuaS5pY29uLmNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmNFwiO1xufVxuaS5pY29uLmNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxM1wiO1xufVxuaS5pY29uLmNvZ3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODVcIjtcbn1cbmkuaWNvbi5jb2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxZVwiO1xufVxuaS5pY29uLmNvbHVtbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGJcIjtcbn1cbmkuaWNvbi5jb21tZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc1XCI7XG59XG5pLmljb24uY29tbWVudC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2FcIjtcbn1cbmkuaWNvbi5jb21tZW50LmRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY1MVwiO1xufVxuaS5pY29uLmNvbW1lbnQuZG90czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRhZFwiO1xufVxuaS5pY29uLmNvbW1lbnQubWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdmNVwiO1xufVxuaS5pY29uLmNvbW1lbnQuc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0YjNcIjtcbn1cbmkuaWNvbi5jb21tZW50czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NlwiO1xufVxuaS5pY29uLmNvbW1lbnRzLmRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY1M1wiO1xufVxuaS5pY29uLmNvbXBhY3QuZGlzYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxZlwiO1xufVxuaS5pY29uLmNvbXBhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGVcIjtcbn1cbmkuaWNvbi5jb21wcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2NlwiO1xufVxuaS5pY29uLmNvbXByZXNzLmFycm93cy5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3OGNcIjtcbn1cbmkuaWNvbi5jb25jaWVyZ2UuYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2MlwiO1xufVxuaS5pY29uLmNvb2tpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2M1wiO1xufVxuaS5pY29uLmNvb2tpZS5iaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTY0XCI7XG59XG5pLmljb24uY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjNVwiO1xufVxuaS5pY29uLmNvcHlyaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOVwiO1xufVxuaS5pY29uLmNvdWNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGI4XCI7XG59XG5pLmljb24uY3JlZGl0LmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWRcIjtcbn1cbmkuaWNvbi5jcm9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI1XCI7XG59XG5pLmljb24uY3JvcC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NjVcIjtcbn1cbmkuaWNvbi5jcm9zczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY1NFwiO1xufVxuaS5pY29uLmNyb3NzaGFpcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWJcIjtcbn1cbmkuaWNvbi5jcm93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTIwXCI7XG59XG5pLmljb24uY3Jvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MjFcIjtcbn1cbmkuaWNvbi5jcnV0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZjdcIjtcbn1cbmkuaWNvbi5jdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIyXCI7XG59XG5pLmljb24uY3ViZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjNcIjtcbn1cbmkuaWNvbi5jdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzRcIjtcbn1cbmkuaWNvbi5kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMFwiO1xufVxuaS5pY29uLmRlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTRcIjtcbn1cbmkuaWNvbi5kZW1vY3JhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc0N1wiO1xufVxuaS5pY29uLmRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDhcIjtcbn1cbmkuaWNvbi5kaGFybWFjaGFrcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NTVcIjtcbn1cbmkuaWNvbi5kaWFnbm9zZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NzBcIjtcbn1cbmkuaWNvbi5kaWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTIyXCI7XG59XG5pLmljb24uZGljZS5kMjA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2Y2ZcIjtcbn1cbmkuaWNvbi5kaWNlLmQ2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmQxXCI7XG59XG5pLmljb24uZGljZS5maXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTIzXCI7XG59XG5pLmljb24uZGljZS5mb3VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTI0XCI7XG59XG5pLmljb24uZGljZS5vbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MjVcIjtcbn1cbmkuaWNvbi5kaWNlLnNpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyNlwiO1xufVxuaS5pY29uLmRpY2UudGhyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MjdcIjtcbn1cbmkuaWNvbi5kaWNlLnR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyOFwiO1xufVxuaS5pY29uLmRpZ2l0YWwudGFjaG9ncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2NlwiO1xufVxuaS5pY29uLmRpcmVjdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZWJcIjtcbn1cbmkuaWNvbi5kaXZpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MjlcIjtcbn1cbmkuaWNvbi5kaXp6eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2N1wiO1xufVxuaS5pY29uLmRuYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ3MVwiO1xufVxuaS5pY29uLmRvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZkM1wiO1xufVxuaS5pY29uLmRvbGxhci5zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU1XCI7XG59XG5pLmljb24uZG9sbHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NzJcIjtcbn1cbmkuaWNvbi5kb2xseS5mbGF0YmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDc0XCI7XG59XG5pLmljb24uZG9uYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGI5XCI7XG59XG5pLmljb24uZG9vci5jbG9zZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MmFcIjtcbn1cbmkuaWNvbi5kb29yLm9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MmJcIjtcbn1cbmkuaWNvbi5kb3QuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG5pLmljb24uZG92ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRiYVwiO1xufVxuaS5pY29uLmRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE5XCI7XG59XG5pLmljb24uZHJhZnRpbmcuY29tcGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2OFwiO1xufVxuaS5pY29uLmRyYWdvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZkNVwiO1xufVxuaS5pY29uLmRyYXcucG9seWdvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVlZVwiO1xufVxuaS5pY29uLmRydW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NjlcIjtcbn1cbmkuaWNvbi5kcnVtLnN0ZWVscGFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTZhXCI7XG59XG5pLmljb24uZHJ1bXN0aWNrLmJpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZDdcIjtcbn1cbmkuaWNvbi5kdW1iYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0YlwiO1xufVxuaS5pY29uLmR1bXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzkzXCI7XG59XG5pLmljb24uZHVtcHN0ZXIuZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5NFwiO1xufVxuaS5pY29uLmR1bmdlb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZDlcIjtcbn1cbmkuaWNvbi5lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ0XCI7XG59XG5pLmljb24uZWdnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2ZiXCI7XG59XG5pLmljb24uZWplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTJcIjtcbn1cbmkuaWNvbi5lbGxpcHNpcy5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQxXCI7XG59XG5pLmljb24uZWxsaXBzaXMudmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDJcIjtcbn1cbmkuaWNvbi5lbnZlbG9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMFwiO1xufVxuaS5pY29uLmVudmVsb3BlLm9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjZcIjtcbn1cbmkuaWNvbi5lbnZlbG9wZS5vcGVuLnRleHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NThcIjtcbn1cbmkuaWNvbi5lbnZlbG9wZS5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTlcIjtcbn1cbmkuaWNvbi5lcXVhbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MmNcIjtcbn1cbmkuaWNvbi5lcmFzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmRcIjtcbn1cbmkuaWNvbi5ldGhlcm5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5NlwiO1xufVxuaS5pY29uLmV1cm8uc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1M1wiO1xufVxuaS5pY29uLmV4Y2hhbmdlLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2MlwiO1xufVxuaS5pY29uLmV4Y2xhbWF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTJhXCI7XG59XG5pLmljb24uZXhjbGFtYXRpb24uY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZhXCI7XG59XG5pLmljb24uZXhjbGFtYXRpb24udHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzFcIjtcbn1cbmkuaWNvbi5leHBhbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjVcIjtcbn1cbmkuaWNvbi5leHBhbmQuYXJyb3dzLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMxZVwiO1xufVxuaS5pY29uLmV4dGVybmFsLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1ZFwiO1xufVxuaS5pY29uLmV4dGVybmFsLmxpbmsuc3F1YXJlLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2MFwiO1xufVxuaS5pY29uLmV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2ZVwiO1xufVxuaS5pY29uLmV5ZS5kcm9wcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZiXCI7XG59XG5pLmljb24uZXllLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDcwXCI7XG59XG5pLmljb24uZmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODYzXCI7XG59XG5pLmljb24uZmFzdC5iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0OVwiO1xufVxuaS5pY29uLmZhc3QuZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1MFwiO1xufVxuaS5pY29uLmZheDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhY1wiO1xufVxuaS5pY29uLmZlYXRoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MmRcIjtcbn1cbmkuaWNvbi5mZWF0aGVyLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2YlwiO1xufVxuaS5pY29uLmZlbWFsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4MlwiO1xufVxuaS5pY29uLmZpZ2h0ZXIuamV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZiXCI7XG59XG5pLmljb24uZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1YlwiO1xufVxuaS5pY29uLmZpbGUuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVjXCI7XG59XG5pLmljb24uZmlsZS5hcmNoaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM2XCI7XG59XG5pLmljb24uZmlsZS5hdWRpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjN1wiO1xufVxuaS5pY29uLmZpbGUuY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjOVwiO1xufVxuaS5pY29uLmZpbGUuY29udHJhY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NmNcIjtcbn1cbmkuaWNvbi5maWxlLmNzdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZkZFwiO1xufVxuaS5pY29uLmZpbGUuZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NmRcIjtcbn1cbmkuaWNvbi5maWxlLmV4Y2VsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMzXCI7XG59XG5pLmljb24uZmlsZS5leHBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NmVcIjtcbn1cbmkuaWNvbi5maWxlLmltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM1XCI7XG59XG5pLmljb24uZmlsZS5pbXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NmZcIjtcbn1cbmkuaWNvbi5maWxlLmludm9pY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NzBcIjtcbn1cbmkuaWNvbi5maWxlLmludm9pY2UuZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTcxXCI7XG59XG5pLmljb24uZmlsZS5tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDc3XCI7XG59XG5pLmljb24uZmlsZS5tZWRpY2FsLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ3OFwiO1xufVxuaS5pY29uLmZpbGUucGRmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMxXCI7XG59XG5pLmljb24uZmlsZS5wb3dlcnBvaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM0XCI7XG59XG5pLmljb24uZmlsZS5wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NzJcIjtcbn1cbmkuaWNvbi5maWxlLnNpZ25hdHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3M1wiO1xufVxuaS5pY29uLmZpbGUudXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTc0XCI7XG59XG5pLmljb24uZmlsZS52aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjOFwiO1xufVxuaS5pY29uLmZpbGUud29yZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMlwiO1xufVxuaS5pY29uLmZpbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NzVcIjtcbn1cbmkuaWNvbi5maWxsLmRyaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NzZcIjtcbn1cbmkuaWNvbi5maWxtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA4XCI7XG59XG5pLmljb24uZmlsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIwXCI7XG59XG5pLmljb24uZmluZ2VycHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NzdcIjtcbn1cbmkuaWNvbi5maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZkXCI7XG59XG5pLmljb24uZmlyZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZTRcIjtcbn1cbmkuaWNvbi5maXJlLmV4dGluZ3Vpc2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzNFwiO1xufVxuaS5pY29uLmZpcnN0LmFpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ3OVwiO1xufVxuaS5pY29uLmZpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NzhcIjtcbn1cbmkuaWNvbi5maXN0LnJhaXNlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZkZVwiO1xufVxuaS5pY29uLmZsYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjRcIjtcbn1cbmkuaWNvbi5mbGFnLmNoZWNrZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExZVwiO1xufVxuaS5pY29uLmZsYWcudXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzRkXCI7XG59XG5pLmljb24uZmxhc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzNcIjtcbn1cbmkuaWNvbi5mbHVzaGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTc5XCI7XG59XG5pLmljb24uZm9sZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdiXCI7XG59XG5pLmljb24uZm9sZGVyLm1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjVkXCI7XG59XG5pLmljb24uZm9sZGVyLm9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2NcIjtcbn1cbmkuaWNvbi5mb2xkZXIucGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY1ZVwiO1xufVxuaS5pY29uLmZvbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzFcIjtcbn1cbmkuaWNvbi5mb290YmFsbC5iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDRlXCI7XG59XG5pLmljb24uZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0ZVwiO1xufVxuaS5pY29uLmZyb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MmVcIjtcbn1cbmkuaWNvbi5mcm93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExOVwiO1xufVxuaS5pY29uLmZyb3duLm9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1N2FcIjtcbn1cbmkuaWNvbi5mcnVpdC1hcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVkMVwiO1xufVxuaS5pY29uLmZ1bm5lbC5kb2xsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NjJcIjtcbn1cbmkuaWNvbi5mdXRib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTNcIjtcbn1cbmkuaWNvbi5nYW1lcGFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTFiXCI7XG59XG5pLmljb24uZ2FzLnB1bXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MmZcIjtcbn1cbmkuaWNvbi5nYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlM1wiO1xufVxuaS5pY29uLmdlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhNVwiO1xufVxuaS5pY29uLmdlbmRlcmxlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmRcIjtcbn1cbmkuaWNvbi5naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZlMlwiO1xufVxuaS5pY29uLmdpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmJcIjtcbn1cbmkuaWNvbi5naWZ0czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5Y1wiO1xufVxuaS5pY29uLmdsYXNzLmNoZWVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5ZlwiO1xufVxuaS5pY29uLmdsYXNzLm1hcnRpbmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDBcIjtcbn1cbmkuaWNvbi5nbGFzcy5tYXJ0aW5pLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3YlwiO1xufVxuaS5pY29uLmdsYXNzLndoaXNrZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YTBcIjtcbn1cbmkuaWNvbi5nbGFzc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTMwXCI7XG59XG5pLmljb24uZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWNcIjtcbn1cbmkuaWNvbi5nbG9iZS5hZnJpY2E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1N2NcIjtcbn1cbmkuaWNvbi5nbG9iZS5hbWVyaWNhczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3ZFwiO1xufVxuaS5pY29uLmdsb2JlLmFzaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1N2VcIjtcbn1cbmkuaWNvbi5nbG9iZS5ldXJvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YTJcIjtcbn1cbmkuaWNvbi5nb2xmLmJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NTBcIjtcbn1cbmkuaWNvbi5nb3B1cmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjY0XCI7XG59XG5pLmljb24uZ3JhZHVhdGlvbi5jYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOWRcIjtcbn1cbmkuaWNvbi5ncmVhdGVyLnRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzFcIjtcbn1cbmkuaWNvbi5ncmVhdGVyLnRoYW4uZXF1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzJcIjtcbn1cbmkuaWNvbi5ncmltYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTdmXCI7XG59XG5pLmljb24uZ3JpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4MFwiO1xufVxuaS5pY29uLmdyaW4uYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTgxXCI7XG59XG5pLmljb24uZ3Jpbi5iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTgyXCI7XG59XG5pLmljb24uZ3Jpbi5iZWFtLnN3ZWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTgzXCI7XG59XG5pLmljb24uZ3Jpbi5oZWFydHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODRcIjtcbn1cbmkuaWNvbi5ncmluLnNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4NVwiO1xufVxuaS5pY29uLmdyaW4uc3F1aW50LnRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTg2XCI7XG59XG5pLmljb24uZ3Jpbi5zdGFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4N1wiO1xufVxuaS5pY29uLmdyaW4udGVhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODhcIjtcbn1cbmkuaWNvbi5ncmluLnRvbmd1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4OVwiO1xufVxuaS5pY29uLmdyaW4udG9uZ3VlLnNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4YVwiO1xufVxuaS5pY29uLmdyaW4udG9uZ3VlLndpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OGJcIjtcbn1cbmkuaWNvbi5ncmluLndpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OGNcIjtcbn1cbmkuaWNvbi5ncmlwLmhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OGRcIjtcbn1cbmkuaWNvbi5ncmlwLmxpbmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2E0XCI7XG59XG5pLmljb24uZ3JpcC5saW5lcy52ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdhNVwiO1xufVxuaS5pY29uLmdyaXAudmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OGVcIjtcbn1cbmkuaWNvbi5ndWl0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YTZcIjtcbn1cbmkuaWNvbi5oLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmZFwiO1xufVxuaS5pY29uLmhhbWJ1cmdlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgwNVwiO1xufVxuaS5pY29uLmhhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZlM1wiO1xufVxuaS5pY29uLmhhbXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjY1XCI7XG59XG5pLmljb24uaGFuZC5ob2xkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGJkXCI7XG59XG5pLmljb24uaGFuZC5ob2xkaW5nLmhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGJlXCI7XG59XG5pLmljb24uaGFuZC5ob2xkaW5nLnVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRjMFwiO1xufVxuaS5pY29uLmhhbmQubGl6YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU4XCI7XG59XG5pLmljb24uaGFuZC5taWRkbGUuZmluZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODA2XCI7XG59XG5pLmljb24uaGFuZC5wYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NlwiO1xufVxuaS5pY29uLmhhbmQucGVhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWJcIjtcbn1cbmkuaWNvbi5oYW5kLnBvaW50LmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTdcIjtcbn1cbmkuaWNvbi5oYW5kLnBvaW50LmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTVcIjtcbn1cbmkuaWNvbi5oYW5kLnBvaW50LnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE0XCI7XG59XG5pLmljb24uaGFuZC5wb2ludC51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNlwiO1xufVxuaS5pY29uLmhhbmQucG9pbnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1YVwiO1xufVxuaS5pY29uLmhhbmQucm9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NVwiO1xufVxuaS5pY29uLmhhbmQuc2Npc3NvcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTdcIjtcbn1cbmkuaWNvbi5oYW5kLnNwb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU5XCI7XG59XG5pLmljb24uaGFuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0YzJcIjtcbn1cbmkuaWNvbi5oYW5kcy5oZWxwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGM0XCI7XG59XG5pLmljb24uaGFuZHNoYWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI1XCI7XG59XG5pLmljb24uaGFudWtpYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZTZcIjtcbn1cbmkuaWNvbi5oYXJkLmhhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgwN1wiO1xufVxuaS5pY29uLmhhc2h0YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTJcIjtcbn1cbmkuaWNvbi5oYXQud2l6YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmU4XCI7XG59XG5pLmljb24uaGF5a2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjY2XCI7XG59XG5pLmljb24uaGRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGEwXCI7XG59XG5pLmljb24uaGVhZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkY1wiO1xufVxuaS5pY29uLmhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjVcIjtcbn1cbmkuaWNvbi5oZWFkcGhvbmVzLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4ZlwiO1xufVxuaS5pY29uLmhlYWRzZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OTBcIjtcbn1cbmkuaWNvbi5oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNFwiO1xufVxuaS5pY29uLmhlYXJ0LmJyb2tlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdhOVwiO1xufVxuaS5pY29uLmhlYXJ0YmVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxZVwiO1xufVxuaS5pY29uLmhlbGljb3B0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzNcIjtcbn1cbmkuaWNvbi5oaWdobGlnaHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU5MVwiO1xufVxuaS5pY29uLmhpa2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZlY1wiO1xufVxuaS5pY29uLmhpcHBvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmVkXCI7XG59XG5pLmljb24uaGlzdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkYVwiO1xufVxuaS5pY29uLmhvY2tleS5wdWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDUzXCI7XG59XG5pLmljb24uaG9sbHkuYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YWFcIjtcbn1cbmkuaWNvbi5ob21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE1XCI7XG59XG5pLmljb24uaG9yc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZjBcIjtcbn1cbmkuaWNvbi5ob3JzZS5oZWFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2FiXCI7XG59XG5pLmljb24uaG9zcGl0YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjhcIjtcbn1cbmkuaWNvbi5ob3NwaXRhbC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0N2RcIjtcbn1cbmkuaWNvbi5ob3NwaXRhbC5zeW1ib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0N2VcIjtcbn1cbmkuaWNvbi5ob3QudHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTkzXCI7XG59XG5pLmljb24uaG90ZG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODBmXCI7XG59XG5pLmljb24uaG90ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OTRcIjtcbn1cbmkuaWNvbi5ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTRcIjtcbn1cbmkuaWNvbi5ob3VyZ2xhc3MuZW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjUzXCI7XG59XG5pLmljb24uaG91cmdsYXNzLmhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTJcIjtcbn1cbmkuaWNvbi5ob3VyZ2xhc3Muc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTFcIjtcbn1cbmkuaWNvbi5ob3VzZS5kYW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZjFcIjtcbn1cbmkuaWNvbi5ocnl2bmlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmYyXCI7XG59XG5pLmljb24uaS5jdXJzb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDZcIjtcbn1cbmkuaWNvbi5pY2UuY3JlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MTBcIjtcbn1cbmkuaWNvbi5pY2ljbGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2FkXCI7XG59XG5pLmljb24uaWNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4NmRcIjtcbn1cbmkuaWNvbi5pZC5iYWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjMVwiO1xufVxuaS5pY29uLmlkLmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzJcIjtcbn1cbmkuaWNvbi5pZC5jYXJkLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ3ZlwiO1xufVxuaS5pY29uLmlnbG9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2FlXCI7XG59XG5pLmljb24uaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cbmkuaWNvbi5pbWFnZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDJcIjtcbn1cbmkuaWNvbi5pbmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxY1wiO1xufVxuaS5pY29uLmluZGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzY1wiO1xufVxuaS5pY29uLmluZHVzdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc1XCI7XG59XG5pLmljb24uaW5maW5pdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzRcIjtcbn1cbmkuaWNvbi5pbmZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI5XCI7XG59XG5pLmljb24uaW5mby5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWFcIjtcbn1cbmkuaWNvbi5pdGFsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzNcIjtcbn1cbmkuaWNvbi5qZWRpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjY5XCI7XG59XG5pLmljb24uam9pbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OTVcIjtcbn1cbmkuaWNvbi5qb3VybmFsLndoaWxsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY2YVwiO1xufVxuaS5pY29uLmthYWJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjZiXCI7XG59XG5pLmljb24ua2V5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg0XCI7XG59XG5pLmljb24ua2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWNcIjtcbn1cbmkuaWNvbi5raGFuZGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NmRcIjtcbn1cbmkuaWNvbi5raXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTk2XCI7XG59XG5pLmljb24ua2lzcy5iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTk3XCI7XG59XG5pLmljb24ua2lzcy53aW5rLmhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTk4XCI7XG59XG5pLmljb24ua2l3aS5iaXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTM1XCI7XG59XG5pLmljb24ubGFuZG1hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NmZcIjtcbn1cbmkuaWNvbi5sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhYlwiO1xufVxuaS5pY29uLmxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwOVwiO1xufVxuaS5pY29uLmxhcHRvcC5jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWZjXCI7XG59XG5pLmljb24ubGFwdG9wLm1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MTJcIjtcbn1cbmkuaWNvbi5sYXVnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU5OVwiO1xufVxuaS5pY29uLmxhdWdoLmJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWFcIjtcbn1cbmkuaWNvbi5sYXVnaC5zcXVpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWJcIjtcbn1cbmkuaWNvbi5sYXVnaC53aW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTljXCI7XG59XG5pLmljb24ubGF5ZXIuZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZmRcIjtcbn1cbmkuaWNvbi5sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZjXCI7XG59XG5pLmljb24ubGVtb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTRcIjtcbn1cbmkuaWNvbi5sZXNzLnRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzZcIjtcbn1cbmkuaWNvbi5sZXNzLnRoYW4uZXF1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzdcIjtcbn1cbmkuaWNvbi5sZXZlbC5kb3duLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiZVwiO1xufVxuaS5pY29uLmxldmVsLnVwLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiZlwiO1xufVxuaS5pY29uLmxpZmUucmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjZFwiO1xufVxuaS5pY29uLmxpZ2h0YnVsYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlYlwiO1xufVxuaS5pY29uLmxpbmtpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzFcIjtcbn1cbmkuaWNvbi5saXJhLnNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTVcIjtcbn1cbmkuaWNvbi5saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNhXCI7XG59XG5pLmljb24ubGlzdC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjJcIjtcbn1cbmkuaWNvbi5saXN0Lm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNiXCI7XG59XG5pLmljb24ubGlzdC51bDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjYVwiO1xufVxuaS5pY29uLmxvY2F0aW9uLmFycm93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI0XCI7XG59XG5pLmljb24ubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyM1wiO1xufVxuaS5pY29uLmxvY2sub3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjMVwiO1xufVxuaS5pY29uLmxvbmcuYXJyb3cuYWx0ZXJuYXRlLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDlcIjtcbn1cbmkuaWNvbi5sb25nLmFycm93LmFsdGVybmF0ZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzBhXCI7XG59XG5pLmljb24ubG9uZy5hcnJvdy5hbHRlcm5hdGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMGJcIjtcbn1cbmkuaWNvbi5sb25nLmFycm93LmFsdGVybmF0ZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwY1wiO1xufVxuaS5pY29uLmxvdy52aXNpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYThcIjtcbn1cbmkuaWNvbi5sdWdnYWdlLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWRcIjtcbn1cbmkuaWNvbi5tYWdpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkMFwiO1xufVxuaS5pY29uLm1hZ25ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NlwiO1xufVxuaS5pY29uLm1haWwuYnVsazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY3NFwiO1xufVxuaS5pY29uLm1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODNcIjtcbn1cbmkuaWNvbi5tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzlcIjtcbn1cbmkuaWNvbi5tYXAubWFya2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTlmXCI7XG59XG5pLmljb24ubWFwLm1hcmtlZC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YTBcIjtcbn1cbmkuaWNvbi5tYXAubWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQxXCI7XG59XG5pLmljb24ubWFwLm1hcmtlci5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzVcIjtcbn1cbmkuaWNvbi5tYXAucGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc2XCI7XG59XG5pLmljb24ubWFwLnNpZ25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc3XCI7XG59XG5pLmljb24ubWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWExXCI7XG59XG5pLmljb24ubWFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyMlwiO1xufVxuaS5pY29uLm1hcnMuZG91YmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI3XCI7XG59XG5pLmljb24ubWFycy5zdHJva2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjlcIjtcbn1cbmkuaWNvbi5tYXJzLnN0cm9rZS5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJiXCI7XG59XG5pLmljb24ubWFycy5zdHJva2UudmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmFcIjtcbn1cbmkuaWNvbi5tYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmZhXCI7XG59XG5pLmljb24ubWVkYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YTJcIjtcbn1cbmkuaWNvbi5tZWRraXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmFcIjtcbn1cbmkuaWNvbi5tZWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWFcIjtcbn1cbmkuaWNvbi5tZWguYmxhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YTRcIjtcbn1cbmkuaWNvbi5tZWgucm9sbGluZy5leWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWE1XCI7XG59XG5pLmljb24ubWVtb3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTM4XCI7XG59XG5pLmljb24ubWVub3JhaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY3NlwiO1xufVxuaS5pY29uLm1lcmN1cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjNcIjtcbn1cbmkuaWNvbi5tZXRlb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NTNcIjtcbn1cbmkuaWNvbi5taWNyb2NoaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGJcIjtcbn1cbmkuaWNvbi5taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMwXCI7XG59XG5pLmljb24ubWljcm9waG9uZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzlcIjtcbn1cbmkuaWNvbi5taWNyb3Bob25lLmFsdGVybmF0ZS5zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUzOVwiO1xufVxuaS5pY29uLm1pY3JvcGhvbmUuc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzFcIjtcbn1cbmkuaWNvbi5taWNyb3Njb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjEwXCI7XG59XG5pLmljb24ubWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjhcIjtcbn1cbmkuaWNvbi5taW51cy5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTZcIjtcbn1cbmkuaWNvbi5taW51cy5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDZcIjtcbn1cbmkuaWNvbi5taXR0ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YjVcIjtcbn1cbmkuaWNvbi5tb2JpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGJcIjtcbn1cbmkuaWNvbi5tb2JpbGUuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2NkXCI7XG59XG5pLmljb24ubW9uZXkuYmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkNlwiO1xufVxuaS5pY29uLm1vbmV5LmJpbGwuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QxXCI7XG59XG5pLmljb24ubW9uZXkuYmlsbC53YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTNhXCI7XG59XG5pLmljb24ubW9uZXkuYmlsbC53YXZlLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUzYlwiO1xufVxuaS5pY29uLm1vbmV5LmNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTNjXCI7XG59XG5pLmljb24ubW9uZXkuY2hlY2suYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTNkXCI7XG59XG5pLmljb24ubW9udW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YTZcIjtcbn1cbmkuaWNvbi5tb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg2XCI7XG59XG5pLmljb24ubW9ydGFyLnBlc3RsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVhN1wiO1xufVxuaS5pY29uLm1vc3F1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY3OFwiO1xufVxuaS5pY29uLm1vdG9yY3ljbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWNcIjtcbn1cbmkuaWNvbi5tb3VudGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZmY1wiO1xufVxuaS5pY29uLm1vdXNlLnBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDVcIjtcbn1cbmkuaWNvbi5tdWcuaG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2I2XCI7XG59XG5pLmljb24ubXVzaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDFcIjtcbn1cbmkuaWNvbi5uZXR3b3JrLndpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmZmXCI7XG59XG5pLmljb24ubmV1dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJjXCI7XG59XG5pLmljb24ubmV3c3BhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVhXCI7XG59XG5pLmljb24ubm90LmVxdWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTNlXCI7XG59XG5pLmljb24ubm90ZXMubWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ4MVwiO1xufVxuaS5pY29uLm9iamVjdC5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0N1wiO1xufVxuaS5pY29uLm9iamVjdC51bmdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ4XCI7XG59XG5pLmljb24ub2lsLmNhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjYxM1wiO1xufVxuaS5pY29uLm9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjc5XCI7XG59XG5pLmljb24ub3R0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3MDBcIjtcbn1cbmkuaWNvbi5vdXRkZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNiXCI7XG59XG5pLmljb24ucGFnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MTVcIjtcbn1cbmkuaWNvbi5wYWludC5icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmY1wiO1xufVxuaS5pY29uLnBhaW50LnJvbGxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVhYVwiO1xufVxuaS5pY29uLnBhbGV0dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1M2ZcIjtcbn1cbmkuaWNvbi5wYWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ODJcIjtcbn1cbmkuaWNvbi5wYXBlci5wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkOFwiO1xufVxuaS5pY29uLnBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjNlwiO1xufVxuaS5pY29uLnBhcmFjaHV0ZS5ib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0Y2RcIjtcbn1cbmkuaWNvbi5wYXJhZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGRcIjtcbn1cbmkuaWNvbi5wYXJraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTQwXCI7XG59XG5pLmljb24ucGFzc3BvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YWJcIjtcbn1cbmkuaWNvbi5wYXN0YWZhcmlhbmlzbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY3YlwiO1xufVxuaS5pY29uLnBhc3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGVhXCI7XG59XG5pLmljb24ucGF1c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNGNcIjtcbn1cbmkuaWNvbi5wYXVzZS5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGJcIjtcbn1cbmkuaWNvbi5wYXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjBcIjtcbn1cbmkuaWNvbi5wZWFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY3Y1wiO1xufVxuaS5pY29uLnBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwNFwiO1xufVxuaS5pY29uLnBlbi5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDVcIjtcbn1cbmkuaWNvbi5wZW4uZmFuY3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YWNcIjtcbn1cbmkuaWNvbi5wZW4ubmliOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWFkXCI7XG59XG5pLmljb24ucGVuLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YlwiO1xufVxuaS5pY29uLnBlbmNpbC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDNcIjtcbn1cbmkuaWNvbi5wZW5jaWwucnVsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YWVcIjtcbn1cbmkuaWNvbi5wZW9wbGUuY2Fycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0Y2VcIjtcbn1cbmkuaWNvbi5wZXBwZXIuaG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODE2XCI7XG59XG5pLmljb24ucGVyY2VudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5NVwiO1xufVxuaS5pY29uLnBlcmNlbnRhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NDFcIjtcbn1cbmkuaWNvbi5wZXJzb24uYm9vdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NTZcIjtcbn1cbmkuaWNvbi5waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5NVwiO1xufVxuaS5pY29uLnBob25lLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg3OVwiO1xufVxuaS5pY29uLnBob25lLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2RkXCI7XG59XG5pLmljb24ucGhvbmUuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk4XCI7XG59XG5pLmljb24ucGhvbmUuc3F1YXJlLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg3YlwiO1xufVxuaS5pY29uLnBob25lLnZvbHVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhMFwiO1xufVxuaS5pY29uLnBob3RvLnZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODdjXCI7XG59XG5pLmljb24ucGlnZ3kuYmFuazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkM1wiO1xufVxuaS5pY29uLnBpbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDg0XCI7XG59XG5pLmljb24ucGl6emEuc2xpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MThcIjtcbn1cbmkuaWNvbi5wbGFjZS5vZi53b3JzaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjdmXCI7XG59XG5pLmljb24ucGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzJcIjtcbn1cbmkuaWNvbi5wbGFuZS5hcnJpdmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWFmXCI7XG59XG5pLmljb24ucGxhbmUuZGVwYXJ0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWIwXCI7XG59XG5pLmljb24ucGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0YlwiO1xufVxuaS5pY29uLnBsYXkuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ0XCI7XG59XG5pLmljb24ucGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNlwiO1xufVxuaS5pY29uLnBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjdcIjtcbn1cbmkuaWNvbi5wbHVzLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NVwiO1xufVxuaS5pY29uLnBsdXMuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZlXCI7XG59XG5pLmljb24ucG9kY2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjZVwiO1xufVxuaS5pY29uLnBvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ODFcIjtcbn1cbmkuaWNvbi5wb2xsLmhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ODJcIjtcbn1cbmkuaWNvbi5wb286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZmVcIjtcbn1cbmkuaWNvbi5wb28uc3Rvcm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NWFcIjtcbn1cbmkuaWNvbi5wb29wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjE5XCI7XG59XG5pLmljb24ucG9ydHJhaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZTBcIjtcbn1cbmkuaWNvbi5wb3VuZC5zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU0XCI7XG59XG5pLmljb24ucG93ZXIub2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDExXCI7XG59XG5pLmljb24ucHJheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY4M1wiO1xufVxuaS5pY29uLnByYXlpbmcuaGFuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ODRcIjtcbn1cbmkuaWNvbi5wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjFcIjtcbn1cbmkuaWNvbi5wcmVzY3JpcHRpb24uYm90dGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDg1XCI7XG59XG5pLmljb24ucHJlc2NyaXB0aW9uLmJvdHRsZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ODZcIjtcbn1cbmkuaWNvbi5wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyZlwiO1xufVxuaS5pY29uLnByb2NlZHVyZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ODdcIjtcbn1cbmkuaWNvbi5wcm9qZWN0LmRpYWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NDJcIjtcbn1cbmkuaWNvbi5wdXp6bGUucGllY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmVcIjtcbn1cbmkuaWNvbi5xcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjlcIjtcbn1cbmkuaWNvbi5xdWVzdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyOFwiO1xufVxuaS5pY29uLnF1ZXN0aW9uLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OVwiO1xufVxuaS5pY29uLnF1aWRkaXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1OFwiO1xufVxuaS5pY29uLnF1b3RlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGRcIjtcbn1cbmkuaWNvbi5xdW90ZS5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwZVwiO1xufVxuaS5pY29uLnF1cmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjg3XCI7XG59XG5pLmljb24ucmFkaWF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2I5XCI7XG59XG5pLmljb24ucmFkaWF0aW9uLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdiYVwiO1xufVxuaS5pY29uLnJhaW5ib3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NWJcIjtcbn1cbmkuaWNvbi5yYW5kb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzRcIjtcbn1cbmkuaWNvbi5yZWNlaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTQzXCI7XG59XG5pLmljb24ucmVjeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiOFwiO1xufVxuaS5pY29uLnJlZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWVcIjtcbn1cbmkuaWNvbi5yZWRvLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJmOVwiO1xufVxuaS5pY29uLnJlZ2lzdGVyZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWRcIjtcbn1cbmkuaWNvbi5yZW1vdmUuZm9ybWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODdkXCI7XG59XG5pLmljb24ucmVwbHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZTVcIjtcbn1cbmkuaWNvbi5yZXBseS5hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjJcIjtcbn1cbmkuaWNvbi5yZXB1YmxpY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzVlXCI7XG59XG5pLmljb24ucmVzdHJvb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YmRcIjtcbn1cbmkuaWNvbi5yZXR3ZWV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc5XCI7XG59XG5pLmljb24ucmliYm9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGQ2XCI7XG59XG5pLmljb24ucmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcwYlwiO1xufVxuaS5pY29uLnJvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMThcIjtcbn1cbmkuaWNvbi5yb2JvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0NFwiO1xufVxuaS5pY29uLnJvY2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzNVwiO1xufVxuaS5pY29uLnJvdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGQ3XCI7XG59XG5pLmljb24ucnNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDllXCI7XG59XG5pLmljb24ucnNzLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0M1wiO1xufVxuaS5pY29uLnJ1YmxlLnNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNThcIjtcbn1cbmkuaWNvbi5ydWxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0NVwiO1xufVxuaS5pY29uLnJ1bGVyLmNvbWJpbmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTQ2XCI7XG59XG5pLmljb24ucnVsZXIuaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0N1wiO1xufVxuaS5pY29uLnJ1bGVyLnZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTQ4XCI7XG59XG5pLmljb24ucnVubmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcwY1wiO1xufVxuaS5pY29uLnJ1cGVlLnNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTZcIjtcbn1cbmkuaWNvbi5zYWQuY3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWIzXCI7XG59XG5pLmljb24uc2FkLnRlYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjRcIjtcbn1cbmkuaWNvbi5zYXRlbGxpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YmZcIjtcbn1cbmkuaWNvbi5zYXRlbGxpdGUuZGlzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjMFwiO1xufVxuaS5pY29uLnNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzdcIjtcbn1cbmkuaWNvbi5zY2hvb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NDlcIjtcbn1cbmkuaWNvbi5zY3Jld2RyaXZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0YVwiO1xufVxuaS5pY29uLnNjcm9sbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcwZVwiO1xufVxuaS5pY29uLnNkLmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YzJcIjtcbn1cbmkuaWNvbi5zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDJcIjtcbn1cbmkuaWNvbi5zZWFyY2guZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjg4XCI7XG59XG5pLmljb24uc2VhcmNoLmxvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjg5XCI7XG59XG5pLmljb24uc2VhcmNoLm1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDEwXCI7XG59XG5pLmljb24uc2VhcmNoLnBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGVcIjtcbn1cbmkuaWNvbi5zZWVkbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkOFwiO1xufVxuaS5pY29uLnNlcnZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzM1wiO1xufVxuaS5pY29uLnNoYXBlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjYxZlwiO1xufVxuaS5pY29uLnNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY0XCI7XG59XG5pLmljb24uc2hhcmUuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWUwXCI7XG59XG5pLmljb24uc2hhcmUuYWx0ZXJuYXRlLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMVwiO1xufVxuaS5pY29uLnNoYXJlLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZFwiO1xufVxuaS5pY29uLnNoZWtlbC5zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBiXCI7XG59XG5pLmljb24uc2hpZWxkLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlZFwiO1xufVxuaS5pY29uLnNoaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWFcIjtcbn1cbmkuaWNvbi5zaGlwcGluZy5mYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDhiXCI7XG59XG5pLmljb24uc2hvZS5wcmludHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NGJcIjtcbn1cbmkuaWNvbi5zaG9wcGluZy5iYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTBcIjtcbn1cbmkuaWNvbi5zaG9wcGluZy5iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTFcIjtcbn1cbmkuaWNvbi5zaG9wcGluZy5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdhXCI7XG59XG5pLmljb24uc2hvd2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNjXCI7XG59XG5pLmljb24uc2h1dHRsZS52YW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjZcIjtcbn1cbmkuaWNvbi5zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGQ5XCI7XG59XG5pLmljb24uc2lnbi5pbi5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjZcIjtcbn1cbmkuaWNvbi5zaWduLmxhbmd1YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE3XCI7XG59XG5pLmljb24uc2lnbi5vdXQuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmY1XCI7XG59XG5pLmljb24uc2lnbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDEyXCI7XG59XG5pLmljb24uc2lnbmF0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWI3XCI7XG59XG5pLmljb24uc2ltLmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YzRcIjtcbn1cbmkuaWNvbi5zaXRlbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU4XCI7XG59XG5pLmljb24uc2thdGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjNVwiO1xufVxuaS5pY29uLnNraWluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjOVwiO1xufVxuaS5pY29uLnNraWluZy5ub3JkaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3Y2FcIjtcbn1cbmkuaWNvbi5za3VsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0Y1wiO1xufVxuaS5pY29uLnNrdWxsLmNyb3NzYm9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3MTRcIjtcbn1cbmkuaWNvbi5zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcxNVwiO1xufVxuaS5pY29uLnNsZWlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjY1wiO1xufVxuaS5pY29uLnNsaWRlcnMuaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkZVwiO1xufVxuaS5pY29uLnNtaWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTE4XCI7XG59XG5pLmljb24uc21pbGUuYmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViOFwiO1xufVxuaS5pY29uLnNtaWxlLndpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZGFcIjtcbn1cbmkuaWNvbi5zbW9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzVmXCI7XG59XG5pLmljb24uc21va2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ4ZFwiO1xufVxuaS5pY29uLnNtb2tpbmcuYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTRkXCI7XG59XG5pLmljb24uc21zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2NkXCI7XG59XG5pLmljb24uc25vd2JvYXJkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2NlXCI7XG59XG5pLmljb24uc25vd2ZsYWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRjXCI7XG59XG5pLmljb24uc25vd21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdkMFwiO1xufVxuaS5pY29uLnNub3dwbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2QyXCI7XG59XG5pLmljb24uc29ja3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2OTZcIjtcbn1cbmkuaWNvbi5zb2xhci5wYW5lbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViYVwiO1xufVxuaS5pY29uLnNvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGNcIjtcbn1cbmkuaWNvbi5zb3J0LmFscGhhYmV0LmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWRcIjtcbn1cbmkuaWNvbi5zb3J0LmFscGhhYmV0LmRvd24uYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODgxXCI7XG59XG5pLmljb24uc29ydC5hbHBoYWJldC51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1ZVwiO1xufVxuaS5pY29uLnNvcnQuYWxwaGFiZXQudXAuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODgyXCI7XG59XG5pLmljb24uc29ydC5hbW91bnQuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2MFwiO1xufVxuaS5pY29uLnNvcnQuYW1vdW50LmRvd24uYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODg0XCI7XG59XG5pLmljb24uc29ydC5hbW91bnQudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjFcIjtcbn1cbmkuaWNvbi5zb3J0LmFtb3VudC51cC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4ODVcIjtcbn1cbmkuaWNvbi5zb3J0LmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGRcIjtcbn1cbmkuaWNvbi5zb3J0Lm51bWVyaWMuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2MlwiO1xufVxuaS5pY29uLnNvcnQubnVtZXJpYy5kb3duLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg4NlwiO1xufVxuaS5pY29uLnNvcnQubnVtZXJpYy51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2M1wiO1xufVxuaS5pY29uLnNvcnQubnVtZXJpYy51cC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4ODdcIjtcbn1cbmkuaWNvbi5zb3J0LnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRlXCI7XG59XG5pLmljb24uc3BhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWJiXCI7XG59XG5pLmljb24uc3BhY2Uuc2h1dHRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5N1wiO1xufVxuaS5pY29uLnNwZWxsLmNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODkxXCI7XG59XG5pLmljb24uc3BpZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzE3XCI7XG59XG5pLmljb24uc3Bpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExMFwiO1xufVxuaS5pY29uLnNwbG90Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YmNcIjtcbn1cbmkuaWNvbi5zcHJheS5jYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YmRcIjtcbn1cbmkuaWNvbi5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzhcIjtcbn1cbmkuaWNvbi5zcXVhcmUuZnVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1Y1wiO1xufVxuaS5pY29uLnNxdWFyZS5yb290LmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY5OFwiO1xufVxuaS5pY29uLnN0YW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWJmXCI7XG59XG5pLmljb24uc3RhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNVwiO1xufVxuaS5pY29uLnN0YXIuYW5kLmNyZXNjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjk5XCI7XG59XG5pLmljb24uc3Rhci5oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg5XCI7XG59XG5pLmljb24uc3Rhci5oYWxmLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjMFwiO1xufVxuaS5pY29uLnN0YXIub2YuZGF2aWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2OWFcIjtcbn1cbmkuaWNvbi5zdGFyLm9mLmxpZmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2MjFcIjtcbn1cbmkuaWNvbi5zdGVwLmJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ4XCI7XG59XG5pLmljb24uc3RlcC5mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDUxXCI7XG59XG5pLmljb24uc3RldGhvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjFcIjtcbn1cbmkuaWNvbi5zdGlja3kubm90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0OVwiO1xufVxuaS5pY29uLnN0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNGRcIjtcbn1cbmkuaWNvbi5zdG9wLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4ZFwiO1xufVxuaS5pY29uLnN0b3B3YXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJmMlwiO1xufVxuaS5pY29uLnN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTRlXCI7XG59XG5pLmljb24uc3RvcmUuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTRmXCI7XG59XG5pLmljb24uc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTUwXCI7XG59XG5pLmljb24uc3RyZWV0LnZpZXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWRcIjtcbn1cbmkuaWNvbi5zdHJpa2V0aHJvdWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNjXCI7XG59XG5pLmljb24uc3Ryb29wd2FmZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTFcIjtcbn1cbmkuaWNvbi5zdWJzY3JpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmNcIjtcbn1cbmkuaWNvbi5zdWJ3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzlcIjtcbn1cbmkuaWNvbi5zdWl0Y2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmMlwiO1xufVxuaS5pY29uLnN1aXRjYXNlLnJvbGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YzFcIjtcbn1cbmkuaWNvbi5zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODVcIjtcbn1cbmkuaWNvbi5zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyYlwiO1xufVxuaS5pY29uLnN1cnByaXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWMyXCI7XG59XG5pLmljb24uc3dhdGNoYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjM1wiO1xufVxuaS5pY29uLnN3aW1tZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YzRcIjtcbn1cbmkuaWNvbi5zd2ltbWluZy5wb29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWM1XCI7XG59XG5pLmljb24uc3luYWdvZ3VlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjliXCI7XG59XG5pLmljb24uc3luYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyMVwiO1xufVxuaS5pY29uLnN5bmMuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmYxXCI7XG59XG5pLmljb24uc3lyaW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ4ZVwiO1xufVxuaS5pY29uLnRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNlXCI7XG59XG5pLmljb24udGFibGUudGVubmlzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDVkXCI7XG59XG5pLmljb24udGFibGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTBhXCI7XG59XG5pLmljb24udGFibGV0LmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmYVwiO1xufVxuaS5pY29uLnRhYmxldHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OTBcIjtcbn1cbmkuaWNvbi50YWNob21ldGVyLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmZFwiO1xufVxuaS5pY29uLnRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyYlwiO1xufVxuaS5pY29uLnRhZ3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmNcIjtcbn1cbmkuaWNvbi50YXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGRiXCI7XG59XG5pLmljb24udGFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWVcIjtcbn1cbmkuaWNvbi50YXhpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJhXCI7XG59XG5pLmljb24udGVldGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2MmVcIjtcbn1cbmkuaWNvbi50ZWV0aC5vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjJmXCI7XG59XG5pLmljb24udGVtcGVyYXR1cmUuaGlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc2OVwiO1xufVxuaS5pY29uLnRlbXBlcmF0dXJlLmxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc2YlwiO1xufVxuaS5pY29uLnRlbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2Q3XCI7XG59XG5pLmljb24udGVybWluYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjBcIjtcbn1cbmkuaWNvbi50ZXh0LmhlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzNFwiO1xufVxuaS5pY29uLnRleHQud2lkdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzVcIjtcbn1cbmkuaWNvbi50aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwYVwiO1xufVxuaS5pY29uLnRoLmxhcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA5XCI7XG59XG5pLmljb24udGgubGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwYlwiO1xufVxuaS5pY29uLnRoZWF0ZXIubWFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2MzBcIjtcbn1cbmkuaWNvbi50aGVybW9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ5MVwiO1xufVxuaS5pY29uLnRoZXJtb21ldGVyLmVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNiXCI7XG59XG5pLmljb24udGhlcm1vbWV0ZXIuZnVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjN1wiO1xufVxuaS5pY29uLnRoZXJtb21ldGVyLmhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzlcIjtcbn1cbmkuaWNvbi50aGVybW9tZXRlci5xdWFydGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNhXCI7XG59XG5pLmljb24udGhlcm1vbWV0ZXIudGhyZWUucXVhcnRlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzhcIjtcbn1cbmkuaWNvbi50aHVtYnMuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2NVwiO1xufVxuaS5pY29uLnRodW1icy51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2NFwiO1xufVxuaS5pY29uLnRodW1idGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4ZFwiO1xufVxuaS5pY29uLnRpY2tldC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZmZcIjtcbn1cbmkuaWNvbi50aW1lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xufVxuaS5pY29uLnRpbWVzLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1N1wiO1xufVxuaS5pY29uLnRpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDNcIjtcbn1cbmkuaWNvbi50aW50LnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWM3XCI7XG59XG5pLmljb24udGlyZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YzhcIjtcbn1cbmkuaWNvbi50b2dnbGUub2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA0XCI7XG59XG5pLmljb24udG9nZ2xlLm9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA1XCI7XG59XG5pLmljb24udG9pbGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2Q4XCI7XG59XG5pLmljb24udG9pbGV0LnBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzFlXCI7XG59XG5pLmljb24udG9vbGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1MlwiO1xufVxuaS5pY29uLnRvb2xzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2Q5XCI7XG59XG5pLmljb24udG9vdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YzlcIjtcbn1cbmkuaWNvbi50b3JhaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZhMFwiO1xufVxuaS5pY29uLnRvcmlpLmdhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YTFcIjtcbn1cbmkuaWNvbi50cmFjdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzIyXCI7XG59XG5pLmljb24udHJhZGVtYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjVjXCI7XG59XG5pLmljb24udHJhZmZpYy5saWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjYzN1wiO1xufVxuaS5pY29uLnRyYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM4XCI7XG59XG5pLmljb24udHJhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdkYVwiO1xufVxuaS5pY29uLnRyYW5zZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI0XCI7XG59XG5pLmljb24udHJhbnNnZW5kZXIuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI1XCI7XG59XG5pLmljb24udHJhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjhcIjtcbn1cbmkuaWNvbi50cmFzaC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZWRcIjtcbn1cbmkuaWNvbi50cmFzaC5yZXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODI5XCI7XG59XG5pLmljb24udHJhc2gucmVzdG9yZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MmFcIjtcbn1cbmkuaWNvbi50cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJiXCI7XG59XG5pLmljb24udHJvcGh5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkxXCI7XG59XG5pLmljb24udHJ1Y2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDFcIjtcbn1cbmkuaWNvbi50cnVjay5tb25zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjNiXCI7XG59XG5pLmljb24udHJ1Y2subW92aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGRmXCI7XG59XG5pLmljb24udHJ1Y2sucGFja2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkZVwiO1xufVxuaS5pY29uLnRydWNrLnBpY2t1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjYzY1wiO1xufVxuaS5pY29uLnRzaGlydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1M1wiO1xufVxuaS5pY29uLnR0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNFwiO1xufVxuaS5pY29uLnR2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjZjXCI7XG59XG5pLmljb24udW1icmVsbGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTlcIjtcbn1cbmkuaWNvbi51bWJyZWxsYS5iZWFjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjYVwiO1xufVxuaS5pY29uLnVuZGVybGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjZFwiO1xufVxuaS5pY29uLnVuZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTJcIjtcbn1cbmkuaWNvbi51bmRvLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlYVwiO1xufVxuaS5pY29uLnVuaXZlcnNhbC5hY2Nlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOWFcIjtcbn1cbmkuaWNvbi51bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTljXCI7XG59XG5pLmljb24udW5saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI3XCI7XG59XG5pLmljb24udW5sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDljXCI7XG59XG5pLmljb24udW5sb2NrLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzZVwiO1xufVxuaS5pY29uLnVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5M1wiO1xufVxuaS5pY29uLnVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDdcIjtcbn1cbmkuaWNvbi51c2VyLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwNlwiO1xufVxuaS5pY29uLnVzZXIuYWx0ZXJuYXRlLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGZhXCI7XG59XG5pLmljb24udXNlci5hc3Ryb25hdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZmJcIjtcbn1cbmkuaWNvbi51c2VyLmNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGZjXCI7XG59XG5pLmljb24udXNlci5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYmRcIjtcbn1cbmkuaWNvbi51c2VyLmNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGZkXCI7XG59XG5pLmljb24udXNlci5jb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZmVcIjtcbn1cbmkuaWNvbi51c2VyLmVkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZmZcIjtcbn1cbmkuaWNvbi51c2VyLmZyaWVuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MDBcIjtcbn1cbmkuaWNvbi51c2VyLmdyYWR1YXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTAxXCI7XG59XG5pLmljb24udXNlci5pbmp1cmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzI4XCI7XG59XG5pLmljb24udXNlci5sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTAyXCI7XG59XG5pLmljb24udXNlci5tZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmMFwiO1xufVxuaS5pY29uLnVzZXIubWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MDNcIjtcbn1cbmkuaWNvbi51c2VyLm5pbmphOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTA0XCI7XG59XG5pLmljb24udXNlci5udXJzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgyZlwiO1xufVxuaS5pY29uLnVzZXIucGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNFwiO1xufVxuaS5pY29uLnVzZXIuc2VjcmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjFiXCI7XG59XG5pLmljb24udXNlci5zaGllbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MDVcIjtcbn1cbmkuaWNvbi51c2VyLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTA2XCI7XG59XG5pLmljb24udXNlci50YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MDdcIjtcbn1cbmkuaWNvbi51c2VyLnRpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUwOFwiO1xufVxuaS5pY29uLnVzZXIudGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cbmkuaWNvbi51c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMFwiO1xufVxuaS5pY29uLnVzZXJzLmNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUwOVwiO1xufVxuaS5pY29uLnV0ZW5zaWwuc3Bvb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZTVcIjtcbn1cbmkuaWNvbi51dGVuc2lsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlN1wiO1xufVxuaS5pY29uLnZlY3Rvci5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1Y2JcIjtcbn1cbmkuaWNvbi52ZW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyMVwiO1xufVxuaS5pY29uLnZlbnVzLmRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNlwiO1xufVxuaS5pY29uLnZlbnVzLm1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjhcIjtcbn1cbmkuaWNvbi52aWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDkyXCI7XG59XG5pLmljb24udmlhbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OTNcIjtcbn1cbmkuaWNvbi52aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzZFwiO1xufVxuaS5pY29uLnZpZGVvLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGUyXCI7XG59XG5pLmljb24udmloYXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmE3XCI7XG59XG5pLmljb24udm9pY2VtYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODk3XCI7XG59XG5pLmljb24udm9sbGV5YmFsbC5iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDVmXCI7XG59XG5pLmljb24udm9sdW1lLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjdcIjtcbn1cbmkuaWNvbi52b2x1bWUubXV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZhOVwiO1xufVxuaS5pY29uLnZvbHVtZS5vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjZcIjtcbn1cbmkuaWNvbi52b2x1bWUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjhcIjtcbn1cbmkuaWNvbi52b3RlLnllYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc3MlwiO1xufVxuaS5pY29uLnZyLmNhcmRib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcyOVwiO1xufVxuaS5pY29uLndhbGtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTRcIjtcbn1cbmkuaWNvbi53YWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTVcIjtcbn1cbmkuaWNvbi53YXJlaG91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OTRcIjtcbn1cbmkuaWNvbi53YXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc3M1wiO1xufVxuaS5pY29uLndhdmUuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODNlXCI7XG59XG5pLmljb24ud2VpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDk2XCI7XG59XG5pLmljb24ud2VpZ2h0Lmhhbmdpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1Y2RcIjtcbn1cbmkuaWNvbi53aGVlbGNoYWlyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkzXCI7XG59XG5pLmljb24ud2lmaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlYlwiO1xufVxuaS5pY29uLndpbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3MmVcIjtcbn1cbmkuaWNvbi53aW5kb3cuY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTBcIjtcbn1cbmkuaWNvbi53aW5kb3cubWF4aW1pemU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDBcIjtcbn1cbmkuaWNvbi53aW5kb3cubWluaW1pemU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDFcIjtcbn1cbmkuaWNvbi53aW5kb3cucmVzdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkMlwiO1xufVxuaS5pY29uLndpbmUuYm90dGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzJmXCI7XG59XG5pLmljb24ud2luZS5nbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRlM1wiO1xufVxuaS5pY29uLndpbmUuZ2xhc3MuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWNlXCI7XG59XG5pLmljb24ud29uLnNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTlcIjtcbn1cbmkuaWNvbi53cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWRcIjtcbn1cbmkuaWNvbi54LnJheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ5N1wiO1xufVxuaS5pY29uLnllbi5zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU3XCI7XG59XG5pLmljb24ueWluLnlhbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YWRcIjtcbn1cbi8qIEFsaWFzZXMgKi9cbmkuaWNvbi5hZGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjdcIjtcbn1cbmkuaWNvbi5hZGQuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU1XCI7XG59XG5pLmljb24uYWRkLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmZVwiO1xufVxuaS5pY29uLmFkZC50by5jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3MVwiO1xufVxuaS5pY29uLmFkZC50by5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE3XCI7XG59XG5pLmljb24uYWRkLnVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzRcIjtcbn1cbmkuaWNvbi5hbGFybTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmM1wiO1xufVxuaS5pY29uLmFsYXJtLm11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjZcIjtcbn1cbmkuaWNvbi5hbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTJcIjtcbn1cbmkuaWNvbi5hbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTJcIjtcbn1cbmkuaWNvbi5hbm5vdW5jZW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTFcIjtcbn1cbmkuaWNvbi5hcmVhLmNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZlXCI7XG59XG5pLmljb24uYXJlYS5ncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmZVwiO1xufVxuaS5pY29uLmFycm93LmRvd24uY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxOFwiO1xufVxuaS5pY29uLmFzZXh1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmRcIjtcbn1cbmkuaWNvbi5hc2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTNcIjtcbn1cbmkuaWNvbi5hc2wuaW50ZXJwcmV0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmEzXCI7XG59XG5pLmljb24uYXNzaXN0aXZlLmxpc3RlbmluZy5kZXZpY2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmEyXCI7XG59XG5pLmljb24uYXR0YWNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM2XCI7XG59XG5pLmljb24uYXR0ZW50aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZhXCI7XG59XG5pLmljb24uYmFsYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZVwiO1xufVxuaS5pY29uLmJhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmY1wiO1xufVxuaS5pY29uLmJhdGh0dWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2RcIjtcbn1cbmkuaWNvbi5iYXR0ZXJ5LmZvdXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDBcIjtcbn1cbmkuaWNvbi5iYXR0ZXJ5LmhpZ2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDFcIjtcbn1cbmkuaWNvbi5iYXR0ZXJ5LmxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0M1wiO1xufVxuaS5pY29uLmJhdHRlcnkubWVkaXVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQyXCI7XG59XG5pLmljb24uYmF0dGVyeS5vbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDNcIjtcbn1cbmkuaWNvbi5iYXR0ZXJ5LnRocmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQxXCI7XG59XG5pLmljb24uYmF0dGVyeS50d286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDJcIjtcbn1cbmkuaWNvbi5iYXR0ZXJ5Lnplcm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDRcIjtcbn1cbmkuaWNvbi5iaXJ0aGRheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmZFwiO1xufVxuaS5pY29uLmJsb2NrLmxheW91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwOVwiO1xufVxuaS5pY29uLmJyb2tlbi5jaGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyN1wiO1xufVxuaS5pY29uLmJyb3dzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjJcIjtcbn1cbmkuaWNvbi5jYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk1XCI7XG59XG5pLmljb24uY2FsbC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOThcIjtcbn1cbmkuaWNvbi5jYW5jZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cbmkuaWNvbi5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdhXCI7XG59XG5pLmljb24uY2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGFcIjtcbn1cbmkuaWNvbi5jaGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMVwiO1xufVxuaS5pY29uLmNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzVcIjtcbn1cbmkuaWNvbi5jaGVja2VkLmNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc0XCI7XG59XG5pLmljb24uY2hlY2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG59XG5pLmljb24uY2hlY2ttYXJrLmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YVwiO1xufVxuaS5pY29uLmNoZXNzLnJvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NDdcIjtcbn1cbmkuaWNvbi5jaXJjbGUubm90Y2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjZVwiO1xufVxuaS5pY29uLmNpcmNsZS50aGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTExXCI7XG59XG5pLmljb24uY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cbmkuaWNvbi5jbG91ZC5kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM4MVwiO1xufVxuaS5pY29uLmNsb3VkLnVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM4MlwiO1xufVxuaS5pY29uLmNueTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1N1wiO1xufVxuaS5pY29uLmNvY2t0YWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAwXCI7XG59XG5pLmljb24uY29tbWVudGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3YVwiO1xufVxuaS5pY29uLmNvbXBvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDNcIjtcbn1cbmkuaWNvbi5jb21wdXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwOFwiO1xufVxuaS5pY29uLmNvbmZpZ3VyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhZFwiO1xufVxuaS5pY29uLmNvbnRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzlcIjtcbn1cbmkuaWNvbi5jb252ZXJzYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODZcIjtcbn1cbmkuaWNvbi5jcmVkaXQuY2FyZC5hbHRlcm5hdGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZFwiO1xufVxuaS5pY29uLmN1cnJlbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QxXCI7XG59XG5pLmljb24uZGFzaGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2ZkXCI7XG59XG5pLmljb24uZGVhZm5lc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTRcIjtcbn1cbmkuaWNvbi5kZWxldGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cbmkuaWNvbi5kZWxldGUuY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzNcIjtcbn1cbmkuaWNvbi5kZXRlY3RpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWJcIjtcbn1cbmkuaWNvbi5kaWFtb25kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2E1XCI7XG59XG5pLmljb24uZGlzY3Vzc2lvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODZcIjtcbn1cbmkuaWNvbi5kaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGEwXCI7XG59XG5pLmljb24uZG9jdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYwXCI7XG59XG5pLmljb24uZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU1XCI7XG59XG5pLmljb24uZG9udDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1ZVwiO1xufVxuaS5pY29uLmRyaXZlcnMubGljZW5zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjMlwiO1xufVxuaS5pY29uLmRyb3Bkb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ3XCI7XG59XG5pLmljb24uZW1lcmdlbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY5XCI7XG59XG5pLmljb24uZXJhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmRcIjtcbn1cbmkuaWNvbi5ldXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTNcIjtcbn1cbmkuaWNvbi5ldXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUzXCI7XG59XG5pLmljb24uZXhjaGFuZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNjJcIjtcbn1cbmkuaWNvbi5leHRlcm5hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1ZFwiO1xufVxuaS5pY29uLmV4dGVybmFsLnNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTRkXCI7XG59XG5pLmljb24uZXh0ZXJuYWwuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzYwXCI7XG59XG5pLmljb24uZXllZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmYlwiO1xufVxuaS5pY29uLmZhY3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzVcIjtcbn1cbmkuaWNvbi5mYXZvcml0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNVwiO1xufVxuaS5pY29uLmZlZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWVcIjtcbn1cbmkuaWNvbi5mZW1hbGUuaG9tb3NleHVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNlwiO1xufVxuaS5pY29uLmZpbGUudGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1Y1wiO1xufVxuaS5pY29uLmZpbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTVcIjtcbn1cbmkuaWNvbi5maXJzdC5haWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmFcIjtcbn1cbmkuaWNvbi5mb29kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmU3XCI7XG59XG5pLmljb24uZm9yazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNlwiO1xufVxuaS5pY29uLmdhbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWJcIjtcbn1cbmkuaWNvbi5nYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjdcIjtcbn1cbmkuaWNvbi5nYnA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTRcIjtcbn1cbmkuaWNvbi5ncmFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU1XCI7XG59XG5pLmljb24uZ3JhZHVhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5ZFwiO1xufVxuaS5pY29uLmdyaWQubGF5b3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBhXCI7XG59XG5pLmljb24uZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzBcIjtcbn1cbmkuaWNvbi5oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZkXCI7XG59XG5pLmljb24uaGFtYnVyZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM5XCI7XG59XG5pLmljb24uaGFuZC52aWN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjViXCI7XG59XG5pLmljb24uaGFuZGljYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTNcIjtcbn1cbmkuaWNvbi5oYXJkLm9mLmhlYXJpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTRcIjtcbn1cbmkuaWNvbi5oZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGNcIjtcbn1cbmkuaWNvbi5oZWFydC5lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNFwiO1xufVxuaS5pY29uLmhlbHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjhcIjtcbn1cbmkuaWNvbi5oZWxwLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OVwiO1xufVxuaS5pY29uLmhldGVyb3NleHVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOFwiO1xufVxuaS5pY29uLmhpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzBcIjtcbn1cbmkuaWNvbi5ob3RlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNlwiO1xufVxuaS5pY29uLmhvdXJnbGFzcy5mb3VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU0XCI7XG59XG5pLmljb24uaG91cmdsYXNzLmZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTRcIjtcbn1cbmkuaWNvbi5ob3VyZ2xhc3Mub25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjUxXCI7XG59XG5pLmljb24uaG91cmdsYXNzLnRocmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjUzXCI7XG59XG5pLmljb24uaG91cmdsYXNzLnR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1MlwiO1xufVxuaS5pY29uLmhvdXJnbGFzcy56ZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjUzXCI7XG59XG5pLmljb24uaWRlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlYlwiO1xufVxuaS5pY29uLmlsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYlwiO1xufVxuaS5pY29uLmluLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMThcIjtcbn1cbmkuaWNvbi5pbnI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTZcIjtcbn1cbmkuaWNvbi5pbnRlcmdlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNFwiO1xufVxuaS5pY29uLmludGVyc2V4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI0XCI7XG59XG5pLmljb24uanB5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU3XCI7XG59XG5pLmljb24ua3J3OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU5XCI7XG59XG5pLmljb24ubGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMzXCI7XG59XG5pLmljb24ubGF3OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRlXCI7XG59XG5pLmljb24ubGVnYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTNcIjtcbn1cbmkuaWNvbi5sZXNiaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI2XCI7XG59XG5pLmljb24ubGV2ZWwuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiZVwiO1xufVxuaS5pY29uLmxldmVsLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2JmXCI7XG59XG5pLmljb24ubGlnaHRuaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU3XCI7XG59XG5pLmljb24ubGlrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNFwiO1xufVxuaS5pY29uLmxpbmUuZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDFcIjtcbn1cbmkuaWNvbi5saW5raWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMxXCI7XG59XG5pLmljb24ubGlyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5NVwiO1xufVxuaS5pY29uLmxpc3QubGF5b3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBiXCI7XG59XG5pLmljb24ubG9nLm91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJmNVwiO1xufVxuaS5pY29uLm1hZ25pZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGVcIjtcbn1cbmkuaWNvbi5tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUwXCI7XG59XG5pLmljb24ubWFpbC5mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY0XCI7XG59XG5pLmljb24ubWFpbC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTlcIjtcbn1cbmkuaWNvbi5tYWxlLmhvbW9zZXh1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjdcIjtcbn1cbmkuaWNvbi5tYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjJcIjtcbn1cbmkuaWNvbi5tYXJrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDFcIjtcbn1cbmkuaWNvbi5tYXJzLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOVwiO1xufVxuaS5pY29uLm1hcnMuaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyYlwiO1xufVxuaS5pY29uLm1hcnMudmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmFcIjtcbn1cbmkuaWNvbi5tZWFucGF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOFwiO1xufVxuaS5pY29uLm1pbGl0YXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZiXCI7XG59XG5pLmljb24ubW9uZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDFcIjtcbn1cbmkuaWNvbi5tb3ZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIyXCI7XG59XG5pLmljb24ubXV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzMVwiO1xufVxuaS5pY29uLm5vbi5iaW5hcnkudHJhbnNnZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjNcIjtcbn1cbmkuaWNvbi5udW1iZXJlZC5saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNiXCI7XG59XG5pLmljb24ub3B0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkZVwiO1xufVxuaS5pY29uLm9yZGVyZWQubGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjYlwiO1xufVxuaS5pY29uLm90aGVyLmdlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOVwiO1xufVxuaS5pY29uLm90aGVyLmdlbmRlci5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJiXCI7XG59XG5pLmljb24ub3RoZXIuZ2VuZGVyLnZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJhXCI7XG59XG5pLmljb24ucGF5bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZFwiO1xufVxuaS5pY29uLnBlbmNpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwM1wiO1xufVxuaS5pY29uLnBlbmNpbC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGJcIjtcbn1cbmkuaWNvbi5waG90bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzMFwiO1xufVxuaS5pY29uLnBpY3R1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cbmkuaWNvbi5waWUuY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDBcIjtcbn1cbmkuaWNvbi5waWUuZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDBcIjtcbn1cbmkuaWNvbi5waW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOGRcIjtcbn1cbmkuaWNvbi5wbHVzLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTdcIjtcbn1cbmkuaWNvbi5wb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0MVwiO1xufVxuaS5pY29uLnBvaW50aW5nLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTdcIjtcbn1cbmkuaWNvbi5wb2ludGluZy5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE1XCI7XG59XG5pLmljb24ucG9pbnRpbmcucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTRcIjtcbn1cbmkuaWNvbi5wb2ludGluZy51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNlwiO1xufVxuaS5pY29uLnBvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU0XCI7XG59XG5pLmljb24ucG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTFcIjtcbn1cbmkuaWNvbi5wb3dlci5jb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU2XCI7XG59XG5pLmljb24ucHJpdmFjeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NFwiO1xufVxuaS5pY29uLnByb3RlY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjNcIjtcbn1cbmkuaWNvbi5wdXp6bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmVcIjtcbn1cbmkuaWNvbi5yLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1ZFwiO1xufVxuaS5pY29uLnJhZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG5pLmljb24ucmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlOVwiO1xufVxuaS5pY29uLnJlY29yZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzZFwiO1xufVxuaS5pY29uLnJlZnJlc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjFcIjtcbn1cbmkuaWNvbi5yZW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cbmkuaWNvbi5yZW1vdmUuYm9va21hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmVcIjtcbn1cbmkuaWNvbi5yZW1vdmUuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU3XCI7XG59XG5pLmljb24ucmVtb3ZlLmZyb20uY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzJcIjtcbn1cbmkuaWNvbi5yZW1vdmUudXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNVwiO1xufVxuaS5pY29uLnJlcGVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxZVwiO1xufVxuaS5pY29uLnJlc2l6ZS5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzM3XCI7XG59XG5pLmljb24ucmVzaXplLnZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzM4XCI7XG59XG5pLmljb24ucm1iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU3XCI7XG59XG5pLmljb24ucm91YmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU4XCI7XG59XG5pLmljb24ucnViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU4XCI7XG59XG5pLmljb24ucnVibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNThcIjtcbn1cbmkuaWNvbi5ydXBlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1NlwiO1xufVxuaS5pY29uLnMxNTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjZFwiO1xufVxuaS5pY29uLnNlbGVjdGVkLnJhZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG5pLmljb24uc2VuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkOFwiO1xufVxuaS5pY29uLnNldHRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTNcIjtcbn1cbmkuaWNvbi5zZXR0aW5nczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NVwiO1xufVxuaS5pY29uLnNoZWtlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYlwiO1xufVxuaS5pY29uLnNoZXFlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYlwiO1xufVxuaS5pY29uLnNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlZFwiO1xufVxuaS5pY29uLnNoaXBwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQxXCI7XG59XG5pLmljb24uc2hvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3YVwiO1xufVxuaS5pY29uLnNodWZmbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzRcIjtcbn1cbmkuaWNvbi5zaHV0ZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMVwiO1xufVxuaS5pY29uLnNpZGViYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzlcIjtcbn1cbmkuaWNvbi5zaWduLmluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmY2XCI7XG59XG5pLmljb24uc2lnbi5vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjVcIjtcbn1cbmkuaWNvbi5zaWduaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE3XCI7XG59XG5pLmljb24uc2lnbnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ0XCI7XG59XG5pLmljb24uc2xpZGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkZVwiO1xufVxuaS5pY29uLnNvY2NlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlM1wiO1xufVxuaS5pY29uLnNvcnQuYWxwaGFiZXQuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVkXCI7XG59XG5pLmljb24uc29ydC5hbHBoYWJldC5kZXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVlXCI7XG59XG5pLmljb24uc29ydC5hc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGVcIjtcbn1cbmkuaWNvbi5zb3J0LmNvbnRlbnQuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYwXCI7XG59XG5pLmljb24uc29ydC5jb250ZW50LmRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjFcIjtcbn1cbmkuaWNvbi5zb3J0LmRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGRcIjtcbn1cbmkuaWNvbi5zb3J0Lm51bWVyaWMuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYyXCI7XG59XG5pLmljb24uc29ydC5udW1lcmljLmRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjNcIjtcbn1cbmkuaWNvbi5zb3VuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyNVwiO1xufVxuaS5pY29uLnNwb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmU1XCI7XG59XG5pLmljb24uc3B5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjFiXCI7XG59XG5pLmljb24uc3Rhci5lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNVwiO1xufVxuaS5pY29uLnN0YXIuaGFsZi5lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4OVwiO1xufVxuaS5pY29uLnN0YXIuaGFsZi5mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg5XCI7XG59XG5pLmljb24uc3R1ZGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5ZFwiO1xufVxuaS5pY29uLnRhbGs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2FcIjtcbn1cbmkuaWNvbi50YXJnZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDBcIjtcbn1cbmkuaWNvbi50ZWxldHlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNFwiO1xufVxuaS5pY29uLnRlbGV2aXNpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmNcIjtcbn1cbmkuaWNvbi50ZXh0LmN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0NlwiO1xufVxuaS5pY29uLnRleHQudGVsZXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU0XCI7XG59XG5pLmljb24udGhlbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDNcIjtcbn1cbmkuaWNvbi50aGVybW9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjN1wiO1xufVxuaS5pY29uLnRodW1iLnRhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOGRcIjtcbn1cbmkuaWNvbi50aWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZmZcIjtcbn1cbmkuaWNvbi50aW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE3XCI7XG59XG5pLmljb24udGltZXMucmVjdGFuZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDEwXCI7XG59XG5pLmljb24udG06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWNcIjtcbn1cbmkuaWNvbi50b2dnbGUuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MFwiO1xufVxuaS5pY29uLnRvZ2dsZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkxXCI7XG59XG5pLmljb24udG9nZ2xlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUyXCI7XG59XG5pLmljb24udG9nZ2xlLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUxXCI7XG59XG5pLmljb24udHJhbnNsYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFiXCI7XG59XG5pLmljb24udHJhdmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIxXCI7XG59XG5pLmljb24udHJlYXRtZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYxXCI7XG59XG5pLmljb24udHJpYW5nbGUuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuaS5pY29uLnRyaWFuZ2xlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDlcIjtcbn1cbmkuaWNvbi50cmlhbmdsZS5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkYVwiO1xufVxuaS5pY29uLnRyaWFuZ2xlLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG59XG5pLmljb24udHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk1XCI7XG59XG5pLmljb24udW5oaWRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZlXCI7XG59XG5pLmljb24udW5saW5raWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI3XCI7XG59XG5pLmljb24udW5tdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMwXCI7XG59XG5pLmljb24udW5vcmRlcmVkLmxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwY2FcIjtcbn1cbmkuaWNvbi51c2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTVcIjtcbn1cbmkuaWNvbi51c2VyLmNhbmNlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNVwiO1xufVxuaS5pY29uLnVzZXIuY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cbmkuaWNvbi51c2VyLmRlbGV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNVwiO1xufVxuaS5pY29uLnVzZXIuZG9jdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYwXCI7XG59XG5pLmljb24udXNlci54OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM1XCI7XG59XG5pLmljb24udmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYmJcIjtcbn1cbmkuaWNvbi52aWRlby5jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2RcIjtcbn1cbmkuaWNvbi52aWRlby5wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ0XCI7XG59XG5pLmljb24udm9sdW1lLmNvbnRyb2wucGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTBcIjtcbn1cbmkuaWNvbi53YWl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE3XCI7XG59XG5pLmljb24ud2FybmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyYVwiO1xufVxuaS5pY29uLndhcm5pbmcuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZhXCI7XG59XG5pLmljb24ud2FybmluZy5zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDcxXCI7XG59XG5pLmljb24ud2kuZmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWJcIjtcbn1cbmkuaWNvbi53aW5uZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTFcIjtcbn1cbmkuaWNvbi53aXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDBcIjtcbn1cbmkuaWNvbi53b21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyMVwiO1xufVxuaS5pY29uLndvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1OVwiO1xufVxuaS5pY29uLndvcmxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFjXCI7XG59XG5pLmljb24ud3JpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDNcIjtcbn1cbmkuaWNvbi53cml0ZS5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGJcIjtcbn1cbmkuaWNvbi54OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG59XG5pLmljb24ueWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU3XCI7XG59XG5pLmljb24uemlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg3XCI7XG59XG5pLmljb24uem9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZVwiO1xufVxuaS5pY29uLnpvb20uaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGVcIjtcbn1cbmkuaWNvbi56b29tLm91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMFwiO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIE91dGxpbmUgSWNvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBPdXRsaW5lIEljb24gKi9cbi8qIExvYWQgJiBEZWZpbmUgSWNvbiBGb250ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdvdXRsaW5lLWljb25zJztcbiAgc3JjOiB1cmwoXCIuLi8uLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvb3V0bGluZS1pY29ucy5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL291dGxpbmUtaWNvbnMuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybChcIi4uLy4uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9vdXRsaW5lLWljb25zLndvZmYyXCIpIGZvcm1hdCgnd29mZjInKSwgdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL291dGxpbmUtaWNvbnMud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL291dGxpbmUtaWNvbnMudHRmXCIpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL291dGxpbmUtaWNvbnMuc3ZnI2ljb25zXCIpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5pLmljb24ub3V0bGluZSB7XG4gIGZvbnQtZmFtaWx5OiAnb3V0bGluZS1pY29ucyc7XG59XG4vKiBJY29ucyAqL1xuaS5pY29uLmFkZHJlc3MuYm9vay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI5XCI7XG59XG5pLmljb24uYWRkcmVzcy5jYXJkLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYmJcIjtcbn1cbmkuaWNvbi5hbmdyeS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTU2XCI7XG59XG5pLmljb24uYXJyb3cuYWx0ZXJuYXRlLmNpcmNsZS5kb3duLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNThcIjtcbn1cbmkuaWNvbi5hcnJvdy5hbHRlcm5hdGUuY2lyY2xlLmxlZnQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1OVwiO1xufVxuaS5pY29uLmFycm93LmFsdGVybmF0ZS5jaXJjbGUucmlnaHQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1YVwiO1xufVxuaS5pY29uLmFycm93LmFsdGVybmF0ZS5jaXJjbGUudXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1YlwiO1xufVxuaS5pY29uLmJlbGwub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmM1wiO1xufVxuaS5pY29uLmJlbGwuc2xhc2gub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNlwiO1xufVxuaS5pY29uLmJvb2ttYXJrLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmVcIjtcbn1cbmkuaWNvbi5idWlsZGluZy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFkXCI7XG59XG5pLmljb24uY2FsZW5kYXIuYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzNcIjtcbn1cbmkuaWNvbi5jYWxlbmRhci5jaGVjay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc0XCI7XG59XG5pLmljb24uY2FsZW5kYXIubWludXMub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3MlwiO1xufVxuaS5pY29uLmNhbGVuZGFyLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzNcIjtcbn1cbmkuaWNvbi5jYWxlbmRhci5wbHVzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzFcIjtcbn1cbmkuaWNvbi5jYWxlbmRhci50aW1lcy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjczXCI7XG59XG5pLmljb24uY2FyZXQuc3F1YXJlLmRvd24ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MFwiO1xufVxuaS5pY29uLmNhcmV0LnNxdWFyZS5sZWZ0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTFcIjtcbn1cbmkuaWNvbi5jYXJldC5zcXVhcmUucmlnaHQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MlwiO1xufVxuaS5pY29uLmNhcmV0LnNxdWFyZS51cC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUxXCI7XG59XG5pLmljb24uY2hhcnQuYmFyLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODBcIjtcbn1cbmkuaWNvbi5jaGVjay5jaXJjbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OFwiO1xufVxuaS5pY29uLmNoZWNrLnNxdWFyZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTRhXCI7XG59XG5pLmljb24uY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTFcIjtcbn1cbmkuaWNvbi5jbGlwYm9hcmQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMyOFwiO1xufVxuaS5pY29uLmNsb2NrLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTdcIjtcbn1cbmkuaWNvbi5jbG9uZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRkXCI7XG59XG5pLmljb24uY2xvc2VkLmNhcHRpb25pbmcub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYVwiO1xufVxuaS5pY29uLmNvbW1lbnQuYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2FcIjtcbn1cbmkuaWNvbi5jb21tZW50LmRvdHMub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRhZFwiO1xufVxuaS5pY29uLmNvbW1lbnQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NVwiO1xufVxuaS5pY29uLmNvbW1lbnRzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODZcIjtcbn1cbmkuaWNvbi5jb21wYXNzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGVcIjtcbn1cbmkuaWNvbi5jb3B5Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzVcIjtcbn1cbmkuaWNvbi5jb3B5cmlnaHQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOVwiO1xufVxuaS5pY29uLmNyZWRpdC5jYXJkLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWRcIjtcbn1cbmkuaWNvbi5kaXp6eS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTY3XCI7XG59XG5pLmljb24uZG90LmNpcmNsZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG5pLmljb24uZWRpdC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ0XCI7XG59XG5pLmljb24uZW52ZWxvcGUub3Blbi5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI2XCI7XG59XG5pLmljb24uZW52ZWxvcGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMFwiO1xufVxuaS5pY29uLmV5ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZlXCI7XG59XG5pLmljb24uZXllLnNsYXNoLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzBcIjtcbn1cbmkuaWNvbi5maWxlLmFsdGVybmF0ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVjXCI7XG59XG5pLmljb24uZmlsZS5hcmNoaXZlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzZcIjtcbn1cbmkuaWNvbi5maWxlLmF1ZGlvLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzdcIjtcbn1cbmkuaWNvbi5maWxlLmNvZGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjOVwiO1xufVxuaS5pY29uLmZpbGUuZXhjZWwub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjM1wiO1xufVxuaS5pY29uLmZpbGUuaW1hZ2Uub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjNVwiO1xufVxuaS5pY29uLmZpbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1YlwiO1xufVxuaS5pY29uLmZpbGUucGRmLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzFcIjtcbn1cbmkuaWNvbi5maWxlLnBvd2VycG9pbnQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjNFwiO1xufVxuaS5pY29uLmZpbGUudmlkZW8ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjOFwiO1xufVxuaS5pY29uLmZpbGUud29yZC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMyXCI7XG59XG5pLmljb24uZmxhZy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI0XCI7XG59XG5pLmljb24uZmx1c2hlZC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTc5XCI7XG59XG5pLmljb24uZm9sZGVyLm9wZW4ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3Y1wiO1xufVxuaS5pY29uLmZvbGRlci5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdiXCI7XG59XG5pLmljb24uZnJvd24ub3Blbi5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTdhXCI7XG59XG5pLmljb24uZnJvd24ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExOVwiO1xufVxuaS5pY29uLmZ1dGJvbC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWUzXCI7XG59XG5pLmljb24uZ2VtLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTVcIjtcbn1cbmkuaWNvbi5ncmltYWNlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1N2ZcIjtcbn1cbmkuaWNvbi5ncmluLmFsdGVybmF0ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTgxXCI7XG59XG5pLmljb24uZ3Jpbi5iZWFtLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODJcIjtcbn1cbmkuaWNvbi5ncmluLmJlYW0uc3dlYXQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4M1wiO1xufVxuaS5pY29uLmdyaW4uaGVhcnRzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODRcIjtcbn1cbmkuaWNvbi5ncmluLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODBcIjtcbn1cbmkuaWNvbi5ncmluLnNxdWludC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTg1XCI7XG59XG5pLmljb24uZ3Jpbi5zcXVpbnQudGVhcnMub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4NlwiO1xufVxuaS5pY29uLmdyaW4uc3RhcnMub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4N1wiO1xufVxuaS5pY29uLmdyaW4udGVhcnMub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4OFwiO1xufVxuaS5pY29uLmdyaW4udG9uZ3VlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODlcIjtcbn1cbmkuaWNvbi5ncmluLnRvbmd1ZS5zcXVpbnQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4YVwiO1xufVxuaS5pY29uLmdyaW4udG9uZ3VlLndpbmsub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4YlwiO1xufVxuaS5pY29uLmdyaW4ud2luay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNThjXCI7XG59XG5pLmljb24uaGFuZC5saXphcmQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1OFwiO1xufVxuaS5pY29uLmhhbmQucGFwZXIub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NlwiO1xufVxuaS5pY29uLmhhbmQucGVhY2Uub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1YlwiO1xufVxuaS5pY29uLmhhbmQucG9pbnQuZG93bi5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE3XCI7XG59XG5pLmljb24uaGFuZC5wb2ludC5sZWZ0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTVcIjtcbn1cbmkuaWNvbi5oYW5kLnBvaW50LnJpZ2h0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTRcIjtcbn1cbmkuaWNvbi5oYW5kLnBvaW50LnVwLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTZcIjtcbn1cbmkuaWNvbi5oYW5kLnBvaW50ZXIub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1YVwiO1xufVxuaS5pY29uLmhhbmQucm9jay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU1XCI7XG59XG5pLmljb24uaGFuZC5zY2lzc29ycy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU3XCI7XG59XG5pLmljb24uaGFuZC5zcG9jay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU5XCI7XG59XG5pLmljb24uaGFuZHNoYWtlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjVcIjtcbn1cbmkuaWNvbi5oZGQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMFwiO1xufVxuaS5pY29uLmhlYXJ0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDRcIjtcbn1cbmkuaWNvbi5ob3NwaXRhbC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY4XCI7XG59XG5pLmljb24uaG91cmdsYXNzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTRcIjtcbn1cbmkuaWNvbi5pZC5iYWRnZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMxXCI7XG59XG5pLmljb24uaWQuY2FyZC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMyXCI7XG59XG5pLmljb24uaW1hZ2Uub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzZVwiO1xufVxuaS5pY29uLmltYWdlcy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzAyXCI7XG59XG5pLmljb24ua2V5Ym9hcmQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExY1wiO1xufVxuaS5pY29uLmtpc3MuYmVhbS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTk3XCI7XG59XG5pLmljb24ua2lzcy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTk2XCI7XG59XG5pLmljb24ua2lzcy53aW5rLmhlYXJ0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OThcIjtcbn1cbmkuaWNvbi5sYXVnaC5iZWFtLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWFcIjtcbn1cbmkuaWNvbi5sYXVnaC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTk5XCI7XG59XG5pLmljb24ubGF1Z2guc3F1aW50Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWJcIjtcbn1cbmkuaWNvbi5sYXVnaC53aW5rLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWNcIjtcbn1cbmkuaWNvbi5sZW1vbi5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk0XCI7XG59XG5pLmljb24ubGlmZS5yaW5nLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2RcIjtcbn1cbmkuaWNvbi5saWdodGJ1bGIub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlYlwiO1xufVxuaS5pY29uLmxpc3QuYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjJcIjtcbn1cbmkuaWNvbi5tYXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3OVwiO1xufVxuaS5pY29uLm1laC5ibGFuay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWE0XCI7XG59XG5pLmljb24ubWVoLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWFcIjtcbn1cbmkuaWNvbi5tZWgucm9sbGluZy5leWVzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YTVcIjtcbn1cbmkuaWNvbi5taW51cy5zcXVhcmUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0NlwiO1xufVxuaS5pY29uLm1vbmV5LmJpbGwuYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDFcIjtcbn1cbmkuaWNvbi5tb29uLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODZcIjtcbn1cbmkuaWNvbi5uZXdzcGFwZXIub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlYVwiO1xufVxuaS5pY29uLm9iamVjdC5ncm91cC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ3XCI7XG59XG5pLmljb24ub2JqZWN0LnVuZ3JvdXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0OFwiO1xufVxuaS5pY29uLnBhcGVyLnBsYW5lLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDhcIjtcbn1cbmkuaWNvbi5wYXVzZS5jaXJjbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4YlwiO1xufVxuaS5pY29uLnBsYXkuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDRcIjtcbn1cbmkuaWNvbi5wbHVzLnNxdWFyZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZlXCI7XG59XG5pLmljb24ucXVlc3Rpb24uY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTlcIjtcbn1cbmkuaWNvbi5yZWdpc3RlcmVkLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWRcIjtcbn1cbmkuaWNvbi5zYWQuY3J5Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjNcIjtcbn1cbmkuaWNvbi5zYWQudGVhci5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWI0XCI7XG59XG5pLmljb24uc2F2ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM3XCI7XG59XG5pLmljb24uc2hhcmUuc3F1YXJlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGRcIjtcbn1cbmkuaWNvbi5zbWlsZS5iZWFtLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjhcIjtcbn1cbmkuaWNvbi5zbWlsZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTE4XCI7XG59XG5pLmljb24uc21pbGUud2luay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGRhXCI7XG59XG5pLmljb24uc25vd2ZsYWtlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGNcIjtcbn1cbmkuaWNvbi5zcXVhcmUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOFwiO1xufVxuaS5pY29uLnN0YXIuaGFsZi5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg5XCI7XG59XG5pLmljb24uc3Rhci5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA1XCI7XG59XG5pLmljb24uc3RpY2t5Lm5vdGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0OVwiO1xufVxuaS5pY29uLnN0b3AuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGRcIjtcbn1cbmkuaWNvbi5zdW4ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4NVwiO1xufVxuaS5pY29uLnN1cnByaXNlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YzJcIjtcbn1cbmkuaWNvbi50aHVtYnMuZG93bi5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY1XCI7XG59XG5pLmljb24udGh1bWJzLnVwLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjRcIjtcbn1cbmkuaWNvbi50aW1lcy5jaXJjbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1N1wiO1xufVxuaS5pY29uLnRpcmVkLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YzhcIjtcbn1cbmkuaWNvbi50cmFzaC5hbHRlcm5hdGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlZFwiO1xufVxuaS5pY29uLnVzZXIuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYmRcIjtcbn1cbmkuaWNvbi51c2VyLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDdcIjtcbn1cbmkuaWNvbi53aW5kb3cuY2xvc2Uub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxMFwiO1xufVxuaS5pY29uLndpbmRvdy5tYXhpbWl6ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQwXCI7XG59XG5pLmljb24ud2luZG93Lm1pbmltaXplLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDFcIjtcbn1cbmkuaWNvbi53aW5kb3cucmVzdG9yZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQyXCI7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIEJyYW5kIEljb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogTG9hZCAmIERlZmluZSBCcmFuZCBGb250ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG4gIHNyYzogdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL2JyYW5kLWljb25zLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi8uLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvYnJhbmQtaWNvbnMuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybChcIi4uLy4uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9icmFuZC1pY29ucy53b2ZmMlwiKSBmb3JtYXQoJ3dvZmYyJyksIHVybChcIi4uLy4uL25vZGVfbW9kdWxlcy9mb21hbnRpYy11aS1sZXNzL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9icmFuZC1pY29ucy53b2ZmXCIpIGZvcm1hdCgnd29mZicpLCB1cmwoXCIuLi8uLi9ub2RlX21vZHVsZXMvZm9tYW50aWMtdWktbGVzcy90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvYnJhbmQtaWNvbnMudHRmXCIpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbWFudGljLXVpLWxlc3MvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL2JyYW5kLWljb25zLnN2ZyNpY29uc1wiKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLyogSWNvbnMgKi9cbmkuaWNvbi5cXDM1IDAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYWNjZXNzaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2OFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hY2N1c29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2OVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hY3F1aXNpdGlvbnMuaW5jb3Jwb3JhdGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmFmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmFkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3MFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hZG9iZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc3OFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hZHZlcnNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2YVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hZmZpbGlhdGV0aGVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2YlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5haXJibmI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MzRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYWxnb2xpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2Y1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hbGlwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NDJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYW1hem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjcwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmFtYXpvbi5wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MmNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYW1pbGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzZkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmFuZHJvaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2JcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYW5nZWxsaXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmFuZ3J5Y3JlYXRpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNmVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYW5ndWxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyMFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hcHAuc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNmZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYXBwLnN0b3JlLmlvczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3MFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3MVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3OVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hcHBsZS5wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYXJ0c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc3YVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hc3ltbWV0cmlrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzcyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmF0bGFzc2lhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc3YlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hdWRpYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzczXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmF1dG9wcmVmaXhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxY1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hdmlhbmV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzc0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmF2aWF0bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyMVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNzVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYmFuZGNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYmF0dGxlLm5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgzNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5iZWhhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmJlaGFuY2Uuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI1XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmJpbW9iamVjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3OFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5iaXRidWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYml0Y29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3OVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5iaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzdhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmJsYWNrLnRpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3ZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5ibGFja2JlcnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzdiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmJsb2dnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzN2NcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYmxvZ2dlci5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzdkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmJsdWV0b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5M1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5ibHVldG9vdGguYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5NFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5ib290c3RyYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MzZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYnRjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmJ1ZmZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgzN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzdmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmJ1eXNlbGxhZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY2FuYWRpYW4ubWFwbGUubGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc4NVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jYy5hbWF6b24ucGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDJkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNjLmFtZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY2MuYXBwbGUucGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDE2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNjLmRpbmVycy5jbHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNjLmRpc2NvdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNjLmpjYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0YlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jYy5tYXN0ZXJjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNjLnBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jYy5zdHJpcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY2MudmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jZW50ZXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzgwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNlbnRvczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc4OVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jaHJvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjhcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY2hyb21lY2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgzOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jbG91ZHNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzgzXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNsb3Vkc21pdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY2xvdWR2ZXJzaWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzg1XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNvZGVwZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2JcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY29kaWVwaWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY29uZmx1ZW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc4ZFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jb25uZWN0ZGV2ZWxvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jb250YW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3BhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzg4XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyZWF0aXZlLmNvbW1vbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlYXRpdmUuY29tbW9ucy5ieTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRlN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jcmVhdGl2ZS5jb21tb25zLm5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGU4XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMubmMuZXU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZTlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlYXRpdmUuY29tbW9ucy5uYy5qcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRlYVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jcmVhdGl2ZS5jb21tb25zLm5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGViXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMucGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZWNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlYXRpdmUuY29tbW9ucy5wZC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZWRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlYXRpdmUuY29tbW9ucy5yZW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRlZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jcmVhdGl2ZS5jb21tb25zLnNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGVmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMuc2FtcGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZjBcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlYXRpdmUuY29tbW9ucy5zYW1wbGluZy5wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGYxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMuc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZjJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlYXRpdmUuY29tbW9ucy56ZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGYzXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyaXRpY2FsLnJvbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YzlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3NzMzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzY1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jc3MzLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM4YlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jdXR0bGVmaXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzhjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmQuYW5kLmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZC5hbmQuZC5iZXlvbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2Y2FcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZGFzaGN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTBcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZGVsaWNpb3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE1XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRlcGxveWRvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM4ZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5kZXNrcHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzhmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRldjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZjY1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5kZXZpYW50YXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRobDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5MFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5kaWFzcG9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5MVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5kaWdnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRpZ2l0YWwub2NlYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZGlzY29yZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5MlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5kaXNjb3Vyc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZG9jaHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzk0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRvY2tlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5NVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5kcmFmdDJkaWdpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzk2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRyaWJiYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRyaWJiYmxlLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5N1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5kcm9wYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTZiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhOVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5keWFsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZWFybHliaXJkczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5YVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5lYmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGY0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZWxlbWVudG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDMwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZjFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZW1iZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZW1waXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmVudmlyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5OVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5lcmxhbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOWRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZXRoZXJldW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MmVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZXRzeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5ldmVybm90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgzOVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5leHBlZGl0ZWRzc2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyM2VcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZmFjZWJvb2suZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5ZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5mYWNlYm9vay5tZXNzZW5nZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOWZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZmFjZWJvb2suc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDgyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZhbnRhc3kuZmxpZ2h0LmdhbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmRjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZlZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzk3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZlZG9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5OFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5maWdtYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5OVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5maXJlZm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZpcnN0Lm9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmIwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZpcnN0Lm9yZGVyLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUwYVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5maXJzdGRyYWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2ExXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZsaWNrcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2ZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5mbGlwYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NGRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZmx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDE3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZvbnQuYXdlc29tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5mb250LmF3ZXNvbWUuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzVjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZvbnQuYXdlc29tZS5mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDI1XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZvbnRpY29uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4MFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5mb250aWNvbnMuZmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZm9ydC5hd2Vzb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjg2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZvcnQuYXdlc29tZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZm9ydW1iZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZm91cnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4MFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5mcmVlLmNvZGUuY2FtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5mcmVlYnNkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2E0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZ1bGNydW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MGJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ2FsYWN0aWMucmVwdWJsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MGNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ2FsYWN0aWMuc2VuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTBkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdldC5wb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjBcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ2cuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5naXQuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODQxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdpdC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDliXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdpdGh1Yi5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ2l0aHViLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5MlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5naXRrcmFrZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ2l0bGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyNlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5nbGlkZS5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdvZm9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5nb29kcmVhZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYThcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ29vZHJlYWRzLmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ29vZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWEwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdvb2dsZS5kcml2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhYVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5nb29nbGUucGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhYlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5nb29nbGUucGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5nb29nbGUucGx1cy5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ1XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdvb2dsZS5wbHVzLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkNFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5nb29nbGUud2FsbGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVlXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdyYXRpcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdyYXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ3JpcGZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYWNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ3J1bnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYWRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ3VscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5oYWNrZXIubmV3czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkNFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5oYWNrZXIubmV3cy5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYWZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaGFja2VycmFuazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVmN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5oaXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDUyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmhpcmUuYS5oZWxwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjBcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaG9vbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjdcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaG9ybmJpbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OTJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaG90amFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2IxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmhvdXp6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjdjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmh0bWw1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmh1YnNwb3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaW1kYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaW50ZXJjb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YWZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaW50ZXJuZXQuZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaW52aXNpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YjBcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uaW94aG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5pdGNoLmlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODNhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLml0dW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiNFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5pdHVuZXMubm90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5qYXZhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGU0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmplZGkub3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MGVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uamVua2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiNlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5qaXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2IxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmpvZ2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2I3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmpvb21sYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhYVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5qczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5qcy5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2NcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ua2FnZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWZhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmtleWJhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZjVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ua2V5Y2RuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2JhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmtpY2tzdGFydGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2JiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmtpY2tzdGFydGVyLms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYmNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ua29ydnVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDJmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmxhcmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYmRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubGFzdGZtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmxhc3RmbS5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubGVhbnB1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxMlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5sZXNzY3NzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmxpbmVjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2MwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmxpbmtlZGluLmluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmxpbm9kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3Y1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5seWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2MzXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1hZ2VudG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubWFpbGNoaW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTllXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1hbmRhbG9yaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTBmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1hcmtkb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjBmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1hc3RvZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGY2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1heGNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzNlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5tZWRhcHBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2M2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzYVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5tZWRpdW0ubTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5tZWRydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5tZWV0dXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZTBcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubWVnYXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YTNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubWVuZGVsZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YjNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubWljcm9zb2Z0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2NhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjYlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5taXhjbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4OVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5taXp1bmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzY2NcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4NVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5tb25lcm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDBcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubmFwc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkMlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5uZW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjEyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm5pbWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVhOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5ub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDE5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm5vZGUuanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubnBtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Q0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm5zODpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5udXRyaXRpb25peDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkNlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5vZG5va2xhc3NuaWtpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYzXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm9kbm9rbGFzc25pa2kuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm9sZC5yZXB1YmxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxMFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzZFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5vcGVuaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOWJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ub3BlcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ub3B0aW4ubW9uc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzY1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5vc2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MWFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGFnZTQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDdcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGFnZWxpbmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBhbGZlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5wYXRyZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Q5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlZFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5wZW5ueS5hcmNhZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3MDRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGVyaXNjb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2RhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBoYWJyaWNhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2RiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBob2VuaXguZnJhbWV3b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2RjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBob2VuaXguc3F1YWRyb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MTFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGhwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDU3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBpZWQucGlwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGllZC5waXBlci5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYThcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGllZC5waXBlci5oYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZTVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGllZC5waXBlci5wcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGludGVyZXN0LnA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucGludGVyZXN0LnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5wbGF5c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkZlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5wcm9kdWN0Lmh1bnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODhcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucHVzaGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2UxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnB5dGhvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlMlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5xcTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkNlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5xdWluc2NhcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NTlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uci5wcm9qZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGY3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJhc3BiZXJyeS5waTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdiYlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5yYXZlbHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQ5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJlYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJlYWN0ZXVyb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzVkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJlYWRtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5yZWJlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkMFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5yZWRkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucmVkZGl0LmFsaWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjgxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJlZGRpdC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucmVkaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2JjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJlZHJpdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2UzXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJlZHlldGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2OWRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucmVucmVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJlcGx5ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlNlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5yZXNlYXJjaGdhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZjhcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ucmVzb2x2aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2U3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJldjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViMlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5yb2NrZXRjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2U4XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnJvY2tybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZTlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2FmYXJpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNhbGVzZm9yY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4M2JcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2FzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zY2hsaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjhhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNlYXJjaGVuZ2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2ViXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNlbGxjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNlbGxzeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zZXJ2aWNlc3RhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2hpcnRzaW5idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNob3B3YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWI1XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNpbXBseWJ1aWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE1XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNpc3RyaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2l0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxMlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5za2V0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YzZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2t5YXRsYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2t5cGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2VcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2xhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOThcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc2xhY2suaGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlZlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zbGlkZXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNuYXBjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNuYXBjaGF0Lmdob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNuYXBjaGF0LnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhZFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJlXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnNvdXJjZXRyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZDNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc3BlYWthcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zcGVha2VyLmRlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4M2NcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiY1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zcXVhcmVzcGFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViZVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdGFjay5leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4ZFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdGFjay5vdmVyZmxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2Y1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdGFja3BhdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4NDJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc3RheWxpbmtlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdGVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiNlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdGVhbS5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjdcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc3RlYW0uc3ltYm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Y2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnN0aWNrZXIubXVsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdHJhdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjhcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDI5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnN0cmlwZS5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDJhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnN0dWRpb3ZpbmFyaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmOFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdHVtYmxldXBvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhNFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdHVtYmxldXBvbi5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc3VwZXJwb3dlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc3VwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Y5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnN1c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZDZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uc3ltZm9ueTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgzZFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50ZWFtc3BlYWs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZjlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udGVsZWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udGVsZWdyYW0ucGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZmVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udGVuY2VudC53ZWlibzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50aGVtZWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWM2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnRoZW1laXNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiMlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50aGluay5wZWFrczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjczMVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50cmFkZS5mZWRlcmF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTEzXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnRyZWxsbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4MVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50cmlwYWR2aXNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2MlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50dW1ibHI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udHVtYmxyLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3NFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50d2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZThcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50d2l0dGVyLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4MVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50eXBvMzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyYlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi51YmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDAyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnVidW50dTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdkZlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi51aWtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi51bmlyZWdpc3RyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwNFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi51bnRhcHBkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDA1XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnVwczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdlMFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi51c2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODdcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udXNwczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdlMVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi51c3N1bm5haDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi52YWFkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDhcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi52aWFkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udmlhZGVvLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhYVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi52aWJlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwOVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi52aW1lbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwYVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi52aW1lby5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udmltZW8udjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3ZFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi52aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnZudjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwYlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi52dWVqczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxZlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi53YXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODNmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndlZWJseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjY1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi53ZWlibzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4YVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi53ZWl4aW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDdcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ud2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ud2hhdHNhcHAuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDBjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndobWNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDBkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndpa2lwZWRpYS53OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY2XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndpbmRvd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2FcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ud2l4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWNmXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndpemFyZHMub2YudGhlLmNvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzMwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndvbGYucGFjay5iYXR0YWxpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MTRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ud29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTlhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndvcmRwcmVzcy5zaW1wbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ud3BiZWdpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5N1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi53cGV4cGxvcmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRlXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndwZm9ybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOThcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ud3ByZXNzcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlNFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi54Ym94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDEyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnhpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjhcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ueGluZy5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ueS5jb21iaW5hdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjNiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnlhaG9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTllXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnlhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg0MFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi55YW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ueWFuZGV4LmludGVybmF0aW9uYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTRcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ueWFybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdlM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi55ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnlvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmIxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjdcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ueW91dHViZS5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MzFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uemhpaHU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2M2ZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG4vKiBBbGlhc2VzICovXG5pLmljb24uYW1lcmljYW4uZXhwcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5hbWVyaWNhbi5leHByZXNzLmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uYW1leDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5iaXRidWNrZXQuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTcxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmJsdWV0b290aC5hbHRlcm5hdGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5NFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jcmVkaXQuY2FyZC5hbWF6b24ucGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDJkXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyZWRpdC5jYXJkLmFtZXJpY2FuLmV4cHJlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlZGl0LmNhcmQuZGluZXJzLmNsdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlZGl0LmNhcmQuZGlzY292ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlZGl0LmNhcmQuamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyZWRpdC5jYXJkLm1hc3RlcmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uY3JlZGl0LmNhcmQucGF5cGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmNyZWRpdC5jYXJkLnN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5jcmVkaXQuY2FyZC52aXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRpbmVycy5jbHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmRpbmVycy5jbHViLmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGNcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZGlzY292ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZGlzY292ZXIuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5kaXNrLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNjlcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZHJpYmJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3ZFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5lZXJjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRhXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmVudmlyYS5nYWxsZXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk5XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZhY2Vib29rLm9mZmljaWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDgyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmZpdmUuaHVuZHJlZC5waXhlbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24uZ2l0dGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmdvb2dsZS5wbHVzLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5nb29nbGUucGx1cy5vZmZpY2lhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiM1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5qYXBhbi5jcmVkaXQuYnVyZWF1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRiXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLmphcGFuLmNyZWRpdC5idXJlYXUuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0YlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5qY2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubGlua2VkaW4uc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1hc3RlcmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjFcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubWFzdGVyY2FyZC5jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYxXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1pY3Jvc29mdC5lZGdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjgyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLm1zLmVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODJcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ubmV3LnBpZWQucGlwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWVcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ub3B0aW5tb25zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjNjXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBheXBhbC5jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY0XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBpZWQucGlwZXIuaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFlXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnBvY2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2NVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi5zdHJpcGUuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNVwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi50aGVtZS5pc2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmIyXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLnZpc2E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjBcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24udmlzYS5jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYwXCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndlY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkN1wiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi53aWtpcGVkaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjZcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG5pLmljb24ud29yZHByZXNzLmJlZ2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk3XCI7XG4gIGZvbnQtZmFtaWx5OiAnYnJhbmQtaWNvbnMnO1xufVxuaS5pY29uLndvcmRwcmVzcy5mb3JtczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5OFwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi55YzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzYlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi55Y29tYmluYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzYlwiO1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cbmkuaWNvbi55b3V0dWJlLnBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjdcIjtcbiAgZm9udC1mYW1pbHk6ICdicmFuZC1pY29ucyc7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBJbWFnZVxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBJbWFnZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBBdmF0YXIgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNwYWNlZCAqL1xuLyogRmxvYXRlZCAqL1xuLyogU2l6ZSAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBJbWFnZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBBdmF0YXIgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNwYWNlZCAqL1xuLyogRmxvYXRlZCAqL1xuLyogU2l6ZSAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBJbWFnZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuaW1nLnVpLmltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udWkuaW1hZ2Ugc3ZnLFxuLnVpLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuaGlkZGVuLmltYWdlcyxcbi51aS51aS5oaWRkZW4uaW1hZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVpLmhpZGRlbi50cmFuc2l0aW9uLmltYWdlcyxcbi51aS5oaWRkZW4udHJhbnNpdGlvbi5pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udWkuaW1hZ2VzID4gLmhpZGRlbi50cmFuc2l0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udWkuZGlzYWJsZWQuaW1hZ2VzLFxuLnVpLmRpc2FibGVkLmltYWdlIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiAwLjQ1O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbmxpbmVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW5saW5lLmltYWdlLFxuLnVpLmlubGluZS5pbWFnZSBzdmcsXG4udWkuaW5saW5lLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gIFZlcnRpY2FsIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnRvcC5hbGlnbmVkLmltYWdlcyAuaW1hZ2UsXG4udWkudG9wLmFsaWduZWQuaW1hZ2UsXG4udWkudG9wLmFsaWduZWQuaW1hZ2Ugc3ZnLFxuLnVpLnRvcC5hbGlnbmVkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi51aS5taWRkbGUuYWxpZ25lZC5pbWFnZXMgLmltYWdlLFxuLnVpLm1pZGRsZS5hbGlnbmVkLmltYWdlLFxuLnVpLm1pZGRsZS5hbGlnbmVkLmltYWdlIHN2Zyxcbi51aS5taWRkbGUuYWxpZ25lZC5pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4udWkuYm90dG9tLmFsaWduZWQuaW1hZ2VzIC5pbWFnZSxcbi51aS5ib3R0b20uYWxpZ25lZC5pbWFnZSxcbi51aS5ib3R0b20uYWxpZ25lZC5pbWFnZSBzdmcsXG4udWkuYm90dG9tLmFsaWduZWQuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSb3VuZGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnJvdW5kZWQuaW1hZ2VzIC5pbWFnZSxcbi51aS5yb3VuZGVkLmltYWdlLFxuLnVpLnJvdW5kZWQuaW1hZ2VzIC5pbWFnZSA+ICosXG4udWkucm91bmRlZC5pbWFnZSA+ICoge1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXJlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5ib3JkZXJlZC5pbWFnZXMgLmltYWdlLFxuLnVpLmJvcmRlcmVkLmltYWdlcyBpbWcsXG4udWkuYm9yZGVyZWQuaW1hZ2VzIHN2Zyxcbi51aS5ib3JkZXJlZC5pbWFnZSBpbWcsXG4udWkuYm9yZGVyZWQuaW1hZ2Ugc3ZnLFxuaW1nLnVpLmJvcmRlcmVkLmltYWdlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENpcmN1bGFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNpcmN1bGFyLmltYWdlcyxcbi51aS5jaXJjdWxhci5pbWFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udWkuY2lyY3VsYXIuaW1hZ2VzIC5pbWFnZSxcbi51aS5jaXJjdWxhci5pbWFnZSxcbi51aS5jaXJjdWxhci5pbWFnZXMgLmltYWdlID4gKixcbi51aS5jaXJjdWxhci5pbWFnZSA+ICoge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmx1aWQuaW1hZ2VzLFxuLnVpLmZsdWlkLmltYWdlLFxuLnVpLmZsdWlkLmltYWdlcyBpbWcsXG4udWkuZmx1aWQuaW1hZ2VzIHN2Zyxcbi51aS5mbHVpZC5pbWFnZSBzdmcsXG4udWkuZmx1aWQuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEF2YXRhclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5hdmF0YXIuaW1hZ2VzIC5pbWFnZSxcbi51aS5hdmF0YXIuaW1hZ2VzIGltZyxcbi51aS5hdmF0YXIuaW1hZ2VzIHN2Zyxcbi51aS5hdmF0YXIuaW1hZ2UgaW1nLFxuLnVpLmF2YXRhci5pbWFnZSBzdmcsXG4udWkuYXZhdGFyLmltYWdlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU3BhY2VkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuc3BhY2VkLmltYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IHNwYWNlZFwiXS5pbWFnZSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IHNwYWNlZFwiXS5pbWFnZSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZsb2F0ZWQuaW1hZ2UsXG4udWkuZmxvYXRlZC5pbWFnZXMge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbi51aS5yaWdodC5mbG9hdGVkLmltYWdlcyxcbi51aS5yaWdodC5mbG9hdGVkLmltYWdlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cbi51aS5mbG9hdGVkLmltYWdlczpsYXN0LWNoaWxkLFxuLnVpLmZsb2F0ZWQuaW1hZ2U6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4udWkuY2VudGVyZWQuaW1hZ2VzLFxuLnVpLmNlbnRlcmVkLmltYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWluaS5pbWFnZXMgLmltYWdlLFxuLnVpLm1pbmkuaW1hZ2VzIGltZyxcbi51aS5taW5pLmltYWdlcyBzdmcsXG4udWkubWluaS5pbWFnZSB7XG4gIHdpZHRoOiAzNXB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LmltYWdlcyAuaW1hZ2UsXG4udWkudGlueS5pbWFnZXMgaW1nLFxuLnVpLnRpbnkuaW1hZ2VzIHN2Zyxcbi51aS50aW55LmltYWdlIHtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuLnVpLnNtYWxsLmltYWdlcyAuaW1hZ2UsXG4udWkuc21hbGwuaW1hZ2VzIGltZyxcbi51aS5zbWFsbC5pbWFnZXMgc3ZnLFxuLnVpLnNtYWxsLmltYWdlIHtcbiAgd2lkdGg6IDE1MHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5tZWRpdW0uaW1hZ2VzIC5pbWFnZSxcbi51aS5tZWRpdW0uaW1hZ2VzIGltZyxcbi51aS5tZWRpdW0uaW1hZ2VzIHN2Zyxcbi51aS5tZWRpdW0uaW1hZ2Uge1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLmltYWdlcyAuaW1hZ2UsXG4udWkubGFyZ2UuaW1hZ2VzIGltZyxcbi51aS5sYXJnZS5pbWFnZXMgc3ZnLFxuLnVpLmxhcmdlLmltYWdlIHtcbiAgd2lkdGg6IDQ1MHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5iaWcuaW1hZ2VzIC5pbWFnZSxcbi51aS5iaWcuaW1hZ2VzIGltZyxcbi51aS5iaWcuaW1hZ2VzIHN2Zyxcbi51aS5iaWcuaW1hZ2Uge1xuICB3aWR0aDogNjAwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuLnVpLmh1Z2UuaW1hZ2VzIC5pbWFnZSxcbi51aS5odWdlLmltYWdlcyBpbWcsXG4udWkuaHVnZS5pbWFnZXMgc3ZnLFxuLnVpLmh1Z2UuaW1hZ2Uge1xuICB3aWR0aDogODAwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLnVpLm1hc3NpdmUuaW1hZ2VzIC5pbWFnZSxcbi51aS5tYXNzaXZlLmltYWdlcyBpbWcsXG4udWkubWFzc2l2ZS5pbWFnZXMgc3ZnLFxuLnVpLm1hc3NpdmUuaW1hZ2Uge1xuICB3aWR0aDogOTYwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICAgR3JvdXBzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmltYWdlcyB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgbWFyZ2luOiAwIC0wLjI1cmVtIDA7XG59XG4udWkuaW1hZ2VzIC5pbWFnZSxcbi51aS5pbWFnZXMgPiBpbWcsXG4udWkuaW1hZ2VzID4gc3ZnIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMC4yNXJlbSAwLjVyZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gSW5wdXRcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgSW5wdXRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSWNvbiBJbnB1dCAqL1xuLyogQ2lyY3VsYXIgSWNvbiBJbnB1dCAqL1xuLyogTGFiZWxlZCBJbnB1dCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUGxhY2Vob2xkZXIgKi9cbi8qIERvd24gKi9cbi8qIEZvY3VzICovXG4vKiBFcnJvciAqL1xuLyogTG9hZGVyICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIElucHV0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEljb24gSW5wdXQgKi9cbi8qIENpcmN1bGFyIEljb24gSW5wdXQgKi9cbi8qIExhYmVsZWQgSW5wdXQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBsYWNlaG9sZGVyICovXG4vKiBEb3duICovXG4vKiBGb2N1cyAqL1xuLyogRXJyb3IgKi9cbi8qIExvYWRlciAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIElucHV0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkuaW5wdXQgPiBpbnB1dCB7XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMS4yMTQyODU3MWVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBwYWRkaW5nOiAwLjY3ODU3MTQzZW0gMWVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UsIGJvcmRlci1jb2xvciAwLjFzIGVhc2U7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQbGFjZWhvbGRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIGJyb3dzZXJzIHJlcXVpcmUgdGhlc2UgcnVsZXMgc2VwYXJhdGUgKi9cbi51aS5pbnB1dCA+IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTkxLCAxOTEsIDE5MSwgMC44Nyk7XG59XG4udWkuaW5wdXQgPiBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDE5MSwgMTkxLCAxOTEsIDAuODcpO1xufVxuLnVpLmlucHV0ID4gaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTkxLCAxOTEsIDE5MSwgMC44Nyk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXNhYmxlZC5pbnB1dCxcbi51aS5pbnB1dDpub3QoLmRpc2FibGVkKSBpbnB1dFtkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjQ1O1xufVxuLnVpLmRpc2FibGVkLmlucHV0ID4gaW5wdXQsXG4udWkuaW5wdXQ6bm90KC5kaXNhYmxlZCkgaW5wdXRbZGlzYWJsZWRdIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnB1dCA+IGlucHV0OmFjdGl2ZSxcbi51aS5pbnB1dC5kb3duIGlucHV0IHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJhY2tncm91bmQ6ICNGQUZBRkE7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubG9hZGluZy5sb2FkaW5nLmlucHV0ID4gaS5pY29uOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTAuNjQyODU3MTRlbSAwIDAgLTAuNjQyODU3MTRlbTtcbiAgd2lkdGg6IDEuMjg1NzE0MjllbTtcbiAgaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkubG9hZGluZy5sb2FkaW5nLmlucHV0ID4gaS5pY29uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NTcxNGVtIDAgMCAtMC42NDI4NTcxNGVtO1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgMC42cyBpbmZpbml0ZSBsaW5lYXI7XG4gIGJvcmRlcjogMC4yZW0gc29saWQgIzc2NzY3NjtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmlucHV0LmZvY3VzID4gaW5wdXQsXG4udWkuaW5wdXQgPiBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzg1QjdEOTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS5pbnB1dC5mb2N1cyA+IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuLnVpLmlucHV0ID4gaW5wdXQ6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxMTUsIDExNSwgMTE1LCAwLjg3KTtcbn1cbi51aS5pbnB1dC5mb2N1cyA+IGlucHV0OjotbW96LXBsYWNlaG9sZGVyLFxuLnVpLmlucHV0ID4gaW5wdXQ6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxMTUsIDExNSwgMTE1LCAwLjg3KTtcbn1cbi51aS5pbnB1dC5mb2N1cyA+IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbi51aS5pbnB1dCA+IGlucHV0OmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDExNSwgMTE1LCAxMTUsIDAuODcpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjZGNjtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xuICBjb2xvcjogIzlGM0EzODtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIEVycm9yIFBsYWNlaG9sZGVyICovXG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTdiZGJjO1xufVxuLnVpLmlucHV0LmVycm9yID4gaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2U3YmRiYztcbn1cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTdiZGJjICFpbXBvcnRhbnQ7XG59XG4vKiBGb2N1c2VkIEVycm9yIFBsYWNlaG9sZGVyICovXG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZGE5Nzk2O1xufVxuLnVpLmlucHV0LmVycm9yID4gaW5wdXQ6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2RhOTc5Njtcbn1cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0OmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZGE5Nzk2ICFpbXBvcnRhbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVHJhbnNwYXJlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkudHJhbnNwYXJlbnQuaW5wdXQgPiB0ZXh0YXJlYSxcbi51aS50cmFuc3BhcmVudC5pbnB1dCA+IGlucHV0IHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbi5maWVsZCAudWkudHJhbnNwYXJlbnQuaW5wdXQgPiB0ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDAuNjc4NTcxNDNlbSAxZW07XG59XG4vKiBUcmFuc3BhcmVudCBJY29uICovXG46bm90KC5maWVsZCkgPiAudWkudHJhbnNwYXJlbnQuaWNvbi5pbnB1dCA+IGkuaWNvbiB7XG4gIHdpZHRoOiAxLjFlbTtcbn1cbjpub3QoLmZpZWxkKSA+IC51aS50cmFuc3BhcmVudC5pY29uLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDJlbTtcbn1cbjpub3QoLmZpZWxkKSA+IC51aS50cmFuc3BhcmVudFtjbGFzcyo9XCJsZWZ0IGljb25cIl0uaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogMmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLyogVHJhbnNwYXJlbnQgSW52ZXJ0ZWQgKi9cbi51aS50cmFuc3BhcmVudC5pbnZlcnRlZC5pbnB1dCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gdGV4dGFyZWEsXG4udWkudWkudHJhbnNwYXJlbnQuaW52ZXJ0ZWQuaW5wdXQgPiBpbnB1dCB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaWNvbi5pbnB1dCA+IGkuaWNvbiB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDIuNjcxNDI4NTdlbTtcbiAgb3BhY2l0eTogMC41O1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cbi51aS5pY29uLmlucHV0ID4gaS5pY29uOm5vdCgubGluaykge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi51aS51aS5pY29uLmlucHV0ID4gdGV4dGFyZWEsXG4udWkudWkuaWNvbi5pbnB1dCA+IGlucHV0IHtcbiAgcGFkZGluZy1yaWdodDogMi42NzE0Mjg1N2VtO1xufVxuLnVpLmljb24uaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLmljb24uaW5wdXQgPiBpLmljb246YWZ0ZXIge1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAtMC41ZW07XG59XG4udWkuaWNvbi5pbnB1dCA+IGkubGluay5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnVpLmljb24uaW5wdXQgPiBpLmNpcmN1bGFyLmljb24ge1xuICB0b3A6IDAuMzVlbTtcbiAgcmlnaHQ6IDAuNWVtO1xufVxuLyogTGVmdCBJY29uIElucHV0ICovXG4udWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaS5pY29uIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwIDAgMC4yODU3MTQyOXJlbTtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGljb25cIl0uaW5wdXQgPiBpLmNpcmN1bGFyLmljb24ge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMC41ZW07XG59XG4udWkudWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gdGV4dGFyZWEsXG4udWkudWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IDIuNjcxNDI4NTdlbTtcbiAgcGFkZGluZy1yaWdodDogMWVtO1xufVxuLyogRm9jdXMgKi9cbi51aS5pY29uLmlucHV0ID4gdGV4dGFyZWE6Zm9jdXMgfiBpLmljb24sXG4udWkuaWNvbi5pbnB1dCA+IGlucHV0OmZvY3VzIH4gaS5pY29uIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGFiZWxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEFkamFjZW50IExhYmVsICovXG4udWkubGFiZWxlZC5pbnB1dCA+IC5sYWJlbCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLnVpLmxhYmVsZWQuaW5wdXQgPiAubGFiZWw6bm90KC5jb3JuZXIpIHtcbiAgcGFkZGluZy10b3A6IDAuNzg1NzE0MjllbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzg1NzE0MjllbTtcbn1cbi8qIFJlZ3VsYXIgTGFiZWwgb24gTGVmdCAqL1xuLnVpLmxhYmVsZWQuaW5wdXQ6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgLmxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLnVpLmxhYmVsZWQuaW5wdXQ6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgLmxhYmVsOmZpcnN0LWNoaWxkICsgaW5wdXQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4udWkubGFiZWxlZC5pbnB1dDpub3QoW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdKSAubGFiZWw6Zmlyc3QtY2hpbGQgKyBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjODVCN0Q5O1xufVxuLyogUmVndWxhciBMYWJlbCBvbiBSaWdodCAqL1xuLnVpW2NsYXNzKj1cInJpZ2h0IGxhYmVsZWRcIl0uaW5wdXQgPiBpbnB1dCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdLmlucHV0ID4gaW5wdXQgKyAubGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IGxhYmVsZWRcIl0uaW5wdXQgPiBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzg1QjdEOSAhaW1wb3J0YW50O1xufVxuLyogQ29ybmVyIExhYmVsICovXG4udWkubGFiZWxlZC5pbnB1dCAuY29ybmVyLmxhYmVsIHtcbiAgdG9wOiAxcHg7XG4gIHJpZ2h0OiAxcHg7XG4gIGZvbnQtc2l6ZTogMC42NDI4NTcxNGVtO1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLyogU3BhY2luZyB3aXRoIGNvcm5lciBsYWJlbCAqL1xuLnVpW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdOm5vdChbY2xhc3MqPVwibGVmdCBjb3JuZXIgbGFiZWxlZFwiXSkubGFiZWxlZC5pbnB1dCA+IHRleHRhcmVhLFxuLnVpW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdOm5vdChbY2xhc3MqPVwibGVmdCBjb3JuZXIgbGFiZWxlZFwiXSkubGFiZWxlZC5pbnB1dCA+IGlucHV0IHtcbiAgcGFkZGluZy1yaWdodDogMi41ZW0gIWltcG9ydGFudDtcbn1cbi51aVtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXS5pY29uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBjb3JuZXIgbGFiZWxlZFwiXSkgPiB0ZXh0YXJlYSxcbi51aVtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXS5pY29uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBjb3JuZXIgbGFiZWxlZFwiXSkgPiBpbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMuMjVlbSAhaW1wb3J0YW50O1xufVxuLnVpW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdLmljb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdKSA+IC5pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1ZW07XG59XG4vKiBMZWZ0IExhYmVsZWQgKi9cbi51aVtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdLmxhYmVsZWQuaW5wdXQgPiB0ZXh0YXJlYSxcbi51aVtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdLmxhYmVsZWQuaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogMi41ZW0gIWltcG9ydGFudDtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdLmljb24uaW5wdXQgPiB0ZXh0YXJlYSxcbi51aVtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdLmljb24uaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogMy4yNWVtICFpbXBvcnRhbnQ7XG59XG4udWlbY2xhc3MqPVwibGVmdCBjb3JuZXIgbGFiZWxlZFwiXS5pY29uLmlucHV0ID4gLmljb24ge1xuICBtYXJnaW4tbGVmdDogMS4yNWVtO1xufVxuLnVpLmljb24uaW5wdXQgPiB0ZXh0YXJlYSB+IC5pY29uIHtcbiAgaGVpZ2h0OiAzZW07XG59XG46bm90KC5maWVsZCkgPiAudWkudHJhbnNwYXJlbnQuaWNvbi5pbnB1dCA+IHRleHRhcmVhIH4gLmljb24ge1xuICBoZWlnaHQ6IDEuM2VtO1xufVxuLyogQ29ybmVyIExhYmVsIFBvc2l0aW9uICAqL1xuLnVpLmlucHV0ID4gLnVpLmNvcm5lci5sYWJlbCB7XG4gIHRvcDogMXB4O1xuICByaWdodDogMXB4O1xufVxuLnVpLmlucHV0ID4gLnVpLmxlZnQuY29ybmVyLmxhYmVsIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFweDtcbn1cbi8qIExhYmVsZWQgYW5kIGFjdGlvbiBpbnB1dCBlcnJvciAqL1xuLnVpLmZvcm0gPiAuZmllbGQuZXJyb3IgPiAudWkuYWN0aW9uLmlucHV0ID4gLnVpLmJ1dHRvbixcbi51aS5mb3JtID4gLmZpZWxkLmVycm9yID4gLnVpLmxhYmVsZWQuaW5wdXQ6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgPiAudWkubGFiZWwsXG4udWkuYWN0aW9uLmlucHV0LmVycm9yID4gLnVpLmJ1dHRvbixcbi51aS5sYWJlbGVkLmlucHV0LmVycm9yOm5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pID4gLnVpLmxhYmVsIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFMEI0QjQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTBCNEI0O1xufVxuLnVpLmZvcm0gPiAuZmllbGQuZXJyb3IgPiAudWkubGVmdC5hY3Rpb24uaW5wdXQgPiAudWkuYnV0dG9uLFxuLnVpLmZvcm0gPiAuZmllbGQuZXJyb3IgPiAudWkubGFiZWxlZC5pbnB1dDpub3QoLnJpZ2h0KTpub3QoW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdKSA+IC51aS5sYWJlbCxcbi51aS5sZWZ0LmFjdGlvbi5pbnB1dC5lcnJvciA+IC51aS5idXR0b24sXG4udWkubGFiZWxlZC5pbnB1dC5lcnJvcjpub3QoLnJpZ2h0KTpub3QoW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdKSA+IC51aS5sYWJlbCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0UwQjRCNDtcbn1cbi51aS5mb3JtID4gLmZpZWxkLmVycm9yID4gLnVpLmFjdGlvbi5pbnB1dDpub3QoLmxlZnQpID4gaW5wdXQgKyAudWkuYnV0dG9uLFxuLnVpLmZvcm0gPiAuZmllbGQuZXJyb3IgPiAudWkucmlnaHQubGFiZWxlZC5pbnB1dDpub3QoW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdKSA+IGlucHV0ICsgLnVpLmxhYmVsLFxuLnVpLmFjdGlvbi5pbnB1dC5lcnJvcjpub3QoLmxlZnQpID4gaW5wdXQgKyAudWkuYnV0dG9uLFxuLnVpLnJpZ2h0LmxhYmVsZWQuaW5wdXQuZXJyb3I6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgPiBpbnB1dCArIC51aS5sYWJlbCB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNFMEI0QjQ7XG59XG4udWkuZm9ybSA+IC5maWVsZC5lcnJvciA+IC51aS5yaWdodC5sYWJlbGVkLmlucHV0Om5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pID4gLnVpLmxhYmVsOmZpcnN0LWNoaWxkLFxuLnVpLnJpZ2h0LmxhYmVsZWQuaW5wdXQuZXJyb3I6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgPiAudWkubGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNFMEI0QjQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5hY3Rpb24uaW5wdXQgPiAuYnV0dG9uLFxuLnVpLmFjdGlvbi5pbnB1dCA+IC5idXR0b25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleDogMCAwIGF1dG87XG59XG4udWkuYWN0aW9uLmlucHV0ID4gLmJ1dHRvbixcbi51aS5hY3Rpb24uaW5wdXQgPiAuYnV0dG9ucyA+IC5idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMC43ODU3MTQyOWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43ODU3MTQyOWVtO1xuICBtYXJnaW46IDA7XG59XG4vKiBCdXR0b24gb24gUmlnaHQgKi9cbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiBpbnB1dCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCksXG4udWkuYWN0aW9uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0pID4gLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuYnV0dG9uczpub3QoOmZpcnN0LWNoaWxkKSA+IC5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLnVpLmFjdGlvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdKSA+IC5kcm9wZG93bjpsYXN0LWNoaWxkLFxuLnVpLmFjdGlvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdKSA+IC5idXR0b246bGFzdC1jaGlsZCxcbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuYnV0dG9uczpsYXN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDA7XG59XG4vKiBJbnB1dCBGb2N1cyAqL1xuLnVpLmFjdGlvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdKSA+IGlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjODVCN0Q5ICFpbXBvcnRhbnQ7XG59XG4vKiBCdXR0b24gb24gTGVmdCAqL1xuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gaW5wdXQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4udWlbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0uaW5wdXQgPiAuZHJvcGRvd24sXG4udWlbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0uaW5wdXQgPiAuYnV0dG9uLFxuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IC5kcm9wZG93bjpmaXJzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IC5idXR0b246Zmlyc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0uaW5wdXQgPiAuYnV0dG9uczpmaXJzdC1jaGlsZCA+IC5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAgMCAwLjI4NTcxNDI5cmVtO1xufVxuLyogSW5wdXQgRm9jdXMgKi9cbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IGlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICM4NUI3RDkgIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFN0YW5kYXJkICovXG4udWkuaW52ZXJ0ZWQuaW5wdXQgPiBpbnB1dCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmx1aWQuaW5wdXQge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLnVpLmZsdWlkLmlucHV0ID4gaW5wdXQge1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1pbmkuaW5wdXQge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjllbTtcbn1cbi51aS50aW55LmlucHV0IHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2ZW07XG59XG4udWkuc21hbGwuaW5wdXQge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cbi51aS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLnVpLmxhcmdlLmlucHV0IHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0ZW07XG59XG4udWkuYmlnLmlucHV0IHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG59XG4udWkuaHVnZS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M2VtO1xufVxuLnVpLm1hc3NpdmUuaW5wdXQge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBMYWJlbFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTGFiZWxcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBtZWRpdW0gaXMgbm90IEBlbVNpemUgY3VzdG9tIHZhbHVlIHJlcXVpcmVkICovXG4vKiBHcm91cCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhcnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMaW5rICovXG4vKiBJY29uICovXG4vKiBJbWFnZSAqL1xuLyogRGV0YWlsICovXG4vKiBEZWxldGUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW1hZ2UgTGFiZWwgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEhvdmVyICovXG4vKiBBY3RpdmUgKi9cbi8qIEFjdGl2ZSBIb3ZlciAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBCYXNpYyAqL1xuLyogVGFnICovXG4vKiBBdm9pZHMgZXJyb3Igd2l0aCBiYWNrZ3JvdW5kOiBpbmhlcml0OyBvbiBhbmltYXRpb24gKi9cbi8qIFJpYmJvbiAqL1xuLyogUm91bmRpbmcgT2Zmc2V0IG9uIFRyaWFuZ2xlICovXG4vKiBSb3VuZGluZyBPZmZzZXQgb24gVHJpYW5nbGUgKi9cbi8qIEludmVydGVkICovXG4vKiBDb2xvcnMgKi9cbi8qIEF0dGFjaGVkICovXG4vKiBDb3JuZXIgKi9cbi8qIENvcm5lciBUZXh0ICovXG4vKiBIb3Jpem9udGFsICovXG4vKiBDaXJjdWxhciBQYWRkaW5nICovXG4vKiBQb2ludGluZyAqL1xuLyogQXZvaWRzIGVycm9yIHdpdGggYmFja2dyb3VuZDogaW5oZXJpdDsgb24gYW5pbWF0aW9uICovXG4vKiBCYXNpYyBQb2ludGluZyAqL1xuLyogRmxvYXRpbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcm91cFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2l6aW5nICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBMYWJlbFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIG1lZGl1bSBpcyBub3QgQGVtU2l6ZSBjdXN0b20gdmFsdWUgcmVxdWlyZWQgKi9cbi8qIEdyb3VwICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFydHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExpbmsgKi9cbi8qIEljb24gKi9cbi8qIEltYWdlICovXG4vKiBEZXRhaWwgKi9cbi8qIERlbGV0ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbWFnZSBMYWJlbCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSG92ZXIgKi9cbi8qIEFjdGl2ZSAqL1xuLyogQWN0aXZlIEhvdmVyICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEJhc2ljICovXG4vKiBUYWcgKi9cbi8qIEF2b2lkcyBlcnJvciB3aXRoIGJhY2tncm91bmQ6IGluaGVyaXQ7IG9uIGFuaW1hdGlvbiAqL1xuLyogUmliYm9uICovXG4vKiBSb3VuZGluZyBPZmZzZXQgb24gVHJpYW5nbGUgKi9cbi8qIFJvdW5kaW5nIE9mZnNldCBvbiBUcmlhbmdsZSAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIENvbG9ycyAqL1xuLyogQXR0YWNoZWQgKi9cbi8qIENvcm5lciAqL1xuLyogQ29ybmVyIFRleHQgKi9cbi8qIEhvcml6b250YWwgKi9cbi8qIENpcmN1bGFyIFBhZGRpbmcgKi9cbi8qIFBvaW50aW5nICovXG4vKiBBdm9pZHMgZXJyb3Igd2l0aCBiYWNrZ3JvdW5kOiBpbmhlcml0OyBvbiBhbmltYXRpb24gKi9cbi8qIEJhc2ljIFBvaW50aW5nICovXG4vKiBGbG9hdGluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyb3VwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTaXppbmcgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBMYWJlbFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luOiAwIDAuMTQyODU3MTRlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U4RThFODtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgcGFkZGluZzogMC41ODMzZW0gMC44MzNlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcyBlYXNlO1xufVxuLnVpLmxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4udWkubGFiZWw6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi8qIExpbmsgKi9cbmEudWkubGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4vKiBJbnNpZGUgTGluayAqL1xuLnVpLmxhYmVsID4gYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogMC4xcyBvcGFjaXR5IGVhc2U7XG59XG4udWkubGFiZWwgPiBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qIEltYWdlICovXG4udWkubGFiZWwgPiBpbWcge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDIuMTY2NmVtO1xufVxuLyogSWNvbiAqL1xuLnVpLmxlZnQuaWNvbi5sYWJlbCA+IC5pY29uLFxuLnVpLmxhYmVsID4gLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwIDAuNzVlbSAwIDA7XG59XG4vKiBEZXRhaWwgKi9cbi51aS5sYWJlbCA+IC5kZXRhaWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICBvcGFjaXR5OiAwLjg7XG59XG4udWkubGFiZWwgPiAuZGV0YWlsIC5pY29uIHtcbiAgbWFyZ2luOiAwIDAuMjVlbSAwIDA7XG59XG4vKiBSZW1vdmFibGUgbGFiZWwgKi9cbi51aS5sYWJlbCA+IC5jbG9zZS5pY29uLFxuLnVpLmxhYmVsID4gLmRlbGV0ZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbiAgb3BhY2l0eTogMC41O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZTtcbn1cbi51aS5sYWJlbCA+IC5jbG9zZS5pY29uOmhvdmVyLFxuLnVpLmxhYmVsID4gLmRlbGV0ZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qIEJhY2t3YXJkIGNvbXBhdGlibGUgcG9zaXRpb25pbmcgKi9cbi51aS5sYWJlbC5sZWZ0Lmljb24gPiAuY2xvc2UuaWNvbixcbi51aS5sYWJlbC5sZWZ0Lmljb24gPiAuZGVsZXRlLmljb24ge1xuICBtYXJnaW46IDAgMC41ZW0gMCAwO1xufVxuLnVpLmxhYmVsOm5vdCguaWNvbikgPiAuY2xvc2UuaWNvbixcbi51aS5sYWJlbDpub3QoLmljb24pID4gLmRlbGV0ZS5pY29uIHtcbiAgbWFyZ2luOiAwIDAgMCAwLjVlbTtcbn1cbi8qIExhYmVsIGZvciBvbmx5IGFuIGljb24gKi9cbi51aS5pY29uLmxhYmVsID4gLmljb24ge1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi8qIFJpZ2h0IFNpZGUgSWNvbiAqL1xuLnVpLnJpZ2h0Lmljb24ubGFiZWwgPiAuaWNvbiB7XG4gIG1hcmdpbjogMCAwIDAgMC43NWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgR3JvdXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sYWJlbHMgPiAubGFiZWwge1xuICBtYXJnaW46IDAgMC41ZW0gMC41ZW0gMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaGVhZGVyID4gLnVpLmxhYmVsIHtcbiAgbWFyZ2luLXRvcDogLTAuMjkxNjVlbTtcbn1cbi8qIFJlbW92ZSBib3JkZXIgcmFkaXVzIG9uIGF0dGFjaGVkIHNlZ21lbnQgKi9cbi51aS5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLnRvcC5sZWZ0LmF0dGFjaGVkLmxhYmVsLFxuLnVpLmJvdHRvbS5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLnRvcC5sZWZ0LmF0dGFjaGVkLmxhYmVsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbn1cbi51aS5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLnRvcC5yaWdodC5hdHRhY2hlZC5sYWJlbCxcbi51aS5ib3R0b20uYXR0YWNoZWQuc2VnbWVudCA+IC51aS50b3AucmlnaHQuYXR0YWNoZWQubGFiZWwge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbi51aS50b3AuYXR0YWNoZWQuc2VnbWVudCA+IC51aS5ib3R0b20ubGVmdC5hdHRhY2hlZC5sYWJlbCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4udWkudG9wLmF0dGFjaGVkLnNlZ21lbnQgPiAudWkuYm90dG9tLnJpZ2h0LmF0dGFjaGVkLmxhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4vKiBQYWRkaW5nIG9uIG5leHQgY29udGVudCBhZnRlciBhIGxhYmVsICovXG4udWkudG9wLmF0dGFjaGVkLmxhYmVsIH4gLnVpLmJvdHRvbS5hdHRhY2hlZC5sYWJlbCArIDpub3QoLmF0dGFjaGVkKSxcbi51aS50b3AuYXR0YWNoZWQubGFiZWwgKyA6bm90KC5hdHRhY2hlZCkge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG59XG4udWkuYm90dG9tLmF0dGFjaGVkLmxhYmVsIH4gOmxhc3QtY2hpbGQ6bm90KC5hdHRhY2hlZCkge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmltYWdlLmxhYmVsIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWF4LXdpZHRoOiA5OTk5cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNFOEU4RTg7XG4gIHBhZGRpbmc6IDAuNTgzM2VtIDAuODMzZW0gMC41ODMzZW0gMC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkuaW1hZ2UubGFiZWwgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBoZWlnaHQ6IDIuMTY2NmVtO1xuICBtYXJnaW46IC0wLjU4MzNlbSAwLjVlbSAtMC41ODMzZW0gLTAuNWVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAgMCAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLmltYWdlLmxhYmVsIC5kZXRhaWwge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIG1hcmdpbjogLTAuNTgzM2VtIC0wLjgzM2VtIC0wLjU4MzNlbSAwLjVlbTtcbiAgcGFkZGluZzogMC41ODMzZW0gMC44MzNlbTtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgVGFnXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkudGFnLmxhYmVscyAubGFiZWwsXG4udWkudGFnLmxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cbi51aS50YWcubGFiZWxzIC5sYWJlbDpiZWZvcmUsXG4udWkudGFnLmxhYmVsOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxMDAlO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgd2lkdGg6IDEuNTZlbTtcbiAgaGVpZ2h0OiAxLjU2ZW07XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG4udWkudGFnLmxhYmVscyAubGFiZWw6YWZ0ZXIsXG4udWkudGFnLmxhYmVsOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IC0wLjI1ZW07XG4gIG1hcmdpbi10b3A6IC0wLjI1ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHdpZHRoOiAwLjVlbTtcbiAgaGVpZ2h0OiAwLjVlbTtcbiAgYm94LXNoYWRvdzogMCAtMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuLnVpLmJhc2ljLnRhZy5sYWJlbHMgLmxhYmVsOmJlZm9yZSxcbi51aS5iYXNpYy50YWcubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMXB4O1xuICBib3JkZXItc3R5bGU6IGluaGVyaXQ7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyAxcHgpO1xufVxuLnVpLmJhc2ljLnRhZy5sYWJlbHMgLmxhYmVsOmFmdGVyLFxuLnVpLmJhc2ljLnRhZy5sYWJlbDphZnRlciB7XG4gIGJveC1zaGFkb3c6IDAgLTFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDb3JuZXIgTGFiZWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jb3JuZXIubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItY29sb3I6ICNFOEU4RTg7XG4gIHdpZHRoOiA0ZW07XG4gIGhlaWdodDogNGVtO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xufVxuLyogSWNvbiBMYWJlbCAqL1xuLnVpLmNvcm5lci5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4udWkuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNGVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA0ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IGluaGVyaXQ7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjFzIGVhc2U7XG59XG4udWkuY29ybmVyLmxhYmVsIC5pY29uIHtcbiAgY3Vyc29yOiBpbmhlcml0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC42NDI4NTcxNGVtO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMC41NzE0Mjg1N2VtO1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbiAgbWFyZ2luOiAwO1xufVxuLyogTGVmdCBDb3JuZXIgKi9cbi51aS5sZWZ0LmNvcm5lci5sYWJlbCxcbi51aS5sZWZ0LmNvcm5lci5sYWJlbDphZnRlciB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLnVpLmxlZnQuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgYm9yZGVyLXRvcDogNGVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDRlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtY29sb3I6IGluaGVyaXQ7XG59XG4udWkubGVmdC5jb3JuZXIubGFiZWwgLmljb24ge1xuICBsZWZ0OiAwLjU3MTQyODU3ZW07XG4gIHJpZ2h0OiBhdXRvO1xufVxuLyogU2VnbWVudCAqL1xuLnVpLnNlZ21lbnQgPiAudWkuY29ybmVyLmxhYmVsIHtcbiAgdG9wOiAtMXB4O1xuICByaWdodDogLTFweDtcbn1cbi51aS5zZWdtZW50ID4gLnVpLmxlZnQuY29ybmVyLmxhYmVsIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IC0xcHg7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBSaWJib25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5yaWJib24ubGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLnVpLnJpYmJvbi5sYWJlbDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMCAxLjJlbSAxLjJlbSAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IGluaGVyaXQ7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG59XG4vKiBQb3NpdGlvbmluZyAqL1xuLnVpLnJpYmJvbi5sYWJlbCB7XG4gIGxlZnQ6IGNhbGMoLTFyZW0gLSAxLjJlbSk7XG4gIG1hcmdpbi1yaWdodDogLTEuMmVtO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMXJlbSArIDEuMmVtKTtcbiAgcGFkZGluZy1yaWdodDogMS4yZW07XG59XG4udWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgbGVmdDogY2FsYygxMDAlICsgMXJlbSArIDEuMmVtKTtcbiAgcGFkZGluZy1sZWZ0OiAxLjJlbTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxcmVtICsgMS4yZW0pO1xufVxuLnVpLmJhc2ljLnJpYmJvbi5sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNTgzM2VtIC0gMXB4KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC41ODMzZW0gLSAxcHgpO1xufVxuLnVpLmJhc2ljLnJpYmJvbi5sYWJlbDpub3QoW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXSkge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMXJlbSArIDEuMmVtIC0gMXB4KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjJlbSAtIDFweCk7XG59XG4udWkuYmFzaWNbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDEuMmVtIC0gMXB4KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxcmVtICsgMS4yZW0gLSAxcHgpO1xufVxuLnVpLmJhc2ljLnJpYmJvbi5sYWJlbDo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoMTAwJSArIDFweCk7XG59XG4udWkuYmFzaWMucmliYm9uLmxhYmVsOm5vdChbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdKTo6YWZ0ZXIge1xuICBsZWZ0OiAtMXB4O1xufVxuLnVpLmJhc2ljW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXS5sYWJlbDo6YWZ0ZXIge1xuICByaWdodDogLTFweDtcbn1cbi8qIFJpZ2h0IFJpYmJvbiAqL1xuLnVpW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXS5sYWJlbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMCAwIDAuMjg1NzE0MjlyZW07XG59XG4udWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsOmFmdGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMS4yZW0gMS4yZW0gMCAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0O1xufVxuLyogSW5zaWRlIFRhYmxlICovXG4udWkuaW1hZ2UgPiAucmliYm9uLmxhYmVsLFxuLnVpLmNhcmQgLmltYWdlID4gLnJpYmJvbi5sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcmVtO1xufVxuLnVpLmNhcmQgLmltYWdlID4gLnVpLnJpYmJvbi5sYWJlbCxcbi51aS5pbWFnZSA+IC51aS5yaWJib24ubGFiZWwge1xuICBsZWZ0OiBjYWxjKDAuMDVyZW0gLSAxLjJlbSk7XG59XG4udWkuY2FyZCAuaW1hZ2UgPiAudWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsLFxuLnVpLmltYWdlID4gLnVpW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXS5sYWJlbCB7XG4gIGxlZnQ6IGNhbGMoMTAwJSArIC0wLjA1cmVtICsgMS4yZW0pO1xuICBwYWRkaW5nLWxlZnQ6IDAuODMzZW07XG59XG4vKiBJbnNpZGUgVGFibGUgKi9cbi51aS50YWJsZSB0ZCA+IC51aS5yaWJib24ubGFiZWwge1xuICBsZWZ0OiBjYWxjKC0xZW0gLSAxLjJlbSk7XG59XG4udWkudGFibGUgdGQgPiAudWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgbGVmdDogY2FsYygxMDAlICsgMWVtICsgMS4yZW0pO1xuICBwYWRkaW5nLWxlZnQ6IDAuODMzZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmxhYmVsLFxuLnVpLmF0dGFjaGVkLmxhYmVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDAuNzVlbSAxZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjE0Mjg1NzFyZW0gMC4yMTQyODU3MXJlbSAwIDA7XG59XG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjIxNDI4NTcxcmVtIDAuMjE0Mjg1NzFyZW07XG59XG4udWlbY2xhc3MqPVwidG9wIGxlZnQgYXR0YWNoZWRcIl0ubGFiZWwge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwLjIxNDI4NTcxcmVtIDAgMC4yODU3MTQyOXJlbSAwO1xufVxuLnVpW2NsYXNzKj1cInRvcCByaWdodCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIHdpZHRoOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjIxNDI4NTcxcmVtIDAgMC4yODU3MTQyOXJlbTtcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gbGVmdCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIHdpZHRoOiBhdXRvO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAgMC4yMTQyODU3MXJlbTtcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gcmlnaHQgYXR0YWNoZWRcIl0ubGFiZWwge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAgMC4yMTQyODU3MXJlbSAwO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubGFiZWwuZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwO1xuICBib3JkZXItY29sb3I6ICNFMEUwRTA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG4udWkubGFiZWxzIGEubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5sYWJlbDpob3ZlcjpiZWZvcmUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmFjdGl2ZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEMEQwRDA7XG4gIGJvcmRlci1jb2xvcjogI0QwRDBEMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4udWkuYWN0aXZlLmxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEMEQwRDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZSBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmxhYmVscyBhLmFjdGl2ZS5sYWJlbDpob3ZlcixcbmEudWkuYWN0aXZlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4QzhDODtcbiAgYm9yZGVyLWNvbG9yOiAjQzhDOEM4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cbi51aS5sYWJlbHMgYS5hY3RpdmUubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5hY3RpdmUubGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4QzhDODtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZpc2libGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sYWJlbHMudmlzaWJsZSAubGFiZWwsXG4udWkubGFiZWwudmlzaWJsZTpub3QoLmRyb3Bkb3duKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBIaWRkZW5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sYWJlbHMuaGlkZGVuIC5sYWJlbCxcbi51aS5sYWJlbC5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuYmFzaWMubGFiZWxzIC5sYWJlbCxcbi51aS5iYXNpYy5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4vKiBMaW5rICovXG4udWkuYmFzaWMubGFiZWxzIGEubGFiZWw6aG92ZXIsXG5hLnVpLmJhc2ljLmxhYmVsOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGNvbG9yOiAjMWU3MGJmO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyogUG9pbnRpbmcgKi9cbi51aS5iYXNpYy5wb2ludGluZy5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmxhYmVsLmZsdWlkLFxuLnVpLmZsdWlkLmxhYmVscyA+IC5sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgLmxhYmVsLFxuLnVpLmludmVydGVkLmxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I1YjViNTtcbn1cbi51aS5pbnZlcnRlZC5jb3JuZXIubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNiNWI1YjU7XG59XG4udWkuaW52ZXJ0ZWQuY29ybmVyLmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjRThFOEU4O1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWwsXG4udWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWw6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbn1cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbDpob3ZlciB7XG4gIGNvbG9yOiAjNDE4M0M0O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucHJpbWFyeS5sYWJlbHMgLmxhYmVsLFxuLnVpLnVpLnVpLnByaW1hcnkubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwO1xuICBib3JkZXItY29sb3I6ICMyMTg1RDA7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4vKiBMaW5rICovXG4udWkucHJpbWFyeS5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkucHJpbWFyeS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjc4YzI7XG4gIGJvcmRlci1jb2xvcjogIzE2NzhjMjtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBSaWJib24gKi9cbi51aS51aS51aS5wcmltYXJ5LnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzFhNjlhNDtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMubGFiZWxzIC5wcmltYXJ5LmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLnByaW1hcnkubGFiZWwge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGJvcmRlci1jb2xvcjogIzIxODVEMDtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG4udWkuYmFzaWMubGFiZWxzIGEucHJpbWFyeS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuYmFzaWMucHJpbWFyeS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjMTY3OGMyO1xuICBjb2xvcjogIzE2NzhjMjtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5wcmltYXJ5LmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLnByaW1hcnkubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTRDOEZGO1xuICBib3JkZXItY29sb3I6ICM1NEM4RkY7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLyogSW52ZXJ0ZWQgTGluayAqL1xuLnVpLmludmVydGVkLmxhYmVscyBhLnByaW1hcnkubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLnByaW1hcnkubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFiOGZmO1xuICBib3JkZXItY29sb3I6ICMyMWI4ZmY7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLyogSW52ZXJ0ZWQgUmliYm9uICovXG4udWkudWkudWkuaW52ZXJ0ZWQucHJpbWFyeS5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMyMWI4ZmY7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyAucHJpbWFyeS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5wcmltYXJ5LmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgYm9yZGVyLWNvbG9yOiAjNTRDOEZGO1xuICBjb2xvcjogIzU0QzhGRjtcbn1cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgYS5wcmltYXJ5LmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5wcmltYXJ5LmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjFiOGZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogIzIxYjhmZjtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5wcmltYXJ5LmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLnByaW1hcnkuYmFzaWMudGFnLmxhYmVsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU0QzhGRjtcbn1cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5wcmltYXJ5LmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC5wcmltYXJ5LmJhc2ljLnRhZy5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDAgMCAxcHg7XG4gIGJvcmRlci1zdHlsZTogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgcmlnaHQ6IGNhbGMoMTAwJSArIDFweCk7XG59XG4udWkuc2Vjb25kYXJ5LmxhYmVscyAubGFiZWwsXG4udWkudWkudWkuc2Vjb25kYXJ5LmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgYm9yZGVyLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLyogTGluayAqL1xuLnVpLnNlY29uZGFyeS5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuc2Vjb25kYXJ5LmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MjkyYTtcbiAgYm9yZGVyLWNvbG9yOiAjMjcyOTJhO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFJpYmJvbiAqL1xuLnVpLnVpLnVpLnNlY29uZGFyeS5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMwMjAyMDM7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAuc2Vjb25kYXJ5LmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLnNlY29uZGFyeS5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi51aS5iYXNpYy5sYWJlbHMgYS5zZWNvbmRhcnkubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLnNlY29uZGFyeS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjMjcyOTJhO1xuICBjb2xvcjogIzI3MjkyYTtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5zZWNvbmRhcnkubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDtcbiAgYm9yZGVyLWNvbG9yOiAjNTQ1NDU0O1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS5zZWNvbmRhcnkubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLnNlY29uZGFyeS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZTZlNmU7XG4gIGJvcmRlci1jb2xvcjogIzZlNmU2ZTtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBSaWJib24gKi9cbi51aS51aS51aS5pbnZlcnRlZC5zZWNvbmRhcnkucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLnNlY29uZGFyeS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5zZWNvbmRhcnkubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICM1NDU0NTQ7XG4gIGNvbG9yOiAjNTQ1NDU0O1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLnNlY29uZGFyeS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMuc2Vjb25kYXJ5LmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNmU2ZTZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogIzZlNmU2ZTtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5zZWNvbmRhcnkubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1NDU0NTQ7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAuc2Vjb25kYXJ5LmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgYm9yZGVyLXN0eWxlOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICByaWdodDogY2FsYygxMDAlICsgMXB4KTtcbn1cbi51aS5yZWQubGFiZWxzIC5sYWJlbCxcbi51aS51aS51aS5yZWQubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4O1xuICBib3JkZXItY29sb3I6ICNEQjI4Mjg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogTGluayAqL1xuLnVpLnJlZC5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkucmVkLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMTkxOTtcbiAgYm9yZGVyLWNvbG9yOiAjZDAxOTE5O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFJpYmJvbiAqL1xuLnVpLnVpLnVpLnJlZC5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNiMjFlMWU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAucmVkLmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLnJlZC5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjREIyODI4O1xuICBjb2xvcjogI0RCMjgyODtcbn1cbi51aS5iYXNpYy5sYWJlbHMgYS5yZWQubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLnJlZC5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjZDAxOTE5O1xuICBjb2xvcjogI2QwMTkxOTtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5yZWQubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQucmVkLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGNjk1RTtcbiAgYm9yZGVyLWNvbG9yOiAjRkY2OTVFO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS5yZWQubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLnJlZC5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjM5MmI7XG4gIGJvcmRlci1jb2xvcjogI2ZmMzkyYjtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBSaWJib24gKi9cbi51aS51aS51aS5pbnZlcnRlZC5yZWQucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmYzOTJiO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLnJlZC5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5yZWQubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICNGRjY5NUU7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLnJlZC5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMucmVkLmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmYzOTJiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI2ZmMzkyYjtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5yZWQubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQucmVkLmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRjY5NUU7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAucmVkLmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC5yZWQuYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgYm9yZGVyLXN0eWxlOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICByaWdodDogY2FsYygxMDAlICsgMXB4KTtcbn1cbi51aS5vcmFuZ2UubGFiZWxzIC5sYWJlbCxcbi51aS51aS51aS5vcmFuZ2UubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI3MTFDO1xuICBib3JkZXItY29sb3I6ICNGMjcxMUM7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogTGluayAqL1xuLnVpLm9yYW5nZS5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkub3JhbmdlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyNjIwMjtcbiAgYm9yZGVyLWNvbG9yOiAjZjI2MjAyO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFJpYmJvbiAqL1xuLnVpLnVpLnVpLm9yYW5nZS5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNjZjU5MGM7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAub3JhbmdlLmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLm9yYW5nZS5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjRjI3MTFDO1xuICBjb2xvcjogI0YyNzExQztcbn1cbi51aS5iYXNpYy5sYWJlbHMgYS5vcmFuZ2UubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLm9yYW5nZS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjZjI2MjAyO1xuICBjb2xvcjogI2YyNjIwMjtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5vcmFuZ2UubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQub3JhbmdlLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGODUxQjtcbiAgYm9yZGVyLWNvbG9yOiAjRkY4NTFCO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS5vcmFuZ2UubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLm9yYW5nZS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNzZiMDA7XG4gIGJvcmRlci1jb2xvcjogI2U3NmIwMDtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBSaWJib24gKi9cbi51aS51aS51aS5pbnZlcnRlZC5vcmFuZ2UucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTc2YjAwO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLm9yYW5nZS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5vcmFuZ2UubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICNGRjg1MUI7XG4gIGNvbG9yOiAjRkY4NTFCO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLm9yYW5nZS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMub3JhbmdlLmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTc2YjAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI2U3NmIwMDtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5vcmFuZ2UubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRjg1MUI7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAub3JhbmdlLmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgYm9yZGVyLXN0eWxlOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICByaWdodDogY2FsYygxMDAlICsgMXB4KTtcbn1cbi51aS55ZWxsb3cubGFiZWxzIC5sYWJlbCxcbi51aS51aS51aS55ZWxsb3cubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJCRDA4O1xuICBib3JkZXItY29sb3I6ICNGQkJEMDg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogTGluayAqL1xuLnVpLnllbGxvdy5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkueWVsbG93LmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhYWUwMDtcbiAgYm9yZGVyLWNvbG9yOiAjZWFhZTAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFJpYmJvbiAqL1xuLnVpLnVpLnVpLnllbGxvdy5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNjZDk5MDM7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAueWVsbG93LmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLnllbGxvdy5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjRkJCRDA4O1xuICBjb2xvcjogI0ZCQkQwODtcbn1cbi51aS5iYXNpYy5sYWJlbHMgYS55ZWxsb3cubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLnllbGxvdy5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjZWFhZTAwO1xuICBjb2xvcjogI2VhYWUwMDtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC55ZWxsb3cubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQueWVsbG93LmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRTIxRjtcbiAgYm9yZGVyLWNvbG9yOiAjRkZFMjFGO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS55ZWxsb3cubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLnllbGxvdy5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmNkMDA7XG4gIGJvcmRlci1jb2xvcjogI2ViY2QwMDtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBSaWJib24gKi9cbi51aS51aS51aS5pbnZlcnRlZC55ZWxsb3cucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWJjZDAwO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLnllbGxvdy5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy55ZWxsb3cubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICNGRkUyMUY7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLnllbGxvdy5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMueWVsbG93LmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWJjZDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI2ViY2QwMDtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC55ZWxsb3cubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkUyMUY7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAueWVsbG93LmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgYm9yZGVyLXN0eWxlOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICByaWdodDogY2FsYygxMDAlICsgMXB4KTtcbn1cbi51aS5vbGl2ZS5sYWJlbHMgLmxhYmVsLFxuLnVpLnVpLnVpLm9saXZlLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I1Q0MxODtcbiAgYm9yZGVyLWNvbG9yOiAjQjVDQzE4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIExpbmsgKi9cbi51aS5vbGl2ZS5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkub2xpdmUubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdiZDBkO1xuICBib3JkZXItY29sb3I6ICNhN2JkMGQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogUmliYm9uICovXG4udWkudWkudWkub2xpdmUucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjOGQ5ZTEzO1xufVxuLyogQmFzaWMgKi9cbi51aS5iYXNpYy5sYWJlbHMgLm9saXZlLmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLm9saXZlLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICNCNUNDMTg7XG4gIGNvbG9yOiAjQjVDQzE4O1xufVxuLnVpLmJhc2ljLmxhYmVscyBhLm9saXZlLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5iYXNpYy5vbGl2ZS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjYTdiZDBkO1xuICBjb2xvcjogI2E3YmQwZDtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5vbGl2ZS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5vbGl2ZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEOUU3Nzg7XG4gIGJvcmRlci1jb2xvcjogI0Q5RTc3ODtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBMaW5rICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIGEub2xpdmUubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLm9saXZlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyZTc0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZDJlNzQ1O1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIFJpYmJvbiAqL1xuLnVpLnVpLnVpLmludmVydGVkLm9saXZlLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI2NkZGY0ZDtcbn1cbi8qIEludmVydGVkIEJhc2ljICovXG4udWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWxzIC5vbGl2ZS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5vbGl2ZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGJvcmRlci1jb2xvcjogI0Q5RTc3ODtcbiAgY29sb3I6ICNEOUU3Nzg7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWxzIGEub2xpdmUubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLmJhc2ljLm9saXZlLmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZDJlNzQ1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI2QyZTc0NTtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5vbGl2ZS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy50YWcubGFiZWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDlFNzc4O1xufVxuLnVpLmludmVydGVkLmJhc2ljLnRhZy5sYWJlbHMgLm9saXZlLmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy50YWcubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMXB4O1xuICBib3JkZXItc3R5bGU6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyAxcHgpO1xufVxuLnVpLmdyZWVuLmxhYmVscyAubGFiZWwsXG4udWkudWkudWkuZ3JlZW4ubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFCQTQ1O1xuICBib3JkZXItY29sb3I6ICMyMUJBNDU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogTGluayAqL1xuLnVpLmdyZWVuLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5ncmVlbi5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNmFiMzk7XG4gIGJvcmRlci1jb2xvcjogIzE2YWIzOTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBSaWJib24gKi9cbi51aS51aS51aS5ncmVlbi5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMxOThmMzU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAuZ3JlZW4ubGFiZWwsXG4udWkudWkudWkuYmFzaWMuZ3JlZW4ubGFiZWwge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGJvcmRlci1jb2xvcjogIzIxQkE0NTtcbiAgY29sb3I6ICMyMUJBNDU7XG59XG4udWkuYmFzaWMubGFiZWxzIGEuZ3JlZW4ubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLmdyZWVuLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICMxNmFiMzk7XG4gIGNvbG9yOiAjMTZhYjM5O1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgLmdyZWVuLmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLmdyZWVuLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJFQ0M0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMkVDQzQwO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS5ncmVlbi5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuZ3JlZW4ubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWVhOTJlO1xuICBib3JkZXItY29sb3I6ICMxZWE5MmU7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLyogSW52ZXJ0ZWQgUmliYm9uICovXG4udWkudWkudWkuaW52ZXJ0ZWQuZ3JlZW4ucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjVhMjMzO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLmdyZWVuLmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLmJhc2ljLmdyZWVuLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgYm9yZGVyLWNvbG9yOiAjMkVDQzQwO1xuICBjb2xvcjogIzJFQ0M0MDtcbn1cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgYS5ncmVlbi5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMuZ3JlZW4ubGFiZWw6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMxZWE5MmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjMWVhOTJlO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgVGFncyAqL1xuLnVpLmludmVydGVkLmJhc2ljLnRhZy5sYWJlbHMgLmdyZWVuLmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyRUNDNDA7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAuZ3JlZW4ubGFiZWw6YmVmb3JlLFxuLnVpLnVpLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLnRhZy5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDAgMCAxcHg7XG4gIGJvcmRlci1zdHlsZTogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgcmlnaHQ6IGNhbGMoMTAwJSArIDFweCk7XG59XG4udWkudGVhbC5sYWJlbHMgLmxhYmVsLFxuLnVpLnVpLnVpLnRlYWwubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCNUFEO1xuICBib3JkZXItY29sb3I6ICMwMEI1QUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogTGluayAqL1xuLnVpLnRlYWwubGFiZWxzIGEubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLnRlYWwubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5Yzk1O1xuICBib3JkZXItY29sb3I6ICMwMDljOTU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogUmliYm9uICovXG4udWkudWkudWkudGVhbC5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMwMDgyN2M7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAudGVhbC5sYWJlbCxcbi51aS51aS51aS5iYXNpYy50ZWFsLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICMwMEI1QUQ7XG4gIGNvbG9yOiAjMDBCNUFEO1xufVxuLnVpLmJhc2ljLmxhYmVscyBhLnRlYWwubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLnRlYWwubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGJvcmRlci1jb2xvcjogIzAwOWM5NTtcbiAgY29sb3I6ICMwMDljOTU7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLmxhYmVscyAudGVhbC5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC50ZWFsLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZERkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjNkRGRkZGO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS50ZWFsLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5pbnZlcnRlZC50ZWFsLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZmZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjM2FmZmZmO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIFJpYmJvbiAqL1xuLnVpLnVpLnVpLmludmVydGVkLnRlYWwucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2FmZmZmO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLnRlYWwubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMudGVhbC5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGJvcmRlci1jb2xvcjogIzZERkZGRjtcbiAgY29sb3I6ICM2REZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWxzIGEudGVhbC5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMudGVhbC5sYWJlbDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzNhZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgY29sb3I6ICMzYWZmZmY7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyBUYWdzICovXG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAudGVhbC5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2REZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAudGVhbC5sYWJlbDpiZWZvcmUsXG4udWkudWkudWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy50YWcubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMXB4O1xuICBib3JkZXItc3R5bGU6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyAxcHgpO1xufVxuLnVpLmJsdWUubGFiZWxzIC5sYWJlbCxcbi51aS51aS51aS5ibHVlLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbiAgYm9yZGVyLWNvbG9yOiAjMjE4NUQwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIExpbmsgKi9cbi51aS5ibHVlLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5ibHVlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2NzhjMjtcbiAgYm9yZGVyLWNvbG9yOiAjMTY3OGMyO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFJpYmJvbiAqL1xuLnVpLnVpLnVpLmJsdWUucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWE2OWE0O1xufVxuLyogQmFzaWMgKi9cbi51aS5iYXNpYy5sYWJlbHMgLmJsdWUubGFiZWwsXG4udWkudWkudWkuYmFzaWMuYmx1ZS5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjMjE4NUQwO1xuICBjb2xvcjogIzIxODVEMDtcbn1cbi51aS5iYXNpYy5sYWJlbHMgYS5ibHVlLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5iYXNpYy5ibHVlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICMxNjc4YzI7XG4gIGNvbG9yOiAjMTY3OGMyO1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgLmJsdWUubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQuYmx1ZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NEM4RkY7XG4gIGJvcmRlci1jb2xvcjogIzU0QzhGRjtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBMaW5rICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIGEuYmx1ZS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmx1ZS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMWI4ZmY7XG4gIGJvcmRlci1jb2xvcjogIzIxYjhmZjtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBSaWJib24gKi9cbi51aS51aS51aS5pbnZlcnRlZC5ibHVlLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzIxYjhmZjtcbn1cbi8qIEludmVydGVkIEJhc2ljICovXG4udWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWxzIC5ibHVlLmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLmJhc2ljLmJsdWUubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICM1NEM4RkY7XG4gIGNvbG9yOiAjNTRDOEZGO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLmJsdWUubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLmJhc2ljLmJsdWUubGFiZWw6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMyMWI4ZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjMjFiOGZmO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgVGFncyAqL1xuLnVpLmludmVydGVkLmJhc2ljLnRhZy5sYWJlbHMgLmJsdWUubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQuYmx1ZS5iYXNpYy50YWcubGFiZWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTRDOEZGO1xufVxuLnVpLmludmVydGVkLmJhc2ljLnRhZy5sYWJlbHMgLmJsdWUubGFiZWw6YmVmb3JlLFxuLnVpLnVpLnVpLmludmVydGVkLmJsdWUuYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgYm9yZGVyLXN0eWxlOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICByaWdodDogY2FsYygxMDAlICsgMXB4KTtcbn1cbi51aS52aW9sZXQubGFiZWxzIC5sYWJlbCxcbi51aS51aS51aS52aW9sZXQubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQzNUM5O1xuICBib3JkZXItY29sb3I6ICM2NDM1Qzk7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogTGluayAqL1xuLnVpLnZpb2xldC5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkudmlvbGV0LmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4MjliYjtcbiAgYm9yZGVyLWNvbG9yOiAjNTgyOWJiO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFJpYmJvbiAqL1xuLnVpLnVpLnVpLnZpb2xldC5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICM1MDJhYTE7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAudmlvbGV0LmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLnZpb2xldC5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjNjQzNUM5O1xuICBjb2xvcjogIzY0MzVDOTtcbn1cbi51aS5iYXNpYy5sYWJlbHMgYS52aW9sZXQubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLnZpb2xldC5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjNTgyOWJiO1xuICBjb2xvcjogIzU4MjliYjtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC52aW9sZXQubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQudmlvbGV0LmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EyOTFGQjtcbiAgYm9yZGVyLWNvbG9yOiAjQTI5MUZCO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS52aW9sZXQubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLnZpb2xldC5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NDVhZmY7XG4gIGJvcmRlci1jb2xvcjogIzc0NWFmZjtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBSaWJib24gKi9cbi51aS51aS51aS5pbnZlcnRlZC52aW9sZXQucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjNzg2MGY5O1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLnZpb2xldC5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy52aW9sZXQubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICNBMjkxRkI7XG4gIGNvbG9yOiAjQTI5MUZCO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLnZpb2xldC5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMudmlvbGV0LmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNzQ1YWZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogIzc0NWFmZjtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC52aW9sZXQubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNBMjkxRkI7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAudmlvbGV0LmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC52aW9sZXQuYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgYm9yZGVyLXN0eWxlOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICByaWdodDogY2FsYygxMDAlICsgMXB4KTtcbn1cbi51aS5wdXJwbGUubGFiZWxzIC5sYWJlbCxcbi51aS51aS51aS5wdXJwbGUubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTMzM0M4O1xuICBib3JkZXItY29sb3I6ICNBMzMzQzg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogTGluayAqL1xuLnVpLnB1cnBsZS5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkucHVycGxlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk2MjdiYTtcbiAgYm9yZGVyLWNvbG9yOiAjOTYyN2JhO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFJpYmJvbiAqL1xuLnVpLnVpLnVpLnB1cnBsZS5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICM4MjI5OWY7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAucHVycGxlLmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLnB1cnBsZS5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjQTMzM0M4O1xuICBjb2xvcjogI0EzMzNDODtcbn1cbi51aS5iYXNpYy5sYWJlbHMgYS5wdXJwbGUubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLnB1cnBsZS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjOTYyN2JhO1xuICBjb2xvcjogIzk2MjdiYTtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5wdXJwbGUubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQucHVycGxlLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDNzNGRjtcbiAgYm9yZGVyLWNvbG9yOiAjREM3M0ZGO1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS5wdXJwbGUubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLnB1cnBsZS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZjQwZmY7XG4gIGJvcmRlci1jb2xvcjogI2NmNDBmZjtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBSaWJib24gKi9cbi51aS51aS51aS5pbnZlcnRlZC5wdXJwbGUucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2Y0MGZmO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLnB1cnBsZS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5wdXJwbGUubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICNEQzczRkY7XG4gIGNvbG9yOiAjREM3M0ZGO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLnB1cnBsZS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMucHVycGxlLmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2Y0MGZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI2NmNDBmZjtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5wdXJwbGUubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEQzczRkY7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAucHVycGxlLmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgYm9yZGVyLXN0eWxlOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICByaWdodDogY2FsYygxMDAlICsgMXB4KTtcbn1cbi51aS5waW5rLmxhYmVscyAubGFiZWwsXG4udWkudWkudWkucGluay5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTc7XG4gIGJvcmRlci1jb2xvcjogI0UwMzk5NztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBMaW5rICovXG4udWkucGluay5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkucGluay5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNjFhOGQ7XG4gIGJvcmRlci1jb2xvcjogI2U2MWE4ZDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBSaWJib24gKi9cbi51aS51aS51aS5waW5rLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI2M3MWY3ZTtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMubGFiZWxzIC5waW5rLmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLnBpbmsubGFiZWwge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGJvcmRlci1jb2xvcjogI0UwMzk5NztcbiAgY29sb3I6ICNFMDM5OTc7XG59XG4udWkuYmFzaWMubGFiZWxzIGEucGluay5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuYmFzaWMucGluay5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjZTYxYThkO1xuICBjb2xvcjogI2U2MWE4ZDtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5waW5rLmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLnBpbmsubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY4RURGO1xuICBib3JkZXItY29sb3I6ICNGRjhFREY7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLyogSW52ZXJ0ZWQgTGluayAqL1xuLnVpLmludmVydGVkLmxhYmVscyBhLnBpbmsubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLnBpbmsubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY1YmQxO1xuICBib3JkZXItY29sb3I6ICNmZjViZDE7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLyogSW52ZXJ0ZWQgUmliYm9uICovXG4udWkudWkudWkuaW52ZXJ0ZWQucGluay5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNmZjViZDE7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyAucGluay5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5waW5rLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgYm9yZGVyLWNvbG9yOiAjRkY4RURGO1xuICBjb2xvcjogI0ZGOEVERjtcbn1cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgYS5waW5rLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5waW5rLmxhYmVsOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmY1YmQxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI2ZmNWJkMTtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5waW5rLmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLnBpbmsuYmFzaWMudGFnLmxhYmVsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGOEVERjtcbn1cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5waW5rLmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC5waW5rLmJhc2ljLnRhZy5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDAgMCAxcHg7XG4gIGJvcmRlci1zdHlsZTogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgcmlnaHQ6IGNhbGMoMTAwJSArIDFweCk7XG59XG4udWkuYnJvd24ubGFiZWxzIC5sYWJlbCxcbi51aS51aS51aS5icm93bi5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0Y7XG4gIGJvcmRlci1jb2xvcjogI0E1NjczRjtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBMaW5rICovXG4udWkuYnJvd24ubGFiZWxzIGEubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJyb3duLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk3NWIzMztcbiAgYm9yZGVyLWNvbG9yOiAjOTc1YjMzO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qIFJpYmJvbiAqL1xuLnVpLnVpLnVpLmJyb3duLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTAzMTtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMubGFiZWxzIC5icm93bi5sYWJlbCxcbi51aS51aS51aS5iYXNpYy5icm93bi5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjQTU2NzNGO1xuICBjb2xvcjogI0E1NjczRjtcbn1cbi51aS5iYXNpYy5sYWJlbHMgYS5icm93bi5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuYmFzaWMuYnJvd24ubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGJvcmRlci1jb2xvcjogIzk3NWIzMztcbiAgY29sb3I6ICM5NzViMzM7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLmxhYmVscyAuYnJvd24ubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQuYnJvd24ubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDY3QzFDO1xuICBib3JkZXItY29sb3I6ICNENjdDMUM7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLyogSW52ZXJ0ZWQgTGluayAqL1xuLnVpLmludmVydGVkLmxhYmVscyBhLmJyb3duLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5pbnZlcnRlZC5icm93bi5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMDYyMGY7XG4gIGJvcmRlci1jb2xvcjogI2IwNjIwZjtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBSaWJib24gKi9cbi51aS51aS51aS5pbnZlcnRlZC5icm93bi5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNhOTYyMTY7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyAuYnJvd24ubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQuYmFzaWMuYnJvd24ubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICNENjdDMUM7XG4gIGNvbG9yOiAjRDY3QzFDO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLmJyb3duLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5icm93bi5sYWJlbDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogI2IwNjIwZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgY29sb3I6ICNiMDYyMGY7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyBUYWdzICovXG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAuYnJvd24ubGFiZWwsXG4udWkudWkudWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMudGFnLmxhYmVsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q2N0MxQztcbn1cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5icm93bi5sYWJlbDpiZWZvcmUsXG4udWkudWkudWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgYm9yZGVyLXN0eWxlOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICByaWdodDogY2FsYygxMDAlICsgMXB4KTtcbn1cbi51aS5ncmV5LmxhYmVscyAubGFiZWwsXG4udWkudWkudWkuZ3JleS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGJvcmRlci1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBMaW5rICovXG4udWkuZ3JleS5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuZ3JleS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MzgzODM7XG4gIGJvcmRlci1jb2xvcjogIzgzODM4MztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBSaWJib24gKi9cbi51aS51aS51aS5ncmV5LnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzVkNWQ1ZDtcbn1cbi8qIEJhc2ljICovXG4udWkuYmFzaWMubGFiZWxzIC5ncmV5LmxhYmVsLFxuLnVpLnVpLnVpLmJhc2ljLmdyZXkubGFiZWwge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGJvcmRlci1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4udWkuYmFzaWMubGFiZWxzIGEuZ3JleS5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuYmFzaWMuZ3JleS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjODM4MzgzO1xuICBjb2xvcjogIzgzODM4Mztcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5ncmV5LmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLmdyZXkubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENERERFO1xuICBib3JkZXItY29sb3I6ICNEQ0REREU7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLyogSW52ZXJ0ZWQgTGluayAqL1xuLnVpLmludmVydGVkLmxhYmVscyBhLmdyZXkubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLmdyZXkubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzJjNGM1O1xuICBib3JkZXItY29sb3I6ICNjMmM0YzU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogSW52ZXJ0ZWQgUmliYm9uICovXG4udWkudWkudWkuaW52ZXJ0ZWQuZ3JleS5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNlOWVhZWE7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyAuZ3JleS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5ncmV5LmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgYm9yZGVyLWNvbG9yOiAjRENERERFO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLmdyZXkubGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmludmVydGVkLmJhc2ljLmdyZXkubGFiZWw6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNjMmM0YzU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG59XG4vKiBJbnZlcnRlZCBCYXNpYyBUYWdzICovXG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAuZ3JleS5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5ncmV5LmJhc2ljLnRhZy5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEQ0REREU7XG59XG4udWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAuZ3JleS5sYWJlbDpiZWZvcmUsXG4udWkudWkudWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy50YWcubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMXB4O1xuICBib3JkZXItc3R5bGU6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyAxcHgpO1xufVxuLnVpLmJsYWNrLmxhYmVscyAubGFiZWwsXG4udWkudWkudWkuYmxhY2subGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBib3JkZXItY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogTGluayAqL1xuLnVpLmJsYWNrLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5ibGFjay5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNzI5MmE7XG4gIGJvcmRlci1jb2xvcjogIzI3MjkyYTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBSaWJib24gKi9cbi51aS51aS51aS5ibGFjay5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMwMjAyMDM7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmJhc2ljLmxhYmVscyAuYmxhY2subGFiZWwsXG4udWkudWkudWkuYmFzaWMuYmxhY2subGFiZWwge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGJvcmRlci1jb2xvcjogIzFCMUMxRDtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4udWkuYmFzaWMubGFiZWxzIGEuYmxhY2subGFiZWw6aG92ZXIsXG5hLnVpLnVpLnVpLmJhc2ljLmJsYWNrLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICMyNzI5MmE7XG4gIGNvbG9yOiAjMjcyOTJhO1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgLmJsYWNrLmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLmJsYWNrLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDtcbiAgYm9yZGVyLWNvbG9yOiAjNTQ1NDU0O1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIExpbmsgKi9cbi51aS5pbnZlcnRlZC5sYWJlbHMgYS5ibGFjay5sYWJlbDpob3ZlcixcbmEudWkudWkudWkuaW52ZXJ0ZWQuYmxhY2subGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBib3JkZXItY29sb3I6ICMwMDAwMDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyogSW52ZXJ0ZWQgUmliYm9uICovXG4udWkudWkudWkuaW52ZXJ0ZWQuYmxhY2sucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjE2MTYxO1xufVxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgLmJsYWNrLmxhYmVsLFxuLnVpLnVpLnVpLmludmVydGVkLmJhc2ljLmJsYWNrLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgYm9yZGVyLWNvbG9yOiAjNTQ1NDU0O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyBhLmJsYWNrLmxhYmVsOmhvdmVyLFxuYS51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5ibGFjay5sYWJlbDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbn1cbi8qIEludmVydGVkIEJhc2ljIFRhZ3MgKi9cbi51aS5pbnZlcnRlZC5iYXNpYy50YWcubGFiZWxzIC5ibGFjay5sYWJlbCxcbi51aS51aS51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy50YWcubGFiZWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTQ1NDU0O1xufVxuLnVpLmludmVydGVkLmJhc2ljLnRhZy5sYWJlbHMgLmJsYWNrLmxhYmVsOmJlZm9yZSxcbi51aS51aS51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy50YWcubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMXB4O1xuICBib3JkZXItc3R5bGU6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyAxcHgpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEhvcml6b250YWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5ob3Jpem9udGFsLmxhYmVscyAubGFiZWwsXG4udWkuaG9yaXpvbnRhbC5sYWJlbCB7XG4gIG1hcmdpbjogMCAwLjVlbSAwIDA7XG4gIHBhZGRpbmc6IDAuNGVtIDAuODMzZW07XG4gIG1pbi13aWR0aDogM2VtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDaXJjdWxhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNpcmN1bGFyLmxhYmVscyAubGFiZWwsXG4udWkuY2lyY3VsYXIubGFiZWwge1xuICBtaW4td2lkdGg6IDJlbTtcbiAgbWluLWhlaWdodDogMmVtO1xuICBwYWRkaW5nOiAwLjVlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cbi51aS5lbXB0eS5jaXJjdWxhci5sYWJlbHMgLmxhYmVsLFxuLnVpLmVtcHR5LmNpcmN1bGFyLmxhYmVsIHtcbiAgbWluLXdpZHRoOiAwO1xuICBtaW4taGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMC41ZW07XG4gIGhlaWdodDogMC41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFBvaW50aW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucG9pbnRpbmcubGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udWkuYXR0YWNoZWQucG9pbnRpbmcubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4udWkucG9pbnRpbmcubGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG59XG4vKiBBcnJvdyAqL1xuLnVpLnBvaW50aW5nLmxhYmVsOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDAuNjY2NmVtO1xuICBoZWlnaHQ6IDAuNjY2NmVtO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuLyotLS0gQWJvdmUgLS0tKi9cbi51aS5wb2ludGluZy5sYWJlbCxcbi51aVtjbGFzcyo9XCJwb2ludGluZyBhYm92ZVwiXS5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cbi51aS5wb2ludGluZy5sYWJlbDpiZWZvcmUsXG4udWlbY2xhc3MqPVwicG9pbnRpbmcgYWJvdmVcIl0ubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG59XG4vKi0tLSBCZWxvdyAtLS0qL1xuLnVpW2NsYXNzKj1cImJvdHRvbSBwb2ludGluZ1wiXS5sYWJlbCxcbi51aVtjbGFzcyo9XCJwb2ludGluZyBiZWxvd1wiXS5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gcG9pbnRpbmdcIl0ubGFiZWw6YmVmb3JlLFxuLnVpW2NsYXNzKj1cInBvaW50aW5nIGJlbG93XCJdLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogNTAlO1xufVxuLyotLS0gTGVmdCAtLS0qL1xuLnVpW2NsYXNzKj1cImxlZnQgcG9pbnRpbmdcIl0ubGFiZWwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMC42NjY2ZW07XG59XG4udWlbY2xhc3MqPVwibGVmdCBwb2ludGluZ1wiXS5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHggMXB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICBib3R0b206IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbn1cbi8qLS0tIFJpZ2h0IC0tLSovXG4udWlbY2xhc3MqPVwicmlnaHQgcG9pbnRpbmdcIl0ubGFiZWwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjY2NmVtO1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci13aWR0aDogMXB4IDFweCAwIDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IGF1dG87XG59XG4vKiBCYXNpYyBQb2ludGluZyAqL1xuLyotLS0gQWJvdmUgLS0tKi9cbi51aS5iYXNpYy5wb2ludGluZy5sYWJlbDpiZWZvcmUsXG4udWkuYmFzaWNbY2xhc3MqPVwicG9pbnRpbmcgYWJvdmVcIl0ubGFiZWw6YmVmb3JlIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cbi8qLS0tIEJlbG93IC0tLSovXG4udWkuYmFzaWNbY2xhc3MqPVwiYm90dG9tIHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSxcbi51aS5iYXNpY1tjbGFzcyo9XCJwb2ludGluZyBiZWxvd1wiXS5sYWJlbDpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMXB4O1xufVxuLyotLS0gTGVmdCAtLS0qL1xuLnVpLmJhc2ljW2NsYXNzKj1cImxlZnQgcG9pbnRpbmdcIl0ubGFiZWw6YmVmb3JlIHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IC0xcHg7XG59XG4vKi0tLSBSaWdodCAtLS0qL1xuLnVpLmJhc2ljW2NsYXNzKj1cInJpZ2h0IHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICByaWdodDogLTFweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBGbG9hdGluZyBMYWJlbFxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmxvYXRpbmcubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdG9wOiAtMWVtO1xuICByaWdodDogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG59XG4udWkucmlnaHQuYWxpZ25lZC5mbG9hdGluZy5sYWJlbCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxLjJlbSk7XG59XG4udWkubGVmdC5mbG9hdGluZy5sYWJlbCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4udWkubGVmdC5hbGlnbmVkLmZsb2F0aW5nLmxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xLjJlbSk7XG59XG4udWkuYm90dG9tLmZsb2F0aW5nLmxhYmVsIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IC0xZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5taW5pLmxhYmVscyAubGFiZWwsXG4udWkubWluaS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC42NDI4NTcxNHJlbTtcbn1cbi51aS50aW55LmxhYmVscyAubGFiZWwsXG4udWkudGlueS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC43MTQyODU3MXJlbTtcbn1cbi51aS5zbWFsbC5sYWJlbHMgLmxhYmVsLFxuLnVpLnNtYWxsLmxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuLnVpLmxhYmVscyAubGFiZWwsXG4udWkubGFiZWwge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG4udWkubGFyZ2UubGFiZWxzIC5sYWJlbCxcbi51aS5sYXJnZS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi51aS5iaWcubGFiZWxzIC5sYWJlbCxcbi51aS5iaWcubGFiZWwge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG4udWkuaHVnZS5sYWJlbHMgLmxhYmVsLFxuLnVpLmh1Z2UubGFiZWwge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG4udWkubWFzc2l2ZS5sYWJlbHMgLmxhYmVsLFxuLnVpLm1hc3NpdmUubGFiZWwge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gTGlzdFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTGlzdFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgVmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTGlzdCAqL1xuLyogTGlzdCBJdGVtICovXG4vKiBTdWIgTGlzdCAqL1xuLyogU3ViIExpc3QgSXRlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSWNvbiAqL1xuLyogSW1hZ2UgKi9cbi8qIENvbnRlbnQgKi9cbi8qIEhlYWRlciAqL1xuLyogRGVzY3JpcHRpb24gKi9cbi8qIExpbmsgKi9cbi8qIEhlYWRlciBMaW5rICovXG4vKiBMaW5rZWQgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGbG9hdCAqL1xuLyogSG9yaXpvbnRhbCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIExpbmsgTGlzdCAqL1xuLyogSW52ZXJ0ZWQgTGluayBMaXN0ICovXG4vKiBTZWxlY3Rpb24gTGlzdCAqL1xuLyogU2VsZWN0aW9uIExpc3QgU3RhdGVzICovXG4vKiBJbnZlcnRlZCBTZWxlY3Rpb24gTGlzdCAqL1xuLyogQW5pbWF0ZWQgTGlzdCAqL1xuLyogQnVsbGV0ZWQgKi9cbi8qIEhvcml6b250YWwgQnVsbGV0cyAqL1xuLyogT3JkZXJlZCBMaXN0ICovXG4vKiBIb3Jpem9udGFsIE9yZGVyZWQgKi9cbi8qIERpdmlkZWQgKi9cbi8qIERpdmlkZWQgSG9yaXpvbnRhbCAqL1xuLyogRGl2aWRlZCAqL1xuLyogRGl2aWRlZCBIb3Jpem9udGFsICovXG4vKiBSZWxheGVkICovXG4vKiBWZXJ5IFJlbGF4ZWQgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIExpc3RcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIFZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExpc3QgKi9cbi8qIExpc3QgSXRlbSAqL1xuLyogU3ViIExpc3QgKi9cbi8qIFN1YiBMaXN0IEl0ZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEljb24gKi9cbi8qIEltYWdlICovXG4vKiBDb250ZW50ICovXG4vKiBIZWFkZXIgKi9cbi8qIERlc2NyaXB0aW9uICovXG4vKiBMaW5rICovXG4vKiBIZWFkZXIgTGluayAqL1xuLyogTGlua2VkIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRmxvYXQgKi9cbi8qIEhvcml6b250YWwgKi9cbi8qIEludmVydGVkICovXG4vKiBMaW5rIExpc3QgKi9cbi8qIEludmVydGVkIExpbmsgTGlzdCAqL1xuLyogU2VsZWN0aW9uIExpc3QgKi9cbi8qIFNlbGVjdGlvbiBMaXN0IFN0YXRlcyAqL1xuLyogSW52ZXJ0ZWQgU2VsZWN0aW9uIExpc3QgKi9cbi8qIEFuaW1hdGVkIExpc3QgKi9cbi8qIEJ1bGxldGVkICovXG4vKiBIb3Jpem9udGFsIEJ1bGxldHMgKi9cbi8qIE9yZGVyZWQgTGlzdCAqL1xuLyogSG9yaXpvbnRhbCBPcmRlcmVkICovXG4vKiBEaXZpZGVkICovXG4vKiBEaXZpZGVkIEhvcml6b250YWwgKi9cbi8qIERpdmlkZWQgKi9cbi8qIERpdmlkZWQgSG9yaXpvbnRhbCAqL1xuLyogUmVsYXhlZCAqL1xuLyogVmVyeSBSZWxheGVkICovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgTGlzdFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbnVsLnVpLmxpc3QsXG5vbC51aS5saXN0LFxuLnVpLmxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMWVtIDA7XG4gIHBhZGRpbmc6IDAgMDtcbn1cbnVsLnVpLmxpc3Q6Zmlyc3QtY2hpbGQsXG5vbC51aS5saXN0OmZpcnN0LWNoaWxkLFxuLnVpLmxpc3Q6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbnVsLnVpLmxpc3Q6bGFzdC1jaGlsZCxcbm9sLnVpLmxpc3Q6bGFzdC1jaGlsZCxcbi51aS5saXN0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb250ZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogTGlzdCBJdGVtICovXG51bC51aS5saXN0IGxpLFxub2wudWkubGlzdCBsaSxcbi51aS5saXN0ID4gLml0ZW0sXG4udWkubGlzdCAubGlzdCA+IC5pdGVtIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIHBhZGRpbmc6IDAuMjE0Mjg1NzFlbSAwO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNGVtO1xufVxudWwudWkubGlzdCA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyLFxub2wudWkubGlzdCA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyLFxuLnVpLmxpc3QgPiAubGlzdCA+IC5pdGVtOmFmdGVyLFxuLnVpLmxpc3QgPiAuaXRlbTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxudWwudWkubGlzdCBsaTpmaXJzdC1jaGlsZCxcbm9sLnVpLmxpc3QgbGk6Zmlyc3QtY2hpbGQsXG4udWkubGlzdCAubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxudWwudWkubGlzdCBsaTpsYXN0LWNoaWxkLFxub2wudWkubGlzdCBsaTpsYXN0LWNoaWxkLFxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkLFxuLnVpLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4vKiBDaGlsZCBMaXN0ICovXG51bC51aS5saXN0IHVsLFxub2wudWkubGlzdCBvbCxcbi51aS5saXN0IC5saXN0Om5vdCguaWNvbikge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjc1ZW0gMCAwLjI1ZW0gMC41ZW07XG59XG4vKiBDaGlsZCBJdGVtICovXG51bC51aS5saXN0IHVsIGxpLFxub2wudWkubGlzdCBvbCBsaSxcbi51aS5saXN0IC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nOiAwLjE0Mjg1NzE0ZW0gMDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG4vKiBJY29uICovXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gaS5pY29uLFxuLnVpLmxpc3QgPiAuaXRlbSA+IGkuaWNvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIG1pbi13aWR0aDogMS41NWVtO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gaS5pY29uOm5vdCgubG9hZGluZyksXG4udWkubGlzdCA+IC5pdGVtID4gaS5pY29uOm5vdCgubG9hZGluZykge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI4NTcxNDI5ZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gaS5pY29uOm9ubHktY2hpbGQsXG4udWkubGlzdCA+IC5pdGVtID4gaS5pY29uOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi8qIEltYWdlICovXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlOm5vdCg6b25seS1jaGlsZCk6bm90KGltZyksXG4udWkubGlzdCA+IC5pdGVtID4gLmltYWdlOm5vdCg6b25seS1jaGlsZCk6bm90KGltZykge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbn1cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaW1hZ2UgaW1nLFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IGltZy5pbWFnZSxcbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaW1hZ2U6b25seS1jaGlsZCxcbi51aS5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UsXG4udWkubGlzdCA+IC5pdGVtID4gLmltYWdlOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4vKiBDb250ZW50ICovXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQsXG4udWkubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQge1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNGVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaW1hZ2UgKyAuY29udGVudCxcbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaWNvbiArIC5jb250ZW50LFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSArIC5jb250ZW50LFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pY29uICsgLmNvbnRlbnQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAwIDAgMC41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmxvYWRpbmcuaWNvbiArIC5jb250ZW50LFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5sb2FkaW5nLmljb24gKyAuY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogY2FsYygwLjI4NTcxNDI4NTcxNDI4NTdlbSArIDAuNWVtKTtcbn1cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UgKyAuY29udGVudCxcbi51aS5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UgKyAuY29udGVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQgPiAubGlzdCxcbi51aS5saXN0ID4gLml0ZW0gPiAuY29udGVudCA+IC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi8qIEhlYWRlciAqL1xuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSAuaGVhZGVyLFxuLnVpLmxpc3QgPiAuaXRlbSAuaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyogRGVzY3JpcHRpb24gKi9cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gLmRlc2NyaXB0aW9uLFxuLnVpLmxpc3QgPiAuaXRlbSAuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbn1cbi8qIENoaWxkIExpbmsgKi9cbi51aS5saXN0ID4gLml0ZW0gYSxcbi51aS5saXN0IC5saXN0ID4gLml0ZW0gYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi8qIExpbmtpbmcgSXRlbSAqL1xuLnVpLmxpc3QgLmxpc3QgPiBhLml0ZW0sXG4udWkubGlzdCA+IGEuaXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICM0MTgzQzQ7XG59XG4udWkubGlzdCAubGlzdCA+IGEuaXRlbTpob3Zlcixcbi51aS5saXN0ID4gYS5pdGVtOmhvdmVyIHtcbiAgY29sb3I6ICMxZTcwYmY7XG59XG4vKiBMaW5rZWQgSXRlbSBJY29ucyAqL1xuLnVpLmxpc3QgLmxpc3QgPiBhLml0ZW0gPiBpLmljb24sXG4udWkubGlzdCA+IGEuaXRlbSA+IGkuaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG4vKiBIZWFkZXIgTGluayAqL1xuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSBhLmhlYWRlcixcbi51aS5saXN0ID4gLml0ZW0gYS5oZWFkZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjNDE4M0M0ICFpbXBvcnRhbnQ7XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gYS5oZWFkZXI6aG92ZXIsXG4udWkubGlzdCA+IC5pdGVtID4gYS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzFlNzBiZiAhaW1wb3J0YW50O1xufVxuLyogRmxvYXRlZCBDb250ZW50ICovXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmxpc3Qge1xuICBmbG9hdDogbGVmdDtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLmxpc3Qge1xuICBmbG9hdDogcmlnaHQ7XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0sXG4udWkubGlzdCA+IC5pdGVtIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDFlbSAwIDA7XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLFxuLnVpLmxpc3QgPiAuaXRlbSBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMCAxZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkubWVudSAudWkubGlzdCA+IC5pdGVtLFxuLnVpLm1lbnUgLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgcGFkZGluZzogMC4yMTQyODU3MWVtIDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0ZW07XG59XG4udWkubWVudSAudWkubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLnVpLm1lbnUgLnVpLmxpc3QgLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi51aS5tZW51IC51aS5saXN0IC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3Jpem9udGFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaG9yaXpvbnRhbC5saXN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDA7XG59XG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG4udWkuaG9yaXpvbnRhbC5saXN0Om5vdCguY2VsbGVkKSA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4udWkuaG9yaXpvbnRhbC5saXN0IC5saXN0Om5vdCguaWNvbikge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gLmljb24sXG4udWkuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0gPiAuaWNvbixcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSA+IC5jb250ZW50LFxuLnVpLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLyogUGFkZGluZyBvbiBhbGwgZWxlbWVudHMgKi9cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDAuMjE0Mjg1NzFlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjE0Mjg1NzFlbTtcbn1cbi8qIEhvcml6b250YWwgTGlzdCAqL1xuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gaS5pY29uIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAuMjVlbSAwIDA7XG59XG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0gPiAuaW1hZ2UgKyAuY29udGVudCxcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSA+IC5pY29uLFxuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gLmljb24gKyAuY29udGVudCB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xufVxuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gLmltYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmxpc3QgLmxpc3QgPiAuZGlzYWJsZWQuaXRlbSxcbi51aS5saXN0ID4gLmRpc2FibGVkLml0ZW0ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6IHJnYmEoNDAsIDQwLCA0MCwgMC4zKSAhaW1wb3J0YW50O1xufVxuLnVpLmludmVydGVkLmxpc3QgLmxpc3QgPiAuZGlzYWJsZWQuaXRlbSxcbi51aS5pbnZlcnRlZC5saXN0ID4gLmRpc2FibGVkLml0ZW0ge1xuICBjb2xvcjogcmdiYSgyMjUsIDIyNSwgMjI1LCAwLjMpICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5saXN0IC5saXN0ID4gYS5pdGVtOmhvdmVyID4gLmljb24sXG4udWkubGlzdCA+IGEuaXRlbTpob3ZlciA+IC5pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gYS5pdGVtID4gLmljb24sXG4udWkuaW52ZXJ0ZWQubGlzdCA+IGEuaXRlbSA+IC5pY29uIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLml0ZW0gLmhlYWRlcixcbi51aS5pbnZlcnRlZC5saXN0ID4gLml0ZW0gLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IC5pdGVtIC5kZXNjcmlwdGlvbixcbi51aS5pbnZlcnRlZC5saXN0ID4gLml0ZW0gLmRlc2NyaXB0aW9uIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLml0ZW0gPiAuY29udGVudCxcbi51aS5pbnZlcnRlZC5saXN0ID4gLml0ZW0gPiAuY29udGVudCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4vKiBJdGVtIExpbmsgKi9cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gYS5pdGVtLFxuLnVpLmludmVydGVkLmxpc3QgPiBhLml0ZW0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IGEuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5saXN0ID4gYS5pdGVtOmhvdmVyIHtcbiAgY29sb3I6ICMxZTcwYmY7XG59XG4vKiBMaW5raW5nIENvbnRlbnQgKi9cbi51aS5pbnZlcnRlZC5saXN0IC5pdGVtIGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpICFpbXBvcnRhbnQ7XG59XG4udWkuaW52ZXJ0ZWQubGlzdCAuaXRlbSBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6ICMxZTcwYmYgIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5saXN0W2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdIC5pbWFnZSxcbi51aS5saXN0W2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdIC5jb250ZW50LFxuLnVpLmxpc3QgW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1xufVxuLnVpLmxpc3RbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0gLmltYWdlLFxuLnVpLmxpc3RbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0gLmNvbnRlbnQsXG4udWkubGlzdCBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG59XG4udWkubGlzdFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSAuaW1hZ2UsXG4udWkubGlzdFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSAuY29udGVudCxcbi51aS5saXN0IFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5saW5rLmxpc3QgLml0ZW0sXG4udWkubGluay5saXN0IGEuaXRlbSxcbi51aS5saW5rLmxpc3QgLml0ZW0gYTpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHRyYW5zaXRpb246IDAuMXMgY29sb3IgZWFzZTtcbn1cbi51aS5saW5rLmxpc3QubGlzdCBhLml0ZW06aG92ZXIsXG4udWkubGluay5saXN0Lmxpc3QgLml0ZW0gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG4udWkubGluay5saXN0Lmxpc3QgYS5pdGVtOmFjdGl2ZSxcbi51aS5saW5rLmxpc3QubGlzdCAuaXRlbSBhOm5vdCgudWkpOmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG4udWkubGluay5saXN0Lmxpc3QgLmFjdGl2ZS5pdGVtLFxuLnVpLmxpbmsubGlzdC5saXN0IC5hY3RpdmUuaXRlbSBhOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLmxpbmsubGlzdCAuaXRlbSxcbi51aS5pbnZlcnRlZC5saW5rLmxpc3QgYS5pdGVtLFxuLnVpLmludmVydGVkLmxpbmsubGlzdCAuaXRlbSBhOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51aS5pbnZlcnRlZC5saW5rLmxpc3QubGlzdCBhLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQubGluay5saXN0Lmxpc3QgLml0ZW0gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLnVpLmludmVydGVkLmxpbmsubGlzdC5saXN0IGEuaXRlbTphY3RpdmUsXG4udWkuaW52ZXJ0ZWQubGluay5saXN0Lmxpc3QgLml0ZW0gYTpub3QoLnVpKTphY3RpdmUge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi51aS5pbnZlcnRlZC5saW5rLmxpc3QubGlzdCBhLmFjdGl2ZS5pdGVtLFxuLnVpLmludmVydGVkLmxpbmsubGlzdC5saXN0IC5hY3RpdmUuaXRlbSBhOm5vdCgudWkpIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNlbGVjdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDAuNWVtIDAuNWVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICB0cmFuc2l0aW9uOiAwLjFzIGNvbG9yIGVhc2UsIDAuMXMgcGFkZGluZy1sZWZ0IGVhc2UsIDAuMXMgYmFja2dyb3VuZC1jb2xvciBlYXNlO1xufVxuLnVpLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCxcbi51aS5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVpLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW06aG92ZXIsXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG4udWkuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbTphY3RpdmUsXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuLnVpLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW0uYWN0aXZlLFxuLnVpLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0uYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLyogQ2VsbGVkIC8gRGl2aWRlZCBTZWxlY3Rpb24gTGlzdCAqL1xuLnVpLmNlbGxlZC5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmRpdmlkZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQW5pbWF0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5hbmltYXRlZC5saXN0ID4gLml0ZW0ge1xuICB0cmFuc2l0aW9uOiAwLjI1cyBjb2xvciBlYXNlIDAuMXMsIDAuMjVzIHBhZGRpbmctbGVmdCBlYXNlIDAuMXMsIDAuMjVzIGJhY2tncm91bmQtY29sb3IgZWFzZSAwLjFzO1xufVxuLnVpLmFuaW1hdGVkLmxpc3Q6bm90KC5ob3Jpem9udGFsKSA+IC5pdGVtOmhvdmVyIHtcbiAgcGFkZGluZy1sZWZ0OiAxZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGaXR0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5maXR0ZWQubGlzdDpub3QoLnNlbGVjdGlvbikgLmxpc3QgPiAuaXRlbSxcbi51aS5maXR0ZWQubGlzdDpub3QoLnNlbGVjdGlvbikgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi51aS5maXR0ZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5maXR0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSB7XG4gIG1hcmdpbi1sZWZ0OiAtMC41ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCdWxsZXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xudWwudWkubGlzdCxcbi51aS5idWxsZXRlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG59XG51bC51aS5saXN0IGxpLFxuLnVpLmJ1bGxldGVkLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5idWxsZXRlZC5saXN0ID4gLml0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG51bC51aS5saXN0IGxpOmJlZm9yZSxcbi51aS5idWxsZXRlZC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlLFxuLnVpLmJ1bGxldGVkLmxpc3QgPiAuaXRlbTpiZWZvcmUge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBtYXJnaW4tbGVmdDogLTEuMjVyZW07XG4gIGNvbnRlbnQ6ICfigKInO1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbnVsLnVpLmxpc3QgbGk6YmVmb3JlLFxuLnVpLmJ1bGxldGVkLmxpc3QgLmxpc3QgPiBhLml0ZW06YmVmb3JlLFxuLnVpLmJ1bGxldGVkLmxpc3QgPiBhLml0ZW06YmVmb3JlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG51bC51aS5saXN0IHVsLFxuLnVpLmJ1bGxldGVkLmxpc3QgLmxpc3Q6bm90KC5pY29uKSB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cbi8qIEhvcml6b250YWwgQnVsbGV0ZWQgKi9cbnVsLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCxcbi51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbnVsLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCBsaSxcbi51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgPiAuaXRlbSB7XG4gIG1hcmdpbi1sZWZ0OiAxLjc1cmVtO1xufVxudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0IGxpOmZpcnN0LWNoaWxkLFxuLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG51bC51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgbGk6OmJlZm9yZSxcbi51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgPiAuaXRlbTo6YmVmb3JlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG51bC51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgbGk6Zmlyc3QtY2hpbGQ6OmJlZm9yZSxcbi51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIE9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbm9sLnVpLmxpc3QsXG4udWkub3JkZXJlZC5saXN0LFxuLnVpLm9yZGVyZWQubGlzdCAubGlzdDpub3QoLmljb24pLFxub2wudWkubGlzdCBvbCB7XG4gIGNvdW50ZXItcmVzZXQ6IG9yZGVyZWQ7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5vbC51aS5saXN0IGxpLFxuLnVpLm9yZGVyZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLm9yZGVyZWQubGlzdCA+IC5pdGVtIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5vbC51aS5saXN0IGxpOmJlZm9yZSxcbi51aS5vcmRlcmVkLmxpc3QgLmxpc3QgPiAuaXRlbTpiZWZvcmUsXG4udWkub3JkZXJlZC5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICBjb3VudGVyLWluY3JlbWVudDogb3JkZXJlZDtcbiAgY29udGVudDogY291bnRlcnMob3JkZXJlZCwgXCIuXCIpIFwiIFwiO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG9wYWNpdHk6IDAuODtcbn1cbm9sLnVpLmludmVydGVkLmxpc3QgbGk6YmVmb3JlLFxuLnVpLm9yZGVyZWQuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5vcmRlcmVkLmludmVydGVkLmxpc3QgPiAuaXRlbTpiZWZvcmUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLyogVmFsdWUgKi9cbi51aS5vcmRlcmVkLmxpc3QgLmxpc3QgPiAuaXRlbVtkYXRhLXZhbHVlXTpiZWZvcmUsXG4udWkub3JkZXJlZC5saXN0ID4gLml0ZW1bZGF0YS12YWx1ZV06YmVmb3JlIHtcbiAgY29udGVudDogYXR0cihkYXRhLXZhbHVlKTtcbn1cbm9sLnVpLmxpc3QgbGlbdmFsdWVdOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIodmFsdWUpO1xufVxuLyogQ2hpbGQgTGlzdHMgKi9cbm9sLnVpLmxpc3Qgb2wsXG4udWkub3JkZXJlZC5saXN0IC5saXN0Om5vdCguaWNvbikge1xuICBtYXJnaW4tbGVmdDogMWVtO1xufVxub2wudWkubGlzdCBvbCBsaTpiZWZvcmUsXG4udWkub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IC0yZW07XG59XG4vKiBIb3Jpem9udGFsIE9yZGVyZWQgKi9cbm9sLnVpLmhvcml6b250YWwubGlzdCxcbi51aS5vcmRlcmVkLmhvcml6b250YWwubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxub2wudWkuaG9yaXpvbnRhbC5saXN0IGxpOmJlZm9yZSxcbi51aS5vcmRlcmVkLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5vcmRlcmVkLmhvcml6b250YWwubGlzdCA+IC5pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbjogMCAwLjVlbSAwIDA7XG59XG4vKiBTdWZmaXhlZCBPcmRlcmVkICovXG5vbC51aS5zdWZmaXhlZC5saXN0IGxpOmJlZm9yZSxcbi51aS5zdWZmaXhlZC5vcmRlcmVkLmxpc3QgLmxpc3QgPiAuaXRlbTpiZWZvcmUsXG4udWkuc3VmZml4ZWQub3JkZXJlZC5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgY29udGVudDogY291bnRlcnMob3JkZXJlZCwgXCIuXCIpIFwiLlwiO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRGl2aWRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmRpdmlkZWQubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkuZGl2aWRlZC5saXN0IC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLnVpLmRpdmlkZWQubGlzdCAuaXRlbSAubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi51aS5kaXZpZGVkLmxpc3QgLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5kaXZpZGVkLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG4vKiBTdWIgTWVudSAqL1xuLnVpLmRpdmlkZWQubGlzdDpub3QoLmhvcml6b250YWwpIC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG59XG4vKiBEaXZpZGVkIGJ1bGxldGVkICovXG4udWkuZGl2aWRlZC5idWxsZXRlZC5saXN0Om5vdCguaG9yaXpvbnRhbCksXG4udWkuZGl2aWRlZC5idWxsZXRlZC5saXN0IC5saXN0Om5vdCguaWNvbikge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnVpLmRpdmlkZWQuYnVsbGV0ZWQubGlzdCA+IC5pdGVtOm5vdCguaG9yaXpvbnRhbCkge1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG59XG4vKiBEaXZpZGVkIE9yZGVyZWQgKi9cbi51aS5kaXZpZGVkLm9yZGVyZWQubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnVpLmRpdmlkZWQub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuZGl2aWRlZC5vcmRlcmVkLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cbi51aS5kaXZpZGVkLm9yZGVyZWQubGlzdCAuaXRlbSAubGlzdDpub3QoLmljb24pIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDAuMjE0Mjg1NzFlbTtcbn1cbi51aS5kaXZpZGVkLm9yZGVyZWQubGlzdCAuaXRlbSAubGlzdCA+IC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAxZW07XG59XG4vKiBEaXZpZGVkIFNlbGVjdGlvbiAqL1xuLnVpLmRpdmlkZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4vKiBEaXZpZGVkIGhvcml6b250YWwgKi9cbi51aS5kaXZpZGVkLmhvcml6b250YWwubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xufVxuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xufVxuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjY7XG59XG4udWkuaG9yaXpvbnRhbC5kaXZpZGVkLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5kaXZpZGVkLmludmVydGVkLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLmludmVydGVkLmxpc3QgPiAubGlzdCxcbi51aS5kaXZpZGVkLmludmVydGVkLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQ2VsbGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2VsbGVkLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQubGlzdCA+IC5saXN0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xufVxuLnVpLmNlbGxlZC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLyogUGFkZGluZyBvbiBhbGwgZWxlbWVudHMgKi9cbi51aS5jZWxsZWQubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwLjIxNDI4NTcxZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjIxNDI4NTcxZW07XG59XG4vKiBTdWIgTWVudSAqL1xuLnVpLmNlbGxlZC5saXN0IC5pdGVtIC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItd2lkdGg6IDA7XG59XG4udWkuY2VsbGVkLmxpc3QgLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG4vKiBDZWxsZWQgQnVsbGV0ZWQgKi9cbi51aS5jZWxsZWQuYnVsbGV0ZWQubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnVpLmNlbGxlZC5idWxsZXRlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLmJ1bGxldGVkLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cbi51aS5jZWxsZWQuYnVsbGV0ZWQubGlzdCAuaXRlbSAubGlzdDpub3QoLmljb24pIHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yMTQyODU3MWVtO1xufVxuLyogQ2VsbGVkIE9yZGVyZWQgKi9cbi51aS5jZWxsZWQub3JkZXJlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmNlbGxlZC5vcmRlcmVkLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cbi51aS5jZWxsZWQub3JkZXJlZC5saXN0IC5pdGVtIC5saXN0Om5vdCguaWNvbikge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yMTQyODU3MWVtO1xufVxuLnVpLmNlbGxlZC5vcmRlcmVkLmxpc3QgLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuLyogQ2VsbGVkIEhvcml6b250YWwgKi9cbi51aS5ob3Jpem9udGFsLmNlbGxlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4udWkuaG9yaXpvbnRhbC5jZWxsZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDAuNjtcbn1cbi51aS5ob3Jpem9udGFsLmNlbGxlZC5saXN0IC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCxcbi51aS5ob3Jpem9udGFsLmNlbGxlZC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLmNlbGxlZC5pbnZlcnRlZC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLmludmVydGVkLmxpc3QgPiAubGlzdCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLnVpLmNlbGxlZC5pbnZlcnRlZC5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQuaW52ZXJ0ZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFJlbGF4ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5yZWxheGVkLmxpc3Q6bm90KC5ob3Jpem9udGFsKSA+IC5pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgcGFkZGluZy10b3A6IDAuNDI4NTcxNDNlbTtcbn1cbi51aS5yZWxheGVkLmxpc3Q6bm90KC5ob3Jpem9udGFsKSA+IC5pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBwYWRkaW5nLWJvdHRvbTogMC40Mjg1NzE0M2VtO1xufVxuLnVpLmhvcml6b250YWwucmVsYXhlZC5saXN0IC5saXN0ID4gLml0ZW06bm90KDpmaXJzdC1jaGlsZCksXG4udWkuaG9yaXpvbnRhbC5yZWxheGVkLmxpc3QgPiAuaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbi51aS5ob3Jpem9udGFsLnJlbGF4ZWQubGlzdCAubGlzdCA+IC5pdGVtOm5vdCg6bGFzdC1jaGlsZCksXG4udWkuaG9yaXpvbnRhbC5yZWxheGVkLmxpc3QgPiAuaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi8qIFZlcnkgUmVsYXhlZCAqL1xuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIHBhZGRpbmctdG9wOiAwLjg1NzE0Mjg2ZW07XG59XG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmxpc3Q6bm90KC5ob3Jpem9udGFsKSA+IC5pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBwYWRkaW5nLWJvdHRvbTogMC44NTcxNDI4NmVtO1xufVxuLnVpLmhvcml6b250YWxbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmxpc3QgLmxpc3QgPiAuaXRlbTpub3QoOmZpcnN0LWNoaWxkKSxcbi51aS5ob3Jpem9udGFsW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0ID4gLml0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbn1cbi51aS5ob3Jpem9udGFsW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0IC5saXN0ID4gLml0ZW06bm90KDpsYXN0LWNoaWxkKSxcbi51aS5ob3Jpem9udGFsW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0ID4gLml0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5taW5pLmxpc3Qge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjllbTtcbn1cbi51aS50aW55Lmxpc3Qge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cbi51aS5zbWFsbC5saXN0IHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG59XG4udWkubGlzdCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLnVpLmxhcmdlLmxpc3Qge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cbi51aS5iaWcubGlzdCB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOWVtO1xufVxuLnVpLmh1Z2UubGlzdCB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M2VtO1xufVxuLnVpLm1hc3NpdmUubGlzdCB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MWVtO1xufVxuLnVpLm1pbmkuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkubWluaS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55Lmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLnRpbnkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG4udWkuc21hbGwuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuc21hbGwuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG4udWkuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDFyZW07XG59XG4udWkubGFyZ2UuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkubGFyZ2UuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4udWkuYmlnLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmJpZy5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi51aS5odWdlLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmh1Z2UuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG4udWkubWFzc2l2ZS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5tYXNzaXZlLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBMb2FkZXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIExvYWRlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNvbWUgZ2xvYmFsIGxvYWRlciBzdHlsZXMgZGVmaW5lZCBpbiBzaXRlLnZhcmlhYmxlcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTdGFuZGFyZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUZXh0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEV4YWN0IFNpemVzIChBdm9pZHMgUm91bmRpbmcgRXJyb3JzKSAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTG9hZGVyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU29tZSBnbG9iYWwgbG9hZGVyIHN0eWxlcyBkZWZpbmVkIGluIHNpdGUudmFyaWFibGVzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFN0YW5kYXJkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRleHQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRXhhY3QgU2l6ZXMgKEF2b2lkcyBSb3VuZGluZyBFcnJvcnMpICovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgTG9hZGVyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU3RhbmRhcmQgU2l6ZSAqL1xuLnVpLmxvYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xufVxuLyogU3RhdGljIFNoYXBlICovXG4udWkubG9hZGVyOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlcjogMC4yZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLyogQWN0aXZlIFNoYXBlICovXG4udWkubG9hZGVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGFuaW1hdGlvbjogbG9hZGVyIDAuNnMgaW5maW5pdGUgbGluZWFyO1xuICBib3JkZXI6IDAuMmVtIHNvbGlkICM3Njc2NzY7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50O1xufVxuLyogU3BlZWRzICovXG4udWkuZmFzdC5sb2FkaW5nLmxvYWRpbmc6YWZ0ZXIsXG4udWkuZmFzdC5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmZhc3QubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmZhc3QubG9hZGVyOmFmdGVyIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xufVxuLnVpLnNsb3cubG9hZGluZy5sb2FkaW5nOmFmdGVyLFxuLnVpLnNsb3cubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5zbG93LmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5zbG93LmxvYWRlcjphZnRlciB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC45cztcbn1cbi8qIEFjdGl2ZSBBbmltYXRpb24gKi9cbkBrZXlmcmFtZXMgbG9hZGVyIHtcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyogU2l6ZXMgKi9cbi51aS5taW5pLmxvYWRlcjpiZWZvcmUsXG4udWkubWluaS5sb2FkZXI6YWZ0ZXIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW46IDAgMCAwIC0wLjVyZW07XG59XG4udWkudGlueS5sb2FkZXI6YmVmb3JlLFxuLnVpLnRpbnkubG9hZGVyOmFmdGVyIHtcbiAgd2lkdGg6IDEuMTQyODU3MTRyZW07XG4gIGhlaWdodDogMS4xNDI4NTcxNHJlbTtcbiAgbWFyZ2luOiAwIDAgMCAtMC41NzE0Mjg1N3JlbTtcbn1cbi51aS5zbWFsbC5sb2FkZXI6YmVmb3JlLFxuLnVpLnNtYWxsLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiAxLjcxNDI4NTcxcmVtO1xuICBoZWlnaHQ6IDEuNzE0Mjg1NzFyZW07XG4gIG1hcmdpbjogMCAwIDAgLTAuODU3MTQyODZyZW07XG59XG4udWkubG9hZGVyOmJlZm9yZSxcbi51aS5sb2FkZXI6YWZ0ZXIge1xuICB3aWR0aDogMi4yODU3MTQyOXJlbTtcbiAgaGVpZ2h0OiAyLjI4NTcxNDI5cmVtO1xuICBtYXJnaW46IDAgMCAwIC0xLjE0Mjg1NzE0cmVtO1xufVxuLnVpLmxhcmdlLmxvYWRlcjpiZWZvcmUsXG4udWkubGFyZ2UubG9hZGVyOmFmdGVyIHtcbiAgd2lkdGg6IDMuNDI4NTcxNDNyZW07XG4gIGhlaWdodDogMy40Mjg1NzE0M3JlbTtcbiAgbWFyZ2luOiAwIDAgMCAtMS43MTQyODU3MXJlbTtcbn1cbi51aS5iaWcubG9hZGVyOmJlZm9yZSxcbi51aS5iaWcubG9hZGVyOmFmdGVyIHtcbiAgd2lkdGg6IDMuNzE0Mjg1NzFyZW07XG4gIGhlaWdodDogMy43MTQyODU3MXJlbTtcbiAgbWFyZ2luOiAwIDAgMCAtMS44NTcxNDI4NnJlbTtcbn1cbi51aS5odWdlLmxvYWRlcjpiZWZvcmUsXG4udWkuaHVnZS5sb2FkZXI6YWZ0ZXIge1xuICB3aWR0aDogNC4xNDI4NTcxNHJlbTtcbiAgaGVpZ2h0OiA0LjE0Mjg1NzE0cmVtO1xuICBtYXJnaW46IDAgMCAwIC0yLjA3MTQyODU3cmVtO1xufVxuLnVpLm1hc3NpdmUubG9hZGVyOmJlZm9yZSxcbi51aS5tYXNzaXZlLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiA0LjU3MTQyODU3cmVtO1xuICBoZWlnaHQ6IDQuNTcxNDI4NTdyZW07XG4gIG1hcmdpbjogMCAwIDAgLTIuMjg1NzE0MjlyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTaG93IGluc2lkZSBhY3RpdmUgZGltbWVyICovXG4udWkuZGltbWVyID4gLmxvYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyogQmxhY2sgRGltbWVyICovXG4udWkuZGltbWVyID4gLnVpLmxvYWRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuZGltbWVyID4gLnVpLmxvYWRlcjpub3QoLmVsYXN0aWMpOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbn1cbi8qIFdoaXRlIERpbW1lciAoSW52ZXJ0ZWQpICovXG4udWkuaW52ZXJ0ZWQuZGltbWVyID4gLnVpLmxvYWRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLnVpLmludmVydGVkLmRpbW1lciA+IC51aS5sb2FkZXI6bm90KC5lbGFzdGljKTpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnVpLnVpLnVpLnRleHQubG9hZGVyIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmluZGV0ZXJtaW5hdGUubG9hZGVyOmFmdGVyIHtcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjJzO1xufVxuLnVpLmxvYWRlci5hY3RpdmUsXG4udWkubG9hZGVyLnZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51aS5sb2FkZXIuZGlzYWJsZWQsXG4udWkubG9hZGVyLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVyICovXG4udWkubWluaS5sb2FkZXIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDAuNzg1NzE0MjllbTtcbn1cbi51aS50aW55LmxvYWRlciB7XG4gIHdpZHRoOiAxLjE0Mjg1NzE0cmVtO1xuICBoZWlnaHQ6IDEuMTQyODU3MTRyZW07XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NmVtO1xufVxuLnVpLnNtYWxsLmxvYWRlciB7XG4gIHdpZHRoOiAxLjcxNDI4NTcxcmVtO1xuICBoZWlnaHQ6IDEuNzE0Mjg1NzFyZW07XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M2VtO1xufVxuLnVpLmxvYWRlciB7XG4gIHdpZHRoOiAyLjI4NTcxNDI5cmVtO1xuICBoZWlnaHQ6IDIuMjg1NzE0MjlyZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLnVpLmxhcmdlLmxvYWRlciB7XG4gIHdpZHRoOiAzLjQyODU3MTQzcmVtO1xuICBoZWlnaHQ6IDMuNDI4NTcxNDNyZW07XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNGVtO1xufVxuLnVpLmJpZy5sb2FkZXIge1xuICB3aWR0aDogMy43MTQyODU3MXJlbTtcbiAgaGVpZ2h0OiAzLjcxNDI4NTcxcmVtO1xuICBmb250LXNpemU6IDEuMjg1NzE0MjllbTtcbn1cbi51aS5odWdlLmxvYWRlciB7XG4gIHdpZHRoOiA0LjE0Mjg1NzE0cmVtO1xuICBoZWlnaHQ6IDQuMTQyODU3MTRyZW07XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M2VtO1xufVxuLnVpLm1hc3NpdmUubG9hZGVyIHtcbiAgd2lkdGg6IDQuNTcxNDI4NTdyZW07XG4gIGhlaWdodDogNC41NzE0Mjg1N3JlbTtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxZW07XG59XG4vKiBUZXh0IExvYWRlciAqL1xuLnVpLm1pbmkudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IDFyZW07XG4gIHBhZGRpbmctdG9wOiAxLjc4NTcxNDI5cmVtO1xufVxuLnVpLnRpbnkudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IDEuMTQyODU3MTRyZW07XG4gIHBhZGRpbmctdG9wOiAxLjkyODU3MTQzcmVtO1xufVxuLnVpLnNtYWxsLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiAxLjcxNDI4NTcxcmVtO1xuICBwYWRkaW5nLXRvcDogMi41cmVtO1xufVxuLnVpLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiAyLjI4NTcxNDI5cmVtO1xuICBwYWRkaW5nLXRvcDogMy4wNzE0Mjg1N3JlbTtcbn1cbi51aS5sYXJnZS50ZXh0LmxvYWRlciB7XG4gIG1pbi13aWR0aDogMy40Mjg1NzE0M3JlbTtcbiAgcGFkZGluZy10b3A6IDQuMjE0Mjg1NzFyZW07XG59XG4udWkuYmlnLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiAzLjcxNDI4NTcxcmVtO1xuICBwYWRkaW5nLXRvcDogNC41cmVtO1xufVxuLnVpLmh1Z2UudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IDQuMTQyODU3MTRyZW07XG4gIHBhZGRpbmctdG9wOiA0LjkyODU3MTQzcmVtO1xufVxuLnVpLm1hc3NpdmUudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IDQuNTcxNDI4NTdyZW07XG4gIHBhZGRpbmctdG9wOiA1LjM1NzE0Mjg2cmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucHJpbWFyeS5lbGFzdGljLmxvYWRlci5sb2FkZXI6YmVmb3JlLFxuLnVpLnByaW1hcnkuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjpiZWZvcmUsXG4udWkucHJpbWFyeS5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmFmdGVyLFxuLnVpLnByaW1hcnkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5wcmltYXJ5LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5wcmltYXJ5LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkucHJpbWFyeS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCgudXN1YWwpOm5vdCguYnV0dG9uKTphZnRlcixcbi51aS5wcmltYXJ5LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLnByaW1hcnkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5wcmltYXJ5LmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5lbGFzdGljLmxvYWRlcjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLmludmVydGVkLnByaW1hcnkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLmludmVydGVkLnByaW1hcnkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCgudXN1YWwpOmFmdGVyLFxuLnVpLmludmVydGVkLnByaW1hcnkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLnByaW1hcnkubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogIzU0QzhGRjtcbn1cbi51aS5zZWNvbmRhcnkuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS5zZWNvbmRhcnkuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjpiZWZvcmUsXG4udWkuc2Vjb25kYXJ5LmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YWZ0ZXIsXG4udWkuc2Vjb25kYXJ5LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuc2Vjb25kYXJ5LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5zZWNvbmRhcnkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5zZWNvbmRhcnkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTpub3QoLmJ1dHRvbik6YWZ0ZXIsXG4udWkuc2Vjb25kYXJ5LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLnNlY29uZGFyeS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLnNlY29uZGFyeS5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLnVpLmludmVydGVkLnNlY29uZGFyeS5lbGFzdGljLmxvYWRlcjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjNTQ1NDU0O1xufVxuLnVpLnJlZC5lbGFzdGljLmxvYWRlci5sb2FkZXI6YmVmb3JlLFxuLnVpLnJlZC5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmJlZm9yZSxcbi51aS5yZWQuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi51aS5yZWQuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5yZWQuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLnJlZC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLnJlZC5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCgudXN1YWwpOm5vdCguYnV0dG9uKTphZnRlcixcbi51aS5yZWQubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkucmVkLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkucmVkLmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgY29sb3I6ICNEQjI4Mjg7XG59XG4udWkuaW52ZXJ0ZWQucmVkLmVsYXN0aWMubG9hZGVyOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5yZWQuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5yZWQuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLmludmVydGVkLnJlZC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5yZWQubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTphZnRlcixcbi51aS5pbnZlcnRlZC5yZWQubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQucmVkLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQucmVkLmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgY29sb3I6ICNGRjY5NUU7XG59XG4udWkub3JhbmdlLmVsYXN0aWMubG9hZGVyLmxvYWRlcjpiZWZvcmUsXG4udWkub3JhbmdlLmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YmVmb3JlLFxuLnVpLm9yYW5nZS5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmFmdGVyLFxuLnVpLm9yYW5nZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLm9yYW5nZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkub3JhbmdlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkub3JhbmdlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6bm90KC5idXR0b24pOmFmdGVyLFxuLnVpLm9yYW5nZS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5vcmFuZ2UubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5vcmFuZ2UubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogI0YyNzExQztcbn1cbi51aS5pbnZlcnRlZC5vcmFuZ2UuZWxhc3RpYy5sb2FkZXI6YmVmb3JlLFxuLnVpLmludmVydGVkLm9yYW5nZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLmludmVydGVkLm9yYW5nZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmludmVydGVkLm9yYW5nZS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCgudXN1YWwpOmFmdGVyLFxuLnVpLmludmVydGVkLm9yYW5nZS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC5vcmFuZ2UubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC5vcmFuZ2UubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogI0ZGODUxQjtcbn1cbi51aS55ZWxsb3cuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS55ZWxsb3cuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjpiZWZvcmUsXG4udWkueWVsbG93LmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YWZ0ZXIsXG4udWkueWVsbG93LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkueWVsbG93LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS55ZWxsb3cuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS55ZWxsb3cubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTpub3QoLmJ1dHRvbik6YWZ0ZXIsXG4udWkueWVsbG93LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLnllbGxvdy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLnllbGxvdy5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjRkJCRDA4O1xufVxuLnVpLmludmVydGVkLnllbGxvdy5lbGFzdGljLmxvYWRlcjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC55ZWxsb3cuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLnllbGxvdy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLnllbGxvdy5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuLnVpLm9saXZlLmVsYXN0aWMubG9hZGVyLmxvYWRlcjpiZWZvcmUsXG4udWkub2xpdmUuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjpiZWZvcmUsXG4udWkub2xpdmUuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi51aS5vbGl2ZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLm9saXZlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5vbGl2ZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLm9saXZlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6bm90KC5idXR0b24pOmFmdGVyLFxuLnVpLm9saXZlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLm9saXZlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkub2xpdmUubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogI0I1Q0MxODtcbn1cbi51aS5pbnZlcnRlZC5vbGl2ZS5lbGFzdGljLmxvYWRlcjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQub2xpdmUuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5vbGl2ZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQub2xpdmUuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQub2xpdmUubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTphZnRlcixcbi51aS5pbnZlcnRlZC5vbGl2ZS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC5vbGl2ZS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLm9saXZlLmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgY29sb3I6ICNEOUU3Nzg7XG59XG4udWkuZ3JlZW4uZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS5ncmVlbi5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmJlZm9yZSxcbi51aS5ncmVlbi5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmFmdGVyLFxuLnVpLmdyZWVuLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuZ3JlZW4uZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLmdyZWVuLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuZ3JlZW4ubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTpub3QoLmJ1dHRvbik6YWZ0ZXIsXG4udWkuZ3JlZW4ubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkuZ3JlZW4ubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5ncmVlbi5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjMjFCQTQ1O1xufVxuLnVpLmludmVydGVkLmdyZWVuLmVsYXN0aWMubG9hZGVyOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5ncmVlbi5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLmludmVydGVkLmdyZWVuLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5ncmVlbi5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5ncmVlbi5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCgudXN1YWwpOmFmdGVyLFxuLnVpLmludmVydGVkLmdyZWVuLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLmdyZWVuLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4ubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogIzJFQ0M0MDtcbn1cbi51aS50ZWFsLmVsYXN0aWMubG9hZGVyLmxvYWRlcjpiZWZvcmUsXG4udWkudGVhbC5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmJlZm9yZSxcbi51aS50ZWFsLmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YWZ0ZXIsXG4udWkudGVhbC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLnRlYWwuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLnRlYWwuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS50ZWFsLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6bm90KC5idXR0b24pOmFmdGVyLFxuLnVpLnRlYWwubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkudGVhbC5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLnRlYWwubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogIzAwQjVBRDtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmVsYXN0aWMubG9hZGVyOmJlZm9yZSxcbi51aS5pbnZlcnRlZC50ZWFsLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQudGVhbC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQudGVhbC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC50ZWFsLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQudGVhbC5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC50ZWFsLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQudGVhbC5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjNkRGRkZGO1xufVxuLnVpLmJsdWUuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS5ibHVlLmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YmVmb3JlLFxuLnVpLmJsdWUuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi51aS5ibHVlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuYmx1ZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuYmx1ZS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmJsdWUubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTpub3QoLmJ1dHRvbik6YWZ0ZXIsXG4udWkuYmx1ZS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5ibHVlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkuYmx1ZS5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjMjE4NUQwO1xufVxuLnVpLmludmVydGVkLmJsdWUuZWxhc3RpYy5sb2FkZXI6YmVmb3JlLFxuLnVpLmludmVydGVkLmJsdWUuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5ibHVlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5ibHVlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmludmVydGVkLmJsdWUubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTphZnRlcixcbi51aS5pbnZlcnRlZC5ibHVlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLmJsdWUubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC5ibHVlLmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG4udWkudmlvbGV0LmVsYXN0aWMubG9hZGVyLmxvYWRlcjpiZWZvcmUsXG4udWkudmlvbGV0LmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YmVmb3JlLFxuLnVpLnZpb2xldC5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmFmdGVyLFxuLnVpLnZpb2xldC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLnZpb2xldC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkudmlvbGV0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkudmlvbGV0LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6bm90KC5idXR0b24pOmFmdGVyLFxuLnVpLnZpb2xldC5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS52aW9sZXQubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS52aW9sZXQubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogIzY0MzVDOTtcbn1cbi51aS5pbnZlcnRlZC52aW9sZXQuZWxhc3RpYy5sb2FkZXI6YmVmb3JlLFxuLnVpLmludmVydGVkLnZpb2xldC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLmludmVydGVkLnZpb2xldC5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmludmVydGVkLnZpb2xldC5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCgudXN1YWwpOmFmdGVyLFxuLnVpLmludmVydGVkLnZpb2xldC5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC52aW9sZXQubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC52aW9sZXQubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogI0EyOTFGQjtcbn1cbi51aS5wdXJwbGUuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS5wdXJwbGUuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjpiZWZvcmUsXG4udWkucHVycGxlLmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YWZ0ZXIsXG4udWkucHVycGxlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkucHVycGxlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5wdXJwbGUuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5wdXJwbGUubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTpub3QoLmJ1dHRvbik6YWZ0ZXIsXG4udWkucHVycGxlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLnB1cnBsZS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLnB1cnBsZS5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjQTMzM0M4O1xufVxuLnVpLmludmVydGVkLnB1cnBsZS5lbGFzdGljLmxvYWRlcjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5wdXJwbGUuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjREM3M0ZGO1xufVxuLnVpLnBpbmsuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS5waW5rLmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YmVmb3JlLFxuLnVpLnBpbmsuYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi51aS5waW5rLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkucGluay5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkucGluay5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLnBpbmsubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTpub3QoLmJ1dHRvbik6YWZ0ZXIsXG4udWkucGluay5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5waW5rLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkucGluay5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjRTAzOTk3O1xufVxuLnVpLmludmVydGVkLnBpbmsuZWxhc3RpYy5sb2FkZXI6YmVmb3JlLFxuLnVpLmludmVydGVkLnBpbmsuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5waW5rLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5waW5rLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmludmVydGVkLnBpbmsubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTphZnRlcixcbi51aS5pbnZlcnRlZC5waW5rLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLnBpbmsubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC5waW5rLmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgY29sb3I6ICNGRjhFREY7XG59XG4udWkuYnJvd24uZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS5icm93bi5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmJlZm9yZSxcbi51aS5icm93bi5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmFmdGVyLFxuLnVpLmJyb3duLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuYnJvd24uZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLmJyb3duLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuYnJvd24ubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTpub3QoLmJ1dHRvbik6YWZ0ZXIsXG4udWkuYnJvd24ubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkuYnJvd24ubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5icm93bi5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjQTU2NzNGO1xufVxuLnVpLmludmVydGVkLmJyb3duLmVsYXN0aWMubG9hZGVyOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5icm93bi5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLmludmVydGVkLmJyb3duLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5icm93bi5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5icm93bi5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCgudXN1YWwpOmFmdGVyLFxuLnVpLmludmVydGVkLmJyb3duLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLmJyb3duLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuYnJvd24ubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogI0Q2N0MxQztcbn1cbi51aS5ncmV5LmVsYXN0aWMubG9hZGVyLmxvYWRlcjpiZWZvcmUsXG4udWkuZ3JleS5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmJlZm9yZSxcbi51aS5ncmV5LmJhc2ljLmVsYXN0aWMubG9hZGluZy5idXR0b246YWZ0ZXIsXG4udWkuZ3JleS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLmdyZXkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLmdyZXkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5ncmV5LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6bm90KC5idXR0b24pOmFmdGVyLFxuLnVpLmdyZXkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkuZ3JleS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmdyZXkubG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi51aS5pbnZlcnRlZC5ncmV5LmVsYXN0aWMubG9hZGVyOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5ncmV5LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuZ3JleS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuZ3JleS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5ncmV5LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JleS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC5ncmV5LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JleS5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGNvbG9yOiAjRENERERFO1xufVxuLnVpLmJsYWNrLmVsYXN0aWMubG9hZGVyLmxvYWRlcjpiZWZvcmUsXG4udWkuYmxhY2suYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjpiZWZvcmUsXG4udWkuYmxhY2suYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi51aS5ibGFjay5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguc2VnbWVudCk6YmVmb3JlLFxuLnVpLmJsYWNrLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5ibGFjay5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmJsYWNrLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6bm90KC5idXR0b24pOmFmdGVyLFxuLnVpLmJsYWNrLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmJsYWNrLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkuYmxhY2subG9hZGVyLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi51aS5pbnZlcnRlZC5ibGFjay5lbGFzdGljLmxvYWRlcjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuYmxhY2suZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5ibGFjay5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuYmxhY2suZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuYmxhY2subG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTphZnRlcixcbi51aS5pbnZlcnRlZC5ibGFjay5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5pbnZlcnRlZC5ibGFjay5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmludmVydGVkLmJsYWNrLmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgY29sb3I6ICM1NDU0NTQ7XG59XG4udWkuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOmJlZm9yZSxcbi51aS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTphZnRlcixcbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG4udWkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmJ1dHRvbjpub3QoLmludmVydGVkKTpub3QoLmJhc2ljKTpiZWZvcmUge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5lbGFzdGljLmJhc2ljLmxvYWRpbmcuYnV0dG9uOmJlZm9yZSxcbi51aS5lbGFzdGljLmJhc2ljLmxvYWRpbmcuYnV0dG9uOmFmdGVyIHtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4udWkuZG91YmxlLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcuYnV0dG9uOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudENvbG9yO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW5saW5lXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW5saW5lLmxvYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cbi51aS5pbmxpbmUubG9hZGVyLmFjdGl2ZSxcbi51aS5pbmxpbmUubG9hZGVyLnZpc2libGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4vKiBDZW50ZXJlZCBJbmxpbmUgKi9cbi51aS5jZW50ZXJlZC5pbmxpbmUubG9hZGVyLmFjdGl2ZSxcbi51aS5jZW50ZXJlZC5pbmxpbmUubG9hZGVyLnZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzphZnRlcixcbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkubG9hZGVyLmxvYWRlci5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguZG91YmxlKTphZnRlcixcbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguZG91YmxlKSAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLmRvdWJsZSkgPiBpLmljb246YWZ0ZXIsXG4udWkubG9hZGVyLmxvYWRlci5sb2FkZXIubG9hZGVyLmxvYWRlci5sb2FkZXI6bm90KC5kb3VibGUpOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcuc2VnbWVudDphZnRlcixcbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5mb3JtOmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcuc2VnbWVudDpub3QoLmRvdWJsZSk6YWZ0ZXIsXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcuZm9ybTpub3QoLmRvdWJsZSk6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGFzdGljXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZGltbWVyID4gLnVpLmVsYXN0aWMubG9hZGVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuZGltbWVyID4gLnVpLmVsYXN0aWMubG9hZGVyIHtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4udWkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmc6bm90KC5mb3JtKTpub3QoLnNlZ21lbnQpOmFmdGVyLFxuLnVpLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5lbGFzdGljLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5lbGFzdGljLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBhbmltYXRpb246IGxvYWRlciAxcyBpbmZpbml0ZSBjdWJpYy1iZXppZXIoMC4yNywgMS4wNSwgMC45MiwgMC42MSk7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbn1cbi51aS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguZm9ybSk6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YmVmb3JlLFxuLnVpLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmVsYXN0aWMubG9hZGVyLmxvYWRlcjpiZWZvcmUge1xuICBhbmltYXRpb246IGVsYXN0aWMtbG9hZGVyIDFzIGluZmluaXRlIGN1YmljLWJlemllcigwLjI3LCAxLjA1LCAwLjkyLCAwLjYxKTtcbiAgLW1vei1hbmltYXRpb246IGN1cnJlbnRjb2xvci1lbGFzdGljLWxvYWRlciAxcyBpbmZpbml0ZSBjdWJpYy1iZXppZXIoMC4yNywgMS4wNSwgMC45MiwgMC42MSk7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4udWkuZWxhc3RpYy5pbmxpbmUubG9hZGVyOmVtcHR5IHtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgOHMgaW5maW5pdGUgbGluZWFyO1xufVxuLnVpLnNsb3cuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmc6bm90KC5mb3JtKTpub3QoLnNlZ21lbnQpOmFmdGVyLFxuLnVpLnNsb3cuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLnNsb3cuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkuc2xvdy5lbGFzdGljLmxvYWRlci5sb2FkZXI6YWZ0ZXIge1xuICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC40NXM7XG59XG4udWkuc2xvdy5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCguZm9ybSk6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4udWkuc2xvdy5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuc2xvdy5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbi51aS5zbG93LmVsYXN0aWMubG9hZGVyLmxvYWRlcjpiZWZvcmUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG59XG4udWkuZmFzdC5lbGFzdGljLmxvYWRpbmcubG9hZGluZzpub3QoLmZvcm0pOm5vdCguc2VnbWVudCk6YWZ0ZXIsXG4udWkuZmFzdC5lbGFzdGljLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkuZmFzdC5lbGFzdGljLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5mYXN0LmVsYXN0aWMubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC42NnM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5mb3JtKTpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmZhc3QuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC42NnM7XG59XG5Aa2V5ZnJhbWVzIGVsYXN0aWMtbG9hZGVyIHtcbiAgMCUsXG4gIDElIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgMS4xJSxcbiAgNTAlIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogaW5oZXJpdDtcbiAgfVxuICAxMCUsXG4gIDM1LjElIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAxMC4xJSxcbiAgMzUlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBpbmhlcml0O1xuICB9XG4gIDUwLjElIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgY3VycmVudGNvbG9yLWVsYXN0aWMtbG9hZGVyIHtcbiAgMCUsXG4gIDElIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgMS4xJSxcbiAgNTAlIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogY3VycmVudENvbG9yO1xuICB9XG4gIDEwJSxcbiAgMzUuMSUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIDEwLjElLFxuICAzNSUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgfVxuICA1MC4xJSB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIDEwMCUge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gTG9hZGVyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyogS2V5IENvbnRlbnQgU2l6aW5nICovXG4vKiBJbnRlcnZhbCBiZXR3ZWVuIGNvbnNlY3V0aXZlIHBsYWNlaG9sZGVycyAqL1xuLyogUmVwZWF0ZWQgUGxhY2Vob2xkZXIgKi9cbi8qIEltYWdlICovXG4vKiBIZWFkZXIgSW1hZ2UgKi9cbi8qIFBhcmFncmFwaCAqL1xuLyogR2xvdyBHcmFkaWVudCAqL1xuLyogVmFyaWF0aW9ucyAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qIEtleSBDb250ZW50IFNpemluZyAqL1xuLyogSW50ZXJ2YWwgYmV0d2VlbiBjb25zZWN1dGl2ZSBwbGFjZWhvbGRlcnMgKi9cbi8qIFJlcGVhdGVkIFBsYWNlaG9sZGVyICovXG4vKiBJbWFnZSAqL1xuLyogSGVhZGVyIEltYWdlICovXG4vKiBQYXJhZ3JhcGggKi9cbi8qIEdsb3cgR3JhZGllbnQgKi9cbi8qIFZhcmlhdGlvbnMgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucGxhY2Vob2xkZXIge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBhbmltYXRpb246IHBsYWNlaG9sZGVyU2hpbW1lciAycyBsaW5lYXI7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC4wOCkgMCwgcmdiYSgwLCAwLCAwLCAwLjE1KSAxNSUsIHJnYmEoMCwgMCwgMCwgMC4wOCkgMzAlKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMjAwcHggMTAwJTtcbiAgbWF4LXdpZHRoOiAzMHJlbTtcbn1cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXJTaGltbWVyIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjAwcHggMDtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMjAwcHggMDtcbiAgfVxufVxuLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cbi51aS5wbGFjZWhvbGRlciArIC51aS5wbGFjZWhvbGRlciB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4xNXM7XG59XG4udWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIge1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG4udWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNDVzO1xufVxuLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xufVxuLnVpLnBsYWNlaG9sZGVyLFxuLnVpLnBsYWNlaG9sZGVyID4gOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAuaW1hZ2UuaGVhZGVyOmFmdGVyLFxuLnVpLnBsYWNlaG9sZGVyIC5saW5lLFxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5wbGFjZWhvbGRlci5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogSW1hZ2UgKi9cbi51aS5wbGFjZWhvbGRlciAuaW1hZ2U6bm90KC5oZWFkZXIpOm5vdCgudWkpOm5vdCguaWNvbikge1xuICBoZWlnaHQ6IDEwMHB4O1xufVxuLnVpLnBsYWNlaG9sZGVyIC5zcXVhcmUuaW1hZ2U6bm90KC5oZWFkZXIpIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvKiAxLzEgYXNwZWN0IHJhdGlvICovXG4gIHBhZGRpbmctdG9wOiAxMDAlO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5yZWN0YW5ndWxhci5pbWFnZTpub3QoLmhlYWRlcikge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIDQvMyBhc3BlY3QgcmF0aW8gKi9cbiAgcGFkZGluZy10b3A6IDc1JTtcbn1cbi8qIExpbmVzICovXG4udWkucGxhY2Vob2xkZXIgLmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMC44NTcxNDI4NmVtO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAubGluZTphZnRlciB7XG4gIHRvcDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cbi51aS5wbGFjZWhvbGRlciAubGluZTpiZWZvcmUge1xuICBsZWZ0OiAwO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmFmdGVyIHtcbiAgcmlnaHQ6IDA7XG59XG4vKiBBbnkgTGluZXMgKi9cbi51aS5wbGFjZWhvbGRlciAubGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAubGluZTphZnRlciB7XG4gIGhlaWdodDogMC41ZW07XG59XG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cbi8qIEhlYWRlciBJbWFnZSArIDIgTGluZXMgKi9cbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLyogTGluZSBPdXRkZW50ICovXG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bnRoLWNoaWxkKDEpOmFmdGVyIHtcbiAgd2lkdGg6IDA7XG59XG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bnRoLWNoaWxkKDIpOmFmdGVyIHtcbiAgd2lkdGg6IDUwJTtcbn1cbi51aS5wbGFjZWhvbGRlciAubGluZTpudGgtY2hpbGQoMyk6YWZ0ZXIge1xuICB3aWR0aDogMTAlO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOm50aC1jaGlsZCg0KTphZnRlciB7XG4gIHdpZHRoOiAzNSU7XG59XG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bnRoLWNoaWxkKDUpOmFmdGVyIHtcbiAgd2lkdGg6IDY1JTtcbn1cbi8qIEhlYWRlciBMaW5lIDEgJiAyKi9cbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyIC5saW5lIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42NDI4NTcxNGVtO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6YmVmb3JlLFxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6YWZ0ZXIge1xuICBoZWlnaHQ6IDAuNjQyODU3MTRlbTtcbn1cbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyIC5saW5lOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXRvcDogMC42NDI4NTcxNGVtO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6YWZ0ZXIge1xuICB3aWR0aDogMjAlO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6bnRoLWNoaWxkKDIpOmFmdGVyIHtcbiAgd2lkdGg6IDYwJTtcbn1cbi8qIEltYWdlIEhlYWRlciAqL1xuLnVpLnBsYWNlaG9sZGVyIC5pbWFnZS5oZWFkZXIgLmxpbmUge1xuICBtYXJnaW4tbGVmdDogM2VtO1xufVxuLnVpLnBsYWNlaG9sZGVyIC5pbWFnZS5oZWFkZXIgLmxpbmU6YmVmb3JlIHtcbiAgd2lkdGg6IDAuNzE0Mjg1NzFyZW07XG59XG4udWkucGxhY2Vob2xkZXIgLmltYWdlLmhlYWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDAuODU3MTQyODZlbTtcbiAgY29udGVudDogJyc7XG4gIG1hcmdpbi1sZWZ0OiAzZW07XG59XG4vKiBTcGFjaW5nICovXG4udWkucGxhY2Vob2xkZXIgLmltYWdlIC5saW5lOmZpcnN0LWNoaWxkLFxuLnVpLnBsYWNlaG9sZGVyIC5wYXJhZ3JhcGggLmxpbmU6Zmlyc3QtY2hpbGQsXG4udWkucGxhY2Vob2xkZXIgLmhlYWRlciAubGluZTpmaXJzdC1jaGlsZCB7XG4gIGhlaWdodDogMC4wMXB4O1xufVxuLnVpLnBsYWNlaG9sZGVyIC5pbWFnZTpub3QoOmZpcnN0LWNoaWxkKTpiZWZvcmUsXG4udWkucGxhY2Vob2xkZXIgLnBhcmFncmFwaDpub3QoOmZpcnN0LWNoaWxkKTpiZWZvcmUsXG4udWkucGxhY2Vob2xkZXIgLmhlYWRlcjpub3QoOmZpcnN0LWNoaWxkKTpiZWZvcmUge1xuICBoZWlnaHQ6IDEuNDI4NTcxNDNlbTtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyogSW52ZXJ0ZWQgQ29udGVudCBMb2FkZXIgKi9cbi51aS5pbnZlcnRlZC5wbGFjZWhvbGRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSAwLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTQpIDE1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSAzMCUpO1xufVxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyLFxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyID4gOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5wbGFjZWhvbGRlciAuaW1hZ2UuaGVhZGVyOmFmdGVyLFxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyIC5saW5lLFxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyIC5saW5lOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucGxhY2Vob2xkZXIgLmZ1bGwubGluZS5saW5lLmxpbmU6YWZ0ZXIge1xuICB3aWR0aDogMDtcbn1cbi51aS5wbGFjZWhvbGRlciAudmVyeS5sb25nLmxpbmUubGluZS5saW5lOmFmdGVyIHtcbiAgd2lkdGg6IDEwJTtcbn1cbi51aS5wbGFjZWhvbGRlciAubG9uZy5saW5lLmxpbmUubGluZTphZnRlciB7XG4gIHdpZHRoOiAzNSU7XG59XG4udWkucGxhY2Vob2xkZXIgLm1lZGl1bS5saW5lLmxpbmUubGluZTphZnRlciB7XG4gIHdpZHRoOiA1MCU7XG59XG4udWkucGxhY2Vob2xkZXIgLnNob3J0LmxpbmUubGluZS5saW5lOmFmdGVyIHtcbiAgd2lkdGg6IDY1JTtcbn1cbi51aS5wbGFjZWhvbGRlciAudmVyeS5zaG9ydC5saW5lLmxpbmUubGluZTphZnRlciB7XG4gIHdpZHRoOiA4MCU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mbHVpZC5wbGFjZWhvbGRlciB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBSYWlsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFJhaWxcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIENsb3NlICovXG4vKiBEaXZpZGluZyAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBSYWlsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBDbG9zZSAqL1xuLyogRGl2aWRpbmcgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgUmFpbHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkucmFpbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMTAwJTtcbn1cbi51aS5sZWZ0LnJhaWwge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAwJTtcbiAgcGFkZGluZzogMCAycmVtIDAgMDtcbiAgbWFyZ2luOiAwIDJyZW0gMCAwO1xufVxuLnVpLnJpZ2h0LnJhaWwge1xuICBsZWZ0OiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgcGFkZGluZzogMCAwIDAgMnJlbTtcbiAgbWFyZ2luOiAwIDAgMCAycmVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW50ZXJuYWxcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubGVmdC5pbnRlcm5hbC5yYWlsIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDAgMCAwIDJyZW07XG4gIG1hcmdpbjogMCAwIDAgMnJlbTtcbn1cbi51aS5yaWdodC5pbnRlcm5hbC5yYWlsIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAgMnJlbSAwIDA7XG4gIG1hcmdpbjogMCAycmVtIDAgMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBEaXZpZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXZpZGluZy5yYWlsIHtcbiAgd2lkdGg6IDMwMi41cHg7XG59XG4udWkubGVmdC5kaXZpZGluZy5yYWlsIHtcbiAgcGFkZGluZzogMCAyLjVyZW0gMCAwO1xuICBtYXJnaW46IDAgMi41cmVtIDAgMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5yaWdodC5kaXZpZGluZy5yYWlsIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBwYWRkaW5nOiAwIDAgMCAyLjVyZW07XG4gIG1hcmdpbjogMCAwIDAgMi41cmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIERpc3RhbmNlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNsb3NlLnJhaWwge1xuICB3aWR0aDogY2FsYygzMDBweCArIDFlbSk7XG59XG4udWkuY2xvc2UubGVmdC5yYWlsIHtcbiAgcGFkZGluZzogMCAxZW0gMCAwO1xuICBtYXJnaW46IDAgMWVtIDAgMDtcbn1cbi51aS5jbG9zZS5yaWdodC5yYWlsIHtcbiAgcGFkZGluZzogMCAwIDAgMWVtO1xuICBtYXJnaW46IDAgMCAwIDFlbTtcbn1cbi51aS52ZXJ5LmNsb3NlLnJhaWwge1xuICB3aWR0aDogY2FsYygzMDBweCArIDAuNWVtKTtcbn1cbi51aS52ZXJ5LmNsb3NlLmxlZnQucmFpbCB7XG4gIHBhZGRpbmc6IDAgMC41ZW0gMCAwO1xuICBtYXJnaW46IDAgMC41ZW0gMCAwO1xufVxuLnVpLnZlcnkuY2xvc2UucmlnaHQucmFpbCB7XG4gIHBhZGRpbmc6IDAgMCAwIDAuNWVtO1xuICBtYXJnaW46IDAgMCAwIDAuNWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmF0dGFjaGVkLmxlZnQucmFpbCxcbi51aS5hdHRhY2hlZC5yaWdodC5yYWlsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXppbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWluaS5yYWlsIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuLnVpLnRpbnkucmFpbCB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5yYWlsIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLnJhaWwge1xuICBmb250LXNpemU6IDFyZW07XG59XG4udWkubGFyZ2UucmFpbCB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5iaWcucmFpbCB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi51aS5odWdlLnJhaWwge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG4udWkubWFzc2l2ZS5yYWlsIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFJldmVhbFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBSZXZlYWxcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUeXBlcyAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBSZXZlYWxcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUeXBlcyAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFJldmVhbFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5yZXZlYWwge1xuICBkaXNwbGF5OiBpbmhlcml0O1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwICFpbXBvcnRhbnQ7XG59XG4udWkucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICB6LWluZGV4OiAzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UgMC4xcztcbn1cbi51aS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgei1pbmRleDogMiAhaW1wb3J0YW50O1xufVxuLyogTWFrZSBzdXJlIGhvdmVyZWQgZWxlbWVudCBpcyBvbiB0b3Agb2Ygb3RoZXIgcmV2ZWFsICovXG4udWkuYWN0aXZlLnJldmVhbCAudmlzaWJsZS5jb250ZW50LFxuLnVpLnJldmVhbDpob3ZlciAudmlzaWJsZS5jb250ZW50IHtcbiAgei1pbmRleDogNCAhaW1wb3J0YW50O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTbGlkZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zbGlkZS5yZXZlYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnVpLnNsaWRlLnJldmVhbCA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlIDAuMXM7XG59XG4udWkuc2xpZGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnNsaWRlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUuYWN0aXZlLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCxcbi51aS5zbGlkZS5yZXZlYWw6aG92ZXIgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUucmlnaHQucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgIWltcG9ydGFudDtcbn1cbi51aS5zbGlkZS5yaWdodC5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUucmlnaHQuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkuc2xpZGUucmlnaHQucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLnJpZ2h0LmFjdGl2ZS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQsXG4udWkuc2xpZGUucmlnaHQucmV2ZWFsOmhvdmVyID4gLmhpZGRlbi5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLnVwLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLnVwLmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnNsaWRlLnVwLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUudXAuYWN0aXZlLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCxcbi51aS5zbGlkZS51cC5yZXZlYWw6aG92ZXIgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUuZG93bi5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUuZG93bi5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5zbGlkZS5kb3duLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbn1cbi51aS5zbGlkZS5kb3duLmFjdGl2ZS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQsXG4udWkuc2xpZGUuZG93bi5yZXZlYWw6aG92ZXIgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBGYWRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZhZGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIG9wYWNpdHk6IDE7XG59XG4udWkuZmFkZS5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5mYWRlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICBvcGFjaXR5OiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTW92ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5tb3ZlLnJldmVhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4udWkubW92ZS5yZXZlYWwgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKSAwLjFzO1xufVxuLnVpLm1vdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xufVxuLnVpLm1vdmUucmV2ZWFsID4gLmhpZGRlbi5jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi51aS5tb3ZlLmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLm1vdmUucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbn1cbi51aS5tb3ZlLnJpZ2h0LmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLm1vdmUucmlnaHQucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLm1vdmUudXAuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkubW92ZS51cC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLm1vdmUuZG93bi5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5tb3ZlLmRvd24ucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKSAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSb3RhdGVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkucm90YXRlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbn1cbi51aS5yb3RhdGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5yb3RhdGUucmlnaHQucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbn1cbi51aS5yb3RhdGUuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkucm90YXRlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkucm90YXRlLnJpZ2h0LmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnJvdGF0ZS5yaWdodC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTEwZGVnKTtcbn1cbi51aS5yb3RhdGUubGVmdC5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG59XG4udWkucm90YXRlLmxlZnQuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkucm90YXRlLmxlZnQucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMTBkZWcpO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmRpc2FibGVkLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLnZpc2libGUuY29udGVudCB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG4udWkuZGlzYWJsZWQucmV2ZWFsOmhvdmVyID4gLmhpZGRlbi5oaWRkZW4uY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIENvdXBsaW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLnJldmVhbCA+IC51aS5yaWJib24ubGFiZWwge1xuICB6LWluZGV4OiA1O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVmlzaWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS52aXNpYmxlLnJldmVhbCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbnN0YW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmluc3RhbnQucmV2ZWFsID4gLmNvbnRlbnQge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXppbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkucmV2ZWFsID4gLmNvbnRlbnQge1xuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBTZWdtZW50XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFNlZ21lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBHcm91cFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBhZ2UgR3JpZCBTZWdtZW50ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQbGFjZWhvbGRlciAqL1xuLyogUGlsZWQgKi9cbi8qIENpcmN1bGFyICovXG4vKiBTdGFja2VkICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogTG9hZGluZyBEaW1tZXIgKi9cbi8qIExvYWRpbmcgU3Bpbm5lciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBSYWlzZWQgKi9cbi8qIFBhZGRlZCAqL1xuLyogQXR0YWNoZWQgKi9cbi8qIEludmVydGVkICovXG4vKiBGbG9hdGVkICovXG4vKiBCYXNpYyAqL1xuLyogQ29sb3JzICovXG4vKiBPcmRpbmFsaXR5ICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFNlZ21lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBHcm91cFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBhZ2UgR3JpZCBTZWdtZW50ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQbGFjZWhvbGRlciAqL1xuLyogUGlsZWQgKi9cbi8qIENpcmN1bGFyICovXG4vKiBTdGFja2VkICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogTG9hZGluZyBEaW1tZXIgKi9cbi8qIExvYWRpbmcgU3Bpbm5lciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBSYWlzZWQgKi9cbi8qIFBhZGRlZCAqL1xuLyogQXR0YWNoZWQgKi9cbi8qIEludmVydGVkICovXG4vKiBGbG9hdGVkICovXG4vKiBCYXNpYyAqL1xuLyogQ29sb3JzICovXG4vKiBPcmRpbmFsaXR5ICovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU2VnbWVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5zZWdtZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBtYXJnaW46IDFyZW0gMDtcbiAgcGFkZGluZzogMWVtIDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5zZWdtZW50OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5zZWdtZW50Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyogVmVydGljYWwgKi9cbi51aS52ZXJ0aWNhbC5zZWdtZW50IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkudmVydGljYWwuc2VnbWVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIExvb3NlIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBIZWFkZXIgKi9cbi51aS5pbnZlcnRlZC5zZWdtZW50ID4gLnVpLmhlYWRlciA+IC5zdWIuaGVhZGVyLFxuLnVpLmludmVydGVkLnNlZ21lbnQgPiAudWkuaGVhZGVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBMYWJlbCAqL1xuLnVpW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5zZWdtZW50ID4gW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5zZWdtZW50ID4gW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLnVpLmF0dGFjaGVkLnNlZ21lbnQ6bm90KC50b3ApOm5vdCguYm90dG9tKSA+IFtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0ubGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbi51aS5hdHRhY2hlZC5zZWdtZW50Om5vdCgudG9wKTpub3QoLmJvdHRvbSkgPiBbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4vKiBHcmlkICovXG4udWkucGFnZS5ncmlkLnNlZ21lbnQsXG4udWkuZ3JpZCA+IC5yb3cgPiAudWkuc2VnbWVudC5jb2x1bW4sXG4udWkuZ3JpZCA+IC51aS5zZWdtZW50LmNvbHVtbiB7XG4gIHBhZGRpbmctdG9wOiAyZW07XG4gIHBhZGRpbmctYm90dG9tOiAyZW07XG59XG4udWkuZ3JpZC5zZWdtZW50IHtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG4vKiBUYWJsZSAqL1xuLnVpLmJhc2ljLnRhYmxlLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGUuc2VnbWVudCB7XG4gIHBhZGRpbmc6IDFlbSAxZW07XG59XG4vKiBUYWIgKi9cbi51aS5zZWdtZW50LnRhYjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgUGxhY2Vob2xkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wbGFjZWhvbGRlci5zZWdtZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBtYXgtd2lkdGg6IGluaXRpYWw7XG4gIGFuaW1hdGlvbjogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmc6IDFlbSAxZW07XG4gIG1pbi1oZWlnaHQ6IDE4cmVtO1xuICBiYWNrZ3JvdW5kOiAjRjlGQUZCO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDI1cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMDUpIGluc2V0O1xufVxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgLmJ1dHRvbixcbi51aS5wbGFjZWhvbGRlci5zZWdtZW50IHRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuZmllbGQsXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCB0ZXh0YXJlYSxcbi51aS5wbGFjZWhvbGRlci5zZWdtZW50ID4gLnVpLmlucHV0LFxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgLmJ1dHRvbiB7XG4gIG1heC13aWR0aDogMTVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuY29sdW1uIC5idXR0b24sXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuY29sdW1uIC5maWVsZCxcbi51aS5wbGFjZWhvbGRlci5zZWdtZW50IC5jb2x1bW4gdGV4dGFyZWEsXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuY29sdW1uID4gLnVpLmlucHV0IHtcbiAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi51aS5wbGFjZWhvbGRlci5zZWdtZW50ID4gLmlubGluZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cbi51aS5wbGFjZWhvbGRlci5zZWdtZW50ID4gLmlubGluZSA+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAgMC4zNTcxNDI4NnJlbSAwIDA7XG59XG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCA+IC5pbmxpbmUgPiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGlsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5waWxlZC5zZWdtZW50cyxcbi51aS5waWxlZC5zZWdtZW50IHtcbiAgbWFyZ2luOiAzZW0gMDtcbiAgYm94LXNoYWRvdzogJyc7XG4gIHotaW5kZXg6IGF1dG87XG59XG4udWkucGlsZWQuc2VnbWVudDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkucGlsZWQuc2VnbWVudDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi51aS5waWxlZC5zZWdtZW50czphZnRlcixcbi51aS5waWxlZC5zZWdtZW50czpiZWZvcmUsXG4udWkucGlsZWQuc2VnbWVudDphZnRlcixcbi51aS5waWxlZC5zZWdtZW50OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAnJztcbn1cbi51aS5waWxlZC5zZWdtZW50czpiZWZvcmUsXG4udWkucGlsZWQuc2VnbWVudDpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMS4yZGVnKTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAtMjtcbn1cbi51aS5waWxlZC5zZWdtZW50czphZnRlcixcbi51aS5waWxlZC5zZWdtZW50OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMS4yZGVnKTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAtMTtcbn1cbi8qIFBpbGVkIEF0dGFjaGVkICovXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLnBpbGVkLnNlZ21lbnQge1xuICBtYXJnaW4tdG9wOiAzZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4udWkucGlsZWQuc2VnbWVudFtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLnBpbGVkLnNlZ21lbnRbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogM2VtO1xufVxuLnVpLnBpbGVkLnNlZ21lbnRbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU3RhY2tlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnN0YWNrZWQuc2VnbWVudCB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjRlbTtcbn1cbi51aS5zdGFja2VkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS5zdGFja2VkLnNlZ21lbnRzOmFmdGVyLFxuLnVpLnN0YWNrZWQuc2VnbWVudDpiZWZvcmUsXG4udWkuc3RhY2tlZC5zZWdtZW50OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtM3B4O1xuICBsZWZ0OiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNnB4O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLnVpLnN0YWNrZWQuc2VnbWVudHM6YmVmb3JlLFxuLnVpLnN0YWNrZWQuc2VnbWVudDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogQWRkIGFkZGl0aW9uYWwgcGFnZSAqL1xuLnVpLnRhbGwuc3RhY2tlZC5zZWdtZW50czpiZWZvcmUsXG4udWkudGFsbC5zdGFja2VkLnNlZ21lbnQ6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvdHRvbTogMDtcbn1cbi8qIEludmVydGVkICovXG4udWkuc3RhY2tlZC5pbnZlcnRlZC5zZWdtZW50czpiZWZvcmUsXG4udWkuc3RhY2tlZC5pbnZlcnRlZC5zZWdtZW50czphZnRlcixcbi51aS5zdGFja2VkLmludmVydGVkLnNlZ21lbnQ6YmVmb3JlLFxuLnVpLnN0YWNrZWQuaW52ZXJ0ZWQuc2VnbWVudDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUGFkZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucGFkZGVkLnNlZ21lbnQge1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS5zZWdtZW50IHtcbiAgcGFkZGluZzogM2VtO1xufVxuLyogUGFkZGVkIHZlcnRpY2FsICovXG4udWkucGFkZGVkLnNlZ21lbnQudmVydGljYWwuc2VnbWVudCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS52ZXJ0aWNhbC5zZWdtZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNvbXBhY3Quc2VnbWVudCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuLyogQ29tcGFjdCBHcm91cCAqL1xuLnVpLmNvbXBhY3Quc2VnbWVudHMge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbn1cbi51aS5jb21wYWN0LnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLnNlZ21lbnRzIC5jb21wYWN0LnNlZ21lbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMCAxIGF1dG87XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDaXJjdWxhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNpcmN1bGFyLnNlZ21lbnQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBwYWRkaW5nOiAyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXJhZGl1czogNTAwZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBSYWlzZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5yYWlzZWQucmFpc2VkLnNlZ21lbnRzLFxuLnVpLnJhaXNlZC5yYWlzZWQuc2VnbWVudCB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEdyb3Vwc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEdyb3VwICovXG4udWkuc2VnbWVudHMge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMXJlbSAwO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLnNlZ21lbnRzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5zZWdtZW50czpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qIE5lc3RlZCBTZWdtZW50ICovXG4udWkuc2VnbWVudHMgPiAuc2VnbWVudCB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnNlZ21lbnRzOm5vdCguaG9yaXpvbnRhbCkgPiAuc2VnbWVudDpmaXJzdC1jaGlsZCB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItdG9wOiBub25lO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLyogQm90dG9tICovXG4udWkuc2VnbWVudHM6bm90KC5ob3Jpem9udGFsKSA+IC5zZWdtZW50Omxhc3QtY2hpbGQge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi8qIE9ubHkgKi9cbi51aS5zZWdtZW50czpub3QoLmhvcml6b250YWwpID4gLnNlZ21lbnQ6b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG4vKiBOZXN0ZWQgR3JvdXAgKi9cbi51aS5zZWdtZW50cyA+IC51aS5zZWdtZW50cyB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBtYXJnaW46IDFyZW0gMXJlbTtcbn1cbi51aS5zZWdtZW50cyA+IC5zZWdtZW50czpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG4udWkuc2VnbWVudHMgPiAuc2VnbWVudCArIC5zZWdtZW50czpub3QoLmhvcml6b250YWwpIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi8qIEhvcml6b250YWwgR3JvdXAgKi9cbi51aS5ob3Jpem9udGFsLnNlZ21lbnRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIG1hcmdpbjogMXJlbSAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnN0YWNrYWJsZS5ob3Jpem9udGFsLnNlZ21lbnRzIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLyogTmVzdGVkIEhvcml6b250YWwgR3JvdXAgKi9cbi51aS5zZWdtZW50cyA+IC5ob3Jpem9udGFsLnNlZ21lbnRzIHtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi8qIEhvcml6b250YWwgU2VnbWVudCAqL1xuLnVpLmhvcml6b250YWwuc2VnbWVudHM6bm90KC5jb21wYWN0KSA+IC5zZWdtZW50Om5vdCguY29tcGFjdCkge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgLW1zLWZsZXg6IDEgMSAwO1xuICAvKiBTb2x2ZXMgIzI1NTAgTVMgRmxleCAqL1xufVxuLnVpLmhvcml6b250YWwuc2VnbWVudHMgPiAuc2VnbWVudCB7XG4gIG1hcmdpbjogMDtcbiAgbWluLXdpZHRoOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi8qIEJvcmRlciBGaXhlcyAqL1xuLnVpLnNlZ21lbnRzID4gLmhvcml6b250YWwuc2VnbWVudHM6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLnVpLmhvcml6b250YWwuc2VnbWVudHM6bm90KC5zdGFja2FibGUpID4gLnNlZ21lbnQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZGlzYWJsZWQuc2VnbWVudCB7XG4gIG9wYWNpdHk6IDAuNDU7XG4gIGNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuMyk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sb2FkaW5nLnNlZ21lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG59XG4udWkubG9hZGluZy5zZWdtZW50OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICB6LWluZGV4OiAxMDA7XG59XG4udWkubG9hZGluZy5zZWdtZW50OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMS41ZW0gMCAwIC0xLjVlbTtcbiAgd2lkdGg6IDNlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIGFuaW1hdGlvbjogbG9hZGVyIDAuNnMgaW5maW5pdGUgbGluZWFyO1xuICBib3JkZXI6IDAuMmVtIHNvbGlkICM3Njc2NzY7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB6LWluZGV4OiAxMDE7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQmFzaWNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5iYXNpYy5zZWdtZW50LFxuLnVpLnNlZ21lbnRzIC51aS5iYXNpYy5zZWdtZW50LFxuLnVpLmJhc2ljLnNlZ21lbnRzIHtcbiAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ2xlYXJpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jbGVhcmluZy5zZWdtZW50OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucmVkLnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjREIyODI4O1xufVxuLnVpLmludmVydGVkLnJlZC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5vcmFuZ2Uuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNGMjcxMUM7XG59XG4udWkuaW52ZXJ0ZWQub3JhbmdlLnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjcxMUM7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnllbGxvdy5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI0ZCQkQwODtcbn1cbi51aS5pbnZlcnRlZC55ZWxsb3cuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwODtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkub2xpdmUuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNCNUNDMTg7XG59XG4udWkuaW52ZXJ0ZWQub2xpdmUuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I1Q0MxODtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuZ3JlZW4uc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyMUJBNDU7XG59XG4udWkuaW52ZXJ0ZWQuZ3JlZW4uc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudGVhbC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzAwQjVBRDtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMEI1QUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmJsdWUuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyMTg1RDA7XG59XG4udWkuaW52ZXJ0ZWQuYmx1ZS5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS52aW9sZXQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICM2NDM1Qzk7XG59XG4udWkuaW52ZXJ0ZWQudmlvbGV0LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDM1Qzk7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnB1cnBsZS5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI0EzMzNDODtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EzMzNDODtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkucGluay5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI0UwMzk5Nztcbn1cbi51aS5pbnZlcnRlZC5waW5rLnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTc7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmJyb3duLnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjQTU2NzNGO1xufVxuLnVpLmludmVydGVkLmJyb3duLnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0Y7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyZXkuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICM3Njc2NzY7XG59XG4udWkuaW52ZXJ0ZWQuZ3JleS5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5ibGFjay5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzFCMUMxRDtcbn1cbi51aS5pbnZlcnRlZC5ibGFjay5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aVtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0uc2VnbWVudCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWlbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5zZWdtZW50IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4udWlbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0uc2VnbWVudCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mbG9hdGVkLnNlZ21lbnQsXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLnNlZ21lbnQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5zZWdtZW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmludmVydGVkLnNlZ21lbnQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkuaW52ZXJ0ZWQuc2VnbWVudCxcbi51aS5wcmltYXJ5LmludmVydGVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLyogTmVzdGVkICovXG4udWkuaW52ZXJ0ZWQuc2VnbWVudCAuc2VnbWVudCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLnVpLmludmVydGVkLnNlZ21lbnQgLmludmVydGVkLnNlZ21lbnQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLyogQXR0YWNoZWQgKi9cbi51aS5pbnZlcnRlZC5hdHRhY2hlZC5zZWdtZW50IHtcbiAgYm9yZGVyLWNvbG9yOiAjNTU1NTU1O1xufVxuLyogTG9hZGluZyAqL1xuLnVpLmludmVydGVkLmxvYWRpbmcuc2VnbWVudCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmxvYWRpbmcuc2VnbWVudDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEVtcGhhc2lzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWNvbmRhcnkgKi9cbi51aS5zZWNvbmRhcnkuc2VnbWVudCB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0RjU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAjNGM0ZjUyIGxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgMCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDEwMCUpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuLyogVGVydGlhcnkgKi9cbi51aS50ZXJ0aWFyeS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZDogI0RDRERERTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbi51aS50ZXJ0aWFyeS5pbnZlcnRlZC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZDogIzcxNzU3OSBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KSAwLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpIDEwMCUpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWlkZGxlICovXG4udWkuYXR0YWNoZWQuc2VnbWVudCB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IDAgLTFweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDJweCk7XG4gIG1heC13aWR0aDogY2FsYygxMDAlICsgMnB4KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbn1cbi51aS5hdHRhY2hlZDpub3QoLm1lc3NhZ2UpICsgLnVpLmF0dGFjaGVkLnNlZ21lbnQ6bm90KC50b3ApIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi8qIFRvcCAqL1xuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5zZWdtZW50IHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0b3A6IDA7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwIDA7XG59XG4udWkuc2VnbWVudFtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLyogQm90dG9tICovXG4udWkuc2VnbWVudFtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi51aS5zZWdtZW50W2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRml0dGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZpdHRlZC5zZWdtZW50Om5vdCguaG9yaXpvbnRhbGx5KSB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi51aS5maXR0ZWQuc2VnbWVudDpub3QoLnZlcnRpY2FsbHkpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5taW5pLnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLm1pbmkuc2VnbWVudCB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLnRpbnkuc2VnbWVudCB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5zZWdtZW50cyAuc2VnbWVudCxcbi51aS5zbWFsbC5zZWdtZW50IHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLnNlZ21lbnQge1xuICBmb250LXNpemU6IDFyZW07XG59XG4udWkubGFyZ2Uuc2VnbWVudHMgLnNlZ21lbnQsXG4udWkubGFyZ2Uuc2VnbWVudCB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5iaWcuc2VnbWVudHMgLnNlZ21lbnQsXG4udWkuYmlnLnNlZ21lbnQge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG4udWkuaHVnZS5zZWdtZW50cyAuc2VnbWVudCxcbi51aS5odWdlLnNlZ21lbnQge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG4udWkubWFzc2l2ZS5zZWdtZW50cyAuc2VnbWVudCxcbi51aS5tYXNzaXZlLnNlZ21lbnQge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gU3RlcFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGVwXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgTG9hZCBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0ZXBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBHcm91cFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJY29uICovXG4vKiBUaXRsZSAqL1xuLyogRGVzY3JpcHRpb24gKi9cbi8qIEFycm93ICovXG4vKiBNb2JpbGUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBWZXJ0aWNhbCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIENvbXBsZXRlZCAqL1xuLyogSG92ZXIgKi9cbi8qIERvd24gKi9cbi8qIEFjdGl2ZSAqL1xuLyogQWN0aXZlICsgSG92ZXIgKi9cbi8qIERpc2FibGVkICovXG4vKiBJbnZlcnRlZCAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RlcFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEdyb3VwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEljb24gKi9cbi8qIFRpdGxlICovXG4vKiBEZXNjcmlwdGlvbiAqL1xuLyogQXJyb3cgKi9cbi8qIE1vYmlsZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFZlcnRpY2FsICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQ29tcGxldGVkICovXG4vKiBIb3ZlciAqL1xuLyogRG93biAqL1xuLyogQWN0aXZlICovXG4vKiBBY3RpdmUgKyBIb3ZlciAqL1xuLyogRGlzYWJsZWQgKi9cbi8qIEludmVydGVkICovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUGx1cmFsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLnN0ZXBzIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBtYXJnaW46IDFlbSAwO1xuICBiYWNrZ3JvdW5kOiAnJztcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTRlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5zdGVwczpub3QoLnVuc3RhY2thYmxlKSB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi8qIEZpcnN0IFN0ZXBzICovXG4udWkuc3RlcHM6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLyogTGFzdCBTdGVwcyAqL1xuLnVpLnN0ZXBzOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU2luZ3VsYXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuc3RlcHMgLnN0ZXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAgMDtcbiAgcGFkZGluZzogMS4xNDI4NTcxNGVtIDJlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UsIG9wYWNpdHkgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlO1xufVxuLyogQXJyb3cgKi9cbi51aS5zdGVwcyAuc3RlcDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgd2lkdGg6IDEuMTQyODU3MTRlbTtcbiAgaGVpZ2h0OiAxLjE0Mjg1NzE0ZW07XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHggMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UsIG9wYWNpdHkgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xufVxuLyogRmlyc3QgU3RlcCAqL1xuLnVpLnN0ZXBzIC5zdGVwOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMCAwIDAuMjg1NzE0MjlyZW07XG59XG4vKiBMYXN0IFN0ZXAgKi9cbi51aS5zdGVwcyAuc3RlcDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4vKiBPbmx5IFN0ZXAgKi9cbi51aS5zdGVwcyAuc3RlcDpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb250ZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVGl0bGUgKi9cbi51aS5zdGVwcyAuc3RlcCAudGl0bGUge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4udWkuc3RlcHMgLnN0ZXAgPiAudGl0bGUge1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIERlc2NyaXB0aW9uICovXG4udWkuc3RlcHMgLnN0ZXAgLmRlc2NyaXB0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLnVpLnN0ZXBzIC5zdGVwID4gLmRlc2NyaXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkuc3RlcHMgLnN0ZXAgLnRpdGxlIH4gLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC4yNWVtO1xufVxuLyogSWNvbiAqL1xuLnVpLnN0ZXBzIC5zdGVwID4gLmljb24ge1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAyLjVlbTtcbiAgbWFyZ2luOiAwIDFyZW0gMCAwO1xufVxuLnVpLnN0ZXBzIC5zdGVwID4gLmljb24sXG4udWkuc3RlcHMgLnN0ZXAgPiAuaWNvbiB+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBhbGlnbi1zZWxmOiBtaWRkbGU7XG59XG4vKiBIb3Jpem9udGFsIEljb24gKi9cbi51aS5zdGVwczpub3QoLnZlcnRpY2FsKSAuc3RlcCA+IC5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG59XG4vKiBMaW5rICovXG4udWkuc3RlcHMgLmxpbmsuc3RlcCxcbi51aS5zdGVwcyBhLnN0ZXAge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkub3JkZXJlZC5zdGVwcyB7XG4gIGNvdW50ZXItcmVzZXQ6IG9yZGVyZWQ7XG59XG4udWkub3JkZXJlZC5zdGVwcyAuc3RlcDpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb250ZW50OiBjb3VudGVyKG9yZGVyZWQpO1xuICBhbGlnbi1zZWxmOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAyLjVlbTtcbiAgY291bnRlci1pbmNyZW1lbnQ6IG9yZGVyZWQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwID4gKiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbGlnbi1zZWxmOiBtaWRkbGU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVmVydGljYWxcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkudmVydGljYWwuc3RlcHMge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXAge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDEuMTQyODU3MTRlbSAyZW07XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXA6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nOiAxLjE0Mjg1NzE0ZW0gMmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLyogQXJyb3cgKi9cbi51aS52ZXJ0aWNhbC5zdGVwcyAuc3RlcDphZnRlciB7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHggMDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51aS52ZXJ0aWNhbC5zdGVwcyAuYWN0aXZlLnN0ZXA6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51aS52ZXJ0aWNhbC5zdGVwcyAuc3RlcDpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51aS52ZXJ0aWNhbC5zdGVwcyAuYWN0aXZlLnN0ZXA6bGFzdC1jaGlsZDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyotLS0tLS0tLS0tLS0tLS1cbiAgICBSZXNwb25zaXZlXG4tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1vYmlsZSAoRGVmYXVsdCkgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC51aS5zdGVwczpub3QoLnVuc3RhY2thYmxlKSAuc3RlcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogMS4xNDI4NTcxNGVtIDJlbTtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIH1cbiAgLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIC5zdGVwOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAxLjE0Mjg1NzE0ZW0gMmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwIDA7XG4gIH1cbiAgLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIC5zdGVwOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuICAvKiBBcnJvdyAqL1xuICAudWkuc3RlcHM6bm90KC51bnN0YWNrYWJsZSkgLnN0ZXA6YWZ0ZXIge1xuICAgIHRvcDogdW5zZXQ7XG4gICAgYm90dG9tOiAtMS4xNDI4NTcxNGVtO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoNDVkZWcpO1xuICB9XG4gIC51aS52ZXJ0aWNhbC5zdGVwcyAuYWN0aXZlLnN0ZXA6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAvKiBDb250ZW50ICovXG4gIC51aS5zdGVwczpub3QoLnVuc3RhY2thYmxlKSAuc3RlcCAuY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC8qIEljb24gKi9cbiAgLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIC5zdGVwID4gLmljb24sXG4gIC51aS5vcmRlcmVkLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIC5zdGVwOmJlZm9yZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIExpbmsgSG92ZXIgKi9cbi51aS5zdGVwcyAubGluay5zdGVwOmhvdmVyOjphZnRlcixcbi51aS5zdGVwcyAubGluay5zdGVwOmhvdmVyLFxuLnVpLnN0ZXBzIGEuc3RlcDpob3Zlcjo6YWZ0ZXIsXG4udWkuc3RlcHMgYS5zdGVwOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0Y5RkFGQjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi8qIExpbmsgRG93biAqL1xuLnVpLnN0ZXBzIC5saW5rLnN0ZXA6YWN0aXZlOjphZnRlcixcbi51aS5zdGVwcyAubGluay5zdGVwOmFjdGl2ZSxcbi51aS5zdGVwcyBhLnN0ZXA6YWN0aXZlOjphZnRlcixcbi51aS5zdGVwcyBhLnN0ZXA6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI0YzRjRGNTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cbi8qIEFjdGl2ZSAqL1xuLnVpLnN0ZXBzIC5zdGVwLmFjdGl2ZSB7XG4gIGN1cnNvcjogYXV0bztcbiAgYmFja2dyb3VuZDogI0YzRjRGNTtcbn1cbi51aS5zdGVwcyAuc3RlcC5hY3RpdmU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY1O1xufVxuLnVpLnN0ZXBzIC5zdGVwLmFjdGl2ZSAudGl0bGUge1xuICBjb2xvcjogIzQxODNDNDtcbn1cbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwLmFjdGl2ZTpiZWZvcmUsXG4udWkuc3RlcHMgLmFjdGl2ZS5zdGVwIC5pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG4vKiBBY3RpdmUgQXJyb3cgKi9cbi51aS5zdGVwcyAuc3RlcDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnVpLnN0ZXBzIC5hY3RpdmUuc3RlcDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnVpLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVpLnN0ZXBzIC5hY3RpdmUuc3RlcDpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qIEFjdGl2ZSBIb3ZlciAqL1xuLnVpLnN0ZXBzIC5saW5rLmFjdGl2ZS5zdGVwOmhvdmVyOjphZnRlcixcbi51aS5zdGVwcyAubGluay5hY3RpdmUuc3RlcDpob3Zlcixcbi51aS5zdGVwcyBhLmFjdGl2ZS5zdGVwOmhvdmVyOjphZnRlcixcbi51aS5zdGVwcyBhLmFjdGl2ZS5zdGVwOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiAjRENERERFO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi8qIENvbXBsZXRlZCAqL1xuLnVpLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZCA+IC5pY29uOmJlZm9yZSxcbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZDpiZWZvcmUge1xuICBjb2xvcjogIzIxQkE0NTtcbn1cbi8qIERpc2FibGVkICovXG4udWkuc3RlcHMgLmRpc2FibGVkLnN0ZXAge1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwLFxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwIC50aXRsZSxcbi51aS5zdGVwcyAuZGlzYWJsZWQuc3RlcCAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpO1xufVxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUYWJsZXQgT3IgQmVsb3cgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLyogU3RlcHMgKi9cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXAge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAxLjE0Mjg1NzE0ZW0gMmVtO1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgfVxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogMS4xNDI4NTcxNGVtIDJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuICAvKiBBcnJvdyAqL1xuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5zdGVwcyAuc3RlcDphZnRlciB7XG4gICAgdG9wOiB1bnNldDtcbiAgICBib3R0b206IC0xLjE0Mjg1NzE0ZW07XG4gICAgcmlnaHQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIH1cbiAgLyogQ29udGVudCAqL1xuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5zdGVwcyAuc3RlcCAuY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC8qIEljb24gKi9cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXAgPiAuaWNvbixcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0ub3JkZXJlZC5zdGVwcyAuc3RlcDpiZWZvcmUge1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBGbHVpZCAqL1xuLnVpLmZsdWlkLnN0ZXBzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQXR0YWNoZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUb3AgKi9cbi51aS5hdHRhY2hlZC5zdGVwcyB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAycHgpICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAtMXB4IDA7XG4gIG1heC13aWR0aDogY2FsYygxMDAlICsgMnB4KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDAgMDtcbn1cbi51aS5hdHRhY2hlZC5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMCAwIDA7XG59XG4udWkuYXR0YWNoZWQuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yODU3MTQyOXJlbSAwIDA7XG59XG4vKiBCb3R0b20gKi9cbi51aS5ib3R0b20uYXR0YWNoZWQuc3RlcHMge1xuICBtYXJnaW46IDAgLTFweCAwO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLmJvdHRvbS5hdHRhY2hlZC5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDAuMjg1NzE0MjlyZW07XG59XG4udWkuYm90dG9tLmF0dGFjaGVkLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yODU3MTQyOXJlbSAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRXZlbmx5IERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5vbmUuc3RlcHMsXG4udWkudHdvLnN0ZXBzLFxuLnVpLnRocmVlLnN0ZXBzLFxuLnVpLmZvdXIuc3RlcHMsXG4udWkuZml2ZS5zdGVwcyxcbi51aS5zaXguc3RlcHMsXG4udWkuc2V2ZW4uc3RlcHMsXG4udWkuZWlnaHQuc3RlcHMge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS5vbmUuc3RlcHMgPiAuc3RlcCxcbi51aS50d28uc3RlcHMgPiAuc3RlcCxcbi51aS50aHJlZS5zdGVwcyA+IC5zdGVwLFxuLnVpLmZvdXIuc3RlcHMgPiAuc3RlcCxcbi51aS5maXZlLnN0ZXBzID4gLnN0ZXAsXG4udWkuc2l4LnN0ZXBzID4gLnN0ZXAsXG4udWkuc2V2ZW4uc3RlcHMgPiAuc3RlcCxcbi51aS5laWdodC5zdGVwcyA+IC5zdGVwIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4udWkub25lLnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS50d28uc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiA1MCU7XG59XG4udWkudGhyZWUuc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuLnVpLmZvdXIuc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAyNSU7XG59XG4udWkuZml2ZS5zdGVwcyA+IC5zdGVwIHtcbiAgd2lkdGg6IDIwJTtcbn1cbi51aS5zaXguc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAxNi42NjYlO1xufVxuLnVpLnNldmVuLnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMTQuMjg1JTtcbn1cbi51aS5laWdodC5zdGVwcyA+IC5zdGVwIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5taW5pLnN0ZXBzIC5zdGVwLFxuLnVpLm1pbmkuc3RlcCB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LnN0ZXBzIC5zdGVwLFxuLnVpLnRpbnkuc3RlcCB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5zdGVwcyAuc3RlcCxcbi51aS5zbWFsbC5zdGVwIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLnN0ZXBzIC5zdGVwLFxuLnVpLnN0ZXAge1xuICBmb250LXNpemU6IDFyZW07XG59XG4udWkubGFyZ2Uuc3RlcHMgLnN0ZXAsXG4udWkubGFyZ2Uuc3RlcCB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5iaWcuc3RlcHMgLnN0ZXAsXG4udWkuYmlnLnN0ZXAge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG4udWkuaHVnZS5zdGVwcyAuc3RlcCxcbi51aS5odWdlLnN0ZXAge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG4udWkubWFzc2l2ZS5zdGVwcyAuc3RlcCxcbi51aS5tYXNzaXZlLnN0ZXAge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW52ZXJ0ZWQuc3RlcHMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTU1NTU1O1xufVxuLnVpLmludmVydGVkLnN0ZXBzIC5zdGVwIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgYm9yZGVyLWNvbG9yOiAjNTU1NTU1O1xufVxuLnVpLmludmVydGVkLnN0ZXBzIC5zdGVwOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgYm9yZGVyLWNvbG9yOiAjNTU1NTU1O1xufVxuLnVpLmludmVydGVkLnN0ZXBzIC5zdGVwIC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4vKiBBY3RpdmUgKi9cbi51aS5pbnZlcnRlZC5zdGVwcyAuc3RlcC5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLnN0ZXAuYWN0aXZlOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzMzMzMzMztcbn1cbi51aS5pbnZlcnRlZC5vcmRlcmVkLnN0ZXBzIC5zdGVwLmFjdGl2ZTpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLmFjdGl2ZS5zdGVwIC5pY29uIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4vKiBEaXNhYmxlZCAqL1xuLnVpLmludmVydGVkLnN0ZXBzIC5kaXNhYmxlZC5zdGVwLFxuLnVpLmludmVydGVkLnN0ZXBzIC5kaXNhYmxlZC5zdGVwOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzIyMjIyMjtcbn1cbi51aS5pbnZlcnRlZC5zdGVwcyAuZGlzYWJsZWQuc3RlcCxcbi51aS5pbnZlcnRlZC5zdGVwcyAuZGlzYWJsZWQuc3RlcCAudGl0bGUsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLmRpc2FibGVkLnN0ZXAgLmRlc2NyaXB0aW9uIHtcbiAgY29sb3I6IHJnYmEoMjI1LCAyMjUsIDIyNSwgMC4zKTtcbn1cbi8qIExpbmsgSG92ZXIgKi9cbi51aS5pbnZlcnRlZC5zdGVwcyAubGluay5zdGVwOmhvdmVyOjphZnRlcixcbi51aS5pbnZlcnRlZC5zdGVwcyAubGluay5zdGVwOmhvdmVyLFxuLnVpLmludmVydGVkLnN0ZXBzIGEuc3RlcDpob3Zlcjo6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgYS5zdGVwOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzNGM0YzRjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4vKiBMaW5rIERvd24gKi9cbi51aS5pbnZlcnRlZC5zdGVwcyAubGluay5zdGVwOmFjdGl2ZTo6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLmxpbmsuc3RlcDphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgYS5zdGVwOmFjdGl2ZTo6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgYS5zdGVwOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICM0NDQ0NDQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1N0ZXAnO1xuICBzcmM6IHVybChkYXRhOmFwcGxpY2F0aW9uL3gtZm9udC10dGY7Y2hhcnNldD11dGYtODtiYXNlNjQsQUFFQUFBQU9BSUFBQXdCZ1QxTXZNajNoU1FFQUFBRHNBQUFBVm1OdFlYRFFFaG0zQUFBQlJBQUFBVXBqZG5RZ0Jrbi9sQUFBQnV3QUFBQWNabkJuYllvS2VEc0FBQWNJQUFBSmtXZGhjM0FBQUFBUUFBQUc1QUFBQUFobmJIbG0zMmNFZGdBQUFwQUFBQUMyYUdWaFpBRXJQSHNBQUFOSUFBQUFObWhvWldFSFV3Tk5BQUFEZ0FBQUFDUm9iWFI0Q3lrQUFBQUFBNlFBQUFBTWJHOWpZUUE0QUZzQUFBT3dBQUFBQ0cxaGVIQUFwZ204QUFBRHVBQUFBQ0J1WVcxbHpKMGFIQUFBQTlnQUFBTE5jRzl6ZEs2OVFKZ0FBQWFvQUFBQU8zQnlaWENTb1pyL0FBQVFuQUFBQUZZQUFRTzRBWkFBQlFBSUFub0N2QUFBQUl3Q2VnSzhBQUFCNEFBeEFRSUFBQUlBQlFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVR1pGWkFCQTZBRG9BUU5TLzJvQVdnTUxBRThBQUFBQkFBQUFBQUFBQUFBQUF3QUFBQU1BQUFBY0FBRUFBQUFBQUVRQUF3QUJBQUFBSEFBRUFDZ0FBQUFHQUFRQUFRQUNBQURvQWYvL0FBQUFBT2dBLy84QUFCZ0JBQUVBQUFBQUFBQUFBQUVHQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFBQURwQUtZQUJVQUhFQVpEd0VBQVFGQ0FBSUJBbW9BQVFBQmFnQUFBR0VVRnhRREVpc0JGQWNCQmlJbkFTWTBQd0UyTWg4QkFUWXlId0VXQTZRUC9pQVFMQkQrNmc4UFRCQXNFS1FCYmhBc0VFd1BBaFlXRVA0Z0R3OEJGaEFzRUV3UUVLVUJieEFRVEJBQUFBSC8vZit4QTE4REN3QU1BQkpBRHdBQkFRcERBQUFBQ3dCRUZSTUNFU3NCRkE0QklpNENQZ0V5SGdFRFdYTEc2TWh1Qm5xODlMcCtBVjUxeEhSMHhPckVkSFRFQUFBQUFBRUFBQUFCQUFERGVScGRYdzg4OVFBTEErZ0FBQUFBenpXWWpRQUFBQURQTldCTi8vMy9zUU9rQXdzQUFBQUlBQUlBQUFBQUFBQUFBUUFBQTFML2FnQmFBK2dBQVAvM0E2UUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBTUQ2QUFBQStnQUFBTlpBQUFBQUFBQUFEZ0FXd0FCQUFBQUF3QVdBQUVBQUFBQUFBSUFCZ0FUQUc0QUFBQXRDWkVBQUFBQUFBQUFFZ0RlQUFFQUFBQUFBQUFBTlFBQUFBRUFBQUFBQUFFQUNBQTFBQUVBQUFBQUFBSUFCd0E5QUFFQUFBQUFBQU1BQ0FCRUFBRUFBQUFBQUFRQUNBQk1BQUVBQUFBQUFBVUFDd0JVQUFFQUFBQUFBQVlBQ0FCZkFBRUFBQUFBQUFvQUt3Qm5BQUVBQUFBQUFBc0FFd0NTQUFNQUFRUUpBQUFBYWdDbEFBTUFBUVFKQUFFQUVBRVBBQU1BQVFRSkFBSUFEZ0VmQUFNQUFRUUpBQU1BRUFFdEFBTUFBUVFKQUFRQUVBRTlBQU1BQVFRSkFBVUFGZ0ZOQUFNQUFRUUpBQVlBRUFGakFBTUFBUVFKQUFvQVZnRnpBQU1BQVFRSkFBc0FKZ0hKUTI5d2VYSnBaMmgwSUNoREtTQXlNREUwSUdKNUlHOXlhV2RwYm1Gc0lHRjFkR2h2Y25NZ1FDQm1iMjUwWld4c2J5NWpiMjFtYjI1MFpXeHNiMUpsWjNWc1lYSm1iMjUwWld4c2IyWnZiblJsYkd4dlZtVnljMmx2YmlBeExqQm1iMjUwWld4c2IwZGxibVZ5WVhSbFpDQmllU0J6ZG1jeWRIUm1JR1p5YjIwZ1JtOXVkR1ZzYkc4Z2NISnZhbVZqZEM1b2RIUndPaTh2Wm05dWRHVnNiRzh1WTI5dEFFTUFid0J3QUhrQWNnQnBBR2NBYUFCMEFDQUFLQUJEQUNrQUlBQXlBREFBTVFBMEFDQUFZZ0I1QUNBQWJ3QnlBR2tBWndCcEFHNEFZUUJzQUNBQVlRQjFBSFFBYUFCdkFISUFjd0FnQUVBQUlBQm1BRzhBYmdCMEFHVUFiQUJzQUc4QUxnQmpBRzhBYlFCbUFHOEFiZ0IwQUdVQWJBQnNBRzhBVWdCbEFHY0FkUUJzQUdFQWNnQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVpnQnZBRzRBZEFCbEFHd0FiQUJ2QUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1BQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVJ3QmxBRzRBWlFCeUFHRUFkQUJsQUdRQUlBQmlBSGtBSUFCekFIWUFad0F5QUhRQWRBQm1BQ0FBWmdCeUFHOEFiUUFnQUVZQWJ3QnVBSFFBWlFCc0FHd0Fid0FnQUhBQWNnQnZBR29BWlFCakFIUUFMZ0JvQUhRQWRBQndBRG9BTHdBdkFHWUFid0J1QUhRQVpRQnNBR3dBYndBdUFHTUFid0J0QUFBQUFBSUFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXdBQUFRSUJBd2xqYUdWamEyMWhjbXNHWTJseVkyeGxBQUFBQUFFQUFmLy9BQThBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRElBTWdNTC83RURDLyt4c0FBc3NDQmdaaTJ3QVN3Z1pDQ3d3RkN3QkNaYXNBUkZXMWdoSXlFYmlsZ2dzRkJRV0NHd1FGa2JJTEE0VUZnaHNEaFpXU0N3Q2tWaFpMQW9VRmdoc0FwRklMQXdVRmdoc0RCWkd5Q3d3RkJZSUdZZ2lvcGhJTEFLVUZoZ0d5Q3dJRkJZSWJBS1lCc2dzRFpRV0NHd05tQWJZRmxaV1J1d0FDdFpXU093QUZCWVpWbFpMYkFDTENCRklMQUVKV0ZrSUxBRlExQllzQVVqUXJBR0kwSWJJU0Zac0FGZ0xiQURMQ01oSXlFZ1pMRUZZa0lnc0FZalFySUtBQUlxSVNDd0JrTWdpaUNLc0FBcnNUQUZKWXBSV0dCUUcyRlNXVmdqV1NFZ3NFQlRXTEFBS3hzaHNFQlpJN0FBVUZobFdTMndCQ3l3QjBNcnNnQUNBRU5nUWkyd0JTeXdCeU5DSXlDd0FDTkNZYkNBWXJBQllMQUVLaTJ3Qml3Z0lFVWdzQUpGWTdBQlJXSmdSTEFCWUMyd0J5d2dJRVVnc0FBckk3RUNCQ1ZnSUVXS0kyRWdaQ0N3SUZCWUliQUFHN0F3VUZpd0lCdXdRRmxaSTdBQVVGaGxXYkFESlNOaFJFU3dBV0F0c0Fnc3NRVUZSYkFCWVVRdHNBa3NzQUZnSUNDd0NVTktzQUJRV0NDd0NTTkNXYkFLUTBxd0FGSllJTEFLSTBKWkxiQUtMQ0M0QkFCaUlMZ0VBR09LSTJHd0MwTmdJSXBnSUxBTEkwSWpMYkFMTEV0VVdMRUhBVVJaSkxBTlpTTjRMYkFNTEV0UldFdFRXTEVIQVVSWkd5RlpKTEFUWlNONExiQU5MTEVBREVOVldMRU1ERU93QVdGQ3NBb3JXYkFBUTdBQ0pVS3hDUUlsUXJFS0FpVkNzQUVXSXlDd0F5VlFXTEVCQUVOZ3NBUWxRb3FLSUlvalliQUpLaUVqc0FGaElJb2pZYkFKS2lFYnNRRUFRMkN3QWlWQ3NBSWxZYkFKS2lGWnNBbERSN0FLUTBkZ3NJQmlJTEFDUldPd0FVVmlZTEVBQUJNalJMQUJRN0FBUHJJQkFRRkRZRUl0c0E0c3NRQUZSVlJZQUxBTUkwSWdZTEFCWWJVTkRRRUFDd0JDUW9wZ3NRMEZLN0J0S3hzaVdTMndEeXl4QUE0ckxiQVFMTEVCRGlzdHNCRXNzUUlPS3kyd0VpeXhBdzRyTGJBVExMRUVEaXN0c0JRc3NRVU9LeTJ3RlN5eEJnNHJMYkFXTExFSERpc3RzQmNzc1FnT0t5MndHQ3l4Q1E0ckxiQVpMTEFJSzdFQUJVVlVXQUN3RENOQ0lHQ3dBV0cxRFEwQkFBc0FRa0tLWUxFTkJTdXdiU3NiSWxrdHNCb3NzUUFaS3kyd0d5eXhBUmtyTGJBY0xMRUNHU3N0c0Iwc3NRTVpLeTJ3SGl5eEJCa3JMYkFmTExFRkdTc3RzQ0Fzc1FZWkt5MndJU3l4QnhrckxiQWlMTEVJR1NzdHNDTXNzUWtaS3kyd0pDd2dQTEFCWUMyd0pTd2dZTEFOWUNCREk3QUJZRU93QWlWaHNBRmdzQ1FxSVMyd0ppeXdKU3V3SlNvdHNDY3NJQ0JISUNDd0FrVmpzQUZGWW1BallUZ2pJSXBWV0NCSElDQ3dBa1Zqc0FGRlltQWpZVGdiSVZrdHNDZ3NzUUFGUlZSWUFMQUJGckFuS3JBQkZUQWJJbGt0c0Nrc3NBZ3JzUUFGUlZSWUFMQUJGckFuS3JBQkZUQWJJbGt0c0Nvc0lEV3dBV0F0c0Nzc0FMQURSV093QVVWaXNBQXJzQUpGWTdBQlJXS3dBQ3V3QUJhMEFBQUFBQUJFUGlNNHNTb0JGU290c0N3c0lEd2dSeUN3QWtWanNBRkZZbUN3QUVOaE9DMndMU3d1Rnp3dHNDNHNJRHdnUnlDd0FrVmpzQUZGWW1Dd0FFTmhzQUZEWXpndHNDOHNzUUlBRmlVZ0xpQkhzQUFqUXJBQ0pVbUtpa2NqUnlOaElGaGlHeUZac0FFalFySXVBUUVWRkNvdHNEQXNzQUFXc0FRbHNBUWxSeU5ISTJHd0JrVXJaWW91SXlBZ1BJbzRMYkF4TExBQUZyQUVKYkFFSlNBdVJ5TkhJMkVnc0FRalFyQUdSU3Nnc0dCUVdDQ3dRRkZZc3dJZ0F5QWJzd0ltQXhwWlFrSWpJTEFJUXlDS0kwY2pSeU5oSTBaZ3NBUkRzSUJpWUNDd0FDc2dpb3BoSUxBQ1EyQmtJN0FEUTJGa1VGaXdBa05oRzdBRFEyQlpzQU1sc0lCaVlTTWdJTEFFSmlOR1lUZ2JJN0FJUTBhd0FpV3dDRU5ISTBjallXQWdzQVJEc0lCaVlDTWdzQUFySTdBRVEyQ3dBQ3V3QlNWaHNBVWxzSUJpc0FRbVlTQ3dCQ1ZnWkNPd0F5VmdaRkJZSVJzaklWa2pJQ0N3QkNZalJtRTRXUzJ3TWl5d0FCWWdJQ0N3QlNZZ0xrY2pSeU5oSXp3NExiQXpMTEFBRmlDd0NDTkNJQ0FnUmlOSHNBQXJJMkU0TGJBMExMQUFGckFESmJBQ0pVY2pSeU5oc0FCVVdDNGdQQ01oRzdBQ0piQUNKVWNqUnlOaElMQUZKYkFFSlVjalJ5TmhzQVlsc0FVbFNiQUNKV0d3QVVWakl5QllZaHNoV1dPd0FVVmlZQ011SXlBZ1BJbzRJeUZaTGJBMUxMQUFGaUN3Q0VNZ0xrY2pSeU5oSUdDd0lHQm1zSUJpSXlBZ1BJbzRMYkEyTENNZ0xrYXdBaVZHVWxnZ1BGa3VzU1lCRkNzdHNEY3NJeUF1UnJBQ0pVWlFXQ0E4V1M2eEpnRVVLeTJ3T0N3aklDNUdzQUlsUmxKWUlEeFpJeUF1UnJBQ0pVWlFXQ0E4V1M2eEpnRVVLeTJ3T1N5d01Dc2pJQzVHc0FJbFJsSllJRHhaTHJFbUFSUXJMYkE2TExBeEs0b2dJRHl3QkNOQ2lqZ2pJQzVHc0FJbFJsSllJRHhaTHJFbUFSUXJzQVJETHJBbUt5MndPeXl3QUJhd0JDV3dCQ1lnTGtjalJ5TmhzQVpGS3lNZ1BDQXVJeml4SmdFVUt5MndQQ3l4Q0FRbFFyQUFGckFFSmJBRUpTQXVSeU5ISTJFZ3NBUWpRckFHUlNzZ3NHQlFXQ0N3UUZGWXN3SWdBeUFic3dJbUF4cFpRa0lqSUVld0JFT3dnR0pnSUxBQUt5Q0tpbUVnc0FKRFlHUWpzQU5EWVdSUVdMQUNRMkVic0FORFlGbXdBeVd3Z0dKaHNBSWxSbUU0SXlBOEl6Z2JJU0FnUmlOSHNBQXJJMkU0SVZteEpnRVVLeTJ3UFN5d01Dc3VzU1lCRkNzdHNENHNzREVySVNNZ0lEeXdCQ05DSXppeEpnRVVLN0FFUXk2d0ppc3RzRDhzc0FBVklFZXdBQ05Dc2dBQkFSVVVFeTZ3TENvdHNFQXNzQUFWSUVld0FDTkNzZ0FCQVJVVUV5NndMQ290c0VFc3NRQUJGQk93TFNvdHNFSXNzQzhxTGJCRExMQUFGa1VqSUM0Z1Jvb2pZVGl4SmdFVUt5MndSQ3l3Q0NOQ3NFTXJMYkJGTExJQUFEd3JMYkJHTExJQUFUd3JMYkJITExJQkFEd3JMYkJJTExJQkFUd3JMYkJKTExJQUFEMHJMYkJLTExJQUFUMHJMYkJMTExJQkFEMHJMYkJNTExJQkFUMHJMYkJOTExJQUFEa3JMYkJPTExJQUFUa3JMYkJQTExJQkFEa3JMYkJRTExJQkFUa3JMYkJSTExJQUFEc3JMYkJTTExJQUFUc3JMYkJUTExJQkFEc3JMYkJVTExJQkFUc3JMYkJWTExJQUFENHJMYkJXTExJQUFUNHJMYkJYTExJQkFENHJMYkJZTExJQkFUNHJMYkJaTExJQUFEb3JMYkJhTExJQUFUb3JMYkJiTExJQkFEb3JMYkJjTExJQkFUb3JMYkJkTExBeUt5NnhKZ0VVS3kyd1hpeXdNaXV3TmlzdHNGOHNzRElyc0RjckxiQmdMTEFBRnJBeUs3QTRLeTJ3WVN5d015c3VzU1lCRkNzdHNHSXNzRE1yc0RZckxiQmpMTEF6SzdBM0t5MndaQ3l3TXl1d09Dc3RzR1Vzc0RRckxyRW1BUlFyTGJCbUxMQTBLN0EyS3kyd1p5eXdOQ3V3TnlzdHNHZ3NzRFFyc0RnckxiQnBMTEExS3k2eEpnRVVLeTJ3YWl5d05TdXdOaXN0c0dzc3NEVXJzRGNyTGJCc0xMQTFLN0E0S3kyd2JTd3JzQWhsc0FNa1VIaXdBUlV3TFFBQUFFdTRBTWhTV0xFQkFZNVp1UWdBQ0FCaklMQUJJMFN3QXlOd3NnUW9DVVZTUkxJS0FnY3FzUVlCUkxFa0FZaFJXTEJBaUZpeEJnTkVzU1lCaUZGWXVBUUFpRml4QmdGRVdWbFpXYmdCLzRXd0JJMnhCUUJFQUFBPSkgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JnQUJBQUFBQUFvVUFBNEFBQUFBRVBRQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJQVXk4eUFBQUJSQUFBQUVRQUFBQldQZUZKQVdOdFlYQUFBQUdJQUFBQU9nQUFBVXJRRWhtM1kzWjBJQUFBQWNRQUFBQVVBQUFBSEFaSi81Um1jR2R0QUFBQjJBQUFCUGtBQUFtUmlncDRPMmRoYzNBQUFBYlVBQUFBQ0FBQUFBZ0FBQUFRWjJ4NVpnQUFCdHdBQUFDdUFBQUF0dDluQkhab1pXRmtBQUFIakFBQUFEVUFBQUEyQVNzOGUyaG9aV0VBQUFmRUFBQUFJQUFBQUNRSFV3Tk5hRzEwZUFBQUIrUUFBQUFNQUFBQURBc3BBQUJzYjJOaEFBQUg4QUFBQUFnQUFBQUlBRGdBVzIxaGVIQUFBQWY0QUFBQUlBQUFBQ0FBcGdtOGJtRnRaUUFBQ0JnQUFBRjNBQUFDemN5ZEdoeHdiM04wQUFBSmtBQUFBQ29BQUFBN3JyMUFtSEJ5WlhBQUFBbThBQUFBVmdBQUFGYVNvWnIvZUp4allHVGV3VGlCZ1pXQmc2bUthUThEQTBNUGhHWjh3R0RJeU1UQXdNVEF5c3lBRlFTa3VhWXdPTHhnZU1ISUhQUS9peUdLbVp2Qkh5ak1DSklEQVBlOUMyQjRuR05nWUdCbWdHQVpCa1lHRUhBQjhoakJmQllHRFNETkJxUVpHWmdZR0Y0dy92OFBVdkNDQVVSTE1FTFZBd0VqRzhPSUJ3Qms1QWF2QUFCNG5HTmdRQU5HREViTTNQODNnakFBRUxRRDRYaWNuVlhaZHROV0ZKVThaSEFTT21TZ29BN1gzRGhRNjhxRUtSZ3dhU3JGZGlFZEhBaXRCQjJrREhUa25jYys2MnVPUXJ0V0gvbTA3bjA5SkxSMHJiWXNscysrUjF0bjJEcm5SaHdqS24wYWlHdlVvWktYQTZtc1BaWks5MGxjMTNVdmo1VU1CbkZkdGhKUFNadW9uU1JLYXQzc1VDN3hXT3NxV1NkWUorUGxJRlpQVlo1bm9BemlGQjVsU1VRYlJCdXBseVpKNG9uako0a1daeEFmSlVrZ0phTVFwOUxJVUVJMUdzUlMxYUZNNmRDcjF4TngwMERLUnFNZWRWaFU5MFBGSjhjMXA5U3NBMFlxVnpuQ0ZldlZScjRicHdNdmU1REVPc0d6clljeEhuaXNmcFFxa0lxUjZjZy9ka3BPbElhQlZISFVvVmJpNkRDVFgvZVJUQ3JOUUthTVlrV2w3b0c0M2YxMDJ4WXhQWFE2dmk1S2xVYXF1cm5PS0pydDBmR29neWdQMmNicHBOelEyZmJ3NVJsVFZLdGRjYlB0UUdZTlhFckpiSFNmUkFBZEpsTGo2UUZPTlp3Q3FSbjFSOFhaNTg4QkVzbGNsS284VlRLSGVnT1pNenQ3Y1RIdGJpZXJzbkNrbndjeWIzWjI0NTJIUTZkWGgzL1IraGRNNGN4SGorSmlmajVDK2xCcWZpSk9KS1ZHV016eXA0WWZjVmNnUXJreGlBc1h5dUJUaERsMFJkclpabDNqdFRIMmhzLzVTcWxoUFFuYTZLUDRmZ3I5VGlRckhHZFJvL1ZJbk0xajEzV3QzR2RRUzdXN0Z6c3lyME9WSXU3dkN3dXVNK2VFWVo0V0MxVmZudm5lQlRUL0JvaG4vRURlTklWTCs1WXBTclJ2bTZKTXUyaUtDdTBTVktWZE5zVVU3WW9wcG1uUG1tS0c5aDFUek5LZU16TGovOHZjNTVIN0hON3hrSnYyWGVTbWZRKzVhZDlIYnRvUGtKdFdJVGR0SGJscEx5QTNyVVp1MmxXak9uWUVHZ1pwRjFJVlFkQTBzdnBoM0ZhYjlVRFdqRFI4YVdEeUxtTEkrdXBFUjUyMXRjb2Z4WDkxNGdzSGNtbWlwN3NpRjV2aUxxL2JGajQ4M2U2cmo1cEczYkRWK01hUjhqQWVSbm9jbXRCWitjM2h2KzFOM1M2YTdqS3FNdWdCRlV3S3dBQmw3VUFDMHpyYkNhVDFtcWY0OGdkZ1hJWjR6a3BEdFZTZk80YW03K1Y1WC9leE9mRyt4KzNHTHJkY2Qza0pXZFlOY21QMjhOOVNaS3JySCtVdHJWUW5SNndySjQ5VmF4aERLcndvdXI2U2xIdTB0UnUvS0tteThsNlUxc3JuazVDYlBZTWJRbHUyN21Hd0kweHB5aVVlWGxPbEtEM1VVbzZ5UXl4dktjbzg0SlNMQzFxR3hMZ09kUTlxYThUcG9Yb1lHd3NoaHFHMHZSQndTQ2xkRmQrMHluZnhIcXRyMk9qNHhSWGg2WHB5RWhHZjRpcjdVZkJVMTBiOTZBN2F2R2JkTW9NcFZhcW4rNHhQc2EvYjlsRlphYVNPc3hlM1ZBZlhOT3NhT1JYVFQrUnI0SFJ2T0dqZEF6MVVmRFJCSTFVMXgrakdLR00wbGpYbDN3UjBNVlordzJqVll2czkzRStkcEZXc3VVdVk3SnNUOStDMHUvMHErN1djVzBiVy9kY0d2VzNraXA4ak1iOHRDdnc3QjJLM1pBM1VPNU9CR0F2SVdkQVl4aFltZHhpdWcyM0ViZlkvSnFmLzM0YUZSWEpYT3hxN2VlckQxWk5SSlhmWjhyakxUWFpaMTZNMlI5Vk9HdnNJalMwUE4rYlk0WElzdHNSZ1FiYit3Zjh4N2dGM2FWRUM0TkRJWlppSTJuU2hudXJoNmg2cnNXMDRWeElCZHMyeDQzUUFlZ0F1UWQ4Y3U5YnpDWUQxM0NQbkxzQjljZ2gyeUNINGxCeUN6OGk1QmZBNU9RUmZrRU13SUlkZ2w1dzdBQS9JSVhoSURzRWVPUVNQeU5rRStKSWNncS9JSVlqSklVakl1UTN3bUJ5Q0orUVFmRTBPd1RkR3JrNWsvcFlIMlFENnpxS2JRS21kR2h6YU9HUkdyazNZK3p4WTlvRkZaQjlhUk9xUmtlc1Q2bE1lTFBWN2kwajl3U0pTZnpSeVkwTDlpUWRML2RraVVuK3hpTlJueHBlWkl5bXZEcDd6amc3K0JKZnFyVjRBQUFBQUFRQUIvLzhBRDNpY1kyQmtBQUxtSlV3ekdFUVpaQndrK1JrWkdCbWRHSmdZbWJJWWdNd3NvR1NpaUxnSXM1QTJvd2c3STV1U09xT2FpVDJqbVpFOEk1Z1FZMTdDLzA5QlFFZmczeXQrZmg4Z3ZZUXhEMGo2OERPSmlRbjhVK0RuWnhRRGNRVUVsakxtQ3dCcEJnYkcvMy8vYjJTT1orWm00R0VRY3VBSDJzYmxETFNFbThGRlZKaEpFR2dMSDZPU0hwTWRvNUVjSTNOazBiRVhKL0xZcXZaODJWWEhHRmQ2cEtUa3lDc1F3UUFBcStRa3FBQUFlSnhqWUdSZ1lBRGl3NVZTc2ZIOE5sOFp1SmxmQUVVWXpwdk82SVhRQ2I3Ly8vN2Z5THlFbVJ2STVXQmdBb2tDQUZiL0RKQUFBQUI0bkdOZ1pHQmdEdnFmeFJERi9JS0I0ZjkzNWlVTVFCRVV3QXdBaTVZRnBnUG9BQUFENkFBQUExa0FBQUFBQUFBQU9BQmJBQUVBQUFBREFCWUFBUUFBQUFBQUFnQUdBQk1BYmdBQUFDMEprUUFBQUFCNG5IV1F5MnJDUUJTRy8vSFNpMEpiV3VpMnN5cEthYnhnTjRJZ1dIVFRicVM0TFRIR0pCSXpNaGtGWDZQdjBJZnBTL1JaK3B1TXBTaE5tTXgzdmpsejVtUUFYT01iQXZuenhKR3p3Qm1qbkFzNFJjOXlrZjdaY29uOFlybU1LdDRzbjlDL1c2N2dBWUhsS203d3dRcWlkTTVvZ1UvTEFsZmkwbklCRitMT2NwSCswWEtKM0xOY3hxMTR0WHhDNzFtdVlDSlN5MVhjaTYrQldtMTFGSVJHMWdaMTJXNjJPbks2bFlvcVN0eFl1bXNUS3AzS3ZweXJ4UGh4ckJ4UExmYzg5b04xN09wOXVKOG52azRqbGNpVzA5eXJrWi80MmpYK2JGYzkzUVJ0WStaeXJ0VlNEbTJHWEdtMThEM2poTWFzdW8zRzMvTXdnTUlLVzJoRXZLb1FCaEkxMmpybk5wcG9vVU9hTWtNeU04K0trTUJGVE9OaXpSMWh0cEl5N25QTUdTVzBQak5pc2dPUDMrV1JINU1DN285WlJSK3RIc1lUMHU2TUtQT1NmVG5zN2pCclJFcXlURGV6czkvZVUyeDRXcHZXY05ldVM1MTFKVEU4cUNGNUg3dTFCWTFINzJTM1ltaTdhUEQ5NS85K0FOMWZoRXNBZUp4allHS0FBQzRHN0lDWmdZR1JpWkdaTXprak5UazdON0VvbXkwNXN5ZzVKNVdCQVFCRTFRWkJBQUJMdUFESVVsaXhBUUdPV2JrSUFBZ0FZeUN3QVNORXNBTWpjTElFS0FsRlVrU3lDZ0lIS3JFR0FVU3hKQUdJVVZpd1FJaFlzUVlEUkxFbUFZaFJXTGdFQUloWXNRWUJSRmxaV1ZtNEFmK0ZzQVNOc1FVQVJBQUEpIGZvcm1hdCgnd29mZicpO1xufVxuLnVpLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZCA+IC5pY29uOmJlZm9yZSxcbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZDpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ1N0ZXAnO1xuICBjb250ZW50OiAnXFxlODAwJztcbiAgLyogJ+6ggCcgKi9cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFRleHRcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9ibG9iL21hc3Rlci9MSUNFTlNFLm1kXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRleHRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRleHRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTaXRlIFRoZW1lICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVGV4dFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbnNwYW4udWkucHJpbWFyeS50ZXh0IHtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG5zcGFuLnVpLmludmVydGVkLnByaW1hcnkudGV4dCB7XG4gIGNvbG9yOiAjNTRDOEZGO1xufVxuc3Bhbi51aS5zZWNvbmRhcnkudGV4dCB7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuc3Bhbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkudGV4dCB7XG4gIGNvbG9yOiAjNTQ1NDU0O1xufVxuc3Bhbi51aS5yZWQudGV4dCB7XG4gIGNvbG9yOiAjREIyODI4O1xufVxuc3Bhbi51aS5pbnZlcnRlZC5yZWQudGV4dCB7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuc3Bhbi51aS5vcmFuZ2UudGV4dCB7XG4gIGNvbG9yOiAjRjI3MTFDO1xufVxuc3Bhbi51aS5pbnZlcnRlZC5vcmFuZ2UudGV4dCB7XG4gIGNvbG9yOiAjRkY4NTFCO1xufVxuc3Bhbi51aS55ZWxsb3cudGV4dCB7XG4gIGNvbG9yOiAjRkJCRDA4O1xufVxuc3Bhbi51aS5pbnZlcnRlZC55ZWxsb3cudGV4dCB7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuc3Bhbi51aS5vbGl2ZS50ZXh0IHtcbiAgY29sb3I6ICNCNUNDMTg7XG59XG5zcGFuLnVpLmludmVydGVkLm9saXZlLnRleHQge1xuICBjb2xvcjogI0Q5RTc3ODtcbn1cbnNwYW4udWkuZ3JlZW4udGV4dCB7XG4gIGNvbG9yOiAjMjFCQTQ1O1xufVxuc3Bhbi51aS5pbnZlcnRlZC5ncmVlbi50ZXh0IHtcbiAgY29sb3I6ICMyRUNDNDA7XG59XG5zcGFuLnVpLnRlYWwudGV4dCB7XG4gIGNvbG9yOiAjMDBCNUFEO1xufVxuc3Bhbi51aS5pbnZlcnRlZC50ZWFsLnRleHQge1xuICBjb2xvcjogIzZERkZGRjtcbn1cbnNwYW4udWkuYmx1ZS50ZXh0IHtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG5zcGFuLnVpLmludmVydGVkLmJsdWUudGV4dCB7XG4gIGNvbG9yOiAjNTRDOEZGO1xufVxuc3Bhbi51aS52aW9sZXQudGV4dCB7XG4gIGNvbG9yOiAjNjQzNUM5O1xufVxuc3Bhbi51aS5pbnZlcnRlZC52aW9sZXQudGV4dCB7XG4gIGNvbG9yOiAjQTI5MUZCO1xufVxuc3Bhbi51aS5wdXJwbGUudGV4dCB7XG4gIGNvbG9yOiAjQTMzM0M4O1xufVxuc3Bhbi51aS5pbnZlcnRlZC5wdXJwbGUudGV4dCB7XG4gIGNvbG9yOiAjREM3M0ZGO1xufVxuc3Bhbi51aS5waW5rLnRleHQge1xuICBjb2xvcjogI0UwMzk5Nztcbn1cbnNwYW4udWkuaW52ZXJ0ZWQucGluay50ZXh0IHtcbiAgY29sb3I6ICNGRjhFREY7XG59XG5zcGFuLnVpLmJyb3duLnRleHQge1xuICBjb2xvcjogI0E1NjczRjtcbn1cbnNwYW4udWkuaW52ZXJ0ZWQuYnJvd24udGV4dCB7XG4gIGNvbG9yOiAjRDY3QzFDO1xufVxuc3Bhbi51aS5ncmV5LnRleHQge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbnNwYW4udWkuaW52ZXJ0ZWQuZ3JleS50ZXh0IHtcbiAgY29sb3I6ICNEQ0REREU7XG59XG5zcGFuLnVpLmJsYWNrLnRleHQge1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbnNwYW4udWkuaW52ZXJ0ZWQuYmxhY2sudGV4dCB7XG4gIGNvbG9yOiAjNTQ1NDU0O1xufVxuc3Bhbi51aS5kaXNhYmxlZC50ZXh0IHtcbiAgb3BhY2l0eTogMC40NTtcbn1cbi8qIFNpemVzICovXG5zcGFuLnVpLm1pbmkudGV4dCB7XG4gIGZvbnQtc2l6ZTogMC40ZW07XG59XG5zcGFuLnVpLnRpbnkudGV4dCB7XG4gIGZvbnQtc2l6ZTogMC41ZW07XG59XG5zcGFuLnVpLnNtYWxsLnRleHQge1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cbnNwYW4udWkubWVkaXVtLnRleHQge1xuICBmb250LXNpemU6IDFlbTtcbn1cbnNwYW4udWkubGFyZ2UudGV4dCB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG59XG5zcGFuLnVpLmJpZy50ZXh0IHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5zcGFuLnVpLmh1Z2UudGV4dCB7XG4gIGZvbnQtc2l6ZTogNGVtO1xufVxuc3Bhbi51aS5tYXNzaXZlLnRleHQge1xuICBmb250LXNpemU6IDhlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gQnJlYWRjcnVtYlxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgQnJlYWRjcnVtYlxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVhZGNydW1iXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBDb3VwbGluZyAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgQnJlYWRjcnVtYlxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVhZGNydW1iXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBDb3VwbGluZyAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBCcmVhZGNydW1iXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmJyZWFkY3J1bWIge1xuICBsaW5lLWhlaWdodDogMS40Mjg1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4udWkuYnJlYWRjcnVtYjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkuYnJlYWRjcnVtYjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIERpdmlkZXIgKi9cbi51aS5icmVhZGNydW1iIC5kaXZpZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcGFjaXR5OiAwLjc7XG4gIG1hcmdpbjogMCAwLjIxNDI4NTcxcmVtIDA7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M2VtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4vKiBMaW5rICovXG4udWkuYnJlYWRjcnVtYiBhIHtcbiAgY29sb3I6ICM0MTgzQzQ7XG59XG4udWkuYnJlYWRjcnVtYiBhOmhvdmVyIHtcbiAgY29sb3I6ICMxZTcwYmY7XG59XG4vKiBJY29uIERpdmlkZXIgKi9cbi51aS5icmVhZGNydW1iIC5pY29uLmRpdmlkZXIge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLyogU2VjdGlvbiAqL1xuLnVpLmJyZWFkY3J1bWIgYS5zZWN0aW9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnVpLmJyZWFkY3J1bWIgLnNlY3Rpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi8qIExvb3NlIENvdXBsaW5nICovXG4udWkuYnJlYWRjcnVtYi5zZWdtZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5ZW0gMWVtO1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5icmVhZGNydW1iIHtcbiAgY29sb3I6ICNEQ0REREU7XG59XG4udWkuaW52ZXJ0ZWQuYnJlYWRjcnVtYiA+IC5hY3RpdmUuc2VjdGlvbiB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLmJyZWFkY3J1bWIgPiAuZGl2aWRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmJyZWFkY3J1bWIgLmFjdGl2ZS5zZWN0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLm1pbmkuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG4udWkuc21hbGwuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4udWkuYmlnLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG4udWkuaHVnZS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLnVpLm1hc3NpdmUuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBGb3JtXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBGb3JtXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvcm0gKi9cbi8qIFRleHQgKi9cbi8qIEZpZWxkICovXG4vKiBGaWVsZHMgKi9cbi8qIEZvcm0gTGFiZWwgKi9cbi8qIElucHV0ICovXG4vKiBTZWxlY3QgKi9cbi8qIFRleHQgQXJlYSAqL1xuLyogQ2hlY2tib3ggKi9cbi8qIElubGluZSBWYWxpZGF0aW9uIFByb21wdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9jdXMgKi9cbi8qIElucHV0IEZvY3VzICovXG4vKiBUZXh0IEFyZWEgRm9jdXMgKi9cbi8qIERpc2FibGVkICovXG4vKiBFcnJvcmVkIElucHV0ICovXG4vKiBBdXRvRmlsbCAqL1xuLyogSW5wdXQgRXJyb3IgKi9cbi8qIERyb3Bkb3duIEVycm9yICovXG4vKiBGb2N1c2VkIEVycm9yICovXG4vKiBQbGFjZWhvbGRlciBFcnJvciAqL1xuLyogTG9hZGluZyBEaW1tZXIgKi9cbi8qIExvYWRpbmcgU3Bpbm5lciAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBSZXF1aXJlZCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogR3JvdXBlZCBGaWVsZHMgKi9cbi8qIElubGluZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgR3JvdXBzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBGb3JtXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvcm0gKi9cbi8qIFRleHQgKi9cbi8qIEZpZWxkICovXG4vKiBGaWVsZHMgKi9cbi8qIEZvcm0gTGFiZWwgKi9cbi8qIElucHV0ICovXG4vKiBTZWxlY3QgKi9cbi8qIFRleHQgQXJlYSAqL1xuLyogQ2hlY2tib3ggKi9cbi8qIElubGluZSBWYWxpZGF0aW9uIFByb21wdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9jdXMgKi9cbi8qIElucHV0IEZvY3VzICovXG4vKiBUZXh0IEFyZWEgRm9jdXMgKi9cbi8qIERpc2FibGVkICovXG4vKiBFcnJvcmVkIElucHV0ICovXG4vKiBBdXRvRmlsbCAqL1xuLyogSW5wdXQgRXJyb3IgKi9cbi8qIERyb3Bkb3duIEVycm9yICovXG4vKiBGb2N1c2VkIEVycm9yICovXG4vKiBQbGFjZWhvbGRlciBFcnJvciAqL1xuLyogTG9hZGluZyBEaW1tZXIgKi9cbi8qIExvYWRpbmcgU3Bpbm5lciAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBSZXF1aXJlZCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogR3JvdXBlZCBGaWVsZHMgKi9cbi8qIElubGluZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgR3JvdXBzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRWxlbWVudHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZvcm0gPiBwIHtcbiAgbWFyZ2luOiAxZW0gMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmllbGRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZm9ybSAuZmllbGQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwIDAgMWVtO1xufVxuLnVpLmZvcm0gLmZpZWxkOmxhc3QtY2hpbGQsXG4udWkuZm9ybSAuZmllbGRzOmxhc3QtY2hpbGQgLmZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi51aS5mb3JtIC5maWVsZHMgLmZpZWxkIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGFiZWxzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZvcm0gLmZpZWxkID4gbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMC4yODU3MTQyOXJlbSAwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTdGFuZGFyZCBJbnB1dHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZm9ybSB0ZXh0YXJlYSxcbi51aS5mb3JtIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidXJsXCJdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4vKiBTZXQgbWF4IGhlaWdodCBvbiB1bnVzdWFsIGlucHV0ICovXG4udWkuZm9ybSA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCxcbi51aS5mb3JtIDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogMS4yMTQyODU3MWVtO1xufVxuLnVpLmZvcm0gaW5wdXQ6bm90KFt0eXBlXSksXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRlbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZmlsZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICBsaW5lLWhlaWdodDogMS4yMTQyODU3MWVtO1xuICBwYWRkaW5nOiAwLjY3ODU3MTQzZW0gMWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgdHJhbnNwYXJlbnQgaW5zZXQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMXMgZWFzZTtcbn1cbi8qIFRleHQgQXJlYSAqL1xuLnVpLmlucHV0IHRleHRhcmVhLFxuLnVpLmZvcm0gdGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5ZW0gMWVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCB0cmFuc3BhcmVudCBpbnNldDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuMjg1NztcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cbi51aS5mb3JtIHRleHRhcmVhOm5vdChbcm93c10pIHtcbiAgaGVpZ2h0OiAxMmVtO1xuICBtaW4taGVpZ2h0OiA4ZW07XG4gIG1heC1oZWlnaHQ6IDI0ZW07XG59XG4udWkuZm9ybSB0ZXh0YXJlYSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2hlY2tib3ggbWFyZ2luXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZvcm0gLmZpZWxkczpub3QoLmdyb3VwZWQpOm5vdCguaW5saW5lKSAuZmllbGQ6bm90KDpvbmx5LWNoaWxkKSBsYWJlbCArIC51aS51aS5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IDAuN2VtO1xufVxuLnVpLmZvcm0gLmZpZWxkczpub3QoLmdyb3VwZWQpOm5vdCguaW5saW5lKSAuZmllbGQ6bm90KDpvbmx5LWNoaWxkKSAudWkuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAyLjQxNDI4NTcxZW07XG59XG4udWkuZm9ybSAuZmllbGRzOm5vdCguZ3JvdXBlZCk6bm90KC5pbmxpbmUpIC5maWVsZDpub3QoOm9ubHktY2hpbGQpIC51aS50b2dnbGUuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAyLjIxNDI4NTcxZW07XG59XG4udWkuZm9ybSAuZmllbGRzOm5vdCguZ3JvdXBlZCk6bm90KC5pbmxpbmUpIC5maWVsZDpub3QoOm9ubHktY2hpbGQpIC51aS5zbGlkZXIuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAyLjYxNDI4NTcxZW07XG59XG4udWkudWkuZm9ybSAuZmllbGQgLmZpZWxkcyAuZmllbGQ6bm90KDpvbmx5LWNoaWxkKSAudWkuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAwLjZlbTtcbn1cbi51aS51aS5mb3JtIC5maWVsZCAuZmllbGRzIC5maWVsZDpub3QoOm9ubHktY2hpbGQpIC51aS50b2dnbGUuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cbi51aS51aS5mb3JtIC5maWVsZCAuZmllbGRzIC5maWVsZDpub3QoOm9ubHktY2hpbGQpIC51aS5zbGlkZXIuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAwLjdlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFRyYW5zcGFyZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZvcm0gLmZpZWxkIC50cmFuc3BhcmVudC5pbnB1dDpub3QoLmljb24pIGlucHV0LFxuLnVpLmZvcm0gLmZpZWxkIGlucHV0LnRyYW5zcGFyZW50LFxuLnVpLmZvcm0gLmZpZWxkIHRleHRhcmVhLnRyYW5zcGFyZW50IHtcbiAgcGFkZGluZzogMC42Nzg1NzE0M2VtIDFlbTtcbn1cbi51aS5mb3JtIC5maWVsZCBpbnB1dC50cmFuc3BhcmVudCxcbi51aS5mb3JtIC5maWVsZCB0ZXh0YXJlYS50cmFuc3BhcmVudCB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC50cmFuc3BhcmVudC5pbnB1dCBpbnB1dCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudHJhbnNwYXJlbnQuaW5wdXQgdGV4dGFyZWEsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXQudHJhbnNwYXJlbnQsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgdGV4dGFyZWEudHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGNkY2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjOUYzQTM4ICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIElucHV0IHcvIGF0dGFjaGVkIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mb3JtIGlucHV0LmF0dGFjaGVkIHtcbiAgd2lkdGg6IGF1dG87XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJhc2ljIFNlbGVjdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mb3JtIHNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHRyYW5zcGFyZW50IGluc2V0O1xuICBwYWRkaW5nOiAwLjYyZW0gMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIERyb3Bkb3duXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQmxvY2sgKi9cbi51aS5mb3JtIC5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24ge1xuICBtaW4td2lkdGg6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmZvcm0gLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLyogSW5saW5lICovXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiAuc2VsZWN0aW9uLmRyb3Bkb3duLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24ge1xuICB3aWR0aDogYXV0bztcbn1cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbixcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiAuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBmbG9hdDogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBVSSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEJsb2NrICovXG4udWkuZm9ybSAuZmllbGQgLnVpLmlucHV0LFxuLnVpLmZvcm0gLmZpZWxkcyAuZmllbGQgLnVpLmlucHV0LFxuLnVpLmZvcm0gLndpZGUuZmllbGQgLnVpLmlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBJbmxpbmUgICovXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQ6bm90KC53aWRlKSAudWkuaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkOm5vdCgud2lkZSkgLnVpLmlucHV0IHtcbiAgd2lkdGg6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4vKiBBdXRvIElucHV0ICovXG4udWkuZm9ybSAuZmllbGRzIC5maWVsZCAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuZmllbGQgLnVpLmlucHV0IGlucHV0IHtcbiAgd2lkdGg6IGF1dG87XG59XG4vKiBGdWxsIFdpZHRoIElucHV0ICovXG4udWkuZm9ybSAudGVuLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAubmluZS5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLmVpZ2h0LmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuc2V2ZW4uZmllbGRzIC51aS5pbnB1dCBpbnB1dCxcbi51aS5mb3JtIC5zaXguZmllbGRzIC51aS5pbnB1dCBpbnB1dCxcbi51aS5mb3JtIC5maXZlLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuZm91ci5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLnRocmVlLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAudHdvLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAud2lkZS5maWVsZCAudWkuaW5wdXQgaW5wdXQge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgd2lkdGg6IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBUeXBlcyBvZiBNZXNzYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mb3JtIC5zdWNjZXNzLm1lc3NhZ2UsXG4udWkuZm9ybSAud2FybmluZy5tZXNzYWdlLFxuLnVpLmZvcm0gLmVycm9yLm1lc3NhZ2UsXG4udWkuZm9ybSAuZXJyb3IubWVzc2FnZTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBBc3N1bXB0aW9ucyAqL1xuLnVpLmZvcm0gLm1lc3NhZ2U6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgVmFsaWRhdGlvbiBQcm9tcHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZm9ybSAuZmllbGQgLnByb21wdC5sYWJlbCB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UwQjRCNCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzlGM0EzOCAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkIC5wcm9tcHQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkIC5wcm9tcHQge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW46IC0wLjI1ZW0gMCAtMC41ZW0gMC41ZW07XG59XG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgLnByb21wdDpiZWZvcmUsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkIC5wcm9tcHQ6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDFweDtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQXV0b2ZpbGxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mb3JtIC5maWVsZC5maWVsZCBpbnB1dDotd2Via2l0LWF1dG9maWxsIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTAwcHggI0ZGRkZGMCBpbnNldCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNFNURGQTEgIWltcG9ydGFudDtcbn1cbi8qIEZvY3VzICovXG4udWkuZm9ybSAuZmllbGQuZmllbGQgaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwMHB4ICNGRkZGRjAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjRDVDMzE1ICFpbXBvcnRhbnQ7XG59XG4vKiBFcnJvciAqL1xuLnVpLmZvcm0gLmVycm9yLmVycm9yIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICBib3gtc2hhZG93OiAwIDAgMCAxMDBweCAjRkZGQUYwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNCAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGxhY2Vob2xkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBicm93c2VycyByZXF1aXJlIHRoZXNlIHJ1bGVzIHNlcGFyYXRlICovXG4udWkuZm9ybSA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxOTEsIDE5MSwgMTkxLCAwLjg3KTtcbn1cbi51aS5mb3JtIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxOTEsIDE5MSwgMTkxLCAwLjg3KSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTkxLCAxOTEsIDE5MSwgMC44Nyk7XG59XG4udWkuZm9ybSA6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxMTUsIDExNSwgMTE1LCAwLjg3KTtcbn1cbi51aS5mb3JtIDpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxMTUsIDExNSwgMTE1LCAwLjg3KSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gOmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTE1LCAxMTUsIDExNSwgMC44Nyk7XG59XG4vKiBFcnJvciBQbGFjZWhvbGRlciAqL1xuLnVpLmZvcm0gLmVycm9yIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTdiZGJjO1xufVxuLnVpLmZvcm0gLmVycm9yIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2U3YmRiYyAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmVycm9yIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTdiZGJjO1xufVxuLnVpLmZvcm0gLmVycm9yIDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZGE5Nzk2O1xufVxuLnVpLmZvcm0gLmVycm9yIDpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2RhOTc5NiAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmVycm9yIDpmb2N1czo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZGE5Nzk2O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mb3JtIGlucHV0Om5vdChbdHlwZV0pOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG4gIGJvcmRlci1jb2xvcjogIzg1QjdEOTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0O1xufVxuLnVpLmZvcm0gdGV4dGFyZWE6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgYm9yZGVyLWNvbG9yOiAjODVCN0Q5O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4zNSkgaW5zZXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU3VjY2Vzc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE9uIEZvcm0gKi9cbi51aS5mb3JtLnN1Y2Nlc3MgLnN1Y2Nlc3MubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnVpLmZvcm0uc3VjY2VzcyAuY29tcGFjdC5zdWNjZXNzLm1lc3NhZ2U6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udWkuZm9ybS5zdWNjZXNzIC5pY29uLnN1Y2Nlc3MubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFdhcm5pbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBPbiBGb3JtICovXG4udWkuZm9ybS53YXJuaW5nIC53YXJuaW5nLm1lc3NhZ2U6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51aS5mb3JtLndhcm5pbmcgLmNvbXBhY3Qud2FybmluZy5tZXNzYWdlOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnVpLmZvcm0ud2FybmluZyAuaWNvbi53YXJuaW5nLm1lc3NhZ2U6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE9uIEZvcm0gKi9cbi51aS5mb3JtLmVycm9yIC5lcnJvci5tZXNzYWdlOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udWkuZm9ybS5lcnJvciAuY29tcGFjdC5lcnJvci5tZXNzYWdlOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnVpLmZvcm0uZXJyb3IgLmljb24uZXJyb3IubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4vKiBPbiBGaWVsZChzKSAqL1xuLnVpLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgbGFiZWwsXG4udWkudWkuZm9ybSAuZmllbGQuZXJyb3IgbGFiZWwsXG4udWkudWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuaW5wdXQsXG4udWkudWkuZm9ybSAuZmllbGQuZXJyb3IgLmlucHV0IHtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY29ybmVyLmxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jb3JuZXIubGFiZWwge1xuICBib3JkZXItY29sb3I6ICM5RjNBMzg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgdGV4dGFyZWEsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBzZWxlY3QsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dDpub3QoW3R5cGVdKSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInVybFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciB0ZXh0YXJlYSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBzZWxlY3QsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXQ6bm90KFt0eXBlXSksXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInVybFwiXSB7XG4gIGJhY2tncm91bmQ6ICNGRkY2RjY7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNDtcbiAgY29sb3I6ICM5RjNBMzg7XG4gIGJvcmRlci1yYWRpdXM6ICcnO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIHRleHRhcmVhOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIHNlbGVjdDpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dDpub3QoW3R5cGVdKTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZmlsZVwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogI0ZGRjZGNjtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xuICBjb2xvcjogIzlGM0EzODtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIFByZXNlcnZlIE5hdGl2ZSBTZWxlY3QgU3R5bGluZ3MgKi9cbi51aS5mb3JtIC5maWVsZC5lcnJvciBzZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0LWJ1dHRvbjtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRHJvcGRvd24gRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93bixcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAuaXRlbSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duIC50ZXh0LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biAuaXRlbSB7XG4gIGJhY2tncm91bmQ6ICNGRkY2RjY7XG4gIGNvbG9yOiAjOUYzQTM4O1xufVxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biB7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNCAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duOmhvdmVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNCAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duOmhvdmVyIC5tZW51LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93bjpob3ZlciAubWVudSB7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNDtcbn1cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5tdWx0aXBsZS5zZWxlY3Rpb24uZHJvcGRvd24gPiAubGFiZWwsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLm11bHRpcGxlLnNlbGVjdGlvbi5kcm9wZG93biA+IC5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQUNCQ0I7XG4gIGNvbG9yOiAjOUYzQTM4O1xufVxuLyogSG92ZXIgKi9cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAubWVudSAuaXRlbTpob3Zlcixcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLm1lbnUgLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJFN0U3O1xufVxuLyogU2VsZWN0ZWQgKi9cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAubWVudSAuc2VsZWN0ZWQuaXRlbSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLm1lbnUgLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJFN0U3O1xufVxuLyogQWN0aXZlICovXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd24gLm1lbnUgLmFjdGl2ZS5pdGVtLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRDRkNGICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2hlY2tib3ggRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSBsYWJlbCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSBsYWJlbCxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIC5ib3gsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLmNoZWNrYm94Om5vdCgudG9nZ2xlKTpub3QoLnNsaWRlcikgLmJveCB7XG4gIGNvbG9yOiAjOUYzQTM4O1xufVxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94Om5vdCgudG9nZ2xlKTpub3QoLnNsaWRlcikgbGFiZWw6YmVmb3JlLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsOmJlZm9yZSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIC5ib3g6YmVmb3JlLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIC5ib3g6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRjZGNjtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xufVxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveCBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveCAuYm94OmFmdGVyIHtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZm9ybSAuZGlzYWJsZWQuZmllbGRzIC5maWVsZCxcbi51aS5mb3JtIC5kaXNhYmxlZC5maWVsZCxcbi51aS5mb3JtIC5maWVsZCA6ZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMC40NTtcbn1cbi51aS5mb3JtIC5maWVsZC5kaXNhYmxlZCA+IGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkcy5kaXNhYmxlZCA+IGxhYmVsIHtcbiAgb3BhY2l0eTogMC40NTtcbn1cbi51aS5mb3JtIC5maWVsZC5kaXNhYmxlZCA6ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAxO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubG9hZGluZy5mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnVpLmxvYWRpbmcuZm9ybTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xufVxuLnVpLmxvYWRpbmcuZm9ybS5zZWdtZW50czpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLmxvYWRpbmcuZm9ybTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEuNWVtIDAgMCAtMS41ZW07XG4gIHdpZHRoOiAzZW07XG4gIGhlaWdodDogM2VtO1xuICBhbmltYXRpb246IGxvYWRlciAwLjZzIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCAjNzY3Njc2O1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgei1pbmRleDogMTAxO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEVsZW1lbnQgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFJlcXVpcmVkIEZpZWxkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkczpub3QoLmdyb3VwZWQpID4gLmZpZWxkID4gbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGRzLmdyb3VwZWQgPiBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkczpub3QoLmdyb3VwZWQpID4gLmZpZWxkID4gLmNoZWNrYm94OmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkID4gLmNoZWNrYm94OmFmdGVyLFxuLnVpLmZvcm0gbGFiZWwucmVxdWlyZWQ6YWZ0ZXIge1xuICBtYXJnaW46IC0wLjJlbSAwIDAgMC4yZW07XG4gIGNvbnRlbnQ6ICcqJztcbiAgY29sb3I6ICNEQjI4Mjg7XG59XG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGRzOm5vdCguZ3JvdXBlZCkgPiAuZmllbGQgPiBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHMuZ3JvdXBlZCA+IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkID4gbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSBsYWJlbC5yZXF1aXJlZDphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHM6bm90KC5ncm91cGVkKSA+IC5maWVsZCA+IC5jaGVja2JveDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IC5jaGVja2JveDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW52ZXJ0ZWQuZm9ybSBsYWJlbCxcbi51aS5mb3JtIC5pbnZlcnRlZC5zZWdtZW50IGxhYmVsLFxuLnVpLmZvcm0gLmludmVydGVkLnNlZ21lbnQgLnVpLmNoZWNrYm94IGxhYmVsLFxuLnVpLmZvcm0gLmludmVydGVkLnNlZ21lbnQgLnVpLmNoZWNrYm94IC5ib3gsXG4udWkuaW52ZXJ0ZWQuZm9ybSAudWkuY2hlY2tib3ggbGFiZWwsXG4udWkuaW52ZXJ0ZWQuZm9ybSAudWkuY2hlY2tib3ggLmJveCxcbi51aS5pbnZlcnRlZC5mb3JtIC5pbmxpbmUuZmllbGRzID4gbGFiZWwsXG4udWkuaW52ZXJ0ZWQuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBsYWJlbCxcbi51aS5pbnZlcnRlZC5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IHAsXG4udWkuaW52ZXJ0ZWQuZm9ybSAuaW5saW5lLmZpZWxkID4gbGFiZWwsXG4udWkuaW52ZXJ0ZWQuZm9ybSAuaW5saW5lLmZpZWxkID4gcCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQubG9hZGluZy5mb3JtIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQubG9hZGluZy5mb3JtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG4vKiBJbnZlcnRlZCBGaWVsZCAqL1xuLnVpLmludmVydGVkLmZvcm0gaW5wdXQ6bm90KFt0eXBlXSksXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cInRlbFwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwiZmlsZVwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEZpZWxkIEdyb3Vwc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEdyb3VwZWQgVmVydGljYWxseSAqL1xuLnVpLmZvcm0gLmdyb3VwZWQuZmllbGRzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkczpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkcyA+IGxhYmVsIHtcbiAgbWFyZ2luOiAwIDAgMC4yODU3MTQyOXJlbSAwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkcyAuZmllbGQsXG4udWkuZm9ybSAuZ3JvdXBlZC5pbmxpbmUuZmllbGRzIC5maWVsZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAuNWVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZpZWxkc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNwbGl0IGZpZWxkcyAqL1xuLnVpLmZvcm0gLmZpZWxkcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIG1hcmdpbjogMCAtMC41ZW0gMWVtO1xufVxuLnVpLmZvcm0gLmZpZWxkcyA+IC5maWVsZCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbn1cbi51aS5mb3JtIC5maWVsZHMgPiAuZmllbGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIE90aGVyIENvbWJpbmF0aW9ucyAqL1xuLnVpLmZvcm0gLnR3by5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLnR3by5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogNTAlO1xufVxuLnVpLmZvcm0gLnRocmVlLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAudGhyZWUuZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbn1cbi51aS5mb3JtIC5mb3VyLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuZm91ci5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMjUlO1xufVxuLnVpLmZvcm0gLmZpdmUuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5maXZlLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAyMCU7XG59XG4udWkuZm9ybSAuc2l4LmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuc2l4LmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NyU7XG59XG4udWkuZm9ybSAuc2V2ZW4uZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5zZXZlbi5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMTQuMjg1NzE0MjklO1xufVxuLnVpLmZvcm0gLmVpZ2h0LmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuZWlnaHQuZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuLnVpLmZvcm0gLm5pbmUuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5uaW5lLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxMS4xMTExMTExMSU7XG59XG4udWkuZm9ybSAudGVuLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAudGVuLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxMCU7XG59XG4vKiBTd2FwIHRvIGZ1bGwgd2lkdGggb24gbW9iaWxlICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5mb3JtIC5maWVsZHMge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAudWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSBbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudHdvLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC50d28uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudGhyZWUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnRocmVlLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZvdXIuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZvdXIuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZml2ZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZml2ZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5zaXguZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnNpeC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5zZXZlbi5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuc2V2ZW4uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZWlnaHQuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmVpZ2h0LmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLm5pbmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLm5pbmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudGVuLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC50ZW4uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwIDFlbTtcbiAgfVxufVxuLyogU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuLnVpLmZvcm0gLmZpZWxkcyAud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA2LjI1JTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG59XG4udWkuZm9ybSAub25lLndpZGUuZmllbGQge1xuICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC50d28ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLnRocmVlLndpZGUuZmllbGQge1xuICB3aWR0aDogMTguNzUlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAuZm91ci53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmZpdmUud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5zaXgud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLnNldmVuLndpZGUuZmllbGQge1xuICB3aWR0aDogNDMuNzUlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAuZWlnaHQud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5uaW5lLndpZGUuZmllbGQge1xuICB3aWR0aDogNTYuMjUlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAudGVuLndpZGUuZmllbGQge1xuICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5lbGV2ZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC50d2VsdmUud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC50aGlydGVlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDgxLjI1JSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmZvdXJ0ZWVuLndpZGUuZmllbGQge1xuICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5maWZ0ZWVuLndpZGUuZmllbGQge1xuICB3aWR0aDogOTMuNzUlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAuc2l4dGVlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi8qIFN3YXAgdG8gZnVsbCB3aWR0aCBvbiBtb2JpbGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnR3by5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudHdvLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnRocmVlLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC50aHJlZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5mb3VyLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5mb3VyLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpdmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpdmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnR3by53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnRocmVlLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZm91ci53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpdmUud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5zaXgud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5zZXZlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmVpZ2h0LndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAubmluZS53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnRlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmVsZXZlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnR3ZWx2ZS53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnRoaXJ0ZWVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZm91cnRlZW4ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWZ0ZWVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuc2l4dGVlbi53aWRlLmZpZWxkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5mb3JtIC5maWVsZHMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgRXF1YWwgV2lkdGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZm9ybSAuZmllbGRzID4gLmZpZWxkLFxuLnVpLmZvcm0gW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbGV4OiAxIDEgYXV0bztcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBJbmxpbmUgRmllbGRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZvcm0gLmlubGluZS5maWVsZHMge1xuICBtYXJnaW46IDAgMCAxZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMWVtIDAgMDtcbn1cbi8qIElubGluZSBMYWJlbCAqL1xuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgPiBsYWJlbCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IGxhYmVsLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gcCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiBsYWJlbCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiBwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8qIEdyb3VwZWQgSW5saW5lIExhYmVsICovXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyA+IGxhYmVsIHtcbiAgbWFyZ2luOiAwLjAzNTcxNGVtIDFlbSAwIDA7XG59XG4vKiBJbmxpbmUgSW5wdXQgKi9cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IGlucHV0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gc2VsZWN0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IGlucHV0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IHNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLyogTGFiZWwgKi9cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IDpmaXJzdC1jaGlsZCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW46IDAgMC44NTcxNDI4NmVtIDAgMDtcbn1cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IDpvbmx5LWNoaWxkLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IDpvbmx5LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xufVxuLyogV2lkZSAqL1xuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLndpZGUuZmllbGQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLndpZGUuZmllbGQgPiBpbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC53aWRlLmZpZWxkID4gc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1pbmkuZm9ybSB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LmZvcm0ge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG4udWkuc21hbGwuZm9ybSB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5mb3JtIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLmZvcm0ge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4udWkuYmlnLmZvcm0ge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG4udWkuaHVnZS5mb3JtIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLnVpLm1hc3NpdmUuZm9ybSB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cbi8qIERyb3Bkb3duICovXG4udWkubWluaS5mb3JtIC5maWVsZCAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG59XG4udWkudGlueS5mb3JtIC5maWVsZCAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG4udWkuc21hbGwuZm9ybSAuZmllbGQgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLmZvcm0gLmZpZWxkIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi51aS5sYXJnZS5mb3JtIC5maWVsZCAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4udWkuYmlnLmZvcm0gLmZpZWxkIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi51aS5odWdlLmZvcm0gLmZpZWxkIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cbi51aS5tYXNzaXZlLmZvcm0gLmZpZWxkIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cbi8qIERyb3Bkb3duIEl0ZW1zICovXG4udWkubWluaS5mb3JtIC5maWVsZCAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LmZvcm0gLmZpZWxkIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuLnVpLnNtYWxsLmZvcm0gLmZpZWxkIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLmZvcm0gLmZpZWxkIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLmZvcm0gLmZpZWxkIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuLnVpLmJpZy5mb3JtIC5maWVsZCAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi51aS5odWdlLmZvcm0gLmZpZWxkIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLnVpLm1hc3NpdmUuZm9ybSAuZmllbGQgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gR3JpZFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgR3JpZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEluaGVyaXRlZCBGcm9tIFNpdGUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBHcmlkXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgUmVsYXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRGl2aWRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDZWxsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU3RhY2thYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbXBhY3Rcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFZlcnkgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTGVnYWN5XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogTGVnYWN5IChETyBOT1QgVVNFKVxuICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBHcmlkXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogSW5oZXJpdGVkIEZyb20gU2l0ZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEdyaWRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSZWxheGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXZpZGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIENlbGxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgVmVyeSBDb21wYWN0XG4tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBMZWdhY3lcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBMZWdhY3kgKERPIE5PVCBVU0UpXG4gKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGFuZGFyZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgcGFkZGluZzogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUmVtb3ZlIEd1dHRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5ncmlkIHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIG1hcmdpbi1ib3R0b206IC0xcmVtO1xuICBtYXJnaW4tbGVmdDogLTFyZW07XG4gIG1hcmdpbi1yaWdodDogLTFyZW07XG59XG4udWkucmVsYXhlZC5ncmlkIHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTEuNXJlbTtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uZ3JpZCB7XG4gIG1hcmdpbi1sZWZ0OiAtMi41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0yLjVyZW07XG59XG4vKiBQcmVzZXJ2ZSBSb3dzIFNwYWNpbmcgb24gQ29uc2VjdXRpdmUgR3JpZHMgKi9cbi51aS5ncmlkICsgLmdyaWQge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sdW1uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU3RhbmRhcmQgMTYgY29sdW1uICovXG4udWkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNi4yNSU7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi51aS5ncmlkID4gKiB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBSb3dzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZ3JpZCA+IC5yb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBpbmhlcml0O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sdW1uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVmVydGljYWwgcGFkZGluZyB3aGVuIG5vIHJvd3MgKi9cbi51aS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG4udWkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmdyaWQgPiAucm93ID4gaW1nLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbiA+IGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIExvb3NlIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBDb2xsYXBzZSBNYXJnaW4gb24gQ29uc2VjdXRpdmUgR3JpZCAqL1xuLnVpLmdyaWQgPiAudWkuZ3JpZDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkuZ3JpZCA+IC51aS5ncmlkOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyogU2VnbWVudCBpbnNpZGUgQWxpZ25lZCBHcmlkICovXG4udWkuZ3JpZCAuYWxpZ25lZC5yb3cgPiAuY29sdW1uID4gLnNlZ21lbnQ6bm90KC5jb21wYWN0KTpub3QoLmF0dGFjaGVkKSxcbi51aS5hbGlnbmVkLmdyaWQgLmNvbHVtbiA+IC5zZWdtZW50Om5vdCguY29tcGFjdCk6bm90KC5hdHRhY2hlZCkge1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIEFsaWduIERpdmlkZXJzIHdpdGggR3V0dGVyICovXG4udWkuZ3JpZCAucm93ICsgLnVpLmRpdmlkZXIge1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbjogMXJlbSAxcmVtO1xufVxuLnVpLmdyaWQgLmNvbHVtbiArIC51aS52ZXJ0aWNhbC5kaXZpZGVyIHtcbiAgaGVpZ2h0OiBjYWxjKDUwJSAtIDFyZW0pO1xufVxuLyogUmVtb3ZlIEJvcmRlciBvbiBMYXN0IEhvcml6b250YWwgU2VnbWVudCAqL1xuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkID4gLmhvcml6b250YWwuc2VnbWVudCxcbi51aS5ncmlkID4gLmNvbHVtbjpsYXN0LWNoaWxkID4gLmhvcml6b250YWwuc2VnbWVudCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFBhZ2UgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLnVpLnBhZ2UuZ3JpZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMyU7XG4gICAgcGFkZGluZy1yaWdodDogMyU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1heC13aWR0aDogMTkxOS45OHB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNSU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMyU7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBDb2x1bW4gQ291bnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEFzc3VtZSBmdWxsIHdpZHRoIHdpdGggb25lIGNvbHVtbiAqL1xuLnVpLmdyaWQgPiAuY29sdW1uOm9ubHktY2hpbGQsXG4udWkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOm9ubHktY2hpbGQge1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIEdyaWQgQmFzZWQgKi9cbi51aVtjbGFzcyo9XCJvbmUgY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJvbmUgY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDUwJTtcbn1cbi51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlO1xufVxuLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogMjUlO1xufVxuLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogMjAlO1xufVxuLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbn1cbi51aVtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogMTQuMjg1NzE0MjklO1xufVxuLnVpW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiAxMi41JTtcbn1cbi51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDExLjExMTExMTExJTtcbn1cbi51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiAxMCU7XG59XG4udWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogOS4wOTA5MDkwOSU7XG59XG4udWlbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogOC4zMzMzMzMzMyU7XG59XG4udWlbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDcuNjkyMzA3NjklO1xufVxuLnVpW2NsYXNzKj1cImZvdXJ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiA3LjE0Mjg1NzE0JTtcbn1cbi51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDYuNjY2NjY2NjclO1xufVxuLnVpW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogNi4yNSU7XG59XG4vKiBSb3cgQmFzZWQgT3ZlcnJpZGVzICovXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NyUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI5JSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTEuMTExMTExMTElICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTAlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogOS4wOTA5MDkwOSUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzJSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogNy42OTIzMDc2OSUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDcuMTQyODU3MTQlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDYuNjY2NjY2NjclICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG59XG4vKiBDZWxsZWQgUGFnZSAqL1xuLnVpLmNlbGxlZC5wYWdlLmdyaWQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ29sdW1uIFdpZHRoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTaXppbmcgQ29tYmluYXRpb25zICovXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogMTguNzUlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDMxLjI1JSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDQzLjc1JSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogNTYuMjUlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDY4Ljc1JSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA4MS4yNSUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogOTMuNzUlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBXaWR0aCBwZXIgRGV2aWNlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNb2JpbGUgU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDE4Ljc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMxLjI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMzcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNDMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDU2LjI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDY4Ljc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDgxLjI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDkzLjc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogVGFibGV0IFNpemluZyBDb21iaW5hdGlvbnMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDQzLjc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4MS4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIENvbXB1dGVyL0Rlc2t0b3AgU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMzEuMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNDMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjguNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDgxLjI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDg3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogTGFyZ2UgTW9uaXRvciBTaXppbmcgQ29tYmluYXRpb25zICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtYXgtd2lkdGg6IDE5MTkuOThweCkge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDQzLjc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4MS4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIFdpZGVzY3JlZW4gU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTguNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNDMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDgxLjI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogOTMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIENlbnRlcmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2VudGVyZWQuZ3JpZCxcbi51aS5jZW50ZXJlZC5ncmlkID4gLnJvdyxcbi51aS5ncmlkID4gLmNlbnRlcmVkLnJvdyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4udWkuY2VudGVyZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5hbGlnbmVkKTpub3QoLmp1c3RpZmllZCk6bm90KC5yb3cpLFxuLnVpLmNlbnRlcmVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpub3QoLmFsaWduZWQpOm5vdCguanVzdGlmaWVkKSxcbi51aS5ncmlkIC5jZW50ZXJlZC5yb3cgPiAuY29sdW1uOm5vdCguYWxpZ25lZCk6bm90KC5qdXN0aWZpZWQpIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi51aS5ncmlkID4gLmNlbnRlcmVkLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5jZW50ZXJlZC5jb2x1bW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBSZWxheGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkucmVsYXhlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkucmVsYXhlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yZWxheGVkLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5yb3cgPiAuY29sdW1uIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbn1cbi8qIENvdXBsaW5nIHdpdGggVUkgRGl2aWRlciAqL1xuLnVpLnJlbGF4ZWQuZ3JpZCAucm93ICsgLnVpLmRpdmlkZXIsXG4udWkuZ3JpZCAucmVsYXhlZC5yb3cgKyAudWkuZGl2aWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMS41cmVtO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5ncmlkIC5yb3cgKyAudWkuZGl2aWRlcixcbi51aS5ncmlkIFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ucm93ICsgLnVpLmRpdmlkZXIge1xuICBtYXJnaW4tbGVmdDogMi41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWRkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wYWRkZWQuZ3JpZDpub3QoLnZlcnRpY2FsbHkpOm5vdCguaG9yaXpvbnRhbGx5KSB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuW2NsYXNzKj1cImhvcml6b250YWxseSBwYWRkZWRcIl0udWkuZ3JpZCB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuW2NsYXNzKj1cInZlcnRpY2FsbHkgcGFkZGVkXCJdLnVpLmdyaWQge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFwiRmxvYXRlZFwiXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZ3JpZCBbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmNvbHVtbiB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi51aS5ncmlkIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLmNvbHVtbiB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uIHtcbiAgYm94LXNoYWRvdzogLTFweCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLyogU3dhcCBmcm9tIHBhZGRpbmcgdG8gbWFyZ2luIG9uIGNvbHVtbnMgdG8gaGF2ZSBkaXZpZGVycyBhbGlnbiAqL1xuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3cge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyogTm8gZGl2aWRlciBvbiBmaXJzdCBjb2x1bW4gb24gcm93ICovXG4udWkuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4udWkuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIE5vIHNwYWNlIG9uIHRvcCBvZiBmaXJzdCByb3cgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQgPiAuY29sdW1uIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi8qIERpdmlkZWQgUm93ICovXG4udWkuZ3JpZCA+IC5kaXZpZGVkLnJvdyA+IC5jb2x1bW4ge1xuICBib3gtc2hhZG93OiAtMXB4IDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkuZ3JpZCA+IC5kaXZpZGVkLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyogVmVydGljYWxseSBEaXZpZGVkICovXG4udWlbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAwIDFyZW07XG4gIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi8qIFBhZGRlZCBIb3Jpem9udGFsbHkgRGl2aWRlZCAqL1xuW2NsYXNzKj1cImhvcml6b250YWxseSBwYWRkZWRcIl0udWkuZGl2aWRlZC5ncmlkLFxuLnVpLnBhZGRlZC5kaXZpZGVkLmdyaWQ6bm90KC52ZXJ0aWNhbGx5KTpub3QoLmhvcml6b250YWxseSkge1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIEZpcnN0IFJvdyBWZXJ0aWNhbGx5IERpdmlkZWQgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIEludmVydGVkIERpdmlkZWQgKi9cbi51aS5pbnZlcnRlZC5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuaW52ZXJ0ZWQuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uIHtcbiAgYm94LXNoYWRvdzogLTFweCAwIDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4udWkuaW52ZXJ0ZWQuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46bm90KC5yb3cpOmZpcnN0LWNoaWxkLFxuLnVpLmludmVydGVkLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkuaW52ZXJ0ZWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93OmJlZm9yZSB7XG4gIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLyogUmVsYXhlZCAqL1xuLnVpLnJlbGF4ZWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93OmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG59XG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogMi41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDVyZW0pO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBDZWxsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jZWxsZWQuZ3JpZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDFlbSAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0Q0RDRENTtcbn1cbi51aS5jZWxsZWQuZ3JpZCA+IC5yb3cge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgI0Q0RDRENTtcbn1cbi51aS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBib3gtc2hhZG93OiAtMXB4IDAgMCAwICNENEQ0RDU7XG59XG4udWkuY2VsbGVkLmdyaWQgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmc6IDFlbTtcbn1cbi51aS5yZWxheGVkLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkucmVsYXhlZC5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgcGFkZGluZzogMS41ZW07XG59XG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiAyZW07XG59XG4vKiBJbnRlcm5hbGx5IENlbGxlZCAqL1xuLnVpW2NsYXNzKj1cImludGVybmFsbHkgY2VsbGVkXCJdLmdyaWQge1xuICBib3gtc2hhZG93OiBub25lO1xuICBtYXJnaW46IDA7XG59XG4udWlbY2xhc3MqPVwiaW50ZXJuYWxseSBjZWxsZWRcIl0uZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpW2NsYXNzKj1cImludGVybmFsbHkgY2VsbGVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFZlcnRpY2FsbHkgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVG9wIEFsaWduZWQgKi9cbi51aVtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuLyogTWlkZGxlIEFsaWduZWQgKi9cbi51aVtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG4vKiBCb3R0b20gQWxpZ25lZCAqL1xuLnVpW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aVtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXS5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0uY29sdW1uOm5vdCgucm93KSxcbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXS5jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuLyogU3RyZXRjaGVkICovXG4udWkuc3RyZXRjaGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5zdHJldGNoZWQuZ3JpZCA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5zdHJldGNoZWQucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gLnN0cmV0Y2hlZC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmdyaWQgPiAucm93ID4gLnN0cmV0Y2hlZC5jb2x1bW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4gPiAqLFxuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLmNvbHVtbiA+ICosXG4udWkuZ3JpZCA+IC5zdHJldGNoZWQucm93ID4gLmNvbHVtbiA+ICosXG4udWkuZ3JpZCA+IC5zdHJldGNoZWQuY29sdW1uOm5vdCgucm93KSA+ICosXG4udWkuZ3JpZCA+IC5yb3cgPiAuc3RyZXRjaGVkLmNvbHVtbiA+ICoge1xuICBmbGV4LWdyb3c6IDE7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSG9yaXpvbnRhbGx5IENlbnRlcmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMZWZ0IEFsaWduZWQgKi9cbi51aVtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmNvbHVtbi5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmNvbHVtbi5jb2x1bW4ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBhbGlnbi1zZWxmOiBpbmhlcml0O1xufVxuLyogQ2VudGVyIEFsaWduZWQgKi9cbi51aVtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5ncmlkID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0uY29sdW1uLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5jb2x1bW4uY29sdW1uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBpbmhlcml0O1xufVxuLnVpW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLmdyaWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi8qIFJpZ2h0IEFsaWduZWQgKi9cbi51aVtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLmdyaWQgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5jb2x1bW4uY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uY29sdW1uLmNvbHVtbiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBhbGlnbi1zZWxmOiBpbmhlcml0O1xufVxuLyogSnVzdGlmaWVkICovXG4udWkuanVzdGlmaWVkLmdyaWQgPiAuY29sdW1uLFxuLnVpLmp1c3RpZmllZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5qdXN0aWZpZWQucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gLmp1c3RpZmllZC5jb2x1bW4uY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmp1c3RpZmllZC5jb2x1bW4uY29sdW1uIHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgaHlwaGVuczogYXV0bztcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgQ29sb3JlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmdyaWQgPiAucHJpbWFyeS5yb3csXG4udWkuZ3JpZCA+IC5wcmltYXJ5LmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5wcmltYXJ5LmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg1RDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAuc2Vjb25kYXJ5LnJvdyxcbi51aS5ncmlkID4gLnNlY29uZGFyeS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAuc2Vjb25kYXJ5LmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAucmVkLnJvdyxcbi51aS5ncmlkID4gLnJlZC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAucmVkLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAub3JhbmdlLnJvdyxcbi51aS5ncmlkID4gLm9yYW5nZS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAub3JhbmdlLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjcxMUM7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAueWVsbG93LnJvdyxcbi51aS5ncmlkID4gLnllbGxvdy5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAueWVsbG93LmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkJEMDg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAub2xpdmUucm93LFxuLnVpLmdyaWQgPiAub2xpdmUuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLm9saXZlLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNUNDMTg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAuZ3JlZW4ucm93LFxuLnVpLmdyaWQgPiAuZ3JlZW4uY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmdyZWVuLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAudGVhbC5yb3csXG4udWkuZ3JpZCA+IC50ZWFsLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC50ZWFsLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMEI1QUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAuYmx1ZS5yb3csXG4udWkuZ3JpZCA+IC5ibHVlLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5ibHVlLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg1RDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAudmlvbGV0LnJvdyxcbi51aS5ncmlkID4gLnZpb2xldC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAudmlvbGV0LmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDM1Qzk7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAucHVycGxlLnJvdyxcbi51aS5ncmlkID4gLnB1cnBsZS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAucHVycGxlLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMzMzQzg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAucGluay5yb3csXG4udWkuZ3JpZCA+IC5waW5rLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5waW5rLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTc7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAuYnJvd24ucm93LFxuLnVpLmdyaWQgPiAuYnJvd24uY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmJyb3duLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0Y7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAuZ3JleS5yb3csXG4udWkuZ3JpZCA+IC5ncmV5LmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5ncmV5LmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmdyaWQgPiAuYmxhY2sucm93LFxuLnVpLmdyaWQgPiAuYmxhY2suY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmJsYWNrLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFcXVhbCBXaWR0aFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aVtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5yb3cgPiAuY29sdW1uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbGV4LWdyb3c6IDE7XG59XG4udWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZ3JpZCA+IC53aWRlLmNvbHVtbixcbi51aVtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5ncmlkID4gLnJvdyA+IC53aWRlLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLnJvdyA+IC53aWRlLmNvbHVtbiB7XG4gIGZsZXgtZ3JvdzogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBSZXZlcnNlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNb2JpbGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXS5ncmlkLFxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmdyaWQgPiAucm93LFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJtb2JpbGUgcmV2ZXJzZWRcIl0ucm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdLmdyaWQsXG4gIC51aS5zdGFja2FibGVbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIH1cbiAgLyogRGl2aWRlZCBSZXZlcnNlZCAqL1xuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogLTFweCAwIDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICB9XG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46bGFzdC1jaGlsZCxcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAvKiBWZXJ0aWNhbGx5IERpdmlkZWQgUmV2ZXJzZWQgKi9cbiAgLnVpLmdyaWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdW2NsYXNzKj1cIm1vYmlsZSB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdID4gLnJvdzpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgfVxuICAudWkuZ3JpZFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl1bY2xhc3MqPVwibW9iaWxlIHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0gPiAucm93Omxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC8qIENlbGxlZCBSZXZlcnNlZCAqL1xuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IC0xcHggMCAwIDAgI0Q0RDRENTtcbiAgfVxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuLyogVGFibGV0ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnVpW2NsYXNzKj1cInRhYmxldCByZXZlcnNlZFwiXS5ncmlkLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHJldmVyc2VkXCJdLmdyaWQgPiAucm93LFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0ucm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRhYmxldCB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdLmdyaWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxuICAvKiBEaXZpZGVkIFJldmVyc2VkICovXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiAtMXB4IDAgMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRhYmxldCByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpsYXN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC8qIFZlcnRpY2FsbHkgRGl2aWRlZCBSZXZlcnNlZCAqL1xuICAudWkuZ3JpZFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl1bY2xhc3MqPVwidGFibGV0IHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0gPiAucm93OmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgYm94LXNoYWRvdzogMCAtMXB4IDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICB9XG4gIC51aS5ncmlkW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXVtjbGFzcyo9XCJ0YWJsZXQgdmVydGljYWxseSByZXZlcnNlZFwiXSA+IC5yb3c6bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLyogQ2VsbGVkIFJldmVyc2VkICovXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogLTFweCAwIDAgMCAjRDRENEQ1O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG4vKiBDb21wdXRlciAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uZ3JpZCxcbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIHJldmVyc2VkXCJdLmdyaWQgPiAucm93LFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgdmVydGljYWxseSByZXZlcnNlZFwiXS5ncmlkIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIH1cbiAgLyogRGl2aWRlZCBSZXZlcnNlZCAqL1xuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IC0xcHggMCAwIDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgfVxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46bGFzdC1jaGlsZCxcbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC8qIFZlcnRpY2FsbHkgRGl2aWRlZCBSZXZlcnNlZCAqL1xuICAudWkuZ3JpZFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl1bY2xhc3MqPVwiY29tcHV0ZXIgdmVydGljYWxseSByZXZlcnNlZFwiXSA+IC5yb3c6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIH1cbiAgLnVpLmdyaWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdW2NsYXNzKj1cImNvbXB1dGVyIHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0gPiAucm93Omxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC8qIENlbGxlZCBSZXZlcnNlZCAqL1xuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogLTFweCAwIDAgMCAjRDRENEQ1O1xuICB9XG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRG91Ymxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRhYmxldCBPbmx5ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnVpLmRvdWJsaW5nLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC51aS5ncmlkID4gLmRvdWJsaW5nLnJvdyxcbiAgLnVpLmRvdWJsaW5nLmdyaWQgPiAucm93IHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAuZG91Ymxpbmcucm93ID4gLmNvbHVtbixcbiAgLnVpLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2l4IGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJlbGV2ZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMTQuMjg1NzE0MjklICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAxNC4yODU3MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIE1vYmlsZSBPbmx5ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5ncmlkID4gLmRvdWJsaW5nLnJvdyxcbiAgLnVpLmRvdWJsaW5nLmdyaWQgPiAucm93IHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAuZG91Ymxpbmcucm93ID4gLmNvbHVtbixcbiAgLnVpLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwic2l4IGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2l4IGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImZvdXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU3RhY2thYmxlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5zdGFja2FibGUuZ3JpZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAucm93ID4gLndpZGUuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAud2lkZS5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZ3JpZCA+IC5jb2x1bW4uZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZ3JpZCA+IC5jb2x1bW4ucm93ID4gLmNvbHVtbixcbiAgLnVpLnN0YWNrYWJsZS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IC5zdGFja2FibGUuc3RhY2thYmxlLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLnN0YWNrYWJsZS5ncmlkOm5vdCgudmVydGljYWxseSkgPiAucm93IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAvKiBDb3VwbGluZyAqL1xuICAudWkuY29udGFpbmVyID4gLnVpLnN0YWNrYWJsZS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmNvbnRhaW5lciA+IC51aS5zdGFja2FibGUuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyogRG9uJ3QgcGFkIGluc2lkZSBzZWdtZW50IG9yIG5lc3RlZCBncmlkICovXG4gIC51aS5ncmlkIC51aS5zdGFja2FibGUuZ3JpZCxcbiAgLnVpLnNlZ21lbnQ6bm90KC52ZXJ0aWNhbCkgLnVpLnN0YWNrYWJsZS5wYWdlLmdyaWQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAvKiBEaXZpZGVkIFN0YWNrYWJsZSAqL1xuICAudWkuc3RhY2thYmxlLmRpdmlkZWQuZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLnJvdzpmaXJzdC1jaGlsZCA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4gIC51aS5zdGFja2FibGUuZGl2aWRlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyk6Zmlyc3QtY2hpbGQsXG4gIC51aS5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5pbnZlcnRlZC5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmludmVydGVkLnN0YWNrYWJsZS5kaXZpZGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmludmVydGVkLnN0YWNrYWJsZS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWkuaW52ZXJ0ZWQuc3RhY2thYmxlLmRpdmlkZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICB9XG4gIC51aS5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLnN0YWNrYWJsZS5kaXZpZGVkOm5vdCgudmVydGljYWxseSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZGl2aWRlZDpub3QoLnZlcnRpY2FsbHkpLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDtcbiAgfVxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLnJvdyB7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5zdGFja2FibGUuZGl2aWRlZDpub3QoLnZlcnRpY2FsbHkpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLnN0YWNrYWJsZS5kaXZpZGVkOm5vdCgudmVydGljYWxseSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPbmx5IChEZXZpY2UpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGVzZSBpbmNsdWRlIGFyYml0cmFyeSBjbGFzcyByZXBldGl0aW9ucyBmb3IgZm9yY2VkIHNwZWNpZmljaXR5ICovXG4vKiBNb2JpbGUgT25seSBIaWRlICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cIndpZGVzY3JlZW4gb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0ucm93Om5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIndpZGVzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIndpZGVzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIFRhYmxldCBPbmx5IEhpZGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAudWlbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC50YWJsZXQpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0ucm93Om5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLnRhYmxldCksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCgudGFibGV0KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0ucm93Om5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uY29sdW1uOm5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJjb21wdXRlciBvbmx5XCJdLmNvbHVtbjpub3QoLnRhYmxldCkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0ucm93Om5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImxhcmdlIHNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBDb21wdXRlciBPbmx5IEhpZGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0ucm93Om5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0ucm93Om5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImxhcmdlIHNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBMYXJnZSBTY3JlZW4gT25seSBIaWRlICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtYXgtd2lkdGg6IDE5MTkuOThweCkge1xuICAudWlbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5jb21wdXRlciksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5yb3c6bm90KC5jb21wdXRlciksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlciksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0ucm93Om5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBXaWRlc2NyZWVuIE9ubHkgSGlkZSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0ucm93Om5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNvbXBhY3QuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmNvbXBhY3QuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cbi51aS5jb21wYWN0LmdyaWQgPiAqIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cbi8qIFJvdyAqL1xuLnVpLmNvbXBhY3QuZ3JpZCA+IC5yb3cge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuLyogQ29sdW1ucyAqL1xuLnVpLmNvbXBhY3QuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cbi8qIFJlbGF4ZWQgKyBDZWxsZWQgKi9cbi51aS5jb21wYWN0LnJlbGF4ZWQuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5jb21wYWN0LnJlbGF4ZWQuY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmc6IDAuNzVlbTtcbn1cbi51aS5jb21wYWN0W2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmNvbXBhY3RbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiAxZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgVmVyeSBjb21wYWN0XG4tLS0tLS0tLS0tLS0tLS0tLSovXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLmdyaWQgPiAqIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xufVxuLyogUm93ICovXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLmdyaWQgPiAucm93IHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xufVxuLyogQ29sdW1ucyAqL1xuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG59XG4vKiBSZWxheGVkICsgQ2VsbGVkICovXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLnJlbGF4ZWQuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0ucmVsYXhlZC5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgcGFkZGluZzogMC4zNzVlbTtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl1bY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgcGFkZGluZzogMC41ZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcbiAqICMgRm9tYW50aWMgLSBNZW51XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTUgQ29udHJpYnV0b3JcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWVudVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQ29sbGVjdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWVudSAqL1xuLyogTWVudSBJdGVtICovXG4vKiBEaXZpZGVyICovXG4vKiBTdWIgTWVudSAqL1xuLyogVGV4dCBJdGVtICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBJY29uICovXG4vKiBEcm9wZG93biBJY29uICovXG4vKiBIZWFkZXIgKi9cbi8qIFZlcnRpY2FsIEljb24gKi9cbi8qIFZlcnRpY2FsIEhlYWRlciAqL1xuLyogUG9pbnRpbmcgQXJyb3cgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb3VwbGluZ3Ncbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBCdXR0b24gKi9cbi8qIElucHV0ICovXG4vKiBJbWFnZSAqL1xuLyogTGFiZWwgKi9cbi8qIGhhcyB0byBiZSBlcXVhbCB0byBAY2lyY3VsYXJQYWRkaW5nIGZyb20gbGFiZWwubGVzcyAqL1xuLyogSW1hZ2UgTGFiZWwgKi9cbi8qIENhbGN1bGF0ZXMgYXM6IEB2ZXJ0aWNhbExhYmVsIChmcm9tIGxhYmVsLmxlc3MpIC0gQGxhYmVsVmVydGljYWxQYWRkaW5nIChmcm9tIGhlcmUpICovXG4vKiBMb2dpYyBhZG9wdGVkIGZyb20gbGFiZWwubGVzcyAqL1xuLyogRHJvcGRvd24gaW4gTWVudSAqL1xuLyogRHJvcGRvd24gVmFyaWF0aW9ucyAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBIb3ZlcmVkIEl0ZW0gKi9cbi8qIFByZXNzZWQgSXRlbSAqL1xuLyogQWN0aXZlIEl0ZW0gKi9cbi8qIEFjdGl2ZSBIb3ZlcmVkIEl0ZW0gKi9cbi8qIFNlbGVjdGVkIERyb3Bkb3duICovXG4vKiBBY3RpdmUgRHJvcGRvd24gKi9cbi8qIEFjdGl2ZSBTdWIgTWVudSAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFZlcnRpY2FsICovXG4vKiBTZWNvbmRhcnkgKi9cbi8qIFBvaW50aW5nICovXG4vKiBJbnZlcnRlZCBTZWNvbmRhcnkgKi9cbi8qIEludmVydGVkIFBvaW50aW5nICovXG4vKiBUaWVyZWQgKi9cbi8qIEljb24gKi9cbi8qIFRhYnVsYXIgKi9cbi8qIFBhZ2luYXRpb24gKi9cbi8qIExhYmVsZWQgSWNvbiAqL1xuLyogVGV4dCAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBJbnZlcnRlZCBTdWIgTWVudSAqL1xuLyogSW52ZXJ0ZWQgSG92ZXIgKi9cbi8qIFByZXNzZWQgKi9cbi8qIEludmVydGVkIEFjdGl2ZSAqL1xuLyogSW52ZXJ0ZWQgQWN0aXZlIEhvdmVyICAqL1xuLyogSW52ZXJ0ZWQgTWVudSBEaXZpZGVyICovXG4vKiBJbnZlcnRlZCBDb2xvcmVkICovXG4vKiBGaXhlZCAqL1xuLyogRmxvYXRlZCAqL1xuLyogQXR0YWNoZWQgKi9cbi8qIFJlc2l6ZSBsYXJnZSBzaXplcyAqL1xuLyogU2l6ZXMgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBJbnZlcnRlZCBkcm9wZG93bnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1lbnVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIENvbGxlY3Rpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1lbnUgKi9cbi8qIE1lbnUgSXRlbSAqL1xuLyogRGl2aWRlciAqL1xuLyogU3ViIE1lbnUgKi9cbi8qIFRleHQgSXRlbSAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSWNvbiAqL1xuLyogRHJvcGRvd24gSWNvbiAqL1xuLyogSGVhZGVyICovXG4vKiBWZXJ0aWNhbCBJY29uICovXG4vKiBWZXJ0aWNhbCBIZWFkZXIgKi9cbi8qIFBvaW50aW5nIEFycm93ICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ291cGxpbmdzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogQnV0dG9uICovXG4vKiBJbnB1dCAqL1xuLyogSW1hZ2UgKi9cbi8qIExhYmVsICovXG4vKiBoYXMgdG8gYmUgZXF1YWwgdG8gQGNpcmN1bGFyUGFkZGluZyBmcm9tIGxhYmVsLmxlc3MgKi9cbi8qIEltYWdlIExhYmVsICovXG4vKiBDYWxjdWxhdGVzIGFzOiBAdmVydGljYWxMYWJlbCAoZnJvbSBsYWJlbC5sZXNzKSAtIEBsYWJlbFZlcnRpY2FsUGFkZGluZyAoZnJvbSBoZXJlKSAqL1xuLyogTG9naWMgYWRvcHRlZCBmcm9tIGxhYmVsLmxlc3MgKi9cbi8qIERyb3Bkb3duIGluIE1lbnUgKi9cbi8qIERyb3Bkb3duIFZhcmlhdGlvbnMgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSG92ZXJlZCBJdGVtICovXG4vKiBQcmVzc2VkIEl0ZW0gKi9cbi8qIEFjdGl2ZSBJdGVtICovXG4vKiBBY3RpdmUgSG92ZXJlZCBJdGVtICovXG4vKiBTZWxlY3RlZCBEcm9wZG93biAqL1xuLyogQWN0aXZlIERyb3Bkb3duICovXG4vKiBBY3RpdmUgU3ViIE1lbnUgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBWZXJ0aWNhbCAqL1xuLyogU2Vjb25kYXJ5ICovXG4vKiBQb2ludGluZyAqL1xuLyogSW52ZXJ0ZWQgU2Vjb25kYXJ5ICovXG4vKiBJbnZlcnRlZCBQb2ludGluZyAqL1xuLyogVGllcmVkICovXG4vKiBJY29uICovXG4vKiBUYWJ1bGFyICovXG4vKiBQYWdpbmF0aW9uICovXG4vKiBMYWJlbGVkIEljb24gKi9cbi8qIFRleHQgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogSW52ZXJ0ZWQgU3ViIE1lbnUgKi9cbi8qIEludmVydGVkIEhvdmVyICovXG4vKiBQcmVzc2VkICovXG4vKiBJbnZlcnRlZCBBY3RpdmUgKi9cbi8qIEludmVydGVkIEFjdGl2ZSBIb3ZlciAgKi9cbi8qIEludmVydGVkIE1lbnUgRGl2aWRlciAqL1xuLyogSW52ZXJ0ZWQgQ29sb3JlZCAqL1xuLyogRml4ZWQgKi9cbi8qIEZsb2F0ZWQgKi9cbi8qIEF0dGFjaGVkICovXG4vKiBSZXNpemUgbGFyZ2Ugc2l6ZXMgKi9cbi8qIFNpemVzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSW52ZXJ0ZWQgZHJvcGRvd25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBNZW51XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDFyZW0gMDtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgbWluLWhlaWdodDogMi44NTcxNDI4NmVtO1xufVxuLnVpLm1lbnU6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi51aS5tZW51OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5tZW51Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN1Yi1NZW51XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1lbnUgLm1lbnUge1xuICBtYXJnaW46IDA7XG59XG4udWkubWVudTpub3QoLnZlcnRpY2FsKSA+IC5tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEl0ZW1cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udWkubWVudSAuaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZmxleDogMCAwIGF1dG87XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwLjkyODU3MTQzZW0gMS4xNDI4NTcxNGVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcyBlYXNlLCBib3gtc2hhZG93IDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlO1xufVxuLnVpLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMCAwIDAuMjg1NzE0MjlyZW07XG59XG4vKiBCb3JkZXIgKi9cbi51aS5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICBUZXh0IENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudSAudGV4dC5pdGVtID4gKixcbi51aS5tZW51IC5pdGVtID4gYTpub3QoLnVpKSxcbi51aS5tZW51IC5pdGVtID4gcDpvbmx5LWNoaWxkIHtcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4udWkubWVudSAuaXRlbSA+IHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLm1lbnUgLml0ZW0gPiBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudSAuaXRlbSA+IGkuaWNvbiB7XG4gIG9wYWNpdHk6IDAuOTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMCAwLjM1NzE0Mjg2ZW0gMCAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbSA+IC5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbWFyZ2luOiAtMC41ZW0gMDtcbiAgcGFkZGluZy1ib3R0b206IDAuNzg1NzE0MjllbTtcbiAgcGFkZGluZy10b3A6IDAuNzg1NzE0MjllbTtcbiAgZm9udC1zaXplOiAxZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS1cbiBHcmlkIC8gQ29udGFpbmVyXG4tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudSA+IC5ncmlkLFxuLnVpLm1lbnUgPiAuY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGluaGVyaXQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBpbmhlcml0O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbnB1dHNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudSAuaXRlbSA+IC5pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLml0ZW0gPiAuaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbWFyZ2luOiAtMC41ZW0gMDtcbn1cbi51aS5tZW51IC5pdGVtID4gLmlucHV0IGlucHV0IHtcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmctdG9wOiAwLjU3MTQyODU3ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjU3MTQyODU3ZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5tZW51IC5oZWFkZXIuaXRlbSxcbi51aS52ZXJ0aWNhbC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogJyc7XG4gIHRleHQtdHJhbnNmb3JtOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgbWFyZ2luOiAwIDAgMC41ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBEcm9wZG93bnNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBEcm9wZG93biBJY29uICovXG4udWkubWVudSAuaXRlbSA+IGkuZHJvcGRvd24uaWNvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMCAxZW07XG59XG4vKiBNZW51ICovXG4udWkubWVudSAuZHJvcGRvd24uaXRlbSAubWVudSB7XG4gIG1pbi13aWR0aDogY2FsYygxMDAlIC0gMXB4KTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgbWFyZ2luOiAwIDAgMDtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xufVxuLyogTWVudSBJdGVtcyAqL1xuLnVpLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMWVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjllbSAxLjE0Mjg1NzE0ZW0gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NykgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cbi51aS5tZW51IC51aS5kcm9wZG93biAubWVudSA+IC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KSAhaW1wb3J0YW50O1xufVxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51ID4gLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpICFpbXBvcnRhbnQ7XG59XG4udWkubWVudSAudWkuZHJvcGRvd24gLm1lbnUgPiAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDMpICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpICFpbXBvcnRhbnQ7XG59XG4udWkubWVudSAudWkuZHJvcGRvd24uaXRlbSAubWVudSAuaXRlbTpub3QoLmZpbHRlcmVkKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gLmljb246bm90KC5kcm9wZG93bikge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMWVtICFpbXBvcnRhbnQ7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDAgMC43NWVtIDAgMCAhaW1wb3J0YW50O1xufVxuLyogU2Vjb25kYXJ5ICovXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLmRyb3Bkb3duLml0ZW0gPiAubWVudSxcbi51aS50ZXh0Lm1lbnUgLmRyb3Bkb3duLml0ZW0gPiAubWVudSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIG1hcmdpbi10b3A6IDAuMzU3MTQyODZlbTtcbn1cbi8qIFBvaW50aW5nICovXG4udWkubWVudSAucG9pbnRpbmcuZHJvcGRvd24uaXRlbSAubWVudSB7XG4gIG1hcmdpbi10b3A6IDAuNzVlbTtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubWVudSAuc2VhcmNoLmRyb3Bkb3duLml0ZW0gPiAuc2VhcmNoLFxuLnVpLmludmVydGVkLm1lbnUgLnNlYXJjaC5kcm9wZG93bi5pdGVtID4gLnRleHQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLyogVmVydGljYWwgKi9cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtID4gLmljb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIGNvbnRlbnQ6IFwiXFxmMGRhXCI7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG4udWkudmVydGljYWwubWVudSAuZHJvcGRvd24uaXRlbSAubWVudSB7XG4gIGxlZnQ6IDEwMCU7XG4gIC8qIElFIG5lZWRzIDAsIGFsbCBvdGhlcnMgc3VwcG9ydCBtYXgtY29udGVudCB0byBzaG93IGRyb3Bkb3duIGljb24gaW5saW5lLCBzbyBrZWVwIGJvdGggc2V0dGluZ3MhICovXG4gIG1pbi13aWR0aDogMDtcbiAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgbWFyZ2luOiAwIDAgMCAwO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLml0ZW0udXB3YXJkIC5tZW51IHtcbiAgYm90dG9tOiAwO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLml0ZW06bm90KC51cHdhcmQpIC5tZW51IHtcbiAgdG9wOiAwO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmFjdGl2ZS5kcm9wZG93bi5pdGVtIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLmFjdGl2ZS5pdGVtIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIEV2ZW5seSBEaXZpZGVkICovXG4udWkuaXRlbS5tZW51IC5kcm9wZG93biAubWVudSAuaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBMYWJlbHNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudSAuaXRlbSA+IC5sYWJlbDpub3QoLmZsb2F0aW5nKSB7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG4gIHBhZGRpbmc6IDAuM2VtIDAuNzg1NzE0MjllbTtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtID4gLmxhYmVsIHtcbiAgbWFyZ2luLXRvcDogLTAuMTVlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMTVlbTtcbiAgcGFkZGluZzogMC4zZW0gMC43ODU3MTQyOWVtO1xufVxuLnVpLm1lbnUgLml0ZW0gPiAuZmxvYXRpbmcubGFiZWwge1xuICBwYWRkaW5nOiAwLjNlbSAwLjc4NTcxNDI5ZW07XG59XG4udWkubWVudSAuaXRlbSA+IC5sYWJlbCB7XG4gIGJhY2tncm91bmQ6ICM5OTk5OTk7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLm1lbnUgLml0ZW0gPiAuaW1hZ2UubGFiZWwgaW1nIHtcbiAgbWFyZ2luOiAtMC4yODMzZW0gMC44ZW0gLTAuMjgzM2VtIC0wLjhlbTtcbiAgaGVpZ2h0OiAxLjU2NjZlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW1hZ2VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1lbnUgLml0ZW0gPiBpbWc6bm90KC51aSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogLTAuM2VtIDA7XG4gIHdpZHRoOiAyLjVlbTtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtID4gaW1nOm5vdCgudWkpOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogYXV0bztcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIExpc3Rcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBNZW51IGRpdmlkZXIgc2hvdWxkbnQgYXBwbHkgKi9cbi51aS5tZW51IC5saXN0IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2lkZWJhclxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNob3cgdmVydGljYWwgZGl2aWRlcnMgYmVsb3cgbGFzdCAqL1xuLnVpLnZlcnRpY2FsLnNpZGViYXIubWVudSA+IC5pdGVtOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4udWkudmVydGljYWwuc2lkZWJhci5tZW51ID4gLml0ZW06OmJlZm9yZSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbnRhaW5lclxuLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpLm1lbnUgPiAudWkuY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVpLm1lbnU6bm90KC5zZWNvbmRhcnkpOm5vdCgudGV4dCk6bm90KC50YWJ1bGFyKTpub3QoLmJvcmRlcmxlc3MpID4gLmNvbnRhaW5lciA+IC5pdGVtOm5vdCgucmlnaHQpOm5vdCguYm9yZGVybGVzcyk6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xuICB9XG4gIC51aS5tZW51Om5vdCguc2Vjb25kYXJ5KTpub3QoLnRleHQpOm5vdCgudGFidWxhcik6bm90KC5ib3JkZXJsZXNzKSA+IC5jb250YWluZXIgPiAucmlnaHQuaXRlbTpub3QoLmJvcmRlcmxlc3MpOmxhc3QtY2hpbGQsXG4gIC51aS5tZW51Om5vdCguc2Vjb25kYXJ5KTpub3QoLnRleHQpOm5vdCgudGFidWxhcik6bm90KC5ib3JkZXJsZXNzKSA+IC5jb250YWluZXIgPiAucmlnaHQubWVudSA+IC5pdGVtOm5vdCguYm9yZGVybGVzcyk6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmxpbmsubWVudSAuaXRlbTpob3Zlcixcbi51aS5tZW51IC5kcm9wZG93bi5pdGVtOmhvdmVyLFxuLnVpLm1lbnUgLmxpbmsuaXRlbTpob3Zlcixcbi51aS5tZW51IGEuaXRlbTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFByZXNzZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubGluay5tZW51IC5pdGVtOmFjdGl2ZSxcbi51aS5tZW51IC5saW5rLml0ZW06YWN0aXZlLFxuLnVpLm1lbnUgYS5pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS5tZW51IC5hY3RpdmUuaXRlbSA+IGkuaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gIEFjdGl2ZSBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5tZW51IC5hY3RpdmUuaXRlbTpob3Zlcixcbi51aS52ZXJ0aWNhbC5tZW51IC5hY3RpdmUuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS51aS5tZW51IC5pdGVtLmRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoNDAsIDQwLCA0MCwgMC4zKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbkZsb2F0ZWQgTWVudSAvIEl0ZW1cbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTGVmdCBGbG9hdGVkICovXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAubGVmdC5pdGVtLFxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLmxlZnQubWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuLyogUmlnaHQgRmxvYXRlZCAqL1xuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLnJpZ2h0Lml0ZW0sXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAucmlnaHQubWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4udWkubWVudTpub3QoLnZlcnRpY2FsKSA6bm90KC5kcm9wZG93bikgPiAubGVmdC5tZW51LFxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgOm5vdCguZHJvcGRvd24pID4gLnJpZ2h0Lm1lbnUge1xuICBkaXNwbGF5OiBpbmhlcml0O1xufVxuLyogQ2VudGVyICovXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuY2VudGVyLml0ZW0sXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuY2VudGVyLm1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cbi8qIFN3YXBwZWQgQm9yZGVycyAqL1xuLnVpLm1lbnUgLnJpZ2h0Lml0ZW06OmJlZm9yZSxcbi51aS5tZW51IC5yaWdodC5tZW51ID4gLml0ZW06OmJlZm9yZSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLyogUmVtb3ZlIE91dGVyIEJvcmRlcnMgKi9cbi51aS5tZW51IC5jZW50ZXIuaXRlbTpsYXN0LWNoaWxkOjpiZWZvcmUsXG4udWkubWVudSAuY2VudGVyLm1lbnUgPiAuaXRlbTpsYXN0LWNoaWxkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFZlcnRpY2FsXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnZlcnRpY2FsLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi8qLS0tIEl0ZW0gLS0tKi9cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cbi51aS52ZXJ0aWNhbC5tZW51ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi8qLS0tIExhYmVsIC0tLSovXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IC5sYWJlbCB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLyotLS0gSWNvbiAtLS0qL1xuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiBpLmljb24sXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IGkuaWNvbnMge1xuICB3aWR0aDogMS4xOGVtO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMCAwIDAgMC41ZW07XG59XG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IC5sYWJlbCArIGkuaWNvbiB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDAgMC41ZW0gMCAwO1xufVxuLyotLS0gQm9yZGVyIC0tLSovXG4udWkudmVydGljYWwubWVudSAuaXRlbTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW06Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyotLS0gU3ViIE1lbnUgLS0tKi9cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtID4gLm1lbnUge1xuICBtYXJnaW46IDAuNWVtIC0xLjE0Mjg1NzE0ZW0gMDtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IC5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMC41ZW0gMS4zMzMzMzMzM2VtO1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtIC5tZW51IGEuaXRlbTpob3Zlcixcbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtIC5tZW51IC5saW5rLml0ZW06aG92ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IC5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBWZXJ0aWNhbCBBY3RpdmUgKi9cbi51aS52ZXJ0aWNhbC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkudmVydGljYWwubWVudSA+IC5hY3RpdmUuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwIDA7XG59XG4udWkudmVydGljYWwubWVudSA+IC5hY3RpdmUuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi51aS52ZXJ0aWNhbC5tZW51ID4gLmFjdGl2ZS5pdGVtOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmFjdGl2ZS5pdGVtIC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVGFidWxhclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS50YWJ1bGFyLm1lbnUge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNENEQ0RDU7XG59XG4udWkudGFidWxhci5mbHVpZC5tZW51IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDJweCkgIWltcG9ydGFudDtcbn1cbi51aS50YWJ1bGFyLm1lbnUgLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMC45Mjg1NzE0M2VtIDEuNDI4NTcxNDNlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkudGFidWxhci5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBIb3ZlciAqL1xuLnVpLnRhYnVsYXIubWVudSAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuLyogQWN0aXZlICovXG4udWkudGFidWxhci5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgYm9yZGVyLWNvbG9yOiAjRDRENEQ1O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDAgMCAhaW1wb3J0YW50O1xufVxuLyogQ291cGxpbmcgd2l0aCBzZWdtZW50IGZvciBhdHRhY2htZW50ICovXG4udWkudGFidWxhci5tZW51ICsgLmF0dGFjaGVkOm5vdCgudG9wKS5zZWdtZW50LFxuLnVpLnRhYnVsYXIubWVudSArIC5hdHRhY2hlZDpub3QoLnRvcCkuc2VnbWVudCArIC5hdHRhY2hlZDpub3QoLnRvcCkuc2VnbWVudCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRvcC5hdHRhY2hlZC5zZWdtZW50ICsgLnVpLmJvdHRvbS50YWJ1bGFyLm1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAycHgpO1xuICBsZWZ0OiAtMXB4O1xufVxuLyogQm90dG9tIFZlcnRpY2FsIFRhYnVsYXIgKi9cbi51aS5ib3R0b20udGFidWxhci5tZW51IHtcbiAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q0RDRENTtcbn1cbi51aS5ib3R0b20udGFidWxhci5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi51aS5ib3R0b20udGFidWxhci5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG4gIGJvcmRlci1jb2xvcjogI0Q0RDRENTtcbiAgbWFyZ2luOiAtMXB4IDAgMCAwO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG4vKiBWZXJ0aWNhbCBUYWJ1bGFyIChMZWZ0KSAqL1xuLnVpLnZlcnRpY2FsLnRhYnVsYXIubWVudSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0Q0RDRENTtcbn1cbi51aS52ZXJ0aWNhbC50YWJ1bGFyLm1lbnUgLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuLnVpLnZlcnRpY2FsLnRhYnVsYXIubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xuICBib3JkZXItY29sb3I6ICNENEQ0RDU7XG4gIG1hcmdpbjogMCAtMXB4IDAgMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwIDAgMC4yODU3MTQyOXJlbSAhaW1wb3J0YW50O1xufVxuLyogVmVydGljYWwgUmlnaHQgVGFidWxhciAqL1xuLnVpLnZlcnRpY2FsLnJpZ2h0LnRhYnVsYXIubWVudSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNENEQ0RDU7XG59XG4udWkudmVydGljYWwucmlnaHQudGFidWxhci5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cbi51aS52ZXJ0aWNhbC5yaWdodC50YWJ1bGFyLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgYm9yZGVyLWNvbG9yOiAjRDRENEQ1O1xuICBtYXJnaW46IDAgMCAwIC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDAgIWltcG9ydGFudDtcbn1cbi8qIERyb3Bkb3duICovXG4udWkudGFidWxhci5tZW51IC5hY3RpdmUuZHJvcGRvd24uaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICBQYWdpbmF0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnBhZ2luYXRpb24ubWVudSB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4udWkucGFnaW5hdGlvbi5tZW51IC5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwO1xufVxuLnVpLmNvbXBhY3QubWVudSAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMDtcbn1cbi51aS5wYWdpbmF0aW9uLm1lbnUgLml0ZW06bGFzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVpLnBhZ2luYXRpb24ubWVudSAuaXRlbSB7XG4gIG1pbi13aWR0aDogM2VtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udWkucGFnaW5hdGlvbi5tZW51IC5pY29uLml0ZW0gaS5pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi8qIEFjdGl2ZSAqL1xuLnVpLnBhZ2luYXRpb24ubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItdG9wOiBub25lO1xuICBwYWRkaW5nLXRvcDogMC45Mjg1NzE0M2VtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNlY29uZGFyeVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zZWNvbmRhcnkubWVudSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zNTcxNDI4NmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjM1NzE0Mjg2ZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIEl0ZW0gKi9cbi51aS5zZWNvbmRhcnkubWVudSAuaXRlbSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5ZW0gMC45Mjg1NzE0M2VtO1xuICBtYXJnaW46IDAgMC4zNTcxNDI4NmVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG4vKiBObyBEaXZpZGVyICovXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyogSGVhZGVyICovXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLmhlYWRlci5pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xufVxuLyogSW1hZ2UgKi9cbi51aS5zZWNvbmRhcnkubWVudSAuaXRlbSA+IGltZzpub3QoLnVpKSB7XG4gIG1hcmdpbjogMDtcbn1cbi8qIEhvdmVyICovXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLmRyb3Bkb3duLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLmxpbmsuaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkubWVudSBhLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cbi8qIEFjdGl2ZSAqL1xuLnVpLnNlY29uZGFyeS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLyogQWN0aXZlIEhvdmVyICovXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKiBJbnZlcnRlZCAqL1xuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IC5saW5rLml0ZW06bm90KC5kaXNhYmxlZCksXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLm1lbnUgYS5pdGVtOm5vdCguZGlzYWJsZWQpIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSAuZHJvcGRvd24uaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSAubGluay5pdGVtOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IGEuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLyogRml4IGl0ZW0gbWFyZ2lucyAqL1xuLnVpLnNlY29uZGFyeS5pdGVtLm1lbnUge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLnVpLnNlY29uZGFyeS5pdGVtLm1lbnUgLml0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi51aS5zZWNvbmRhcnkuYXR0YWNoZWQubWVudSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4vKiBTdWIgTWVudSAqL1xuLnVpLnZlcnRpY2FsLnNlY29uZGFyeS5tZW51IC5pdGVtOm5vdCguZHJvcGRvd24pID4gLm1lbnUge1xuICBtYXJnaW46IDAgLTAuOTI4NTcxNDNlbTtcbn1cbi51aS52ZXJ0aWNhbC5zZWNvbmRhcnkubWVudSAuaXRlbTpub3QoLmRyb3Bkb3duKSA+IC5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNWVtIDEuMzMzMzMzMzNlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTZWNvbmRhcnkgVmVydGljYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zZWNvbmRhcnkudmVydGljYWwubWVudSA+IC5pdGVtIHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDAgMCAwLjM1NzE0Mjg2ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbn1cbi51aS5zZWNvbmRhcnkudmVydGljYWwubWVudSA+IC5oZWFkZXIuaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4vKiBTdWIgTWVudSAqL1xuLnVpLnZlcnRpY2FsLnNlY29uZGFyeS5tZW51IC5pdGVtID4gLm1lbnUgLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi8qIEludmVydGVkICovXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTZWNvbmRhcnkgUG9pbnRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAwIDAgLTJweDtcbiAgcGFkZGluZzogMC44NTcxNDI4NmVtIDEuMTQyODU3MTRlbTtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG59XG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAuaXRlbSA+IC5sYWJlbDpub3QoLmZsb2F0aW5nKSB7XG4gIG1hcmdpbi10b3A6IC0wLjNlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuM2VtO1xufVxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5pdGVtID4gLmNpcmN1bGFyLmxhYmVsIHtcbiAgbWFyZ2luLXRvcDogLTAuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC41ZW07XG59XG4vKiBJdGVtIFR5cGVzICovXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmhlYWRlci5pdGVtIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSkgIWltcG9ydGFudDtcbn1cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAudGV4dC5pdGVtIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5pdGVtOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qIEhvdmVyICovXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmRyb3Bkb3duLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmxpbmsuaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSBhLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4vKiBQcmVzc2VkICovXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmRyb3Bkb3duLml0ZW06YWN0aXZlLFxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5saW5rLml0ZW06YWN0aXZlLFxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IGEuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLyogQWN0aXZlICovXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKiBBY3RpdmUgSG92ZXIgKi9cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKiBBY3RpdmUgRHJvcGRvd24gKi9cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAuYWN0aXZlLmRyb3Bkb3duLml0ZW0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLyogVmVydGljYWwgUG9pbnRpbmcgKi9cbi51aS5zZWNvbmRhcnkudmVydGljYWwucG9pbnRpbmcubWVudSB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMnB4O1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkuc2Vjb25kYXJ5LnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLml0ZW0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAtMnB4IDAgMDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG59XG4vKiBWZXJ0aWNhbCBBY3RpdmUgKi9cbi51aS5zZWNvbmRhcnkudmVydGljYWwucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cbi8qIEludmVydGVkICovXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAuaXRlbTpub3QoLmRpc2FibGVkKSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUgLmhlYWRlci5pdGVtIHtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cbi8qIEhvdmVyICovXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUgLmxpbmsuaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSBhLml0ZW06aG92ZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi8qIEFjdGl2ZSAqL1xuLnVpLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogI0ZGRkZGRjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFRleHQgTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS50ZXh0Lm1lbnUge1xuICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMWVtIC0wLjVlbTtcbn1cbi51aS50ZXh0Lm1lbnUgLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIG1hcmdpbjogMCAwO1xuICBwYWRkaW5nOiAwLjM1NzE0Mjg2ZW0gMC41ZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xufVxuLyogQm9yZGVyICovXG4udWkudGV4dC5tZW51IC5pdGVtOmJlZm9yZSxcbi51aS50ZXh0Lm1lbnUgLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyogSGVhZGVyICovXG4udWkudGV4dC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLyogSW1hZ2UgKi9cbi51aS50ZXh0Lm1lbnUgLml0ZW0gPiBpbWc6bm90KC51aSkge1xuICBtYXJnaW46IDA7XG59XG4vKi0tLSBmbHVpZCB0ZXh0IC0tLSovXG4udWkudGV4dC5pdGVtLm1lbnUgLml0ZW0ge1xuICBtYXJnaW46IDA7XG59XG4vKi0tLSB2ZXJ0aWNhbCB0ZXh0IC0tLSovXG4udWkudmVydGljYWwudGV4dC5tZW51IHtcbiAgbWFyZ2luOiAxZW0gMDtcbn1cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLnZlcnRpY2FsLnRleHQubWVudTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnUgLml0ZW0ge1xuICBtYXJnaW46IDAuNTcxNDI4NTdlbSAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4udWkudmVydGljYWwudGV4dC5tZW51IC5pdGVtID4gaS5pY29uIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMCAwLjM1NzE0Mjg2ZW0gMCAwO1xufVxuLnVpLnZlcnRpY2FsLnRleHQubWVudSAuaGVhZGVyLml0ZW0ge1xuICBtYXJnaW46IDAuNTcxNDI4NTdlbSAwIDAuNzE0Mjg1NzFlbTtcbn1cbi8qIFZlcnRpY2FsIFN1YiBNZW51ICovXG4udWkudmVydGljYWwudGV4dC5tZW51IC5pdGVtOm5vdCguZHJvcGRvd24pID4gLm1lbnUge1xuICBtYXJnaW46IDA7XG59XG4udWkudmVydGljYWwudGV4dC5tZW51IC5pdGVtOm5vdCguZHJvcGRvd24pID4gLm1lbnUgPiAuaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41ZW0gMDtcbn1cbi8qLS0tIGhvdmVyIC0tLSovXG4udWkudGV4dC5tZW51IC5pdGVtOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKi0tLSBhY3RpdmUgLS0tKi9cbi51aS50ZXh0Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKi0tLSBhY3RpdmUgaG92ZXIgLS0tKi9cbi51aS50ZXh0Lm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKiBEaXNhYmxlIEJhcmlhdGlvbnMgKi9cbi51aS50ZXh0LnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS50ZXh0LmF0dGFjaGVkLm1lbnUge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC50ZXh0Lm1lbnUsXG4udWkuaW52ZXJ0ZWQudGV4dC5tZW51IC5pdGVtLFxuLnVpLmludmVydGVkLnRleHQubWVudSAuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC50ZXh0Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKiBGbHVpZCAqL1xuLnVpLmZsdWlkLnRleHQubWVudSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSWNvbiBPbmx5XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVmVydGljYWwgTWVudSAqL1xuLnVpLnZlcnRpY2FsLmljb24ubWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG59XG4vKiBJdGVtICovXG4udWkuaWNvbi5tZW51IC5pdGVtIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLyogSWNvbiAqL1xuLnVpLmljb24ubWVudSAuaXRlbSA+IC5pY29uOm5vdCguZHJvcGRvd24pIHtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAxO1xufVxuLyogSWNvbiBHeWxwaCAqL1xuLnVpLmljb24ubWVudSAuaWNvbjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuLyogKHgpIEl0ZW0gSWNvbiAqL1xuLnVpLm1lbnUgLmljb24uaXRlbSA+IC5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLyogVmVydGljYWwgSWNvbiAqL1xuLnVpLnZlcnRpY2FsLmljb24ubWVudSAuaXRlbSA+IC5pY29uOm5vdCguZHJvcGRvd24pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmbG9hdDogbm9uZTtcbn1cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQuaWNvbi5tZW51IC5pdGVtIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICBMYWJlbGVkIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBNZW51ICovXG4udWkubGFiZWxlZC5pY29uLm1lbnUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4vKiBJdGVtICovXG4udWkubGFiZWxlZC5pY29uLm1lbnUgLml0ZW0ge1xuICBtaW4td2lkdGg6IDZlbTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi8qIEljb24gKi9cbi51aS5sYWJlbGVkLmljb24ubWVudSA+IC5pdGVtID4gLmljb246bm90KC5kcm9wZG93bikge1xuICBoZWlnaHQ6IDFlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MWVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCBhdXRvIDAuNXJlbSAhaW1wb3J0YW50O1xufVxuLyogRmx1aWQgKi9cbi51aS5mbHVpZC5sYWJlbGVkLmljb24ubWVudSA+IC5pdGVtIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5zdGFja2FibGUubWVudSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAudWkuc3RhY2thYmxlLm1lbnUgLml0ZW0ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLnN0YWNrYWJsZS5tZW51IC5pdGVtOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG4gIH1cbiAgLnVpLnN0YWNrYWJsZS5tZW51IC5sZWZ0Lm1lbnUsXG4gIC51aS5zdGFja2FibGUubWVudSAubGVmdC5pdGVtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudWkuc3RhY2thYmxlLm1lbnUgLnJpZ2h0Lm1lbnUsXG4gIC51aS5zdGFja2FibGUubWVudSAucmlnaHQuaXRlbSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudWkuc3RhY2thYmxlLm1lbnUgLmNlbnRlci5tZW51LFxuICAudWkuc3RhY2thYmxlLm1lbnUgLmNlbnRlci5pdGVtIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5zdGFja2FibGUubWVudSAucmlnaHQubWVudSxcbiAgLnVpLnN0YWNrYWJsZS5tZW51IC5jZW50ZXIubWVudSxcbiAgLnVpLnN0YWNrYWJsZS5tZW51IC5sZWZ0Lm1lbnUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnVpLm1lbnUgLnByaW1hcnkuYWN0aXZlLml0ZW0sXG4udWkudWkucHJpbWFyeS5tZW51IC5hY3RpdmUuaXRlbTpob3Zlcixcbi51aS51aS5wcmltYXJ5Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG4udWkudWkubWVudSAucmVkLmFjdGl2ZS5pdGVtLFxuLnVpLnVpLnJlZC5tZW51IC5hY3RpdmUuaXRlbTpob3Zlcixcbi51aS51aS5yZWQubWVudSAuYWN0aXZlLml0ZW0ge1xuICBjb2xvcjogI0RCMjgyODtcbn1cbi51aS51aS5tZW51IC5vcmFuZ2UuYWN0aXZlLml0ZW0sXG4udWkudWkub3JhbmdlLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyLFxuLnVpLnVpLm9yYW5nZS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGNvbG9yOiAjRjI3MTFDO1xufVxuLnVpLnVpLm1lbnUgLnllbGxvdy5hY3RpdmUuaXRlbSxcbi51aS51aS55ZWxsb3cubWVudSAuYWN0aXZlLml0ZW06aG92ZXIsXG4udWkudWkueWVsbG93Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgY29sb3I6ICNGQkJEMDg7XG59XG4udWkudWkubWVudSAub2xpdmUuYWN0aXZlLml0ZW0sXG4udWkudWkub2xpdmUubWVudSAuYWN0aXZlLml0ZW06aG92ZXIsXG4udWkudWkub2xpdmUubWVudSAuYWN0aXZlLml0ZW0ge1xuICBjb2xvcjogI0I1Q0MxODtcbn1cbi51aS51aS5tZW51IC5ncmVlbi5hY3RpdmUuaXRlbSxcbi51aS51aS5ncmVlbi5tZW51IC5hY3RpdmUuaXRlbTpob3Zlcixcbi51aS51aS5ncmVlbi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGNvbG9yOiAjMjFCQTQ1O1xufVxuLnVpLnVpLm1lbnUgLnRlYWwuYWN0aXZlLml0ZW0sXG4udWkudWkudGVhbC5tZW51IC5hY3RpdmUuaXRlbTpob3Zlcixcbi51aS51aS50ZWFsLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgY29sb3I6ICMwMEI1QUQ7XG59XG4udWkudWkubWVudSAuYmx1ZS5hY3RpdmUuaXRlbSxcbi51aS51aS5ibHVlLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyLFxuLnVpLnVpLmJsdWUubWVudSAuYWN0aXZlLml0ZW0ge1xuICBjb2xvcjogIzIxODVEMDtcbn1cbi51aS51aS5tZW51IC52aW9sZXQuYWN0aXZlLml0ZW0sXG4udWkudWkudmlvbGV0Lm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyLFxuLnVpLnVpLnZpb2xldC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGNvbG9yOiAjNjQzNUM5O1xufVxuLnVpLnVpLm1lbnUgLnB1cnBsZS5hY3RpdmUuaXRlbSxcbi51aS51aS5wdXJwbGUubWVudSAuYWN0aXZlLml0ZW06aG92ZXIsXG4udWkudWkucHVycGxlLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgY29sb3I6ICNBMzMzQzg7XG59XG4udWkudWkubWVudSAucGluay5hY3RpdmUuaXRlbSxcbi51aS51aS5waW5rLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyLFxuLnVpLnVpLnBpbmsubWVudSAuYWN0aXZlLml0ZW0ge1xuICBjb2xvcjogI0UwMzk5Nztcbn1cbi51aS51aS5tZW51IC5icm93bi5hY3RpdmUuaXRlbSxcbi51aS51aS5icm93bi5tZW51IC5hY3RpdmUuaXRlbTpob3Zlcixcbi51aS51aS5icm93bi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGNvbG9yOiAjQTU2NzNGO1xufVxuLnVpLnVpLm1lbnUgLmdyZXkuYWN0aXZlLml0ZW0sXG4udWkudWkuZ3JleS5tZW51IC5hY3RpdmUuaXRlbTpob3Zlcixcbi51aS51aS5ncmV5Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4udWkudWkubWVudSAuYmxhY2suYWN0aXZlLml0ZW0sXG4udWkudWkuYmxhY2subWVudSAuYWN0aXZlLml0ZW06aG92ZXIsXG4udWkudWkuYmxhY2subWVudSAuYWN0aXZlLml0ZW0ge1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5tZW51IHtcbiAgYm9yZGVyOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyogTWVudSBJdGVtICovXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbSxcbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtID4gYTpub3QoLnVpKSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLm1lbnUgLml0ZW0ubWVudSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLyotLS0gQm9yZGVyIC0tLSovXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xufVxuLnVpLnZlcnRpY2FsLmludmVydGVkLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbn1cbi8qIFN1YiBNZW51ICovXG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAubWVudSAuaXRlbSxcbi51aS52ZXJ0aWNhbC5pbnZlcnRlZC5tZW51IC5tZW51IC5pdGVtIGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLyogSGVhZGVyICovXG4udWkuaW52ZXJ0ZWQubWVudSAuaGVhZGVyLml0ZW0ge1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyogRGlzYWJsZWQgKi9cbi51aS51aS5pbnZlcnRlZC5tZW51IC5pdGVtLmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMjI1LCAyMjUsIDIyNSwgMC4zKTtcbn1cbi8qLS0tIEhvdmVyIC0tLSovXG4udWkubGluay5pbnZlcnRlZC5tZW51IC5pdGVtOmhvdmVyLFxuLnVpLmludmVydGVkLm1lbnUgLmRyb3Bkb3duLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQubWVudSAubGluay5pdGVtOmhvdmVyLFxuLnVpLmludmVydGVkLm1lbnUgYS5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAuaXRlbSAubWVudSBhLml0ZW06aG92ZXIsXG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAuaXRlbSAubWVudSAubGluay5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLyotLS0gUHJlc3NlZCAtLS0qL1xuLnVpLmludmVydGVkLm1lbnUgYS5pdGVtOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5tZW51IC5saW5rLml0ZW06YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4vKi0tLSBBY3RpdmUgLS0tKi9cbi51aS5pbnZlcnRlZC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6ICMzRDNFM0Y7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG4udWkuaW52ZXJ0ZWQudmVydGljYWwubWVudSAuaXRlbSAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjM0QzRTNGO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cbi8qLS0tIEFjdGl2ZSBIb3ZlciAtLS0qL1xuLnVpLmludmVydGVkLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzNEM0UzRjtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMzRDNFM0Y7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmxvYXRlZC5tZW51IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAwLjVyZW0gMCAwO1xufVxuLnVpLmZsb2F0ZWQubWVudSAuaXRlbTpsYXN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udWkucmlnaHQuZmxvYXRlZC5tZW51IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAgMCAwIDAuNXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS51aS5pbnZlcnRlZC5tZW51IC5wcmltYXJ5LmFjdGl2ZS5pdGVtLFxuLnVpLnVpLmludmVydGVkLnByaW1hcnkubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg1RDA7XG59XG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cbi51aS51aS5pbnZlcnRlZC5wcmltYXJ5Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnVpLmludmVydGVkLnBvaW50aW5nLnByaW1hcnkubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY3OGMyO1xufVxuLnVpLnVpLmludmVydGVkLm1lbnUgLnJlZC5hY3RpdmUuaXRlbSxcbi51aS51aS5pbnZlcnRlZC5yZWQubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG59XG4udWkuaW52ZXJ0ZWQucmVkLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnVpLmludmVydGVkLnJlZC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5yZWQubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAxOTE5O1xufVxuLnVpLnVpLmludmVydGVkLm1lbnUgLm9yYW5nZS5hY3RpdmUuaXRlbSxcbi51aS51aS5pbnZlcnRlZC5vcmFuZ2UubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjcxMUM7XG59XG4udWkuaW52ZXJ0ZWQub3JhbmdlLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnVpLmludmVydGVkLm9yYW5nZS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5vcmFuZ2UubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI2MjAyO1xufVxuLnVpLnVpLmludmVydGVkLm1lbnUgLnllbGxvdy5hY3RpdmUuaXRlbSxcbi51aS51aS5pbnZlcnRlZC55ZWxsb3cubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkJEMDg7XG59XG4udWkuaW52ZXJ0ZWQueWVsbG93Lm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnVpLmludmVydGVkLnllbGxvdy5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy55ZWxsb3cubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFhZTAwO1xufVxuLnVpLnVpLmludmVydGVkLm1lbnUgLm9saXZlLmFjdGl2ZS5pdGVtLFxuLnVpLnVpLmludmVydGVkLm9saXZlLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjVDQzE4O1xufVxuLnVpLmludmVydGVkLm9saXZlLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnVpLmludmVydGVkLm9saXZlLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnVpLmludmVydGVkLnBvaW50aW5nLm9saXZlLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E3YmQwZDtcbn1cbi51aS51aS5pbnZlcnRlZC5tZW51IC5ncmVlbi5hY3RpdmUuaXRlbSxcbi51aS51aS5pbnZlcnRlZC5ncmVlbi5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NTtcbn1cbi51aS5pbnZlcnRlZC5ncmVlbi5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cbi51aS51aS5pbnZlcnRlZC5ncmVlbi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5ncmVlbi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNmFiMzk7XG59XG4udWkudWkuaW52ZXJ0ZWQubWVudSAudGVhbC5hY3RpdmUuaXRlbSxcbi51aS51aS5pbnZlcnRlZC50ZWFsLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCNUFEO1xufVxuLnVpLmludmVydGVkLnRlYWwubWVudSAuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG59XG4udWkudWkuaW52ZXJ0ZWQudGVhbC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy50ZWFsLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOWM5NTtcbn1cbi51aS51aS5pbnZlcnRlZC5tZW51IC5ibHVlLmFjdGl2ZS5pdGVtLFxuLnVpLnVpLmludmVydGVkLmJsdWUubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg1RDA7XG59XG4udWkuaW52ZXJ0ZWQuYmx1ZS5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cbi51aS51aS5pbnZlcnRlZC5ibHVlLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnVpLmludmVydGVkLnBvaW50aW5nLmJsdWUubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY3OGMyO1xufVxuLnVpLnVpLmludmVydGVkLm1lbnUgLnZpb2xldC5hY3RpdmUuaXRlbSxcbi51aS51aS5pbnZlcnRlZC52aW9sZXQubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDM1Qzk7XG59XG4udWkuaW52ZXJ0ZWQudmlvbGV0Lm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnVpLmludmVydGVkLnZpb2xldC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy52aW9sZXQubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgyOWJiO1xufVxuLnVpLnVpLmludmVydGVkLm1lbnUgLnB1cnBsZS5hY3RpdmUuaXRlbSxcbi51aS51aS5pbnZlcnRlZC5wdXJwbGUubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMzMzQzg7XG59XG4udWkuaW52ZXJ0ZWQucHVycGxlLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnVpLmludmVydGVkLnB1cnBsZS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5wdXJwbGUubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTYyN2JhO1xufVxuLnVpLnVpLmludmVydGVkLm1lbnUgLnBpbmsuYWN0aXZlLml0ZW0sXG4udWkudWkuaW52ZXJ0ZWQucGluay5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwMzk5Nztcbn1cbi51aS5pbnZlcnRlZC5waW5rLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnVpLmludmVydGVkLnBpbmsubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcucGluay5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNjFhOGQ7XG59XG4udWkudWkuaW52ZXJ0ZWQubWVudSAuYnJvd24uYWN0aXZlLml0ZW0sXG4udWkudWkuaW52ZXJ0ZWQuYnJvd24ubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0Y7XG59XG4udWkuaW52ZXJ0ZWQuYnJvd24ubWVudSAuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG59XG4udWkudWkuaW52ZXJ0ZWQuYnJvd24ubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcuYnJvd24ubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTc1YjMzO1xufVxuLnVpLnVpLmludmVydGVkLm1lbnUgLmdyZXkuYWN0aXZlLml0ZW0sXG4udWkudWkuaW52ZXJ0ZWQuZ3JleS5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3Njtcbn1cbi51aS5pbnZlcnRlZC5ncmV5Lm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnVpLmludmVydGVkLmdyZXkubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcuZ3JleS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MzgzODM7XG59XG4udWkudWkuaW52ZXJ0ZWQubWVudSAuYmxhY2suYWN0aXZlLml0ZW0sXG4udWkudWkuaW52ZXJ0ZWQuYmxhY2subWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG59XG4udWkuaW52ZXJ0ZWQuYmxhY2subWVudSAuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG59XG4udWkudWkuaW52ZXJ0ZWQuYmxhY2subWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcuYmxhY2subWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyOTJhO1xufVxuLnVpLnVpLnVpLmludmVydGVkLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRml0dGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZpdHRlZC5tZW51IC5pdGVtLFxuLnVpLmZpdHRlZC5tZW51IC5pdGVtIC5tZW51IC5pdGVtLFxuLnVpLm1lbnUgLmZpdHRlZC5pdGVtIHtcbiAgcGFkZGluZzogMDtcbn1cbi51aS5ob3Jpem9udGFsbHkuZml0dGVkLm1lbnUgLml0ZW0sXG4udWkuaG9yaXpvbnRhbGx5LmZpdHRlZC5tZW51IC5pdGVtIC5tZW51IC5pdGVtLFxuLnVpLm1lbnUgLmhvcml6b250YWxseS5maXR0ZWQuaXRlbSB7XG4gIHBhZGRpbmctdG9wOiAwLjkyODU3MTQzZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjkyODU3MTQzZW07XG59XG4udWkudmVydGljYWxseS5maXR0ZWQubWVudSAuaXRlbSxcbi51aS52ZXJ0aWNhbGx5LmZpdHRlZC5tZW51IC5pdGVtIC5tZW51IC5pdGVtLFxuLnVpLm1lbnUgLnZlcnRpY2FsbHkuZml0dGVkLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDEuMTQyODU3MTRlbTtcbiAgcGFkZGluZy1yaWdodDogMS4xNDI4NTcxNGVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgQm9yZGVybGVzc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5ib3JkZXJsZXNzLm1lbnUgLml0ZW06YmVmb3JlLFxuLnVpLmJvcmRlcmxlc3MubWVudSAuaXRlbSAubWVudSAuaXRlbTpiZWZvcmUsXG4udWkubWVudSAuYm9yZGVybGVzcy5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbXBhY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jb21wYWN0Lm1lbnUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnVpLmNvbXBhY3QudmVydGljYWwubWVudSB7XG4gIC8qIElFIGhhY2sgdG8gbWFrZSBkcm9wZG93biBpY29ucyBhcHBlYXIgaW5saW5lICovXG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udWkuY29tcGFjdC5tZW51Om5vdCguc2Vjb25kYXJ5KSAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMDtcbn1cbi51aS5jb21wYWN0Lm1lbnUgLml0ZW06bGFzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVpLmNvbXBhY3QudmVydGljYWwubWVudSB7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG4udWkuY29tcGFjdC52ZXJ0aWNhbC5tZW51IC5pdGVtOmxhc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubWVudS5mbHVpZCxcbi51aS52ZXJ0aWNhbC5tZW51LmZsdWlkIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRXZlbmx5IFNpemVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaXRlbS5tZW51LFxuLnVpLml0ZW0ubWVudSAuaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi51aS5hdHRhY2hlZC5pdGVtLm1lbnU6bm90KC50YWJ1bGFyKSB7XG4gIG1hcmdpbjogMCAtMXB4ICFpbXBvcnRhbnQ7XG59XG4udWkuaXRlbS5tZW51IC5pdGVtOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51aS5tZW51LnR3by5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDUwJTtcbn1cbi51aS5tZW51LnRocmVlLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMzMuMzMzJTtcbn1cbi51aS5tZW51LmZvdXIuaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAyNSU7XG59XG4udWkubWVudS5maXZlLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMjAlO1xufVxuLnVpLm1lbnUuc2l4Lml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTYuNjY2JTtcbn1cbi51aS5tZW51LnNldmVuLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTQuMjg1JTtcbn1cbi51aS5tZW51LmVpZ2h0Lml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTIuNSU7XG59XG4udWkubWVudS5uaW5lLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTEuMTElO1xufVxuLnVpLm1lbnUudGVuLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTAlO1xufVxuLnVpLm1lbnUuZWxldmVuLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogOS4wOSU7XG59XG4udWkubWVudS50d2VsdmUuaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiA4LjMzMyU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZpeGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1lbnUuZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMTtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS5tZW51LmZpeGVkLFxuLnVpLm1lbnUuZml4ZWQgLml0ZW06Zmlyc3QtY2hpbGQsXG4udWkubWVudS5maXhlZCAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLnVpLmZpeGVkLm1lbnUsXG4udWlbY2xhc3MqPVwidG9wIGZpeGVkXCJdLm1lbnUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG59XG4udWlbY2xhc3MqPVwidG9wIGZpeGVkXCJdLm1lbnUge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IGZpeGVkXCJdLm1lbnUge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gZml4ZWRcIl0ubWVudSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGZpeGVkXCJdLm1lbnUge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLyogQ291cGxpbmcgd2l0aCBHcmlkICovXG4udWkuZml4ZWQubWVudSArIC51aS5ncmlkIHtcbiAgcGFkZGluZy10b3A6IDIuNzVyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBQb2ludGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnBvaW50aW5nLm1lbnUgLml0ZW06YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDAuNXB4IDAgMDtcbiAgd2lkdGg6IDAuNTcxNDI4NTdlbTtcbiAgaGVpZ2h0OiAwLjU3MTQyODU3ZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNENEQ0RDU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNENEQ0RDU7XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcyBlYXNlO1xufVxuLnVpLnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLml0ZW06YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIG1hcmdpbjogMCAtMC41cHggMCAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDRENEQ1O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRDRENEQ1O1xufVxuLnVpLnBvaW50aW5nLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtOmFmdGVyLFxuLnVpLnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qIEFjdGl2ZSAqL1xuLnVpLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi51aS5wb2ludGluZy5tZW51IC5hY3RpdmUuZHJvcGRvd24uaXRlbTphZnRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qIERvbid0IGRvdWJsZSB1cCBwb2ludGVycyAqL1xuLnVpLnBvaW50aW5nLm1lbnUgLmRyb3Bkb3duLmFjdGl2ZS5pdGVtOmFmdGVyLFxuLnVpLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtIC5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBDb2xvcnMgKi9cbi51aS5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG59XG4udWkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xufVxuLnVpLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjtcbn1cbi51aS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG59XG4udWkudmVydGljYWwucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xufVxuLnVpLnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5wcmltYXJ5LmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5zZWNvbmRhcnkuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xufVxuLnVpLmludmVydGVkLnBvaW50aW5nLm1lbnUgLnJlZC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAub3JhbmdlLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyNzExQztcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC55ZWxsb3cuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJCRDA4O1xufVxuLnVpLmludmVydGVkLnBvaW50aW5nLm1lbnUgLm9saXZlLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I1Q0MxODtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5ncmVlbi5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAudGVhbC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMEI1QUQ7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAuYmx1ZS5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg1RDA7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAudmlvbGV0LmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY0MzVDOTtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5wdXJwbGUuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTMzM0M4O1xufVxuLnVpLmludmVydGVkLnBvaW50aW5nLm1lbnUgLnBpbmsuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTAzOTk3O1xufVxuLnVpLmludmVydGVkLnBvaW50aW5nLm1lbnUgLmJyb3duLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0E1NjczRjtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5ncmV5LmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3Njtcbn1cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5ibGFjay5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQXR0YWNoZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBNaWRkbGUgKi9cbi51aS5hdHRhY2hlZC5tZW51IHtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbjogMCAtMXB4O1xuICB3aWR0aDogY2FsYygxMDAlICsgMnB4KTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgKyAycHgpO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmF0dGFjaGVkICsgLnVpLmF0dGFjaGVkLm1lbnU6bm90KC50b3ApIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi8qIFRvcCAqL1xuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5tZW51IHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0b3A6IDA7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwIDA7XG59XG4udWkubWVudVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLyogQm90dG9tICovXG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLm1lbnUge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ubWVudTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qIEF0dGFjaGVkIE1lbnUgSXRlbSAqL1xuLnVpLnRvcC5hdHRhY2hlZC5tZW51ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAgMCAwO1xufVxuLnVpLmJvdHRvbS5hdHRhY2hlZC5tZW51ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwLjI4NTcxNDI5cmVtO1xufVxuLyogVGFidWxhciBBdHRhY2hlZCAqL1xuLnVpLmF0dGFjaGVkLm1lbnU6bm90KC50YWJ1bGFyKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENEQ0RDU7XG59XG4udWkuYXR0YWNoZWQuaW52ZXJ0ZWQubWVudSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi51aS5hdHRhY2hlZC50YWJ1bGFyLm1lbnUge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBNaW5pICovXG4udWkubWluaS5tZW51IHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuLnVpLm1pbmkudmVydGljYWwubWVudTpub3QoLmljb24pIHtcbiAgd2lkdGg6IDlyZW07XG59XG4udWkubWluaS5tZW51IC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS5taW5pLm1lbnUgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG59XG4vKiBUaW55ICovXG4udWkudGlueS5tZW51IHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuLnVpLnRpbnkudmVydGljYWwubWVudTpub3QoLmljb24pIHtcbiAgd2lkdGg6IDExcmVtO1xufVxuLnVpLnRpbnkubWVudSAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG4udWkudGlueS5tZW51IC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuLyogU21hbGwgKi9cbi51aS5zbWFsbC5tZW51IHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLnNtYWxsLnZlcnRpY2FsLm1lbnU6bm90KC5pY29uKSB7XG4gIHdpZHRoOiAxM3JlbTtcbn1cbi51aS5zbWFsbC5tZW51IC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5zbWFsbC5tZW51IC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLyogTWVkaXVtICovXG4udWkubWVudSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IHtcbiAgd2lkdGg6IDE1cmVtO1xufVxuLyogTGFyZ2UgKi9cbi51aS5sYXJnZS5tZW51IHtcbiAgZm9udC1zaXplOiAxLjA3MTQyODU3cmVtO1xufVxuLnVpLmxhcmdlLnZlcnRpY2FsLm1lbnU6bm90KC5pY29uKSB7XG4gIHdpZHRoOiAxOHJlbTtcbn1cbi51aS5sYXJnZS5tZW51IC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMS4wNzE0Mjg1N3JlbTtcbn1cbi51aS5sYXJnZS5tZW51IC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjA3MTQyODU3cmVtO1xufVxuLyogSHVnZSAqL1xuLnVpLmh1Z2UubWVudSB7XG4gIGZvbnQtc2l6ZTogMS4yMTQyODU3MXJlbTtcbn1cbi51aS5odWdlLnZlcnRpY2FsLm1lbnU6bm90KC5pY29uKSB7XG4gIHdpZHRoOiAyMnJlbTtcbn1cbi51aS5odWdlLm1lbnUgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAxLjIxNDI4NTcxcmVtO1xufVxuLnVpLmh1Z2UubWVudSAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4yMTQyODU3MXJlbTtcbn1cbi8qIEJpZyAqL1xuLnVpLmJpZy5tZW51IHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuLnVpLmJpZy52ZXJ0aWNhbC5tZW51Om5vdCguaWNvbikge1xuICB3aWR0aDogMjByZW07XG59XG4udWkuYmlnLm1lbnUgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuLnVpLmJpZy5tZW51IC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuLyogTWFzc2l2ZSAqL1xuLnVpLm1hc3NpdmUubWVudSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi51aS5tYXNzaXZlLnZlcnRpY2FsLm1lbnU6bm90KC5pY29uKSB7XG4gIHdpZHRoOiAyNXJlbTtcbn1cbi51aS5tYXNzaXZlLm1lbnUgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuLnVpLm1hc3NpdmUubWVudSAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBJbnZlcnRlZCBkcm9wZG93bnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5tZW51IC51aS5pbnZlcnRlZC5pbnZlcnRlZC5kcm9wZG93bi5pdGVtIC5tZW51IHtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS5tZW51IC51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAhaW1wb3J0YW50O1xufVxuLnVpLm1lbnUgLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAhaW1wb3J0YW50O1xufVxuLnVpLm1lbnUgLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgIWltcG9ydGFudDtcbn1cbi51aS5tZW51IC51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudSA+IC5zZWxlY3RlZC5pdGVtIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpICFpbXBvcnRhbnQ7XG59XG4vKiBWZXJ0aWNhbCAqL1xuLnVpLnZlcnRpY2FsLm1lbnUgLmludmVydGVkLmRyb3Bkb3duLml0ZW0gLm1lbnUge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIE1lc3NhZ2VcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgTWVzc2FnZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBIZWFkZXIgKi9cbi8qIFBhcmFncmFwaCAqL1xuLyogTGlzdCAqL1xuLyogSWNvbiAqL1xuLyogQ2xvc2UgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJY29uIE1lc3NhZ2UgKi9cbi8qIEF0dGFjaGVkICovXG4vKiBGbG9hdGluZyAqL1xuLyogQ29sb3JzICovXG4vKiBXYXJuaW5nIC8gUG9zaXRpdmUgLyBOZWdhdGl2ZSAvIEluZm8gKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgTWVzc2FnZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBIZWFkZXIgKi9cbi8qIFBhcmFncmFwaCAqL1xuLyogTGlzdCAqL1xuLyogSWNvbiAqL1xuLyogQ2xvc2UgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJY29uIE1lc3NhZ2UgKi9cbi8qIEF0dGFjaGVkICovXG4vKiBGbG9hdGluZyAqL1xuLyogQ29sb3JzICovXG4vKiBXYXJuaW5nIC8gUG9zaXRpdmUgLyBOZWdhdGl2ZSAvIEluZm8gKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBNZXNzYWdlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLm1lc3NhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgbWFyZ2luOiAxZW0gMDtcbiAgYmFja2dyb3VuZDogI0Y4RjhGOTtcbiAgcGFkZGluZzogMWVtIDEuNWVtO1xuICBsaW5lLWhlaWdodDogMS40Mjg1ZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMjIpIGluc2V0LCAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG59XG4udWkubWVzc2FnZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkubWVzc2FnZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEhlYWRlciAqL1xuLnVpLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAtMC4xNDI4NTcxNGVtIDAgMCAwO1xufVxuLyogRGVmYXVsdCBmb250IHNpemUgKi9cbi51aS5tZXNzYWdlIC5oZWFkZXI6bm90KC51aSkge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cbi8qIFBhcmFncmFwaCAqL1xuLnVpLm1lc3NhZ2UgcCB7XG4gIG9wYWNpdHk6IDAuODU7XG4gIG1hcmdpbjogMC43NWVtIDA7XG59XG4udWkubWVzc2FnZSBwOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5tZXNzYWdlIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4udWkubWVzc2FnZSAuaGVhZGVyICsgcCB7XG4gIG1hcmdpbi10b3A6IDAuMjVlbTtcbn1cbi8qIExpc3QgKi9cbi51aS5tZXNzYWdlIC5saXN0Om5vdCgudWkpIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMDtcbiAgb3BhY2l0eTogMC44NTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICBtYXJnaW46IDAuNWVtIDAgMDtcbn1cbi51aS5tZXNzYWdlIC5saXN0Om5vdCgudWkpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5tZXNzYWdlIC5saXN0Om5vdCgudWkpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVpLm1lc3NhZ2UgLmxpc3Q6bm90KC51aSkgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMC4zZW0gMWVtO1xuICBwYWRkaW5nOiAwO1xufVxuLnVpLm1lc3NhZ2UgLmxpc3Q6bm90KC51aSkgbGk6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAn4oCiJztcbiAgbGVmdDogLTFlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4udWkubWVzc2FnZSAubGlzdDpub3QoLnVpKSBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qIEljb24gKi9cbi51aS5tZXNzYWdlID4gLmljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNmVtO1xufVxuLyogQ2xvc2UgSWNvbiAqL1xuLnVpLm1lc3NhZ2UgPiAuY2xvc2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIHRvcDogMC43ODU3NWVtO1xuICByaWdodDogMC41ZW07XG4gIG9wYWNpdHk6IDAuNztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG59XG4udWkubWVzc2FnZSA+IC5jbG9zZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qIEZpcnN0IC8gTGFzdCBFbGVtZW50ICovXG4udWkubWVzc2FnZSA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkubWVzc2FnZSA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5kcm9wZG93biAubWVudSA+IC5tZXNzYWdlIHtcbiAgbWFyZ2luOiAwIC0xcHg7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIFZpc2libGVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkudmlzaWJsZS52aXNpYmxlLnZpc2libGUudmlzaWJsZS5tZXNzYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udWkuaWNvbi52aXNpYmxlLnZpc2libGUudmlzaWJsZS52aXNpYmxlLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBIaWRkZW5cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaGlkZGVuLmhpZGRlbi5oaWRkZW4uaGlkZGVuLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jb21wYWN0Lm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udWkuY29tcGFjdC5pY29uLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgd2lkdGg6IGF1dG87XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQXR0YWNoZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuYXR0YWNoZWQubWVzc2FnZSB7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwIDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuLnVpLmF0dGFjaGVkICsgLnVpLmF0dGFjaGVkLm1lc3NhZ2U6bm90KC50b3ApOm5vdCguYm90dG9tKSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4udWkuYm90dG9tLmF0dGFjaGVkLm1lc3NhZ2Uge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldCwgMCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5ib3R0b20uYXR0YWNoZWQubWVzc2FnZTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuLnVpLmF0dGFjaGVkLmljb24ubWVzc2FnZSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pY29uLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi51aS5pY29uLm1lc3NhZ2UgPiAuaWNvbjpub3QoLmNsb3NlKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDNlbTtcbiAgb3BhY2l0eTogMC44O1xufVxuLnVpLmljb24ubWVzc2FnZSA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnVpLmljb24ubWVzc2FnZSAuaWNvbjpub3QoLmNsb3NlKSArIC5jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnVpLmljb24ubWVzc2FnZSAuY2lyY3VsYXIuaWNvbiB7XG4gIHdpZHRoOiAxZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmxvYXRpbmcubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMjIpIGluc2V0LCAwIDJweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwIDJweCAxMHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wb3NpdGl2ZS5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRkZGNTtcbiAgY29sb3I6ICMyQzY2MkQ7XG59XG4udWkucG9zaXRpdmUubWVzc2FnZSxcbi51aS5hdHRhY2hlZC5wb3NpdGl2ZS5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNBM0MyOTMgaW5zZXQsIDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi51aS5mbG9hdGluZy5wb3NpdGl2ZS5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNBM0MyOTMgaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnBvc2l0aXZlLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjMUE1MzFCO1xufVxuLnVpLm5lZ2F0aXZlLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGNkY2O1xuICBjb2xvcjogIzlGM0EzODtcbn1cbi51aS5uZWdhdGl2ZS5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLm5lZ2F0aXZlLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0UwQjRCNCBpbnNldCwgMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xufVxuLnVpLmZsb2F0aW5nLm5lZ2F0aXZlLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0UwQjRCNCBpbnNldCwgMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkubmVnYXRpdmUubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICM5MTJEMkI7XG59XG4udWkuaW5mby5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RkZGRjtcbiAgY29sb3I6ICMyNzZGODY7XG59XG4udWkuaW5mby5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLmluZm8ubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjQTlENURFIGluc2V0LCAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG59XG4udWkuZmxvYXRpbmcuaW5mby5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNBOUQ1REUgaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLmluZm8ubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMwRTU2NkM7XG59XG4udWkud2FybmluZy5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMztcbiAgY29sb3I6ICM1NzNBMDg7XG59XG4udWkud2FybmluZy5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLndhcm5pbmcubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjQzlCQTlCIGluc2V0LCAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG59XG4udWkuZmxvYXRpbmcud2FybmluZy5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNDOUJBOUIgaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLndhcm5pbmcubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICM3OTRCMDI7XG59XG4udWkuZXJyb3IubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY2RjY7XG4gIGNvbG9yOiAjOUYzQTM4O1xufVxuLnVpLmVycm9yLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQuZXJyb3IubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRTBCNEI0IGluc2V0LCAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG59XG4udWkuZmxvYXRpbmcuZXJyb3IubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRTBCNEI0IGluc2V0LCAwIDJweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwIDJweCAxMHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5lcnJvci5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzkxMkQyQjtcbn1cbi51aS5zdWNjZXNzLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGRkY1O1xuICBjb2xvcjogIzJDNjYyRDtcbn1cbi51aS5zdWNjZXNzLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQuc3VjY2Vzcy5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNBM0MyOTMgaW5zZXQsIDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi51aS5mbG9hdGluZy5zdWNjZXNzLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0EzQzI5MyBpbnNldCwgMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkuc3VjY2Vzcy5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzFBNTMxQjtcbn1cbi51aS5wcmltYXJ5Lm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREZGMEZGO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLnByaW1hcnkubWVzc2FnZSxcbi51aS5hdHRhY2hlZC5wcmltYXJ5Lm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzIxODVEMCBpbnNldCwgMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xufVxuLnVpLmZsb2F0aW5nLnByaW1hcnkubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMjE4NUQwIGluc2V0LCAwIDJweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwIDJweCAxMHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5wcmltYXJ5Lm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDI0MiwgMjQyLCAyNDIsIDAuOSk7XG59XG4udWkuc2Vjb25kYXJ5Lm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLnNlY29uZGFyeS5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLnNlY29uZGFyeS5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMxQjFDMUQgaW5zZXQsIDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi51aS5mbG9hdGluZy5zZWNvbmRhcnkubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMUIxQzFEIGluc2V0LCAwIDJweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwIDJweCAxMHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5zZWNvbmRhcnkubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMC45KTtcbn1cbi51aS5yZWQubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkU4RTY7XG4gIGNvbG9yOiAjREIyODI4O1xufVxuLnVpLnJlZC5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLnJlZC5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNEQjI4MjggaW5zZXQsIDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi51aS5mbG9hdGluZy5yZWQubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjREIyODI4IGluc2V0LCAwIDJweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwIDJweCAxMHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5yZWQubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICNjODIxMjE7XG59XG4udWkub3JhbmdlLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZFRERFO1xuICBjb2xvcjogI0YyNzExQztcbn1cbi51aS5vcmFuZ2UubWVzc2FnZSxcbi51aS5hdHRhY2hlZC5vcmFuZ2UubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRjI3MTFDIGluc2V0LCAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG59XG4udWkuZmxvYXRpbmcub3JhbmdlLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0YyNzExQyBpbnNldCwgMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkub3JhbmdlLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjZTc2NDBkO1xufVxuLnVpLnllbGxvdy5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjhEQjtcbiAgY29sb3I6ICNCNTgxMDU7XG59XG4udWkueWVsbG93Lm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQueWVsbG93Lm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0I1ODEwNSBpbnNldCwgMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xufVxuLnVpLmZsb2F0aW5nLnllbGxvdy5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNCNTgxMDUgaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnllbGxvdy5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzljNmYwNDtcbn1cbi51aS5vbGl2ZS5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCRkRFRjtcbiAgY29sb3I6ICM4QUJDMUU7XG59XG4udWkub2xpdmUubWVzc2FnZSxcbi51aS5hdHRhY2hlZC5vbGl2ZS5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM4QUJDMUUgaW5zZXQsIDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi51aS5mbG9hdGluZy5vbGl2ZS5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICM4QUJDMUUgaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLm9saXZlLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjN2FhNjFhO1xufVxuLnVpLmdyZWVuLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTVGOUU3O1xuICBjb2xvcjogIzFFQkMzMDtcbn1cbi51aS5ncmVlbi5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLmdyZWVuLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzFFQkMzMCBpbnNldCwgMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xufVxuLnVpLmZsb2F0aW5nLmdyZWVuLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzFFQkMzMCBpbnNldCwgMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkuZ3JlZW4ubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMxYWE2MmE7XG59XG4udWkudGVhbC5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UxRjdGNztcbiAgY29sb3I6ICMxMEEzQTM7XG59XG4udWkudGVhbC5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLnRlYWwubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMTBBM0EzIGluc2V0LCAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG59XG4udWkuZmxvYXRpbmcudGVhbC5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMxMEEzQTMgaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnRlYWwubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMwZThjOGM7XG59XG4udWkuYmx1ZS5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RGRjBGRjtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG4udWkuYmx1ZS5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLmJsdWUubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMjE4NUQwIGluc2V0LCAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG59XG4udWkuZmxvYXRpbmcuYmx1ZS5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMyMTg1RDAgaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLmJsdWUubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMxZTc3YmE7XG59XG4udWkudmlvbGV0Lm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUFFN0ZGO1xuICBjb2xvcjogIzY0MzVDOTtcbn1cbi51aS52aW9sZXQubWVzc2FnZSxcbi51aS5hdHRhY2hlZC52aW9sZXQubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjNjQzNUM5IGluc2V0LCAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG59XG4udWkuZmxvYXRpbmcudmlvbGV0Lm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzY0MzVDOSBpbnNldCwgMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkudmlvbGV0Lm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjNWEzMGI1O1xufVxuLnVpLnB1cnBsZS5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RTdGRjtcbiAgY29sb3I6ICNBMzMzQzg7XG59XG4udWkucHVycGxlLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQucHVycGxlLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0EzMzNDOCBpbnNldCwgMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xufVxuLnVpLmZsb2F0aW5nLnB1cnBsZS5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNBMzMzQzggaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnB1cnBsZS5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzkyMmViNDtcbn1cbi51aS5waW5rLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZFM0ZCO1xuICBjb2xvcjogI0UwMzk5Nztcbn1cbi51aS5waW5rLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQucGluay5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNFMDM5OTcgaW5zZXQsIDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi51aS5mbG9hdGluZy5waW5rLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0UwMzk5NyBpbnNldCwgMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkucGluay5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogI2RkMjM4Yjtcbn1cbi51aS5icm93bi5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YxRTJEMztcbiAgY29sb3I6ICNBNTY3M0Y7XG59XG4udWkuYnJvd24ubWVzc2FnZSxcbi51aS5hdHRhY2hlZC5icm93bi5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNBNTY3M0YgaW5zZXQsIDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi51aS5mbG9hdGluZy5icm93bi5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNBNTY3M0YgaW5zZXQsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLmJyb3duLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjOTM1YjM4O1xufVxuLnVpLmdyZXkubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLnVpLmdyZXkubWVzc2FnZSxcbi51aS5hdHRhY2hlZC5ncmV5Lm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzc2NzY3NiBpbnNldCwgMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xufVxuLnVpLmZsb2F0aW5nLmdyZXkubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjNzY3Njc2IGluc2V0LCAwIDJweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwIDJweCAxMHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5ncmV5Lm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjNjk2OTY5O1xufVxuLnVpLmJsYWNrLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmJsYWNrLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1pbmkubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOWVtO1xufVxuLnVpLnRpbnkubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NmVtO1xufVxuLnVpLnNtYWxsLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cbi51aS5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG4udWkubGFyZ2UubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNGVtO1xufVxuLnVpLmJpZy5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG59XG4udWkuaHVnZS5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzZW07XG59XG4udWkubWFzc2l2ZS5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBUYWJsZVxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVGFibGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBhcnRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGFibGUgUm93ICovXG4vKiBUYWJsZSBDZWxsICovXG4vKiBUYWJsZSBIZWFkZXIgKi9cbi8qIFRhYmxlIEZvb3RlciAqL1xuLyogUmVzcG9uc2l2ZSBTaXplICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmaW5pdGlvbiAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvdXBsaW5nc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBFcnJvciAqL1xuLyogV2FybmluZyAqL1xuLyogQWN0aXZlICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogQXR0YWNoZWQgKi9cbi8qIFN0cmlwZWQgKi9cbi8qIFNlbGVjdGFibGUgKi9cbi8qIFNvcnRhYmxlICovXG4vKiBDb2xvcnMgKi9cbi8qIEludmVydGVkICovXG4vKiBCYXNpYyAqL1xuLyogUGFkZGVkICovXG4vKiBDb21wYWN0ICovXG4vKiBTaXplcyAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVGFibGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbGVtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBhcnRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGFibGUgUm93ICovXG4vKiBUYWJsZSBDZWxsICovXG4vKiBUYWJsZSBIZWFkZXIgKi9cbi8qIFRhYmxlIEZvb3RlciAqL1xuLyogUmVzcG9uc2l2ZSBTaXplICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmaW5pdGlvbiAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvdXBsaW5nc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBFcnJvciAqL1xuLyogV2FybmluZyAqL1xuLyogQWN0aXZlICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogQXR0YWNoZWQgKi9cbi8qIFN0cmlwZWQgKi9cbi8qIFNlbGVjdGFibGUgKi9cbi8qIFNvcnRhYmxlICovXG4vKiBDb2xvcnMgKi9cbi8qIEludmVydGVkICovXG4vKiBCYXNpYyAqL1xuLyogUGFkZGVkICovXG4vKiBDb21wYWN0ICovXG4vKiBTaXplcyAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUYWJsZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFByb3RvdHlwZSAqL1xuLnVpLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbjogMWVtIDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cbi51aS50YWJsZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkudGFibGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4udWkudGFibGUgPiB0aGVhZCxcbi51aS50YWJsZSA+IHRib2R5IHtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFBhcnRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVGFibGUgQ29udGVudCAqL1xuLnVpLnRhYmxlIHRoLFxuLnVpLnRhYmxlIHRkIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZTtcbn1cbi8qIEhlYWRlcnMgKi9cbi51aS50YWJsZSA+IHRoZWFkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gIGN1cnNvcjogYXV0bztcbiAgYmFja2dyb3VuZDogI0Y5RkFGQjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIHBhZGRpbmc6IDAuOTI4NTcxNDNlbSAwLjc4NTcxNDI5ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICBmb250LXN0eWxlOiBub25lO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuLnVpLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG4udWkudGFibGUgPiB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAgMCAwO1xufVxuLnVpLnRhYmxlID4gdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLnVpLnRhYmxlID4gdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLyogRm9vdGVyICovXG4udWkudGFibGUgPiB0Zm9vdCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgge1xuICBjdXJzb3I6IGF1dG87XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBiYWNrZ3JvdW5kOiAjRjlGQUZCO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgcGFkZGluZzogMC43ODU3MTQyOWVtIDAuNzg1NzE0MjllbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi51aS50YWJsZSA+IHRmb290ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuLnVpLnRhYmxlID4gdGZvb3QgPiB0cjpmaXJzdC1jaGlsZCA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMC4yODU3MTQyOXJlbTtcbn1cbi51aS50YWJsZSA+IHRmb290ID4gdHI6Zmlyc3QtY2hpbGQgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMDtcbn1cbi51aS50YWJsZSA+IHRmb290ID4gdHI6Zmlyc3QtY2hpbGQgPiB0aDpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi8qIFRhYmxlIFJvdyAqL1xuLnVpLnRhYmxlID4gdHIgPiB0ZCxcbi51aS50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG59XG4udWkudGFibGUgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLFxuLnVpLnRhYmxlID4gdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCA+IHRkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi8qIFJlcGVhdGVkIHRib2R5ICovXG4udWkudGFibGUgPiB0Ym9keSArIHRib2R5IHRyOmZpcnN0LWNoaWxkID4gdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLyogVGFibGUgQ2VsbHMgKi9cbi51aS50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCxcbi51aS50YWJsZSA+IHRyID4gdGQge1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5ZW0gMC43ODU3MTQyOWVtO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuLyogSWNvbnMgKi9cbi51aS50YWJsZSA+IC5pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLnVpLnRhYmxlID4gLmljb246b25seS1jaGlsZCB7XG4gIG1hcmdpbjogMDtcbn1cbi8qIFRhYmxlIFNlZ21lbnQgKi9cbi51aS50YWJsZS5zZWdtZW50IHtcbiAgcGFkZGluZzogMDtcbn1cbi51aS50YWJsZS5zZWdtZW50OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51aS50YWJsZS5zZWdtZW50LnN0YWNrZWQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qIFJlc3BvbnNpdmUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRoZWFkLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCA+IHRyLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Zm9vdCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGZvb3QgPiB0cixcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGJvZHksXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRyLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Ym9keSA+IHRyLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0ciA+IHRoLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGZvb3QgPiB0ciA+IHRoLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0ciA+IHRkLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGZvb3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRyLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCA+IHRyLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Ym9keSA+IHRyLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Zm9vdCA+IHRyIHtcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gICAgYm94LXNoYWRvdzogMCAtMXB4IDAgMCByZ2JhKDAsIDAsIDAsIDAuMSkgaW5zZXQgIWltcG9ydGFudDtcbiAgfVxuICAudWkudWkudWkudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0ciA+IHRoLFxuICAudWkudWkudWkudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC51aS51aS51aS51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnVpLnVpLnVpLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGZvb3QgPiB0ciA+IHRoLFxuICAudWkudWkudWkudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0ciA+IHRkLFxuICAudWkudWkudWkudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDAuMjVlbSAwLjc1ZW07XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRoZWFkID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Zm9vdCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLyogRGVmaW5pdGlvbiBUYWJsZSAqL1xuICAudWkuZGVmaW5pdGlvbi50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRoZWFkID4gdHIgPiB0aDpmaXJzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBVSSBJbWFnZSAqL1xuLnVpLnRhYmxlIC5jb2xsYXBzaW5nIC5pbWFnZSxcbi51aS50YWJsZSAuY29sbGFwc2luZyAuaW1hZ2UgaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb21wbGV4XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnN0cnVjdHVyZWQudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuLnVpLnN0cnVjdHVyZWQudGFibGUgPiB0aGVhZCA+IHRyID4gdGgge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuLnVpLnN0cnVjdHVyZWQuc29ydGFibGUudGFibGUgPiB0aGVhZCA+IHRyID4gdGgge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkuc3RydWN0dXJlZC5iYXNpYy50YWJsZSA+IHRyID4gdGgsXG4udWkuc3RydWN0dXJlZC5iYXNpYy50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aS5zdHJ1Y3R1cmVkLmJhc2ljLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLFxuLnVpLnN0cnVjdHVyZWQuYmFzaWMudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuLnVpLnN0cnVjdHVyZWQuY2VsbGVkLnRhYmxlID4gdHIgPiB0aCxcbi51aS5zdHJ1Y3R1cmVkLmNlbGxlZC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aS5zdHJ1Y3R1cmVkLmNlbGxlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aS5zdHJ1Y3R1cmVkLmNlbGxlZC50YWJsZSA+IHRmb290ID4gdHIgPiB0aCxcbi51aS5zdHJ1Y3R1cmVkLmNlbGxlZC50YWJsZSA+IHRyID4gdGQsXG4udWkuc3RydWN0dXJlZC5jZWxsZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGVmaW5pdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kZWZpbml0aW9uLnRhYmxlID4gdGhlYWQ6bm90KC5mdWxsLXdpZHRoKSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogLTAuMWVtIC0wLjJlbSAwIDAuMWVtICNGRkZGRkY7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi51aS5kZWZpbml0aW9uLnRhYmxlID4gdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogLTAuMWVtIDAuMmVtIDAgMC4xZW0gI0ZGRkZGRjtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLyogSGlnaGxpZ2h0IERlZmluaW5nIENvbHVtbiAqL1xuLnVpLmRlZmluaXRpb24udGFibGUgPiB0ciA+IHRkOmZpcnN0LWNoaWxkOm5vdCguaWdub3JlZCksXG4udWkuZGVmaW5pdGlvbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZDpub3QoLmlnbm9yZWQpLFxuLnVpLmRlZmluaXRpb24udGFibGUgdHIgdGQuZGVmaW5pdGlvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgdGV4dC10cmFuc2Zvcm06ICcnO1xuICBib3gtc2hhZG93OiAnJztcbiAgdGV4dC1hbGlnbjogJyc7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBwYWRkaW5nLWxlZnQ6ICcnO1xuICBwYWRkaW5nLXJpZ2h0OiAnJztcbn1cbi8qIEZpeCAybmQgQ29sdW1uICovXG4udWkuZGVmaW5pdGlvbi50YWJsZSA+IHRoZWFkOm5vdCguZnVsbC13aWR0aCkgPiB0ciA+IHRoOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5kZWZpbml0aW9uLnRhYmxlID4gdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSA+IHRyID4gdGg6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLmRlZmluaXRpb24udGFibGUgPiB0ciA+IHRkOm50aC1jaGlsZCgyKSxcbi51aS5kZWZpbml0aW9uLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIFBvc2l0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLnBvc2l0aXZlLFxuLnVpLnVpLnRhYmxlIHRkLnBvc2l0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgI0EzQzI5MyBpbnNldDtcbiAgYmFja2dyb3VuZDogI0ZDRkZGNTtcbiAgY29sb3I6ICMyQzY2MkQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE5lZ2F0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLm5lZ2F0aXZlLFxuLnVpLnVpLnRhYmxlIHRkLm5lZ2F0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgI0UwQjRCNCBpbnNldDtcbiAgYmFja2dyb3VuZDogI0ZGRjZGNjtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS51aS51aS51aS50YWJsZSB0ci5lcnJvcixcbi51aS51aS50YWJsZSB0ZC5lcnJvciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwICNFMEI0QjQgaW5zZXQ7XG4gIGJhY2tncm91bmQ6ICNGRkY2RjY7XG4gIGNvbG9yOiAjOUYzQTM4O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBXYXJuaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLndhcm5pbmcsXG4udWkudWkudGFibGUgdGQud2FybmluZyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwICNDOUJBOUIgaW5zZXQ7XG4gIGJhY2tncm91bmQ6ICNGRkZBRjM7XG4gIGNvbG9yOiAjNTczQTA4O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkudWkudWkudWkudGFibGUgdHIuYWN0aXZlLFxuLnVpLnVpLnRhYmxlIHRkLmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMC44NykgaW5zZXQ7XG4gIGJhY2tncm91bmQ6ICNFMEUwRTA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS50YWJsZSB0ci5kaXNhYmxlZCB0ZCxcbi51aS50YWJsZSB0ciB0ZC5kaXNhYmxlZCxcbi51aS50YWJsZSB0ci5kaXNhYmxlZDpob3Zlcixcbi51aS50YWJsZSB0cjpob3ZlciB0ZC5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGhlYWQsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Zm9vdCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Zm9vdCA+IHRyLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRib2R5LFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRib2R5ID4gdHIsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdHIsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdHIgPiB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGhlYWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGZvb3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Ym9keSA+IHRyLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRmb290ID4gdHIsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdHIge1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwIHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldCAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdHIgPiB0ZCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjI1ZW0gMC43NWVtO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAvKiBEZWZpbml0aW9uIFRhYmxlICovXG4gIC51aS5kZWZpbml0aW9uW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLVxuIFRleHQgQWxpZ25tZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnRhYmxlW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi51aS50YWJsZVtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udWkudGFibGVbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiBWZXJ0aWNhbCBBbGlnbm1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkudGFibGVbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0sXG4udWkudGFibGUgW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi51aS50YWJsZVtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnVpLnRhYmxlW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ29sbGFwc2luZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS50YWJsZSB0aC5jb2xsYXBzaW5nLFxuLnVpLnRhYmxlIHRkLmNvbGxhcHNpbmcge1xuICB3aWR0aDogMXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5maXhlZC50YWJsZSB7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG4udWkuZml4ZWQudGFibGUgdGgsXG4udWkuZml4ZWQudGFibGUgdGQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNlbGVjdGFibGVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkudWkuc2VsZWN0YWJsZS50YWJsZSA+IHRib2R5ID4gdHI6aG92ZXIsXG4udWkudGFibGUgdGJvZHkgdHIgdGQuc2VsZWN0YWJsZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLnVpLnVpLnNlbGVjdGFibGUuaW52ZXJ0ZWQudGFibGUgPiB0Ym9keSA+IHRyOmhvdmVyLFxuLnVpLmludmVydGVkLnRhYmxlIHRib2R5IHRyIHRkLnNlbGVjdGFibGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi8qIFNlbGVjdGFibGUgQ2VsbCBMaW5rICovXG4udWkudGFibGUgdGJvZHkgdHIgdGQuc2VsZWN0YWJsZSB7XG4gIHBhZGRpbmc6IDA7XG59XG4udWkudGFibGUgdGJvZHkgdHIgdGQuc2VsZWN0YWJsZSA+IGE6bm90KC51aSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjllbSAwLjc4NTcxNDI5ZW07XG59XG4udWkudGFibGUgPiB0ciA+IHRkLnNlbGVjdGFibGUsXG4udWkudGFibGUgPiB0Ym9keSA+IHRyID4gdGQuc2VsZWN0YWJsZSxcbi51aS5zZWxlY3RhYmxlLnRhYmxlID4gdGJvZHkgPiB0cixcbi51aS5zZWxlY3RhYmxlLnRhYmxlID4gdHIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4vKiBPdGhlciBTdGF0ZXMgKi9cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLmVycm9yOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUuZXJyb3I6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5lcnJvciB7XG4gIGJhY2tncm91bmQ6ICNmZmU3ZTc7XG4gIGNvbG9yOiAjOTQzNjM0O1xufVxuLnVpLnVpLnNlbGVjdGFibGUudGFibGUgdHIud2FybmluZzpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLndhcm5pbmc6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmZjRlNDtcbiAgY29sb3I6ICM0OTMxMDc7XG59XG4udWkudWkuc2VsZWN0YWJsZS50YWJsZSB0ci5hY3RpdmU6aG92ZXIsXG4udWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS5hY3RpdmU6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLnBvc2l0aXZlOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUucG9zaXRpdmU6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5wb3NpdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmN2ZmZTY7XG4gIGNvbG9yOiAjMjc1YjI4O1xufVxuLnVpLnVpLnNlbGVjdGFibGUudGFibGUgdHIubmVnYXRpdmU6aG92ZXIsXG4udWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS5uZWdhdGl2ZTpob3Zlcixcbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyOmhvdmVyIHRkLm5lZ2F0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZTdlNztcbiAgY29sb3I6ICM5NDM2MzQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNaWRkbGUgKi9cbi51aS5hdHRhY2hlZC50YWJsZSB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IDAgLTFweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDJweCk7XG4gIG1heC13aWR0aDogY2FsYygxMDAlICsgMnB4KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbn1cbi51aS5hdHRhY2hlZCArIC51aS5hdHRhY2hlZC50YWJsZTpub3QoLnRvcCkge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLyogVG9wICovXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLnRhYmxlIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0b3A6IDA7XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDAgMDtcbn1cbi51aS50YWJsZVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLyogQm90dG9tICovXG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLnRhYmxlIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICB0b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgYm94LXNoYWRvdzogbm9uZSwgbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0udGFibGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFN0cmlwZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUYWJsZSBTdHJpcGluZyAqL1xuLnVpLnN0cmlwZWQudGFibGUgPiB0cjpudGgtY2hpbGQoMm4pLFxuLnVpLnN0cmlwZWQudGFibGUgPiB0Ym9keSA+IHRyOm50aC1jaGlsZCgybikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDUwLCAwLjAyKTtcbn1cbi8qIFN0cmlwZXMgKi9cbi51aS5pbnZlcnRlZC5zdHJpcGVkLnRhYmxlID4gdHI6bnRoLWNoaWxkKDJuKSxcbi51aS5pbnZlcnRlZC5zdHJpcGVkLnRhYmxlID4gdGJvZHkgPiB0cjpudGgtY2hpbGQoMm4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbn1cbi8qIEFsbG93IHN0cmlwZWQgYWN0aXZlIGhvdmVyICovXG4udWkuc3RyaXBlZC5zZWxlY3RhYmxlLnNlbGVjdGFibGUuc2VsZWN0YWJsZS50YWJsZSB0Ym9keSB0ci5hY3RpdmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRUZFRkVGO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNpbmdsZSBMaW5lXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnRhYmxlW2NsYXNzKj1cInNpbmdsZSBsaW5lXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJzaW5nbGUgbGluZVwiXSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wcmltYXJ5LnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzIxODVEMDtcbn1cbi51aS5pbnZlcnRlZC5wcmltYXJ5LnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudWkudWkudWkudGFibGUgdHIucHJpbWFyeSxcbi51aS51aS50YWJsZSB0ZC5wcmltYXJ5IHtcbiAgYm94LXNoYWRvdzogMCAwIDAgIzFhNjlhNCBpbnNldDtcbiAgYmFja2dyb3VuZDogI2RkZjRmZjtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLnByaW1hcnk6aG92ZXIsXG4udWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS5wcmltYXJ5OmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICNkM2YxZmY7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuc2Vjb25kYXJ5LnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzFCMUMxRDtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS51aS51aS51aS50YWJsZSB0ci5zZWNvbmRhcnksXG4udWkudWkudGFibGUgdGQuc2Vjb25kYXJ5IHtcbiAgYm94LXNoYWRvdzogMCAwIDAgIzAyMDIwMyBpbnNldDtcbiAgYmFja2dyb3VuZDogI2RkZGRkZDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLnNlY29uZGFyeTpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLnNlY29uZGFyeTpob3Zlcixcbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyOmhvdmVyIHRkLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICNlMmUyZTI7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkucmVkLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgI0RCMjgyODtcbn1cbi51aS5pbnZlcnRlZC5yZWQudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS51aS51aS51aS50YWJsZSB0ci5yZWQsXG4udWkudWkudGFibGUgdGQucmVkIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgI2IyMWUxZSBpbnNldDtcbiAgYmFja2dyb3VuZDogI2ZmZTFkZjtcbiAgY29sb3I6ICNEQjI4Mjg7XG59XG4udWkudWkuc2VsZWN0YWJsZS50YWJsZSB0ci5yZWQ6aG92ZXIsXG4udWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS5yZWQ6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5yZWQge1xuICBiYWNrZ3JvdW5kOiAjZmZkN2Q1O1xuICBjb2xvcjogI0RCMjgyODtcbn1cbi51aS5vcmFuZ2UudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjRjI3MTFDO1xufVxuLnVpLmludmVydGVkLm9yYW5nZS50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjcxMUM7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLm9yYW5nZSxcbi51aS51aS50YWJsZSB0ZC5vcmFuZ2Uge1xuICBib3gtc2hhZG93OiAwIDAgMCAjY2Y1OTBjIGluc2V0O1xuICBiYWNrZ3JvdW5kOiAjZmZlN2QxO1xuICBjb2xvcjogI0YyNzExQztcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLm9yYW5nZTpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLm9yYW5nZTpob3Zlcixcbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyOmhvdmVyIHRkLm9yYW5nZSB7XG4gIGJhY2tncm91bmQ6ICNmYWUxY2M7XG4gIGNvbG9yOiAjRjI3MTFDO1xufVxuLnVpLnllbGxvdy50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICNGQkJEMDg7XG59XG4udWkuaW52ZXJ0ZWQueWVsbG93LnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwODtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudWkudWkudWkudGFibGUgdHIueWVsbG93LFxuLnVpLnVpLnRhYmxlIHRkLnllbGxvdyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwICNjZDk5MDMgaW5zZXQ7XG4gIGJhY2tncm91bmQ6ICNmZmY5ZDI7XG4gIGNvbG9yOiAjQjU4MTA1O1xufVxuLnVpLnVpLnNlbGVjdGFibGUudGFibGUgdHIueWVsbG93OmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUueWVsbG93OmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQueWVsbG93IHtcbiAgYmFja2dyb3VuZDogI2ZiZjVjYztcbiAgY29sb3I6ICNCNTgxMDU7XG59XG4udWkub2xpdmUudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjQjVDQzE4O1xufVxuLnVpLmludmVydGVkLm9saXZlLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I1Q0MxODtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudWkudWkudWkudGFibGUgdHIub2xpdmUsXG4udWkudWkudGFibGUgdGQub2xpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAjOGQ5ZTEzIGluc2V0O1xuICBiYWNrZ3JvdW5kOiAjZjdmYWU0O1xuICBjb2xvcjogIzhBQkMxRTtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLm9saXZlOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUub2xpdmU6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5vbGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmNmZhZGE7XG4gIGNvbG9yOiAjOEFCQzFFO1xufVxuLnVpLmdyZWVuLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzIxQkE0NTtcbn1cbi51aS5pbnZlcnRlZC5ncmVlbi50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLmdyZWVuLFxuLnVpLnVpLnRhYmxlIHRkLmdyZWVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgIzE5OGYzNSBpbnNldDtcbiAgYmFja2dyb3VuZDogI2Q1ZjVkOTtcbiAgY29sb3I6ICMxRUJDMzA7XG59XG4udWkudWkuc2VsZWN0YWJsZS50YWJsZSB0ci5ncmVlbjpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLmdyZWVuOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQuZ3JlZW4ge1xuICBiYWNrZ3JvdW5kOiAjZDJlZWQ1O1xuICBjb2xvcjogIzFFQkMzMDtcbn1cbi51aS50ZWFsLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzAwQjVBRDtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudWkudWkudWkudGFibGUgdHIudGVhbCxcbi51aS51aS50YWJsZSB0ZC50ZWFsIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgIzAwODI3YyBpbnNldDtcbiAgYmFja2dyb3VuZDogI2UyZmZmZjtcbiAgY29sb3I6ICMxMEEzQTM7XG59XG4udWkudWkuc2VsZWN0YWJsZS50YWJsZSB0ci50ZWFsOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUudGVhbDpob3Zlcixcbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyOmhvdmVyIHRkLnRlYWwge1xuICBiYWNrZ3JvdW5kOiAjZDhmZmZmO1xuICBjb2xvcjogIzEwQTNBMztcbn1cbi51aS5ibHVlLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzIxODVEMDtcbn1cbi51aS5pbnZlcnRlZC5ibHVlLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudWkudWkudWkudGFibGUgdHIuYmx1ZSxcbi51aS51aS50YWJsZSB0ZC5ibHVlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgIzFhNjlhNCBpbnNldDtcbiAgYmFja2dyb3VuZDogI2RkZjRmZjtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG4udWkudWkuc2VsZWN0YWJsZS50YWJsZSB0ci5ibHVlOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUuYmx1ZTpob3Zlcixcbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyOmhvdmVyIHRkLmJsdWUge1xuICBiYWNrZ3JvdW5kOiAjZDNmMWZmO1xuICBjb2xvcjogIzIxODVEMDtcbn1cbi51aS52aW9sZXQudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjNjQzNUM5O1xufVxuLnVpLmludmVydGVkLnZpb2xldC50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDM1Qzk7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLnZpb2xldCxcbi51aS51aS50YWJsZSB0ZC52aW9sZXQge1xuICBib3gtc2hhZG93OiAwIDAgMCAjNTAyYWExIGluc2V0O1xuICBiYWNrZ3JvdW5kOiAjZWNlOWZlO1xuICBjb2xvcjogIzY0MzVDOTtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLnZpb2xldDpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLnZpb2xldDpob3Zlcixcbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyOmhvdmVyIHRkLnZpb2xldCB7XG4gIGJhY2tncm91bmQ6ICNlM2RlZmY7XG4gIGNvbG9yOiAjNjQzNUM5O1xufVxuLnVpLnB1cnBsZS50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICNBMzMzQzg7XG59XG4udWkuaW52ZXJ0ZWQucHVycGxlLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EzMzNDODtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudWkudWkudWkudGFibGUgdHIucHVycGxlLFxuLnVpLnVpLnRhYmxlIHRkLnB1cnBsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwICM4MjI5OWYgaW5zZXQ7XG4gIGJhY2tncm91bmQ6ICNmOGUzZmY7XG4gIGNvbG9yOiAjQTMzM0M4O1xufVxuLnVpLnVpLnNlbGVjdGFibGUudGFibGUgdHIucHVycGxlOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUucHVycGxlOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQucHVycGxlIHtcbiAgYmFja2dyb3VuZDogI2Y1ZDlmZjtcbiAgY29sb3I6ICNBMzMzQzg7XG59XG4udWkucGluay50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICNFMDM5OTc7XG59XG4udWkuaW52ZXJ0ZWQucGluay50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTc7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLnBpbmssXG4udWkudWkudGFibGUgdGQucGluayB7XG4gIGJveC1zaGFkb3c6IDAgMCAwICNjNzFmN2UgaW5zZXQ7XG4gIGJhY2tncm91bmQ6ICNmZmU4Zjk7XG4gIGNvbG9yOiAjRTAzOTk3O1xufVxuLnVpLnVpLnNlbGVjdGFibGUudGFibGUgdHIucGluazpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLnBpbms6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5waW5rIHtcbiAgYmFja2dyb3VuZDogI2ZmZGVmNjtcbiAgY29sb3I6ICNFMDM5OTc7XG59XG4udWkuYnJvd24udGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjQTU2NzNGO1xufVxuLnVpLmludmVydGVkLmJyb3duLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0E1NjczRjtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudWkudWkudWkudGFibGUgdHIuYnJvd24sXG4udWkudWkudGFibGUgdGQuYnJvd24ge1xuICBib3gtc2hhZG93OiAwIDAgMCAjODA1MDMxIGluc2V0O1xuICBiYWNrZ3JvdW5kOiAjZjdlNWQyO1xuICBjb2xvcjogI0E1NjczRjtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLmJyb3duOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUuYnJvd246aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5icm93biB7XG4gIGJhY2tncm91bmQ6ICNlZmUwY2Y7XG4gIGNvbG9yOiAjQTU2NzNGO1xufVxuLnVpLmdyZXkudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjNzY3Njc2O1xufVxuLnVpLmludmVydGVkLmdyZXkudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS51aS51aS51aS50YWJsZSB0ci5ncmV5LFxuLnVpLnVpLnRhYmxlIHRkLmdyZXkge1xuICBib3gtc2hhZG93OiAwIDAgMCAjNWQ1ZDVkIGluc2V0O1xuICBiYWNrZ3JvdW5kOiAjRENERERFO1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLmdyZXk6aG92ZXIsXG4udWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS5ncmV5OmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQuZ3JleSB7XG4gIGJhY2tncm91bmQ6ICNjMmM0YzU7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLnVpLmJsYWNrLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzFCMUMxRDtcbn1cbi51aS5pbnZlcnRlZC5ibGFjay50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLmJsYWNrLFxuLnVpLnVpLnRhYmxlIHRkLmJsYWNrIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgIzAyMDIwMyBpbnNldDtcbiAgYmFja2dyb3VuZDogIzU0NTQ1NDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkudWkuc2VsZWN0YWJsZS50YWJsZSB0ci5ibGFjazpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLmJsYWNrOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQuYmxhY2sge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgQ29sdW1uIENvdW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogR3JpZCBCYXNlZCAqL1xuLnVpLm9uZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS50d28uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDUwJTtcbn1cbi51aS50aHJlZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlO1xufVxuLnVpLmZvdXIuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDI1JTtcbn1cbi51aS5maXZlLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAyMCU7XG59XG4udWkuc2l4LmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NyU7XG59XG4udWkuc2V2ZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI5JTtcbn1cbi51aS5laWdodC5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTIuNSU7XG59XG4udWkubmluZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTEuMTExMTExMTElO1xufVxuLnVpLnRlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTAlO1xufVxuLnVpLmVsZXZlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogOS4wOTA5MDkwOSU7XG59XG4udWkudHdlbHZlLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzJTtcbn1cbi51aS50aGlydGVlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogNy42OTIzMDc2OSU7XG59XG4udWkuZm91cnRlZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDcuMTQyODU3MTQlO1xufVxuLnVpLmZpZnRlZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDYuNjY2NjY2NjclO1xufVxuLnVpLnNpeHRlZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDYuMjUlO1xufVxuLyogQ29sdW1uIFdpZHRoICovXG4udWkudGFibGUgdGgub25lLndpZGUsXG4udWkudGFibGUgdGQub25lLndpZGUge1xuICB3aWR0aDogNi4yNSU7XG59XG4udWkudGFibGUgdGgudHdvLndpZGUsXG4udWkudGFibGUgdGQudHdvLndpZGUge1xuICB3aWR0aDogMTIuNSU7XG59XG4udWkudGFibGUgdGgudGhyZWUud2lkZSxcbi51aS50YWJsZSB0ZC50aHJlZS53aWRlIHtcbiAgd2lkdGg6IDE4Ljc1JTtcbn1cbi51aS50YWJsZSB0aC5mb3VyLndpZGUsXG4udWkudGFibGUgdGQuZm91ci53aWRlIHtcbiAgd2lkdGg6IDI1JTtcbn1cbi51aS50YWJsZSB0aC5maXZlLndpZGUsXG4udWkudGFibGUgdGQuZml2ZS53aWRlIHtcbiAgd2lkdGg6IDMxLjI1JTtcbn1cbi51aS50YWJsZSB0aC5zaXgud2lkZSxcbi51aS50YWJsZSB0ZC5zaXgud2lkZSB7XG4gIHdpZHRoOiAzNy41JTtcbn1cbi51aS50YWJsZSB0aC5zZXZlbi53aWRlLFxuLnVpLnRhYmxlIHRkLnNldmVuLndpZGUge1xuICB3aWR0aDogNDMuNzUlO1xufVxuLnVpLnRhYmxlIHRoLmVpZ2h0LndpZGUsXG4udWkudGFibGUgdGQuZWlnaHQud2lkZSB7XG4gIHdpZHRoOiA1MCU7XG59XG4udWkudGFibGUgdGgubmluZS53aWRlLFxuLnVpLnRhYmxlIHRkLm5pbmUud2lkZSB7XG4gIHdpZHRoOiA1Ni4yNSU7XG59XG4udWkudGFibGUgdGgudGVuLndpZGUsXG4udWkudGFibGUgdGQudGVuLndpZGUge1xuICB3aWR0aDogNjIuNSU7XG59XG4udWkudGFibGUgdGguZWxldmVuLndpZGUsXG4udWkudGFibGUgdGQuZWxldmVuLndpZGUge1xuICB3aWR0aDogNjguNzUlO1xufVxuLnVpLnRhYmxlIHRoLnR3ZWx2ZS53aWRlLFxuLnVpLnRhYmxlIHRkLnR3ZWx2ZS53aWRlIHtcbiAgd2lkdGg6IDc1JTtcbn1cbi51aS50YWJsZSB0aC50aGlydGVlbi53aWRlLFxuLnVpLnRhYmxlIHRkLnRoaXJ0ZWVuLndpZGUge1xuICB3aWR0aDogODEuMjUlO1xufVxuLnVpLnRhYmxlIHRoLmZvdXJ0ZWVuLndpZGUsXG4udWkudGFibGUgdGQuZm91cnRlZW4ud2lkZSB7XG4gIHdpZHRoOiA4Ny41JTtcbn1cbi51aS50YWJsZSB0aC5maWZ0ZWVuLndpZGUsXG4udWkudGFibGUgdGQuZmlmdGVlbi53aWRlIHtcbiAgd2lkdGg6IDkzLjc1JTtcbn1cbi51aS50YWJsZSB0aC5zaXh0ZWVuLndpZGUsXG4udWkudGFibGUgdGQuc2l4dGVlbi53aWRlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU29ydGFibGVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc29ydGFibGUudGFibGUgPiB0aGVhZCA+IHRyID4gdGgge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkuc29ydGFibGUudGFibGUgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0ZWQsXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkOmhvdmVyIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4udWkuc29ydGFibGUudGFibGUgPiB0aGVhZCA+IHRyID4gdGg6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgY29udGVudDogJyc7XG4gIGhlaWdodDogMWVtO1xuICB3aWR0aDogYXV0bztcbiAgb3BhY2l0eTogMC44O1xuICBtYXJnaW46IDAgMCAwIDAuNWVtO1xuICBmb250LWZhbWlseTogJ0ljb25zJztcbn1cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5hc2NlbmRpbmc6YWZ0ZXIge1xuICBjb250ZW50OiAnXFxmMGQ4Jztcbn1cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5kZXNjZW5kaW5nOmFmdGVyIHtcbiAgY29udGVudDogJ1xcZjBkNyc7XG59XG4vKiBIb3ZlciAqL1xuLnVpLnNvcnRhYmxlLnRhYmxlIHRoLmRpc2FibGVkOmhvdmVyIHtcbiAgY3Vyc29yOiBhdXRvO1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpO1xufVxuLnVpLnNvcnRhYmxlLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi8qIFNvcnRlZCAqL1xuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZDphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi8qIFNvcnRlZCBIb3ZlciAqL1xuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0ZWQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLnVpLmludmVydGVkLnNvcnRhYmxlLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi51aS5pbnZlcnRlZC5zb3J0YWJsZS50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRleHQgQ29sb3IgKi9cbi51aS5pbnZlcnRlZC50YWJsZSB7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi51aS51aS5pbnZlcnRlZC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aS51aS5pbnZlcnRlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aS51aS5pbnZlcnRlZC50YWJsZSA+IHRmb290ID4gdHIgPiB0aCxcbi51aS51aS5pbnZlcnRlZC50YWJsZSA+IHRyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cbi51aS5pbnZlcnRlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCxcbi51aS5pbnZlcnRlZC50YWJsZSA+IHRyID4gdGQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC50YWJsZSB0ci5kaXNhYmxlZCB0ZCxcbi51aS5pbnZlcnRlZC50YWJsZSB0ciB0ZC5kaXNhYmxlZCxcbi51aS5pbnZlcnRlZC50YWJsZSB0ci5kaXNhYmxlZDpob3ZlciB0ZCxcbi51aS5pbnZlcnRlZC50YWJsZSB0cjpob3ZlciB0ZC5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogcmdiYSgyMjUsIDIyNSwgMjI1LCAwLjMpO1xufVxuLnVpLmludmVydGVkLnRhYmxlIHRyIHRkLmRpc2FibGVkOm5vdChbY2xhc3M9XCJkaXNhYmxlZFwiXSksXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIuZGlzYWJsZWQ6bm90KFtjbGFzcz1cImRpc2FibGVkXCJdKSB0ZCxcbi51aS5pbnZlcnRlZC50YWJsZSB0ci5kaXNhYmxlZCB0ZFtjbGFzc106bm90KC5kaXNhYmxlZCksXG4udWkuaW52ZXJ0ZWQudGFibGUgdHI6aG92ZXIgdGQuZGlzYWJsZWQ6bm90KFtjbGFzcz1cImRpc2FibGVkXCJdKSB7XG4gIGNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuMyk7XG59XG4vKiBEZWZpbml0aW9uICovXG4udWkuaW52ZXJ0ZWQuZGVmaW5pdGlvbi50YWJsZSA+IHRmb290Om5vdCguZnVsbC13aWR0aCkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuLnVpLmludmVydGVkLmRlZmluaXRpb24udGFibGUgPiB0aGVhZDpub3QoLmZ1bGwtd2lkdGgpID4gdHIgPiB0aDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuZGVmaW5pdGlvbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbi51aS5pbnZlcnRlZC5kZWZpbml0aW9uLnRhYmxlID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgQ29sbGFwc2luZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jb2xsYXBzaW5nLnRhYmxlIHtcbiAgd2lkdGg6IGF1dG87XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5iYXNpYy50YWJsZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmJhc2ljLnRhYmxlID4gdGhlYWQsXG4udWkuYmFzaWMudGFibGUgPiB0Zm9vdCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkuYmFzaWMudGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4udWkuYmFzaWMudGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4udWkuYmFzaWMudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4udWkuYmFzaWMudGFibGUgPiB0ciA+IHRoIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuLnVpLmJhc2ljLnRhYmxlID4gdGJvZHkgPiB0ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkuYmFzaWMudGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4udWkuYmFzaWMudGFibGUgPiB0ciA+IHRkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4udWkuYmFzaWMuc3RyaXBlZC50YWJsZSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKDJuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG4vKiBWZXJ5IEJhc2ljICovXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0ciA+IHRoLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0Ym9keSA+IHRyID4gdGgsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGZvb3QgPiB0ciA+IHRoLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRyID4gdGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgcGFkZGluZzogJyc7XG59XG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRmb290ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGJvZHkgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGZvb3QgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGgge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ2VsbGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNlbGxlZC50YWJsZSA+IHRyID4gdGgsXG4udWkuY2VsbGVkLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuLnVpLmNlbGxlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aS5jZWxsZWQudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4udWkuY2VsbGVkLnRhYmxlID4gdHIgPiB0ZCxcbi51aS5jZWxsZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cbi51aS5pbnZlcnRlZC5jZWxsZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4udWkuaW52ZXJ0ZWQuY2VsbGVkLnRhYmxlID4gdHIgPiB0ZCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLnVpLmNlbGxlZC50YWJsZSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4udWkuY2VsbGVkLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbi51aS5jZWxsZWQudGFibGUgPiB0Zm9vdCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4udWkuY2VsbGVkLnRhYmxlID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbi51aS5jZWxsZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgUGFkZGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnBhZGRlZC50YWJsZSA+IHRyID4gdGgsXG4udWkucGFkZGVkLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuLnVpLnBhZGRlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aS5wYWRkZWQudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgcGFkZGluZy1yaWdodDogMWVtO1xufVxuLnVpLnBhZGRlZC50YWJsZSA+IHRyID4gdGgsXG4udWkucGFkZGVkLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuLnVpLnBhZGRlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aS5wYWRkZWQudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4udWkucGFkZGVkLnRhYmxlID4gdHIgPiB0ZCxcbi51aS5wYWRkZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICBwYWRkaW5nOiAxZW0gMWVtO1xufVxuLyogVmVyeSAqL1xuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnRhYmxlID4gdHIgPiB0aCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS50YWJsZSA+IHRmb290ID4gdHIgPiB0aCB7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuNWVtO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnRhYmxlID4gdHIgPiB0ZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIHBhZGRpbmc6IDEuNWVtIDEuNWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb21wYWN0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNvbXBhY3QudGFibGUgPiB0ciA+IHRoLFxuLnVpLmNvbXBhY3QudGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4udWkuY29tcGFjdC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aS5jb21wYWN0LnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjdlbTtcbiAgcGFkZGluZy1yaWdodDogMC43ZW07XG59XG4udWkuY29tcGFjdC50YWJsZSA+IHRyID4gdGQsXG4udWkuY29tcGFjdC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIHBhZGRpbmc6IDAuNWVtIDAuN2VtO1xufVxuLyogVmVyeSAqL1xuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS50YWJsZSA+IHRyID4gdGgsXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0udGFibGUgPiB0Zm9vdCA+IHRyID4gdGgge1xuICBwYWRkaW5nLWxlZnQ6IDAuNmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjZlbTtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0udGFibGUgPiB0ciA+IHRkLFxuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIHBhZGRpbmc6IDAuNGVtIDAuNmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBTbWFsbCAqL1xuLnVpLnNtYWxsLnRhYmxlIHtcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cbi8qIFN0YW5kYXJkICovXG4udWkudGFibGUge1xuICBmb250LXNpemU6IDFlbTtcbn1cbi8qIExhcmdlICovXG4udWkubGFyZ2UudGFibGUge1xuICBmb250LXNpemU6IDEuMWVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVmlld3MgKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEFkXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTMgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIEFkdmVydGlzZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBBZHZlcnRpc2VtZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEFkdmVydGlzZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuYWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAxZW0gMDtcbn1cbi51aS5hZDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogMDtcbn1cbi51aS5hZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xufVxuLnVpLmFkIGlmcmFtZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb21tb25cbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBMZWFkZXJib2FyZCAqL1xuLnVpLmxlYWRlcmJvYXJkLmFkIHtcbiAgd2lkdGg6IDcyOHB4O1xuICBoZWlnaHQ6IDkwcHg7XG59XG4vKiBNZWRpdW0gUmVjdGFuZ2xlICovXG4udWlbY2xhc3MqPVwibWVkaXVtIHJlY3RhbmdsZVwiXS5hZCB7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiAyNTBweDtcbn1cbi8qIExhcmdlIFJlY3RhbmdsZSAqL1xuLnVpW2NsYXNzKj1cImxhcmdlIHJlY3RhbmdsZVwiXS5hZCB7XG4gIHdpZHRoOiAzMzZweDtcbiAgaGVpZ2h0OiAyODBweDtcbn1cbi8qIEhhbGYgUGFnZSAqL1xuLnVpW2NsYXNzKj1cImhhbGYgcGFnZVwiXS5hZCB7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiA2MDBweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3F1YXJlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogU3F1YXJlICovXG4udWkuc3F1YXJlLmFkIHtcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDI1MHB4O1xufVxuLyogU21hbGwgU3F1YXJlICovXG4udWlbY2xhc3MqPVwic21hbGwgc3F1YXJlXCJdLmFkIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDIwMHB4O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlY3RhbmdsZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNtYWxsIFJlY3RhbmdsZSAqL1xuLnVpW2NsYXNzKj1cInNtYWxsIHJlY3RhbmdsZVwiXS5hZCB7XG4gIHdpZHRoOiAxODBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbn1cbi8qIFZlcnRpY2FsIFJlY3RhbmdsZSAqL1xuLnVpW2NsYXNzKj1cInZlcnRpY2FsIHJlY3RhbmdsZVwiXS5hZCB7XG4gIHdpZHRoOiAyNDBweDtcbiAgaGVpZ2h0OiA0MDBweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmJ1dHRvbi5hZCB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiA5MHB4O1xufVxuLnVpW2NsYXNzKj1cInNxdWFyZSBidXR0b25cIl0uYWQge1xuICB3aWR0aDogMTI1cHg7XG4gIGhlaWdodDogMTI1cHg7XG59XG4udWlbY2xhc3MqPVwic21hbGwgYnV0dG9uXCJdLmFkIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDYwcHg7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTa3lzY3JhcGVyc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNreXNjcmFwZXIgKi9cbi51aS5za3lzY3JhcGVyLmFkIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDYwMHB4O1xufVxuLyogV2lkZSBTa3lzY3JhcGVyICovXG4udWlbY2xhc3MqPVwid2lkZSBza3lzY3JhcGVyXCJdLmFkIHtcbiAgd2lkdGg6IDE2MHB4O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCYW5uZXJzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogQmFubmVyICovXG4udWkuYmFubmVyLmFkIHtcbiAgd2lkdGg6IDQ2OHB4O1xuICBoZWlnaHQ6IDYwcHg7XG59XG4vKiBWZXJ0aWNhbCBCYW5uZXIgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbCBiYW5uZXJcIl0uYWQge1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogMjQwcHg7XG59XG4vKiBUb3AgQmFubmVyICovXG4udWlbY2xhc3MqPVwidG9wIGJhbm5lclwiXS5hZCB7XG4gIHdpZHRoOiA5MzBweDtcbiAgaGVpZ2h0OiAxODBweDtcbn1cbi8qIEhhbGYgQmFubmVyICovXG4udWlbY2xhc3MqPVwiaGFsZiBiYW5uZXJcIl0uYWQge1xuICB3aWR0aDogMjM0cHg7XG4gIGhlaWdodDogNjBweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBCb2FyZHNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBMZWFkZXJib2FyZCAqL1xuLnVpW2NsYXNzKj1cImxhcmdlIGxlYWRlcmJvYXJkXCJdLmFkIHtcbiAgd2lkdGg6IDk3MHB4O1xuICBoZWlnaHQ6IDkwcHg7XG59XG4vKiBCaWxsYm9hcmQgKi9cbi51aS5iaWxsYm9hcmQuYWQge1xuICB3aWR0aDogOTcwcHg7XG4gIGhlaWdodDogMjUwcHg7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUGFub3JhbWFcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBQYW5vcmFtYSAqL1xuLnVpLnBhbm9yYW1hLmFkIHtcbiAgd2lkdGg6IDk4MHB4O1xuICBoZWlnaHQ6IDEyMHB4O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBOZXRib2FyZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE5ldGJvYXJkICovXG4udWkubmV0Ym9hcmQuYWQge1xuICB3aWR0aDogNTgwcHg7XG4gIGhlaWdodDogNDAwcHg7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE1vYmlsZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExhcmdlIE1vYmlsZSBCYW5uZXIgKi9cbi51aVtjbGFzcyo9XCJsYXJnZSBtb2JpbGUgYmFubmVyXCJdLmFkIHtcbiAgd2lkdGg6IDMyMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xufVxuLyogTW9iaWxlIExlYWRlcmJvYXJkICovXG4udWlbY2xhc3MqPVwibW9iaWxlIGxlYWRlcmJvYXJkXCJdLmFkIHtcbiAgd2lkdGg6IDMyMHB4O1xuICBoZWlnaHQ6IDUwcHg7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogTW9iaWxlIFNpemVzICovXG4udWkubW9iaWxlLmFkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpLm1vYmlsZS5hZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuY2VudGVyZWQuYWQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnVpLnRlc3QuYWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICM1NDU0NTQ7XG59XG4udWkudGVzdC5hZDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGNvbnRlbnQ6ICdBZCc7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4udWkubW9iaWxlLnRlc3QuYWQ6YWZ0ZXIge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cbi51aS50ZXN0LmFkW2RhdGEtdGV4dF06YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIENhcmRcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIENhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIFZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNoYWRvdyAqL1xuLyogQ2FyZCAqL1xuLyogQ2FyZCBHcm91cCAqL1xuLyogQ29uc2VjdXRpdmUgQ2FyZHMgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEltYWdlICovXG4vKiBDb250ZW50ICovXG4vKiBIZWFkZXIgKi9cbi8qIE1ldGFkYXRhICovXG4vKiBJY29ucyAqL1xuLyogTGlua3MgKi9cbi8qIERlc2NyaXB0aW9uICovXG4vKiBDb250ZW50IEltYWdlICovXG4vKiBBdmF0YXIgSW1hZ2UgKi9cbi8qIFBhcmFncmFwaCAqL1xuLyogRGltbWVyICovXG4vKiBBZGRpdGlvbmFsIENvbnRlbnQgKi9cbi8qIEV4dHJhIExpbmtzICovXG4vKiBCdXR0b25zICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExpbmsgKi9cbi8qIEhvcml6b250YWwgKi9cbi8qIFJhaXNlZCAqL1xuLyogQ2FyZCBDb3VudCAqL1xuLyogU3RhY2thYmxlICovXG4vKiBTaXplcyAqL1xuLyogQ29sb3JlZCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIENhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIFZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNoYWRvdyAqL1xuLyogQ2FyZCAqL1xuLyogQ2FyZCBHcm91cCAqL1xuLyogQ29uc2VjdXRpdmUgQ2FyZHMgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEltYWdlICovXG4vKiBDb250ZW50ICovXG4vKiBIZWFkZXIgKi9cbi8qIE1ldGFkYXRhICovXG4vKiBJY29ucyAqL1xuLyogTGlua3MgKi9cbi8qIERlc2NyaXB0aW9uICovXG4vKiBDb250ZW50IEltYWdlICovXG4vKiBBdmF0YXIgSW1hZ2UgKi9cbi8qIFBhcmFncmFwaCAqL1xuLyogRGltbWVyICovXG4vKiBBZGRpdGlvbmFsIENvbnRlbnQgKi9cbi8qIEV4dHJhIExpbmtzICovXG4vKiBCdXR0b25zICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExpbmsgKi9cbi8qIEhvcml6b250YWwgKi9cbi8qIFJhaXNlZCAqL1xuLyogQ2FyZCBDb3VudCAqL1xuLyogU3RhY2thYmxlICovXG4vKiBTaXplcyAqL1xuLyogQ29sb3JlZCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGFuZGFyZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIENhcmRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAyOTBweDtcbiAgbWluLWhlaWdodDogMDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCAjRDRENEQ1LCAwIDAgMCAxcHggI0Q0RDRENTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGVhc2U7XG4gIHotaW5kZXg6ICcnO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4udWkuY2FyZCB7XG4gIG1hcmdpbjogMWVtIDA7XG59XG4udWkuY2FyZHMgPiAuY2FyZCBhLFxuLnVpLmNhcmQgYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi51aS5jYXJkOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5jYXJkOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgQ2FyZHNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2FyZHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IC0wLjg3NWVtIC0wLjVlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnVpLmNhcmRzID4gLmNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDAuODc1ZW0gMC41ZW07XG4gIGZsb2F0OiBub25lO1xufVxuLyogQ2xlYXJpbmcgKi9cbi51aS5jYXJkczphZnRlcixcbi51aS5jYXJkOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogQ29uc2VjdXRpdmUgQ2FyZCBHcm91cHMgUHJlc2VydmUgUm93IFNwYWNpbmcgKi9cbi51aS5jYXJkcyB+IC51aS5jYXJkcyB7XG4gIG1hcmdpbi10b3A6IDAuODc1ZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gIFJvdW5kZWQgRWRnZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2FyZHMgPiAuY2FyZCA+IDpmaXJzdC1jaGlsZCxcbi51aS5jYXJkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDAgMCAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wOiBub25lICFpbXBvcnRhbnQ7XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IDpsYXN0LWNoaWxkLFxuLnVpLmNhcmQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbn1cbi51aS5jYXJkcyA+IC5jYXJkID4gOm9ubHktY2hpbGQsXG4udWkuY2FyZCA+IDpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbWFnZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZSxcbi51aS5jYXJkID4gLmltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMCAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZSA+IGltZyxcbi51aS5jYXJkID4gLmltYWdlID4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZTpub3QoLnVpKSA+IGltZyxcbi51aS5jYXJkID4gLmltYWdlOm5vdCgudWkpID4gaW1nIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCxcbi51aS5jYXJkID4gLmNvbnRlbnQge1xuICBmbGV4LWdyb3c6IDE7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxZW0gMWVtO1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LXNpemU6IDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQ6YWZ0ZXIsXG4udWkuY2FyZCA+IC5jb250ZW50OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5oZWFkZXIsXG4udWkuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICcnO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cbi8qIERlZmF1bHQgSGVhZGVyIFNpemUgKi9cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyOm5vdCgudWkpLFxuLnVpLmNhcmQgPiAuY29udGVudCA+IC5oZWFkZXI6bm90KC51aSkge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG4gIG1hcmdpbi10b3A6IC0wLjIxNDI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLm1ldGEgKyAuZGVzY3JpcHRpb24sXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlciArIC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAubWV0YSArIC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyICsgLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS1cbiBGbG9hdGVkIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jYXJkcyA+IC5jYXJkIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0sXG4udWkuY2FyZCBbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4udWkuY2FyZHMgPiAuY2FyZCBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSxcbi51aS5jYXJkIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXSxcbi51aS5jYXJkIFtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLFxuLnVpLmNhcmQgW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0sXG4udWkuY2FyZCBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICBDb250ZW50IEltYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNhcmRzID4gLmNhcmQgLmNvbnRlbnQgaW1nLFxuLnVpLmNhcmQgLmNvbnRlbnQgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJyc7XG59XG4udWkuY2FyZHMgPiAuY2FyZCBpbWcuYXZhdGFyLFxuLnVpLmNhcmRzID4gLmNhcmQgLmF2YXRhciBpbWcsXG4udWkuY2FyZCBpbWcuYXZhdGFyLFxuLnVpLmNhcmQgLmF2YXRhciBpbWcge1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IDJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLmRlc2NyaXB0aW9uLFxuLnVpLmNhcmQgPiAuY29udGVudCA+IC5kZXNjcmlwdGlvbiB7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjY4KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IHAsXG4udWkuY2FyZCA+IC5jb250ZW50IHAge1xuICBtYXJnaW46IDAgMCAwLjVlbTtcbn1cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgcDpsYXN0LWNoaWxkLFxuLnVpLmNhcmQgPiAuY29udGVudCBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWV0YVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jYXJkcyA+IC5jYXJkIC5tZXRhLFxuLnVpLmNhcmQgLm1ldGEge1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi51aS5jYXJkcyA+IC5jYXJkIC5tZXRhICosXG4udWkuY2FyZCAubWV0YSAqIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjNlbTtcbn1cbi51aS5jYXJkcyA+IC5jYXJkIC5tZXRhIDpsYXN0LWNoaWxkLFxuLnVpLmNhcmQgLm1ldGEgOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4udWkuY2FyZHMgPiAuY2FyZCAubWV0YSBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSxcbi51aS5jYXJkIC5tZXRhIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMC4zZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEdlbmVyaWMgKi9cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKSxcbi51aS5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKSB7XG4gIGNvbG9yOiAnJztcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCBhOm5vdCgudWkpOmhvdmVyLFxuLnVpLmNhcmQgPiAuY29udGVudCBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6ICcnO1xufVxuLyogSGVhZGVyICovXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gYS5oZWFkZXIsXG4udWkuY2FyZCA+IC5jb250ZW50ID4gYS5oZWFkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgPiBhLmhlYWRlcjpob3Zlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiBhLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuLyogTWV0YSAqL1xuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEgPiBhOm5vdCgudWkpLFxuLnVpLmNhcmQgLm1ldGEgPiBhOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi51aS5jYXJkcyA+IC5jYXJkIC5tZXRhID4gYTpub3QoLnVpKTpob3Zlcixcbi51aS5jYXJkIC5tZXRhID4gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCdXR0b25zXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNhcmRzID4gLmNhcmQgPiAuYnV0dG9ucyxcbi51aS5jYXJkID4gLmJ1dHRvbnMsXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5idXR0b24sXG4udWkuY2FyZCA+IC5idXR0b24ge1xuICBtYXJnaW46IDAgLTFweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDJweCk7XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IC5idXR0b25zOmxhc3QtY2hpbGQsXG4udWkuY2FyZCA+IC5idXR0b25zOmxhc3QtY2hpbGQsXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5idXR0b246bGFzdC1jaGlsZCxcbi51aS5jYXJkID4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpbW1lclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jYXJkcyA+IC5jYXJkIC5kaW1tZXIsXG4udWkuY2FyZCAuZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJyc7XG4gIHotaW5kZXg6IDEwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBMYWJlbHNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tU3Rhci0tLS0tICovXG4vKiBJY29uICovXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IC5zdGFyLmljb24sXG4udWkuY2FyZCA+IC5jb250ZW50IC5zdGFyLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbn1cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgLnN0YXIuaWNvbjpob3Zlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgLnN0YXIuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjRkZCNzBBO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAuYWN0aXZlLnN0YXIuaWNvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgLmFjdGl2ZS5zdGFyLmljb24ge1xuICBjb2xvcjogI0ZGRTYyMztcbn1cbi8qLS0tLS1MaWtlLS0tLS0gKi9cbi8qIEljb24gKi9cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgLmxpa2UuaWNvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgLmxpa2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMC43NTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAubGlrZS5pY29uOmhvdmVyLFxuLnVpLmNhcmQgPiAuY29udGVudCAubGlrZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNGRjI3MzM7XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IC5hY3RpdmUubGlrZS5pY29uLFxuLnVpLmNhcmQgPiAuY29udGVudCAuYWN0aXZlLmxpa2UuaWNvbiB7XG4gIGNvbG9yOiAjRkYyNzMzO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tXG4gIEV4dHJhIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jYXJkcyA+IC5jYXJkID4gLmV4dHJhLFxuLnVpLmNhcmQgPiAuZXh0cmEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgZmxleC1ncm93OiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwIDA7XG4gIHBhZGRpbmc6IDAuNzVlbSAxZW07XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKSxcbi51aS5jYXJkID4gLmV4dHJhIGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKTpob3Zlcixcbi51aS5jYXJkID4gLmV4dHJhIGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogIzFlNzBiZjtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEhvcml6b250YWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5ob3Jpem9udGFsLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZC5ob3Jpem9udGFsIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtaW4td2lkdGg6IDQwMHB4O1xuICB3aWR0aDogNDAwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi51aS5ob3Jpem9udGFsLmNhcmRzID4gLmNhcmQgPiAuaW1hZ2UsXG4udWkuY2FyZC5ob3Jpem9udGFsID4gLmltYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwIDAgMC4yODU3MTQyOXJlbTtcbiAgd2lkdGg6IDE1MHB4O1xufVxuLnVpLmhvcml6b250YWwuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZSA+IGltZyxcbi51aS5jYXJkLmhvcml6b250YWwgPiAuaW1hZ2UgPiBpbWcge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMCAwIDAuMjg1NzE0MjlyZW07XG59XG4udWkuaG9yaXpvbnRhbC5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQsXG4udWkuaG9yaXpvbnRhbC5jYXJkID4gLmNvbnRlbnQge1xuICBmbGV4LWJhc2lzOiAxcHg7XG59XG4udWkuaG9yaXpvbnRhbC5jYXJkcyA+IC5jYXJkID4gLmV4dHJhLFxuLnVpLmhvcml6b250YWwuY2FyZCA+IC5leHRyYSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBSYWlzZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5yYWlzZWQuY2FyZHMgPiAuY2FyZCxcbi51aS5yYWlzZWQuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwIDJweCAxMHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5yYWlzZWQuY2FyZHMgYS5jYXJkOmhvdmVyLFxuLnVpLmxpbmsuY2FyZHMgLnJhaXNlZC5jYXJkOmhvdmVyLFxuYS51aS5yYWlzZWQuY2FyZDpob3Zlcixcbi51aS5saW5rLnJhaXNlZC5jYXJkOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNENEQ0RDUsIDAgMnB4IDRweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSksIDAgMnB4IDEwcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMjUpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ2VudGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jZW50ZXJlZC5jYXJkcyB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnVpLmNlbnRlcmVkLmNhcmQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmx1aWQuY2FyZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDk5OTlweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBMaW5rXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2FyZHMgYS5jYXJkLFxuLnVpLmxpbmsuY2FyZHMgLmNhcmQsXG5hLnVpLmNhcmQsXG4udWkubGluay5jYXJkIHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuLnVpLmNhcmRzIGEuY2FyZDpob3Zlcixcbi51aS5saW5rLmNhcmRzIC5jYXJkOm5vdCguaWNvbik6aG92ZXIsXG5hLnVpLmNhcmQ6aG92ZXIsXG4udWkubGluay5jYXJkOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiA1O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICNCQ0JEQkQsIDAgMCAwIDFweCAjRDRENEQ1O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wcmltYXJ5LmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAucHJpbWFyeS5jYXJkLFxuLnVpLnByaW1hcnkuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzIxODVEMCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5wcmltYXJ5LmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAucHJpbWFyeS5jYXJkOmhvdmVyLFxuLnVpLnByaW1hcnkuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzE2NzhjMiwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5wcmltYXJ5LmNhcmRzID4gLmNhcmQsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAucHJpbWFyeS5jYXJkLFxuLnVpLmludmVydGVkLnByaW1hcnkuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjNTRDOEZGLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5wcmltYXJ5LmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAucHJpbWFyeS5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLnByaW1hcnkuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjMjFiOGZmLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5zZWNvbmRhcnkuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5zZWNvbmRhcnkuY2FyZCxcbi51aS5zZWNvbmRhcnkuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzFCMUMxRCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5zZWNvbmRhcnkuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5zZWNvbmRhcnkuY2FyZDpob3Zlcixcbi51aS5zZWNvbmRhcnkuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzI3MjkyYSwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuY2FyZHMgPiAuY2FyZCxcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5zZWNvbmRhcnkuY2FyZCxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjNTQ1NDU0LCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5zZWNvbmRhcnkuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjNmU2ZTZlLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5yZWQuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5yZWQuY2FyZCxcbi51aS5yZWQuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI0RCMjgyOCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5yZWQuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5yZWQuY2FyZDpob3Zlcixcbi51aS5yZWQuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI2QwMTkxOSwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5yZWQuY2FyZHMgPiAuY2FyZCxcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5yZWQuY2FyZCxcbi51aS5pbnZlcnRlZC5yZWQuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjRkY2OTVFLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5yZWQuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5yZWQuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjZmYzOTJiLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5vcmFuZ2UuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5vcmFuZ2UuY2FyZCxcbi51aS5vcmFuZ2UuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI0YyNzExQywgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5vcmFuZ2UuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5vcmFuZ2UuY2FyZDpob3Zlcixcbi51aS5vcmFuZ2UuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI2YyNjIwMiwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5vcmFuZ2UuY2FyZHMgPiAuY2FyZCxcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5vcmFuZ2UuY2FyZCxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjRkY4NTFCLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5vcmFuZ2UuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5vcmFuZ2UuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjZTc2YjAwLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS55ZWxsb3cuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC55ZWxsb3cuY2FyZCxcbi51aS55ZWxsb3cuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI0ZCQkQwOCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS55ZWxsb3cuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC55ZWxsb3cuY2FyZDpob3Zlcixcbi51aS55ZWxsb3cuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI2VhYWUwMCwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC55ZWxsb3cuY2FyZHMgPiAuY2FyZCxcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC55ZWxsb3cuY2FyZCxcbi51aS5pbnZlcnRlZC55ZWxsb3cuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjRkZFMjFGLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC55ZWxsb3cuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC55ZWxsb3cuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC55ZWxsb3cuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjZWJjZDAwLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5vbGl2ZS5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLm9saXZlLmNhcmQsXG4udWkub2xpdmUuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI0I1Q0MxOCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5vbGl2ZS5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmNhcmRzID4gLm9saXZlLmNhcmQ6aG92ZXIsXG4udWkub2xpdmUuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI2E3YmQwZCwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5vbGl2ZS5jYXJkcyA+IC5jYXJkLFxuLnVpLmludmVydGVkLmNhcmRzID4gLm9saXZlLmNhcmQsXG4udWkuaW52ZXJ0ZWQub2xpdmUuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjRDlFNzc4LCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5vbGl2ZS5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLmNhcmRzID4gLm9saXZlLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQub2xpdmUuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjZDJlNzQ1LCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5ncmVlbi5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLmdyZWVuLmNhcmQsXG4udWkuZ3JlZW4uY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzIxQkE0NSwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5ncmVlbi5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmNhcmRzID4gLmdyZWVuLmNhcmQ6aG92ZXIsXG4udWkuZ3JlZW4uY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzE2YWIzOSwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5ncmVlbi5jYXJkcyA+IC5jYXJkLFxuLnVpLmludmVydGVkLmNhcmRzID4gLmdyZWVuLmNhcmQsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjMkVDQzQwLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5ncmVlbi5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLmNhcmRzID4gLmdyZWVuLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjMWVhOTJlLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS50ZWFsLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAudGVhbC5jYXJkLFxuLnVpLnRlYWwuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzAwQjVBRCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS50ZWFsLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAudGVhbC5jYXJkOmhvdmVyLFxuLnVpLnRlYWwuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzAwOWM5NSwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmNhcmRzID4gLmNhcmQsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAudGVhbC5jYXJkLFxuLnVpLmludmVydGVkLnRlYWwuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjNkRGRkZGLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAudGVhbC5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLnRlYWwuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjM2FmZmZmLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5ibHVlLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAuYmx1ZS5jYXJkLFxuLnVpLmJsdWUuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzIxODVEMCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5ibHVlLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAuYmx1ZS5jYXJkOmhvdmVyLFxuLnVpLmJsdWUuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzE2NzhjMiwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5ibHVlLmNhcmRzID4gLmNhcmQsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuYmx1ZS5jYXJkLFxuLnVpLmludmVydGVkLmJsdWUuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjNTRDOEZGLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5ibHVlLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuYmx1ZS5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLmJsdWUuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjMjFiOGZmLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS52aW9sZXQuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC52aW9sZXQuY2FyZCxcbi51aS52aW9sZXQuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzY0MzVDOSwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS52aW9sZXQuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC52aW9sZXQuY2FyZDpob3Zlcixcbi51aS52aW9sZXQuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzU4MjliYiwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC52aW9sZXQuY2FyZHMgPiAuY2FyZCxcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC52aW9sZXQuY2FyZCxcbi51aS5pbnZlcnRlZC52aW9sZXQuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjQTI5MUZCLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC52aW9sZXQuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC52aW9sZXQuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC52aW9sZXQuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjNzQ1YWZmLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5wdXJwbGUuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5wdXJwbGUuY2FyZCxcbi51aS5wdXJwbGUuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI0EzMzNDOCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5wdXJwbGUuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5wdXJwbGUuY2FyZDpob3Zlcixcbi51aS5wdXJwbGUuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzk2MjdiYSwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuY2FyZHMgPiAuY2FyZCxcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5wdXJwbGUuY2FyZCxcbi51aS5pbnZlcnRlZC5wdXJwbGUuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjREM3M0ZGLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5wdXJwbGUuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5wdXJwbGUuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjY2Y0MGZmLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5waW5rLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAucGluay5jYXJkLFxuLnVpLnBpbmsuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI0UwMzk5NywgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5waW5rLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAucGluay5jYXJkOmhvdmVyLFxuLnVpLnBpbmsuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI2U2MWE4ZCwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5waW5rLmNhcmRzID4gLmNhcmQsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAucGluay5jYXJkLFxuLnVpLmludmVydGVkLnBpbmsuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjRkY4RURGLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5waW5rLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAucGluay5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLnBpbmsuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjZmY1YmQxLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5icm93bi5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLmJyb3duLmNhcmQsXG4udWkuYnJvd24uY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgI0E1NjczRiwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5icm93bi5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmNhcmRzID4gLmJyb3duLmNhcmQ6aG92ZXIsXG4udWkuYnJvd24uY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzk3NWIzMywgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5icm93bi5jYXJkcyA+IC5jYXJkLFxuLnVpLmludmVydGVkLmNhcmRzID4gLmJyb3duLmNhcmQsXG4udWkuaW52ZXJ0ZWQuYnJvd24uY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjRDY3QzFDLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5icm93bi5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLmNhcmRzID4gLmJyb3duLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYnJvd24uY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjYjA2MjBmLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5ncmV5LmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAuZ3JleS5jYXJkLFxuLnVpLmdyZXkuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzc2NzY3NiwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5ncmV5LmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAuZ3JleS5jYXJkOmhvdmVyLFxuLnVpLmdyZXkuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzgzODM4MywgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5ncmV5LmNhcmRzID4gLmNhcmQsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuZ3JleS5jYXJkLFxuLnVpLmludmVydGVkLmdyZXkuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjRENERERFLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5ncmV5LmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuZ3JleS5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjYzJjNGM1LCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5ibGFjay5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLmJsYWNrLmNhcmQsXG4udWkuYmxhY2suY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzFCMUMxRCwgMCAxcHggM3B4IDAgI0Q0RDRENTtcbn1cbi51aS5ibGFjay5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmNhcmRzID4gLmJsYWNrLmNhcmQ6aG92ZXIsXG4udWkuYmxhY2suY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRDRENEQ1LCAwIDJweCAwIDAgIzI3MjkyYSwgMCAxcHggM3B4IDAgI0JDQkRCRDtcbn1cbi51aS5pbnZlcnRlZC5ibGFjay5jYXJkcyA+IC5jYXJkLFxuLnVpLmludmVydGVkLmNhcmRzID4gLmJsYWNrLmNhcmQsXG4udWkuaW52ZXJ0ZWQuYmxhY2suY2FyZCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjNTQ1NDU0LCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi51aS5pbnZlcnRlZC5ibGFjay5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLmNhcmRzID4gLmJsYWNrLmNhcmQ6aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmxhY2suY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMnB4IDAgMCAjMDAwMDAwLCAwIDAgMCAxcHggIzU1NTU1NTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIENhcmQgQ291bnRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkub25lLmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi51aS5vbmUuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnR3by5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xZW07XG59XG4udWkudHdvLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogY2FsYyg1MCUgLSAyZW0pO1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cbi51aS50aHJlZS5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xZW07XG59XG4udWkudGhyZWUuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMzMzMzJSAtIDJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuLnVpLmZvdXIuY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTAuNzVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC43NWVtO1xufVxuLnVpLmZvdXIuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBjYWxjKDI1JSAtIDEuNWVtKTtcbiAgbWFyZ2luLWxlZnQ6IDAuNzVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1ZW07XG59XG4udWkuZml2ZS5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC43NWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjc1ZW07XG59XG4udWkuZml2ZS5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IGNhbGMoMjAlIC0gMS41ZW0pO1xuICBtYXJnaW4tbGVmdDogMC43NWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTtcbn1cbi51aS5zaXguY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTAuNzVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC43NWVtO1xufVxuLnVpLnNpeC5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NjY2NjY0JSAtIDEuNWVtKTtcbiAgbWFyZ2luLWxlZnQ6IDAuNzVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1ZW07XG59XG4udWkuc2V2ZW4uY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVlbTtcbn1cbi51aS5zZXZlbi5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IGNhbGMoMTQuMjg1NzE0Mjg1NzE0Mjg1JSAtIDFlbSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbn1cbi51aS5laWdodC5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC41ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNWVtO1xufVxuLnVpLmVpZ2h0LmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDFlbSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgZm9udC1zaXplOiAxMXB4O1xufVxuLnVpLm5pbmUuY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVlbTtcbn1cbi51aS5uaW5lLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogY2FsYygxMS4xMTExMTExMTExMTExMSUgLSAxZW0pO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cbi51aS50ZW4uY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVlbTtcbn1cbi51aS50ZW4uY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBjYWxjKDEwJSAtIDFlbSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRG91Ymxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1vYmlsZSBPbmx5ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS50d28uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAudWkudHdvLmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS5mb3VyLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cbiAgLnVpLmZvdXIuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS5maXZlLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cbiAgLnVpLmZpdmUuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS5zaXguZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuICAudWkuc2V2ZW4uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuICAudWkuc2V2ZW4uZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMzMzMzMlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS5laWdodC5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICB9XG4gIC51aS5laWdodC5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzMzMzMyUgLSAyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cbiAgLnVpLm5pbmUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuICAudWkubmluZS5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzMzMzMyUgLSAyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cbiAgLnVpLnRlbi5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICB9XG4gIC51aS50ZW4uZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMzMzMzMlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG59XG4vKiBUYWJsZXQgT25seSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC51aS50d28uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAudWkudHdvLmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS5mb3VyLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cbiAgLnVpLmZvdXIuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS5maXZlLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cbiAgLnVpLmZpdmUuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMzMzMzMlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS5zaXguZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMzMzMzJSAtIDJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMzMzMzMlIC0gMmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC51aS5laWdodC5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC43NWVtO1xuICB9XG4gIC51aS5laWdodC5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjVlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNzVlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTtcbiAgfVxuICAudWkubmluZS5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC43NWVtO1xuICB9XG4gIC51aS5uaW5lLmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuNWVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogMC43NWVtO1xuICB9XG4gIC51aS50ZW4uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcbiAgfVxuICAudWkudGVuLmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuNWVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogMC43NWVtO1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudWkuc3RhY2thYmxlLmNhcmRzIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5zdGFja2FibGUuY2FyZHMgLmNhcmQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudWkuc3RhY2thYmxlLmNhcmRzID4gLmNhcmQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAxZW0gMWVtO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMmVtKSAhaW1wb3J0YW50O1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNhcmRzID4gLmNhcmQge1xuICBmb250LXNpemU6IDFlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQsXG4udWkuaW52ZXJ0ZWQuY2FyZCB7XG4gIGJhY2tncm91bmQ6ICMxQjFDMUQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwICM1NTU1NTUsIDAgMCAwIDFweCAjNTU1NTU1O1xufVxuLyogQ29udGVudCAqL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCxcbi51aS5pbnZlcnRlZC5jYXJkID4gLmNvbnRlbnQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbn1cbi8qIEhlYWRlciAqL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5oZWFkZXIsXG4udWkuaW52ZXJ0ZWQuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4vKiBEZXNjcmlwdGlvbiAqL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5kZXNjcmlwdGlvbixcbi51aS5pbnZlcnRlZC5jYXJkID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuLyogTWV0YSAqL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgLm1ldGEsXG4udWkuaW52ZXJ0ZWQuY2FyZCAubWV0YSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuY2FyZCAubWV0YSA+IGE6bm90KC51aSksXG4udWkuaW52ZXJ0ZWQuY2FyZCAubWV0YSA+IGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgLm1ldGEgPiBhOm5vdCgudWkpOmhvdmVyLFxuLnVpLmludmVydGVkLmNhcmQgLm1ldGEgPiBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4vKiBFeHRyYSAqL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEsXG4udWkuaW52ZXJ0ZWQuY2FyZCA+IC5leHRyYSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuY2FyZCA+IC5leHRyYSBhOm5vdCgudWkpLFxuLnVpLmludmVydGVkLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuY2FyZCA+IC5leHRyYSBhOm5vdCgudWkpOmhvdmVyLFxuLnVpLmludmVydGVkLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuLyogTGluayBjYXJkKHMpICovXG4udWkuaW52ZXJ0ZWQuY2FyZHMgYS5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLmxpbmsuY2FyZHMgLmNhcmQ6bm90KC5pY29uKTpob3ZlcixcbmEuaW52ZXJ0ZWQudWkuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5saW5rLmNhcmQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBDb21tZW50XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbW1lbnRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQ29tbWVudCAqL1xuLyogTmVzdGVkIENvbW1lbnQgKi9cbi8qIEF2YXRhciAqL1xuLyogQ29udGVudCAqL1xuLyogQXV0aG9yICovXG4vKiBNZXRhZGF0YSAqL1xuLyogVGV4dCAqL1xuLyogQWN0aW9ucyAqL1xuLyogUmVwbHkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhyZWFkZWQgKi9cbi8qIE1pbmltYWwgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29tbWVudHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBDb21tZW50ICovXG4vKiBOZXN0ZWQgQ29tbWVudCAqL1xuLyogQXZhdGFyICovXG4vKiBDb250ZW50ICovXG4vKiBBdXRob3IgKi9cbi8qIE1ldGFkYXRhICovXG4vKiBUZXh0ICovXG4vKiBBY3Rpb25zICovXG4vKiBSZXBseSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaHJlYWRlZCAqL1xuLyogTWluaW1hbCAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YW5kYXJkXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNvbW1lbnRzIHtcbiAgbWFyZ2luOiAxLjVlbSAwO1xuICBtYXgtd2lkdGg6IDY1MHB4O1xufVxuLnVpLmNvbW1lbnRzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5jb21tZW50czpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29tbWVudFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jb21tZW50cyAuY29tbWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwLjVlbSAwIDA7XG4gIHBhZGRpbmc6IDAuNWVtIDAgMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuLnVpLmNvbW1lbnRzIC5jb21tZW50OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgTmVzdGVkIENvbW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNvbW1lbnRzIC5jb21tZW50ID4gLmNvbW1lbnRzIHtcbiAgbWFyZ2luOiAwIDAgMC41ZW0gMC41ZW07XG4gIHBhZGRpbmc6IDFlbSAwIDFlbSAxZW07XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgPiAuY29tbWVudHM6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgPiAuY29tbWVudHMgLmNvbW1lbnQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEF2YXRhclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jb21tZW50cyAuY29tbWVudCAuYXZhdGFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwLjJlbSAwIDA7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgaW1nLmF2YXRhcixcbi51aS5jb21tZW50cyAuY29tbWVudCAuYXZhdGFyIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jb21tZW50cyAuY29tbWVudCA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKiBJZiB0aGVyZSBpcyBhbiBhdmF0YXIgbW92ZSBjb250ZW50IG92ZXIgKi9cbi51aS5jb21tZW50cyAuY29tbWVudCA+IC5hdmF0YXIgfiAuY29udGVudCB7XG4gIG1hcmdpbi1sZWZ0OiAzLjVlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQXV0aG9yXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hdXRob3Ige1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnVpLmNvbW1lbnRzIC5jb21tZW50IGEuYXV0aG9yIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnVpLmNvbW1lbnRzIC5jb21tZW50IGEuYXV0aG9yOmhvdmVyIHtcbiAgY29sb3I6ICMxZTcwYmY7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE1ldGFkYXRhXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5tZXRhZGF0YSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmb250LXNpemU6IDAuODc1ZW07XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgLm1ldGFkYXRhID4gKiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDAuNWVtIDAgMDtcbn1cbi51aS5jb21tZW50cyAuY29tbWVudCAubWV0YWRhdGEgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29tbWVudCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNvbW1lbnRzIC5jb21tZW50IC50ZXh0IHtcbiAgbWFyZ2luOiAwLjI1ZW0gMCAwLjVlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFVzZXIgQWN0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cbi51aS5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyBhIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCAwLjc1ZW0gMCAwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGE6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi51aS5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyBhLmFjdGl2ZSxcbi51aS5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyBhOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFJlcGx5IEZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuY29tbWVudHMgPiAucmVwbHkuZm9ybSB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cbi51aS5jb21tZW50cyAuY29tbWVudCAucmVwbHkuZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG4udWkuY29tbWVudHMgLnJlcGx5LmZvcm0gdGV4dGFyZWEge1xuICBmb250LXNpemU6IDFlbTtcbiAgaGVpZ2h0OiAxMmVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmNvbGxhcHNlZC5jb21tZW50cyxcbi51aS5jb21tZW50cyAuY29sbGFwc2VkLmNvbW1lbnRzLFxuLnVpLmNvbW1lbnRzIC5jb2xsYXBzZWQuY29tbWVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUaHJlYWRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS50aHJlYWRlZC5jb21tZW50cyAuY29tbWVudCA+IC5jb21tZW50cyB7XG4gIG1hcmdpbjogLTEuNWVtIDAgLTFlbSAxLjI1ZW07XG4gIHBhZGRpbmc6IDNlbSAwIDJlbSAyLjI1ZW07XG4gIGJveC1zaGFkb3c6IC0xcHggMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIE1pbmltYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubWluaW1hbC5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG4udWkubWluaW1hbC5jb21tZW50cyAuY29tbWVudCA+IC5jb250ZW50OmhvdmVyID4gLmFjdGlvbnMge1xuICBvcGFjaXR5OiAxO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubWluaS5jb21tZW50cyB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuLnVpLnNtYWxsLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuLnVpLmJpZy5jb21tZW50cyB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi51aS5odWdlLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLnVpLm1hc3NpdmUuY29tbWVudHMge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5jb21tZW50cyAuY29tbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG59XG4udWkuaW52ZXJ0ZWQuY29tbWVudHMgLmNvbW1lbnQgLmF1dGhvcixcbi51aS5pbnZlcnRlZC5jb21tZW50cyAuY29tbWVudCAudGV4dCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQuY29tbWVudHMgLmNvbW1lbnQgLm1ldGFkYXRhLFxuLnVpLmludmVydGVkLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVpLmludmVydGVkLmNvbW1lbnRzIC5jb21tZW50IGEuYXV0aG9yOmhvdmVyLFxuLnVpLmludmVydGVkLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGEuYWN0aXZlLFxuLnVpLmludmVydGVkLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGE6aG92ZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi51aS5pbnZlcnRlZC50aHJlYWRlZC5jb21tZW50cyAuY29tbWVudCA+IC5jb21tZW50cyB7XG4gIGJveC1zaGFkb3c6IC0xcHggMCAwICM1NTU1NTU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEZlZWRcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEZlZWRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmVlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRXZlbnQgKi9cbi8qIEV2ZW50IExhYmVsICovXG4vKiBJY29uIExhYmVsICovXG4vKiBJbWFnZSBMYWJlbCAqL1xuLyogQ29udGVudCB3LyBMYWJlbCAqL1xuLyogQ29udGVudCAqL1xuLyogRGF0ZSAqL1xuLyogU3VtbWFyeSAqL1xuLyogU3VtbWFyeSBJbWFnZSAqL1xuLyogU3VtbWFyeSBEYXRlICovXG4vKiBVc2VyICovXG4vKiBFeHRyYSBTdW1tYXJ5IERhdGEgKi9cbi8qIEV4dHJhIEltYWdlcyAqL1xuLyogRXh0cmEgVGV4dCAqL1xuLyogTWV0YWRhdGEgR3JvdXAgKi9cbi8qIExpa2UgKi9cbi8qIE1ldGFkYXRhIERpdmlkZXIgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgRmVlZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGZWVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFdmVudCAqL1xuLyogRXZlbnQgTGFiZWwgKi9cbi8qIEljb24gTGFiZWwgKi9cbi8qIEltYWdlIExhYmVsICovXG4vKiBDb250ZW50IHcvIExhYmVsICovXG4vKiBDb250ZW50ICovXG4vKiBEYXRlICovXG4vKiBTdW1tYXJ5ICovXG4vKiBTdW1tYXJ5IEltYWdlICovXG4vKiBTdW1tYXJ5IERhdGUgKi9cbi8qIFVzZXIgKi9cbi8qIEV4dHJhIFN1bW1hcnkgRGF0YSAqL1xuLyogRXh0cmEgSW1hZ2VzICovXG4vKiBFeHRyYSBUZXh0ICovXG4vKiBNZXRhZGF0YSBHcm91cCAqL1xuLyogTGlrZSAqL1xuLyogTWV0YWRhdGEgRGl2aWRlciAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgQWN0aXZpdHkgRmVlZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5mZWVkIHtcbiAgbWFyZ2luOiAxZW0gMDtcbn1cbi51aS5mZWVkOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5mZWVkOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBFdmVudCAqL1xuLnVpLmZlZWQgPiAuZXZlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4yMTQyODU3MXJlbSAwO1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG4udWkuZmVlZCA+IC5ldmVudDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLyogRXZlbnQgTGFiZWwgKi9cbi51aS5mZWVkID4gLmV2ZW50ID4gLmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMi41ZW07XG4gIGhlaWdodDogYXV0bztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi51aS5mZWVkID4gLmV2ZW50ID4gLmxhYmVsIC5pY29uIHtcbiAgb3BhY2l0eTogMTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQgPiAubGFiZWwgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQgPiAubGFiZWwgKyAuY29udGVudCB7XG4gIG1hcmdpbjogMC41ZW0gMCAwLjM1NzE0Mjg2ZW0gMS4xNDI4NTcxNGVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogQ29udGVudCAqL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQ6bGFzdC1jaGlsZCA+IC5jb250ZW50IHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4vKiBMaW5rICovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBEYXRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuZGF0ZSB7XG4gIG1hcmdpbjogLTAuNXJlbSAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFN1bW1hcnlcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5zdW1tYXJ5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyogU3VtbWFyeSBJbWFnZSAqL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuc3VtbWFyeSBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEwZW07XG4gIG1hcmdpbjogLTAuMjVlbSAwLjI1ZW0gMCAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBVc2VyXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAudXNlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAudXNlciBpbWcge1xuICBtYXJnaW46IC0wLjI1ZW0gMC4yNWVtIDAgMDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMTBlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIElubGluZSBEYXRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGF0ZSBpbnNpZGUgU3VtbWFyeSAqL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuc3VtbWFyeSA+IC5kYXRlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2ZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luOiAwIDAgMCAwLjVlbTtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgRXh0cmEgU3VtbWFyeVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLmV4dHJhIHtcbiAgbWFyZ2luOiAwLjVlbSAwIDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyogSW1hZ2VzICovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5leHRyYS5pbWFnZXMgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMC4yNWVtIDAgMDtcbiAgd2lkdGg6IDZlbTtcbn1cbi8qIFRleHQgKi9cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLmV4dHJhLnRleHQge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODVlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1ldGFcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbiAgbWFyZ2luOiAwLjVlbSAwIDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgPiAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogMC43NWVtO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+ICo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtMWVtO1xuICBvcGFjaXR5OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIC5saWtlIHtcbiAgY29sb3I6ICcnO1xuICB0cmFuc2l0aW9uOiAwLjJzIGNvbG9yIGVhc2U7XG59XG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIC5saWtlOmhvdmVyIC5pY29uIHtcbiAgY29sb3I6ICNGRjI3MzM7XG59XG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIC5hY3RpdmUubGlrZSAuaWNvbiB7XG4gIGNvbG9yOiAjRUY0MDRBO1xufVxuLyogRmlyc3QgZWxlbWVudCAqL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+IDpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogQWN0aW9uICovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIGEsXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhID4gLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbn1cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgYTpob3Zlcixcbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgYTpob3ZlciAuaWNvbixcbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgPiAuaWNvbjpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuc21hbGwuZmVlZCB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5mZWVkIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLmZlZWQge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmludmVydGVkLmZlZWQgPiAuZXZlbnQge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xufVxuLnVpLmludmVydGVkLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuZGF0ZSxcbi51aS5pbnZlcnRlZC5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgLmxpa2Uge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVpLmludmVydGVkLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuc3VtbWFyeSxcbi51aS5pbnZlcnRlZC5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLmV4dHJhLnRleHQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSAubGlrZTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBJdGVtXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBJdGVtXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBHcm91cCAqL1xuLyogSXRlbSAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW1hZ2UgKi9cbi8qIENvbnRlbnQgKi9cbi8qIEhlYWRlciAqL1xuLyogTWV0YWRhdGEgKi9cbi8qIEljb25zICovXG4vKiBBY3Rpb25zICovXG4vKiBMaW5rcyAqL1xuLyogRGVzY3JpcHRpb24gKi9cbi8qIENvbnRlbnQgSW1hZ2UgKi9cbi8qIEF2YXRhciBJbWFnZSAqL1xuLyogUGFyYWdyYXBoICovXG4vKiBBZGRpdGlvbmFsIENvbnRlbnQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUmVsYXhlZCAqL1xuLyogRGl2aWRlZCAqL1xuLyogVW5zdGFja2FibGUgKi9cbi8qIEludmVydGVkICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBJdGVtXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBHcm91cCAqL1xuLyogSXRlbSAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW1hZ2UgKi9cbi8qIENvbnRlbnQgKi9cbi8qIEhlYWRlciAqL1xuLyogTWV0YWRhdGEgKi9cbi8qIEljb25zICovXG4vKiBBY3Rpb25zICovXG4vKiBMaW5rcyAqL1xuLyogRGVzY3JpcHRpb24gKi9cbi8qIENvbnRlbnQgSW1hZ2UgKi9cbi8qIEF2YXRhciBJbWFnZSAqL1xuLyogUGFyYWdyYXBoICovXG4vKiBBZGRpdGlvbmFsIENvbnRlbnQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUmVsYXhlZCAqL1xuLyogRGl2aWRlZCAqL1xuLyogVW5zdGFja2FibGUgKi9cbi8qIEludmVydGVkICovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJdGVtXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zID4gLml0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDFlbSAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHotaW5kZXg6ICcnO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEl0ZW1zXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zIHtcbiAgbWFyZ2luOiAxLjVlbSAwO1xufVxuLnVpLml0ZW1zOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuLnVpLml0ZW1zOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJdGVtXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zID4gLml0ZW06YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyAnO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udWkuaXRlbXMgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkuaXRlbXMgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW1hZ2VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWF4LWhlaWdodDogJyc7XG4gIGFsaWduLXNlbGY6IHN0YXJ0O1xufVxuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgPiBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XG4gIGJvcmRlcjogbm9uZTtcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlOm9ubHktY2hpbGQgPiBpbWcge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyAnO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSArIC5jb250ZW50IHtcbiAgbWluLXdpZHRoOiAwO1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuaGVhZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IC0wLjIxNDI1ZW0gMCAwO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG4vKiBEZWZhdWx0IEhlYWRlciBTaXplICovXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zID4gLml0ZW0gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnVpLml0ZW1zID4gLml0ZW0gW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogcmlnaHQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gIENvbnRlbnQgSW1hZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaXRlbXMgPiAuaXRlbSAuY29udGVudCBpbWcge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHdpZHRoOiAnJztcbn1cbi51aS5pdGVtcyA+IC5pdGVtIGltZy5hdmF0YXIsXG4udWkuaXRlbXMgPiAuaXRlbSAuYXZhdGFyIGltZyB7XG4gIHdpZHRoOiAnJztcbiAgaGVpZ2h0OiAnJztcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC42ZW07XG4gIG1heC13aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODVlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBwIHtcbiAgbWFyZ2luOiAwIDAgMC41ZW07XG59XG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBNZXRhXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEge1xuICBtYXJnaW46IDAuNWVtIDAgMC41ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEgKiB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4udWkuaXRlbXMgPiAuaXRlbSAubWV0YSA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMC4zZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEdlbmVyaWMgKi9cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgYTpub3QoLnVpKSB7XG4gIGNvbG9yOiAnJztcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6ICcnO1xufVxuLyogSGVhZGVyICovXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gYS5oZWFkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiBhLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuLyogTWV0YSAqL1xuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEgPiBhOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhID4gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBMYWJlbHNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tU3Rhci0tLS0tICovXG4vKiBJY29uICovXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5mYXZvcml0ZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjc1O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG59XG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5mYXZvcml0ZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNGRkI3MEE7XG59XG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5hY3RpdmUuZmF2b3JpdGUuaWNvbiB7XG4gIGNvbG9yOiAjRkZFNjIzO1xufVxuLyotLS0tLUxpa2UtLS0tLSAqL1xuLyogSWNvbiAqL1xuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAubGlrZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjc1O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG59XG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5saWtlLmljb246aG92ZXIge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogI0ZGMjczMztcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmFjdGl2ZS5saWtlLmljb24ge1xuICBjb2xvcjogI0ZGMjczMztcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLVxuICBFeHRyYSBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaXRlbXMgPiAuaXRlbSAuZXh0cmEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDAuNXJlbSAwIDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDAgMDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG4udWkuaXRlbXMgPiAuaXRlbSAuZXh0cmEgPiAqIHtcbiAgbWFyZ2luOiAwLjI1cmVtIDAuNXJlbSAwLjI1cmVtIDA7XG59XG4udWkuaXRlbXMgPiAuaXRlbSAuZXh0cmEgPiBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIG1hcmdpbjogMC4yNXJlbSAwIDAuMjVyZW0gMC41cmVtO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gLmV4dHJhOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBSZXNwb25zaXZlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogRGVmYXVsdCBJbWFnZSBXaWR0aCAqL1xuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2U6bm90KC51aSkge1xuICB3aWR0aDogMTc1cHg7XG59XG4vKiBUYWJsZXQgT25seSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC51aS5pdGVtcyA+IC5pdGVtIHtcbiAgICBtYXJnaW46IDFlbSAwO1xuICB9XG4gIC51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlOm5vdCgudWkpIHtcbiAgICB3aWR0aDogMTUwcHg7XG4gIH1cbiAgLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgKyAuY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMCAwIDAgMWVtO1xuICB9XG59XG4vKiBNb2JpbGUgT25seSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudWkuaXRlbXM6bm90KC51bnN0YWNrYWJsZSkgPiAuaXRlbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW46IDJlbSAwO1xuICB9XG4gIC51aS5pdGVtczpub3QoLnVuc3RhY2thYmxlKSA+IC5pdGVtID4gLmltYWdlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgLnVpLml0ZW1zOm5vdCgudW5zdGFja2FibGUpID4gLml0ZW0gPiAuaW1hZ2UsXG4gIC51aS5pdGVtczpub3QoLnVuc3RhY2thYmxlKSA+IC5pdGVtID4gLmltYWdlID4gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IDI1MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLml0ZW1zOm5vdCgudW5zdGFja2FibGUpID4gLml0ZW0gPiAuaW1hZ2UgKyAuY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMS41ZW0gMCAwO1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgKyBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uY29udGVudCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG59XG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSArIFtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXS5jb250ZW50IHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgKyBbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0uY29udGVudCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSZWxheGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnJlbGF4ZWQuaXRlbXMgPiAuaXRlbSB7XG4gIG1hcmdpbjogMS41ZW0gMDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uaXRlbXMgPiAuaXRlbSB7XG4gIG1hcmdpbjogMmVtIDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXZpZGVkLml0ZW1zID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxZW0gMDtcbn1cbi51aS5kaXZpZGVkLml0ZW1zID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4udWkuZGl2aWRlZC5pdGVtcyA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4vKiBSZWxheGVkIERpdmlkZWQgKi9cbi51aS5yZWxheGVkLmRpdmlkZWQuaXRlbXMgPiAuaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS41ZW0gMDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uZGl2aWRlZC5pdGVtcyA+IC5pdGVtIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAyZW0gMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBMaW5rXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuaXRlbXMgYS5pdGVtOmhvdmVyLFxuLnVpLmxpbmsuaXRlbXMgPiAuaXRlbTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi51aS5pdGVtcyBhLml0ZW06aG92ZXIgLmNvbnRlbnQgLmhlYWRlcixcbi51aS5saW5rLml0ZW1zID4gLml0ZW06aG92ZXIgLmNvbnRlbnQgLmhlYWRlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pdGVtcyA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLVxuICAgVW5zdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudWkudW5zdGFja2FibGUuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSxcbiAgLnVpLnVuc3RhY2thYmxlLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgPiBpbWcge1xuICAgIHdpZHRoOiAxMjVweCAhaW1wb3J0YW50O1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gLmV4dHJhIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuaGVhZGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gLm1ldGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBhOm5vdCgudWkpIHtcbiAgY29sb3I6ICM1N2E0ZWY7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogIzQxODNDNDtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiBhLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gYS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtIC5tZXRhID4gYTpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSAubWV0YSA+IGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAuZmF2b3JpdGUuaWNvbjpob3ZlciB7XG4gIGNvbG9yOiAjZmZjNjNkO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAuYWN0aXZlLmZhdm9yaXRlLmljb24ge1xuICBjb2xvcjogI2ZmZWM1Njtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmxpa2UuaWNvbjpob3ZlciB7XG4gIGNvbG9yOiAjZmY1YTYzO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAuYWN0aXZlLmxpa2UuaWNvbiB7XG4gIGNvbG9yOiAjZmY1YTYzO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gLmV4dHJhIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyBhLml0ZW06aG92ZXIgLmNvbnRlbnQgLmhlYWRlcixcbi51aS5pbnZlcnRlZC5saW5rLml0ZW1zID4gLml0ZW06aG92ZXIgLmNvbnRlbnQgLmhlYWRlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLnVpLmludmVydGVkLmRpdmlkZWQuaXRlbXMgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4udWkuaW52ZXJ0ZWQuZGl2aWRlZC5pdGVtcyA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gU3RhdGlzdGljXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU3RhdGlzdGljXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBHcm91cCAqL1xuLyogR3JvdXAgRWxlbWVudCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVmFsdWUgKi9cbi8qIExhYmVsICovXG4vKiBUZXh0ICovXG4vKiBMYWJlbCBJbWFnZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGbG9hdGVkICovXG4vKiBJbnZlcnRlZCAqL1xuLyogSXRlbSBXaWR0aCAqL1xuLyogU3RhY2thYmxlICovXG4vKiBTaXplICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU3RhdGlzdGljXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBHcm91cCAqL1xuLyogR3JvdXAgRWxlbWVudCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVmFsdWUgKi9cbi8qIExhYmVsICovXG4vKiBUZXh0ICovXG4vKiBMYWJlbCBJbWFnZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGbG9hdGVkICovXG4vKiBJbnZlcnRlZCAqL1xuLyogSXRlbSBXaWR0aCAqL1xuLyogU3RhY2thYmxlICovXG4vKiBTaXplICovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBTdGF0aXN0aWNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTdGFuZGFsb25lICovXG4udWkuc3RhdGlzdGljIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMWVtIDA7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbi51aS5zdGF0aXN0aWMgKyAudWkuc3RhdGlzdGljIHtcbiAgbWFyZ2luOiAwIDAgMCAxLjVlbTtcbn1cbi51aS5zdGF0aXN0aWM6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLnN0YXRpc3RpYzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBHcm91cFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEdyb3VwZWQgKi9cbi51aS5zdGF0aXN0aWNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi51aS5zdGF0aXN0aWNzID4gLnN0YXRpc3RpYyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4OiAwIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAwIDEuNWVtIDFlbTtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuLnVpLnN0YXRpc3RpY3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDFlbSAtMS41ZW0gLTFlbTtcbn1cbi8qIENsZWFyaW5nICovXG4udWkuc3RhdGlzdGljczphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi51aS5zdGF0aXN0aWNzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb250ZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgVmFsdWVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgY29sb3I6ICMxQjFDMUQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTGFiZWxcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLmxhYmVsLFxuLnVpLnN0YXRpc3RpYyA+IC5sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi8qIFRvcCBMYWJlbCAqL1xuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC5sYWJlbCB+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWMgPiAubGFiZWwgfiAudmFsdWUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLyogQm90dG9tIExhYmVsICovXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlIH4gLmxhYmVsLFxuLnVpLnN0YXRpc3RpYyA+IC52YWx1ZSB+IC5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgSWNvbiBWYWx1ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUgLmljb24sXG4udWkuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uIHtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFRleHQgVmFsdWVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUsXG4udWkuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBtaW4taGVpZ2h0OiAyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUgKyAubGFiZWwsXG4udWkuc3RhdGlzdGljID4gLnRleHQudmFsdWUgKyAubGFiZWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICBJbWFnZSBWYWx1ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUgaW1nLFxuLnVpLnN0YXRpc3RpYyA+IC52YWx1ZSBpbWcge1xuICBtYXgtaGVpZ2h0OiAzcmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIENvdW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnRlbi5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiAwIDAgLTFlbTtcbn1cbi51aS50ZW4uc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiAxMCU7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cbi51aS5uaW5lLnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IDAgMCAtMWVtO1xufVxuLnVpLm5pbmUuc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiAxMS4xMTExMTExMSU7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cbi51aS5laWdodC5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiAwIDAgLTFlbTtcbn1cbi51aS5laWdodC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IDEyLjUlO1xuICBtYXJnaW46IDAgMCAxZW07XG59XG4udWkuc2V2ZW4uc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogMCAwIC0xZW07XG59XG4udWkuc2V2ZW4uc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiAxNC4yODU3MTQyOSU7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cbi51aS5zaXguc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogMCAwIC0xZW07XG59XG4udWkuc2l4LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogMTYuNjY2NjY2NjclO1xuICBtYXJnaW46IDAgMCAxZW07XG59XG4udWkuZml2ZS5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiAwIDAgLTFlbTtcbn1cbi51aS5maXZlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogMjAlO1xuICBtYXJnaW46IDAgMCAxZW07XG59XG4udWkuZm91ci5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiAwIDAgLTFlbTtcbn1cbi51aS5mb3VyLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogMjUlO1xuICBtYXJnaW46IDAgMCAxZW07XG59XG4udWkudGhyZWUuc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogMCAwIC0xZW07XG59XG4udWkudGhyZWUuc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cbi51aS50d28uc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogMCAwIC0xZW07XG59XG4udWkudHdvLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogNTAlO1xuICBtYXJnaW46IDAgMCAxZW07XG59XG4udWkub25lLnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IDAgMCAtMWVtO1xufVxuLnVpLm9uZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEhvcml6b250YWxcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBtYXJnaW46IDFlbSAwO1xufVxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljID4gLnRleHQudmFsdWUsXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzID4gLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xufVxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uLFxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uIHtcbiAgd2lkdGg6IDEuMThlbTtcbn1cbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC5sYWJlbCxcbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMCAwLjc1ZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW52ZXJ0ZWQuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnN0YXRpc3RpYyAudmFsdWUge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuc3RhdGlzdGljIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wcmltYXJ5LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5wcmltYXJ5LnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5wcmltYXJ5LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjMjE4NUQwO1xufVxuLnVpLmludmVydGVkLnByaW1hcnkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnByaW1hcnkuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnByaW1hcnkuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG4udWkuc2Vjb25kYXJ5LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5zZWNvbmRhcnkuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnNlY29uZGFyeS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnNlY29uZGFyeS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjNTQ1NDU0O1xufVxuLnVpLnJlZC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAucmVkLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5yZWQuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNEQjI4Mjg7XG59XG4udWkuaW52ZXJ0ZWQucmVkLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC5yZWQuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnJlZC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0ZGNjk1RTtcbn1cbi51aS5vcmFuZ2Uuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLm9yYW5nZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkub3JhbmdlLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjRjI3MTFDO1xufVxuLnVpLmludmVydGVkLm9yYW5nZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQub3JhbmdlLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5pbnZlcnRlZC5vcmFuZ2Uuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNGRjg1MUI7XG59XG4udWkueWVsbG93LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC55ZWxsb3cuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnllbGxvdy5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0ZCQkQwODtcbn1cbi51aS5pbnZlcnRlZC55ZWxsb3cuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnllbGxvdy5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjRkZFMjFGO1xufVxuLnVpLm9saXZlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5vbGl2ZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkub2xpdmUuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNCNUNDMTg7XG59XG4udWkuaW52ZXJ0ZWQub2xpdmUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLm9saXZlLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5pbnZlcnRlZC5vbGl2ZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0Q5RTc3ODtcbn1cbi51aS5ncmVlbi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuZ3JlZW4uc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmdyZWVuLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjMjFCQTQ1O1xufVxuLnVpLmludmVydGVkLmdyZWVuLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC5ncmVlbi5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICMyRUNDNDA7XG59XG4udWkudGVhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAudGVhbC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkudGVhbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogIzAwQjVBRDtcbn1cbi51aS5pbnZlcnRlZC50ZWFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC50ZWFsLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5pbnZlcnRlZC50ZWFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjNkRGRkZGO1xufVxuLnVpLmJsdWUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG4udWkuaW52ZXJ0ZWQuYmx1ZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQuYmx1ZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogIzU0QzhGRjtcbn1cbi51aS52aW9sZXQuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLnZpb2xldC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkudmlvbGV0LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjNjQzNUM5O1xufVxuLnVpLmludmVydGVkLnZpb2xldC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQudmlvbGV0LnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5pbnZlcnRlZC52aW9sZXQuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNBMjkxRkI7XG59XG4udWkucHVycGxlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5wdXJwbGUuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnB1cnBsZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0EzMzNDODtcbn1cbi51aS5pbnZlcnRlZC5wdXJwbGUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnB1cnBsZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQucHVycGxlLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjREM3M0ZGO1xufVxuLnVpLnBpbmsuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNFMDM5OTc7XG59XG4udWkuaW52ZXJ0ZWQucGluay5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQucGluay5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQucGluay5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0ZGOEVERjtcbn1cbi51aS5icm93bi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuYnJvd24uc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmJyb3duLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjQTU2NzNGO1xufVxuLnVpLmludmVydGVkLmJyb3duLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC5icm93bi5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQuYnJvd24uc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNENjdDMUM7XG59XG4udWkuZ3JleS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuZ3JleS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuZ3JleS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi51aS5pbnZlcnRlZC5ncmV5LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC5ncmV5LnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5pbnZlcnRlZC5ncmV5LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjRENERERFO1xufVxuLnVpLmJsYWNrLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5ibGFjay5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuYmxhY2suc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICMxQjFDMUQ7XG59XG4udWkuaW52ZXJ0ZWQuYmxhY2suc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLmJsYWNrLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5pbnZlcnRlZC5ibGFjay5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogIzU0NTQ1NDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXS5zdGF0aXN0aWMge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDJlbSAxZW0gMDtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLnN0YXRpc3RpYyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMWVtIDJlbTtcbn1cbi51aS5mbG9hdGVkLnN0YXRpc3RpYzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5zdGFja2FibGUuc3RhdGlzdGljcyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudWkuc3RhY2thYmxlLnN0YXRpc3RpY3MgPiAuc3RhdGlzdGljIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBNaW5pICovXG4udWkubWluaS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkubWluaS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuLnVpLm1pbmkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkubWluaS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG4udWkubWluaS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5taW5pLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG59XG4vKiBUaW55ICovXG4udWkudGlueS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkudGlueS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbn1cbi51aS50aW55Lmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnRpbnkuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbn1cbi51aS50aW55LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLnRpbnkuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbn1cbi8qIFNtYWxsICovXG4udWkuc21hbGwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnNtYWxsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogM3JlbSAhaW1wb3J0YW50O1xufVxuLnVpLnNtYWxsLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnNtYWxsLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG59XG4udWkuc21hbGwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUsXG4udWkuc21hbGwuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbn1cbi8qIE1lZGl1bSAqL1xuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDRyZW0gIWltcG9ydGFudDtcbn1cbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogM3JlbSAhaW1wb3J0YW50O1xufVxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG59XG4vKiBMYXJnZSAqL1xuLnVpLmxhcmdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5sYXJnZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDVyZW0gIWltcG9ydGFudDtcbn1cbi51aS5sYXJnZS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5sYXJnZS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogNHJlbSAhaW1wb3J0YW50O1xufVxuLnVpLmxhcmdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLmxhcmdlLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbn1cbi8qIEh1Z2UgKi9cbi51aS5odWdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5odWdlLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogNnJlbSAhaW1wb3J0YW50O1xufVxuLnVpLmh1Z2UuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaHVnZS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogNXJlbSAhaW1wb3J0YW50O1xufVxuLnVpLmh1Z2Uuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUsXG4udWkuaHVnZS5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtICFpbXBvcnRhbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIE1vZHVsZXMgKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEFjY29yZGlvblxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIEFjY29yZGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRpdGxlICovXG4vKiBJY29uICovXG4vKiBDaGlsZCBBY2NvcmRpb24gKi9cbi8qIENvbnRlbnQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU3R5bGVkICovXG4vKiBDb250ZW50ICovXG4vKiBDaGlsZCBDb250ZW50ICovXG4vKiBTdHlsZWQgVGl0bGUgKi9cbi8qIFN0eWxlZCBUaXRsZSBTdGF0ZXMgKi9cbi8qIFN0eWxlZCBDaGlsZCBUaXRsZSBTdGF0ZXMgKi9cbi8qIEludmVydGVkICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgQWNjb3JkaW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVGl0bGUgKi9cbi8qIEljb24gKi9cbi8qIENoaWxkIEFjY29yZGlvbiAqL1xuLyogQ29udGVudCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTdHlsZWQgKi9cbi8qIENvbnRlbnQgKi9cbi8qIENoaWxkIENvbnRlbnQgKi9cbi8qIFN0eWxlZCBUaXRsZSAqL1xuLyogU3R5bGVkIFRpdGxlIFN0YXRlcyAqL1xuLyogU3R5bGVkIENoaWxkIFRpdGxlIFN0YXRlcyAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBBY2NvcmRpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuYWNjb3JkaW9uLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIHtcbiAgbWFyZ2luOiAxZW0gMCAwO1xuICBwYWRkaW5nOiAwO1xufVxuLyogVGl0bGUgKi9cbi51aS5hY2NvcmRpb24gLnRpdGxlLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi8qIERlZmF1bHQgU3R5bGluZyAqL1xuLnVpLmFjY29yZGlvbiAudGl0bGU6bm90KC51aSkge1xuICBwYWRkaW5nOiAwLjVlbSAwO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4vKiBEZWZhdWx0IFN0eWxpbmcgKi9cbi51aS5hY2NvcmRpb246bm90KC5zdHlsZWQpIC50aXRsZSB+IC5jb250ZW50Om5vdCgudWkpLFxuLnVpLmFjY29yZGlvbjpub3QoLnN0eWxlZCkgLmFjY29yZGlvbiAudGl0bGUgfiAuY29udGVudDpub3QoLnVpKSB7XG4gIG1hcmdpbjogJyc7XG4gIHBhZGRpbmc6IDAuNWVtIDAgMWVtO1xufVxuLnVpLmFjY29yZGlvbjpub3QoLnN0eWxlZCkgLnRpdGxlIH4gLmNvbnRlbnQ6bm90KC51aSk6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLyogQXJyb3cgKi9cbi51aS5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiAxLjI1ZW07XG4gIGhlaWdodDogMWVtO1xuICBtYXJnaW46IDAgMC4yNXJlbSAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBNZW51ICovXG4udWkuYWNjb3JkaW9uLm1lbnUgLml0ZW0gLnRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG59XG4udWkuYWNjb3JkaW9uLm1lbnUgLml0ZW0gLnRpdGxlID4gLmRyb3Bkb3duLmljb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMC4yMTQyNWVtIDAgMCAxZW07XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4vKiBIZWFkZXIgKi9cbi51aS5hY2NvcmRpb24gLnVpLmhlYWRlciAuZHJvcGRvd24uaWNvbiB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDAgMC4yNXJlbSAwIDA7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmFjY29yZGlvbiAuYWN0aXZlLnRpdGxlIC5kcm9wZG93bi5pY29uLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUgLmRyb3Bkb3duLmljb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG4udWkuYWNjb3JkaW9uLm1lbnUgLml0ZW0gLmFjdGl2ZS50aXRsZSA+IC5kcm9wZG93bi5pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTdHlsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc3R5bGVkLmFjY29yZGlvbiB7XG4gIHdpZHRoOiA2MDBweDtcbn1cbi51aS5zdHlsZWQuYWNjb3JkaW9uLFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLnRpdGxlLFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNzVlbSAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZTtcbn1cbi51aS5zdHlsZWQuYWNjb3JkaW9uID4gLnRpdGxlOmZpcnN0LWNoaWxkLFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGU6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLyogQ29udGVudCAqL1xuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmNvbnRlbnQsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5jb250ZW50IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjVlbSAxZW0gMS41ZW07XG59XG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5jb250ZW50IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjVlbSAxZW0gMS41ZW07XG59XG4vKiBIb3ZlciAqL1xuLnVpLnN0eWxlZC5hY2NvcmRpb24gLnRpdGxlOmhvdmVyLFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjdGl2ZS50aXRsZSxcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlOmhvdmVyLFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAuYWN0aXZlLnRpdGxlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGU6aG92ZXIsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4vKiBBY3RpdmUgKi9cbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgTm90IEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5hY2NvcmRpb24gLnRpdGxlIH4gLmNvbnRlbnQ6bm90KC5hY3RpdmUpLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSB+IC5jb250ZW50Om5vdCguYWN0aXZlKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mbHVpZC5hY2NvcmRpb24sXG4udWkuZmx1aWQuYWNjb3JkaW9uIC5hY2NvcmRpb24ge1xuICB3aWR0aDogMTAwJTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW52ZXJ0ZWQuYWNjb3JkaW9uIC50aXRsZTpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWNjb3JkaW9uJztcbiAgc3JjOiB1cmwoZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWdnakI1QUFBQUM4QUFBQVlHTnRZWEFQZk9JS0FBQUJIQUFBQUV4bllYTndBQUFBRUFBQUFXZ0FBQUFJWjJ4NVpyeWo2SGdBQUFGd0FBQUF5R2hsWVdULzBJaEhBQUFDT0FBQUFEWm9hR1ZoQXBrQjV3QUFBbkFBQUFBa2FHMTBlQUp1QUJJQUFBS1VBQUFBR0d4dlkyRUFqQUJXQUFBQ3JBQUFBQTV0WVhod0FBZ0FGZ0FBQXJ3QUFBQWdibUZ0WmZDMW4wNEFBQUxjQUFBQlBIQnZjM1FBQXdBQUFBQUVHQUFBQUNBQUF3SUFBWkFBQlFBQUFVd0JaZ0FBQUVjQlRBRm1BQUFBOVFBWkFJUUFBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHcyZ0hnLytELzRBSGdBQ0FBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQ0FBQUFBd0FBQUJRQUF3QUJBQUFBRkFBRUFEZ0FBQUFLQUFnQUFnQUNBQUVBSVBEYS8vMy8vd0FBQUFBQUlQRFovLzMvL3dBQi8rTVBLd0FEQUFFQUFBQUFBQUFBQUFBQUFBRUFBZi8vQUE4QUFRQUFBQUFBQUFBQUFBSUFBRGM1QVFBQUFBQUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBU0FFa0F0d0Z1QUJNQUFEYzBQd0UyRnpZWEZoMEJGQWNHSndZdkFTWTFFZ2FBQlFnSEJRWUdCUWNJQllBRzJ3Y0dmd2NCQVFjRUNmOElCQWNCQVFkL0JnWUFBQUFBQVFBQUFFa0FwUUZ1QUJNQUFEY1JORGMyTXpJZkFSWVZGQThCQmlNaUp5WTFBQVVHQndnRmdBWUdnQVVJQndZRld3RUFDQVVHQm9BRkNBY0ZnQVlHQlFjQUFBQUJBQUFBQVFBQXFXWWxzMThQUFBVQUN3SUFBQUFBQU0vOW8rNEFBQUFBei8yajdnQUFBQUFBdHdGdUFBQUFDQUFDQUFBQUFBQUFBQUVBQUFIZy8rQUFBQUlBQUFBQUFBQzNBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUdBQUFBQUFBQUFBQUFBQUFBQVFBQUFBQzNBQklBdHdBQUFBQUFBQUFLQUJRQUhnQkNBR1FBQUFBQkFBQUFCZ0FVQUFFQUFBQUFBQUlBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRGdDdUFBRUFBQUFBQUFFQURBQUFBQUVBQUFBQUFBSUFEZ0JBQUFFQUFBQUFBQU1BREFBaUFBRUFBQUFBQUFRQURBQk9BQUVBQUFBQUFBVUFGZ0FNQUFFQUFBQUFBQVlBQmdBdUFBRUFBQUFBQUFvQU5BQmFBQU1BQVFRSkFBRUFEQUFBQUFNQUFRUUpBQUlBRGdCQUFBTUFBUVFKQUFNQURBQWlBQU1BQVFRSkFBUUFEQUJPQUFNQUFRUUpBQVVBRmdBTUFBTUFBUVFKQUFZQURBQTBBQU1BQVFRSkFBb0FOQUJhQUhJQVlRQjBBR2tBYmdCbkFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUJ5QUdFQWRBQnBBRzRBWjNKaGRHbHVad0J5QUdFQWRBQnBBRzRBWndCU0FHVUFad0IxQUd3QVlRQnlBSElBWVFCMEFHa0FiZ0JuQUVZQWJ3QnVBSFFBSUFCbkFHVUFiZ0JsQUhJQVlRQjBBR1VBWkFBZ0FHSUFlUUFnQUVrQVl3QnZBRTBBYndCdkFHNEFMZ0FEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQSkgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JrOVVWRThBQUFTd0FBb0FBQUFBQkdnQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJEUmtZZ0FBQUE5QUFBQVMwQUFBRXRGcG92dUU5VEx6SUFBQUlrQUFBQVlBQUFBR0FJSXdlUVkyMWhjQUFBQW9RQUFBQk1BQUFBVEE5ODRncG5ZWE53QUFBQzBBQUFBQWdBQUFBSUFBQUFFR2hsWVdRQUFBTFlBQUFBTmdBQUFEYi8wSWhIYUdobFlRQUFBeEFBQUFBa0FBQUFKQUtaQWVkb2JYUjRBQUFETkFBQUFCZ0FBQUFZQW00QUVtMWhlSEFBQUFOTUFBQUFCZ0FBQUFZQUJsQUFibUZ0WlFBQUExUUFBQUU4QUFBQlBQQzFuMDV3YjNOMEFBQUVrQUFBQUNBQUFBQWdBQU1BQUFFQUJBUUFBUUVCQjNKaGRHbHVad0FCQWdBQkFEcjRIQUw0R3dQNEdBUWVDZ0FaVS8rTGl4NEtBQmxULzR1TERBZUxhL2lVK0hRRkhRQUFBSGtQSFFBQUFINFJIUUFBQUFrZEFBQUJKQklBQndFQkJ3MFBFUlFaSG5KaGRHbHVaM0poZEdsdVozVXdkVEYxTWpCMVJqQkVPWFZHTUVSQkFBQUNBWWtBQkFBR0FRRUVCd29OVnAzOGxBNzhsQTc4bEE3N2xBNzczWjMzYnhXTGtJMlFqNDRJOXhUM0ZBV09qNUNOa0l1UWk0K0pqb2VQaUkyR2k0WUlpL3VVQll1R2lZZUhpSWlIaDRtR2k0YUxobzJJandqN0ZQY1VCWWVPaVkrTGtBZ08rOTJMNWhXTDk1UUZpNUNOa0k2T2o0K1BqWkNMa0l1UWlZNkhDUGNVK3hRRmo0aU5ob3VHaTRhSmg0ZUlDUHNVK3hRRmlJZUdpWWFMaG91SGpZZVBpSTZKajR1UUNBNzRsQlQ0bEJXTERBb0FBQUFBQXdJQUFaQUFCUUFBQVV3QlpnQUFBRWNCVEFGbUFBQUE5UUFaQUlRQUFBQUFBQUFBQUFBQUFBQUFBQUFCRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFEdzJnSGcvK0QvNEFIZ0FDQUFBQUFCQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFDQUFBQUF3QUFBQlFBQXdBQkFBQUFGQUFFQURnQUFBQUtBQWdBQWdBQ0FBRUFJUERhLy8zLy93QUFBQUFBSVBEWi8vMy8vd0FCLytNUEt3QURBQUVBQUFBQUFBQUFBQUFBQUFFQUFmLy9BQThBQVFBQUFBRUFBRGZZT0paZkR6ejFBQXNDQUFBQUFBRFAvYVB1QUFBQUFNLzlvKzRBQUFBQUFMY0JiZ0FBQUFnQUFnQUFBQUFBQUFBQkFBQUI0UC9nQUFBQ0FBQUFBQUFBdHdBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQmdBQUFBQUFBQUFBQUFBQUFBRUFBQUFBdHdBU0FMY0FBQUFBVUFBQUJnQUFBQUFBRGdDdUFBRUFBQUFBQUFFQURBQUFBQUVBQUFBQUFBSUFEZ0JBQUFFQUFBQUFBQU1BREFBaUFBRUFBQUFBQUFRQURBQk9BQUVBQUFBQUFBVUFGZ0FNQUFFQUFBQUFBQVlBQmdBdUFBRUFBQUFBQUFvQU5BQmFBQU1BQVFRSkFBRUFEQUFBQUFNQUFRUUpBQUlBRGdCQUFBTUFBUVFKQUFNQURBQWlBQU1BQVFRSkFBUUFEQUJPQUFNQUFRUUpBQVVBRmdBTUFBTUFBUVFKQUFZQURBQTBBQU1BQVFRSkFBb0FOQUJhQUhJQVlRQjBBR2tBYmdCbkFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUJ5QUdFQWRBQnBBRzRBWjNKaGRHbHVad0J5QUdFQWRBQnBBRzRBWndCU0FHVUFad0IxQUd3QVlRQnlBSElBWVFCMEFHa0FiZ0JuQUVZQWJ3QnVBSFFBSUFCbkFHVUFiZ0JsQUhJQVlRQjBBR1VBWkFBZ0FHSUFlUUFnQUVrQVl3QnZBRTBBYndCdkFHNEFMZ0FEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQSkgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi8qIERyb3Bkb3duIEljb24gKi9cbi51aS5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbiB7XG4gIGZvbnQtZmFtaWx5OiBBY2NvcmRpb247XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnVpLmFjY29yZGlvbiAudGl0bGUgLmRyb3Bkb3duLmljb246YmVmb3JlLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMGRhJyAvKnJ0bDonXFxmMGQ5JyovO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVXNlciBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBDYWxlbmRhclxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIENhbGVuZGFyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIENhbGVuZGFyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUG9wdXBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuY2FsZW5kYXIgLnVpLnBvcHVwIHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENhbGVuZGFyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmNhbGVuZGFyIC5jYWxlbmRhcjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgR3JpZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5jYWxlbmRhciAudWkucG9wdXAgLnVpLmdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi51aS5jYWxlbmRhciAudWkucG9wdXAgLnVpLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IGF1dG87XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGFibGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlLnllYXIsXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlLm1vbnRoLFxuLnVpLmNhbGVuZGFyIC51aS50YWJsZS5taW51dGUge1xuICBtaW4td2lkdGg6IDE1ZW07XG59XG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlLmRheSB7XG4gIG1pbi13aWR0aDogMThlbTtcbn1cbi51aS5jYWxlbmRhciAudWkudGFibGUuZGF5LmFuZHdlZWsge1xuICBtaW4td2lkdGg6IDIyZW07XG59XG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlLmhvdXIge1xuICBtaW4td2lkdGg6IDIwZW07XG59XG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIHRoLFxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0ZCB7XG4gIHBhZGRpbmc6IDAuNWVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0aCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0aCAuaWNvbiB7XG4gIG1hcmdpbjogMDtcbn1cbi51aS5jYWxlbmRhciAudWkudGFibGUgdHI6Zmlyc3QtY2hpbGQgdGgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi51aS5jYWxlbmRhciAudWkudGFibGUuZGF5IHRyOmZpcnN0LWNoaWxkIHRoIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLnVpLmNhbGVuZGFyIC51aS50YWJsZS5kYXkgdHI6bnRoLWNoaWxkKDIpIHRoIHtcbiAgcGFkZGluZy10b3A6IDAuMmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zZW07XG59XG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIHRkIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjFlbTtcbiAgcGFkZGluZy1yaWdodDogMC4xZW07XG59XG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIC5saW5rIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciAucHJldi5saW5rIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI5JTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xufVxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciAubmV4dC5saW5rIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI5JTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbn1cbi51aS5jYWxlbmRhciAudWkudGFibGUgdHIgLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6IHJnYmEoNDAsIDQwLCA0MCwgMC4zKTtcbn1cbi51aS5jYWxlbmRhciAudWkudGFibGUgdHIgLmFkamFjZW50Om5vdCguZGlzYWJsZWQpIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0ZC50b2RheSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0ZC5yYW5nZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmNhbGVuZGFyIC51aS50YWJsZS5pbnZlcnRlZCB0ciB0ZC5yYW5nZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmNhbGVuZGFyOm5vdCguZGlzYWJsZWQpIC5jYWxlbmRhcjpmb2N1cyAudWkudGFibGUgdGJvZHkgdHIgdGQuZm9jdXMsXG4udWkuY2FsZW5kYXI6bm90KC5kaXNhYmxlZCkgLmNhbGVuZGFyLmFjdGl2ZSAudWkudGFibGUgdGJvZHkgdHIgdGQuZm9jdXMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggIzg1QjdEOTtcbn1cbi51aS5jYWxlbmRhcjpub3QoLmRpc2FibGVkKSAuY2FsZW5kYXI6Zm9jdXMgLnVpLnRhYmxlLmludmVydGVkIHRib2R5IHRyIHRkLmZvY3VzLFxuLnVpLmNhbGVuZGFyOm5vdCguZGlzYWJsZWQpIC5jYWxlbmRhci5hY3RpdmUgLnVpLnRhYmxlLmludmVydGVkIHRib2R5IHRyIHRkLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICM4NUI3RDk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXNhYmxlZC5jYWxlbmRhciB7XG4gIG9wYWNpdHk6IDAuNDU7XG59XG4udWkuZGlzYWJsZWQuY2FsZW5kYXIgPiAuaW5wdXQsXG4udWkuZGlzYWJsZWQuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIC5saW5rIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gQ2hlY2tib3hcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ2hlY2tib3hcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBMYWJlbCAqL1xuLyogMjZweCBAIDE0L2VtICovXG4vKiBDaGVja2JveCAqL1xuLyogQ2hlY2ttYXJrICovXG4vKiBMYWJlbCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSG92ZXIgKi9cbi8qIFByZXNzZWQgKi9cbi8qIEZvY3VzICovXG4vKiBBY3RpdmUgKi9cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuLyogSW5kZXRlcm1pbmF0ZSAqL1xuLyogRGlzYWJsZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUmFkaW8gKi9cbi8qIFVzZXMgcHggdG8gYXZvaWQgcm91bmRpbmcgaXNzdWVzIHdpdGggY2lyY2xlcyAqL1xuLyogN3B4IGFzIHVuaXRsZXNzIHZhbHVlIGZyb20gcmFkaW8gc2l6ZSAqL1xuLyogU2xpZGVyICYgVG9nZ2xlIEhhbmRsZSAqL1xuLyogU2xpZGVyICovXG4vKiBTbGlkZXIgU3RhdGVzICovXG4vKiBUb2dnbGUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIFNpemUgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ2hlY2tib3hcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBMYWJlbCAqL1xuLyogMjZweCBAIDE0L2VtICovXG4vKiBDaGVja2JveCAqL1xuLyogQ2hlY2ttYXJrICovXG4vKiBMYWJlbCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSG92ZXIgKi9cbi8qIFByZXNzZWQgKi9cbi8qIEZvY3VzICovXG4vKiBBY3RpdmUgKi9cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuLyogSW5kZXRlcm1pbmF0ZSAqL1xuLyogRGlzYWJsZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUmFkaW8gKi9cbi8qIFVzZXMgcHggdG8gYXZvaWQgcm91bmRpbmcgaXNzdWVzIHdpdGggY2lyY2xlcyAqL1xuLyogN3B4IGFzIHVuaXRsZXNzIHZhbHVlIGZyb20gcmFkaW8gc2l6ZSAqL1xuLyogU2xpZGVyICYgVG9nZ2xlIEhhbmRsZSAqL1xuLyogU2xpZGVyICovXG4vKiBTbGlkZXIgU3RhdGVzICovXG4vKiBUb2dnbGUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIFNpemUgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIENoZWNrYm94XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdXRsaW5lOiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWluLWhlaWdodDogMTdweDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICBtaW4td2lkdGg6IDE3cHg7XG59XG4vKiBIVE1MIENoZWNrYm94ICovXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZTtcbiAgei1pbmRleDogMztcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTdweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJveFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jaGVja2JveCAuYm94LFxuLnVpLmNoZWNrYm94IGxhYmVsIHtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDEuODU3MTRlbTtcbiAgb3V0bGluZTogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG4udWkuY2hlY2tib3ggLmJveDpiZWZvcmUsXG4udWkuY2hlY2tib3ggbGFiZWw6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxN3B4O1xuICBoZWlnaHQ6IDE3cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwLjIxNDI4NTcxcmVtO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENEQ0RDU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ2hlY2ttYXJrXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNoZWNrYm94IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggbGFiZWw6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTdweDtcbiAgaGVpZ2h0OiAxN3B4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2U7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBMYWJlbFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEluc2lkZSAqL1xuLnVpLmNoZWNrYm94IGxhYmVsLFxuLnVpLmNoZWNrYm94ICsgbGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xufVxuLyogT3V0c2lkZSAqL1xuLnVpLmNoZWNrYm94ICsgbGFiZWwge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG59XG4udWkuY2hlY2tib3ggbGFiZWw6aG92ZXIsXG4udWkuY2hlY2tib3ggKyBsYWJlbDpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBEb3duXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmNoZWNrYm94IC5ib3g6YWN0aXZlOjpiZWZvcmUsXG4udWkuY2hlY2tib3ggbGFiZWw6YWN0aXZlOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRjlGQUZCO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG59XG4udWkuY2hlY2tib3ggLmJveDphY3RpdmU6OmFmdGVyLFxuLnVpLmNoZWNrYm94IGxhYmVsOmFjdGl2ZTo6YWZ0ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cbi51aS5jaGVja2JveCBpbnB1dDphY3RpdmUgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5jaGVja2JveCBpbnB1dDpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjOTZDOERBO1xufVxuLnVpLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gLmJveDphZnRlcixcbi51aS5jaGVja2JveCBpbnB1dDpmb2N1cyB+IGxhYmVsOmFmdGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4udWkuY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG59XG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gIEluZGV0ZXJtaW5hdGVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZSB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGUgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG59XG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZSB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZSB+IGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZSB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSkgfiBsYWJlbDphZnRlciB7XG4gIGxlZnQ6IDEuMDc1cmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICBBY3RpdmUgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZTpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGU6Zm9jdXMgfiBsYWJlbDpiZWZvcmUsXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZDpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQ6Zm9jdXMgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG59XG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZTpmb2N1cyB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZTpmb2N1cyB+IGxhYmVsOmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQ6Zm9jdXMgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQ6Zm9jdXMgfiBsYWJlbDphZnRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlYWQtT25seVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5yZWFkLW9ubHkuY2hlY2tib3gsXG4udWkucmVhZC1vbmx5LmNoZWNrYm94IGxhYmVsIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kaXNhYmxlZC5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLmRpc2FibGVkLmNoZWNrYm94IGxhYmVsLFxuLnVpLmNoZWNrYm94IGlucHV0W2Rpc2FibGVkXSB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXRbZGlzYWJsZWRdIH4gbGFiZWwge1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMC41O1xuICBjb2xvcjogIzAwMDAwMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSGlkZGVuXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW5pdGlhbGl6ZWQgY2hlY2tib3ggbW92ZXMgaW5wdXQgYmVsb3cgZWxlbWVudFxuIHRvIHByZXZlbnQgbWFudWFsbHkgdHJpZ2dlcmluZyAqL1xuLnVpLmNoZWNrYm94IGlucHV0LmhpZGRlbiB7XG4gIHotaW5kZXg6IC0xO1xufVxuLyogU2VsZWN0YWJsZSBMYWJlbCAqL1xuLnVpLmNoZWNrYm94IGlucHV0LmhpZGRlbiArIGxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFJhZGlvXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnJhZGlvLmNoZWNrYm94IHtcbiAgbWluLWhlaWdodDogMTVweDtcbn1cbi51aS5yYWRpby5jaGVja2JveCAuYm94LFxuLnVpLnJhZGlvLmNoZWNrYm94IGxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjg1NzE0ZW07XG59XG4vKiBCb3ggKi9cbi51aS5yYWRpby5jaGVja2JveCAuYm94OmJlZm9yZSxcbi51aS5yYWRpby5jaGVja2JveCBsYWJlbDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgdHJhbnNmb3JtOiBub25lO1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIHRvcDogMXB4O1xuICBsZWZ0OiAwO1xufVxuLyogQnVsbGV0ICovXG4udWkucmFkaW8uY2hlY2tib3ggLmJveDphZnRlcixcbi51aS5yYWRpby5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29udGVudDogJycgIWltcG9ydGFudDtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG59XG4vKiBSYWRpbyBDaGVja2JveCAqL1xuLnVpLnJhZGlvLmNoZWNrYm94IC5ib3g6YWZ0ZXIsXG4udWkucmFkaW8uY2hlY2tib3ggbGFiZWw6YWZ0ZXIge1xuICB0b3A6IDFweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTVweDtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNDY2NjY2NjcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyogRm9jdXMgKi9cbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpmb2N1cyB+IC5ib3g6YWZ0ZXIsXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKiBJbmRldGVybWluYXRlICovXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5ib3g6YWZ0ZXIsXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbn1cbi8qIEFjdGl2ZSAqL1xuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmJlZm9yZSxcbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveDphZnRlcixcbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyogQWN0aXZlIEZvY3VzICovXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNsaWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zbGlkZXIuY2hlY2tib3gge1xuICBtaW4taGVpZ2h0OiAxLjI1cmVtO1xufVxuLyogSW5wdXQgKi9cbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQge1xuICB3aWR0aDogMy41cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG59XG4vKiBMYWJlbCAqL1xuLnVpLnNsaWRlci5jaGVja2JveCAuYm94LFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogNC41cmVtO1xuICBsaW5lLWhlaWdodDogMXJlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi8qIExpbmUgKi9cbi51aS5zbGlkZXIuY2hlY2tib3ggLmJveDpiZWZvcmUsXG4udWkuc2xpZGVyLmNoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDAuNHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAwLjIxNDI4NTcxcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlO1xufVxuLyogSGFuZGxlICovXG4udWkuc2xpZGVyLmNoZWNrYm94IC5ib3g6YWZ0ZXIsXG4udWkuc2xpZGVyLmNoZWNrYm94IGxhYmVsOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRiBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDI7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgMCAwIDAgMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICB0b3A6IC0wLjI1cmVtO1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgdHJhbnNpdGlvbjogbGVmdCAwLjNzIGVhc2U7XG59XG4vKiBGb2N1cyAqL1xuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1cyB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi8qIEhvdmVyICovXG4udWkuc2xpZGVyLmNoZWNrYm94IC5ib3g6aG92ZXIsXG4udWkuc2xpZGVyLmNoZWNrYm94IGxhYmVsOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi51aS5zbGlkZXIuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbDpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbi8qIEFjdGl2ZSAqL1xuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveCxcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSkgIWltcG9ydGFudDtcbn1cbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NCAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveDphZnRlcixcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsOmFmdGVyIHtcbiAgbGVmdDogMnJlbTtcbn1cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveCxcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSkgIWltcG9ydGFudDtcbn1cbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUb2dnbGVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkudG9nZ2xlLmNoZWNrYm94IHtcbiAgbWluLWhlaWdodDogMS41cmVtO1xufVxuLyogSW5wdXQgKi9cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQge1xuICB3aWR0aDogMy41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbn1cbi8qIExhYmVsICovXG4udWkudG9nZ2xlLmNoZWNrYm94IC5ib3gsXG4udWkudG9nZ2xlLmNoZWNrYm94IGxhYmVsIHtcbiAgbWluLWhlaWdodDogMS41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDQuNXJlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkudG9nZ2xlLmNoZWNrYm94IGxhYmVsIHtcbiAgcGFkZGluZy10b3A6IDAuMTVlbTtcbn1cbi8qIFN3aXRjaCAqL1xuLnVpLnRvZ2dsZS5jaGVja2JveCAuYm94OmJlZm9yZSxcbi51aS50b2dnbGUuY2hlY2tib3ggbGFiZWw6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHdpZHRoOiAzLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG59XG4vKiBIYW5kbGUgKi9cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveDphZnRlcixcbi51aS50b2dnbGUuY2hlY2tib3ggbGFiZWw6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJycgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogMjtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZSwgbGVmdCAwLjNzIGVhc2U7XG59XG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0IH4gLmJveDphZnRlcixcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQgfiBsYWJlbDphZnRlciB7XG4gIGxlZnQ6IC0wLjA1cmVtO1xuICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi8qIEZvY3VzICovXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gLmJveDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyOiBub25lO1xufVxuLyogSG92ZXIgKi9cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBsYWJlbDpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyOiBub25lO1xufVxuLyogQWN0aXZlICovXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94LFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KSAhaW1wb3J0YW50O1xufVxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwICFpbXBvcnRhbnQ7XG59XG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIge1xuICBsZWZ0OiAyLjE1cmVtO1xuICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveCxcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSkgIWltcG9ydGFudDtcbn1cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNzFiYiAhaW1wb3J0YW50O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZpdHRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5maXR0ZWQuY2hlY2tib3ggLmJveCxcbi51aS5maXR0ZWQuY2hlY2tib3ggbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cbi51aS5maXR0ZWQudG9nZ2xlLmNoZWNrYm94IHtcbiAgd2lkdGg6IDMuNXJlbTtcbn1cbi51aS5maXR0ZWQuc2xpZGVyLmNoZWNrYm94IHtcbiAgd2lkdGg6IDMuNXJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW52ZXJ0ZWQuY2hlY2tib3ggbGFiZWwsXG4udWkuaW52ZXJ0ZWQuY2hlY2tib3ggKyBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgIWltcG9ydGFudDtcbn1cbi8qIEhvdmVyICovXG4udWkuaW52ZXJ0ZWQuY2hlY2tib3ggLmJveDpob3Zlcixcbi51aS5pbnZlcnRlZC5jaGVja2JveCBsYWJlbDpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG4udWkuaW52ZXJ0ZWQuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLmludmVydGVkLmNoZWNrYm94IGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC41KTtcbn1cbi8qU2xpZGVyIExhYmVsICovXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IC5ib3gsXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IGxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi8qIFNsaWRlciBMaW5lICovXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgIWltcG9ydGFudDtcbn1cbi8qIFNsaWRlciBIb3ZlciAqL1xuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCAuYm94OmhvdmVyOjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNykgIWltcG9ydGFudDtcbn1cbi8qIFNsaWRlciBBY3RpdmUgKi9cbi51aS5pbnZlcnRlZC5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3gsXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbCB7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmJlZm9yZSxcbi51aS5pbnZlcnRlZC5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAhaW1wb3J0YW50O1xufVxuLyogU2xpZGVyIEFjdGl2ZSBGb2N1cyAqL1xuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveCxcbi51aS5pbnZlcnRlZC5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cbi51aS5pbnZlcnRlZC5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpICFpbXBvcnRhbnQ7XG59XG4vKiBUb2dnbGUgU3dpdGNoICovXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgIWltcG9ydGFudDtcbn1cbi8qIFRvZ2dsZSBIb3ZlciAqL1xuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCAuYm94OmhvdmVyOjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG4vKiBUb2dnbGUgQWN0aXZlICovXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94LFxuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwICFpbXBvcnRhbnQ7XG59XG4vKiBUb2dnbGUgQWN0aXZlIEZvY3VzICovXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiAuYm94LFxuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ3MWJiICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubWluaS5jaGVja2JveCB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOWVtO1xufVxuLnVpLnRpbnkuY2hlY2tib3gge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cbi51aS5zbWFsbC5jaGVja2JveCB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M2VtO1xufVxuLnVpLmxhcmdlLmNoZWNrYm94IHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0ZW07XG59XG4udWkubGFyZ2UuZm9ybSAuY2hlY2tib3g6bm90KC5zbGlkZXIpOm5vdCgudG9nZ2xlKTpub3QoLnJhZGlvKSAuYm94OmFmdGVyLFxuLnVpLmxhcmdlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDphZnRlcixcbi51aS5sYXJnZS5mb3JtIC5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIC5ib3g6YmVmb3JlLFxuLnVpLmxhcmdlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDpiZWZvcmUsXG4udWkubGFyZ2UuZm9ybSAuY2hlY2tib3g6bm90KC5zbGlkZXIpOm5vdCgudG9nZ2xlKTpub3QoLnJhZGlvKSBsYWJlbDphZnRlcixcbi51aS5sYXJnZS5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIGxhYmVsOmFmdGVyLFxuLnVpLmxhcmdlLmZvcm0gLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgbGFiZWw6YmVmb3JlLFxuLnVpLmxhcmdlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgbGFiZWw6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjE0Mjg1NzE0KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbn1cbi51aS5sYXJnZS5mb3JtIC5jaGVja2JveC5yYWRpbyAuYm94OmJlZm9yZSxcbi51aS5sYXJnZS5jaGVja2JveC5yYWRpbyAuYm94OmJlZm9yZSxcbi51aS5sYXJnZS5mb3JtIC5jaGVja2JveC5yYWRpbyBsYWJlbDpiZWZvcmUsXG4udWkubGFyZ2UuY2hlY2tib3gucmFkaW8gbGFiZWw6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjE0Mjg1NzE0KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbn1cbi51aS5sYXJnZS5mb3JtIC5jaGVja2JveC5yYWRpbyAuYm94OmFmdGVyLFxuLnVpLmxhcmdlLmNoZWNrYm94LnJhZGlvIC5ib3g6YWZ0ZXIsXG4udWkubGFyZ2UuZm9ybSAuY2hlY2tib3gucmFkaW8gbGFiZWw6YWZ0ZXIsXG4udWkubGFyZ2UuY2hlY2tib3gucmFkaW8gbGFiZWw6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNTcxNDI4NTcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICBsZWZ0OiAwLjMzNTcxNDI5ZW07XG59XG4udWkuYmlnLmNoZWNrYm94IHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG59XG4udWkuYmlnLmZvcm0gLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDphZnRlcixcbi51aS5iaWcuY2hlY2tib3g6bm90KC5zbGlkZXIpOm5vdCgudG9nZ2xlKTpub3QoLnJhZGlvKSAuYm94OmFmdGVyLFxuLnVpLmJpZy5mb3JtIC5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIC5ib3g6YmVmb3JlLFxuLnVpLmJpZy5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIC5ib3g6YmVmb3JlLFxuLnVpLmJpZy5mb3JtIC5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIGxhYmVsOmFmdGVyLFxuLnVpLmJpZy5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIGxhYmVsOmFmdGVyLFxuLnVpLmJpZy5mb3JtIC5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIGxhYmVsOmJlZm9yZSxcbi51aS5iaWcuY2hlY2tib3g6bm90KC5zbGlkZXIpOm5vdCgudG9nZ2xlKTpub3QoLnJhZGlvKSBsYWJlbDpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMjg1NzE0MjkpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xufVxuLnVpLmJpZy5mb3JtIC5jaGVja2JveC5yYWRpbyAuYm94OmJlZm9yZSxcbi51aS5iaWcuY2hlY2tib3gucmFkaW8gLmJveDpiZWZvcmUsXG4udWkuYmlnLmZvcm0gLmNoZWNrYm94LnJhZGlvIGxhYmVsOmJlZm9yZSxcbi51aS5iaWcuY2hlY2tib3gucmFkaW8gbGFiZWw6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjI4NTcxNDI5KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbn1cbi51aS5iaWcuZm9ybSAuY2hlY2tib3gucmFkaW8gLmJveDphZnRlcixcbi51aS5iaWcuY2hlY2tib3gucmFkaW8gLmJveDphZnRlcixcbi51aS5iaWcuZm9ybSAuY2hlY2tib3gucmFkaW8gbGFiZWw6YWZ0ZXIsXG4udWkuYmlnLmNoZWNrYm94LnJhZGlvIGxhYmVsOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY0Mjg1NzE0KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgbGVmdDogMC4zNzE0Mjg1N2VtO1xufVxuLnVpLmh1Z2UuY2hlY2tib3gge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNlbTtcbn1cbi51aS5odWdlLmZvcm0gLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDphZnRlcixcbi51aS5odWdlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDphZnRlcixcbi51aS5odWdlLmZvcm0gLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDpiZWZvcmUsXG4udWkuaHVnZS5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIC5ib3g6YmVmb3JlLFxuLnVpLmh1Z2UuZm9ybSAuY2hlY2tib3g6bm90KC5zbGlkZXIpOm5vdCgudG9nZ2xlKTpub3QoLnJhZGlvKSBsYWJlbDphZnRlcixcbi51aS5odWdlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgbGFiZWw6YWZ0ZXIsXG4udWkuaHVnZS5mb3JtIC5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIGxhYmVsOmJlZm9yZSxcbi51aS5odWdlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgbGFiZWw6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjQyODU3MTQzKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbn1cbi51aS5odWdlLmZvcm0gLmNoZWNrYm94LnJhZGlvIC5ib3g6YmVmb3JlLFxuLnVpLmh1Z2UuY2hlY2tib3gucmFkaW8gLmJveDpiZWZvcmUsXG4udWkuaHVnZS5mb3JtIC5jaGVja2JveC5yYWRpbyBsYWJlbDpiZWZvcmUsXG4udWkuaHVnZS5jaGVja2JveC5yYWRpbyBsYWJlbDpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNDI4NTcxNDMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xufVxuLnVpLmh1Z2UuZm9ybSAuY2hlY2tib3gucmFkaW8gLmJveDphZnRlcixcbi51aS5odWdlLmNoZWNrYm94LnJhZGlvIC5ib3g6YWZ0ZXIsXG4udWkuaHVnZS5mb3JtIC5jaGVja2JveC5yYWRpbyBsYWJlbDphZnRlcixcbi51aS5odWdlLmNoZWNrYm94LnJhZGlvIGxhYmVsOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjcxNDI4NTcxKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgbGVmdDogMC40MDcxNDI4NmVtO1xufVxuLnVpLm1hc3NpdmUuY2hlY2tib3gge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFlbTtcbn1cbi51aS5tYXNzaXZlLmZvcm0gLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDphZnRlcixcbi51aS5tYXNzaXZlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDphZnRlcixcbi51aS5tYXNzaXZlLmZvcm0gLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgLmJveDpiZWZvcmUsXG4udWkubWFzc2l2ZS5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIC5ib3g6YmVmb3JlLFxuLnVpLm1hc3NpdmUuZm9ybSAuY2hlY2tib3g6bm90KC5zbGlkZXIpOm5vdCgudG9nZ2xlKTpub3QoLnJhZGlvKSBsYWJlbDphZnRlcixcbi51aS5tYXNzaXZlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgbGFiZWw6YWZ0ZXIsXG4udWkubWFzc2l2ZS5mb3JtIC5jaGVja2JveDpub3QoLnNsaWRlcik6bm90KC50b2dnbGUpOm5vdCgucmFkaW8pIGxhYmVsOmJlZm9yZSxcbi51aS5tYXNzaXZlLmNoZWNrYm94Om5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykgbGFiZWw6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjcxNDI4NTcxKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbn1cbi51aS5tYXNzaXZlLmZvcm0gLmNoZWNrYm94LnJhZGlvIC5ib3g6YmVmb3JlLFxuLnVpLm1hc3NpdmUuY2hlY2tib3gucmFkaW8gLmJveDpiZWZvcmUsXG4udWkubWFzc2l2ZS5mb3JtIC5jaGVja2JveC5yYWRpbyBsYWJlbDpiZWZvcmUsXG4udWkubWFzc2l2ZS5jaGVja2JveC5yYWRpbyBsYWJlbDpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNzE0Mjg1NzEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xufVxuLnVpLm1hc3NpdmUuZm9ybSAuY2hlY2tib3gucmFkaW8gLmJveDphZnRlcixcbi51aS5tYXNzaXZlLmNoZWNrYm94LnJhZGlvIC5ib3g6YWZ0ZXIsXG4udWkubWFzc2l2ZS5mb3JtIC5jaGVja2JveC5yYWRpbyBsYWJlbDphZnRlcixcbi51aS5tYXNzaXZlLmNoZWNrYm94LnJhZGlvIGxhYmVsOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1NzE0Mjg2KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgbGVmdDogMC40Nzg1NzE0M2VtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NoZWNrYm94JztcbiAgc3JjOiB1cmwoZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWc4U0JEOEFBQUM4QUFBQVlHTnRZWEFZVnRDSkFBQUJIQUFBQUZSbllYTndBQUFBRUFBQUFYQUFBQUFJWjJ4NVpuNGh1d1VBQUFGNEFBQUJZR2hsWVdRR1BlMVpBQUFDMkFBQUFEWm9hR1ZoQjMwRHlBQUFBeEFBQUFBa2FHMTBlQkJLQUVVQUFBTTBBQUFBSEd4dlkyRUFtZ0VTQUFBRFVBQUFBQkJ0WVhod0FBa0FMd0FBQTJBQUFBQWdibUZ0WlNDOEl1Z0FBQU9BQUFBQmtuQnZjM1FBQXdBQUFBQUZGQUFBQUNBQUF3TVRBWkFBQlFBQUFwa0N6QUFBQUk4Q21RTE1BQUFCNndBekFRa0FBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRG9BZ1BBLzhBQVFBUEFBRUFBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQURBQUFBSEFBREFBRUFBQUFjQUFRQU9BQUFBQW9BQ0FBQ0FBSUFBUUFnNkFMLy9mLy9BQUFBQUFBZzZBRC8vZi8vQUFILzR4Z0VBQU1BQVFBQUFBQUFBQUFBQUFBQUFRQUIvLzhBRHdBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFCQUVVQVVRTzdBdmdBR2dBQUFSUUhBUVlqSWljQkpqVTBQd0UyTXpJZkFRRTJNeklmQVJZVkE3c1EvaFFRRmhjUS91TVFFRTRRRnhjUXFBRjJFQmNYRUU0UUFuTVdFUDRVRUJBQkhSQVhGaEJPRUJDb0FYY1FFRTRRRndBQUFBQUJBQUFCYmdNbEFra0FGQUFBQVJVVUJ3WWpJU0luSmowQk5EYzJNeUV5RnhZVkF5VVFFQmY5U1JjUUVCQVFGd0szRnhBUUFoSnRGeEFRRUJBWGJSY1FFQkFRRndBQUFBQUJBQUFBU1FNbEEyNEFMQUFBQVJVVUJ3WXJBUlVVQndZckFTSW5KajBCSXlJbkpqMEJORGMyT3dFMU5EYzJPd0V5RnhZZEFUTXlGeFlWQXlVUUVCZnVFQkFYYmhZUUVPNFhFQkFRRUJmdUVCQVdiaGNRRU80WEVCQUNFbTBYRUJEdUZ4QVFFQkFYN2hBUUYyMFhFQkR1RnhBUUVCQVg3aEFRRndBQUFRQUFBQUlBQUhSU3pUOWZEenoxQUFzRUFBQUFBQURSc2RSM0FBQUFBTkd4MUhjQUFBQUFBN3NEYmdBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFEd1AvQUFBQUVBQUFBQUFBRHV3QUJBQUFBQUFBQUFBQUFBQUFBQUFBQUJ3UUFBQUFBQUFBQUFBQUFBQUlBQUFBRUFBQkZBeVVBQUFNbEFBQUFBQUFBQUFvQUZBQWVBRTRBY2dDd0FBRUFBQUFIQUMwQUFRQUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT0FLNEFBUUFBQUFBQUFRQUlBQUFBQVFBQUFBQUFBZ0FIQUdrQUFRQUFBQUFBQXdBSUFEa0FBUUFBQUFBQUJBQUlBSDRBQVFBQUFBQUFCUUFMQUJnQUFRQUFBQUFBQmdBSUFGRUFBUUFBQUFBQUNnQWFBSllBQXdBQkJBa0FBUUFRQUFnQUF3QUJCQWtBQWdBT0FIQUFBd0FCQkFrQUF3QVFBRUVBQXdBQkJBa0FCQUFRQUlZQUF3QUJCQWtBQlFBV0FDTUFBd0FCQkFrQUJnQVFBRmtBQXdBQkJBa0FDZ0EwQUxCRGFHVmphMkp2ZUFCREFHZ0FaUUJqQUdzQVlnQnZBSGhXWlhKemFXOXVJREl1TUFCV0FHVUFjZ0J6QUdrQWJ3QnVBQ0FBTWdBdUFEQkRhR1ZqYTJKdmVBQkRBR2dBWlFCakFHc0FZZ0J2QUhoRGFHVmphMkp2ZUFCREFHZ0FaUUJqQUdzQVlnQnZBSGhTWldkMWJHRnlBRklBWlFCbkFIVUFiQUJoQUhKRGFHVmphMkp2ZUFCREFHZ0FaUUJqQUdzQVlnQnZBSGhHYjI1MElHZGxibVZ5WVhSbFpDQmllU0JKWTI5TmIyOXVMZ0JHQUc4QWJnQjBBQ0FBWndCbEFHNEFaUUJ5QUdFQWRBQmxBR1FBSUFCaUFIa0FJQUJKQUdNQWJ3Qk5BRzhBYndCdUFDNEFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQSkgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuLyogQ2hlY2ttYXJrICovXG4udWkuY2hlY2tib3ggbGFiZWw6YWZ0ZXIsXG4udWkuY2hlY2tib3ggLmJveDphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiAnQ2hlY2tib3gnO1xufVxuLyogQ2hlY2tlZCAqL1xuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXGU4MDAnO1xufVxuLyogSW5kZXRlcm1pbmF0ZSAqL1xuLnVpLmNoZWNrYm94IGlucHV0OmluZGV0ZXJtaW5hdGUgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0OmluZGV0ZXJtaW5hdGUgfiBsYWJlbDphZnRlciB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29udGVudDogJ1xcZTgwMSc7XG59XG4vKiAgVVRGIFJlZmVyZW5jZVxuLmNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDAnOyB9XG4uZGFzaDpiZWZvcmUgIHsgY29udGVudDogJ1xcZTgwMSc7IH1cbi5wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDInOyB9XG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gRGltbWVyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIERpbW1lclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEhpZGRlbiAoRGVmYXVsdCkgKi9cbi8qIFZpc2libGUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUGFnZSBEaW1tZXIqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogU2ltcGxlICovXG4vKiBJbnRlbnNpdHkgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRGltbWVyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogSGlkZGVuIChEZWZhdWx0KSAqL1xuLyogVmlzaWJsZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQYWdlIERpbW1lciovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBTaW1wbGUgKi9cbi8qIEludGVuc2l0eSAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIERpbW1lclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5kaW1tYWJsZTpub3QoYm9keSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udWkuZGltbWVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDFlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgb3BhY2l0eTogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41cztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzIGxpbmVhcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgei1pbmRleDogMTAwMDtcbn1cbi8qIERpbW1lciBDb250ZW50ICovXG4udWkuZGltbWVyID4gLmNvbnRlbnQge1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4vKiBMb29zZSBDb3VwbGluZyAqL1xuLnVpLnNlZ21lbnQgPiAudWkuZGltbWVyIHtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuLyogU2Nyb2xsYmFycyAqL1xuLnVpLmRpbW1lcjpub3QoLmludmVydGVkKTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4udWkuZGltbWVyOm5vdCguaW52ZXJ0ZWQpOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG4udWkuZGltbWVyOm5vdCguaW52ZXJ0ZWQpOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjp3aW5kb3ctaW5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuLnVpLmRpbW1lcjpub3QoLmludmVydGVkKTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEFuaW1hdGluZyAqL1xuLmFuaW1hdGluZy5kaW1tYWJsZTpub3QoYm9keSksXG4uZGltbWVkLmRpbW1hYmxlOm5vdChib2R5KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4vKiBBbmltYXRpbmcgLyBBY3RpdmUgLyBWaXNpYmxlICovXG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLmFuaW1hdGluZy5kaW1tZXIsXG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLnZpc2libGUuZGltbWVyLFxuLnVpLmFjdGl2ZS5kaW1tZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBvcGFjaXR5OiAxO1xufVxuLyogRGlzYWJsZWQgKi9cbi51aS5kaXNhYmxlZC5kaW1tZXIge1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTGVnYWN5XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogQW5pbWF0aW5nIC8gQWN0aXZlIC8gVmlzaWJsZSAqL1xuLmRpbW1lZC5kaW1tYWJsZSA+IC51aS5hbmltYXRpbmcubGVnYWN5LmRpbW1lcixcbi5kaW1tZWQuZGltbWFibGUgPiAudWkudmlzaWJsZS5sZWdhY3kuZGltbWVyLFxuLnVpLmFjdGl2ZS5sZWdhY3kuZGltbWVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQWxpZ25tZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmRpbW1lciB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXS5kaW1tZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wYWdlLmRpbW1lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiAnJztcbiAgcGVyc3BlY3RpdmU6IDIwMDBweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cbmJvZHkuYW5pbWF0aW5nLmluLmRpbW1hYmxlLFxuYm9keS5kaW1tZWQuZGltbWFibGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuYm9keS5kaW1tYWJsZSA+IC5kaW1tZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQmx1cnJpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4uYmx1cnJpbmcuZGltbWFibGUgPiA6bm90KC5kaW1tZXIpIHtcbiAgZmlsdGVyOiBpbml0aWFsO1xuICB0cmFuc2l0aW9uOiA4MDBtcyBmaWx0ZXIgZWFzZTtcbn1cbi5ibHVycmluZy5kaW1tZWQuZGltbWFibGUgPiA6bm90KC5kaW1tZXIpOm5vdCgucG9wdXApIHtcbiAgZmlsdGVyOiBibHVyKDVweCkgZ3JheXNjYWxlKDAuNyk7XG59XG4vKiBEaW1tZXIgQ29sb3IgKi9cbi5ibHVycmluZy5kaW1tYWJsZSA+IC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG4uYmx1cnJpbmcuZGltbWFibGUgPiAuaW52ZXJ0ZWQuZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZGltbWVyID4gLnRvcC5hbGlnbmVkLmNvbnRlbnQgPiAqIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi51aS5kaW1tZXIgPiAuYm90dG9tLmFsaWduZWQuY29udGVudCA+ICoge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNoYWRlc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi5tZWRpdW0ubWVkaXVtLm1lZGl1bS5tZWRpdW0ubWVkaXVtLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42NSk7XG59XG4ubGlnaHQubGlnaHQubGlnaHQubGlnaHQubGlnaHQuZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbn1cbi52ZXJ5LmxpZ2h0LmxpZ2h0LmxpZ2h0LmxpZ2h0LmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW52ZXJ0ZWQuZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbn1cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAuY29udGVudCxcbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAuY29udGVudCA+ICoge1xuICBjb2xvcjogIzAwMDAwMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiBJbnZlcnRlZCBTaGFkZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4ubWVkaXVtLm1lZGl1bS5tZWRpdW0ubWVkaXVtLm1lZGl1bS5pbnZlcnRlZC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjUpO1xufVxuLmxpZ2h0LmxpZ2h0LmxpZ2h0LmxpZ2h0LmxpZ2h0LmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40NSk7XG59XG4udmVyeS5saWdodC5saWdodC5saWdodC5saWdodC5pbnZlcnRlZC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaW1wbGVcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaXNwbGF5cyB3aXRob3V0IGphdmFzY3JpcHQgKi9cbi51aS5zaW1wbGUuZGltbWVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHotaW5kZXg6IC0xMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLnNpbXBsZS5kaW1tZXIge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgei1pbmRleDogMTtcbn1cbi51aS5zaW1wbGUuaW52ZXJ0ZWQuZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbn1cbi5kaW1tZWQuZGltbWFibGUgPiAudWkuc2ltcGxlLmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBhcnRpYWxseVxuLS0tLS0tLS0tLS0tLS0tLSovXG4udWlbY2xhc3MqPVwidG9wIGRpbW1lclwiXSxcbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLFxuLnVpW2NsYXNzKj1cImJvdHRvbSBkaW1tZXJcIl0ge1xuICBoZWlnaHQ6IGF1dG87XG59XG4udWlbY2xhc3MqPVwiYm90dG9tIGRpbW1lclwiXSB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDA7XG59XG4udWlbY2xhc3MqPVwiY2VudGVyIGRpbW1lclwiXSB7XG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNTAlIC0gMC41cHgpKTtcbn1cbi51aS5zZWdtZW50ID4gLnVpW2NsYXNzKj1cInRvcCBkaW1tZXJcIl0ge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4udWkuc2VnbWVudCA+IC51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLnVpLnNlZ21lbnQgPiAudWlbY2xhc3MqPVwiYm90dG9tIGRpbW1lclwiXSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSB1cFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcENlbnRlcjtcbn1cbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBkb3duXCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25DZW50ZXI7XG59XG4udWlbY2xhc3MqPVwiY2VudGVyIGRpbW1lclwiXS50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgdXBcIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcENlbnRlcjtcbn1cbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBkb3duXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkNlbnRlcjtcbn1cbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLmJvdW5jZS50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUNlbnRlcjtcbn1cbkBrZXlmcmFtZXMgZmFkZUluVXBDZW50ZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNDAlIC0gMC41cHgpKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01MCUgLSAwLjVweCkpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd25DZW50ZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNjAlIC0gMC41cHgpKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01MCUgLSAwLjVweCkpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcENlbnRlciB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01MCUgLSAwLjVweCkpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00NSUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTQ1JSAtIDAuNXB4KSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dERvd25DZW50ZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNTAlIC0gMC41cHgpKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTUlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01NSUgLSAwLjVweCkpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZUNlbnRlciB7XG4gIDAlLFxuICAyMCUsXG4gIDUwJSxcbiAgODAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNTAlIC0gMC41cHgpKTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01MCUgLSAzMHB4KSk7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNTAlIC0gMTVweCkpO1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVXNlciBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBEcm9wZG93blxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBEcm9wZG93blxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEljb24gKi9cbi8qIEN1cnJlbnQgVGV4dCAqL1xuLyogTWVudSAqL1xuLyogVGV4dCAqL1xuLyogTWVudSBJdGVtICovXG4vKiBTdWIgTWVudSAqL1xuLyogTWVudSBIZWFkZXIgKi9cbi8qIE1lbnUgRGl2aWRlciAqL1xuLyogTWVudSBJbnB1dCAqL1xuLyogTWVudSBJbWFnZSAqL1xuLyogSXRlbSBTdWItRWxlbWVudCAqL1xuLyogU3ViLU1lbnUgRHJvcGRvd24gSWNvbiAqL1xuLyogRGVzY3JpcHRpb24gKi9cbi8qIE1lc3NhZ2UgKi9cbi8qIEZsb2F0ZWQgQ29udGVudCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLVxuICAgU2VsZWN0aW9uXG4tLS0tLS0tLS0tLS0tLSovXG4vKiA8c2VsZWN0PiAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyogRGVyaXZlZCAqL1xuLyogMXB4IC8gZW0gc2l6ZSAqL1xuLyogSG92ZXIgKi9cbi8qIEZvY3VzICovXG4vKiBWaXNpYmxlICovXG4vKiBWaXNpYmxlIEhvdmVyICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNlYXJjaFxuLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VhcmNoIFNlbGVjdGlvbiAqL1xuLyogSW5saW5lICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTXVsdGlwbGVcbi0tLS0tLS0tLS0tLS0tKi9cbi8qIFNwbGl0IEFjdHVhbCBQYWRkaW5nIEJldHdlZW4gQ2hpbGQgYW5kIFBhcmVudCAoYWxsb3dzIGZvciBsYWJlbCBzcGFjaW5nKSAqL1xuLyogQ2hpbGQgRWxlbWVudHMgKi9cbi8qIERyb3Bkb3duIEljb24gKi9cbi8qIFNlbGVjdGlvbiBMYWJlbCAqL1xuLyogTG9naWMgYWRvcHRlZCBmcm9tIGxhYmVsLmxlc3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSG92ZXJlZCAqL1xuLyogRGVmYXVsdCBUZXh0ICovXG4vKiBMb2FkaW5nICovXG4vKiBBY3RpdmUgTWVudSBJdGVtICovXG4vKiBTZWxlY3RlZCAqL1xuLyogRXJyb3IgKi9cbi8qIENsZWFyYWJsZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTY3JvbGxpbmcgKi9cbi8qIDAgLyBlbSBzaXplICovXG4vKiBVcHdhcmQgKi9cbi8qIEZseW91dCBEaXJlY3Rpb24gKi9cbi8qIExlZnQgKi9cbi8qIFNpbXBsZSAqL1xuLyogRmxvYXRpbmcgKi9cbi8qIFBvaW50aW5nICovXG4vKiBQb2ludGluZyBVcHdhcmQgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEdlbmVyYWwgcnVsZXMgYW5kIGJhc2ljIGRyb3Bkb3ducyAqL1xuLyogU2VsZWN0aW9uICovXG4vKiBNdWx0aXBsZSAqL1xuLypAaW52ZXJ0ZWRMYWJlbEJhY2tncm91bmRDb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KTtcbkBpbnZlcnRlZExhYmVsQmFja2dyb3VuZEltYWdlOiBub25lO1xuQGludmVydGVkTGFiZWxDb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuQGludmVydGVkTGFiZWxCb3hTaGFkb3c6IDAgMCAwIEBsYWJlbEJvcmRlcldpZHRoIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNikgaW5zZXQ7XG5cbkBpbnZlcnRlZExhYmVsSG92ZXJCYWNrZ3JvdW5kQ29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG5AaW52ZXJ0ZWRMYWJlbEhvdmVyQmFja2dyb3VuZEltYWdlOiBub25lO1xuQGludmVydGVkTGFiZWxIb3ZlclRleHRDb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpOyovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIERyb3Bkb3duXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSWNvbiAqL1xuLyogQ3VycmVudCBUZXh0ICovXG4vKiBNZW51ICovXG4vKiBUZXh0ICovXG4vKiBNZW51IEl0ZW0gKi9cbi8qIFN1YiBNZW51ICovXG4vKiBNZW51IEhlYWRlciAqL1xuLyogTWVudSBEaXZpZGVyICovXG4vKiBNZW51IElucHV0ICovXG4vKiBNZW51IEltYWdlICovXG4vKiBJdGVtIFN1Yi1FbGVtZW50ICovXG4vKiBTdWItTWVudSBEcm9wZG93biBJY29uICovXG4vKiBEZXNjcmlwdGlvbiAqL1xuLyogTWVzc2FnZSAqL1xuLyogRmxvYXRlZCBDb250ZW50ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tXG4gICBTZWxlY3Rpb25cbi0tLS0tLS0tLS0tLS0tKi9cbi8qIDxzZWxlY3Q+ICovXG4vKiBSZXNwb25zaXZlICovXG4vKiBEZXJpdmVkICovXG4vKiAxcHggLyBlbSBzaXplICovXG4vKiBIb3ZlciAqL1xuLyogRm9jdXMgKi9cbi8qIFZpc2libGUgKi9cbi8qIFZpc2libGUgSG92ZXIgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2VhcmNoXG4tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWFyY2ggU2VsZWN0aW9uICovXG4vKiBJbmxpbmUgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBNdWx0aXBsZVxuLS0tLS0tLS0tLS0tLS0qL1xuLyogU3BsaXQgQWN0dWFsIFBhZGRpbmcgQmV0d2VlbiBDaGlsZCBhbmQgUGFyZW50IChhbGxvd3MgZm9yIGxhYmVsIHNwYWNpbmcpICovXG4vKiBDaGlsZCBFbGVtZW50cyAqL1xuLyogRHJvcGRvd24gSWNvbiAqL1xuLyogU2VsZWN0aW9uIExhYmVsICovXG4vKiBMb2dpYyBhZG9wdGVkIGZyb20gbGFiZWwubGVzcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBIb3ZlcmVkICovXG4vKiBEZWZhdWx0IFRleHQgKi9cbi8qIExvYWRpbmcgKi9cbi8qIEFjdGl2ZSBNZW51IEl0ZW0gKi9cbi8qIFNlbGVjdGVkICovXG4vKiBFcnJvciAqL1xuLyogQ2xlYXJhYmxlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNjcm9sbGluZyAqL1xuLyogMCAvIGVtIHNpemUgKi9cbi8qIFVwd2FyZCAqL1xuLyogRmx5b3V0IERpcmVjdGlvbiAqL1xuLyogTGVmdCAqL1xuLyogU2ltcGxlICovXG4vKiBGbG9hdGluZyAqL1xuLyogUG9pbnRpbmcgKi9cbi8qIFBvaW50aW5nIFVwd2FyZCAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogR2VuZXJhbCBydWxlcyBhbmQgYmFzaWMgZHJvcGRvd25zICovXG4vKiBTZWxlY3Rpb24gKi9cbi8qIE11bHRpcGxlICovXG4vKkBpbnZlcnRlZExhYmVsQmFja2dyb3VuZENvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuQGludmVydGVkTGFiZWxCYWNrZ3JvdW5kSW1hZ2U6IG5vbmU7XG5AaW52ZXJ0ZWRMYWJlbENvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG5AaW52ZXJ0ZWRMYWJlbEJveFNoYWRvdzogMCAwIDAgQGxhYmVsQm9yZGVyV2lkdGggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE2KSBpbnNldDtcblxuQGludmVydGVkTGFiZWxIb3ZlckJhY2tncm91bmRDb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbkBpbnZlcnRlZExhYmVsSG92ZXJCYWNrZ3JvdW5kSW1hZ2U6IG5vbmU7XG5AaW52ZXJ0ZWRMYWJlbEhvdmVyVGV4dENvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7Ki9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBEcm9wZG93blxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5kcm9wZG93biB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xcyBlYXNlLCB3aWR0aCAwLjFzIGVhc2U7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1lbnVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZHJvcGRvd24gLm1lbnUge1xuICBjdXJzb3I6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdG9wOiAxMDAlO1xuICBtaW4td2lkdGg6IG1heC1jb250ZW50O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAxZW07XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3gtc2hhZG93OiAwIDJweCAzcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbiAgei1pbmRleDogMTE7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG59XG4udWkuZHJvcGRvd24gLm1lbnUgPiAqIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgSGlkZGVuIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmRyb3Bkb3duID4gaW5wdXQ6bm90KC5zZWFyY2gpOmZpcnN0LWNoaWxkLFxuLnVpLmRyb3Bkb3duID4gc2VsZWN0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuIERyb3Bkb3duIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbi5pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2ZW07XG4gIG1hcmdpbjogMCAwIDAgMWVtO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gLmRyb3Bkb3duLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDBlbSAwIDAgMWVtO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gLmRyb3Bkb3duLmljb24gKyAudGV4dCB7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgVGV4dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93biA+IC50ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIE1lbnUgSXRlbVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgcGFkZGluZzogMC43ODU3MTQyOXJlbSAxLjE0Mjg1NzE0cmVtICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG59XG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gIEZsb2F0ZWQgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93biA+IC50ZXh0ID4gW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0sXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDFlbSAhaW1wb3J0YW50O1xufVxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiBbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLFxuLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtID4gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMWVtICFpbXBvcnRhbnQ7XG59XG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiAuaWNvbi5mbG9hdGVkLFxuLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtID4gLmZsYWcuZmxvYXRlZCxcbi51aS5kcm9wZG93biAubWVudSAuaXRlbSA+IC5pbWFnZS5mbG9hdGVkLFxuLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtID4gaW1nLmZsb2F0ZWQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gIE1lbnUgRGl2aWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93biAubWVudSA+IC5oZWFkZXIge1xuICBtYXJnaW46IDFyZW0gMCAwLjc1cmVtO1xuICBwYWRkaW5nOiAwIDEuMTQyODU3MTRyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBmb250LXNpemU6IDAuNzg1NzE0MjllbTtcbn1cbi51aS5kcm9wZG93biAubWVudSA+IC5kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDAuNWVtIDA7XG59XG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaG9yaXpvbnRhbC5kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi51aS5kcm9wZG93bi5kcm9wZG93biAubWVudSA+IC5pbnB1dCB7XG4gIHdpZHRoOiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDEuMTQyODU3MTRyZW0gMC43ODU3MTQyOXJlbTtcbiAgbWluLXdpZHRoOiAxMHJlbTtcbn1cbi51aS5kcm9wZG93biAubWVudSA+IC5oZWFkZXIgKyAuaW5wdXQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmlucHV0Om5vdCgudHJhbnNwYXJlbnQpIGlucHV0IHtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmlucHV0Om5vdCgudHJhbnNwYXJlbnQpIC5idXR0b24sXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaW5wdXQ6bm90KC50cmFuc3BhcmVudCkgLmljb24sXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaW5wdXQ6bm90KC50cmFuc3BhcmVudCkgLmxhYmVsIHtcbiAgcGFkZGluZy10b3A6IDAuNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gIEl0ZW0gRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAuZGVzY3JpcHRpb24sXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5kZXNjcmlwdGlvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMCAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTWVzc2FnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZHJvcGRvd24gLm1lbnUgPiAubWVzc2FnZSB7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjlyZW0gMS4xNDI4NTcxNHJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi51aS5kcm9wZG93biAubWVudSA+IC5tZXNzYWdlOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTdWIgTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93biAubWVudSAubWVudSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCAwIDAgLTAuNWVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbiAgei1pbmRleDogMjEgIWltcG9ydGFudDtcbn1cbi8qIEhpZGUgQXJyb3cgKi9cbi51aS5kcm9wZG93biAubWVudSAubWVudTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdWIgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBJY29ucyAvIEZsYWdzIC8gTGFiZWxzIC8gSW1hZ2UgKi9cbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmljb24sXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5sYWJlbCxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmZsYWcsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IGltZyxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmltYWdlIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuaWNvbixcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmxhYmVsLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuZmxhZyxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiBpbWcge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pY29uLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAubGFiZWwsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5mbGFnLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiBpbWcsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pbWFnZSxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmljb24sXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5sYWJlbCxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmZsYWcsXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5pbWFnZSxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzg1NzE0MjlyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEltYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmRyb3Bkb3duID4gLnRleHQgPiBpbWcsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pbWFnZTpub3QoLmljb24pLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuaW1hZ2U6bm90KC5pY29uKSxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTAuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC41ZW07XG4gIG1heC1oZWlnaHQ6IDJlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1lbnVcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBSZW1vdmUgTWVudSBJdGVtIERpdmlkZXIgKi9cbi51aS5kcm9wZG93biAudWkubWVudSA+IC5pdGVtOmJlZm9yZSxcbi51aS5tZW51IC51aS5kcm9wZG93biAubWVudSA+IC5pdGVtOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBQcmV2ZW50IE1lbnUgSXRlbSBCb3JkZXIgKi9cbi51aS5tZW51IC51aS5kcm9wZG93biAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cbi8qIEF1dG9tYXRpY2FsbHkgZmxvYXQgZHJvcGRvd24gbWVudSByaWdodCBvbiBsYXN0IG1lbnUgaXRlbSAqL1xuLnVpLm1lbnUgLnJpZ2h0Lm1lbnUgLmRyb3Bkb3duOmxhc3QtY2hpbGQgLm1lbnUsXG4udWkubWVudSAucmlnaHQuZHJvcGRvd24uaXRlbSAubWVudSxcbi51aS5idXR0b25zID4gLnVpLmRyb3Bkb3duOmxhc3QtY2hpbGQgLm1lbnUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIExhYmVsXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogRHJvcGRvd24gTWVudSAqL1xuLnVpLmxhYmVsLmRyb3Bkb3duIC5tZW51IHtcbiAgbWluLXdpZHRoOiAxMDAlO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBObyBNYXJnaW4gT24gSWNvbiBCdXR0b24gKi9cbi51aS5kcm9wZG93bi5pY29uLmJ1dHRvbiA+IC5kcm9wZG93bi5pY29uIHtcbiAgbWFyZ2luOiAwO1xufVxuLnVpLmJ1dHRvbi5kcm9wZG93biAubWVudSB7XG4gIG1pbi13aWR0aDogMTAwJTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNlbGVjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpc3BsYXlzIGxpa2UgYSBzZWxlY3QgYm94ICovXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIG91dGxpbmU6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlWigwZGVnKTtcbiAgbWluLXdpZHRoOiAxNGVtO1xuICBtaW4taGVpZ2h0OiAyLjcxNDI4NTcxZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC43ODU3MTQyOWVtIDMuMmVtIDAuNzg1NzE0MjllbSAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMXMgZWFzZSwgd2lkdGggMC4xcyBlYXNlO1xufVxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi52aXNpYmxlLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5hY3RpdmUge1xuICB6LWluZGV4OiAxMDtcbn1cbnNlbGVjdC51aS5kcm9wZG93biB7XG4gIGhlaWdodDogMzhweDtcbiAgcGFkZGluZzogMC41ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duID4gLnNlYXJjaC5pY29uLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kZWxldGUuaWNvbixcbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMS4yMTQyODU3MWVtO1xuICB0b3A6IDAuNzg1NzE0MjllbTtcbiAgcmlnaHQ6IDFlbTtcbiAgei1pbmRleDogMztcbiAgbWFyZ2luOiAtMC43ODU3MTQyOWVtO1xuICBwYWRkaW5nOiAwLjkxNjY2NjY3ZW07XG4gIG9wYWNpdHk6IDAuODtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG59XG4vKiBDb21wYWN0ICovXG4udWkuY29tcGFjdC5zZWxlY3Rpb24uZHJvcGRvd24ge1xuICBtaW4td2lkdGg6IDA7XG59XG4vKiAgU2VsZWN0aW9uIE1lbnUgKi9cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBib3JkZXItdG9wLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBvdXRsaW5lOiBub25lO1xuICBtYXJnaW46IDAgLTFweDtcbiAgbWluLXdpZHRoOiBjYWxjKDEwMCUgKyAycHgpO1xuICB3aWR0aDogY2FsYygxMDAlICsgMnB4KTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbiAgYm94LXNoYWRvdzogMCAycHggM3B4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG59XG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51OmFmdGVyLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIE1lc3NhZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51ID4gLm1lc3NhZ2Uge1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5cmVtIDEuMTQyODU3MTRyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd25bY2xhc3MqPVwidmVyeSBzaG9ydFwiXSAubWVudSB7XG4gICAgbWF4LWhlaWdodDogNC4wMDcxNDI4NnJlbTtcbiAgfVxuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duLnNob3J0IC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiA2LjAxMDcxNDI5cmVtO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDguMDE0Mjg1NzFyZW07XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5sb25nIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiAxNi4wMjg1NzE0M3JlbTtcbiAgfVxuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duW2NsYXNzKj1cInZlcnkgbG9uZ1wiXSAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMjQuMDQyODU3MTRyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93bltjbGFzcyo9XCJ2ZXJ5IHNob3J0XCJdIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiA1LjM0Mjg1NzE0cmVtO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24uc2hvcnQgLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDguMDE0Mjg1NzFyZW07XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMTAuNjg1NzE0MjlyZW07XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5sb25nIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiAyMS4zNzE0Mjg1N3JlbTtcbiAgfVxuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duW2NsYXNzKj1cInZlcnkgbG9uZ1wiXSAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMzIuMDU3MTQyODZyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93bltjbGFzcyo9XCJ2ZXJ5IHNob3J0XCJdIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiA4LjAxNDI4NTcxcmVtO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24uc2hvcnQgLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDEyLjAyMTQyODU3cmVtO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDE2LjAyODU3MTQzcmVtO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24ubG9uZyAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMzIuMDU3MTQyODZyZW07XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93bltjbGFzcyo9XCJ2ZXJ5IGxvbmdcIl0gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDQ4LjA4NTcxNDI5cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duW2NsYXNzKj1cInZlcnkgc2hvcnRcIl0gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDEwLjY4NTcxNDI5cmVtO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24uc2hvcnQgLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDE2LjAyODU3MTQzcmVtO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDIxLjM3MTQyODU3cmVtO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24ubG9uZyAubWVudSB7XG4gICAgbWF4LWhlaWdodDogNDIuNzQyODU3MTRyZW07XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93bltjbGFzcyo9XCJ2ZXJ5IGxvbmdcIl0gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDY0LjExNDI4NTcxcmVtO1xuICB9XG59XG4vKiBNZW51IEl0ZW0gKi9cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRkFGQUZBO1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5cmVtIDEuMTQyODU3MTRyZW0gIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG4vKiBVc2VyIEl0ZW0gKi9cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUgPiAuaGlkZGVuLmFkZGl0aW9uLml0ZW0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogSG92ZXIgKi9cbi51aS5zZWxlY3Rpb24uZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4vKiBBY3RpdmUgKi9cbi51aS5zZWxlY3Rpb24uYWN0aXZlLmRyb3Bkb3duIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTZDOERBO1xuICBib3gtc2hhZG93OiAwIDJweCAzcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnNlbGVjdGlvbi5hY3RpdmUuZHJvcGRvd24gLm1lbnUge1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDNweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4vKiBGb2N1cyAqL1xuLnVpLnNlbGVjdGlvbi5kcm9wZG93bjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzk2QzhEQTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS5zZWxlY3Rpb24uZHJvcGRvd246Zm9jdXMgLm1lbnUge1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDNweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4vKiBWaXNpYmxlICovXG4udWkuc2VsZWN0aW9uLnZpc2libGUuZHJvcGRvd24gPiAudGV4dDpub3QoLmRlZmF1bHQpIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cbi8qIFZpc2libGUgSG92ZXIgKi9cbi51aS5zZWxlY3Rpb24uYWN0aXZlLmRyb3Bkb3duOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTZDOERBO1xuICBib3gtc2hhZG93OiAwIDJweCAzcHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLnVpLnNlbGVjdGlvbi5hY3RpdmUuZHJvcGRvd246aG92ZXIgLm1lbnUge1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDNweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4vKiBEcm9wZG93biBJY29uICovXG4udWkuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uLFxuLnVpLnZpc2libGUuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBvcGFjaXR5OiAnJztcbiAgei1pbmRleDogMztcbn1cbi8qIENvbm5lY3RpbmcgQm9yZGVyICovXG4udWkuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbi8qIEVtcHR5IENvbm5lY3RpbmcgQm9yZGVyICovXG4udWkuYWN0aXZlLmVtcHR5LnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLnVpLmFjdGl2ZS5lbXB0eS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgU2VhcmNoYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlYXJjaCBTZWxlY3Rpb24gKi9cbi51aS5zZWFyY2guZHJvcGRvd24ge1xuICBtaW4td2lkdGg6ICcnO1xufVxuLyogU2VhcmNoIERyb3Bkb3duICovXG4udWkuc2VhcmNoLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjdXJzb3I6IHRleHQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMXB4O1xuICB3aWR0aDogMTAwJTtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICBwYWRkaW5nOiBpbmhlcml0O1xufVxuLyogVGV4dCBMYXllcmluZyAqL1xuLnVpLnNlYXJjaC5kcm9wZG93biA+IGlucHV0LnNlYXJjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbn1cbi51aS5zZWFyY2guZHJvcGRvd24gPiAudGV4dCB7XG4gIGN1cnNvcjogdGV4dDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAxcHg7XG4gIHotaW5kZXg6IDM7XG59XG4vKiBTZWFyY2ggU2VsZWN0aW9uICovXG4udWkuc2VhcmNoLnNlbGVjdGlvbi5kcm9wZG93biA+IGlucHV0LnNlYXJjaCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjIxNDI4NTcxZW07XG4gIHBhZGRpbmc6IDAuNjc4NTcxNDNlbSAzLjJlbSAwLjY3ODU3MTQzZW0gMWVtO1xufVxuLyogVXNlZCB0byBzaXplIG11bHRpIHNlbGVjdCBpbnB1dCB0byBjaGFyYWN0ZXIgd2lkdGggKi9cbi51aS5zZWFyY2guc2VsZWN0aW9uLmRyb3Bkb3duID4gc3Bhbi5zaXplciB7XG4gIGxpbmUtaGVpZ2h0OiAxLjIxNDI4NTcxZW07XG4gIHBhZGRpbmc6IDAuNjc4NTcxNDNlbSAzLjJlbSAwLjY3ODU3MTQzZW0gMWVtO1xuICBkaXNwbGF5OiBub25lO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xufVxuLyogQWN0aXZlL1Zpc2libGUgU2VhcmNoICovXG4udWkuc2VhcmNoLmRyb3Bkb3duLmFjdGl2ZSA+IGlucHV0LnNlYXJjaCxcbi51aS5zZWFyY2guZHJvcGRvd24udmlzaWJsZSA+IGlucHV0LnNlYXJjaCB7XG4gIGN1cnNvcjogYXV0bztcbn1cbi51aS5zZWFyY2guZHJvcGRvd24uYWN0aXZlID4gLnRleHQsXG4udWkuc2VhcmNoLmRyb3Bkb3duLnZpc2libGUgPiAudGV4dCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLyogRmlsdGVyZWQgVGV4dCAqL1xuLnVpLmFjdGl2ZS5zZWFyY2guZHJvcGRvd24gaW5wdXQuc2VhcmNoOmZvY3VzICsgLnRleHQgLmljb24sXG4udWkuYWN0aXZlLnNlYXJjaC5kcm9wZG93biBpbnB1dC5zZWFyY2g6Zm9jdXMgKyAudGV4dCAuZmxhZyB7XG4gIG9wYWNpdHk6IDAuNDU7XG59XG4udWkuYWN0aXZlLnNlYXJjaC5kcm9wZG93biBpbnB1dC5zZWFyY2g6Zm9jdXMgKyAudGV4dCB7XG4gIGNvbG9yOiByZ2JhKDExNSwgMTE1LCAxMTUsIDAuODcpICFpbXBvcnRhbnQ7XG59XG4vKiBTZWFyY2ggTWVudSAqL1xuLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5zZWFyY2guZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDguMDE0Mjg1NzFyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMTAuNjg1NzE0MjlyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMTYuMDI4NTcxNDNyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5zZWFyY2guZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDIxLjM3MTQyODU3cmVtO1xuICB9XG59XG4vKiBDbGVhcmFibGUgU2VsZWN0aW9uICovXG4udWkuZHJvcGRvd24gPiAucmVtb3ZlLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NmVtO1xuICBtYXJnaW46IC0wLjc4NTcxNDI5ZW07XG4gIHBhZGRpbmc6IDAuOTE2NjY2NjdlbTtcbiAgcmlnaHQ6IDNlbTtcbiAgdG9wOiAwLjc4NTcxNDI5ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMC42O1xuICB6LWluZGV4OiAzO1xufVxuLnVpLmNsZWFyYWJsZS5kcm9wZG93biAudGV4dCxcbi51aS5jbGVhcmFibGUuZHJvcGRvd24gYTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xufVxuLnVpLmRyb3Bkb3duIHNlbGVjdC5ub3NlbGVjdGlvbiB+IC5yZW1vdmUuaWNvbixcbi51aS5kcm9wZG93biBpbnB1dFt2YWx1ZT0nJ10gfiAucmVtb3ZlLmljb24sXG4udWkuZHJvcGRvd24gaW5wdXQ6bm90KFt2YWx1ZV0pIH4gLnJlbW92ZS5pY29uLFxuLnVpLmRyb3Bkb3duLmxvYWRpbmcgPiAucmVtb3ZlLmljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIE11bHRpcGxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogTXVsdGlwbGUgU2VsZWN0aW9uICovXG4udWkubXVsdGlwbGUuZHJvcGRvd24ge1xuICBwYWRkaW5nOiAwLjIyNjE5MDQ4ZW0gMy4yZW0gMC4yMjYxOTA0OGVtIDAuMzU3MTQyODZlbTtcbn1cbi51aS5tdWx0aXBsZS5kcm9wZG93biAubWVudSB7XG4gIGN1cnNvcjogYXV0bztcbn1cbi8qIE11bHRpcGxlIFNlYXJjaCBTZWxlY3Rpb24gKi9cbi51aS5tdWx0aXBsZS5zZWFyY2guZHJvcGRvd24sXG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgY3Vyc29yOiB0ZXh0O1xufVxuLyogU2VsZWN0aW9uIExhYmVsICovXG4udWkubXVsdGlwbGUuZHJvcGRvd24gPiAubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBwYWRkaW5nOiAwLjM1NzE0Mjg2ZW0gMC43ODU3MTQyOWVtO1xuICBtYXJnaW46IDAuMTQyODU3MTRyZW0gMC4yODU3MTQyOXJlbSAwLjE0Mjg1NzE0cmVtIDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuLyogRHJvcGRvd24gSWNvbiAqL1xuLnVpLm11bHRpcGxlLmRyb3Bkb3duIC5kcm9wZG93bi5pY29uIHtcbiAgbWFyZ2luOiAnJztcbiAgcGFkZGluZzogJyc7XG59XG4vKiBUZXh0ICovXG4udWkubXVsdGlwbGUuZHJvcGRvd24gPiAudGV4dCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHBhZGRpbmc6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwLjQ1MjM4MDk1ZW0gMCAwLjQ1MjM4MDk1ZW0gMC42NDI4NTcxNGVtO1xuICBsaW5lLWhlaWdodDogMS4yMTQyODU3MWVtO1xufVxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsIH4gaW5wdXQuc2VhcmNoIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMTQyODU3MTRlbSAhaW1wb3J0YW50O1xufVxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsIH4gLnRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsOm5vdCguaW1hZ2UpID4gaW1nOm5vdCguY2VudGVyZWQpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc4NTcxNDI5cmVtO1xufVxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsOm5vdCguaW1hZ2UpID4gaW1nLnVpOm5vdCguYXZhdGFyKSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzkyODU3MTRyZW07XG59XG4udWkubXVsdGlwbGUuZHJvcGRvd24gPiAuaW1hZ2UubGFiZWwgaW1nIHtcbiAgbWFyZ2luOiAtMC4zNTcxNDI4NmVtIDAuNzg1NzE0MjllbSAtMC4zNTcxNDI4NmVtIC0wLjc4NTcxNDI5ZW07XG4gIGhlaWdodDogMS43MTQyODU3MWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLVxuICBNdWx0aXBsZSBTZWFyY2hcbi0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFByb21wdCBUZXh0ICovXG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duID4gLnRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiBpbmhlcml0O1xuICBtYXJnaW46IDAuNDUyMzgwOTVlbSAwIDAuNDUyMzgwOTVlbSAwLjY0Mjg1NzE0ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjIxNDI4NTcxZW07XG59XG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duID4gLmxhYmVsIH4gLnRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogU2VhcmNoICovXG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgcGFkZGluZzogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAuNDUyMzgwOTVlbSAwIDAuNDUyMzgwOTVlbSAwLjY0Mjg1NzE0ZW07XG4gIHdpZHRoOiAyLjJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjE0Mjg1NzFlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW5saW5lXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmlubGluZS5kcm9wZG93biB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi51aS5pbmxpbmUuZHJvcGRvd24gLmRyb3Bkb3duLmljb24ge1xuICBtYXJnaW46IDAgMC4yMTQyODU3MWVtIDAgMC4yMTQyODU3MWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4udWkuaW5saW5lLmRyb3Bkb3duID4gLnRleHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi51aS5pbmxpbmUuZHJvcGRvd24gLm1lbnUge1xuICBjdXJzb3I6IGF1dG87XG4gIG1hcmdpbi10b3A6IDAuMjE0Mjg1NzFlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNZW51IEl0ZW0gQWN0aXZlICovXG4udWkuZHJvcGRvd24gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgei1pbmRleDogMTI7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1lbnUgSXRlbSBIb3ZlciAqL1xuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgei1pbmRleDogMTM7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sb2FkaW5nLmRyb3Bkb3duID4gaS5pY29uIHtcbiAgaGVpZ2h0OiAxZW0gIWltcG9ydGFudDtcbn1cbi51aS5sb2FkaW5nLnNlbGVjdGlvbi5kcm9wZG93biA+IGkuaWNvbiB7XG4gIHBhZGRpbmc6IDEuNWVtIDEuMjg1NzE0MjllbSAhaW1wb3J0YW50O1xufVxuLnVpLmxvYWRpbmcuZHJvcGRvd24gPiBpLmljb246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NTcxNGVtIDAgMCAtMC42NDI4NTcxNGVtO1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXI6IDAuMmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi51aS5sb2FkaW5nLmRyb3Bkb3duID4gaS5pY29uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IC0wLjY0Mjg1NzE0ZW0gMCAwIC0wLjY0Mjg1NzE0ZW07XG4gIHdpZHRoOiAxLjI4NTcxNDI5ZW07XG4gIGhlaWdodDogMS4yODU3MTQyOWVtO1xuICBhbmltYXRpb246IGxvYWRlciAwLjZzIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCAjNzY3Njc2O1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG59XG4vKiBDb3VwbGluZyAqL1xuLnVpLmxvYWRpbmcuZHJvcGRvd24uYnV0dG9uID4gaS5pY29uOmJlZm9yZSxcbi51aS5sb2FkaW5nLmRyb3Bkb3duLmJ1dHRvbiA+IGkuaWNvbjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIERlZmF1bHQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkuZHJvcGRvd246bm90KC5idXR0b24pID4gLmRlZmF1bHQudGV4dCxcbi51aS5kZWZhdWx0LmRyb3Bkb3duOm5vdCguYnV0dG9uKSA+IC50ZXh0IHtcbiAgY29sb3I6IHJnYmEoMTkxLCAxOTEsIDE5MSwgMC44Nyk7XG59XG4udWkuZHJvcGRvd246bm90KC5idXR0b24pID4gaW5wdXQ6Zm9jdXMgfiAuZGVmYXVsdC50ZXh0LFxuLnVpLmRlZmF1bHQuZHJvcGRvd246bm90KC5idXR0b24pID4gaW5wdXQ6Zm9jdXMgfiAudGV4dCB7XG4gIGNvbG9yOiByZ2JhKDExNSwgMTE1LCAxMTUsIDAuODcpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sb2FkaW5nLmRyb3Bkb3duID4gLnRleHQge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuLyogVXNlZCBUbyBDaGVjayBQb3NpdGlvbiAqL1xuLnVpLmRyb3Bkb3duIC5sb2FkaW5nLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAtMTtcbn1cbi51aS5kcm9wZG93biA+IC5sb2FkaW5nLm1lbnUge1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4udWkuZHJvcGRvd24gPiAubWVudSAubG9hZGluZy5tZW51IHtcbiAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEtleWJvYXJkIFNlbGVjdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWxlY3RlZCBJdGVtICovXG4udWkuZHJvcGRvd24uc2VsZWN0ZWQsXG4udWkuZHJvcGRvd24gLm1lbnUgLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTZWFyY2ggRmlsdGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRmlsdGVyZWQgSXRlbSAqL1xuLnVpLmRyb3Bkb3duID4gLmZpbHRlcmVkLnRleHQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udWkuZHJvcGRvd24gLmZpbHRlcmVkLml0ZW0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEVycm9yXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93bi5lcnJvcixcbi51aS5kcm9wZG93bi5lcnJvciA+IC50ZXh0LFxuLnVpLmRyb3Bkb3duLmVycm9yID4gLmRlZmF1bHQudGV4dCB7XG4gIGNvbG9yOiAjOUYzQTM4O1xufVxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5lcnJvciB7XG4gIGJhY2tncm91bmQ6ICNGRkY2RjY7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNDtcbn1cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24uZXJyb3I6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNFMEI0QjQ7XG59XG4udWkuZHJvcGRvd24uZXJyb3IgPiAubWVudSxcbi51aS5kcm9wZG93bi5lcnJvciA+IC5tZW51IC5tZW51IHtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xufVxuLnVpLmRyb3Bkb3duLmVycm9yID4gLm1lbnUgPiAuaXRlbSB7XG4gIGNvbG9yOiAjOUYzQTM4O1xufVxuLnVpLm11bHRpcGxlLnNlbGVjdGlvbi5lcnJvci5kcm9wZG93biA+IC5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNDtcbn1cbi8qIEl0ZW0gSG92ZXIgKi9cbi51aS5kcm9wZG93bi5lcnJvciA+IC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGMkYyO1xufVxuLyogSXRlbSBBY3RpdmUgKi9cbi51aS5kcm9wZG93bi5lcnJvciA+IC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRENGQ0Y7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIENsZWFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93biA+IC5jbGVhci5kcm9wZG93bi5pY29uIHtcbiAgb3BhY2l0eTogMC44O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbn1cbi51aS5kcm9wZG93biA+IC5jbGVhci5kcm9wZG93bi5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlzYWJsZWQgKi9cbi51aS5kaXNhYmxlZC5kcm9wZG93bixcbi51aS5kcm9wZG93biAubWVudSA+IC5kaXNhYmxlZC5pdGVtIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMC40NTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlyZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogRmx5b3V0IERpcmVjdGlvbiAqL1xuLnVpLmRyb3Bkb3duIC5tZW51IHtcbiAgbGVmdDogMDtcbn1cbi8qIERlZmF1bHQgU2lkZSAoUmlnaHQpICovXG4udWkuZHJvcGRvd24gLnJpZ2h0Lm1lbnUgPiAubWVudSxcbi51aS5kcm9wZG93biAubWVudSAucmlnaHQubWVudSB7XG4gIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAhaW1wb3J0YW50O1xufVxuLyogTGVmdHdhcmQgT3BlbmluZyBNZW51ICovXG4udWkuZHJvcGRvd24gPiAubGVmdC5tZW51IHtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICByaWdodDogMCAhaW1wb3J0YW50O1xufVxuLnVpLmRyb3Bkb3duID4gLmxlZnQubWVudSAubWVudSxcbi51aS5kcm9wZG93biAubWVudSAubGVmdC5tZW51IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCAtMC41ZW0gMCAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbn1cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uLFxuLnVpLmRyb3Bkb3duIC5sZWZ0Lm1lbnUgLml0ZW0gLmRyb3Bkb3duLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMGVtIDAgMCAwO1xufVxuLnVpLmRyb3Bkb3duIC5pdGVtIC5sZWZ0LmRyb3Bkb3duLmljb24sXG4udWkuZHJvcGRvd24gLmxlZnQubWVudSAuaXRlbSAuZHJvcGRvd24uaWNvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwZW0gMCAwIDA7XG59XG4udWkuZHJvcGRvd24gLml0ZW0gLmxlZnQuZHJvcGRvd24uaWNvbiArIC50ZXh0LFxuLnVpLmRyb3Bkb3duIC5sZWZ0Lm1lbnUgLml0ZW0gLmRyb3Bkb3duLmljb24gKyAudGV4dCB7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVXB3YXJkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXB3YXJkIE1haW4gTWVudSAqL1xuLnVpLnVwd2FyZC5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLyogVXB3YXJkIFN1YiBNZW51ICovXG4udWkuZHJvcGRvd24gLnVwd2FyZC5tZW51IHtcbiAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLyogQWN0aXZlIFVwd2FyZCAqL1xuLnVpLnNpbXBsZS51cHdhcmQuYWN0aXZlLmRyb3Bkb3duLFxuLnVpLnNpbXBsZS51cHdhcmQuZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwICFpbXBvcnRhbnQ7XG59XG4udWkudXB3YXJkLmRyb3Bkb3duLmJ1dHRvbjpub3QoLnBvaW50aW5nKTpub3QoLmZsb2F0aW5nKS5hY3RpdmUge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLyogU2VsZWN0aW9uICovXG4udWkudXB3YXJkLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuLnVpLnVwd2FyZC5zZWxlY3Rpb24uZHJvcGRvd246aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cbi8qIEFjdGl2ZSBVcHdhcmQgKi9cbi51aS5hY3RpdmUudXB3YXJkLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbn1cbi8qIFZpc2libGUgVXB3YXJkICovXG4udWkudXB3YXJkLnNlbGVjdGlvbi5kcm9wZG93bi52aXNpYmxlIHtcbiAgYm94LXNoYWRvdzogMCAwIDNweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbn1cbi8qIFZpc2libGUgSG92ZXIgVXB3YXJkICovXG4udWkudXB3YXJkLmFjdGl2ZS5zZWxlY3Rpb24uZHJvcGRvd246aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cbi51aS51cHdhcmQuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93bjpob3ZlciAubWVudSB7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTY3JvbGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiAgU2VsZWN0aW9uIE1lbnUgKi9cbi51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUsXG4udWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuLnVpLmRyb3Bkb3duIC5zY3JvbGxpbmcubWVudSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51IC5pdGVtLml0ZW0uaXRlbSxcbi51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUgPiAuaXRlbS5pdGVtLml0ZW0ge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUgLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLnVpLmRyb3Bkb3duID4gLmFuaW1hdGluZy5tZW51IC5zY3JvbGxpbmcubWVudSxcbi51aS5kcm9wZG93biA+IC52aXNpYmxlLm1lbnUgLnNjcm9sbGluZy5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKiBTY3JvbGxiYXIgaW4gSUUgKi9cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAudWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51LFxuICAudWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgICBtaW4td2lkdGg6IGNhbGMoMTAwJSAtIDE3cHgpO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUsXG4gIC51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDEwLjI4NTcxNDI5cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUsXG4gIC51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDE1LjQyODU3MTQzcmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUsXG4gIC51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDIwLjU3MTQyODU3cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51LFxuICAudWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiAyMC41NzE0Mjg1N3JlbTtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb2x1bW5hclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93bltjbGFzcyo9XCJ0d28gY29sdW1uXCJdID4gLm1lbnUgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDUwJTtcbn1cbi51aS5kcm9wZG93bltjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0gPiAubWVudSA+IC5pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzMlO1xufVxuLnVpLmRyb3Bkb3duW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdID4gLm1lbnUgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDI1JTtcbn1cbi51aS5kcm9wZG93bltjbGFzcyo9XCJmaXZlIGNvbHVtblwiXSA+IC5tZW51ID4gLml0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyMCU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpbXBsZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpc3BsYXlzIHdpdGhvdXQgamF2YXNjcmlwdCAqL1xuLnVpLnNpbXBsZS5kcm9wZG93biAubWVudTpiZWZvcmUsXG4udWkuc2ltcGxlLmRyb3Bkb3duIC5tZW51OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51aS5zaW1wbGUuZHJvcGRvd24gLm1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8qIElFIGhhY2sgdG8gbWFrZSBkcm9wZG93biBpY29ucyBhcHBlYXIgaW5saW5lICovXG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdG9wOiAtOTk5OXB4O1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuLnVpLnNpbXBsZS5hY3RpdmUuZHJvcGRvd24sXG4udWkuc2ltcGxlLmRyb3Bkb3duOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLnVpLnNpbXBsZS5hY3RpdmUuZHJvcGRvd24gPiAubWVudSxcbi51aS5zaW1wbGUuZHJvcGRvd246aG92ZXIgPiAubWVudSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDEwMCU7XG4gIG9wYWNpdHk6IDE7XG59XG4udWkuc2ltcGxlLmRyb3Bkb3duID4gLm1lbnUgPiAuaXRlbTphY3RpdmUgPiAubWVudSxcbi51aS5zaW1wbGUuZHJvcGRvd246aG92ZXIgPiAubWVudSA+IC5pdGVtOmhvdmVyID4gLm1lbnUge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbn1cbi51aS5zaW1wbGUuZGlzYWJsZWQuZHJvcGRvd246aG92ZXIgLm1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLyogVmlzaWJsZSAqL1xuLnVpLnNpbXBsZS52aXNpYmxlLmRyb3Bkb3duID4gLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qIFNjcm9sbGluZyAqL1xuLnVpLnNpbXBsZS5zY3JvbGxpbmcuYWN0aXZlLmRyb3Bkb3duID4gLm1lbnUsXG4udWkuc2ltcGxlLnNjcm9sbGluZy5kcm9wZG93bjpob3ZlciA+IC5tZW51IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmx1aWQuZHJvcGRvd24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiAwO1xufVxuLnVpLmZsdWlkLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBmbG9hdDogcmlnaHQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZmxvYXRpbmcuZHJvcGRvd24gLm1lbnUge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAhaW1wb3J0YW50O1xufVxuLnVpLmZsb2F0aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG4udWk6bm90KC51cHdhcmQpLmZsb2F0aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cbi51aS51cHdhcmQuZmxvYXRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQb2ludGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjc4NTcxNDI5cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6bm90KC5oaWRkZW4pOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6ICcnO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHdpZHRoOiAwLjVlbTtcbiAgaGVpZ2h0OiAwLjVlbTtcbiAgYm94LXNoYWRvdzogLTFweCAtMXB4IDAgMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICB6LWluZGV4OiAyO1xufVxuLnVpLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6bm90KC5oaWRkZW4pOmFmdGVyIHtcbiAgdG9wOiAtMC4yNWVtO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogMCAwIDAgLTAuMjVlbTtcbn1cbi8qIFRvcCBMZWZ0IFBvaW50aW5nICovXG4udWkudG9wLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogMTAwJTtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luOiAxZW0gMCAwO1xufVxuLnVpLnRvcC5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMWVtIDAgMDtcbn1cbi51aS50b3AubGVmdC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51OmFmdGVyIHtcbiAgdG9wOiAtMC4yNWVtO1xuICBsZWZ0OiAxZW07XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi8qIFRvcCBSaWdodCBQb2ludGluZyAqL1xuLnVpLnRvcC5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW46IDFlbSAwIDA7XG59XG4udWkudG9wLnBvaW50aW5nLmRyb3Bkb3duID4gLmxlZnQubWVudTphZnRlcixcbi51aS50b3AucmlnaHQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogLTAuMjVlbTtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICByaWdodDogMWVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuLyogTGVmdCBQb2ludGluZyAqL1xuLnVpLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCAwIDAgMWVtO1xufVxuLnVpLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogMWVtO1xuICBsZWZ0OiAtMC4yNWVtO1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG4udWkubGVmdDpub3QoLnRvcCk6bm90KC5ib3R0b20pLnBvaW50aW5nLmRyb3Bkb3duID4gLmxlZnQubWVudSB7XG4gIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIDFlbSAwIDA7XG59XG4udWkubGVmdDpub3QoLnRvcCk6bm90KC5ib3R0b20pLnBvaW50aW5nLmRyb3Bkb3duID4gLmxlZnQubWVudTphZnRlciB7XG4gIHRvcDogMWVtO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogLTAuMjVlbTtcbiAgbWFyZ2luOiAwIDAgMCAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xufVxuLyogUmlnaHQgUG9pbnRpbmcgKi9cbi51aS5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIDFlbSAwIDA7XG59XG4udWkucmlnaHQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogMWVtO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogLTAuMjVlbTtcbiAgbWFyZ2luOiAwIDAgMCAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xufVxuLyogQm90dG9tIFBvaW50aW5nICovXG4udWkuYm90dG9tLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cbi51aS5ib3R0b20ucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAtMC4yNWVtO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbn1cbi8qIFJldmVyc2UgU3ViLU1lbnUgRGlyZWN0aW9uICovXG4udWkuYm90dG9tLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUgLm1lbnUge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4vKiBCb3R0b20gTGVmdCAqL1xuLnVpLmJvdHRvbS5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cbi51aS5ib3R0b20ubGVmdC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51OmFmdGVyIHtcbiAgbGVmdDogMWVtO1xuICByaWdodDogYXV0bztcbn1cbi8qIEJvdHRvbSBSaWdodCAqL1xuLnVpLmJvdHRvbS5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG4udWkuYm90dG9tLnJpZ2h0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMWVtO1xufVxuLyogVXB3YXJkIHBvaW50aW5nICovXG4udWkucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duIC5tZW51LFxuLnVpLnRvcC5wb2ludGluZy51cHdhcmQuZHJvcGRvd24gLm1lbnUge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAwIDAuNzg1NzE0MjlyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG4udWkucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duIC5tZW51OmFmdGVyLFxuLnVpLnRvcC5wb2ludGluZy51cHdhcmQuZHJvcGRvd24gLm1lbnU6YWZ0ZXIge1xuICB0b3A6IDEwMCUgIWltcG9ydGFudDtcbiAgYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIG1hcmdpbjogLTAuMjVlbSAwIDA7XG59XG4vKiBSaWdodCBQb2ludGluZyBVcHdhcmQgKi9cbi51aS5yaWdodC5wb2ludGluZy51cHdhcmQuZHJvcGRvd246bm90KC50b3ApOm5vdCguYm90dG9tKSAubWVudSB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIDFlbSAwIDA7XG59XG4udWkucmlnaHQucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duOm5vdCgudG9wKTpub3QoLmJvdHRvbSkgLm1lbnU6YWZ0ZXIge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAwIDFlbSAwO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4vKiBMZWZ0IFBvaW50aW5nIFVwd2FyZCAqL1xuLnVpLmxlZnQucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duOm5vdCgudG9wKTpub3QoLmJvdHRvbSkgLm1lbnUge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAwIDAgMWVtO1xufVxuLnVpLmxlZnQucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duOm5vdCgudG9wKTpub3QoLmJvdHRvbSkgLm1lbnU6YWZ0ZXIge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAwIDFlbSAwO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRHJvcGRvd24gU2l6ZSAqL1xuLnVpLm1pbmkuZHJvcGRvd24ge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG59XG4udWkudGlueS5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi51aS5sYXJnZS5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5iaWcuZHJvcGRvd24ge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG4udWkuaHVnZS5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cbi51aS5tYXNzaXZlLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuLyogRHJvcGRvd24gSXRlbSBTaXplICovXG4udWkubWluaS5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuLnVpLnRpbnkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDFyZW07XG59XG4udWkubGFyZ2UuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5iaWcuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cbi51aS5odWdlLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG4udWkubWFzc2l2ZS5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogR2VuZXJhbCBydWxlcyBhbmQgYmFzaWMgZHJvcGRvd25zICovXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnUge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuLnVpLmludmVydGVkLmRyb3Bkb3duLnNlbGVjdGVkLFxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51IC5zZWxlY3RlZC5pdGVtIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cbi51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudSA+IC5oZWFkZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5pbnZlcnRlZC5kcm9wZG93biA+IC50ZXh0ID4gLmRlc2NyaXB0aW9uLFxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLmRpdmlkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbn1cbi51aS5pbnZlcnRlZC5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuLyogU2VsZWN0aW9uICovXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmRyb3Bkb3duIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24uZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmRyb3Bkb3duIGlucHV0IHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuZHJvcGRvd246bm90KC5idXR0b24pID4gLmRlZmF1bHQudGV4dCxcbi51aS5pbnZlcnRlZC5kZWZhdWx0LmRyb3Bkb3duOm5vdCguYnV0dG9uKSA+IC50ZXh0IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51aS5pbnZlcnRlZC5kcm9wZG93bjpub3QoLmJ1dHRvbikgPiBpbnB1dDpmb2N1cyB+IC5kZWZhdWx0LnRleHQsXG4udWkuaW52ZXJ0ZWQuZGVmYXVsdC5kcm9wZG93bjpub3QoLmJ1dHRvbikgPiBpbnB1dDpmb2N1cyB+IC50ZXh0IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24udmlzaWJsZS5kcm9wZG93biA+IC50ZXh0Om5vdCguZGVmYXVsdCkge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLmFjdGl2ZS5zZWFyY2guZHJvcGRvd24gaW5wdXQuc2VhcmNoOmZvY3VzICsgLnRleHQgLmljb24sXG4udWkuaW52ZXJ0ZWQuYWN0aXZlLnNlYXJjaC5kcm9wZG93biBpbnB1dC5zZWFyY2g6Zm9jdXMgKyAudGV4dCAuZmxhZyB7XG4gIG9wYWNpdHk6IDAuNDU7XG59XG4udWkuaW52ZXJ0ZWQuYWN0aXZlLnNlYXJjaC5kcm9wZG93biBpbnB1dC5zZWFyY2g6Zm9jdXMgKyAudGV4dCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNykgIWltcG9ydGFudDtcbn1cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24uYWN0aXZlLmRyb3Bkb3duIC5tZW51LFxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5hY3RpdmUuZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG59XG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzI0MjUyNjtcbn1cbi51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudSA+IC5tZXNzYWdlOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi8qIEZpeGluZyB0aGUgYm9yZGVyICovXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG4vKiBMYWJlbHMgKi9cbi51aS5pbnZlcnRlZC5tdWx0aXBsZS5kcm9wZG93biA+IC5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIGluc2V0O1xufVxuLnVpLmludmVydGVkLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG4udWkuaW52ZXJ0ZWQubXVsdGlwbGUuZHJvcGRvd24gPiAubGFiZWwgPiAuY2xvc2UuaWNvbixcbi51aS5pbnZlcnRlZC5tdWx0aXBsZS5kcm9wZG93biA+IC5sYWJlbCA+IC5kZWxldGUuaWNvbiB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cbi51aS5pbnZlcnRlZC5tdWx0aXBsZS5kcm9wZG93biA+IC5sYWJlbCA+IC5jbG9zZS5pY29uOmhvdmVyLFxuLnVpLmludmVydGVkLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsID4gLmRlbGV0ZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44O1xufVxuLyogU2VsZWN0aW9uIGZvciBmb3JtIGVsZW1lbnRzICovXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gdGV4dGFyZWE6Oi13ZWJraXQtc2VsZWN0aW9uLFxuLnVpLmludmVydGVkLmRyb3Bkb3duIGlucHV0Ojotd2Via2l0LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gdGV4dGFyZWE6Oi1tb3otc2VsZWN0aW9uLFxuLnVpLmludmVydGVkLmRyb3Bkb3duIGlucHV0OjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gdGV4dGFyZWE6OnNlbGVjdGlvbixcbi51aS5pbnZlcnRlZC5kcm9wZG93biBpbnB1dDo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cbi8qIFNjcm9sbGJhcnMgKi9cbi51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbn1cbi51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6d2luZG93LWluYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbn1cbi51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xufVxuLnVpLmludmVydGVkLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogRHJvcGRvd24gQ2FyZXRzICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdEcm9wZG93bic7XG4gIHNyYzogdXJsKGRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nZ2pCNUFBQUFDOEFBQUFZR050WVhBUGZ1SUlBQUFCSEFBQUFFeG5ZWE53QUFBQUVBQUFBV2dBQUFBSVoyeDVaam84MkxnQUFBRndBQUFCVkdobFlXUUFRODhiQUFBQ3hBQUFBRFpvYUdWaEF3Y0I2UUFBQXZ3QUFBQWthRzEwZUFTNEFCSUFBQU1nQUFBQUlHeHZZMkVCTmdEZUFBQURRQUFBQUJKdFlYaHdBQW9BRmdBQUExUUFBQUFnYm1GdFpWY1pwdTRBQUFOMEFBQUJSWEJ2YzNRQUF3QUFBQUFFdkFBQUFDQUFBd0lBQVpBQUJRQUFBVXdCWmdBQUFFY0JUQUZtQUFBQTlRQVpBSVFBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUR3MmdIZy8rRC80QUhnQUNBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUNBQUFBQXdBQUFCUUFBd0FCQUFBQUZBQUVBRGdBQUFBS0FBZ0FBZ0FDQUFFQUlQRGEvLzMvL3dBQUFBQUFJUERYLy8zLy93QUIvK01QTFFBREFBRUFBQUFBQUFBQUFBQUFBQUVBQWYvL0FBOEFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFCQUFBQUFBQUFBQUFBQWdBQU56a0JBQUFBQUFFQUFBQUFBQUFBQUFBQ0FBQTNPUUVBQUFBQUFRQUFBSUFCSlFFbEFCTUFBQk0wTnpZM0JUWVhGaFVVRHdFR0p3WXZBU1kxQUFVR0J3RUFDQVVHQm9BRkNBY0dnQVVCRWdjR0JRRUJBUWNFQ1FZSGZ3WUJBUVovQndZQUFRQUFBRzRCSlFFU0FCTUFBRGMwUHdFMk16SWZBUllWRkFjR0l5RWlKeVkxQUFXQUJnY0lCWUFHQmdVSS93QUhCZ1dBQndhQUJRV0FCZ2NIQmdVRkJnY0FBQUFCQUJJQVNRQzNBVzRBRXdBQU56US9BVFlYTmhjV0hRRVVCd1luQmk4QkpqVVNCb0FGQ0FjRkJnWUZCd2dGZ0FiYkJ3Wi9Cd0VCQndRSi93Z0VCd0VCQjM4R0JnQUFBQUFCQUFBQVNRQ2xBVzRBRXdBQU54RTBOell6TWg4QkZoVVVEd0VHSXlJbkpqVUFCUVlIQ0FXQUJnYUFCUWdIQmdWYkFRQUlCUVlHZ0FVSUJ3V0FCZ1lGQndBQUFBRUFBQUFCQUFEWnVhS09Ydzg4OVFBTEFnQUFBQUFBMEFCSFdBQUFBQURRQUVkWUFBQUFBQUVsQVc0QUFBQUlBQUlBQUFBQUFBQUFBUUFBQWVELzRBQUFBZ0FBQUFBQUFTVUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFBQUFBQUFBQUFCQUFBQUFTVUFBQUVsQUFBQXR3QVNBTGNBQUFBQUFBQUFDZ0FVQUI0QVFnQmtBSWdBcWdBQUFBRUFBQUFJQUJRQUFRQUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT0FLNEFBUUFBQUFBQUFRQU9BQUFBQVFBQUFBQUFBZ0FPQUVjQUFRQUFBQUFBQXdBT0FDUUFBUUFBQUFBQUJBQU9BRlVBQVFBQUFBQUFCUUFXQUE0QUFRQUFBQUFBQmdBSEFESUFBUUFBQUFBQUNnQTBBR01BQXdBQkJBa0FBUUFPQUFBQUF3QUJCQWtBQWdBT0FFY0FBd0FCQkFrQUF3QU9BQ1FBQXdBQkJBa0FCQUFPQUZVQUF3QUJCQWtBQlFBV0FBNEFBd0FCQkFrQUJnQU9BRGtBQXdBQkJBa0FDZ0EwQUdNQWFRQmpBRzhBYlFCdkFHOEFiZ0JXQUdVQWNnQnpBR2tBYndCdUFDQUFNUUF1QURBQWFRQmpBRzhBYlFCdkFHOEFibWxqYjIxdmIyNEFhUUJqQUc4QWJRQnZBRzhBYmdCU0FHVUFad0IxQUd3QVlRQnlBR2tBWXdCdkFHMEFid0J2QUc0QVJnQnZBRzRBZEFBZ0FHY0FaUUJ1QUdVQWNnQmhBSFFBWlFCa0FDQUFZZ0I1QUNBQVNRQmpBRzhBVFFCdkFHOEFiZ0F1QUFBQUFBTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9KSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybChkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUms5VVZFOEFBQVZ3QUFvQUFBQUFCU2dBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkRSa1lnQUFBQTlBQUFBZGtBQUFIWkxEWEUvMDlUTHpJQUFBTFFBQUFBWUFBQUFHQUlJd2VRWTIxaGNBQUFBekFBQUFCTUFBQUFUQTkrNGdobllYTndBQUFEZkFBQUFBZ0FBQUFJQUFBQUVHaGxZV1FBQUFPRUFBQUFOZ0FBQURZQVE4OGJhR2hsWVFBQUE3d0FBQUFrQUFBQUpBTUhBZWxvYlhSNEFBQUQ0QUFBQUNBQUFBQWdCTGdBRW0xaGVIQUFBQVFBQUFBQUJnQUFBQVlBQ0ZBQWJtRnRaUUFBQkFnQUFBRkZBQUFCUlZjWnB1NXdiM04wQUFBRlVBQUFBQ0FBQUFBZ0FBTUFBQUVBQkFRQUFRRUJDR2xqYjIxdmIyNEFBUUlBQVFBNitCd0MrQnNEK0JnRUhnb0FHVlAvaTRzZUNnQVpVLytMaXd3SGkydjRsUGgwQlIwQUFBQ0lEeDBBQUFDTkVSMEFBQUFKSFFBQUFkQVNBQWtCQVFnUEVSTVdHeUFsS21samIyMXZiMjVwWTI5dGIyOXVkVEIxTVhVeU1IVkdNRVEzZFVZd1JEaDFSakJFT1hWR01FUkJBQUFDQVlrQUJnQUlBZ0FCQUFRQUJ3QUtBQTBBVmdDZkFPZ0JML3lVRHZ5VUR2eVVEdnVVRHZ0dmkvZW1GWXVRalpDT2pvK1BqNDJRaXdqM2xJc0ZrSXVRaVk2SGo0aU5ob3VHaTRhSmg0ZUhDUHNVK3hRRmlJaUdpWWFMaG91SGpZZU9DUHNVOXhRRmlJK0pqNHVRQ0E3N2I0djNGQldMa0kyUGpvOEk5eFQzRkFXUGpvK05rSXVRaTVDSmpvZ0k5eFQ3RkFXUGg0MkhpNGFMaG9tSGg0ZUlpSWFKaG9zSSs1U0xCWWFMaDQySGpvaVBpWStMa0FnTys5MmQ5MjhWaTVDTmtJK09DUGNVOXhRRmpvK1FqWkNMa0l1UGlZNkhqNGlOaG91R0NJdjdsQVdMaG9tSGg0aUloNGVKaG91R2k0YU5pSThJK3hUM0ZBV0hqb21QaTVBSUR2dmRpK1lWaS9lVUJZdVFqWkNPam8rUGo0MlFpNUNMa0ltT2h3ajNGUHNVQlkrSWpZYUxob3VHaVllSGlBajdGUHNVQllpSGhvbUdpNGFMaDQySGo0aU9pWStMa0FnTytKUVUrSlFWaXd3S0FBQUFBQU1DQUFHUUFBVUFBQUZNQVdZQUFBQkhBVXdCWmdBQUFQVUFHUUNFQUFBQUFBQUFBQUFBQUFBQUFBQUFBUkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUFBOE5vQjRQL2cvK0FCNEFBZ0FBQUFBUUFBQUFBQUFBQUFBQUFBSUFBQUFBQUFBZ0FBQUFNQUFBQVVBQU1BQVFBQUFCUUFCQUE0QUFBQUNnQUlBQUlBQWdBQkFDRHcydi85Ly84QUFBQUFBQ0R3MS8vOS8vOEFBZi9qRHkwQUF3QUJBQUFBQUFBQUFBQUFBQUFCQUFILy93QVBBQUVBQUFBQkFBQTVlbW96WHc4ODlRQUxBZ0FBQUFBQTBBQkhXQUFBQUFEUUFFZFlBQUFBQUFFbEFXNEFBQUFJQUFJQUFBQUFBQUFBQVFBQUFlRC80QUFBQWdBQUFBQUFBU1VBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQkFBQUFBU1VBQUFFbEFBQUF0d0FTQUxjQUFBQUFVQUFBQ0FBQUFBQUFEZ0N1QUFFQUFBQUFBQUVBRGdBQUFBRUFBQUFBQUFJQURnQkhBQUVBQUFBQUFBTUFEZ0FrQUFFQUFBQUFBQVFBRGdCVkFBRUFBQUFBQUFVQUZnQU9BQUVBQUFBQUFBWUFCd0F5QUFFQUFBQUFBQW9BTkFCakFBTUFBUVFKQUFFQURnQUFBQU1BQVFRSkFBSUFEZ0JIQUFNQUFRUUpBQU1BRGdBa0FBTUFBUVFKQUFRQURnQlZBQU1BQVFRSkFBVUFGZ0FPQUFNQUFRUUpBQVlBRGdBNUFBTUFBUVFKQUFvQU5BQmpBR2tBWXdCdkFHMEFid0J2QUc0QVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXdBR2tBWXdCdkFHMEFid0J2QUc1cFkyOXRiMjl1QUdrQVl3QnZBRzBBYndCdkFHNEFVZ0JsQUdjQWRRQnNBR0VBY2dCcEFHTUFid0J0QUc4QWJ3QnVBRVlBYndCdUFIUUFJQUJuQUdVQWJnQmxBSElBWVFCMEFHVUFaQUFnQUdJQWVRQWdBRWtBWXdCdkFFMEFid0J2QUc0QUxnQUFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQSkgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi51aS5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZm9udC1mYW1pbHk6ICdEcm9wZG93bic7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBoZWlnaHQ6IDFlbTtcbiAgd2lkdGg6IDEuMjNlbTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi51aS5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG59XG4udWkuZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMGQ3Jztcbn1cbi8qIFN1YiBNZW51ICovXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gLmRyb3Bkb3duLmljb246YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjBkYScgLypydGw6J1xcZjBkOScqLztcbn1cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uOmJlZm9yZSxcbi51aS5kcm9wZG93biAubGVmdC5tZW51IC5pdGVtIC5kcm9wZG93bi5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ5XCIgLypydGw6XCJcXGYwZGFcIiovO1xufVxuLyogVmVydGljYWwgTWVudSBEcm9wZG93biAqL1xuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLml0ZW0gPiAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkYVwiIC8qcnRsOlwiXFxmMGQ5XCIqLztcbn1cbi8qIEljb25zIGZvciBSZWZlcmVuY2Vcbi5kcm9wZG93bi5kb3duLmljb24ge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuLmRyb3Bkb3duLnVwLmljb24ge1xuICBjb250ZW50OiBcIlxcZjBkOFwiO1xufVxuLmRyb3Bkb3duLmxlZnQuaWNvbiB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ5XCI7XG59XG4uZHJvcGRvd24uaWNvbi5pY29uIHtcbiAgY29udGVudDogXCJcXGYwZGFcIjtcbn1cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBVc2VyIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFZpZGVvXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBWaWRlb1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNpbXBsZSAqL1xuLyogUGxhY2Vob2xkZXIgKi9cbi8qIFBsYWNlaG9sZGVyIE92ZXJsYXllZCBCYWNrZ3JvdW5kICovXG4vKiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEhvdmVyICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEFzcGVjdCBSYXRpb3MgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFZpZGVvXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2ltcGxlICovXG4vKiBQbGFjZWhvbGRlciAqL1xuLyogUGxhY2Vob2xkZXIgT3ZlcmxheWVkIEJhY2tncm91bmQgKi9cbi8qIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSG92ZXIgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQXNwZWN0IFJhdGlvcyAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuZW1iZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjRENERERFO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLVxuICBFbWJlZGRlZCBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmVtYmVkIGlmcmFtZSxcbi51aS5lbWJlZCBlbWJlZCxcbi51aS5lbWJlZCBvYmplY3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFbWJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5lbWJlZCA+IC5lbWJlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICBQbGFjZWhvbGRlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5lbWJlZCA+IC5wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByYWRpYWwtZ3JhZGllbnQodHJhbnNwYXJlbnQgNDUlLCByZ2JhKDAsIDAsIDAsIDAuMykpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5lbWJlZCA+IC5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjtcbn1cbi51aS5lbWJlZCA+IC5pY29uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDM7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQodHJhbnNwYXJlbnQgNDUlLCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICBvcGFjaXR5OiAwLjU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xufVxuLnVpLmVtYmVkID4gLmljb246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogNnJlbTtcbiAgdGV4dC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjIpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgY29sb3IgMC41cyBlYXNlO1xuICB6LWluZGV4OiAxMDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmVtYmVkIC5pY29uOmhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KHRyYW5zcGFyZW50IDQ1JSwgcmdiYSgwLCAwLCAwLCAwLjMpKTtcbiAgb3BhY2l0eTogMTtcbn1cbi51aS5lbWJlZCAuaWNvbjpob3ZlcjpiZWZvcmUge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmFjdGl2ZS5lbWJlZCA+IC5pY29uLFxuLnVpLmFjdGl2ZS5lbWJlZCA+IC5wbGFjZWhvbGRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udWkuYWN0aXZlLmVtYmVkID4gLmVtYmVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBWaWRlbyBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuc3F1YXJlLmVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG59XG4udWlbY2xhc3MqPVwiNDozXCJdLmVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cbi51aVtjbGFzcyo9XCIxNjo5XCJdLmVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cbi51aVtjbGFzcyo9XCIyMTo5XCJdLmVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IDQyLjg1NzE0Mjg2JTtcbn1cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIE1vZGFsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNb2RhbFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsb3NlIEljb24gKi9cbi8qIEhlYWRlciAqL1xuLyogQ29udGVudCAqL1xuLyogSW1hZ2UgLyBEZXNjcmlwdGlvbiAqL1xuLyogTW9kYWwgQWN0aW9ucyAqL1xuLyogSW5uZXIgQ2xvc2UgUG9zaXRpb24gKFRhYmxldC9Nb2JpbGUpICovXG4vKiBNb2JpbGUgUG9zaXRpb25zICovXG4vKiBSZXNwb25zaXZlIFdpZHRocyAqL1xuLyogQ291cGxpbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBCYXNpYyAqL1xuLyogQWxpZ25lZCAqL1xuLyogU2Nyb2xsaW5nIE1hcmdpbiAqL1xuLyogU2Nyb2xsaW5nIENvbnRlbnQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2l6ZSBXaWR0aHMgKi9cbi8qIERlcml2ZWQgUmVzcG9uc2l2ZSBTaXplcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTW9kYWxcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbG9zZSBJY29uICovXG4vKiBIZWFkZXIgKi9cbi8qIENvbnRlbnQgKi9cbi8qIEltYWdlIC8gRGVzY3JpcHRpb24gKi9cbi8qIE1vZGFsIEFjdGlvbnMgKi9cbi8qIElubmVyIENsb3NlIFBvc2l0aW9uIChUYWJsZXQvTW9iaWxlKSAqL1xuLyogTW9iaWxlIFBvc2l0aW9ucyAqL1xuLyogUmVzcG9uc2l2ZSBXaWR0aHMgKi9cbi8qIENvdXBsaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQmFzaWMgKi9cbi8qIEFsaWduZWQgKi9cbi8qIFNjcm9sbGluZyBNYXJnaW4gKi9cbi8qIFNjcm9sbGluZyBDb250ZW50ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNpemUgV2lkdGhzICovXG4vKiBEZXJpdmVkIFJlc3BvbnNpdmUgU2l6ZXMgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNb2RhbFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5tb2RhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogMTAwMTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAxcHggM3B4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMXB4IDNweCAxNXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAyNSU7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgd2lsbC1jaGFuZ2U6IHRvcCwgbGVmdCwgbWFyZ2luLCB0cmFuc2Zvcm0sIG9wYWNpdHk7XG59XG4udWkubW9kYWwgPiA6Zmlyc3QtY2hpbGQ6bm90KC5pY29uKTpub3QoLmRpbW1lciksXG4udWkubW9kYWwgPiAuaWNvbjpmaXJzdC1jaGlsZCArICosXG4udWkubW9kYWwgPiAuZGltbWVyOmZpcnN0LWNoaWxkICsgKjpub3QoLmljb24pLFxuLnVpLm1vZGFsID4gLmRpbW1lcjpmaXJzdC1jaGlsZCArIC5pY29uICsgKiB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuLnVpLm1vZGFsID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb250ZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDbG9zZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5tb2RhbCA+IC5jbG9zZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0yLjVyZW07XG4gIHJpZ2h0OiAtMi41cmVtO1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAwLjg7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgd2lkdGg6IDIuMjVyZW07XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW0gMCAwIDA7XG59XG4udWkubW9kYWwgPiAuY2xvc2U6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkubW9kYWwgPiAuaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS5tb2RhbCA+IC5oZWFkZXI6bm90KC51aSkge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1vZGFsID4gLmNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG4udWkubW9kYWwgPiAuaW1hZ2UuY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4vKiBJbWFnZSAqL1xuLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiAnJztcbiAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi51aS5tb2RhbCA+IFtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXSB7XG4gIGFsaWduLXNlbGY6IHN0YXJ0O1xufVxuLnVpLm1vZGFsID4gW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLnVpLm1vZGFsID4gW2NsYXNzKj1cInN0cmV0Y2hlZFwiXSB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG4vKiBEZXNjcmlwdGlvbiAqL1xuLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAwIGF1dG87XG4gIG1pbi13aWR0aDogMDtcbiAgYWxpZ24tc2VsZjogc3RhcnQ7XG59XG4udWkubW9kYWwgPiAuY29udGVudCA+IC5pY29uICsgLmRlc2NyaXB0aW9uLFxuLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuaW1hZ2UgKyAuZGVzY3JpcHRpb24ge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgbWluLXdpZHRoOiAnJztcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMmVtO1xufVxuLypydGw6aWdub3JlKi9cbi51aS5tb2RhbCA+IC5jb250ZW50ID4gLmltYWdlID4gaS5pY29uIHtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAxO1xuICB3aWR0aDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogOHJlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aW9uc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5tb2RhbCA+IC5hY3Rpb25zIHtcbiAgYmFja2dyb3VuZDogI0Y5RkFGQjtcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4udWkubW9kYWwgLmFjdGlvbnMgPiAuYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNzVlbTtcbn1cbi51aS5iYXNpYy5tb2RhbCA+IC5hY3Rpb25zIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFJlc3BvbnNpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1vZGFsIFdpZHRoICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5tb2RhbDpub3QoLmZ1bGxzY3JlZW4pIHtcbiAgICB3aWR0aDogOTUlO1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkubW9kYWw6bm90KC5mdWxsc2NyZWVuKSB7XG4gICAgd2lkdGg6IDg4JTtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpLm1vZGFsOm5vdCguZnVsbHNjcmVlbikge1xuICAgIHdpZHRoOiA4NTBweDtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51aS5tb2RhbDpub3QoLmZ1bGxzY3JlZW4pIHtcbiAgICB3aWR0aDogOTAwcHg7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkubW9kYWw6bm90KC5mdWxsc2NyZWVuKSB7XG4gICAgd2lkdGg6IDk1MHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuLyogVGFibGV0IGFuZCBNb2JpbGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnVpLm1vZGFsID4gLmhlYWRlciB7XG4gICAgcGFkZGluZy1yaWdodDogMi4yNXJlbTtcbiAgfVxuICAudWkubW9kYWwgPiAuY2xvc2Uge1xuICAgIHRvcDogMS4wNTM1cmVtO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICB9XG59XG4vKiBNb2JpbGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpLm1vZGFsID4gLmhlYWRlciB7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMi4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5vdmVybGF5LmZ1bGxzY3JlZW4ubW9kYWwgPiAuY29udGVudC5jb250ZW50LmNvbnRlbnQge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA4LjFyZW0pO1xuICB9XG4gIC51aS5vdmVybGF5LmZ1bGxzY3JlZW4ubW9kYWwgPiAuc2Nyb2xsaW5nLmNvbnRlbnQuY29udGVudC5jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOC4xcmVtKTtcbiAgfVxuICAudWkubW9kYWwgPiAuY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5tb2RhbCA+IC5jbG9zZSB7XG4gICAgdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICByaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLypydGw6aWdub3JlKi9cbiAgLnVpLm1vZGFsIC5pbWFnZS5jb250ZW50IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC51aS5tb2RhbCAuY29udGVudCA+IC5pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgMCAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuaW1hZ2UgPiBpLmljb24ge1xuICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLypydGw6aWdub3JlKi9cbiAgLnVpLm1vZGFsIC5jb250ZW50ID4gLmRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDFyZW0gMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLyogTGV0IEJ1dHRvbnMgU3RhY2sgKi9cbiAgLnVpLm1vZGFsID4gLmFjdGlvbnMge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLm1vZGFsIC5hY3Rpb25zID4gLmJ1dHRvbnMsXG4gIC51aS5tb2RhbCAuYWN0aW9ucyA+IC5idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAudWkubW9kYWwge1xuICBib3gtc2hhZG93OiAxcHggM3B4IDEwcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuYmFzaWMubW9kYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmJhc2ljLm1vZGFsID4gLmhlYWRlcixcbi51aS5iYXNpYy5tb2RhbCA+IC5jb250ZW50LFxuLnVpLmJhc2ljLm1vZGFsID4gLmFjdGlvbnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi51aS5iYXNpYy5tb2RhbCA+IC5oZWFkZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi51aS5iYXNpYy5tb2RhbCA+IC5jbG9zZSB7XG4gIHRvcDogMXJlbTtcbiAgcmlnaHQ6IDEuNXJlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuZGltbWVyID4gLmJhc2ljLm1vZGFsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkuaW52ZXJ0ZWQuZGltbWVyID4gLnVpLmJhc2ljLm1vZGFsID4gLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuLyogUmVzb3J0IHRvIG1hcmdpbiBwb3NpdGlvbmluZyBpZiBsZWdhY3kgKi9cbi51aS5sZWdhY3kubGVnYWN5Lm1vZGFsLFxuLnVpLmxlZ2FjeS5sZWdhY3kucGFnZS5kaW1tZXIgPiAudWkubW9kYWwge1xuICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbn1cbi51aS5sZWdhY3kubGVnYWN5Lm1vZGFsOm5vdCguYWxpZ25lZCksXG4udWkubGVnYWN5LmxlZ2FjeS5wYWdlLmRpbW1lciA+IC51aS5tb2RhbDpub3QoLmFsaWduZWQpIHtcbiAgdG9wOiA1MCU7XG59XG4udWkubGVnYWN5LmxlZ2FjeS5wYWdlLmRpbW1lciA+IC51aS5zY3JvbGxpbmcubW9kYWw6bm90KC5hbGlnbmVkKSxcbi51aS5wYWdlLmRpbW1lciA+IC51aS5zY3JvbGxpbmcubGVnYWN5LmxlZ2FjeS5tb2RhbDpub3QoLmFsaWduZWQpLFxuLnVpLnRvcC5hbGlnbmVkLmxlZ2FjeS5sZWdhY3kucGFnZS5kaW1tZXIgPiAudWkubW9kYWw6bm90KC5hbGlnbmVkKSxcbi51aS50b3AuYWxpZ25lZC5kaW1tZXIgPiAudWkubGVnYWN5LmxlZ2FjeS5tb2RhbDpub3QoLmFsaWduZWQpIHtcbiAgdG9wOiBhdXRvO1xufVxuLnVpLmxlZ2FjeS5vdmVybGF5LmZ1bGxzY3JlZW4ubW9kYWwge1xuICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkubG9hZGluZy5tb2RhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IC0xO1xufVxuLnVpLmFjdGl2ZS5tb2RhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkudG9wLmFsaWduZWQubW9kYWwge1xuICB0b3A6IDV2aDtcbn1cbi51aS5ib3R0b20uYWxpZ25lZC5tb2RhbCB7XG4gIGJvdHRvbTogNXZoO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudWkudG9wLmFsaWduZWQubW9kYWwge1xuICAgIHRvcDogMXJlbTtcbiAgfVxuICAudWkuYm90dG9tLmFsaWduZWQubW9kYWwge1xuICAgIGJvdHRvbTogMXJlbTtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNjcm9sbGluZyBEaW1tZXIgKi9cbi5zY3JvbGxpbmcuZGltbWFibGUuZGltbWVkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5zY3JvbGxpbmcuZGltbWFibGUgPiAuZGltbWVyIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG4uc2Nyb2xsaW5nLmRpbW1hYmxlLmRpbW1lZCA+IC5kaW1tZXIge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuLm1vZGFscy5kaW1tZXIgLnVpLnNjcm9sbGluZy5tb2RhbDpub3QoLmZ1bGxzY3JlZW4pIHtcbiAgbWFyZ2luOiAxcmVtIGF1dG87XG59XG4vKiBVbmRldGFjaGVkIFNjcm9sbGluZyAqL1xuLnNjcm9sbGluZy51bmRldGFjaGVkLmRpbW1hYmxlLmRpbW1lZCB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG4uc2Nyb2xsaW5nLnVuZGV0YWNoZWQuZGltbWFibGUuZGltbWVkID4gLmRpbW1lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uc2Nyb2xsaW5nLnVuZGV0YWNoZWQuZGltbWFibGUgLnVpLnNjcm9sbGluZy5tb2RhbDpub3QoLmZ1bGxzY3JlZW4pIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbn1cbi8qIFNjcm9sbGluZyBDb250ZW50ICovXG4udWkubW9kYWwgPiAuc2Nyb2xsaW5nLmNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiBjYWxjKDgwdmggLSAxMHJlbSk7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuLnVpLm92ZXJsYXkuZnVsbHNjcmVlbi5tb2RhbCA+IC5jb250ZW50IHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDkuMXJlbSk7XG59XG4udWkub3ZlcmxheS5mdWxsc2NyZWVuLm1vZGFsID4gLnNjcm9sbGluZy5jb250ZW50IHtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDkuMXJlbSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGdWxsIFNjcmVlblxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mdWxsc2NyZWVuLm1vZGFsIHtcbiAgd2lkdGg6IDk1JTtcbiAgbGVmdDogMi41JTtcbiAgbWFyZ2luOiAxZW0gYXV0bztcbn1cbi51aS5vdmVybGF5LmZ1bGxzY3JlZW4ubW9kYWwge1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRvcDogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi51aS5mdWxsc2NyZWVuLm1vZGFsID4gLmhlYWRlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMjVyZW07XG59XG4udWkuZnVsbHNjcmVlbi5tb2RhbCA+IC5jbG9zZSB7XG4gIHRvcDogMS4wNTM1cmVtO1xuICByaWdodDogMXJlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkuYmFzaWMuZnVsbHNjcmVlbi5tb2RhbCA+IC5jbG9zZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5tb2RhbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi8qIE1pbmkgKi9cbi51aS5taW5pLm1vZGFsID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG59XG4vKiBNaW5pIE1vZGFsIFdpZHRoICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS5taW5pLm1vZGFsIHtcbiAgICB3aWR0aDogOTUlO1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkubWluaS5tb2RhbCB7XG4gICAgd2lkdGg6IDM1LjIlO1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWkubWluaS5tb2RhbCB7XG4gICAgd2lkdGg6IDM0MHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVpLm1pbmkubW9kYWwge1xuICAgIHdpZHRoOiAzNjBweDtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5taW5pLm1vZGFsIHtcbiAgICB3aWR0aDogMzgwcHg7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICB9XG59XG4vKiBUaW55ICovXG4udWkudGlueS5tb2RhbCA+IC5oZWFkZXI6bm90KC51aSkge1xuICBmb250LXNpemU6IDEuM2VtO1xufVxuLyogVGlueSBNb2RhbCBXaWR0aCAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudWkudGlueS5tb2RhbCB7XG4gICAgd2lkdGg6IDk1JTtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVpLnRpbnkubW9kYWwge1xuICAgIHdpZHRoOiA1Mi44JTtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpLnRpbnkubW9kYWwge1xuICAgIHdpZHRoOiA1MTBweDtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51aS50aW55Lm1vZGFsIHtcbiAgICB3aWR0aDogNTQwcHg7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkudGlueS5tb2RhbCB7XG4gICAgd2lkdGg6IDU3MHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuLyogU21hbGwgKi9cbi51aS5zbWFsbC5tb2RhbCA+IC5oZWFkZXI6bm90KC51aSkge1xuICBmb250LXNpemU6IDEuM2VtO1xufVxuLyogU21hbGwgTW9kYWwgV2lkdGggKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpLnNtYWxsLm1vZGFsIHtcbiAgICB3aWR0aDogOTUlO1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkuc21hbGwubW9kYWwge1xuICAgIHdpZHRoOiA3MC40JTtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpLnNtYWxsLm1vZGFsIHtcbiAgICB3aWR0aDogNjgwcHg7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWkuc21hbGwubW9kYWwge1xuICAgIHdpZHRoOiA3MjBweDtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IDc2MHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuLyogTGFyZ2UgTW9kYWwgV2lkdGggKi9cbi51aS5sYXJnZS5tb2RhbCA+IC5oZWFkZXIge1xuICBmb250LXNpemU6IDEuNmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudWkubGFyZ2UubW9kYWwge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IDg4JTtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpLmxhcmdlLm1vZGFsIHtcbiAgICB3aWR0aDogMTAyMHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVpLmxhcmdlLm1vZGFsIHtcbiAgICB3aWR0aDogMTA4MHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLnVpLmxhcmdlLm1vZGFsIHtcbiAgICB3aWR0aDogMTE0MHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgSW52ZXJ0ZWRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuaW52ZXJ0ZWQubW9kYWwge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQubW9kYWwgPiAuaGVhZGVyLFxuLnVpLmludmVydGVkLm1vZGFsID4gLmNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLm1vZGFsID4gLmFjdGlvbnMge1xuICBiYWNrZ3JvdW5kOiAjMTkxQTFCO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjg1KTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQuZGltbWVyID4gLm1vZGFsID4gLmNsb3NlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC51aS5kaW1tZXIgLmludmVydGVkLm1vZGFsID4gLmNsb3NlIHtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgfVxufVxuLnVpLmludmVydGVkLmZ1bGxzY3JlZW4ubW9kYWwgPiAuY2xvc2Uge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBOYWdcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE5hZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIENvbGxlY3Rpb25cbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaXRsZSAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSG92ZXIgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUb3AgLyBCb3R0b20gKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBQbHVyYWxcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBOYWdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBDb2xsZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGl0bGUgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEhvdmVyICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVG9wIC8gQm90dG9tICovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgUGx1cmFsXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBOYWdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkubmFnIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMC45NTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5OTtcbiAgbWluLWhlaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC43NWVtIDFlbTtcbiAgYmFja2dyb3VuZDogIzU1NTU1NTtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG4gIHRyYW5zaXRpb246IDAuMnMgYmFja2dyb3VuZCBlYXNlO1xufVxuYS51aS5uYWcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udWkubmFnID4gLnRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMC41ZW07XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLm5hZyA+IC5jbG9zZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IC0wLjVlbSAwIDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogSG92ZXIgKi9cbi51aS5uYWc6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNTU1NTU1O1xuICBvcGFjaXR5OiAxO1xufVxuLnVpLm5hZyAuY2xvc2U6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RhdGljXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm92ZXJsYXkubmFnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRml4ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZml4ZWQubmFnIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCb3R0b21cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuYm90dG9tLm5hZ3MsXG4udWkuYm90dG9tLm5hZyB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwIDA7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBXaGl0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5uYWdzIC5uYWcsXG4udWkuaW52ZXJ0ZWQubmFnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YzRjRGNTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG4udWkuaW52ZXJ0ZWQubmFncyAubmFnIC5jbG9zZSxcbi51aS5pbnZlcnRlZC5uYWdzIC5uYWcgLnRpdGxlLFxuLnVpLmludmVydGVkLm5hZyAuY2xvc2UsXG4udWkuaW52ZXJ0ZWQubmFnIC50aXRsZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBHcm91cHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkubmFncyAubmFnIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLnVpLm5hZ3MgLm5hZzpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi51aS5ib3R0b20ubmFncyAubmFnOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gUG9wdXBcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFBvcHVwXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUGFydHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBsYWNlbWVudCAqL1xuLyogSGVhZGVyICovXG4vKiBDb250ZW50IEJvcmRlciAqL1xuLyogQXJyb3cgKi9cbi8qIEFycm93IGNvbG9yIGJ5IHBvc2l0aW9uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVG9vbHRpcCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEFycm93ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogR3JpZCBJbnNpZGUgUG9wdXAgKi9cbi8qIChwYWRkaW5nICogQG1lZGl1bSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2lkZSAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEFycm93IGNvbG9yIGJ5IHBvc2l0aW9uICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBQb3B1cFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFBhcnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQbGFjZW1lbnQgKi9cbi8qIEhlYWRlciAqL1xuLyogQ29udGVudCBCb3JkZXIgKi9cbi8qIEFycm93ICovXG4vKiBBcnJvdyBjb2xvciBieSBwb3NpdGlvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRvb2x0aXAgKi9cbi8qIEludmVydGVkICovXG4vKiBBcnJvdyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEdyaWQgSW5zaWRlIFBvcHVwICovXG4vKiAocGFkZGluZyAqIEBtZWRpdW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdpZGUgKi9cbi8qIEludmVydGVkICovXG4vKiBBcnJvdyBjb2xvciBieSBwb3NpdGlvbiAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFBvcHVwXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLnBvcHVwIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICAvKiBGaXhlcyBjb250ZW50IGJlaW5nIHNxdWlzaGVkIHdoZW4gaW5saW5lIChtb3ogb25seSkgKi9cbiAgbWluLXdpZHRoOiBtaW4tY29udGVudDtcbiAgei1pbmRleDogMTkwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NWVtO1xuICBtYXgtd2lkdGg6IDI1MHB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAwLjgzM2VtIDFlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4udWkucG9wdXAgPiAuaGVhZGVyIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnVpLnBvcHVwID4gLmhlYWRlciArIC5jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDAuNWVtO1xufVxuLnVpLnBvcHVwOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAwLjcxNDI4NTcxZW07XG4gIGhlaWdodDogMC43MTQyODU3MWVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHotaW5kZXg6IDE5MDE7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggMCAwICNiYWJhYmM7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVG9vbHRpcFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIENvbnRlbnQgKi9cbltkYXRhLXRvb2x0aXBdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLyogQXJyb3cgKi9cbltkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBmb250LXNpemU6IDFyZW07XG4gIHdpZHRoOiAwLjcxNDI4NTcxZW07XG4gIGhlaWdodDogMC43MTQyODU3MWVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHotaW5kZXg6IDE5MDE7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggMCAwICNiYWJhYmM7XG59XG4vKiBQb3B1cCAqL1xuW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogYXR0cihkYXRhLXRvb2x0aXApO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENEQ0RDU7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODVlbTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAwLjgzM2VtIDFlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIHotaW5kZXg6IDE5MDA7XG59XG4vKiBEZWZhdWx0IFBvc2l0aW9uIChUb3AgQ2VudGVyKSAqL1xuW2RhdGEtdG9vbHRpcF06bm90KFtkYXRhLXBvc2l0aW9uXSk6YmVmb3JlIHtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbi1sZWZ0OiAtMC4wNzE0Mjg1N3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xNDI4NTcxNHJlbTtcbn1cbltkYXRhLXRvb2x0aXBdOm5vdChbZGF0YS1wb3NpdGlvbl0pOmFmdGVyIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG4vKiBBbmltYXRpb24gKi9cbltkYXRhLXRvb2x0aXBdOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbltkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSBzY2FsZSgwKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlO1xufVxuW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlO1xufVxuW2RhdGEtdG9vbHRpcF06aG92ZXI6YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF06aG92ZXI6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbltkYXRhLXRvb2x0aXBdOmhvdmVyOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSBzY2FsZSgxKSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xufVxuLyogQW5pbWF0aW9uIFBvc2l0aW9uICovXG5bZGF0YS10b29sdGlwXTphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJ0b3AgY2VudGVyXCJdOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBjZW50ZXJcIl06YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCkgIWltcG9ydGFudDtcbn1cbltkYXRhLXRvb2x0aXBdOmhvdmVyOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBjZW50ZXJcIl06aG92ZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMSkgIWltcG9ydGFudDtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXTphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJyaWdodCBjZW50ZXJcIl06YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMCkgIWltcG9ydGFudDtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJyaWdodCBjZW50ZXJcIl06aG92ZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSkgIWltcG9ydGFudDtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJ0b3AgbGVmdFwiXTphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJ0b3AgcmlnaHRcIl06YWZ0ZXIsXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwiYm90dG9tIGxlZnRcIl06YWZ0ZXIsXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwiYm90dG9tIHJpZ2h0XCJdOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKSAhaW1wb3J0YW50O1xufVxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cInRvcCBsZWZ0XCJdOmhvdmVyOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cInRvcCByaWdodFwiXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJib3R0b20gbGVmdFwiXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJib3R0b20gcmlnaHRcIl06aG92ZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBBcnJvdyAqL1xuW2RhdGEtdG9vbHRpcF1bZGF0YS1pbnZlcnRlZF06YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLyogQXJyb3cgUG9zaXRpb24gKi9cbltkYXRhLXRvb2x0aXBdW2RhdGEtaW52ZXJ0ZWRdOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMxQjFDMUQ7XG59XG4vKiBQb3B1cCAgKi9cbltkYXRhLXRvb2x0aXBdW2RhdGEtaW52ZXJ0ZWRdOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtaW52ZXJ0ZWRdOmFmdGVyIC5oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBQb3NpdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRvcCBDZW50ZXIgKi9cbltkYXRhLXBvc2l0aW9uPVwidG9wIGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNTAlO1xuICBib3R0b206IDEwMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5bZGF0YS1wb3NpdGlvbj1cInRvcCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgbWFyZ2luLWxlZnQ6IC0wLjA3MTQyODU3cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjE0Mjg1NzE0cmVtO1xufVxuLyogVG9wIExlZnQgKi9cbltkYXRhLXBvc2l0aW9uPVwidG9wIGxlZnRcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5bZGF0YS1wb3NpdGlvbj1cInRvcCBsZWZ0XCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiAxZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC4wNzE0Mjg1N3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xNDI4NTcxNHJlbTtcbn1cbi8qIFRvcCBSaWdodCAqL1xuW2RhdGEtcG9zaXRpb249XCJ0b3AgcmlnaHRcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5bZGF0YS1wb3NpdGlvbj1cInRvcCByaWdodFwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICByaWdodDogMWVtO1xuICBtYXJnaW4tbGVmdDogLTAuMDcxNDI4NTdyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMTQyODU3MTRyZW07XG59XG4vKiBCb3R0b20gQ2VudGVyICovXG5bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIG1hcmdpbi10b3A6IDAuNWVtO1xufVxuW2RhdGEtcG9zaXRpb249XCJib3R0b20gY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4wNzE0Mjg1N3JlbTtcbiAgbWFyZ2luLXRvcDogMC4xNDI4NTcxNHJlbTtcbn1cbi8qIEJvdHRvbSBMZWZ0ICovXG5bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBsZWZ0XCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBsZWZ0OiAwO1xuICB0b3A6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDAuNWVtO1xufVxuW2RhdGEtcG9zaXRpb249XCJib3R0b20gbGVmdFwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMWVtO1xuICBtYXJnaW4tbGVmdDogLTAuMDcxNDI4NTdyZW07XG4gIG1hcmdpbi10b3A6IDAuMTQyODU3MTRyZW07XG59XG4vKiBCb3R0b20gUmlnaHQgKi9cbltkYXRhLXBvc2l0aW9uPVwiYm90dG9tIHJpZ2h0XCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICByaWdodDogMDtcbiAgdG9wOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cbltkYXRhLXBvc2l0aW9uPVwiYm90dG9tIHJpZ2h0XCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAxZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC4xNDI4NTcxNHJlbTtcbiAgbWFyZ2luLXRvcDogMC4wNzE0Mjg1N3JlbTtcbn1cbi8qIExlZnQgQ2VudGVyICovXG5bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICByaWdodDogMTAwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbltkYXRhLXBvc2l0aW9uPVwibGVmdCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICByaWdodDogMTAwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0wLjE0Mjg1NzE0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjA3MTQyODU3cmVtO1xufVxuLyogUmlnaHQgQ2VudGVyICovXG5bZGF0YS1wb3NpdGlvbj1cInJpZ2h0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgbGVmdDogMTAwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuW2RhdGEtcG9zaXRpb249XCJyaWdodCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTAuMDcxNDI4NTdyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjE0Mjg1NzE0cmVtO1xufVxuLyogQXJyb3cgKi9cbltkYXRhLXBvc2l0aW9ufj1cImJvdHRvbVwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IC0xcHggLTFweCAwIDAgI2JhYmFiYztcbn1cbltkYXRhLXBvc2l0aW9uPVwibGVmdCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAxcHggLTFweCAwIDAgI2JhYmFiYztcbn1cbltkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogLTFweCAxcHggMCAwICNiYWJhYmM7XG59XG5bZGF0YS1wb3NpdGlvbn49XCJ0b3BcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuLyogSW52ZXJ0ZWQgQXJyb3cgQ29sb3IgKi9cbltkYXRhLWludmVydGVkXVtkYXRhLXBvc2l0aW9ufj1cImJvdHRvbVwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMxQjFDMUQ7XG4gIGJveC1zaGFkb3c6IC0xcHggLTFweCAwIDAgI2JhYmFiYztcbn1cbltkYXRhLWludmVydGVkXVtkYXRhLXBvc2l0aW9uPVwibGVmdCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xuICBib3gtc2hhZG93OiAxcHggLTFweCAwIDAgI2JhYmFiYztcbn1cbltkYXRhLWludmVydGVkXVtkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgYm94LXNoYWRvdzogLTFweCAxcHggMCAwICNiYWJhYmM7XG59XG5bZGF0YS1pbnZlcnRlZF1bZGF0YS1wb3NpdGlvbn49XCJ0b3BcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xufVxuW2RhdGEtcG9zaXRpb25+PVwiYm90dG9tXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbn1cbltkYXRhLXBvc2l0aW9ufj1cImJvdHRvbVwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHRvcDtcbn1cbltkYXRhLXBvc2l0aW9uPVwibGVmdCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xufVxuW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xufVxuW2RhdGEtcG9zaXRpb249XCJyaWdodCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG59XG5bZGF0YS1wb3NpdGlvbj1cInJpZ2h0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cIm1pbmlcIl06YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwibWluaVwiXTphZnRlciB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cInRpbnlcIl06YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwidGlueVwiXTphZnRlciB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cInNtYWxsXCJdOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cInNtYWxsXCJdOmFmdGVyIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwibWVkaXVtXCJdOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cIm1lZGl1bVwiXTphZnRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cImxhcmdlXCJdOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cImxhcmdlXCJdOmFmdGVyIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwiaHVnZVwiXTpiZWZvcmUsXG5bZGF0YS10b29sdGlwXVtkYXRhLXZhcmlhdGlvbn49XCJodWdlXCJdOmFmdGVyIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0qL1xuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwiYmFzaWNcIl06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3BhY2luZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5wb3B1cCB7XG4gIG1hcmdpbjogMDtcbn1cbi8qIEV4dGVuZGluZyBmcm9tIFRvcCAqL1xuLnVpLnRvcC5wb3B1cCB7XG4gIG1hcmdpbjogMCAwIDAuNzE0Mjg1NzFlbTtcbn1cbi51aS50b3AubGVmdC5wb3B1cCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xufVxuLnVpLnRvcC5jZW50ZXIucG9wdXAge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xufVxuLnVpLnRvcC5yaWdodC5wb3B1cCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbn1cbi8qIEV4dGVuZGluZyBmcm9tIFZlcnRpY2FsIENlbnRlciAqL1xuLnVpLmxlZnQuY2VudGVyLnBvcHVwIHtcbiAgbWFyZ2luOiAwIDAuNzE0Mjg1NzFlbSAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IDUwJTtcbn1cbi51aS5yaWdodC5jZW50ZXIucG9wdXAge1xuICBtYXJnaW46IDAgMCAwIDAuNzE0Mjg1NzFlbTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCA1MCU7XG59XG4vKiBFeHRlbmRpbmcgZnJvbSBCb3R0b20gKi9cbi51aS5ib3R0b20ucG9wdXAge1xuICBtYXJnaW46IDAuNzE0Mjg1NzFlbSAwIDA7XG59XG4udWkuYm90dG9tLmxlZnQucG9wdXAge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbn1cbi51aS5ib3R0b20uY2VudGVyLnBvcHVwIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHRvcDtcbn1cbi51aS5ib3R0b20ucmlnaHQucG9wdXAge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBvaW50ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSBCZWxvdyAtLS0qL1xuLnVpLmJvdHRvbS5jZW50ZXIucG9wdXA6YmVmb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjMwNzE0Mjg2ZW07XG4gIHRvcDogLTAuMzA3MTQyODZlbTtcbiAgbGVmdDogNTAlO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMCAwICNiYWJhYmM7XG59XG4udWkuYm90dG9tLmxlZnQucG9wdXAge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi8qcnRsOnJlbmFtZSovXG4udWkuYm90dG9tLmxlZnQucG9wdXA6YmVmb3JlIHtcbiAgdG9wOiAtMC4zMDcxNDI4NmVtO1xuICBsZWZ0OiAxZW07XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMCAwICNiYWJhYmM7XG59XG4udWkuYm90dG9tLnJpZ2h0LnBvcHVwIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLypydGw6cmVuYW1lKi9cbi51aS5ib3R0b20ucmlnaHQucG9wdXA6YmVmb3JlIHtcbiAgdG9wOiAtMC4zMDcxNDI4NmVtO1xuICByaWdodDogMWVtO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMCAwICNiYWJhYmM7XG59XG4vKi0tLSBBYm92ZSAtLS0qL1xuLnVpLnRvcC5jZW50ZXIucG9wdXA6YmVmb3JlIHtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiAtMC4zMDcxNDI4NmVtO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zMDcxNDI4NmVtO1xufVxuLnVpLnRvcC5sZWZ0LnBvcHVwIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4vKnJ0bDpyZW5hbWUqL1xuLnVpLnRvcC5sZWZ0LnBvcHVwOmJlZm9yZSB7XG4gIGJvdHRvbTogLTAuMzA3MTQyODZlbTtcbiAgbGVmdDogMWVtO1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi51aS50b3AucmlnaHQucG9wdXAge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4vKnJ0bDpyZW5hbWUqL1xuLnVpLnRvcC5yaWdodC5wb3B1cDpiZWZvcmUge1xuICBib3R0b206IC0wLjMwNzE0Mjg2ZW07XG4gIHJpZ2h0OiAxZW07XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4vKi0tLSBMZWZ0IENlbnRlciAtLS0qL1xuLypydGw6cmVuYW1lKi9cbi51aS5sZWZ0LmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IC0wLjMwNzE0Mjg2ZW07XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTAuMzA3MTQyODZlbTtcbiAgYm94LXNoYWRvdzogMXB4IC0xcHggMCAwICNiYWJhYmM7XG59XG4vKi0tLSBSaWdodCBDZW50ZXIgIC0tLSovXG4vKnJ0bDpyZW5hbWUqL1xuLnVpLnJpZ2h0LmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogLTAuMzA3MTQyODZlbTtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTAuMzA3MTQyODZlbTtcbiAgYm94LXNoYWRvdzogLTFweCAxcHggMCAwICNiYWJhYmM7XG59XG4vKiBBcnJvdyBDb2xvciBCeSBMb2NhdGlvbiAqL1xuLnVpLmJvdHRvbS5wb3B1cDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuLnVpLnJpZ2h0LmNlbnRlci5wb3B1cDpiZWZvcmUsXG4udWkubGVmdC5jZW50ZXIucG9wdXA6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cbi51aS50b3AucG9wdXA6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cbi8qIEludmVydGVkIEFycm93IENvbG9yICovXG4udWkuaW52ZXJ0ZWQuYm90dG9tLnBvcHVwOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMxQjFDMUQ7XG59XG4udWkuaW52ZXJ0ZWQucmlnaHQuY2VudGVyLnBvcHVwOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5sZWZ0LmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xufVxuLnVpLmludmVydGVkLnRvcC5wb3B1cDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvdXBsaW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogSW1tZWRpYXRlIE5lc3RlZCBHcmlkICovXG4udWkucG9wdXAgPiAudWkuZ3JpZDpub3QoLnBhZGRlZCkge1xuICB3aWR0aDogY2FsYygxMDAlICsgMS43NXJlbSk7XG4gIG1hcmdpbjogLTAuN3JlbSAtMC44NzVyZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmxvYWRpbmcucG9wdXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAtMTtcbn1cbi51aS5hbmltYXRpbmcucG9wdXAsXG4udWkudmlzaWJsZS5wb3B1cCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnVpLnZpc2libGUucG9wdXAge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5iYXNpYy5wb3B1cDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBXaWRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLndpZGUucG9wdXAge1xuICBtYXgtd2lkdGg6IDM1MHB4O1xufVxuLnVpW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5wb3B1cCB7XG4gIG1heC13aWR0aDogNTUwcHg7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC51aS53aWRlLnBvcHVwLFxuICAudWlbY2xhc3MqPVwidmVyeSB3aWRlXCJdLnBvcHVwIHtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZsdWlkLnBvcHVwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgY29sb3JzICAqL1xuLnVpLmludmVydGVkLnBvcHVwIHtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS5pbnZlcnRlZC5wb3B1cCAuaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udWkuaW52ZXJ0ZWQucG9wdXA6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbG93aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmZsb3dpbmcucG9wdXAge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1pbmkucG9wdXAge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG59XG4udWkudGlueS5wb3B1cCB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5wb3B1cCB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cbi51aS5wb3B1cCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi51aS5sYXJnZS5wb3B1cCB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5odWdlLnBvcHVwIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gUHJvZ3Jlc3MgQmFyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFByb2dyZXNzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQmFyICovXG4vKiBQcm9ncmVzcyBCYXIgTGFiZWwgKi9cbi8qIExhYmVsICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEFjdGl2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBBdHRhY2hlZCAqL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIFNpemluZyAqL1xuLyogSW5kZXRlcm1pbmF0ZSAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBQcm9ncmVzc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEJhciAqL1xuLyogUHJvZ3Jlc3MgQmFyIExhYmVsICovXG4vKiBMYWJlbCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBBY3RpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQXR0YWNoZWQgKi9cbi8qIEludmVydGVkICovXG4vKiBTaXppbmcgKi9cbi8qIEluZGV0ZXJtaW5hdGUgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBQcm9ncmVzc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5wcm9ncmVzcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDFlbSAwIDIuNWVtO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG4udWkucHJvZ3Jlc3M6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW46IDAgMCAyLjVlbTtcbn1cbi51aS5wcm9ncmVzczpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwIDAgMS41ZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEFjdGl2aXR5IEJhciAqL1xuLnVpLnByb2dyZXNzIC5iYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDA7XG4gIG1pbi13aWR0aDogMmVtO1xuICBiYWNrZ3JvdW5kOiAjODg4ODg4O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjFzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnVpLnVpLnVpLnByb2dyZXNzOm5vdChbZGF0YS1wZXJjZW50XSk6bm90KC5pbmRldGVybWluYXRlKSAuYmFyLFxuLnVpLnVpLnVpLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjBcIl06bm90KC5pbmRldGVybWluYXRlKSAuYmFyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4udWkucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMFwiXSAuYmFyIC5wcm9ncmVzcyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLnVpLmludmVydGVkLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjBcIl0gLmJhciAucHJvZ3Jlc3Mge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLyogUGVyY2VudCBDb21wbGV0ZSAqL1xuLnVpLnByb2dyZXNzIC5iYXIgPiAucHJvZ3Jlc3Mge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBhdXRvO1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwLjVlbTtcbiAgbGVmdDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuNWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi8qIExhYmVsICovXG4udWkucHJvZ3Jlc3MgPiAubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDFlbTtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbiAgYm90dG9tOiBhdXRvO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBtYXJnaW4tdG9wOiAwLjJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzIGVhc2U7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBJbmRpY2F0aW5nICovXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiMVwiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjJcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEOTVDNUM7XG59XG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiM1wiXSAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VGQkM3Mjtcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI0XCJdIC5iYXIsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNVwiXSAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U2QkI0ODtcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI2XCJdIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRERDOTI4O1xufVxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjdcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI4XCJdIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjREOTVDO1xufVxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjlcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIxMDBcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NkRBODE7XG59XG4vKiBJbmRpY2F0aW5nIExhYmVsICovXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiMVwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiMlwiXSAubGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIzXCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjRcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjVcIl0gLmxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNlwiXSAubGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI3XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI4XCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjlcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjEwMFwiXSAubGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi8qIEludmVydGVkIEluZGljYXRpbmcgTGFiZWwgKi9cbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIxXCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIyXCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiM1wiXSAubGFiZWwge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjRcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjVcIl0gLmxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI2XCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiN1wiXSAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiOFwiXSAubGFiZWwge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjlcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjEwMFwiXSAubGFiZWwge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLyogU2luZ2xlIERpZ2l0cyAqL1xuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMVwiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMlwiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiM1wiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNFwiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNVwiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNlwiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiN1wiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiOFwiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiOVwiXSAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q5NUM1Qztcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjBcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMVwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCIyXCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjNcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNFwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI1XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjZcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiN1wiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI4XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjlcIl0gLmxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCIwXCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjFcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMlwiXSAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCIzXCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjRcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNVwiXSAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI2XCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjdcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiOFwiXSAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI5XCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4vKiBJbmRpY2F0aW5nIFN1Y2Nlc3MgKi9cbi51aS51aS5pbmRpY2F0aW5nLnByb2dyZXNzLnN1Y2Nlc3MgLmxhYmVsIHtcbiAgY29sb3I6ICMxQTUzMUI7XG59XG4vKiBNdWx0aXBsZSAqL1xuLnVpLm11bHRpcGxlLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTdWNjZXNzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnVpLnByb2dyZXNzLnN1Y2Nlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG59XG4udWkudWkucHJvZ3Jlc3Muc3VjY2VzcyAuYmFyLFxuLnVpLnVpLnByb2dyZXNzLnN1Y2Nlc3MgLmJhcjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG5vbmU7XG59XG4udWkucHJvZ3Jlc3Muc3VjY2VzcyA+IC5sYWJlbCB7XG4gIGNvbG9yOiAjMUE1MzFCO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBXYXJuaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnVpLnByb2dyZXNzLndhcm5pbmcgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkMwMzc7XG59XG4udWkudWkucHJvZ3Jlc3Mud2FybmluZyAuYmFyLFxuLnVpLnVpLnByb2dyZXNzLndhcm5pbmcgLmJhcjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG5vbmU7XG59XG4udWkucHJvZ3Jlc3Mud2FybmluZyA+IC5sYWJlbCB7XG4gIGNvbG9yOiAjNzk0QjAyO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS51aS5wcm9ncmVzcy5lcnJvciAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RCMjgyODtcbn1cbi51aS51aS5wcm9ncmVzcy5lcnJvciAuYmFyLFxuLnVpLnVpLnByb2dyZXNzLmVycm9yIC5iYXI6OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBub25lO1xufVxuLnVpLnByb2dyZXNzLmVycm9yID4gLmxhYmVsIHtcbiAgY29sb3I6ICM5MTJEMkI7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5hY3RpdmUucHJvZ3Jlc3MgLmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiAyZW07XG59XG4udWkuYWN0aXZlLnByb2dyZXNzIC5iYXI6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBhbmltYXRpb246IHByb2dyZXNzLWFjdGl2ZSAycyBlYXNlIGluZmluaXRlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xufVxuQGtleWZyYW1lcyBwcm9ncmVzcy1hY3RpdmUge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCwgMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZGlzYWJsZWQucHJvZ3Jlc3Mge1xuICBvcGFjaXR5OiAwLjM1O1xufVxuLnVpLnVpLmRpc2FibGVkLnByb2dyZXNzIC5iYXIsXG4udWkudWkuZGlzYWJsZWQucHJvZ3Jlc3MgLmJhcjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG5vbmU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmludmVydGVkLnByb2dyZXNzIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgYm9yZGVyOiBub25lO1xufVxuLnVpLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kOiAjODg4ODg4O1xufVxuLnVpLmludmVydGVkLnByb2dyZXNzIC5iYXIgPiAucHJvZ3Jlc3Mge1xuICBjb2xvcjogIzFCMUMxRDtcbn1cbi51aS5pbnZlcnRlZC5wcm9ncmVzcyA+IC5sYWJlbCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnVpLmludmVydGVkLnByb2dyZXNzLnN1Y2Nlc3MgPiAubGFiZWwge1xuICBjb2xvcjogIzIxQkE0NTtcbn1cbi51aS5pbnZlcnRlZC5wcm9ncmVzcy53YXJuaW5nID4gLmxhYmVsIHtcbiAgY29sb3I6ICNGMkMwMzc7XG59XG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MuZXJyb3IgPiAubGFiZWwge1xuICBjb2xvcjogI0RCMjgyODtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIGJvdHRvbSBhdHRhY2hlZCAqL1xuLnVpLnByb2dyZXNzLmF0dGFjaGVkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG59XG4udWkucHJvZ3Jlc3MuYXR0YWNoZWQsXG4udWkucHJvZ3Jlc3MuYXR0YWNoZWQgLmJhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDAuMnJlbTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cbi51aS5wcm9ncmVzcy5hdHRhY2hlZCAuYmFyIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi8qIHRvcCBhdHRhY2hlZCAqL1xuLnVpLnByb2dyZXNzLnRvcC5hdHRhY2hlZCxcbi51aS5wcm9ncmVzcy50b3AuYXR0YWNoZWQgLmJhciB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDAgMDtcbn1cbi51aS5wcm9ncmVzcy50b3AuYXR0YWNoZWQgLmJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4vKiBDb3VwbGluZyAqL1xuLnVpLnNlZ21lbnQgPiAudWkuYXR0YWNoZWQucHJvZ3Jlc3MsXG4udWkuY2FyZCA+IC51aS5hdHRhY2hlZC5wcm9ncmVzcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnNlZ21lbnQgPiAudWkuYm90dG9tLmF0dGFjaGVkLnByb2dyZXNzLFxuLnVpLmNhcmQgPiAudWkuYm90dG9tLmF0dGFjaGVkLnByb2dyZXNzIHtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbmRldGVybWluYXRlLnByaW1hcnkucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLnByaW1hcnkucHJvZ3Jlc3MgLmJhcixcbi51aS5wcm9ncmVzcyAucHJpbWFyeS5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwO1xufVxuLnVpLmludmVydGVkLmluZGV0ZXJtaW5hdGUucHJpbWFyeS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkucHJpbWFyeS5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyLFxuLnVpLmludmVydGVkLnByb2dyZXNzIC5wcmltYXJ5LmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NEM4RkY7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS5zZWNvbmRhcnkucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLnNlY29uZGFyeS5wcm9ncmVzcyAuYmFyLFxuLnVpLnByb2dyZXNzIC5zZWNvbmRhcnkuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbn1cbi51aS5pbnZlcnRlZC5pbmRldGVybWluYXRlLnNlY29uZGFyeS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnByb2dyZXNzIC5iYXIsXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLnNlY29uZGFyeS5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1NDU0O1xufVxuLnVpLmluZGV0ZXJtaW5hdGUucmVkLnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS5yZWQucHJvZ3Jlc3MgLmJhcixcbi51aS5wcm9ncmVzcyAucmVkLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG59XG4udWkuaW52ZXJ0ZWQuaW5kZXRlcm1pbmF0ZS5yZWQucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLnJlZC5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyLFxuLnVpLmludmVydGVkLnByb2dyZXNzIC5yZWQuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGNjk1RTtcbn1cbi51aS5pbmRldGVybWluYXRlLm9yYW5nZS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkub3JhbmdlLnByb2dyZXNzIC5iYXIsXG4udWkucHJvZ3Jlc3MgLm9yYW5nZS5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI3MTFDO1xufVxuLnVpLmludmVydGVkLmluZGV0ZXJtaW5hdGUub3JhbmdlLnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS5vcmFuZ2UuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhcixcbi51aS5pbnZlcnRlZC5wcm9ncmVzcyAub3JhbmdlLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRjg1MUI7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS55ZWxsb3cucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLnllbGxvdy5wcm9ncmVzcyAuYmFyLFxuLnVpLnByb2dyZXNzIC55ZWxsb3cuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwODtcbn1cbi51aS5pbnZlcnRlZC5pbmRldGVybWluYXRlLnllbGxvdy5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkueWVsbG93LmludmVydGVkLnByb2dyZXNzIC5iYXIsXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLnllbGxvdy5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZFMjFGO1xufVxuLnVpLmluZGV0ZXJtaW5hdGUub2xpdmUucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLm9saXZlLnByb2dyZXNzIC5iYXIsXG4udWkucHJvZ3Jlc3MgLm9saXZlLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNUNDMTg7XG59XG4udWkuaW52ZXJ0ZWQuaW5kZXRlcm1pbmF0ZS5vbGl2ZS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkub2xpdmUuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhcixcbi51aS5pbnZlcnRlZC5wcm9ncmVzcyAub2xpdmUuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q5RTc3ODtcbn1cbi51aS5pbmRldGVybWluYXRlLmdyZWVuLnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS5ncmVlbi5wcm9ncmVzcyAuYmFyLFxuLnVpLnByb2dyZXNzIC5ncmVlbi5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFCQTQ1O1xufVxuLnVpLmludmVydGVkLmluZGV0ZXJtaW5hdGUuZ3JlZW4ucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLmdyZWVuLmludmVydGVkLnByb2dyZXNzIC5iYXIsXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmdyZWVuLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyRUNDNDA7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS50ZWFsLnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS50ZWFsLnByb2dyZXNzIC5iYXIsXG4udWkucHJvZ3Jlc3MgLnRlYWwuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRDtcbn1cbi51aS5pbnZlcnRlZC5pbmRldGVybWluYXRlLnRlYWwucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLnRlYWwuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhcixcbi51aS5pbnZlcnRlZC5wcm9ncmVzcyAudGVhbC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkRGRkZGO1xufVxuLnVpLmluZGV0ZXJtaW5hdGUuYmx1ZS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkuYmx1ZS5wcm9ncmVzcyAuYmFyLFxuLnVpLnByb2dyZXNzIC5ibHVlLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg1RDA7XG59XG4udWkuaW52ZXJ0ZWQuaW5kZXRlcm1pbmF0ZS5ibHVlLnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS5ibHVlLmludmVydGVkLnByb2dyZXNzIC5iYXIsXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJsdWUuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0QzhGRjtcbn1cbi51aS5pbmRldGVybWluYXRlLnZpb2xldC5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkudmlvbGV0LnByb2dyZXNzIC5iYXIsXG4udWkucHJvZ3Jlc3MgLnZpb2xldC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQzNUM5O1xufVxuLnVpLmludmVydGVkLmluZGV0ZXJtaW5hdGUudmlvbGV0LnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS52aW9sZXQuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhcixcbi51aS5pbnZlcnRlZC5wcm9ncmVzcyAudmlvbGV0LmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMjkxRkI7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS5wdXJwbGUucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLnB1cnBsZS5wcm9ncmVzcyAuYmFyLFxuLnVpLnByb2dyZXNzIC5wdXJwbGUuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EzMzNDODtcbn1cbi51aS5pbnZlcnRlZC5pbmRldGVybWluYXRlLnB1cnBsZS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkucHVycGxlLmludmVydGVkLnByb2dyZXNzIC5iYXIsXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLnB1cnBsZS5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREM3M0ZGO1xufVxuLnVpLmluZGV0ZXJtaW5hdGUucGluay5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkucGluay5wcm9ncmVzcyAuYmFyLFxuLnVpLnByb2dyZXNzIC5waW5rLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTc7XG59XG4udWkuaW52ZXJ0ZWQuaW5kZXRlcm1pbmF0ZS5waW5rLnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS5waW5rLmludmVydGVkLnByb2dyZXNzIC5iYXIsXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLnBpbmsuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGOEVERjtcbn1cbi51aS5pbmRldGVybWluYXRlLmJyb3duLnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS5icm93bi5wcm9ncmVzcyAuYmFyLFxuLnVpLnByb2dyZXNzIC5icm93bi5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTU2NzNGO1xufVxuLnVpLmludmVydGVkLmluZGV0ZXJtaW5hdGUuYnJvd24ucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLmJyb3duLmludmVydGVkLnByb2dyZXNzIC5iYXIsXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJyb3duLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNENjdDMUM7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS5ncmV5LnByb2dyZXNzIC5iYXI6OmJlZm9yZSxcbi51aS5ncmV5LnByb2dyZXNzIC5iYXIsXG4udWkucHJvZ3Jlc3MgLmdyZXkuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3Njtcbn1cbi51aS5pbnZlcnRlZC5pbmRldGVybWluYXRlLmdyZXkucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLmdyZXkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhcixcbi51aS5pbnZlcnRlZC5wcm9ncmVzcyAuZ3JleS5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENERERFO1xufVxuLnVpLmluZGV0ZXJtaW5hdGUuYmxhY2sucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuLnVpLmJsYWNrLnByb2dyZXNzIC5iYXIsXG4udWkucHJvZ3Jlc3MgLmJsYWNrLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG59XG4udWkuaW52ZXJ0ZWQuaW5kZXRlcm1pbmF0ZS5ibGFjay5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4udWkuYmxhY2suaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhcixcbi51aS5pbnZlcnRlZC5wcm9ncmVzcyAuYmxhY2suYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkudGlueS5wcm9ncmVzcyB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS50aW55LnByb2dyZXNzIC5iYXIge1xuICBoZWlnaHQ6IDAuNWVtO1xufVxuLnVpLnNtYWxsLnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuLnVpLnNtYWxsLnByb2dyZXNzIC5iYXIge1xuICBoZWlnaHQ6IDFlbTtcbn1cbi51aS5wcm9ncmVzcyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi51aS5wcm9ncmVzcyAuYmFyIHtcbiAgaGVpZ2h0OiAxLjc1ZW07XG59XG4udWkubGFyZ2UucHJvZ3Jlc3Mge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG4udWkubGFyZ2UucHJvZ3Jlc3MgLmJhciB7XG4gIGhlaWdodDogMi41ZW07XG59XG4udWkuYmlnLnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuLnVpLmJpZy5wcm9ncmVzcyAuYmFyIHtcbiAgaGVpZ2h0OiAzLjVlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tXG4gIEluZGV0ZXJtaW5hdGVcbi0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciAucHJvZ3Jlc3MsXG4udWkucHJvZ3Jlc3MgLmJhciAuY2VudGVyZWQucHJvZ3Jlc3Mge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51aS5pbmRldGVybWluYXRlLnByb2dyZXNzIC5iYXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBhbmltYXRpb246IHByb2dyZXNzLXB1bHNhdGluZyAycyBlYXNlIGluZmluaXRlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnNsb3cuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDRzO1xufVxuLnVpLmZhc3QuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xufVxuLnVpLnN3aW5naW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHByb2dyZXNzLXN3aW5naW5nO1xufVxuLnVpLnNsaWRpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICBhbmltYXRpb24tbmFtZTogcHJvZ3Jlc3Mtc2xpZGluZztcbn1cbi51aS5maWxsaW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHByb2dyZXNzLWZpbGxpbmc7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzczpub3QoLnNsaWRpbmcpOm5vdCguZmlsbGluZyk6bm90KC5zd2luZ2luZykgLmJhcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cbi51aS5zbGlkaW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhcixcbi51aS5zd2luZ2luZy5pbmRldGVybWluYXRlLnByb2dyZXNzIC5iYXIsXG4udWkuZmlsbGluZy5pbmRldGVybWluYXRlLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkuaW52ZXJ0ZWQuc2xpZGluZy5pbmRldGVybWluYXRlLnByb2dyZXNzIC5iYXIsXG4udWkuaW52ZXJ0ZWQuc3dpbmdpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyLFxuLnVpLmludmVydGVkLmZpbGxpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbn1cbi51aS5zbGlkaW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciAucHJvZ3Jlc3MsXG4udWkuc3dpbmdpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyIC5wcm9ncmVzcyB7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuLnVpLmludmVydGVkLnNsaWRpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyIC5wcm9ncmVzcyxcbi51aS5pbnZlcnRlZC5zd2luZ2luZy5pbmRldGVybWluYXRlLnByb2dyZXNzIC5iYXIgLnByb2dyZXNzIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbkBrZXlmcmFtZXMgcHJvZ3Jlc3Mtc3dpbmdpbmcge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgd2lkdGg6IDEwJTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIDI1JSxcbiAgNjUlIHtcbiAgICB3aWR0aDogNzAlO1xuICB9XG4gIDUwJSB7XG4gICAgd2lkdGg6IDEwJTtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHByb2dyZXNzLXNsaWRpbmcge1xuICAwJSB7XG4gICAgd2lkdGg6IDEwJTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIDUwJSB7XG4gICAgd2lkdGg6IDcwJTtcbiAgfVxuICAxMDAlIHtcbiAgICB3aWR0aDogMTAlO1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtZmlsbGluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAsIDEpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtcHVsc2F0aW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCwgMSk7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFByb2dyZXNzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUaGVtZVxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgU2xpZGVyIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRyYWNrICovXG4vKiBUcmFjayBGaWxsICovXG4vKiBUaHVtYiAqL1xuLyogVGh1bWIgSG92ZXIgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpc2FibGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFZlcnRpY2FsICovXG4vKiBMYWJlbGVkICovXG4vKiBIb3ZlciAqL1xuLyogU2l6aW5nICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgU2xpZGVyIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVsZW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRyYWNrICovXG4vKiBUcmFjayBGaWxsICovXG4vKiBUaHVtYiAqL1xuLyogVGh1bWIgSG92ZXIgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpc2FibGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFZlcnRpY2FsICovXG4vKiBMYWJlbGVkICovXG4vKiBIb3ZlciAqL1xuLyogU2l6aW5nICovXG4vKiBTaXRlIFRoZW1lICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi51aS5zbGlkZXI6bm90KC52ZXJ0aWNhbCk6bm90KC5jaGVja2JveCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMWVtIDAuNWVtO1xufVxuLnVpLnNsaWRlcjpub3QoLmNoZWNrYm94KSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51aS5zbGlkZXI6bm90KC5jaGVja2JveCk6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuLnVpLnNsaWRlciAuaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4udWkuc2xpZGVyOm5vdCgudmVydGljYWwpIC5pbm5lciB7XG4gIGhlaWdodDogMS41ZW07XG59XG4udWkuc2xpZGVyIC5pbm5lcjpob3ZlciB7XG4gIGN1cnNvcjogYXV0bztcbn1cbi51aS5zbGlkZXIgLmlubmVyIC50cmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuLnVpLnNsaWRlcjpub3QoLnZlcnRpY2FsKSAuaW5uZXIgLnRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC40ZW07XG4gIHRvcDogMC41NWVtO1xuICBsZWZ0OiAwO1xufVxuLnVpLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbn1cbi51aS5zbGlkZXI6bm90KC52ZXJ0aWNhbCkgLmlubmVyIC50cmFjay1maWxsIHtcbiAgaGVpZ2h0OiAwLjRlbTtcbiAgdG9wOiAwLjU1ZW07XG4gIGxlZnQ6IDA7XG59XG4udWkuc2xpZGVyIC5pbm5lciAudGh1bWIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgd2lkdGg6IDEuNWVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZTtcbn1cbi51aS5zbGlkZXI6bm90KC5kaXNhYmxlZCkgLmlubmVyIC50aHVtYjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogI2YyZjJmMiBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xufVxuLnVpLnNsaWRlcjpub3QoLmRpc2FibGVkKTpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZDogI2YyZjJmMiBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuZGlzYWJsZWQuc2xpZGVyOm5vdCguY2hlY2tib3gpIHtcbiAgb3BhY2l0eTogMC41O1xufVxuLnVpLmRpc2FibGVkLnNsaWRlciAuaW5uZXI6aG92ZXIge1xuICBjdXJzb3I6IGF1dG87XG59XG4udWkuZGlzYWJsZWQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUmV2ZXJzZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkucmV2ZXJzZWQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuLnVpLnJldmVyc2VkLnNsaWRlciAuaW5uZXIgLnRodW1iIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG4udWkubGFiZWxlZC5yZXZlcnNlZC5zbGlkZXIgPiAubGFiZWxzIC5sYWJlbCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtMTAwJSk7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIFZlcnRpY2FsXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnZlcnRpY2FsLnNsaWRlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEuNWVtO1xuICBwYWRkaW5nOiAwLjVlbSAxZW07XG59XG4udWkudmVydGljYWwuc2xpZGVyIC5pbm5lciB7XG4gIGhlaWdodDogMTAwJTtcbn1cbi51aS52ZXJ0aWNhbC5zbGlkZXIgLmlubmVyIC50cmFjayB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDAuNGVtO1xuICBsZWZ0OiAwLjU1ZW07XG4gIHRvcDogMDtcbn1cbi51aS52ZXJ0aWNhbC5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgd2lkdGg6IDAuNGVtO1xuICBsZWZ0OiAwLjU1ZW07XG4gIHRvcDogMDtcbn1cbi8qIFZlcnRpY2FsIFJldmVyc2VkICovXG4udWkudmVydGljYWwucmV2ZXJzZWQuc2xpZGVyIC5pbm5lciAudGh1bWIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbn1cbi51aS52ZXJ0aWNhbC5yZXZlcnNlZC5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTGFiZWxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sYWJlbGVkLnNsaWRlciA+IC5sYWJlbHMge1xuICBoZWlnaHQ6IDEuNWVtO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cbi51aS5sYWJlbGVkLnNsaWRlcjpub3QoLnZlcnRpY2FsKSA+IC5sYWJlbHMge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4udWkubGFiZWxlZC5zbGlkZXIgPiAubGFiZWxzIC5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbn1cbi51aS5sYWJlbGVkLnRpY2tlZC5zbGlkZXIgPiAubGFiZWxzIC5sYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbn1cbi51aS5sYWJlbGVkLnRpY2tlZC5zbGlkZXIgPiAubGFiZWxzIC5oYWxmdGljay5sYWJlbDphZnRlciB7XG4gIGhlaWdodDogMC43NWVtO1xufVxuLyogVmVydGljYWwgTGFiZWxzICovXG4udWkubGFiZWxlZC52ZXJ0aWNhbC5zbGlkZXIgPiAubGFiZWxzIHtcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi51aS5sYWJlbGVkLnZlcnRpY2FsLnNsaWRlciA+IC5sYWJlbHMgLmxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIC01MCUpO1xufVxuLnVpLmxhYmVsZWQudmVydGljYWwuc2xpZGVyID4gLmxhYmVscyAubGFiZWw6YWZ0ZXIge1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMXB4O1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDUwJTtcbn1cbi51aS5sYWJlbGVkLnZlcnRpY2FsLnNsaWRlciA+IC5sYWJlbHMgLmhhbGZ0aWNrLmxhYmVsOmFmdGVyIHtcbiAgd2lkdGg6IDAuNzVlbTtcbiAgaGVpZ2h0OiAxcHg7XG59XG4vKiBWZXJ0aWNhbCBSZXZlcnNlZCBMYWJlbHMgKi9cbi51aS5sYWJlbGVkLnZlcnRpY2FsLnJldmVyc2VkLnNsaWRlciA+IC5sYWJlbHMgLmxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIDUwJSk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaG92ZXIuc2xpZGVyIC5pbm5lciAudGh1bWIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xufVxuLnVpLmhvdmVyLnNsaWRlcjpub3QoLmRpc2FibGVkKTpob3ZlciAuaW5uZXIgLnRodW1iLFxuLnVpLmhvdmVyLnNsaWRlcjpub3QoLmRpc2FibGVkKTpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5pbnZlcnRlZC5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDtcbn1cbi51aS5pbnZlcnRlZC5zbGlkZXIgLmlubmVyIC50cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFN0YW5kYXJkICovXG4udWkucHJpbWFyeS5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbn1cbi51aS5wcmltYXJ5LmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTRDOEZGO1xufVxuLyogQmFzaWMgKi9cbi51aS5wcmltYXJ5LnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbn1cbi51aS5wcmltYXJ5LnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLFxuLnVpLnByaW1hcnkuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY3OGMyO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5wcmltYXJ5LmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0QzhGRjtcbn1cbi51aS5wcmltYXJ5LmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLFxuLnVpLnByaW1hcnkuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFiOGZmO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS5zZWNvbmRhcnkuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG59XG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1NDU0O1xufVxuLyogQmFzaWMgKi9cbi51aS5zZWNvbmRhcnkuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xufVxuLnVpLnNlY29uZGFyeS5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5zZWNvbmRhcnkuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyOTJhO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1NDU0O1xufVxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmU2ZTZlO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS5yZWQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG59XG4udWkucmVkLmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY2OTVFO1xufVxuLyogQmFzaWMgKi9cbi51aS5yZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4O1xufVxuLnVpLnJlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5yZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAxOTE5O1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5yZWQuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY2OTVFO1xufVxuLnVpLnJlZC5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5yZWQuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYzOTJiO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS5vcmFuZ2Uuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjcxMUM7XG59XG4udWkub3JhbmdlLmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY4NTFCO1xufVxuLyogQmFzaWMgKi9cbi51aS5vcmFuZ2Uuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI3MTFDO1xufVxuLnVpLm9yYW5nZS5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5vcmFuZ2Uuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI2MjAyO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5vcmFuZ2UuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY4NTFCO1xufVxuLnVpLm9yYW5nZS5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5vcmFuZ2UuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTc2YjAwO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS55ZWxsb3cuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkJEMDg7XG59XG4udWkueWVsbG93LmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZFMjFGO1xufVxuLyogQmFzaWMgKi9cbi51aS55ZWxsb3cuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJCRDA4O1xufVxuLnVpLnllbGxvdy5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS55ZWxsb3cuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFhZTAwO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS55ZWxsb3cuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZFMjFGO1xufVxuLnVpLnllbGxvdy5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS55ZWxsb3cuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJjZDAwO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS5vbGl2ZS5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I1Q0MxODtcbn1cbi51aS5vbGl2ZS5pbnZlcnRlZC5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q5RTc3ODtcbn1cbi8qIEJhc2ljICovXG4udWkub2xpdmUuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjVDQzE4O1xufVxuLnVpLm9saXZlLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLFxuLnVpLm9saXZlLnNsaWRlci5iYXNpYzpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E3YmQwZDtcbn1cbi8qIEJhc2ljIEludmVydGVkICovXG4udWkub2xpdmUuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDlFNzc4O1xufVxuLnVpLm9saXZlLmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLFxuLnVpLm9saXZlLmludmVydGVkLnNsaWRlci5iYXNpYzpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyZTc0NTtcbn1cbi8qIFN0YW5kYXJkICovXG4udWkuZ3JlZW4uc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG59XG4udWkuZ3JlZW4uaW52ZXJ0ZWQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyRUNDNDA7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmdyZWVuLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NTtcbn1cbi51aS5ncmVlbi5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5ncmVlbi5zbGlkZXIuYmFzaWM6Zm9jdXMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNmFiMzk7XG59XG4vKiBCYXNpYyBJbnZlcnRlZCAqL1xuLnVpLmdyZWVuLmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJFQ0M0MDtcbn1cbi51aS5ncmVlbi5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5ncmVlbi5pbnZlcnRlZC5zbGlkZXIuYmFzaWM6Zm9jdXMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZWE5MmU7XG59XG4vKiBTdGFuZGFyZCAqL1xuLnVpLnRlYWwuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMEI1QUQ7XG59XG4udWkudGVhbC5pbnZlcnRlZC5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZERkZGRjtcbn1cbi8qIEJhc2ljICovXG4udWkudGVhbC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMEI1QUQ7XG59XG4udWkudGVhbC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS50ZWFsLnNsaWRlci5iYXNpYzpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOWM5NTtcbn1cbi8qIEJhc2ljIEludmVydGVkICovXG4udWkudGVhbC5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2REZGRkY7XG59XG4udWkudGVhbC5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS50ZWFsLmludmVydGVkLnNsaWRlci5iYXNpYzpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZmZmZjtcbn1cbi8qIFN0YW5kYXJkICovXG4udWkuYmx1ZS5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbn1cbi51aS5ibHVlLmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTRDOEZGO1xufVxuLyogQmFzaWMgKi9cbi51aS5ibHVlLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbn1cbi51aS5ibHVlLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLFxuLnVpLmJsdWUuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY3OGMyO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5ibHVlLmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0QzhGRjtcbn1cbi51aS5ibHVlLmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLFxuLnVpLmJsdWUuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFiOGZmO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS52aW9sZXQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDM1Qzk7XG59XG4udWkudmlvbGV0LmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTI5MUZCO1xufVxuLyogQmFzaWMgKi9cbi51aS52aW9sZXQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQzNUM5O1xufVxuLnVpLnZpb2xldC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS52aW9sZXQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgyOWJiO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS52aW9sZXQuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTI5MUZCO1xufVxuLnVpLnZpb2xldC5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS52aW9sZXQuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzQ1YWZmO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS5wdXJwbGUuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMzMzQzg7XG59XG4udWkucHVycGxlLmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREM3M0ZGO1xufVxuLyogQmFzaWMgKi9cbi51aS5wdXJwbGUuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTMzM0M4O1xufVxuLnVpLnB1cnBsZS5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5wdXJwbGUuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTYyN2JhO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5wdXJwbGUuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREM3M0ZGO1xufVxuLnVpLnB1cnBsZS5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5wdXJwbGUuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2Y0MGZmO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS5waW5rLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTAzOTk3O1xufVxuLnVpLnBpbmsuaW52ZXJ0ZWQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRjhFREY7XG59XG4vKiBCYXNpYyAqL1xuLnVpLnBpbmsuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTAzOTk3O1xufVxuLnVpLnBpbmsuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWI6aG92ZXIsXG4udWkucGluay5zbGlkZXIuYmFzaWM6Zm9jdXMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNjFhOGQ7XG59XG4vKiBCYXNpYyBJbnZlcnRlZCAqL1xuLnVpLnBpbmsuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY4RURGO1xufVxuLnVpLnBpbmsuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWI6aG92ZXIsXG4udWkucGluay5pbnZlcnRlZC5zbGlkZXIuYmFzaWM6Zm9jdXMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjViZDE7XG59XG4vKiBTdGFuZGFyZCAqL1xuLnVpLmJyb3duLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTU2NzNGO1xufVxuLnVpLmJyb3duLmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDY3QzFDO1xufVxuLyogQmFzaWMgKi9cbi51aS5icm93bi5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0Y7XG59XG4udWkuYnJvd24uc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWI6aG92ZXIsXG4udWkuYnJvd24uc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTc1YjMzO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5icm93bi5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNENjdDMUM7XG59XG4udWkuYnJvd24uaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWI6aG92ZXIsXG4udWkuYnJvd24uaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjA2MjBmO1xufVxuLyogU3RhbmRhcmQgKi9cbi51aS5ncmV5LnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xufVxuLnVpLmdyZXkuaW52ZXJ0ZWQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQ0REREU7XG59XG4vKiBCYXNpYyAqL1xuLnVpLmdyZXkuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xufVxuLnVpLmdyZXkuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWI6aG92ZXIsXG4udWkuZ3JleS5zbGlkZXIuYmFzaWM6Zm9jdXMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MzgzODM7XG59XG4vKiBCYXNpYyBJbnZlcnRlZCAqL1xuLnVpLmdyZXkuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENERERFO1xufVxuLnVpLmdyZXkuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWI6aG92ZXIsXG4udWkuZ3JleS5pbnZlcnRlZC5zbGlkZXIuYmFzaWM6Zm9jdXMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMmM0YzU7XG59XG4vKiBTdGFuZGFyZCAqL1xuLnVpLmJsYWNrLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xufVxuLnVpLmJsYWNrLmludmVydGVkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1NDU0O1xufVxuLyogQmFzaWMgKi9cbi51aS5ibGFjay5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG59XG4udWkuYmxhY2suc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWI6aG92ZXIsXG4udWkuYmxhY2suc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyOTJhO1xufVxuLyogQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5ibGFjay5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NDU0NTQ7XG59XG4udWkuYmxhY2suaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWI6aG92ZXIsXG4udWkuYmxhY2suaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFN0YW5kYXJkICovXG4udWkuc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xufVxuLnVpLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLFxuLnVpLnNsaWRlci5iYXNpYzpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MjkyYTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgQmFzaWMgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBTdGFuZGFyZCAqL1xuLnVpLmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDtcbn1cbi51aS5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3Zlcixcbi51aS5pbnZlcnRlZC5zbGlkZXIuYmFzaWM6Zm9jdXMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNtYWxsICovXG4udWkuc2xpZGVyLnNtYWxsIC5pbm5lciAudGh1bWIge1xuICBoZWlnaHQ6IDFlbTtcbiAgd2lkdGg6IDFlbTtcbn1cbi51aS5zbGlkZXIuc21hbGw6bm90KC52ZXJ0aWNhbCkgLmlubmVyIHtcbiAgaGVpZ2h0OiAxZW07XG59XG4udWkuc2xpZGVyLnNtYWxsOm5vdCgudmVydGljYWwpIC5pbm5lciAudHJhY2ssXG4udWkuc2xpZGVyLnNtYWxsOm5vdCgudmVydGljYWwpIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGhlaWdodDogMC4zZW07XG4gIHRvcDogMC4zNWVtO1xufVxuLnVpLnNtYWxsLmxhYmVsZWQuc2xpZGVyOm5vdCgudmVydGljYWwpID4gLmxhYmVscyxcbi51aS5zbWFsbC5sYWJlbGVkLnNsaWRlcjpub3QoLnZlcnRpY2FsKSA+IC5sYWJlbHMgLmxhYmVsOmFmdGVyIHtcbiAgaGVpZ2h0OiAxZW07XG59XG4udWkuc21hbGwubGFiZWxlZC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkgPiAubGFiZWxzIC5oYWxmdGljay5sYWJlbDphZnRlciB7XG4gIGhlaWdodDogMC41ZW07XG59XG4vKiBTbWFsbCBWZXJ0aWNhbCAqL1xuLnVpLnNsaWRlci5zbWFsbC52ZXJ0aWNhbCAuaW5uZXIge1xuICB3aWR0aDogMWVtO1xufVxuLnVpLnNsaWRlci5zbWFsbC52ZXJ0aWNhbCAuaW5uZXIgLnRyYWNrLFxuLnVpLnNsaWRlci5zbWFsbC52ZXJ0aWNhbCAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICB3aWR0aDogMC4zZW07XG4gIGxlZnQ6IDAuMzVlbTtcbn1cbi51aS5zbWFsbC5sYWJlbGVkLnZlcnRpY2FsLnNsaWRlciA+IC5sYWJlbHMsXG4udWkuc21hbGwubGFiZWxlZC52ZXJ0aWNhbC5zbGlkZXIgPiAubGFiZWxzIC5sYWJlbDphZnRlciB7XG4gIHdpZHRoOiAxZW07XG59XG4udWkuc21hbGwubGFiZWxlZC52ZXJ0aWNhbC5zbGlkZXIgPiAubGFiZWxzIC5oYWxmdGljay5sYWJlbDphZnRlciB7XG4gIHdpZHRoOiAwLjVlbTtcbn1cbi8qIExhcmdlICovXG4udWkuc2xpZGVyLmxhcmdlIC5pbm5lciAudGh1bWIge1xuICBoZWlnaHQ6IDJlbTtcbiAgd2lkdGg6IDJlbTtcbn1cbi51aS5zbGlkZXIubGFyZ2U6bm90KC52ZXJ0aWNhbCkgLmlubmVyIHtcbiAgaGVpZ2h0OiAyZW07XG59XG4udWkuc2xpZGVyLmxhcmdlOm5vdCgudmVydGljYWwpIC5pbm5lciAudHJhY2ssXG4udWkuc2xpZGVyLmxhcmdlOm5vdCgudmVydGljYWwpIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGhlaWdodDogMC41ZW07XG4gIHRvcDogMC43NWVtO1xufVxuLnVpLmxhcmdlLmxhYmVsZWQuc2xpZGVyOm5vdCgudmVydGljYWwpID4gLmxhYmVscyxcbi51aS5sYXJnZS5sYWJlbGVkLnNsaWRlcjpub3QoLnZlcnRpY2FsKSA+IC5sYWJlbHMgLmxhYmVsOmFmdGVyIHtcbiAgaGVpZ2h0OiAyZW07XG59XG4udWkubGFyZ2UubGFiZWxlZC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkgPiAubGFiZWxzIC5oYWxmdGljay5sYWJlbDphZnRlciB7XG4gIGhlaWdodDogMWVtO1xufVxuLyogTGFyZ2UgVmVydGljYWwgKi9cbi51aS5zbGlkZXIubGFyZ2UudmVydGljYWwgLmlubmVyIHtcbiAgd2lkdGg6IDJlbTtcbn1cbi51aS5zbGlkZXIubGFyZ2UudmVydGljYWwgLmlubmVyIC50cmFjayxcbi51aS5zbGlkZXIubGFyZ2UudmVydGljYWwgLmlubmVyIC50cmFjay1maWxsIHtcbiAgd2lkdGg6IDAuNWVtO1xuICBsZWZ0OiAwLjc1ZW07XG59XG4udWkubGFyZ2UubGFiZWxlZC52ZXJ0aWNhbC5zbGlkZXIgPiAubGFiZWxzLFxuLnVpLmxhcmdlLmxhYmVsZWQudmVydGljYWwuc2xpZGVyID4gLmxhYmVscyAubGFiZWw6YWZ0ZXIge1xuICB3aWR0aDogMmVtO1xufVxuLnVpLmxhcmdlLmxhYmVsZWQudmVydGljYWwuc2xpZGVyID4gLmxhYmVscyAuaGFsZnRpY2subGFiZWw6YWZ0ZXIge1xuICB3aWR0aDogMWVtO1xufVxuLyogQmlnICovXG4udWkuc2xpZGVyLmJpZyAuaW5uZXIgLnRodW1iIHtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgd2lkdGg6IDIuNWVtO1xufVxuLnVpLnNsaWRlci5iaWc6bm90KC52ZXJ0aWNhbCkgLmlubmVyIHtcbiAgaGVpZ2h0OiAyLjVlbTtcbn1cbi51aS5zbGlkZXIuYmlnOm5vdCgudmVydGljYWwpIC5pbm5lciAudHJhY2ssXG4udWkuc2xpZGVyLmJpZzpub3QoLnZlcnRpY2FsKSAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBoZWlnaHQ6IDAuNmVtO1xuICB0b3A6IDAuOTVlbTtcbn1cbi51aS5iaWcubGFiZWxlZC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkgPiAubGFiZWxzLFxuLnVpLmJpZy5sYWJlbGVkLnNsaWRlcjpub3QoLnZlcnRpY2FsKSA+IC5sYWJlbHMgLmxhYmVsOmFmdGVyIHtcbiAgaGVpZ2h0OiAyLjVlbTtcbn1cbi51aS5iaWcubGFiZWxlZC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkgPiAubGFiZWxzIC5oYWxmdGljay5sYWJlbDphZnRlciB7XG4gIGhlaWdodDogMS4yNWVtO1xufVxuLyogQmlnIFZlcnRpY2FsICovXG4udWkuc2xpZGVyLmJpZy52ZXJ0aWNhbCAuaW5uZXIge1xuICB3aWR0aDogMi41ZW07XG59XG4udWkuc2xpZGVyLmJpZy52ZXJ0aWNhbCAuaW5uZXIgLnRyYWNrLFxuLnVpLnNsaWRlci5iaWcudmVydGljYWwgLmlubmVyIC50cmFjay1maWxsIHtcbiAgd2lkdGg6IDAuNmVtO1xuICBsZWZ0OiAwLjk1ZW07XG59XG4udWkuYmlnLmxhYmVsZWQudmVydGljYWwuc2xpZGVyID4gLmxhYmVscyxcbi51aS5iaWcubGFiZWxlZC52ZXJ0aWNhbC5zbGlkZXIgPiAubGFiZWxzIC5sYWJlbDphZnRlciB7XG4gIHdpZHRoOiAyLjVlbTtcbn1cbi51aS5iaWcubGFiZWxlZC52ZXJ0aWNhbC5zbGlkZXIgPiAubGFiZWxzIC5oYWxmdGljay5sYWJlbDphZnRlciB7XG4gIHdpZHRoOiAxLjI1ZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBTbGlkZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gUmF0aW5nXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuXG7ilojilojilojilojilojilojilojilojilZfilojilojilZcgIOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKVlyAgIOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xu4pWa4pWQ4pWQ4paI4paI4pWU4pWQ4pWQ4pWd4paI4paI4pWRICDilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilojilojilZcg4paI4paI4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWdXG4gICDilojilojilZEgICDilojilojilojilojilojilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKVlOKWiOKWiOKWiOKWiOKVlOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4paI4paI4paI4paI4paI4pWXXG4gICDilojilojilZEgICDilojilojilZTilZDilZDilojilojilZHilojilojilZTilZDilZDilZ0gIOKWiOKWiOKVkeKVmuKWiOKWiOKVlOKVneKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4pWa4pWQ4pWQ4pWQ4pWQ4paI4paI4pWRXG4gICDilojilojilZEgICDilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVkSDilZrilZDilZ0g4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWRXG4gICDilZrilZDilZ0gICDilZrilZDilZ0gIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVnSAgICAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdXG5cbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUaGVtZSBTZWxlY3Rpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBUbyBvdmVycmlkZSBhIHRoZW1lIGZvciBhbiBpbmRpdmlkdWFsIGVsZW1lbnRcbiAgIHNwZWNpZnkgdGhlbWUgbmFtZSBiZWxvd1xuKi9cbi8qIEdsb2JhbCAqL1xuLyogRWxlbWVudHMgKi9cbi8qIENvbGxlY3Rpb25zICovXG4vKiBNb2R1bGVzICovXG4vKiBWaWV3cyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEZvbGRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBQYXRoIHRvIHRoZW1lIHBhY2thZ2VzICovXG4vKiBQYXRoIHRvIHNpdGUgb3ZlcnJpZGUgZm9sZGVyICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgSW1wb3J0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSW1wb3J0IERpcmVjdGl2ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNpdGUgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFBhY2thZ2VkIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogQ29tcG9uZW50J3Mgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBTaXRlIHRoZW1lIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBVc2VyIEdsb2JhbCBWYXJpYWJsZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiBDb21wb25lbnQgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBSYXRpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFN0YW5kYXJkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZhcmlhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFJhdGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU3RhbmRhcmQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBSYXRpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkucmF0aW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi51aS5yYXRpbmc6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi8qIEljb24gKi9cbi51aS5yYXRpbmcgLmljb24ge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMS4yNWVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLCBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgdGV4dC1zaGFkb3cgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTdGFuZGFyZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW5hY3RpdmUgSWNvbiAqL1xuLnVpLnJhdGluZyAuaWNvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbi8qIEFjdGl2ZSBJY29uICovXG4udWkucmF0aW5nIC5hY3RpdmUuaWNvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cbi8qIFNlbGVjdGVkIEljb24gKi9cbi51aS5yYXRpbmcgLmljb24uc2VsZWN0ZWQsXG4udWkucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLSAqL1xuLnVpLnByaW1hcnkucmF0aW5nIC5hY3RpdmUuaWNvbiB7XG4gIGNvbG9yOiAjNTRDOEZGO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMyMTg1RDAsIC0xcHggMHB4IDBweCAjMjE4NUQwLCAwcHggMXB4IDBweCAjMjE4NUQwLCAxcHggMHB4IDBweCAjMjE4NUQwO1xufVxuLnVpLnByaW1hcnkucmF0aW5nIC5pY29uLnNlbGVjdGVkLFxuLnVpLnByaW1hcnkucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjMjFiOGZmO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMxNjc4YzIsIC0xcHggMHB4IDBweCAjMTY3OGMyLCAwcHggMXB4IDBweCAjMTY3OGMyLCAxcHggMHB4IDBweCAjMTY3OGMyO1xufVxuLnVpLnNlY29uZGFyeS5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgY29sb3I6ICM1NDU0NTQ7XG4gIHRleHQtc2hhZG93OiAwcHggLTFweCAwcHggIzFCMUMxRCwgLTFweCAwcHggMHB4ICMxQjFDMUQsIDBweCAxcHggMHB4ICMxQjFDMUQsIDFweCAwcHggMHB4ICMxQjFDMUQ7XG59XG4udWkuc2Vjb25kYXJ5LnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbi51aS5zZWNvbmRhcnkucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjNmU2ZTZlO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMyNzI5MmEsIC0xcHggMHB4IDBweCAjMjcyOTJhLCAwcHggMXB4IDBweCAjMjcyOTJhLCAxcHggMHB4IDBweCAjMjcyOTJhO1xufVxuLnVpLnJlZC5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgY29sb3I6ICNGRjY5NUU7XG4gIHRleHQtc2hhZG93OiAwcHggLTFweCAwcHggI0RCMjgyOCwgLTFweCAwcHggMHB4ICNEQjI4MjgsIDBweCAxcHggMHB4ICNEQjI4MjgsIDFweCAwcHggMHB4ICNEQjI4Mjg7XG59XG4udWkucmVkLnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbi51aS5yZWQucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmYzOTJiO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICNkMDE5MTksIC0xcHggMHB4IDBweCAjZDAxOTE5LCAwcHggMXB4IDBweCAjZDAxOTE5LCAxcHggMHB4IDBweCAjZDAxOTE5O1xufVxuLnVpLm9yYW5nZS5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgY29sb3I6ICNGRjg1MUI7XG4gIHRleHQtc2hhZG93OiAwcHggLTFweCAwcHggI0YyNzExQywgLTFweCAwcHggMHB4ICNGMjcxMUMsIDBweCAxcHggMHB4ICNGMjcxMUMsIDFweCAwcHggMHB4ICNGMjcxMUM7XG59XG4udWkub3JhbmdlLnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbi51aS5vcmFuZ2UucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZTc2YjAwO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICNmMjYyMDIsIC0xcHggMHB4IDBweCAjZjI2MjAyLCAwcHggMXB4IDBweCAjZjI2MjAyLCAxcHggMHB4IDBweCAjZjI2MjAyO1xufVxuLnVpLnllbGxvdy5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgY29sb3I6ICNGRkUyMUY7XG4gIHRleHQtc2hhZG93OiAwcHggLTFweCAwcHggI0ZCQkQwOCwgLTFweCAwcHggMHB4ICNGQkJEMDgsIDBweCAxcHggMHB4ICNGQkJEMDgsIDFweCAwcHggMHB4ICNGQkJEMDg7XG59XG4udWkueWVsbG93LnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbi51aS55ZWxsb3cucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZWJjZDAwO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICNlYWFlMDAsIC0xcHggMHB4IDBweCAjZWFhZTAwLCAwcHggMXB4IDBweCAjZWFhZTAwLCAxcHggMHB4IDBweCAjZWFhZTAwO1xufVxuLnVpLm9saXZlLnJhdGluZyAuYWN0aXZlLmljb24ge1xuICBjb2xvcjogI0Q5RTc3ODtcbiAgdGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCAjQjVDQzE4LCAtMXB4IDBweCAwcHggI0I1Q0MxOCwgMHB4IDFweCAwcHggI0I1Q0MxOCwgMXB4IDBweCAwcHggI0I1Q0MxODtcbn1cbi51aS5vbGl2ZS5yYXRpbmcgLmljb24uc2VsZWN0ZWQsXG4udWkub2xpdmUucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZDJlNzQ1O1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICNhN2JkMGQsIC0xcHggMHB4IDBweCAjYTdiZDBkLCAwcHggMXB4IDBweCAjYTdiZDBkLCAxcHggMHB4IDBweCAjYTdiZDBkO1xufVxuLnVpLmdyZWVuLnJhdGluZyAuYWN0aXZlLmljb24ge1xuICBjb2xvcjogIzJFQ0M0MDtcbiAgdGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCAjMjFCQTQ1LCAtMXB4IDBweCAwcHggIzIxQkE0NSwgMHB4IDFweCAwcHggIzIxQkE0NSwgMXB4IDBweCAwcHggIzIxQkE0NTtcbn1cbi51aS5ncmVlbi5yYXRpbmcgLmljb24uc2VsZWN0ZWQsXG4udWkuZ3JlZW4ucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjMWVhOTJlO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMxNmFiMzksIC0xcHggMHB4IDBweCAjMTZhYjM5LCAwcHggMXB4IDBweCAjMTZhYjM5LCAxcHggMHB4IDBweCAjMTZhYjM5O1xufVxuLnVpLnRlYWwucmF0aW5nIC5hY3RpdmUuaWNvbiB7XG4gIGNvbG9yOiAjNkRGRkZGO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMwMEI1QUQsIC0xcHggMHB4IDBweCAjMDBCNUFELCAwcHggMXB4IDBweCAjMDBCNUFELCAxcHggMHB4IDBweCAjMDBCNUFEO1xufVxuLnVpLnRlYWwucmF0aW5nIC5pY29uLnNlbGVjdGVkLFxuLnVpLnRlYWwucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjM2FmZmZmO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMwMDljOTUsIC0xcHggMHB4IDBweCAjMDA5Yzk1LCAwcHggMXB4IDBweCAjMDA5Yzk1LCAxcHggMHB4IDBweCAjMDA5Yzk1O1xufVxuLnVpLmJsdWUucmF0aW5nIC5hY3RpdmUuaWNvbiB7XG4gIGNvbG9yOiAjNTRDOEZGO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMyMTg1RDAsIC0xcHggMHB4IDBweCAjMjE4NUQwLCAwcHggMXB4IDBweCAjMjE4NUQwLCAxcHggMHB4IDBweCAjMjE4NUQwO1xufVxuLnVpLmJsdWUucmF0aW5nIC5pY29uLnNlbGVjdGVkLFxuLnVpLmJsdWUucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjMjFiOGZmO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMxNjc4YzIsIC0xcHggMHB4IDBweCAjMTY3OGMyLCAwcHggMXB4IDBweCAjMTY3OGMyLCAxcHggMHB4IDBweCAjMTY3OGMyO1xufVxuLnVpLnZpb2xldC5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgY29sb3I6ICNBMjkxRkI7XG4gIHRleHQtc2hhZG93OiAwcHggLTFweCAwcHggIzY0MzVDOSwgLTFweCAwcHggMHB4ICM2NDM1QzksIDBweCAxcHggMHB4ICM2NDM1QzksIDFweCAwcHggMHB4ICM2NDM1Qzk7XG59XG4udWkudmlvbGV0LnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbi51aS52aW9sZXQucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjNzQ1YWZmO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICM1ODI5YmIsIC0xcHggMHB4IDBweCAjNTgyOWJiLCAwcHggMXB4IDBweCAjNTgyOWJiLCAxcHggMHB4IDBweCAjNTgyOWJiO1xufVxuLnVpLnB1cnBsZS5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgY29sb3I6ICNEQzczRkY7XG4gIHRleHQtc2hhZG93OiAwcHggLTFweCAwcHggI0EzMzNDOCwgLTFweCAwcHggMHB4ICNBMzMzQzgsIDBweCAxcHggMHB4ICNBMzMzQzgsIDFweCAwcHggMHB4ICNBMzMzQzg7XG59XG4udWkucHVycGxlLnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbi51aS5wdXJwbGUucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjY2Y0MGZmO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICM5NjI3YmEsIC0xcHggMHB4IDBweCAjOTYyN2JhLCAwcHggMXB4IDBweCAjOTYyN2JhLCAxcHggMHB4IDBweCAjOTYyN2JhO1xufVxuLnVpLnBpbmsucmF0aW5nIC5hY3RpdmUuaWNvbiB7XG4gIGNvbG9yOiAjRkY4RURGO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICNFMDM5OTcsIC0xcHggMHB4IDBweCAjRTAzOTk3LCAwcHggMXB4IDBweCAjRTAzOTk3LCAxcHggMHB4IDBweCAjRTAzOTk3O1xufVxuLnVpLnBpbmsucmF0aW5nIC5pY29uLnNlbGVjdGVkLFxuLnVpLnBpbmsucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmY1YmQxO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICNlNjFhOGQsIC0xcHggMHB4IDBweCAjZTYxYThkLCAwcHggMXB4IDBweCAjZTYxYThkLCAxcHggMHB4IDBweCAjZTYxYThkO1xufVxuLnVpLmJyb3duLnJhdGluZyAuYWN0aXZlLmljb24ge1xuICBjb2xvcjogI0Q2N0MxQztcbiAgdGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCAjQTU2NzNGLCAtMXB4IDBweCAwcHggI0E1NjczRiwgMHB4IDFweCAwcHggI0E1NjczRiwgMXB4IDBweCAwcHggI0E1NjczRjtcbn1cbi51aS5icm93bi5yYXRpbmcgLmljb24uc2VsZWN0ZWQsXG4udWkuYnJvd24ucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjYjA2MjBmO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICM5NzViMzMsIC0xcHggMHB4IDBweCAjOTc1YjMzLCAwcHggMXB4IDBweCAjOTc1YjMzLCAxcHggMHB4IDBweCAjOTc1YjMzO1xufVxuLnVpLmdyZXkucmF0aW5nIC5hY3RpdmUuaWNvbiB7XG4gIGNvbG9yOiAjRENERERFO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICM3Njc2NzYsIC0xcHggMHB4IDBweCAjNzY3Njc2LCAwcHggMXB4IDBweCAjNzY3Njc2LCAxcHggMHB4IDBweCAjNzY3Njc2O1xufVxuLnVpLmdyZXkucmF0aW5nIC5pY29uLnNlbGVjdGVkLFxuLnVpLmdyZXkucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjYzJjNGM1O1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICM4MzgzODMsIC0xcHggMHB4IDBweCAjODM4MzgzLCAwcHggMXB4IDBweCAjODM4MzgzLCAxcHggMHB4IDBweCAjODM4MzgzO1xufVxuLnVpLmJsYWNrLnJhdGluZyAuYWN0aXZlLmljb24ge1xuICBjb2xvcjogIzU0NTQ1NDtcbiAgdGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCAjMUIxQzFELCAtMXB4IDBweCAwcHggIzFCMUMxRCwgMHB4IDFweCAwcHggIzFCMUMxRCwgMXB4IDBweCAwcHggIzFCMUMxRDtcbn1cbi51aS5ibGFjay5yYXRpbmcgLmljb24uc2VsZWN0ZWQsXG4udWkuYmxhY2sucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICMyNzI5MmEsIC0xcHggMHB4IDBweCAjMjcyOTJhLCAwcHggMXB4IDBweCAjMjcyOTJhLCAxcHggMHB4IDBweCAjMjcyOTJhO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogZGlzYWJsZWQgcmF0aW5nICovXG4udWkuZGlzYWJsZWQucmF0aW5nIC5pY29uIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBVc2VyIEludGVyYWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWxlY3RlZCBSYXRpbmcgKi9cbi51aS5yYXRpbmcuc2VsZWN0ZWQgLmFjdGl2ZS5pY29uIHtcbiAgb3BhY2l0eTogMTtcbn1cbi51aS5yYXRpbmcuc2VsZWN0ZWQgLmljb24uc2VsZWN0ZWQsXG4udWkucmF0aW5nIC5pY29uLnNlbGVjdGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS5taW5pLnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cbi51aS50aW55LnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cbi51aS5zbWFsbC5yYXRpbmcge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG4udWkucmF0aW5nIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnVpLmxhcmdlLnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cbi51aS5odWdlLnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cbi51aS5tYXNzaXZlLnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBTZWFyY2hcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU2VhcmNoXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2VhcmNoIFByb21wdCAqL1xuLyogTW9iaWxlICovXG4vKiBSZXN1bHQgQm94ICovXG4vKiBSZXN1bHQgKi9cbi8qIFJlc3VsdCBJbWFnZSAqL1xuLyogUmVzdWx0IENvbnRlbnQgKi9cbi8qIERlc2NyaXB0aW9uICovXG4vKiBQcmljZSAqL1xuLyogU3BlY2lhbCBNZXNzYWdlICovXG4vKiBBbGwgUmVzdWx0cyBMaW5rICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogRm9jdXMgKi9cbi8qIEhvdmVyICovXG4vKiBMb2FkaW5nICovXG4vKiBBY3RpdmUgQ2F0ZWdvcnkgKi9cbi8qIEFjdGl2ZSBSZXN1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNlbGVjdGlvbiAqL1xuLyogQ2F0ZWdvcnkgKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU2VhcmNoXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2VhcmNoIFByb21wdCAqL1xuLyogTW9iaWxlICovXG4vKiBSZXN1bHQgQm94ICovXG4vKiBSZXN1bHQgKi9cbi8qIFJlc3VsdCBJbWFnZSAqL1xuLyogUmVzdWx0IENvbnRlbnQgKi9cbi8qIERlc2NyaXB0aW9uICovXG4vKiBQcmljZSAqL1xuLyogU3BlY2lhbCBNZXNzYWdlICovXG4vKiBBbGwgUmVzdWx0cyBMaW5rICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogRm9jdXMgKi9cbi8qIEhvdmVyICovXG4vKiBMb2FkaW5nICovXG4vKiBBY3RpdmUgQ2F0ZWdvcnkgKi9cbi8qIEFjdGl2ZSBSZXN1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNlbGVjdGlvbiAqL1xuLyogQ2F0ZWdvcnkgKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTZWFyY2hcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuc2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVpLnNlYXJjaCA+IC5wcm9tcHQge1xuICBtYXJnaW46IDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS4yMTQyODU3MWVtO1xuICBwYWRkaW5nOiAwLjY3ODU3MTQzZW0gMWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAgdHJhbnNwYXJlbnQgaW5zZXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xufVxuLnVpLnNlYXJjaCAucHJvbXB0IHtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnNlYXJjaCAucHJvbXB0IH4gLnNlYXJjaC5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlc3VsdHNcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc2VhcmNoID4gLnJlc3VsdHMge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbi10b3A6IDAuNWVtO1xuICB3aWR0aDogMThlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENEQ0RDU7XG4gIHotaW5kZXg6IDk5ODtcbn1cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwIDA7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUmVzdWx0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogMC44NTcxNDI4NmVtIDEuMTQyODU3MTRlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbn1cbi8qIEltYWdlICovXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAuaW1hZ2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiA1ZW07XG4gIGhlaWdodDogM2VtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJbmZvXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQgLmltYWdlICsgLmNvbnRlbnQge1xuICBtYXJnaW46IDAgNmVtIDAgMDtcbn1cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IC50aXRsZSB7XG4gIG1hcmdpbjogLTAuMTQyODU3MTRlbSAwIDA7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAuZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IC5wcmljZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgY29sb3I6ICMyMUJBNDU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTWVzc2FnZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5tZXNzYWdlIHtcbiAgcGFkZGluZzogMWVtIDFlbTtcbn1cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5tZXNzYWdlIC5oZWFkZXIge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5tZXNzYWdlIC5kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cbi8qIFZpZXcgQWxsIFJlc3VsdHMgKi9cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5hY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYmFja2dyb3VuZDogI0YzRjRGNTtcbiAgcGFkZGluZzogMC45Mjg1NzE0M2VtIDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnNlYXJjaCA+IC5wcm9tcHQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWkubG9hZGluZy5zZWFyY2ggLmlucHV0ID4gaS5pY29uOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTAuNjQyODU3MTRlbSAwIDAgLTAuNjQyODU3MTRlbTtcbiAgd2lkdGg6IDEuMjg1NzE0MjllbTtcbiAgaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4udWkubG9hZGluZy5zZWFyY2ggLmlucHV0ID4gaS5pY29uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NTcxNGVtIDAgMCAtMC42NDI4NTcxNGVtO1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgMC42cyBpbmZpbml0ZSBsaW5lYXI7XG4gIGJvcmRlcjogMC4yZW0gc29saWQgIzc2NzY3NjtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0OmhvdmVyLFxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSAucmVzdWx0OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0Y5RkFGQjtcbn1cbi51aS5zZWFyY2ggLmFjdGlvbjpob3Zlcjpub3QoZGl2KSB7XG4gIGJhY2tncm91bmQ6ICNFMEUwRTA7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5LmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0RjU7XG59XG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5LmFjdGl2ZSA+IC5uYW1lIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdC5hY3RpdmUsXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5IC5yZXN1bHQuYWN0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY1O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQuYWN0aXZlIC50aXRsZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQuYWN0aXZlIC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaXNhYmxlZCAqL1xuLnVpLmRpc2FibGVkLnNlYXJjaCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNDU7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTZWxlY3Rpb25cbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc2VhcmNoLnNlbGVjdGlvbiAucHJvbXB0IHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cbi8qIFJlbW92ZSBpbnB1dCAqL1xuLnVpLnNlYXJjaC5zZWxlY3Rpb24gPiAuaWNvbi5pbnB1dCA+IC5yZW1vdmUuaWNvbiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIGNvbG9yOiAnJztcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZTtcbn1cbi51aS5zZWFyY2guc2VsZWN0aW9uID4gLmljb24uaW5wdXQgPiAuYWN0aXZlLnJlbW92ZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjg7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnVpLnNlYXJjaC5zZWxlY3Rpb24gPiAuaWNvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgaWNvblwiXSkgPiAuaWNvbiB+IC5yZW1vdmUuaWNvbiB7XG4gIHJpZ2h0OiAxLjg1NzE0ZW07XG59XG4udWkuc2VhcmNoLnNlbGVjdGlvbiA+IC5pY29uLmlucHV0ID4gLnJlbW92ZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNEQjI4Mjg7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ2F0ZWdvcnlcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuY2F0ZWdvcnkuc2VhcmNoIC5yZXN1bHRzIHtcbiAgd2lkdGg6IDI4ZW07XG59XG4udWkuY2F0ZWdvcnkuc2VhcmNoIC5yZXN1bHRzLmFuaW1hdGluZyxcbi51aS5jYXRlZ29yeS5zZWFyY2ggLnJlc3VsdHMudmlzaWJsZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuLyogQ2F0ZWdvcnkgKi9cbi51aS5jYXRlZ29yeS5zZWFyY2ggPiAucmVzdWx0cyAuY2F0ZWdvcnkge1xuICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIGJhY2tncm91bmQ6ICNGM0Y0RjU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xufVxuLyogTGFzdCBDYXRlZ29yeSAqL1xuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi8qIEZpcnN0IC8gTGFzdCAqL1xuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeTpmaXJzdC1jaGlsZCAubmFtZSArIC5yZXN1bHQge1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjg1NzE0MjlyZW0gMCAwO1xufVxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeTpsYXN0LWNoaWxkIC5yZXN1bHQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI4NTcxNDI5cmVtIDA7XG59XG4vKiBDYXRlZ29yeSBSZXN1bHQgTmFtZSAqL1xuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSA+IC5uYW1lIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdpZHRoOiAxMDBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBwYWRkaW5nOiAwLjRlbSAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLyogQ2F0ZWdvcnkgUmVzdWx0ICovXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5IC5yZXN1bHRzIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSAucmVzdWx0IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2UsIGJvcmRlci1jb2xvciAwLjFzIGVhc2U7XG4gIHBhZGRpbmc6IDAuODU3MTQyODZlbSAxLjE0Mjg1NzE0ZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIExlZnQgLyBSaWdodFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5zZWFyY2ggPiAucmVzdWx0cyB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uc2VhcmNoID4gLnJlc3VsdHMge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5mbHVpZC5zZWFyY2ggLnJlc3VsdHMge1xuICB3aWR0aDogMTAwJTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1pbmkuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5ZW07XG59XG4udWkuc21hbGwuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG59XG4udWkuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG4udWkubGFyZ2Uuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0ZW07XG59XG4udWkuYmlnLnNlYXJjaCB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOWVtO1xufVxuLnVpLmh1Z2Uuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzZW07XG59XG4udWkubWFzc2l2ZS5zZWFyY2gge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFlbTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1vYmlsZVxuLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnVpLnNlYXJjaCAucmVzdWx0cyB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMnJlbSk7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBTaGFwZVxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU2hhcGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBBbmltYXRpbmcgKi9cbi8qIFNpZGUgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogQ3ViZSAqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU2hhcGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBBbmltYXRpbmcgKi9cbi8qIFNpZGUgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogQ3ViZSAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICAgU2hhcGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuc2hhcGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGVyc3BlY3RpdmU6IDIwMDBweDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQsIGxlZnQgMC42cyBlYXNlLWluLW91dCwgd2lkdGggMC42cyBlYXNlLWluLW91dCwgaGVpZ2h0IDAuNnMgZWFzZS1pbi1vdXQ7XG59XG4udWkuc2hhcGUgLnNpZGVzIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi51aS5zaGFwZSAuc2lkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnVpLnNoYXBlIC5zaWRlICoge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLmN1YmUuc2hhcGUgLnNpZGUge1xuICBtaW4td2lkdGg6IDE1ZW07XG4gIGhlaWdodDogMTVlbTtcbiAgcGFkZGluZzogMmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTZFNkU2O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG4udWkuY3ViZS5zaGFwZSAuc2lkZSA+IC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG59XG4udWkuY3ViZS5zaGFwZSAuc2lkZSA+IC5jb250ZW50ID4gZGl2IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAyZW07XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkudGV4dC5zaGFwZS5hbmltYXRpbmcgLnNpZGVzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cbi51aS50ZXh0LnNoYXBlIC5zaWRlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi51aS50ZXh0LnNoYXBlIC5zaWRlID4gKiB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmxvYWRpbmcuc2hhcGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgbGVmdDogLTk5OTlweDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBbmltYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuc2hhcGUgLmFuaW1hdGluZy5zaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAxMDA7XG59XG4udWkuc2hhcGUgLmhpZGRlbi5zaWRlIHtcbiAgb3BhY2l0eTogMC42O1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgQ1NTXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnNoYXBlLmFuaW1hdGluZyAuc2lkZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0LCBsZWZ0IDAuNnMgZWFzZS1pbi1vdXQsIHdpZHRoIDAuNnMgZWFzZS1pbi1vdXQsIGhlaWdodCAwLjZzIGVhc2UtaW4tb3V0O1xufVxuLnVpLnNoYXBlLmFuaW1hdGluZyAuc2lkZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC42cyBlYXNlLWluLW91dDtcbn1cbi51aS5zaGFwZSAuYW5pbWF0aW5nLnNpZGUgKixcbi51aS5zaGFwZS5hbmltYXRpbmcgLnNpZGUgKiB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5zaGFwZSAuYWN0aXZlLnNpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBVc2VyIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFNpZGViYXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFNpZGViYXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBBbmltYXRpb24gKi9cbi8qIERpbW1lciAqL1xuLyogQ29sb3IgYmVsb3cgcGFnZSAqL1xuLyogU2hhZG93ICovXG4vKiBMYXllcmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaWR0aCAqL1xuLyogSGVpZ2h0ICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTaWRlYmFyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQW5pbWF0aW9uICovXG4vKiBEaW1tZXIgKi9cbi8qIENvbG9yIGJlbG93IHBhZ2UgKi9cbi8qIFNoYWRvdyAqL1xuLyogTGF5ZXJpbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgVmFyaWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2lkdGggKi9cbi8qIEhlaWdodCAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU2lkZWJhclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpZGViYXIgTWVudSAqL1xuLnVpLnNpZGViYXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbiAgei1pbmRleDogMTAyO1xufVxuLyogR1BVIExheWVycyBmb3IgQ2hpbGQgRWxlbWVudHMgKi9cbi51aS5zaWRlYmFyID4gKiB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIERpcmVjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5sZWZ0LnNpZGViYXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG4udWkucmlnaHQuc2lkZWJhciB7XG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbn1cbi51aS50b3Auc2lkZWJhcixcbi51aS5ib3R0b20uc2lkZWJhciB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuLnVpLnRvcC5zaWRlYmFyIHtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbn1cbi51aS5ib3R0b20uc2lkZWJhciB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgUHVzaGFibGVcbi0tLS0tLS0tLS0tLS0tLSovXG4ucHVzaGFibGUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuLyogV2hvbGUgUGFnZSAqL1xuYm9keS5wdXNoYWJsZSB7XG4gIGJhY2tncm91bmQ6ICM1NDU0NTQ7XG59XG5ib2R5LnB1c2hhYmxlLmRpbW1lZCB7XG4gIGJhY2tncm91bmQ6IGluaGVyaXQ7XG59XG4vKiBQYWdlIENvbnRleHQgKi9cbi5wdXNoYWJsZTpub3QoYm9keSkge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuLnB1c2hhYmxlOm5vdChib2R5KSA+IC51aS5zaWRlYmFyLFxuLnB1c2hhYmxlOm5vdChib2R5KSA+IC5maXhlZCxcbi5wdXNoYWJsZTpub3QoYm9keSkgPiAucHVzaGVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi5wdXNoYWJsZSA+IC5maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgei1pbmRleDogMTAxO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnB1c2hhYmxlID4gLnB1c2hlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgei1pbmRleDogMjtcbiAgLyogUHVzaGVyIHNob3VsZCBpbmhlcml0IGJhY2tncm91bmQgZnJvbSBjb250ZXh0ICovXG4gIGJhY2tncm91bmQ6IGluaGVyaXQ7XG59XG5ib2R5LnB1c2hhYmxlID4gLnB1c2hlciB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERpbW1lclxuLS0tLS0tLS0tLS0tLS0tKi9cbi5wdXNoYWJsZSA+IC5wdXNoZXI6YWZ0ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXM7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICB6LWluZGV4OiAxMDAwO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnNpZGViYXIubWVudSAuaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERpbW1lZFxuLS0tLS0tLS0tLS0tLS0tKi9cbi5wdXNoYWJsZSA+IC5wdXNoZXIuZGltbWVkOmFmdGVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBbmltYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuYW5pbWF0aW5nLnNpZGViYXIge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBWaXNpYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnZpc2libGUuc2lkZWJhciB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG4vKiBTaGFkb3cgRGlyZWN0aW9uICovXG4udWkubGVmdC52aXNpYmxlLnNpZGViYXIsXG4udWkucmlnaHQudmlzaWJsZS5zaWRlYmFyIHtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi51aS50b3AudmlzaWJsZS5zaWRlYmFyLFxuLnVpLmJvdHRvbS52aXNpYmxlLnNpZGViYXIge1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuLyogVmlzaWJsZSBPbiBMb2FkICovXG4udWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNjBweCwgMCwgMCk7XG59XG4udWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNjBweCwgMCwgMCk7XG59XG4udWkudmlzaWJsZS50b3Auc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLnRvcC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzZweCwgMCk7XG59XG4udWkudmlzaWJsZS5ib3R0b20uc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLmJvdHRvbS5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTM2cHgsIDApO1xufVxuLyogb3Bwb3NpdGUgc2lkZXMgdmlzaWJsZSBmb3JjZXMgY29udGVudCBvdmVybGF5ICovXG4udWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAudWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLnVpLnZpc2libGUucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIsXG4udWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUucmlnaHQuc2lkZWJhciB+IC51aS52aXNpYmxlLmxlZnQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgIGlPU1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgV2lkdGhcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBMZWZ0IC8gUmlnaHQgKi9cbi51aS50aGluLmxlZnQuc2lkZWJhcixcbi51aS50aGluLnJpZ2h0LnNpZGViYXIge1xuICB3aWR0aDogMTUwcHg7XG59XG4udWlbY2xhc3MqPVwidmVyeSB0aGluXCJdLmxlZnQuc2lkZWJhcixcbi51aVtjbGFzcyo9XCJ2ZXJ5IHRoaW5cIl0ucmlnaHQuc2lkZWJhciB7XG4gIHdpZHRoOiA2MHB4O1xufVxuLnVpLmxlZnQuc2lkZWJhcixcbi51aS5yaWdodC5zaWRlYmFyIHtcbiAgd2lkdGg6IDI2MHB4O1xufVxuLnVpLndpZGUubGVmdC5zaWRlYmFyLFxuLnVpLndpZGUucmlnaHQuc2lkZWJhciB7XG4gIHdpZHRoOiAzNTBweDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ubGVmdC5zaWRlYmFyLFxuLnVpW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5yaWdodC5zaWRlYmFyIHtcbiAgd2lkdGg6IDQ3NXB4O1xufVxuLyogTGVmdCBWaXNpYmxlICovXG4udWkudmlzaWJsZS50aGluLmxlZnQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLnRoaW4ubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTUwcHgsIDAsIDApO1xufVxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB0aGluXCJdLmxlZnQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgdGhpblwiXS5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg2MHB4LCAwLCAwKTtcbn1cbi51aS52aXNpYmxlLndpZGUubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUud2lkZS5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzNTBweCwgMCwgMCk7XG59XG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB3aWRlXCJdLmxlZnQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDQ3NXB4LCAwLCAwKTtcbn1cbi8qIFJpZ2h0IFZpc2libGUgKi9cbi51aS52aXNpYmxlLnRoaW4ucmlnaHQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLnRoaW4ucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNTBweCwgMCwgMCk7XG59XG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHRoaW5cIl0ucmlnaHQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgdGhpblwiXS5yaWdodC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTYwcHgsIDAsIDApO1xufVxuLnVpLnZpc2libGUud2lkZS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUud2lkZS5yaWdodC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTM1MHB4LCAwLCAwKTtcbn1cbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB3aWRlXCJdLnJpZ2h0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNDc1cHgsIDAsIDApO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBBbmltYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgIE92ZXJsYXlcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZXQtdXAgKi9cbi51aS5vdmVybGF5LnNpZGViYXIge1xuICB6LWluZGV4OiAxMDI7XG59XG4vKiBJbml0aWFsICovXG4udWkubGVmdC5vdmVybGF5LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbn1cbi51aS5yaWdodC5vdmVybGF5LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xufVxuLnVpLnRvcC5vdmVybGF5LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAtMTAwJSwgMCk7XG59XG4udWkuYm90dG9tLm92ZXJsYXkuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDEwMCUsIDApO1xufVxuLyogQW5pbWF0aW9uICovXG4uYW5pbWF0aW5nLnVpLm92ZXJsYXkuc2lkZWJhcixcbi51aS52aXNpYmxlLm92ZXJsYXkuc2lkZWJhciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xufVxuLyogRW5kIC0gU2lkZWJhciAqL1xuLnVpLnZpc2libGUubGVmdC5vdmVybGF5LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cbi51aS52aXNpYmxlLnJpZ2h0Lm92ZXJsYXkuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xufVxuLnVpLnZpc2libGUudG9wLm92ZXJsYXkuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xufVxuLnVpLnZpc2libGUuYm90dG9tLm92ZXJsYXkuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xufVxuLyogRW5kIC0gUHVzaGVyICovXG4udWkudmlzaWJsZS5vdmVybGF5LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5vdmVybGF5LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBQdXNoXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW5pdGlhbCAqL1xuLnVpLnB1c2guc2lkZWJhciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB6LWluZGV4OiAxMDI7XG59XG4vKiBTaWRlYmFyIC0gSW5pdGlhbCAqL1xuLnVpLmxlZnQucHVzaC5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG4udWkucmlnaHQucHVzaC5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbn1cbi51aS50b3AucHVzaC5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTEwMCUsIDApO1xufVxuLnVpLmJvdHRvbS5wdXNoLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAxMDAlLCAwKTtcbn1cbi8qIEVuZCAqL1xuLnVpLnZpc2libGUucHVzaC5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCwgMCk7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVW5jb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEluaXRpYWwgKi9cbi51aS51bmNvdmVyLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxO1xufVxuLyogRW5kICovXG4udWkudmlzaWJsZS51bmNvdmVyLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNsaWRlIEFsb25nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW5pdGlhbCAqL1xuLnVpLnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB6LWluZGV4OiAxO1xufVxuLyogU2lkZWJhciAtIEluaXRpYWwgKi9cbi51aS5sZWZ0LnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApO1xufVxuLnVpLnJpZ2h0LnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDUwJSwgMCwgMCk7XG59XG4udWkudG9wLnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApO1xufVxuLnVpLmJvdHRvbS5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgNTAlLCAwKTtcbn1cbi8qIEFuaW1hdGlvbiAqL1xuLnVpLmFuaW1hdGluZy5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG59XG4vKiBFbmQgKi9cbi51aS52aXNpYmxlLnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNsaWRlIE91dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEluaXRpYWwgKi9cbi51aS5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIHotaW5kZXg6IDE7XG59XG4vKiBTaWRlYmFyIC0gSW5pdGlhbCAqL1xuLnVpLmxlZnQuc2xpZGUub3V0LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDUwJSwgMCwgMCk7XG59XG4udWkucmlnaHQuc2xpZGUub3V0LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApO1xufVxuLnVpLnRvcC5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDUwJSwgMCk7XG59XG4udWkuYm90dG9tLnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTUwJSwgMCk7XG59XG4vKiBBbmltYXRpb24gKi9cbi51aS5hbmltYXRpbmcuc2xpZGUub3V0LnNpZGViYXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cbi8qIEVuZCAqL1xuLnVpLnZpc2libGUuc2xpZGUub3V0LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNjYWxlIERvd25cbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbml0aWFsICovXG4udWkuc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHotaW5kZXg6IDEwMjtcbn1cbi8qIFNpZGViYXIgLSBJbml0aWFsICAqL1xuLnVpLmxlZnQuc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG4udWkucmlnaHQuc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbn1cbi51aS50b3Auc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTEwMCUsIDApO1xufVxuLnVpLmJvdHRvbS5zY2FsZS5kb3duLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAxMDAlLCAwKTtcbn1cbi8qIFB1c2hlciAtIEluaXRpYWwgKi9cbi51aS5zY2FsZS5kb3duLmxlZnQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA3NSUgNTAlO1xufVxuLnVpLnNjYWxlLmRvd24ucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAyNSUgNTAlO1xufVxuLnVpLnNjYWxlLmRvd24udG9wLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDc1JTtcbn1cbi51aS5zY2FsZS5kb3duLmJvdHRvbS5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAyNSU7XG59XG4vKiBBbmltYXRpb24gKi9cbi51aS5hbmltYXRpbmcuc2NhbGUuZG93biA+IC52aXNpYmxlLnVpLnNpZGViYXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cbi51aS52aXNpYmxlLnNjYWxlLmRvd24uc2lkZWJhciB+IC5wdXNoZXIsXG4udWkuYW5pbWF0aW5nLnNjYWxlLmRvd24uc2lkZWJhciB+IC5wdXNoZXIge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4vKiBFbmQgKi9cbi51aS52aXNpYmxlLnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG4udWkudmlzaWJsZS5zY2FsZS5kb3duLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBTdGlja3lcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RpY2t5XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGFja2FnZWQgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGlja3lcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDZW50cmFsIENvbG9yIE1hcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTWl4LWluc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT3ZlcnJpZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEVuZCBDb25maWcgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGlja3lcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkuc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgei1pbmRleDogODAwO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEJvdW5kICovXG4udWkuc3RpY2t5LmJvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bztcbn1cbi8qIEZpeGVkICovXG4udWkuc3RpY2t5LmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bztcbn1cbi8qIEJvdW5kL0ZpeGVkIFBvc2l0aW9uICovXG4udWkuc3RpY2t5LmJvdW5kLnRvcCxcbi51aS5zdGlja3kuZml4ZWQudG9wIHtcbiAgdG9wOiAwO1xuICBib3R0b206IGF1dG87XG59XG4udWkuc3RpY2t5LmJvdW5kLmJvdHRvbSxcbi51aS5zdGlja3kuZml4ZWQuYm90dG9tIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkubmF0aXZlLnN0aWNreSB7XG4gIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTtcbiAgcG9zaXRpb246IC1tb3otc3RpY2t5O1xuICBwb3NpdGlvbjogLW1zLXN0aWNreTtcbiAgcG9zaXRpb246IC1vLXN0aWNreTtcbiAgcG9zaXRpb246IHN0aWNreTtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgRm9tYW50aWMtVUkgLSBUYWJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBUYWJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBMb2FkaW5nICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICAgVGFiXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogTG9hZGluZyAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENlbnRyYWwgQ29sb3IgTWFwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgQ2VudHJhbCBDb2xvciBNYXBwaW5nIEJhc2UgZm9yIGFsbCBjb21wb25lbnRzIHRvIGl0ZXJhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBNaXgtaW5zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPdmVycmlkZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRW5kIENvbmZpZyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVUkgVGFic1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS50YWIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnRhYi5hY3RpdmUsXG4udWkudGFiLm9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLnRhYi5sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMjUwcHg7XG59XG4udWkudGFiLmxvYWRpbmcgKiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICBsZWZ0OiAtMTAwMDBweCAhaW1wb3J0YW50O1xufVxuLnVpLnRhYi5sb2FkaW5nOmJlZm9yZSxcbi51aS50YWIubG9hZGluZy5zZWdtZW50OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEuMjVlbSAwIDAgLTEuMjVlbTtcbiAgd2lkdGg6IDIuNWVtO1xuICBoZWlnaHQ6IDIuNWVtO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlcjogMC4yZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnVpLnRhYi5sb2FkaW5nOmFmdGVyLFxuLnVpLnRhYi5sb2FkaW5nLnNlZ21lbnQ6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0xLjI1ZW0gMCAwIC0xLjI1ZW07XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgMC42cyBpbmZpbml0ZSBsaW5lYXI7XG4gIGJvcmRlcjogMC4yZW0gc29saWQgIzc2NzY3NjtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGFiIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gVG9hc3RcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG5cbuKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKVlyAg4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4pWXICAg4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4paI4paI4paI4paI4paI4pWXXG7ilZrilZDilZDilojilojilZTilZDilZDilZ3ilojilojilZEgIOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKWiOKWiOKVlyDilojilojilojilojilZHilojilojilZTilZDilZDilZDilZDilZ3ilojilojilZTilZDilZDilZDilZDilZ1cbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKVlyAg4paI4paI4pWU4paI4paI4paI4paI4pWU4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilojilojilojilojilojilZdcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVlOKVkOKVkOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVnSAg4paI4paI4pWR4pWa4paI4paI4pWU4pWd4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilZrilZDilZDilZDilZDilojilojilZFcbiAgIOKWiOKWiOKVkSAgIOKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWRIOKVmuKVkOKVnSDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZFcbiAgIOKVmuKVkOKVnSAgIOKVmuKVkOKVnSAg4pWa4pWQ4pWd4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWd4pWa4pWQ4pWdICAgICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ1cblxuKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRoZW1lIFNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRvIG92ZXJyaWRlIGEgdGhlbWUgZm9yIGFuIGluZGl2aWR1YWwgZWxlbWVudFxuICAgc3BlY2lmeSB0aGVtZSBuYW1lIGJlbG93XG4qL1xuLyogR2xvYmFsICovXG4vKiBFbGVtZW50cyAqL1xuLyogQ29sbGVjdGlvbnMgKi9cbi8qIE1vZHVsZXMgKi9cbi8qIFZpZXdzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRm9sZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhdGggdG8gdGhlbWUgcGFja2FnZXMgKi9cbi8qIFBhdGggdG8gc2l0ZSBvdmVycmlkZSBmb2xkZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBJbXBvcnQgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBJbXBvcnQgRGlyZWN0aXZlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2l0ZSBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0IHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogUGFja2FnZWQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBDb21wb25lbnQncyBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIFNpdGUgdGhlbWUgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFVzZXIgR2xvYmFsIFZhcmlhYmxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuIENvbXBvbmVudCBWYXJpYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEZWZhdWx0ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVG9hc3RcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDb250YWluZXIgKi9cbi8qIFRvYXN0ICovXG4vKiBvbiBIb3ZlciAqL1xuLyogQ29sb3IgdmFyaWF0aW9ucyAqL1xuLyogSWNvbiAqL1xuLyogQ29udGVudCAqL1xuLyogUHJvZ3Jlc3NiYXIgQ29sb3JzICovXG4vKiBDbG9zZSBJY29uICovXG4vKiBQYWNrYWdlZCBUaGVtZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRvYXN0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ29udGFpbmVyICovXG4vKiBUb2FzdCAqL1xuLyogb24gSG92ZXIgKi9cbi8qIENvbG9yIHZhcmlhdGlvbnMgKi9cbi8qIEljb24gKi9cbi8qIENvbnRlbnQgKi9cbi8qIFByb2dyZXNzYmFyIENvbG9ycyAqL1xuLyogQ2xvc2UgSWNvbiAqL1xuLyogU2l0ZSBUaGVtZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBUb2FzdCBjb250YWluZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udWkudG9hc3QtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5O1xufVxuLnVpLnRvcC5yaWdodC50b2FzdC1jb250YWluZXIge1xuICB0b3A6IDAuODU3MTQyODZlbTtcbiAgcmlnaHQ6IDAuODU3MTQyODZlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuODU3MTQyODZlbTtcbn1cbi51aS50b3AubGVmdC50b2FzdC1jb250YWluZXIge1xuICB0b3A6IDAuODU3MTQyODZlbTtcbiAgbGVmdDogMC44NTcxNDI4NmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuODU3MTQyODZlbTtcbn1cbi51aS50b3AuY2VudGVyLnRvYXN0LWNvbnRhaW5lciB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gIHRvcDogMC44NTcxNDI4NmVtO1xufVxuLnVpLmJvdHRvbS5yaWdodC50b2FzdC1jb250YWluZXIge1xuICBib3R0b206IDAuODU3MTQyODZlbTtcbiAgcmlnaHQ6IDAuODU3MTQyODZlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuODU3MTQyODZlbTtcbn1cbi51aS5ib3R0b20ubGVmdC50b2FzdC1jb250YWluZXIge1xuICBib3R0b206IDAuODU3MTQyODZlbTtcbiAgbGVmdDogMC44NTcxNDI4NmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuODU3MTQyODZlbTtcbn1cbi51aS5ib3R0b20uY2VudGVyLnRvYXN0LWNvbnRhaW5lciB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gIGJvdHRvbTogMC44NTcxNDI4NmVtO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRvYXN0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnRvYXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjllbSAxZW07XG4gIG1hcmdpbjogMCAwIDZweDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cbi5mbG9hdGluZy50b2FzdCxcbi5ob3ZlcmZsb2F0aW5nLnRvYXN0OmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMCAycHggMTBweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG4uaG92ZXJmbG9hdGluZy5tZXNzYWdlOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IGluc2V0LCAwIDJweCA0cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwIDJweCAxMHB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cbi5jZW50ZXIudG9hc3QtY29udGFpbmVyIC50b2FzdC1ib3gsXG4ucmlnaHQudG9hc3QtY29udGFpbmVyIC50b2FzdC1ib3gge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbi5jZW50ZXIudG9hc3QtY29udGFpbmVyIC50b2FzdC1ib3gge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4udmlzaWJsZS50b2FzdC1ib3gsXG4uYW5pbWF0aW5nLnRvYXN0LWJveCxcbi50b2FzdC1ib3gge1xuICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xufVxuLnRvYXN0LWNvbnRhaW5lciAuY29tcGFjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzAwcHg7XG59XG4udG9hc3QtY29udGFpbmVyIC5tZXNzYWdlLFxuLnRvYXN0OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmljb24udG9hc3QgLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDNlbTtcbn1cbi50b2FzdCA+IC5jb250ZW50ID4gLmhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmluZm8udG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFDQ0VDO1xufVxuLndhcm5pbmcudG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJDMDM3O1xufVxuLnN1Y2Nlc3MudG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFCQTQ1O1xufVxuLmVycm9yLnRvYXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RCMjgyODtcbn1cbi50b2FzdC1ib3ggLmluZm8uYXR0YWNoZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQ6ICMxMmExYmYgIWltcG9ydGFudDtcbn1cbi50b2FzdC1ib3ggLndhcm5pbmcuYXR0YWNoZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQ6ICNjZjliMGQgIWltcG9ydGFudDtcbn1cbi50b2FzdC1ib3ggLnN1Y2Nlc3MuYXR0YWNoZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQ6ICMxNTc5MmQgIWltcG9ydGFudDtcbn1cbi50b2FzdC1ib3ggLmVycm9yLmF0dGFjaGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kOiAjOWMxYTFhICFpbXBvcnRhbnQ7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0gKi9cbi5wcmltYXJ5LnRvYXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbn1cbi5pbnZlcnRlZC5wcmltYXJ5LnRvYXN0LFxuLnRvYXN0LWJveCAuaW52ZXJ0ZWQucHJpbWFyeS5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0QzhGRjtcbn1cbi5zZWNvbmRhcnkudG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xufVxuLmludmVydGVkLnNlY29uZGFyeS50b2FzdCxcbi50b2FzdC1ib3ggLmludmVydGVkLnNlY29uZGFyeS5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDtcbn1cbi5yZWQudG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4O1xufVxuLmludmVydGVkLnJlZC50b2FzdCxcbi50b2FzdC1ib3ggLmludmVydGVkLnJlZC5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGNjk1RTtcbn1cbi5vcmFuZ2UudG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI3MTFDO1xufVxuLmludmVydGVkLm9yYW5nZS50b2FzdCxcbi50b2FzdC1ib3ggLmludmVydGVkLm9yYW5nZS5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGODUxQjtcbn1cbi55ZWxsb3cudG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJCRDA4O1xufVxuLmludmVydGVkLnllbGxvdy50b2FzdCxcbi50b2FzdC1ib3ggLmludmVydGVkLnllbGxvdy5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRTIxRjtcbn1cbi5vbGl2ZS50b2FzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNUNDMTg7XG59XG4uaW52ZXJ0ZWQub2xpdmUudG9hc3QsXG4udG9hc3QtYm94IC5pbnZlcnRlZC5vbGl2ZS5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q5RTc3ODtcbn1cbi5ncmVlbi50b2FzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG59XG4uaW52ZXJ0ZWQuZ3JlZW4udG9hc3QsXG4udG9hc3QtYm94IC5pbnZlcnRlZC5ncmVlbi5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJFQ0M0MDtcbn1cbi50ZWFsLnRvYXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRDtcbn1cbi5pbnZlcnRlZC50ZWFsLnRvYXN0LFxuLnRvYXN0LWJveCAuaW52ZXJ0ZWQudGVhbC5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZERkZGRjtcbn1cbi5ibHVlLnRvYXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbn1cbi5pbnZlcnRlZC5ibHVlLnRvYXN0LFxuLnRvYXN0LWJveCAuaW52ZXJ0ZWQuYmx1ZS5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0QzhGRjtcbn1cbi52aW9sZXQudG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQzNUM5O1xufVxuLmludmVydGVkLnZpb2xldC50b2FzdCxcbi50b2FzdC1ib3ggLmludmVydGVkLnZpb2xldC5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EyOTFGQjtcbn1cbi5wdXJwbGUudG9hc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTMzM0M4O1xufVxuLmludmVydGVkLnB1cnBsZS50b2FzdCxcbi50b2FzdC1ib3ggLmludmVydGVkLnB1cnBsZS5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDNzNGRjtcbn1cbi5waW5rLnRvYXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwMzk5Nztcbn1cbi5pbnZlcnRlZC5waW5rLnRvYXN0LFxuLnRvYXN0LWJveCAuaW52ZXJ0ZWQucGluay5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGOEVERjtcbn1cbi5icm93bi50b2FzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0Y7XG59XG4uaW52ZXJ0ZWQuYnJvd24udG9hc3QsXG4udG9hc3QtYm94IC5pbnZlcnRlZC5icm93bi5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q2N0MxQztcbn1cbi5ncmV5LnRvYXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3Njtcbn1cbi5pbnZlcnRlZC5ncmV5LnRvYXN0LFxuLnRvYXN0LWJveCAuaW52ZXJ0ZWQuZ3JleS5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDRERERTtcbn1cbi5ibGFjay50b2FzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG59XG4uaW52ZXJ0ZWQuYmxhY2sudG9hc3QsXG4udG9hc3QtYm94IC5pbnZlcnRlZC5ibGFjay5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDtcbn1cbi5pbnZlcnRlZC50b2FzdCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cbi5pY29uLnRvYXN0ID4gLmljb246bm90KC5jbG9zZSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5pY29uLnRvYXN0ID4gLmNvbnRlbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4vKi0tLS0tLS0tLS0tLS0tLVxuICAgUHJvZ3Jlc3MgQmFyXG4gLS0tLS0tLS0tLS0tLS0tLSovXG4udG9hc3QtYm94IC5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuLnRvYXN0LWJveCAuYWN0aXZlLnByb2dyZXNzIC5iYXI6YWZ0ZXIge1xuICBhbmltYXRpb246IHByb2dyZXNzLWFjdGl2ZSAycyBlYXNlIGluZmluaXRlICFpbXBvcnRhbnQ7XG59XG4udG9hc3QtYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogNnB4O1xufVxuLnRvYXN0LWJveCAudG9hc3QsXG4udG9hc3QtYm94IC5tZXNzYWdlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnRvYXN0LWJveCAuYXR0YWNoZWQucHJvZ3Jlc3Mge1xuICB6LWluZGV4OiAxO1xufVxuLnRvYXN0LWJveCAuYm90dG9tLmF0dGFjaGVkLnByb2dyZXNzIHtcbiAgbWFyZ2luOiAtM3B4IDAgNnB4O1xufVxuLnRvYXN0LWJveCAudG9wLmF0dGFjaGVkLnByb2dyZXNzIHtcbiAgbWFyZ2luOiA2cHggMCAtM3B4O1xufVxuLyogLS0tLS0tLS1cbiBDbG9zZSBJY29uXG4gLS0tLS0tLS0tLS0qL1xuLnRvYXN0LWJveCAubWVzc2FnZSA+IC5jbG9zZS5pY29uIHtcbiAgdG9wOiAwLjNlbTtcbiAgcmlnaHQ6IDAuM2VtO1xufVxuLnRvYXN0LWJveCAudG9hc3QgPiAuY2xvc2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIHRvcDogMC4zZW07XG4gIHJpZ2h0OiAwLjNlbTtcbiAgb3BhY2l0eTogMC43O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbn1cbi50b2FzdC1ib3ggLnRvYXN0ID4gLmNsb3NlLmljb246aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLyohXG4gKiAjIEZvbWFudGljLVVJIC0gVHJhbnNpdGlvblxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLypcblxu4paI4paI4paI4paI4paI4paI4paI4paI4pWX4paI4paI4pWXICDilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilZcgICDilojilojilojilZfilojilojilojilojilojilojilojilZfilojilojilojilojilojilojilojilZdcbuKVmuKVkOKVkOKWiOKWiOKVlOKVkOKVkOKVneKWiOKWiOKVkSAg4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWQ4pWQ4pWd4paI4paI4paI4paI4pWXIOKWiOKWiOKWiOKWiOKVkeKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVneKWiOKWiOKVlOKVkOKVkOKVkOKVkOKVnVxuICAg4paI4paI4pWRICAg4paI4paI4paI4paI4paI4paI4paI4pWR4paI4paI4paI4paI4paI4pWXICDilojilojilZTilojilojilojilojilZTilojilojilZHilojilojilojilojilojilZcgIOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl1xuICAg4paI4paI4pWRICAg4paI4paI4pWU4pWQ4pWQ4paI4paI4pWR4paI4paI4pWU4pWQ4pWQ4pWdICDilojilojilZHilZrilojilojilZTilZ3ilojilojilZHilojilojilZTilZDilZDilZ0gIOKVmuKVkOKVkOKVkOKVkOKWiOKWiOKVkVxuICAg4paI4paI4pWRICAg4paI4paI4pWRICDilojilojilZHilojilojilojilojilojilojilojilZfilojilojilZEg4pWa4pWQ4pWdIOKWiOKWiOKVkeKWiOKWiOKWiOKWiOKWiOKWiOKWiOKVl+KWiOKWiOKWiOKWiOKWiOKWiOKWiOKVkVxuICAg4pWa4pWQ4pWdICAg4pWa4pWQ4pWdICDilZrilZDilZ3ilZrilZDilZDilZDilZDilZDilZDilZ3ilZrilZDilZ0gICAgIOKVmuKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVneKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVnVxuXG4qL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVGhlbWUgU2VsZWN0aW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVG8gb3ZlcnJpZGUgYSB0aGVtZSBmb3IgYW4gaW5kaXZpZHVhbCBlbGVtZW50XG4gICBzcGVjaWZ5IHRoZW1lIG5hbWUgYmVsb3dcbiovXG4vKiBHbG9iYWwgKi9cbi8qIEVsZW1lbnRzICovXG4vKiBDb2xsZWN0aW9ucyAqL1xuLyogTW9kdWxlcyAqL1xuLyogVmlld3MgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBGb2xkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogUGF0aCB0byB0aGVtZSBwYWNrYWdlcyAqL1xuLyogUGF0aCB0byBzaXRlIG92ZXJyaWRlIGZvbGRlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEltcG9ydCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEltcG9ydCBEaXJlY3RpdmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTaXRlIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgc2l0ZS52YXJpYWJsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIFNldHRpbmdzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRm9udHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQmFzZSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBpcyB0aGUgc2luZ2xlIHZhcmlhYmxlIHRoYXQgY29udHJvbHMgdGhlbSBhbGwgKi9cbi8qIFRoZSBzaXplIG9mIHBhZ2UgdGV4dCAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJvcmRlciBSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFNlZSBQb3dlci11c2VyIHNlY3Rpb24gYmVsb3dcbiAgIGZvciBleHBsYW5hdGlvbiBvZiBAcHggdmFyaWFibGVzXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaGVuZXZlciBhIGNvbG9yIG5lZWRzIHRvIGdldCBjYWxjdWxhdGVkIChzY3JlZW4oKS9tdWx0aXBseSgpKSBvdXQgb2YgYSBiYXNlIGNvbG9yICovXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFBhZ2UgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZvcm0gSW5wdXRcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGFkanVzdHMgdGhlIGRlZmF1bHQgZm9ybSBpbnB1dCBhY3Jvc3MgYWxsIGVsZW1lbnRzICovXG4vKiBJbnB1dCBUZXh0IENvbG9yICovXG4vKiBMaW5lIEhlaWdodCBEZWZhdWx0IEZvciBJbnB1dHMgaW4gQnJvd3NlciAoRGVzY2VuZGVycyBhcmUgMTdweCBhdCAxNHB4IGJhc2UgZW0pICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBGb2N1c2VkIElucHV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBVc2VkIG9uIGlucHV0cywgdGV4dGFyZWEgZXRjICovXG4vKiBVc2VkIG9uIGRyb3Bkb3ducywgb3RoZXIgbGFyZ2VyIGJsb2NrcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBTaXplcyBhcmUgYWxsIGV4cHJlc3NlZCBpbiB0ZXJtcyBvZiAxNHB4L2VtIChkZWZhdWx0IGVtKVxuICBUaGlzIGVuc3VyZXMgdGhlc2UgXCJyYXRpb3NcIiByZW1haW4gY29uc3RhbnQgZGVzcGl0ZSBjaGFuZ2VzIGluIEVNXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU2Nyb2xsIEJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEludmVydGVkICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGlnaGxpZ2h0ZWQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJlYWtwb2ludHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2l0ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgTGlnaHQgQ29sb3JzICAtLS0qL1xuLyotLS0gICBOZXV0cmFscyAgLS0tKi9cbi8qLS0tIENvbG9yZWQgQmFja2dyb3VuZHMgLS0tKi9cbi8qLS0tIENvbG9yZWQgSGVhZGVycyAtLS0qL1xuLyotLS0gQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBMaWdodCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIEhvdmVyZWQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBDb2xvcmVkIEJvcmRlciAtLS0qL1xuLyotLS0gU2hhZG93cyAtLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qIEJveCBTaGFkb3dzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxwaGEgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY2NlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTmV1dHJhbHMgKi9cbi8qIERpZmZlcmVudGlhdGluZyBMYXllcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFBvd2VyLVVzZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFbW90aXZlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogUG9zaXRpdmUgKi9cbi8qIE5lZ2F0aXZlICovXG4vKiBJbmZvICovXG4vKiBXYXJuaW5nICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGF0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEZvciBzb3VyY2Ugb25seS4gTW9kaWZpZWQgaW4gZ3VscCBmb3IgZGlzdCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRW0gU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoaXMgcm91bmRzIEBzaXplIHZhbHVlcyB0byB0aGUgY2xvc2VzdCBwaXhlbCB0aGVuIGV4cHJlc3NlcyB0aGF0IHZhbHVlIGluIChyKWVtLlxuICBUaGlzIGVuc3VyZXMgYWxsIHNpemUgdmFsdWVzIHJvdW5kIHRvIGV4YWN0IHBpeGVsc1xuKi9cbi8qIGVtICovXG4vKiByZW0gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBNYXhpbXVtIEdseXBoIFdpZHRoIG9mIEljb24gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBOZXV0cmFsIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRGVyaXZlZCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIExvYWRlcnMgUG9zaXRpb24gT2Zmc2V0ICovXG4vKiBSZW5kZXJlZCBTY3JvbGxiYXIgV2lkdGggKi9cbi8qIE1heGltdW0gU2luZ2xlIENoYXJhY3RlciBHbHlwaCBXaWR0aCwgYWthIENhcGl0YWwgXCJXXCIgKi9cbi8qIFVzZWQgdG8gbWF0Y2ggZmxvYXRzIHdpdGggdGV4dCAqL1xuLyogSGVhZGVyIFNwYWNpbmcgKi9cbi8qIE1pbmltdW0gTW9iaWxlIFdpZHRoICovXG4vKiBQb3NpdGl2ZSAvIE5lZ2F0aXZlIER1cGVzICovXG4vKiBSZXNwb25zaXZlICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgRXhhY3QgUGl4ZWwgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGVzZSBhcmUgdXNlZCB0byBzcGVjaWZ5IGV4YWN0IHBpeGVsIHZhbHVlcyBpbiBlbVxuICBmb3IgdGhpbmdzIGxpa2UgYm9yZGVycyB0aGF0IHJlbWFpbiBjb25zdGFudGx5XG4gIHNpemVkIGFzIGVtU2l6ZSBhZGp1c3RzXG5cbiAgU2luY2UgdGhlcmUgYXJlIG1hbnkgbW9yZSBzaXplcyB0aGFuIG5hbWVzIGZvciBzaXplcyxcbiAgdGhlc2UgYXJlIG5hbWVkIGJ5IHRoZWlyIG9yaWdpbmFsIHBpeGVsIHZhbHVlcy5cblxuKi9cbi8qIENvbHVtbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgU2hhZG93cyAgLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRG93biAoOmFjdGl2ZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tICBUZXJ0aWFyeSAgLS0tKi9cbi8qLS0tICBCcmlnaHQgIC0tLSovXG4vKiBQYWNrYWdlZCBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgU2V0dGluZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNlIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGlzIHRoZSBzaW5nbGUgdmFyaWFibGUgdGhhdCBjb250cm9scyB0aGVtIGFsbCAqL1xuLyogVGhlIHNpemUgb2YgcGFnZSB0ZXh0ICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyIFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2VlIFBvd2VyLXVzZXIgc2VjdGlvbiBiZWxvd1xuICAgZm9yIGV4cGxhbmF0aW9uIG9mIEBweCB2YXJpYWJsZXNcbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCcmFuZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFdoZW5ldmVyIGEgY29sb3IgbmVlZHMgdG8gZ2V0IGNhbGN1bGF0ZWQgKHNjcmVlbigpL211bHRpcGx5KCkpIG91dCBvZiBhIGJhc2UgY29sb3IgKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgUGFnZSBIZWFkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLVxuICAgRm9ybSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgYWRqdXN0cyB0aGUgZGVmYXVsdCBmb3JtIGlucHV0IGFjcm9zcyBhbGwgZWxlbWVudHMgKi9cbi8qIElucHV0IFRleHQgQ29sb3IgKi9cbi8qIExpbmUgSGVpZ2h0IERlZmF1bHQgRm9yIElucHV0cyBpbiBCcm93c2VyIChEZXNjZW5kZXJzIGFyZSAxN3B4IGF0IDE0cHggYmFzZSBlbSkgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEZvY3VzZWQgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFVzZWQgb24gaW5wdXRzLCB0ZXh0YXJlYSBldGMgKi9cbi8qIFVzZWQgb24gZHJvcGRvd25zLCBvdGhlciBsYXJnZXIgYmxvY2tzICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFNpemVzIGFyZSBhbGwgZXhwcmVzc2VkIGluIHRlcm1zIG9mIDE0cHgvZW0gKGRlZmF1bHQgZW0pXG4gIFRoaXMgZW5zdXJlcyB0aGVzZSBcInJhdGlvc1wiIHJlbWFpbiBjb25zdGFudCBkZXNwaXRlIGNoYW5nZXMgaW4gRU1cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGwgQmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogSW52ZXJ0ZWQgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIaWdobGlnaHRlZCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgVHJhbnNpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCcmVha3BvaW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXRlIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBMaWdodCBDb2xvcnMgIC0tLSovXG4vKi0tLSAgIE5ldXRyYWxzICAtLS0qL1xuLyotLS0gQ29sb3JlZCBCYWNrZ3JvdW5kcyAtLS0qL1xuLyotLS0gQ29sb3JlZCBIZWFkZXJzIC0tLSovXG4vKi0tLSBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIExpZ2h0IENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gSG92ZXJlZCBDb2xvcmVkIFRleHQgLS0tKi9cbi8qLS0tIENvbG9yZWQgQm9yZGVyIC0tLSovXG4vKi0tLSBTaGFkb3dzIC0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyogQm94IFNoYWRvd3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBBbHBoYSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFjY2VudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERpZmZlcmVudGlhdGluZyBOZXV0cmFscyAqL1xuLyogRGlmZmVyZW50aWF0aW5nIExheWVycyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUG93ZXItVXNlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEVtb3RpdmUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBQb3NpdGl2ZSAqL1xuLyogTmVnYXRpdmUgKi9cbi8qIEluZm8gKi9cbi8qIFdhcm5pbmcgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYXRoc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRm9yIHNvdXJjZSBvbmx5LiBNb2RpZmllZCBpbiBndWxwIGZvciBkaXN0ICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBFbSBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhpcyByb3VuZHMgQHNpemUgdmFsdWVzIHRvIHRoZSBjbG9zZXN0IHBpeGVsIHRoZW4gZXhwcmVzc2VzIHRoYXQgdmFsdWUgaW4gKHIpZW0uXG4gIFRoaXMgZW5zdXJlcyBhbGwgc2l6ZSB2YWx1ZXMgcm91bmQgdG8gZXhhY3QgcGl4ZWxzXG4qL1xuLyogZW0gKi9cbi8qIHJlbSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE1heGltdW0gR2x5cGggV2lkdGggb2YgSWNvbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldXRyYWwgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEZXJpdmVkIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTG9hZGVycyBQb3NpdGlvbiBPZmZzZXQgKi9cbi8qIFJlbmRlcmVkIFNjcm9sbGJhciBXaWR0aCAqL1xuLyogTWF4aW11bSBTaW5nbGUgQ2hhcmFjdGVyIEdseXBoIFdpZHRoLCBha2EgQ2FwaXRhbCBcIldcIiAqL1xuLyogVXNlZCB0byBtYXRjaCBmbG9hdHMgd2l0aCB0ZXh0ICovXG4vKiBIZWFkZXIgU3BhY2luZyAqL1xuLyogTWluaW11bSBNb2JpbGUgV2lkdGggKi9cbi8qIFBvc2l0aXZlIC8gTmVnYXRpdmUgRHVwZXMgKi9cbi8qIFJlc3BvbnNpdmUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFeGFjdCBQaXhlbCBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4gIFRoZXNlIGFyZSB1c2VkIHRvIHNwZWNpZnkgZXhhY3QgcGl4ZWwgdmFsdWVzIGluIGVtXG4gIGZvciB0aGluZ3MgbGlrZSBib3JkZXJzIHRoYXQgcmVtYWluIGNvbnN0YW50bHlcbiAgc2l6ZWQgYXMgZW1TaXplIGFkanVzdHNcblxuICBTaW5jZSB0aGVyZSBhcmUgbWFueSBtb3JlIHNpemVzIHRoYW4gbmFtZXMgZm9yIHNpemVzLFxuICB0aGVzZSBhcmUgbmFtZWQgYnkgdGhlaXIgb3JpZ2luYWwgcGl4ZWwgdmFsdWVzLlxuXG4qL1xuLyogQ29sdW1ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBTaGFkb3dzICAtLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEb3duICg6YWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIENvbG9ycyAgLS0tKi9cbi8qLS0tICBFbW90aXZlICAtLS0qL1xuLyotLS0gIEJyYW5kICAgLS0tKi9cbi8qLS0tICBEYXJrIFRvbmVzICAtLS0qL1xuLyotLS0gIExpZ2h0IFRvbmVzICAtLS0qL1xuLyotLS0gIFRlcnRpYXJ5ICAtLS0qL1xuLyotLS0gIEJyaWdodCAgLS0tKi9cbi8qIENvbXBvbmVudCdzIHNpdGUudmFyaWFibGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBTZXR0aW5nc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2UgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgaXMgdGhlIHNpbmdsZSB2YXJpYWJsZSB0aGF0IGNvbnRyb2xzIHRoZW0gYWxsICovXG4vKiBUaGUgc2l6ZSBvZiBwYWdlIHRleHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBCb3JkZXIgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBTZWUgUG93ZXItdXNlciBzZWN0aW9uIGJlbG93XG4gICBmb3IgZXhwbGFuYXRpb24gb2YgQHB4IHZhcmlhYmxlc1xuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJyYW5kIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogV2hlbmV2ZXIgYSBjb2xvciBuZWVkcyB0byBnZXQgY2FsY3VsYXRlZCAoc2NyZWVuKCkvbXVsdGlwbHkoKSkgb3V0IG9mIGEgYmFzZSBjb2xvciAqL1xuLyotLS0tLS0tLS0tLS0tLVxuICBQYWdlIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBGb3JtIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBhZGp1c3RzIHRoZSBkZWZhdWx0IGZvcm0gaW5wdXQgYWNyb3NzIGFsbCBlbGVtZW50cyAqL1xuLyogSW5wdXQgVGV4dCBDb2xvciAqL1xuLyogTGluZSBIZWlnaHQgRGVmYXVsdCBGb3IgSW5wdXRzIGluIEJyb3dzZXIgKERlc2NlbmRlcnMgYXJlIDE3cHggYXQgMTRweCBiYXNlIGVtKSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRm9jdXNlZCBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVXNlZCBvbiBpbnB1dHMsIHRleHRhcmVhIGV0YyAqL1xuLyogVXNlZCBvbiBkcm9wZG93bnMsIG90aGVyIGxhcmdlciBibG9ja3MgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgU2l6ZXMgYXJlIGFsbCBleHByZXNzZWQgaW4gdGVybXMgb2YgMTRweC9lbSAoZGVmYXVsdCBlbSlcbiAgVGhpcyBlbnN1cmVzIHRoZXNlIFwicmF0aW9zXCIgcmVtYWluIGNvbnN0YW50IGRlc3BpdGUgY2hhbmdlcyBpbiBFTVxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbCBCYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbnZlcnRlZCAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhpZ2hsaWdodGVkIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEdyaWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEJyZWFrcG9pbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpdGUgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIExpZ2h0IENvbG9ycyAgLS0tKi9cbi8qLS0tICAgTmV1dHJhbHMgIC0tLSovXG4vKi0tLSBDb2xvcmVkIEJhY2tncm91bmRzIC0tLSovXG4vKi0tLSBDb2xvcmVkIEhlYWRlcnMgLS0tKi9cbi8qLS0tIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gTGlnaHQgQ29sb3JlZCBUZXh0IC0tLSovXG4vKi0tLSBIb3ZlcmVkIENvbG9yZWQgVGV4dCAtLS0qL1xuLyotLS0gQ29sb3JlZCBCb3JkZXIgLS0tKi9cbi8qLS0tIFNoYWRvd3MgLS0tKi9cbi8qIEludmVydGVkICovXG4vKiBCb3ggU2hhZG93cyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFscGhhIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWNjZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGlmZmVyZW50aWF0aW5nIE5ldXRyYWxzICovXG4vKiBEaWZmZXJlbnRpYXRpbmcgTGF5ZXJzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBQb3dlci1Vc2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRW1vdGl2ZSBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvc2l0aXZlICovXG4vKiBOZWdhdGl2ZSAqL1xuLyogSW5mbyAqL1xuLyogV2FybmluZyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhdGhzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBGb3Igc291cmNlIG9ubHkuIE1vZGlmaWVkIGluIGd1bHAgZm9yIGRpc3QgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEVtIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICBUaGlzIHJvdW5kcyBAc2l6ZSB2YWx1ZXMgdG8gdGhlIGNsb3Nlc3QgcGl4ZWwgdGhlbiBleHByZXNzZXMgdGhhdCB2YWx1ZSBpbiAocillbS5cbiAgVGhpcyBlbnN1cmVzIGFsbCBzaXplIHZhbHVlcyByb3VuZCB0byBleGFjdCBwaXhlbHNcbiovXG4vKiBlbSAqL1xuLyogcmVtICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTWF4aW11bSBHbHlwaCBXaWR0aCBvZiBJY29uICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV1dHJhbCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJhbmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJvcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERlcml2ZWQgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBMb2FkZXJzIFBvc2l0aW9uIE9mZnNldCAqL1xuLyogUmVuZGVyZWQgU2Nyb2xsYmFyIFdpZHRoICovXG4vKiBNYXhpbXVtIFNpbmdsZSBDaGFyYWN0ZXIgR2x5cGggV2lkdGgsIGFrYSBDYXBpdGFsIFwiV1wiICovXG4vKiBVc2VkIHRvIG1hdGNoIGZsb2F0cyB3aXRoIHRleHQgKi9cbi8qIEhlYWRlciBTcGFjaW5nICovXG4vKiBNaW5pbXVtIE1vYmlsZSBXaWR0aCAqL1xuLyogUG9zaXRpdmUgLyBOZWdhdGl2ZSBEdXBlcyAqL1xuLyogUmVzcG9uc2l2ZSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEV4YWN0IFBpeGVsIFZhbHVlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVGhlc2UgYXJlIHVzZWQgdG8gc3BlY2lmeSBleGFjdCBwaXhlbCB2YWx1ZXMgaW4gZW1cbiAgZm9yIHRoaW5ncyBsaWtlIGJvcmRlcnMgdGhhdCByZW1haW4gY29uc3RhbnRseVxuICBzaXplZCBhcyBlbVNpemUgYWRqdXN0c1xuXG4gIFNpbmNlIHRoZXJlIGFyZSBtYW55IG1vcmUgc2l6ZXMgdGhhbiBuYW1lcyBmb3Igc2l6ZXMsXG4gIHRoZXNlIGFyZSBuYW1lZCBieSB0aGVpciBvcmlnaW5hbCBwaXhlbCB2YWx1ZXMuXG5cbiovXG4vKiBDb2x1bW5zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0gIFNoYWRvd3MgIC0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tICBDb2xvcnMgIC0tLSovXG4vKi0tLSAgRW1vdGl2ZSAgLS0tKi9cbi8qLS0tICBCcmFuZCAgIC0tLSovXG4vKi0tLSAgRGFyayBUb25lcyAgLS0tKi9cbi8qLS0tICBMaWdodCBUb25lcyAgLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERvd24gKDphY3RpdmUpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLSAgQ29sb3JzICAtLS0qL1xuLyotLS0gIEVtb3RpdmUgIC0tLSovXG4vKi0tLSAgQnJhbmQgICAtLS0qL1xuLyotLS0gIERhcmsgVG9uZXMgIC0tLSovXG4vKi0tLSAgTGlnaHQgVG9uZXMgIC0tLSovXG4vKi0tLSAgVGVydGlhcnkgIC0tLSovXG4vKi0tLSAgQnJpZ2h0ICAtLS0qL1xuLyogU2l0ZSB0aGVtZSBzaXRlLnZhcmlhYmxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgVXNlciBHbG9iYWwgVmFyaWFibGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gQ29tcG9uZW50IFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIERlZmF1bHQgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVHJhbnNpdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFBhY2thZ2VkIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFRyYW5zaXRpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTaXRlIFRoZW1lICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2VudHJhbCBDb2xvciBNYXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRGVmYXVsdCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIENlbnRyYWwgQ29sb3IgTWFwcGluZyBCYXNlIGZvciBhbGwgY29tcG9uZW50cyB0byBpdGVyYXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNpdGUgVGhlbWUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICBDZW50cmFsIENvbG9yIE1hcHBpbmcgQmFzZSBmb3IgYWxsIGNvbXBvbmVudHMgdG8gaXRlcmF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1peC1pbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBFbmQgQ29uZmlnICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFRyYW5zaXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnRyYW5zaXRpb24ge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICBhbmltYXRpb24tZHVyYXRpb246IDMwMG1zO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEFuaW1hdGluZyAqL1xuLmFuaW1hdGluZy50cmFuc2l0aW9uIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG4vKiBMb2FkaW5nICovXG4ubG9hZGluZy50cmFuc2l0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5OXB4O1xuICBsZWZ0OiAtOTk5OTlweDtcbn1cbi8qIEhpZGRlbiAqL1xuLmhpZGRlbi50cmFuc2l0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogVmlzaWJsZSAqL1xuLnZpc2libGUudHJhbnNpdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgLyogIGJhY2tmYWNlLXZpc2liaWxpdHk6IEBiYWNrZmFjZVZpc2liaWxpdHk7XG4gIHRyYW5zZm9ybTogQHVzZTNEQWNjZWxlcmF0aW9uOyovXG59XG4vKiBEaXNhYmxlZCAqL1xuLmRpc2FibGVkLnRyYW5zaXRpb24ge1xuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmxvb3BpbmcudHJhbnNpdGlvbiB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBUcmFuc2l0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG4gIFNvbWUgdHJhbnNpdGlvbnMgYWRhcHRlZCBmcm9tIEFuaW1hdGUgQ1NTXG4gIGh0dHBzOi8vZ2l0aHViLmNvbS9kYW5lZGVuL2FuaW1hdGUuY3NzXG5cbiAgQWRkaXRpb25hbCB0cmFuc2l0aW9ucyBhZGFwdGVkIGZyb20gR2xpZGVcbiAgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZVxuKi9cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQnJvd3NlXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnRyYW5zaXRpb24uYnJvd3NlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbn1cbi50cmFuc2l0aW9uLmJyb3dzZS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBicm93c2VJbjtcbn1cbi50cmFuc2l0aW9uLmJyb3dzZS5vdXQsXG4udHJhbnNpdGlvbi5icm93c2UubGVmdC5vdXQge1xuICBhbmltYXRpb24tbmFtZTogYnJvd3NlT3V0TGVmdDtcbn1cbi50cmFuc2l0aW9uLmJyb3dzZS5yaWdodC5vdXQge1xuICBhbmltYXRpb24tbmFtZTogYnJvd3NlT3V0UmlnaHQ7XG59XG4vKiBJbiAqL1xuQGtleWZyYW1lcyBicm93c2VJbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG4gIDEwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB6LWluZGV4OiA5OTk7XG4gIH1cbn1cbi8qIE91dCAqL1xuQGtleWZyYW1lcyBicm93c2VPdXRMZWZ0IHtcbiAgMCUge1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTA1JSkgcm90YXRlWSgzNWRlZykgcm90YXRlWCgxMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gIH1cbiAgODAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYnJvd3NlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgei1pbmRleDogOTk5O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpO1xuICB9XG4gIDUwJSB7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTA1JSkgcm90YXRlWSgzNWRlZykgcm90YXRlWCgxMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gIH1cbiAgODAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEcm9wXG4tLS0tLS0tLS0tLS0tLS0qL1xuLmRyb3AudHJhbnNpdGlvbiB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNDAwbXM7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjM0LCAxLjYxLCAwLjcsIDEpO1xufVxuLmRyb3AudHJhbnNpdGlvbi5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBkcm9wSW47XG59XG4uZHJvcC50cmFuc2l0aW9uLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBkcm9wT3V0O1xufVxuLyogRHJvcCAqL1xuQGtleWZyYW1lcyBkcm9wSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQGtleWZyYW1lcyBkcm9wT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEZhZGVcbi0tLS0tLS0tLS0tLS0tLSovXG4udHJhbnNpdGlvbi5mYWRlLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgdXBcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIGRvd25cIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgbGVmdFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSByaWdodFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbn1cbi50cmFuc2l0aW9uLmZhZGUub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIHVwXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIGRvd25cIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBsZWZ0XCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgcmlnaHRcIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbn1cbi8qIEluICovXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbn1cbi8qIE91dCAqL1xuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0VXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUlKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0RG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUlKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNSUpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUlKTtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbGlwc1xuLS0tLS0tLS0tLS0tLS0tKi9cbi5mbGlwLnRyYW5zaXRpb24uaW4sXG4uZmxpcC50cmFuc2l0aW9uLm91dCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNjAwbXM7XG59XG4uaG9yaXpvbnRhbC5mbGlwLnRyYW5zaXRpb24uaW4ge1xuICBhbmltYXRpb24tbmFtZTogaG9yaXpvbnRhbEZsaXBJbjtcbn1cbi5ob3Jpem9udGFsLmZsaXAudHJhbnNpdGlvbi5vdXQge1xuICBhbmltYXRpb24tbmFtZTogaG9yaXpvbnRhbEZsaXBPdXQ7XG59XG4udmVydGljYWwuZmxpcC50cmFuc2l0aW9uLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHZlcnRpY2FsRmxpcEluO1xufVxuLnZlcnRpY2FsLmZsaXAudHJhbnNpdGlvbi5vdXQge1xuICBhbmltYXRpb24tbmFtZTogdmVydGljYWxGbGlwT3V0O1xufVxuLyogSW4gKi9cbkBrZXlmcmFtZXMgaG9yaXpvbnRhbEZsaXBJbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyB2ZXJ0aWNhbEZsaXBJbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLyogT3V0ICovXG5Aa2V5ZnJhbWVzIGhvcml6b250YWxGbGlwT3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgdmVydGljYWxGbGlwT3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTY2FsZVxuLS0tLS0tLS0tLS0tLS0tKi9cbi5zY2FsZS50cmFuc2l0aW9uLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNjYWxlSW47XG59XG4uc2NhbGUudHJhbnNpdGlvbi5vdXQge1xuICBhbmltYXRpb24tbmFtZTogc2NhbGVPdXQ7XG59XG5Aa2V5ZnJhbWVzIHNjYWxlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG4vKiBPdXQgKi9cbkBrZXlmcmFtZXMgc2NhbGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBGbHlcbi0tLS0tLS0tLS0tLS0tLSovXG4vKiBJbndhcmQgKi9cbi50cmFuc2l0aW9uLmZseSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC42cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuLnRyYW5zaXRpb24uZmx5LmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseUluO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IHVwXCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseUluVXA7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgZG93blwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlJbkRvd247XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgbGVmdFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlJbkxlZnQ7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgcmlnaHRcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5SaWdodDtcbn1cbi8qIE91dHdhcmQgKi9cbi50cmFuc2l0aW9uLmZseS5vdXQge1xuICBhbmltYXRpb24tbmFtZTogZmx5T3V0O1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IHVwXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXRVcDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZseSBkb3duXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXREb3duO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IGxlZnRcIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseU91dExlZnQ7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgcmlnaHRcIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseU91dFJpZ2h0O1xufVxuLyogSW4gKi9cbkBrZXlmcmFtZXMgZmx5SW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gIH1cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbHlJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxNTAwcHgsIDApO1xuICB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gIH1cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmx5SW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTUwMHB4LCAwKTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcbiAgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbHlJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDE1MDBweCwgMCwgMCk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZseUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNTAwcHgsIDAsIDApO1xuICB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xuICB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIH1cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG4vKiBPdXQgKi9cbkBrZXlmcmFtZXMgZmx5T3V0IHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gIH1cbiAgNTAlLFxuICA1NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZseU91dFVwIHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG4gIDQwJSxcbiAgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZseU91dERvd24ge1xuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG4gIDQwJSxcbiAgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZseU91dFJpZ2h0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZseU91dExlZnQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2xpZGVcbi0tLS0tLS0tLS0tLS0tLSovXG4udHJhbnNpdGlvbi5zbGlkZS5pbixcbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIGRvd25cIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzbGlkZSB1cFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluWTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIGxlZnRcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHJpZ2h0XCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5YO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbn1cbi50cmFuc2l0aW9uLnNsaWRlLm91dCxcbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIGRvd25cIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHVwXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzbGlkZSBsZWZ0XCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHJpZ2h0XCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xufVxuLyogSW4gKi9cbkBrZXlmcmFtZXMgc2xpZGVJblkge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlSW5YIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuLyogT3V0ICovXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0WSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc2xpZGVPdXRYIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTd2luZ1xuLS0tLS0tLS0tLS0tLS0tKi9cbi50cmFuc2l0aW9uLnN3aW5nIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA4MDBtcztcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIGRvd25cIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogc3dpbmdJblg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyB1cFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ0luWDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIGxlZnRcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogc3dpbmdJblk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIHJpZ2h0XCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5ZO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbn1cbi50cmFuc2l0aW9uLnN3aW5nLm91dCxcbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIGRvd25cIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIHVwXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBsZWZ0XCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIHJpZ2h0XCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xufVxuLyogSW4gKi9cbkBrZXlmcmFtZXMgc3dpbmdJblgge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgxNWRlZyk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtNy41ZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyBzd2luZ0luWSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgzMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC0xNy41ZGVnKTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDcuNWRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gIH1cbn1cbi8qIE91dCAqL1xuQGtleWZyYW1lcyBzd2luZ091dFgge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtNy41ZGVnKTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDE3LjVkZWcpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3aW5nT3V0WSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgwZGVnKTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDcuNWRlZyk7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtMTBkZWcpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBab29tXG4tLS0tLS0tLS0tLS0tLS0qL1xuLnRyYW5zaXRpb24uem9vbS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW47XG59XG4udHJhbnNpdGlvbi56b29tLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xufVxuQGtleWZyYW1lcyB6b29tSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQGtleWZyYW1lcyB6b29tT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgU3RhdGljIEFuaW1hdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRW1waGFzaXNcbi0tLS0tLS0tLS0tLS0tLSovXG4uZmxhc2gudHJhbnNpdGlvbiB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFzaDtcbn1cbi5zaGFrZS50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcztcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlO1xufVxuLmJvdW5jZS50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcztcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbn1cbi50YWRhLnRyYW5zaXRpb24ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICBhbmltYXRpb24tbmFtZTogdGFkYTtcbn1cbi5wdWxzZS50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xufVxuLmppZ2dsZS50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcztcbiAgYW5pbWF0aW9uLW5hbWU6IGppZ2dsZTtcbn1cbi50cmFuc2l0aW9uLmdsb3cge1xuICBhbmltYXRpb24tZHVyYXRpb246IDIwMDBtcztcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuLnRyYW5zaXRpb24uZ2xvdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBnbG93O1xufVxuLyogRmxhc2ggKi9cbkBrZXlmcmFtZXMgZmxhc2gge1xuICAwJSxcbiAgNTAlLFxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDI1JSxcbiAgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4vKiBTaGFrZSAqL1xuQGtleWZyYW1lcyBzaGFrZSB7XG4gIDAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAlLFxuICAzMCUsXG4gIDUwJSxcbiAgNzAlLFxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cbiAgMjAlLFxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbn1cbi8qIEJvdW5jZSAqL1xuQGtleWZyYW1lcyBib3VuY2Uge1xuICAwJSxcbiAgMjAlLFxuICA1MCUsXG4gIDgwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCk7XG4gIH1cbn1cbi8qIFRhZGEgKi9cbkBrZXlmcmFtZXMgdGFkYSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDEwJSxcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuICAzMCUsXG4gIDUwJSxcbiAgNzAlLFxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gIH1cbiAgNDAlLFxuICA2MCUsXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMCk7XG4gIH1cbn1cbi8qIFB1bHNlICovXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4vKiBKaWdnbGUgKi9cbkBrZXlmcmFtZXMgamlnZ2xlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgfVxuICA2NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcbiAgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cbi8qIEdsb3cgKi9cbkBrZXlmcmFtZXMgZ2xvdyB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGQ0ZEO1xuICB9XG4gIDMwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjZDRDtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGQ0ZEO1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICBGb250IEF3ZXNvbWUgNC43LjAgYnkgQGRhdmVnYW5keSAtIGh0dHA6Ly9mb250YXdlc29tZS5pbyAtIEBmb250YXdlc29tZVxuICogIExpY2Vuc2UgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8vbGljZW5zZSAoRm9udDogU0lMIE9GTCAxLjEsIENTUzogTUlUIExpY2Vuc2UpXG4gKi9cbi8qIEZPTlQgUEFUSFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgc3JjOiB1cmwoJy4uLy4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/dj00LjcuMCcpO1xuICBzcmM6IHVybCgnLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9mb250cy9mb250YXdlc29tZS13ZWJmb250LmVvdD8jaWVmaXgmdj00LjcuMCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKCcuLi8uLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZjI/dj00LjcuMCcpIGZvcm1hdCgnd29mZjInKSwgdXJsKCcuLi8uLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PTQuNy4wJykgZm9ybWF0KCd3b2ZmJyksIHVybCgnLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9mb250cy9mb250YXdlc29tZS13ZWJmb250LnR0Zj92PTQuNy4wJykgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoJy4uLy4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC5zdmc/dj00LjcuMCNmb250YXdlc29tZXJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4uZmEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG4vKiBtYWtlcyB0aGUgZm9udCAzMyUgbGFyZ2VyIHJlbGF0aXZlIHRvIHRoZSBpY29uIGNvbnRhaW5lciAqL1xuLmZhLWxnIHtcbiAgZm9udC1zaXplOiAxLjMzMzMzMzMzZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjc1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAtMTUlO1xufVxuLmZhLTJ4IHtcbiAgZm9udC1zaXplOiAyZW07XG59XG4uZmEtM3gge1xuICBmb250LXNpemU6IDNlbTtcbn1cbi5mYS00eCB7XG4gIGZvbnQtc2l6ZTogNGVtO1xufVxuLmZhLTV4IHtcbiAgZm9udC1zaXplOiA1ZW07XG59XG4uZmEtZncge1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZmEtdWwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAyLjE0Mjg1NzE0ZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5mYS11bCA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZhLWxpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMi4xNDI4NTcxNGVtO1xuICB3aWR0aDogMi4xNDI4NTcxNGVtO1xuICB0b3A6IDAuMTQyODU3MTRlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmZhLWxpLmZhLWxnIHtcbiAgbGVmdDogLTEuODU3MTQyODZlbTtcbn1cbi5mYS1ib3JkZXIge1xuICBwYWRkaW5nOiAwLjJlbSAwLjI1ZW0gMC4xNWVtO1xuICBib3JkZXI6IHNvbGlkIDAuMDhlbSAjZWVlO1xuICBib3JkZXItcmFkaXVzOiAwLjFlbTtcbn1cbi5mYS1wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cbi5mYS1wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmZhLmZhLXB1bGwtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4uZmEuZmEtcHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbn1cbi8qIERlcHJlY2F0ZWQgYXMgb2YgNC40LjAgKi9cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmZhLnB1bGwtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4uZmEucHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbn1cbi5mYS1zcGluIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuLmZhLXB1bHNlIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG4gIGFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTtcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG4uZmEtcm90YXRlLTkwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKVwiO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLmZhLXJvdGF0ZS0xODAge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIpXCI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4uZmEtcm90YXRlLTI3MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MylcIjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cbi5mYS1mbGlwLWhvcml6b250YWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTAsIG1pcnJvcj0xKVwiO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xufVxuLmZhLWZsaXAtdmVydGljYWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKVwiO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuOnJvb3QgLmZhLXJvdGF0ZS05MCxcbjpyb290IC5mYS1yb3RhdGUtMTgwLFxuOnJvb3QgLmZhLXJvdGF0ZS0yNzAsXG46cm9vdCAuZmEtZmxpcC1ob3Jpem9udGFsLFxuOnJvb3QgLmZhLWZsaXAtdmVydGljYWwge1xuICBmaWx0ZXI6IG5vbmU7XG59XG4uZmEtc3RhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uZmEtc3RhY2stMXgsXG4uZmEtc3RhY2stMngge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZmEtc3RhY2stMXgge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbi5mYS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuLmZhLWludmVyc2Uge1xuICBjb2xvcjogI2ZmZjtcbn1cbi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlblxuICAgcmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cbi5mYS1nbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwMFwiO1xufVxuLmZhLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAxXCI7XG59XG4uZmEtc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG59XG4uZmEtZW52ZWxvcGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwM1wiO1xufVxuLmZhLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA0XCI7XG59XG4uZmEtc3RhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNVwiO1xufVxuLmZhLXN0YXItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNlwiO1xufVxuLmZhLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDdcIjtcbn1cbi5mYS1maWxtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA4XCI7XG59XG4uZmEtdGgtbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDlcIjtcbn1cbi5mYS10aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwYVwiO1xufVxuLmZhLXRoLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGJcIjtcbn1cbi5mYS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwY1wiO1xufVxuLmZhLXJlbW92ZTpiZWZvcmUsXG4uZmEtY2xvc2U6YmVmb3JlLFxuLmZhLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG59XG4uZmEtc2VhcmNoLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGVcIjtcbn1cbi5mYS1zZWFyY2gtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTBcIjtcbn1cbi5mYS1wb3dlci1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTFcIjtcbn1cbi5mYS1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTJcIjtcbn1cbi5mYS1nZWFyOmJlZm9yZSxcbi5mYS1jb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTNcIjtcbn1cbi5mYS10cmFzaC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE0XCI7XG59XG4uZmEtaG9tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxNVwiO1xufVxuLmZhLWZpbGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxNlwiO1xufVxuLmZhLWNsb2NrLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTdcIjtcbn1cbi5mYS1yb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE4XCI7XG59XG4uZmEtZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTlcIjtcbn1cbi5mYS1hcnJvdy1jaXJjbGUtby1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDFhXCI7XG59XG4uZmEtYXJyb3ctY2lyY2xlLW8tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWJcIjtcbn1cbi5mYS1pbmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxY1wiO1xufVxuLmZhLXBsYXktY2lyY2xlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWRcIjtcbn1cbi5mYS1yb3RhdGUtcmlnaHQ6YmVmb3JlLFxuLmZhLXJlcGVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxZVwiO1xufVxuLmZhLXJlZnJlc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjFcIjtcbn1cbi5mYS1saXN0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyMlwiO1xufVxuLmZhLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjNcIjtcbn1cbi5mYS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI0XCI7XG59XG4uZmEtaGVhZHBob25lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyNVwiO1xufVxuLmZhLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjZcIjtcbn1cbi5mYS12b2x1bWUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyN1wiO1xufVxuLmZhLXZvbHVtZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyOFwiO1xufVxuLmZhLXFyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyOVwiO1xufVxuLmZhLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmFcIjtcbn1cbi5mYS10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmJcIjtcbn1cbi5mYS10YWdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJjXCI7XG59XG4uZmEtYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyZFwiO1xufVxuLmZhLWJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJlXCI7XG59XG4uZmEtcHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmZcIjtcbn1cbi5mYS1jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzBcIjtcbn1cbi5mYS1mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMxXCI7XG59XG4uZmEtYm9sZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzMlwiO1xufVxuLmZhLWl0YWxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzM1wiO1xufVxuLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDM0XCI7XG59XG4uZmEtdGV4dC13aWR0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzNVwiO1xufVxuLmZhLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzZcIjtcbn1cbi5mYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzdcIjtcbn1cbi5mYS1hbGlnbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzOFwiO1xufVxuLmZhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzlcIjtcbn1cbi5mYS1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNhXCI7XG59XG4uZmEtZGVkZW50OmJlZm9yZSxcbi5mYS1vdXRkZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNiXCI7XG59XG4uZmEtaW5kZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNjXCI7XG59XG4uZmEtdmlkZW8tY2FtZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNkXCI7XG59XG4uZmEtcGhvdG86YmVmb3JlLFxuLmZhLWltYWdlOmJlZm9yZSxcbi5mYS1waWN0dXJlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cbi5mYS1wZW5jaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDBcIjtcbn1cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQxXCI7XG59XG4uZmEtYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQyXCI7XG59XG4uZmEtdGludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0M1wiO1xufVxuLmZhLWVkaXQ6YmVmb3JlLFxuLmZhLXBlbmNpbC1zcXVhcmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0NFwiO1xufVxuLmZhLXNoYXJlLXNxdWFyZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ1XCI7XG59XG4uZmEtY2hlY2stc3F1YXJlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDZcIjtcbn1cbi5mYS1hcnJvd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDdcIjtcbn1cbi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ4XCI7XG59XG4uZmEtZmFzdC1iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0OVwiO1xufVxuLmZhLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRhXCI7XG59XG4uZmEtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0YlwiO1xufVxuLmZhLXBhdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRjXCI7XG59XG4uZmEtc3RvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0ZFwiO1xufVxuLmZhLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNGVcIjtcbn1cbi5mYS1mYXN0LWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTBcIjtcbn1cbi5mYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTFcIjtcbn1cbi5mYS1lamVjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1MlwiO1xufVxuLmZhLWNoZXZyb24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1M1wiO1xufVxuLmZhLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjtcbn1cbi5mYS1wbHVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NVwiO1xufVxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NlwiO1xufVxuLmZhLXRpbWVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1N1wiO1xufVxuLmZhLWNoZWNrLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OFwiO1xufVxuLmZhLXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OVwiO1xufVxuLmZhLWluZm8tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDVhXCI7XG59XG4uZmEtY3Jvc3NoYWlyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1YlwiO1xufVxuLmZhLXRpbWVzLWNpcmNsZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDVjXCI7XG59XG4uZmEtY2hlY2stY2lyY2xlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWRcIjtcbn1cbi5mYS1iYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWVcIjtcbn1cbi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYwXCI7XG59XG4uZmEtYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjFcIjtcbn1cbi5mYS1hcnJvdy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2MlwiO1xufVxuLmZhLWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjNcIjtcbn1cbi5mYS1tYWlsLWZvcndhcmQ6YmVmb3JlLFxuLmZhLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY0XCI7XG59XG4uZmEtZXhwYW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY1XCI7XG59XG4uZmEtY29tcHJlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjZcIjtcbn1cbi5mYS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XG59XG4uZmEtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjhcIjtcbn1cbi5mYS1hc3RlcmlzazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2OVwiO1xufVxuLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2YVwiO1xufVxuLmZhLWdpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmJcIjtcbn1cbi5mYS1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZjXCI7XG59XG4uZmEtZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2ZFwiO1xufVxuLmZhLWV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2ZVwiO1xufVxuLmZhLWV5ZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3MFwiO1xufVxuLmZhLXdhcm5pbmc6YmVmb3JlLFxuLmZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDcxXCI7XG59XG4uZmEtcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzJcIjtcbn1cbi5mYS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3M1wiO1xufVxuLmZhLXJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NFwiO1xufVxuLmZhLWNvbW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzVcIjtcbn1cbi5mYS1tYWduZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzZcIjtcbn1cbi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG59XG4uZmEtY2hldnJvbi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG59XG4uZmEtcmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3OVwiO1xufVxuLmZhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2FcIjtcbn1cbi5mYS1mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2JcIjtcbn1cbi5mYS1mb2xkZXItb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3Y1wiO1xufVxuLmZhLWFycm93cy12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdkXCI7XG59XG4uZmEtYXJyb3dzLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2VcIjtcbn1cbi5mYS1iYXItY2hhcnQtbzpiZWZvcmUsXG4uZmEtYmFyLWNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDgwXCI7XG59XG4uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODFcIjtcbn1cbi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODJcIjtcbn1cbi5mYS1jYW1lcmEtcmV0cm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODNcIjtcbn1cbi5mYS1rZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODRcIjtcbn1cbi5mYS1nZWFyczpiZWZvcmUsXG4uZmEtY29nczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NVwiO1xufVxuLmZhLWNvbW1lbnRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg2XCI7XG59XG4uZmEtdGh1bWJzLW8tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODdcIjtcbn1cbi5mYS10aHVtYnMtby1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg4XCI7XG59XG4uZmEtc3Rhci1oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg5XCI7XG59XG4uZmEtaGVhcnQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4YVwiO1xufVxuLmZhLXNpZ24tb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhiXCI7XG59XG4uZmEtbGlua2VkaW4tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhjXCI7XG59XG4uZmEtdGh1bWItdGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4ZFwiO1xufVxuLmZhLWV4dGVybmFsLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOGVcIjtcbn1cbi5mYS1zaWduLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkwXCI7XG59XG4uZmEtdHJvcGh5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkxXCI7XG59XG4uZmEtZ2l0aHViLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5MlwiO1xufVxuLmZhLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5M1wiO1xufVxuLmZhLWxlbW9uLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTRcIjtcbn1cbi5mYS1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5NVwiO1xufVxuLmZhLXNxdWFyZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk2XCI7XG59XG4uZmEtYm9va21hcmstbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5N1wiO1xufVxuLmZhLXBob25lLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5OFwiO1xufVxuLmZhLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTlcIjtcbn1cbi5mYS1mYWNlYm9vay1mOmJlZm9yZSxcbi5mYS1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5YVwiO1xufVxuLmZhLWdpdGh1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5YlwiO1xufVxuLmZhLXVubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5Y1wiO1xufVxuLmZhLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDlkXCI7XG59XG4uZmEtZmVlZDpiZWZvcmUsXG4uZmEtcnNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDllXCI7XG59XG4uZmEtaGRkLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTBcIjtcbn1cbi5mYS1idWxsaG9ybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMVwiO1xufVxuLmZhLWJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjNcIjtcbn1cbi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhM1wiO1xufVxuLmZhLWhhbmQtby1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNFwiO1xufVxuLmZhLWhhbmQtby1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE1XCI7XG59XG4uZmEtaGFuZC1vLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE2XCI7XG59XG4uZmEtaGFuZC1vLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTdcIjtcbn1cbi5mYS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhOFwiO1xufVxuLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhOVwiO1xufVxuLmZhLWFycm93LWNpcmNsZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhYVwiO1xufVxuLmZhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFiXCI7XG59XG4uZmEtZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWNcIjtcbn1cbi5mYS13cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWRcIjtcbn1cbi5mYS10YXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhZVwiO1xufVxuLmZhLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBiMFwiO1xufVxuLmZhLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBiMVwiO1xufVxuLmZhLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYjJcIjtcbn1cbi5mYS1ncm91cDpiZWZvcmUsXG4uZmEtdXNlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzBcIjtcbn1cbi5mYS1jaGFpbjpiZWZvcmUsXG4uZmEtbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMVwiO1xufVxuLmZhLWNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMyXCI7XG59XG4uZmEtZmxhc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzNcIjtcbn1cbi5mYS1jdXQ6YmVmb3JlLFxuLmZhLXNjaXNzb3JzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM0XCI7XG59XG4uZmEtY29weTpiZWZvcmUsXG4uZmEtZmlsZXMtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjNVwiO1xufVxuLmZhLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjNlwiO1xufVxuLmZhLXNhdmU6YmVmb3JlLFxuLmZhLWZsb3BweS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM3XCI7XG59XG4uZmEtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM4XCI7XG59XG4uZmEtbmF2aWNvbjpiZWZvcmUsXG4uZmEtcmVvcmRlcjpiZWZvcmUsXG4uZmEtYmFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOVwiO1xufVxuLmZhLWxpc3QtdWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwY2FcIjtcbn1cbi5mYS1saXN0LW9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNiXCI7XG59XG4uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjY1wiO1xufVxuLmZhLXVuZGVybGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjZFwiO1xufVxuLmZhLXRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNlXCI7XG59XG4uZmEtbWFnaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDBcIjtcbn1cbi5mYS10cnVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkMVwiO1xufVxuLmZhLXBpbnRlcmVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkMlwiO1xufVxuLmZhLXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDNcIjtcbn1cbi5mYS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDRcIjtcbn1cbi5mYS1nb29nbGUtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkNVwiO1xufVxuLmZhLW1vbmV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ2XCI7XG59XG4uZmEtY2FyZXQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuLmZhLWNhcmV0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG59XG4uZmEtY2FyZXQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkOVwiO1xufVxuLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRhXCI7XG59XG4uZmEtY29sdW1uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkYlwiO1xufVxuLmZhLXVuc29ydGVkOmJlZm9yZSxcbi5mYS1zb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRjXCI7XG59XG4uZmEtc29ydC1kb3duOmJlZm9yZSxcbi5mYS1zb3J0LWRlc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGRcIjtcbn1cbi5mYS1zb3J0LXVwOmJlZm9yZSxcbi5mYS1zb3J0LWFzYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkZVwiO1xufVxuLmZhLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUwXCI7XG59XG4uZmEtbGlua2VkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTFcIjtcbn1cbi5mYS1yb3RhdGUtbGVmdDpiZWZvcmUsXG4uZmEtdW5kbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMlwiO1xufVxuLmZhLWxlZ2FsOmJlZm9yZSxcbi5mYS1nYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlM1wiO1xufVxuLmZhLWRhc2hib2FyZDpiZWZvcmUsXG4uZmEtdGFjaG9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlNFwiO1xufVxuLmZhLWNvbW1lbnQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlNVwiO1xufVxuLmZhLWNvbW1lbnRzLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTZcIjtcbn1cbi5mYS1mbGFzaDpiZWZvcmUsXG4uZmEtYm9sdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlN1wiO1xufVxuLmZhLXNpdGVtYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZThcIjtcbn1cbi5mYS11bWJyZWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlOVwiO1xufVxuLmZhLXBhc3RlOmJlZm9yZSxcbi5mYS1jbGlwYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWFcIjtcbn1cbi5mYS1saWdodGJ1bGItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlYlwiO1xufVxuLmZhLWV4Y2hhbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGVjXCI7XG59XG4uZmEtY2xvdWQtZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWRcIjtcbn1cbi5mYS1jbG91ZC11cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWVcIjtcbn1cbi5mYS11c2VyLW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYwXCI7XG59XG4uZmEtc3RldGhvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjFcIjtcbn1cbi5mYS1zdWl0Y2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmMlwiO1xufVxuLmZhLWJlbGwtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMlwiO1xufVxuLmZhLWNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmNFwiO1xufVxuLmZhLWN1dGxlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjVcIjtcbn1cbi5mYS1maWxlLXRleHQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmNlwiO1xufVxuLmZhLWJ1aWxkaW5nLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjdcIjtcbn1cbi5mYS1ob3NwaXRhbC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY4XCI7XG59XG4uZmEtYW1idWxhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY5XCI7XG59XG4uZmEtbWVka2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZhXCI7XG59XG4uZmEtZmlnaHRlci1qZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmJcIjtcbn1cbi5mYS1iZWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZjXCI7XG59XG4uZmEtaC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmRcIjtcbn1cbi5mYS1wbHVzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmZVwiO1xufVxuLmZhLWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAwXCI7XG59XG4uZmEtYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAxXCI7XG59XG4uZmEtYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAyXCI7XG59XG4uZmEtYW5nbGUtZG91YmxlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDNcIjtcbn1cbi5mYS1hbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA0XCI7XG59XG4uZmEtYW5nbGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDVcIjtcbn1cbi5mYS1hbmdsZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNlwiO1xufVxuLmZhLWFuZ2xlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDdcIjtcbn1cbi5mYS1kZXNrdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA4XCI7XG59XG4uZmEtbGFwdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA5XCI7XG59XG4uZmEtdGFibGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTBhXCI7XG59XG4uZmEtbW9iaWxlLXBob25lOmJlZm9yZSxcbi5mYS1tb2JpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGJcIjtcbn1cbi5mYS1jaXJjbGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwY1wiO1xufVxuLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGRcIjtcbn1cbi5mYS1xdW90ZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwZVwiO1xufVxuLmZhLXNwaW5uZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTBcIjtcbn1cbi5mYS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTFcIjtcbn1cbi5mYS1tYWlsLXJlcGx5OmJlZm9yZSxcbi5mYS1yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExMlwiO1xufVxuLmZhLWdpdGh1Yi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTNcIjtcbn1cbi5mYS1mb2xkZXItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExNFwiO1xufVxuLmZhLWZvbGRlci1vcGVuLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTVcIjtcbn1cbi5mYS1zbWlsZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTE4XCI7XG59XG4uZmEtZnJvd24tbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExOVwiO1xufVxuLmZhLW1laC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTFhXCI7XG59XG4uZmEtZ2FtZXBhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExYlwiO1xufVxuLmZhLWtleWJvYXJkLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWNcIjtcbn1cbi5mYS1mbGFnLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWRcIjtcbn1cbi5mYS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExZVwiO1xufVxuLmZhLXRlcm1pbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTIwXCI7XG59XG4uZmEtY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyMVwiO1xufVxuLmZhLW1haWwtcmVwbHktYWxsOmJlZm9yZSxcbi5mYS1yZXBseS1hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjJcIjtcbn1cbi5mYS1zdGFyLWhhbGYtZW1wdHk6YmVmb3JlLFxuLmZhLXN0YXItaGFsZi1mdWxsOmJlZm9yZSxcbi5mYS1zdGFyLWhhbGYtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyM1wiO1xufVxuLmZhLWxvY2F0aW9uLWFycm93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI0XCI7XG59XG4uZmEtY3JvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNVwiO1xufVxuLmZhLWNvZGUtZm9yazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNlwiO1xufVxuLmZhLXVubGluazpiZWZvcmUsXG4uZmEtY2hhaW4tYnJva2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI3XCI7XG59XG4uZmEtcXVlc3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjhcIjtcbn1cbi5mYS1pbmZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI5XCI7XG59XG4uZmEtZXhjbGFtYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmFcIjtcbn1cbi5mYS1zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyYlwiO1xufVxuLmZhLXN1YnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyY1wiO1xufVxuLmZhLWVyYXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyZFwiO1xufVxuLmZhLXB1enpsZS1waWVjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyZVwiO1xufVxuLmZhLW1pY3JvcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzBcIjtcbn1cbi5mYS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMxXCI7XG59XG4uZmEtc2hpZWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMyXCI7XG59XG4uZmEtY2FsZW5kYXItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzM1wiO1xufVxuLmZhLWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM0XCI7XG59XG4uZmEtcm9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM1XCI7XG59XG4uZmEtbWF4Y2RuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM2XCI7XG59XG4uZmEtY2hldnJvbi1jaXJjbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzN1wiO1xufVxuLmZhLWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM4XCI7XG59XG4uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzlcIjtcbn1cbi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNhXCI7XG59XG4uZmEtaHRtbDU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2JcIjtcbn1cbi5mYS1jc3MzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNjXCI7XG59XG4uZmEtYW5jaG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNkXCI7XG59XG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzZVwiO1xufVxuLmZhLWJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQwXCI7XG59XG4uZmEtZWxsaXBzaXMtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0MVwiO1xufVxuLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDJcIjtcbn1cbi5mYS1yc3Mtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQzXCI7XG59XG4uZmEtcGxheS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDRcIjtcbn1cbi5mYS10aWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDVcIjtcbn1cbi5mYS1taW51cy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDZcIjtcbn1cbi5mYS1taW51cy1zcXVhcmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0N1wiO1xufVxuLmZhLWxldmVsLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ4XCI7XG59XG4uZmEtbGV2ZWwtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0OVwiO1xufVxuLmZhLWNoZWNrLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YVwiO1xufVxuLmZhLXBlbmNpbC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGJcIjtcbn1cbi5mYS1leHRlcm5hbC1saW5rLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0Y1wiO1xufVxuLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZFwiO1xufVxuLmZhLWNvbXBhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGVcIjtcbn1cbi5mYS10b2dnbGUtZG93bjpiZWZvcmUsXG4uZmEtY2FyZXQtc3F1YXJlLW8tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MFwiO1xufVxuLmZhLXRvZ2dsZS11cDpiZWZvcmUsXG4uZmEtY2FyZXQtc3F1YXJlLW8tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTFcIjtcbn1cbi5mYS10b2dnbGUtcmlnaHQ6YmVmb3JlLFxuLmZhLWNhcmV0LXNxdWFyZS1vLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUyXCI7XG59XG4uZmEtZXVybzpiZWZvcmUsXG4uZmEtZXVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUzXCI7XG59XG4uZmEtZ2JwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU0XCI7XG59XG4uZmEtZG9sbGFyOmJlZm9yZSxcbi5mYS11c2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTVcIjtcbn1cbi5mYS1ydXBlZTpiZWZvcmUsXG4uZmEtaW5yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU2XCI7XG59XG4uZmEtY255OmJlZm9yZSxcbi5mYS1ybWI6YmVmb3JlLFxuLmZhLXllbjpiZWZvcmUsXG4uZmEtanB5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU3XCI7XG59XG4uZmEtcnVibGU6YmVmb3JlLFxuLmZhLXJvdWJsZTpiZWZvcmUsXG4uZmEtcnViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU4XCI7XG59XG4uZmEtd29uOmJlZm9yZSxcbi5mYS1rcnc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTlcIjtcbn1cbi5mYS1iaXRjb2luOmJlZm9yZSxcbi5mYS1idGM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWFcIjtcbn1cbi5mYS1maWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTViXCI7XG59XG4uZmEtZmlsZS10ZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVjXCI7XG59XG4uZmEtc29ydC1hbHBoYS1hc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWRcIjtcbn1cbi5mYS1zb3J0LWFscGhhLWRlc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWVcIjtcbn1cbi5mYS1zb3J0LWFtb3VudC1hc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjBcIjtcbn1cbi5mYS1zb3J0LWFtb3VudC1kZXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYxXCI7XG59XG4uZmEtc29ydC1udW1lcmljLWFzYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2MlwiO1xufVxuLmZhLXNvcnQtbnVtZXJpYy1kZXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYzXCI7XG59XG4uZmEtdGh1bWJzLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY0XCI7XG59XG4uZmEtdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjVcIjtcbn1cbi5mYS15b3V0dWJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2NlwiO1xufVxuLmZhLXlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjdcIjtcbn1cbi5mYS14aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY4XCI7XG59XG4uZmEteGluZy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjlcIjtcbn1cbi5mYS15b3V0dWJlLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmFcIjtcbn1cbi5mYS1kcm9wYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTZiXCI7XG59XG4uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmNcIjtcbn1cbi5mYS1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmRcIjtcbn1cbi5mYS1mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmVcIjtcbn1cbi5mYS1hZG46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzBcIjtcbn1cbi5mYS1iaXRidWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzFcIjtcbn1cbi5mYS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTcyXCI7XG59XG4uZmEtdHVtYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTczXCI7XG59XG4uZmEtdHVtYmxyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3NFwiO1xufVxuLmZhLWxvbmctYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3NVwiO1xufVxuLmZhLWxvbmctYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzZcIjtcbn1cbi5mYS1sb25nLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzdcIjtcbn1cbi5mYS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc4XCI7XG59XG4uZmEtYXBwbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzlcIjtcbn1cbi5mYS13aW5kb3dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdhXCI7XG59XG4uZmEtYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3YlwiO1xufVxuLmZhLWxpbnV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdjXCI7XG59XG4uZmEtZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2RcIjtcbn1cbi5mYS1za3lwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3ZVwiO1xufVxuLmZhLWZvdXJzcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODBcIjtcbn1cbi5mYS10cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODFcIjtcbn1cbi5mYS1mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODJcIjtcbn1cbi5mYS1tYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTgzXCI7XG59XG4uZmEtZ2l0dGlwOmJlZm9yZSxcbi5mYS1ncmF0aXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4NFwiO1xufVxuLmZhLXN1bi1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg1XCI7XG59XG4uZmEtbW9vbi1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg2XCI7XG59XG4uZmEtYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4N1wiO1xufVxuLmZhLWJ1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4OFwiO1xufVxuLmZhLXZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg5XCI7XG59XG4uZmEtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGFcIjtcbn1cbi5mYS1yZW5yZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGJcIjtcbn1cbi5mYS1wYWdlbGluZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGNcIjtcbn1cbi5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4ZFwiO1xufVxuLmZhLWFycm93LWNpcmNsZS1vLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThlXCI7XG59XG4uZmEtYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5MFwiO1xufVxuLmZhLXRvZ2dsZS1sZWZ0OmJlZm9yZSxcbi5mYS1jYXJldC1zcXVhcmUtby1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkxXCI7XG59XG4uZmEtZG90LWNpcmNsZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG4uZmEtd2hlZWxjaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5M1wiO1xufVxuLmZhLXZpbWVvLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5NFwiO1xufVxuLmZhLXR1cmtpc2gtbGlyYTpiZWZvcmUsXG4uZmEtdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk1XCI7XG59XG4uZmEtcGx1cy1zcXVhcmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5NlwiO1xufVxuLmZhLXNwYWNlLXNodXR0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTdcIjtcbn1cbi5mYS1zbGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OFwiO1xufVxuLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OVwiO1xufVxuLmZhLXdvcmRwcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5YVwiO1xufVxuLmZhLW9wZW5pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5YlwiO1xufVxuLmZhLWluc3RpdHV0aW9uOmJlZm9yZSxcbi5mYS1iYW5rOmJlZm9yZSxcbi5mYS11bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTljXCI7XG59XG4uZmEtbW9ydGFyLWJvYXJkOmJlZm9yZSxcbi5mYS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5ZFwiO1xufVxuLmZhLXlhaG9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTllXCI7XG59XG4uZmEtZ29vZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWEwXCI7XG59XG4uZmEtcmVkZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWExXCI7XG59XG4uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhMlwiO1xufVxuLmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhM1wiO1xufVxuLmZhLXN0dW1ibGV1cG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE0XCI7XG59XG4uZmEtZGVsaWNpb3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE1XCI7XG59XG4uZmEtZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhNlwiO1xufVxuLmZhLXBpZWQtcGlwZXItcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTdcIjtcbn1cbi5mYS1waWVkLXBpcGVyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhOFwiO1xufVxuLmZhLWRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhOVwiO1xufVxuLmZhLWpvb21sYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhYVwiO1xufVxuLmZhLWxhbmd1YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFiXCI7XG59XG4uZmEtZmF4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFjXCI7XG59XG4uZmEtYnVpbGRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWRcIjtcbn1cbi5mYS1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhZVwiO1xufVxuLmZhLXBhdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMFwiO1xufVxuLmZhLXNwb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIxXCI7XG59XG4uZmEtY3ViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMlwiO1xufVxuLmZhLWN1YmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIzXCI7XG59XG4uZmEtYmVoYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiNFwiO1xufVxuLmZhLWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI1XCI7XG59XG4uZmEtc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjZcIjtcbn1cbi5mYS1zdGVhbS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjdcIjtcbn1cbi5mYS1yZWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI4XCI7XG59XG4uZmEtYXV0b21vYmlsZTpiZWZvcmUsXG4uZmEtY2FyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI5XCI7XG59XG4uZmEtY2FiOmJlZm9yZSxcbi5mYS10YXhpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJhXCI7XG59XG4uZmEtdHJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiYlwiO1xufVxuLmZhLXNwb3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmNcIjtcbn1cbi5mYS1kZXZpYW50YXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJkXCI7XG59XG4uZmEtc291bmRjbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiZVwiO1xufVxuLmZhLWRhdGFiYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMwXCI7XG59XG4uZmEtZmlsZS1wZGYtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMVwiO1xufVxuLmZhLWZpbGUtd29yZC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMyXCI7XG59XG4uZmEtZmlsZS1leGNlbC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMzXCI7XG59XG4uZmEtZmlsZS1wb3dlcnBvaW50LW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzRcIjtcbn1cbi5mYS1maWxlLXBob3RvLW86YmVmb3JlLFxuLmZhLWZpbGUtcGljdHVyZS1vOmJlZm9yZSxcbi5mYS1maWxlLWltYWdlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzVcIjtcbn1cbi5mYS1maWxlLXppcC1vOmJlZm9yZSxcbi5mYS1maWxlLWFyY2hpdmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjNlwiO1xufVxuLmZhLWZpbGUtc291bmQtbzpiZWZvcmUsXG4uZmEtZmlsZS1hdWRpby1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM3XCI7XG59XG4uZmEtZmlsZS1tb3ZpZS1vOmJlZm9yZSxcbi5mYS1maWxlLXZpZGVvLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzhcIjtcbn1cbi5mYS1maWxlLWNvZGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjOVwiO1xufVxuLmZhLXZpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2FcIjtcbn1cbi5mYS1jb2RlcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNiXCI7XG59XG4uZmEtanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2NcIjtcbn1cbi5mYS1saWZlLWJvdXk6YmVmb3JlLFxuLmZhLWxpZmUtYnVveTpiZWZvcmUsXG4uZmEtbGlmZS1zYXZlcjpiZWZvcmUsXG4uZmEtc3VwcG9ydDpiZWZvcmUsXG4uZmEtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNkXCI7XG59XG4uZmEtY2lyY2xlLW8tbm90Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2VcIjtcbn1cbi5mYS1yYTpiZWZvcmUsXG4uZmEtcmVzaXN0YW5jZTpiZWZvcmUsXG4uZmEtcmViZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDBcIjtcbn1cbi5mYS1nZTpiZWZvcmUsXG4uZmEtZW1waXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQxXCI7XG59XG4uZmEtZ2l0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkMlwiO1xufVxuLmZhLWdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkM1wiO1xufVxuLmZhLXktY29tYmluYXRvci1zcXVhcmU6YmVmb3JlLFxuLmZhLXljLXNxdWFyZTpiZWZvcmUsXG4uZmEtaGFja2VyLW5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDRcIjtcbn1cbi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ1XCI7XG59XG4uZmEtcXE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDZcIjtcbn1cbi5mYS13ZWNoYXQ6YmVmb3JlLFxuLmZhLXdlaXhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkN1wiO1xufVxuLmZhLXNlbmQ6YmVmb3JlLFxuLmZhLXBhcGVyLXBsYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ4XCI7XG59XG4uZmEtc2VuZC1vOmJlZm9yZSxcbi5mYS1wYXBlci1wbGFuZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ5XCI7XG59XG4uZmEtaGlzdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkYVwiO1xufVxuLmZhLWNpcmNsZS10aGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRiXCI7XG59XG4uZmEtaGVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRjXCI7XG59XG4uZmEtcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRkXCI7XG59XG4uZmEtc2xpZGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkZVwiO1xufVxuLmZhLXNoYXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMFwiO1xufVxuLmZhLXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTFcIjtcbn1cbi5mYS1ib21iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWUyXCI7XG59XG4uZmEtc29jY2VyLWJhbGwtbzpiZWZvcmUsXG4uZmEtZnV0Ym9sLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTNcIjtcbn1cbi5mYS10dHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTRcIjtcbn1cbi5mYS1iaW5vY3VsYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU1XCI7XG59XG4uZmEtcGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNlwiO1xufVxuLmZhLXNsaWRlc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTdcIjtcbn1cbi5mYS10d2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZThcIjtcbn1cbi5mYS15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU5XCI7XG59XG4uZmEtbmV3c3BhcGVyLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWFcIjtcbn1cbi5mYS13aWZpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWViXCI7XG59XG4uZmEtY2FsY3VsYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlY1wiO1xufVxuLmZhLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlZFwiO1xufVxuLmZhLWdvb2dsZS13YWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWVcIjtcbn1cbi5mYS1jYy12aXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYwXCI7XG59XG4uZmEtY2MtbWFzdGVyY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMVwiO1xufVxuLmZhLWNjLWRpc2NvdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYyXCI7XG59XG4uZmEtY2MtYW1leDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmM1wiO1xufVxuLmZhLWNjLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNFwiO1xufVxuLmZhLWNjLXN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNVwiO1xufVxuLmZhLWJlbGwtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjZcIjtcbn1cbi5mYS1iZWxsLXNsYXNoLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjdcIjtcbn1cbi5mYS10cmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOFwiO1xufVxuLmZhLWNvcHlyaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOVwiO1xufVxuLmZhLWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZhXCI7XG59XG4uZmEtZXllZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmYlwiO1xufVxuLmZhLXBhaW50LWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZjXCI7XG59XG4uZmEtYmlydGhkYXktY2FrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmZFwiO1xufVxuLmZhLWFyZWEtY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZmVcIjtcbn1cbi5mYS1waWUtY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDBcIjtcbn1cbi5mYS1saW5lLWNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAxXCI7XG59XG4uZmEtbGFzdGZtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAyXCI7XG59XG4uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwM1wiO1xufVxuLmZhLXRvZ2dsZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDRcIjtcbn1cbi5mYS10b2dnbGUtb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDVcIjtcbn1cbi5mYS1iaWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA2XCI7XG59XG4uZmEtYnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA3XCI7XG59XG4uZmEtaW94aG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwOFwiO1xufVxuLmZhLWFuZ2VsbGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwOVwiO1xufVxuLmZhLWNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBhXCI7XG59XG4uZmEtc2hla2VsOmJlZm9yZSxcbi5mYS1zaGVxZWw6YmVmb3JlLFxuLmZhLWlsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYlwiO1xufVxuLmZhLW1lYW5wYXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBjXCI7XG59XG4uZmEtYnV5c2VsbGFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwZFwiO1xufVxuLmZhLWNvbm5lY3RkZXZlbG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBlXCI7XG59XG4uZmEtZGFzaGN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTBcIjtcbn1cbi5mYS1mb3J1bWJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxMVwiO1xufVxuLmZhLWxlYW5wdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTJcIjtcbn1cbi5mYS1zZWxsc3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTNcIjtcbn1cbi5mYS1zaGlydHNpbmJ1bGs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTRcIjtcbn1cbi5mYS1zaW1wbHlidWlsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxNVwiO1xufVxuLmZhLXNreWF0bGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE2XCI7XG59XG4uZmEtY2FydC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE3XCI7XG59XG4uZmEtY2FydC1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE4XCI7XG59XG4uZmEtZGlhbW9uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxOVwiO1xufVxuLmZhLXNoaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWFcIjtcbn1cbi5mYS11c2VyLXNlY3JldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxYlwiO1xufVxuLmZhLW1vdG9yY3ljbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWNcIjtcbn1cbi5mYS1zdHJlZXQtdmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxZFwiO1xufVxuLmZhLWhlYXJ0YmVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxZVwiO1xufVxuLmZhLXZlbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjIxXCI7XG59XG4uZmEtbWFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyMlwiO1xufVxuLmZhLW1lcmN1cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjNcIjtcbn1cbi5mYS1pbnRlcnNleDpiZWZvcmUsXG4uZmEtdHJhbnNnZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjRcIjtcbn1cbi5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjVcIjtcbn1cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjZcIjtcbn1cbi5mYS1tYXJzLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyN1wiO1xufVxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjhcIjtcbn1cbi5mYS1tYXJzLXN0cm9rZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOVwiO1xufVxuLmZhLW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmFcIjtcbn1cbi5mYS1tYXJzLXN0cm9rZS1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJiXCI7XG59XG4uZmEtbmV1dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJjXCI7XG59XG4uZmEtZ2VuZGVybGVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyZFwiO1xufVxuLmZhLWZhY2Vib29rLW9mZmljaWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjMwXCI7XG59XG4uZmEtcGludGVyZXN0LXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzFcIjtcbn1cbi5mYS13aGF0c2FwcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzMlwiO1xufVxuLmZhLXNlcnZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzM1wiO1xufVxuLmZhLXVzZXItcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNFwiO1xufVxuLmZhLXVzZXItdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cbi5mYS1ob3RlbDpiZWZvcmUsXG4uZmEtYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM2XCI7XG59XG4uZmEtdmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzN1wiO1xufVxuLmZhLXRyYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM4XCI7XG59XG4uZmEtc3Vid2F5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM5XCI7XG59XG4uZmEtbWVkaXVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjNhXCI7XG59XG4uZmEteWM6YmVmb3JlLFxuLmZhLXktY29tYmluYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzYlwiO1xufVxuLmZhLW9wdGluLW1vbnN0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyM2NcIjtcbn1cbi5mYS1vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzZFwiO1xufVxuLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzZVwiO1xufVxuLmZhLWJhdHRlcnktNDpiZWZvcmUsXG4uZmEtYmF0dGVyeTpiZWZvcmUsXG4uZmEtYmF0dGVyeS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQwXCI7XG59XG4uZmEtYmF0dGVyeS0zOmJlZm9yZSxcbi5mYS1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQxXCI7XG59XG4uZmEtYmF0dGVyeS0yOmJlZm9yZSxcbi5mYS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDJcIjtcbn1cbi5mYS1iYXR0ZXJ5LTE6YmVmb3JlLFxuLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0M1wiO1xufVxuLmZhLWJhdHRlcnktMDpiZWZvcmUsXG4uZmEtYmF0dGVyeS1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0NFwiO1xufVxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDVcIjtcbn1cbi5mYS1pLWN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0NlwiO1xufVxuLmZhLW9iamVjdC1ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0N1wiO1xufVxuLmZhLW9iamVjdC11bmdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ4XCI7XG59XG4uZmEtc3RpY2t5LW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDlcIjtcbn1cbi5mYS1zdGlja3ktbm90ZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRhXCI7XG59XG4uZmEtY2MtamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRiXCI7XG59XG4uZmEtY2MtZGluZXJzLWNsdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGNcIjtcbn1cbi5mYS1jbG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZFwiO1xufVxuLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGVcIjtcbn1cbi5mYS1ob3VyZ2xhc3MtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1MFwiO1xufVxuLmZhLWhvdXJnbGFzcy0xOmJlZm9yZSxcbi5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTFcIjtcbn1cbi5mYS1ob3VyZ2xhc3MtMjpiZWZvcmUsXG4uZmEtaG91cmdsYXNzLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTJcIjtcbn1cbi5mYS1ob3VyZ2xhc3MtMzpiZWZvcmUsXG4uZmEtaG91cmdsYXNzLWVuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1M1wiO1xufVxuLmZhLWhvdXJnbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NFwiO1xufVxuLmZhLWhhbmQtZ3JhYi1vOmJlZm9yZSxcbi5mYS1oYW5kLXJvY2stbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NVwiO1xufVxuLmZhLWhhbmQtc3RvcC1vOmJlZm9yZSxcbi5mYS1oYW5kLXBhcGVyLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTZcIjtcbn1cbi5mYS1oYW5kLXNjaXNzb3JzLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTdcIjtcbn1cbi5mYS1oYW5kLWxpemFyZC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU4XCI7XG59XG4uZmEtaGFuZC1zcG9jay1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU5XCI7XG59XG4uZmEtaGFuZC1wb2ludGVyLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWFcIjtcbn1cbi5mYS1oYW5kLXBlYWNlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWJcIjtcbn1cbi5mYS10cmFkZW1hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWNcIjtcbn1cbi5mYS1yZWdpc3RlcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjVkXCI7XG59XG4uZmEtY3JlYXRpdmUtY29tbW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1ZVwiO1xufVxuLmZhLWdnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYwXCI7XG59XG4uZmEtZ2ctY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYxXCI7XG59XG4uZmEtdHJpcGFkdmlzb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjJcIjtcbn1cbi5mYS1vZG5va2xhc3NuaWtpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYzXCI7XG59XG4uZmEtb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjRcIjtcbn1cbi5mYS1nZXQtcG9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY1XCI7XG59XG4uZmEtd2lraXBlZGlhLXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjZcIjtcbn1cbi5mYS1zYWZhcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjdcIjtcbn1cbi5mYS1jaHJvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjhcIjtcbn1cbi5mYS1maXJlZm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY5XCI7XG59XG4uZmEtb3BlcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmFcIjtcbn1cbi5mYS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2YlwiO1xufVxuLmZhLXR2OmJlZm9yZSxcbi5mYS10ZWxldmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjZjXCI7XG59XG4uZmEtY29udGFvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjZkXCI7XG59XG4uZmEtNTAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmVcIjtcbn1cbi5mYS1hbWF6b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzBcIjtcbn1cbi5mYS1jYWxlbmRhci1wbHVzLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzFcIjtcbn1cbi5mYS1jYWxlbmRhci1taW51cy1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjcyXCI7XG59XG4uZmEtY2FsZW5kYXItdGltZXMtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3M1wiO1xufVxuLmZhLWNhbGVuZGFyLWNoZWNrLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzRcIjtcbn1cbi5mYS1pbmR1c3RyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3NVwiO1xufVxuLmZhLW1hcC1waW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzZcIjtcbn1cbi5mYS1tYXAtc2lnbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzdcIjtcbn1cbi5mYS1tYXAtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3OFwiO1xufVxuLmZhLW1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3OVwiO1xufVxuLmZhLWNvbW1lbnRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2FcIjtcbn1cbi5mYS1jb21tZW50aW5nLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2JcIjtcbn1cbi5mYS1ob3V6ejpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3Y1wiO1xufVxuLmZhLXZpbWVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjdkXCI7XG59XG4uZmEtYmxhY2stdGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjdlXCI7XG59XG4uZmEtZm9udGljb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjgwXCI7XG59XG4uZmEtcmVkZGl0LWFsaWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjgxXCI7XG59XG4uZmEtZWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4MlwiO1xufVxuLmZhLWNyZWRpdC1jYXJkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4M1wiO1xufVxuLmZhLWNvZGllcGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjg0XCI7XG59XG4uZmEtbW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4NVwiO1xufVxuLmZhLWZvcnQtYXdlc29tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4NlwiO1xufVxuLmZhLXVzYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4N1wiO1xufVxuLmZhLXByb2R1Y3QtaHVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4OFwiO1xufVxuLmZhLW1peGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjg5XCI7XG59XG4uZmEtc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjhhXCI7XG59XG4uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjhiXCI7XG59XG4uZmEtcGF1c2UtY2lyY2xlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGNcIjtcbn1cbi5mYS1zdG9wLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4ZFwiO1xufVxuLmZhLXN0b3AtY2lyY2xlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGVcIjtcbn1cbi5mYS1zaG9wcGluZy1iYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTBcIjtcbn1cbi5mYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTFcIjtcbn1cbi5mYS1oYXNodGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjkyXCI7XG59XG4uZmEtYmx1ZXRvb3RoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjkzXCI7XG59XG4uZmEtYmx1ZXRvb3RoLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTRcIjtcbn1cbi5mYS1wZXJjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk1XCI7XG59XG4uZmEtZ2l0bGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk2XCI7XG59XG4uZmEtd3BiZWdpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5N1wiO1xufVxuLmZhLXdwZm9ybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOThcIjtcbn1cbi5mYS1lbnZpcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTlcIjtcbn1cbi5mYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjlhXCI7XG59XG4uZmEtd2hlZWxjaGFpci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOWJcIjtcbn1cbi5mYS1xdWVzdGlvbi1jaXJjbGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5Y1wiO1xufVxuLmZhLWJsaW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjlkXCI7XG59XG4uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOWVcIjtcbn1cbi5mYS12b2x1bWUtY29udHJvbC1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhMFwiO1xufVxuLmZhLWJyYWlsbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTFcIjtcbn1cbi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTJcIjtcbn1cbi5mYS1hc2wtaW50ZXJwcmV0aW5nOmJlZm9yZSxcbi5mYS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhM1wiO1xufVxuLmZhLWRlYWZuZXNzOmJlZm9yZSxcbi5mYS1oYXJkLW9mLWhlYXJpbmc6YmVmb3JlLFxuLmZhLWRlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTRcIjtcbn1cbi5mYS1nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhNVwiO1xufVxuLmZhLWdsaWRlLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTZcIjtcbn1cbi5mYS1zaWduaW5nOmJlZm9yZSxcbi5mYS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE3XCI7XG59XG4uZmEtbG93LXZpc2lvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhOFwiO1xufVxuLmZhLXZpYWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhOVwiO1xufVxuLmZhLXZpYWRlby1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWFcIjtcbn1cbi5mYS1zbmFwY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhYlwiO1xufVxuLmZhLXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFjXCI7XG59XG4uZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFkXCI7XG59XG4uZmEtcGllZC1waXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhZVwiO1xufVxuLmZhLWZpcnN0LW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmIwXCI7XG59XG4uZmEteW9hc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjFcIjtcbn1cbi5mYS10aGVtZWlzbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjJcIjtcbn1cbi5mYS1nb29nbGUtcGx1cy1jaXJjbGU6YmVmb3JlLFxuLmZhLWdvb2dsZS1wbHVzLW9mZmljaWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmIzXCI7XG59XG4uZmEtZmE6YmVmb3JlLFxuLmZhLWZvbnQtYXdlc29tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNFwiO1xufVxuLmZhLWhhbmRzaGFrZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI1XCI7XG59XG4uZmEtZW52ZWxvcGUtb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNlwiO1xufVxuLmZhLWVudmVsb3BlLW9wZW4tbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiN1wiO1xufVxuLmZhLWxpbm9kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiOFwiO1xufVxuLmZhLWFkZHJlc3MtYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiOVwiO1xufVxuLmZhLWFkZHJlc3MtYm9vay1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJhXCI7XG59XG4uZmEtdmNhcmQ6YmVmb3JlLFxuLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiYlwiO1xufVxuLmZhLXZjYXJkLW86YmVmb3JlLFxuLmZhLWFkZHJlc3MtY2FyZC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJjXCI7XG59XG4uZmEtdXNlci1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYmRcIjtcbn1cbi5mYS11c2VyLWNpcmNsZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJlXCI7XG59XG4uZmEtdXNlci1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMwXCI7XG59XG4uZmEtaWQtYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzFcIjtcbn1cbi5mYS1kcml2ZXJzLWxpY2Vuc2U6YmVmb3JlLFxuLmZhLWlkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzJcIjtcbn1cbi5mYS1kcml2ZXJzLWxpY2Vuc2UtbzpiZWZvcmUsXG4uZmEtaWQtY2FyZC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMzXCI7XG59XG4uZmEtcXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzRcIjtcbn1cbi5mYS1mcmVlLWNvZGUtY2FtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjNVwiO1xufVxuLmZhLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmM2XCI7XG59XG4uZmEtdGhlcm1vbWV0ZXItNDpiZWZvcmUsXG4uZmEtdGhlcm1vbWV0ZXI6YmVmb3JlLFxuLmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzdcIjtcbn1cbi5mYS10aGVybW9tZXRlci0zOmJlZm9yZSxcbi5mYS10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjOFwiO1xufVxuLmZhLXRoZXJtb21ldGVyLTI6YmVmb3JlLFxuLmZhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzlcIjtcbn1cbi5mYS10aGVybW9tZXRlci0xOmJlZm9yZSxcbi5mYS10aGVybW9tZXRlci1xdWFydGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNhXCI7XG59XG4uZmEtdGhlcm1vbWV0ZXItMDpiZWZvcmUsXG4uZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2JcIjtcbn1cbi5mYS1zaG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2NcIjtcbn1cbi5mYS1iYXRodHViOmJlZm9yZSxcbi5mYS1zMTU6YmVmb3JlLFxuLmZhLWJhdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2RcIjtcbn1cbi5mYS1wb2RjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNlXCI7XG59XG4uZmEtd2luZG93LW1heGltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQwXCI7XG59XG4uZmEtd2luZG93LW1pbmltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQxXCI7XG59XG4uZmEtd2luZG93LXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDJcIjtcbn1cbi5mYS10aW1lcy1yZWN0YW5nbGU6YmVmb3JlLFxuLmZhLXdpbmRvdy1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkM1wiO1xufVxuLmZhLXRpbWVzLXJlY3RhbmdsZS1vOmJlZm9yZSxcbi5mYS13aW5kb3ctY2xvc2UtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkNFwiO1xufVxuLmZhLWJhbmRjYW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQ1XCI7XG59XG4uZmEtZ3JhdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkNlwiO1xufVxuLmZhLWV0c3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDdcIjtcbn1cbi5mYS1pbWRiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQ4XCI7XG59XG4uZmEtcmF2ZWxyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkOVwiO1xufVxuLmZhLWVlcmNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGFcIjtcbn1cbi5mYS1taWNyb2NoaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGJcIjtcbn1cbi5mYS1zbm93Zmxha2UtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkY1wiO1xufVxuLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRkXCI7XG59XG4uZmEtd3BleHBsb3JlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkZVwiO1xufVxuLmZhLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlMFwiO1xufVxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbn1cbi5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsXG4uc3Itb25seS1mb2N1c2FibGU6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gUmVzZXRcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdnbG9iYWwnO1xuQGVsZW1lbnQgOiAncmVzZXQnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgUmVzZXRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIEJvcmRlci1Cb3ggKi9cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIGlQYWQgSW5wdXQgU2hhZG93cyAqL1xuaW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7IC8qIG1vYmlsZSBmaXJlZm94IHRvbyEgKi9cbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFNpdGVcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2dsb2JhbCc7XG5AZWxlbWVudCA6ICdzaXRlJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFBhZ2VcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5sb2FkRm9udHMoKTtcblxuaHRtbCxcbmJvZHkge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IEBlbVNpemU7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93LXg6IEBwYWdlT3ZlcmZsb3dYO1xuICBtaW4td2lkdGg6IEBwYWdlTWluV2lkdGg7XG4gIGJhY2tncm91bmQ6IEBwYWdlQmFja2dyb3VuZDtcbiAgZm9udC1mYW1pbHk6IEBwYWdlRm9udDtcbiAgZm9udC1zaXplOiBAZm9udFNpemU7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZUhlaWdodDtcbiAgY29sb3I6IEB0ZXh0Q29sb3I7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgSGVhZGVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSB7XG4gIGZvbnQtZmFtaWx5OiBAaGVhZGVyRm9udDtcbiAgbGluZS1oZWlnaHQ6IEBoZWFkZXJMaW5lSGVpZ2h0O1xuICBtYXJnaW46IEBoZWFkZXJNYXJnaW47XG4gIGZvbnQtd2VpZ2h0OiBAaGVhZGVyRm9udFdlaWdodDtcbiAgcGFkZGluZzogMDtcbn1cblxuaDEge1xuICBtaW4taGVpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IEBoMTtcbn1cbmgyIHtcbiAgZm9udC1zaXplOiBAaDI7XG59XG5oMyB7XG4gIGZvbnQtc2l6ZTogQGgzO1xufVxuaDQge1xuICBmb250LXNpemU6IEBoNDtcbn1cbmg1IHtcbiAgZm9udC1zaXplOiBAaDU7XG59XG5cbmgxOmZpcnN0LWNoaWxkLFxuaDI6Zmlyc3QtY2hpbGQsXG5oMzpmaXJzdC1jaGlsZCxcbmg0OmZpcnN0LWNoaWxkLFxuaDU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5oMTpsYXN0LWNoaWxkLFxuaDI6bGFzdC1jaGlsZCxcbmgzOmxhc3QtY2hpbGQsXG5oNDpsYXN0LWNoaWxkLFxuaDU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUZXh0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5wIHtcbiAgbWFyZ2luOiBAcGFyYWdyYXBoTWFyZ2luO1xuICBsaW5lLWhlaWdodDogQHBhcmFncmFwaExpbmVIZWlnaHQ7XG59XG5wOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbnA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5hIHtcbiAgY29sb3I6IEBsaW5rQ29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogQGxpbmtVbmRlcmxpbmU7XG59XG5hOmhvdmVyIHtcbiAgY29sb3I6IEBsaW5rSG92ZXJDb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBAbGlua0hvdmVyVW5kZXJsaW5lO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTY3JvbGxiYXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4uYWRkU2Nyb2xsYmFycygpIHdoZW4gKEB1c2VDdXN0b21TY3JvbGxiYXJzKSB7XG5cbiAgLyogRm9yY2UgU2ltcGxlIFNjcm9sbGJhcnMgKi9cbiAgYm9keSA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgd2lkdGg6IEBjdXN0b21TY3JvbGxiYXJXaWR0aDtcbiAgICBoZWlnaHQ6IEBjdXN0b21TY3JvbGxiYXJIZWlnaHQ7XG4gIH1cbiAgYm9keSA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiBAdHJhY2tCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1yYWRpdXM6IEB0cmFja0JvcmRlclJhZGl1cztcbiAgfVxuICBib2R5IDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiBAdGh1bWJCb3JkZXJSYWRpdXM7XG4gICAgYmFja2dyb3VuZDogQHRodW1iQmFja2dyb3VuZDtcbiAgICB0cmFuc2l0aW9uOiBAdGh1bWJUcmFuc2l0aW9uO1xuICB9XG4gIGJvZHkgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjp3aW5kb3ctaW5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IEB0aHVtYkluYWN0aXZlQmFja2dyb3VuZDtcbiAgfVxuICBib2R5IDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IEB0aHVtYkhvdmVyQmFja2dyb3VuZDtcbiAgfVxuXG4gIC8qIEludmVydGVkIFVJICovXG4gIGJvZHkgLnVpLmludmVydGVkOm5vdCguZGltbWVyKTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6IEB0cmFja0ludmVydGVkQmFja2dyb3VuZDtcbiAgfVxuICBib2R5IC51aS5pbnZlcnRlZDpub3QoLmRpbW1lcik6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiBAdGh1bWJJbnZlcnRlZEJhY2tncm91bmQ7XG4gIH1cbiAgYm9keSAudWkuaW52ZXJ0ZWQ6bm90KC5kaW1tZXIpOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjp3aW5kb3ctaW5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IEB0aHVtYkludmVydGVkSW5hY3RpdmVCYWNrZ3JvdW5kO1xuICB9XG4gIGJvZHkgLnVpLmludmVydGVkOm5vdCguZGltbWVyKTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IEB0aHVtYkludmVydGVkSG92ZXJCYWNrZ3JvdW5kO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgSGlnaGxpZ2h0aW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBTaXRlICovXG46Oi13ZWJraXQtc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGhpZ2hsaWdodEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaGlnaGxpZ2h0Q29sb3I7XG59XG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGhpZ2hsaWdodEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaGlnaGxpZ2h0Q29sb3I7XG59XG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBoaWdobGlnaHRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGhpZ2hsaWdodENvbG9yO1xufVxuXG4vKiBGb3JtICovXG50ZXh0YXJlYTo6LXdlYmtpdC1zZWxlY3Rpb24sXG5pbnB1dDo6LXdlYmtpdC1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW5wdXRIaWdobGlnaHRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGlucHV0SGlnaGxpZ2h0Q29sb3I7XG59XG50ZXh0YXJlYTo6LW1vei1zZWxlY3Rpb24sXG5pbnB1dDo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW5wdXRIaWdobGlnaHRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGlucHV0SGlnaGxpZ2h0Q29sb3I7XG59XG50ZXh0YXJlYTo6c2VsZWN0aW9uLFxuaW5wdXQ6OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnB1dEhpZ2hsaWdodEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW5wdXRIaWdobGlnaHRDb2xvcjtcbn1cblxuLmFkZFNjcm9sbGJhcnMoKTtcbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEJ1dHRvblxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2VsZW1lbnQnO1xuQGVsZW1lbnQgOiAnYnV0dG9uJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQnV0dG9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgbWluLWhlaWdodDogMWVtO1xuXG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IEB2ZXJ0aWNhbEFsaWduO1xuICBiYWNrZ3JvdW5kOiBAYmFja2dyb3VuZDtcbiAgY29sb3I6IEB0ZXh0Q29sb3I7XG5cbiAgZm9udC1mYW1pbHk6IEBmb250RmFtaWx5O1xuXG4gIG1hcmdpbjogMCBAaG9yaXpvbnRhbE1hcmdpbiBAdmVydGljYWxNYXJnaW4gMDtcbiAgcGFkZGluZzogQHZlcnRpY2FsUGFkZGluZyBAaG9yaXpvbnRhbFBhZGRpbmcgKEB2ZXJ0aWNhbFBhZGRpbmcgKyBAc2hhZG93T2Zmc2V0KTtcblxuICB0ZXh0LXRyYW5zZm9ybTogQHRleHRUcmFuc2Zvcm07XG4gIHRleHQtc2hhZG93OiBAdGV4dFNoYWRvdztcbiAgZm9udC13ZWlnaHQ6IEBmb250V2VpZ2h0O1xuICBsaW5lLWhlaWdodDogQGxpbmVIZWlnaHQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbiAgYm94LXNoYWRvdzogQGJveFNoYWRvdztcblxuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gIHdpbGwtY2hhbmdlOiBAd2lsbENoYW5nZTtcblxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IEB0YXBDb2xvcjtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBob3ZlckJhY2tncm91bmRDb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogQGhvdmVyQmFja2dyb3VuZEltYWdlO1xuICBib3gtc2hhZG93OiBAaG92ZXJCb3hTaGFkb3c7XG4gIGNvbG9yOiBAaG92ZXJDb2xvcjtcbn1cblxuLnVpLmJ1dHRvbjpob3ZlciAuaWNvbiB7XG4gIG9wYWNpdHk6IEBpY29uSG92ZXJPcGFjaXR5O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBmb2N1c0JhY2tncm91bmRDb2xvcjtcbiAgY29sb3I6IEBmb2N1c0NvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAZm9jdXNCYWNrZ3JvdW5kSW1hZ2U7XG4gIGJveC1zaGFkb3c6IEBmb2N1c0JveFNoYWRvdztcbn1cblxuLnVpLmJ1dHRvbjpmb2N1cyAuaWNvbiB7XG4gIG9wYWNpdHk6IEBpY29uRm9jdXNPcGFjaXR5O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBEb3duXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9uOmFjdGl2ZSxcbi51aS5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBkb3duQmFja2dyb3VuZENvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAZG93bkJhY2tncm91bmRJbWFnZTtcbiAgY29sb3I6IEBkb3duQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBkb3duQm94U2hhZG93O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYWN0aXZlQmFja2dyb3VuZENvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAYWN0aXZlQmFja2dyb3VuZEltYWdlO1xuICBib3gtc2hhZG93OiBAYWN0aXZlQm94U2hhZG93O1xuICBjb2xvcjogQGFjdGl2ZUNvbG9yO1xufVxuLnVpLmFjdGl2ZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYWN0aXZlSG92ZXJCYWNrZ3JvdW5kQ29sb3I7XG4gIGJhY2tncm91bmQtaW1hZ2U6IEBhY3RpdmVIb3ZlckJhY2tncm91bmRJbWFnZTtcbiAgY29sb3I6IEBhY3RpdmVIb3ZlckNvbG9yO1xufVxuLnVpLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGFjdGl2ZUJhY2tncm91bmRDb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogQGFjdGl2ZUJhY2tncm91bmRJbWFnZTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3BlY2lmaWNpdHkgaGFjayAqL1xuLnVpLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG9wYWNpdHk6IEBsb2FkaW5nT3BhY2l0eTtcbiAgcG9pbnRlci1ldmVudHM6IEBsb2FkaW5nUG9pbnRlckV2ZW50cztcbiAgdHJhbnNpdGlvbjogQGxvYWRpbmdUcmFuc2l0aW9uO1xufVxuLnVpLmxvYWRpbmcuYnV0dG9uOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG5cbiAgbWFyZ2luOiBAbG9hZGVyTWFyZ2luO1xuICB3aWR0aDogQGxvYWRlclNpemU7XG4gIGhlaWdodDogQGxvYWRlclNpemU7XG5cbiAgYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xuICBib3JkZXI6IEBsb2FkZXJMaW5lV2lkdGggc29saWQgQGludmVydGVkTG9hZGVyRmlsbENvbG9yO1xufVxuLnVpLmxvYWRpbmcuYnV0dG9uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcblxuICBtYXJnaW46IEBsb2FkZXJNYXJnaW47XG4gIHdpZHRoOiBAbG9hZGVyU2l6ZTtcbiAgaGVpZ2h0OiBAbG9hZGVyU2l6ZTtcblxuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG5cbiAgYW5pbWF0aW9uOiBsb2FkZXIgQGxvYWRlclNwZWVkIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyOiBAbG9hZGVyTGluZVdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZExvYWRlckxpbmVDb2xvcjtcblxuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG59XG4udWkubGFiZWxlZC5pY29uLmxvYWRpbmcuYnV0dG9uIC5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5iYXNpYy5sb2FkaW5nLmJ1dHRvbjpub3QoLmludmVydGVkKTpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IEBsb2FkZXJGaWxsQ29sb3I7XG59XG4udWkuYmFzaWMubG9hZGluZy5idXR0b246bm90KC5pbnZlcnRlZCk6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6IEBsb2FkZXJMaW5lQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJ1dHRvbnMgLmRpc2FibGVkLmJ1dHRvbjpub3QoLmJhc2ljKSxcbi51aS5kaXNhYmxlZC5idXR0b24sXG4udWkuYnV0dG9uOmRpc2FibGVkLFxuLnVpLmRpc2FibGVkLmJ1dHRvbjpob3Zlcixcbi51aS5kaXNhYmxlZC5hY3RpdmUuYnV0dG9uIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiBAZGlzYWJsZWRPcGFjaXR5ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJhc2ljIEdyb3VwIFdpdGggRGlzYWJsZWQgKi9cbi51aS5iYXNpYy5idXR0b25zIC51aS5kaXNhYmxlZC5idXR0b24ge1xuICBib3JkZXItY29sb3I6IEBkaXNhYmxlZEJvcmRlckNvbG9yO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBbmltYXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYW5pbWF0ZWQuYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBAYW5pbWF0ZWRWZXJ0aWNhbEFsaWduO1xuICB6LWluZGV4OiBAYW5pbWF0ZWRaSW5kZXg7XG59XG5cbi51aS5hbmltYXRlZC5idXR0b24gLmNvbnRlbnQge1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xufVxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAudmlzaWJsZS5jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IEBob3Jpem9udGFsUGFkZGluZztcbn1cbi51aS5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogSG9yaXpvbnRhbCAqL1xuLnVpLmFuaW1hdGVkLmJ1dHRvbiAudmlzaWJsZS5jb250ZW50LFxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2l0aW9uOiByaWdodCBAYW5pbWF0aW9uRHVyYXRpb24gQGFuaW1hdGlvbkVhc2luZyAwcztcbn1cbi51aS5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAuaGlkZGVuLmNvbnRlbnQge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tdG9wOiAtKEBsaW5lSGVpZ2h0IC8gMik7XG59XG4udWkuYW5pbWF0ZWQuYnV0dG9uOmZvY3VzIC52aXNpYmxlLmNvbnRlbnQsXG4udWkuYW5pbWF0ZWQuYnV0dG9uOmhvdmVyIC52aXNpYmxlLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMjAwJTtcbn1cbi51aS5hbmltYXRlZC5idXR0b246Zm9jdXMgLmhpZGRlbi5jb250ZW50LFxuLnVpLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAuaGlkZGVuLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuLyogVmVydGljYWwgKi9cbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCxcbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogdG9wIEBhbmltYXRpb25EdXJhdGlvbiBAYW5pbWF0aW9uRWFzaW5nLCB0cmFuc2Zvcm0gQGFuaW1hdGlvbkR1cmF0aW9uIEBhbmltYXRpb25FYXNpbmc7XG59XG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICByaWdodDogYXV0bztcbn1cbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgdG9wOiAtNTAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b246Zm9jdXMgLnZpc2libGUuY29udGVudCxcbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b246aG92ZXIgLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAlKTtcbiAgcmlnaHQ6IGF1dG87XG59XG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uOmZvY3VzIC5oaWRkZW4uY29udGVudCxcbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b246aG92ZXIgLmhpZGRlbi5jb250ZW50IHtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vKiBGYWRlICovXG4udWkuZmFkZS5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCxcbi51aS5mYWRlLmFuaW1hdGVkLmJ1dHRvbiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IEBhbmltYXRpb25EdXJhdGlvbiBAYW5pbWF0aW9uRWFzaW5nLCB0cmFuc2Zvcm0gQGFuaW1hdGlvbkR1cmF0aW9uIEBhbmltYXRpb25FYXNpbmc7XG59XG4udWkuZmFkZS5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIG9wYWNpdHk6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHNjYWxlKEBmYWRlU2NhbGVIaWdoKTtcbn1cbi51aS5mYWRlLmFuaW1hdGVkLmJ1dHRvbjpmb2N1cyAudmlzaWJsZS5jb250ZW50LFxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uOmhvdmVyIC52aXNpYmxlLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZShAZmFkZVNjYWxlTG93KTtcbn1cbi51aS5mYWRlLmFuaW1hdGVkLmJ1dHRvbjpmb2N1cyAuaGlkZGVuLmNvbnRlbnQsXG4udWkuZmFkZS5hbmltYXRlZC5idXR0b246aG92ZXIgLmhpZGRlbi5jb250ZW50IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5idXR0b24ge1xuICBib3gtc2hhZG93OiAwIDAgMCBAaW52ZXJ0ZWRCb3JkZXJTaXplIEB3aGl0ZSBpbnNldDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbiAgY29sb3I6IEB3aGl0ZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogR3JvdXAgKi9cbi51aS5pbnZlcnRlZC5idXR0b25zIC5idXR0b24ge1xuICBtYXJnaW46IEBpbnZlcnRlZEdyb3VwQnV0dG9uT2Zmc2V0O1xufVxuLnVpLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnVpLmludmVydGVkLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIG1hcmdpbjogQGludmVydGVkVmVydGljYWxHcm91cEJ1dHRvbk9mZnNldDtcbn1cbi51aS5pbnZlcnRlZC52ZXJ0aWNhbC5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4vKiBTdGF0ZXMgKi9cblxuLyogSG92ZXIgKi9cbi51aS5pbnZlcnRlZC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIEBpbnZlcnRlZEJvcmRlclNpemUgQHdoaXRlIGluc2V0O1xuICBjb2xvcjogQGhvdmVyQ29sb3I7XG59XG5cbi8qIEFjdGl2ZSAvIEZvY3VzICovXG4udWkuaW52ZXJ0ZWQuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJ1dHRvbi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBAd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIEBpbnZlcnRlZEJvcmRlclNpemUgQHdoaXRlIGluc2V0O1xuICBjb2xvcjogQGZvY3VzQ29sb3I7XG59XG5cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuLnVpLmludmVydGVkLmJ1dHRvbi5hY3RpdmU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiBAbWlkV2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIEBpbnZlcnRlZEJvcmRlclNpemUgQG1pZFdoaXRlIGluc2V0O1xuICBjb2xvcjogQGZvY3VzQ29sb3I7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgTGFiZWxlZCBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxhYmVsZWQuYnV0dG9uOm5vdCguaWNvbikge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5sYWJlbGVkLmJ1dHRvbiA+IC5idXR0b24ge1xuICBtYXJnaW46IDA7XG59XG4udWkubGFiZWxlZC5idXR0b24gPiAubGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogQGxhYmVsZWRMYWJlbEFsaWduO1xuICBtYXJnaW46IDAgMCAwIEBsYWJlbGVkTGFiZWxCb3JkZXJPZmZzZXQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiBAbGFiZWxlZExhYmVsRm9udFNpemU7XG4gIHBhZGRpbmc6IEBsYWJlbGVkTGFiZWxQYWRkaW5nO1xuICBib3JkZXItY29sb3I6IEBsYWJlbGVkTGFiZWxCb3JkZXJDb2xvcjtcbn1cblxuLyogVGFnICovXG4udWkubGFiZWxlZC5idXR0b24gPiAudGFnLmxhYmVsOmJlZm9yZSB7XG4gIHdpZHRoOiBAbGFiZWxlZFRhZ0xhYmVsU2l6ZTtcbiAgaGVpZ2h0OiBAbGFiZWxlZFRhZ0xhYmVsU2l6ZTtcbn1cblxuLyogUmlnaHQgKi9cbi51aS5sYWJlbGVkLmJ1dHRvbjpub3QoW2NsYXNzKj1cImxlZnQgbGFiZWxlZFwiXSkgPiAuYnV0dG9uIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLnVpLmxhYmVsZWQuYnV0dG9uOm5vdChbY2xhc3MqPVwibGVmdCBsYWJlbGVkXCJdKSA+IC5sYWJlbCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi8qIExlZnQgU2lkZSAqL1xuLnVpW2NsYXNzKj1cImxlZnQgbGFiZWxlZFwiXS5idXR0b24gPiAuYnV0dG9uIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGxhYmVsZWRcIl0uYnV0dG9uID4gLmxhYmVsIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTb2NpYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRmFjZWJvb2sgKi9cbi51aS5mYWNlYm9vay5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZmFjZWJvb2tDb2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG4gIGJhY2tncm91bmQtaW1hZ2U6IEBjb2xvcmVkQmFja2dyb3VuZEltYWdlO1xuICBib3gtc2hhZG93OiBAY29sb3JlZEJveFNoYWRvdztcbn1cbi51aS5mYWNlYm9vay5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZmFjZWJvb2tIb3ZlckNvbG9yO1xuICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xuICB0ZXh0LXNoYWRvdzogQGludmVydGVkVGV4dFNoYWRvdztcbn1cbi51aS5mYWNlYm9vay5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGZhY2Vib29rRG93bkNvbG9yO1xuICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xuICB0ZXh0LXNoYWRvdzogQGludmVydGVkVGV4dFNoYWRvdztcbn1cblxuLyogVHdpdHRlciAqL1xuLnVpLnR3aXR0ZXIuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHR3aXR0ZXJDb2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG4gIGJhY2tncm91bmQtaW1hZ2U6IEBjb2xvcmVkQmFja2dyb3VuZEltYWdlO1xuICBib3gtc2hhZG93OiBAY29sb3JlZEJveFNoYWRvdztcbn1cbi51aS50d2l0dGVyLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0d2l0dGVySG92ZXJDb2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG59XG4udWkudHdpdHRlci5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHR3aXR0ZXJEb3duQ29sb3I7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xufVxuXG4vKiBHb29nbGUgUGx1cyAqL1xuLnVpLmdvb2dsZS5wbHVzLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBnb29nbGVQbHVzQ29sb3I7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAY29sb3JlZEJhY2tncm91bmRJbWFnZTtcbiAgYm94LXNoYWRvdzogQGNvbG9yZWRCb3hTaGFkb3c7XG59XG4udWkuZ29vZ2xlLnBsdXMuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGdvb2dsZVBsdXNIb3ZlckNvbG9yO1xuICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xuICB0ZXh0LXNoYWRvdzogQGludmVydGVkVGV4dFNoYWRvdztcbn1cbi51aS5nb29nbGUucGx1cy5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGdvb2dsZVBsdXNEb3duQ29sb3I7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xufVxuXG4vKiBMaW5rZWQgSW4gKi9cbi51aS5saW5rZWRpbi5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGlua2VkSW5Db2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG59XG4udWkubGlua2VkaW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGxpbmtlZEluSG92ZXJDb2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG59XG4udWkubGlua2VkaW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBsaW5rZWRJbkRvd25Db2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG59XG5cbi8qIFlvdVR1YmUgKi9cbi51aS55b3V0dWJlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB5b3V0dWJlQ29sb3I7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAY29sb3JlZEJhY2tncm91bmRJbWFnZTtcbiAgYm94LXNoYWRvdzogQGNvbG9yZWRCb3hTaGFkb3c7XG59XG4udWkueW91dHViZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAeW91dHViZUhvdmVyQ29sb3I7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xufVxuLnVpLnlvdXR1YmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB5b3V0dWJlRG93bkNvbG9yO1xuICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xuICB0ZXh0LXNoYWRvdzogQGludmVydGVkVGV4dFNoYWRvdztcbn1cblxuLyogSW5zdGFncmFtICovXG4udWkuaW5zdGFncmFtLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnN0YWdyYW1Db2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG4gIGJhY2tncm91bmQtaW1hZ2U6IEBjb2xvcmVkQmFja2dyb3VuZEltYWdlO1xuICBib3gtc2hhZG93OiBAY29sb3JlZEJveFNoYWRvdztcbn1cbi51aS5pbnN0YWdyYW0uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGluc3RhZ3JhbUhvdmVyQ29sb3I7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xufVxuLnVpLmluc3RhZ3JhbS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGluc3RhZ3JhbURvd25Db2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG59XG5cbi8qIFBpbnRlcmVzdCAqL1xuLnVpLnBpbnRlcmVzdC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGludGVyZXN0Q29sb3I7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAY29sb3JlZEJhY2tncm91bmRJbWFnZTtcbiAgYm94LXNoYWRvdzogQGNvbG9yZWRCb3hTaGFkb3c7XG59XG4udWkucGludGVyZXN0LmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBwaW50ZXJlc3RIb3ZlckNvbG9yO1xuICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xuICB0ZXh0LXNoYWRvdzogQGludmVydGVkVGV4dFNoYWRvdztcbn1cbi51aS5waW50ZXJlc3QuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBwaW50ZXJlc3REb3duQ29sb3I7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xufVxuXG4vKiBWSyAqL1xuLnVpLnZrLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB2a0NvbG9yO1xuICBjb2xvcjogQHdoaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAY29sb3JlZEJhY2tncm91bmRJbWFnZTtcbiAgYm94LXNoYWRvdzogQGNvbG9yZWRCb3hTaGFkb3c7XG59XG4udWkudmsuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHZrSG92ZXJDb2xvcjtcbiAgY29sb3I6IEB3aGl0ZTtcbn1cbi51aS52ay5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHZrRG93bkNvbG9yO1xuICBjb2xvcjogQHdoaXRlO1xufVxuXG4vKiBXaGF0c0FwcCAqL1xuLnVpLndoYXRzYXBwLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3aGF0c0FwcENvbG9yO1xuICBjb2xvcjogQHdoaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAY29sb3JlZEJhY2tncm91bmRJbWFnZTtcbiAgYm94LXNoYWRvdzogQGNvbG9yZWRCb3hTaGFkb3c7XG59XG4udWkud2hhdHNhcHAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHdoYXRzQXBwSG92ZXJDb2xvcjtcbiAgY29sb3I6IEB3aGl0ZTtcbn1cbi51aS53aGF0c2FwcC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHdoYXRzQXBwRG93bkNvbG9yO1xuICBjb2xvcjogQHdoaXRlO1xufVxuXG4vKiBUZWxlZ3JhbSAqL1xuLnVpLnRlbGVncmFtLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0ZWxlZ3JhbUNvbG9yO1xuICBjb2xvcjogQHdoaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAY29sb3JlZEJhY2tncm91bmRJbWFnZTtcbiAgYm94LXNoYWRvdzogQGNvbG9yZWRCb3hTaGFkb3c7XG59XG4udWkudGVsZWdyYW0uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRlbGVncmFtSG92ZXJDb2xvcjtcbiAgY29sb3I6IEB3aGl0ZTtcbn1cbi51aS50ZWxlZ3JhbS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRlbGVncmFtRG93bkNvbG9yO1xuICBjb2xvcjogQHdoaXRlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5idXR0b24gPiAuaWNvbjpub3QoLmJ1dHRvbikge1xuICBoZWlnaHQ6IEBpY29uSGVpZ2h0O1xuICBvcGFjaXR5OiBAaWNvbk9wYWNpdHk7XG4gIG1hcmdpbjogQGljb25NYXJnaW47XG4gIHRyYW5zaXRpb246IEBpY29uVHJhbnNpdGlvbjtcbiAgdmVydGljYWwtYWxpZ246IEBpY29uVmVydGljYWxBbGlnbjtcbiAgY29sb3I6IEBpY29uQ29sb3I7XG59XG5cbi51aS5idXR0b246bm90KC5pY29uKSA+IC5pY29uOm5vdCguYnV0dG9uKTpub3QoLmRyb3Bkb3duKSxcbi51aS5idXR0b246bm90KC5pY29uKSA+IC5pY29uczpub3QoLmJ1dHRvbik6bm90KC5kcm9wZG93bikge1xuICBtYXJnaW46IEBpY29uTWFyZ2luO1xufVxuLnVpLmJ1dHRvbjpub3QoLmljb24pID4gLnJpZ2h0Lmljb246bm90KC5idXR0b24pOm5vdCguZHJvcGRvd24pIHtcbiAgbWFyZ2luOiBAcmlnaHRJY29uTWFyZ2luO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXS5idXR0b25zLFxuLnVpW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXS5idXR0b24ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogQGZsb2F0ZWRNYXJnaW47XG59XG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5idXR0b25zLFxuLnVpW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0uYnV0dG9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiBAZmxvYXRlZE1hcmdpbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tcGFjdC5idXR0b25zIC5idXR0b24sXG4udWkuY29tcGFjdC5idXR0b24ge1xuICBwYWRkaW5nOiBAY29tcGFjdFZlcnRpY2FsUGFkZGluZyBAY29tcGFjdEhvcml6b250YWxQYWRkaW5nICggQGNvbXBhY3RWZXJ0aWNhbFBhZGRpbmcgKyBAc2hhZG93T2Zmc2V0ICk7XG59XG4udWkuY29tcGFjdC5pY29uLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5jb21wYWN0Lmljb24uYnV0dG9uIHtcbiAgcGFkZGluZzogQGNvbXBhY3RWZXJ0aWNhbFBhZGRpbmcgQGNvbXBhY3RWZXJ0aWNhbFBhZGRpbmcgKCBAY29tcGFjdFZlcnRpY2FsUGFkZGluZyArIEBzaGFkb3dPZmZzZXQgKTtcbn1cbi51aS5jb21wYWN0LmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b24sXG4udWkuY29tcGFjdC5sYWJlbGVkLmljb24uYnV0dG9uIHtcbiAgcGFkZGluZzogQGNvbXBhY3RWZXJ0aWNhbFBhZGRpbmcgKEBjb21wYWN0SG9yaXpvbnRhbFBhZGRpbmcgKyBAbGFiZWxlZEljb25XaWR0aCkgKCBAY29tcGFjdFZlcnRpY2FsUGFkZGluZyArIEBzaGFkb3dPZmZzZXQgKTtcbn1cbi51aS5jb21wYWN0LmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b24gPiAuaWNvbixcbi51aS5jb21wYWN0LmxhYmVsZWQuaWNvbi5idXR0b24gPiAuaWNvbiB7XG4gIHBhZGRpbmc6IEBjb21wYWN0VmVydGljYWxQYWRkaW5nIDAgQGNvbXBhY3RWZXJ0aWNhbFBhZGRpbmcgMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5taW5pLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5taW5pLmJ1dHRvbnMgLm9yLFxuLnVpLnVpLnVpLnVpLm1pbmkuYnV0dG9uIHtcbiAgZm9udC1zaXplOiBAbWluaTtcbn1cbi51aS50aW55LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS50aW55LmJ1dHRvbnMgLm9yLFxuLnVpLnVpLnVpLnVpLnRpbnkuYnV0dG9uIHtcbiAgZm9udC1zaXplOiBAdGlueTtcbn1cbi51aS5zbWFsbC5idXR0b25zIC5idXR0b24sXG4udWkuc21hbGwuYnV0dG9ucyAub3IsXG4udWkudWkudWkudWkuc21hbGwuYnV0dG9uIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJ1dHRvbnMgLm9yLFxuLnVpLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogQG1lZGl1bTtcbn1cbi51aS5sYXJnZS5idXR0b25zIC5idXR0b24sXG4udWkubGFyZ2UuYnV0dG9ucyAub3IsXG4udWkudWkudWkudWkubGFyZ2UuYnV0dG9uIHtcbiAgZm9udC1zaXplOiBAbGFyZ2U7XG59XG4udWkuYmlnLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iaWcuYnV0dG9ucyAub3IsXG4udWkudWkudWkudWkuYmlnLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5odWdlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5odWdlLmJ1dHRvbnMgLm9yLFxuLnVpLnVpLnVpLnVpLmh1Z2UuYnV0dG9uIHtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cbi51aS5tYXNzaXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5tYXNzaXZlLmJ1dHRvbnMgLm9yLFxuLnVpLnVpLnVpLnVpLm1hc3NpdmUuYnV0dG9uIHtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cblxuLyogRHJvcGRvd24gY291cGxlZCBidXR0b25zIHNpemVzICovXG4udWkubWluaS5idXR0b25zIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQG1pbmk7XG59XG4udWkubWluaS5idXR0b25zIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiBAbWluaTtcbn1cbi51aS50aW55LmJ1dHRvbnMgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAdGlueTtcbn1cbi51aS50aW55LmJ1dHRvbnMgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLmJ1dHRvbnMgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkuc21hbGwuYnV0dG9ucyAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQHNtYWxsO1xufVxuLnVpLmxhcmdlLmJ1dHRvbnMgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAbGFyZ2U7XG59XG4udWkubGFyZ2UuYnV0dG9ucyAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQGxhcmdlO1xufVxuLnVpLmJpZy5idXR0b25zIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5iaWcuYnV0dG9ucyAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5odWdlLmJ1dHRvbnMgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cbi51aS5odWdlLmJ1dHRvbnMgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBodWdlO1xufVxuLnVpLm1hc3NpdmUuYnV0dG9ucyAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBtYXNzaXZlO1xufVxuLnVpLm1hc3NpdmUuYnV0dG9ucyAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQG1hc3NpdmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJY29uIE9ubHlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pY29uLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IEB2ZXJ0aWNhbFBhZGRpbmcgQHZlcnRpY2FsUGFkZGluZyAoIEB2ZXJ0aWNhbFBhZGRpbmcgKyBAc2hhZG93T2Zmc2V0ICk7XG59XG4udWkuaWNvbi5idXR0b25zIC5idXR0b24gPiAuaWNvbixcbi51aS5pY29uLmJ1dHRvbiA+IC5pY29uIHtcbiAgb3BhY2l0eTogQGljb25CdXR0b25PcGFjaXR5O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQmFzaWNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBAYmFzaWNCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGJhc2ljVGV4dENvbG9yO1xuICBmb250LXdlaWdodDogQGJhc2ljRm9udFdlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogQGJhc2ljQm9yZGVyUmFkaXVzO1xuICB0ZXh0LXRyYW5zZm9ybTogQGJhc2ljVGV4dFRyYW5zZm9ybTtcbiAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogQGJhc2ljQm94U2hhZG93O1xufVxuLnVpLmJhc2ljLmJ1dHRvbnMge1xuICBib3gtc2hhZG93OiBAYmFzaWNHcm91cEJveFNoYWRvdztcbiAgYm9yZGVyOiBAYmFzaWNHcm91cEJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbn1cbi51aS5iYXNpYy5idXR0b25zIC5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IEBiYXNpY0hvdmVyQmFja2dyb3VuZDtcbiAgY29sb3I6IEBiYXNpY0hvdmVyVGV4dENvbG9yO1xuICBib3gtc2hhZG93OiBAYmFzaWNIb3ZlckJveFNoYWRvdztcbn1cbi51aS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogQGJhc2ljRm9jdXNCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGJhc2ljRm9jdXNUZXh0Q29sb3I7XG4gIGJveC1zaGFkb3c6IEBiYXNpY0ZvY3VzQm94U2hhZG93O1xufVxuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IEBiYXNpY0Rvd25CYWNrZ3JvdW5kO1xuICBjb2xvcjogQGJhc2ljRG93blRleHRDb2xvcjtcbiAgYm94LXNoYWRvdzogQGJhc2ljRG93bkJveFNoYWRvdztcbn1cbi51aS5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBAYmFzaWNBY3RpdmVCYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiBAYmFzaWNBY3RpdmVCb3hTaGFkb3c7XG4gIGNvbG9yOiBAYmFzaWNBY3RpdmVUZXh0Q29sb3I7XG59XG4udWkuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5hY3RpdmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRyYW5zcGFyZW50QmxhY2s7XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogQGJhc2ljSG92ZXJCb3hTaGFkb3cgaW5zZXQ7XG59XG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IEBiYXNpY0Rvd25Cb3hTaGFkb3cgaW5zZXQ7XG59XG4udWkuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IEBiYXNpY0FjdGl2ZUJveFNoYWRvdztcbn1cblxuLyogU3RhbmRhcmQgQmFzaWMgSW52ZXJ0ZWQgKi9cbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiBAb2ZmV2hpdGU7XG4gIGJveC1zaGFkb3c6IEBiYXNpY0ludmVydGVkQm94U2hhZG93O1xufVxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b246aG92ZXIge1xuICBjb2xvcjogQHdoaXRlO1xuICBib3gtc2hhZG93OiBAYmFzaWNJbnZlcnRlZEhvdmVyQm94U2hhZG93O1xufVxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b246Zm9jdXMge1xuICBjb2xvcjogQHdoaXRlO1xuICBib3gtc2hhZG93OiBAYmFzaWNJbnZlcnRlZEZvY3VzQm94U2hhZG93O1xufVxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0cmFuc3BhcmVudFdoaXRlO1xuICBjb2xvcjogQHdoaXRlO1xuICBib3gtc2hhZG93OiBAYmFzaWNJbnZlcnRlZERvd25Cb3hTaGFkb3c7XG59XG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5pbnZlcnRlZC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRyYW5zcGFyZW50V2hpdGU7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIHRleHQtc2hhZG93OiBAaW52ZXJ0ZWRUZXh0U2hhZG93O1xuICBib3gtc2hhZG93OiBAYmFzaWNJbnZlcnRlZEFjdGl2ZUJveFNoYWRvdztcbn1cbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLmludmVydGVkLmFjdGl2ZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAc3Ryb25nVHJhbnNwYXJlbnRXaGl0ZTtcbiAgYm94LXNoYWRvdzogQGJhc2ljSW52ZXJ0ZWRIb3ZlckJveFNoYWRvdztcbn1cblxuXG4vKiBCYXNpYyBHcm91cCAqL1xuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGJvcmRlci1sZWZ0OiBAYmFzaWNHcm91cEJvcmRlcjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS5iYXNpYy52ZXJ0aWNhbC5idXR0b25zIC5idXR0b24ge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci10b3A6IEBiYXNpY0dyb3VwQm9yZGVyO1xufVxuLnVpLmJhc2ljLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFRlcnRpYXJ5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE92ZXJsaW5lIE1peGluICovXG5cbi51aS50ZXJ0aWFyeS5idXR0b24ge1xuICB0cmFuc2l0aW9uOiBjb2xvciBAZGVmYXVsdER1cmF0aW9uIEBkZWZhdWx0RWFzaW5nICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbjpcbiAgICAoQHZlcnRpY2FsUGFkZGluZyAgLSBAdGVydGlhcnlMaW5lUGFkZGluZylcbiAgICAoQGhvcml6b250YWxNYXJnaW4pXG4gICAgKEB2ZXJ0aWNhbFBhZGRpbmcgKyBAc2hhZG93T2Zmc2V0ICsgQHZlcnRpY2FsTWFyZ2luIC0gQHRlcnRpYXJ5TGluZVBhZGRpbmcpXG4gICAgMFxuICAgICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IEB0ZXJ0aWFyeUxpbmVQYWRkaW5nICFpbXBvcnRhbnQ7XG5cbiAgJiB3aGVuIChAdGVydGlhcnlXaXRoVW5kZXJsaW5lID0gdHJ1ZSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLUB0ZXJ0aWFyeUxpbmVIZWlnaHQgMCBAdGVydGlhcnlMaW5lQ29sb3I7XG4gIH1cblxuICAmIHdoZW4gKEB0ZXJ0aWFyeVdpdGhPdmVybGluZSA9IHRydWUpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIEB0ZXJ0aWFyeUxpbmVIZWlnaHQgMCBAdGVydGlhcnlMaW5lQ29sb3I7XG4gIH1cblxuICAmIHdoZW4gKEB0ZXJ0aWFyeVdpdGhVbmRlcmxpbmUgPSBmYWxzZSkgYW5kIChAdGVydGlhcnlXaXRoT3ZlcmxpbmUgPSBmYWxzZSl7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICBjb2xvcjogQHRlcnRpYXJ5VGV4dENvbG9yO1xuICBiYWNrZ3JvdW5kOiBAdGVydGlhcnlCYWNrZ3JvdW5kQ29sb3I7XG59XG5cbi51aS50ZXJ0aWFyeS5idXR0b246aG92ZXIge1xuXG4gICYgd2hlbiAoQHRlcnRpYXJ5SG92ZXJXaXRoVW5kZXJsaW5lID0gdHJ1ZSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLUB0ZXJ0aWFyeUxpbmVIZWlnaHQgMCBAdGVydGlhcnlIb3ZlckxpbmVDb2xvcjtcbiAgfVxuXG4gICYgd2hlbiAoQHRlcnRpYXJ5SG92ZXJXaXRoT3ZlcmxpbmUgPSB0cnVlKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCBAdGVydGlhcnlMaW5lSGVpZ2h0IDAgQHRlcnRpYXJ5SG92ZXJMaW5lQ29sb3I7XG4gIH1cblxuICAmIHdoZW4gKEB0ZXJ0aWFyeUhvdmVyV2l0aFVuZGVybGluZSA9IGZhbHNlKSBhbmQgKEB0ZXJ0aWFyeUhvdmVyV2l0aE92ZXJsaW5lID0gZmFsc2UpIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIGNvbG9yOiBAdGVydGlhcnlIb3ZlckNvbG9yO1xuICBiYWNrZ3JvdW5kOiBAdGVydGlhcnlIb3ZlckJhY2tncm91bmRDb2xvcjtcbn1cblxuLnVpLnRlcnRpYXJ5LmJ1dHRvbjpmb2N1cyB7XG4gICYgd2hlbiAoQHRlcnRpYXJ5Rm9jdXNXaXRoVW5kZXJsaW5lID0gdHJ1ZSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLUB0ZXJ0aWFyeUxpbmVIZWlnaHQgMCBAdGVydGlhcnlGb2N1c0xpbmVDb2xvcjtcbiAgfVxuXG4gICYgd2hlbiAoQHRlcnRpYXJ5Rm9jdXNXaXRoT3ZlcmxpbmUgPSB0cnVlKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCBAdGVydGlhcnlMaW5lSGVpZ2h0IDAgQHRlcnRpYXJ5Rm9jdXNMaW5lQ29sb3I7XG4gIH1cblxuICAmIHdoZW4gKEB0ZXJ0aWFyeUZvY3VzV2l0aFVuZGVybGluZSA9IGZhbHNlKSBhbmQgKEB0ZXJ0aWFyeUZvY3VzV2l0aE92ZXJsaW5lID0gZmFsc2Upe1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgY29sb3I6IEB0ZXJ0aWFyeUZvY3VzQ29sb3I7XG4gIGJhY2tncm91bmQ6IEB0ZXJ0aWFyeUZvY3VzQmFja2dyb3VuZENvbG9yO1xufVxuXG4udWkudGVydGlhcnkuYnV0dG9uOmFjdGl2ZSB7XG4gICYgd2hlbiAoQHRlcnRpYXJ5QWN0aXZlV2l0aFVuZGVybGluZSA9IHRydWUpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC1AdGVydGlhcnlMaW5lSGVpZ2h0IDAgQHRlcnRpYXJ5QWN0aXZlTGluZUNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDA7XG4gIH1cblxuICAmIHdoZW4gKEB0ZXJ0aWFyeUFjdGl2ZVdpdGhPdmVybGluZSA9IHRydWUpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIEB0ZXJ0aWFyeUxpbmVIZWlnaHQgMCBAdGVydGlhcnlBY3RpdmVMaW5lQ29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cztcbiAgfVxuXG4gICYgd2hlbiAoQHRlcnRpYXJ5QWN0aXZlV2l0aFVuZGVybGluZSA9IGZhbHNlKSBhbmQgKEB0ZXJ0aWFyeUFjdGl2ZVdpdGhPdmVybGluZSA9IGZhbHNlKXtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgY29sb3I6IEB0ZXJ0aWFyeUFjdGl2ZUNvbG9yO1xuICBiYWNrZ3JvdW5kOiBAdGVydGlhcnlBY3RpdmVCYWNrZ3JvdW5kQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgTGFiZWxlZCBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5sYWJlbGVkLmljb24uYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IEBsYWJlbGVkSWNvblBhZGRpbmcgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogQGhvcml6b250YWxQYWRkaW5nICFpbXBvcnRhbnQ7XG59XG5cbi8qIExlZnQgTGFiZWxlZCAqL1xuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zID4gLmJ1dHRvbiA+IC5pY29uLFxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b24gPiAuaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGFuaW1hdGlvbjpub25lO1xuICBwYWRkaW5nOiBAdmVydGljYWxQYWRkaW5nIDAgQHZlcnRpY2FsUGFkZGluZyAwO1xuXG4gIG1hcmdpbjogQGxhYmVsZWRJY29uTWFyZ2luO1xuICB3aWR0aDogQGxhYmVsZWRJY29uV2lkdGg7XG4gIGJhY2tncm91bmQtY29sb3I6IEBsYWJlbGVkSWNvbkJhY2tncm91bmRDb2xvcjtcbiAgY29sb3I6IEBsYWJlbGVkSWNvbkNvbG9yO1xuICBib3gtc2hhZG93OiBAbGFiZWxlZEljb25MZWZ0U2hhZG93O1xufVxuXG4vKiBSaWdodCBMYWJlbGVkICovXG4udWlbY2xhc3MqPVwicmlnaHQgbGFiZWxlZFwiXS5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IEBsYWJlbGVkSWNvblBhZGRpbmcgIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiBAaG9yaXpvbnRhbFBhZGRpbmcgIWltcG9ydGFudDtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdLmljb24uYnV0dG9uID4gLmljb24ge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xuICBib3gtc2hhZG93OiBAbGFiZWxlZEljb25SaWdodFNoYWRvdztcbn1cblxuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgPiAuYnV0dG9uID4gLmljb246YmVmb3JlLFxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b24gPiAuaWNvbjpiZWZvcmUsXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgPiAuYnV0dG9uID4gLmljb246YWZ0ZXIsXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiA+IC5pY29uOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbiA+IC5pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi51aS5sYWJlbGVkLmljb24uYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkID4gLmljb24ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xufVxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCA+IC5pY29uIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xufVxuLnVpLnZlcnRpY2FsLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQgPiAuaWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG59XG4udWkudmVydGljYWwubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkID4gLmljb24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xufVxuXG4vKiBMb2FkaW5nIEljb24gaW4gTGFiZWxlZCBCdXR0b24gKi9cbi51aS5sYWJlbGVkLmljb24uYnV0dG9uID4gLmxvYWRpbmcuaWNvbjpiZWZvcmUge1xuICBhbmltYXRpb246IGxvYWRlciAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUb2dnbGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRvZ2dsZSAoTW9kaWZpZXMgYWN0aXZlIHN0YXRlIHRvIGdpdmUgYWZmb3JkYW5jZXMpICovXG4udWkudG9nZ2xlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYnV0dG9ucyAuYnV0dG9uLnRvZ2dsZS5hY3RpdmUsXG4udWkuYnV0dG9uLnRvZ2dsZS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcG9zaXRpdmVDb2xvcjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IEBpbnZlcnRlZFRleHRTaGFkb3c7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG59XG4udWkuYnV0dG9uLnRvZ2dsZS5hY3RpdmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcG9zaXRpdmVDb2xvckhvdmVyO1xuICB0ZXh0LXNoYWRvdzogQGludmVydGVkVGV4dFNoYWRvdztcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENpcmN1bGFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2lyY3VsYXIuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMTBlbTtcbn1cbi51aS5jaXJjdWxhci5idXR0b24gPiAuaWNvbiB7XG4gIHdpZHRoOiAxZW07XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIE9yIEJ1dHRvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJ1dHRvbnMgLm9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogQG9yR2FwO1xuICBoZWlnaHQ6IEBvckhlaWdodDtcbiAgei1pbmRleDogQG9yWkluZGV4O1xufVxuLnVpLmJ1dHRvbnMgLm9yOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG5cbiAgY29udGVudDogQG9yVGV4dDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQG9yQmFja2dyb3VuZENvbG9yO1xuICB0ZXh0LXNoYWRvdzogQG9yVGV4dFNoYWRvdztcblxuICBtYXJnaW4tdG9wOiBAb3JWZXJ0aWNhbE9mZnNldDtcbiAgbWFyZ2luLWxlZnQ6IEBvckhvcml6b250YWxPZmZzZXQ7XG5cbiAgd2lkdGg6IEBvckNpcmNsZVNpemU7XG4gIGhlaWdodDogQG9yQ2lyY2xlU2l6ZTtcblxuICBsaW5lLWhlaWdodDogQG9yTGluZUhlaWdodDtcbiAgY29sb3I6IEBvclRleHRDb2xvcjtcblxuICBmb250LXN0eWxlOiBAb3JUZXh0U3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiBAb3JUZXh0V2VpZ2h0O1xuXG4gIGJveC1zaGFkb3c6IEBvckJveFNoYWRvdztcbn1cbi51aS5idXR0b25zIC5vcltkYXRhLXRleHRdOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcbn1cblxuLyogRmx1aWQgT3IgKi9cbi51aS5mbHVpZC5idXR0b25zIC5vciB7XG4gIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG59XG4udWkuZmx1aWQuYnV0dG9ucyAub3I6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyogU2luZ3VsYXIgKi9cbi51aS5hdHRhY2hlZC5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IEBhdHRhY2hlZEJveFNoYWRvdztcbn1cblxuLyogVG9wIC8gQm90dG9tICovXG4udWkuYXR0YWNoZWQudG9wLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDA7XG59XG4udWkuYXR0YWNoZWQuYm90dG9tLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAYm9yZGVyUmFkaXVzIEBib3JkZXJSYWRpdXM7XG59XG5cbi8qIExlZnQgLyBSaWdodCAqL1xuLnVpLmxlZnQuYXR0YWNoZWQuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgcGFkZGluZy1yaWdodDogQGF0dGFjaGVkSG9yaXpvbnRhbFBhZGRpbmc7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgMCAwIEBib3JkZXJSYWRpdXM7XG59XG4udWkucmlnaHQuYXR0YWNoZWQuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IEBhdHRhY2hlZEhvcml6b250YWxQYWRkaW5nO1xuICBib3JkZXItcmFkaXVzOiAwIEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwO1xufVxuXG4vKiBQbHVyYWwgKi9cbi51aS5hdHRhY2hlZC5idXR0b25zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB6LWluZGV4OiBAYXR0YWNoZWRaSW5kZXg7XG4gIG1hcmdpbi1sZWZ0OiBAYXR0YWNoZWRPZmZzZXQ7XG4gIG1hcmdpbi1yaWdodDogQGF0dGFjaGVkT2Zmc2V0O1xufVxuLnVpLmF0dGFjaGVkLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIG1hcmdpbjogMDtcbn1cbi51aS5hdHRhY2hlZC5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLnVpLmF0dGFjaGVkLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLyogVG9wIC8gQm90dG9tICovXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmJ1dHRvbnMge1xuICBtYXJnaW4tYm90dG9tOiBAYXR0YWNoZWRPZmZzZXQ7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDA7XG59XG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgMCAwIDA7XG59XG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCBAYm9yZGVyUmFkaXVzIDAgMDtcbn1cblxuLnVpW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5idXR0b25zIHtcbiAgbWFyZ2luLXRvcDogQGF0dGFjaGVkT2Zmc2V0O1xuICBib3JkZXItcmFkaXVzOiAwIDAgQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzO1xufVxuLnVpW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCBAYm9yZGVyUmFkaXVzO1xufVxuLnVpW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAYm9yZGVyUmFkaXVzIDA7XG59XG5cbi8qIExlZnQgLyBSaWdodCAqL1xuLnVpW2NsYXNzKj1cImxlZnQgYXR0YWNoZWRcIl0uYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiBAYXR0YWNoZWRPZmZzZXQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzIDA7XG59XG4udWlbY2xhc3MqPVwibGVmdCBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogQGF0dGFjaGVkT2Zmc2V0O1xuICBib3JkZXItcmFkaXVzOiAwIEBib3JkZXJSYWRpdXMgMCAwO1xufVxuLnVpW2NsYXNzKj1cImxlZnQgYXR0YWNoZWRcIl0uYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogQGF0dGFjaGVkT2Zmc2V0O1xuICBib3JkZXItcmFkaXVzOiAwIDAgQGJvcmRlclJhZGl1cyAwO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgYXR0YWNoZWRcIl0uYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiBAYXR0YWNoZWRPZmZzZXQ7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgMCAwIEBib3JkZXJSYWRpdXM7XG59XG4udWlbY2xhc3MqPVwicmlnaHQgYXR0YWNoZWRcIl0uYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IEBhdHRhY2hlZE9mZnNldDtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cyAwIDAgMDtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiBAYXR0YWNoZWRPZmZzZXQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIEBib3JkZXJSYWRpdXM7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmx1aWQuYnV0dG9ucyxcbi51aS5mbHVpZC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS5mbHVpZC5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVpLnR3by5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkudHdvLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnVpLnRocmVlLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS50aHJlZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuXG4udWkuZm91ci5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkuZm91ci5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi51aS5maXZlLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS5maXZlLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnVpLnNpeC5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkuc2l4LmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDE2LjY2NiU7XG59XG5cbi51aS5zZXZlbi5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkuc2V2ZW4uYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogMTQuMjg1JTtcbn1cblxuLnVpLmVpZ2h0LmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cbi51aS5laWdodC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMi41MDAlO1xufVxuXG4udWkubmluZS5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkubmluZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMS4xMSU7XG59XG5cbi51aS50ZW4uYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnRlbi5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMCU7XG59XG5cbi51aS5lbGV2ZW4uYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmVsZXZlbi5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiA5LjA5JTtcbn1cblxuLnVpLnR3ZWx2ZS5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkudHdlbHZlLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDguMzMzMyU7XG59XG5cbi8qIEZsdWlkIFZlcnRpY2FsIEJ1dHRvbnMgKi9cbi51aS5mbHVpZC52ZXJ0aWNhbC5idXR0b25zLFxuLnVpLmZsdWlkLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IGF1dG87XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4udWkudHdvLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiA1MCU7XG59XG4udWkudGhyZWUudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDMzLjMzMyU7XG59XG4udWkuZm91ci52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMjUlO1xufVxuLnVpLmZpdmUudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDIwJTtcbn1cbi51aS5zaXgudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDE2LjY2NiU7XG59XG4udWkuc2V2ZW4udmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDE0LjI4NSU7XG59XG4udWkuZWlnaHQudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDEyLjUwMCU7XG59XG4udWkubmluZS52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMTEuMTElO1xufVxuLnVpLnRlbi52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMTAlO1xufVxuLnVpLmVsZXZlbi52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogOS4wOSU7XG59XG4udWkudHdlbHZlLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiA4LjMzMzMlO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMsIHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksICdAJywgJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG4gIEBoOiBAY29sb3JzW0BAY29sb3JdW2hvdmVyXTtcbiAgQGY6IEBjb2xvcnNbQEBjb2xvcl1bZm9jdXNdO1xuICBAZDogQGNvbG9yc1tAQGNvbG9yXVtkb3duXTtcbiAgQGE6IEBjb2xvcnNbQEBjb2xvcl1bYWN0aXZlXTtcbiAgQHQ6IEBjb2xvcnNbQEBjb2xvcl1bdGV4dF07XG4gIEBzOiBAY29sb3JzW0BAY29sb3JdW3NoYWRvd107XG4gIEBsOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0XTtcbiAgQGxoOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0SG92ZXJdO1xuICBAbGY6IEBjb2xvcnNbQEBjb2xvcl1bbGlnaHRGb2N1c107XG4gIEBsZDogQGNvbG9yc1tAQGNvbG9yXVtsaWdodERvd25dO1xuICBAbGE6IEBjb2xvcnNbQEBjb2xvcl1bbGlnaHRBY3RpdmVdO1xuICBAbHQ6IEBjb2xvcnNbQEBjb2xvcl1bbGlnaHRUZXh0XTtcbiAgQGxzOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0U2hhZG93XTtcbiAgQHR5OiBAY29sb3JzW0BAY29sb3JdW3RlcnRpYXJ5XTtcbiAgQHR5aDogQGNvbG9yc1tAQGNvbG9yXVt0ZXJ0aWFyeUhvdmVyXTtcbiAgQHR5ZjogQGNvbG9yc1tAQGNvbG9yXVt0ZXJ0aWFyeUZvY3VzXTtcbiAgQHR5YTogQGNvbG9yc1tAQGNvbG9yXVt0ZXJ0aWFyeUFjdGl2ZV07XG4gIEBpc0Rhcms6IEBjb2xvcnNbQEBjb2xvcl1baXNEYXJrXTtcbiAgQGlzVmVyeURhcms6IEBjb2xvcnNbQEBjb2xvcl1baXNWZXJ5RGFya107XG5cbiAgLnVpLkB7Y29sb3J9LmJ1dHRvbnMgLmJ1dHRvbixcbiAgLnVpLkB7Y29sb3J9LmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGM7XG4gICAgY29sb3I6IEB0O1xuICAgIHRleHQtc2hhZG93OiBAcztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBAY29sb3JlZEJhY2tncm91bmRJbWFnZTtcbiAgfVxuICAudWkuQHtjb2xvcn0uYnV0dG9uIHtcbiAgICBib3gtc2hhZG93OiBAY29sb3JlZEJveFNoYWRvdztcbiAgfVxuICAudWkuQHtjb2xvcn0uYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuICAudWkuQHtjb2xvcn0uYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAaDtcbiAgICBjb2xvcjogQHQ7XG4gICAgdGV4dC1zaGFkb3c6IEBzO1xuICB9XG4gIC51aS5Ae2NvbG9yfS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4gIC51aS5Ae2NvbG9yfS5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBmO1xuICAgIGNvbG9yOiBAdDtcbiAgICB0ZXh0LXNoYWRvdzogQHM7XG4gIH1cbiAgLnVpLkB7Y29sb3J9LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4gIC51aS5Ae2NvbG9yfS5idXR0b246YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZDtcbiAgICBjb2xvcjogQHQ7XG4gICAgdGV4dC1zaGFkb3c6IEBzO1xuICB9XG4gIC51aS5Ae2NvbG9yfS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuICAudWkuQHtjb2xvcn0uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4gIC51aS5Ae2NvbG9yfS5hY3RpdmUuYnV0dG9uLFxuICAudWkuQHtjb2xvcn0uYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGE7XG4gICAgY29sb3I6IEB0O1xuICAgIHRleHQtc2hhZG93OiBAcztcbiAgfVxuXG4gIC8qIEJhc2ljICovXG4gIC51aS5iYXNpYy5Ae2NvbG9yfS5idXR0b25zIC5idXR0b24sXG4gIC51aS5iYXNpYy5Ae2NvbG9yfS5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIEBiYXNpY0JvcmRlclNpemUgQGMgaW5zZXQgO1xuICAgIGNvbG9yOiBAYyA7XG4gIH1cbiAgLnVpLmJhc2ljLkB7Y29sb3J9LmJ1dHRvbnMgLmJ1dHRvbjpob3ZlcixcbiAgLnVpLmJhc2ljLkB7Y29sb3J9LmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIEBiYXNpY0NvbG9yZWRCb3JkZXJTaXplIEBoIGluc2V0IDtcbiAgICBjb2xvcjogQGggO1xuICB9XG4gIC51aS5iYXNpYy5Ae2NvbG9yfS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4gIC51aS5iYXNpYy5Ae2NvbG9yfS5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCBAYmFzaWNDb2xvcmVkQm9yZGVyU2l6ZSBAZiBpbnNldCA7XG4gICAgY29sb3I6IEBoIDtcbiAgfVxuICAudWkuYmFzaWMuQHtjb2xvcn0uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbiAgLnVpLmJhc2ljLkB7Y29sb3J9LmFjdGl2ZS5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCBAYmFzaWNDb2xvcmVkQm9yZGVyU2l6ZSBAYSBpbnNldCA7XG4gICAgY29sb3I6IEBkIDtcbiAgfVxuICAudWkuYmFzaWMuQHtjb2xvcn0uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbiAgLnVpLmJhc2ljLkB7Y29sb3J9LmJ1dHRvbjphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIEBiYXNpY0NvbG9yZWRCb3JkZXJTaXplIEBkIGluc2V0IDtcbiAgICBjb2xvcjogQGQgO1xuICB9XG4gIC51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLkB7Y29sb3J9LmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC1AYmFzaWNDb2xvcmVkQm9yZGVyU2l6ZTtcbiAgfVxuXG4gIC8qIEludmVydGVkICovXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b25zIC5idXR0b24sXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgJiB3aGVuIChAaXNEYXJrKSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCBAaW52ZXJ0ZWRCb3JkZXJTaXplIEBzb2xpZEJvcmRlckNvbG9yIGluc2V0IDtcbiAgICAgIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gICAgfVxuXG4gICAgJiB3aGVuIG5vdCAoQGlzRGFyaykge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgQGludmVydGVkQm9yZGVyU2l6ZSBAbCBpbnNldCA7XG4gICAgICBjb2xvcjogQGw7XG4gICAgfVxuICB9XG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b25zIC5idXR0b246aG92ZXIsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b246aG92ZXIsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b246Zm9jdXMsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYnV0dG9uLmFjdGl2ZSxcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b246YWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiBub25lIDtcbiAgICBjb2xvcjogQGx0O1xuICB9XG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b25zIC5idXR0b246aG92ZXIsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBsaDtcbiAgfVxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGY7XG4gIH1cbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5hY3RpdmUuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGE7XG4gIH1cbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5idXR0b246YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGQ7XG4gIH1cblxuICAvKiBJbnZlcnRlZCBCYXNpYyAqL1xuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYmFzaWMuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBAYmFzaWNJbnZlcnRlZEJveFNoYWRvdyA7XG4gICAgY29sb3I6IEB3aGl0ZSA7XG4gIH1cbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3ZlcixcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3ZlcixcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgQGludmVydGVkQm9yZGVyU2l6ZSBAbGggaW5zZXQgO1xuXG4gICAgJiB3aGVuIChAaXNEYXJrKSB7XG4gICAgICBjb2xvcjogQHdoaXRlIDtcbiAgICB9XG5cbiAgICAmIHdoZW4gbm90IChAaXNEYXJrKSB7XG4gICAgICBjb2xvcjogQGwgO1xuICAgIH1cbiAgfVxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCBAaW52ZXJ0ZWRCb3JkZXJTaXplIEBsZiBpbnNldCA7XG4gICAgY29sb3I6IEBsIDtcbiAgfVxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCBAaW52ZXJ0ZWRCb3JkZXJTaXplIEBsYSBpbnNldCA7XG5cbiAgICAmIHdoZW4gKEBpc0RhcmspIHtcbiAgICAgIGNvbG9yOiBAd2hpdGUgO1xuICAgIH1cblxuICAgICYgd2hlbiBub3QgKEBpc0RhcmspIHtcbiAgICAgIGNvbG9yOiBAbCA7XG4gICAgfVxuICB9XG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIEBpbnZlcnRlZEJvcmRlclNpemUgQGxkIGluc2V0IDtcblxuICAgICYgd2hlbiAoQGlzRGFyaykge1xuICAgICAgY29sb3I6IEB3aGl0ZSA7XG4gICAgfVxuXG4gICAgJiB3aGVuIG5vdCAoQGlzRGFyaykge1xuICAgICAgY29sb3I6IEBsIDtcbiAgICB9XG4gIH1cblxuICAvKiBUZXJ0aWFyeSAqL1xuXG4gIC51aS50ZXJ0aWFyeS5Ae2NvbG9yfS5idXR0b25zIC5idXR0b24sXG4gIC51aS50ZXJ0aWFyeS5Ae2NvbG9yfS5idXR0b25zIC50ZXJ0aWFyeS5idXR0b24sXG4gIC51aS50ZXJ0aWFyeS5Ae2NvbG9yfS5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgJiB3aGVuIChAdGVydGlhcnlXaXRoVW5kZXJsaW5lID0gdHJ1ZSkge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAtQHRlcnRpYXJ5TGluZUhlaWdodCAwIEB0eTtcbiAgICB9XG5cbiAgICAmIHdoZW4gKEB0ZXJ0aWFyeVdpdGhPdmVybGluZSA9IHRydWUpIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgQHRlcnRpYXJ5TGluZUhlaWdodCAwIEB0eTtcbiAgICB9XG5cbiAgICAmIHdoZW4gKEB0ZXJ0aWFyeVdpdGhVbmRlcmxpbmUgPSBmYWxzZSkgYW5kIChAdGVydGlhcnlXaXRoT3ZlcmxpbmUgPSBmYWxzZSl7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgICBjb2xvcjogQGMgO1xuICB9XG5cbiAgLnVpLnRlcnRpYXJ5LkB7Y29sb3J9LmJ1dHRvbnMgLmJ1dHRvbjpob3ZlcixcbiAgLnVpLnRlcnRpYXJ5LkB7Y29sb3J9LmJ1dHRvbnMgYnV0dG9uOmhvdmVyLFxuICAudWkudGVydGlhcnkuQHtjb2xvcn0uYnV0dG9uOmhvdmVyIHtcblxuICAgICYgd2hlbiAoQHRlcnRpYXJ5SG92ZXJXaXRoVW5kZXJsaW5lID0gdHJ1ZSkge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAtQHRlcnRpYXJ5TGluZUhlaWdodCAwIEB0eWg7XG4gICAgfVxuXG4gICAgJiB3aGVuIChAdGVydGlhcnlIb3ZlcldpdGhPdmVybGluZSA9IHRydWUpIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgQHRlcnRpYXJ5TGluZUhlaWdodCAwIEB0eWg7XG4gICAgfVxuXG4gICAgJiB3aGVuIChAdGVydGlhcnlIb3ZlcldpdGhVbmRlcmxpbmUgPSBmYWxzZSkgYW5kIChAdGVydGlhcnlIb3ZlcldpdGhPdmVybGluZSA9IGZhbHNlKSB7XG4gICAgICBib3gtc2hhZG93OiBub25lIDtcbiAgICB9XG5cbiAgICBjb2xvcjogQHR5aDtcbiAgfVxuXG4gIC51aS50ZXJ0aWFyeS5Ae2NvbG9yfS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4gIC51aS50ZXJ0aWFyeS5Ae2NvbG9yfS5idXR0b25zIC50ZXJ0aWFyeS5idXR0b246Zm9jdXMsXG4gIC51aS50ZXJ0aWFyeS5Ae2NvbG9yfS5idXR0b246Zm9jdXMge1xuXG4gICAgJiB3aGVuIChAdGVydGlhcnlGb2N1c1dpdGhVbmRlcmxpbmUgPSB0cnVlKSB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIC1AdGVydGlhcnlMaW5lSGVpZ2h0IDAgQHR5ZjtcbiAgICB9XG5cbiAgICAmIHdoZW4gKEB0ZXJ0aWFyeUZvY3VzV2l0aE92ZXJsaW5lID0gdHJ1ZSkge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCBAdGVydGlhcnlMaW5lSGVpZ2h0IDAgQHR5ZjtcbiAgICB9XG5cbiAgICAmIHdoZW4gKEB0ZXJ0aWFyeUZvY3VzV2l0aFVuZGVybGluZSA9IGZhbHNlKSBhbmQgKEB0ZXJ0aWFyeUZvY3VzV2l0aE92ZXJsaW5lID0gZmFsc2UpIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgY29sb3I6IEB0eWY7XG4gIH1cblxuICAudWkudGVydGlhcnkuQHtjb2xvcn0uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbiAgLnVpLnRlcnRpYXJ5LkB7Y29sb3J9LmJ1dHRvbnMgLnRlcnRpYXJ5LmFjdGl2ZS5idXR0b24sXG4gIC51aS50ZXJ0aWFyeS5Ae2NvbG9yfS5hY3RpdmUuYnV0dG9uLFxuICAudWkudGVydGlhcnkuQHtjb2xvcn0uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbiAgLnVpLnRlcnRpYXJ5LkB7Y29sb3J9LmJ1dHRvbnMgLnRlcnRpYXJ5LmJ1dHRvbjphY3RpdmUsXG4gIC51aS50ZXJ0aWFyeS5Ae2NvbG9yfS5idXR0b246YWN0aXZlIHtcblxuICAgICYgd2hlbiAoQHRlcnRpYXJ5QWN0aXZlV2l0aFVuZGVybGluZSA9IHRydWUpIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLUB0ZXJ0aWFyeUxpbmVIZWlnaHQgMCBAdHlhO1xuICAgIH1cblxuICAgICYgd2hlbiAoQHRlcnRpYXJ5QWN0aXZlV2l0aE92ZXJsaW5lID0gdHJ1ZSkge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCBAdGVydGlhcnlMaW5lSGVpZ2h0IDAgQHR5YTtcbiAgICB9XG5cbiAgICAmIHdoZW4gKEB0ZXJ0aWFyeUFjdGl2ZVdpdGhVbmRlcmxpbmUgPSBmYWxzZSkgYW5kIChAdGVydGlhcnlBY3RpdmVXaXRoT3ZlcmxpbmUgPSBmYWxzZSkge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICBjb2xvcjogQGEgO1xuICB9XG59KVxuXG4uYWRkQ29uc2VxdWVuY2UoQGNvbnNlcXVlbmNlKSB7XG5cbiAgQF9iYWNrZ3JvdW5kQ29sb3I6IFwiQHtjb25zZXF1ZW5jZX1Db2xvclwiO1xuICBAX2JhY2tncm91bmRDb2xvckhvdmVyOiBcIkB7Y29uc2VxdWVuY2V9Q29sb3JIb3ZlclwiO1xuICBAX2JhY2tncm91bmRDb2xvckZvY3VzOiBcIkB7Y29uc2VxdWVuY2V9Q29sb3JGb2N1c1wiO1xuICBAX2JhY2tncm91bmRDb2xvckRvd246IFwiQHtjb25zZXF1ZW5jZX1Db2xvckRvd25cIjtcbiAgQF9iYWNrZ3JvdW5kQ29sb3JBY3RpdmU6IFwiQHtjb25zZXF1ZW5jZX1Db2xvckFjdGl2ZVwiO1xuICBAX3RleHRDb2xvcjogXCJAe2NvbnNlcXVlbmNlfVRleHRDb2xvclwiO1xuICBAX3RleHRTaGFkb3c6IFwiQHtjb25zZXF1ZW5jZX1UZXh0U2hhZG93XCI7XG5cbiAgLyogU3RhbmRhcmQgKi9cbiAgLnVpLkB7Y29uc2VxdWVuY2V9LmJ1dHRvbnMgLmJ1dHRvbixcbiAgLnVpLkB7Y29uc2VxdWVuY2V9LmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQEBfYmFja2dyb3VuZENvbG9yO1xuICAgIGNvbG9yOiBAQF90ZXh0Q29sb3I7XG4gICAgdGV4dC1zaGFkb3c6IEBAX3RleHRTaGFkb3c7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogQGNvbG9yZWRCYWNrZ3JvdW5kSW1hZ2U7XG4gIH1cbiAgLnVpLkB7Y29uc2VxdWVuY2V9LmJ1dHRvbiB7XG4gICAgYm94LXNoYWRvdzogQGNvbG9yZWRCb3hTaGFkb3c7XG4gIH1cbiAgLnVpLkB7Y29uc2VxdWVuY2V9LmJ1dHRvbnMgLmJ1dHRvbjpob3ZlcixcbiAgLnVpLkB7Y29uc2VxdWVuY2V9LmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQEBfYmFja2dyb3VuZENvbG9ySG92ZXI7XG4gICAgY29sb3I6IEBAX3RleHRDb2xvcjtcbiAgICB0ZXh0LXNoYWRvdzogQEBfdGV4dFNoYWRvdztcbiAgfVxuICAudWkuQHtjb25zZXF1ZW5jZX0uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuICAudWkuQHtjb25zZXF1ZW5jZX0uYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAQF9iYWNrZ3JvdW5kQ29sb3JGb2N1cztcbiAgICBjb2xvcjogQEBfdGV4dENvbG9yO1xuICAgIHRleHQtc2hhZG93OiBAQF90ZXh0U2hhZG93O1xuICB9XG4gIC51aS5Ae2NvbnNlcXVlbmNlfS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuICAudWkuQHtjb25zZXF1ZW5jZX0uYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQEBfYmFja2dyb3VuZENvbG9yRG93bjtcbiAgICBjb2xvcjogQEBfdGV4dENvbG9yO1xuICAgIHRleHQtc2hhZG93OiBAQF90ZXh0U2hhZG93O1xuICB9XG4gIC51aS5Ae2NvbnNlcXVlbmNlfS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuICAudWkuQHtjb25zZXF1ZW5jZX0uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4gIC51aS5Ae2NvbnNlcXVlbmNlfS5hY3RpdmUuYnV0dG9uLFxuICAudWkuQHtjb25zZXF1ZW5jZX0uYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQEBfYmFja2dyb3VuZENvbG9yQWN0aXZlO1xuICAgIGNvbG9yOiBAQF90ZXh0Q29sb3I7XG4gICAgdGV4dC1zaGFkb3c6IEBAX3RleHRTaGFkb3c7XG4gIH1cblxuICAvKiBCYXNpYyAqL1xuICAudWkuYmFzaWMuQHtjb25zZXF1ZW5jZX0uYnV0dG9ucyAuYnV0dG9uLFxuICAudWkuYmFzaWMuQHtjb25zZXF1ZW5jZX0uYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCBAYmFzaWNCb3JkZXJTaXplIEBAX2JhY2tncm91bmRDb2xvciBpbnNldDtcbiAgICBjb2xvcjogQEBfYmFja2dyb3VuZENvbG9yO1xuICB9XG4gIC51aS5iYXNpYy5Ae2NvbnNlcXVlbmNlfS5idXR0b25zIC5idXR0b246aG92ZXIsXG4gIC51aS5iYXNpYy5Ae2NvbnNlcXVlbmNlfS5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIEBiYXNpY0NvbG9yZWRCb3JkZXJTaXplIEBAX2JhY2tncm91bmRDb2xvckhvdmVyIGluc2V0O1xuICAgIGNvbG9yOiBAQF9iYWNrZ3JvdW5kQ29sb3JIb3ZlcjtcbiAgfVxuICAudWkuYmFzaWMuQHtjb25zZXF1ZW5jZX0uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuICAudWkuYmFzaWMuQHtjb25zZXF1ZW5jZX0uYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCBAYmFzaWNDb2xvcmVkQm9yZGVyU2l6ZSBAQF9iYWNrZ3JvdW5kQ29sb3JGb2N1cyBpbnNldDtcbiAgICBjb2xvcjogQEBfYmFja2dyb3VuZENvbG9ySG92ZXI7XG4gIH1cbiAgLnVpLmJhc2ljLkB7Y29uc2VxdWVuY2V9LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4gIC51aS5iYXNpYy5Ae2NvbnNlcXVlbmNlfS5hY3RpdmUuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCBAYmFzaWNDb2xvcmVkQm9yZGVyU2l6ZSBAQF9iYWNrZ3JvdW5kQ29sb3JBY3RpdmUgaW5zZXQ7XG4gICAgY29sb3I6IEBAX2JhY2tncm91bmRDb2xvckRvd247XG4gIH1cbiAgLnVpLmJhc2ljLkB7Y29uc2VxdWVuY2V9LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4gIC51aS5iYXNpYy5Ae2NvbnNlcXVlbmNlfS5idXR0b246YWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCBAYmFzaWNDb2xvcmVkQm9yZGVyU2l6ZSBAQF9iYWNrZ3JvdW5kQ29sb3JEb3duIGluc2V0O1xuICAgIGNvbG9yOiBAQF9iYWNrZ3JvdW5kQ29sb3JEb3duO1xuICB9XG4gIC51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLkB7Y29uc2VxdWVuY2V9LmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC1AYmFzaWNDb2xvcmVkQm9yZGVyU2l6ZTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLVxuICAgIFBvc2l0aXZlXG4tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmFkZENvbnNlcXVlbmNlKHBvc2l0aXZlKTtcblxuLyotLS0tLS0tLS0tLS0tLS1cbiAgICAgTmVnYXRpdmVcbi0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYWRkQ29uc2VxdWVuY2UobmVnYXRpdmUpO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgR3JvdXBzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmb250LXNpemU6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luOiBAdmVydGljYWxNYXJnaW4gQGhvcml6b250YWxNYXJnaW4gMCAwO1xufVxuLnVpLmJ1dHRvbnM6bm90KC5iYXNpYyk6bm90KC5pbnZlcnRlZCkge1xuICBib3gtc2hhZG93OiBAZ3JvdXBCb3hTaGFkb3c7XG59XG5cbi8qIENsZWFyZml4ICovXG4udWkuYnV0dG9uczphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBTdGFuZGFyZCBHcm91cCAqL1xuLnVpLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IEBncm91cEJ1dHRvbk9mZnNldDtcbn1cbi51aS5idXR0b25zOm5vdCguYmFzaWMpOm5vdCguaW52ZXJ0ZWQpID4gLmJ1dHRvbjpub3QoLmJhc2ljKTpub3QoLmludmVydGVkKSB7XG4gIGJveC1zaGFkb3c6IEBncm91cEJ1dHRvbkJveFNoYWRvdztcbn1cblxuLnVpLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogQGJvcmRlclJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogQGJvcmRlclJhZGl1cztcbn1cbi51aS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQGJvcmRlclJhZGl1cztcbn1cblxuLyogVmVydGljYWwgIFN0eWxlICovXG4udWkudmVydGljYWwuYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogQHZlcnRpY2FsR3JvdXBPZmZzZXQ7XG4gIGJveC1zaGFkb3c6IEB2ZXJ0aWNhbEJveFNoYWRvdztcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi51aS52ZXJ0aWNhbC5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQGJvcmRlclJhZGl1cztcbn1cbi51aS52ZXJ0aWNhbC5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xufVxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbjpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gQ29udGFpbmVyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnZWxlbWVudCc7XG5AZWxlbWVudCA6ICdjb250YWluZXInO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb250YWluZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIEFsbCBTaXplcyAqL1xuLnVpLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IEBtYXhXaWR0aDtcbn1cblxuLyogTW9iaWxlICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS51aS51aS5jb250YWluZXI6bm90KC5mbHVpZCkge1xuICAgIHdpZHRoOiBAbW9iaWxlV2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IEBtb2JpbGVHdXR0ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiBAbW9iaWxlR3V0dGVyO1xuICB9XG4gIC51aS51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IEBtb2JpbGVHcmlkV2lkdGg7XG4gIH1cbiAgLnVpLnVpLnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBAbW9iaWxlUmVsYXhlZEdyaWRXaWR0aDtcbiAgfVxuICAudWkudWkudmVyeS5yZWxheGVkLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogQG1vYmlsZVZlcnlSZWxheGVkR3JpZFdpZHRoO1xuICB9XG59XG5cbi8qIFRhYmxldCAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAdGFibGV0QnJlYWtwb2ludCkgYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0VGFibGV0U2NyZWVuKSB7XG4gIC51aS51aS51aS5jb250YWluZXI6bm90KC5mbHVpZCkge1xuICAgIHdpZHRoOiBAdGFibGV0V2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IEB0YWJsZXRHdXR0ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdGFibGV0R3V0dGVyO1xuICB9XG4gIC51aS51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IEB0YWJsZXRHcmlkV2lkdGg7XG4gIH1cbiAgLnVpLnVpLnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBAdGFibGV0UmVsYXhlZEdyaWRXaWR0aDtcbiAgfVxuICAudWkudWkudmVyeS5yZWxheGVkLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogQHRhYmxldFZlcnlSZWxheGVkR3JpZFdpZHRoO1xuICB9XG59XG5cbi8qIFNtYWxsIE1vbml0b3IgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQGNvbXB1dGVyQnJlYWtwb2ludCkgYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0U21hbGxNb25pdG9yKSB7XG4gIC51aS51aS51aS5jb250YWluZXI6bm90KC5mbHVpZCkge1xuICAgIHdpZHRoOiBAY29tcHV0ZXJXaWR0aDtcbiAgICBtYXJnaW4tbGVmdDogQGNvbXB1dGVyR3V0dGVyO1xuICAgIG1hcmdpbi1yaWdodDogQGNvbXB1dGVyR3V0dGVyO1xuICB9XG4gIC51aS51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IEBjb21wdXRlckdyaWRXaWR0aDtcbiAgfVxuICAudWkudWkucmVsYXhlZC5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IEBjb21wdXRlclJlbGF4ZWRHcmlkV2lkdGg7XG4gIH1cbiAgLnVpLnVpLnZlcnkucmVsYXhlZC5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IEBjb21wdXRlclZlcnlSZWxheGVkR3JpZFdpZHRoO1xuICB9XG59XG5cbi8qIExhcmdlIE1vbml0b3IgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQGxhcmdlTW9uaXRvckJyZWFrcG9pbnQpIHtcbiAgLnVpLnVpLnVpLmNvbnRhaW5lcjpub3QoLmZsdWlkKSB7XG4gICAgd2lkdGg6IEBsYXJnZU1vbml0b3JXaWR0aDtcbiAgICBtYXJnaW4tbGVmdDogQGxhcmdlTW9uaXRvckd1dHRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6IEBsYXJnZU1vbml0b3JHdXR0ZXI7XG4gIH1cbiAgLnVpLnVpLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogQGxhcmdlTW9uaXRvckdyaWRXaWR0aDtcbiAgfVxuICAudWkudWkucmVsYXhlZC5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IEBsYXJnZU1vbml0b3JSZWxheGVkR3JpZFdpZHRoO1xuICB9XG4gIC51aS51aS52ZXJ5LnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBAbGFyZ2VNb25pdG9yVmVyeVJlbGF4ZWRHcmlkV2lkdGg7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4vKiBUZXh0IENvbnRhaW5lciAqL1xuLnVpLnRleHQuY29udGFpbmVyIHtcbiAgZm9udC1mYW1pbHk6IEB0ZXh0Rm9udEZhbWlseTtcbiAgbWF4LXdpZHRoOiBAdGV4dFdpZHRoO1xuICBsaW5lLWhlaWdodDogQHRleHRMaW5lSGVpZ2h0O1xuICBmb250LXNpemU6IEB0ZXh0U2l6ZTtcbn1cblxuLyogRmx1aWQgKi9cbi51aS5mbHVpZC5jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWlbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0uY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4udWkuanVzdGlmaWVkLmNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIGh5cGhlbnM6IGF1dG87XG59XG5cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gRGl2aWRlclxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2VsZW1lbnQnO1xuQGVsZW1lbnQgOiAnZGl2aWRlcic7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRGl2aWRlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmRpdmlkZXIge1xuICBtYXJnaW46IEBtYXJnaW47XG5cbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGhlaWdodDogMDtcblxuICBmb250LXdlaWdodDogQGZvbnRXZWlnaHQ7XG4gIHRleHQtdHJhbnNmb3JtOiBAdGV4dFRyYW5zZm9ybTtcbiAgbGV0dGVyLXNwYWNpbmc6IEBsZXR0ZXJTcGFjaW5nO1xuICBjb2xvcjogQGNvbG9yO1xuXG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGl2aWRlcjpub3QoLnZlcnRpY2FsKTpub3QoLmhvcml6b250YWwpIHtcbiAgYm9yZGVyLXRvcDogQHNoYWRvd1dpZHRoIHNvbGlkIEBzaGFkb3dDb2xvcjtcbiAgYm9yZGVyLWJvdHRvbTogQGhpZ2hsaWdodFdpZHRoIHNvbGlkIEBoaWdobGlnaHRDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBBbGxvdyBkaXZpZGVyIGJldHdlZW4gZWFjaCBjb2x1bW4gcm93ICovXG4udWkuZ3JpZCA+IC5jb2x1bW4gKyAuZGl2aWRlcixcbi51aS5ncmlkID4gLnJvdyA+IC5jb2x1bW4gKyAuZGl2aWRlciB7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEhvcml6b250YWxcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ob3Jpem9udGFsLmRpdmlkZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogQGhvcml6b250YWxNYXJnaW47XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YmVmb3JlLFxuLnVpLmhvcml6b250YWwuZGl2aWRlcjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4udWkuaG9yaXpvbnRhbC5kaXZpZGVyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IEBob3Jpem9udGFsRGl2aWRlck1hcmdpbiB0b3AgNTAlO1xufVxuLnVpLmhvcml6b250YWwuZGl2aWRlcjphZnRlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgQGhvcml6b250YWxEaXZpZGVyTWFyZ2luIHRvcCA1MCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBWZXJ0aWNhbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZlcnRpY2FsLmRpdmlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG5cbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiA1MCU7XG5cbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4udWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4udWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICBjb250ZW50OiAnJztcbiAgei1pbmRleDogMztcblxuICBib3JkZXItbGVmdDogQHNoYWRvd1dpZHRoIHNvbGlkIEBzaGFkb3dDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0OiBAaGlnaGxpZ2h0V2lkdGggc29saWQgQGhpZ2hsaWdodENvbG9yO1xuXG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IEB2ZXJ0aWNhbERpdmlkZXJIZWlnaHQ7XG59XG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSB7XG4gIHRvcDogLTEwMCU7XG59XG4udWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuXG4vKiBJbnNpZGUgZ3JpZCAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogQGxhcmdlc3RNb2JpbGVTY3JlZW4pIHtcblxuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXIsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IEBob3Jpem9udGFsTWFyZ2luO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLnVpLnN0YWNrYWJsZS5ncmlkIC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbiAgLnVpLmdyaWQgLnN0YWNrYWJsZS5yb3cgLnVpLnZlcnRpY2FsLmRpdmlkZXI6YmVmb3JlLFxuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXI6YWZ0ZXIsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXI6YmVmb3JlLFxuICAudWkuZ3JpZCAuc3RhY2thYmxlLnJvdyAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IEBob3Jpem9udGFsRGl2aWRlck1hcmdpbiB0b3AgNTAlO1xuICB9XG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjphZnRlcixcbiAgLnVpLmdyaWQgLnN0YWNrYWJsZS5yb3cgLnVpLnZlcnRpY2FsLmRpdmlkZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgQGhvcml6b250YWxEaXZpZGVyTWFyZ2luIHRvcCA1MCU7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZXIgPiAuaWNvbiB7XG4gIG1hcmdpbjogQGRpdmlkZXJJY29uTWFyZ2luO1xuICBmb250LXNpemU6IEBkaXZpZGVySWNvblNpemU7XG4gIGhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5ob3Jpem9udGFsLmRpdmlkZXJbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdIHtcbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi51aS5ob3Jpem9udGFsLmRpdmlkZXJbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSB7XG4gICY6YmVmb3JlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEhpZGRlblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhpZGRlbi5kaXZpZGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLnVpLmhpZGRlbi5kaXZpZGVyOmJlZm9yZSxcbi51aS5oaWRkZW4uZGl2aWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZXIuaW52ZXJ0ZWQsXG4udWkudmVydGljYWwuaW52ZXJ0ZWQuZGl2aWRlcixcbi51aS5ob3Jpem9udGFsLmludmVydGVkLmRpdmlkZXIge1xuICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xufVxuLnVpLmRpdmlkZXIuaW52ZXJ0ZWQsXG4udWkuZGl2aWRlci5pbnZlcnRlZDphZnRlcixcbi51aS5kaXZpZGVyLmludmVydGVkOmJlZm9yZSB7XG4gIGJvcmRlci10b3AtY29sb3I6IEBpbnZlcnRlZFNoYWRvd0NvbG9yICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiBAaW52ZXJ0ZWRTaGFkb3dDb2xvciAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiBAaW52ZXJ0ZWRIaWdobGlnaHRDb2xvciAhaW1wb3J0YW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IEBpbnZlcnRlZEhpZ2hsaWdodENvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBGaXR0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5maXR0ZWQuZGl2aWRlciB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENsZWFyaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2xlYXJpbmcuZGl2aWRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU2VjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlY3Rpb24uZGl2aWRlciB7XG4gIG1hcmdpbi10b3A6IEBzZWN0aW9uTWFyZ2luO1xuICBtYXJnaW4tYm90dG9tOiBAc2VjdGlvbk1hcmdpbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZXIge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG5cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4udWkuaG9yaXpvbnRhbC5kaXZpZGVyOmJlZm9yZSxcbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCYUFBQUFBQ0NBWUFBQUN1VEh1S0FBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBeUZwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVOUzFqTURFMElEYzVMakUxTVRRNE1Td2dNakF4TXk4d015OHhNeTB4TWpvd09Ub3hOU0FnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdQU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2SWlCNGJXeHVjenA0YlhCTlRUMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzk0WVhBdk1TNHdMMjF0THlJZ2VHMXNibk02YzNSU1pXWTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl6Vkhsd1pTOVNaWE52ZFhKalpWSmxaaU1pSUhodGNEcERjbVZoZEc5eVZHOXZiRDBpUVdSdlltVWdVR2h2ZEc5emFHOXdJRU5ESUNoWGFXNWtiM2R6S1NJZ2VHMXdUVTA2U1c1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRvMU9UaEJSRFk0T1VORE1UWXhNVVUwT1VFM05VVkdPRUpETXpNek1qRTJOeUlnZUcxd1RVMDZSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRG8xT1RoQlJEWTRRVU5ETVRZeE1VVTBPVUUzTlVWR09FSkRNek16TWpFMk55SStJRHg0YlhCTlRUcEVaWEpwZG1Wa1JuSnZiU0J6ZEZKbFpqcHBibk4wWVc1alpVbEVQU0o0YlhBdWFXbGtPalU1T0VGRU5qZzNRME14TmpFeFJUUTVRVGMxUlVZNFFrTXpNek15TVRZM0lpQnpkRkpsWmpwa2IyTjFiV1Z1ZEVsRVBTSjRiWEF1Wkdsa09qVTVPRUZFTmpnNFEwTXhOakV4UlRRNVFUYzFSVVk0UWtNek16TXlNVFkzSWk4K0lEd3ZjbVJtT2tSbGMyTnlhWEIwYVc5dVBpQThMM0prWmpwU1JFWStJRHd2ZURwNGJYQnRaWFJoUGlBOFAzaHdZV05yWlhRZ1pXNWtQU0p5SWo4K1ZVNTEzZ0FBQURWSlJFRlVlTnJzMERFTkFDQVFCREJJV0xHQkpRYnkvbVVjSm41c0pYUW1PUU1BQUFBQUFKcXQrMnByQUFBQUFBQ2cyeGRnQU5rNkJFVnVKZ3lNQUFBQUFFbEZUa1N1UW1DQycpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAoQHRhYmxldEJyZWFrcG9pbnQgLSAxcHgpKSB7XG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbiAgLnVpLnN0YWNrYWJsZS5ncmlkIC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyLFxuICAudWkuZ3JpZCAuc3RhY2thYmxlLnJvdyAudWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQmFBQUFBQUNDQVlBQUFDdVRIdUtBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQXlGcFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrSUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1TlMxak1ERTBJRGM1TGpFMU1UUTRNU3dnTWpBeE15OHdNeTh4TXkweE1qb3dPVG94TlNBZ0lDQWdJQ0FnSWo0Z1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNGdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlnZUcxc2JuTTZlRzF3UFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdklpQjRiV3h1Y3pwNGJYQk5UVDBpYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5NFlYQXZNUzR3TDIxdEx5SWdlRzFzYm5NNmMzUlNaV1k5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5elZIbHdaUzlTWlhOdmRYSmpaVkpsWmlNaUlIaHRjRHBEY21WaGRHOXlWRzl2YkQwaVFXUnZZbVVnVUdodmRHOXphRzl3SUVORElDaFhhVzVrYjNkektTSWdlRzF3VFUwNlNXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEbzFPVGhCUkRZNE9VTkRNVFl4TVVVME9VRTNOVVZHT0VKRE16TXpNakUyTnlJZ2VHMXdUVTA2Ukc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRvMU9UaEJSRFk0UVVORE1UWXhNVVUwT1VFM05VVkdPRUpETXpNek1qRTJOeUkrSUR4NGJYQk5UVHBFWlhKcGRtVmtSbkp2YlNCemRGSmxaanBwYm5OMFlXNWpaVWxFUFNKNGJYQXVhV2xrT2pVNU9FRkVOamczUTBNeE5qRXhSVFE1UVRjMVJVWTRRa016TXpNeU1UWTNJaUJ6ZEZKbFpqcGtiMk4xYldWdWRFbEVQU0o0YlhBdVpHbGtPalU1T0VGRU5qZzRRME14TmpFeFJUUTVRVGMxUlVZNFFrTXpNek15TVRZM0lpOCtJRHd2Y21SbU9rUmxjMk55YVhCMGFXOXVQaUE4TDNKa1pqcFNSRVkrSUR3dmVEcDRiWEJ0WlhSaFBpQThQM2h3WVdOclpYUWdaVzVrUFNKeUlqOCtWVTUxM2dBQUFEVkpSRUZVZU5yczBERU5BQ0FRQkRCSVdMR0JKUWJ5L21VY0puNXNKWFFtT1FNQUFBQUFBSnF0KzJwckFBQUFBQUNnMnhkZ0FOazZCRVZ1Smd5TUFBQUFBRWxGVGtTdVFtQ0MnKTtcbiAgfVxufSIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEZsYWdcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2VsZW1lbnQnO1xuQGVsZW1lbnQgOiAnZmxhZyc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEZsYWdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbmkuZmxhZzpub3QoLmljb24pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIHdpZHRoOiBAd2lkdGg7XG4gIGhlaWdodDogQGhlaWdodDtcblxuICBsaW5lLWhlaWdodDogQGhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IEB2ZXJ0aWNhbEFsaWduO1xuICBtYXJnaW46IDAgQG1hcmdpbiAwIDA7XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuXG4gIHNwZWFrOiBub25lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBTcHJpdGUgKi9cbmkuZmxhZzpub3QoLmljb24pOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQ6IHVybChAc3ByaXRlUGF0aCkgbm8tcmVwZWF0IC0xMDhweCAtMTk3NnB4O1xuICB3aWR0aDogQHdpZHRoO1xuICBoZWlnaHQ6IEBoZWlnaHQ7XG59XG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIEZsYWcgU3ByaXRlIEJhc2VkIE9uIGh0dHA6Ly93d3cuZmFtZmFtZmFtLmNvbS9sYWIvaWNvbnMvZmxhZ3MvICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKnJ0bDpiZWdpbjppZ25vcmUqL1xuXG5pLmZsYWcuYWQ6YmVmb3JlLFxuaS5mbGFnLmFuZG9ycmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xufVxuaS5mbGFnLmFlOmJlZm9yZSxcbmkuZmxhZy51bml0ZWQuYXJhYi5lbWlyYXRlczpiZWZvcmUsXG5pLmZsYWcudWFlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI2cHg7XG59XG5pLmZsYWcuYWY6YmVmb3JlLFxuaS5mbGFnLmFmZ2hhbmlzdGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTUycHg7XG59XG5pLmZsYWcuYWc6YmVmb3JlLFxuaS5mbGFnLmFudGlndWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzhweDtcbn1cbmkuZmxhZy5haTpiZWZvcmUsXG5pLmZsYWcuYW5ndWlsbGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTA0cHg7XG59XG5pLmZsYWcuYWw6YmVmb3JlLFxuaS5mbGFnLmFsYmFuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTMwcHg7XG59XG5pLmZsYWcuYW06YmVmb3JlLFxuaS5mbGFnLmFybWVuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTU2cHg7XG59XG5pLmZsYWcuYW46YmVmb3JlLFxuaS5mbGFnLm5ldGhlcmxhbmRzLmFudGlsbGVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE4MnB4O1xufVxuaS5mbGFnLmFvOmJlZm9yZSxcbmkuZmxhZy5hbmdvbGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjA4cHg7XG59XG5pLmZsYWcuYXI6YmVmb3JlLFxuaS5mbGFnLmFyZ2VudGluYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMzRweDtcbn1cbmkuZmxhZy5hczpiZWZvcmUsXG5pLmZsYWcuYW1lcmljYW4uc2Ftb2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjYwcHg7XG59XG5pLmZsYWcuYXQ6YmVmb3JlLFxuaS5mbGFnLmF1c3RyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjg2cHg7XG59XG5pLmZsYWcuYXU6YmVmb3JlLFxuaS5mbGFnLmF1c3RyYWxpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMTJweDtcbn1cbmkuZmxhZy5hdzpiZWZvcmUsXG5pLmZsYWcuYXJ1YmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzM4cHg7XG59XG5pLmZsYWcuYXg6YmVmb3JlLFxuaS5mbGFnLmFsYW5kLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzY0cHg7XG59XG5pLmZsYWcuYXo6YmVmb3JlLFxuaS5mbGFnLmF6ZXJiYWlqYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzkwcHg7XG59XG5pLmZsYWcuYmE6YmVmb3JlLFxuaS5mbGFnLmJvc25pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00MTZweDtcbn1cbmkuZmxhZy5iYjpiZWZvcmUsXG5pLmZsYWcuYmFyYmFkb3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDQycHg7XG59XG5pLmZsYWcuYmQ6YmVmb3JlLFxuaS5mbGFnLmJhbmdsYWRlc2g6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDY4cHg7XG59XG5pLmZsYWcuYmU6YmVmb3JlLFxuaS5mbGFnLmJlbGdpdW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDk0cHg7XG59XG5pLmZsYWcuYmY6YmVmb3JlLFxuaS5mbGFnLmJ1cmtpbmEuZmFzbzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01MjBweDtcbn1cbmkuZmxhZy5iZzpiZWZvcmUsXG5pLmZsYWcuYnVsZ2FyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTQ2cHg7XG59XG5pLmZsYWcuYmg6YmVmb3JlLFxuaS5mbGFnLmJhaHJhaW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTcycHg7XG59XG5pLmZsYWcuYmk6YmVmb3JlLFxuaS5mbGFnLmJ1cnVuZGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTk4cHg7XG59XG5pLmZsYWcuYmo6YmVmb3JlLFxuaS5mbGFnLmJlbmluOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTYyNHB4O1xufVxuaS5mbGFnLmJtOmJlZm9yZSxcbmkuZmxhZy5iZXJtdWRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTY1MHB4O1xufVxuaS5mbGFnLmJuOmJlZm9yZSxcbmkuZmxhZy5icnVuZWk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNjc2cHg7XG59XG5pLmZsYWcuYm86YmVmb3JlLFxuaS5mbGFnLmJvbGl2aWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzAycHg7XG59XG5pLmZsYWcuYnI6YmVmb3JlLFxuaS5mbGFnLmJyYXppbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03MjhweDtcbn1cbmkuZmxhZy5iczpiZWZvcmUsXG5pLmZsYWcuYmFoYW1hczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03NTRweDtcbn1cbmkuZmxhZy5idDpiZWZvcmUsXG5pLmZsYWcuYmh1dGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTc4MHB4O1xufVxuaS5mbGFnLmJ2OmJlZm9yZSxcbmkuZmxhZy5ib3V2ZXQuaXNsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwNnB4O1xufVxuaS5mbGFnLmJ3OmJlZm9yZSxcbmkuZmxhZy5ib3Rzd2FuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04MzJweDtcbn1cbmkuZmxhZy5ieTpiZWZvcmUsXG5pLmZsYWcuYmVsYXJ1czpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04NThweDtcbn1cbmkuZmxhZy5iejpiZWZvcmUsXG5pLmZsYWcuYmVsaXplOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTg4NHB4O1xufVxuaS5mbGFnLmNhOmJlZm9yZSxcbmkuZmxhZy5jYW5hZGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtOTEwcHg7XG59XG5pLmZsYWcuY2M6YmVmb3JlLFxuaS5mbGFnLmNvY29zLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtOTYycHg7XG59XG5pLmZsYWcuY2Q6YmVmb3JlLFxuaS5mbGFnLmNvbmdvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTk4OHB4O1xufVxuaS5mbGFnLmNmOmJlZm9yZSxcbmkuZmxhZy5jZW50cmFsLmFmcmljYW4ucmVwdWJsaWM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTAxNHB4O1xufVxuaS5mbGFnLmNnOmJlZm9yZSxcbmkuZmxhZy5jb25nby5icmF6emF2aWxsZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMDQwcHg7XG59XG5pLmZsYWcuY2g6YmVmb3JlLFxuaS5mbGFnLnN3aXR6ZXJsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwNjZweDtcbn1cbmkuZmxhZy5jaTpiZWZvcmUsXG5pLmZsYWcuY290ZS5kaXZvaXJlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwOTJweDtcbn1cbmkuZmxhZy5jazpiZWZvcmUsXG5pLmZsYWcuY29vay5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTExMThweDtcbn1cbmkuZmxhZy5jbDpiZWZvcmUsXG5pLmZsYWcuY2hpbGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTE0NHB4O1xufVxuaS5mbGFnLmNtOmJlZm9yZSxcbmkuZmxhZy5jYW1lcm9vbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMTcwcHg7XG59XG5pLmZsYWcuY246YmVmb3JlLFxuaS5mbGFnLmNoaW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTExOTZweDtcbn1cbmkuZmxhZy5jbzpiZWZvcmUsXG5pLmZsYWcuY29sb21iaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTIyMnB4O1xufVxuaS5mbGFnLmNyOmJlZm9yZSxcbmkuZmxhZy5jb3N0YS5yaWNhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyNDhweDtcbn1cbmkuZmxhZy5jczpiZWZvcmUsXG5pLmZsYWcuc2VyYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyNzRweDtcbn1cbmkuZmxhZy5jdTpiZWZvcmUsXG5pLmZsYWcuY3ViYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMzAwcHg7XG59XG5pLmZsYWcuY3Y6YmVmb3JlLFxuaS5mbGFnLmNhcGUudmVyZGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTMyNnB4O1xufVxuaS5mbGFnLmN4OmJlZm9yZSxcbmkuZmxhZy5jaHJpc3RtYXMuaXNsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEzNTJweDtcbn1cbmkuZmxhZy5jeTpiZWZvcmUsXG5pLmZsYWcuY3lwcnVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEzNzhweDtcbn1cbmkuZmxhZy5jejpiZWZvcmUsXG5pLmZsYWcuY3plY2gucmVwdWJsaWM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTQwNHB4O1xufVxuaS5mbGFnLmRlOmJlZm9yZSxcbmkuZmxhZy5nZXJtYW55OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MzBweDtcbn1cbmkuZmxhZy5kajpiZWZvcmUsXG5pLmZsYWcuZGppYm91dGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTQ1NnB4O1xufVxuaS5mbGFnLmRrOmJlZm9yZSxcbmkuZmxhZy5kZW5tYXJrOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0ODJweDtcbn1cbmkuZmxhZy5kbTpiZWZvcmUsXG5pLmZsYWcuZG9taW5pY2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTUwOHB4O1xufVxuaS5mbGFnLmRvOmJlZm9yZSxcbmkuZmxhZy5kb21pbmljYW4ucmVwdWJsaWM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTUzNHB4O1xufVxuaS5mbGFnLmR6OmJlZm9yZSxcbmkuZmxhZy5hbGdlcmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1NjBweDtcbn1cbmkuZmxhZy5lYzpiZWZvcmUsXG5pLmZsYWcuZWN1YWRvcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNTg2cHg7XG59XG5pLmZsYWcuZWU6YmVmb3JlLFxuaS5mbGFnLmVzdG9uaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTYxMnB4O1xufVxuaS5mbGFnLmVnOmJlZm9yZSxcbmkuZmxhZy5lZ3lwdDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNjM4cHg7XG59XG5pLmZsYWcuZWg6YmVmb3JlLFxuaS5mbGFnLndlc3Rlcm4uc2FoYXJhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2NjRweDtcbn1cbmkuZmxhZy5nYi5lbmc6YmVmb3JlLFxuaS5mbGFnLmVuZ2xhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTY5MHB4O1xufVxuaS5mbGFnLmVyOmJlZm9yZSxcbmkuZmxhZy5lcml0cmVhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE3MTZweDtcbn1cbmkuZmxhZy5lczpiZWZvcmUsXG5pLmZsYWcuc3BhaW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTc0MnB4O1xufVxuaS5mbGFnLmV0OmJlZm9yZSxcbmkuZmxhZy5ldGhpb3BpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNzY4cHg7XG59XG5pLmZsYWcuZXU6YmVmb3JlLFxuaS5mbGFnLmV1cm9wZWFuLnVuaW9uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE3OTRweDtcbn1cbmkuZmxhZy5maTpiZWZvcmUsXG5pLmZsYWcuZmlubGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xODQ2cHg7XG59XG5pLmZsYWcuZmo6YmVmb3JlLFxuaS5mbGFnLmZpamk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTg3MnB4O1xufVxuaS5mbGFnLmZrOmJlZm9yZSxcbmkuZmxhZy5mYWxrbGFuZC5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE4OThweDtcbn1cbmkuZmxhZy5mbTpiZWZvcmUsXG5pLmZsYWcubWljcm9uZXNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xOTI0cHg7XG59XG5pLmZsYWcuZm86YmVmb3JlLFxuaS5mbGFnLmZhcm9lLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTk1MHB4O1xufVxuaS5mbGFnLmZyOmJlZm9yZSxcbmkuZmxhZy5mcmFuY2U6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTk3NnB4O1xufVxuaS5mbGFnLmdhOmJlZm9yZSxcbmkuZmxhZy5nYWJvbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAwO1xufVxuaS5mbGFnLmdiOmJlZm9yZSxcbmkuZmxhZy51azpiZWZvcmUsXG5pLmZsYWcudW5pdGVkLmtpbmdkb206YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTI2cHg7XG59XG5pLmZsYWcuZ2Q6YmVmb3JlLFxuaS5mbGFnLmdyZW5hZGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTUycHg7XG59XG5pLmZsYWcuZ2U6YmVmb3JlLFxuaS5mbGFnLmdlb3JnaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTc4cHg7XG59XG5pLmZsYWcuZ2Y6YmVmb3JlLFxuaS5mbGFnLmZyZW5jaC5ndWlhbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwNHB4O1xufVxuaS5mbGFnLmdoOmJlZm9yZSxcbmkuZmxhZy5naGFuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTMwcHg7XG59XG5pLmZsYWcuZ2k6YmVmb3JlLFxuaS5mbGFnLmdpYnJhbHRhcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTU2cHg7XG59XG5pLmZsYWcuZ2w6YmVmb3JlLFxuaS5mbGFnLmdyZWVubGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTgycHg7XG59XG5pLmZsYWcuZ206YmVmb3JlLFxuaS5mbGFnLmdhbWJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMjA4cHg7XG59XG5pLmZsYWcuZ246YmVmb3JlLFxuaS5mbGFnLmd1aW5lYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMjM0cHg7XG59XG5pLmZsYWcuZ3A6YmVmb3JlLFxuaS5mbGFnLmd1YWRlbG91cGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTI2MHB4O1xufVxuaS5mbGFnLmdxOmJlZm9yZSxcbmkuZmxhZy5lcXVhdG9yaWFsLmd1aW5lYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMjg2cHg7XG59XG5pLmZsYWcuZ3I6YmVmb3JlLFxuaS5mbGFnLmdyZWVjZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMzEycHg7XG59XG5pLmZsYWcuZ3M6YmVmb3JlLFxuaS5mbGFnLnNhbmR3aWNoLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTMzOHB4O1xufVxuaS5mbGFnLmd0OmJlZm9yZSxcbmkuZmxhZy5ndWF0ZW1hbGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTM2NHB4O1xufVxuaS5mbGFnLmd1OmJlZm9yZSxcbmkuZmxhZy5ndWFtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0zOTBweDtcbn1cbmkuZmxhZy5ndzpiZWZvcmUsXG5pLmZsYWcuZ3VpbmVhLWJpc3NhdTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNDE2cHg7XG59XG5pLmZsYWcuZ3k6YmVmb3JlLFxuaS5mbGFnLmd1eWFuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNDQycHg7XG59XG5pLmZsYWcuaGs6YmVmb3JlLFxuaS5mbGFnLmhvbmcua29uZzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNDY4cHg7XG59XG5pLmZsYWcuaG06YmVmb3JlLFxuaS5mbGFnLmhlYXJkLmlzbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNDk0cHg7XG59XG5pLmZsYWcuaG46YmVmb3JlLFxuaS5mbGFnLmhvbmR1cmFzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC01MjBweDtcbn1cbmkuZmxhZy5ocjpiZWZvcmUsXG5pLmZsYWcuY3JvYXRpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNTQ2cHg7XG59XG5pLmZsYWcuaHQ6YmVmb3JlLFxuaS5mbGFnLmhhaXRpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC01NzJweDtcbn1cbmkuZmxhZy5odTpiZWZvcmUsXG5pLmZsYWcuaHVuZ2FyeTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNTk4cHg7XG59XG5pLmZsYWcuaWQ6YmVmb3JlLFxuaS5mbGFnLmluZG9uZXNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNjI0cHg7XG59XG5pLmZsYWcuaWU6YmVmb3JlLFxuaS5mbGFnLmlyZWxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTY1MHB4O1xufVxuaS5mbGFnLmlsOmJlZm9yZSxcbmkuZmxhZy5pc3JhZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTY3NnB4O1xufVxuaS5mbGFnLmluOmJlZm9yZSxcbmkuZmxhZy5pbmRpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNzAycHg7XG59XG5pLmZsYWcuaW86YmVmb3JlLFxuaS5mbGFnLmluZGlhbi5vY2Vhbi50ZXJyaXRvcnk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTcyOHB4O1xufVxuaS5mbGFnLmlxOmJlZm9yZSxcbmkuZmxhZy5pcmFxOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC03NTRweDtcbn1cbmkuZmxhZy5pcjpiZWZvcmUsXG5pLmZsYWcuaXJhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNzgwcHg7XG59XG5pLmZsYWcuaXM6YmVmb3JlLFxuaS5mbGFnLmljZWxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTgwNnB4O1xufVxuaS5mbGFnLml0OmJlZm9yZSxcbmkuZmxhZy5pdGFseTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtODMycHg7XG59XG5pLmZsYWcuam06YmVmb3JlLFxuaS5mbGFnLmphbWFpY2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTg1OHB4O1xufVxuaS5mbGFnLmpvOmJlZm9yZSxcbmkuZmxhZy5qb3JkYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTg4NHB4O1xufVxuaS5mbGFnLmpwOmJlZm9yZSxcbmkuZmxhZy5qYXBhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtOTEwcHg7XG59XG5pLmZsYWcua2U6YmVmb3JlLFxuaS5mbGFnLmtlbnlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC05MzZweDtcbn1cbmkuZmxhZy5rZzpiZWZvcmUsXG5pLmZsYWcua3lyZ3l6c3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtOTYycHg7XG59XG5pLmZsYWcua2g6YmVmb3JlLFxuaS5mbGFnLmNhbWJvZGlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC05ODhweDtcbn1cbmkuZmxhZy5raTpiZWZvcmUsXG5pLmZsYWcua2lyaWJhdGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwMTRweDtcbn1cbmkuZmxhZy5rbTpiZWZvcmUsXG5pLmZsYWcuY29tb3JvczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTA0MHB4O1xufVxuaS5mbGFnLmtuOmJlZm9yZSxcbmkuZmxhZy5zYWludC5raXR0cy5hbmQubmV2aXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwNjZweDtcbn1cbmkuZmxhZy5rcDpiZWZvcmUsXG5pLmZsYWcubm9ydGgua29yZWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwOTJweDtcbn1cbmkuZmxhZy5rcjpiZWZvcmUsXG5pLmZsYWcuc291dGgua29yZWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTExMThweDtcbn1cbmkuZmxhZy5rdzpiZWZvcmUsXG5pLmZsYWcua3V3YWl0OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMTQ0cHg7XG59XG5pLmZsYWcua3k6YmVmb3JlLFxuaS5mbGFnLmNheW1hbi5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMTcwcHg7XG59XG5pLmZsYWcua3o6YmVmb3JlLFxuaS5mbGFnLmthemFraHN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTExOTZweDtcbn1cbmkuZmxhZy5sYTpiZWZvcmUsXG5pLmZsYWcubGFvczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTIyMnB4O1xufVxuaS5mbGFnLmxiOmJlZm9yZSxcbmkuZmxhZy5sZWJhbm9uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMjQ4cHg7XG59XG5pLmZsYWcubGM6YmVmb3JlLFxuaS5mbGFnLnNhaW50Lmx1Y2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMjc0cHg7XG59XG5pLmZsYWcubGk6YmVmb3JlLFxuaS5mbGFnLmxpZWNodGVuc3RlaW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEzMDBweDtcbn1cbmkuZmxhZy5sazpiZWZvcmUsXG5pLmZsYWcuc3JpLmxhbmthOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMzI2cHg7XG59XG5pLmZsYWcubHI6YmVmb3JlLFxuaS5mbGFnLmxpYmVyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEzNTJweDtcbn1cbmkuZmxhZy5sczpiZWZvcmUsXG5pLmZsYWcubGVzb3RobzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTM3OHB4O1xufVxuaS5mbGFnLmx0OmJlZm9yZSxcbmkuZmxhZy5saXRodWFuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE0MDRweDtcbn1cbmkuZmxhZy5sdTpiZWZvcmUsXG5pLmZsYWcubHV4ZW1ib3VyZzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTQzMHB4O1xufVxuaS5mbGFnLmx2OmJlZm9yZSxcbmkuZmxhZy5sYXR2aWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE0NTZweDtcbn1cbmkuZmxhZy5seTpiZWZvcmUsXG5pLmZsYWcubGlieWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE0ODJweDtcbn1cbmkuZmxhZy5tYTpiZWZvcmUsXG5pLmZsYWcubW9yb2NjbzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTUwOHB4O1xufVxuaS5mbGFnLm1jOmJlZm9yZSxcbmkuZmxhZy5tb25hY286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE1MzRweDtcbn1cbmkuZmxhZy5tZDpiZWZvcmUsXG5pLmZsYWcubW9sZG92YTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTU2MHB4O1xufVxuaS5mbGFnLm1lOmJlZm9yZSxcbmkuZmxhZy5tb250ZW5lZ3JvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNTg2cHg7XG59XG5pLmZsYWcubWc6YmVmb3JlLFxuaS5mbGFnLm1hZGFnYXNjYXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE2MTNweDtcbn1cbmkuZmxhZy5taDpiZWZvcmUsXG5pLmZsYWcubWFyc2hhbGwuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTYzOXB4O1xufVxuaS5mbGFnLm1rOmJlZm9yZSxcbmkuZmxhZy5tYWNlZG9uaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE2NjVweDtcbn1cbmkuZmxhZy5tbDpiZWZvcmUsXG5pLmZsYWcubWFsaTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTY5MXB4O1xufVxuaS5mbGFnLm1tOmJlZm9yZSxcbmkuZmxhZy5teWFubWFyOmJlZm9yZSxcbmkuZmxhZy5idXJtYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTcxN3B4O1xufVxuaS5mbGFnLm1uOmJlZm9yZSxcbmkuZmxhZy5tb25nb2xpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTc0M3B4O1xufVxuaS5mbGFnLm1vOmJlZm9yZSxcbmkuZmxhZy5tYWNhdTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTc2OXB4O1xufVxuaS5mbGFnLm1wOmJlZm9yZSxcbmkuZmxhZy5ub3J0aGVybi5tYXJpYW5hLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE3OTVweDtcbn1cbmkuZmxhZy5tcTpiZWZvcmUsXG5pLmZsYWcubWFydGluaXF1ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTgyMXB4O1xufVxuaS5mbGFnLm1yOmJlZm9yZSxcbmkuZmxhZy5tYXVyaXRhbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xODQ3cHg7XG59XG5pLmZsYWcubXM6YmVmb3JlLFxuaS5mbGFnLm1vbnRzZXJyYXQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE4NzNweDtcbn1cbmkuZmxhZy5tdDpiZWZvcmUsXG5pLmZsYWcubWFsdGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE4OTlweDtcbn1cbmkuZmxhZy5tdTpiZWZvcmUsXG5pLmZsYWcubWF1cml0aXVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xOTI1cHg7XG59XG5pLmZsYWcubXY6YmVmb3JlLFxuaS5mbGFnLm1hbGRpdmVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xOTUxcHg7XG59XG5pLmZsYWcubXc6YmVmb3JlLFxuaS5mbGFnLm1hbGF3aTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTk3N3B4O1xufVxuaS5mbGFnLm14OmJlZm9yZSxcbmkuZmxhZy5tZXhpY286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggMDtcbn1cbmkuZmxhZy5teTpiZWZvcmUsXG5pLmZsYWcubWFsYXlzaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTI2cHg7XG59XG5pLmZsYWcubXo6YmVmb3JlLFxuaS5mbGFnLm1vemFtYmlxdWU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTUycHg7XG59XG5pLmZsYWcubmE6YmVmb3JlLFxuaS5mbGFnLm5hbWliaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTc4cHg7XG59XG5pLmZsYWcubmM6YmVmb3JlLFxuaS5mbGFnLm5ldy5jYWxlZG9uaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEwNHB4O1xufVxuaS5mbGFnLm5lOmJlZm9yZSxcbmkuZmxhZy5uaWdlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTMwcHg7XG59XG5pLmZsYWcubmY6YmVmb3JlLFxuaS5mbGFnLm5vcmZvbGsuaXNsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNTZweDtcbn1cbmkuZmxhZy5uZzpiZWZvcmUsXG5pLmZsYWcubmlnZXJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTgycHg7XG59XG5pLmZsYWcubmk6YmVmb3JlLFxuaS5mbGFnLm5pY2FyYWd1YTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMjA4cHg7XG59XG5pLmZsYWcubmw6YmVmb3JlLFxuaS5mbGFnLm5ldGhlcmxhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0yMzRweDtcbn1cbmkuZmxhZy5ubzpiZWZvcmUsXG5pLmZsYWcubm9yd2F5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0yNjBweDtcbn1cbmkuZmxhZy5ucDpiZWZvcmUsXG5pLmZsYWcubmVwYWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTI4NnB4O1xufVxuaS5mbGFnLm5yOmJlZm9yZSxcbmkuZmxhZy5uYXVydTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMzEycHg7XG59XG5pLmZsYWcubnU6YmVmb3JlLFxuaS5mbGFnLm5pdWU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTMzOHB4O1xufVxuaS5mbGFnLm56OmJlZm9yZSxcbmkuZmxhZy5uZXcuemVhbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMzY0cHg7XG59XG5pLmZsYWcub206YmVmb3JlLFxuaS5mbGFnLm9tYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTM5MHB4O1xufVxuaS5mbGFnLnBhOmJlZm9yZSxcbmkuZmxhZy5wYW5hbWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTQxNnB4O1xufVxuaS5mbGFnLnBlOmJlZm9yZSxcbmkuZmxhZy5wZXJ1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC00NDJweDtcbn1cbmkuZmxhZy5wZjpiZWZvcmUsXG5pLmZsYWcuZnJlbmNoLnBvbHluZXNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNDY4cHg7XG59XG5pLmZsYWcucGc6YmVmb3JlLFxuaS5mbGFnLm5ldy5ndWluZWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTQ5NHB4O1xufVxuaS5mbGFnLnBoOmJlZm9yZSxcbmkuZmxhZy5waGlsaXBwaW5lczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNTIwcHg7XG59XG5pLmZsYWcucGs6YmVmb3JlLFxuaS5mbGFnLnBha2lzdGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC01NDZweDtcbn1cbmkuZmxhZy5wbDpiZWZvcmUsXG5pLmZsYWcucG9sYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC01NzJweDtcbn1cbmkuZmxhZy5wbTpiZWZvcmUsXG5pLmZsYWcuc2FpbnQucGllcnJlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC01OThweDtcbn1cbmkuZmxhZy5wbjpiZWZvcmUsXG5pLmZsYWcucGl0Y2Fpcm4uaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNjI0cHg7XG59XG5pLmZsYWcucHI6YmVmb3JlLFxuaS5mbGFnLnB1ZXJ0by5yaWNvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC02NTBweDtcbn1cbmkuZmxhZy5wczpiZWZvcmUsXG5pLmZsYWcucGFsZXN0aW5lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC02NzZweDtcbn1cbmkuZmxhZy5wdDpiZWZvcmUsXG5pLmZsYWcucG9ydHVnYWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTcwMnB4O1xufVxuaS5mbGFnLnB3OmJlZm9yZSxcbmkuZmxhZy5wYWxhdTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNzI4cHg7XG59XG5pLmZsYWcucHk6YmVmb3JlLFxuaS5mbGFnLnBhcmFndWF5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC03NTRweDtcbn1cbmkuZmxhZy5xYTpiZWZvcmUsXG5pLmZsYWcucWF0YXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTc4MHB4O1xufVxuaS5mbGFnLnJlOmJlZm9yZSxcbmkuZmxhZy5yZXVuaW9uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC04MDZweDtcbn1cbmkuZmxhZy5ybzpiZWZvcmUsXG5pLmZsYWcucm9tYW5pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtODMycHg7XG59XG5pLmZsYWcucnM6YmVmb3JlLFxuaS5mbGFnLnNlcmJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtODU4cHg7XG59XG5pLmZsYWcucnU6YmVmb3JlLFxuaS5mbGFnLnJ1c3NpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtODg0cHg7XG59XG5pLmZsYWcucnc6YmVmb3JlLFxuaS5mbGFnLnJ3YW5kYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtOTEwcHg7XG59XG5pLmZsYWcuc2E6YmVmb3JlLFxuaS5mbGFnLnNhdWRpLmFyYWJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtOTM2cHg7XG59XG5pLmZsYWcuc2I6YmVmb3JlLFxuaS5mbGFnLnNvbG9tb24uaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtOTYycHg7XG59XG5pLmZsYWcuc2M6YmVmb3JlLFxuaS5mbGFnLnNleWNoZWxsZXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTk4OHB4O1xufVxuaS5mbGFnLmdiLnNjdDpiZWZvcmUsXG5pLmZsYWcuc2NvdGxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEwMTRweDtcbn1cbmkuZmxhZy5zZDpiZWZvcmUsXG5pLmZsYWcuc3VkYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEwNDBweDtcbn1cbmkuZmxhZy5zZTpiZWZvcmUsXG5pLmZsYWcuc3dlZGVuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMDY2cHg7XG59XG5pLmZsYWcuc2c6YmVmb3JlLFxuaS5mbGFnLnNpbmdhcG9yZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTA5MnB4O1xufVxuaS5mbGFnLnNoOmJlZm9yZSxcbmkuZmxhZy5zYWludC5oZWxlbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTExMThweDtcbn1cbmkuZmxhZy5zaTpiZWZvcmUsXG5pLmZsYWcuc2xvdmVuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTExNDRweDtcbn1cbmkuZmxhZy5zajpiZWZvcmUsXG5pLmZsYWcuc3ZhbGJhcmQ6YmVmb3JlLFxuaS5mbGFnLmphbi5tYXllbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTE3MHB4O1xufVxuaS5mbGFnLnNrOmJlZm9yZSxcbmkuZmxhZy5zbG92YWtpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTE5NnB4O1xufVxuaS5mbGFnLnNsOmJlZm9yZSxcbmkuZmxhZy5zaWVycmEubGVvbmU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEyMjJweDtcbn1cbmkuZmxhZy5zbTpiZWZvcmUsXG5pLmZsYWcuc2FuLm1hcmlubzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTI0OHB4O1xufVxuaS5mbGFnLnNuOmJlZm9yZSxcbmkuZmxhZy5zZW5lZ2FsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMjc0cHg7XG59XG5pLmZsYWcuc286YmVmb3JlLFxuaS5mbGFnLnNvbWFsaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzMDBweDtcbn1cbmkuZmxhZy5zcjpiZWZvcmUsXG5pLmZsYWcuc3VyaW5hbWU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzMjZweDtcbn1cbmkuZmxhZy5zdDpiZWZvcmUsXG5pLmZsYWcuc2FvLnRvbWU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzNTJweDtcbn1cbmkuZmxhZy5zdjpiZWZvcmUsXG5pLmZsYWcuZWwuc2FsdmFkb3I6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzNzhweDtcbn1cbmkuZmxhZy5zeTpiZWZvcmUsXG5pLmZsYWcuc3lyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE0MDRweDtcbn1cbmkuZmxhZy5zejpiZWZvcmUsXG5pLmZsYWcuc3dhemlsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNDMwcHg7XG59XG5pLmZsYWcudGM6YmVmb3JlLFxuaS5mbGFnLmNhaWNvcy5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNDU2cHg7XG59XG5pLmZsYWcudGQ6YmVmb3JlLFxuaS5mbGFnLmNoYWQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE0ODJweDtcbn1cbmkuZmxhZy50ZjpiZWZvcmUsXG5pLmZsYWcuZnJlbmNoLnRlcnJpdG9yaWVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNTA4cHg7XG59XG5pLmZsYWcudGc6YmVmb3JlLFxuaS5mbGFnLnRvZ286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE1MzRweDtcbn1cbmkuZmxhZy50aDpiZWZvcmUsXG5pLmZsYWcudGhhaWxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE1NjBweDtcbn1cbmkuZmxhZy50ajpiZWZvcmUsXG5pLmZsYWcudGFqaWtpc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTU4NnB4O1xufVxuaS5mbGFnLnRrOmJlZm9yZSxcbmkuZmxhZy50b2tlbGF1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNjEycHg7XG59XG5pLmZsYWcudGw6YmVmb3JlLFxuaS5mbGFnLnRpbW9ybGVzdGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE2MzhweDtcbn1cbmkuZmxhZy50bTpiZWZvcmUsXG5pLmZsYWcudHVya21lbmlzdGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNjY0cHg7XG59XG5pLmZsYWcudG46YmVmb3JlLFxuaS5mbGFnLnR1bmlzaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE2OTBweDtcbn1cbmkuZmxhZy50bzpiZWZvcmUsXG5pLmZsYWcudG9uZ2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE3MTZweDtcbn1cbmkuZmxhZy50cjpiZWZvcmUsXG5pLmZsYWcudHVya2V5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNzQycHg7XG59XG5pLmZsYWcudHQ6YmVmb3JlLFxuaS5mbGFnLnRyaW5pZGFkOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNzY4cHg7XG59XG5pLmZsYWcudHY6YmVmb3JlLFxuaS5mbGFnLnR1dmFsdTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTc5NHB4O1xufVxuaS5mbGFnLnR3OmJlZm9yZSxcbmkuZmxhZy50YWl3YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE4MjBweDtcbn1cbmkuZmxhZy50ejpiZWZvcmUsXG5pLmZsYWcudGFuemFuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE4NDZweDtcbn1cbmkuZmxhZy51YTpiZWZvcmUsXG5pLmZsYWcudWtyYWluZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTg3MnB4O1xufVxuaS5mbGFnLnVnOmJlZm9yZSxcbmkuZmxhZy51Z2FuZGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE4OThweDtcbn1cbmkuZmxhZy51bTpiZWZvcmUsXG5pLmZsYWcudXMubWlub3IuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTkyNHB4O1xufVxuaS5mbGFnLnVzOmJlZm9yZSxcbmkuZmxhZy5hbWVyaWNhOmJlZm9yZSxcbmkuZmxhZy51bml0ZWQuc3RhdGVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xOTUwcHg7XG59XG5pLmZsYWcudXk6YmVmb3JlLFxuaS5mbGFnLnVydWd1YXk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE5NzZweDtcbn1cbmkuZmxhZy51ejpiZWZvcmUsXG5pLmZsYWcudXpiZWtpc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggMDtcbn1cbmkuZmxhZy52YTpiZWZvcmUsXG5pLmZsYWcudmF0aWNhbi5jaXR5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMjZweDtcbn1cbmkuZmxhZy52YzpiZWZvcmUsXG5pLmZsYWcuc2FpbnQudmluY2VudDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTUycHg7XG59XG5pLmZsYWcudmU6YmVmb3JlLFxuaS5mbGFnLnZlbmV6dWVsYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTc4cHg7XG59XG5pLmZsYWcudmc6YmVmb3JlLFxuaS5mbGFnLmJyaXRpc2gudmlyZ2luLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0xMDRweDtcbn1cbmkuZmxhZy52aTpiZWZvcmUsXG5pLmZsYWcudXMudmlyZ2luLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0xMzBweDtcbn1cbmkuZmxhZy52bjpiZWZvcmUsXG5pLmZsYWcudmlldG5hbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTE1NnB4O1xufVxuaS5mbGFnLnZ1OmJlZm9yZSxcbmkuZmxhZy52YW51YXR1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMTgycHg7XG59XG5pLmZsYWcuZ2Iud2xzOmJlZm9yZSxcbmkuZmxhZy53YWxlczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTIwOHB4O1xufVxuaS5mbGFnLndmOmJlZm9yZSxcbmkuZmxhZy53YWxsaXMuYW5kLmZ1dHVuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTIzNHB4O1xufVxuaS5mbGFnLndzOmJlZm9yZSxcbmkuZmxhZy5zYW1vYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTI2MHB4O1xufVxuaS5mbGFnLnllOmJlZm9yZSxcbmkuZmxhZy55ZW1lbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTI4NnB4O1xufVxuaS5mbGFnLnl0OmJlZm9yZSxcbmkuZmxhZy5tYXlvdHRlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMzEycHg7XG59XG5pLmZsYWcuemE6YmVmb3JlLFxuaS5mbGFnLnNvdXRoLmFmcmljYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTMzOHB4O1xufVxuaS5mbGFnLnptOmJlZm9yZSxcbmkuZmxhZy56YW1iaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0zNjRweDtcbn1cbmkuZmxhZy56dzpiZWZvcmUsXG5pLmZsYWcuemltYmFid2U6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0zOTBweDtcbn1cblxuLypydGw6ZW5kOmlnbm9yZSovXG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBIZWFkZXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2VsZW1lbnQnO1xuQGVsZW1lbnQgOiAnaGVhZGVyJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBIZWFkZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFN0YW5kYXJkICovXG4udWkuaGVhZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IEBtYXJnaW47XG4gIHBhZGRpbmc6IEB2ZXJ0aWNhbFBhZGRpbmcgQGhvcml6b250YWxQYWRkaW5nO1xuICBmb250LWZhbWlseTogQGZvbnRGYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiBAZm9udFdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IEBsaW5lSGVpZ2h0O1xuICB0ZXh0LXRyYW5zZm9ybTogQHRleHRUcmFuc2Zvcm07XG4gIGNvbG9yOiBAdGV4dENvbG9yO1xufVxuXG4udWkuaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogQGZpcnN0TWFyZ2luO1xufVxuLnVpLmhlYWRlcjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogQGxhc3RNYXJnaW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFN1YiBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IEBub3JtYWw7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogQHN1YkhlYWRlck1hcmdpbjtcbiAgZm9udC1zaXplOiBAc3ViSGVhZGVyRm9udFNpemU7XG4gIGxpbmUtaGVpZ2h0OiBAc3ViSGVhZGVyTGluZUhlaWdodDtcbiAgY29sb3I6IEBzdWJIZWFkZXJDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYWRlciA+IC5pY29uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgb3BhY2l0eTogQGljb25PcGFjaXR5O1xuICBmb250LXNpemU6IEBpY29uU2l6ZTtcbiAgcGFkZGluZy10b3A6IEBpY29uT2Zmc2V0O1xuICB2ZXJ0aWNhbC1hbGlnbjogQGljb25BbGlnbm1lbnQ7XG59XG5cbi8qIFdpdGggVGV4dCBOb2RlICovXG4udWkuaGVhZGVyIC5pY29uOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1yaWdodDogQGljb25NYXJnaW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJbWFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaGVhZGVyID4gLmltYWdlOm5vdCguaWNvbiksXG4udWkuaGVhZGVyID4gaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiBAaW1hZ2VPZmZzZXQ7XG4gIHdpZHRoOiBAaW1hZ2VXaWR0aDtcbiAgaGVpZ2h0OiBAaW1hZ2VIZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiBAaW1hZ2VBbGlnbm1lbnQ7XG59XG4udWkuaGVhZGVyID4gLmltYWdlOm5vdCguaWNvbik6b25seS1jaGlsZCxcbi51aS5oZWFkZXIgPiBpbWc6b25seS1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogQGltYWdlTWFyZ2luO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5oZWFkZXIgLmNvbnRlbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBAY29udGVudEFsaWdubWVudDtcbn1cblxuLyogQWZ0ZXIgSW1hZ2UgKi9cbi51aS5oZWFkZXIgPiBpbWcgKyAuY29udGVudCxcbi51aS5oZWFkZXIgPiAuaW1hZ2UgKyAuY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogQGltYWdlTWFyZ2luO1xuICB2ZXJ0aWNhbC1hbGlnbjogQGNvbnRlbnRJbWFnZUFsaWdubWVudDtcbn1cblxuLyogQWZ0ZXIgSWNvbiAqL1xuLnVpLmhlYWRlciA+IC5pY29uICsgLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IEBpY29uTWFyZ2luO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogQGNvbnRlbnRJY29uQWxpZ25tZW50O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiBMb29zZSBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYWRlciAudWkubGFiZWwge1xuICBmb250LXNpemU6IEBsYWJlbFNpemU7XG4gIG1hcmdpbi1sZWZ0OiBAbGFiZWxEaXN0YW5jZTtcbiAgdmVydGljYWwtYWxpZ246IEBsYWJlbFZlcnRpY2FsQWxpZ247XG59XG5cbi8qIFBvc2l0aW9uaW5nICovXG4udWkuaGVhZGVyICsgcCB7XG4gIG1hcmdpbi10b3A6IEBuZXh0UGFyYWdyYXBoRGlzdGFuY2U7XG59XG5cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5oMS51aS5oZWFkZXIge1xuICBmb250LXNpemU6IEBoMTtcbn1cbmgyLnVpLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGgyO1xufVxuaDMudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiBAaDM7XG59XG5oNC51aS5oZWFkZXIge1xuICBmb250LXNpemU6IEBoNDtcbn1cbmg1LnVpLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGg1O1xufVxuXG5cbi8qIFN1YiBIZWFkZXIgKi9cbmgxLnVpLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGgxU3ViSGVhZGVyRm9udFNpemU7XG59XG5oMi51aS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IEBoMlN1YkhlYWRlckZvbnRTaXplO1xufVxuaDMudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiBAaDNTdWJIZWFkZXJGb250U2l6ZTtcbn1cbmg0LnVpLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGg0U3ViSGVhZGVyRm9udFNpemU7XG59XG5oNS51aS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IEBoNVN1YkhlYWRlckZvbnRTaXplO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiBDb250ZW50IEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5odWdlLmhlYWRlciB7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgZm9udC1zaXplOiBAaHVnZUZvbnRTaXplO1xufVxuLnVpLmxhcmdlLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGxhcmdlRm9udFNpemU7XG59XG4udWkubWVkaXVtLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQG1lZGl1bUZvbnRTaXplO1xufVxuLnVpLnNtYWxsLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQHNtYWxsRm9udFNpemU7XG59XG4udWkudGlueS5oZWFkZXIge1xuICBmb250LXNpemU6IEB0aW55Rm9udFNpemU7XG59XG5cbi8qIFN1YiBIZWFkZXIgKi9cbi51aS5odWdlLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGh1Z2VTdWJIZWFkZXJGb250U2l6ZTtcbn1cbi51aS5sYXJnZS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IEBodWdlU3ViSGVhZGVyRm9udFNpemU7XG59XG4udWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiBAc3ViSGVhZGVyRm9udFNpemU7XG59XG4udWkuc21hbGwuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiBAc21hbGxTdWJIZWFkZXJGb250U2l6ZTtcbn1cbi51aS50aW55LmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQHRpbnlTdWJIZWFkZXJGb250U2l6ZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU3ViIEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdWIuaGVhZGVyIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogQHN1YkhlYWRpbmdEaXN0YW5jZTtcbiAgZm9udC13ZWlnaHQ6IEBzdWJIZWFkaW5nRm9udFdlaWdodDtcbiAgZm9udC1zaXplOiBAc3ViSGVhZGluZ0ZvbnRTaXplO1xuICB0ZXh0LXRyYW5zZm9ybTogQHN1YkhlYWRpbmdUZXh0VHJhbnNmb3JtO1xuICBjb2xvcjogQHN1YkhlYWRpbmdDb2xvcjtcbn1cblxuLnVpLnNtYWxsLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IEBzbWFsbFN1YkhlYWRpbmdTaXplO1xufVxuLnVpLmxhcmdlLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IEBsYXJnZVN1YkhlYWRpbmdTaXplO1xufVxuLnVpLmh1Z2Uuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGh1Z2VTdWJIZWFkaW5nU2l6ZTtcbn1cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pY29uLmhlYWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IEBpY29uSGVhZGVyVG9wTWFyZ2luIDAgQGljb25IZWFkZXJCb3R0b21NYXJnaW47XG59XG4udWkuaWNvbi5oZWFkZXI6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnVpLmljb24uaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogQGljb25IZWFkZXJGaXJzdE1hcmdpbjtcbn1cbi51aS5pY29uLmhlYWRlciAuaWNvbiB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogQGljb25IZWFkZXJTaXplO1xuICBtYXJnaW46IDAgYXV0byBAaWNvbkhlYWRlck1hcmdpbjtcbiAgb3BhY2l0eTogQGljb25IZWFkZXJPcGFjaXR5O1xufVxuLnVpLmljb24uaGVhZGVyIC5jb3JuZXIuaWNvbiB7XG4gIGZvbnQtc2l6ZTogQGNvcm5lckljb25IZWFkZXJTaXplO1xufVxuLnVpLmljb24uaGVhZGVyIC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG59XG4udWkuaWNvbi5oZWFkZXIgLmNpcmN1bGFyLmljb24ge1xuICBmb250LXNpemU6IEBjaXJjdWxhckhlYWRlckljb25TaXplO1xufVxuLnVpLmljb24uaGVhZGVyIC5zcXVhcmUuaWNvbiB7XG4gIGZvbnQtc2l6ZTogQHNxdWFyZUhlYWRlckljb25TaXplO1xufVxuLnVpLmJsb2NrLmljb24uaGVhZGVyIC5pY29uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi51aS5pY29uLmhlYWRlci5hbGlnbmVkIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5kaXNhYmxlZC5oZWFkZXIge1xuICBvcGFjaXR5OiBAZGlzYWJsZWRPcGFjaXR5O1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmhlYWRlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBjb2xvcjogQGludmVydGVkU3ViSGVhZGVyQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuYXR0YWNoZWQuaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQXR0YWNoZWRCYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnVpLmludmVydGVkLmJsb2NrLmhlYWRlciB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEJsb2NrQmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuZWFjaChAY29sb3JzLCB7XG4gIEBjb2xvcjogcmVwbGFjZShAa2V5LCAnQCcsICcnKTtcbiAgQGM6IEBjb2xvcnNbQEBjb2xvcl1bY29sb3JdO1xuICBAbDogQGNvbG9yc1tAQGNvbG9yXVtsaWdodF07XG4gIEBoOiBAY29sb3JzW0BAY29sb3JdW2hvdmVyXTtcbiAgQGxoOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0SG92ZXJdO1xuXG4gIC51aS5Ae2NvbG9yfS5oZWFkZXIge1xuICAgIGNvbG9yOiBAYztcbiAgfVxuICBhLnVpLkB7Y29sb3J9LmhlYWRlcjpob3ZlciB7XG4gICAgY29sb3I6IEBoO1xuICB9XG4gIC51aS5Ae2NvbG9yfS5kaXZpZGluZy5oZWFkZXIge1xuICAgIGJvcmRlci1ib3R0b206IEBkaXZpZGVkQ29sb3JlZEJvcmRlcldpZHRoIHNvbGlkIEBjO1xuICB9XG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5oZWFkZXIuaGVhZGVyLmhlYWRlciB7XG4gICAgY29sb3I6IEBsO1xuICB9XG4gIGEudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uaGVhZGVyLmhlYWRlci5oZWFkZXI6aG92ZXIge1xuICAgIGNvbG9yOiBAbGg7XG4gIH1cbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmRpdmlkaW5nLmhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogQGRpdmlkZWRDb2xvcmVkQm9yZGVyV2lkdGggc29saWQgQGw7XG4gIH1cbn0pXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGVmdC5hbGlnbmVkLmhlYWRlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWkucmlnaHQuYWxpZ25lZC5oZWFkZXIge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi51aS5jZW50ZXJlZC5oZWFkZXIsXG4udWkuY2VudGVyLmFsaWduZWQuaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnVpLmp1c3RpZmllZC5oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuLnVpLmp1c3RpZmllZC5oZWFkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmxvYXRlZC5oZWFkZXIsXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmhlYWRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IEBmbG9hdGVkTWFyZ2luO1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0uaGVhZGVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogQGZsb2F0ZWRNYXJnaW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZpdHRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZml0dGVkLmhlYWRlciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXZpZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGl2aWRpbmcuaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IEBkaXZpZGVkQm9yZGVyUGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogQGRpdmlkZWRCb3JkZXI7XG59XG4udWkuZGl2aWRpbmcuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IEBkaXZpZGVkU3ViSGVhZGVyUGFkZGluZztcbn1cbi51aS5kaXZpZGluZy5oZWFkZXIgLmljb24ge1xuICBtYXJnaW4tYm90dG9tOiBAZGl2aWRlZEljb25QYWRkaW5nO1xufVxuXG4udWkuaW52ZXJ0ZWQuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQGludmVydGVkRGl2aWRlZEJvcmRlckNvbG9yO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBCbG9ja1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmxvY2suaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogQGJsb2NrQmFja2dyb3VuZDtcbiAgcGFkZGluZzogQGJsb2NrVmVydGljYWxQYWRkaW5nIEBibG9ja0hvcml6b250YWxQYWRkaW5nO1xuICBib3gtc2hhZG93OiBAYmxvY2tCb3hTaGFkb3c7XG4gIGJvcmRlcjogQGJsb2NrQm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBAYmxvY2tCb3JkZXJSYWRpdXM7XG59XG5cbi51aS50aW55LmJsb2NrLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQHRpbnlCbG9jaztcbn1cbi51aS5zbWFsbC5ibG9jay5oZWFkZXIge1xuICBmb250LXNpemU6IEBzbWFsbEJsb2NrO1xufVxuLnVpLmJsb2NrLmhlYWRlcjpub3QoaDEpOm5vdChoMik6bm90KGgzKTpub3QoaDQpOm5vdChoNSk6bm90KGg2KSB7XG4gIGZvbnQtc2l6ZTogQG1lZGl1bUJsb2NrO1xufVxuLnVpLmxhcmdlLmJsb2NrLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGxhcmdlQmxvY2s7XG59XG4udWkuaHVnZS5ibG9jay5oZWFkZXIge1xuICBmb250LXNpemU6IEBodWdlQmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hdHRhY2hlZC5oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBAYXR0YWNoZWRCYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiBAYXR0YWNoZWRWZXJ0aWNhbFBhZGRpbmcgQGF0dGFjaGVkSG9yaXpvbnRhbFBhZGRpbmc7XG4gIG1hcmdpbjogMCBAYXR0YWNoZWRPZmZzZXQgMCBAYXR0YWNoZWRPZmZzZXQ7XG4gIGJveC1zaGFkb3c6IEBhdHRhY2hlZEJveFNoYWRvdztcbiAgYm9yZGVyOiBAYXR0YWNoZWRCb3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4udWkuYXR0YWNoZWQuYmxvY2suaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogQGJsb2NrQmFja2dyb3VuZDtcbn1cbi51aS5hdHRhY2hlZDpub3QoLnRvcCkuaGVhZGVyIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi51aS50b3AuYXR0YWNoZWQuaGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogQGF0dGFjaGVkQm9yZGVyUmFkaXVzIEBhdHRhY2hlZEJvcmRlclJhZGl1cyAwIDA7XG59XG4udWkuYm90dG9tLmF0dGFjaGVkLmhlYWRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAYXR0YWNoZWRCb3JkZXJSYWRpdXMgQGF0dGFjaGVkQm9yZGVyUmFkaXVzO1xufVxuXG4vKiBBdHRhY2hlZCBTaXplcyAqL1xuLnVpLnRpbnkuYXR0YWNoZWQuaGVhZGVyIHtcbiAgZm9udC1zaXplOiBAdGlueUF0dGFjaGVkU2l6ZTtcbn1cbi51aS5zbWFsbC5hdHRhY2hlZC5oZWFkZXIge1xuICBmb250LXNpemU6IEBzbWFsbEF0dGFjaGVkU2l6ZTtcbn1cbi51aS5hdHRhY2hlZC5oZWFkZXI6bm90KGgxKTpub3QoaDIpOm5vdChoMyk6bm90KGg0KTpub3QoaDUpOm5vdChoNikge1xuICBmb250LXNpemU6IEBtZWRpdW1BdHRhY2hlZFNpemU7XG59XG4udWkubGFyZ2UuYXR0YWNoZWQuaGVhZGVyIHtcbiAgZm9udC1zaXplOiBAbGFyZ2VBdHRhY2hlZFNpemU7XG59XG4udWkuaHVnZS5hdHRhY2hlZC5oZWFkZXIge1xuICBmb250LXNpemU6IEBodWdlQXR0YWNoZWRTaXplO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6aW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5oZWFkZXI6bm90KGgxKTpub3QoaDIpOm5vdChoMyk6bm90KGg0KTpub3QoaDUpOm5vdChoNikge1xuICBmb250LXNpemU6IEBtZWRpdW1Gb250U2l6ZTtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gSWNvblxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnZWxlbWVudCc7XG5AZWxlbWVudCA6ICdpY29uJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgSWNvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSWNvbnMnO1xuICBzcmM6IEBmYWxsYmFja1NSQztcbiAgc3JjOiBAc3JjO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBAbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuaS5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcGFjaXR5OiBAb3BhY2l0eTtcblxuICBtYXJnaW46IDAgQGRpc3RhbmNlRnJvbVRleHQgMCAwO1xuXG4gIHdpZHRoOiBAd2lkdGg7XG4gIGhlaWdodDogQGhlaWdodDtcblxuICBmb250LWZhbWlseTogJ0ljb25zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogQG5vcm1hbDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgc3BlYWs6IG5vbmU7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbmkuaWNvbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLmljb24ubG9hZGluZyB7XG4gIGhlaWdodDogMWVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgQGxvYWRpbmdEdXJhdGlvbiBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5pLmljb246aG92ZXIsIGkuaWNvbnM6aG92ZXIsXG5pLmljb246YWN0aXZlLCBpLmljb25zOmFjdGl2ZSxcbmkuZW1waGFzaXplZC5pY29uOm5vdCguZGlzYWJsZWQpLCBpLmVtcGhhc2l6ZWQuaWNvbnM6bm90KC5kaXNhYmxlZCkge1xuICBvcGFjaXR5OiAxO1xufVxuXG5pLmRpc2FibGVkLmljb24sIGkuZGlzYWJsZWQuaWNvbnMge1xuICBvcGFjaXR5OiBAZGlzYWJsZWRPcGFjaXR5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZpdHRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLmZpdHRlZC5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIExpbmtcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuaS5saW5rLmljb246bm90KC5kaXNhYmxlZCksIGkubGluay5pY29uczpub3QoLmRpc2FibGVkKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogQGxpbmtPcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IEBkZWZhdWx0RHVyYXRpb24gQGRlZmF1bHRFYXNpbmc7XG59XG5pLmxpbmsuaWNvbjpob3ZlciwgaS5saW5rLmljb25zOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBDaXJjdWxhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLmNpcmN1bGFyLmljb24ge1xuICBib3JkZXItcmFkaXVzOiA1MDBlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xuXG4gIHBhZGRpbmc6IEBjaXJjdWxhclBhZGRpbmcgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogQGNpcmN1bGFyU2hhZG93O1xuXG4gIHdpZHRoOiBAY2lyY3VsYXJTaXplICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogQGNpcmN1bGFyU2l6ZSAhaW1wb3J0YW50O1xufVxuaS5jaXJjdWxhci5pbnZlcnRlZC5pY29uIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEZsaXBwZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuaS5mbGlwcGVkLmljb24sXG5pLmhvcml6b250YWxseS5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbn1cbmkudmVydGljYWxseS5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBSb3RhdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmkucm90YXRlZC5pY29uLFxuaS5yaWdodC5yb3RhdGVkLmljb24sXG5pLmNsb2Nrd2lzZS5yb3RhdGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbmkubGVmdC5yb3RhdGVkLmljb24sXG5pLmNvdW50ZXJjbG9ja3dpc2Uucm90YXRlZC5pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuaS5oYWxmd2F5LnJvdGF0ZWQuaWNvbiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEZsaXBwZWQgJiBSb3RhdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaS5yb3RhdGVkLmZsaXBwZWQuaWNvbixcbmkucmlnaHQucm90YXRlZC5mbGlwcGVkLmljb24sXG5pLmNsb2Nrd2lzZS5yb3RhdGVkLmZsaXBwZWQuaWNvbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpIHJvdGF0ZSg5MGRlZyk7XG59XG5cbmkubGVmdC5yb3RhdGVkLmZsaXBwZWQuaWNvbixcbmkuY291bnRlcmNsb2Nrd2lzZS5yb3RhdGVkLmZsaXBwZWQuaWNvbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpIHJvdGF0ZSgtOTBkZWcpO1xufVxuXG5pLmhhbGZ3YXkucm90YXRlZC5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKSByb3RhdGUoMTgwZGVnKTtcbn1cblxuaS5yb3RhdGVkLnZlcnRpY2FsbHkuZmxpcHBlZC5pY29uLFxuaS5yaWdodC5yb3RhdGVkLnZlcnRpY2FsbHkuZmxpcHBlZC5pY29uLFxuaS5jbG9ja3dpc2Uucm90YXRlZC52ZXJ0aWNhbGx5LmZsaXBwZWQuaWNvbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpIHJvdGF0ZSg5MGRlZyk7XG59XG5cbmkubGVmdC5yb3RhdGVkLnZlcnRpY2FsbHkuZmxpcHBlZC5pY29uLFxuaS5jb3VudGVyY2xvY2t3aXNlLnJvdGF0ZWQudmVydGljYWxseS5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKSByb3RhdGUoLTkwZGVnKTtcbn1cblxuaS5oYWxmd2F5LnJvdGF0ZWQudmVydGljYWxseS5mbGlwcGVkLmljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKSByb3RhdGUoMTgwZGVnKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLmJvcmRlcmVkLmljb24ge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gIHdpZHRoOiBAYm9yZGVyZWRTaXplO1xuICBoZWlnaHQ6IEBib3JkZXJlZFNpemU7XG4gIHBhZGRpbmc6IEBib3JkZXJlZFZlcnRpY2FsUGFkZGluZyBAYm9yZGVyZWRIb3Jpem9udGFsUGFkZGluZyAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBAYm9yZGVyZWRTaGFkb3c7XG59XG5pLmJvcmRlcmVkLmludmVydGVkLmljb24ge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW52ZXJ0ZWQgU2hhcGVzICovXG5pLmludmVydGVkLmJvcmRlcmVkLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmxhY2s7XG4gIGNvbG9yOiBAd2hpdGU7XG59XG5cbmkuaW52ZXJ0ZWQuaWNvbiB7XG4gIGNvbG9yOiBAd2hpdGU7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmVhY2goQGNvbG9ycywge1xuICBAY29sb3I6IHJlcGxhY2UoQGtleSwgJ0AnLCAnJyk7XG4gIEBjOiBAY29sb3JzW0BAY29sb3JdW2NvbG9yXTtcbiAgQGw6IEBjb2xvcnNbQEBjb2xvcl1bbGlnaHRdO1xuXG4gIGkuQHtjb2xvcn0uaWNvbi5pY29uLmljb24uaWNvbiB7XG4gICAgY29sb3I6IEBjO1xuICB9XG4gIGkuaW52ZXJ0ZWQuQHtjb2xvcn0uaWNvbi5pY29uLmljb24uaWNvbiB7XG4gICAgY29sb3I6IEBsO1xuICB9XG4gIGkuaW52ZXJ0ZWQuYm9yZGVyZWQuQHtjb2xvcn0uaWNvbi5pY29uLmljb24uaWNvbixcbiAgaS5pbnZlcnRlZC5jaXJjdWxhci5Ae2NvbG9yfS5pY29uLmljb24uaWNvbi5pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYztcbiAgICBjb2xvcjogQHdoaXRlO1xuICB9XG59KVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLm1pbmkubWluaS5taW5pLmljb24sXG5pLm1pbmkubWluaS5taW5pLmljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogQG1pbmk7XG59XG5pLnRpbnkudGlueS50aW55Lmljb24sXG5pLnRpbnkudGlueS50aW55Lmljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogQHRpbnk7XG59XG5pLnNtYWxsLnNtYWxsLnNtYWxsLmljb24sXG5pLnNtYWxsLnNtYWxsLnNtYWxsLmljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogQHNtYWxsO1xufVxuaS5pY29uLFxuaS5pY29ucyB7XG4gIGZvbnQtc2l6ZTogQG1lZGl1bTtcbn1cbmkubGFyZ2UubGFyZ2UubGFyZ2UuaWNvbixcbmkubGFyZ2UubGFyZ2UubGFyZ2UuaWNvbnMge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiBAbGFyZ2U7XG59XG5pLmJpZy5iaWcuYmlnLmljb24sXG5pLmJpZy5iaWcuYmlnLmljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbmkuaHVnZS5odWdlLmh1Z2UuaWNvbixcbmkuaHVnZS5odWdlLmh1Z2UuaWNvbnMge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cbmkubWFzc2l2ZS5tYXNzaXZlLm1hc3NpdmUuaWNvbixcbmkubWFzc2l2ZS5tYXNzaXZlLm1hc3NpdmUuaWNvbnMge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEdyb3Vwc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuaS5pY29ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuaS5pY29ucyAuaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIG1hcmdpbjogMDtcbn1cblxuaS5pY29ucyAuaWNvbjpmaXJzdC1jaGlsZCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyogQ29ybmVyIEljb24gKi9cbmkuaWNvbnMgLmNvcm5lci5pY29uIHtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtc2l6ZTogQGNvcm5lckljb25TaXplO1xuICB0ZXh0LXNoYWRvdzogQGNvcm5lckljb25TaGFkb3c7XG59XG5pLmljb25zIC5pY29uLmNvcm5lcltjbGFzcyo9XCJ0b3AgcmlnaHRcIl0ge1xuICB0b3A6IDA7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IGF1dG87XG59XG5pLmljb25zIC5pY29uLmNvcm5lcltjbGFzcyo9XCJ0b3AgbGVmdFwiXSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbn1cbmkuaWNvbnMgLmljb24uY29ybmVyW2NsYXNzKj1cImJvdHRvbSBsZWZ0XCJdIHtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuaS5pY29ucyAuaWNvbi5jb3JuZXJbY2xhc3MqPVwiYm90dG9tIHJpZ2h0XCJdIHtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG5pLmljb25zIC5pbnZlcnRlZC5jb3JuZXIuaWNvbiB7XG4gIHRleHQtc2hhZG93OiBAY29ybmVySWNvbkludmVydGVkU2hhZG93O1xufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKlxuKiBGb250IEF3ZXNvbWUgNS45LjAgYnkgQGZvbnRhd2Vzb21lIFtodHRwczovL2ZvbnRhd2Vzb21lLmNvbV1cbiogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UgKEljb25zOiBDQyBCWSA0LjAgTGljZW5zZSwgRm9udHM6IFNJTCBPRkwgMS4xIExpY2Vuc2UsIENTUzogTUlUIExpY2Vuc2UpXG4qL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5Gb21hbnRpYy1VSSBpbnRlZ3JhdGlvbiBvZiBGb250QXdlc29tZSA6XG5cbi8vIGNsYXNzIG5hbWVzIGFyZSBzZXBhcmF0ZWRcbmkuaWNvbi5hbmdsZS1sZWZ0ICA9PiAgaS5pY29uLmFuZ2xlLmxlZnRcblxuLy8gdmFyaWF0aW9ucyBhcmUgZXh0cmFjdGVkXG5pLmljb24uY2lyY2xlICAgICAgPT4gIGkuaWNvbi5jaXJjbGVcbmkuaWNvbi5jaXJjbGUtbyAgICA9PiAgaS5pY29uLmNpcmNsZS5vdXRsaW5lXG5cbi8vIGFiYnJldmlhdGlvbiBhcmUgcmVwbGFjZWQgYnkgZnVsbCB3b3Jkc1xuaS5pY29uLiotaCAgICAgICAgID0+ICBpLmljb24uKi5ob3Jpem9udGFsXG5pLmljb24uKi12ICAgICAgICAgPT4gIGkuaWNvbi4qLnZlcnRpY2FsXG5pLmljb24uYWxwaGEgICAgICAgPT4gIGkuaWNvbi5hbHBoYWJldFxuaS5pY29uLmFzYyAgICAgICAgID0+ICBpLmljb24uYXNjZW5kaW5nXG5pLmljb24uZGVzYyAgICAgICAgPT4gIGkuaWNvbi5kZXNjZW5kaW5nXG5pLmljb24uYWx0ICAgICAgICAgPT4gIGkuaWNvbi5hbHRlcm5hdGVcblxuXG5JY29ucyBhcmUgb3JkZXIgQS1aIGluIHRoZWlyIGdyb3VwLCBTb2xpZCwgT3V0bGluZSwgVGhpbiAoUHJvIG9ubHkpIGFuZCBCcmFuZFxuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgSWNvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIERlcHJlY2F0ZWQgKkluL091dCBOYW1pbmcgQ29uZmxpY3QpICovXG5pLmljb24ubGlua2VkaW4uaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTFcIjsgfVxuaS5pY29uLnpvb20uaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGVcIjsgfVxuaS5pY29uLnpvb20ub3V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDEwXCI7IH1cbmkuaWNvbi5zaWduLmluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmY2XCI7IH1cbmkuaWNvbi5pbi5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE4XCI7IH1cbmkuaWNvbi5sb2cub3V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmY1XCI7IH1cbmkuaWNvbi5zaWduLm91dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJmNVwiOyB9XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBTb2xpZCBJY29uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogSWNvbnMgKi9cbmkuaWNvbi5hZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY0MVwiOyB9XG5pLmljb24uYWRkcmVzcy5ib29rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmI5XCI7IH1cbmkuaWNvbi5hZGRyZXNzLmNhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYmJcIjsgfVxuaS5pY29uLmFkanVzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0MlwiOyB9XG5pLmljb24uYWlyLmZyZXNoZW5lcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVkMFwiOyB9XG5pLmljb24uYWxpZ24uY2VudGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDM3XCI7IH1cbmkuaWNvbi5hbGlnbi5qdXN0aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDM5XCI7IH1cbmkuaWNvbi5hbGlnbi5sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDM2XCI7IH1cbmkuaWNvbi5hbGlnbi5yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzOFwiOyB9XG5pLmljb24uYWxsZXJnaWVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDYxXCI7IH1cbmkuaWNvbi5hbWJ1bGFuY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZjlcIjsgfVxuaS5pY29uLmFtZXJpY2FuLnNpZ24ubGFuZ3VhZ2UuaW50ZXJwcmV0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmEzXCI7IH1cbmkuaWNvbi5hbmNob3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2RcIjsgfVxuaS5pY29uLmFuZ2xlLmRvdWJsZS5kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTAzXCI7IH1cbmkuaWNvbi5hbmdsZS5kb3VibGUubGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwMFwiOyB9XG5pLmljb24uYW5nbGUuZG91YmxlLnJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTAxXCI7IH1cbmkuaWNvbi5hbmdsZS5kb3VibGUudXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDJcIjsgfVxuaS5pY29uLmFuZ2xlLmxlZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDRcIjsgfVxuaS5pY29uLmFuZ2xlLnJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA1XCI7IH1cbmkuaWNvbi5hbmdsZS51cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwNlwiOyB9XG5pLmljb24uYW5nbGUuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwN1wiOyB9XG5pLmljb24uYW5ncnk6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NTZcIjsgfVxuaS5pY29uLmFua2g6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NDRcIjsgfVxuaS5pY29uLmFyY2hpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODdcIjsgfVxuaS5pY29uLmFyY2h3YXk6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NTdcIjsgfVxuaS5pY29uLmFycm93LmFsdGVybmF0ZS5jaXJjbGUuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM1OFwiOyB9XG5pLmljb24uYXJyb3cuYWx0ZXJuYXRlLmNpcmNsZS5sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzU5XCI7IH1cbmkuaWNvbi5hcnJvdy5hbHRlcm5hdGUuY2lyY2xlLnJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzVhXCI7IH1cbmkuaWNvbi5hcnJvdy5hbHRlcm5hdGUuY2lyY2xlLnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzViXCI7IH1cbmkuaWNvbi5hcnJvdy5jaXJjbGUuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhYlwiOyB9XG5pLmljb24uYXJyb3cuY2lyY2xlLmxlZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYThcIjsgfVxuaS5pY29uLmFycm93LmNpcmNsZS5yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhOVwiOyB9XG5pLmljb24uYXJyb3cuY2lyY2xlLnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGFhXCI7IH1cbmkuaWNvbi5hcnJvdy5kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDYzXCI7IH1cbmkuaWNvbi5hcnJvdy5sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDYwXCI7IH1cbmkuaWNvbi5hcnJvdy5yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2MVwiOyB9XG5pLmljb24uYXJyb3cudXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNjJcIjsgfVxuaS5pY29uLmFycm93cy5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYjJcIjsgfVxuaS5pY29uLmFycm93cy5hbHRlcm5hdGUuaG9yaXpvbnRhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjMzN1wiOyB9XG5pLmljb24uYXJyb3dzLmFsdGVybmF0ZS52ZXJ0aWNhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjMzOFwiOyB9XG5pLmljb24uYXNzaXN0aXZlLmxpc3RlbmluZy5zeXN0ZW1zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmEyXCI7IH1cbmkuaWNvbi5hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2OVwiOyB9XG5pLmljb24uYXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZmFcIjsgfVxuaS5pY29uLmF0bGFzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTU4XCI7IH1cbmkuaWNvbi5hdG9tOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWQyXCI7IH1cbmkuaWNvbi5hdWRpby5kZXNjcmlwdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5ZVwiOyB9XG5pLmljb24uYXdhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NTlcIjsgfVxuaS5pY29uLmJhYnk6YmVmb3JlIHsgY29udGVudDogXCJcXGY3N2NcIjsgfVxuaS5pY29uLmJhYnkuY2FycmlhZ2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY3N2RcIjsgfVxuaS5pY29uLmJhY2tzcGFjZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU1YVwiOyB9XG5pLmljb24uYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNGFcIjsgfVxuaS5pY29uLmJhY29uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2U1XCI7IH1cbmkuaWNvbi5iYWxhbmNlLnNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjRlXCI7IH1cbmkuaWNvbi5iYWxhbmNlLnNjYWxlLmxlZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MTVcIjsgfVxuaS5pY29uLmJhbGFuY2Uuc2NhbGUucmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MTZcIjsgfVxuaS5pY29uLmJhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1ZVwiOyB9XG5pLmljb24uYmFuZC5haWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NjJcIjsgfVxuaS5pY29uLmJhcmNvZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmFcIjsgfVxuaS5pY29uLmJhcnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzlcIjsgfVxuaS5pY29uLmJhc2ViYWxsLmJhbGw6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MzNcIjsgfVxuaS5pY29uLmJhc2tldGJhbGwuYmFsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQzNFwiOyB9XG5pLmljb24uYmF0aDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjZFwiOyB9XG5pLmljb24uYmF0dGVyeS5lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0NFwiOyB9XG5pLmljb24uYmF0dGVyeS5mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQwXCI7IH1cbmkuaWNvbi5iYXR0ZXJ5LmhhbGY6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDJcIjsgfVxuaS5pY29uLmJhdHRlcnkucXVhcnRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0M1wiOyB9XG5pLmljb24uYmF0dGVyeS50aHJlZS5xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0MVwiOyB9XG5pLmljb24uYmVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjM2XCI7IH1cbmkuaWNvbi5iZWVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGZjXCI7IH1cbmkuaWNvbi5iZWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGYzXCI7IH1cbmkuaWNvbi5iZWxsLnNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY2XCI7IH1cbmkuaWNvbi5iZXppZXIuY3VydmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NWJcIjsgfVxuaS5pY29uLmJpYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjQ3XCI7IH1cbmkuaWNvbi5iaWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA2XCI7IH1cbmkuaWNvbi5iaWtpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGY4NGFcIjsgfVxuaS5pY29uLmJpbm9jdWxhcnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTVcIjsgfVxuaS5pY29uLmJpb2hhemFyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc4MFwiOyB9XG5pLmljb24uYmlydGhkYXkuY2FrZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmZFwiOyB9XG5pLmljb24uYmxlbmRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUxN1wiOyB9XG5pLmljb24uYmxlbmRlci5waG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZiNlwiOyB9XG5pLmljb24uYmxpbmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOWRcIjsgfVxuaS5pY29uLmJsb2c6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ODFcIjsgfVxuaS5pY29uLmJvbGQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMzJcIjsgfVxuaS5pY29uLmJvbHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTdcIjsgfVxuaS5pY29uLmJvbWI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTJcIjsgfVxuaS5pY29uLmJvbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1ZDdcIjsgfVxuaS5pY29uLmJvbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NWNcIjsgfVxuaS5pY29uLmJvb2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmRcIjsgfVxuaS5pY29uLmJvb2suZGVhZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZiN1wiOyB9XG5pLmljb24uYm9vay5tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2U2XCI7IH1cbmkuaWNvbi5ib29rLm9wZW46YmVmb3JlIHsgY29udGVudDogXCJcXGY1MThcIjsgfVxuaS5pY29uLmJvb2sucmVhZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWRhXCI7IH1cbmkuaWNvbi5ib29rbWFyazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyZVwiOyB9XG5pLmljb24uYm9yZGVyLmFsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjg0Y1wiOyB9XG5pLmljb24uYm9yZGVyLm5vbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY4NTBcIjsgfVxuaS5pY29uLmJvcmRlci5zdHlsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjg1M1wiOyB9XG5pLmljb24uYm93bGluZy5iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDM2XCI7IH1cbmkuaWNvbi5ib3g6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NjZcIjsgfVxuaS5pY29uLmJveC5vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDllXCI7IH1cbmkuaWNvbi5ib3hlczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ2OFwiOyB9XG5pLmljb24uYnJhaWxsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhMVwiOyB9XG5pLmljb24uYnJhaW46YmVmb3JlIHsgY29udGVudDogXCJcXGY1ZGNcIjsgfVxuaS5pY29uLmJyZWFkLnNsaWNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2VjXCI7IH1cbmkuaWNvbi5icmllZmNhc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYjFcIjsgfVxuaS5pY29uLmJyaWVmY2FzZS5tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDY5XCI7IH1cbmkuaWNvbi5icm9hZGNhc3QudG93ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MTlcIjsgfVxuaS5pY29uLmJyb29tOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTFhXCI7IH1cbmkuaWNvbi5icnVzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU1ZFwiOyB9XG5pLmljb24uYnVnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg4XCI7IH1cbmkuaWNvbi5idWlsZGluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhZFwiOyB9XG5pLmljb24uYnVsbGhvcm46YmVmb3JlIHsgY29udGVudDogXCJcXGYwYTFcIjsgfVxuaS5pY29uLmJ1bGxzZXllOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQwXCI7IH1cbmkuaWNvbi5idXJuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDZhXCI7IH1cbmkuaWNvbi5idXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDdcIjsgfVxuaS5pY29uLmJ1cy5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NWVcIjsgfVxuaS5pY29uLmJ1c2luZXNzLnRpbWU6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NGFcIjsgfVxuaS5pY29uLmNhbGN1bGF0b3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWNcIjsgfVxuaS5pY29uLmNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTMzXCI7IH1cbmkuaWNvbi5jYWxlbmRhci5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzNcIjsgfVxuaS5pY29uLmNhbGVuZGFyLmNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjc0XCI7IH1cbmkuaWNvbi5jYWxlbmRhci5kYXk6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ODNcIjsgfVxuaS5pY29uLmNhbGVuZGFyLm1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjcyXCI7IH1cbmkuaWNvbi5jYWxlbmRhci5wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjcxXCI7IH1cbmkuaWNvbi5jYWxlbmRhci50aW1lczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3M1wiOyB9XG5pLmljb24uY2FsZW5kYXIud2VlazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc4NFwiOyB9XG5pLmljb24uY2FtZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDMwXCI7IH1cbmkuaWNvbi5jYW1lcmEucmV0cm86YmVmb3JlIHsgY29udGVudDogXCJcXGYwODNcIjsgfVxuaS5pY29uLmNhbXBncm91bmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY2YmJcIjsgfVxuaS5pY29uLmNhbmR5LmNhbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ODZcIjsgfVxuaS5pY29uLmNhbm5hYmlzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTVmXCI7IH1cbmkuaWNvbi5jYXBzdWxlczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ2YlwiOyB9XG5pLmljb24uY2FyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI5XCI7IH1cbmkuaWNvbi5jYXIuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWRlXCI7IH1cbmkuaWNvbi5jYXIuYmF0dGVyeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVkZlwiOyB9XG5pLmljb24uY2FyLmNyYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWUxXCI7IH1cbmkuaWNvbi5jYXIuc2lkZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVlNFwiOyB9XG5pLmljb24uY2FyZXQuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkN1wiOyB9XG5pLmljb24uY2FyZXQubGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkOVwiOyB9XG5pLmljb24uY2FyZXQucmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZGFcIjsgfVxuaS5pY29uLmNhcmV0LnNxdWFyZS5kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTUwXCI7IH1cbmkuaWNvbi5jYXJldC5zcXVhcmUubGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5MVwiOyB9XG5pLmljb24uY2FyZXQuc3F1YXJlLnJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTUyXCI7IH1cbmkuaWNvbi5jYXJldC5zcXVhcmUudXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTFcIjsgfVxuaS5pY29uLmNhcmV0LnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGQ4XCI7IH1cbmkuaWNvbi5jYXJyb3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ODdcIjsgfVxuaS5pY29uLmNhcnQuYXJyb3cuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxOFwiOyB9XG5pLmljb24uY2FydC5wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE3XCI7IH1cbmkuaWNvbi5jYXNoLnJlZ2lzdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzg4XCI7IH1cbmkuaWNvbi5jYXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY2YmVcIjsgfVxuaS5pY29uLmNlcnRpZmljYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGEzXCI7IH1cbmkuaWNvbi5jaGFpcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZjMFwiOyB9XG5pLmljb24uY2hhbGtib2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUxYlwiOyB9XG5pLmljb24uY2hhbGtib2FyZC50ZWFjaGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTFjXCI7IH1cbmkuaWNvbi5jaGFyZ2luZy5zdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWU3XCI7IH1cbmkuaWNvbi5jaGFydC5hcmVhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZlXCI7IH1cbmkuaWNvbi5jaGFydC5iYXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODBcIjsgfVxuaS5pY29uLmNoYXJ0LmxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDFcIjsgfVxuaS5pY29uLmNoYXJ0LnBpZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwMFwiOyB9XG5pLmljb24uY2hlY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGNcIjsgfVxuaS5pY29uLmNoZWNrLmNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1OFwiOyB9XG5pLmljb24uY2hlY2suZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTYwXCI7IH1cbmkuaWNvbi5jaGVjay5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGFcIjsgfVxuaS5pY29uLmNoZWVzZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdlZlwiOyB9XG5pLmljb24uY2hlc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MzlcIjsgfVxuaS5pY29uLmNoZXNzLmJpc2hvcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQzYVwiOyB9XG5pLmljb24uY2hlc3MuYm9hcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY0M2NcIjsgfVxuaS5pY29uLmNoZXNzLmtpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGY0M2ZcIjsgfVxuaS5pY29uLmNoZXNzLmtuaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ0MVwiOyB9XG5pLmljb24uY2hlc3MucGF3bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ0M1wiOyB9XG5pLmljb24uY2hlc3MucXVlZW46YmVmb3JlIHsgY29udGVudDogXCJcXGY0NDVcIjsgfVxuaS5pY29uLmNoZXNzLnJvb2s6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NDdcIjsgfVxuaS5pY29uLmNoZXZyb24uY2lyY2xlLmRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2FcIjsgfVxuaS5pY29uLmNoZXZyb24uY2lyY2xlLmxlZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzdcIjsgfVxuaS5pY29uLmNoZXZyb24uY2lyY2xlLnJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTM4XCI7IH1cbmkuaWNvbi5jaGV2cm9uLmNpcmNsZS51cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzOVwiOyB9XG5pLmljb24uY2hldnJvbi5kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDc4XCI7IH1cbmkuaWNvbi5jaGV2cm9uLmxlZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTNcIjsgfVxuaS5pY29uLmNoZXZyb24ucmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTRcIjsgfVxuaS5pY29uLmNoZXZyb24udXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzdcIjsgfVxuaS5pY29uLmNoaWxkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFlXCI7IH1cbmkuaWNvbi5jaHVyY2g6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MWRcIjsgfVxuaS5pY29uLmNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExMVwiOyB9XG5pLmljb24uY2lyY2xlLm5vdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNlXCI7IH1cbmkuaWNvbi5jaXR5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjRmXCI7IH1cbmkuaWNvbi5jbGluaWMubWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdmMlwiOyB9XG5pLmljb24uY2xpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzI4XCI7IH1cbmkuaWNvbi5jbGlwYm9hcmQuY2hlY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NmNcIjsgfVxuaS5pY29uLmNsaXBib2FyZC5saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDZkXCI7IH1cbmkuaWNvbi5jbG9jazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxN1wiOyB9XG5pLmljb24uY2xvbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNGRcIjsgfVxuaS5pY29uLmNsb3NlZC5jYXB0aW9uaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBhXCI7IH1cbmkuaWNvbi5jbG91ZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjMlwiOyB9XG5pLmljb24uY2xvdWQuZG93bmxvYWQuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzgxXCI7IH1cbmkuaWNvbi5jbG91ZC5tZWF0YmFsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjczYlwiOyB9XG5pLmljb24uY2xvdWQubW9vbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZjM1wiOyB9XG5pLmljb24uY2xvdWQubW9vbi5yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzNjXCI7IH1cbmkuaWNvbi5jbG91ZC5yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzNkXCI7IH1cbmkuaWNvbi5jbG91ZC5zaG93ZXJzLmhlYXZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzQwXCI7IH1cbmkuaWNvbi5jbG91ZC5zdW46YmVmb3JlIHsgY29udGVudDogXCJcXGY2YzRcIjsgfVxuaS5pY29uLmNsb3VkLnN1bi5yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzQzXCI7IH1cbmkuaWNvbi5jbG91ZC51cGxvYWQuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzgyXCI7IH1cbmkuaWNvbi5jb2NrdGFpbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU2MVwiOyB9XG5pLmljb24uY29kZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyMVwiOyB9XG5pLmljb24uY29kZS5icmFuY2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjZcIjsgfVxuaS5pY29uLmNvZmZlZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmNFwiOyB9XG5pLmljb24uY29nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDEzXCI7IH1cbmkuaWNvbi5jb2dzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDg1XCI7IH1cbmkuaWNvbi5jb2luczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUxZVwiOyB9XG5pLmljb24uY29sdW1uczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkYlwiOyB9XG5pLmljb24uY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3NVwiOyB9XG5pLmljb24uY29tbWVudC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyN2FcIjsgfVxuaS5pY29uLmNvbW1lbnQuZG9sbGFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjUxXCI7IH1cbmkuaWNvbi5jb21tZW50LmRvdHM6YmVmb3JlIHsgY29udGVudDogXCJcXGY0YWRcIjsgfVxuaS5pY29uLmNvbW1lbnQubWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdmNVwiOyB9XG5pLmljb24uY29tbWVudC5zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRiM1wiOyB9XG5pLmljb24uY29tbWVudHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODZcIjsgfVxuaS5pY29uLmNvbW1lbnRzLmRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY1M1wiOyB9XG5pLmljb24uY29tcGFjdC5kaXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTFmXCI7IH1cbmkuaWNvbi5jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRlXCI7IH1cbmkuaWNvbi5jb21wcmVzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2NlwiOyB9XG5pLmljb24uY29tcHJlc3MuYXJyb3dzLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc4Y1wiOyB9XG5pLmljb24uY29uY2llcmdlLmJlbGw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NjJcIjsgfVxuaS5pY29uLmNvb2tpZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU2M1wiOyB9XG5pLmljb24uY29va2llLmJpdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NjRcIjsgfVxuaS5pY29uLmNvcHk6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzVcIjsgfVxuaS5pY29uLmNvcHlyaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmOVwiOyB9XG5pLmljb24uY291Y2g6YmVmb3JlIHsgY29udGVudDogXCJcXGY0YjhcIjsgfVxuaS5pY29uLmNyZWRpdC5jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDlkXCI7IH1cbmkuaWNvbi5jcm9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI1XCI7IH1cbmkuaWNvbi5jcm9wLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU2NVwiOyB9XG5pLmljb24uY3Jvc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NTRcIjsgfVxuaS5pY29uLmNyb3NzaGFpcnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNWJcIjsgfVxuaS5pY29uLmNyb3c6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MjBcIjsgfVxuaS5pY29uLmNyb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTIxXCI7IH1cbmkuaWNvbi5jcnV0Y2g6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ZjdcIjsgfVxuaS5pY29uLmN1YmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjJcIjsgfVxuaS5pY29uLmN1YmVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWIzXCI7IH1cbmkuaWNvbi5jdXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzRcIjsgfVxuaS5pY29uLmRhdGFiYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWMwXCI7IH1cbmkuaWNvbi5kZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmE0XCI7IH1cbmkuaWNvbi5kZW1vY3JhdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc0N1wiOyB9XG5pLmljb24uZGVza3RvcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwOFwiOyB9XG5pLmljb24uZGhhcm1hY2hha3JhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjU1XCI7IH1cbmkuaWNvbi5kaWFnbm9zZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NzBcIjsgfVxuaS5pY29uLmRpY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MjJcIjsgfVxuaS5pY29uLmRpY2UuZDIwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmNmXCI7IH1cbmkuaWNvbi5kaWNlLmQ2OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmQxXCI7IH1cbmkuaWNvbi5kaWNlLmZpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MjNcIjsgfVxuaS5pY29uLmRpY2UuZm91cjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUyNFwiOyB9XG5pLmljb24uZGljZS5vbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MjVcIjsgfVxuaS5pY29uLmRpY2Uuc2l4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTI2XCI7IH1cbmkuaWNvbi5kaWNlLnRocmVlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTI3XCI7IH1cbmkuaWNvbi5kaWNlLnR3bzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUyOFwiOyB9XG5pLmljb24uZGlnaXRhbC50YWNob2dyYXBoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTY2XCI7IH1cbmkuaWNvbi5kaXJlY3Rpb25zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWViXCI7IH1cbmkuaWNvbi5kaXZpZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MjlcIjsgfVxuaS5pY29uLmRpenp5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTY3XCI7IH1cbmkuaWNvbi5kbmE6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NzFcIjsgfVxuaS5pY29uLmRvZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZkM1wiOyB9XG5pLmljb24uZG9sbGFyLnNpZ246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTVcIjsgfVxuaS5pY29uLmRvbGx5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDcyXCI7IH1cbmkuaWNvbi5kb2xseS5mbGF0YmVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDc0XCI7IH1cbmkuaWNvbi5kb25hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY0YjlcIjsgfVxuaS5pY29uLmRvb3IuY2xvc2VkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTJhXCI7IH1cbmkuaWNvbi5kb29yLm9wZW46YmVmb3JlIHsgY29udGVudDogXCJcXGY1MmJcIjsgfVxuaS5pY29uLmRvdC5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTJcIjsgfVxuaS5pY29uLmRvdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY0YmFcIjsgfVxuaS5pY29uLmRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDE5XCI7IH1cbmkuaWNvbi5kcmFmdGluZy5jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTY4XCI7IH1cbmkuaWNvbi5kcmFnb246YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZDVcIjsgfVxuaS5pY29uLmRyYXcucG9seWdvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVlZVwiOyB9XG5pLmljb24uZHJ1bTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU2OVwiOyB9XG5pLmljb24uZHJ1bS5zdGVlbHBhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU2YVwiOyB9XG5pLmljb24uZHJ1bXN0aWNrLmJpdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZDdcIjsgfVxuaS5pY29uLmR1bWJiZWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDRiXCI7IH1cbmkuaWNvbi5kdW1wc3RlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc5M1wiOyB9XG5pLmljb24uZHVtcHN0ZXIuZmlyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc5NFwiOyB9XG5pLmljb24uZHVuZ2VvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZkOVwiOyB9XG5pLmljb24uZWRpdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0NFwiOyB9XG5pLmljb24uZWdnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2ZiXCI7IH1cbmkuaWNvbi5lamVjdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1MlwiOyB9XG5pLmljb24uZWxsaXBzaXMuaG9yaXpvbnRhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0MVwiOyB9XG5pLmljb24uZWxsaXBzaXMudmVydGljYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDJcIjsgfVxuaS5pY29uLmVudmVsb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGUwXCI7IH1cbmkuaWNvbi5lbnZlbG9wZS5vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmI2XCI7IH1cbmkuaWNvbi5lbnZlbG9wZS5vcGVuLnRleHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NThcIjsgfVxuaS5pY29uLmVudmVsb3BlLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5OVwiOyB9XG5pLmljb24uZXF1YWxzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTJjXCI7IH1cbmkuaWNvbi5lcmFzZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmRcIjsgfVxuaS5pY29uLmV0aGVybmV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzk2XCI7IH1cbmkuaWNvbi5ldXJvLnNpZ246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTNcIjsgfVxuaS5pY29uLmV4Y2hhbmdlLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM2MlwiOyB9XG5pLmljb24uZXhjbGFtYXRpb246YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmFcIjsgfVxuaS5pY29uLmV4Y2xhbWF0aW9uLmNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2YVwiOyB9XG5pLmljb24uZXhjbGFtYXRpb24udHJpYW5nbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzFcIjsgfVxuaS5pY29uLmV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2NVwiOyB9XG5pLmljb24uZXhwYW5kLmFycm93cy5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzMWVcIjsgfVxuaS5pY29uLmV4dGVybmFsLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM1ZFwiOyB9XG5pLmljb24uZXh0ZXJuYWwubGluay5zcXVhcmUuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzYwXCI7IH1cbmkuaWNvbi5leWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNmVcIjsgfVxuaS5pY29uLmV5ZS5kcm9wcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZiXCI7IH1cbmkuaWNvbi5leWUuc2xhc2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzBcIjsgfVxuaS5pY29uLmZhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjg2M1wiOyB9XG5pLmljb24uZmFzdC5iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0OVwiOyB9XG5pLmljb24uZmFzdC5mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDUwXCI7IH1cbmkuaWNvbi5mYXg6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYWNcIjsgfVxuaS5pY29uLmZlYXRoZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MmRcIjsgfVxuaS5pY29uLmZlYXRoZXIuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTZiXCI7IH1cbmkuaWNvbi5mZW1hbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODJcIjsgfVxuaS5pY29uLmZpZ2h0ZXIuamV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGZiXCI7IH1cbmkuaWNvbi5maWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTViXCI7IH1cbmkuaWNvbi5maWxlLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1Y1wiOyB9XG5pLmljb24uZmlsZS5hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM2XCI7IH1cbmkuaWNvbi5maWxlLmF1ZGlvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM3XCI7IH1cbmkuaWNvbi5maWxlLmNvZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzlcIjsgfVxuaS5pY29uLmZpbGUuY29udHJhY3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NmNcIjsgfVxuaS5pY29uLmZpbGUuY3N2OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmRkXCI7IH1cbmkuaWNvbi5maWxlLmRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTZkXCI7IH1cbmkuaWNvbi5maWxlLmV4Y2VsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWMzXCI7IH1cbmkuaWNvbi5maWxlLmV4cG9ydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU2ZVwiOyB9XG5pLmljb24uZmlsZS5pbWFnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjNVwiOyB9XG5pLmljb24uZmlsZS5pbXBvcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NmZcIjsgfVxuaS5pY29uLmZpbGUuaW52b2ljZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU3MFwiOyB9XG5pLmljb24uZmlsZS5pbnZvaWNlLmRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU3MVwiOyB9XG5pLmljb24uZmlsZS5tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDc3XCI7IH1cbmkuaWNvbi5maWxlLm1lZGljYWwuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDc4XCI7IH1cbmkuaWNvbi5maWxlLnBkZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjMVwiOyB9XG5pLmljb24uZmlsZS5wb3dlcnBvaW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM0XCI7IH1cbmkuaWNvbi5maWxlLnByZXNjcmlwdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU3MlwiOyB9XG5pLmljb24uZmlsZS5zaWduYXR1cmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NzNcIjsgfVxuaS5pY29uLmZpbGUudXBsb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTc0XCI7IH1cbmkuaWNvbi5maWxlLnZpZGVvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM4XCI7IH1cbmkuaWNvbi5maWxlLndvcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzJcIjsgfVxuaS5pY29uLmZpbGw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NzVcIjsgfVxuaS5pY29uLmZpbGwuZHJpcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU3NlwiOyB9XG5pLmljb24uZmlsbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwOFwiOyB9XG5pLmljb24uZmlsdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGIwXCI7IH1cbmkuaWNvbi5maW5nZXJwcmludDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU3N1wiOyB9XG5pLmljb24uZmlyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2ZFwiOyB9XG5pLmljb24uZmlyZS5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ZTRcIjsgfVxuaS5pY29uLmZpcmUuZXh0aW5ndWlzaGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTM0XCI7IH1cbmkuaWNvbi5maXJzdC5haWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NzlcIjsgfVxuaS5pY29uLmZpc2g6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NzhcIjsgfVxuaS5pY29uLmZpc3QucmFpc2VkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmRlXCI7IH1cbmkuaWNvbi5mbGFnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDI0XCI7IH1cbmkuaWNvbi5mbGFnLmNoZWNrZXJlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExZVwiOyB9XG5pLmljb24uZmxhZy51c2E6YmVmb3JlIHsgY29udGVudDogXCJcXGY3NGRcIjsgfVxuaS5pY29uLmZsYXNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGMzXCI7IH1cbmkuaWNvbi5mbHVzaGVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTc5XCI7IH1cbmkuaWNvbi5mb2xkZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwN2JcIjsgfVxuaS5pY29uLmZvbGRlci5taW51czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY1ZFwiOyB9XG5pLmljb24uZm9sZGVyLm9wZW46YmVmb3JlIHsgY29udGVudDogXCJcXGYwN2NcIjsgfVxuaS5pY29uLmZvbGRlci5wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjVlXCI7IH1cbmkuaWNvbi5mb250OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDMxXCI7IH1cbmkuaWNvbi5mb290YmFsbC5iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDRlXCI7IH1cbmkuaWNvbi5mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDRlXCI7IH1cbmkuaWNvbi5mcm9nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTJlXCI7IH1cbmkuaWNvbi5mcm93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExOVwiOyB9XG5pLmljb24uZnJvd24ub3BlbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU3YVwiOyB9XG5pLmljb24uZnJ1aXQtYXBwbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1ZDFcIjsgfVxuaS5pY29uLmZ1bm5lbC5kb2xsYXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NjJcIjsgfVxuaS5pY29uLmZ1dGJvbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlM1wiOyB9XG5pLmljb24uZ2FtZXBhZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExYlwiOyB9XG5pLmljb24uZ2FzLnB1bXA6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MmZcIjsgfVxuaS5pY29uLmdhdmVsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGUzXCI7IH1cbmkuaWNvbi5nZW06YmVmb3JlIHsgY29udGVudDogXCJcXGYzYTVcIjsgfVxuaS5pY29uLmdlbmRlcmxlc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMmRcIjsgfVxuaS5pY29uLmdob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmUyXCI7IH1cbmkuaWNvbi5naWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDZiXCI7IH1cbmkuaWNvbi5naWZ0czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc5Y1wiOyB9XG5pLmljb24uZ2xhc3MuY2hlZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzlmXCI7IH1cbmkuaWNvbi5nbGFzcy5tYXJ0aW5pOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDAwXCI7IH1cbmkuaWNvbi5nbGFzcy5tYXJ0aW5pLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU3YlwiOyB9XG5pLmljb24uZ2xhc3Mud2hpc2tleTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdhMFwiOyB9XG5pLmljb24uZ2xhc3NlczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzMFwiOyB9XG5pLmljb24uZ2xvYmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYWNcIjsgfVxuaS5pY29uLmdsb2JlLmFmcmljYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU3Y1wiOyB9XG5pLmljb24uZ2xvYmUuYW1lcmljYXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY1N2RcIjsgfVxuaS5pY29uLmdsb2JlLmFzaWE6YmVmb3JlIHsgY29udGVudDogXCJcXGY1N2VcIjsgfVxuaS5pY29uLmdsb2JlLmV1cm9wZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdhMlwiOyB9XG5pLmljb24uZ29sZi5iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDUwXCI7IH1cbmkuaWNvbi5nb3B1cmFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjY0XCI7IH1cbmkuaWNvbi5ncmFkdWF0aW9uLmNhcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5ZFwiOyB9XG5pLmljb24uZ3JlYXRlci50aGFuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTMxXCI7IH1cbmkuaWNvbi5ncmVhdGVyLnRoYW4uZXF1YWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MzJcIjsgfVxuaS5pY29uLmdyaW1hY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY1N2ZcIjsgfVxuaS5pY29uLmdyaW46YmVmb3JlIHsgY29udGVudDogXCJcXGY1ODBcIjsgfVxuaS5pY29uLmdyaW4uYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTgxXCI7IH1cbmkuaWNvbi5ncmluLmJlYW06YmVmb3JlIHsgY29udGVudDogXCJcXGY1ODJcIjsgfVxuaS5pY29uLmdyaW4uYmVhbS5zd2VhdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4M1wiOyB9XG5pLmljb24uZ3Jpbi5oZWFydHM6YmVmb3JlIHsgY29udGVudDogXCJcXGY1ODRcIjsgfVxuaS5pY29uLmdyaW4uc3F1aW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTg1XCI7IH1cbmkuaWNvbi5ncmluLnNxdWludC50ZWFyczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4NlwiOyB9XG5pLmljb24uZ3Jpbi5zdGFyczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4N1wiOyB9XG5pLmljb24uZ3Jpbi50ZWFyczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4OFwiOyB9XG5pLmljb24uZ3Jpbi50b25ndWU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1ODlcIjsgfVxuaS5pY29uLmdyaW4udG9uZ3VlLnNxdWludDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4YVwiOyB9XG5pLmljb24uZ3Jpbi50b25ndWUud2luazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4YlwiOyB9XG5pLmljb24uZ3Jpbi53aW5rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNThjXCI7IH1cbmkuaWNvbi5ncmlwLmhvcml6b250YWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1OGRcIjsgfVxuaS5pY29uLmdyaXAubGluZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YTRcIjsgfVxuaS5pY29uLmdyaXAubGluZXMudmVydGljYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YTVcIjsgfVxuaS5pY29uLmdyaXAudmVydGljYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1OGVcIjsgfVxuaS5pY29uLmd1aXRhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdhNlwiOyB9XG5pLmljb24uaC5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZmRcIjsgfVxuaS5pY29uLmhhbWJ1cmdlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjgwNVwiOyB9XG5pLmljb24uaGFtbWVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmUzXCI7IH1cbmkuaWNvbi5oYW1zYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY2NVwiOyB9XG5pLmljb24uaGFuZC5ob2xkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGJkXCI7IH1cbmkuaWNvbi5oYW5kLmhvbGRpbmcuaGVhcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY0YmVcIjsgfVxuaS5pY29uLmhhbmQuaG9sZGluZy51c2Q6YmVmb3JlIHsgY29udGVudDogXCJcXGY0YzBcIjsgfVxuaS5pY29uLmhhbmQubGl6YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjU4XCI7IH1cbmkuaWNvbi5oYW5kLm1pZGRsZS5maW5nZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY4MDZcIjsgfVxuaS5pY29uLmhhbmQucGFwZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNTZcIjsgfVxuaS5pY29uLmhhbmQucGVhY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNWJcIjsgfVxuaS5pY29uLmhhbmQucG9pbnQuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhN1wiOyB9XG5pLmljb24uaGFuZC5wb2ludC5sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGE1XCI7IH1cbmkuaWNvbi5oYW5kLnBvaW50LnJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGE0XCI7IH1cbmkuaWNvbi5oYW5kLnBvaW50LnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGE2XCI7IH1cbmkuaWNvbi5oYW5kLnBvaW50ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNWFcIjsgfVxuaS5pY29uLmhhbmQucm9jazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1NVwiOyB9XG5pLmljb24uaGFuZC5zY2lzc29yczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1N1wiOyB9XG5pLmljb24uaGFuZC5zcG9jazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1OVwiOyB9XG5pLmljb24uaGFuZHM6YmVmb3JlIHsgY29udGVudDogXCJcXGY0YzJcIjsgfVxuaS5pY29uLmhhbmRzLmhlbHBpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGY0YzRcIjsgfVxuaS5pY29uLmhhbmRzaGFrZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJiNVwiOyB9XG5pLmljb24uaGFudWtpYWg6YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZTZcIjsgfVxuaS5pY29uLmhhcmQuaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODA3XCI7IH1cbmkuaWNvbi5oYXNodGFnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjkyXCI7IH1cbmkuaWNvbi5oYXQud2l6YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmU4XCI7IH1cbmkuaWNvbi5oYXlrYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NjZcIjsgfVxuaS5pY29uLmhkZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhMFwiOyB9XG5pLmljb24uaGVhZGluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkY1wiOyB9XG5pLmljb24uaGVhZHBob25lczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyNVwiOyB9XG5pLmljb24uaGVhZHBob25lcy5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1OGZcIjsgfVxuaS5pY29uLmhlYWRzZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1OTBcIjsgfVxuaS5pY29uLmhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDA0XCI7IH1cbmkuaWNvbi5oZWFydC5icm9rZW46YmVmb3JlIHsgY29udGVudDogXCJcXGY3YTlcIjsgfVxuaS5pY29uLmhlYXJ0YmVhdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxZVwiOyB9XG5pLmljb24uaGVsaWNvcHRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzM1wiOyB9XG5pLmljb24uaGlnaGxpZ2h0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY1OTFcIjsgfVxuaS5pY29uLmhpa2luZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZlY1wiOyB9XG5pLmljb24uaGlwcG86YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZWRcIjsgfVxuaS5pY29uLmhpc3Rvcnk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZGFcIjsgfVxuaS5pY29uLmhvY2tleS5wdWNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDUzXCI7IH1cbmkuaWNvbi5ob2xseS5iZXJyeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdhYVwiOyB9XG5pLmljb24uaG9tZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxNVwiOyB9XG5pLmljb24uaG9yc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZjBcIjsgfVxuaS5pY29uLmhvcnNlLmhlYWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YWJcIjsgfVxuaS5pY29uLmhvc3BpdGFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGY4XCI7IH1cbmkuaWNvbi5ob3NwaXRhbC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY0N2RcIjsgfVxuaS5pY29uLmhvc3BpdGFsLnN5bWJvbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ3ZVwiOyB9XG5pLmljb24uaG90LnR1YjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5M1wiOyB9XG5pLmljb24uaG90ZG9nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODBmXCI7IH1cbmkuaWNvbi5ob3RlbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5NFwiOyB9XG5pLmljb24uaG91cmdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjU0XCI7IH1cbmkuaWNvbi5ob3VyZ2xhc3MuZW5kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjUzXCI7IH1cbmkuaWNvbi5ob3VyZ2xhc3MuaGFsZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1MlwiOyB9XG5pLmljb24uaG91cmdsYXNzLnN0YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjUxXCI7IH1cbmkuaWNvbi5ob3VzZS5kYW1hZ2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZjFcIjsgfVxuaS5pY29uLmhyeXZuaWE6YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZjJcIjsgfVxuaS5pY29uLmkuY3Vyc29yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQ2XCI7IH1cbmkuaWNvbi5pY2UuY3JlYW06YmVmb3JlIHsgY29udGVudDogXCJcXGY4MTBcIjsgfVxuaS5pY29uLmljaWNsZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YWRcIjsgfVxuaS5pY29uLmljb25zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODZkXCI7IH1cbmkuaWNvbi5pZC5iYWRnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjMVwiOyB9XG5pLmljb24uaWQuY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjMlwiOyB9XG5pLmljb24uaWQuY2FyZC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY0N2ZcIjsgfVxuaS5pY29uLmlnbG9vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2FlXCI7IH1cbmkuaWNvbi5pbWFnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzZVwiOyB9XG5pLmljb24uaW1hZ2VzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzAyXCI7IH1cbmkuaWNvbi5pbmJveDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxY1wiOyB9XG5pLmljb24uaW5kZW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDNjXCI7IH1cbmkuaWNvbi5pbmR1c3RyeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3NVwiOyB9XG5pLmljb24uaW5maW5pdHk6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MzRcIjsgfVxuaS5pY29uLmluZm86YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjlcIjsgfVxuaS5pY29uLmluZm8uY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDVhXCI7IH1cbmkuaWNvbi5pdGFsaWM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMzNcIjsgfVxuaS5pY29uLmplZGk6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NjlcIjsgfVxuaS5pY29uLmpvaW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTk1XCI7IH1cbmkuaWNvbi5qb3VybmFsLndoaWxsczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY2YVwiOyB9XG5pLmljb24ua2FhYmE6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NmJcIjsgfVxuaS5pY29uLmtleTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4NFwiOyB9XG5pLmljb24ua2V5Ym9hcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMWNcIjsgfVxuaS5pY29uLmtoYW5kYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY2ZFwiOyB9XG5pLmljb24ua2lzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5NlwiOyB9XG5pLmljb24ua2lzcy5iZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTk3XCI7IH1cbmkuaWNvbi5raXNzLndpbmsuaGVhcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1OThcIjsgfVxuaS5pY29uLmtpd2kuYmlyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzNVwiOyB9XG5pLmljb24ubGFuZG1hcms6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NmZcIjsgfVxuaS5pY29uLmxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFiXCI7IH1cbmkuaWNvbi5sYXB0b3A6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDlcIjsgfVxuaS5pY29uLmxhcHRvcC5jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWZjXCI7IH1cbmkuaWNvbi5sYXB0b3AubWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjgxMlwiOyB9XG5pLmljb24ubGF1Z2g6YmVmb3JlIHsgY29udGVudDogXCJcXGY1OTlcIjsgfVxuaS5pY29uLmxhdWdoLmJlYW06YmVmb3JlIHsgY29udGVudDogXCJcXGY1OWFcIjsgfVxuaS5pY29uLmxhdWdoLnNxdWludDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5YlwiOyB9XG5pLmljb24ubGF1Z2gud2luazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5Y1wiOyB9XG5pLmljb24ubGF5ZXIuZ3JvdXA6YmVmb3JlIHsgY29udGVudDogXCJcXGY1ZmRcIjsgfVxuaS5pY29uLmxlYWY6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNmNcIjsgfVxuaS5pY29uLmxlbW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDk0XCI7IH1cbmkuaWNvbi5sZXNzLnRoYW46YmVmb3JlIHsgY29udGVudDogXCJcXGY1MzZcIjsgfVxuaS5pY29uLmxlc3MudGhhbi5lcXVhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzN1wiOyB9XG5pLmljb24ubGV2ZWwuZG93bi5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYmVcIjsgfVxuaS5pY29uLmxldmVsLnVwLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNiZlwiOyB9XG5pLmljb24ubGlmZS5yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNkXCI7IH1cbmkuaWNvbi5saWdodGJ1bGI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZWJcIjsgfVxuaS5pY29uLmxpbmtpZnk6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzFcIjsgfVxuaS5pY29uLmxpcmEuc2lnbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5NVwiOyB9XG5pLmljb24ubGlzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzYVwiOyB9XG5pLmljb24ubGlzdC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjJcIjsgfVxuaS5pY29uLmxpc3Qub2w6YmVmb3JlIHsgY29udGVudDogXCJcXGYwY2JcIjsgfVxuaS5pY29uLmxpc3QudWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYwY2FcIjsgfVxuaS5pY29uLmxvY2F0aW9uLmFycm93OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI0XCI7IH1cbmkuaWNvbi5sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDIzXCI7IH1cbmkuaWNvbi5sb2NrLm9wZW46YmVmb3JlIHsgY29udGVudDogXCJcXGYzYzFcIjsgfVxuaS5pY29uLmxvbmcuYXJyb3cuYWx0ZXJuYXRlLmRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYzMDlcIjsgfVxuaS5pY29uLmxvbmcuYXJyb3cuYWx0ZXJuYXRlLmxlZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYzMGFcIjsgfVxuaS5pY29uLmxvbmcuYXJyb3cuYWx0ZXJuYXRlLnJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzBiXCI7IH1cbmkuaWNvbi5sb25nLmFycm93LmFsdGVybmF0ZS51cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjMwY1wiOyB9XG5pLmljb24ubG93LnZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhOFwiOyB9XG5pLmljb24ubHVnZ2FnZS5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTlkXCI7IH1cbmkuaWNvbi5tYWdpYzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkMFwiOyB9XG5pLmljb24ubWFnbmV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDc2XCI7IH1cbmkuaWNvbi5tYWlsLmJ1bGs6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NzRcIjsgfVxuaS5pY29uLm1hbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODNcIjsgfVxuaS5pY29uLm1hcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3OVwiOyB9XG5pLmljb24ubWFwLm1hcmtlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5ZlwiOyB9XG5pLmljb24ubWFwLm1hcmtlZC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YTBcIjsgfVxuaS5pY29uLm1hcC5tYXJrZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDFcIjsgfVxuaS5pY29uLm1hcC5tYXJrZXIuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2M1XCI7IH1cbmkuaWNvbi5tYXAucGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjc2XCI7IH1cbmkuaWNvbi5tYXAuc2lnbnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNzdcIjsgfVxuaS5pY29uLm1hcmtlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVhMVwiOyB9XG5pLmljb24ubWFyczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyMlwiOyB9XG5pLmljb24ubWFycy5kb3VibGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjdcIjsgfVxuaS5pY29uLm1hcnMuc3Ryb2tlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjI5XCI7IH1cbmkuaWNvbi5tYXJzLnN0cm9rZS5ob3Jpem9udGFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjJiXCI7IH1cbmkuaWNvbi5tYXJzLnN0cm9rZS52ZXJ0aWNhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyYVwiOyB9XG5pLmljb24ubWFzazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZmYVwiOyB9XG5pLmljb24ubWVkYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YTJcIjsgfVxuaS5pY29uLm1lZGtpdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmYVwiOyB9XG5pLmljb24ubWVoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFhXCI7IH1cbmkuaWNvbi5tZWguYmxhbms6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YTRcIjsgfVxuaS5pY29uLm1laC5yb2xsaW5nLmV5ZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YTVcIjsgfVxuaS5pY29uLm1lbW9yeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzOFwiOyB9XG5pLmljb24ubWVub3JhaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY3NlwiOyB9XG5pLmljb24ubWVyY3VyeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyM1wiOyB9XG5pLmljb24ubWV0ZW9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzUzXCI7IH1cbmkuaWNvbi5taWNyb2NoaXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZGJcIjsgfVxuaS5pY29uLm1pY3JvcGhvbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzBcIjsgfVxuaS5pY29uLm1pY3JvcGhvbmUuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2M5XCI7IH1cbmkuaWNvbi5taWNyb3Bob25lLmFsdGVybmF0ZS5zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzOVwiOyB9XG5pLmljb24ubWljcm9waG9uZS5zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzMVwiOyB9XG5pLmljb24ubWljcm9zY29wZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjYxMFwiOyB9XG5pLmljb24ubWludXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNjhcIjsgfVxuaS5pY29uLm1pbnVzLmNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1NlwiOyB9XG5pLmljb24ubWludXMuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ2XCI7IH1cbmkuaWNvbi5taXR0ZW46YmVmb3JlIHsgY29udGVudDogXCJcXGY3YjVcIjsgfVxuaS5pY29uLm1vYmlsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwYlwiOyB9XG5pLmljb24ubW9iaWxlLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNjZFwiOyB9XG5pLmljb24ubW9uZXkuYmlsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkNlwiOyB9XG5pLmljb24ubW9uZXkuYmlsbC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZDFcIjsgfVxuaS5pY29uLm1vbmV5LmJpbGwud2F2ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzYVwiOyB9XG5pLmljb24ubW9uZXkuYmlsbC53YXZlLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzYlwiOyB9XG5pLmljb24ubW9uZXkuY2hlY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGY1M2NcIjsgfVxuaS5pY29uLm1vbmV5LmNoZWNrLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUzZFwiOyB9XG5pLmljb24ubW9udW1lbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YTZcIjsgfVxuaS5pY29uLm1vb246YmVmb3JlIHsgY29udGVudDogXCJcXGYxODZcIjsgfVxuaS5pY29uLm1vcnRhci5wZXN0bGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YTdcIjsgfVxuaS5pY29uLm1vc3F1ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY3OFwiOyB9XG5pLmljb24ubW90b3JjeWNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxY1wiOyB9XG5pLmljb24ubW91bnRhaW46YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZmNcIjsgfVxuaS5pY29uLm1vdXNlLnBvaW50ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDVcIjsgfVxuaS5pY29uLm11Zy5ob3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YjZcIjsgfVxuaS5pY29uLm11c2ljOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDAxXCI7IH1cbmkuaWNvbi5uZXR3b3JrLndpcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmZmXCI7IH1cbmkuaWNvbi5uZXV0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMmNcIjsgfVxuaS5pY29uLm5ld3NwYXBlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlYVwiOyB9XG5pLmljb24ubm90LmVxdWFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTNlXCI7IH1cbmkuaWNvbi5ub3Rlcy5tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDgxXCI7IH1cbmkuaWNvbi5vYmplY3QuZ3JvdXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDdcIjsgfVxuaS5pY29uLm9iamVjdC51bmdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQ4XCI7IH1cbmkuaWNvbi5vaWwuY2FuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjEzXCI7IH1cbmkuaWNvbi5vbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY3OVwiOyB9XG5pLmljb24ub3R0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY3MDBcIjsgfVxuaS5pY29uLm91dGRlbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwM2JcIjsgfVxuaS5pY29uLnBhZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODE1XCI7IH1cbmkuaWNvbi5wYWludC5icnVzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmY1wiOyB9XG5pLmljb24ucGFpbnQucm9sbGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWFhXCI7IH1cbmkuaWNvbi5wYWxldHRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTNmXCI7IH1cbmkuaWNvbi5wYWxsZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ODJcIjsgfVxuaS5pY29uLnBhcGVyLnBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ4XCI7IH1cbmkuaWNvbi5wYXBlcmNsaXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzZcIjsgfVxuaS5pY29uLnBhcmFjaHV0ZS5ib3g6YmVmb3JlIHsgY29udGVudDogXCJcXGY0Y2RcIjsgfVxuaS5pY29uLnBhcmFncmFwaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkZFwiOyB9XG5pLmljb24ucGFya2luZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU0MFwiOyB9XG5pLmljb24ucGFzc3BvcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YWJcIjsgfVxuaS5pY29uLnBhc3RhZmFyaWFuaXNtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjdiXCI7IH1cbmkuaWNvbi5wYXN0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlYVwiOyB9XG5pLmljb24ucGF1c2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNGNcIjsgfVxuaS5pY29uLnBhdXNlLmNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4YlwiOyB9XG5pLmljb24ucGF3OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWIwXCI7IH1cbmkuaWNvbi5wZWFjZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY3Y1wiOyB9XG5pLmljb24ucGVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzA0XCI7IH1cbmkuaWNvbi5wZW4uYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzA1XCI7IH1cbmkuaWNvbi5wZW4uZmFuY3k6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YWNcIjsgfVxuaS5pY29uLnBlbi5uaWI6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YWRcIjsgfVxuaS5pY29uLnBlbi5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGJcIjsgfVxuaS5pY29uLnBlbmNpbC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzMDNcIjsgfVxuaS5pY29uLnBlbmNpbC5ydWxlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVhZVwiOyB9XG5pLmljb24ucGVvcGxlLmNhcnJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGNlXCI7IH1cbmkuaWNvbi5wZXBwZXIuaG90OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODE2XCI7IH1cbmkuaWNvbi5wZXJjZW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjk1XCI7IH1cbmkuaWNvbi5wZXJjZW50YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTQxXCI7IH1cbmkuaWNvbi5wZXJzb24uYm9vdGg6YmVmb3JlIHsgY29udGVudDogXCJcXGY3NTZcIjsgfVxuaS5pY29uLnBob25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDk1XCI7IH1cbmkuaWNvbi5waG9uZS5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY4NzlcIjsgfVxuaS5pY29uLnBob25lLnNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2RkXCI7IH1cbmkuaWNvbi5waG9uZS5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOThcIjsgfVxuaS5pY29uLnBob25lLnNxdWFyZS5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY4N2JcIjsgfVxuaS5pY29uLnBob25lLnZvbHVtZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhMFwiOyB9XG5pLmljb24ucGhvdG8udmlkZW86YmVmb3JlIHsgY29udGVudDogXCJcXGY4N2NcIjsgfVxuaS5pY29uLnBpZ2d5LmJhbms6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZDNcIjsgfVxuaS5pY29uLnBpbGxzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDg0XCI7IH1cbmkuaWNvbi5waXp6YS5zbGljZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjgxOFwiOyB9XG5pLmljb24ucGxhY2Uub2Yud29yc2hpcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY3ZlwiOyB9XG5pLmljb24ucGxhbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzJcIjsgfVxuaS5pY29uLnBsYW5lLmFycml2YWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YWZcIjsgfVxuaS5pY29uLnBsYW5lLmRlcGFydHVyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjViMFwiOyB9XG5pLmljb24ucGxheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0YlwiOyB9XG5pLmljb24ucGxheS5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDRcIjsgfVxuaS5pY29uLnBsdWc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTZcIjsgfVxuaS5pY29uLnBsdXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNjdcIjsgfVxuaS5pY29uLnBsdXMuY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDU1XCI7IH1cbmkuaWNvbi5wbHVzLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmZVwiOyB9XG5pLmljb24ucG9kY2FzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjZVwiOyB9XG5pLmljb24ucG9sbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY4MVwiOyB9XG5pLmljb24ucG9sbC5ob3Jpem9udGFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjgyXCI7IH1cbmkuaWNvbi5wb286YmVmb3JlIHsgY29udGVudDogXCJcXGYyZmVcIjsgfVxuaS5pY29uLnBvby5zdG9ybTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc1YVwiOyB9XG5pLmljb24ucG9vcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjYxOVwiOyB9XG5pLmljb24ucG9ydHJhaXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZTBcIjsgfVxuaS5pY29uLnBvdW5kLnNpZ246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTRcIjsgfVxuaS5pY29uLnBvd2VyLm9mZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxMVwiOyB9XG5pLmljb24ucHJheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY4M1wiOyB9XG5pLmljb24ucHJheWluZy5oYW5kczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY4NFwiOyB9XG5pLmljb24ucHJlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWIxXCI7IH1cbmkuaWNvbi5wcmVzY3JpcHRpb24uYm90dGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDg1XCI7IH1cbmkuaWNvbi5wcmVzY3JpcHRpb24uYm90dGxlLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ4NlwiOyB9XG5pLmljb24ucHJpbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmZcIjsgfVxuaS5pY29uLnByb2NlZHVyZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ODdcIjsgfVxuaS5pY29uLnByb2plY3QuZGlhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU0MlwiOyB9XG5pLmljb24ucHV6emxlLnBpZWNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTJlXCI7IH1cbmkuaWNvbi5xcmNvZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjlcIjsgfVxuaS5pY29uLnF1ZXN0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI4XCI7IH1cbmkuaWNvbi5xdWVzdGlvbi5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTlcIjsgfVxuaS5pY29uLnF1aWRkaXRjaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ1OFwiOyB9XG5pLmljb24ucXVvdGUubGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwZFwiOyB9XG5pLmljb24ucXVvdGUucmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMGVcIjsgfVxuaS5pY29uLnF1cmFuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjg3XCI7IH1cbmkuaWNvbi5yYWRpYXRpb246YmVmb3JlIHsgY29udGVudDogXCJcXGY3YjlcIjsgfVxuaS5pY29uLnJhZGlhdGlvbi5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YmFcIjsgfVxuaS5pY29uLnJhaW5ib3c6YmVmb3JlIHsgY29udGVudDogXCJcXGY3NWJcIjsgfVxuaS5pY29uLnJhbmRvbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3NFwiOyB9XG5pLmljb24ucmVjZWlwdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU0M1wiOyB9XG5pLmljb24ucmVjeWNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiOFwiOyB9XG5pLmljb24ucmVkbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxZVwiOyB9XG5pLmljb24ucmVkby5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZjlcIjsgfVxuaS5pY29uLnJlZ2lzdGVyZWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNWRcIjsgfVxuaS5pY29uLnJlbW92ZS5mb3JtYXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY4N2RcIjsgfVxuaS5pY29uLnJlcGx5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2U1XCI7IH1cbmkuaWNvbi5yZXBseS5hbGw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjJcIjsgfVxuaS5pY29uLnJlcHVibGljYW46YmVmb3JlIHsgY29udGVudDogXCJcXGY3NWVcIjsgfVxuaS5pY29uLnJlc3Ryb29tOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2JkXCI7IH1cbmkuaWNvbi5yZXR3ZWV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDc5XCI7IH1cbmkuaWNvbi5yaWJib246YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZDZcIjsgfVxuaS5pY29uLnJpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGY3MGJcIjsgfVxuaS5pY29uLnJvYWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMThcIjsgfVxuaS5pY29uLnJvYm90OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTQ0XCI7IH1cbmkuaWNvbi5yb2NrZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzVcIjsgfVxuaS5pY29uLnJvdXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGQ3XCI7IH1cbmkuaWNvbi5yc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOWVcIjsgfVxuaS5pY29uLnJzcy5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDNcIjsgfVxuaS5pY29uLnJ1YmxlLnNpZ246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNThcIjsgfVxuaS5pY29uLnJ1bGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTQ1XCI7IH1cbmkuaWNvbi5ydWxlci5jb21iaW5lZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU0NlwiOyB9XG5pLmljb24ucnVsZXIuaG9yaXpvbnRhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU0N1wiOyB9XG5pLmljb24ucnVsZXIudmVydGljYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NDhcIjsgfVxuaS5pY29uLnJ1bm5pbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGY3MGNcIjsgfVxuaS5pY29uLnJ1cGVlLnNpZ246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTZcIjsgfVxuaS5pY29uLnNhZC5jcnk6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YjNcIjsgfVxuaS5pY29uLnNhZC50ZWFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWI0XCI7IH1cbmkuaWNvbi5zYXRlbGxpdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YmZcIjsgfVxuaS5pY29uLnNhdGVsbGl0ZS5kaXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2MwXCI7IH1cbmkuaWNvbi5zYXZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGM3XCI7IH1cbmkuaWNvbi5zY2hvb2w6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NDlcIjsgfVxuaS5pY29uLnNjcmV3ZHJpdmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTRhXCI7IH1cbmkuaWNvbi5zY3JvbGw6YmVmb3JlIHsgY29udGVudDogXCJcXGY3MGVcIjsgfVxuaS5pY29uLnNkLmNhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YzJcIjsgfVxuaS5pY29uLnNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwMlwiOyB9XG5pLmljb24uc2VhcmNoLmRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY4OFwiOyB9XG5pLmljb24uc2VhcmNoLmxvY2F0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjg5XCI7IH1cbmkuaWNvbi5zZWFyY2gubWludXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTBcIjsgfVxuaS5pY29uLnNlYXJjaC5wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDBlXCI7IH1cbmkuaWNvbi5zZWVkbGluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRkOFwiOyB9XG5pLmljb24uc2VydmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjMzXCI7IH1cbmkuaWNvbi5zaGFwZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY2MWZcIjsgfVxuaS5pY29uLnNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDY0XCI7IH1cbmkuaWNvbi5zaGFyZS5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTBcIjsgfVxuaS5pY29uLnNoYXJlLmFsdGVybmF0ZS5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTFcIjsgfVxuaS5pY29uLnNoYXJlLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0ZFwiOyB9XG5pLmljb24uc2hla2VsLnNpZ246YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGJcIjsgfVxuaS5pY29uLnNoaWVsZC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZWRcIjsgfVxuaS5pY29uLnNoaXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMWFcIjsgfVxuaS5pY29uLnNoaXBwaW5nLmZhc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGY0OGJcIjsgfVxuaS5pY29uLnNob2UucHJpbnRzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTRiXCI7IH1cbmkuaWNvbi5zaG9wcGluZy5iYWc6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOTBcIjsgfVxuaS5pY29uLnNob3BwaW5nLmJhc2tldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5MVwiOyB9XG5pLmljb24uc2hvcHBpbmcuY2FydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3YVwiOyB9XG5pLmljb24uc2hvd2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmNjXCI7IH1cbmkuaWNvbi5zaHV0dGxlLnZhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjViNlwiOyB9XG5pLmljb24uc2lnbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRkOVwiOyB9XG5pLmljb24uc2lnbi5pbi5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZjZcIjsgfVxuaS5pY29uLnNpZ24ubGFuZ3VhZ2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTdcIjsgfVxuaS5pY29uLnNpZ24ub3V0LmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJmNVwiOyB9XG5pLmljb24uc2lnbmFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDEyXCI7IH1cbmkuaWNvbi5zaWduYXR1cmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YjdcIjsgfVxuaS5pY29uLnNpbS5jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2M0XCI7IH1cbmkuaWNvbi5zaXRlbWFwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGU4XCI7IH1cbmkuaWNvbi5za2F0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2M1XCI7IH1cbmkuaWNvbi5za2lpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YzlcIjsgfVxuaS5pY29uLnNraWluZy5ub3JkaWM6YmVmb3JlIHsgY29udGVudDogXCJcXGY3Y2FcIjsgfVxuaS5pY29uLnNrdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTRjXCI7IH1cbmkuaWNvbi5za3VsbC5jcm9zc2JvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzE0XCI7IH1cbmkuaWNvbi5zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjcxNVwiOyB9XG5pLmljb24uc2xlaWdoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2NjXCI7IH1cbmkuaWNvbi5zbGlkZXJzLmhvcml6b250YWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZGVcIjsgfVxuaS5pY29uLnNtaWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE4XCI7IH1cbmkuaWNvbi5zbWlsZS5iZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWI4XCI7IH1cbmkuaWNvbi5zbWlsZS53aW5rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGRhXCI7IH1cbmkuaWNvbi5zbW9nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzVmXCI7IH1cbmkuaWNvbi5zbW9raW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDhkXCI7IH1cbmkuaWNvbi5zbW9raW5nLmJhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU0ZFwiOyB9XG5pLmljb24uc21zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2NkXCI7IH1cbmkuaWNvbi5zbm93Ym9hcmRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGY3Y2VcIjsgfVxuaS5pY29uLnNub3dmbGFrZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJkY1wiOyB9XG5pLmljb24uc25vd21hbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdkMFwiOyB9XG5pLmljb24uc25vd3Bsb3c6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ZDJcIjsgfVxuaS5pY29uLnNvY2tzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjk2XCI7IH1cbmkuaWNvbi5zb2xhci5wYW5lbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjViYVwiOyB9XG5pLmljb24uc29ydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkY1wiOyB9XG5pLmljb24uc29ydC5hbHBoYWJldC5kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTVkXCI7IH1cbmkuaWNvbi5zb3J0LmFscGhhYmV0LmRvd24uYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODgxXCI7IH1cbmkuaWNvbi5zb3J0LmFscGhhYmV0LnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTVlXCI7IH1cbmkuaWNvbi5zb3J0LmFscGhhYmV0LnVwLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjg4MlwiOyB9XG5pLmljb24uc29ydC5hbW91bnQuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2MFwiOyB9XG5pLmljb24uc29ydC5hbW91bnQuZG93bi5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY4ODRcIjsgfVxuaS5pY29uLnNvcnQuYW1vdW50LnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTYxXCI7IH1cbmkuaWNvbi5zb3J0LmFtb3VudC51cC5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY4ODVcIjsgfVxuaS5pY29uLnNvcnQuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkZFwiOyB9XG5pLmljb24uc29ydC5udW1lcmljLmRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjJcIjsgfVxuaS5pY29uLnNvcnQubnVtZXJpYy5kb3duLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjg4NlwiOyB9XG5pLmljb24uc29ydC5udW1lcmljLnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTYzXCI7IH1cbmkuaWNvbi5zb3J0Lm51bWVyaWMudXAuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODg3XCI7IH1cbmkuaWNvbi5zb3J0LnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGRlXCI7IH1cbmkuaWNvbi5zcGE6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YmJcIjsgfVxuaS5pY29uLnNwYWNlLnNodXR0bGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTdcIjsgfVxuaS5pY29uLnNwZWxsLmNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODkxXCI7IH1cbmkuaWNvbi5zcGlkZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY3MTdcIjsgfVxuaS5pY29uLnNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTBcIjsgfVxuaS5pY29uLnNwbG90Y2g6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YmNcIjsgfVxuaS5pY29uLnNwcmF5LmNhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjViZFwiOyB9XG5pLmljb24uc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGM4XCI7IH1cbmkuaWNvbi5zcXVhcmUuZnVsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ1Y1wiOyB9XG5pLmljb24uc3F1YXJlLnJvb3QuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjk4XCI7IH1cbmkuaWNvbi5zdGFtcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjViZlwiOyB9XG5pLmljb24uc3RhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwNVwiOyB9XG5pLmljb24uc3Rhci5hbmQuY3Jlc2NlbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY2OTlcIjsgfVxuaS5pY29uLnN0YXIuaGFsZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4OVwiOyB9XG5pLmljb24uc3Rhci5oYWxmLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVjMFwiOyB9XG5pLmljb24uc3Rhci5vZi5kYXZpZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY5YVwiOyB9XG5pLmljb24uc3Rhci5vZi5saWZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjIxXCI7IH1cbmkuaWNvbi5zdGVwLmJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDQ4XCI7IH1cbmkuaWNvbi5zdGVwLmZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTFcIjsgfVxuaS5pY29uLnN0ZXRob3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGYxXCI7IH1cbmkuaWNvbi5zdGlja3kubm90ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0OVwiOyB9XG5pLmljb24uc3RvcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0ZFwiOyB9XG5pLmljb24uc3RvcC5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOGRcIjsgfVxuaS5pY29uLnN0b3B3YXRjaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJmMlwiOyB9XG5pLmljb24uc3RvcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NGVcIjsgfVxuaS5pY29uLnN0b3JlLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU0ZlwiOyB9XG5pLmljb24uc3RyZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTUwXCI7IH1cbmkuaWNvbi5zdHJlZXQudmlldzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxZFwiOyB9XG5pLmljb24uc3RyaWtldGhyb3VnaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjY1wiOyB9XG5pLmljb24uc3Ryb29wd2FmZWw6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NTFcIjsgfVxuaS5pY29uLnN1YnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyY1wiOyB9XG5pLmljb24uc3Vid2F5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjM5XCI7IH1cbmkuaWNvbi5zdWl0Y2FzZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmMlwiOyB9XG5pLmljb24uc3VpdGNhc2Uucm9sbGluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVjMVwiOyB9XG5pLmljb24uc3VuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg1XCI7IH1cbmkuaWNvbi5zdXBlcnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyYlwiOyB9XG5pLmljb24uc3VycHJpc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YzJcIjsgfVxuaS5pY29uLnN3YXRjaGJvb2s6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YzNcIjsgfVxuaS5pY29uLnN3aW1tZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YzRcIjsgfVxuaS5pY29uLnN3aW1taW5nLnBvb2w6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YzVcIjsgfVxuaS5pY29uLnN5bmFnb2d1ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjY5YlwiOyB9XG5pLmljb24uc3luYzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyMVwiOyB9XG5pLmljb24uc3luYy5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZjFcIjsgfVxuaS5pY29uLnN5cmluZ2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY0OGVcIjsgfVxuaS5pY29uLnRhYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGNlXCI7IH1cbmkuaWNvbi50YWJsZS50ZW5uaXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NWRcIjsgfVxuaS5pY29uLnRhYmxldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwYVwiOyB9XG5pLmljb24udGFibGV0LmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNmYVwiOyB9XG5pLmljb24udGFibGV0czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ5MFwiOyB9XG5pLmljb24udGFjaG9tZXRlci5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZmRcIjsgfVxuaS5pY29uLnRhZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyYlwiOyB9XG5pLmljb24udGFnczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyY1wiOyB9XG5pLmljb24udGFwZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRkYlwiOyB9XG5pLmljb24udGFza3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYWVcIjsgfVxuaS5pY29uLnRheGk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYmFcIjsgfVxuaS5pY29uLnRlZXRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjJlXCI7IH1cbmkuaWNvbi50ZWV0aC5vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjJmXCI7IH1cbmkuaWNvbi50ZW1wZXJhdHVyZS5oaWdoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzY5XCI7IH1cbmkuaWNvbi50ZW1wZXJhdHVyZS5sb3c6YmVmb3JlIHsgY29udGVudDogXCJcXGY3NmJcIjsgfVxuaS5pY29uLnRlbmdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2Q3XCI7IH1cbmkuaWNvbi50ZXJtaW5hbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyMFwiOyB9XG5pLmljb24udGV4dC5oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMzRcIjsgfVxuaS5pY29uLnRleHQud2lkdGg6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMzVcIjsgfVxuaS5pY29uLnRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDBhXCI7IH1cbmkuaWNvbi50aC5sYXJnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwOVwiOyB9XG5pLmljb24udGgubGlzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwYlwiOyB9XG5pLmljb24udGhlYXRlci5tYXNrczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjYzMFwiOyB9XG5pLmljb24udGhlcm1vbWV0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY0OTFcIjsgfVxuaS5pY29uLnRoZXJtb21ldGVyLmVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmNiXCI7IH1cbmkuaWNvbi50aGVybW9tZXRlci5mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmM3XCI7IH1cbmkuaWNvbi50aGVybW9tZXRlci5oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmM5XCI7IH1cbmkuaWNvbi50aGVybW9tZXRlci5xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmNhXCI7IH1cbmkuaWNvbi50aGVybW9tZXRlci50aHJlZS5xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjOFwiOyB9XG5pLmljb24udGh1bWJzLmRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjVcIjsgfVxuaS5pY29uLnRodW1icy51cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2NFwiOyB9XG5pLmljb24udGh1bWJ0YWNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDhkXCI7IH1cbmkuaWNvbi50aWNrZXQuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2ZmXCI7IH1cbmkuaWNvbi50aW1lczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwZFwiOyB9XG5pLmljb24udGltZXMuY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDU3XCI7IH1cbmkuaWNvbi50aW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDQzXCI7IH1cbmkuaWNvbi50aW50LnNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWM3XCI7IH1cbmkuaWNvbi50aXJlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVjOFwiOyB9XG5pLmljb24udG9nZ2xlLm9mZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwNFwiOyB9XG5pLmljb24udG9nZ2xlLm9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA1XCI7IH1cbmkuaWNvbi50b2lsZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ZDhcIjsgfVxuaS5pY29uLnRvaWxldC5wYXBlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjcxZVwiOyB9XG5pLmljb24udG9vbGJveDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU1MlwiOyB9XG5pLmljb24udG9vbHM6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ZDlcIjsgfVxuaS5pY29uLnRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWM5XCI7IH1cbmkuaWNvbi50b3JhaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZhMFwiOyB9XG5pLmljb24udG9yaWkuZ2F0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZhMVwiOyB9XG5pLmljb24udHJhY3RvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjcyMlwiOyB9XG5pLmljb24udHJhZGVtYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjVjXCI7IH1cbmkuaWNvbi50cmFmZmljLmxpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjM3XCI7IH1cbmkuaWNvbi50cmFpbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzOFwiOyB9XG5pLmljb24udHJhbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdkYVwiOyB9XG5pLmljb24udHJhbnNnZW5kZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjRcIjsgfVxuaS5pY29uLnRyYW5zZ2VuZGVyLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyNVwiOyB9XG5pLmljb24udHJhc2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjhcIjsgfVxuaS5pY29uLnRyYXNoLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJlZFwiOyB9XG5pLmljb24udHJhc2gucmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjgyOVwiOyB9XG5pLmljb24udHJhc2gucmVzdG9yZS5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY4MmFcIjsgfVxuaS5pY29uLnRyZWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYmJcIjsgfVxuaS5pY29uLnRyb3BoeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA5MVwiOyB9XG5pLmljb24udHJ1Y2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDFcIjsgfVxuaS5pY29uLnRydWNrLm1vbnN0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY2M2JcIjsgfVxuaS5pY29uLnRydWNrLm1vdmluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRkZlwiOyB9XG5pLmljb24udHJ1Y2sucGFja2luZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRkZVwiOyB9XG5pLmljb24udHJ1Y2sucGlja3VwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjNjXCI7IH1cbmkuaWNvbi50c2hpcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NTNcIjsgfVxuaS5pY29uLnR0eTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlNFwiOyB9XG5pLmljb24udHY6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNmNcIjsgfVxuaS5pY29uLnVtYnJlbGxhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGU5XCI7IH1cbmkuaWNvbi51bWJyZWxsYS5iZWFjaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVjYVwiOyB9XG5pLmljb24udW5kZXJsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGNkXCI7IH1cbmkuaWNvbi51bmRvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGUyXCI7IH1cbmkuaWNvbi51bmRvLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJlYVwiOyB9XG5pLmljb24udW5pdmVyc2FsLmFjY2VzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5YVwiOyB9XG5pLmljb24udW5pdmVyc2l0eTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5Y1wiOyB9XG5pLmljb24udW5saW5rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI3XCI7IH1cbmkuaWNvbi51bmxvY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOWNcIjsgfVxuaS5pY29uLnVubG9jay5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2VcIjsgfVxuaS5pY29uLnVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA5M1wiOyB9XG5pLmljb24udXNlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwN1wiOyB9XG5pLmljb24udXNlci5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MDZcIjsgfVxuaS5pY29uLnVzZXIuYWx0ZXJuYXRlLnNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGZhXCI7IH1cbmkuaWNvbi51c2VyLmFzdHJvbmF1dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRmYlwiOyB9XG5pLmljb24udXNlci5jaGVjazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRmY1wiOyB9XG5pLmljb24udXNlci5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYmRcIjsgfVxuaS5pY29uLnVzZXIuY2xvY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZmRcIjsgfVxuaS5pY29uLnVzZXIuY29nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGZlXCI7IH1cbmkuaWNvbi51c2VyLmVkaXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZmZcIjsgfVxuaS5pY29uLnVzZXIuZnJpZW5kczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUwMFwiOyB9XG5pLmljb24udXNlci5ncmFkdWF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUwMVwiOyB9XG5pLmljb24udXNlci5pbmp1cmVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzI4XCI7IH1cbmkuaWNvbi51c2VyLmxvY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MDJcIjsgfVxuaS5pY29uLnVzZXIubWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZjBcIjsgfVxuaS5pY29uLnVzZXIubWludXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MDNcIjsgfVxuaS5pY29uLnVzZXIubmluamE6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MDRcIjsgfVxuaS5pY29uLnVzZXIubnVyc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY4MmZcIjsgfVxuaS5pY29uLnVzZXIucGx1czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzNFwiOyB9XG5pLmljb24udXNlci5zZWNyZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMWJcIjsgfVxuaS5pY29uLnVzZXIuc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTA1XCI7IH1cbmkuaWNvbi51c2VyLnNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTA2XCI7IH1cbmkuaWNvbi51c2VyLnRhZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUwN1wiOyB9XG5pLmljb24udXNlci50aWU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MDhcIjsgfVxuaS5pY29uLnVzZXIudGltZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMzVcIjsgfVxuaS5pY29uLnVzZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGMwXCI7IH1cbmkuaWNvbi51c2Vycy5jb2c6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MDlcIjsgfVxuaS5pY29uLnV0ZW5zaWwuc3Bvb246YmVmb3JlIHsgY29udGVudDogXCJcXGYyZTVcIjsgfVxuaS5pY29uLnV0ZW5zaWxzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmU3XCI7IH1cbmkuaWNvbi52ZWN0b3Iuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWNiXCI7IH1cbmkuaWNvbi52ZW51czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyMVwiOyB9XG5pLmljb24udmVudXMuZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjI2XCI7IH1cbmkuaWNvbi52ZW51cy5tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjI4XCI7IH1cbmkuaWNvbi52aWFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDkyXCI7IH1cbmkuaWNvbi52aWFsczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ5M1wiOyB9XG5pLmljb24udmlkZW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwM2RcIjsgfVxuaS5pY29uLnZpZGVvLnNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGUyXCI7IH1cbmkuaWNvbi52aWhhcmE6YmVmb3JlIHsgY29udGVudDogXCJcXGY2YTdcIjsgfVxuaS5pY29uLnZvaWNlbWFpbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjg5N1wiOyB9XG5pLmljb24udm9sbGV5YmFsbC5iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDVmXCI7IH1cbmkuaWNvbi52b2x1bWUuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyN1wiOyB9XG5pLmljb24udm9sdW1lLm11dGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY2YTlcIjsgfVxuaS5pY29uLnZvbHVtZS5vZmY6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjZcIjsgfVxuaS5pY29uLnZvbHVtZS51cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyOFwiOyB9XG5pLmljb24udm90ZS55ZWE6YmVmb3JlIHsgY29udGVudDogXCJcXGY3NzJcIjsgfVxuaS5pY29uLnZyLmNhcmRib2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjcyOVwiOyB9XG5pLmljb24ud2Fsa2luZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU1NFwiOyB9XG5pLmljb24ud2FsbGV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTU1XCI7IH1cbmkuaWNvbi53YXJlaG91c2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY0OTRcIjsgfVxuaS5pY29uLndhdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzczXCI7IH1cbmkuaWNvbi53YXZlLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjgzZVwiOyB9XG5pLmljb24ud2VpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDk2XCI7IH1cbmkuaWNvbi53ZWlnaHQuaGFuZ2luZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVjZFwiOyB9XG5pLmljb24ud2hlZWxjaGFpcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5M1wiOyB9XG5pLmljb24ud2lmaTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlYlwiOyB9XG5pLmljb24ud2luZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjcyZVwiOyB9XG5pLmljb24ud2luZG93LmNsb3NlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDEwXCI7IH1cbmkuaWNvbi53aW5kb3cubWF4aW1pemU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZDBcIjsgfVxuaS5pY29uLndpbmRvdy5taW5pbWl6ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJkMVwiOyB9XG5pLmljb24ud2luZG93LnJlc3RvcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZDJcIjsgfVxuaS5pY29uLndpbmUuYm90dGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzJmXCI7IH1cbmkuaWNvbi53aW5lLmdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGUzXCI7IH1cbmkuaWNvbi53aW5lLmdsYXNzLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVjZVwiOyB9XG5pLmljb24ud29uLnNpZ246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTlcIjsgfVxuaS5pY29uLndyZW5jaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhZFwiOyB9XG5pLmljb24ueC5yYXk6YmVmb3JlIHsgY29udGVudDogXCJcXGY0OTdcIjsgfVxuaS5pY29uLnllbi5zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTU3XCI7IH1cbmkuaWNvbi55aW4ueWFuZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZhZFwiOyB9XG5cbi8qIEFsaWFzZXMgKi9cbmkuaWNvbi5hZGQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNjdcIjsgfVxuaS5pY29uLmFkZC5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTVcIjsgfVxuaS5pY29uLmFkZC5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZmVcIjsgfVxuaS5pY29uLmFkZC50by5jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3MVwiOyB9XG5pLmljb24uYWRkLnRvLmNhcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTdcIjsgfVxuaS5pY29uLmFkZC51c2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjM0XCI7IH1cbmkuaWNvbi5hbGFybTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmM1wiOyB9XG5pLmljb24uYWxhcm0ubXV0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmNlwiOyB9XG5pLmljb24uYWxkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmEyXCI7IH1cbmkuaWNvbi5hbHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTJcIjsgfVxuaS5pY29uLmFubm91bmNlbWVudDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhMVwiOyB9XG5pLmljb24uYXJlYS5jaGFydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmZVwiOyB9XG5pLmljb24uYXJlYS5ncmFwaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmZVwiOyB9XG5pLmljb24uYXJyb3cuZG93bi5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE4XCI7IH1cbmkuaWNvbi5hc2V4dWFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjJkXCI7IH1cbmkuaWNvbi5hc2w6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTNcIjsgfVxuaS5pY29uLmFzbC5pbnRlcnByZXRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTNcIjsgfVxuaS5pY29uLmFzc2lzdGl2ZS5saXN0ZW5pbmcuZGV2aWNlczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhMlwiOyB9XG5pLmljb24uYXR0YWNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGM2XCI7IH1cbmkuaWNvbi5hdHRlbnRpb246YmVmb3JlIHsgY29udGVudDogXCJcXGYwNmFcIjsgfVxuaS5pY29uLmJhbGFuY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNGVcIjsgfVxuaS5pY29uLmJhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmY1wiOyB9XG5pLmljb24uYmF0aHR1YjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjZFwiOyB9XG5pLmljb24uYmF0dGVyeS5mb3VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQwXCI7IH1cbmkuaWNvbi5iYXR0ZXJ5LmhpZ2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDFcIjsgfVxuaS5pY29uLmJhdHRlcnkubG93OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQzXCI7IH1cbmkuaWNvbi5iYXR0ZXJ5Lm1lZGl1bTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0MlwiOyB9XG5pLmljb24uYmF0dGVyeS5vbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDNcIjsgfVxuaS5pY29uLmJhdHRlcnkudGhyZWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDFcIjsgfVxuaS5pY29uLmJhdHRlcnkudHdvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQyXCI7IH1cbmkuaWNvbi5iYXR0ZXJ5Lnplcm86YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDRcIjsgfVxuaS5pY29uLmJpcnRoZGF5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZkXCI7IH1cbmkuaWNvbi5ibG9jay5sYXlvdXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMDlcIjsgfVxuaS5pY29uLmJyb2tlbi5jaGFpbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyN1wiOyB9XG5pLmljb24uYnJvd3NlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyMlwiOyB9XG5pLmljb24uY2FsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA5NVwiOyB9XG5pLmljb24uY2FsbC5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOThcIjsgfVxuaS5pY29uLmNhbmNlbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwZFwiOyB9XG5pLmljb24uY2FydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3YVwiOyB9XG5pLmljb24uY2M6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGFcIjsgfVxuaS5pY29uLmNoYWluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGMxXCI7IH1cbmkuaWNvbi5jaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDc1XCI7IH1cbmkuaWNvbi5jaGVja2VkLmNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjc0XCI7IH1cbmkuaWNvbi5jaGVja21hcms6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGNcIjsgfVxuaS5pY29uLmNoZWNrbWFyay5ib3g6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGFcIjsgfVxuaS5pY29uLmNoZXNzLnJvY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NDdcIjsgfVxuaS5pY29uLmNpcmNsZS5ub3RjaGVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNlXCI7IH1cbmkuaWNvbi5jaXJjbGUudGhpbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExMVwiOyB9XG5pLmljb24uY2xvc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGRcIjsgfVxuaS5pY29uLmNsb3VkLmRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzgxXCI7IH1cbmkuaWNvbi5jbG91ZC51cGxvYWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYzODJcIjsgfVxuaS5pY29uLmNueTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1N1wiOyB9XG5pLmljb24uY29ja3RhaWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMDBcIjsgfVxuaS5pY29uLmNvbW1lbnRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYyN2FcIjsgfVxuaS5pY29uLmNvbXBvc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYzMDNcIjsgfVxuaS5pY29uLmNvbXB1dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA4XCI7IH1cbmkuaWNvbi5jb25maWd1cmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYWRcIjsgfVxuaS5pY29uLmNvbnRlbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzlcIjsgfVxuaS5pY29uLmNvbnZlcnNhdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4NlwiOyB9XG5pLmljb24uY3JlZGl0LmNhcmQuYWx0ZXJuYXRpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOWRcIjsgfVxuaS5pY29uLmN1cnJlbmN5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2QxXCI7IH1cbmkuaWNvbi5kYXNoYm9hcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZmRcIjsgfVxuaS5pY29uLmRlYWZuZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmE0XCI7IH1cbmkuaWNvbi5kZWxldGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGRcIjsgfVxuaS5pY29uLmRlbGV0ZS5jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3M1wiOyB9XG5pLmljb24uZGV0ZWN0aXZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjFiXCI7IH1cbmkuaWNvbi5kaWFtb25kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2E1XCI7IH1cbmkuaWNvbi5kaXNjdXNzaW9uczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4NlwiOyB9XG5pLmljb24uZGlzazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhMFwiOyB9XG5pLmljb24uZG9jdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGYwXCI7IH1cbmkuaWNvbi5kb2xsYXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTVcIjsgfVxuaS5pY29uLmRvbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNWVcIjsgfVxuaS5pY29uLmRyaXZlcnMubGljZW5zZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjMlwiOyB9XG5pLmljb24uZHJvcGRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDdcIjsgfVxuaS5pY29uLmVtZXJnZW5jeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmOVwiOyB9XG5pLmljb24uZXJhc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmRcIjsgfVxuaS5pY29uLmV1cjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1M1wiOyB9XG5pLmljb24uZXVybzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1M1wiOyB9XG5pLmljb24uZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYzNjJcIjsgfVxuaS5pY29uLmV4dGVybmFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzVkXCI7IH1cbmkuaWNvbi5leHRlcm5hbC5zaGFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0ZFwiOyB9XG5pLmljb24uZXh0ZXJuYWwuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzYwXCI7IH1cbmkuaWNvbi5leWVkcm9wcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZiXCI7IH1cbmkuaWNvbi5mYWN0b3J5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjc1XCI7IH1cbmkuaWNvbi5mYXZvcml0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwNVwiOyB9XG5pLmljb24uZmVlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA5ZVwiOyB9XG5pLmljb24uZmVtYWxlLmhvbW9zZXh1YWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjZcIjsgfVxuaS5pY29uLmZpbGUudGV4dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1Y1wiOyB9XG5pLmljb24uZmluZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlNVwiOyB9XG5pLmljb24uZmlyc3QuYWlkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGZhXCI7IH1cbmkuaWNvbi5mb29kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmU3XCI7IH1cbmkuaWNvbi5mb3JrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI2XCI7IH1cbmkuaWNvbi5nYW1lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFiXCI7IH1cbmkuaWNvbi5nYXk6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjdcIjsgfVxuaS5pY29uLmdicDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1NFwiOyB9XG5pLmljb24uZ3JhYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1NVwiOyB9XG5pLmljb24uZ3JhZHVhdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5ZFwiOyB9XG5pLmljb24uZ3JpZC5sYXlvdXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGFcIjsgfVxuaS5pY29uLmdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGMwXCI7IH1cbmkuaWNvbi5oOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGZkXCI7IH1cbmkuaWNvbi5oYW1idXJnZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzlcIjsgfVxuaS5pY29uLmhhbmQudmljdG9yeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1YlwiOyB9XG5pLmljb24uaGFuZGljYXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTNcIjsgfVxuaS5pY29uLmhhcmQub2YuaGVhcmluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhNFwiOyB9XG5pLmljb24uaGVhZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRjXCI7IH1cbmkuaWNvbi5oZWFydC5lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwNFwiOyB9XG5pLmljb24uaGVscDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyOFwiOyB9XG5pLmljb24uaGVscC5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTlcIjsgfVxuaS5pY29uLmhldGVyb3NleHVhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyOFwiOyB9XG5pLmljb24uaGlkZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3MFwiOyB9XG5pLmljb24uaG90ZWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMzZcIjsgfVxuaS5pY29uLmhvdXJnbGFzcy5mb3VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjU0XCI7IH1cbmkuaWNvbi5ob3VyZ2xhc3MuZnVsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1NFwiOyB9XG5pLmljb24uaG91cmdsYXNzLm9uZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1MVwiOyB9XG5pLmljb24uaG91cmdsYXNzLnRocmVlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjUzXCI7IH1cbmkuaWNvbi5ob3VyZ2xhc3MudHdvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjUyXCI7IH1cbmkuaWNvbi5ob3VyZ2xhc3MuemVybzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1M1wiOyB9XG5pLmljb24uaWRlYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlYlwiOyB9XG5pLmljb24uaWxzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBiXCI7IH1cbmkuaWNvbi5pbi5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE4XCI7IH1cbmkuaWNvbi5pbnI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTZcIjsgfVxuaS5pY29uLmludGVyZ2VuZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjI0XCI7IH1cbmkuaWNvbi5pbnRlcnNleDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyNFwiOyB9XG5pLmljb24uanB5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTU3XCI7IH1cbmkuaWNvbi5rcnc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTlcIjsgfVxuaS5pY29uLmxhYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjM1wiOyB9XG5pLmljb24ubGF3OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjRlXCI7IH1cbmkuaWNvbi5sZWdhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlM1wiOyB9XG5pLmljb24ubGVzYmlhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyNlwiOyB9XG5pLmljb24ubGV2ZWwuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNiZVwiOyB9XG5pLmljb24ubGV2ZWwudXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYmZcIjsgfVxuaS5pY29uLmxpZ2h0bmluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlN1wiOyB9XG5pLmljb24ubGlrZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwNFwiOyB9XG5pLmljb24ubGluZS5ncmFwaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwMVwiOyB9XG5pLmljb24ubGlua2lmeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjMVwiOyB9XG5pLmljb24ubGlyYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5NVwiOyB9XG5pLmljb24ubGlzdC5sYXlvdXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGJcIjsgfVxuaS5pY29uLmxvZy5vdXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZjVcIjsgfVxuaS5pY29uLm1hZ25pZnk6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGVcIjsgfVxuaS5pY29uLm1haWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTBcIjsgfVxuaS5pY29uLm1haWwuZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2NFwiOyB9XG5pLmljb24ubWFpbC5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTlcIjsgfVxuaS5pY29uLm1hbGUuaG9tb3NleHVhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyN1wiOyB9XG5pLmljb24ubWFuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjIyXCI7IH1cbmkuaWNvbi5tYXJrZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDFcIjsgfVxuaS5pY29uLm1hcnMuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjI5XCI7IH1cbmkuaWNvbi5tYXJzLmhvcml6b250YWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMmJcIjsgfVxuaS5pY29uLm1hcnMudmVydGljYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMmFcIjsgfVxuaS5pY29uLm1lYW5wYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGM4XCI7IH1cbmkuaWNvbi5taWxpdGFyeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmYlwiOyB9XG5pLmljb24ubW9uZXk6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZDFcIjsgfVxuaS5pY29uLm1vdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYjJcIjsgfVxuaS5pY29uLm11dGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzFcIjsgfVxuaS5pY29uLm5vbi5iaW5hcnkudHJhbnNnZW5kZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjNcIjsgfVxuaS5pY29uLm51bWJlcmVkLmxpc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYwY2JcIjsgfVxuaS5pY29uLm9wdGlvbnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZGVcIjsgfVxuaS5pY29uLm9yZGVyZWQubGlzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjYlwiOyB9XG5pLmljb24ub3RoZXIuZ2VuZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjI5XCI7IH1cbmkuaWNvbi5vdGhlci5nZW5kZXIuaG9yaXpvbnRhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyYlwiOyB9XG5pLmljb24ub3RoZXIuZ2VuZGVyLnZlcnRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjJhXCI7IH1cbmkuaWNvbi5wYXltZW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDlkXCI7IH1cbmkuaWNvbi5wZW5jaWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYzMDNcIjsgfVxuaS5pY29uLnBlbmNpbC5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGJcIjsgfVxuaS5pY29uLnBob3RvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDMwXCI7IH1cbmkuaWNvbi5waWN0dXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDNlXCI7IH1cbmkuaWNvbi5waWUuY2hhcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDBcIjsgfVxuaS5pY29uLnBpZS5ncmFwaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwMFwiOyB9XG5pLmljb24ucGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDhkXCI7IH1cbmkuaWNvbi5wbHVzLmNhcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTdcIjsgfVxuaS5pY29uLnBvaW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDQxXCI7IH1cbmkuaWNvbi5wb2ludGluZy5kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGE3XCI7IH1cbmkuaWNvbi5wb2ludGluZy5sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGE1XCI7IH1cbmkuaWNvbi5wb2ludGluZy5yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhNFwiOyB9XG5pLmljb24ucG9pbnRpbmcudXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYTZcIjsgfVxuaS5pY29uLnBvdW5kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTU0XCI7IH1cbmkuaWNvbi5wb3dlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxMVwiOyB9XG5pLmljb24ucG93ZXIuY29yZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlNlwiOyB9XG5pLmljb24ucHJpdmFjeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4NFwiOyB9XG5pLmljb24ucHJvdGVjdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyM1wiOyB9XG5pLmljb24ucHV6emxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTJlXCI7IH1cbmkuaWNvbi5yLmNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1ZFwiOyB9XG5pLmljb24ucmFkaW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTJcIjsgfVxuaS5pY29uLnJhaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTlcIjsgfVxuaS5pY29uLnJlY29yZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzZFwiOyB9XG5pLmljb24ucmVmcmVzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyMVwiOyB9XG5pLmljb24ucmVtb3ZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDBkXCI7IH1cbmkuaWNvbi5yZW1vdmUuYm9va21hcms6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmVcIjsgfVxuaS5pY29uLnJlbW92ZS5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTdcIjsgfVxuaS5pY29uLnJlbW92ZS5mcm9tLmNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjcyXCI7IH1cbmkuaWNvbi5yZW1vdmUudXNlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzNVwiOyB9XG5pLmljb24ucmVwZWF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDFlXCI7IH1cbmkuaWNvbi5yZXNpemUuaG9yaXpvbnRhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjMzN1wiOyB9XG5pLmljb24ucmVzaXplLnZlcnRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzM4XCI7IH1cbmkuaWNvbi5ybWI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTdcIjsgfVxuaS5pY29uLnJvdWJsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1OFwiOyB9XG5pLmljb24ucnViOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTU4XCI7IH1cbmkuaWNvbi5ydWJsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1OFwiOyB9XG5pLmljb24ucnVwZWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTZcIjsgfVxuaS5pY29uLnMxNTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjZFwiOyB9XG5pLmljb24uc2VsZWN0ZWQucmFkaW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTJcIjsgfVxuaS5pY29uLnNlbmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDhcIjsgfVxuaS5pY29uLnNldHRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTNcIjsgfVxuaS5pY29uLnNldHRpbmdzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDg1XCI7IH1cbmkuaWNvbi5zaGVrZWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGJcIjsgfVxuaS5pY29uLnNoZXFlbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwYlwiOyB9XG5pLmljb24uc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2VkXCI7IH1cbmkuaWNvbi5zaGlwcGluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkMVwiOyB9XG5pLmljb24uc2hvcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3YVwiOyB9XG5pLmljb24uc2h1ZmZsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3NFwiOyB9XG5pLmljb24uc2h1dGRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTFcIjsgfVxuaS5pY29uLnNpZGViYXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzlcIjsgfVxuaS5pY29uLnNpZ24uaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYyZjZcIjsgfVxuaS5pY29uLnNpZ24ub3V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmY1XCI7IH1cbmkuaWNvbi5zaWduaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmE3XCI7IH1cbmkuaWNvbi5zaWdudXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDRcIjsgfVxuaS5pY29uLnNsaWRlcnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZGVcIjsgfVxuaS5pY29uLnNvY2NlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlM1wiOyB9XG5pLmljb24uc29ydC5hbHBoYWJldC5hc2NlbmRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNWRcIjsgfVxuaS5pY29uLnNvcnQuYWxwaGFiZXQuZGVzY2VuZGluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1ZVwiOyB9XG5pLmljb24uc29ydC5hc2NlbmRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZGVcIjsgfVxuaS5pY29uLnNvcnQuY29udGVudC5hc2NlbmRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjBcIjsgfVxuaS5pY29uLnNvcnQuY29udGVudC5kZXNjZW5kaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTYxXCI7IH1cbmkuaWNvbi5zb3J0LmRlc2NlbmRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZGRcIjsgfVxuaS5pY29uLnNvcnQubnVtZXJpYy5hc2NlbmRpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjJcIjsgfVxuaS5pY29uLnNvcnQubnVtZXJpYy5kZXNjZW5kaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTYzXCI7IH1cbmkuaWNvbi5zb3VuZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyNVwiOyB9XG5pLmljb24uc3Bvb246YmVmb3JlIHsgY29udGVudDogXCJcXGYyZTVcIjsgfVxuaS5pY29uLnNweTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxYlwiOyB9XG5pLmljb24uc3Rhci5lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwNVwiOyB9XG5pLmljb24uc3Rhci5oYWxmLmVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDg5XCI7IH1cbmkuaWNvbi5zdGFyLmhhbGYuZnVsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4OVwiOyB9XG5pLmljb24uc3R1ZGVudDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5ZFwiOyB9XG5pLmljb24udGFsazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3YVwiOyB9XG5pLmljb24udGFyZ2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQwXCI7IH1cbmkuaWNvbi50ZWxldHlwZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlNFwiOyB9XG5pLmljb24udGVsZXZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2Y1wiOyB9XG5pLmljb24udGV4dC5jdXJzb3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDZcIjsgfVxuaS5pY29uLnRleHQudGVsZXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWU0XCI7IH1cbmkuaWNvbi50aGVtZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0M1wiOyB9XG5pLmljb24udGhlcm1vbWV0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYzdcIjsgfVxuaS5pY29uLnRodW1iLnRhY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOGRcIjsgfVxuaS5pY29uLnRpY2tldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNmZlwiOyB9XG5pLmljb24udGltZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxN1wiOyB9XG5pLmljb24udGltZXMucmVjdGFuZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDEwXCI7IH1cbmkuaWNvbi50bTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1Y1wiOyB9XG5pLmljb24udG9nZ2xlLmRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTBcIjsgfVxuaS5pY29uLnRvZ2dsZS5sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTkxXCI7IH1cbmkuaWNvbi50b2dnbGUucmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTJcIjsgfVxuaS5pY29uLnRvZ2dsZS51cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1MVwiOyB9XG5pLmljb24udHJhbnNsYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFiXCI7IH1cbmkuaWNvbi50cmF2ZWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYjFcIjsgfVxuaS5pY29uLnRyZWF0bWVudDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmMVwiOyB9XG5pLmljb24udHJpYW5nbGUuZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkN1wiOyB9XG5pLmljb24udHJpYW5nbGUubGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkOVwiOyB9XG5pLmljb24udHJpYW5nbGUucmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZGFcIjsgfVxuaS5pY29uLnRyaWFuZ2xlLnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGQ4XCI7IH1cbmkuaWNvbi50cnk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTVcIjsgfVxuaS5pY29uLnVuaGlkZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2ZVwiOyB9XG5pLmljb24udW5saW5raWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI3XCI7IH1cbmkuaWNvbi51bm11dGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzBcIjsgfVxuaS5pY29uLnVub3JkZXJlZC5saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGNhXCI7IH1cbmkuaWNvbi51c2Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTVcIjsgfVxuaS5pY29uLnVzZXIuY2FuY2VsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjM1XCI7IH1cbmkuaWNvbi51c2VyLmNsb3NlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjM1XCI7IH1cbmkuaWNvbi51c2VyLmRlbGV0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzNVwiOyB9XG5pLmljb24udXNlci5kb2N0b3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZjBcIjsgfVxuaS5pY29uLnVzZXIueDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzNVwiOyB9XG5pLmljb24udmNhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYmJcIjsgfVxuaS5pY29uLnZpZGVvLmNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzZFwiOyB9XG5pLmljb24udmlkZW8ucGxheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0NFwiOyB9XG5pLmljb24udm9sdW1lLmNvbnRyb2wucGhvbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTBcIjsgfVxuaS5pY29uLndhaXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTdcIjsgfVxuaS5pY29uLndhcm5pbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmFcIjsgfVxuaS5pY29uLndhcm5pbmcuY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDZhXCI7IH1cbmkuaWNvbi53YXJuaW5nLnNpZ246YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzFcIjsgfVxuaS5pY29uLndpLmZpOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWViXCI7IH1cbmkuaWNvbi53aW5uZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOTFcIjsgfVxuaS5pY29uLndpemFyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkMFwiOyB9XG5pLmljb24ud29tYW46YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjFcIjsgfVxuaS5pY29uLndvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1OVwiOyB9XG5pLmljb24ud29ybGQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYWNcIjsgfVxuaS5pY29uLndyaXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzAzXCI7IH1cbmkuaWNvbi53cml0ZS5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGJcIjsgfVxuaS5pY29uLng6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMGRcIjsgfVxuaS5pY29uLnllbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1N1wiOyB9XG5pLmljb24uemlwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg3XCI7IH1cbmkuaWNvbi56b29tOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDBlXCI7IH1cbmkuaWNvbi56b29tLmluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDBlXCI7IH1cbmkuaWNvbi56b29tLm91dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxMFwiOyB9XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBPdXRsaW5lIEljb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBPdXRsaW5lIEljb24gKi9cbi5sb2FkT3V0bGluZUljb25zKCkgd2hlbiAoQGltcG9ydE91dGxpbmVJY29ucykge1xuICAvKiBMb2FkICYgRGVmaW5lIEljb24gRm9udCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogQG91dGxpbmVGb250TmFtZTtcbiAgICBzcmM6IEBvdXRsaW5lRmFsbGJhY2tTUkM7XG4gICAgc3JjOiBAb3V0bGluZVNyYztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IEBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgaS5pY29uLm91dGxpbmUge1xuICAgIGZvbnQtZmFtaWx5OiBAb3V0bGluZUZvbnROYW1lO1xuICB9XG5cbiAgLyogSWNvbnMgKi9cbiAgaS5pY29uLmFkZHJlc3MuYm9vay5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmI5XCI7IH1cbiAgaS5pY29uLmFkZHJlc3MuY2FyZC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmJiXCI7IH1cbiAgaS5pY29uLmFuZ3J5Lm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NTZcIjsgfVxuICBpLmljb24uYXJyb3cuYWx0ZXJuYXRlLmNpcmNsZS5kb3duLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzNThcIjsgfVxuICBpLmljb24uYXJyb3cuYWx0ZXJuYXRlLmNpcmNsZS5sZWZ0Lm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzNTlcIjsgfVxuICBpLmljb24uYXJyb3cuYWx0ZXJuYXRlLmNpcmNsZS5yaWdodC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzVhXCI7IH1cbiAgaS5pY29uLmFycm93LmFsdGVybmF0ZS5jaXJjbGUudXAub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM1YlwiOyB9XG4gIGkuaWNvbi5iZWxsLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZjNcIjsgfVxuICBpLmljb24uYmVsbC5zbGFzaC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY2XCI7IH1cbiAgaS5pY29uLmJvb2ttYXJrLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmVcIjsgfVxuICBpLmljb24uYnVpbGRpbmcub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhZFwiOyB9XG4gIGkuaWNvbi5jYWxlbmRhci5hbHRlcm5hdGUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3M1wiOyB9XG4gIGkuaWNvbi5jYWxlbmRhci5jaGVjay5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjc0XCI7IH1cbiAgaS5pY29uLmNhbGVuZGFyLm1pbnVzLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNzJcIjsgfVxuICBpLmljb24uY2FsZW5kYXIub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzM1wiOyB9XG4gIGkuaWNvbi5jYWxlbmRhci5wbHVzLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNzFcIjsgfVxuICBpLmljb24uY2FsZW5kYXIudGltZXMub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3M1wiOyB9XG4gIGkuaWNvbi5jYXJldC5zcXVhcmUuZG93bi5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTUwXCI7IH1cbiAgaS5pY29uLmNhcmV0LnNxdWFyZS5sZWZ0Lm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTFcIjsgfVxuICBpLmljb24uY2FyZXQuc3F1YXJlLnJpZ2h0Lm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTJcIjsgfVxuICBpLmljb24uY2FyZXQuc3F1YXJlLnVwLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTFcIjsgfVxuICBpLmljb24uY2hhcnQuYmFyLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODBcIjsgfVxuICBpLmljb24uY2hlY2suY2lyY2xlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNThcIjsgfVxuICBpLmljb24uY2hlY2suc3F1YXJlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGFcIjsgfVxuICBpLmljb24uY2lyY2xlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTFcIjsgfVxuICBpLmljb24uY2xpcGJvYXJkLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzMjhcIjsgfVxuICBpLmljb24uY2xvY2sub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxN1wiOyB9XG4gIGkuaWNvbi5jbG9uZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjRkXCI7IH1cbiAgaS5pY29uLmNsb3NlZC5jYXB0aW9uaW5nLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGFcIjsgfVxuICBpLmljb24uY29tbWVudC5hbHRlcm5hdGUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3YVwiOyB9XG4gIGkuaWNvbi5jb21tZW50LmRvdHMub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRhZFwiOyB9XG4gIGkuaWNvbi5jb21tZW50Lm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzVcIjsgfVxuICBpLmljb24uY29tbWVudHMub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4NlwiOyB9XG4gIGkuaWNvbi5jb21wYXNzLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGVcIjsgfVxuICBpLmljb24uY29weS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGM1XCI7IH1cbiAgaS5pY29uLmNvcHlyaWdodC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY5XCI7IH1cbiAgaS5pY29uLmNyZWRpdC5jYXJkLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOWRcIjsgfVxuICBpLmljb24uZGl6enkub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU2N1wiOyB9XG4gIGkuaWNvbi5kb3QuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTJcIjsgfVxuICBpLmljb24uZWRpdC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDQ0XCI7IH1cbiAgaS5pY29uLmVudmVsb3BlLm9wZW4ub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJiNlwiOyB9XG4gIGkuaWNvbi5lbnZlbG9wZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGUwXCI7IH1cbiAgaS5pY29uLmV5ZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDZlXCI7IH1cbiAgaS5pY29uLmV5ZS5zbGFzaC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDcwXCI7IH1cbiAgaS5pY29uLmZpbGUuYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNWNcIjsgfVxuICBpLmljb24uZmlsZS5hcmNoaXZlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzZcIjsgfVxuICBpLmljb24uZmlsZS5hdWRpby5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM3XCI7IH1cbiAgaS5pY29uLmZpbGUuY29kZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM5XCI7IH1cbiAgaS5pY29uLmZpbGUuZXhjZWwub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjM1wiOyB9XG4gIGkuaWNvbi5maWxlLmltYWdlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzVcIjsgfVxuICBpLmljb24uZmlsZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTViXCI7IH1cbiAgaS5pY29uLmZpbGUucGRmLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzFcIjsgfVxuICBpLmljb24uZmlsZS5wb3dlcnBvaW50Lm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzRcIjsgfVxuICBpLmljb24uZmlsZS52aWRlby5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM4XCI7IH1cbiAgaS5pY29uLmZpbGUud29yZC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWMyXCI7IH1cbiAgaS5pY29uLmZsYWcub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyNFwiOyB9XG4gIGkuaWNvbi5mbHVzaGVkLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1NzlcIjsgfVxuICBpLmljb24uZm9sZGVyLm9wZW4ub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3Y1wiOyB9XG4gIGkuaWNvbi5mb2xkZXIub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3YlwiOyB9XG4gIGkuaWNvbi5mcm93bi5vcGVuLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1N2FcIjsgfVxuICBpLmljb24uZnJvd24ub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExOVwiOyB9XG4gIGkuaWNvbi5mdXRib2wub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlM1wiOyB9XG4gIGkuaWNvbi5nZW0ub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNhNVwiOyB9XG4gIGkuaWNvbi5ncmltYWNlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1N2ZcIjsgfVxuICBpLmljb24uZ3Jpbi5hbHRlcm5hdGUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4MVwiOyB9XG4gIGkuaWNvbi5ncmluLmJlYW0ub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4MlwiOyB9XG4gIGkuaWNvbi5ncmluLmJlYW0uc3dlYXQub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4M1wiOyB9XG4gIGkuaWNvbi5ncmluLmhlYXJ0cy5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTg0XCI7IH1cbiAgaS5pY29uLmdyaW4ub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4MFwiOyB9XG4gIGkuaWNvbi5ncmluLnNxdWludC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTg1XCI7IH1cbiAgaS5pY29uLmdyaW4uc3F1aW50LnRlYXJzLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1ODZcIjsgfVxuICBpLmljb24uZ3Jpbi5zdGFycy5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTg3XCI7IH1cbiAgaS5pY29uLmdyaW4udGVhcnMub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4OFwiOyB9XG4gIGkuaWNvbi5ncmluLnRvbmd1ZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTg5XCI7IH1cbiAgaS5pY29uLmdyaW4udG9uZ3VlLnNxdWludC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNThhXCI7IH1cbiAgaS5pY29uLmdyaW4udG9uZ3VlLndpbmsub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4YlwiOyB9XG4gIGkuaWNvbi5ncmluLndpbmsub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU4Y1wiOyB9XG4gIGkuaWNvbi5oYW5kLmxpemFyZC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjU4XCI7IH1cbiAgaS5pY29uLmhhbmQucGFwZXIub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1NlwiOyB9XG4gIGkuaWNvbi5oYW5kLnBlYWNlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNWJcIjsgfVxuICBpLmljb24uaGFuZC5wb2ludC5kb3duLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYTdcIjsgfVxuICBpLmljb24uaGFuZC5wb2ludC5sZWZ0Lm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYTVcIjsgfVxuICBpLmljb24uaGFuZC5wb2ludC5yaWdodC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGE0XCI7IH1cbiAgaS5pY29uLmhhbmQucG9pbnQudXAub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhNlwiOyB9XG4gIGkuaWNvbi5oYW5kLnBvaW50ZXIub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1YVwiOyB9XG4gIGkuaWNvbi5oYW5kLnJvY2sub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1NVwiOyB9XG4gIGkuaWNvbi5oYW5kLnNjaXNzb3JzLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNTdcIjsgfVxuICBpLmljb24uaGFuZC5zcG9jay5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjU5XCI7IH1cbiAgaS5pY29uLmhhbmRzaGFrZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmI1XCI7IH1cbiAgaS5pY29uLmhkZC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGEwXCI7IH1cbiAgaS5pY29uLmhlYXJ0Lm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMDRcIjsgfVxuICBpLmljb24uaG9zcGl0YWwub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmOFwiOyB9XG4gIGkuaWNvbi5ob3VyZ2xhc3Mub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1NFwiOyB9XG4gIGkuaWNvbi5pZC5iYWRnZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmMxXCI7IH1cbiAgaS5pY29uLmlkLmNhcmQub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjMlwiOyB9XG4gIGkuaWNvbi5pbWFnZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDNlXCI7IH1cbiAgaS5pY29uLmltYWdlcy5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzAyXCI7IH1cbiAgaS5pY29uLmtleWJvYXJkLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMWNcIjsgfVxuICBpLmljb24ua2lzcy5iZWFtLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1OTdcIjsgfVxuICBpLmljb24ua2lzcy5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTk2XCI7IH1cbiAgaS5pY29uLmtpc3Mud2luay5oZWFydC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTk4XCI7IH1cbiAgaS5pY29uLmxhdWdoLmJlYW0ub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5YVwiOyB9XG4gIGkuaWNvbi5sYXVnaC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTk5XCI7IH1cbiAgaS5pY29uLmxhdWdoLnNxdWludC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTliXCI7IH1cbiAgaS5pY29uLmxhdWdoLndpbmsub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5Y1wiOyB9XG4gIGkuaWNvbi5sZW1vbi5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDk0XCI7IH1cbiAgaS5pY29uLmxpZmUucmluZy5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNkXCI7IH1cbiAgaS5pY29uLmxpZ2h0YnVsYi5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGViXCI7IH1cbiAgaS5pY29uLmxpc3QuYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjJcIjsgfVxuICBpLmljb24ubWFwLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNzlcIjsgfVxuICBpLmljb24ubWVoLmJsYW5rLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YTRcIjsgfVxuICBpLmljb24ubWVoLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMWFcIjsgfVxuICBpLmljb24ubWVoLnJvbGxpbmcuZXllcy5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWE1XCI7IH1cbiAgaS5pY29uLm1pbnVzLnNxdWFyZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ2XCI7IH1cbiAgaS5pY29uLm1vbmV5LmJpbGwuYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZDFcIjsgfVxuICBpLmljb24ubW9vbi5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg2XCI7IH1cbiAgaS5pY29uLm5ld3NwYXBlci5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWVhXCI7IH1cbiAgaS5pY29uLm9iamVjdC5ncm91cC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQ3XCI7IH1cbiAgaS5pY29uLm9iamVjdC51bmdyb3VwLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDhcIjsgfVxuICBpLmljb24ucGFwZXIucGxhbmUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkOFwiOyB9XG4gIGkuaWNvbi5wYXVzZS5jaXJjbGUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4YlwiOyB9XG4gIGkuaWNvbi5wbGF5LmNpcmNsZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ0XCI7IH1cbiAgaS5pY29uLnBsdXMuc3F1YXJlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZmVcIjsgfVxuICBpLmljb24ucXVlc3Rpb24uY2lyY2xlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTlcIjsgfVxuICBpLmljb24ucmVnaXN0ZXJlZC5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjVkXCI7IH1cbiAgaS5pY29uLnNhZC5jcnkub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjViM1wiOyB9XG4gIGkuaWNvbi5zYWQudGVhci5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWI0XCI7IH1cbiAgaS5pY29uLnNhdmUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjN1wiOyB9XG4gIGkuaWNvbi5zaGFyZS5zcXVhcmUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0ZFwiOyB9XG4gIGkuaWNvbi5zbWlsZS5iZWFtLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YjhcIjsgfVxuICBpLmljb24uc21pbGUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExOFwiOyB9XG4gIGkuaWNvbi5zbWlsZS53aW5rLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZGFcIjsgfVxuICBpLmljb24uc25vd2ZsYWtlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZGNcIjsgfVxuICBpLmljb24uc3F1YXJlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzhcIjsgfVxuICBpLmljb24uc3Rhci5oYWxmLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODlcIjsgfVxuICBpLmljb24uc3Rhci5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDA1XCI7IH1cbiAgaS5pY29uLnN0aWNreS5ub3RlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDlcIjsgfVxuICBpLmljb24uc3RvcC5jaXJjbGUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4ZFwiOyB9XG4gIGkuaWNvbi5zdW4ub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4NVwiOyB9XG4gIGkuaWNvbi5zdXJwcmlzZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWMyXCI7IH1cbiAgaS5pY29uLnRodW1icy5kb3duLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjVcIjsgfVxuICBpLmljb24udGh1bWJzLnVwLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjRcIjsgfVxuICBpLmljb24udGltZXMuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTdcIjsgfVxuICBpLmljb24udGlyZWQub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVjOFwiOyB9XG4gIGkuaWNvbi50cmFzaC5hbHRlcm5hdGUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJlZFwiOyB9XG4gIGkuaWNvbi51c2VyLmNpcmNsZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmJkXCI7IH1cbiAgaS5pY29uLnVzZXIub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwN1wiOyB9XG4gIGkuaWNvbi53aW5kb3cuY2xvc2Uub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQxMFwiOyB9XG4gIGkuaWNvbi53aW5kb3cubWF4aW1pemUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJkMFwiOyB9XG4gIGkuaWNvbi53aW5kb3cubWluaW1pemUub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJkMVwiOyB9XG4gIGkuaWNvbi53aW5kb3cucmVzdG9yZS5vdXRsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmQyXCI7IH1cbiAgXG5cbiAgXG59XG4ubG9hZE91dGxpbmVJY29ucygpO1xuXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBCcmFuZCBJY29uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmxvYWRCcmFuZEljb25zKCkgd2hlbiAoQGltcG9ydEJyYW5kSWNvbnMpIHtcbiAgLyogTG9hZCAmIERlZmluZSBCcmFuZCBGb250ICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTtcbiAgICBzcmM6IEBicmFuZEZhbGxiYWNrU1JDO1xuICAgIHNyYzogQGJyYW5kU3JjO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogQG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvKiBJY29ucyAqL1xuICBpLmljb24uXFwzNSAwMHB4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjZlXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYWNjZXNzaWJsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM2OFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmFjY3Vzb2Z0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzY5XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYWNxdWlzaXRpb25zLmluY29ycG9yYXRlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjZhZlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmFkbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3MFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmFkb2JlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzc4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYWR2ZXJzYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYzNmFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hZmZpbGlhdGV0aGVtZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM2YlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmFpcmJuYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjgzNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmFsZ29saWE6YmVmb3JlIHsgY29udGVudDogXCJcXGYzNmNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hbGlwYXk6YmVmb3JlIHsgY29udGVudDogXCJcXGY2NDJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hbWF6b246YmVmb3JlIHsgY29udGVudDogXCJcXGYyNzBcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hbWF6b24ucGF5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDJjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYW1pbGlhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzZkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYW5kcm9pZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3YlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmFuZ2VsbGlzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwOVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmFuZ3J5Y3JlYXRpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzNmVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hbmd1bGFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDIwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYXBwLnN0b3JlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzZmXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYXBwLnN0b3JlLmlvczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM3MFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmFwcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzcxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYXBwbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNzlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hcHBsZS5wYXk6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MTVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hcnRzdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzdhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYXN5bW1ldHJpazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM3MlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmF0bGFzc2lhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc3YlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmF1ZGlibGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzNzNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hdXRvcHJlZml4ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MWNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5hdmlhbmV4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzc0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYXZpYXRvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDIxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYXdzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzc1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYmFuZGNhbXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZDVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5iYXR0bGUubmV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODM1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYmVoYW5jZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmJlaGFuY2Uuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYmltb2JqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzc4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYml0YnVja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTcxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYml0Y29pbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM3OVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmJpdHk6YmVmb3JlIHsgY29udGVudDogXCJcXGYzN2FcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5ibGFjay50aWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyN2VcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5ibGFja2JlcnJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzdiXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYmxvZ2dlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM3Y1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmJsb2dnZXIuYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM3ZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmJsdWV0b290aDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5M1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmJsdWV0b290aC5iOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjk0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYm9vdHN0cmFwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODM2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYnRjOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTVhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYnVmZmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODM3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYnVyb21vYmVsZXhwZXJ0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM3ZlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jYW5hZGlhbi5tYXBsZS5sZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzg1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY2MuYW1hem9uLnBheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQyZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNjLmFtZXg6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jYy5hcHBsZS5wYXk6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MTZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jYy5kaW5lcnMuY2x1YjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0Y1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNjLmRpc2NvdmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY2MuamNiOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjRiXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY2MubWFzdGVyY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNjLnBheXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNjLnN0cmlwZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNjLnZpc2E6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjBcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jZW50ZXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzgwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY2VudG9zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzg5XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY2hyb21lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjY4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY2hyb21lY2FzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjgzOFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNsb3Vkc2NhbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzODNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jbG91ZHNtaXRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzg0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY2xvdWR2ZXJzaWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzg1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY29kZXBlbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjYlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNvZGllcGllOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjg0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY29uZmx1ZW5jZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc4ZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNvbm5lY3RkZXZlbG9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBlXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY29udGFvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjZkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3BhbmVsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzg4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlYXRpdmUuY29tbW9uczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1ZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMuYnk6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZTdcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jcmVhdGl2ZS5jb21tb25zLm5jOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGU4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlYXRpdmUuY29tbW9ucy5uYy5ldTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRlOVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMubmMuanA6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZWFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jcmVhdGl2ZS5jb21tb25zLm5kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGViXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlYXRpdmUuY29tbW9ucy5wZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRlY1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMucGQuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGVkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlYXRpdmUuY29tbW9ucy5yZW1peDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRlZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMuc2E6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZWZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jcmVhdGl2ZS5jb21tb25zLnNhbXBsaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGYwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlYXRpdmUuY29tbW9ucy5zYW1wbGluZy5wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGYxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlYXRpdmUuY29tbW9ucy5zaGFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRmMlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNyZWF0aXZlLmNvbW1vbnMuemVybzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRmM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNyaXRpY2FsLnJvbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY2YzlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jc3MzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTNjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3NzMy5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzOGJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jdXR0bGVmaXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzhjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZC5hbmQuZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM4ZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmQuYW5kLmQuYmV5b25kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmNhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZGFzaGN1YmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTBcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5kZWxpY2lvdXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5kZXBsb3lkb2c6YmVmb3JlIHsgY29udGVudDogXCJcXGYzOGVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5kZXNrcHJvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzhmXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZGV2OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNmNjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZGV2aWFudGFydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRobDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc5MFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRpYXNwb3JhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzkxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZGlnZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhNlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRpZ2l0YWwub2NlYW46YmVmb3JlIHsgY29udGVudDogXCJcXGYzOTFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5kaXNjb3JkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzkyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZGlzY291cnNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzkzXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZG9jaHViOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzk0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZG9ja2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzk1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZHJhZnQyZGlnaXRhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM5NlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRyaWJiYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTdkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZHJpYmJibGUuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzk3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZHJvcGJveDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2YlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRydXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhOVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmR5YWxvZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM5OVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmVhcmx5YmlyZHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYzOWFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5lYmF5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGY0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZWRnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4MlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmVsZW1lbnRvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQzMFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmVsbG86YmVmb3JlIHsgY29udGVudDogXCJcXGY1ZjFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5lbWJlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQyM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmVtcGlyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmVudmlyYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5OVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmVybGFuZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM5ZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmV0aGVyZXVtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDJlXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZXRzeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJkN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmV2ZXJub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODM5XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZXhwZWRpdGVkc3NsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjNlXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOWFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5mYWNlYm9vay5mOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzllXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZmFjZWJvb2subWVzc2VuZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMzlmXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZmFjZWJvb2suc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDgyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZmFudGFzeS5mbGlnaHQuZ2FtZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGY2ZGNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5mZWRleDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc5N1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZlZG9yYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjc5OFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZpZ21hOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzk5XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZmlyZWZveDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2OVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZpcnN0Lm9yZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmIwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZmlyc3Qub3JkZXIuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTBhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZmlyc3RkcmFmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNhMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZsaWNrcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2ZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ0ZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZseTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQxN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZvbnQuYXdlc29tZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJiNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZvbnQuYXdlc29tZS5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzNWNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5mb250LmF3ZXNvbWUuZmxhZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQyNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZvbnRpY29uczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4MFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZvbnRpY29ucy5maTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNhMlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZvcnQuYXdlc29tZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4NlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZvcnQuYXdlc29tZS5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYTNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5mb3J1bWJlZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZvdXJzcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODBcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5mcmVlLmNvZGUuY2FtcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZyZWVic2Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYTRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5mdWxjcnVtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTBiXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ2FsYWN0aWMucmVwdWJsaWM6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MGNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5nYWxhY3RpYy5zZW5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MGRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5nZXQucG9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjY1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ2c6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNjBcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5nZy5jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNjFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5naXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5naXQuYWx0ZXJuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODQxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ2l0LnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkMlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA5YlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdpdGh1Yi5hbHRlcm5hdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5naXRodWIuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDkyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ2l0a3Jha2VuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2E2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ2l0bGFiOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjk2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDI2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ2xpZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5nbGlkZS5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmE2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ29mb3JlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2E3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ29vZHJlYWRzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2E4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ29vZHJlYWRzLmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYTlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5nb29nbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTBcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5nb29nbGUuZHJpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYWFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5nb29nbGUucGxheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNhYlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdvb2dsZS5wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmIzXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ29vZ2xlLnBsdXMuZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdvb2dsZS5wbHVzLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdvb2dsZS53YWxsZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5ncmF0aXBheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4NFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdyYXY6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZDZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5ncmlwZmlyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNhY1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdydW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2FkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZ3VscDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNhZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmhhY2tlci5uZXdzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uaGFja2VyLm5ld3Muc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2FmXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uaGFja2VycmFuazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVmN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmhpcHM6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NTJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5oaXJlLmEuaGVscGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2IwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uaG9vbGk6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MjdcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5ob3JuYmlsbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjU5MlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmhvdGphcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNiMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmhvdXp6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjdjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uaHRtbDU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2JcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5odWJzcG90OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2IyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uaW1kYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJkOFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2ZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmludGVyY29tOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2FmXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uaW50ZXJuZXQuZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNmJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5pbnZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdiMFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmlveGhvc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDhcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5pdGNoLmlvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODNhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uaXR1bmVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2I0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uaXR1bmVzLm5vdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYjVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5qYXZhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGU0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uamVkaS5vcmRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUwZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmplbmtpbnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYjZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5qaXJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2IxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uam9nZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYjdcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5qb29tbGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYWFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5qczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNiOFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmpzLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNiOVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmpzZmlkZGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ua2FnZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWZhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ua2V5YmFzZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRmNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmtleWNkbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNiYVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmtpY2tzdGFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2JiXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ua2lja3N0YXJ0ZXIuazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNiY1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmtvcnZ1ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQyZlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmxhcmF2ZWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYmRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5sYXN0Zm06YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5sYXN0Zm0uc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjAzXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubGVhbnB1YjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxMlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmxlc3Njc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MWRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5saW5lY2hhdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNjMFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDhjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubGlua2VkaW4uaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5saW5vZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYjhcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5saW51eDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3Y1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmx5ZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYzNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5tYWdlbnRvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2M0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubWFpbGNoaW1wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTllXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubWFuZGFsb3JpYW46YmVmb3JlIHsgY29udGVudDogXCJcXGY1MGZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5tYXJrZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjYwZlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm1hc3RvZG9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGY2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubWF4Y2RuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTM2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubWVkYXBwczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNjNlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm1lZGl1bTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzYVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm1lZGl1bS5tOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2M3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubWVkcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYzYzhcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5tZWV0dXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZTBcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5tZWdhcG9ydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjVhM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm1lbmRlbGV5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2IzXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubWljcm9zb2Z0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2NhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubWl4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2NiXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubWl4Y2xvdWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyODlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5taXp1bmk6YmVmb3JlIHsgY29udGVudDogXCJcXGYzY2NcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5tb2R4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjg1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubW9uZXJvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2QwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubmFwc3RlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNkMlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm5lb3M6YmVmb3JlIHsgY29udGVudDogXCJcXGY2MTJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5uaW1ibHI6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YThcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5ub2RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDE5XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ubm9kZS5qczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNkM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm5wbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNkNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm5zODpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNkNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm51dHJpdGlvbml4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2Q2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ub2Rub2tsYXNzbmlraTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2M1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm9kbm9rbGFzc25pa2kuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjY0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ub2xkLnJlcHVibGljOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTEwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ub3BlbmNhcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyM2RcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5vcGVuaWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOWJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5vcGVyYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2YVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm9wdGluLm1vbnN0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyM2NcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5vc2k6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MWFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5wYWdlNDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNkN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBhZ2VsaW5lczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4Y1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBhbGZlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNkOFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBhdHJlb246YmVmb3JlIHsgY29udGVudDogXCJcXGYzZDlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5wYXlwYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5wZW5ueS5hcmNhZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY3MDRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5wZXJpc2NvcGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZGFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5waGFicmljYXRvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNkYlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBob2VuaXguZnJhbWV3b3JrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2RjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucGhvZW5peC5zcXVhZHJvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjUxMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBocDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQ1N1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBpZWQucGlwZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYWVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5waWVkLnBpcGVyLmFsdGVybmF0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhOFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBpZWQucGlwZXIuaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGU1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucGllZC5waXBlci5wcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBpbnRlcmVzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkMlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBpbnRlcmVzdC5wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjMxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucGludGVyZXN0LnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBsYXlzdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2RmXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucHJvZHVjdC5odW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjg4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucHVzaGVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2UxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucHl0aG9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2UyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucXE6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5xdWluc2NhcGU6YmVmb3JlIHsgY29udGVudDogXCJcXGY0NTlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5xdW9yYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnIucHJvamVjdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjRmN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnJhc3BiZXJyeS5waTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdiYlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnJhdmVscnk6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZDlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5yZWFjdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQxYlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnJlYWN0ZXVyb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzVkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmVhZG1lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGQ1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmViZWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDBcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5yZWRkaXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5yZWRkaXQuYWxpZW46YmVmb3JlIHsgY29udGVudDogXCJcXGYyODFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5yZWRkaXQuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWEyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmVkaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmN2JjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmVkcml2ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZTNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5yZWR5ZXRpOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjlkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmVucmVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMThiXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmVwbHlkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2U2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmVzZWFyY2hnYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGY4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmVzb2x2aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2U3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucmV2OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNWIyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucm9ja2V0Y2hhdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNlOFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnJvY2tybXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZTlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zYWZhcmk6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNjdcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zYWxlc2ZvcmNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODNiXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc2FzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQxZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnNjaGxpeDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNlYVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnNjcmliZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4YVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnNlYXJjaGVuZ2luOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2ViXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc2VsbGNhc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZGFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zZWxsc3k6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zZXJ2aWNlc3RhY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZWNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zaGlydHNpbmJ1bGs6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zaG9wd2FyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjViNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnNpbXBseWJ1aWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc2lzdHJpeDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNlZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnNpdGg6YmVmb3JlIHsgY29udGVudDogXCJcXGY1MTJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5za2V0Y2g6YmVmb3JlIHsgY29udGVudDogXCJcXGY3YzZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5za3lhdGxhczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxNlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnNreXBlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTdlXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc2xhY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOThcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zbGFjay5oYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2VmXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc2xpZGVzaGFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmFiXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc25hcGNoYXQuZ2hvc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYWNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zbmFwY2hhdC5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYWRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zb3VuZGNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJlXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc291cmNldHJlZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdkM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnNwZWFrYXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZjNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zcGVha2VyLmRlY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGY4M2NcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3F1YXJlc3BhY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGY1YmVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zdGFjay5leGNoYW5nZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4ZFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnN0YWNrLm92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTZjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3RhY2twYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmODQyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3RheWxpbmtlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNmNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnN0ZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3RlYW0uc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3RlYW0uc3ltYm9sOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2Y2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3RpY2tlci5tdWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2Y3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3RyYXZhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDI4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3RyaXBlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDI5XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3RyaXBlLnM6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MmFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zdHVkaW92aW5hcmk6YmVmb3JlIHsgY29udGVudDogXCJcXGYzZjhcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zdHVtYmxldXBvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnN0dW1ibGV1cG9uLmNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnN1cGVycG93ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmRkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3VwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2Y5XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uc3VzZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdkNlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnN5bWZvbnk6YmVmb3JlIHsgY29udGVudDogXCJcXGY4M2RcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50ZWFtc3BlYWs6YmVmb3JlIHsgY29udGVudDogXCJcXGY0ZjlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50ZWxlZ3JhbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJjNlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnRlbGVncmFtLnBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmM2ZlXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24udGVuY2VudC53ZWlibzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnRoZW1lY286YmVmb3JlIHsgY29udGVudDogXCJcXGY1YzZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50aGVtZWlzbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYjJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50aGluay5wZWFrczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjczMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnRyYWRlLmZlZGVyYXRpb246YmVmb3JlIHsgY29udGVudDogXCJcXGY1MTNcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50cmVsbG86YmVmb3JlIHsgY29udGVudDogXCJcXGYxODFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50cmlwYWR2aXNvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2MlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnR1bWJscjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3M1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnR1bWJsci5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNzRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50d2l0Y2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZThcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDk5XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24udHdpdHRlci5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi50eXBvMzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQyYlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnViZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MDJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi51YnVudHU6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ZGZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi51aWtpdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQwM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnVuaXJlZ2lzdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDA0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24udW50YXBwZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQwNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnVwczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdlMFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnVzYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4N1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnVzcHM6YmVmb3JlIHsgY29udGVudDogXCJcXGY3ZTFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi51c3N1bm5haDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQwN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnZhYWRpbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQwOFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnZpYWNvaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYyMzdcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi52aWFkZW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi52aWFkZW8uc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmFhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24udmliZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MDlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi52aW1lbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQwYVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnZpbWVvLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5NFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnZpbWVvLnY6YmVmb3JlIHsgY29udGVudDogXCJcXGYyN2RcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi52aW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24udms6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi52bnY6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MGJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi52dWVqczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQxZlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLndhemU6YmVmb3JlIHsgY29udGVudDogXCJcXGY4M2ZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi53ZWVibHk6YmVmb3JlIHsgY29udGVudDogXCJcXGY1Y2NcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi53ZWlibzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4YVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLndlaXhpbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkN1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLndoYXRzYXBwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjMyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ud2hhdHNhcHAuc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDBjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ud2htY3M6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MGRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi53aWtpcGVkaWEudzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2NlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLndpbmRvd3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxN2FcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi53aXg6YmVmb3JlIHsgY29udGVudDogXCJcXGY1Y2ZcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi53aXphcmRzLm9mLnRoZS5jb2FzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjczMFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLndvbGYucGFjay5iYXR0YWxpb246YmVmb3JlIHsgY29udGVudDogXCJcXGY1MTRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi53b3JkcHJlc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOWFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi53b3JkcHJlc3Muc2ltcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDExXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ud3BiZWdpbm5lcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5N1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLndwZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZGVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi53cGZvcm1zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjk4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ud3ByZXNzcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjNlNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnhib3g6YmVmb3JlIHsgY29udGVudDogXCJcXGY0MTJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi54aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTY4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ueGluZy5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi55LmNvbWJpbmF0b3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYyM2JcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi55YWhvbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5ZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnlhbW1lcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjg0MFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnlhbmRleDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQxM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnlhbmRleC5pbnRlcm5hdGlvbmFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDE0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ueWFybjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdlM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnllbHA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi55b2FzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJiMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjdcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi55b3V0dWJlLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjQzMVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnpoaWh1OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNjNmXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBcblxuICAvKiBBbGlhc2VzICovXG4gIGkuaWNvbi5hbWVyaWNhbi5leHByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYzXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYW1lcmljYW4uZXhwcmVzcy5jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYzXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uYW1leDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmJpdGJ1Y2tldC5zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNzFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5ibHVldG9vdGguYWx0ZXJuYXRpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOTRcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jcmVkaXQuY2FyZC5hbWF6b24ucGF5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNDJkXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlZGl0LmNhcmQuYW1lcmljYW4uZXhwcmVzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmNyZWRpdC5jYXJkLmRpbmVycy5jbHViOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjRjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlZGl0LmNhcmQuZGlzY292ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jcmVkaXQuY2FyZC5qY2I6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNGJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5jcmVkaXQuY2FyZC5tYXN0ZXJjYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYxXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlZGl0LmNhcmQucGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlZGl0LmNhcmQuc3RyaXBlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY1XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uY3JlZGl0LmNhcmQudmlzYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmMFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRpbmVycy5jbHViOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjRjXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZGluZXJzLmNsdWIuY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0Y1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRpc2NvdmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZGlzY292ZXIuY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmMlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRpc2sub3V0bGluZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjM2OVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmRyaWJibGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxN2RcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5lZXJjYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmRhXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZW52aXJhLmdhbGxlcnk6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOTlcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5mYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJiNFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmZhY2Vib29rLm9mZmljaWFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDgyXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uZml2ZS5odW5kcmVkLnBpeGVsczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2ZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdpdHRpcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4NFwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdvb2dsZS5wbHVzLmNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJiM1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmdvb2dsZS5wbHVzLm9mZmljaWFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmIzXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24uamFwYW4uY3JlZGl0LmJ1cmVhdTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0YlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmphcGFuLmNyZWRpdC5idXJlYXUuY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0YlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmpjYjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0YlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLmxpbmtlZGluLnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4Y1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm1hc3RlcmNhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5tYXN0ZXJjYXJkLmNhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjFcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5taWNyb3NvZnQuZWRnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4MlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm1zLmVkZ2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYyODJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5uZXcucGllZC5waXBlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhZVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLm9wdGlubW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzY1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnBheXBhbC5jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY0XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ucGllZC5waXBlci5oYXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYWVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5wb2NrZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNjVcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi5zdHJpcGUuY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmNVwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnRoZW1lLmlzbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYjJcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi52aXNhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24udmlzYS5jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYwXCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ud2VjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ud2lraXBlZGlhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjY2XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ud29yZHByZXNzLmJlZ2lubmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjk3XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ud29yZHByZXNzLmZvcm1zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjk4XCI7IGZvbnQtZmFtaWx5OiBAYnJhbmRGb250TmFtZTsgfVxuICBpLmljb24ueWM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyM2JcIjsgZm9udC1mYW1pbHk6IEBicmFuZEZvbnROYW1lOyB9XG4gIGkuaWNvbi55Y29tYmluYXRvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzYlwiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgaS5pY29uLnlvdXR1YmUucGxheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2N1wiOyBmb250LWZhbWlseTogQGJyYW5kRm9udE5hbWU7IH1cbiAgXG59XG4ubG9hZEJyYW5kSWNvbnMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEltYWdlXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdlbGVtZW50JztcbkBlbGVtZW50IDogJ2ltYWdlJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgSW1hZ2VcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IEBwbGFjZWhvbGRlckNvbG9yO1xufVxuXG5pbWcudWkuaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVpLmltYWdlIHN2Zyxcbi51aS5pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmhpZGRlbi5pbWFnZXMsXG4udWkudWkuaGlkZGVuLmltYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51aS5oaWRkZW4udHJhbnNpdGlvbi5pbWFnZXMsXG4udWkuaGlkZGVuLnRyYW5zaXRpb24uaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnVpLmltYWdlcyA+IC5oaWRkZW4udHJhbnNpdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5cbi51aS5kaXNhYmxlZC5pbWFnZXMsXG4udWkuZGlzYWJsZWQuaW1hZ2Uge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG9wYWNpdHk6IEBkaXNhYmxlZE9wYWNpdHk7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW5saW5lXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW5saW5lLmltYWdlLFxuLnVpLmlubGluZS5pbWFnZSBzdmcsXG4udWkuaW5saW5lLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmVydGljYWwgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50b3AuYWxpZ25lZC5pbWFnZXMgLmltYWdlLFxuLnVpLnRvcC5hbGlnbmVkLmltYWdlLFxuLnVpLnRvcC5hbGlnbmVkLmltYWdlIHN2Zyxcbi51aS50b3AuYWxpZ25lZC5pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4udWkubWlkZGxlLmFsaWduZWQuaW1hZ2VzIC5pbWFnZSxcbi51aS5taWRkbGUuYWxpZ25lZC5pbWFnZSxcbi51aS5taWRkbGUuYWxpZ25lZC5pbWFnZSBzdmcsXG4udWkubWlkZGxlLmFsaWduZWQuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnVpLmJvdHRvbS5hbGlnbmVkLmltYWdlcyAuaW1hZ2UsXG4udWkuYm90dG9tLmFsaWduZWQuaW1hZ2UsXG4udWkuYm90dG9tLmFsaWduZWQuaW1hZ2Ugc3ZnLFxuLnVpLmJvdHRvbS5hbGlnbmVkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSb3VuZGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucm91bmRlZC5pbWFnZXMgLmltYWdlLFxuLnVpLnJvdW5kZWQuaW1hZ2UsXG4udWkucm91bmRlZC5pbWFnZXMgLmltYWdlID4gKixcbi51aS5yb3VuZGVkLmltYWdlID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IEByb3VuZGVkQm9yZGVyUmFkaXVzO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ib3JkZXJlZC5pbWFnZXMgLmltYWdlLFxuLnVpLmJvcmRlcmVkLmltYWdlcyBpbWcsXG4udWkuYm9yZGVyZWQuaW1hZ2VzIHN2Zyxcbi51aS5ib3JkZXJlZC5pbWFnZSBpbWcsXG4udWkuYm9yZGVyZWQuaW1hZ2Ugc3ZnLFxuaW1nLnVpLmJvcmRlcmVkLmltYWdlIHtcbiAgYm9yZGVyOiBAaW1hZ2VCb3JkZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDaXJjdWxhclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNpcmN1bGFyLmltYWdlcyxcbi51aS5jaXJjdWxhci5pbWFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51aS5jaXJjdWxhci5pbWFnZXMgLmltYWdlLFxuLnVpLmNpcmN1bGFyLmltYWdlLFxuLnVpLmNpcmN1bGFyLmltYWdlcyAuaW1hZ2UgPiAqLFxuLnVpLmNpcmN1bGFyLmltYWdlID4gKiB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IEBjaXJjdWxhclJhZGl1cztcbiAgYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmx1aWQuaW1hZ2VzLFxuLnVpLmZsdWlkLmltYWdlLFxuLnVpLmZsdWlkLmltYWdlcyBpbWcsXG4udWkuZmx1aWQuaW1hZ2VzIHN2Zyxcbi51aS5mbHVpZC5pbWFnZSBzdmcsXG4udWkuZmx1aWQuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBdmF0YXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hdmF0YXIuaW1hZ2VzIC5pbWFnZSxcbi51aS5hdmF0YXIuaW1hZ2VzIGltZyxcbi51aS5hdmF0YXIuaW1hZ2VzIHN2Zyxcbi51aS5hdmF0YXIuaW1hZ2UgaW1nLFxuLnVpLmF2YXRhci5pbWFnZSBzdmcsXG4udWkuYXZhdGFyLmltYWdlIHtcbiAgbWFyZ2luLXJpZ2h0OiBAYXZhdGFyTWFyZ2luO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IEBhdmF0YXJTaXplO1xuICBoZWlnaHQ6IEBhdmF0YXJTaXplO1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IEBjaXJjdWxhclJhZGl1cztcbiAgYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTcGFjZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNwYWNlZC5pbWFnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogQHNwYWNlZERpc3RhbmNlO1xuICBtYXJnaW4tcmlnaHQ6IEBzcGFjZWREaXN0YW5jZTtcbn1cblxuLnVpW2NsYXNzKj1cImxlZnQgc3BhY2VkXCJdLmltYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IEBzcGFjZWREaXN0YW5jZTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgc3BhY2VkXCJdLmltYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogQHNwYWNlZERpc3RhbmNlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGVkLmltYWdlLFxuLnVpLmZsb2F0ZWQuaW1hZ2VzIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogQGZsb2F0ZWRIb3Jpem9udGFsTWFyZ2luO1xuICBtYXJnaW4tYm90dG9tOiBAZmxvYXRlZFZlcnRpY2FsTWFyZ2luO1xufVxuLnVpLnJpZ2h0LmZsb2F0ZWQuaW1hZ2VzLFxuLnVpLnJpZ2h0LmZsb2F0ZWQuaW1hZ2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogQGZsb2F0ZWRWZXJ0aWNhbE1hcmdpbjtcbiAgbWFyZ2luLWxlZnQ6IEBmbG9hdGVkSG9yaXpvbnRhbE1hcmdpbjtcbn1cblxuLnVpLmZsb2F0ZWQuaW1hZ2VzOmxhc3QtY2hpbGQsXG4udWkuZmxvYXRlZC5pbWFnZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuXG4udWkuY2VudGVyZWQuaW1hZ2VzLFxuLnVpLmNlbnRlcmVkLmltYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuaW1hZ2VzIC5pbWFnZSxcbi51aS5taW5pLmltYWdlcyBpbWcsXG4udWkubWluaS5pbWFnZXMgc3ZnLFxuLnVpLm1pbmkuaW1hZ2Uge1xuICB3aWR0aDogQG1pbmlXaWR0aDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IEBtaW5pO1xufVxuLnVpLnRpbnkuaW1hZ2VzIC5pbWFnZSxcbi51aS50aW55LmltYWdlcyBpbWcsXG4udWkudGlueS5pbWFnZXMgc3ZnLFxuLnVpLnRpbnkuaW1hZ2Uge1xuICB3aWR0aDogQHRpbnlXaWR0aDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLmltYWdlcyAuaW1hZ2UsXG4udWkuc21hbGwuaW1hZ2VzIGltZyxcbi51aS5zbWFsbC5pbWFnZXMgc3ZnLFxuLnVpLnNtYWxsLmltYWdlIHtcbiAgd2lkdGg6IEBzbWFsbFdpZHRoO1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogQHNtYWxsO1xufVxuLnVpLm1lZGl1bS5pbWFnZXMgLmltYWdlLFxuLnVpLm1lZGl1bS5pbWFnZXMgaW1nLFxuLnVpLm1lZGl1bS5pbWFnZXMgc3ZnLFxuLnVpLm1lZGl1bS5pbWFnZSB7XG4gIHdpZHRoOiBAbWVkaXVtV2lkdGg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiBAbWVkaXVtO1xufVxuLnVpLmxhcmdlLmltYWdlcyAuaW1hZ2UsXG4udWkubGFyZ2UuaW1hZ2VzIGltZyxcbi51aS5sYXJnZS5pbWFnZXMgc3ZnLFxuLnVpLmxhcmdlLmltYWdlIHtcbiAgd2lkdGg6IEBsYXJnZVdpZHRoO1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogQGxhcmdlO1xufVxuLnVpLmJpZy5pbWFnZXMgLmltYWdlLFxuLnVpLmJpZy5pbWFnZXMgaW1nLFxuLnVpLmJpZy5pbWFnZXMgc3ZnLFxuLnVpLmJpZy5pbWFnZSB7XG4gIHdpZHRoOiBAYmlnV2lkdGg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiBAYmlnO1xufVxuLnVpLmh1Z2UuaW1hZ2VzIC5pbWFnZSxcbi51aS5odWdlLmltYWdlcyBpbWcsXG4udWkuaHVnZS5pbWFnZXMgc3ZnLFxuLnVpLmh1Z2UuaW1hZ2Uge1xuICB3aWR0aDogQGh1Z2VXaWR0aDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IEBodWdlO1xufVxuLnVpLm1hc3NpdmUuaW1hZ2VzIC5pbWFnZSxcbi51aS5tYXNzaXZlLmltYWdlcyBpbWcsXG4udWkubWFzc2l2ZS5pbWFnZXMgc3ZnLFxuLnVpLm1hc3NpdmUuaW1hZ2Uge1xuICB3aWR0aDogQG1hc3NpdmVXaWR0aDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IEBtYXNzaXZlO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgIEdyb3Vwc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmltYWdlcyB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgbWFyZ2luOiAwIC1AaW1hZ2VIb3Jpem9udGFsTWFyZ2luIDA7XG59XG5cbi51aS5pbWFnZXMgLmltYWdlLFxuLnVpLmltYWdlcyA+IGltZyxcbi51aS5pbWFnZXMgPiBzdmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCBAaW1hZ2VIb3Jpem9udGFsTWFyZ2luIEBpbWFnZVZlcnRpY2FsTWFyZ2luO1xufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBJbnB1dFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2VsZW1lbnQnO1xuQGVsZW1lbnQgOiAnaW5wdXQnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJbnB1dHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IEBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGNvbG9yOiBAaW5wdXRDb2xvcjtcbn1cbi51aS5pbnB1dCA+IGlucHV0IHtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBvdXRsaW5lOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gIHRleHQtYWxpZ246IEB0ZXh0QWxpZ247XG4gIGxpbmUtaGVpZ2h0OiBAbGluZUhlaWdodDtcblxuICBmb250LWZhbWlseTogQGlucHV0Rm9udDtcbiAgcGFkZGluZzogQHBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZDogQGJhY2tncm91bmQ7XG4gIGJvcmRlcjogQGJvcmRlcjtcbiAgY29sb3I6IEBpbnB1dENvbG9yO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICB0cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcblxuICBib3gtc2hhZG93OiBAYm94U2hhZG93O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBsYWNlaG9sZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBicm93c2VycyByZXF1aXJlIHRoZXNlIHJ1bGVzIHNlcGFyYXRlICovXG5cbi51aS5pbnB1dCA+IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEBwbGFjZWhvbGRlckNvbG9yO1xufVxuLnVpLmlucHV0ID4gaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQHBsYWNlaG9sZGVyQ29sb3I7XG59XG4udWkuaW5wdXQgPiBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQHBsYWNlaG9sZGVyQ29sb3I7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpc2FibGVkLmlucHV0LFxuLnVpLmlucHV0Om5vdCguZGlzYWJsZWQpIGlucHV0W2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IEBkaXNhYmxlZE9wYWNpdHk7XG59XG5cbi51aS5kaXNhYmxlZC5pbnB1dCA+IGlucHV0LFxuLnVpLmlucHV0Om5vdCguZGlzYWJsZWQpIGlucHV0W2Rpc2FibGVkXSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmlucHV0ID4gaW5wdXQ6YWN0aXZlLFxuLnVpLmlucHV0LmRvd24gaW5wdXQge1xuICBib3JkZXItY29sb3I6IEBkb3duQm9yZGVyQ29sb3I7XG4gIGJhY2tncm91bmQ6IEBkb3duQmFja2dyb3VuZDtcbiAgY29sb3I6IEBkb3duQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBkb3duQm94U2hhZG93O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxvYWRpbmcubG9hZGluZy5pbnB1dCA+IGkuaWNvbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuXG4gIG1hcmdpbjogQGxvYWRlck1hcmdpbjtcbiAgd2lkdGg6IEBsb2FkZXJTaXplO1xuICBoZWlnaHQ6IEBsb2FkZXJTaXplO1xuXG4gIGJvcmRlci1yYWRpdXM6IEBjaXJjdWxhclJhZGl1cztcbiAgYm9yZGVyOiBAbG9hZGVyTGluZVdpZHRoIHNvbGlkIEBsb2FkZXJGaWxsQ29sb3I7XG59XG4udWkubG9hZGluZy5sb2FkaW5nLmlucHV0ID4gaS5pY29uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcblxuICBtYXJnaW46IEBsb2FkZXJNYXJnaW47XG4gIHdpZHRoOiBAbG9hZGVyU2l6ZTtcbiAgaGVpZ2h0OiBAbG9hZGVyU2l6ZTtcblxuICBhbmltYXRpb246IGxvYWRlciBAbG9hZGVyU3BlZWQgaW5maW5pdGUgbGluZWFyO1xuXG4gIGJvcmRlcjogQGxvYWRlckxpbmVXaWR0aCBzb2xpZCBAbG9hZGVyTGluZUNvbG9yO1xuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG5cbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnB1dC5mb2N1cyA+IGlucHV0LFxuLnVpLmlucHV0ID4gaW5wdXQ6Zm9jdXMgIHtcbiAgYm9yZGVyLWNvbG9yOiBAZm9jdXNCb3JkZXJDb2xvcjtcbiAgYmFja2dyb3VuZDogQGZvY3VzQmFja2dyb3VuZDtcbiAgY29sb3I6IEBmb2N1c0NvbG9yO1xuICBib3gtc2hhZG93OiBAZm9jdXNCb3hTaGFkb3c7XG59XG4udWkuaW5wdXQuZm9jdXMgPiBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbi51aS5pbnB1dCA+IGlucHV0OmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEBwbGFjZWhvbGRlckZvY3VzQ29sb3I7XG59XG4udWkuaW5wdXQuZm9jdXMgPiBpbnB1dDo6LW1vei1wbGFjZWhvbGRlcixcbi51aS5pbnB1dCA+IGlucHV0OmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEBwbGFjZWhvbGRlckZvY3VzQ29sb3I7XG59XG4udWkuaW5wdXQuZm9jdXMgPiBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4udWkuaW5wdXQgPiBpbnB1dDpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQHBsYWNlaG9sZGVyRm9jdXNDb2xvcjtcbn1cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGVycm9yQmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBAZXJyb3JCb3JkZXI7XG4gIGNvbG9yOiBAZXJyb3JDb2xvcjtcbiAgYm94LXNoYWRvdzogQGVycm9yQm94U2hhZG93O1xufVxuXG4vKiBFcnJvciBQbGFjZWhvbGRlciAqL1xuLnVpLmlucHV0LmVycm9yID4gaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQHBsYWNlaG9sZGVyRXJyb3JDb2xvcjtcbn1cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEBwbGFjZWhvbGRlckVycm9yQ29sb3I7XG59XG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQHBsYWNlaG9sZGVyRXJyb3JDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKiBGb2N1c2VkIEVycm9yIFBsYWNlaG9sZGVyICovXG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBAcGxhY2Vob2xkZXJFcnJvckZvY3VzQ29sb3I7XG59XG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDpmb2N1czo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBAcGxhY2Vob2xkZXJFcnJvckZvY3VzQ29sb3I7XG59XG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQHBsYWNlaG9sZGVyRXJyb3JGb2N1c0NvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFRyYW5zcGFyZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi51aS50cmFuc3BhcmVudC5pbnB1dCA+IHRleHRhcmVhLFxuLnVpLnRyYW5zcGFyZW50LmlucHV0ID4gaW5wdXQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLmZpZWxkIC51aS50cmFuc3BhcmVudC5pbnB1dCA+IHRleHRhcmVhIHtcbiAgcGFkZGluZzogQHBhZGRpbmc7XG59XG5cbi8qIFRyYW5zcGFyZW50IEljb24gKi9cbjpub3QoLmZpZWxkKSA+IC51aS50cmFuc3BhcmVudC5pY29uLmlucHV0ID4gaS5pY29uIHtcbiAgd2lkdGg6IEB0cmFuc3BhcmVudEljb25XaWR0aDtcbn1cbjpub3QoLmZpZWxkKSA+IC51aS50cmFuc3BhcmVudC5pY29uLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IEB0cmFuc3BhcmVudEljb25NYXJnaW47XG59XG46bm90KC5maWVsZCkgPiAudWkudHJhbnNwYXJlbnRbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IEB0cmFuc3BhcmVudEljb25NYXJnaW47XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8qIFRyYW5zcGFyZW50IEludmVydGVkICovXG4udWkudHJhbnNwYXJlbnQuaW52ZXJ0ZWQuaW5wdXQge1xuICBjb2xvcjogQHRyYW5zcGFyZW50SW52ZXJ0ZWRDb2xvcjtcbn1cbi51aS51aS50cmFuc3BhcmVudC5pbnZlcnRlZC5pbnB1dCA+IHRleHRhcmVhLFxuLnVpLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQHRyYW5zcGFyZW50SW52ZXJ0ZWRQbGFjZWhvbGRlckNvbG9yO1xufVxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQHRyYW5zcGFyZW50SW52ZXJ0ZWRQbGFjZWhvbGRlckNvbG9yO1xufVxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEB0cmFuc3BhcmVudEludmVydGVkUGxhY2Vob2xkZXJDb2xvcjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaWNvbi5pbnB1dCA+IGkuaWNvbiB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMTAwJTtcblxuICB3aWR0aDogQGljb25XaWR0aDtcbiAgb3BhY2l0eTogQGljb25PcGFjaXR5O1xuICBib3JkZXItcmFkaXVzOiAwIEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwO1xuICB0cmFuc2l0aW9uOiBAaWNvblRyYW5zaXRpb247XG59XG4udWkuaWNvbi5pbnB1dCA+IGkuaWNvbjpub3QoLmxpbmspIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4udWkudWkuaWNvbi5pbnB1dCA+IHRleHRhcmVhLFxuLnVpLnVpLmljb24uaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IEBpY29uTWFyZ2luO1xufVxuXG4udWkuaWNvbi5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaWNvbi5pbnB1dCA+IGkuaWNvbjphZnRlciB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IEBpY29uT2Zmc2V0O1xufVxuLnVpLmljb24uaW5wdXQgPiBpLmxpbmsuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi51aS5pY29uLmlucHV0ID4gaS5jaXJjdWxhci5pY29uIHtcbiAgdG9wOiBAY2lyY3VsYXJJY29uVmVydGljYWxPZmZzZXQ7XG4gIHJpZ2h0OiBAY2lyY3VsYXJJY29uSG9yaXpvbnRhbE9mZnNldDtcbn1cblxuLyogTGVmdCBJY29uIElucHV0ICovXG4udWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaS5pY29uIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IEBib3JkZXJXaWR0aDtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cyAwIDAgQGJvcmRlclJhZGl1cztcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGljb25cIl0uaW5wdXQgPiBpLmNpcmN1bGFyLmljb24ge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogQGNpcmN1bGFySWNvbkhvcml6b250YWxPZmZzZXQ7XG59XG4udWkudWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gdGV4dGFyZWEsXG4udWkudWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IEBpY29uTWFyZ2luO1xuICBwYWRkaW5nLXJpZ2h0OiBAaG9yaXpvbnRhbFBhZGRpbmc7XG59XG5cbi8qIEZvY3VzICovXG4udWkuaWNvbi5pbnB1dCA+IHRleHRhcmVhOmZvY3VzIH4gaS5pY29uLFxuLnVpLmljb24uaW5wdXQgPiBpbnB1dDpmb2N1cyB+IGkuaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGFiZWxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQWRqYWNlbnQgTGFiZWwgKi9cbi51aS5sYWJlbGVkLmlucHV0ID4gLmxhYmVsIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVNZWRpdW07XG59XG4udWkubGFiZWxlZC5pbnB1dCA+IC5sYWJlbDpub3QoLmNvcm5lcikge1xuICBwYWRkaW5nLXRvcDogQHZlcnRpY2FsUGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206IEB2ZXJ0aWNhbFBhZGRpbmc7XG59XG5cbi8qIFJlZ3VsYXIgTGFiZWwgb24gTGVmdCAqL1xuLnVpLmxhYmVsZWQuaW5wdXQ6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgLmxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLnVpLmxhYmVsZWQuaW5wdXQ6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgLmxhYmVsOmZpcnN0LWNoaWxkICsgaW5wdXQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4udWkubGFiZWxlZC5pbnB1dDpub3QoW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdKSAubGFiZWw6Zmlyc3QtY2hpbGQgKyBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiBAZm9jdXNCb3JkZXJDb2xvcjtcbn1cblxuLyogUmVndWxhciBMYWJlbCBvbiBSaWdodCAqL1xuLnVpW2NsYXNzKj1cInJpZ2h0IGxhYmVsZWRcIl0uaW5wdXQgPiBpbnB1dCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdLmlucHV0ID4gaW5wdXQgKyAubGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgbGFiZWxlZFwiXS5pbnB1dCA+IGlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBAZm9jdXNCb3JkZXJDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgTGFiZWwgKi9cbi51aS5sYWJlbGVkLmlucHV0IC5jb3JuZXIubGFiZWwge1xuICB0b3A6IEBsYWJlbENvcm5lclRvcDtcbiAgcmlnaHQ6IEBsYWJlbENvcm5lclJpZ2h0O1xuICBmb250LXNpemU6IEBsYWJlbENvcm5lclNpemU7XG4gIGJvcmRlci1yYWRpdXM6IDAgQGJvcmRlclJhZGl1cyAwIDA7XG59XG5cbi8qIFNwYWNpbmcgd2l0aCBjb3JuZXIgbGFiZWwgKi9cbi51aVtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXTpub3QoW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0pLmxhYmVsZWQuaW5wdXQgPiB0ZXh0YXJlYSxcbi51aVtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXTpub3QoW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0pLmxhYmVsZWQuaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IEBsYWJlbGVkTWFyZ2luICFpbXBvcnRhbnQ7XG59XG4udWlbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0uaWNvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0pID4gdGV4dGFyZWEsXG4udWlbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0uaWNvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0pID4gaW5wdXQge1xuICBwYWRkaW5nLXJpZ2h0OiBAbGFiZWxlZEljb25JbnB1dE1hcmdpbiAhaW1wb3J0YW50O1xufVxuLnVpW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdLmljb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdKSA+IC5pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiBAbGFiZWxlZEljb25NYXJnaW47XG59XG5cbi8qIExlZnQgTGFiZWxlZCAqL1xuLnVpW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0ubGFiZWxlZC5pbnB1dCA+IHRleHRhcmVhLFxuLnVpW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0ubGFiZWxlZC5pbnB1dCA+IGlucHV0IHtcbiAgcGFkZGluZy1sZWZ0OiBAbGFiZWxlZE1hcmdpbiAhaW1wb3J0YW50O1xufVxuLnVpW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0uaWNvbi5pbnB1dCA+IHRleHRhcmVhLFxuLnVpW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0uaWNvbi5pbnB1dCA+IGlucHV0IHtcbiAgcGFkZGluZy1sZWZ0OiBAbGFiZWxlZEljb25JbnB1dE1hcmdpbiAhaW1wb3J0YW50O1xufVxuLnVpW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0uaWNvbi5pbnB1dCA+IC5pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IEBsYWJlbGVkSWNvbk1hcmdpbjtcbn1cbi51aS5pY29uLmlucHV0ID4gdGV4dGFyZWEgfiAuaWNvbiB7XG4gIGhlaWdodDogQHRleHRhcmVhSWNvbkhlaWdodDtcbn1cbjpub3QoLmZpZWxkKSA+IC51aS50cmFuc3BhcmVudC5pY29uLmlucHV0ID4gdGV4dGFyZWEgfiAuaWNvbiB7XG4gIGhlaWdodDogQHRyYW5zcGFyZW50VGV4dGFyZWFJY29uSGVpZ2h0O1xufVxuXG4vKiBDb3JuZXIgTGFiZWwgUG9zaXRpb24gICovXG4udWkuaW5wdXQgPiAudWkuY29ybmVyLmxhYmVsIHtcbiAgdG9wOiBAYm9yZGVyV2lkdGg7XG4gIHJpZ2h0OiBAYm9yZGVyV2lkdGg7XG59XG4udWkuaW5wdXQgPiAudWkubGVmdC5jb3JuZXIubGFiZWwge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogQGJvcmRlcldpZHRoO1xufVxuXG4vKiBMYWJlbGVkIGFuZCBhY3Rpb24gaW5wdXQgZXJyb3IgKi9cbi51aS5mb3JtID4gLmZpZWxkLmVycm9yID4gLnVpLmFjdGlvbi5pbnB1dCA+IC51aS5idXR0b24sXG4udWkuZm9ybSA+IC5maWVsZC5lcnJvciA+IC51aS5sYWJlbGVkLmlucHV0Om5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pID4gLnVpLmxhYmVsLFxuLnVpLmFjdGlvbi5pbnB1dC5lcnJvciA+IC51aS5idXR0b24sXG4udWkubGFiZWxlZC5pbnB1dC5lcnJvcjpub3QoW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdKSA+IC51aS5sYWJlbCB7XG4gIGJvcmRlci10b3A6IEBib3JkZXJXaWR0aCBzb2xpZCBAZXJyb3JCb3JkZXI7XG4gIGJvcmRlci1ib3R0b206IEBib3JkZXJXaWR0aCBzb2xpZCBAZXJyb3JCb3JkZXI7XG59XG4udWkuZm9ybSA+IC5maWVsZC5lcnJvciA+IC51aS5sZWZ0LmFjdGlvbi5pbnB1dCA+IC51aS5idXR0b24sXG4udWkuZm9ybSA+IC5maWVsZC5lcnJvciA+IC51aS5sYWJlbGVkLmlucHV0Om5vdCgucmlnaHQpOm5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pID4gLnVpLmxhYmVsLFxuLnVpLmxlZnQuYWN0aW9uLmlucHV0LmVycm9yID4gLnVpLmJ1dHRvbixcbi51aS5sYWJlbGVkLmlucHV0LmVycm9yOm5vdCgucmlnaHQpOm5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pID4gLnVpLmxhYmVsIHtcbiAgYm9yZGVyLWxlZnQ6IEBib3JkZXJXaWR0aCBzb2xpZCBAZXJyb3JCb3JkZXI7XG59XG4udWkuZm9ybSA+IC5maWVsZC5lcnJvciA+IC51aS5hY3Rpb24uaW5wdXQ6bm90KC5sZWZ0KSA+IGlucHV0ICsgLnVpLmJ1dHRvbixcbi51aS5mb3JtID4gLmZpZWxkLmVycm9yID4gLnVpLnJpZ2h0LmxhYmVsZWQuaW5wdXQ6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgPiBpbnB1dCArIC51aS5sYWJlbCxcbi51aS5hY3Rpb24uaW5wdXQuZXJyb3I6bm90KC5sZWZ0KSA+IGlucHV0ICsgLnVpLmJ1dHRvbixcbi51aS5yaWdodC5sYWJlbGVkLmlucHV0LmVycm9yOm5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pID4gaW5wdXQgKyAudWkubGFiZWwge1xuICBib3JkZXItcmlnaHQ6IEBib3JkZXJXaWR0aCBzb2xpZCBAZXJyb3JCb3JkZXI7XG59XG4udWkuZm9ybSA+IC5maWVsZC5lcnJvciA+IC51aS5yaWdodC5sYWJlbGVkLmlucHV0Om5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pID4gLnVpLmxhYmVsOmZpcnN0LWNoaWxkLFxuLnVpLnJpZ2h0LmxhYmVsZWQuaW5wdXQuZXJyb3I6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSkgPiAudWkubGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogQGJvcmRlcldpZHRoIHNvbGlkIEBlcnJvckJvcmRlcjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFjdGlvbi5pbnB1dCA+IC5idXR0b24sXG4udWkuYWN0aW9uLmlucHV0ID4gLmJ1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4OiAwIDAgYXV0bztcbn1cbi51aS5hY3Rpb24uaW5wdXQgPiAuYnV0dG9uLFxuLnVpLmFjdGlvbi5pbnB1dCA+IC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiBAdmVydGljYWxQYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogQHZlcnRpY2FsUGFkZGluZztcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBCdXR0b24gb24gUmlnaHQgKi9cbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiBpbnB1dCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCksXG4udWkuYWN0aW9uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0pID4gLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuYnV0dG9uczpub3QoOmZpcnN0LWNoaWxkKSA+IC5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLnVpLmFjdGlvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdKSA+IC5kcm9wZG93bjpsYXN0LWNoaWxkLFxuLnVpLmFjdGlvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdKSA+IC5idXR0b246bGFzdC1jaGlsZCxcbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuYnV0dG9uczpsYXN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzIDA7XG59XG5cbi8qIElucHV0IEZvY3VzICovXG4udWkuYWN0aW9uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0pID4gaW5wdXQ6Zm9jdXMge1xuICBib3JkZXItcmlnaHQtY29sb3I6IEBmb2N1c0JvcmRlckNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJ1dHRvbiBvbiBMZWZ0ICovXG4udWlbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0uaW5wdXQgPiBpbnB1dCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IC5kcm9wZG93bixcbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IC5idXR0b24sXG4udWlbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0uaW5wdXQgPiAuYnV0dG9ucyA+IC5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gLmRyb3Bkb3duOmZpcnN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gLmJ1dHRvbjpmaXJzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IC5idXR0b25zOmZpcnN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgMCAwIEBib3JkZXJSYWRpdXM7XG59XG4vKiBJbnB1dCBGb2N1cyAqL1xuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gaW5wdXQ6Zm9jdXMge1xuICBib3JkZXItbGVmdC1jb2xvcjogQGZvY3VzQm9yZGVyQ29sb3IgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTdGFuZGFyZCAqL1xuLnVpLmludmVydGVkLmlucHV0ID4gaW5wdXQge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5pbnB1dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4udWkuZmx1aWQuaW5wdXQgPiBpbnB1dCB7XG4gIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuaW5wdXQge1xuICBmb250LXNpemU6IEByZWxhdGl2ZU1pbmk7XG59XG4udWkudGlueS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlVGlueTtcbn1cbi51aS5zbWFsbC5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlU21hbGw7XG59XG4udWkuaW5wdXQge1xuICBmb250LXNpemU6IEByZWxhdGl2ZU1lZGl1bTtcbn1cbi51aS5sYXJnZS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlTGFyZ2U7XG59XG4udWkuYmlnLmlucHV0IHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVCaWc7XG59XG4udWkuaHVnZS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlSHVnZTtcbn1cbi51aS5tYXNzaXZlLmlucHV0IHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVNYXNzaXZlO1xufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBMYWJlbFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnZWxlbWVudCc7XG5AZWxlbWVudCA6ICdsYWJlbCc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIExhYmVsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogQHZlcnRpY2FsQWxpZ247XG5cbiAgbWFyZ2luOiBAdmVydGljYWxNYXJnaW4gQGhvcml6b250YWxNYXJnaW47XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmRDb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogQGJhY2tncm91bmRJbWFnZTtcbiAgcGFkZGluZzogQHZlcnRpY2FsUGFkZGluZyBAaG9yaXpvbnRhbFBhZGRpbmc7XG4gIGNvbG9yOiBAY29sb3I7XG5cbiAgdGV4dC10cmFuc2Zvcm06IEB0ZXh0VHJhbnNmb3JtO1xuICBmb250LXdlaWdodDogQGZvbnRXZWlnaHQ7XG5cbiAgYm9yZGVyOiBAYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICB0cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcbn1cblxuLnVpLmxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4udWkubGFiZWw6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLyogTGluayAqL1xuYS51aS5sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogSW5zaWRlIExpbmsgKi9cbi51aS5sYWJlbCA+IGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiBAbGlua09wYWNpdHk7XG4gIHRyYW5zaXRpb246IEBsaW5rVHJhbnNpdGlvbjtcbn1cbi51aS5sYWJlbCA+IGE6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBJbWFnZSAqL1xuLnVpLmxhYmVsID4gaW1nIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgaGVpZ2h0OiBAaW1hZ2VIZWlnaHQ7XG59XG5cbi8qIEljb24gKi9cbi51aS5sZWZ0Lmljb24ubGFiZWwgPiAuaWNvbixcbi51aS5sYWJlbCA+IC5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMCBAaWNvbkRpc3RhbmNlIDAgMDtcbn1cblxuLyogRGV0YWlsICovXG4udWkubGFiZWwgPiAuZGV0YWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmb250LXdlaWdodDogQGRldGFpbEZvbnRXZWlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiBAZGV0YWlsTWFyZ2luO1xuICBvcGFjaXR5OiBAZGV0YWlsT3BhY2l0eTtcbn1cbi51aS5sYWJlbCA+IC5kZXRhaWwgLmljb24ge1xuICBtYXJnaW46IDAgQGRldGFpbEljb25EaXN0YW5jZSAwIDA7XG59XG5cbi8qIFJlbW92YWJsZSBsYWJlbCAqL1xuLnVpLmxhYmVsID4gLmNsb3NlLmljb24sXG4udWkubGFiZWwgPiAuZGVsZXRlLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogQGRlbGV0ZVNpemU7XG4gIG9wYWNpdHk6IEBkZWxldGVPcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBAZGVsZXRlVHJhbnNpdGlvbjtcbn1cbi51aS5sYWJlbCA+IC5jbG9zZS5pY29uOmhvdmVyLFxuLnVpLmxhYmVsID4gLmRlbGV0ZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogQmFja3dhcmQgY29tcGF0aWJsZSBwb3NpdGlvbmluZyAqL1xuLnVpLmxhYmVsLmxlZnQuaWNvbiA+IC5jbG9zZS5pY29uLFxuLnVpLmxhYmVsLmxlZnQuaWNvbiA+IC5kZWxldGUuaWNvbiB7XG4gIG1hcmdpbjogMCBAZGVsZXRlTWFyZ2luIDAgMDtcbn1cbi51aS5sYWJlbDpub3QoLmljb24pID4gLmNsb3NlLmljb24sXG4udWkubGFiZWw6bm90KC5pY29uKSA+IC5kZWxldGUuaWNvbiB7XG4gIG1hcmdpbjogMCAwIDAgQGRlbGV0ZU1hcmdpbjtcbn1cblxuLyogTGFiZWwgZm9yIG9ubHkgYW4gaWNvbiAqL1xuLnVpLmljb24ubGFiZWwgPiAuaWNvbiB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiBSaWdodCBTaWRlIEljb24gKi9cbi51aS5yaWdodC5pY29uLmxhYmVsID4gLmljb24ge1xuICBtYXJnaW46IDAgMCAwIEBpY29uRGlzdGFuY2U7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEdyb3VwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbHMgPiAubGFiZWwge1xuICBtYXJnaW46IDAgQGdyb3VwSG9yaXpvbnRhbE1hcmdpbiBAZ3JvdXBWZXJ0aWNhbE1hcmdpbiAwO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5oZWFkZXIgPiAudWkubGFiZWwge1xuICBtYXJnaW4tdG9wOiBAbGluZUhlaWdodE9mZnNldDtcbn1cblxuXG4vKiBSZW1vdmUgYm9yZGVyIHJhZGl1cyBvbiBhdHRhY2hlZCBzZWdtZW50ICovXG4udWkuYXR0YWNoZWQuc2VnbWVudCA+IC51aS50b3AubGVmdC5hdHRhY2hlZC5sYWJlbCxcbi51aS5ib3R0b20uYXR0YWNoZWQuc2VnbWVudCA+IC51aS50b3AubGVmdC5hdHRhY2hlZC5sYWJlbCAge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xufVxuLnVpLmF0dGFjaGVkLnNlZ21lbnQgPiAudWkudG9wLnJpZ2h0LmF0dGFjaGVkLmxhYmVsLFxuLnVpLmJvdHRvbS5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLnRvcC5yaWdodC5hdHRhY2hlZC5sYWJlbCAge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbi51aS50b3AuYXR0YWNoZWQuc2VnbWVudCA+IC51aS5ib3R0b20ubGVmdC5hdHRhY2hlZC5sYWJlbCAge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLnVpLnRvcC5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLmJvdHRvbS5yaWdodC5hdHRhY2hlZC5sYWJlbCAge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLyogUGFkZGluZyBvbiBuZXh0IGNvbnRlbnQgYWZ0ZXIgYSBsYWJlbCAqL1xuLnVpLnRvcC5hdHRhY2hlZC5sYWJlbCB+IC51aS5ib3R0b20uYXR0YWNoZWQubGFiZWwgKyA6bm90KC5hdHRhY2hlZCksXG4udWkudG9wLmF0dGFjaGVkLmxhYmVsICsgOm5vdCguYXR0YWNoZWQpIHtcbiAgbWFyZ2luLXRvcDogQGF0dGFjaGVkU2VnbWVudFBhZGRpbmcgIWltcG9ydGFudDtcbn1cbi51aS5ib3R0b20uYXR0YWNoZWQubGFiZWwgfiA6bGFzdC1jaGlsZDpub3QoLmF0dGFjaGVkKSB7XG4gIG1hcmdpbi10b3A6MDtcbiAgbWFyZ2luLWJvdHRvbTogQGF0dGFjaGVkU2VnbWVudFBhZGRpbmcgIWltcG9ydGFudDtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuaW1hZ2UubGFiZWwge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXgtd2lkdGg6IDk5OTlweDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICBiYWNrZ3JvdW5kOiBAaW1hZ2VMYWJlbEJhY2tncm91bmQ7XG4gIHBhZGRpbmc6IEBpbWFnZUxhYmVsUGFkZGluZztcbiAgYm9yZGVyLXJhZGl1czogQGltYWdlTGFiZWxCb3JkZXJSYWRpdXM7XG4gIGJveC1zaGFkb3c6IEBpbWFnZUxhYmVsQm94U2hhZG93O1xufVxuXG4udWkuaW1hZ2UubGFiZWwgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gIGhlaWdodDogQGltYWdlTGFiZWxJbWFnZUhlaWdodDtcbiAgbWFyZ2luOiBAaW1hZ2VMYWJlbEltYWdlTWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiBAaW1hZ2VMYWJlbEltYWdlQm9yZGVyUmFkaXVzO1xufVxuXG4udWkuaW1hZ2UubGFiZWwgLmRldGFpbCB7XG4gIGJhY2tncm91bmQ6IEBpbWFnZUxhYmVsRGV0YWlsQmFja2dyb3VuZDtcbiAgbWFyZ2luOiBAaW1hZ2VMYWJlbERldGFpbE1hcmdpbjtcbiAgcGFkZGluZzogQGltYWdlTGFiZWxEZXRhaWxQYWRkaW5nO1xuICBib3JkZXItcmFkaXVzOiAwIEBpbWFnZUxhYmVsQm9yZGVyUmFkaXVzIEBpbWFnZUxhYmVsQm9yZGVyUmFkaXVzIDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgVGFnXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWcubGFiZWxzIC5sYWJlbCxcbi51aS50YWcubGFiZWwge1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogQHRhZ0hvcml6b250YWxQYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiBAdGFnSG9yaXpvbnRhbFBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogMCBAYm9yZGVyUmFkaXVzIEBib3JkZXJSYWRpdXMgMDtcbiAgdHJhbnNpdGlvbjogQHRhZ1RyYW5zaXRpb247XG59XG4udWkudGFnLmxhYmVscyAubGFiZWw6YmVmb3JlLFxuLnVpLnRhZy5sYWJlbDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xuXG4gICAgdG9wOiBAdGFnVHJpYW5nbGVUb3BPZmZzZXQ7XG4gICAgcmlnaHQ6IEB0YWdUcmlhbmdsZVJpZ2h0T2Zmc2V0O1xuICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBAdGFnVHJpYW5nbGVCYWNrZ3JvdW5kSW1hZ2U7XG5cbiAgICB3aWR0aDogQHRhZ1RyaWFuZ2xlU2l6ZTtcbiAgICBoZWlnaHQ6IEB0YWdUcmlhbmdsZVNpemU7XG4gICAgdHJhbnNpdGlvbjogQHRhZ1RyYW5zaXRpb247XG59XG5cblxuLnVpLnRhZy5sYWJlbHMgLmxhYmVsOmFmdGVyLFxuLnVpLnRhZy5sYWJlbDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAtKEB0YWdDaXJjbGVTaXplIC8gMik7XG5cbiAgbWFyZ2luLXRvcDogLShAdGFnQ2lyY2xlU2l6ZSAvIDIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGFnQ2lyY2xlQ29sb3I7XG4gIHdpZHRoOiBAdGFnQ2lyY2xlU2l6ZTtcbiAgaGVpZ2h0OiBAdGFnQ2lyY2xlU2l6ZTtcblxuICBib3gtc2hhZG93OiBAdGFnQ2lyY2xlQm94U2hhZG93O1xuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG59XG4udWkuYmFzaWMudGFnLmxhYmVscyAubGFiZWw6YmVmb3JlLFxuLnVpLmJhc2ljLnRhZy5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci13aWR0aDogQGJhc2ljQm9yZGVyV2lkdGggMCAwIEBiYXNpY0JvcmRlcldpZHRoO1xuICBib3JkZXItc3R5bGU6IGluaGVyaXQ7XG4gIHJpZ2h0OiBAYmFzaWNCb3JkZXJGdWxsV2lkdGhPZmZzZXQ7XG59XG4udWkuYmFzaWMudGFnLmxhYmVscyAubGFiZWw6YWZ0ZXIsXG4udWkuYmFzaWMudGFnLmxhYmVsOmFmdGVyIHtcbiAgYm94LXNoYWRvdzogQGJhc2ljVGFnQ2lyY2xlQm94U2hhZG93O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDb3JuZXIgTGFiZWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvcm5lci5sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYm9yZGVyLWNvbG9yOiBAYmFja2dyb3VuZENvbG9yO1xuXG4gIHdpZHRoOiBAY29ybmVyVHJpYW5nbGVTaXplO1xuICBoZWlnaHQ6IEBjb3JuZXJUcmlhbmdsZVNpemU7XG4gIHotaW5kZXg6IEBjb3JuZXJUcmlhbmdsZVpJbmRleDtcbiAgdHJhbnNpdGlvbjogQGNvcm5lclRyaWFuZ2xlVHJhbnNpdGlvbjtcbn1cblxuLyogSWNvbiBMYWJlbCAqL1xuLnVpLmNvcm5lci5sYWJlbHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi51aS5jb3JuZXIubGFiZWw6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IC0xO1xuXG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIGJvcmRlci10b3A6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogQGNvcm5lclRyaWFuZ2xlU2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogQGNvcm5lclRyaWFuZ2xlU2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uOiBAY29ybmVyVHJpYW5nbGVUcmFuc2l0aW9uO1xufVxuXG4udWkuY29ybmVyLmxhYmVsIC5pY29uIHtcbiAgY3Vyc29yOiBpbmhlcml0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogQGNvcm5lckljb25Ub3BPZmZzZXQ7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBAY29ybmVySWNvblJpZ2h0T2Zmc2V0O1xuICBmb250LXNpemU6IEBjb3JuZXJJY29uU2l6ZTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBMZWZ0IENvcm5lciAqL1xuLnVpLmxlZnQuY29ybmVyLmxhYmVsLFxuLnVpLmxlZnQuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG4udWkubGVmdC5jb3JuZXIubGFiZWw6YWZ0ZXIge1xuICBib3JkZXItdG9wOiBAY29ybmVyVHJpYW5nbGVTaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IEBjb3JuZXJUcmlhbmdsZVNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gIGJvcmRlci10b3AtY29sb3I6IGluaGVyaXQ7XG59XG4udWkubGVmdC5jb3JuZXIubGFiZWwgLmljb24ge1xuICBsZWZ0OiBAY29ybmVySWNvbkxlZnRPZmZzZXQ7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vKiBTZWdtZW50ICovXG4udWkuc2VnbWVudCA+IC51aS5jb3JuZXIubGFiZWwge1xuICB0b3A6IC0xcHg7XG4gIHJpZ2h0OiAtMXB4O1xufVxuLnVpLnNlZ21lbnQgPiAudWkubGVmdC5jb3JuZXIubGFiZWwge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogLTFweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUmliYm9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5yaWJib24ubGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgYm9yZGVyLXJhZGl1czogMCBAYm9yZGVyUmFkaXVzIEBib3JkZXJSYWRpdXMgMDtcbiAgYm9yZGVyLWNvbG9yOiBAcmliYm9uU2hhZG93Q29sb3I7XG59XG5cbi51aS5yaWJib24ubGFiZWw6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuXG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwIEByaWJib25UcmlhbmdsZVNpemUgQHJpYmJvblRyaWFuZ2xlU2l6ZSAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IGluaGVyaXQ7XG5cbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbn1cbi8qIFBvc2l0aW9uaW5nICovXG4udWkucmliYm9uLmxhYmVsIHtcbiAgbGVmdDogQHJpYmJvbk9mZnNldDtcbiAgbWFyZ2luLXJpZ2h0OiAtQHJpYmJvblRyaWFuZ2xlU2l6ZTtcbiAgcGFkZGluZy1sZWZ0OiBAcmliYm9uRGlzdGFuY2U7XG4gIHBhZGRpbmctcmlnaHQ6IEByaWJib25UcmlhbmdsZVNpemU7XG59XG4udWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgbGVmdDogQHJpZ2h0UmliYm9uT2Zmc2V0O1xuICBwYWRkaW5nLWxlZnQ6IEByaWJib25UcmlhbmdsZVNpemU7XG4gIHBhZGRpbmctcmlnaHQ6IEByaWJib25EaXN0YW5jZTtcbn1cbi51aS5iYXNpYy5yaWJib24ubGFiZWwge1xuICBwYWRkaW5nLXRvcDogQGJhc2ljUmliYm9uT2Zmc2V0O1xuICBwYWRkaW5nLWJvdHRvbTogQGJhc2ljUmliYm9uT2Zmc2V0O1xufVxuLnVpLmJhc2ljLnJpYmJvbi5sYWJlbDpub3QoW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXSkge1xuICBwYWRkaW5nLWxlZnQ6IEBiYXNpY1JpYmJvblRyaWFuZ2xlU2l6ZU9mZnNldDtcbiAgcGFkZGluZy1yaWdodDogQGJhc2ljUmliYm9uVHJpYW5nbGVTaXplO1xufVxuLnVpLmJhc2ljW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXS5sYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogQGJhc2ljUmliYm9uVHJpYW5nbGVTaXplO1xuICBwYWRkaW5nLXJpZ2h0OiBAYmFzaWNSaWJib25UcmlhbmdsZVNpemVPZmZzZXQ7XG59XG4udWkuYmFzaWMucmliYm9uLmxhYmVsOjphZnRlciB7XG4gIHRvcDogQGJhc2ljQm9yZGVyRnVsbFdpZHRoT2Zmc2V0O1xufVxuLnVpLmJhc2ljLnJpYmJvbi5sYWJlbDpub3QoW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXSk6OmFmdGVyIHtcbiAgbGVmdDogQGJhc2ljQm9yZGVyV2lkdGhPZmZzZXQ7XG59XG4udWkuYmFzaWNbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsOjphZnRlciB7XG4gIHJpZ2h0OiBAYmFzaWNCb3JkZXJXaWR0aE9mZnNldDtcbn1cblxuLyogUmlnaHQgUmliYm9uICovXG4udWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cyAwIDAgQGJvcmRlclJhZGl1cztcbn1cbi51aVtjbGFzcyo9XCJyaWdodCByaWJib25cIl0ubGFiZWw6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcblxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IEByaWJib25UcmlhbmdsZVNpemUgQHJpYmJvblRyaWFuZ2xlU2l6ZSAwIDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtY29sb3I6IGluaGVyaXQ7XG59XG5cbi8qIEluc2lkZSBUYWJsZSAqL1xuLnVpLmltYWdlID4gLnJpYmJvbi5sYWJlbCxcbi51aS5jYXJkIC5pbWFnZSA+IC5yaWJib24ubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogQHJpYmJvbkltYWdlVG9wRGlzdGFuY2U7XG59XG4udWkuY2FyZCAuaW1hZ2UgPiAudWkucmliYm9uLmxhYmVsLFxuLnVpLmltYWdlID4gLnVpLnJpYmJvbi5sYWJlbCB7XG4gIGxlZnQ6IEByaWJib25JbWFnZU9mZnNldDtcbn1cbi51aS5jYXJkIC5pbWFnZSA+IC51aVtjbGFzcyo9XCJyaWdodCByaWJib25cIl0ubGFiZWwsXG4udWkuaW1hZ2UgPiAudWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgbGVmdDogQHJpZ2h0UmliYm9uSW1hZ2VPZmZzZXQ7XG4gIHBhZGRpbmctbGVmdDogQGhvcml6b250YWxQYWRkaW5nO1xufVxuXG4vKiBJbnNpZGUgVGFibGUgKi9cbi51aS50YWJsZSB0ZCA+IC51aS5yaWJib24ubGFiZWwge1xuICBsZWZ0OiBAcmliYm9uVGFibGVPZmZzZXQ7XG59XG4udWkudGFibGUgdGQgPiAudWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgbGVmdDogQHJpZ2h0UmliYm9uVGFibGVPZmZzZXQ7XG4gIHBhZGRpbmctbGVmdDogQGhvcml6b250YWxQYWRkaW5nO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQXR0YWNoZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5sYWJlbCxcbi51aS5hdHRhY2hlZC5sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHBhZGRpbmc6IEBhdHRhY2hlZFZlcnRpY2FsUGFkZGluZyBAYXR0YWNoZWRIb3Jpem9udGFsUGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiBAYXR0YWNoZWRDb3JuZXJCb3JkZXJSYWRpdXMgQGF0dGFjaGVkQ29ybmVyQm9yZGVyUmFkaXVzIDAgMDtcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ubGFiZWwge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIEBhdHRhY2hlZENvcm5lckJvcmRlclJhZGl1cyBAYXR0YWNoZWRDb3JuZXJCb3JkZXJSYWRpdXM7XG59XG5cbi51aVtjbGFzcyo9XCJ0b3AgbGVmdCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IEBhdHRhY2hlZENvcm5lckJvcmRlclJhZGl1cyAwIEBhdHRhY2hlZEJvcmRlclJhZGl1cyAwO1xufVxuXG4udWlbY2xhc3MqPVwidG9wIHJpZ2h0IGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgd2lkdGg6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwIEBhdHRhY2hlZENvcm5lckJvcmRlclJhZGl1cyAwIEBhdHRhY2hlZEJvcmRlclJhZGl1cztcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gbGVmdCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIHdpZHRoOiBhdXRvO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMCBAYXR0YWNoZWRCb3JkZXJSYWRpdXMgMCBAYXR0YWNoZWRDb3JuZXJCb3JkZXJSYWRpdXM7XG59XG4udWlbY2xhc3MqPVwiYm90dG9tIHJpZ2h0IGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogQGF0dGFjaGVkQm9yZGVyUmFkaXVzIDAgQGF0dGFjaGVkQ29ybmVyQm9yZGVyUmFkaXVzIDA7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxhYmVsLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBsYWJlbEhvdmVyQmFja2dyb3VuZENvbG9yO1xuICBib3JkZXItY29sb3I6IEBsYWJlbEhvdmVyQmFja2dyb3VuZENvbG9yO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IEBsYWJlbEhvdmVyQmFja2dyb3VuZEltYWdlO1xuICBjb2xvcjogQGxhYmVsSG92ZXJUZXh0Q29sb3I7XG59XG4udWkubGFiZWxzIGEubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5sYWJlbDpob3ZlcjpiZWZvcmUge1xuICBjb2xvcjogQGxhYmVsSG92ZXJUZXh0Q29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFjdGl2ZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBsYWJlbEFjdGl2ZUJhY2tncm91bmRDb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiBAbGFiZWxBY3RpdmVCYWNrZ3JvdW5kQ29sb3I7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogQGxhYmVsQWN0aXZlQmFja2dyb3VuZEltYWdlO1xuICBjb2xvcjogQGxhYmVsQWN0aXZlVGV4dENvbG9yO1xufVxuLnVpLmFjdGl2ZS5sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGFiZWxBY3RpdmVCYWNrZ3JvdW5kQ29sb3I7XG4gIGJhY2tncm91bmQtaW1hZ2U6IEBsYWJlbEFjdGl2ZUJhY2tncm91bmRJbWFnZTtcbiAgY29sb3I6IEBsYWJlbEFjdGl2ZVRleHRDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZSBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGFiZWxzIGEuYWN0aXZlLmxhYmVsOmhvdmVyLFxuYS51aS5hY3RpdmUubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGFiZWxBY3RpdmVIb3ZlckJhY2tncm91bmRDb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiBAbGFiZWxBY3RpdmVIb3ZlckJhY2tncm91bmRDb2xvcjtcblxuICBiYWNrZ3JvdW5kLWltYWdlOiBAbGFiZWxBY3RpdmVIb3ZlckJhY2tncm91bmRJbWFnZTtcbiAgY29sb3I6IEBsYWJlbEFjdGl2ZUhvdmVyVGV4dENvbG9yO1xufVxuLnVpLmxhYmVscyBhLmFjdGl2ZS5sYWJlbDpob3ZlcjpiZWZvcmUsXG5hLnVpLmFjdGl2ZS5sYWJlbDpob3ZlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGFiZWxBY3RpdmVIb3ZlckJhY2tncm91bmRDb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogQGxhYmVsQWN0aXZlSG92ZXJCYWNrZ3JvdW5kSW1hZ2U7XG4gIGNvbG9yOiBAbGFiZWxBY3RpdmVIb3ZlclRleHRDb2xvcjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZpc2libGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxhYmVscy52aXNpYmxlIC5sYWJlbCxcbi51aS5sYWJlbC52aXNpYmxlOm5vdCguZHJvcGRvd24pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSGlkZGVuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbHMuaGlkZGVuIC5sYWJlbCxcbi51aS5sYWJlbC5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmFzaWMubGFiZWxzIC5sYWJlbCxcbi51aS5iYXNpYy5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IEBiYXNpY0JhY2tncm91bmQ7XG4gIGJvcmRlcjogQGJhc2ljQm9yZGVyO1xuICBjb2xvcjogQGJhc2ljQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBiYXNpY0JveFNoYWRvdztcbn1cblxuLyogTGluayAqL1xuLnVpLmJhc2ljLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5iYXNpYy5sYWJlbDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogQGJhc2ljSG92ZXJCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGJhc2ljSG92ZXJDb2xvcjtcbiAgYm94LXNoYWRvdzogQGJhc2ljSG92ZXJCb3hTaGFkb3c7XG59XG5cbi8qIFBvaW50aW5nICovXG4udWkuYmFzaWMucG9pbnRpbmcubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbC5mbHVpZCxcbi51aS5mbHVpZC5sYWJlbHMgPiAubGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmxhYmVscyAubGFiZWwsXG4udWkuaW52ZXJ0ZWQubGFiZWwge1xuICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRCYWNrZ3JvdW5kQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuY29ybmVyLmxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6IEBpbnZlcnRlZEJhY2tncm91bmRDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5jb3JuZXIubGFiZWw6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogQGJhY2tncm91bmRDb2xvcjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xufVxuLnVpLmludmVydGVkLmJhc2ljLmxhYmVscyAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWwsXG4udWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWw6aG92ZXIge1xuICBib3JkZXItY29sb3I6IEBiYXNpY0ludmVydGVkQm9yZGVyQ29sb3I7XG4gIGJhY2tncm91bmQ6IEBibGFjaztcbn1cbi51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbDpob3ZlciB7XG4gIGNvbG9yOiBAbGlua0NvbG9yO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMse1xuICBAY29sb3IgICAgICAgICAgICAgICAgICAgICAgOiByZXBsYWNlKEBrZXksJ0AnLCcnKTtcbiAgQGlzRGFyayAgICAgICAgICAgICAgICAgICAgIDogQGNvbG9yc1tAQGNvbG9yXVtpc0RhcmtdO1xuICBAX2xhYmVsQ29sb3IgICAgICAgICAgICAgICAgOiBAY29sb3JzW0BAY29sb3JdW2NvbG9yXTtcbiAgQF9sYWJlbEludmVydGVkQ29sb3IgICAgICAgIDogQGNvbG9yc1tAQGNvbG9yXVtsaWdodF07XG4gIEBfbGFiZWxUZXh0Q29sb3IgICAgICAgICAgICA6IEBjb2xvcnNbQEBjb2xvcl1bdGV4dF07XG4gIEBfbGFiZWxIb3ZlciAgICAgICAgICAgICAgICA6IEBjb2xvcnNbQEBjb2xvcl1baG92ZXJdO1xuICBAX2xhYmVsSW52ZXJ0ZWRIb3ZlciAgICAgICAgOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0SG92ZXJdO1xuICBAX2xhYmVsSG92ZXJUZXh0Q29sb3IgICAgICAgOiBAY29sb3JzW0BAY29sb3JdW2hvdmVyVGV4dF07XG4gIEBfbGFiZWxSaWJib25TaGFkb3cgICAgICAgICA6IEBjb2xvcnNbQEBjb2xvcl1bcmliYm9uXTtcbiAgQF9sYWJlbEludmVydGVkUmliYm9uU2hhZG93IDogQGNvbG9yc1tAQGNvbG9yXVtpbnZlcnRlZFJpYmJvbl07XG5cbiAgLnVpLkB7Y29sb3J9LmxhYmVscyAubGFiZWwsXG4gIC51aS51aS51aS5Ae2NvbG9yfS5sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQF9sYWJlbENvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogQF9sYWJlbENvbG9yO1xuICAgIGNvbG9yOiBAX2xhYmVsVGV4dENvbG9yO1xuICB9XG4gIC8qIExpbmsgKi9cbiAgLnVpLkB7Y29sb3J9LmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuICBhLnVpLnVpLnVpLkB7Y29sb3J9LmxhYmVsOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBfbGFiZWxIb3ZlcjtcbiAgICBib3JkZXItY29sb3I6IEBfbGFiZWxIb3ZlcjtcbiAgICBjb2xvcjogQF9sYWJlbEhvdmVyVGV4dENvbG9yO1xuICB9XG4gIC8qIFJpYmJvbiAqL1xuICAudWkudWkudWkuQHtjb2xvcn0ucmliYm9uLmxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6IEBfbGFiZWxSaWJib25TaGFkb3c7XG4gIH1cbiAgLyogQmFzaWMgKi9cbiAgLnVpLmJhc2ljLmxhYmVscyAuQHtjb2xvcn0ubGFiZWwsXG4gIC51aS51aS51aS5iYXNpYy5Ae2NvbG9yfS5sYWJlbCB7XG4gICAgYmFja2dyb3VuZDogQGJhc2ljQmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6IEBfbGFiZWxDb2xvcjtcbiAgICBjb2xvcjogQF9sYWJlbENvbG9yO1xuICB9XG4gIC51aS5iYXNpYy5sYWJlbHMgYS5Ae2NvbG9yfS5sYWJlbDpob3ZlcixcbiAgYS51aS51aS51aS5iYXNpYy5Ae2NvbG9yfS5sYWJlbDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogQGJhc2ljQmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6IEBfbGFiZWxIb3ZlcjtcbiAgICBjb2xvcjogQF9sYWJlbEhvdmVyO1xuICB9XG4gIC8qIEludmVydGVkICovXG4gIC51aS5pbnZlcnRlZC5sYWJlbHMgLkB7Y29sb3J9LmxhYmVsLFxuICAudWkudWkudWkuaW52ZXJ0ZWQuQHtjb2xvcn0ubGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBfbGFiZWxJbnZlcnRlZENvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogQF9sYWJlbEludmVydGVkQ29sb3I7XG4gICAgY29sb3I6IEBibGFjaztcbiAgfVxuICAvKiBJbnZlcnRlZCBMaW5rICovXG4gIC51aS5pbnZlcnRlZC5sYWJlbHMgYS5Ae2NvbG9yfS5sYWJlbDpob3ZlcixcbiAgYS51aS51aS51aS5pbnZlcnRlZC5Ae2NvbG9yfS5sYWJlbDpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAX2xhYmVsSW52ZXJ0ZWRIb3ZlcjtcbiAgICBib3JkZXItY29sb3I6IEBfbGFiZWxJbnZlcnRlZEhvdmVyO1xuICAgICYgd2hlbiBub3QgKEBpc0RhcmspIHtcbiAgICAgIGNvbG9yOiBAYmxhY2s7XG4gICAgfVxuICAgICYgd2hlbiAoQGlzRGFyaykge1xuICAgICAgY29sb3I6IEBfbGFiZWxUZXh0Q29sb3I7XG4gICAgfVxuICB9XG4gIC8qIEludmVydGVkIFJpYmJvbiAqL1xuICAudWkudWkudWkuaW52ZXJ0ZWQuQHtjb2xvcn0ucmliYm9uLmxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6IEBfbGFiZWxJbnZlcnRlZFJpYmJvblNoYWRvdztcbiAgfVxuICAvKiBJbnZlcnRlZCBCYXNpYyAqL1xuICAudWkuaW52ZXJ0ZWQuYmFzaWMubGFiZWxzIC5Ae2NvbG9yfS5sYWJlbCxcbiAgLnVpLnVpLnVpLmludmVydGVkLmJhc2ljLkB7Y29sb3J9LmxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogQF9sYWJlbEludmVydGVkQ29sb3I7XG4gICAgJiB3aGVuIG5vdCAoQGlzRGFyaykge1xuICAgICAgY29sb3I6IEBfbGFiZWxJbnZlcnRlZENvbG9yO1xuICAgIH1cbiAgICAmIHdoZW4gKEBpc0RhcmspIHtcbiAgICAgIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG4gICAgfVxuICB9XG4gIC51aS5pbnZlcnRlZC5iYXNpYy5sYWJlbHMgYS5Ae2NvbG9yfS5sYWJlbDpob3ZlcixcbiAgYS51aS51aS51aS5pbnZlcnRlZC5iYXNpYy5Ae2NvbG9yfS5sYWJlbDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiBAX2xhYmVsSW52ZXJ0ZWRIb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRCYWNrZ3JvdW5kO1xuICAgICYgd2hlbiBub3QgKEBpc0RhcmspIHtcbiAgICAgIGNvbG9yOiBAX2xhYmVsSW52ZXJ0ZWRIb3ZlcjtcbiAgICB9XG4gIH1cbiAgLyogSW52ZXJ0ZWQgQmFzaWMgVGFncyAqL1xuICAudWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAuQHtjb2xvcn0ubGFiZWwsXG4gIC51aS51aS51aS5pbnZlcnRlZC5Ae2NvbG9yfS5iYXNpYy50YWcubGFiZWwge1xuICAgIGJvcmRlcjogQGludmVydGVkQm9yZGVyU2l6ZSBzb2xpZCBAX2xhYmVsSW52ZXJ0ZWRDb2xvcjtcbiAgfVxuICAudWkuaW52ZXJ0ZWQuYmFzaWMudGFnLmxhYmVscyAuQHtjb2xvcn0ubGFiZWw6YmVmb3JlLFxuICAudWkudWkudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uYmFzaWMudGFnLmxhYmVsOmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci13aWR0aDogQGludmVydGVkQm9yZGVyU2l6ZSAwIDAgQGludmVydGVkQm9yZGVyU2l6ZTtcbiAgICBib3JkZXItc3R5bGU6IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGludmVydGVkQmFja2dyb3VuZDtcbiAgICByaWdodDogZSglKFwiY2FsYygxMDAlJSArICVkKVwiLCBAaW52ZXJ0ZWRCb3JkZXJTaXplKSk7XG4gIH1cbn0pXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBIb3Jpem9udGFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ob3Jpem9udGFsLmxhYmVscyAubGFiZWwsXG4udWkuaG9yaXpvbnRhbC5sYWJlbCB7XG4gIG1hcmdpbjogMCBAaG9yaXpvbnRhbExhYmVsTWFyZ2luIDAgMDtcblxuICBwYWRkaW5nOiBAaG9yaXpvbnRhbExhYmVsVmVydGljYWxQYWRkaW5nIEBob3Jpem9udGFsUGFkZGluZztcbiAgbWluLXdpZHRoOiBAaG9yaXpvbnRhbExhYmVsTWluV2lkdGg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDaXJjdWxhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2lyY3VsYXIubGFiZWxzIC5sYWJlbCxcbi51aS5jaXJjdWxhci5sYWJlbCB7XG4gIG1pbi13aWR0aDogQGNpcmN1bGFyTWluU2l6ZTtcbiAgbWluLWhlaWdodDogQGNpcmN1bGFyTWluU2l6ZTtcblxuICBwYWRkaW5nOiBAY2lyY3VsYXJQYWRkaW5nICFpbXBvcnRhbnQ7XG5cbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG59XG4udWkuZW1wdHkuY2lyY3VsYXIubGFiZWxzIC5sYWJlbCxcbi51aS5lbXB0eS5jaXJjdWxhci5sYWJlbCB7XG4gIG1pbi13aWR0aDogMDtcbiAgbWluLWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IEBlbXB0eUNpcmNsZVNpemU7XG4gIGhlaWdodDogQGVtcHR5Q2lyY2xlU2l6ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBQb2ludGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucG9pbnRpbmcubGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51aS5hdHRhY2hlZC5wb2ludGluZy5sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnVpLnBvaW50aW5nLmxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGluaGVyaXQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiBAcG9pbnRpbmdCb3JkZXJDb2xvcjtcbn1cbi8qIEFycm93ICovXG4udWkucG9pbnRpbmcubGFiZWw6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXG4gIHotaW5kZXg6IEBwb2ludGluZ1RyaWFuZ2xlWkluZGV4O1xuICB3aWR0aDogQHBvaW50aW5nVHJpYW5nbGVTaXplO1xuICBoZWlnaHQ6IEBwb2ludGluZ1RyaWFuZ2xlU2l6ZTtcbiAgdHJhbnNpdGlvbjogQHBvaW50aW5nVHJpYW5nbGVUcmFuc2l0aW9uO1xufVxuXG4vKi0tLSBBYm92ZSAtLS0qL1xuLnVpLnBvaW50aW5nLmxhYmVsLFxuLnVpW2NsYXNzKj1cInBvaW50aW5nIGFib3ZlXCJdLmxhYmVsIHtcbiAgbWFyZ2luLXRvcDogQHBvaW50aW5nVmVydGljYWxEaXN0YW5jZTtcbn1cbi51aS5wb2ludGluZy5sYWJlbDpiZWZvcmUsXG4udWlbY2xhc3MqPVwicG9pbnRpbmcgYWJvdmVcIl0ubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiBAYm9yZGVyV2lkdGggMCAwIEBib3JkZXJXaWR0aDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG59XG4vKi0tLSBCZWxvdyAtLS0qL1xuLnVpW2NsYXNzKj1cImJvdHRvbSBwb2ludGluZ1wiXS5sYWJlbCxcbi51aVtjbGFzcyo9XCJwb2ludGluZyBiZWxvd1wiXS5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IEBwb2ludGluZ1ZlcnRpY2FsRGlzdGFuY2U7XG59XG4udWlbY2xhc3MqPVwiYm90dG9tIHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSxcbi51aVtjbGFzcyo9XCJwb2ludGluZyBiZWxvd1wiXS5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItd2lkdGg6IDAgQGJvcmRlcldpZHRoIEBib3JkZXJXaWR0aCAwO1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbn1cbi8qLS0tIExlZnQgLS0tKi9cbi51aVtjbGFzcyo9XCJsZWZ0IHBvaW50aW5nXCJdLmxhYmVsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IEBwb2ludGluZ0hvcml6b250YWxEaXN0YW5jZTtcbn1cbi51aVtjbGFzcyo9XCJsZWZ0IHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci13aWR0aDogMCAwIEBib3JkZXJXaWR0aCBAYm9yZGVyV2lkdGg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xufVxuLyotLS0gUmlnaHQgLS0tKi9cbi51aVtjbGFzcyo9XCJyaWdodCBwb2ludGluZ1wiXS5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogQHBvaW50aW5nSG9yaXpvbnRhbERpc3RhbmNlO1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSB7XG4gIGJvcmRlci13aWR0aDogQGJvcmRlcldpZHRoIEBib3JkZXJXaWR0aCAwIDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8qIEJhc2ljIFBvaW50aW5nICovXG5cbi8qLS0tIEFib3ZlIC0tLSovXG4udWkuYmFzaWMucG9pbnRpbmcubGFiZWw6YmVmb3JlLFxuLnVpLmJhc2ljW2NsYXNzKj1cInBvaW50aW5nIGFib3ZlXCJdLmxhYmVsOmJlZm9yZSB7XG4gIG1hcmdpbi10b3A6IEBiYXNpY1BvaW50aW5nVHJpYW5nbGVPZmZzZXQ7XG59XG4vKi0tLSBCZWxvdyAtLS0qL1xuLnVpLmJhc2ljW2NsYXNzKj1cImJvdHRvbSBwb2ludGluZ1wiXS5sYWJlbDpiZWZvcmUsXG4udWkuYmFzaWNbY2xhc3MqPVwicG9pbnRpbmcgYmVsb3dcIl0ubGFiZWw6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC1AYmFzaWNQb2ludGluZ1RyaWFuZ2xlT2Zmc2V0O1xufVxuLyotLS0gTGVmdCAtLS0qL1xuLnVpLmJhc2ljW2NsYXNzKj1cImxlZnQgcG9pbnRpbmdcIl0ubGFiZWw6YmVmb3JlIHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IEBiYXNpY1BvaW50aW5nVHJpYW5nbGVPZmZzZXQ7XG59XG4vKi0tLSBSaWdodCAtLS0qL1xuLnVpLmJhc2ljW2NsYXNzKj1cInJpZ2h0IHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICByaWdodDogQGJhc2ljUG9pbnRpbmdUcmlhbmdsZU9mZnNldDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgRmxvYXRpbmcgTGFiZWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmxvYXRpbmcubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IEBmbG9hdGluZ1pJbmRleDtcbiAgdG9wOiBAZmxvYXRpbmdUb3BPZmZzZXQ7XG4gIHJpZ2h0OiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbn1cbi51aS5yaWdodC5hbGlnbmVkLmZsb2F0aW5nLmxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKEBmbG9hdGluZ0FsaWduT2Zmc2V0KTtcbn1cbi51aS5sZWZ0LmZsb2F0aW5nLmxhYmVsIHtcbiAgbGVmdDowO1xuICByaWdodDphdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4udWkubGVmdC5hbGlnbmVkLmZsb2F0aW5nLmxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC1AZmxvYXRpbmdBbGlnbk9mZnNldCk7XG59XG4udWkuYm90dG9tLmZsb2F0aW5nLmxhYmVsIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IEBmbG9hdGluZ0JvdHRvbU9mZnNldDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5taW5pLmxhYmVscyAubGFiZWwsXG4udWkubWluaS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogQG1pbmk7XG59XG4udWkudGlueS5sYWJlbHMgLmxhYmVsLFxuLnVpLnRpbnkubGFiZWwge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLmxhYmVscyAubGFiZWwsXG4udWkuc21hbGwubGFiZWwge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbi51aS5sYWJlbHMgLmxhYmVsLFxuLnVpLmxhYmVsIHtcbiAgZm9udC1zaXplOiBAbWVkaXVtO1xufVxuLnVpLmxhcmdlLmxhYmVscyAubGFiZWwsXG4udWkubGFyZ2UubGFiZWwge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5iaWcubGFiZWxzIC5sYWJlbCxcbi51aS5iaWcubGFiZWwge1xuICBmb250LXNpemU6IEBiaWc7XG59XG4udWkuaHVnZS5sYWJlbHMgLmxhYmVsLFxuLnVpLmh1Z2UubGFiZWwge1xuICBmb250LXNpemU6IEBodWdlO1xufVxuLnVpLm1hc3NpdmUubGFiZWxzIC5sYWJlbCxcbi51aS5tYXNzaXZlLmxhYmVsIHtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gTGlzdFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2VsZW1lbnQnO1xuQGVsZW1lbnQgOiAnbGlzdCc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIExpc3RcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbnVsLnVpLmxpc3QsXG5vbC51aS5saXN0LFxuLnVpLmxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IEBsaXN0U3R5bGVUeXBlO1xuICBtYXJnaW46IEBtYXJnaW47XG4gIHBhZGRpbmc6IEB2ZXJ0aWNhbFBhZGRpbmcgQGhvcml6b250YWxQYWRkaW5nO1xufVxuXG51bC51aS5saXN0OmZpcnN0LWNoaWxkLFxub2wudWkubGlzdDpmaXJzdC1jaGlsZCxcbi51aS5saXN0OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbnVsLnVpLmxpc3Q6bGFzdC1jaGlsZCxcbm9sLnVpLmxpc3Q6bGFzdC1jaGlsZCxcbi51aS5saXN0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIExpc3QgSXRlbSAqL1xudWwudWkubGlzdCBsaSxcbm9sLnVpLmxpc3QgbGksXG4udWkubGlzdCA+IC5pdGVtLFxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBAbGlzdFN0eWxlVHlwZTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogQGxpc3RTdHlsZVBvc2l0aW9uO1xuXG4gIHBhZGRpbmc6IEBpdGVtUGFkZGluZztcbiAgbGluZS1oZWlnaHQ6IEBpdGVtTGluZUhlaWdodDtcbn1cblxudWwudWkubGlzdCA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyLFxub2wudWkubGlzdCA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyLFxuLnVpLmxpc3QgPiAubGlzdCA+IC5pdGVtOmFmdGVyLFxuLnVpLmxpc3QgPiAuaXRlbTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG51bC51aS5saXN0IGxpOmZpcnN0LWNoaWxkLFxub2wudWkubGlzdCBsaTpmaXJzdC1jaGlsZCxcbi51aS5saXN0IC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQsXG4udWkubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG51bC51aS5saXN0IGxpOmxhc3QtY2hpbGQsXG5vbC51aS5saXN0IGxpOmxhc3QtY2hpbGQsXG4udWkubGlzdCAubGlzdCA+IC5pdGVtOmxhc3QtY2hpbGQsXG4udWkubGlzdCA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyogQ2hpbGQgTGlzdCAqL1xudWwudWkubGlzdCB1bCxcbm9sLnVpLmxpc3Qgb2wsXG4udWkubGlzdCAubGlzdDpub3QoLmljb24pIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogQGNoaWxkTGlzdFBhZGRpbmc7XG59XG5cbi8qIENoaWxkIEl0ZW0gKi9cbnVsLnVpLmxpc3QgdWwgbGksXG5vbC51aS5saXN0IG9sIGxpLFxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmc6IEBjaGlsZEl0ZW1QYWRkaW5nO1xuICBsaW5lLWhlaWdodDogQGNoaWxkSXRlbUxpbmVIZWlnaHQ7XG59XG5cblxuLyogSWNvbiAqL1xuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IGkuaWNvbixcbi51aS5saXN0ID4gLml0ZW0gPiBpLmljb24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBtaW4td2lkdGg6IDEuNTVlbTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXRvcDogQGljb25PZmZzZXQ7XG4gIHRyYW5zaXRpb246IEBpY29uVHJhbnNpdGlvbjtcbiAgJjpub3QoLmxvYWRpbmcpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBAaWNvbkRpc3RhbmNlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBAaWNvbkNvbnRlbnRWZXJ0aWNhbEFsaWduO1xuICB9XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gaS5pY29uOm9ubHktY2hpbGQsXG4udWkubGlzdCA+IC5pdGVtID4gaS5pY29uOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IEBpY29uVmVydGljYWxBbGlnbjtcbn1cblxuXG4vKiBJbWFnZSAqL1xuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSxcbi51aS5saXN0ID4gLml0ZW0gPiAuaW1hZ2Uge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogQGltYWdlQWxpZ247XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlOm5vdCg6b25seS1jaGlsZCk6bm90KGltZyksXG4udWkubGlzdCA+IC5pdGVtID4gLmltYWdlOm5vdCg6b25seS1jaGlsZCk6bm90KGltZykge1xuICBwYWRkaW5nLXJpZ2h0OiBAaW1hZ2VEaXN0YW5jZTtcbn1cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaW1hZ2UgaW1nLFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogQGltYWdlQWxpZ247XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UsXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlOm9ubHktY2hpbGQsXG4udWkubGlzdCA+IC5pdGVtID4gaW1nLmltYWdlLFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pbWFnZTpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKiBDb250ZW50ICovXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQsXG4udWkubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQge1xuICBsaW5lLWhlaWdodDogQGNvbnRlbnRMaW5lSGVpZ2h0O1xuICBjb2xvcjogQGNvbnRlbnRDb2xvcjtcbn1cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaW1hZ2UgKyAuY29udGVudCxcbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaWNvbiArIC5jb250ZW50LFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSArIC5jb250ZW50LFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pY29uICsgLmNvbnRlbnQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAwIDAgQGNvbnRlbnREaXN0YW5jZTtcbiAgdmVydGljYWwtYWxpZ246IEBjb250ZW50VmVydGljYWxBbGlnbjtcbn1cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAubG9hZGluZy5pY29uICsgLmNvbnRlbnQsXG4udWkubGlzdCA+IC5pdGVtID4gLmxvYWRpbmcuaWNvbiArIC5jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiBlKCUoXCJjYWxjKCVkICsgJWQpXCIsIEBpY29uRGlzdGFuY2UsIEBjb250ZW50RGlzdGFuY2UpKTtcbn1cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UgKyAuY29udGVudCxcbi51aS5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UgKyAuY29udGVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQgPiAubGlzdCxcbi51aS5saXN0ID4gLml0ZW0gPiAuY29udGVudCA+IC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLyogSGVhZGVyICovXG4udWkubGlzdCAubGlzdCA+IC5pdGVtIC5oZWFkZXIsXG4udWkubGlzdCA+IC5pdGVtIC5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogQGl0ZW1IZWFkZXJGb250RmFtaWx5O1xuICBmb250LXdlaWdodDogQGl0ZW1IZWFkZXJGb250V2VpZ2h0O1xuICBjb2xvcjogQGl0ZW1IZWFkZXJDb2xvcjtcbn1cblxuLyogRGVzY3JpcHRpb24gKi9cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gLmRlc2NyaXB0aW9uLFxuLnVpLmxpc3QgPiAuaXRlbSAuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IEBpdGVtRGVzY3JpcHRpb25Db2xvcjtcbn1cblxuLyogQ2hpbGQgTGluayAqL1xuLnVpLmxpc3QgPiAuaXRlbSBhLFxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSBhIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKiBMaW5raW5nIEl0ZW0gKi9cbi51aS5saXN0IC5saXN0ID4gYS5pdGVtLFxuLnVpLmxpc3QgPiBhLml0ZW0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiBAaXRlbUxpbmtDb2xvcjtcbn1cbi51aS5saXN0IC5saXN0ID4gYS5pdGVtOmhvdmVyLFxuLnVpLmxpc3QgPiBhLml0ZW06aG92ZXIge1xuICBjb2xvcjogQGl0ZW1MaW5rSG92ZXJDb2xvcjtcbn1cblxuLyogTGlua2VkIEl0ZW0gSWNvbnMgKi9cbi51aS5saXN0IC5saXN0ID4gYS5pdGVtID4gaS5pY29uLFxuLnVpLmxpc3QgPiBhLml0ZW0gPiBpLmljb24ge1xuICBjb2xvcjogQGl0ZW1MaW5rSWNvbkNvbG9yO1xufVxuXG4vKiBIZWFkZXIgTGluayAqL1xuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSBhLmhlYWRlcixcbi51aS5saXN0ID4gLml0ZW0gYS5oZWFkZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiBAaXRlbUhlYWRlckxpbmtDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IGEuaGVhZGVyOmhvdmVyLFxuLnVpLmxpc3QgPiAuaXRlbSA+IGEuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6IEBpdGVtSGVhZGVyTGlua0hvdmVyQ29sb3IgIWltcG9ydGFudDtcbn1cblxuLyogRmxvYXRlZCBDb250ZW50ICovXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmxpc3Qge1xuICBmbG9hdDogbGVmdDtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLmxpc3Qge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSxcbi51aS5saXN0ID4gLml0ZW0gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IEBsZWZ0RmxvYXRNYXJnaW47XG59XG4udWkubGlzdCAubGlzdCA+IC5pdGVtIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLFxuLnVpLmxpc3QgPiAuaXRlbSBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiBAcmlnaHRGbG9hdE1hcmdpbjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvdXBsaW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWVudSAudWkubGlzdCA+IC5pdGVtLFxuLnVpLm1lbnUgLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgbGlzdC1zdHlsZS10eXBlOiBAbGlzdFN0eWxlVHlwZTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogQGxpc3RTdHlsZVBvc2l0aW9uO1xuXG4gIHBhZGRpbmc6IEBpdGVtVmVydGljYWxQYWRkaW5nIEBpdGVtSG9yaXpvbnRhbFBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiBAaXRlbUxpbmVIZWlnaHQ7XG59XG4udWkubWVudSAudWkubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLnVpLm1lbnUgLnVpLmxpc3QgLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi51aS5tZW51IC51aS5saXN0IC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3Jpem9udGFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ob3Jpem9udGFsLmxpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBAaG9yaXpvbnRhbFNwYWNpbmc7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi51aS5ob3Jpem9udGFsLmxpc3Q6bm90KC5jZWxsZWQpID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi51aS5ob3Jpem9udGFsLmxpc3QgLmxpc3Q6bm90KC5pY29uKSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSxcbi51aS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSxcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSA+IC5pY29uLFxuLnVpLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtID4gLmljb24sXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0gPiAuY29udGVudCxcbi51aS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5jb250ZW50IHtcbiAgdmVydGljYWwtYWxpZ246IEBob3Jpem9udGFsVmVydGljYWxBbGlnbjtcbn1cblxuLyogUGFkZGluZyBvbiBhbGwgZWxlbWVudHMgKi9cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IEBpdGVtVmVydGljYWxQYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogQGl0ZW1WZXJ0aWNhbFBhZGRpbmc7XG59XG5cbi8qIEhvcml6b250YWwgTGlzdCAqL1xuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gaS5pY29uIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIEBob3Jpem9udGFsSWNvbkRpc3RhbmNlIDAgMDtcbn1cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSArIC5jb250ZW50LFxuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gLmljb24sXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0gPiAuaWNvbiArIC5jb250ZW50IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG59XG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0gPiAuaW1hZ2Uge1xuICBkaXNwbGF5OmlubGluZS1ibG9jaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5saXN0IC5saXN0ID4gLmRpc2FibGVkLml0ZW0sXG4udWkubGlzdCA+IC5kaXNhYmxlZC5pdGVtIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbG9yOiBAZGlzYWJsZWRDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLmludmVydGVkLmxpc3QgLmxpc3QgPiAuZGlzYWJsZWQuaXRlbSxcbi51aS5pbnZlcnRlZC5saXN0ID4gLmRpc2FibGVkLml0ZW0ge1xuICBjb2xvcjogQGludmVydGVkRGlzYWJsZWRDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxpc3QgLmxpc3QgPiBhLml0ZW06aG92ZXIgPiAuaWNvbixcbi51aS5saXN0ID4gYS5pdGVtOmhvdmVyID4gLmljb24ge1xuICBjb2xvcjogQGl0ZW1MaW5rSWNvbkhvdmVyQ29sb3I7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmxpc3QgLmxpc3QgPiBhLml0ZW0gPiAuaWNvbixcbi51aS5pbnZlcnRlZC5saXN0ID4gYS5pdGVtID4gLmljb24ge1xuICBjb2xvcjogQGludmVydGVkSWNvbkxpbmtDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLml0ZW0gLmhlYWRlcixcbi51aS5pbnZlcnRlZC5saXN0ID4gLml0ZW0gLmhlYWRlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRIZWFkZXJDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLml0ZW0gLmRlc2NyaXB0aW9uLFxuLnVpLmludmVydGVkLmxpc3QgPiAuaXRlbSAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogQGludmVydGVkRGVzY3JpcHRpb25Db2xvcjtcbn1cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLml0ZW0gPiAuY29udGVudCxcbi51aS5pbnZlcnRlZC5saXN0ID4gLml0ZW0gPiAuY29udGVudCB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRDb250ZW50Q29sb3I7XG59XG4vKiBJdGVtIExpbmsgKi9cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gYS5pdGVtLFxuLnVpLmludmVydGVkLmxpc3QgPiBhLml0ZW0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRJdGVtTGlua0NvbG9yO1xufVxuLnVpLmludmVydGVkLmxpc3QgLmxpc3QgPiBhLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQubGlzdCA+IGEuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRJdGVtTGlua0hvdmVyQ29sb3I7XG59XG5cblxuLyogTGlua2luZyBDb250ZW50ICovXG4udWkuaW52ZXJ0ZWQubGlzdCAuaXRlbSBhOm5vdCgudWkpIHtcbiAgY29sb3I6IEBpbnZlcnRlZEl0ZW1MaW5rQ29sb3IgIWltcG9ydGFudDtcbn1cbi51aS5pbnZlcnRlZC5saXN0IC5pdGVtIGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogQGludmVydGVkSXRlbUxpbmtIb3ZlckNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxpc3RbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0gLmltYWdlLFxuLnVpLmxpc3RbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0gLmNvbnRlbnQsXG4udWkubGlzdCBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7XG59XG4udWkubGlzdFtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXSAuaW1hZ2UsXG4udWkubGlzdFtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXSAuY29udGVudCxcbi51aS5saXN0IFtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cbi51aS5saXN0W2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdIC5pbWFnZSxcbi51aS5saXN0W2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdIC5jb250ZW50LFxuLnVpLmxpc3QgW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMaW5rXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5saW5rLmxpc3QgLml0ZW0sXG4udWkubGluay5saXN0IGEuaXRlbSxcbi51aS5saW5rLmxpc3QgLml0ZW0gYTpub3QoLnVpKSB7XG4gIGNvbG9yOiBAbGlua0xpc3RJdGVtQ29sb3I7XG4gIHRyYW5zaXRpb246IEBsaW5rTGlzdFRyYW5zaXRpb247XG59XG4udWkubGluay5saXN0Lmxpc3QgYS5pdGVtOmhvdmVyLFxuLnVpLmxpbmsubGlzdC5saXN0IC5pdGVtIGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogQGxpbmtMaXN0SXRlbUhvdmVyQ29sb3I7XG59XG4udWkubGluay5saXN0Lmxpc3QgYS5pdGVtOmFjdGl2ZSxcbi51aS5saW5rLmxpc3QubGlzdCAuaXRlbSBhOm5vdCgudWkpOmFjdGl2ZSB7XG4gIGNvbG9yOiBAbGlua0xpc3RJdGVtRG93bkNvbG9yO1xufVxuLnVpLmxpbmsubGlzdC5saXN0IC5hY3RpdmUuaXRlbSxcbi51aS5saW5rLmxpc3QubGlzdCAuYWN0aXZlLml0ZW0gYTpub3QoLnVpKSB7XG4gIGNvbG9yOiBAbGlua0xpc3RJdGVtQWN0aXZlQ29sb3I7XG59XG5cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQubGluay5saXN0IC5pdGVtLFxuLnVpLmludmVydGVkLmxpbmsubGlzdCBhLml0ZW0sXG4udWkuaW52ZXJ0ZWQubGluay5saXN0IC5pdGVtIGE6bm90KC51aSkge1xuICBjb2xvcjogQGludmVydGVkTGlua0xpc3RJdGVtQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQubGluay5saXN0Lmxpc3QgYS5pdGVtOmhvdmVyLFxuLnVpLmludmVydGVkLmxpbmsubGlzdC5saXN0IC5pdGVtIGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogQGludmVydGVkTGlua0xpc3RJdGVtSG92ZXJDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5saW5rLmxpc3QubGlzdCBhLml0ZW06YWN0aXZlLFxuLnVpLmludmVydGVkLmxpbmsubGlzdC5saXN0IC5pdGVtIGE6bm90KC51aSk6YWN0aXZlIHtcbiAgY29sb3I6IEBpbnZlcnRlZExpbmtMaXN0SXRlbURvd25Db2xvcjtcbn1cbi51aS5pbnZlcnRlZC5saW5rLmxpc3QubGlzdCBhLmFjdGl2ZS5pdGVtLFxuLnVpLmludmVydGVkLmxpbmsubGlzdC5saXN0IC5hY3RpdmUuaXRlbSBhOm5vdCgudWkpIHtcbiAgY29sb3I6IEBpbnZlcnRlZExpbmtMaXN0SXRlbUFjdGl2ZUNvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNlbGVjdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiBAc2VsZWN0aW9uTGlzdEJhY2tncm91bmQ7XG4gIHBhZGRpbmc6IEBzZWxlY3Rpb25MaXN0SXRlbVZlcnRpY2FsUGFkZGluZyBAc2VsZWN0aW9uTGlzdEl0ZW1Ib3Jpem9udGFsUGFkZGluZztcbiAgbWFyZ2luOiBAc2VsZWN0aW9uTGlzdEl0ZW1NYXJnaW47XG4gIGNvbG9yOiBAc2VsZWN0aW9uTGlzdENvbG9yO1xuICBib3JkZXItcmFkaXVzOiBAc2VsZWN0aW9uTGlzdEl0ZW1Cb3JkZXJSYWRpdXM7XG4gIHRyYW5zaXRpb246IEBzZWxlY3Rpb25MaXN0VHJhbnNpdGlvbjtcbn1cbi51aS5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtOmxhc3QtY2hpbGQsXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi51aS5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtOmhvdmVyLFxuLnVpLnNlbGVjdGlvbi5saXN0ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAc2VsZWN0aW9uTGlzdEhvdmVyQmFja2dyb3VuZDtcbiAgY29sb3I6IEBzZWxlY3Rpb25MaXN0SG92ZXJDb2xvcjtcbn1cbi51aS5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtOmFjdGl2ZSxcbi51aS5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IEBzZWxlY3Rpb25MaXN0RG93bkJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc2VsZWN0aW9uTGlzdERvd25Db2xvcjtcbn1cbi51aS5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtLmFjdGl2ZSxcbi51aS5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IEBzZWxlY3Rpb25MaXN0QWN0aXZlQmFja2dyb3VuZDtcbiAgY29sb3I6IEBzZWxlY3Rpb25MaXN0QWN0aXZlQ29sb3I7XG59XG5cbi8qIEludmVydGVkICovXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZFNlbGVjdGlvbkxpc3RCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGludmVydGVkU2VsZWN0aW9uTGlzdENvbG9yO1xufVxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRTZWxlY3Rpb25MaXN0SG92ZXJCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGludmVydGVkU2VsZWN0aW9uTGlzdEhvdmVyQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRTZWxlY3Rpb25MaXN0RG93bkJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTZWxlY3Rpb25MaXN0RG93bkNvbG9yO1xufVxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0uYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkU2VsZWN0aW9uTGlzdEFjdGl2ZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTZWxlY3Rpb25MaXN0QWN0aXZlQ29sb3I7XG59XG5cbi8qIENlbGxlZCAvIERpdmlkZWQgU2VsZWN0aW9uIExpc3QgKi9cbi51aS5jZWxsZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0sXG4udWkuZGl2aWRlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQW5pbWF0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFuaW1hdGVkLmxpc3QgPiAuaXRlbSB7XG4gIHRyYW5zaXRpb246IEBhbmltYXRlZExpc3RUcmFuc2l0aW9uO1xufVxuLnVpLmFuaW1hdGVkLmxpc3Q6bm90KC5ob3Jpem9udGFsKSA+IC5pdGVtOmhvdmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBAYW5pbWF0ZWRMaXN0SW5kZW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGaXR0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5maXR0ZWQubGlzdDpub3QoLnNlbGVjdGlvbikgLmxpc3QgPiAuaXRlbSxcbi51aS5maXR0ZWQubGlzdDpub3QoLnNlbGVjdGlvbikgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi51aS5maXR0ZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5maXR0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSB7XG4gIG1hcmdpbi1sZWZ0OiAtQHNlbGVjdGlvbkxpc3RJdGVtSG9yaXpvbnRhbFBhZGRpbmc7XG4gIG1hcmdpbi1yaWdodDogLUBzZWxlY3Rpb25MaXN0SXRlbUhvcml6b250YWxQYWRkaW5nO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJ1bGxldGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbnVsLnVpLmxpc3QsXG4udWkuYnVsbGV0ZWQubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiBAYnVsbGV0RGlzdGFuY2U7XG59XG51bC51aS5saXN0IGxpLFxuLnVpLmJ1bGxldGVkLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5idWxsZXRlZC5saXN0ID4gLml0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG51bC51aS5saXN0IGxpOmJlZm9yZSxcbi51aS5idWxsZXRlZC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlLFxuLnVpLmJ1bGxldGVkLmxpc3QgPiAuaXRlbTpiZWZvcmUge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICBmb250LXdlaWdodDogQG5vcm1hbDtcbiAgbWFyZ2luLWxlZnQ6IEBidWxsZXRPZmZzZXQ7XG4gIGNvbnRlbnQ6IEBidWxsZXRDaGFyYWN0ZXI7XG4gIG9wYWNpdHk6IEBidWxsZXRPcGFjaXR5O1xuICBjb2xvcjogQGJ1bGxldENvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogQGJ1bGxldFZlcnRpY2FsQWxpZ247XG59XG5cbnVsLnVpLmxpc3QgbGk6YmVmb3JlLFxuLnVpLmJ1bGxldGVkLmxpc3QgLmxpc3QgPiBhLml0ZW06YmVmb3JlLFxuLnVpLmJ1bGxldGVkLmxpc3QgPiBhLml0ZW06YmVmb3JlIHtcbiAgY29sb3I6IEBidWxsZXRMaW5rQ29sb3I7XG59XG5cbnVsLnVpLmxpc3QgdWwsXG4udWkuYnVsbGV0ZWQubGlzdCAubGlzdDpub3QoLmljb24pIHtcbiAgcGFkZGluZy1sZWZ0OiBAYnVsbGV0Q2hpbGREaXN0YW5jZTtcbn1cblxuLyogSG9yaXpvbnRhbCBCdWxsZXRlZCAqL1xudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0LFxuLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0IGxpLFxuLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCA+IC5pdGVtIHtcbiAgbWFyZ2luLWxlZnQ6IEBob3Jpem9udGFsQnVsbGV0U3BhY2luZztcbn1cbnVsLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCBsaTpmaXJzdC1jaGlsZCxcbi51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0IGxpOjpiZWZvcmUsXG4udWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0ID4gLml0ZW06OmJlZm9yZSB7XG4gIGNvbG9yOiBAaG9yaXpvbnRhbEJ1bGxldENvbG9yO1xufVxudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0IGxpOmZpcnN0LWNoaWxkOjpiZWZvcmUsXG4udWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIE9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxub2wudWkubGlzdCxcbi51aS5vcmRlcmVkLmxpc3QsXG4udWkub3JkZXJlZC5saXN0IC5saXN0Om5vdCguaWNvbiksXG5vbC51aS5saXN0IG9sIHtcbiAgY291bnRlci1yZXNldDogb3JkZXJlZDtcbiAgbWFyZ2luLWxlZnQ6IEBvcmRlcmVkQ291bnREaXN0YW5jZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxub2wudWkubGlzdCBsaSxcbi51aS5vcmRlcmVkLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5vcmRlcmVkLmxpc3QgPiAuaXRlbSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxub2wudWkubGlzdCBsaTpiZWZvcmUsXG4udWkub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlLFxuLnVpLm9yZGVyZWQubGlzdCA+IC5pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAtKEBvcmRlcmVkQ291bnREaXN0YW5jZSk7XG4gIGNvdW50ZXItaW5jcmVtZW50OiBAb3JkZXJlZENvdW50TmFtZTtcbiAgY29udGVudDogQG9yZGVyZWRDb3VudENvbnRlbnQ7XG4gIHRleHQtYWxpZ246IEBvcmRlcmVkQ291bnRUZXh0QWxpZ247XG4gIGNvbG9yOiBAb3JkZXJlZENvdW50Q29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBAb3JkZXJlZENvdW50VmVydGljYWxBbGlnbjtcbiAgb3BhY2l0eTogQG9yZGVyZWRDb3VudE9wYWNpdHk7XG59XG5cbm9sLnVpLmludmVydGVkLmxpc3QgbGk6YmVmb3JlLFxuLnVpLm9yZGVyZWQuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5vcmRlcmVkLmludmVydGVkLmxpc3QgPiAuaXRlbTpiZWZvcmUge1xuICBjb2xvcjogQG9yZGVyZWRJbnZlcnRlZENvdW50Q29sb3I7XG59XG5cbi8qIFZhbHVlICovXG4udWkub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW1bZGF0YS12YWx1ZV06YmVmb3JlLFxuLnVpLm9yZGVyZWQubGlzdCA+IC5pdGVtW2RhdGEtdmFsdWVdOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS12YWx1ZSk7XG59XG5vbC51aS5saXN0IGxpW3ZhbHVlXTpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKHZhbHVlKTtcbn1cblxuLyogQ2hpbGQgTGlzdHMgKi9cbm9sLnVpLmxpc3Qgb2wsXG4udWkub3JkZXJlZC5saXN0IC5saXN0Om5vdCguaWNvbikge1xuICBtYXJnaW4tbGVmdDogQG9yZGVyZWRDaGlsZENvdW50RGlzdGFuY2U7XG59XG5vbC51aS5saXN0IG9sIGxpOmJlZm9yZSxcbi51aS5vcmRlcmVkLmxpc3QgLmxpc3QgPiAuaXRlbTpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogQG9yZGVyZWRDaGlsZENvdW50T2Zmc2V0O1xufVxuXG4vKiBIb3Jpem9udGFsIE9yZGVyZWQgKi9cbm9sLnVpLmhvcml6b250YWwubGlzdCxcbi51aS5vcmRlcmVkLmhvcml6b250YWwubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxub2wudWkuaG9yaXpvbnRhbC5saXN0IGxpOmJlZm9yZSxcbi51aS5vcmRlcmVkLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5vcmRlcmVkLmhvcml6b250YWwubGlzdCA+IC5pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbjogMCBAaG9yaXpvbnRhbE9yZGVyZWRDb3VudERpc3RhbmNlIDAgMDtcbn1cblxuLyogU3VmZml4ZWQgT3JkZXJlZCAqL1xub2wudWkuc3VmZml4ZWQubGlzdCBsaTpiZWZvcmUsXG4udWkuc3VmZml4ZWQub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlLFxuLnVpLnN1ZmZpeGVkLm9yZGVyZWQubGlzdCA+IC5pdGVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IEBvcmRlcmVkQ291bnRDb250ZW50U3VmZml4ZWQ7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRGl2aWRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGl2aWRlZC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiBAZGl2aWRlZEJvcmRlcjtcbn1cbi51aS5kaXZpZGVkLmxpc3QgLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IEBkaXZpZGVkQ2hpbGRMaXN0Qm9yZGVyO1xufVxuLnVpLmRpdmlkZWQubGlzdCAuaXRlbSAubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXRvcDogQGRpdmlkZWRDaGlsZEl0ZW1Cb3JkZXI7XG59XG4udWkuZGl2aWRlZC5saXN0IC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQsXG4udWkuZGl2aWRlZC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4vKiBTdWIgTWVudSAqL1xuLnVpLmRpdmlkZWQubGlzdDpub3QoLmhvcml6b250YWwpIC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiBAZGl2aWRlZEJvcmRlcldpZHRoO1xufVxuXG4vKiBEaXZpZGVkIGJ1bGxldGVkICovXG4udWkuZGl2aWRlZC5idWxsZXRlZC5saXN0Om5vdCguaG9yaXpvbnRhbCksXG4udWkuZGl2aWRlZC5idWxsZXRlZC5saXN0IC5saXN0Om5vdCguaWNvbikge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnVpLmRpdmlkZWQuYnVsbGV0ZWQubGlzdCA+IC5pdGVtOm5vdCguaG9yaXpvbnRhbCkge1xuICBwYWRkaW5nLWxlZnQ6IEBidWxsZXREaXN0YW5jZTtcbn1cblxuLyogRGl2aWRlZCBPcmRlcmVkICovXG4udWkuZGl2aWRlZC5vcmRlcmVkLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi51aS5kaXZpZGVkLm9yZGVyZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmRpdmlkZWQub3JkZXJlZC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IEBvcmRlcmVkQ291bnREaXN0YW5jZTtcbn1cbi51aS5kaXZpZGVkLm9yZGVyZWQubGlzdCAuaXRlbSAubGlzdDpub3QoLmljb24pIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IEBpdGVtVmVydGljYWxQYWRkaW5nO1xufVxuLnVpLmRpdmlkZWQub3JkZXJlZC5saXN0IC5pdGVtIC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IEBvcmRlcmVkQ2hpbGRDb3VudERpc3RhbmNlO1xufVxuXG4vKiBEaXZpZGVkIFNlbGVjdGlvbiAqL1xuLnVpLmRpdmlkZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8qIERpdmlkZWQgaG9yaXpvbnRhbCAqL1xuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4udWkuZGl2aWRlZC5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogQGhvcml6b250YWxEaXZpZGVkU3BhY2luZztcbn1cbi51aS5kaXZpZGVkLmhvcml6b250YWwubGlzdCA+IC5pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBwYWRkaW5nLXJpZ2h0OiBAaG9yaXpvbnRhbERpdmlkZWRTcGFjaW5nO1xufVxuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItcmlnaHQ6IEBkaXZpZGVkQm9yZGVyO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiBAaG9yaXpvbnRhbERpdmlkZWRMaW5lSGVpZ2h0O1xufVxuLnVpLmhvcml6b250YWwuZGl2aWRlZC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cbi8qIEludmVydGVkICovXG4udWkuZGl2aWRlZC5pbnZlcnRlZC5saXN0ID4gLml0ZW0sXG4udWkuZGl2aWRlZC5pbnZlcnRlZC5saXN0ID4gLmxpc3QsXG4udWkuZGl2aWRlZC5pbnZlcnRlZC5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogQGRpdmlkZWRJbnZlcnRlZEJvcmRlckNvbG9yO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBDZWxsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNlbGxlZC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLmxpc3QgPiAubGlzdCB7XG4gIGJvcmRlci10b3A6IEBjZWxsZWRCb3JkZXI7XG4gIHBhZGRpbmctbGVmdDogQGNlbGxlZEhvcml6b250YWxQYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiBAY2VsbGVkSG9yaXpvbnRhbFBhZGRpbmc7XG59XG4udWkuY2VsbGVkLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogQGNlbGxlZEJvcmRlcjtcbn1cblxuLyogUGFkZGluZyBvbiBhbGwgZWxlbWVudHMgKi9cbi51aS5jZWxsZWQubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiBAaXRlbVZlcnRpY2FsUGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206IEBpdGVtVmVydGljYWxQYWRkaW5nO1xufVxuXG4vKiBTdWIgTWVudSAqL1xuLnVpLmNlbGxlZC5saXN0IC5pdGVtIC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItd2lkdGg6IDA7XG59XG4udWkuY2VsbGVkLmxpc3QgLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG5cbi8qIENlbGxlZCBCdWxsZXRlZCAqL1xuLnVpLmNlbGxlZC5idWxsZXRlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4udWkuY2VsbGVkLmJ1bGxldGVkLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQuYnVsbGV0ZWQubGlzdCA+IC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAoQGJ1bGxldERpc3RhbmNlKTtcbn1cbi51aS5jZWxsZWQuYnVsbGV0ZWQubGlzdCAuaXRlbSAubGlzdDpub3QoLmljb24pIHtcbiAgbWFyZ2luLWxlZnQ6IC0oQGJ1bGxldERpc3RhbmNlKTtcbiAgbWFyZ2luLXJpZ2h0OiAtKEBidWxsZXREaXN0YW5jZSk7XG4gIHBhZGRpbmctYm90dG9tOiBAaXRlbVZlcnRpY2FsUGFkZGluZztcbn1cblxuLyogQ2VsbGVkIE9yZGVyZWQgKi9cbi51aS5jZWxsZWQub3JkZXJlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmNlbGxlZC5vcmRlcmVkLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogQG9yZGVyZWRDb3VudERpc3RhbmNlO1xufVxuLnVpLmNlbGxlZC5vcmRlcmVkLmxpc3QgLml0ZW0gLmxpc3Q6bm90KC5pY29uKSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiBAaXRlbVZlcnRpY2FsUGFkZGluZztcbn1cbi51aS5jZWxsZWQub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IEBvcmRlcmVkQ2hpbGRDb3VudERpc3RhbmNlO1xufVxuXG4vKiBDZWxsZWQgSG9yaXpvbnRhbCAqL1xuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi51aS5ob3Jpem9udGFsLmNlbGxlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuaG9yaXpvbnRhbC5jZWxsZWQubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IEBjZWxsZWRCb3JkZXI7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiBAaG9yaXpvbnRhbENlbGxlZFNwYWNpbmc7XG4gIHBhZGRpbmctcmlnaHQ6IEBob3Jpem9udGFsQ2VsbGVkU3BhY2luZztcblxuICBsaW5lLWhlaWdodDogQGhvcml6b250YWxDZWxsZWRMaW5lSGVpZ2h0O1xufVxuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3QgLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkLFxuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBAY2VsbGVkQm9yZGVyO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuLnVpLmNlbGxlZC5pbnZlcnRlZC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLmludmVydGVkLmxpc3QgPiAubGlzdCB7XG4gIGJvcmRlci1jb2xvcjogQGNlbGxlZEludmVydGVkQm9yZGVyO1xufVxuLnVpLmNlbGxlZC5pbnZlcnRlZC5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQuaW52ZXJ0ZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItY29sb3I6IEBjZWxsZWRJbnZlcnRlZEJvcmRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUmVsYXhlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmVsYXhlZC5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIHBhZGRpbmctdG9wOiBAcmVsYXhlZEl0ZW1WZXJ0aWNhbFBhZGRpbmc7XG59XG4udWkucmVsYXhlZC5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1ib3R0b206IEByZWxheGVkSXRlbVZlcnRpY2FsUGFkZGluZztcbn1cbi51aS5ob3Jpem9udGFsLnJlbGF4ZWQubGlzdCAubGlzdCA+IC5pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLnVpLmhvcml6b250YWwucmVsYXhlZC5saXN0ID4gLml0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICBwYWRkaW5nLWxlZnQ6IEByZWxheGVkSG9yaXpvbnRhbFBhZGRpbmc7XG59XG4udWkuaG9yaXpvbnRhbC5yZWxheGVkLmxpc3QgLmxpc3QgPiAuaXRlbTpub3QoOmxhc3QtY2hpbGQpLFxuLnVpLmhvcml6b250YWwucmVsYXhlZC5saXN0ID4gLml0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIHBhZGRpbmctcmlnaHQ6IEByZWxheGVkSG9yaXpvbnRhbFBhZGRpbmc7XG59XG5cbi8qIFZlcnkgUmVsYXhlZCAqL1xuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIHBhZGRpbmctdG9wOiBAdmVyeVJlbGF4ZWRJdGVtVmVydGljYWxQYWRkaW5nO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1ib3R0b206IEB2ZXJ5UmVsYXhlZEl0ZW1WZXJ0aWNhbFBhZGRpbmc7XG59XG4udWkuaG9yaXpvbnRhbFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ubGlzdCAubGlzdCA+IC5pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLnVpLmhvcml6b250YWxbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmxpc3QgPiAuaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIHBhZGRpbmctbGVmdDogQHZlcnlSZWxheGVkSG9yaXpvbnRhbFBhZGRpbmc7XG59XG4udWkuaG9yaXpvbnRhbFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ubGlzdCAubGlzdCA+IC5pdGVtOm5vdCg6bGFzdC1jaGlsZCksXG4udWkuaG9yaXpvbnRhbFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ubGlzdCA+IC5pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBwYWRkaW5nLXJpZ2h0OiBAdmVyeVJlbGF4ZWRIb3Jpem9udGFsUGFkZGluZztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaS5saXN0IHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVNaW5pO1xufVxuLnVpLnRpbnkubGlzdCB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlVGlueTtcbn1cbi51aS5zbWFsbC5saXN0IHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVTbWFsbDtcbn1cbi51aS5saXN0IHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVNZWRpdW07XG59XG4udWkubGFyZ2UubGlzdCB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlTGFyZ2U7XG59XG4udWkuYmlnLmxpc3Qge1xuICBmb250LXNpemU6IEByZWxhdGl2ZUJpZztcbn1cbi51aS5odWdlLmxpc3Qge1xuICBmb250LXNpemU6IEByZWxhdGl2ZUh1Z2U7XG59XG4udWkubWFzc2l2ZS5saXN0IHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVNYXNzaXZlO1xufVxuXG4udWkubWluaS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5taW5pLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiBAbWluaTtcbn1cbi51aS50aW55Lmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLnRpbnkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLnNtYWxsLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG4udWkubGFyZ2UuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkubGFyZ2UuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5iaWcuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuYmlnLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiBAYmlnO1xufVxuLnVpLmh1Z2UuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuaHVnZS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQGh1Z2U7XG59XG4udWkubWFzc2l2ZS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5tYXNzaXZlLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuXG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBMb2FkZXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnZWxlbWVudCc7XG5AZWxlbWVudCA6ICdsb2FkZXInO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBMb2FkZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyogU3RhbmRhcmQgU2l6ZSAqL1xuLnVpLmxvYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBAbG9hZGVyVG9wT2Zmc2V0O1xuICBsZWZ0OiBAbG9hZGVyTGVmdE9mZnNldDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vKiBTdGF0aWMgU2hhcGUgKi9cbi51aS5sb2FkZXI6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xuICBib3JkZXI6IEBsb2FkZXJMaW5lV2lkdGggc29saWQgQGxvYWRlckZpbGxDb2xvcjtcbn1cblxuLyogQWN0aXZlIFNoYXBlICovXG4udWkubG9hZGVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgYW5pbWF0aW9uOiBsb2FkZXIgQGxvYWRlclNwZWVkIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyOiBAbG9hZGVyTGluZVdpZHRoIHNvbGlkIEBzaGFwZUJvcmRlckNvbG9yO1xuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG5cbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50O1xufVxuXG4vKiBTcGVlZHMgKi9cblxuLnVpLmZhc3QubG9hZGluZy5sb2FkaW5nOmFmdGVyLFxuLnVpLmZhc3QubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5mYXN0LmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5mYXN0LmxvYWRlcjphZnRlciB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogQGxvYWRlclNwZWVkRmFzdDtcbn1cblxuLnVpLnNsb3cubG9hZGluZy5sb2FkaW5nOmFmdGVyLFxuLnVpLnNsb3cubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5zbG93LmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5zbG93LmxvYWRlcjphZnRlciB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogQGxvYWRlclNwZWVkU2xvdztcbn1cblxuLyogQWN0aXZlIEFuaW1hdGlvbiAqL1xuQGtleWZyYW1lcyBsb2FkZXIge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi8qIFNpemVzICovXG4udWkubWluaS5sb2FkZXI6YmVmb3JlLFxuLnVpLm1pbmkubG9hZGVyOmFmdGVyIHtcbiAgd2lkdGg6IEBtaW5pO1xuICBoZWlnaHQ6IEBtaW5pO1xuICBtYXJnaW46IEBtaW5pT2Zmc2V0O1xufVxuLnVpLnRpbnkubG9hZGVyOmJlZm9yZSxcbi51aS50aW55LmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiBAdGlueTtcbiAgaGVpZ2h0OiBAdGlueTtcbiAgbWFyZ2luOiBAdGlueU9mZnNldDtcbn1cbi51aS5zbWFsbC5sb2FkZXI6YmVmb3JlLFxuLnVpLnNtYWxsLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiBAc21hbGw7XG4gIGhlaWdodDogQHNtYWxsO1xuICBtYXJnaW46IEBzbWFsbE9mZnNldDtcbn1cbi51aS5sb2FkZXI6YmVmb3JlLFxuLnVpLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiBAbWVkaXVtO1xuICBoZWlnaHQ6IEBtZWRpdW07XG4gIG1hcmdpbjogQG1lZGl1bU9mZnNldDtcbn1cbi51aS5sYXJnZS5sb2FkZXI6YmVmb3JlLFxuLnVpLmxhcmdlLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiBAbGFyZ2U7XG4gIGhlaWdodDogQGxhcmdlO1xuICBtYXJnaW46IEBsYXJnZU9mZnNldDtcbn1cbi51aS5iaWcubG9hZGVyOmJlZm9yZSxcbi51aS5iaWcubG9hZGVyOmFmdGVyIHtcbiAgd2lkdGg6IEBiaWc7XG4gIGhlaWdodDogQGJpZztcbiAgbWFyZ2luOiBAYmlnT2Zmc2V0O1xufVxuLnVpLmh1Z2UubG9hZGVyOmJlZm9yZSxcbi51aS5odWdlLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiBAaHVnZTtcbiAgaGVpZ2h0OiBAaHVnZTtcbiAgbWFyZ2luOiBAaHVnZU9mZnNldDtcbn1cbi51aS5tYXNzaXZlLmxvYWRlcjpiZWZvcmUsXG4udWkubWFzc2l2ZS5sb2FkZXI6YWZ0ZXIge1xuICB3aWR0aDogQG1hc3NpdmU7XG4gIGhlaWdodDogQG1hc3NpdmU7XG4gIG1hcmdpbjogQG1hc3NpdmVPZmZzZXQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU2hvdyBpbnNpZGUgYWN0aXZlIGRpbW1lciAqL1xuLnVpLmRpbW1lciA+IC5sb2FkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogQmxhY2sgRGltbWVyICovXG4udWkuZGltbWVyID4gLnVpLmxvYWRlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRMb2FkZXJUZXh0Q29sb3I7XG59XG4udWkuZGltbWVyID4gLnVpLmxvYWRlcjpub3QoLmVsYXN0aWMpOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogQGludmVydGVkTG9hZGVyRmlsbENvbG9yO1xufVxuXG4vKiBXaGl0ZSBEaW1tZXIgKEludmVydGVkKSAqL1xuLnVpLmludmVydGVkLmRpbW1lciA+IC51aS5sb2FkZXIge1xuICBjb2xvcjogQGxvYWRlclRleHRDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAudWkubG9hZGVyOm5vdCguZWxhc3RpYyk6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiBAbG9hZGVyRmlsbENvbG9yO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudWkudWkudWkudGV4dC5sb2FkZXIge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuaW5kZXRlcm1pbmF0ZS5sb2FkZXI6YWZ0ZXIge1xuICBhbmltYXRpb24tZGlyZWN0aW9uOiBAaW5kZXRlcm1pbmF0ZURpcmVjdGlvbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiBAaW5kZXRlcm1pbmF0ZVNwZWVkO1xufVxuXG4udWkubG9hZGVyLmFjdGl2ZSxcbi51aS5sb2FkZXIudmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnVpLmxvYWRlci5kaXNhYmxlZCxcbi51aS5sb2FkZXIuaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyogTG9hZGVyICovXG4udWkubWluaS5sb2FkZXIge1xuICB3aWR0aDogQG1pbmk7XG4gIGhlaWdodDogQG1pbmk7XG4gIGZvbnQtc2l6ZTogQG1pbmlGb250U2l6ZTtcbn1cbi51aS50aW55LmxvYWRlciB7XG4gIHdpZHRoOiBAdGlueTtcbiAgaGVpZ2h0OiBAdGlueTtcbiAgZm9udC1zaXplOiBAdGlueUZvbnRTaXplO1xufVxuLnVpLnNtYWxsLmxvYWRlciB7XG4gIHdpZHRoOiBAc21hbGw7XG4gIGhlaWdodDogQHNtYWxsO1xuICBmb250LXNpemU6IEBzbWFsbEZvbnRTaXplO1xufVxuLnVpLmxvYWRlciB7XG4gIHdpZHRoOiBAbWVkaXVtO1xuICBoZWlnaHQ6IEBtZWRpdW07XG4gIGZvbnQtc2l6ZTogQG1lZGl1bUZvbnRTaXplO1xufVxuLnVpLmxhcmdlLmxvYWRlciB7XG4gIHdpZHRoOiBAbGFyZ2U7XG4gIGhlaWdodDogQGxhcmdlO1xuICBmb250LXNpemU6IEBsYXJnZUZvbnRTaXplO1xufVxuLnVpLmJpZy5sb2FkZXIge1xuICB3aWR0aDogQGJpZztcbiAgaGVpZ2h0OiBAYmlnO1xuICBmb250LXNpemU6IEBiaWdGb250U2l6ZTtcbn1cbi51aS5odWdlLmxvYWRlciB7XG4gIHdpZHRoOiBAaHVnZTtcbiAgaGVpZ2h0OiBAaHVnZTtcbiAgZm9udC1zaXplOiBAaHVnZUZvbnRTaXplO1xufVxuLnVpLm1hc3NpdmUubG9hZGVyIHtcbiAgd2lkdGg6IEBtYXNzaXZlO1xuICBoZWlnaHQ6IEBtYXNzaXZlO1xuICBmb250LXNpemU6IEBtYXNzaXZlRm9udFNpemU7XG59XG5cbi8qIFRleHQgTG9hZGVyICovXG4udWkubWluaS50ZXh0LmxvYWRlciB7XG4gIG1pbi13aWR0aDogQG1pbmk7XG4gIHBhZGRpbmctdG9wOiAoQG1pbmkgKyBAdGV4dERpc3RhbmNlKTtcbn1cbi51aS50aW55LnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiBAdGlueTtcbiAgcGFkZGluZy10b3A6IChAdGlueSArIEB0ZXh0RGlzdGFuY2UpO1xufVxuLnVpLnNtYWxsLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiBAc21hbGw7XG4gIHBhZGRpbmctdG9wOiAoQHNtYWxsICsgQHRleHREaXN0YW5jZSk7XG59XG4udWkudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IEBtZWRpdW07XG4gIHBhZGRpbmctdG9wOiAoQG1lZGl1bSArIEB0ZXh0RGlzdGFuY2UpO1xufVxuLnVpLmxhcmdlLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiBAbGFyZ2U7XG4gIHBhZGRpbmctdG9wOiAoQGxhcmdlICsgQHRleHREaXN0YW5jZSk7XG59XG4udWkuYmlnLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiBAYmlnO1xuICBwYWRkaW5nLXRvcDogKEBiaWcgKyBAdGV4dERpc3RhbmNlKTtcbn1cbi51aS5odWdlLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiBAaHVnZTtcbiAgcGFkZGluZy10b3A6IChAaHVnZSArIEB0ZXh0RGlzdGFuY2UpO1xufVxuLnVpLm1hc3NpdmUudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IEBtYXNzaXZlO1xuICBwYWRkaW5nLXRvcDogKEBtYXNzaXZlICsgQHRleHREaXN0YW5jZSk7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmVhY2goQGNvbG9ycywge1xuICBAY29sb3I6IHJlcGxhY2UoQGtleSwgJ0AnLCAnJyk7XG4gIEBjOiBAY29sb3JzW0BAY29sb3JdW2NvbG9yXTtcbiAgQGw6IEBjb2xvcnNbQEBjb2xvcl1bbGlnaHRdO1xuXG4gIC51aS5Ae2NvbG9yfS5lbGFzdGljLmxvYWRlci5sb2FkZXI6YmVmb3JlLFxuICAudWkuQHtjb2xvcn0uYmFzaWMuZWxhc3RpYy5sb2FkaW5nLmJ1dHRvbjpiZWZvcmUsXG4gIC51aS5Ae2NvbG9yfS5iYXNpYy5lbGFzdGljLmxvYWRpbmcuYnV0dG9uOmFmdGVyLFxuICAudWkuQHtjb2xvcn0uZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbiAgLnVpLkB7Y29sb3J9LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbiAgLnVpLkB7Y29sb3J9LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4gIC51aS5Ae2NvbG9yfS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOm5vdCgudXN1YWwpOm5vdCguYnV0dG9uKTphZnRlcixcbiAgLnVpLkB7Y29sb3J9LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuICAudWkuQHtjb2xvcn0ubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbiAgLnVpLkB7Y29sb3J9LmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgICBjb2xvcjogQGM7XG4gIH1cbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmVsYXN0aWMubG9hZGVyOmJlZm9yZSxcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5zZWdtZW50KTpiZWZvcmUsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmJlZm9yZSxcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC51c3VhbCk6YWZ0ZXIsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4gIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gICAgY29sb3I6IEBsO1xuICB9XG59KVxuXG4udWkuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSxcbi51aS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nOmJlZm9yZSxcbi51aS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLnVzdWFsKTphZnRlcixcbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmxvYWRlci5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG4udWkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmJ1dHRvbjpub3QoLmludmVydGVkKTpub3QoLmJhc2ljKTpiZWZvcmUge1xuICBjb2xvcjogQGludmVydGVkTG9hZGVyTGluZUNvbG9yO1xufVxuLnVpLmVsYXN0aWMuYmFzaWMubG9hZGluZy5idXR0b246YmVmb3JlLFxuLnVpLmVsYXN0aWMuYmFzaWMubG9hZGluZy5idXR0b246YWZ0ZXIge1xuICBjb2xvcjogQGxvYWRlckxpbmVDb2xvcjtcbn1cbi51aS5kb3VibGUubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5idXR0b246YWZ0ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJbmxpbmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmlubGluZS5sb2FkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBAaW5saW5lVmVydGljYWxBbGlnbjtcbiAgbWFyZ2luOiBAaW5saW5lTWFyZ2luO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnVpLmlubGluZS5sb2FkZXIuYWN0aXZlLFxuLnVpLmlubGluZS5sb2FkZXIudmlzaWJsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyogQ2VudGVyZWQgSW5saW5lICovXG4udWkuY2VudGVyZWQuaW5saW5lLmxvYWRlci5hY3RpdmUsXG4udWkuY2VudGVyZWQuaW5saW5lLmxvYWRlci52aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzphZnRlcixcbi51aS5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YWZ0ZXIsXG4udWkubG9hZGVyLmxvYWRlci5sb2FkZXIubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOnRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7XG59XG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLmRvdWJsZSk6YWZ0ZXIsXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZzpub3QoLmRvdWJsZSkgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5kb3VibGUpID4gaS5pY29uOmFmdGVyLFxuLnVpLmxvYWRlci5sb2FkZXIubG9hZGVyLmxvYWRlci5sb2FkZXIubG9hZGVyOm5vdCguZG91YmxlKTphZnRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnVpLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLnNlZ21lbnQ6YWZ0ZXIsXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcuZm9ybTphZnRlciB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOkBsb2FkZXJGaWxsQ29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjpAbG9hZGVyRmlsbENvbG9yO1xufVxuLnVpLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLnNlZ21lbnQ6bm90KC5kb3VibGUpOmFmdGVyLFxuLnVpLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmZvcm06bm90KC5kb3VibGUpOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQGxvYWRlckZpbGxDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRWxhc3RpY1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGltbWVyID4gLnVpLmVsYXN0aWMubG9hZGVyIHtcbiAgY29sb3I6IEBpbnZlcnRlZExvYWRlckxpbmVDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAudWkuZWxhc3RpYy5sb2FkZXIge1xuICBjb2xvcjogQGxvYWRlckxpbmVDb2xvcjtcbn1cbi51aS5lbGFzdGljLmxvYWRpbmcubG9hZGluZzpub3QoLmZvcm0pOm5vdCguc2VnbWVudCk6YWZ0ZXIsXG4udWkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmFmdGVyLFxuLnVpLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmVsYXN0aWMubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGFuaW1hdGlvbjogbG9hZGVyIDFzIGluZmluaXRlIGN1YmljLWJlemllciguMjcsIDEuMDUsIC45MiwgLjYxKTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xufVxuLnVpLmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5mb3JtKTpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5lbGFzdGljLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuZWxhc3RpYy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjpiZWZvcmUsXG4udWkuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSB7XG4gIGFuaW1hdGlvbjogZWxhc3RpYy1sb2FkZXIgMXMgaW5maW5pdGUgY3ViaWMtYmV6aWVyKC4yNywgMS4wNSwgLjkyLCAuNjEpO1xuICAtbW96LWFuaW1hdGlvbjogY3VycmVudGNvbG9yLWVsYXN0aWMtbG9hZGVyIDFzIGluZmluaXRlIGN1YmljLWJlemllciguMjcsIDEuMDUsIC45MiwgLjYxKTtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi51aS5lbGFzdGljLmlubGluZS5sb2FkZXI6ZW1wdHkge1xuICBhbmltYXRpb246IGxvYWRlciA4cyBpbmZpbml0ZSBsaW5lYXI7XG59XG4udWkuc2xvdy5lbGFzdGljLmxvYWRpbmcubG9hZGluZzpub3QoLmZvcm0pOm5vdCguc2VnbWVudCk6YWZ0ZXIsXG4udWkuc2xvdy5lbGFzdGljLmxvYWRpbmcubG9hZGluZyAuaW5wdXQgPiBpLmljb246YWZ0ZXIsXG4udWkuc2xvdy5lbGFzdGljLmxvYWRpbmcubG9hZGluZyA+IGkuaWNvbjphZnRlcixcbi51aS5zbG93LmVsYXN0aWMubG9hZGVyLmxvYWRlcjphZnRlciB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjQ1cztcbn1cbi51aS5zbG93LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5mb3JtKTpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5zbG93LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5zbG93LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLnNsb3cuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbn1cbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nOm5vdCguZm9ybSk6bm90KC5zZWdtZW50KTphZnRlcixcbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nIC5pbnB1dCA+IGkuaWNvbjphZnRlcixcbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nID4gaS5pY29uOmFmdGVyLFxuLnVpLmZhc3QuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmFmdGVyIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjY2cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjIwcztcbn1cbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmc6bm90KC5mb3JtKTpub3QoLnNlZ21lbnQpOmJlZm9yZSxcbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5mYXN0LmVsYXN0aWMubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcgPiBpLmljb246YmVmb3JlLFxuLnVpLmZhc3QuZWxhc3RpYy5sb2FkZXIubG9hZGVyOmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC42NnM7XG59XG5Aa2V5ZnJhbWVzIGVsYXN0aWMtbG9hZGVyIHtcbiAgMCUsIDElIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnRcbiAgfVxuICAxLjElLCA1MCUge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBpbmhlcml0O1xuICB9XG4gIDEwJSwgMzUuMSV7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgMTAuMSUsIDM1JXtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBpbmhlcml0O1xuICB9XG4gIDUwLjEle1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAxMDAlIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGN1cnJlbnRjb2xvci1lbGFzdGljLWxvYWRlciB7XG4gIDAlLCAxJSB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50XG4gIH1cbiAgMS4xJSwgNTAlIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogY3VycmVudENvbG9yO1xuICB9XG4gIDEwJSwgMzUuMSV7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgMTAuMSUsIDM1JXtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIH1cbiAgNTAuMSV7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIDEwMCUge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIExvYWRlclxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdlbGVtZW50JztcbkBlbGVtZW50IDogJ3BsYWNlaG9sZGVyJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBsYWNlaG9sZGVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlclNoaW1tZXIgQHBsYWNlaG9sZGVyTG9hZGluZ0FuaW1hdGlvbkR1cmF0aW9uIGxpbmVhcjtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogQHBsYWNlaG9sZGVyTG9hZGluZ0dyYWRpZW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IEBwbGFjZWhvbGRlckxvYWRpbmdHcmFkaWVudFdpZHRoIDEwMCU7XG4gIG1heC13aWR0aDogQHBsYWNlaG9sZGVyTWF4V2lkdGg7XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXJTaGltbWVye1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLUBwbGFjZWhvbGRlckxvYWRpbmdHcmFkaWVudFdpZHRoIDBcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBAcGxhY2Vob2xkZXJMb2FkaW5nR3JhZGllbnRXaWR0aCAwXG4gIH1cbn1cblxuLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyIHtcbiAgbWFyZ2luLXRvcDogQGNvbnNlY3V0aXZlUGxhY2Vob2xkZXJTcGFjaW5nO1xufVxuLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiBAcGxhY2Vob2xkZXJBbmltYXRpb25JbnRlcnZhbDtcbn1cbi51aS5wbGFjZWhvbGRlciArIC51aS5wbGFjZWhvbGRlciArIC51aS5wbGFjZWhvbGRlciB7XG4gIGFuaW1hdGlvbi1kZWxheTogKEBwbGFjZWhvbGRlckFuaW1hdGlvbkludGVydmFsICogMik7XG59XG4udWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIge1xuICBhbmltYXRpb24tZGVsYXk6IChAcGxhY2Vob2xkZXJBbmltYXRpb25JbnRlcnZhbCAqIDMpO1xufVxuLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAoQHBsYWNlaG9sZGVyQW5pbWF0aW9uSW50ZXJ2YWwgKiA0KTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyLFxuLnVpLnBsYWNlaG9sZGVyID4gOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAuaW1hZ2UuaGVhZGVyOmFmdGVyLFxuLnVpLnBsYWNlaG9sZGVyIC5saW5lLFxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xufVxuXG4udWkucGxhY2Vob2xkZXIuaGlkZGVuIHtcbiAgZGlzcGxheTpub25lO1xufVxuXG4vKiBJbWFnZSAqL1xuLnVpLnBsYWNlaG9sZGVyIC5pbWFnZTpub3QoLmhlYWRlcik6bm90KC51aSk6bm90KC5pY29uKSB7XG4gIGhlaWdodDogQHBsYWNlaG9sZGVySW1hZ2VIZWlnaHQ7XG59XG4udWkucGxhY2Vob2xkZXIgLnNxdWFyZS5pbWFnZTpub3QoLmhlYWRlcikge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIDEvMSBhc3BlY3QgcmF0aW8gKi9cbiAgcGFkZGluZy10b3A6IDEwMCU7XG59XG4udWkucGxhY2Vob2xkZXIgLnJlY3Rhbmd1bGFyLmltYWdlOm5vdCguaGVhZGVyKSB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogNC8zIGFzcGVjdCByYXRpbyAqL1xuICBwYWRkaW5nLXRvcDogNzUlO1xufVxuXG5cbi8qIExpbmVzICovXG4udWkucGxhY2Vob2xkZXIgLmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogQHBsYWNlaG9sZGVyTGluZU1hcmdpbjtcbn1cbi51aS5wbGFjZWhvbGRlciAubGluZTpiZWZvcmUsXG4udWkucGxhY2Vob2xkZXIgLmxpbmU6YWZ0ZXIge1xuICB0b3A6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG59XG4udWkucGxhY2Vob2xkZXIgLmxpbmU6YmVmb3JlIHtcbiAgbGVmdDogMDtcbn1cbi51aS5wbGFjZWhvbGRlciAubGluZTphZnRlciB7XG4gIHJpZ2h0OiAwO1xufVxuXG4vKiBBbnkgTGluZXMgKi9cbi51aS5wbGFjZWhvbGRlciAubGluZSB7XG4gIG1hcmdpbi1ib3R0b206IEBwbGFjZWhvbGRlckxpbmVIZWlnaHQ7XG59XG4udWkucGxhY2Vob2xkZXIgLmxpbmU6YmVmb3JlLFxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmFmdGVyIHtcbiAgaGVpZ2h0OiBAcGxhY2Vob2xkZXJMaW5lSGVpZ2h0O1xufVxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXRvcDogQHBsYWNlaG9sZGVyTGluZUhlaWdodDtcbn1cblxuLyogSGVhZGVyIEltYWdlICsgMiBMaW5lcyAqL1xuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIExpbmUgT3V0ZGVudCAqL1xuLnVpLnBsYWNlaG9sZGVyIC5saW5lOm50aC1jaGlsZCgxKTphZnRlciB7XG4gIHdpZHRoOiBAcGxhY2Vob2xkZXJMaW5lT25lT3V0ZGVudDtcbn1cbi51aS5wbGFjZWhvbGRlciAubGluZTpudGgtY2hpbGQoMik6YWZ0ZXIge1xuICB3aWR0aDogQHBsYWNlaG9sZGVyTGluZVR3b091dGRlbnQ7XG59XG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bnRoLWNoaWxkKDMpOmFmdGVyIHtcbiAgd2lkdGg6IEBwbGFjZWhvbGRlckxpbmVUaHJlZU91dGRlbnQ7XG59XG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bnRoLWNoaWxkKDQpOmFmdGVyIHtcbiAgd2lkdGg6IEBwbGFjZWhvbGRlckxpbmVGb3VyT3V0ZGVudDtcbn1cbi51aS5wbGFjZWhvbGRlciAubGluZTpudGgtY2hpbGQoNSk6YWZ0ZXIge1xuICB3aWR0aDogQHBsYWNlaG9sZGVyTGluZUZpdmVPdXRkZW50O1xufVxuXG4vKiBIZWFkZXIgTGluZSAxICYgMiovXG4udWkucGxhY2Vob2xkZXIgLmhlYWRlciAubGluZSB7XG4gIG1hcmdpbi1ib3R0b206IEBwbGFjZWhvbGRlckhlYWRlckxpbmVIZWlnaHQ7XG59XG4udWkucGxhY2Vob2xkZXIgLmhlYWRlciAubGluZTpiZWZvcmUsXG4udWkucGxhY2Vob2xkZXIgLmhlYWRlciAubGluZTphZnRlciB7XG4gIGhlaWdodDogQHBsYWNlaG9sZGVySGVhZGVyTGluZUhlaWdodDtcbn1cbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyIC5saW5lOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXRvcDogQHBsYWNlaG9sZGVySGVhZGVyTGluZUhlaWdodDtcbn1cbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyIC5saW5lOmFmdGVyIHtcbiAgd2lkdGg6IEBwbGFjZWhvbGRlckhlYWRlckxpbmVPbmVPdXRkZW50O1xufVxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6bnRoLWNoaWxkKDIpOmFmdGVyIHtcbiAgd2lkdGg6IEBwbGFjZWhvbGRlckhlYWRlckxpbmVUd29PdXRkZW50O1xufVxuXG4vKiBJbWFnZSBIZWFkZXIgKi9cbi51aS5wbGFjZWhvbGRlciAuaW1hZ2UuaGVhZGVyIC5saW5lIHtcbiAgbWFyZ2luLWxlZnQ6IEBwbGFjZWhvbGRlckltYWdlV2lkdGg7XG59XG4udWkucGxhY2Vob2xkZXIgLmltYWdlLmhlYWRlciAubGluZTpiZWZvcmUge1xuICB3aWR0aDogQHBsYWNlaG9sZGVySW1hZ2VUZXh0SW5kZW50O1xufVxuLnVpLnBsYWNlaG9sZGVyIC5pbWFnZS5oZWFkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBAcGxhY2Vob2xkZXJMaW5lTWFyZ2luO1xuICBjb250ZW50OiAnJztcbiAgbWFyZ2luLWxlZnQ6IEBwbGFjZWhvbGRlckltYWdlV2lkdGg7XG59XG5cbi8qIFNwYWNpbmcgKi9cbi51aS5wbGFjZWhvbGRlciAuaW1hZ2UgLmxpbmU6Zmlyc3QtY2hpbGQsXG4udWkucGxhY2Vob2xkZXIgLnBhcmFncmFwaCAubGluZTpmaXJzdC1jaGlsZCxcbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyIC5saW5lOmZpcnN0LWNoaWxkIHtcbiAgaGVpZ2h0OiAwLjAxcHg7XG59XG4udWkucGxhY2Vob2xkZXIgLmltYWdlOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAucGFyYWdyYXBoOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSB7XG4gIGhlaWdodDogQHBsYWNlaG9sZGVyU3BhY2luZztcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBJbnZlcnRlZCBDb250ZW50IExvYWRlciAqL1xuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogQHBsYWNlaG9sZGVySW52ZXJ0ZWRMb2FkaW5nR3JhZGllbnQ7XG59XG4udWkuaW52ZXJ0ZWQucGxhY2Vob2xkZXIsXG4udWkuaW52ZXJ0ZWQucGxhY2Vob2xkZXIgPiA6YmVmb3JlLFxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyIC5pbWFnZS5oZWFkZXI6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQucGxhY2Vob2xkZXIgLmxpbmUsXG4udWkuaW52ZXJ0ZWQucGxhY2Vob2xkZXIgLmxpbmU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmxhY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucGxhY2Vob2xkZXIgLmZ1bGwubGluZS5saW5lLmxpbmU6YWZ0ZXIge1xuICB3aWR0aDogQHBsYWNlaG9sZGVyRnVsbExpbmVPdXRkZW50O1xufVxuLnVpLnBsYWNlaG9sZGVyIC52ZXJ5LmxvbmcubGluZS5saW5lLmxpbmU6YWZ0ZXIge1xuICB3aWR0aDogQHBsYWNlaG9sZGVyVmVyeUxvbmdMaW5lT3V0ZGVudDtcbn1cbi51aS5wbGFjZWhvbGRlciAubG9uZy5saW5lLmxpbmUubGluZTphZnRlciB7XG4gIHdpZHRoOiBAcGxhY2Vob2xkZXJMb25nTGluZU91dGRlbnQ7XG59XG4udWkucGxhY2Vob2xkZXIgLm1lZGl1bS5saW5lLmxpbmUubGluZTphZnRlciB7XG4gIHdpZHRoOiBAcGxhY2Vob2xkZXJNZWRpdW1MaW5lT3V0ZGVudDtcbn1cbi51aS5wbGFjZWhvbGRlciAuc2hvcnQubGluZS5saW5lLmxpbmU6YWZ0ZXIge1xuICB3aWR0aDogQHBsYWNlaG9sZGVyU2hvcnRMaW5lT3V0ZGVudDtcbn1cbi51aS5wbGFjZWhvbGRlciAudmVyeS5zaG9ydC5saW5lLmxpbmUubGluZTphZnRlciB7XG4gIHdpZHRoOiBAcGxhY2Vob2xkZXJWZXJ5U2hvcnRMaW5lT3V0ZGVudDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsdWlkLnBsYWNlaG9sZGVyIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBSYWlsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnZWxlbWVudCc7XG5AZWxlbWVudCA6ICdyYWlsJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFJhaWxzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkucmFpbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogQHdpZHRoO1xuICBoZWlnaHQ6IEBoZWlnaHQ7XG59XG5cbi51aS5sZWZ0LnJhaWwge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAwJTtcbiAgcGFkZGluZzogMCBAc3BsaXREaXN0YW5jZSAwIDA7XG4gIG1hcmdpbjogMCBAc3BsaXREaXN0YW5jZSAwIDA7XG59XG5cbi51aS5yaWdodC5yYWlsIHtcbiAgbGVmdDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDAgMCAwIEBzcGxpdERpc3RhbmNlO1xuICBtYXJnaW46IDAgMCAwIEBzcGxpdERpc3RhbmNlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEludGVybmFsXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGVmdC5pbnRlcm5hbC5yYWlsIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDAgMCAwIEBzcGxpdERpc3RhbmNlO1xuICBtYXJnaW46IDAgMCAwIEBzcGxpdERpc3RhbmNlO1xufVxuXG4udWkucmlnaHQuaW50ZXJuYWwucmFpbCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nOiAwIEBzcGxpdERpc3RhbmNlIDAgMDtcbiAgbWFyZ2luOiAwIEBzcGxpdERpc3RhbmNlIDAgMDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGl2aWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGluZy5yYWlsIHtcbiAgd2lkdGg6IEBkaXZpZGluZ1dpZHRoO1xufVxuLnVpLmxlZnQuZGl2aWRpbmcucmFpbCB7XG4gIHBhZGRpbmc6IDAgQHNwbGl0RGl2aWRpbmdEaXN0YW5jZSAwIDA7XG4gIG1hcmdpbjogMCBAc3BsaXREaXZpZGluZ0Rpc3RhbmNlIDAgMDtcbiAgYm9yZGVyLXJpZ2h0OiBAZGl2aWRpbmdCb3JkZXI7XG59XG4udWkucmlnaHQuZGl2aWRpbmcucmFpbCB7XG4gIGJvcmRlci1sZWZ0OiBAZGl2aWRpbmdCb3JkZXI7XG4gIHBhZGRpbmc6IDAgMCAwIEBzcGxpdERpdmlkaW5nRGlzdGFuY2U7XG4gIG1hcmdpbjogMCAwIDAgQHNwbGl0RGl2aWRpbmdEaXN0YW5jZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIERpc3RhbmNlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2xvc2UucmFpbCB7XG4gIHdpZHRoOiBAY2xvc2VXaWR0aDtcbn1cbi51aS5jbG9zZS5sZWZ0LnJhaWwge1xuICBwYWRkaW5nOiAwIEBzcGxpdENsb3NlRGlzdGFuY2UgMCAwO1xuICBtYXJnaW46IDAgQHNwbGl0Q2xvc2VEaXN0YW5jZSAwIDA7XG59XG4udWkuY2xvc2UucmlnaHQucmFpbCB7XG4gIHBhZGRpbmc6IDAgMCAwIEBzcGxpdENsb3NlRGlzdGFuY2U7XG4gIG1hcmdpbjogMCAwIDAgQHNwbGl0Q2xvc2VEaXN0YW5jZTtcbn1cblxuLnVpLnZlcnkuY2xvc2UucmFpbCB7XG4gIHdpZHRoOiBAdmVyeUNsb3NlV2lkdGg7XG59XG4udWkudmVyeS5jbG9zZS5sZWZ0LnJhaWwge1xuICBwYWRkaW5nOiAwIEBzcGxpdFZlcnlDbG9zZURpc3RhbmNlIDAgMDtcbiAgbWFyZ2luOiAwIEBzcGxpdFZlcnlDbG9zZURpc3RhbmNlIDAgMDtcbn1cbi51aS52ZXJ5LmNsb3NlLnJpZ2h0LnJhaWwge1xuICBwYWRkaW5nOiAwIDAgMCBAc3BsaXRWZXJ5Q2xvc2VEaXN0YW5jZTtcbiAgbWFyZ2luOiAwIDAgMCBAc3BsaXRWZXJ5Q2xvc2VEaXN0YW5jZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYXR0YWNoZWQubGVmdC5yYWlsLFxuLnVpLmF0dGFjaGVkLnJpZ2h0LnJhaWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaS5yYWlsIHtcbiAgZm9udC1zaXplOiBAbWluaTtcbn1cbi51aS50aW55LnJhaWwge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLnJhaWwge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbi51aS5yYWlsIHtcbiAgZm9udC1zaXplOiBAbWVkaXVtO1xufVxuLnVpLmxhcmdlLnJhaWwge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5iaWcucmFpbCB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5odWdlLnJhaWwge1xuICBmb250LXNpemU6IEBodWdlO1xufVxuLnVpLm1hc3NpdmUucmFpbCB7XG4gIGZvbnQtc2l6ZTogQG1hc3NpdmU7XG59XG5cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gUmV2ZWFsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnZWxlbWVudCc7XG5AZWxlbWVudCA6ICdyZXZlYWwnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBSZXZlYWxcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5yZXZlYWwgIHtcbiAgZGlzcGxheTogaW5oZXJpdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMCAhaW1wb3J0YW50O1xufVxuXG4udWkucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICB6LWluZGV4OiBAdG9wWkluZGV4ICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xufVxuLnVpLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICB6LWluZGV4OiBAYm90dG9tWkluZGV4ICFpbXBvcnRhbnQ7XG59XG5cbi8qIE1ha2Ugc3VyZSBob3ZlcmVkIGVsZW1lbnQgaXMgb24gdG9wIG9mIG90aGVyIHJldmVhbCAqL1xuLnVpLmFjdGl2ZS5yZXZlYWwgLnZpc2libGUuY29udGVudCxcbi51aS5yZXZlYWw6aG92ZXIgLnZpc2libGUuY29udGVudCB7XG4gIHotaW5kZXg6IEBhY3RpdmVaSW5kZXggIWltcG9ydGFudDtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTbGlkZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNsaWRlLnJldmVhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi51aS5zbGlkZS5yZXZlYWwgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgZmxvYXQ6IGxlZnQ7XG5cbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBAc2xpZGVUcmFuc2l0aW9uO1xufVxuXG4udWkuc2xpZGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnNsaWRlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUuYWN0aXZlLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCxcbi51aS5zbGlkZS5yZXZlYWw6aG92ZXIgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS5yaWdodC5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLnJpZ2h0LnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbn1cbi51aS5zbGlkZS5yaWdodC5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5zbGlkZS5yaWdodC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUucmlnaHQuYWN0aXZlLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCxcbi51aS5zbGlkZS5yaWdodC5yZXZlYWw6aG92ZXIgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS51cC5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbn1cbi51aS5zbGlkZS51cC5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5zbGlkZS51cC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlLnVwLmFjdGl2ZS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQsXG4udWkuc2xpZGUudXAucmV2ZWFsOmhvdmVyID4gLmhpZGRlbi5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGUuZG93bi5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGUuZG93bi5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5zbGlkZS5kb3duLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbn1cbi51aS5zbGlkZS5kb3duLmFjdGl2ZS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQsXG4udWkuc2xpZGUuZG93bi5yZXZlYWw6aG92ZXIgPiAuaGlkZGVuLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpICFpbXBvcnRhbnQ7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmFkZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZhZGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIG9wYWNpdHk6IDE7XG59XG4udWkuZmFkZS5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5mYWRlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICBvcGFjaXR5OiAwO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1vdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tb3ZlLnJldmVhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi51aS5tb3ZlLnJldmVhbCA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogQG1vdmVUcmFuc2l0aW9uO1xufVxuXG4udWkubW92ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG59XG4udWkubW92ZS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuLnVpLm1vdmUuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkubW92ZS5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSAhaW1wb3J0YW50O1xufVxuLnVpLm1vdmUucmlnaHQuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkubW92ZS5yaWdodC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkubW92ZS51cC5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5tb3ZlLnVwLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG4udWkubW92ZS5kb3duLmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLm1vdmUuZG93bi5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG59XG5cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFJvdGF0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJvdGF0ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogQHRyYW5zaXRpb25EdXJhdGlvbjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG59XG5cbi51aS5yb3RhdGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5yb3RhdGUucmlnaHQucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbn1cbi51aS5yb3RhdGUuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkucm90YXRlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkucm90YXRlLnJpZ2h0LmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnJvdGF0ZS5yaWdodC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoQHJvdGF0ZURlZ3JlZXMpO1xufVxuXG4udWkucm90YXRlLmxlZnQucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xufVxuLnVpLnJvdGF0ZS5sZWZ0LmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnJvdGF0ZS5sZWZ0LnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtQHJvdGF0ZURlZ3JlZXMpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5kaXNhYmxlZC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS52aXNpYmxlLmNvbnRlbnQge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnVpLmRpc2FibGVkLnJldmVhbDpob3ZlciA+IC5oaWRkZW4uaGlkZGVuLmNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5yZXZlYWwgPiAudWkucmliYm9uLmxhYmVsIHtcbiAgei1pbmRleDogQG92ZXJsYXlaSW5kZXg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVmlzaWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZpc2libGUucmV2ZWFsIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW5zdGFudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmluc3RhbnQucmV2ZWFsID4gLmNvbnRlbnQge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmV2ZWFsID4gLmNvbnRlbnQge1xuICBmb250LXNpemU6IEBtZWRpdW0gIWltcG9ydGFudDtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gU2VnbWVudFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2VsZW1lbnQnO1xuQGVsZW1lbnQgOiAnc2VnbWVudCc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFNlZ21lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zZWdtZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBAYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogQGJveFNoYWRvdztcbiAgbWFyZ2luOiBAbWFyZ2luO1xuICBwYWRkaW5nOiBAcGFkZGluZztcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbiAgYm9yZGVyOiBAYm9yZGVyO1xufVxuXG4udWkuc2VnbWVudDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkuc2VnbWVudDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVpLnZlcnRpY2FsLnNlZ21lbnQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcblxuICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IEBib3JkZXJXaWR0aCBzb2xpZCBAYm9yZGVyQ29sb3I7XG59XG4udWkudmVydGljYWwuc2VnbWVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBMb29zZSBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBIZWFkZXIgKi9cbi51aS5pbnZlcnRlZC5zZWdtZW50ID4gLnVpLmhlYWRlciA+IC5zdWIuaGVhZGVyLFxuLnVpLmludmVydGVkLnNlZ21lbnQgPiAudWkuaGVhZGVyIHtcbiAgY29sb3I6IEB3aGl0ZTtcbn1cblxuLyogTGFiZWwgKi9cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0uc2VnbWVudCA+IFtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0ubGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbi51aVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0uc2VnbWVudCA+IFtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ubGFiZWwge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi51aS5hdHRhY2hlZC5zZWdtZW50Om5vdCgudG9wKTpub3QoLmJvdHRvbSkgPiBbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG4udWkuYXR0YWNoZWQuc2VnbWVudDpub3QoLnRvcCk6bm90KC5ib3R0b20pID4gW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4vKiBHcmlkICovXG4udWkucGFnZS5ncmlkLnNlZ21lbnQsXG4udWkuZ3JpZCA+IC5yb3cgPiAudWkuc2VnbWVudC5jb2x1bW4sXG4udWkuZ3JpZCA+IC51aS5zZWdtZW50LmNvbHVtbiB7XG4gIHBhZGRpbmctdG9wOiBAcGFnZUdyaWRNYXJnaW47XG4gIHBhZGRpbmctYm90dG9tOiBAcGFnZUdyaWRNYXJnaW47XG59XG4udWkuZ3JpZC5zZWdtZW50IHtcbiAgbWFyZ2luOiBAbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xufVxuXG4vKiBUYWJsZSAqL1xuLnVpLmJhc2ljLnRhYmxlLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiBAYmFja2dyb3VuZDtcbiAgYm9yZGVyOiBAYm9yZGVyO1xuICBib3gtc2hhZG93OiBAYm94U2hhZG93O1xufVxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGUuc2VnbWVudCB7XG4gIHBhZGRpbmc6IEBwYWRkaW5nO1xufVxuXG4vKiBUYWIgKi9cbi51aS5zZWdtZW50LnRhYjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogQHZlcnRpY2FsTWFyZ2luO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBQbGFjZWhvbGRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICBhbmltYXRpb246IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiBAcGxhY2Vob2xkZXJQYWRkaW5nO1xuICBtaW4taGVpZ2h0OiBAcGxhY2Vob2xkZXJNaW5IZWlnaHQ7XG4gIGJhY2tncm91bmQ6IEBwbGFjZWhvbGRlckJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogQHBsYWNlaG9sZGVyQm9yZGVyQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBwbGFjZWhvbGRlckJveFNoYWRvdztcbn1cblxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgLmJ1dHRvbixcbi51aS5wbGFjZWhvbGRlci5zZWdtZW50IHRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuZmllbGQsXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCB0ZXh0YXJlYSxcbi51aS5wbGFjZWhvbGRlci5zZWdtZW50ID4gLnVpLmlucHV0LFxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgLmJ1dHRvbiB7XG4gIG1heC13aWR0aDogQHBsYWNlaG9sZGVyQ29udGVudE1heFdpZHRoO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgLmNvbHVtbiAuYnV0dG9uLFxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgLmNvbHVtbiAuZmllbGQsXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuY29sdW1uIHRleHRhcmVhLFxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgLmNvbHVtbiA+IC51aS5pbnB1dCB7XG4gIG1heC13aWR0aDogQHBsYWNlaG9sZGVyQ29udGVudE1heFdpZHRoO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCA+IC5pbmxpbmUgIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgPiAuaW5saW5lID4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogQHBsYWNlaG9sZGVyQ29udGVudElubGluZUJ1dHRvbk1hcmdpbjtcbn1cbi51aS5wbGFjZWhvbGRlci5zZWdtZW50ID4gLmlubGluZSA+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGlsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBpbGVkLnNlZ21lbnRzLFxuLnVpLnBpbGVkLnNlZ21lbnQge1xuICBtYXJnaW46IEBwaWxlZE1hcmdpbiAwO1xuICBib3gtc2hhZG93OiBAcGlsZWRCb3hTaGFkb3c7XG4gIHotaW5kZXg6IEBwaWxlZFpJbmRleDtcbn1cbi51aS5waWxlZC5zZWdtZW50OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5waWxlZC5zZWdtZW50Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVpLnBpbGVkLnNlZ21lbnRzOmFmdGVyLFxuLnVpLnBpbGVkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS5waWxlZC5zZWdtZW50OmFmdGVyLFxuLnVpLnBpbGVkLnNlZ21lbnQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiBAcGlsZWRCb3JkZXI7XG4gIGJveC1zaGFkb3c6IEBwaWxlZEJveFNoYWRvdztcbn1cbi51aS5waWxlZC5zZWdtZW50czpiZWZvcmUsXG4udWkucGlsZWQuc2VnbWVudDpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtQHBpbGVkRGVncmVlcyk7XG4gIHRvcDogMDtcbiAgei1pbmRleDogLTI7XG59XG4udWkucGlsZWQuc2VnbWVudHM6YWZ0ZXIsXG4udWkucGlsZWQuc2VnbWVudDphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKEBwaWxlZERlZ3JlZXMpO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4vKiBQaWxlZCBBdHRhY2hlZCAqL1xuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5waWxlZC5zZWdtZW50IHtcbiAgbWFyZ2luLXRvcDogQHBpbGVkTWFyZ2luO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVpLnBpbGVkLnNlZ21lbnRbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5waWxlZC5zZWdtZW50W2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IEBwaWxlZE1hcmdpbjtcbn1cbi51aS5waWxlZC5zZWdtZW50W2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU3RhY2tlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RhY2tlZC5zZWdtZW50IHtcbiAgcGFkZGluZy1ib3R0b206IEBzdGFja2VkUGFkZGluZztcbn1cbi51aS5zdGFja2VkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS5zdGFja2VkLnNlZ21lbnRzOmFmdGVyLFxuLnVpLnN0YWNrZWQuc2VnbWVudDpiZWZvcmUsXG4udWkuc3RhY2tlZC5zZWdtZW50OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtKEBzdGFja2VkSGVpZ2h0IC8gMik7XG4gIGxlZnQ6IDA7XG5cbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEBib3JkZXJDb2xvcjtcbiAgYmFja2dyb3VuZDogQHN0YWNrZWRQYWdlQmFja2dyb3VuZDtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBAc3RhY2tlZEhlaWdodDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi51aS5zdGFja2VkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS5zdGFja2VkLnNlZ21lbnQ6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQWRkIGFkZGl0aW9uYWwgcGFnZSAqL1xuLnVpLnRhbGwuc3RhY2tlZC5zZWdtZW50czpiZWZvcmUsXG4udWkudGFsbC5zdGFja2VkLnNlZ21lbnQ6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvdHRvbTogMDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cbi51aS5zdGFja2VkLmludmVydGVkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS5zdGFja2VkLmludmVydGVkLnNlZ21lbnRzOmFmdGVyLFxuLnVpLnN0YWNrZWQuaW52ZXJ0ZWQuc2VnbWVudDpiZWZvcmUsXG4udWkuc3RhY2tlZC5pbnZlcnRlZC5zZWdtZW50OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHN1YnRsZVRyYW5zcGFyZW50QmxhY2s7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAc2VsZWN0ZWRCb3JkZXJDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUGFkZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wYWRkZWQuc2VnbWVudCB7XG4gIHBhZGRpbmc6IEBwYWRkZWRTZWdtZW50UGFkZGluZztcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnNlZ21lbnQge1xuICBwYWRkaW5nOiBAdmVyeVBhZGRlZFNlZ21lbnRQYWRkaW5nO1xufVxuXG4vKiBQYWRkZWQgdmVydGljYWwgKi9cbi51aS5wYWRkZWQuc2VnbWVudC52ZXJ0aWNhbC5zZWdtZW50LFxuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnZlcnRpY2FsLnNlZ21lbnQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbXBhY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbXBhY3Quc2VnbWVudCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4vKiBDb21wYWN0IEdyb3VwICovXG4udWkuY29tcGFjdC5zZWdtZW50cyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuLnVpLmNvbXBhY3Quc2VnbWVudHMgLnNlZ21lbnQsXG4udWkuc2VnbWVudHMgLmNvbXBhY3Quc2VnbWVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAwIDEgYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ2lyY3VsYXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNpcmN1bGFyLnNlZ21lbnQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBwYWRkaW5nOiBAY2lyY3VsYXJQYWRkaW5nO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBSYWlzZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJhaXNlZC5yYWlzZWQuc2VnbWVudHMsXG4udWkucmFpc2VkLnJhaXNlZC5zZWdtZW50IHtcbiAgYm94LXNoYWRvdzogQHJhaXNlZEJveFNoYWRvdztcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgR3JvdXBzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBHcm91cCAqL1xuLnVpLnNlZ21lbnRzIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IEBncm91cGVkTWFyZ2luO1xuICBib3JkZXI6IEBncm91cGVkQm9yZGVyO1xuICBib3gtc2hhZG93OiBAZ3JvdXBlZEJveFNoYWRvdztcbiAgYm9yZGVyLXJhZGl1czogQGdyb3VwZWRCb3JkZXJSYWRpdXM7XG59XG4udWkuc2VnbWVudHM6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLnNlZ21lbnRzOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8qIE5lc3RlZCBTZWdtZW50ICovXG4udWkuc2VnbWVudHMgPiAuc2VnbWVudCB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IEBncm91cGVkU2VnbWVudE1hcmdpbjtcbiAgd2lkdGg6IEBncm91cGVkU2VnbWVudFdpZHRoO1xuICBib3gtc2hhZG93OiBAZ3JvdXBlZFNlZ21lbnRCb3hTaGFkb3c7XG4gIGJvcmRlcjogQGdyb3VwZWRTZWdtZW50Qm9yZGVyO1xuICBib3JkZXItdG9wOiBAZ3JvdXBlZFNlZ21lbnREaXZpZGVyO1xufVxuXG4udWkuc2VnbWVudHM6bm90KC5ob3Jpem9udGFsKSA+IC5zZWdtZW50OmZpcnN0LWNoaWxkIHtcbiAgdG9wOiBAYXR0YWNoZWRUb3BPZmZzZXQ7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzIDAgMDtcbn1cblxuLyogQm90dG9tICovXG4udWkuc2VnbWVudHM6bm90KC5ob3Jpem9udGFsKSA+IC5zZWdtZW50Omxhc3QtY2hpbGQge1xuICB0b3A6IEBhdHRhY2hlZEJvdHRvbU9mZnNldDtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3gtc2hhZG93OiBAYXR0YWNoZWRCb3R0b21Cb3hTaGFkb3c7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAYm9yZGVyUmFkaXVzIEBib3JkZXJSYWRpdXM7XG59XG5cbi8qIE9ubHkgKi9cbi51aS5zZWdtZW50czpub3QoLmhvcml6b250YWwpID4gLnNlZ21lbnQ6b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG59XG5cblxuLyogTmVzdGVkIEdyb3VwICovXG4udWkuc2VnbWVudHMgPiAudWkuc2VnbWVudHMge1xuICBib3JkZXItdG9wOiBAZ3JvdXBlZFNlZ21lbnREaXZpZGVyO1xuICBtYXJnaW46IEBuZXN0ZWRHcm91cE1hcmdpbjtcbn1cbi51aS5zZWdtZW50cyA+IC5zZWdtZW50czpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG4udWkuc2VnbWVudHMgPiAuc2VnbWVudCArIC5zZWdtZW50czpub3QoLmhvcml6b250YWwpIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogSG9yaXpvbnRhbCBHcm91cCAqL1xuLnVpLmhvcml6b250YWwuc2VnbWVudHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogQGJveFNoYWRvdztcbiAgbWFyZ2luOiBAbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICBib3JkZXI6IEBib3JkZXI7XG59XG4udWkuc3RhY2thYmxlLmhvcml6b250YWwuc2VnbWVudHMge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi8qIE5lc3RlZCBIb3Jpem9udGFsIEdyb3VwICovXG4udWkuc2VnbWVudHMgPiAuaG9yaXpvbnRhbC5zZWdtZW50cyB7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXRvcDogQGdyb3VwZWRTZWdtZW50RGl2aWRlcjtcbn1cblxuLyogSG9yaXpvbnRhbCBTZWdtZW50ICovXG4udWkuaG9yaXpvbnRhbC5zZWdtZW50czpub3QoLmNvbXBhY3QpID4gLnNlZ21lbnQ6bm90KC5jb21wYWN0KSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICAtbXMtZmxleDogMSAxIDA7IC8qIFNvbHZlcyAjMjU1MCBNUyBGbGV4ICovXG59XG4udWkuaG9yaXpvbnRhbC5zZWdtZW50cyA+IC5zZWdtZW50IHtcbiAgbWFyZ2luOiAwO1xuICBtaW4td2lkdGg6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IEBib3JkZXJXaWR0aCBzb2xpZCBAYm9yZGVyQ29sb3I7XG59XG5cbi8qIEJvcmRlciBGaXhlcyAqL1xuLnVpLnNlZ21lbnRzID4gLmhvcml6b250YWwuc2VnbWVudHM6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLnVpLmhvcml6b250YWwuc2VnbWVudHM6bm90KC5zdGFja2FibGUpID4gLnNlZ21lbnQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXNhYmxlZC5zZWdtZW50IHtcbiAgb3BhY2l0eTogQGRpc2FibGVkT3BhY2l0eTtcbiAgY29sb3I6IEBkaXNhYmxlZFRleHRDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sb2FkaW5nLnNlZ21lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG59XG4udWkubG9hZGluZy5zZWdtZW50OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogQGxvYWRlckRpbW1lckNvbG9yO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICB6LWluZGV4OiBAbG9hZGVyRGltbWVyWkluZGV4O1xufVxuLnVpLmxvYWRpbmcuc2VnbWVudDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG5cbiAgbWFyZ2luOiBAbG9hZGVyTWFyZ2luO1xuICB3aWR0aDogQGxvYWRlclNpemU7XG4gIGhlaWdodDogQGxvYWRlclNpemU7XG5cbiAgYW5pbWF0aW9uOiBsb2FkZXIgQGxvYWRlclNwZWVkIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyOiBAbG9hZGVyTGluZVdpZHRoIHNvbGlkIEBsb2FkZXJMaW5lQ29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IEBjaXJjdWxhclJhZGl1cztcblxuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHotaW5kZXg6IEBsb2FkZXJMaW5lWkluZGV4O1xufVxuXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmFzaWMuc2VnbWVudCxcbi51aS5zZWdtZW50cyAudWkuYmFzaWMuc2VnbWVudCxcbi51aS5iYXNpYy5zZWdtZW50cyB7XG4gIGJhY2tncm91bmQ6IEBiYXNpY0JhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEBiYXNpY0JveFNoYWRvdztcbiAgYm9yZGVyOiBAYmFzaWNCb3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IEBiYXNpY0JvcmRlclJhZGl1cztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ2xlYXJpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNsZWFyaW5nLnNlZ21lbnQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMse1xuICBAY29sb3I6IHJlcGxhY2UoQGtleSwnQCcsJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG4gICYgd2hlbiBub3QgKEBjb2xvcj1wcmltYXJ5KSBhbmQgbm90IChAY29sb3I9c2Vjb25kYXJ5KSB7XG4gICAgLnVpLkB7Y29sb3J9LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQuc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gICAgICBib3JkZXItdG9wOiBAY29sb3JlZEJvcmRlclNpemUgc29saWQgQGM7XG4gICAgfVxuICAgIC51aS5pbnZlcnRlZC5Ae2NvbG9yfS5zZWdtZW50LnNlZ21lbnQuc2VnbWVudC5zZWdtZW50LnNlZ21lbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGM7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgIH1cbiAgfVxufSlcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLnNlZ21lbnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uc2VnbWVudCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLnVpW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLnNlZ21lbnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsb2F0ZWQuc2VnbWVudCxcbi51aVtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uc2VnbWVudCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IEBmbG9hdGVkRGlzdGFuY2U7XG59XG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5zZWdtZW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogQGZsb2F0ZWREaXN0YW5jZTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5zZWdtZW50IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmludmVydGVkLnNlZ21lbnQsXG4udWkucHJpbWFyeS5pbnZlcnRlZC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQmFja2dyb3VuZDtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbn1cblxuLyogTmVzdGVkICovXG4udWkuaW52ZXJ0ZWQuc2VnbWVudCAuc2VnbWVudCB7XG4gIGNvbG9yOiBAdGV4dENvbG9yO1xufVxuLnVpLmludmVydGVkLnNlZ21lbnQgLmludmVydGVkLnNlZ21lbnQge1xuICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xufVxuXG4vKiBBdHRhY2hlZCAqL1xuLnVpLmludmVydGVkLmF0dGFjaGVkLnNlZ21lbnQge1xuICBib3JkZXItY29sb3I6IEBzb2xpZFdoaXRlQm9yZGVyQ29sb3I7XG59XG5cbi8qIExvYWRpbmcgKi9cbi51aS5pbnZlcnRlZC5sb2FkaW5nLnNlZ21lbnQge1xuICBjb2xvcjogQGludmVydGVkTG9hZGVyTGluZUNvbG9yO1xufVxuLnVpLmludmVydGVkLmxvYWRpbmcuc2VnbWVudDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBAbG9hZGVySW52ZXJ0ZWREaW1tZXJDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEVtcGhhc2lzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNlY29uZGFyeSAqL1xuLnVpLnNlY29uZGFyeS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZDogQHNlY29uZGFyeUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc2Vjb25kYXJ5Q29sb3I7XG59XG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiBAc2Vjb25kYXJ5SW52ZXJ0ZWRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHNlY29uZGFyeUludmVydGVkQ29sb3I7XG59XG5cbi8qIFRlcnRpYXJ5ICovXG4udWkudGVydGlhcnkuc2VnbWVudCB7XG4gIGJhY2tncm91bmQ6IEB0ZXJ0aWFyeUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAdGVydGlhcnlDb2xvcjtcbn1cbi51aS50ZXJ0aWFyeS5pbnZlcnRlZC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZDogQHRlcnRpYXJ5SW52ZXJ0ZWRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHRlcnRpYXJ5SW52ZXJ0ZWRDb2xvcjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE1pZGRsZSAqL1xuLnVpLmF0dGFjaGVkLnNlZ21lbnQge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luOiAwIEBhdHRhY2hlZEhvcml6b250YWxPZmZzZXQ7XG4gIHdpZHRoOiBAYXR0YWNoZWRXaWR0aDtcbiAgbWF4LXdpZHRoOiBAYXR0YWNoZWRXaWR0aDtcbiAgYm94LXNoYWRvdzogQGF0dGFjaGVkQm94U2hhZG93O1xuICBib3JkZXI6IEBhdHRhY2hlZEJvcmRlcjtcbn1cbi51aS5hdHRhY2hlZDpub3QoLm1lc3NhZ2UpICsgLnVpLmF0dGFjaGVkLnNlZ21lbnQ6bm90KC50b3ApIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLyogVG9wICovXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLnNlZ21lbnQge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRvcDogQGF0dGFjaGVkVG9wT2Zmc2V0O1xuICBtYXJnaW4tdG9wOiBAdmVydGljYWxNYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDA7XG59XG4udWkuc2VnbWVudFtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4vKiBCb3R0b20gKi9cbi51aS5zZWdtZW50W2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXSB7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgdG9wOiBAYXR0YWNoZWRCb3R0b21PZmZzZXQ7XG4gIG1hcmdpbi1ib3R0b206IEB2ZXJ0aWNhbE1hcmdpbjtcbiAgYm94LXNoYWRvdzogQGF0dGFjaGVkQm90dG9tQm94U2hhZG93O1xuICBib3JkZXItcmFkaXVzOiAwIDAgQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzO1xufVxuLnVpLnNlZ21lbnRbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiBAdmVydGljYWxNYXJnaW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRml0dGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZml0dGVkLnNlZ21lbnQ6bm90KC5ob3Jpem9udGFsbHkpIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLnVpLmZpdHRlZC5zZWdtZW50Om5vdCgudmVydGljYWxseSkge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5taW5pLnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLm1pbmkuc2VnbWVudCB7XG4gIGZvbnQtc2l6ZTogQG1pbmk7XG59XG4udWkudGlueS5zZWdtZW50cyAuc2VnbWVudCxcbi51aS50aW55LnNlZ21lbnQge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLnNtYWxsLnNlZ21lbnQge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbi51aS5zZWdtZW50cyAuc2VnbWVudCxcbi51aS5zZWdtZW50IHtcbiAgZm9udC1zaXplOiBAbWVkaXVtO1xufVxuLnVpLmxhcmdlLnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLmxhcmdlLnNlZ21lbnQge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5iaWcuc2VnbWVudHMgLnNlZ21lbnQsXG4udWkuYmlnLnNlZ21lbnQge1xuICBmb250LXNpemU6IEBiaWc7XG59XG4udWkuaHVnZS5zZWdtZW50cyAuc2VnbWVudCxcbi51aS5odWdlLnNlZ21lbnQge1xuICBmb250LXNpemU6IEBodWdlO1xufVxuLnVpLm1hc3NpdmUuc2VnbWVudHMgLnNlZ21lbnQsXG4udWkubWFzc2l2ZS5zZWdtZW50IHtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gU3RlcFxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RlcFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgTG9hZCBUaGVtZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQHR5cGUgICAgOiAnZWxlbWVudCc7XG5AZWxlbWVudCA6ICdzdGVwJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUGx1cmFsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc3RlcHMge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIG1hcmdpbjogQHN0ZXBNYXJnaW47XG4gIGJhY2tncm91bmQ6IEBzdGVwc0JhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEBzdGVwc0JveFNoYWRvdztcbiAgbGluZS1oZWlnaHQ6IEBsaW5lSGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiBAc3RlcHNCb3JkZXJSYWRpdXM7XG4gIGJvcmRlcjogQHN0ZXBzQm9yZGVyO1xufVxuLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4vKiBGaXJzdCBTdGVwcyAqL1xuLnVpLnN0ZXBzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogTGFzdCBTdGVwcyAqL1xuLnVpLnN0ZXBzOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFNpbmd1bGFyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc3RlcHMgLnN0ZXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogQGp1c3RpZnlDb250ZW50O1xuXG4gIG1hcmdpbjogQHZlcnRpY2FsTWFyZ2luIEBob3Jpem9udGFsTWFyZ2luO1xuICBwYWRkaW5nOiBAdmVydGljYWxQYWRkaW5nIEBob3Jpem9udGFsUGFkZGluZztcbiAgYmFja2dyb3VuZDogQGJhY2tncm91bmQ7XG4gIGNvbG9yOiBAdGV4dENvbG9yO1xuICBib3gtc2hhZG93OiBAYm94U2hhZG93O1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICBib3JkZXI6IEBib3JkZXI7XG4gIGJvcmRlci1yaWdodDogQGRpdmlkZXI7XG4gIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xufVxuXG4vKiBBcnJvdyAqL1xuLnVpLnN0ZXBzIC5zdGVwOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiBAYXJyb3dUb3BPZmZzZXQ7XG4gIHJpZ2h0OiBAYXJyb3dSaWdodE9mZnNldDtcbiAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGFycm93QmFja2dyb3VuZENvbG9yO1xuICB3aWR0aDogQGFycm93U2l6ZTtcbiAgaGVpZ2h0OiBAYXJyb3dTaXplO1xuXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogQGJvcmRlckNvbG9yO1xuICBib3JkZXItd2lkdGg6IEBhcnJvd0JvcmRlcldpZHRoO1xuXG4gIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKiBGaXJzdCBTdGVwICovXG4udWkuc3RlcHMgLnN0ZXA6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IEBob3Jpem9udGFsUGFkZGluZztcbiAgYm9yZGVyLXJhZGl1czogQHN0ZXBzQm9yZGVyUmFkaXVzIDAgMCBAc3RlcHNCb3JkZXJSYWRpdXM7XG59XG5cbi8qIExhc3QgU3RlcCAqL1xuLnVpLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIEBzdGVwc0JvcmRlclJhZGl1cyBAc3RlcHNCb3JkZXJSYWRpdXMgMDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qIE9ubHkgU3RlcCAqL1xuLnVpLnN0ZXBzIC5zdGVwOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiBAc3RlcHNCb3JkZXJSYWRpdXM7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFRpdGxlICovXG4udWkuc3RlcHMgLnN0ZXAgLnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IEB0aXRsZUZvbnRGYW1pbHk7XG4gIGZvbnQtc2l6ZTogQHRpdGxlRm9udFNpemU7XG4gIGZvbnQtd2VpZ2h0OiBAdGl0bGVGb250V2VpZ2h0O1xufVxuLnVpLnN0ZXBzIC5zdGVwID4gLnRpdGxlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIERlc2NyaXB0aW9uICovXG4udWkuc3RlcHMgLnN0ZXAgLmRlc2NyaXB0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IEBkZXNjcmlwdGlvbkZvbnRXZWlnaHQ7XG4gIGZvbnQtc2l6ZTogQGRlc2NyaXB0aW9uRm9udFNpemU7XG4gIGNvbG9yOiBAZGVzY3JpcHRpb25Db2xvcjtcbn1cbi51aS5zdGVwcyAuc3RlcCA+IC5kZXNjcmlwdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnN0ZXBzIC5zdGVwIC50aXRsZSB+IC5kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IEBkZXNjcmlwdGlvbkRpc3RhbmNlO1xufVxuXG4vKiBJY29uICovXG4udWkuc3RlcHMgLnN0ZXAgPiAuaWNvbiB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IEBpY29uU2l6ZTtcbiAgbWFyZ2luOiAwIEBpY29uRGlzdGFuY2UgMCAwO1xufVxuLnVpLnN0ZXBzIC5zdGVwID4gLmljb24sXG4udWkuc3RlcHMgLnN0ZXAgPiAuaWNvbiB+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBhbGlnbi1zZWxmOiBAaWNvbkFsaWduO1xufVxuXG4vKiBIb3Jpem9udGFsIEljb24gKi9cbi51aS5zdGVwczpub3QoLnZlcnRpY2FsKSAuc3RlcCA+IC5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qIExpbmsgKi9cbi51aS5zdGVwcyAubGluay5zdGVwLFxuLnVpLnN0ZXBzIGEuc3RlcCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5vcmRlcmVkLnN0ZXBzIHtcbiAgY291bnRlci1yZXNldDogb3JkZXJlZDtcbn1cbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbnRlbnQ6IGNvdW50ZXIob3JkZXJlZCk7XG4gIGFsaWduLXNlbGY6IEBpY29uQWxpZ247XG4gIG1hcmdpbi1yaWdodDogQGljb25EaXN0YW5jZTtcbiAgZm9udC1zaXplOiBAaWNvblNpemU7XG4gIGNvdW50ZXItaW5jcmVtZW50OiBvcmRlcmVkO1xuICBmb250LWZhbWlseTogQG9yZGVyZWRGb250RmFtaWx5O1xuICBmb250LXdlaWdodDogQG9yZGVyZWRGb250V2VpZ2h0O1xufVxuXG4udWkub3JkZXJlZC5zdGVwcyAuc3RlcCA+ICoge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYWxpZ24tc2VsZjogQGljb25BbGlnbjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVmVydGljYWxcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS52ZXJ0aWNhbC5zdGVwcyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi51aS52ZXJ0aWNhbC5zdGVwcyAuc3RlcCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbiAgcGFkZGluZzogQHZlcnRpY2FsUGFkZGluZyBAaG9yaXpvbnRhbFBhZGRpbmc7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogQHZlcnRpY2FsRGl2aWRlcjtcbn1cbi51aS52ZXJ0aWNhbC5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmc6IEB2ZXJ0aWNhbFBhZGRpbmcgQGhvcml6b250YWxQYWRkaW5nO1xuICBib3JkZXItcmFkaXVzOiBAc3RlcHNCb3JkZXJSYWRpdXMgQHN0ZXBzQm9yZGVyUmFkaXVzIDAgMDtcbn1cbi51aS52ZXJ0aWNhbC5zdGVwcyAuc3RlcDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIEBzdGVwc0JvcmRlclJhZGl1cyBAc3RlcHNCb3JkZXJSYWRpdXM7XG59XG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXA6b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IEBzdGVwc0JvcmRlclJhZGl1cztcbn1cblxuXG4vKiBBcnJvdyAqL1xuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwOmFmdGVyIHtcbiAgdG9wOiBAdmVydGljYWxBcnJvd1RvcE9mZnNldDtcbiAgcmlnaHQ6IEB2ZXJ0aWNhbEFycm93UmlnaHRPZmZzZXQ7XG4gIGJvcmRlci13aWR0aDogQHZlcnRpY2FsQXJyb3dCb3JkZXJXaWR0aDtcbiAgZGlzcGxheTogQHZlcnRpY2FsQXJyb3dEaXNwbGF5O1xufVxuXG4udWkudmVydGljYWwuc3RlcHMgLmFjdGl2ZS5zdGVwOmFmdGVyIHtcbiAgZGlzcGxheTogQHZlcnRpY2FsQWN0aXZlQXJyb3dEaXNwbGF5O1xufVxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBAdmVydGljYWxMYXN0QXJyb3dEaXNwbGF5O1xufVxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5hY3RpdmUuc3RlcDpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgZGlzcGxheTogQHZlcnRpY2FsQWN0aXZlTGFzdEFycm93RGlzcGxheTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLVxuICAgIFJlc3BvbnNpdmVcbi0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNb2JpbGUgKERlZmF1bHQpICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IChAbGFyZ2VzdE1vYmlsZVNjcmVlbikpIHtcblxuICAudWkuc3RlcHM6bm90KC51bnN0YWNrYWJsZSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIC5zdGVwIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbiAgICBwYWRkaW5nOiBAdmVydGljYWxQYWRkaW5nIEBob3Jpem9udGFsUGFkZGluZztcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogQHN0ZXBzQm9yZGVyO1xuICB9XG4gIC51aS5zdGVwczpub3QoLnVuc3RhY2thYmxlKSAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogQHZlcnRpY2FsUGFkZGluZyBAaG9yaXpvbnRhbFBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogQHN0ZXBzQm9yZGVyUmFkaXVzIEBzdGVwc0JvcmRlclJhZGl1cyAwIDA7XG4gIH1cbiAgLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIC5zdGVwOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCBAc3RlcHNCb3JkZXJSYWRpdXMgQHN0ZXBzQm9yZGVyUmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICAvKiBBcnJvdyAqL1xuICAudWkuc3RlcHM6bm90KC51bnN0YWNrYWJsZSkgLnN0ZXA6YWZ0ZXIge1xuICAgIHRvcDogdW5zZXQ7XG4gICAgYm90dG9tOiAtQGFycm93U2l6ZTtcbiAgICByaWdodDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxuICAudWkudmVydGljYWwuc3RlcHMgLmFjdGl2ZS5zdGVwOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogQ29udGVudCAqL1xuICAudWkuc3RlcHM6bm90KC51bnN0YWNrYWJsZSkgLnN0ZXAgLmNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC8qIEljb24gKi9cbiAgLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIC5zdGVwID4gLmljb24sXG4gIC51aS5vcmRlcmVkLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIC5zdGVwOmJlZm9yZSB7XG4gICAgbWFyZ2luOiAwIDAgQG1vYmlsZUljb25EaXN0YW5jZSAwO1xuICB9XG5cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIExpbmsgSG92ZXIgKi9cbi51aS5zdGVwcyAubGluay5zdGVwOmhvdmVyOjphZnRlcixcbi51aS5zdGVwcyAubGluay5zdGVwOmhvdmVyLFxuLnVpLnN0ZXBzIGEuc3RlcDpob3Zlcjo6YWZ0ZXIsXG4udWkuc3RlcHMgYS5zdGVwOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQGhvdmVyQmFja2dyb3VuZDtcbiAgY29sb3I6IEBob3ZlckNvbG9yO1xufVxuXG4vKiBMaW5rIERvd24gKi9cbi51aS5zdGVwcyAubGluay5zdGVwOmFjdGl2ZTo6YWZ0ZXIsXG4udWkuc3RlcHMgLmxpbmsuc3RlcDphY3RpdmUsXG4udWkuc3RlcHMgYS5zdGVwOmFjdGl2ZTo6YWZ0ZXIsXG4udWkuc3RlcHMgYS5zdGVwOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IEBkb3duQmFja2dyb3VuZDtcbiAgY29sb3I6IEBkb3duQ29sb3I7XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVpLnN0ZXBzIC5zdGVwLmFjdGl2ZSB7XG4gIGN1cnNvcjogYXV0bztcbiAgYmFja2dyb3VuZDogQGFjdGl2ZUJhY2tncm91bmQ7XG59XG4udWkuc3RlcHMgLnN0ZXAuYWN0aXZlOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogQGFjdGl2ZUJhY2tncm91bmQ7XG59XG4udWkuc3RlcHMgLnN0ZXAuYWN0aXZlIC50aXRsZSB7XG4gIGNvbG9yOiBAYWN0aXZlQ29sb3I7XG59XG4udWkub3JkZXJlZC5zdGVwcyAuc3RlcC5hY3RpdmU6YmVmb3JlLFxuLnVpLnN0ZXBzIC5hY3RpdmUuc3RlcCAuaWNvbiB7XG4gIGNvbG9yOiBAYWN0aXZlSWNvbkNvbG9yO1xufVxuXG4vKiBBY3RpdmUgQXJyb3cgKi9cbi51aS5zdGVwcyAuc3RlcDphZnRlciB7XG4gIGRpc3BsYXk6IEBhcnJvd0Rpc3BsYXk7XG59XG4udWkuc3RlcHMgLmFjdGl2ZS5zdGVwOmFmdGVyIHtcbiAgZGlzcGxheTogQGFjdGl2ZUFycm93RGlzcGxheTtcbn1cbi51aS5zdGVwcyAuc3RlcDpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgZGlzcGxheTogQGxhc3RBcnJvd0Rpc3BsYXk7XG59XG4udWkuc3RlcHMgLmFjdGl2ZS5zdGVwOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBAYWN0aXZlTGFzdEFycm93RGlzcGxheTtcbn1cblxuLyogQWN0aXZlIEhvdmVyICovXG4udWkuc3RlcHMgLmxpbmsuYWN0aXZlLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLnN0ZXBzIC5saW5rLmFjdGl2ZS5zdGVwOmhvdmVyLFxuLnVpLnN0ZXBzIGEuYWN0aXZlLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLnN0ZXBzIGEuYWN0aXZlLnN0ZXA6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IEBhY3RpdmVIb3ZlckJhY2tncm91bmQ7XG4gIGNvbG9yOiBAYWN0aXZlSG92ZXJDb2xvcjtcbn1cblxuLyogQ29tcGxldGVkICovXG4udWkuc3RlcHMgLnN0ZXAuY29tcGxldGVkID4gLmljb246YmVmb3JlLFxuLnVpLm9yZGVyZWQuc3RlcHMgLnN0ZXAuY29tcGxldGVkOmJlZm9yZSB7XG4gIGNvbG9yOiBAY29tcGxldGVkQ29sb3I7XG59XG5cbi8qIERpc2FibGVkICovXG4udWkuc3RlcHMgLmRpc2FibGVkLnN0ZXAge1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQ6IEBkaXNhYmxlZEJhY2tncm91bmQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwLFxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwIC50aXRsZSxcbi51aS5zdGVwcyAuZGlzYWJsZWQuc3RlcCAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogQGRpc2FibGVkQ29sb3I7XG59XG4udWkuc3RlcHMgLmRpc2FibGVkLnN0ZXA6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiBAZGlzYWJsZWRCYWNrZ3JvdW5kO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU3RhY2thYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBUYWJsZXQgT3IgQmVsb3cgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogQGxhcmdlc3RUYWJsZXRTY3JlZW4pIHtcblxuLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi8qIFN0ZXBzICovXG4udWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5zdGVwcyAuc3RlcCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG4gIHBhZGRpbmc6IEB2ZXJ0aWNhbFBhZGRpbmcgQGhvcml6b250YWxQYWRkaW5nO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IEBzdGVwc0JvcmRlcjtcbn1cbi51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnN0ZXBzIC5zdGVwOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZzogQHZlcnRpY2FsUGFkZGluZyBAaG9yaXpvbnRhbFBhZGRpbmc7XG4gIGJvcmRlci1yYWRpdXM6IEBzdGVwc0JvcmRlclJhZGl1cyBAc3RlcHNCb3JkZXJSYWRpdXMgMCAwO1xufVxuLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAc3RlcHNCb3JkZXJSYWRpdXMgQHN0ZXBzQm9yZGVyUmFkaXVzO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4vKiBBcnJvdyAqL1xuLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXA6YWZ0ZXIge1xuICB0b3A6IHVuc2V0O1xuICBib3R0b206IC1AYXJyb3dTaXplO1xuICByaWdodDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSg0NWRlZyk7XG59XG5cbi8qIENvbnRlbnQgKi9cbi51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnN0ZXBzIC5zdGVwIC5jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBJY29uICovXG4udWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5zdGVwcyAuc3RlcCA+IC5pY29uLFxuLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0ub3JkZXJlZC5zdGVwcyAuc3RlcDpiZWZvcmUge1xuICBtYXJnaW46IDAgMCBAbW9iaWxlSWNvbkRpc3RhbmNlIDA7XG59XG5cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEZsdWlkICovXG4udWkuZmx1aWQuc3RlcHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBUb3AgKi9cbi51aS5hdHRhY2hlZC5zdGVwcyB7XG4gIHdpZHRoOiBAYXR0YWNoZWRXaWR0aCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgQGF0dGFjaGVkSG9yaXpvbnRhbE9mZnNldCBAYXR0YWNoZWRWZXJ0aWNhbE9mZnNldDtcbiAgbWF4LXdpZHRoOiBAYXR0YWNoZWRXaWR0aDtcbiAgYm9yZGVyLXJhZGl1czogQHN0ZXBzQm9yZGVyUmFkaXVzIEBzdGVwc0JvcmRlclJhZGl1cyAwIDA7XG59XG4udWkuYXR0YWNoZWQuc3RlcHMgLnN0ZXA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiBAc3RlcHNCb3JkZXJSYWRpdXMgMCAwIDA7XG59XG4udWkuYXR0YWNoZWQuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgQHN0ZXBzQm9yZGVyUmFkaXVzIDAgMDtcbn1cblxuLyogQm90dG9tICovXG4udWkuYm90dG9tLmF0dGFjaGVkLnN0ZXBzIHtcbiAgbWFyZ2luOiBAYXR0YWNoZWRWZXJ0aWNhbE9mZnNldCBAYXR0YWNoZWRIb3Jpem9udGFsT2Zmc2V0IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAc3RlcHNCb3JkZXJSYWRpdXMgQHN0ZXBzQm9yZGVyUmFkaXVzO1xufVxuLnVpLmJvdHRvbS5hdHRhY2hlZC5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIEBzdGVwc0JvcmRlclJhZGl1cztcbn1cbi51aS5ib3R0b20uYXR0YWNoZWQuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAc3RlcHNCb3JkZXJSYWRpdXMgMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRXZlbmx5IERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm9uZS5zdGVwcyxcbi51aS50d28uc3RlcHMsXG4udWkudGhyZWUuc3RlcHMsXG4udWkuZm91ci5zdGVwcyxcbi51aS5maXZlLnN0ZXBzLFxuLnVpLnNpeC5zdGVwcyxcbi51aS5zZXZlbi5zdGVwcyxcbi51aS5laWdodC5zdGVwcyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLm9uZS5zdGVwcyA+IC5zdGVwLFxuLnVpLnR3by5zdGVwcyA+IC5zdGVwLFxuLnVpLnRocmVlLnN0ZXBzID4gLnN0ZXAsXG4udWkuZm91ci5zdGVwcyA+IC5zdGVwLFxuLnVpLmZpdmUuc3RlcHMgPiAuc3RlcCxcbi51aS5zaXguc3RlcHMgPiAuc3RlcCxcbi51aS5zZXZlbi5zdGVwcyA+IC5zdGVwLFxuLnVpLmVpZ2h0LnN0ZXBzID4gLnN0ZXAge1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cbi51aS5vbmUuc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnR3by5zdGVwcyA+IC5zdGVwIHtcbiAgd2lkdGg6IDUwJTtcbn1cbi51aS50aHJlZS5zdGVwcyA+IC5zdGVwIHtcbiAgd2lkdGg6IDMzLjMzMyU7XG59XG4udWkuZm91ci5zdGVwcyA+IC5zdGVwIHtcbiAgd2lkdGg6IDI1JTtcbn1cbi51aS5maXZlLnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMjAlO1xufVxuLnVpLnNpeC5zdGVwcyA+IC5zdGVwIHtcbiAgd2lkdGg6IDE2LjY2NiU7XG59XG4udWkuc2V2ZW4uc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAxNC4yODUlO1xufVxuLnVpLmVpZ2h0LnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMTIuNTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG4udWkubWluaS5zdGVwcyAuc3RlcCxcbi51aS5taW5pLnN0ZXAge1xuICBmb250LXNpemU6IEBtaW5pO1xufVxuLnVpLnRpbnkuc3RlcHMgLnN0ZXAsXG4udWkudGlueS5zdGVwIHtcbiAgZm9udC1zaXplOiBAdGlueTtcbn1cbi51aS5zbWFsbC5zdGVwcyAuc3RlcCxcbi51aS5zbWFsbC5zdGVwIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkuc3RlcHMgLnN0ZXAsXG4udWkuc3RlcCB7XG4gIGZvbnQtc2l6ZTogQG1lZGl1bTtcbn1cbi51aS5sYXJnZS5zdGVwcyAuc3RlcCxcbi51aS5sYXJnZS5zdGVwIHtcbiAgZm9udC1zaXplOiBAbGFyZ2U7XG59XG4udWkuYmlnLnN0ZXBzIC5zdGVwLFxuLnVpLmJpZy5zdGVwIHtcbiAgZm9udC1zaXplOiBAYmlnO1xufVxuLnVpLmh1Z2Uuc3RlcHMgLnN0ZXAsXG4udWkuaHVnZS5zdGVwIHtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cbi51aS5tYXNzaXZlLnN0ZXBzIC5zdGVwLFxuLnVpLm1hc3NpdmUuc3RlcCB7XG4gIGZvbnQtc2l6ZTogQG1hc3NpdmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLnN0ZXBzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgQHNvbGlkV2hpdGVCb3JkZXJDb2xvcjtcbn1cblxuLnVpLmludmVydGVkLnN0ZXBzIC5zdGVwIHtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgYmFja2dyb3VuZDogQGJsYWNrO1xuICBib3JkZXItY29sb3I6IEBzb2xpZFdoaXRlQm9yZGVyQ29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5zdGVwcyAuc3RlcDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBibGFjaztcbiAgYm9yZGVyLWNvbG9yOiBAc29saWRXaGl0ZUJvcmRlckNvbG9yO1xufVxuXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLnN0ZXAgLmRlc2NyaXB0aW9uIHtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbn1cblxuLyogQWN0aXZlICovXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLnN0ZXAuYWN0aXZlLFxuLnVpLmludmVydGVkLnN0ZXBzIC5zdGVwLmFjdGl2ZTphZnRlciB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEFjdGl2ZUJhY2tncm91bmQ7XG59XG4udWkuaW52ZXJ0ZWQub3JkZXJlZC5zdGVwcyAuc3RlcC5hY3RpdmU6YmVmb3JlLFxuLnVpLmludmVydGVkLnN0ZXBzIC5hY3RpdmUuc3RlcCAuaWNvbiB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTZWxlY3RlZFRleHRDb2xvcjtcbn1cblxuLyogRGlzYWJsZWQgKi9cbi51aS5pbnZlcnRlZC5zdGVwcyAuZGlzYWJsZWQuc3RlcCxcbi51aS5pbnZlcnRlZC5zdGVwcyAuZGlzYWJsZWQuc3RlcDphZnRlciB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZERpc2FibGVkQmFja2dyb3VuZDtcbn1cbi51aS5pbnZlcnRlZC5zdGVwcyAuZGlzYWJsZWQuc3RlcCxcbi51aS5pbnZlcnRlZC5zdGVwcyAuZGlzYWJsZWQuc3RlcCAudGl0bGUsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLmRpc2FibGVkLnN0ZXAgLmRlc2NyaXB0aW9uIHtcbiAgY29sb3I6IEBpbnZlcnRlZERpc2FibGVkVGV4dENvbG9yO1xufVxuXG4vKiBMaW5rIEhvdmVyICovXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLmxpbmsuc3RlcDpob3Zlcjo6YWZ0ZXIsXG4udWkuaW52ZXJ0ZWQuc3RlcHMgLmxpbmsuc3RlcDpob3Zlcixcbi51aS5pbnZlcnRlZC5zdGVwcyBhLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLmludmVydGVkLnN0ZXBzIGEuc3RlcDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEhvdmVyQmFja2dyb3VuZDtcbiAgY29sb3I6IEBpbnZlcnRlZEhvdmVyZWRUZXh0Q29sb3I7XG59XG5cbi8qIExpbmsgRG93biAqL1xuLnVpLmludmVydGVkLnN0ZXBzIC5saW5rLnN0ZXA6YWN0aXZlOjphZnRlcixcbi51aS5pbnZlcnRlZC5zdGVwcyAubGluay5zdGVwOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5zdGVwcyBhLnN0ZXA6YWN0aXZlOjphZnRlcixcbi51aS5pbnZlcnRlZC5zdGVwcyBhLnN0ZXA6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQWN0aXZlSG92ZXJCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGludmVydGVkUHJlc3NlZFRleHRDb2xvcjtcbn1cblxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTdGVwJztcbiAgc3JjOlxuICAgIHVybChkYXRhOmFwcGxpY2F0aW9uL3gtZm9udC10dGY7Y2hhcnNldD11dGYtODtiYXNlNjQsQUFFQUFBQU9BSUFBQXdCZ1QxTXZNajNoU1FFQUFBRHNBQUFBVm1OdFlYRFFFaG0zQUFBQlJBQUFBVXBqZG5RZ0Jrbi9sQUFBQnV3QUFBQWNabkJuYllvS2VEc0FBQWNJQUFBSmtXZGhjM0FBQUFBUUFBQUc1QUFBQUFobmJIbG0zMmNFZGdBQUFwQUFBQUMyYUdWaFpBRXJQSHNBQUFOSUFBQUFObWhvWldFSFV3Tk5BQUFEZ0FBQUFDUm9iWFI0Q3lrQUFBQUFBNlFBQUFBTWJHOWpZUUE0QUZzQUFBT3dBQUFBQ0cxaGVIQUFwZ204QUFBRHVBQUFBQ0J1WVcxbHpKMGFIQUFBQTlnQUFBTE5jRzl6ZEs2OVFKZ0FBQWFvQUFBQU8zQnlaWENTb1pyL0FBQVFuQUFBQUZZQUFRTzRBWkFBQlFBSUFub0N2QUFBQUl3Q2VnSzhBQUFCNEFBeEFRSUFBQUlBQlFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVR1pGWkFCQTZBRG9BUU5TLzJvQVdnTUxBRThBQUFBQkFBQUFBQUFBQUFBQUF3QUFBQU1BQUFBY0FBRUFBQUFBQUVRQUF3QUJBQUFBSEFBRUFDZ0FBQUFHQUFRQUFRQUNBQURvQWYvL0FBQUFBT2dBLy84QUFCZ0JBQUVBQUFBQUFBQUFBQUVHQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFBQURwQUtZQUJVQUhFQVpEd0VBQVFGQ0FBSUJBbW9BQVFBQmFnQUFBR0VVRnhRREVpc0JGQWNCQmlJbkFTWTBQd0UyTWg4QkFUWXlId0VXQTZRUC9pQVFMQkQrNmc4UFRCQXNFS1FCYmhBc0VFd1BBaFlXRVA0Z0R3OEJGaEFzRUV3UUVLVUJieEFRVEJBQUFBSC8vZit4QTE4REN3QU1BQkpBRHdBQkFRcERBQUFBQ3dCRUZSTUNFU3NCRkE0QklpNENQZ0V5SGdFRFdYTEc2TWh1Qm5xODlMcCtBVjUxeEhSMHhPckVkSFRFQUFBQUFBRUFBQUFCQUFERGVScGRYdzg4OVFBTEErZ0FBQUFBenpXWWpRQUFBQURQTldCTi8vMy9zUU9rQXdzQUFBQUlBQUlBQUFBQUFBQUFBUUFBQTFML2FnQmFBK2dBQVAvM0E2UUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBTUQ2QUFBQStnQUFBTlpBQUFBQUFBQUFEZ0FXd0FCQUFBQUF3QVdBQUVBQUFBQUFBSUFCZ0FUQUc0QUFBQXRDWkVBQUFBQUFBQUFFZ0RlQUFFQUFBQUFBQUFBTlFBQUFBRUFBQUFBQUFFQUNBQTFBQUVBQUFBQUFBSUFCd0E5QUFFQUFBQUFBQU1BQ0FCRUFBRUFBQUFBQUFRQUNBQk1BQUVBQUFBQUFBVUFDd0JVQUFFQUFBQUFBQVlBQ0FCZkFBRUFBQUFBQUFvQUt3Qm5BQUVBQUFBQUFBc0FFd0NTQUFNQUFRUUpBQUFBYWdDbEFBTUFBUVFKQUFFQUVBRVBBQU1BQVFRSkFBSUFEZ0VmQUFNQUFRUUpBQU1BRUFFdEFBTUFBUVFKQUFRQUVBRTlBQU1BQVFRSkFBVUFGZ0ZOQUFNQUFRUUpBQVlBRUFGakFBTUFBUVFKQUFvQVZnRnpBQU1BQVFRSkFBc0FKZ0hKUTI5d2VYSnBaMmgwSUNoREtTQXlNREUwSUdKNUlHOXlhV2RwYm1Gc0lHRjFkR2h2Y25NZ1FDQm1iMjUwWld4c2J5NWpiMjFtYjI1MFpXeHNiMUpsWjNWc1lYSm1iMjUwWld4c2IyWnZiblJsYkd4dlZtVnljMmx2YmlBeExqQm1iMjUwWld4c2IwZGxibVZ5WVhSbFpDQmllU0J6ZG1jeWRIUm1JR1p5YjIwZ1JtOXVkR1ZzYkc4Z2NISnZhbVZqZEM1b2RIUndPaTh2Wm05dWRHVnNiRzh1WTI5dEFFTUFid0J3QUhrQWNnQnBBR2NBYUFCMEFDQUFLQUJEQUNrQUlBQXlBREFBTVFBMEFDQUFZZ0I1QUNBQWJ3QnlBR2tBWndCcEFHNEFZUUJzQUNBQVlRQjFBSFFBYUFCdkFISUFjd0FnQUVBQUlBQm1BRzhBYmdCMEFHVUFiQUJzQUc4QUxnQmpBRzhBYlFCbUFHOEFiZ0IwQUdVQWJBQnNBRzhBVWdCbEFHY0FkUUJzQUdFQWNnQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVpnQnZBRzRBZEFCbEFHd0FiQUJ2QUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1BQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVJ3QmxBRzRBWlFCeUFHRUFkQUJsQUdRQUlBQmlBSGtBSUFCekFIWUFad0F5QUhRQWRBQm1BQ0FBWmdCeUFHOEFiUUFnQUVZQWJ3QnVBSFFBWlFCc0FHd0Fid0FnQUhBQWNnQnZBR29BWlFCakFIUUFMZ0JvQUhRQWRBQndBRG9BTHdBdkFHWUFid0J1QUhRQVpRQnNBR3dBYndBdUFHTUFid0J0QUFBQUFBSUFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXdBQUFRSUJBd2xqYUdWamEyMWhjbXNHWTJseVkyeGxBQUFBQUFFQUFmLy9BQThBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRElBTWdNTC83RURDLyt4c0FBc3NDQmdaaTJ3QVN3Z1pDQ3d3RkN3QkNaYXNBUkZXMWdoSXlFYmlsZ2dzRkJRV0NHd1FGa2JJTEE0VUZnaHNEaFpXU0N3Q2tWaFpMQW9VRmdoc0FwRklMQXdVRmdoc0RCWkd5Q3d3RkJZSUdZZ2lvcGhJTEFLVUZoZ0d5Q3dJRkJZSWJBS1lCc2dzRFpRV0NHd05tQWJZRmxaV1J1d0FDdFpXU093QUZCWVpWbFpMYkFDTENCRklMQUVKV0ZrSUxBRlExQllzQVVqUXJBR0kwSWJJU0Zac0FGZ0xiQURMQ01oSXlFZ1pMRUZZa0lnc0FZalFySUtBQUlxSVNDd0JrTWdpaUNLc0FBcnNUQUZKWXBSV0dCUUcyRlNXVmdqV1NFZ3NFQlRXTEFBS3hzaHNFQlpJN0FBVUZobFdTMndCQ3l3QjBNcnNnQUNBRU5nUWkyd0JTeXdCeU5DSXlDd0FDTkNZYkNBWXJBQllMQUVLaTJ3Qml3Z0lFVWdzQUpGWTdBQlJXSmdSTEFCWUMyd0J5d2dJRVVnc0FBckk3RUNCQ1ZnSUVXS0kyRWdaQ0N3SUZCWUliQUFHN0F3VUZpd0lCdXdRRmxaSTdBQVVGaGxXYkFESlNOaFJFU3dBV0F0c0Fnc3NRVUZSYkFCWVVRdHNBa3NzQUZnSUNDd0NVTktzQUJRV0NDd0NTTkNXYkFLUTBxd0FGSllJTEFLSTBKWkxiQUtMQ0M0QkFCaUlMZ0VBR09LSTJHd0MwTmdJSXBnSUxBTEkwSWpMYkFMTEV0VVdMRUhBVVJaSkxBTlpTTjRMYkFNTEV0UldFdFRXTEVIQVVSWkd5RlpKTEFUWlNONExiQU5MTEVBREVOVldMRU1ERU93QVdGQ3NBb3JXYkFBUTdBQ0pVS3hDUUlsUXJFS0FpVkNzQUVXSXlDd0F5VlFXTEVCQUVOZ3NBUWxRb3FLSUlvalliQUpLaUVqc0FGaElJb2pZYkFKS2lFYnNRRUFRMkN3QWlWQ3NBSWxZYkFKS2lGWnNBbERSN0FLUTBkZ3NJQmlJTEFDUldPd0FVVmlZTEVBQUJNalJMQUJRN0FBUHJJQkFRRkRZRUl0c0E0c3NRQUZSVlJZQUxBTUkwSWdZTEFCWWJVTkRRRUFDd0JDUW9wZ3NRMEZLN0J0S3hzaVdTMndEeXl4QUE0ckxiQVFMTEVCRGlzdHNCRXNzUUlPS3kyd0VpeXhBdzRyTGJBVExMRUVEaXN0c0JRc3NRVU9LeTJ3RlN5eEJnNHJMYkFXTExFSERpc3RzQmNzc1FnT0t5MndHQ3l4Q1E0ckxiQVpMTEFJSzdFQUJVVlVXQUN3RENOQ0lHQ3dBV0cxRFEwQkFBc0FRa0tLWUxFTkJTdXdiU3NiSWxrdHNCb3NzUUFaS3kyd0d5eXhBUmtyTGJBY0xMRUNHU3N0c0Iwc3NRTVpLeTJ3SGl5eEJCa3JMYkFmTExFRkdTc3RzQ0Fzc1FZWkt5MndJU3l4QnhrckxiQWlMTEVJR1NzdHNDTXNzUWtaS3kyd0pDd2dQTEFCWUMyd0pTd2dZTEFOWUNCREk3QUJZRU93QWlWaHNBRmdzQ1FxSVMyd0ppeXdKU3V3SlNvdHNDY3NJQ0JISUNDd0FrVmpzQUZGWW1BallUZ2pJSXBWV0NCSElDQ3dBa1Zqc0FGRlltQWpZVGdiSVZrdHNDZ3NzUUFGUlZSWUFMQUJGckFuS3JBQkZUQWJJbGt0c0Nrc3NBZ3JzUUFGUlZSWUFMQUJGckFuS3JBQkZUQWJJbGt0c0Nvc0lEV3dBV0F0c0Nzc0FMQURSV093QVVWaXNBQXJzQUpGWTdBQlJXS3dBQ3V3QUJhMEFBQUFBQUJFUGlNNHNTb0JGU290c0N3c0lEd2dSeUN3QWtWanNBRkZZbUN3QUVOaE9DMndMU3d1Rnp3dHNDNHNJRHdnUnlDd0FrVmpzQUZGWW1Dd0FFTmhzQUZEWXpndHNDOHNzUUlBRmlVZ0xpQkhzQUFqUXJBQ0pVbUtpa2NqUnlOaElGaGlHeUZac0FFalFySXVBUUVWRkNvdHNEQXNzQUFXc0FRbHNBUWxSeU5ISTJHd0JrVXJaWW91SXlBZ1BJbzRMYkF4TExBQUZyQUVKYkFFSlNBdVJ5TkhJMkVnc0FRalFyQUdSU3Nnc0dCUVdDQ3dRRkZZc3dJZ0F5QWJzd0ltQXhwWlFrSWpJTEFJUXlDS0kwY2pSeU5oSTBaZ3NBUkRzSUJpWUNDd0FDc2dpb3BoSUxBQ1EyQmtJN0FEUTJGa1VGaXdBa05oRzdBRFEyQlpzQU1sc0lCaVlTTWdJTEFFSmlOR1lUZ2JJN0FJUTBhd0FpV3dDRU5ISTBjallXQWdzQVJEc0lCaVlDTWdzQUFySTdBRVEyQ3dBQ3V3QlNWaHNBVWxzSUJpc0FRbVlTQ3dCQ1ZnWkNPd0F5VmdaRkJZSVJzaklWa2pJQ0N3QkNZalJtRTRXUzJ3TWl5d0FCWWdJQ0N3QlNZZ0xrY2pSeU5oSXp3NExiQXpMTEFBRmlDd0NDTkNJQ0FnUmlOSHNBQXJJMkU0TGJBMExMQUFGckFESmJBQ0pVY2pSeU5oc0FCVVdDNGdQQ01oRzdBQ0piQUNKVWNqUnlOaElMQUZKYkFFSlVjalJ5TmhzQVlsc0FVbFNiQUNKV0d3QVVWakl5QllZaHNoV1dPd0FVVmlZQ011SXlBZ1BJbzRJeUZaTGJBMUxMQUFGaUN3Q0VNZ0xrY2pSeU5oSUdDd0lHQm1zSUJpSXlBZ1BJbzRMYkEyTENNZ0xrYXdBaVZHVWxnZ1BGa3VzU1lCRkNzdHNEY3NJeUF1UnJBQ0pVWlFXQ0E4V1M2eEpnRVVLeTJ3T0N3aklDNUdzQUlsUmxKWUlEeFpJeUF1UnJBQ0pVWlFXQ0E4V1M2eEpnRVVLeTJ3T1N5d01Dc2pJQzVHc0FJbFJsSllJRHhaTHJFbUFSUXJMYkE2TExBeEs0b2dJRHl3QkNOQ2lqZ2pJQzVHc0FJbFJsSllJRHhaTHJFbUFSUXJzQVJETHJBbUt5MndPeXl3QUJhd0JDV3dCQ1lnTGtjalJ5TmhzQVpGS3lNZ1BDQXVJeml4SmdFVUt5MndQQ3l4Q0FRbFFyQUFGckFFSmJBRUpTQXVSeU5ISTJFZ3NBUWpRckFHUlNzZ3NHQlFXQ0N3UUZGWXN3SWdBeUFic3dJbUF4cFpRa0lqSUVld0JFT3dnR0pnSUxBQUt5Q0tpbUVnc0FKRFlHUWpzQU5EWVdSUVdMQUNRMkVic0FORFlGbXdBeVd3Z0dKaHNBSWxSbUU0SXlBOEl6Z2JJU0FnUmlOSHNBQXJJMkU0SVZteEpnRVVLeTJ3UFN5d01Dc3VzU1lCRkNzdHNENHNzREVySVNNZ0lEeXdCQ05DSXppeEpnRVVLN0FFUXk2d0ppc3RzRDhzc0FBVklFZXdBQ05Dc2dBQkFSVVVFeTZ3TENvdHNFQXNzQUFWSUVld0FDTkNzZ0FCQVJVVUV5NndMQ290c0VFc3NRQUJGQk93TFNvdHNFSXNzQzhxTGJCRExMQUFGa1VqSUM0Z1Jvb2pZVGl4SmdFVUt5MndSQ3l3Q0NOQ3NFTXJMYkJGTExJQUFEd3JMYkJHTExJQUFUd3JMYkJITExJQkFEd3JMYkJJTExJQkFUd3JMYkJKTExJQUFEMHJMYkJLTExJQUFUMHJMYkJMTExJQkFEMHJMYkJNTExJQkFUMHJMYkJOTExJQUFEa3JMYkJPTExJQUFUa3JMYkJQTExJQkFEa3JMYkJRTExJQkFUa3JMYkJSTExJQUFEc3JMYkJTTExJQUFUc3JMYkJUTExJQkFEc3JMYkJVTExJQkFUc3JMYkJWTExJQUFENHJMYkJXTExJQUFUNHJMYkJYTExJQkFENHJMYkJZTExJQkFUNHJMYkJaTExJQUFEb3JMYkJhTExJQUFUb3JMYkJiTExJQkFEb3JMYkJjTExJQkFUb3JMYkJkTExBeUt5NnhKZ0VVS3kyd1hpeXdNaXV3TmlzdHNGOHNzRElyc0RjckxiQmdMTEFBRnJBeUs3QTRLeTJ3WVN5d015c3VzU1lCRkNzdHNHSXNzRE1yc0RZckxiQmpMTEF6SzdBM0t5MndaQ3l3TXl1d09Dc3RzR1Vzc0RRckxyRW1BUlFyTGJCbUxMQTBLN0EyS3kyd1p5eXdOQ3V3TnlzdHNHZ3NzRFFyc0RnckxiQnBMTEExS3k2eEpnRVVLeTJ3YWl5d05TdXdOaXN0c0dzc3NEVXJzRGNyTGJCc0xMQTFLN0E0S3kyd2JTd3JzQWhsc0FNa1VIaXdBUlV3TFFBQUFFdTRBTWhTV0xFQkFZNVp1UWdBQ0FCaklMQUJJMFN3QXlOd3NnUW9DVVZTUkxJS0FnY3FzUVlCUkxFa0FZaFJXTEJBaUZpeEJnTkVzU1lCaUZGWXVBUUFpRml4QmdGRVdWbFpXYmdCLzRXd0JJMnhCUUJFQUFBPSkgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybChkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUmdBQkFBQUFBQW9VQUE0QUFBQUFFUFFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQlBVeTh5QUFBQlJBQUFBRVFBQUFCV1BlRkpBV050WVhBQUFBR0lBQUFBT2dBQUFVclFFaG0zWTNaMElBQUFBY1FBQUFBVUFBQUFIQVpKLzVSbWNHZHRBQUFCMkFBQUJQa0FBQW1SaWdwNE8yZGhjM0FBQUFiVUFBQUFDQUFBQUFnQUFBQVFaMng1WmdBQUJ0d0FBQUN1QUFBQXR0OW5CSFpvWldGa0FBQUhqQUFBQURVQUFBQTJBU3M4ZTJob1pXRUFBQWZFQUFBQUlBQUFBQ1FIVXdOTmFHMTBlQUFBQitRQUFBQU1BQUFBREFzcEFBQnNiMk5oQUFBSDhBQUFBQWdBQUFBSUFEZ0FXMjFoZUhBQUFBZjRBQUFBSUFBQUFDQUFwZ204Ym1GdFpRQUFDQmdBQUFGM0FBQUN6Y3lkR2h4d2IzTjBBQUFKa0FBQUFDb0FBQUE3cnIxQW1IQnlaWEFBQUFtOEFBQUFWZ0FBQUZhU29aci9lSnhqWUdUZXdUaUJnWldCZzZtS2FROERBME1QaEdaOHdHREl5TVRBd01UQXlzeUFGUVNrdWFZd09MeGdlTUhJSFBRL2l5R0ttWnZCSHlqTUNKSURBUGU5QzJCNG5HTmdZR0JtZ0dBWkJrWUdFSEFCOGhqQmZCWUdEU0ROQnFRWkdaZ1lHRjR3L3Y4UFV2Q0NBVVJMTUVMVkF3RWpHOE9JQndCazVBYXZBQUI0bkdOZ1FBTkdERWJNM1A4M2dqQUFFTFFENFhpY25WWFpkdE5XRkpVOFpIQVNPbVNnb0E3WDNEaFE2OHFFS1Jnd2FTckZkaUVkSEFpdEJCMmtESFRrbmNjKzYydU9RcnRXSC9tMDduMDlKTFIwcmJZc2xzKytSMXRuMkRyblJod2pLbjBhaUd2VW9aS1hBNm1zUFpaSzkwbGMxM1V2ajVVTUJuRmR0aEpQU1p1b25TUkthdDNzVUM3eFdPc3FXU2RZSitQbElGWlBWWjVub0F6aUZCNWxTVVFiUkJ1cGx5Wko0b25qSjRrV1p4QWZKVWtnSmFNUXA5TElVRUkxR3NSUzFhRk02ZENyMXhOeDAwREtScU1lZFZoVTkwUEZKOGMxcDlTc0EwWXFWem5DRmV2VlJyNGJwd012ZTVERU9zR3pyWWN4SG5pc2ZwUXFrSXFSNmNnL2RrcE9sSWFCVkhIVW9WYmk2RENUWC9lUlRDck5RS2FNWWtXbDdvRzQzZjEwMnhZeFBYUTZ2aTVLbFVhcXVybk9LSnJ0MGZHb2d5Z1AyY2JwcE56UTJmYnc1UmxUVkt0ZGNiUHRRR1lOWEVySmJIU2ZSQUFkSmxMajZRRk9OWndDcVJuMVI4WFo1ODhCRXNsY2xLbzhWVEtIZWdPWk16dDdjVEh0YmllcnNuQ2tud2N5YjNaMjQ1MkhRNmRYaDMvUitoZE00Y3hIaitKaWZqNUMrbEJxZmlKT0pLVkdXTXp5cDRZZmNWY2dRcmt4aUFzWHl1QlRoRGwwUmRyWlpsM2p0VEgyaHMvNVNxbGhQUW5hNktQNGZncjlUaVFySEdkUm8vVkluTTFqMTNXdDNHZFFTN1c3RnpzeXIwT1ZJdTd2Q3d1dU0rZUVZWjRXQzFWZm52bmVCVFQvQm9obi9FRGVOSVZMKzVZcFNyUnZtNkpNdTJpS0N1MFNWS1ZkTnNVVTdZb3BwbW5QbW1LRzloMVR6TktlTXpMai84dmM1NUg3SE43eGtKdjJYZVNtZlErNWFkOUhidG9Qa0p0V0lUZHRIYmxwTHlBM3JVWnUybFdqT25ZRUdnWnBGMUlWUWRBMHN2cGgzRmFiOVVEV2pEUjhhV0R5TG1MSSt1cEVSNTIxdGNvZnhYOTE0Z3NIY21taXA3c2lGNXZpTHEvYkZqNDgzZTZyajVwRzNiRFYrTWFSOGpBZVJub2NtdEJaK2MzaHYrMU4zUzZhN2pLcU11Z0JGVXdLd0FCbDdVQUMwenJiQ2FUMW1xZjQ4Z2RnWElaNHprcER0VlNmTzRhbTcrVjVYL2V4T2ZHK3grM0dMcmRjZDNrSldkWU5jbVAyOE45U1pLcnJIK1V0clZRblI2d3JKNDlWYXhoREtyd291cjZTbEh1MHRSdS9LS215OGw2VTFzcm5rNUNiUFlNYlFsdTI3bUd3STB4cHlpVWVYbE9sS0QzVVVvNnlReXh2S2NvODRKU0xDMXFHeExnT2RROXFhOFRwb1hvWUd3c2hocUcwdlJCd1NDbGRGZCsweW5meEhxdHIyT2o0eFJYaDZYcHlFaEdmNGlyN1VmQlUxMGI5NkE3YXZHYmRNb01wVmFxbis0eFBzYS9iOWxGWmFhU09zeGUzVkFmWE5Pc2FPUlhUVCtScjRIUnZPR2pkQXoxVWZEUkJJMVUxeCtqR0tHTTBsalhsM3dSME1WWit3MmpWWXZzOTNFK2RwRldzdVV1WTdKc1Q5K0MwdS8wcSs3V2NXMGJXL2RjR3ZXM2tpcDhqTWI4dEN2dzdCMkszWkEzVU81T0JHQXZJV2RBWXhoWW1keGl1ZzIzRWJmWS9KcWYvMzRhRlJYSlhPeHE3ZWVyRDFaTlJKWGZaOHJqTFRYWloxNk0yUjlWT0d2c0lqUzBQTitiWTRYSXN0c1JnUWJiK3dmOHg3Z0YzYVZFQzRORElaWmlJMm5TaG51cmg2aDZyc1cwNFZ4SUJkczJ4NDNRQWVnQXVRZDhjdTliekNZRDEzQ1BuTHNCOWNnaDJ5Q0g0bEJ5Q3o4aTVCZkE1T1FSZmtFTXdJSWRnbDV3N0FBL0lJWGhJRHNFZU9RU1B5TmtFK0pJY2dxL0lJWWpKSVVqSXVRM3dtQnlDSitRUWZFME93VGRHcms1ay9wWUgyUUQ2enFLYlFLbWRHaHphT0dSR3JrM1krenhZOW9GRlpCOWFST3FSa2VzVDZsTWVMUFY3aTBqOXdTSlNmelJ5WTBMOWlRZEwvZGtpVW4reGlOUm54cGVaSXltdkRwN3pqZzcrQkpmcXJWNEFBQUFBQVFBQi8vOEFEM2ljWTJCa0FBTG1KVXd6R0VRWlpCd2srUmtaR0JtZEdKZ1ltYklZZ013c29HU2lpTGdJczVBMm93ZzdJNXVTT3FPYWlUMmptWkU4STVnUVkxN0MvMDlCUUVmZzN5dCtmaDhndllReEQwajY4RE9KaVFuOFUrRG5aeFFEY1FVRWxqTG1Dd0JwQmdiRy8zLy9iMlNPWitabTRHRVFjdUFIMnNibERMU0VtOEZGVkpoSkVHZ0xINk9TSHBNZG81RWNJM05rMGJFWEovTFlxdlo4MlZYSEdGZDZwS1RreUNzUXdRQUFxK1FrcUFBQWVKeGpZR1JnWUFEaXc1VlNzZkg4Tmw4WnVKbGZBRVVZenB2TzZJWFFDYjcvLy83ZnlMeUVtUnZJNVdCZ0Fva0NBRmIvREpBQUFBQjRuR05nWkdCZ0R2cWZ4UkRGL0lLQjRmOTM1aVVNUUJFVXdBd0FpNVlGcGdQb0FBQUQ2QUFBQTFrQUFBQUFBQUFBT0FCYkFBRUFBQUFEQUJZQUFRQUFBQUFBQWdBR0FCTUFiZ0FBQUMwSmtRQUFBQUI0bkhXUXkyckNRQlNHLy9IU2kwSmJXdWkyc3lwS2FieGdONElnV0hUVGJxUzRMVEhHSkJJek1oa0ZYNlB2MElmcFMvUlorcHVNcFNoTm1NeDN2amx6NW1RQVhPTWJBdm56eEpHendCbWpuQXM0UmM5eWtmN1pjb244WXJtTUt0NHNuOUMvVzY3Z0FZSGxLbTd3d1FxaWRNNW9nVS9MQWxmaTBuSUJGK0xPY3BIKzBYS0ozTE5jeHExNHRYeEM3MW11WUNKU3kxWGNpNitCV20xMUZJUkcxZ1oxMlc2Mk9uSzZsWW9xU3R4WXVtc1RLcDNLdnB5cnhQaHhyQnhQTGZjODlvTjE3T3A5dUo4bnZrNGpsY2lXMDl5cmtaLzQyalgrYkZjOTNRUnRZK1p5cnRWU0RtMkdYR20xOEQzamhNYXN1bzNHMy9Nd2dNSUtXMmhFdktvUUJoSTEyanJuTnBwb29VT2FNa015TTgrS2tNQkZUT05pelIxaHRwSXk3blBNR1NXMFBqTmlzZ09QMytXUkg1TUM3bzlaUlIrdEhzWVQwdTZNS1BPU2ZUbnM3akJyUkVxeVREZXpzOS9lVTJ4NFdwdldjTmV1UzUxMUpURThxQ0Y1SDd1MUJZMUg3MlMzWW1pN2FQRDk1LzkrQU4xZmhFc0FlSnhqWUdLQUFDNEc3SUNaZ1lHUmlaR1pNemtqTlRrN043RW9teTA1c3lnNUo1V0JBUUJFMVFaQkFBQkx1QURJVWxpeEFRR09XYmtJQUFnQVl5Q3dBU05Fc0FNamNMSUVLQWxGVWtTeUNnSUhLckVHQVVTeEpBR0lVVml3UUloWXNRWURSTEVtQVloUldMZ0VBSWhZc1FZQlJGbFpXVm00QWYrRnNBU05zUVVBUkFBQSkgZm9ybWF0KCd3b2ZmJylcbiAgO1xufVxuLnVpLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZCA+IC5pY29uOmJlZm9yZSxcbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZDpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ1N0ZXAnO1xuICBjb250ZW50OiAnXFxlODAwJzsgLyogJ+6ggCcgKi9cbn0iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBUZXh0XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwczovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvYmxvYi9tYXN0ZXIvTElDRU5TRS5tZFxuICpcbiAqL1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnZWxlbWVudCc7XG5AZWxlbWVudCA6ICd0ZXh0JztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVGV4dFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuZWFjaChAY29sb3JzLCB7XG4gIEBjb2xvcjogcmVwbGFjZShAa2V5LCAnQCcsICcnKTtcbiAgQGM6IEBjb2xvcnNbQEBjb2xvcl1bY29sb3JdO1xuICBAbDogQGNvbG9yc1tAQGNvbG9yXVtsaWdodF07XG5cbiAgc3Bhbi51aS5Ae2NvbG9yfS50ZXh0IHtcbiAgICBjb2xvcjogQGM7XG4gIH1cbiAgc3Bhbi51aS5pbnZlcnRlZC5Ae2NvbG9yfS50ZXh0IHtcbiAgICBjb2xvcjogQGw7XG4gIH1cbn0pXG5cbnNwYW4udWkuZGlzYWJsZWQudGV4dCB7XG4gIG9wYWNpdHk6IEBkaXNhYmxlZE9wYWNpdHk7XG59XG5cbi8qIFNpemVzICovXG5zcGFuLnVpLm1pbmkudGV4dCB7XG4gIGZvbnQtc2l6ZTogQG1pbmk7XG59XG5zcGFuLnVpLnRpbnkudGV4dCB7XG4gIGZvbnQtc2l6ZTogQHRpbnk7XG59XG5zcGFuLnVpLnNtYWxsLnRleHQge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbnNwYW4udWkubWVkaXVtLnRleHQge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG5zcGFuLnVpLmxhcmdlLnRleHQge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbnNwYW4udWkuYmlnLnRleHQge1xuICBmb250LXNpemU6IEBiaWc7XG59XG5zcGFuLnVpLmh1Z2UudGV4dCB7XG4gIGZvbnQtc2l6ZTogQGh1Z2U7XG59XG5zcGFuLnVpLm1hc3NpdmUudGV4dCB7XG4gIGZvbnQtc2l6ZTogQG1hc3NpdmU7XG59XG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEJyZWFkY3J1bWJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdjb2xsZWN0aW9uJztcbkBlbGVtZW50IDogJ2JyZWFkY3J1bWInO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgQnJlYWRjcnVtYlxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmJyZWFkY3J1bWIge1xuICBsaW5lLWhlaWdodDogQGxpbmVIZWlnaHQ7XG4gIGRpc3BsYXk6IEBkaXNwbGF5O1xuICBtYXJnaW46IEB2ZXJ0aWNhbE1hcmdpbiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogQHZlcnRpY2FsQWxpZ247XG59XG4udWkuYnJlYWRjcnVtYjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkuYnJlYWRjcnVtYjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBDb250ZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBEaXZpZGVyICovXG4udWkuYnJlYWRjcnVtYiAuZGl2aWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3BhY2l0eTogQGRpdmlkZXJPcGFjaXR5O1xuICBtYXJnaW46IDAgQGRpdmlkZXJTcGFjaW5nIDA7XG5cbiAgZm9udC1zaXplOiBAZGl2aWRlclNpemU7XG4gIGNvbG9yOiBAZGl2aWRlckNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogQGRpdmlkZXJWZXJ0aWNhbEFsaWduO1xufVxuXG4vKiBMaW5rICovXG4udWkuYnJlYWRjcnVtYiBhIHtcbiAgY29sb3I6IEBsaW5rQ29sb3I7XG59XG4udWkuYnJlYWRjcnVtYiBhOmhvdmVyIHtcbiAgY29sb3I6IEBsaW5rSG92ZXJDb2xvcjtcbn1cblxuXG4vKiBJY29uIERpdmlkZXIgKi9cbi51aS5icmVhZGNydW1iIC5pY29uLmRpdmlkZXIge1xuICBmb250LXNpemU6IEBpY29uRGl2aWRlclNpemU7XG4gIHZlcnRpY2FsLWFsaWduOiBAaWNvbkRpdmlkZXJWZXJ0aWNhbEFsaWduO1xufVxuXG4vKiBTZWN0aW9uICovXG4udWkuYnJlYWRjcnVtYiBhLnNlY3Rpb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udWkuYnJlYWRjcnVtYiAuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiBAc2VjdGlvbk1hcmdpbjtcbiAgcGFkZGluZzogQHNlY3Rpb25QYWRkaW5nO1xufVxuXG4vKiBMb29zZSBDb3VwbGluZyAqL1xuLnVpLmJyZWFkY3J1bWIuc2VnbWVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogQHNlZ21lbnRQYWRkaW5nO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuLnVpLmludmVydGVkLmJyZWFkY3J1bWIge1xuICBjb2xvcjogQGludmVydGVkQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuYnJlYWRjcnVtYiA+IC5hY3RpdmUuc2VjdGlvbiB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRBY3RpdmVDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5icmVhZGNydW1iID4gLmRpdmlkZXIge1xuICBjb2xvcjogQGludmVydGVkRGl2aWRlckNvbG9yO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYnJlYWRjcnVtYiAuYWN0aXZlLnNlY3Rpb24ge1xuICBmb250LXdlaWdodDogQGFjdGl2ZUZvbnRXZWlnaHQ7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLm1pbmkuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogQG1pbmk7XG59XG4udWkudGlueS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiBAdGlueTtcbn1cbi51aS5zbWFsbC5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogQG1lZGl1bTtcbn1cbi51aS5sYXJnZS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiBAbGFyZ2U7XG59XG4udWkuYmlnLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IEBiaWc7XG59XG4udWkuaHVnZS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cbi51aS5tYXNzaXZlLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IEBtYXNzaXZlO1xufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBGb3JtXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnY29sbGVjdGlvbic7XG5AZWxlbWVudCA6ICdmb3JtJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRWxlbWVudHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9ybVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSA+IHAge1xuICBtYXJnaW46IEBwYXJhZ3JhcGhNYXJnaW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmllbGRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5maWVsZCB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IEBmaWVsZE1hcmdpbjtcbn1cblxuLnVpLmZvcm0gLmZpZWxkOmxhc3QtY2hpbGQsXG4udWkuZm9ybSAuZmllbGRzOmxhc3QtY2hpbGQgLmZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcyAuZmllbGQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGFiZWxzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZmllbGQgPiBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IEBsYWJlbE1hcmdpbjtcbiAgY29sb3I6IEBsYWJlbENvbG9yO1xuICBmb250LXNpemU6IEBsYWJlbEZvbnRTaXplO1xuICBmb250LXdlaWdodDogQGxhYmVsRm9udFdlaWdodDtcbiAgdGV4dC10cmFuc2Zvcm06IEBsYWJlbFRleHRUcmFuc2Zvcm07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTdGFuZGFyZCBJbnB1dHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLnVpLmZvcm0gdGV4dGFyZWEsXG4udWkuZm9ybSBpbnB1dDpub3QoW3R5cGVdKSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInVybFwiXSB7XG4gIHdpZHRoOiBAaW5wdXRXaWR0aDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLyogU2V0IG1heCBoZWlnaHQgb24gdW51c3VhbCBpbnB1dCAqL1xuLnVpLmZvcm0gOjotd2Via2l0LWRhdGV0aW1lLWVkaXQsXG4udWkuZm9ybSA6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IEBpbnB1dExpbmVIZWlnaHQ7XG59XG5cbi51aS5mb3JtIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidXJsXCJdIHtcbiAgZm9udC1mYW1pbHk6IEBpbnB1dEZvbnQ7XG4gIG1hcmdpbjogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6ICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuXG4gIGxpbmUtaGVpZ2h0OiBAaW5wdXRMaW5lSGVpZ2h0O1xuICBwYWRkaW5nOiBAaW5wdXRQYWRkaW5nO1xuICBmb250LXNpemU6IEBpbnB1dEZvbnRTaXplO1xuXG4gIGJhY2tncm91bmQ6IEBpbnB1dEJhY2tncm91bmQ7XG4gIGJvcmRlcjogQGlucHV0Qm9yZGVyO1xuICBjb2xvcjogQGlucHV0Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IEBpbnB1dEJvcmRlclJhZGl1cztcbiAgYm94LXNoYWRvdzogQGlucHV0Qm94U2hhZG93O1xuICB0cmFuc2l0aW9uOiBAaW5wdXRUcmFuc2l0aW9uO1xufVxuXG4vKiBUZXh0IEFyZWEgKi9cbi51aS5pbnB1dCB0ZXh0YXJlYSxcbi51aS5mb3JtIHRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG5cbiAgcGFkZGluZzogQHRleHRBcmVhUGFkZGluZztcbiAgYmFja2dyb3VuZDogQHRleHRBcmVhQmFja2dyb3VuZDtcbiAgYm9yZGVyOiBAdGV4dEFyZWFCb3JkZXI7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGNvbG9yOiBAaW5wdXRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogQGlucHV0Qm9yZGVyUmFkaXVzO1xuICBib3gtc2hhZG93OiBAaW5wdXRCb3hTaGFkb3c7XG4gIHRyYW5zaXRpb246IEB0ZXh0QXJlYVRyYW5zaXRpb247XG4gIGZvbnQtc2l6ZTogQHRleHRBcmVhRm9udFNpemU7XG4gIGZvbnQtZmFtaWx5OiBAaW5wdXRGb250O1xuICBsaW5lLWhlaWdodDogQHRleHRBcmVhTGluZUhlaWdodDtcbiAgcmVzaXplOiBAdGV4dEFyZWFSZXNpemU7XG59XG4udWkuZm9ybSB0ZXh0YXJlYTpub3QoW3Jvd3NdKSB7XG4gIGhlaWdodDogQHRleHRBcmVhSGVpZ2h0O1xuICBtaW4taGVpZ2h0OiBAdGV4dEFyZWFNaW5IZWlnaHQ7XG4gIG1heC1oZWlnaHQ6IEB0ZXh0QXJlYU1heEhlaWdodDtcbn1cblxuLnVpLmZvcm0gdGV4dGFyZWEsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogQGNoZWNrYm94VmVydGljYWxBbGlnbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENoZWNrYm94IG1hcmdpblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkczpub3QoLmdyb3VwZWQpOm5vdCguaW5saW5lKSAuZmllbGQ6bm90KDpvbmx5LWNoaWxkKSBsYWJlbCArIC51aS51aS5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IEBjaGVja2JveExhYmVsRmllbGRUb3BNYXJnaW47XG59XG4udWkuZm9ybSAuZmllbGRzOm5vdCguZ3JvdXBlZCk6bm90KC5pbmxpbmUpIC5maWVsZDpub3QoOm9ubHktY2hpbGQpIC51aS5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IEBpbnB1dExpbmVIZWlnaHQgKyBAY2hlY2tib3hGaWVsZFRvcE1hcmdpbjtcbn1cbi51aS5mb3JtIC5maWVsZHM6bm90KC5ncm91cGVkKTpub3QoLmlubGluZSkgLmZpZWxkOm5vdCg6b25seS1jaGlsZCkgLnVpLnRvZ2dsZS5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IEBpbnB1dExpbmVIZWlnaHQgKyBAY2hlY2tib3hUb2dnbGVGaWVsZFRvcE1hcmdpbjtcbn1cbi51aS5mb3JtIC5maWVsZHM6bm90KC5ncm91cGVkKTpub3QoLmlubGluZSkgLmZpZWxkOm5vdCg6b25seS1jaGlsZCkgLnVpLnNsaWRlci5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IEBpbnB1dExpbmVIZWlnaHQgKyBAY2hlY2tib3hTbGlkZXJGaWVsZFRvcE1hcmdpbjtcbn1cbi51aS51aS5mb3JtIC5maWVsZCAuZmllbGRzIC5maWVsZDpub3QoOm9ubHktY2hpbGQpIC51aS5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IEBjaGVja2JveEZpZWxkVG9wTWFyZ2luIC8gMjtcbn1cbi51aS51aS5mb3JtIC5maWVsZCAuZmllbGRzIC5maWVsZDpub3QoOm9ubHktY2hpbGQpIC51aS50b2dnbGUuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiBAY2hlY2tib3hUb2dnbGVGaWVsZFRvcE1hcmdpbiAvIDI7XG59XG4udWkudWkuZm9ybSAuZmllbGQgLmZpZWxkcyAuZmllbGQ6bm90KDpvbmx5LWNoaWxkKSAudWkuc2xpZGVyLmNoZWNrYm94IHtcbiAgbWFyZ2luLXRvcDogQGNoZWNrYm94U2xpZGVyRmllbGRUb3BNYXJnaW4gLyAyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBUcmFuc3BhcmVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkIC50cmFuc3BhcmVudC5pbnB1dDpub3QoLmljb24pIGlucHV0LFxuLnVpLmZvcm0gLmZpZWxkIGlucHV0LnRyYW5zcGFyZW50LFxuLnVpLmZvcm0gLmZpZWxkIHRleHRhcmVhLnRyYW5zcGFyZW50IHtcbiAgcGFkZGluZzogQHRyYW5zcGFyZW50UGFkZGluZztcbn1cblxuLnVpLmZvcm0gLmZpZWxkIGlucHV0LnRyYW5zcGFyZW50LFxuLnVpLmZvcm0gLmZpZWxkIHRleHRhcmVhLnRyYW5zcGFyZW50IHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5maWVsZC5lcnJvciAudHJhbnNwYXJlbnQuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnRyYW5zcGFyZW50LmlucHV0IHRleHRhcmVhLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0LnRyYW5zcGFyZW50LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIHRleHRhcmVhLnRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRyYW5zcGFyZW50Rm9ybUVycm9yQmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICBjb2xvcjogQHRyYW5zcGFyZW50Rm9ybUVycm9yQ29sb3IgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBJbnB1dCB3LyBhdHRhY2hlZCBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIGlucHV0LmF0dGFjaGVkIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCYXNpYyBTZWxlY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIHNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBAc2VsZWN0QmFja2dyb3VuZDtcbiAgYm9yZGVyOiBAc2VsZWN0Qm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBAc2VsZWN0Qm9yZGVyUmFkaXVzO1xuICBib3gtc2hhZG93OiBAc2VsZWN0Qm94U2hhZG93O1xuICBwYWRkaW5nOiBAc2VsZWN0UGFkZGluZztcbiAgY29sb3I6IEBzZWxlY3RDb2xvcjtcbiAgdHJhbnNpdGlvbjogQHNlbGVjdFRyYW5zaXRpb247XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEcm9wZG93blxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQmxvY2sgKi9cbi51aS5mb3JtIC5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24ge1xuICBtaW4td2lkdGg6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmZvcm0gLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKiBJbmxpbmUgKi9cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24sXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgVUkgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEJsb2NrICovXG4udWkuZm9ybSAuZmllbGQgLnVpLmlucHV0LFxuLnVpLmZvcm0gLmZpZWxkcyAuZmllbGQgLnVpLmlucHV0LFxuLnVpLmZvcm0gLndpZGUuZmllbGQgLnVpLmlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIElubGluZSAgKi9cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZDpub3QoLndpZGUpIC51aS5pbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQ6bm90KC53aWRlKSAudWkuaW5wdXQge1xuICB3aWR0aDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogQXV0byBJbnB1dCAqL1xuLnVpLmZvcm0gLmZpZWxkcyAuZmllbGQgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLmZpZWxkIC51aS5pbnB1dCBpbnB1dCB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKiBGdWxsIFdpZHRoIElucHV0ICovXG4udWkuZm9ybSAudGVuLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAubmluZS5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLmVpZ2h0LmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuc2V2ZW4uZmllbGRzIC51aS5pbnB1dCBpbnB1dCxcbi51aS5mb3JtIC5zaXguZmllbGRzIC51aS5pbnB1dCBpbnB1dCxcbi51aS5mb3JtIC5maXZlLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuZm91ci5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLnRocmVlLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAudHdvLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAud2lkZS5maWVsZCAudWkuaW5wdXQgaW5wdXQge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgd2lkdGg6IDA7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgVHlwZXMgb2YgTWVzc2FnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5zdWNjZXNzLm1lc3NhZ2UsXG4udWkuZm9ybSAud2FybmluZy5tZXNzYWdlLFxuLnVpLmZvcm0gLmVycm9yLm1lc3NhZ2UsXG4udWkuZm9ybSAuZXJyb3IubWVzc2FnZTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEFzc3VtcHRpb25zICovXG4udWkuZm9ybSAubWVzc2FnZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFZhbGlkYXRpb24gUHJvbXB0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZmllbGQgLnByb21wdC5sYWJlbCB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGJhY2tncm91bmQ6IEBwcm9tcHRCYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogQHByb21wdEJvcmRlciAhaW1wb3J0YW50O1xuICBjb2xvcjogQHByb21wdFRleHRDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkIC5wcm9tcHQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkIC5wcm9tcHQge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW46IEBpbmxpbmVQcm9tcHRNYXJnaW47XG59XG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgLnByb21wdDpiZWZvcmUsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkIC5wcm9tcHQ6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgQGlubGluZVByb21wdEJvcmRlcldpZHRoIEBpbmxpbmVQcm9tcHRCb3JkZXJXaWR0aDtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQXV0b2ZpbGxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkLmZpZWxkIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICBib3gtc2hhZG93OiAwIDAgMCAxMDBweCBAaW5wdXRBdXRvRmlsbEJhY2tncm91bmQgaW5zZXQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiBAaW5wdXRBdXRvRmlsbEJvcmRlciAhaW1wb3J0YW50O1xufVxuXG4vKiBGb2N1cyAqL1xuLnVpLmZvcm0gLmZpZWxkLmZpZWxkIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAxMDBweCBAaW5wdXRBdXRvRmlsbEZvY3VzQmFja2dyb3VuZCBpbnNldCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6IEBpbnB1dEF1dG9GaWxsRm9jdXNCb3JkZXIgIWltcG9ydGFudDtcbn1cblxuLyogRXJyb3IgKi9cbi51aS5mb3JtIC5lcnJvci5lcnJvciBpbnB1dDotd2Via2l0LWF1dG9maWxsIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTAwcHggQGlucHV0QXV0b0ZpbGxFcnJvckJhY2tncm91bmQgaW5zZXQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiBAaW5wdXRBdXRvRmlsbEVycm9yQm9yZGVyICFpbXBvcnRhbnQ7XG59XG5cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQbGFjZWhvbGRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogYnJvd3NlcnMgcmVxdWlyZSB0aGVzZSBydWxlcyBzZXBhcmF0ZSAqL1xuLnVpLmZvcm0gOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEBpbnB1dFBsYWNlaG9sZGVyQ29sb3I7XG59XG4udWkuZm9ybSA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEBpbnB1dFBsYWNlaG9sZGVyQ29sb3IgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBAaW5wdXRQbGFjZWhvbGRlckNvbG9yO1xufVxuXG4udWkuZm9ybSA6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQGlucHV0UGxhY2Vob2xkZXJGb2N1c0NvbG9yO1xufVxuLnVpLmZvcm0gOmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBAaW5wdXRQbGFjZWhvbGRlckZvY3VzQ29sb3IgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIDpmb2N1czo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBAaW5wdXRQbGFjZWhvbGRlckZvY3VzQ29sb3I7XG59XG5cbi8qIEVycm9yIFBsYWNlaG9sZGVyICovXG4udWkuZm9ybSAuZXJyb3IgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEBpbnB1dEVycm9yUGxhY2Vob2xkZXJDb2xvcjtcbn1cbi51aS5mb3JtIC5lcnJvciA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IEBpbnB1dEVycm9yUGxhY2Vob2xkZXJDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmVycm9yIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBAaW5wdXRFcnJvclBsYWNlaG9sZGVyQ29sb3I7XG59XG5cbi51aS5mb3JtIC5lcnJvciA6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogQGlucHV0RXJyb3JQbGFjZWhvbGRlckZvY3VzQ29sb3I7XG59XG4udWkuZm9ybSAuZXJyb3IgOmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBAaW5wdXRFcnJvclBsYWNlaG9sZGVyRm9jdXNDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmVycm9yIDpmb2N1czo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBAaW5wdXRFcnJvclBsYWNlaG9sZGVyRm9jdXNDb2xvcjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSBpbnB1dDpub3QoW3R5cGVdKTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyB7XG4gIGNvbG9yOiBAaW5wdXRGb2N1c0NvbG9yO1xuICBib3JkZXItY29sb3I6IEBpbnB1dEZvY3VzQm9yZGVyQ29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IEBpbnB1dEZvY3VzQm9yZGVyUmFkaXVzO1xuICBiYWNrZ3JvdW5kOiBAaW5wdXRGb2N1c0JhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEBpbnB1dEZvY3VzQm94U2hhZG93O1xufVxuLnVpLmZvcm0gdGV4dGFyZWE6Zm9jdXMge1xuICBjb2xvcjogQHRleHRBcmVhRm9jdXNDb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiBAdGV4dEFyZWFGb2N1c0JvcmRlckNvbG9yO1xuICBib3JkZXItcmFkaXVzOiBAdGV4dEFyZWFGb2N1c0JvcmRlclJhZGl1cztcbiAgYmFja2dyb3VuZDogQHRleHRBcmVhRm9jdXNCYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiBAdGV4dEFyZWFGb2N1c0JveFNoYWRvdztcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU3VjY2Vzc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogT24gRm9ybSAqL1xuLnVpLmZvcm0uc3VjY2VzcyAuc3VjY2Vzcy5tZXNzYWdlOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udWkuZm9ybS5zdWNjZXNzIC5jb21wYWN0LnN1Y2Nlc3MubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi51aS5mb3JtLnN1Y2Nlc3MgLmljb24uc3VjY2Vzcy5tZXNzYWdlOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBXYXJuaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBPbiBGb3JtICovXG4udWkuZm9ybS53YXJuaW5nIC53YXJuaW5nLm1lc3NhZ2U6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51aS5mb3JtLndhcm5pbmcgLmNvbXBhY3Qud2FybmluZy5tZXNzYWdlOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnVpLmZvcm0ud2FybmluZyAuaWNvbi53YXJuaW5nLm1lc3NhZ2U6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEVycm9yXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBPbiBGb3JtICovXG4udWkuZm9ybS5lcnJvciAuZXJyb3IubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnVpLmZvcm0uZXJyb3IgLmNvbXBhY3QuZXJyb3IubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi51aS5mb3JtLmVycm9yIC5pY29uLmVycm9yLm1lc3NhZ2U6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKiBPbiBGaWVsZChzKSAqL1xuLnVpLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgbGFiZWwsXG4udWkudWkuZm9ybSAuZmllbGQuZXJyb3IgbGFiZWwsXG4udWkudWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuaW5wdXQsXG4udWkudWkuZm9ybSAuZmllbGQuZXJyb3IgLmlucHV0IHtcbiAgY29sb3I6IEBmb3JtRXJyb3JDb2xvcjtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNvcm5lci5sYWJlbCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY29ybmVyLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiBAZm9ybUVycm9yQ29sb3I7XG4gIGNvbG9yOiBAd2hpdGU7XG59XG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIHRleHRhcmVhLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgc2VsZWN0LFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXQ6bm90KFt0eXBlXSksXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwiZmlsZVwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgdGV4dGFyZWEsXG4udWkuZm9ybSAuZmllbGQuZXJyb3Igc2VsZWN0LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBiYWNrZ3JvdW5kOiBAZm9ybUVycm9yQmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBAZm9ybUVycm9yQm9yZGVyO1xuICBjb2xvcjogQGZvcm1FcnJvckNvbG9yO1xuICBib3JkZXItcmFkaXVzOiBAaW5wdXRFcnJvckJvcmRlclJhZGl1cztcbiAgYm94LXNoYWRvdzogQGlucHV0RXJyb3JCb3hTaGFkb3c7XG59XG4udWkuZm9ybSAuZmllbGQuZXJyb3IgdGV4dGFyZWE6Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3Igc2VsZWN0OmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0Om5vdChbdHlwZV0pOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiBAaW5wdXRFcnJvckZvY3VzQmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBAaW5wdXRFcnJvckZvY3VzQm9yZGVyO1xuICBjb2xvcjogQGlucHV0RXJyb3JGb2N1c0NvbG9yO1xuXG4gIGJveC1zaGFkb3c6IEBpbnB1dEVycm9yRm9jdXNCb3hTaGFkb3c7XG59XG5cbi8qIFByZXNlcnZlIE5hdGl2ZSBTZWxlY3QgU3R5bGluZ3MgKi9cbi51aS5mb3JtIC5maWVsZC5lcnJvciBzZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0LWJ1dHRvbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEcm9wZG93biBFcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd24sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd24gLml0ZW0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biAudGV4dCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBAZm9ybUVycm9yQmFja2dyb3VuZDtcbiAgY29sb3I6IEBmb3JtRXJyb3JDb2xvcjtcbn1cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93bixcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24ge1xuICBib3JkZXItY29sb3I6IEBmb3JtRXJyb3JCb3JkZXIgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93bjpob3Zlcixcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6IEBmb3JtRXJyb3JCb3JkZXIgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93bjpob3ZlciAubWVudSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd246aG92ZXIgLm1lbnUge1xuICBib3JkZXItY29sb3I6IEBmb3JtRXJyb3JCb3JkZXI7XG59XG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkubXVsdGlwbGUuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5tdWx0aXBsZS5zZWxlY3Rpb24uZHJvcGRvd24gPiAubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZHJvcGRvd25FcnJvckxhYmVsQmFja2dyb3VuZDtcbiAgY29sb3I6IEBkcm9wZG93bkVycm9yTGFiZWxDb2xvcjtcbn1cblxuLyogSG92ZXIgKi9cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAubWVudSAuaXRlbTpob3Zlcixcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLm1lbnUgLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZHJvcGRvd25FcnJvckhvdmVyQmFja2dyb3VuZDtcbn1cblxuLyogU2VsZWN0ZWQgKi9cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAubWVudSAuc2VsZWN0ZWQuaXRlbSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLm1lbnUgLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZHJvcGRvd25FcnJvclNlbGVjdGVkQmFja2dyb3VuZDtcbn1cblxuXG4vKiBBY3RpdmUgKi9cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAubWVudSAuYWN0aXZlLml0ZW0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duIC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBkcm9wZG93bkVycm9yQWN0aXZlQmFja2dyb3VuZCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2hlY2tib3ggRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94Om5vdCgudG9nZ2xlKTpub3QoLnNsaWRlcikgLmJveCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94IHtcbiAgY29sb3I6IEBmb3JtRXJyb3JDb2xvcjtcbn1cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsOmJlZm9yZSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSBsYWJlbDpiZWZvcmUsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94OmJlZm9yZSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBmb3JtRXJyb3JCYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6IEBmb3JtRXJyb3JCb3JkZXI7XG59XG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY2hlY2tib3ggbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLmNoZWNrYm94IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94IC5ib3g6YWZ0ZXIsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLmNoZWNrYm94IC5ib3g6YWZ0ZXIge1xuICBjb2xvcjogQGZvcm1FcnJvckNvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5kaXNhYmxlZC5maWVsZHMgLmZpZWxkLFxuLnVpLmZvcm0gLmRpc2FibGVkLmZpZWxkLFxuLnVpLmZvcm0gLmZpZWxkIDpkaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiBAZGlzYWJsZWRPcGFjaXR5O1xufVxuLnVpLmZvcm0gLmZpZWxkLmRpc2FibGVkID4gbGFiZWwsXG4udWkuZm9ybSAuZmllbGRzLmRpc2FibGVkID4gbGFiZWwge1xuICBvcGFjaXR5OiBAZGlzYWJsZWRMYWJlbE9wYWNpdHk7XG59XG4udWkuZm9ybSAuZmllbGQuZGlzYWJsZWQgOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxvYWRpbmcuZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi51aS5sb2FkaW5nLmZvcm06YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiBAbG9hZGVyRGltbWVyQ29sb3I7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IEBsb2FkZXJEaW1tZXJaSW5kZXg7XG59XG5cbi51aS5sb2FkaW5nLmZvcm0uc2VnbWVudHM6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogQGRlZmF1bHRCb3JkZXJSYWRpdXM7XG59XG5cbi51aS5sb2FkaW5nLmZvcm06YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuXG4gIG1hcmdpbjogQGxvYWRlck1hcmdpbjtcbiAgd2lkdGg6IEBsb2FkZXJTaXplO1xuICBoZWlnaHQ6IEBsb2FkZXJTaXplO1xuXG4gIGFuaW1hdGlvbjogbG9hZGVyIEBsb2FkZXJTcGVlZCBpbmZpbml0ZSBsaW5lYXI7XG4gIGJvcmRlcjogQGxvYWRlckxpbmVXaWR0aCBzb2xpZCBAbG9hZGVyTGluZUNvbG9yO1xuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG5cbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB6LWluZGV4OiBAbG9hZGVyTGluZVpJbmRleDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEVsZW1lbnQgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgUmVxdWlyZWQgRmllbGRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHM6bm90KC5ncm91cGVkKSA+IC5maWVsZCA+IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkcy5ncm91cGVkID4gbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGQgPiBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHM6bm90KC5ncm91cGVkKSA+IC5maWVsZCA+IC5jaGVja2JveDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IC5jaGVja2JveDphZnRlcixcbi51aS5mb3JtIGxhYmVsLnJlcXVpcmVkOmFmdGVyIHtcbiAgbWFyZ2luOiBAcmVxdWlyZWRNYXJnaW47XG4gIGNvbnRlbnQ6IEByZXF1aXJlZENvbnRlbnQ7XG4gIGNvbG9yOiBAcmVxdWlyZWRDb2xvcjtcbn1cblxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkczpub3QoLmdyb3VwZWQpID4gLmZpZWxkID4gbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGRzLmdyb3VwZWQgPiBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gbGFiZWwucmVxdWlyZWQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHM6bm90KC5ncm91cGVkKSA+IC5maWVsZCA+IC5jaGVja2JveDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IC5jaGVja2JveDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmZvcm0gbGFiZWwsXG4udWkuZm9ybSAuaW52ZXJ0ZWQuc2VnbWVudCBsYWJlbCxcbi51aS5mb3JtIC5pbnZlcnRlZC5zZWdtZW50IC51aS5jaGVja2JveCBsYWJlbCxcbi51aS5mb3JtIC5pbnZlcnRlZC5zZWdtZW50IC51aS5jaGVja2JveCAuYm94LFxuLnVpLmludmVydGVkLmZvcm0gLnVpLmNoZWNrYm94IGxhYmVsLFxuLnVpLmludmVydGVkLmZvcm0gLnVpLmNoZWNrYm94IC5ib3gsXG4udWkuaW52ZXJ0ZWQuZm9ybSAuaW5saW5lLmZpZWxkcyA+IGxhYmVsLFxuLnVpLmludmVydGVkLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gbGFiZWwsXG4udWkuaW52ZXJ0ZWQuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBwLFxuLnVpLmludmVydGVkLmZvcm0gLmlubGluZS5maWVsZCA+IGxhYmVsLFxuLnVpLmludmVydGVkLmZvcm0gLmlubGluZS5maWVsZCA+IHAge1xuICBjb2xvcjogQGludmVydGVkTGFiZWxDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5sb2FkaW5nLmZvcm0ge1xuICBjb2xvcjogQGludmVydGVkTG9hZGVyTGluZUNvbG9yO1xufVxuLnVpLmludmVydGVkLmxvYWRpbmcuZm9ybTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBAbG9hZGVySW52ZXJ0ZWREaW1tZXJDb2xvcjtcbn1cbi8qIEludmVydGVkIEZpZWxkICovXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dDpub3QoW3R5cGVdKSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cInVybFwiXSB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZElucHV0QmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBAaW52ZXJ0ZWRJbnB1dEJvcmRlckNvbG9yO1xuICBjb2xvcjogQGludmVydGVkSW5wdXRDb2xvcjtcbiAgYm94LXNoYWRvdzogQGludmVydGVkSW5wdXRCb3hTaGFkb3c7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgRmllbGQgR3JvdXBzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBHcm91cGVkIFZlcnRpY2FsbHkgKi9cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IEBncm91cGVkTWFyZ2luO1xufVxuLnVpLmZvcm0gLmdyb3VwZWQuZmllbGRzOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udWkuZm9ybSAuZ3JvdXBlZC5maWVsZHMgPiBsYWJlbCB7XG4gIG1hcmdpbjogQGdyb3VwZWRMYWJlbE1hcmdpbjtcbiAgY29sb3I6IEBncm91cGVkTGFiZWxDb2xvcjtcbiAgZm9udC1zaXplOiBAZ3JvdXBlZExhYmVsRm9udFNpemU7XG4gIGZvbnQtd2VpZ2h0OiBAZ3JvdXBlZExhYmVsRm9udFdlaWdodDtcbiAgdGV4dC10cmFuc2Zvcm06IEBncm91cGVkTGFiZWxUZXh0VHJhbnNmb3JtO1xufVxuXG4udWkuZm9ybSAuZ3JvdXBlZC5maWVsZHMgLmZpZWxkLFxuLnVpLmZvcm0gLmdyb3VwZWQuaW5saW5lLmZpZWxkcyAuZmllbGQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBAZ3JvdXBlZEZpZWxkTWFyZ2luO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZpZWxkc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3BsaXQgZmllbGRzICovXG4udWkuZm9ybSAuZmllbGRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgbWFyZ2luOiBAZmllbGRzTWFyZ2luO1xufVxuLnVpLmZvcm0gLmZpZWxkcyA+IC5maWVsZCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IChAZ3V0dGVyV2lkdGggLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKEBndXR0ZXJXaWR0aCAvIDIpO1xufVxuLnVpLmZvcm0gLmZpZWxkcyA+IC5maWVsZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBPdGhlciBDb21iaW5hdGlvbnMgKi9cbi51aS5mb3JtIC50d28uZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC50d28uZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IEB0d29Db2x1bW47XG59XG4udWkuZm9ybSAudGhyZWUuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC50aHJlZS5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogQHRocmVlQ29sdW1uO1xufVxuLnVpLmZvcm0gLmZvdXIuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5mb3VyLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiBAZm91ckNvbHVtbjtcbn1cbi51aS5mb3JtIC5maXZlLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuZml2ZS5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogQGZpdmVDb2x1bW47XG59XG4udWkuZm9ybSAuc2l4LmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuc2l4LmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiBAc2l4Q29sdW1uO1xufVxuLnVpLmZvcm0gLnNldmVuLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuc2V2ZW4uZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IEBzZXZlbkNvbHVtbjtcbn1cbi51aS5mb3JtIC5laWdodC5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLmVpZ2h0LmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiBAZWlnaHRDb2x1bW47XG59XG4udWkuZm9ybSAubmluZS5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLm5pbmUuZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IEBuaW5lQ29sdW1uO1xufVxuLnVpLmZvcm0gLnRlbi5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLnRlbi5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogQHRlbkNvbHVtbjtcbn1cblxuLyogU3dhcCB0byBmdWxsIHdpZHRoIG9uIG1vYmlsZSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogQGxhcmdlc3RNb2JpbGVTY3JlZW4pIHtcbiAgLnVpLmZvcm0gLmZpZWxkcyB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkcyA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnR3by5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudHdvLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnRocmVlLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC50aHJlZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5mb3VyLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5mb3VyLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpdmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpdmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuc2l4LmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5zaXguZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuc2V2ZW4uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnNldmVuLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmVpZ2h0LmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5laWdodC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5uaW5lLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5uaW5lLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnRlbi5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudGVuLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCB7XG4gICAgd2lkdGg6IEBvbmVDb2x1bW4gIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCBAcm93RGlzdGFuY2U7XG4gIH1cbn1cblxuXG4vKiBTaXppbmcgQ29tYmluYXRpb25zICovXG4udWkuZm9ybSAuZmllbGRzIC53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IEBvbmVXaWRlO1xuICBwYWRkaW5nLWxlZnQ6IChAZ3V0dGVyV2lkdGggLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKEBndXR0ZXJXaWR0aCAvIDIpO1xufVxuXG4udWkuZm9ybSAub25lLndpZGUuZmllbGQge1xuICB3aWR0aDogQG9uZVdpZGUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC50d28ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiBAdHdvV2lkZSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLnRocmVlLndpZGUuZmllbGQge1xuICB3aWR0aDogQHRocmVlV2lkZSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLmZvdXIud2lkZS5maWVsZCB7XG4gIHdpZHRoOiBAZm91cldpZGUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5maXZlLndpZGUuZmllbGQge1xuICB3aWR0aDogQGZpdmVXaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAuc2l4LndpZGUuZmllbGQge1xuICB3aWR0aDogQHNpeFdpZGUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5zZXZlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IEBzZXZlbldpZGUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5laWdodC53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IEBlaWdodFdpZGUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5uaW5lLndpZGUuZmllbGQge1xuICB3aWR0aDogQG5pbmVXaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAudGVuLndpZGUuZmllbGQge1xuICB3aWR0aDogQHRlbldpZGUgIWltcG9ydGFudDtcbn1cbi51aS5mb3JtIC5lbGV2ZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiBAZWxldmVuV2lkZSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLnR3ZWx2ZS53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IEB0d2VsdmVXaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAudGhpcnRlZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiBAdGhpcnRlZW5XaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAuZm91cnRlZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiBAZm91cnRlZW5XaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZm9ybSAuZmlmdGVlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IEBmaWZ0ZWVuV2lkZSAhaW1wb3J0YW50O1xufVxuLnVpLmZvcm0gLnNpeHRlZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiBAc2l4dGVlbldpZGUgIWltcG9ydGFudDtcbn1cblxuLyogU3dhcCB0byBmdWxsIHdpZHRoIG9uIG1vYmlsZSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogQGxhcmdlc3RNb2JpbGVTY3JlZW4pIHtcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnR3by5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudHdvLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnRocmVlLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC50aHJlZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5mb3VyLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5mb3VyLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpdmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpdmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnR3by53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnRocmVlLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZm91ci53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpdmUud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5zaXgud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5zZXZlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmVpZ2h0LndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAubmluZS53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnRlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmVsZXZlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnR3ZWx2ZS53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnRoaXJ0ZWVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZm91cnRlZW4ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWZ0ZWVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuc2l4dGVlbi53aWRlLmZpZWxkIHtcbiAgICB3aWR0aDogQG9uZUNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5mb3JtIC5maWVsZHMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBFcXVhbCBXaWR0aFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmZvcm0gLmZpZWxkcyA+IC5maWVsZCxcbi51aS5mb3JtIFtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogMSAxIGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBJbmxpbmUgRmllbGRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyB7XG4gIG1hcmdpbjogQGZpZWxkTWFyZ2luO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiBAaW5saW5lRmllbGRzTWFyZ2luO1xufVxuXG4vKiBJbmxpbmUgTGFiZWwgKi9cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzID4gbGFiZWwsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBsYWJlbCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IHAsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gbGFiZWwsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgZm9udC1zaXplOiBAaW5saW5lTGFiZWxGb250U2l6ZTtcbiAgZm9udC13ZWlnaHQ6IEBpbmxpbmVMYWJlbEZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAaW5saW5lTGFiZWxDb2xvcjtcbiAgdGV4dC10cmFuc2Zvcm06IEBpbmxpbmVMYWJlbFRleHRUcmFuc2Zvcm07XG59XG5cbi8qIEdyb3VwZWQgSW5saW5lIExhYmVsICovXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyA+IGxhYmVsIHtcbiAgbWFyZ2luOiBAZ3JvdXBlZElubGluZUxhYmVsTWFyZ2luO1xufVxuXG4vKiBJbmxpbmUgSW5wdXQgKi9cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IGlucHV0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gc2VsZWN0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IGlucHV0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IHNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG5cbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IEBpbmxpbmVJbnB1dFNpemU7XG59XG5cbi8qIExhYmVsICovXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiA6Zmlyc3QtY2hpbGQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwIEBpbmxpbmVMYWJlbERpc3RhbmNlIDAgMDtcbn1cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IDpvbmx5LWNoaWxkLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IDpvbmx5LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBXaWRlICovXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAud2lkZS5maWVsZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAud2lkZS5maWVsZCA+IGlucHV0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLndpZGUuZmllbGQgPiBzZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaS5mb3JtIHtcbiAgZm9udC1zaXplOiBAbWluaTtcbn1cbi51aS50aW55LmZvcm0ge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLmZvcm0ge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbi51aS5mb3JtIHtcbiAgZm9udC1zaXplOiBAbWVkaXVtO1xufVxuLnVpLmxhcmdlLmZvcm0ge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5iaWcuZm9ybSB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5odWdlLmZvcm0ge1xuICBmb250LXNpemU6IEBodWdlO1xufVxuLnVpLm1hc3NpdmUuZm9ybSB7XG4gIGZvbnQtc2l6ZTogQG1hc3NpdmU7XG59XG5cbi8qIERyb3Bkb3duICovXG4udWkubWluaS5mb3JtIC5maWVsZCAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBtaW5pO1xufVxuLnVpLnRpbnkuZm9ybSAuZmllbGQgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAdGlueTtcbn1cbi51aS5zbWFsbC5mb3JtIC5maWVsZCAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbi51aS5mb3JtIC5maWVsZCAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG4udWkubGFyZ2UuZm9ybSAuZmllbGQgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAbGFyZ2U7XG59XG4udWkuYmlnLmZvcm0gLmZpZWxkIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5odWdlLmZvcm0gLmZpZWxkIC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQGh1Z2U7XG59XG4udWkubWFzc2l2ZS5mb3JtIC5maWVsZCAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBtYXNzaXZlO1xufVxuXG4vKiBEcm9wZG93biBJdGVtcyAqL1xuLnVpLm1pbmkuZm9ybSAuZmllbGQgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBtaW5pO1xufVxuLnVpLnRpbnkuZm9ybSAuZmllbGQgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLmZvcm0gLmZpZWxkIC5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkuZm9ybSAuZmllbGQgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG4udWkubGFyZ2UuZm9ybSAuZmllbGQgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5iaWcuZm9ybSAuZmllbGQgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBiaWc7XG59XG4udWkuaHVnZS5mb3JtIC5maWVsZCAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQGh1Z2U7XG59XG4udWkubWFzc2l2ZS5mb3JtIC5maWVsZCAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQG1hc3NpdmU7XG59XG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIEdyaWRcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdjb2xsZWN0aW9uJztcbkBlbGVtZW50IDogJ2dyaWQnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGFuZGFyZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFJlbW92ZSBHdXR0ZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkIHtcbiAgbWFyZ2luLXRvcDogLShAcm93U3BhY2luZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAtKEByb3dTcGFjaW5nIC8gMik7XG4gIG1hcmdpbi1sZWZ0OiAtKEBndXR0ZXJXaWR0aCAvIDIpO1xuICBtYXJnaW4tcmlnaHQ6IC0oQGd1dHRlcldpZHRoIC8gMik7XG59XG4udWkucmVsYXhlZC5ncmlkICB7XG4gIG1hcmdpbi1sZWZ0OiAtKEByZWxheGVkR3V0dGVyV2lkdGggLyAyKTtcbiAgbWFyZ2luLXJpZ2h0OiAtKEByZWxheGVkR3V0dGVyV2lkdGggLyAyKTtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uZ3JpZCAge1xuICBtYXJnaW4tbGVmdDogLShAdmVyeVJlbGF4ZWRHdXR0ZXJXaWR0aCAvIDIpO1xuICBtYXJnaW4tcmlnaHQ6IC0oQHZlcnlSZWxheGVkR3V0dGVyV2lkdGggLyAyKTtcbn1cblxuXG4vKiBQcmVzZXJ2ZSBSb3dzIFNwYWNpbmcgb24gQ29uc2VjdXRpdmUgR3JpZHMgKi9cbi51aS5ncmlkICsgLmdyaWQge1xuICBtYXJnaW4tdG9wOiBAY29uc2VjdXRpdmVHcmlkRGlzdGFuY2U7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbHVtbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3RhbmRhcmQgMTYgY29sdW1uICovXG4udWkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIHdpZHRoOiBAb25lV2lkZTtcbiAgcGFkZGluZy1sZWZ0OiAoQGd1dHRlcldpZHRoIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6IChAZ3V0dGVyV2lkdGggLyAyKTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmdyaWQgPiAqIHtcbiAgcGFkZGluZy1sZWZ0OiAoQGd1dHRlcldpZHRoIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6IChAZ3V0dGVyV2lkdGggLyAyKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFJvd3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmdyaWQgPiAucm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogaW5oZXJpdDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctdG9wOiAoQHJvd1NwYWNpbmcgLyAyKTtcbiAgcGFkZGluZy1ib3R0b206IChAcm93U3BhY2luZyAvIDIpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2x1bW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFZlcnRpY2FsIHBhZGRpbmcgd2hlbiBubyByb3dzICovXG4udWkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgcGFkZGluZy10b3A6IChAcm93U3BhY2luZyAvIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogKEByb3dTcGFjaW5nIC8gMik7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkID4gLnJvdyA+IGltZyxcbi51aS5ncmlkID4gLnJvdyA+IC5jb2x1bW4gPiBpbWcge1xuICBtYXgtd2lkdGg6IEBjb2x1bW5NYXhJbWFnZVdpZHRoO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBMb29zZSBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBDb2xsYXBzZSBNYXJnaW4gb24gQ29uc2VjdXRpdmUgR3JpZCAqL1xuLnVpLmdyaWQgPiAudWkuZ3JpZDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkuZ3JpZCA+IC51aS5ncmlkOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBTZWdtZW50IGluc2lkZSBBbGlnbmVkIEdyaWQgKi9cbi51aS5ncmlkIC5hbGlnbmVkLnJvdyA+IC5jb2x1bW4gPiAuc2VnbWVudDpub3QoLmNvbXBhY3QpOm5vdCguYXR0YWNoZWQpLFxuLnVpLmFsaWduZWQuZ3JpZCAuY29sdW1uID4gLnNlZ21lbnQ6bm90KC5jb21wYWN0KTpub3QoLmF0dGFjaGVkKSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBBbGlnbiBEaXZpZGVycyB3aXRoIEd1dHRlciAqL1xuLnVpLmdyaWQgLnJvdyArIC51aS5kaXZpZGVyIHtcbiAgZmxleC1ncm93OiAxO1xuICBtYXJnaW46IChAcm93U3BhY2luZyAvIDIpIChAZ3V0dGVyV2lkdGggLyAyKTtcbn1cbi51aS5ncmlkIC5jb2x1bW4gKyAudWkudmVydGljYWwuZGl2aWRlciB7XG4gIGhlaWdodDogZSglKFwiY2FsYyg1MCUlIC0gJWQpXCIsIEByb3dTcGFjaW5nIC8gMikpO1xufVxuXG4vKiBSZW1vdmUgQm9yZGVyIG9uIExhc3QgSG9yaXpvbnRhbCBTZWdtZW50ICovXG4udWkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgPiAuaG9yaXpvbnRhbC5zZWdtZW50LFxuLnVpLmdyaWQgPiAuY29sdW1uOmxhc3QtY2hpbGQgPiAuaG9yaXpvbnRhbC5zZWdtZW50IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUGFnZSBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkucGFnZS5ncmlkIHtcbiAgICB3aWR0aDogQG1vYmlsZVdpZHRoO1xuICAgIHBhZGRpbmctbGVmdDogQG1vYmlsZUd1dHRlcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiBAbW9iaWxlR3V0dGVyO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAdGFibGV0QnJlYWtwb2ludCkgYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0VGFibGV0U2NyZWVuKSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBAdGFibGV0V2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IEB0YWJsZXRNYXJnaW47XG4gICAgbWFyZ2luLXJpZ2h0OiBAdGFibGV0TWFyZ2luO1xuICAgIHBhZGRpbmctbGVmdDogQHRhYmxldEd1dHRlcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiBAdGFibGV0R3V0dGVyO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEBjb21wdXRlckJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdFNtYWxsTW9uaXRvcikge1xuICAudWkucGFnZS5ncmlkIHtcbiAgICB3aWR0aDogQGNvbXB1dGVyV2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IEBjb21wdXRlck1hcmdpbjtcbiAgICBtYXJnaW4tcmlnaHQ6IEBjb21wdXRlck1hcmdpbjtcbiAgICBwYWRkaW5nLWxlZnQ6IEBjb21wdXRlckd1dHRlcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiBAY29tcHV0ZXJHdXR0ZXI7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQGxhcmdlTW9uaXRvckJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdExhcmdlTW9uaXRvcikge1xuICAudWkucGFnZS5ncmlkIHtcbiAgICB3aWR0aDogQGxhcmdlTW9uaXRvcldpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiBAbGFyZ2VNb25pdG9yTWFyZ2luO1xuICAgIG1hcmdpbi1yaWdodDogQGxhcmdlTW9uaXRvck1hcmdpbjtcbiAgICBwYWRkaW5nLWxlZnQ6IEBsYXJnZU1vbml0b3JHdXR0ZXI7XG4gICAgcGFkZGluZy1yaWdodDogQGxhcmdlTW9uaXRvckd1dHRlcjtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAd2lkZXNjcmVlbk1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBAd2lkZXNjcmVlbk1vbml0b3JXaWR0aDtcbiAgICBtYXJnaW4tbGVmdDogQHdpZGVzY3JlZW5NYXJnaW47XG4gICAgbWFyZ2luLXJpZ2h0OiBAd2lkZXNjcmVlbk1hcmdpbjtcbiAgICBwYWRkaW5nLWxlZnQ6IEB3aWRlc2NyZWVuTW9uaXRvckd1dHRlcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiBAd2lkZXNjcmVlbk1vbml0b3JHdXR0ZXI7XG4gIH1cbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sdW1uIENvdW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEFzc3VtZSBmdWxsIHdpZHRoIHdpdGggb25lIGNvbHVtbiAqL1xuLnVpLmdyaWQgPiAuY29sdW1uOm9ubHktY2hpbGQsXG4udWkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOm9ubHktY2hpbGQge1xuICB3aWR0aDogQG9uZUNvbHVtbjtcbn1cblxuLyogR3JpZCBCYXNlZCAqL1xuLnVpW2NsYXNzKj1cIm9uZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cIm9uZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IEBvbmVDb2x1bW47XG59XG4udWlbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogQHR3b0NvbHVtbjtcbn1cbi51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogQHRocmVlQ29sdW1uO1xufVxuLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogQGZvdXJDb2x1bW47XG59XG4udWlbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiBAZml2ZUNvbHVtbjtcbn1cbi51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiBAc2l4Q29sdW1uO1xufVxuLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiBAc2V2ZW5Db2x1bW47XG59XG4udWlbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IEBlaWdodENvbHVtbjtcbn1cbi51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IEBuaW5lQ29sdW1uO1xufVxuLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IEB0ZW5Db2x1bW47XG59XG4udWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogQGVsZXZlbkNvbHVtbjtcbn1cbi51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiBAdHdlbHZlQ29sdW1uO1xufVxuLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiBAdGhpcnRlZW5Db2x1bW47XG59XG4udWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IEBmb3VydGVlbkNvbHVtbjtcbn1cbi51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IEBmaWZ0ZWVuQ29sdW1uO1xufVxuLnVpW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogQHNpeHRlZW5Db2x1bW47XG59XG5cbi8qIFJvdyBCYXNlZCBPdmVycmlkZXMgKi9cbi51aS5ncmlkID4gW2NsYXNzKj1cIm9uZSBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiBAb25lQ29sdW1uICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogQHR3b0NvbHVtbiAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogQHRocmVlQ29sdW1uICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IEBmb3VyQ29sdW1uICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IEBmaXZlQ29sdW1uICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogQHNpeENvbHVtbiAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogQHNldmVuQ29sdW1uICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiBAZWlnaHRDb2x1bW4gIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogQG5pbmVDb2x1bW4gIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiBAdGVuQ29sdW1uICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogQGVsZXZlbkNvbHVtbiAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IEB0d2VsdmVDb2x1bW4gIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IEB0aGlydGVlbkNvbHVtbiAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogQGZvdXJ0ZWVuQ29sdW1uICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IEBmaWZ0ZWVuQ29sdW1uICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IEBzaXh0ZWVuQ29sdW1uICFpbXBvcnRhbnQ7XG59XG5cbi8qIENlbGxlZCBQYWdlICovXG4udWkuY2VsbGVkLnBhZ2UuZ3JpZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENvbHVtbiBXaWR0aFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTaXppbmcgQ29tYmluYXRpb25zICovXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IEBvbmVXaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IEB0d29XaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogQHRocmVlV2lkZSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogQGZvdXJXaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiBAZml2ZVdpZGUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogQHNpeFdpZGUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiBAc2V2ZW5XaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogQGVpZ2h0V2lkZSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogQG5pbmVXaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IEB0ZW5XaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IEBlbGV2ZW5XaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IEB0d2VsdmVXaWRlICFpbXBvcnRhbnQ7XG59XG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogQHRoaXJ0ZWVuV2lkZSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IEBmb3VydGVlbldpZGUgIWltcG9ydGFudDtcbn1cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IEBmaWZ0ZWVuV2lkZSAhaW1wb3J0YW50O1xufVxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogQHNpeHRlZW5XaWRlICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFdpZHRoIHBlciBEZXZpY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTW9iaWxlIFNpemluZyBDb21iaW5hdGlvbnMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQG1vYmlsZUJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBvbmVXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdHdvV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhyZWVXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZvdXJXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZpdmVXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2l4V2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2V2ZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBlaWdodFdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAbmluZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEB0ZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZWxldmVuV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHR3ZWx2ZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHRoaXJ0ZWVuV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZm91cnRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZpZnRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHNpeHRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogVGFibGV0IFNpemluZyBDb21iaW5hdGlvbnMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQHRhYmxldEJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdFRhYmxldFNjcmVlbikge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBvbmVXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdHdvV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhyZWVXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZvdXJXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZpdmVXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2l4V2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2V2ZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBlaWdodFdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAbmluZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEB0ZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZWxldmVuV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHR3ZWx2ZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHRoaXJ0ZWVuV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZm91cnRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZpZnRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHNpeHRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogQ29tcHV0ZXIvRGVza3RvcCBTaXppbmcgQ29tYmluYXRpb25zICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEBjb21wdXRlckJyZWFrcG9pbnQpIHtcbiAgICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQG9uZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHR3b1dpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhyZWVXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZm91cldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBmaXZlV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2l4V2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBzZXZlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZWlnaHRXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAbmluZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHRlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGVsZXZlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHR3ZWx2ZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhpcnRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZvdXJ0ZWVuV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZpZnRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2l4dGVlbldpZGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBMYXJnZSBNb25pdG9yIFNpemluZyBDb21iaW5hdGlvbnMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQGxhcmdlTW9uaXRvckJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdExhcmdlTW9uaXRvcil7XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQG9uZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEB0d29XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEB0aHJlZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZm91cldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZml2ZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBzaXhXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBzZXZlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGVpZ2h0V2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBuaW5lV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHRlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBlbGV2ZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdHdlbHZlV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhpcnRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBmb3VydGVlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZmlmdGVlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2l4dGVlbldpZGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBXaWRlc2NyZWVuIFNpemluZyBDb21iaW5hdGlvbnMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQHdpZGVzY3JlZW5Nb25pdG9yQnJlYWtwb2ludCkge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAb25lV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEB0d29XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhyZWVXaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBmb3VyV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZml2ZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2l4V2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHNldmVuV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGVpZ2h0V2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAbmluZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGVuV2lkZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBlbGV2ZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQHR3ZWx2ZVdpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEB0aGlydGVlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBmb3VydGVlbldpZGUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogQGZpZnRlZW5XaWRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBzaXh0ZWVuV2lkZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBDZW50ZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VudGVyZWQuZ3JpZCxcbi51aS5jZW50ZXJlZC5ncmlkID4gLnJvdyxcbi51aS5ncmlkID4gLmNlbnRlcmVkLnJvdyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4udWkuY2VudGVyZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5hbGlnbmVkKTpub3QoLmp1c3RpZmllZCk6bm90KC5yb3cpLFxuLnVpLmNlbnRlcmVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpub3QoLmFsaWduZWQpOm5vdCguanVzdGlmaWVkKSxcbi51aS5ncmlkIC5jZW50ZXJlZC5yb3cgPiAuY29sdW1uOm5vdCguYWxpZ25lZCk6bm90KC5qdXN0aWZpZWQpIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnVpLmdyaWQgPiAuY2VudGVyZWQuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmNlbnRlcmVkLmNvbHVtbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUmVsYXhlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmVsYXhlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkucmVsYXhlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yZWxheGVkLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nLWxlZnQ6IChAcmVsYXhlZEd1dHRlcldpZHRoIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6IChAcmVsYXhlZEd1dHRlcldpZHRoIC8gMik7XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogKEB2ZXJ5UmVsYXhlZEd1dHRlcldpZHRoIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6IChAdmVyeVJlbGF4ZWRHdXR0ZXJXaWR0aCAvIDIpO1xufVxuXG4vKiBDb3VwbGluZyB3aXRoIFVJIERpdmlkZXIgKi9cbi51aS5yZWxheGVkLmdyaWQgLnJvdyArIC51aS5kaXZpZGVyLFxuLnVpLmdyaWQgLnJlbGF4ZWQucm93ICsgLnVpLmRpdmlkZXIge1xuICBtYXJnaW4tbGVmdDogKEByZWxheGVkR3V0dGVyV2lkdGggLyAyKTtcbiAgbWFyZ2luLXJpZ2h0OiAoQHJlbGF4ZWRHdXR0ZXJXaWR0aCAvIDIpO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5ncmlkIC5yb3cgKyAudWkuZGl2aWRlcixcbi51aS5ncmlkIFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ucm93ICsgLnVpLmRpdmlkZXIge1xuICBtYXJnaW4tbGVmdDogKEB2ZXJ5UmVsYXhlZEd1dHRlcldpZHRoIC8gMik7XG4gIG1hcmdpbi1yaWdodDogKEB2ZXJ5UmVsYXhlZEd1dHRlcldpZHRoIC8gMik7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFBhZGRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucGFkZGVkLmdyaWQ6bm90KC52ZXJ0aWNhbGx5KTpub3QoLmhvcml6b250YWxseSkge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cbltjbGFzcyo9XCJob3Jpem9udGFsbHkgcGFkZGVkXCJdLnVpLmdyaWQge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cbltjbGFzcyo9XCJ2ZXJ0aWNhbGx5IHBhZGRlZFwiXS51aS5ncmlkIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFwiRmxvYXRlZFwiXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uY29sdW1uIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnVpLmdyaWQgW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0uY29sdW1uIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW4ge1xuICBib3gtc2hhZG93OiBAZGl2aWRlZEJvcmRlcjtcbn1cblxuLyogU3dhcCBmcm9tIHBhZGRpbmcgdG8gbWFyZ2luIG9uIGNvbHVtbnMgdG8gaGF2ZSBkaXZpZGVycyBhbGlnbiAqL1xuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IChAcm93U3BhY2luZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoQHJvd1NwYWNpbmcgLyAyKTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuXG4vKiBObyBkaXZpZGVyIG9uIGZpcnN0IGNvbHVtbiBvbiByb3cgKi9cbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpmaXJzdC1jaGlsZCxcbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBObyBzcGFjZSBvbiB0b3Agb2YgZmlyc3Qgcm93ICovXG4udWlbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93OmZpcnN0LWNoaWxkID4gLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cblxuLyogRGl2aWRlZCBSb3cgKi9cbi51aS5ncmlkID4gLmRpdmlkZWQucm93ID4gLmNvbHVtbiB7XG4gIGJveC1zaGFkb3c6IEBkaXZpZGVkQm9yZGVyO1xufVxuLnVpLmdyaWQgPiAuZGl2aWRlZC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogVmVydGljYWxseSBEaXZpZGVkICovXG4udWlbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICB3aWR0aDogZSglKFwiY2FsYygxMDAlJSAtICVkKVwiLCBAZ3V0dGVyV2lkdGgpKTtcbiAgaGVpZ2h0OiAxcHg7XG5cbiAgbWFyZ2luOiAwIChAZ3V0dGVyV2lkdGggLyAyKTtcbiAgYm94LXNoYWRvdzogQHZlcnRpY2FsbHlEaXZpZGVkQm9yZGVyO1xufVxuXG4vKiBQYWRkZWQgSG9yaXpvbnRhbGx5IERpdmlkZWQgKi9cbltjbGFzcyo9XCJob3Jpem9udGFsbHkgcGFkZGVkXCJdLnVpLmRpdmlkZWQuZ3JpZCxcbi51aS5wYWRkZWQuZGl2aWRlZC5ncmlkOm5vdCgudmVydGljYWxseSk6bm90KC5ob3Jpem9udGFsbHkpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEZpcnN0IFJvdyBWZXJ0aWNhbGx5IERpdmlkZWQgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogSW52ZXJ0ZWQgRGl2aWRlZCAqL1xuLnVpLmludmVydGVkLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5pbnZlcnRlZC5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW4ge1xuICBib3gtc2hhZG93OiBAZGl2aWRlZEludmVydGVkQm9yZGVyO1xufVxuLnVpLmludmVydGVkLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAuY29sdW1uOm5vdCgucm93KTpmaXJzdC1jaGlsZCxcbi51aS5pbnZlcnRlZC5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpLmludmVydGVkW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpiZWZvcmUge1xuICBib3gtc2hhZG93OiBAdmVydGljYWxseURpdmlkZWRJbnZlcnRlZEJvcmRlcjtcbn1cblxuLyogUmVsYXhlZCAqL1xuLnVpLnJlbGF4ZWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93OmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAoQHJlbGF4ZWRHdXR0ZXJXaWR0aCAvIDIpO1xuICBtYXJnaW4tcmlnaHQ6IChAcmVsYXhlZEd1dHRlcldpZHRoIC8gMik7XG4gIHdpZHRoOiBlKCUoXCJjYWxjKDEwMCUlIC0gJWQpXCIsIEByZWxheGVkR3V0dGVyV2lkdGgpKTtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl1bY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93OmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAoQHZlcnlSZWxheGVkR3V0dGVyV2lkdGggLyAyKTtcbiAgbWFyZ2luLXJpZ2h0OiAoQHZlcnlSZWxheGVkR3V0dGVyV2lkdGggLyAyKTtcbiAgd2lkdGg6IGUoJShcImNhbGMoMTAwJSUgLSAlZClcIiwgQHZlcnlSZWxheGVkR3V0dGVyV2lkdGgpKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBDZWxsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNlbGxlZC5ncmlkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogQGNlbGxlZE1hcmdpbjtcbiAgYm94LXNoYWRvdzogQGNlbGxlZEdyaWREaXZpZGVyO1xufVxuXG4udWkuY2VsbGVkLmdyaWQgPiAucm93IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2hhZG93OiBAY2VsbGVkUm93RGl2aWRlcjtcbn1cbi51aS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBib3gtc2hhZG93OiBAY2VsbGVkQ29sdW1uRGl2aWRlcjtcbn1cblxuLnVpLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpmaXJzdC1jaGlsZCxcbi51aS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmc6IEBjZWxsZWRQYWRkaW5nO1xufVxuLnVpLnJlbGF4ZWQuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5yZWxheGVkLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiBAY2VsbGVkUmVsYXhlZFBhZGRpbmc7XG59XG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiBAY2VsbGVkVmVyeVJlbGF4ZWRQYWRkaW5nO1xufVxuXG4vKiBJbnRlcm5hbGx5IENlbGxlZCAqL1xuLnVpW2NsYXNzKj1cImludGVybmFsbHkgY2VsbGVkXCJdLmdyaWQge1xuICBib3gtc2hhZG93OiBub25lO1xuICBtYXJnaW46IDA7XG59XG4udWlbY2xhc3MqPVwiaW50ZXJuYWxseSBjZWxsZWRcIl0uZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnVpW2NsYXNzKj1cImludGVybmFsbHkgY2VsbGVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgVmVydGljYWxseSBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRvcCBBbGlnbmVkICovXG4udWlbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXS5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLyogTWlkZGxlIEFsaWduZWQgKi9cbi51aVtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJvdHRvbSBBbGlnbmVkICovXG4udWlbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXS5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi8qIFN0cmV0Y2hlZCAqL1xuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuc3RyZXRjaGVkLmdyaWQgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiAuc3RyZXRjaGVkLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5zdHJldGNoZWQuY29sdW1uOm5vdCgucm93KSxcbi51aS5ncmlkID4gLnJvdyA+IC5zdHJldGNoZWQuY29sdW1uIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4gPiAqLFxuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLmNvbHVtbiA+ICosXG4udWkuZ3JpZCA+IC5zdHJldGNoZWQucm93ID4gLmNvbHVtbiA+ICosXG4udWkuZ3JpZCA+IC5zdHJldGNoZWQuY29sdW1uOm5vdCgucm93KSA+ICosXG4udWkuZ3JpZCA+IC5yb3cgPiAuc3RyZXRjaGVkLmNvbHVtbiA+ICoge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIb3Jpem9udGFsbHkgQ2VudGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTGVmdCBBbGlnbmVkICovXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmdyaWQgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5jb2x1bW4uY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5jb2x1bW4uY29sdW1uIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYWxpZ24tc2VsZjogaW5oZXJpdDtcbn1cblxuLyogQ2VudGVyIEFsaWduZWQgKi9cbi51aVtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5ncmlkID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0uY29sdW1uLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5jb2x1bW4uY29sdW1uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBpbmhlcml0O1xufVxuLnVpW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLmdyaWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLyogUmlnaHQgQWxpZ25lZCAqL1xuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLmNvbHVtbi5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5jb2x1bW4uY29sdW1uIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGFsaWduLXNlbGY6IGluaGVyaXQ7XG59XG5cbi8qIEp1c3RpZmllZCAqL1xuLnVpLmp1c3RpZmllZC5ncmlkID4gLmNvbHVtbixcbi51aS5qdXN0aWZpZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiAuanVzdGlmaWVkLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5qdXN0aWZpZWQuY29sdW1uLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5qdXN0aWZpZWQuY29sdW1uLmNvbHVtbiB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIGh5cGhlbnM6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgQ29sb3JlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMsIHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksICdAJywgJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG5cbiAgLnVpLmdyaWQgPiAuQHtjb2xvcn0ucm93LFxuICAudWkuZ3JpZCA+IC5Ae2NvbG9yfS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLnJvdyA+IC5Ae2NvbG9yfS5jb2x1bW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjO1xuICAgIGNvbG9yOiBAd2hpdGU7XG4gIH1cbn0pXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFcXVhbCBXaWR0aFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLnJvdyA+IC5jb2x1bW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXgtZ3JvdzogMTtcbn1cbi51aVtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5ncmlkID4gLndpZGUuY29sdW1uLFxuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmdyaWQgPiAucm93ID4gLndpZGUuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0ucm93ID4gLndpZGUuY29sdW1uIHtcbiAgZmxleC1ncm93OiAwO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBSZXZlcnNlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyogTW9iaWxlICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgcmV2ZXJzZWRcIl0uZ3JpZCxcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXS5ncmlkID4gLnJvdyxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLnJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgdmVydGljYWxseSByZXZlcnNlZFwiXS5ncmlkLFxuICAudWkuc3RhY2thYmxlW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG5cbiAgLyogRGl2aWRlZCBSZXZlcnNlZCAqL1xuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogQGRpdmlkZWRCb3JkZXI7XG4gIH1cbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpsYXN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC8qIFZlcnRpY2FsbHkgRGl2aWRlZCBSZXZlcnNlZCAqL1xuICAudWkuZ3JpZFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl1bY2xhc3MqPVwibW9iaWxlIHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0gPiAucm93OmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgYm94LXNoYWRvdzogQHZlcnRpY2FsbHlEaXZpZGVkQm9yZGVyO1xuICB9XG4gIC51aS5ncmlkW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXVtjbGFzcyo9XCJtb2JpbGUgdmVydGljYWxseSByZXZlcnNlZFwiXSA+IC5yb3c6bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLyogQ2VsbGVkIFJldmVyc2VkICovXG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgcmV2ZXJzZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogQGNlbGxlZENvbHVtbkRpdmlkZXI7XG4gIH1cbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLyogVGFibGV0ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEB0YWJsZXRCcmVha3BvaW50KSBhbmQgKG1heC13aWR0aDogQGxhcmdlc3RUYWJsZXRTY3JlZW4pIHtcbiAgLnVpW2NsYXNzKj1cInRhYmxldCByZXZlcnNlZFwiXS5ncmlkLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHJldmVyc2VkXCJdLmdyaWQgPiAucm93LFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0ucm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRhYmxldCB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdLmdyaWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxuXG4gIC8qIERpdmlkZWQgUmV2ZXJzZWQgKi9cbiAgLnVpW2NsYXNzKj1cInRhYmxldCByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpmaXJzdC1jaGlsZCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IEBkaXZpZGVkQm9yZGVyO1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46bGFzdC1jaGlsZCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAvKiBWZXJ0aWNhbGx5IERpdmlkZWQgUmV2ZXJzZWQgKi9cbiAgLnVpLmdyaWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdW2NsYXNzKj1cInRhYmxldCB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdID4gLnJvdzpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IEB2ZXJ0aWNhbGx5RGl2aWRlZEJvcmRlcjtcbiAgfVxuICAudWkuZ3JpZFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl1bY2xhc3MqPVwidGFibGV0IHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0gPiAucm93Omxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC8qIENlbGxlZCBSZXZlcnNlZCAqL1xuICAudWlbY2xhc3MqPVwidGFibGV0IHJldmVyc2VkXCJdLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IEBjZWxsZWRDb2x1bW5EaXZpZGVyO1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi8qIENvbXB1dGVyICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEBjb21wdXRlckJyZWFrcG9pbnQpIHtcbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIHJldmVyc2VkXCJdLmdyaWQsXG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5ncmlkID4gLnJvdyxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0ucm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0uZ3JpZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG5cbiAgLyogRGl2aWRlZCBSZXZlcnNlZCAqL1xuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IEBkaXZpZGVkQm9yZGVyO1xuICB9XG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpsYXN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLyogVmVydGljYWxseSBEaXZpZGVkIFJldmVyc2VkICovXG4gIC51aS5ncmlkW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXVtjbGFzcyo9XCJjb21wdXRlciB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdID4gLnJvdzpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IEB2ZXJ0aWNhbGx5RGl2aWRlZEJvcmRlcjtcbiAgfVxuICAudWkuZ3JpZFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl1bY2xhc3MqPVwiY29tcHV0ZXIgdmVydGljYWxseSByZXZlcnNlZFwiXSA+IC5yb3c6bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLyogQ2VsbGVkIFJldmVyc2VkICovXG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiBAY2VsbGVkQ29sdW1uRGl2aWRlcjtcbiAgfVxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEb3VibGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBUYWJsZXQgT25seSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAdGFibGV0QnJlYWtwb2ludCkgYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0VGFibGV0U2NyZWVuKSB7XG4gIC51aS5kb3VibGluZy5ncmlkIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAudWkuZ3JpZCA+IC5kb3VibGluZy5yb3csXG4gIC51aS5kb3VibGluZy5ncmlkID4gLnJvdyB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5ncmlkID4gLmRvdWJsaW5nLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAoQHJvd1NwYWNpbmcgLyAyKSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAoQHJvd1NwYWNpbmcgLyAyKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAb25lQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdHdvQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdHdvQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhyZWVDb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwic2l4IGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IEB0aHJlZUNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHRocmVlQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZm91ckNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQGZvdXJDb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBmaXZlQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZml2ZUNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHNpeENvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHNpeENvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHNldmVuQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAc2V2ZW5Db2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBlaWdodENvbHVtbiAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIE1vYmlsZSBPbmx5ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS5ncmlkID4gLmRvdWJsaW5nLnJvdyxcbiAgLnVpLmRvdWJsaW5nLmdyaWQgPiAucm93IHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLmdyaWQgPiAuZG91Ymxpbmcucm93ID4gLmNvbHVtbixcbiAgLnVpLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gICAgcGFkZGluZy10b3A6IChAcm93U3BhY2luZyAvIDIpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IChAcm93U3BhY2luZyAvIDIpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQG9uZUNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHR3b0NvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHR3b0NvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHR3b0NvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHR3b0NvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHR3b0NvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHR3b0NvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHRocmVlQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhyZWVDb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IEB0aHJlZUNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQHRocmVlQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAdGhyZWVDb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IEBmb3VyQ29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiBAZm91ckNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogQGZvdXJDb2x1bW4gIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS5zdGFja2FibGUuZ3JpZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAucm93ID4gLndpZGUuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAud2lkZS5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZ3JpZCA+IC5jb2x1bW4uZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZ3JpZCA+IC5jb2x1bW4ucm93ID4gLmNvbHVtbixcbiAgLnVpLnN0YWNrYWJsZS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IC5zdGFja2FibGUuc3RhY2thYmxlLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogKEBzdGFja2FibGVSb3dTcGFjaW5nIC8gMikgKEBzdGFja2FibGVHdXR0ZXIgLyAyKSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5zdGFja2FibGUuZ3JpZDpub3QoLnZlcnRpY2FsbHkpID4gLnJvdyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKiBDb3VwbGluZyAqL1xuICAudWkuY29udGFpbmVyID4gLnVpLnN0YWNrYWJsZS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmNvbnRhaW5lciA+IC51aS5zdGFja2FibGUuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBEb24ndCBwYWQgaW5zaWRlIHNlZ21lbnQgb3IgbmVzdGVkIGdyaWQgKi9cbiAgLnVpLmdyaWQgLnVpLnN0YWNrYWJsZS5ncmlkLFxuICAudWkuc2VnbWVudDpub3QoLnZlcnRpY2FsKSAudWkuc3RhY2thYmxlLnBhZ2UuZ3JpZCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0oQHN0YWNrYWJsZUd1dHRlciAvIDIpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtKEBzdGFja2FibGVHdXR0ZXIgLyAyKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogRGl2aWRlZCBTdGFja2FibGUgKi9cbiAgLnVpLnN0YWNrYWJsZS5kaXZpZGVkLmdyaWQgPiAucm93OmZpcnN0LWNoaWxkID4gLmNvbHVtbjpmaXJzdC1jaGlsZCxcbiAgLnVpLnN0YWNrYWJsZS5jZWxsZWQuZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuICAudWkuc3RhY2thYmxlLmRpdmlkZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpOmZpcnN0LWNoaWxkLFxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyk6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudWkuaW52ZXJ0ZWQuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5pbnZlcnRlZC5zdGFja2FibGUuZGl2aWRlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5pbnZlcnRlZC5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpLmludmVydGVkLnN0YWNrYWJsZS5kaXZpZGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gICAgYm9yZGVyLXRvcDogQHN0YWNrYWJsZUludmVydGVkTW9iaWxlQm9yZGVyO1xuICB9XG5cbiAgLnVpLnN0YWNrYWJsZS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuc3RhY2thYmxlLmRpdmlkZWQ6bm90KC52ZXJ0aWNhbGx5KS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpLnN0YWNrYWJsZS5kaXZpZGVkOm5vdCgudmVydGljYWxseSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgICBib3JkZXItdG9wOiBAc3RhY2thYmxlTW9iaWxlQm9yZGVyO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogQHN0YWNrYWJsZVJvd1NwYWNpbmcgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogQHN0YWNrYWJsZVJvd1NwYWNpbmcgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAucm93IHtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLnN0YWNrYWJsZS5kaXZpZGVkOm5vdCgudmVydGljYWxseSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuc3RhY2thYmxlLmRpdmlkZWQ6bm90KC52ZXJ0aWNhbGx5KS5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBPbmx5IChEZXZpY2UpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyogVGhlc2UgaW5jbHVkZSBhcmJpdHJhcnkgY2xhc3MgcmVwZXRpdGlvbnMgZm9yIGZvcmNlZCBzcGVjaWZpY2l0eSAqL1xuXG4vKiBNb2JpbGUgT25seSBIaWRlICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cIndpZGVzY3JlZW4gb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0ucm93Om5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIndpZGVzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIndpZGVzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIFRhYmxldCBPbmx5IEhpZGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQHRhYmxldEJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdFRhYmxldFNjcmVlbikge1xuICAudWlbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC50YWJsZXQpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0ucm93Om5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLnRhYmxldCksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCgudGFibGV0KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0ucm93Om5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uY29sdW1uOm5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJjb21wdXRlciBvbmx5XCJdLmNvbHVtbjpub3QoLnRhYmxldCkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0ucm93Om5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImxhcmdlIHNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIENvbXB1dGVyIE9ubHkgSGlkZSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAY29tcHV0ZXJCcmVha3BvaW50KSBhbmQgKG1heC13aWR0aDogQGxhcmdlc3RTbWFsbE1vbml0b3IpIHtcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0ucm93Om5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudWlbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0ucm93Om5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImxhcmdlIHNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIExhcmdlIFNjcmVlbiBPbmx5IEhpZGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQGxhcmdlTW9uaXRvckJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdExhcmdlTW9uaXRvcikge1xuICAudWlbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5jb21wdXRlciksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5yb3c6bm90KC5jb21wdXRlciksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlciksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0ucm93Om5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIFdpZGVzY3JlZW4gT25seSBIaWRlICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEB3aWRlc2NyZWVuTW9uaXRvckJyZWFrcG9pbnQpIHtcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0ucm93Om5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBDb21wYWN0XG4tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21wYWN0LmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5jb21wYWN0LmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogKEBjb21wYWN0R3V0dGVyV2lkdGggLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKEBjb21wYWN0R3V0dGVyV2lkdGggLyAyKTtcbn1cblxuLnVpLmNvbXBhY3QuZ3JpZCA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IChAY29tcGFjdEd1dHRlcldpZHRoIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6IChAY29tcGFjdEd1dHRlcldpZHRoIC8gMik7XG59XG5cbi8qIFJvdyAqL1xuLnVpLmNvbXBhY3QuZ3JpZCA+IC5yb3cge1xuICBwYWRkaW5nLXRvcDogKEBjb21wYWN0Um93U3BhY2luZyAvIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogKEBjb21wYWN0Um93U3BhY2luZyAvIDIpO1xufVxuXG4vKiBDb2x1bW5zICovXG4udWkuY29tcGFjdC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICBwYWRkaW5nLXRvcDogKEBjb21wYWN0Um93U3BhY2luZyAvIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogKEBjb21wYWN0Um93U3BhY2luZyAvIDIpO1xufVxuXG4vKiBSZWxheGVkICsgQ2VsbGVkICovXG4udWkuY29tcGFjdC5yZWxheGVkLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuY29tcGFjdC5yZWxheGVkLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiBAY29tcGFjdENlbGxlZFJlbGF4ZWRQYWRkaW5nO1xufVxuLnVpLmNvbXBhY3RbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuY29tcGFjdFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmc6IEBjb21wYWN0Q2VsbGVkVmVyeVJlbGF4ZWRQYWRkaW5nO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgVmVyeSBjb21wYWN0XG4tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nLWxlZnQ6IChAdmVyeUNvbXBhY3RHdXR0ZXJXaWR0aCAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoQGNvbXBhY3RHdXR0ZXJXaWR0aCAvIDIpO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLmdyaWQgPiAqIHtcbiAgcGFkZGluZy1sZWZ0OiAoQHZlcnlDb21wYWN0R3V0dGVyV2lkdGggLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKEB2ZXJ5Q29tcGFjdEd1dHRlcldpZHRoIC8gMik7XG59XG5cbi8qIFJvdyAqL1xuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS5ncmlkID4gLnJvdyB7XG4gIHBhZGRpbmctdG9wOiAoQHZlcnlDb21wYWN0Um93U3BhY2luZyAvIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogKEB2ZXJ5Q29tcGFjdFJvd1NwYWNpbmcgLyAyKTtcbn1cblxuLyogQ29sdW1ucyAqL1xuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICBwYWRkaW5nLXRvcDogKEB2ZXJ5Q29tcGFjdFJvd1NwYWNpbmcgLyAyKTtcbiAgcGFkZGluZy1ib3R0b206IChAdmVyeUNvbXBhY3RSb3dTcGFjaW5nIC8gMik7XG59XG5cbi8qIFJlbGF4ZWQgKyBDZWxsZWQgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0ucmVsYXhlZC5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS5yZWxheGVkLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiBAdmVyeUNvbXBhY3RDZWxsZWRSZWxheGVkUGFkZGluZztcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl1bY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgcGFkZGluZzogQHZlcnlDb21wYWN0Q2VsbGVkVmVyeVJlbGF4ZWRQYWRkaW5nO1xufVxuXG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qXG4gKiAjIEZvbWFudGljIC0gTWVudVxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE1IENvbnRyaWJ1dG9yXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2NvbGxlY3Rpb24nO1xuQGVsZW1lbnQgOiAnbWVudSc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YW5kYXJkXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBNZW51XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogQG1hcmdpbjtcbiAgZm9udC1mYW1pbHk6IEBmb250RmFtaWx5O1xuICBiYWNrZ3JvdW5kOiBAYmFja2dyb3VuZDtcbiAgZm9udC13ZWlnaHQ6IEBmb250V2VpZ2h0O1xuICBib3JkZXI6IEBib3JkZXI7XG4gIGJveC1zaGFkb3c6IEBib3hTaGFkb3c7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG4gIG1pbi1oZWlnaHQ6IEBtaW5IZWlnaHQ7XG59XG5cbi51aS5tZW51OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5tZW51OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5tZW51Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTdWItTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLm1lbnUge1xuICBtYXJnaW46IDA7XG59XG5cbi51aS5tZW51Om5vdCgudmVydGljYWwpID4gLm1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJdGVtXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi51aS5tZW51IC5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgYmFja2dyb3VuZDogQGl0ZW1CYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiBAaXRlbVZlcnRpY2FsUGFkZGluZyBAaXRlbUhvcml6b250YWxQYWRkaW5nO1xuICB0ZXh0LXRyYW5zZm9ybTogQGl0ZW1UZXh0VHJhbnNmb3JtO1xuICBjb2xvcjogQGl0ZW1UZXh0Q29sb3I7XG4gIGZvbnQtd2VpZ2h0OiBAaXRlbUZvbnRXZWlnaHQ7XG4gIHRyYW5zaXRpb246IEBpdGVtVHJhbnNpdGlvbjtcbn1cblxuLnVpLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgMCAwIEBib3JkZXJSYWRpdXM7XG59XG5cbi8qIEJvcmRlciAqL1xuLnVpLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIHdpZHRoOiBAZGl2aWRlclNpemU7XG4gIGJhY2tncm91bmQ6IEBkaXZpZGVyQmFja2dyb3VuZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBUZXh0IENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IC50ZXh0Lml0ZW0gPiAqLFxuLnVpLm1lbnUgLml0ZW0gPiBhOm5vdCgudWkpLFxuLnVpLm1lbnUgLml0ZW0gPiBwOm9ubHktY2hpbGQge1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgbGluZS1oZWlnaHQ6IEB0ZXh0TGluZUhlaWdodDtcbn1cbi51aS5tZW51IC5pdGVtID4gcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkubWVudSAuaXRlbSA+IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuaXRlbSA+IGkuaWNvbiB7XG4gIG9wYWNpdHk6IEBpY29uT3BhY2l0eTtcbiAgZmxvYXQ6IEBpY29uRmxvYXQ7XG4gIG1hcmdpbjogQGljb25NYXJnaW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbSA+IC5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogQGJ1dHRvbk9mZnNldDtcbiAgbWFyZ2luOiBAYnV0dG9uTWFyZ2luO1xuICBwYWRkaW5nLWJvdHRvbTogQGJ1dHRvblZlcnRpY2FsUGFkZGluZztcbiAgcGFkZGluZy10b3A6IEBidXR0b25WZXJ0aWNhbFBhZGRpbmc7XG4gIGZvbnQtc2l6ZTogQGJ1dHRvblNpemU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLVxuIEdyaWQgLyBDb250YWluZXJcbi0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgPiAgLmdyaWQsXG4udWkubWVudSA+IC5jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogaW5oZXJpdDtcbiAgZmxleC1kaXJlY3Rpb246IGluaGVyaXQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW5wdXRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuaXRlbSA+IC5pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLml0ZW0gPiAuaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogQGlucHV0T2Zmc2V0O1xuICBtYXJnaW46IEBpbnB1dFZlcnRpY2FsTWFyZ2luIDA7XG59XG4udWkubWVudSAuaXRlbSA+IC5pbnB1dCBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogQGlucHV0U2l6ZTtcbiAgcGFkZGluZy10b3A6IEBpbnB1dFZlcnRpY2FsUGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206IEBpbnB1dFZlcnRpY2FsUGFkZGluZztcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLmhlYWRlci5pdGVtLFxuLnVpLnZlcnRpY2FsLm1lbnUgLmhlYWRlci5pdGVtIHtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kOiBAaGVhZGVyQmFja2dyb3VuZDtcbiAgdGV4dC10cmFuc2Zvcm06IEBoZWFkZXJUZXh0VHJhbnNmb3JtO1xuICBmb250LXdlaWdodDogQGhlYWRlcldlaWdodDtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgbWFyZ2luOiBAdmVydGljYWxIZWFkZXJNYXJnaW47XG4gIGZvbnQtc2l6ZTogQHZlcnRpY2FsSGVhZGVyRm9udFNpemU7XG4gIGZvbnQtd2VpZ2h0OiBAdmVydGljYWxIZWFkZXJGb250V2VpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRHJvcGRvd25zXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qIERyb3Bkb3duIEljb24gKi9cbi51aS5tZW51IC5pdGVtID4gaS5kcm9wZG93bi5pY29uIHtcbiAgcGFkZGluZzogMDtcbiAgZmxvYXQ6IEBkcm9wZG93bkljb25GbG9hdDtcbiAgbWFyZ2luOiAwIDAgMCBAZHJvcGRvd25JY29uRGlzdGFuY2U7XG59XG5cbi8qIE1lbnUgKi9cbi51aS5tZW51IC5kcm9wZG93bi5pdGVtIC5tZW51IHtcbiAgbWluLXdpZHRoOiBlKFwiY2FsYygxMDAlIC0gMXB4KVwiKTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIEBkcm9wZG93bk1lbnVCb3JkZXJSYWRpdXMgQGRyb3Bkb3duTWVudUJvcmRlclJhZGl1cztcbiAgYmFja2dyb3VuZDogQGRyb3Bkb3duQmFja2dyb3VuZDtcbiAgbWFyZ2luOiBAZHJvcGRvd25NZW51RGlzdGFuY2UgMCAwO1xuICBib3gtc2hhZG93OiBAZHJvcGRvd25NZW51Qm94U2hhZG93O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG59XG5cblxuLyogTWVudSBJdGVtcyAqL1xuLnVpLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogQGRyb3Bkb3duSXRlbUZvbnRTaXplICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IEBkcm9wZG93bkl0ZW1QYWRkaW5nICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IEBkcm9wZG93bkl0ZW1CYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiBAZHJvcGRvd25JdGVtQ29sb3IgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IEBkcm9wZG93bkl0ZW1UZXh0VHJhbnNmb3JtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBAZHJvcGRvd25JdGVtRm9udFdlaWdodCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBAZHJvcGRvd25JdGVtQm94U2hhZG93ICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IEBkcm9wZG93bkl0ZW1UcmFuc2l0aW9uICFpbXBvcnRhbnQ7XG59XG4udWkubWVudSAudWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IEBkcm9wZG93bkhvdmVyZWRJdGVtQmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICBjb2xvcjogQGRyb3Bkb3duSG92ZXJlZEl0ZW1Db2xvciAhaW1wb3J0YW50O1xufVxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51ID4gLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBAZHJvcGRvd25TZWxlY3RlZEl0ZW1CYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiBAZHJvcGRvd25TZWxlY3RlZEl0ZW1Db2xvciAhaW1wb3J0YW50O1xufVxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51ID4gLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogQGRyb3Bkb3duQWN0aXZlSXRlbUJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IEBkcm9wZG93bkFjdGl2ZUl0ZW1Gb250V2VpZ2h0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiBAZHJvcGRvd25BY3RpdmVJdGVtQ29sb3IgIWltcG9ydGFudDtcbn1cblxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duLml0ZW0gLm1lbnUgLml0ZW06bm90KC5maWx0ZXJlZCkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51aS5tZW51IC51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIC5pY29uOm5vdCguZHJvcGRvd24pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IEBkcm9wZG93bkl0ZW1JY29uRm9udFNpemUgIWltcG9ydGFudDtcbiAgZmxvYXQ6IEBkcm9wZG93bkl0ZW1JY29uRmxvYXQ7XG4gIG1hcmdpbjogQGRyb3Bkb3duSXRlbUljb25NYXJnaW4gIWltcG9ydGFudDtcbn1cblxuXG4vKiBTZWNvbmRhcnkgKi9cbi51aS5zZWNvbmRhcnkubWVudSAuZHJvcGRvd24uaXRlbSA+IC5tZW51LFxuLnVpLnRleHQubWVudSAuZHJvcGRvd24uaXRlbSA+IC5tZW51IHtcbiAgYm9yZGVyLXJhZGl1czogQGRyb3Bkb3duTWVudUJvcmRlclJhZGl1cztcbiAgbWFyZ2luLXRvcDogQHNlY29uZGFyeURyb3Bkb3duTWVudURpc3RhbmNlO1xufVxuXG4vKiBQb2ludGluZyAqL1xuLnVpLm1lbnUgLnBvaW50aW5nLmRyb3Bkb3duLml0ZW0gLm1lbnUge1xuICBtYXJnaW4tdG9wOiBAcG9pbnRpbmdEcm9wZG93bk1lbnVEaXN0YW5jZTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5tZW51IC5zZWFyY2guZHJvcGRvd24uaXRlbSA+IC5zZWFyY2gsXG4udWkuaW52ZXJ0ZWQubWVudSAuc2VhcmNoLmRyb3Bkb3duLml0ZW0gPiAudGV4dCB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTZWxlY3Rpb25Ecm9wZG93bkNvbG9yO1xufVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLml0ZW0gPiAuaWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgY29udGVudDogXCJcXGYwZGFcIjtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtIC5tZW51IHtcbiAgbGVmdDogMTAwJTtcbiAgLyogSUUgbmVlZHMgMCwgYWxsIG90aGVycyBzdXBwb3J0IG1heC1jb250ZW50IHRvIHNob3cgZHJvcGRvd24gaWNvbiBpbmxpbmUsIHNvIGtlZXAgYm90aCBzZXR0aW5ncyEgKi9cbiAgbWluLXdpZHRoOiAwO1xuICBtaW4td2lkdGg6IG1heC1jb250ZW50O1xuICBtYXJnaW46IDAgMCAwIEBkcm9wZG93bk1lbnVEaXN0YW5jZTtcbiAgYm94LXNoYWRvdzogQGRyb3Bkb3duVmVydGljYWxNZW51Qm94U2hhZG93O1xuICBib3JkZXItcmFkaXVzOiAwIEBkcm9wZG93bk1lbnVCb3JkZXJSYWRpdXMgQGRyb3Bkb3duTWVudUJvcmRlclJhZGl1cyBAZHJvcGRvd25NZW51Qm9yZGVyUmFkaXVzO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLml0ZW0udXB3YXJkIC5tZW51IHtcbiAgYm90dG9tOiAwO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLml0ZW06bm90KC51cHdhcmQpIC5tZW51IHtcbiAgdG9wOiAwO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmFjdGl2ZS5kcm9wZG93bi5pdGVtIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLmFjdGl2ZS5pdGVtIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogRXZlbmx5IERpdmlkZWQgKi9cbi51aS5pdGVtLm1lbnUgLmRyb3Bkb3duIC5tZW51IC5pdGVtIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTGFiZWxzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuaXRlbSA+IC5sYWJlbDpub3QoLmZsb2F0aW5nKSB7XG4gIG1hcmdpbi1sZWZ0OiBAbGFiZWxUZXh0TWFyZ2luO1xuICBwYWRkaW5nOiBAbGFiZWxWZXJ0aWNhbFBhZGRpbmcgQGxhYmVsSG9yaXpvbnRhbFBhZGRpbmc7XG59XG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IC5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IEBsYWJlbE9mZnNldDtcbiAgbWFyZ2luLWJvdHRvbTogQGxhYmVsT2Zmc2V0O1xuICBwYWRkaW5nOiBAbGFiZWxWZXJ0aWNhbFBhZGRpbmcgQGxhYmVsSG9yaXpvbnRhbFBhZGRpbmc7XG59XG4udWkubWVudSAuaXRlbSA+IC5mbG9hdGluZy5sYWJlbCB7XG4gIHBhZGRpbmc6IEBsYWJlbFZlcnRpY2FsUGFkZGluZyBAbGFiZWxIb3Jpem9udGFsUGFkZGluZztcbn1cbi51aS5tZW51IC5pdGVtID4gLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogQGxhYmVsQmFja2dyb3VuZDtcbiAgY29sb3I6IEBsYWJlbFRleHRDb2xvcjtcbn1cbi51aS5tZW51IC5pdGVtID4gLmltYWdlLmxhYmVsIGltZyB7XG4gIG1hcmdpbjogQGltYWdlTGFiZWxJbWFnZU1hcmdpbjtcbiAgaGVpZ2h0OiBAaW1hZ2VMYWJlbEhlaWdodDtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW1hZ2VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuaXRlbSA+IGltZzpub3QoLnVpKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiBAaW1hZ2VNYXJnaW47XG4gIHdpZHRoOiBAaW1hZ2VXaWR0aDtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtID4gaW1nOm5vdCgudWkpOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogQHZlcnRpY2FsSW1hZ2VXaWR0aDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBMaXN0XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNZW51IGRpdmlkZXIgc2hvdWxkbnQgYXBwbHkgKi9cbi51aS5tZW51IC5saXN0IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaWRlYmFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTaG93IHZlcnRpY2FsIGRpdmlkZXJzIGJlbG93IGxhc3QgKi9cblxuLnVpLnZlcnRpY2FsLnNpZGViYXIubWVudSA+IC5pdGVtOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4udWkudmVydGljYWwuc2lkZWJhci5tZW51ID4gLml0ZW06OmJlZm9yZSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ29udGFpbmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS5tZW51ID4gLnVpLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEB0YWJsZXRCcmVha3BvaW50KSB7XG4gIC51aS5tZW51Om5vdCguc2Vjb25kYXJ5KTpub3QoLnRleHQpOm5vdCgudGFidWxhcik6bm90KC5ib3JkZXJsZXNzKSA+IC5jb250YWluZXIgPiAuaXRlbTpub3QoLnJpZ2h0KTpub3QoLmJvcmRlcmxlc3MpOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogQGRpdmlkZXJTaXplIHNvbGlkIEBkaXZpZGVyQmFja2dyb3VuZDtcbiAgfVxuICAudWkubWVudTpub3QoLnNlY29uZGFyeSk6bm90KC50ZXh0KTpub3QoLnRhYnVsYXIpOm5vdCguYm9yZGVybGVzcykgPiAuY29udGFpbmVyID4gLnJpZ2h0Lml0ZW06bm90KC5ib3JkZXJsZXNzKTpsYXN0LWNoaWxkLFxuICAudWkubWVudTpub3QoLnNlY29uZGFyeSk6bm90KC50ZXh0KTpub3QoLnRhYnVsYXIpOm5vdCguYm9yZGVybGVzcykgPiAuY29udGFpbmVyID4gLnJpZ2h0Lm1lbnUgPiAuaXRlbTpub3QoLmJvcmRlcmxlc3MpOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogQGRpdmlkZXJTaXplIHNvbGlkIEBkaXZpZGVyQmFja2dyb3VuZDtcbiAgfVxufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuXG4udWkubGluay5tZW51IC5pdGVtOmhvdmVyLFxuLnVpLm1lbnUgLmRyb3Bkb3duLml0ZW06aG92ZXIsXG4udWkubWVudSAubGluay5pdGVtOmhvdmVyLFxuLnVpLm1lbnUgYS5pdGVtOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiBAaG92ZXJJdGVtQmFja2dyb3VuZDtcbiAgY29sb3I6IEBob3Zlckl0ZW1UZXh0Q29sb3I7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQcmVzc2VkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGluay5tZW51IC5pdGVtOmFjdGl2ZSxcbi51aS5tZW51IC5saW5rLml0ZW06YWN0aXZlLFxuLnVpLm1lbnUgYS5pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IEBwcmVzc2VkSXRlbUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAcHJlc3NlZEl0ZW1UZXh0Q29sb3I7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IC5hY3RpdmUuaXRlbSAge1xuICBiYWNrZ3JvdW5kOiBAYWN0aXZlSXRlbUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAYWN0aXZlSXRlbVRleHRDb2xvcjtcbiAgZm9udC13ZWlnaHQ6IEBhY3RpdmVJdGVtRm9udFdlaWdodDtcbiAgYm94LXNoYWRvdzogQGFjdGl2ZUl0ZW1Cb3hTaGFkb3c7XG59XG4udWkubWVudSAuYWN0aXZlLml0ZW0gPiBpLmljb24ge1xuICBvcGFjaXR5OiBAYWN0aXZlSWNvbk9wYWNpdHk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgQWN0aXZlIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuYWN0aXZlLml0ZW06aG92ZXIsXG4udWkudmVydGljYWwubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYWN0aXZlSG92ZXJJdGVtQmFja2dyb3VuZDtcbiAgY29sb3I6IEBhY3RpdmVIb3Zlckl0ZW1Db2xvcjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudWkubWVudSAuaXRlbS5kaXNhYmxlZCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiBAZGlzYWJsZWRUZXh0Q29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG5GbG9hdGVkIE1lbnUgLyBJdGVtXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTGVmdCBGbG9hdGVkICovXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAubGVmdC5pdGVtLFxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLmxlZnQubWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuLyogUmlnaHQgRmxvYXRlZCAqL1xuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLnJpZ2h0Lml0ZW0sXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAucmlnaHQubWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51Om5vdCgudmVydGljYWwpIDpub3QoLmRyb3Bkb3duKSA+IC5sZWZ0Lm1lbnUsXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSA6bm90KC5kcm9wZG93bikgPiAucmlnaHQubWVudSB7XG4gIGRpc3BsYXk6IGluaGVyaXQ7XG59XG5cbi8qIENlbnRlciAqL1xuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLmNlbnRlci5pdGVtLFxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLmNlbnRlci5tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qIFN3YXBwZWQgQm9yZGVycyAqL1xuLnVpLm1lbnUgLnJpZ2h0Lml0ZW06OmJlZm9yZSxcbi51aS5tZW51IC5yaWdodC5tZW51ID4gLml0ZW06OmJlZm9yZSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG4vKiBSZW1vdmUgT3V0ZXIgQm9yZGVycyAqL1xuLnVpLm1lbnUgLmNlbnRlci5pdGVtOmxhc3QtY2hpbGQ6OmJlZm9yZSxcbi51aS5tZW51IC5jZW50ZXIubWVudSA+IC5pdGVtOmxhc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBWZXJ0aWNhbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZlcnRpY2FsLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZDogQHZlcnRpY2FsQmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogQHZlcnRpY2FsQm94U2hhZG93O1xufVxuXG4vKi0tLSBJdGVtIC0tLSovXG4udWkudmVydGljYWwubWVudSAuaXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiBAdmVydGljYWxJdGVtQmFja2dyb3VuZDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDA7XG59XG4udWkudmVydGljYWwubWVudSA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzO1xufVxuXG4vKi0tLSBMYWJlbCAtLS0qL1xuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiAubGFiZWwge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyotLS0gSWNvbiAtLS0qL1xuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiBpLmljb24sXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IGkuaWNvbnMge1xuICB3aWR0aDogQGljb25XaWR0aDtcbiAgZmxvYXQ6IEB2ZXJ0aWNhbEljb25GbG9hdDtcbiAgbWFyZ2luOiBAdmVydGljYWxJY29uTWFyZ2luO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiAubGFiZWwgKyBpLmljb24ge1xuICBmbG9hdDogQGxhYmVsQW5kSWNvbkZsb2F0O1xuICBtYXJnaW46IEBsYWJlbEFuZEljb25NYXJnaW47XG59XG5cblxuLyotLS0gQm9yZGVyIC0tLSovXG4udWkudmVydGljYWwubWVudSAuaXRlbTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IEBkaXZpZGVyU2l6ZTtcbiAgYmFja2dyb3VuZDogQHZlcnRpY2FsRGl2aWRlckJhY2tncm91bmQ7XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vKi0tLSBTdWIgTWVudSAtLS0qL1xuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiAubWVudSB7XG4gIG1hcmdpbjogQHN1Yk1lbnVNYXJnaW47XG59XG4udWkudmVydGljYWwubWVudSAubWVudSAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IEBzdWJNZW51VmVydGljYWxQYWRkaW5nIEBzdWJNZW51SG9yaXpvbnRhbFBhZGRpbmc7XG4gIGZvbnQtc2l6ZTogQHN1Yk1lbnVGb250U2l6ZTtcbiAgY29sb3I6IEBzdWJNZW51VGV4dENvbG9yO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgYS5pdGVtOmhvdmVyLFxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgLmxpbmsuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiBAZGFya1RleHRDb2xvcjtcbn1cbi51aS52ZXJ0aWNhbC5tZW51IC5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFZlcnRpY2FsIEFjdGl2ZSAqL1xuLnVpLnZlcnRpY2FsLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogQGFjdGl2ZUl0ZW1CYWNrZ3JvdW5kO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBAdmVydGljYWxBY3RpdmVCb3hTaGFkb3c7XG59XG4udWkudmVydGljYWwubWVudSA+IC5hY3RpdmUuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDA7XG59XG4udWkudmVydGljYWwubWVudSA+IC5hY3RpdmUuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cztcbn1cbi51aS52ZXJ0aWNhbC5tZW51ID4gLmFjdGl2ZS5pdGVtOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLmFjdGl2ZS5pdGVtIC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHN1Yk1lbnVBY3RpdmVCYWNrZ3JvdW5kO1xuICBmb250LXdlaWdodDogQHN1Yk1lbnVBY3RpdmVGb250V2VpZ2h0O1xuICBjb2xvcjogQHN1Yk1lbnVBY3RpdmVUZXh0Q29sb3I7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUYWJ1bGFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFidWxhci5tZW51IHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IEB0YWJ1bGFyQmFja2dyb3VuZDtcbiAgYm9yZGVyLWJvdHRvbTogQHRhYnVsYXJCb3JkZXJXaWR0aCBzb2xpZCBAdGFidWxhckJvcmRlckNvbG9yO1xufVxuLnVpLnRhYnVsYXIuZmx1aWQubWVudSB7XG4gIHdpZHRoOiBAdGFidWxhckZsdWlkV2lkdGggIWltcG9ydGFudDtcbn1cbi51aS50YWJ1bGFyLm1lbnUgLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICBib3JkZXItbGVmdDogQHRhYnVsYXJCb3JkZXJXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiBAdGFidWxhck9wcG9zaXRlQm9yZGVyV2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IEB0YWJ1bGFyVmVydGljYWxQYWRkaW5nIEB0YWJ1bGFySG9yaXpvbnRhbFBhZGRpbmc7XG4gIGNvbG9yOiBAdGFidWxhclRleHRDb2xvcjtcbn1cbi51aS50YWJ1bGFyLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSG92ZXIgKi9cbi51aS50YWJ1bGFyLm1lbnUgLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IEB0YWJ1bGFySG92ZXJlZFRleHRDb2xvcjtcbn1cblxuLyogQWN0aXZlICovXG4udWkudGFidWxhci5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IEB0YWJ1bGFyQWN0aXZlQmFja2dyb3VuZDtcbiAgY29sb3I6IEB0YWJ1bGFyQWN0aXZlQ29sb3I7XG4gIGJvcmRlci10b3Atd2lkdGg6IEB0YWJ1bGFyQm9yZGVyV2lkdGg7XG4gIGJvcmRlci1jb2xvcjogQHRhYnVsYXJCb3JkZXJDb2xvcjtcbiAgZm9udC13ZWlnaHQ6IEB0YWJ1bGFyQWN0aXZlV2VpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAtQHRhYnVsYXJCb3JkZXJXaWR0aDtcbiAgYm94LXNoYWRvdzogQHRhYnVsYXJBY3RpdmVCb3hTaGFkb3c7XG4gIGJvcmRlci1yYWRpdXM6IEB0YWJ1bGFyQm9yZGVyUmFkaXVzIEB0YWJ1bGFyQm9yZGVyUmFkaXVzIDAgMCAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3VwbGluZyB3aXRoIHNlZ21lbnQgZm9yIGF0dGFjaG1lbnQgKi9cbi51aS50YWJ1bGFyLm1lbnUgKyAuYXR0YWNoZWQ6bm90KC50b3ApLnNlZ21lbnQsXG4udWkudGFidWxhci5tZW51ICsgLmF0dGFjaGVkOm5vdCgudG9wKS5zZWdtZW50ICsgLmF0dGFjaGVkOm5vdCgudG9wKS5zZWdtZW50IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4udG9wLmF0dGFjaGVkLnNlZ21lbnQgKyAudWkuYm90dG9tLnRhYnVsYXIubWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IEB0YWJ1bGFyRmx1aWRXaWR0aDtcbiAgbGVmdDogLUB0YWJ1bGFyRmx1aWRPZmZzZXQ7XG59XG5cbi8qIEJvdHRvbSBWZXJ0aWNhbCBUYWJ1bGFyICovXG4udWkuYm90dG9tLnRhYnVsYXIubWVudSB7XG4gIGJhY2tncm91bmQ6IEB0YWJ1bGFyQmFja2dyb3VuZDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItdG9wOiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIEB0YWJ1bGFyQm9yZGVyQ29sb3I7XG59XG4udWkuYm90dG9tLnRhYnVsYXIubWVudSAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IEB0YWJ1bGFyQm9yZGVyV2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IEB0YWJ1bGFyQm9yZGVyV2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG4udWkuYm90dG9tLnRhYnVsYXIubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBAdGFidWxhckFjdGl2ZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAdGFidWxhckFjdGl2ZUNvbG9yO1xuICBib3JkZXItY29sb3I6IEB0YWJ1bGFyQm9yZGVyQ29sb3I7XG4gIG1hcmdpbjogLUB0YWJ1bGFyQm9yZGVyV2lkdGggMCAwIDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAdGFidWxhckJvcmRlclJhZGl1cyBAdGFidWxhckJvcmRlclJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4vKiBWZXJ0aWNhbCBUYWJ1bGFyIChMZWZ0KSAqL1xuLnVpLnZlcnRpY2FsLnRhYnVsYXIubWVudSB7XG4gIGJhY2tncm91bmQ6IEB0YWJ1bGFyVmVydGljYWxCYWNrZ3JvdW5kO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yaWdodDogQHRhYnVsYXJCb3JkZXJXaWR0aCBzb2xpZCBAdGFidWxhckJvcmRlckNvbG9yO1xufVxuLnVpLnZlcnRpY2FsLnRhYnVsYXIubWVudSAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG4udWkudmVydGljYWwudGFidWxhci5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IEB0YWJ1bGFyQWN0aXZlQmFja2dyb3VuZDtcbiAgY29sb3I6IEB0YWJ1bGFyQWN0aXZlQ29sb3I7XG4gIGJvcmRlci1jb2xvcjogQHRhYnVsYXJCb3JkZXJDb2xvcjtcbiAgbWFyZ2luOiAwIC1AdGFidWxhckJvcmRlcldpZHRoIDAgMDtcbiAgYm9yZGVyLXJhZGl1czogQHRhYnVsYXJCb3JkZXJSYWRpdXMgMCAwIEB0YWJ1bGFyQm9yZGVyUmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi8qIFZlcnRpY2FsIFJpZ2h0IFRhYnVsYXIgKi9cbi51aS52ZXJ0aWNhbC5yaWdodC50YWJ1bGFyLm1lbnUge1xuICBiYWNrZ3JvdW5kOiBAdGFidWxhclZlcnRpY2FsQmFja2dyb3VuZDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIEB0YWJ1bGFyQm9yZGVyQ29sb3I7XG59XG4udWkudmVydGljYWwucmlnaHQudGFidWxhci5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiBAdGFidWxhckJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cbi51aS52ZXJ0aWNhbC5yaWdodC50YWJ1bGFyLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogQHRhYnVsYXJBY3RpdmVCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHRhYnVsYXJBY3RpdmVDb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiBAdGFidWxhckJvcmRlckNvbG9yO1xuICBtYXJnaW46IDAgMCAwIC1AdGFidWxhckJvcmRlcldpZHRoO1xuICBib3JkZXItcmFkaXVzOiAwIEB0YWJ1bGFyQm9yZGVyUmFkaXVzIEB0YWJ1bGFyQm9yZGVyUmFkaXVzIDAgIWltcG9ydGFudDtcbn1cblxuLyogRHJvcGRvd24gKi9cbi51aS50YWJ1bGFyLm1lbnUgLmFjdGl2ZS5kcm9wZG93bi5pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IEB0YWJ1bGFyQm9yZGVyV2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogQHRhYnVsYXJCb3JkZXJXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogQHRhYnVsYXJPcHBvc2l0ZUJvcmRlcldpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgUGFnaW5hdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBhZ2luYXRpb24ubWVudSB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4udWkucGFnaW5hdGlvbi5tZW51IC5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwO1xufVxuLnVpLmNvbXBhY3QubWVudSAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCBAYm9yZGVyUmFkaXVzIEBib3JkZXJSYWRpdXMgMDtcbn1cbi51aS5wYWdpbmF0aW9uLm1lbnUgLml0ZW06bGFzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkucGFnaW5hdGlvbi5tZW51IC5pdGVtIHtcbiAgbWluLXdpZHRoOiBAcGFnaW5hdGlvbk1pbldpZHRoO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udWkucGFnaW5hdGlvbi5tZW51IC5pY29uLml0ZW0gaS5pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLyogQWN0aXZlICovXG4udWkucGFnaW5hdGlvbi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIHBhZGRpbmctdG9wOiBAaXRlbVZlcnRpY2FsUGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogQHBhZ2luYXRpb25BY3RpdmVCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHBhZ2luYXRpb25BY3RpdmVUZXh0Q29sb3I7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNlY29uZGFyeVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlY29uZGFyeS5tZW51IHtcbiAgYmFja2dyb3VuZDogQHNlY29uZGFyeUJhY2tncm91bmQ7XG4gIG1hcmdpbi1sZWZ0OiAtQHNlY29uZGFyeUl0ZW1TcGFjaW5nO1xuICBtYXJnaW4tcmlnaHQ6IC1Ac2Vjb25kYXJ5SXRlbVNwYWNpbmc7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogSXRlbSAqL1xuLnVpLnNlY29uZGFyeS5tZW51IC5pdGVtIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IEBzZWNvbmRhcnlJdGVtUGFkZGluZztcbiAgbWFyZ2luOiBAc2Vjb25kYXJ5SXRlbU1hcmdpbjtcbiAgYmFja2dyb3VuZDogQHNlY29uZGFyeUl0ZW1CYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiBAc2Vjb25kYXJ5SXRlbVRyYW5zaXRpb247XG4gIGJvcmRlci1yYWRpdXM6IEBzZWNvbmRhcnlJdGVtQm9yZGVyUmFkaXVzO1xufVxuXG4vKiBObyBEaXZpZGVyICovXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBIZWFkZXIgKi9cbi51aS5zZWNvbmRhcnkubWVudSAuaGVhZGVyLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmlnaHQ6IEBzZWNvbmRhcnlIZWFkZXJCb3JkZXI7XG4gIGJhY2tncm91bmQ6IEBzZWNvbmRhcnlIZWFkZXJCYWNrZ3JvdW5kO1xufVxuXG4vKiBJbWFnZSAqL1xuLnVpLnNlY29uZGFyeS5tZW51IC5pdGVtID4gaW1nOm5vdCgudWkpIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIb3ZlciAqL1xuLnVpLnNlY29uZGFyeS5tZW51IC5kcm9wZG93bi5pdGVtOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5tZW51IC5saW5rLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5Lm1lbnUgYS5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQHNlY29uZGFyeUhvdmVySXRlbUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc2Vjb25kYXJ5SG92ZXJJdGVtQ29sb3I7XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVpLnNlY29uZGFyeS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IEBzZWNvbmRhcnlBY3RpdmVJdGVtQmFja2dyb3VuZDtcbiAgY29sb3I6IEBzZWNvbmRhcnlBY3RpdmVJdGVtQ29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IEBzZWNvbmRhcnlJdGVtQm9yZGVyUmFkaXVzO1xufVxuXG4vKiBBY3RpdmUgSG92ZXIgKi9cbi51aS5zZWNvbmRhcnkubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiBAc2Vjb25kYXJ5QWN0aXZlSG92ZXJJdGVtQmFja2dyb3VuZDtcbiAgY29sb3I6IEBzZWNvbmRhcnlBY3RpdmVIb3Zlckl0ZW1Db2xvcjtcbn1cblxuXG4vKiBJbnZlcnRlZCAqL1xuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IC5saW5rLml0ZW06bm90KC5kaXNhYmxlZCksXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLm1lbnUgYS5pdGVtOm5vdCguZGlzYWJsZWQpIHtcbiAgY29sb3I6IEBzZWNvbmRhcnlJbnZlcnRlZENvbG9yO1xufVxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IC5kcm9wZG93bi5pdGVtOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IC5saW5rLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLm1lbnUgYS5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQHNlY29uZGFyeUludmVydGVkSG92ZXJCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHNlY29uZGFyeUludmVydGVkSG92ZXJDb2xvcjtcbn1cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBAc2Vjb25kYXJ5SW52ZXJ0ZWRBY3RpdmVCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHNlY29uZGFyeUludmVydGVkQWN0aXZlQ29sb3I7XG59XG5cbi8qIEZpeCBpdGVtIG1hcmdpbnMgKi9cbi51aS5zZWNvbmRhcnkuaXRlbS5tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi51aS5zZWNvbmRhcnkuaXRlbS5tZW51IC5pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4udWkuc2Vjb25kYXJ5LmF0dGFjaGVkLm1lbnUge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBTdWIgTWVudSAqL1xuLnVpLnZlcnRpY2FsLnNlY29uZGFyeS5tZW51IC5pdGVtOm5vdCguZHJvcGRvd24pID4gLm1lbnUge1xuICBtYXJnaW46IEBzZWNvbmRhcnlNZW51U3ViTWVudU1hcmdpbjtcbn1cbi51aS52ZXJ0aWNhbC5zZWNvbmRhcnkubWVudSAuaXRlbTpub3QoLmRyb3Bkb3duKSA+IC5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IEBzZWNvbmRhcnlNZW51U3ViTWVudUl0ZW1NYXJnaW47XG4gIHBhZGRpbmc6IEBzZWNvbmRhcnlNZW51U3ViTWVudUl0ZW1QYWRkaW5nO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTZWNvbmRhcnkgVmVydGljYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlY29uZGFyeS52ZXJ0aWNhbC5tZW51ID4gLml0ZW0ge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogQHNlY29uZGFyeVZlcnRpY2FsSXRlbU1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogQHNlY29uZGFyeVZlcnRpY2FsSXRlbUJvcmRlclJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnVpLnNlY29uZGFyeS52ZXJ0aWNhbC5tZW51ID4gLmhlYWRlci5pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLyogU3ViIE1lbnUgKi9cbi51aS52ZXJ0aWNhbC5zZWNvbmRhcnkubWVudSAuaXRlbSA+IC5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIEludmVydGVkICovXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNlY29uZGFyeSBQb2ludGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiBAc2Vjb25kYXJ5UG9pbnRpbmdCb3JkZXJXaWR0aCBzb2xpZCBAc2Vjb25kYXJ5UG9pbnRpbmdCb3JkZXJDb2xvcjtcbn1cblxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblxuICBtYXJnaW46IDAgMCAtQHNlY29uZGFyeVBvaW50aW5nQm9yZGVyV2lkdGg7XG4gIHBhZGRpbmc6IEBzZWNvbmRhcnlQb2ludGluZ0l0ZW1WZXJ0aWNhbFBhZGRpbmcgQHNlY29uZGFyeVBvaW50aW5nSXRlbUhvcml6b250YWxQYWRkaW5nO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiBAc2Vjb25kYXJ5UG9pbnRpbmdCb3JkZXJXaWR0aDtcbiAgdHJhbnNpdGlvbjogQHNlY29uZGFyeUl0ZW1UcmFuc2l0aW9uO1xufVxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC51aS5kcm9wZG93biAubWVudSAuaXRlbSB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG59XG5cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAuaXRlbSA+IC5sYWJlbDpub3QoLmZsb2F0aW5nKSB7XG4gIG1hcmdpbi10b3A6IC1AbGFiZWxWZXJ0aWNhbFBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IC1AbGFiZWxWZXJ0aWNhbFBhZGRpbmc7XG59XG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLml0ZW0gPiAuY2lyY3VsYXIubGFiZWwge1xuICBtYXJnaW4tdG9wOiAtQGNpcmN1bGFyTGFiZWxWZXJ0aWNhbFBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IC1AY2lyY3VsYXJMYWJlbFZlcnRpY2FsUGFkZGluZztcbn1cblxuLyogSXRlbSBUeXBlcyAqL1xuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIGNvbG9yOiBAc2Vjb25kYXJ5UG9pbnRpbmdIZWFkZXJDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC50ZXh0Lml0ZW0ge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLml0ZW06YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIb3ZlciAqL1xuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5kcm9wZG93bi5pdGVtOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5saW5rLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgYS5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiBAc2Vjb25kYXJ5UG9pbnRpbmdIb3ZlclRleHRDb2xvcjtcbn1cblxuLyogUHJlc3NlZCAqL1xuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5kcm9wZG93bi5pdGVtOmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAubGluay5pdGVtOmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSBhLml0ZW06YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogQHNlY29uZGFyeVBvaW50aW5nQm9yZGVyQ29sb3I7XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItY29sb3I6IEBzZWNvbmRhcnlQb2ludGluZ0FjdGl2ZUJvcmRlckNvbG9yO1xuICBmb250LXdlaWdodDogQHNlY29uZGFyeVBvaW50aW5nQWN0aXZlRm9udFdlaWdodDtcbiAgY29sb3I6IEBzZWNvbmRhcnlQb2ludGluZ0FjdGl2ZVRleHRDb2xvcjtcbn1cblxuLyogQWN0aXZlIEhvdmVyICovXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiBAc2Vjb25kYXJ5UG9pbnRpbmdBY3RpdmVIb3ZlckJvcmRlckNvbG9yO1xuICBjb2xvcjogQHNlY29uZGFyeVBvaW50aW5nQWN0aXZlSG92ZXJUZXh0Q29sb3I7XG59XG5cbi8qIEFjdGl2ZSBEcm9wZG93biAqL1xuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5hY3RpdmUuZHJvcGRvd24uaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogQHNlY29uZGFyeVBvaW50aW5nQWN0aXZlRHJvcGRvd25Cb3JkZXJDb2xvcjtcbn1cblxuLyogVmVydGljYWwgUG9pbnRpbmcgKi9cbi51aS5zZWNvbmRhcnkudmVydGljYWwucG9pbnRpbmcubWVudSB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC13aWR0aDogQHNlY29uZGFyeVBvaW50aW5nQm9yZGVyV2lkdGg7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogQHNlY29uZGFyeVBvaW50aW5nQm9yZGVyQ29sb3I7XG59XG4udWkuc2Vjb25kYXJ5LnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLml0ZW0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogQHNlY29uZGFyeVZlcnRpY2FsUG9pbnRpbmdJdGVtTWFyZ2luO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IEBzZWNvbmRhcnlQb2ludGluZ0JvcmRlcldpZHRoO1xufVxuXG4vKiBWZXJ0aWNhbCBBY3RpdmUgKi9cbi51aS5zZWNvbmRhcnkudmVydGljYWwucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItY29sb3I6IEBzZWNvbmRhcnlQb2ludGluZ0FjdGl2ZUJvcmRlckNvbG9yO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IHtcbiAgYm9yZGVyLWNvbG9yOiBAc2Vjb25kYXJ5UG9pbnRpbmdJbnZlcnRlZEJvcmRlckNvbG9yO1xufVxuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUgLml0ZW06bm90KC5kaXNhYmxlZCkge1xuICBjb2xvcjogQHNlY29uZGFyeVBvaW50aW5nSW52ZXJ0ZWRJdGVtVGV4dENvbG9yO1xufVxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIGNvbG9yOiBAc2Vjb25kYXJ5UG9pbnRpbmdJbnZlcnRlZEl0ZW1IZWFkZXJDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5saW5rLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUgYS5pdGVtOmhvdmVyIHtcbiAgY29sb3I6IEBzZWNvbmRhcnlQb2ludGluZ0ludmVydGVkSXRlbUhvdmVyVGV4dENvbG9yO1xufVxuXG5cbi8qIEFjdGl2ZSAqL1xuLnVpLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogQHNlY29uZGFyeVBvaW50aW5nSW52ZXJ0ZWRBY3RpdmVCb3JkZXJDb2xvcjtcbiAgY29sb3I6IEBzZWNvbmRhcnlQb2ludGluZ0ludmVydGVkQWN0aXZlQ29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVGV4dCBNZW51XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGV4dC5tZW51IHtcbiAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuXG4gIG1hcmdpbjogQHRleHRNZW51TWFyZ2luO1xufVxuLnVpLnRleHQubWVudSAuaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgbWFyZ2luOiBAdGV4dE1lbnVJdGVtTWFyZ2luO1xuICBwYWRkaW5nOiBAdGV4dE1lbnVJdGVtUGFkZGluZztcbiAgZm9udC13ZWlnaHQ6IEB0ZXh0TWVudUl0ZW1Gb250V2VpZ2h0O1xuICBjb2xvcjogQHRleHRNZW51SXRlbUNvbG9yO1xuICB0cmFuc2l0aW9uOiBAdGV4dE1lbnVJdGVtVHJhbnNpdGlvbjtcbn1cblxuLyogQm9yZGVyICovXG4udWkudGV4dC5tZW51IC5pdGVtOmJlZm9yZSxcbi51aS50ZXh0Lm1lbnUgLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBIZWFkZXIgKi9cbi51aS50ZXh0Lm1lbnUgLmhlYWRlci5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiBAdGV4dE1lbnVIZWFkZXJDb2xvcjtcbiAgZm9udC1zaXplOiBAdGV4dE1lbnVIZWFkZXJTaXplO1xuICB0ZXh0LXRyYW5zZm9ybTogQHRleHRNZW51SGVhZGVyVGV4dFRyYW5zZm9ybTtcbiAgZm9udC13ZWlnaHQ6IEB0ZXh0TWVudUhlYWRlckZvbnRXZWlnaHQ7XG59XG5cbi8qIEltYWdlICovXG4udWkudGV4dC5tZW51IC5pdGVtID4gaW1nOm5vdCgudWkpIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKi0tLSBmbHVpZCB0ZXh0IC0tLSovXG4udWkudGV4dC5pdGVtLm1lbnUgLml0ZW0ge1xuICBtYXJnaW46IDA7XG59XG5cbi8qLS0tIHZlcnRpY2FsIHRleHQgLS0tKi9cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnUge1xuICBtYXJnaW46IEB0ZXh0VmVydGljYWxNZW51TWFyZ2luO1xufVxuLnVpLnZlcnRpY2FsLnRleHQubWVudTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkudmVydGljYWwudGV4dC5tZW51Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVpLnZlcnRpY2FsLnRleHQubWVudSAuaXRlbSB7XG4gIG1hcmdpbjogQHRleHRWZXJ0aWNhbE1lbnVJdGVtTWFyZ2luO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4udWkudmVydGljYWwudGV4dC5tZW51IC5pdGVtID4gaS5pY29uIHtcbiAgZmxvYXQ6IEB0ZXh0VmVydGljYWxNZW51SWNvbkZsb2F0O1xuICBtYXJnaW46IEBpY29uTWFyZ2luO1xufVxuLnVpLnZlcnRpY2FsLnRleHQubWVudSAuaGVhZGVyLml0ZW0ge1xuICBtYXJnaW46IEB0ZXh0VmVydGljYWxNZW51SGVhZGVyTWFyZ2luO1xufVxuXG4vKiBWZXJ0aWNhbCBTdWIgTWVudSAqL1xuLnVpLnZlcnRpY2FsLnRleHQubWVudSAuaXRlbTpub3QoLmRyb3Bkb3duKSA+IC5tZW51IHtcbiAgbWFyZ2luOiBAdGV4dE1lbnVTdWJNZW51TWFyZ2luO1xufVxuLnVpLnZlcnRpY2FsLnRleHQubWVudSAuaXRlbTpub3QoLmRyb3Bkb3duKSA+IC5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IEB0ZXh0TWVudVN1Yk1lbnVJdGVtTWFyZ2luO1xuICBwYWRkaW5nOiBAdGV4dE1lbnVTdWJNZW51SXRlbVBhZGRpbmc7XG59XG5cbi8qLS0tIGhvdmVyIC0tLSovXG4udWkudGV4dC5tZW51IC5pdGVtOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qLS0tIGFjdGl2ZSAtLS0qL1xuLnVpLnRleHQubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LXdlaWdodDogQHRleHRNZW51QWN0aXZlSXRlbUZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAdGV4dE1lbnVBY3RpdmVJdGVtQ29sb3I7XG59XG5cbi8qLS0tIGFjdGl2ZSBob3ZlciAtLS0qL1xuLnVpLnRleHQubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogRGlzYWJsZSBCYXJpYXRpb25zICovXG4udWkudGV4dC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4udWkudGV4dC5hdHRhY2hlZC5tZW51IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC50ZXh0Lm1lbnUsXG4udWkuaW52ZXJ0ZWQudGV4dC5tZW51IC5pdGVtLFxuLnVpLmludmVydGVkLnRleHQubWVudSAuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC50ZXh0Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIEZsdWlkICovXG4udWkuZmx1aWQudGV4dC5tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEljb24gT25seVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVmVydGljYWwgTWVudSAqL1xuLnVpLnZlcnRpY2FsLmljb24ubWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qIEl0ZW0gKi9cbi51aS5pY29uLm1lbnUgLml0ZW0ge1xuICBoZWlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IEBpY29uTWVudVRleHRBbGlnbjtcbiAgY29sb3I6IEBpY29uTWVudUl0ZW1Db2xvcjtcbn1cblxuLyogSWNvbiAqL1xuLnVpLmljb24ubWVudSAuaXRlbSA+IC5pY29uOm5vdCguZHJvcGRvd24pIHtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBJY29uIEd5bHBoICovXG4udWkuaWNvbi5tZW51IC5pY29uOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qICh4KSBJdGVtIEljb24gKi9cbi51aS5tZW51IC5pY29uLml0ZW0gPiAuaWNvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLyogVmVydGljYWwgSWNvbiAqL1xuLnVpLnZlcnRpY2FsLmljb24ubWVudSAuaXRlbSA+IC5pY29uOm5vdCguZHJvcGRvd24pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmbG9hdDogbm9uZTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5pY29uLm1lbnUgLml0ZW0ge1xuICBjb2xvcjogQGljb25NZW51SW52ZXJ0ZWRJdGVtQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIExhYmVsZWQgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWVudSAqL1xuLnVpLmxhYmVsZWQuaWNvbi5tZW51IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBJdGVtICovXG4udWkubGFiZWxlZC5pY29uLm1lbnUgLml0ZW0ge1xuICBtaW4td2lkdGg6IEBsYWJlbGVkSWNvbk1pbldpZHRoO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4vKiBJY29uICovXG4udWkubGFiZWxlZC5pY29uLm1lbnUgPiAuaXRlbSA+IC5pY29uOm5vdCguZHJvcGRvd24pIHtcbiAgaGVpZ2h0OiAxZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IEBsYWJlbGVkSWNvblNpemUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIGF1dG8gQGxhYmVsZWRJY29uVGV4dE1hcmdpbiAhaW1wb3J0YW50O1xufVxuXG4vKiBGbHVpZCAqL1xuLnVpLmZsdWlkLmxhYmVsZWQuaWNvbi5tZW51ID4gLml0ZW0ge1xuICBtaW4td2lkdGg6IDA7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkuc3RhY2thYmxlLm1lbnUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnVpLnN0YWNrYWJsZS5tZW51IC5pdGVtIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5zdGFja2FibGUubWVudSAuaXRlbTpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBAZGl2aWRlclNpemU7XG4gICAgYmFja2dyb3VuZDogQHZlcnRpY2FsRGl2aWRlckJhY2tncm91bmQ7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLm1lbnUgLmxlZnQubWVudSxcbiAgLnVpLnN0YWNrYWJsZS5tZW51IC5sZWZ0Lml0ZW0ge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5zdGFja2FibGUubWVudSAucmlnaHQubWVudSxcbiAgLnVpLnN0YWNrYWJsZS5tZW51IC5yaWdodC5pdGVtIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC51aS5zdGFja2FibGUubWVudSAuY2VudGVyLm1lbnUsXG4gIC51aS5zdGFja2FibGUubWVudSAuY2VudGVyLml0ZW0ge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLm1lbnUgLnJpZ2h0Lm1lbnUsXG4gIC51aS5zdGFja2FibGUubWVudSAuY2VudGVyLm1lbnUsXG4gIC51aS5zdGFja2FibGUubWVudSAubGVmdC5tZW51IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMsIHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksICdAJywgJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG5cbiAgJiB3aGVuIG5vdCAoQGNvbG9yPXNlY29uZGFyeSkge1xuICAgIC51aS51aS5tZW51IC5Ae2NvbG9yfS5hY3RpdmUuaXRlbSxcbiAgICAudWkudWkuQHtjb2xvcn0ubWVudSAuYWN0aXZlLml0ZW06aG92ZXIsXG4gICAgLnVpLnVpLkB7Y29sb3J9Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgICAgICYgd2hlbiBub3QgKEBzZWNvbmRhcnlQb2ludGluZ0FjdGl2ZUJvcmRlckNvbG9yID0gY3VycmVudENvbG9yKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogQGM7XG4gICAgICB9XG4gICAgICBjb2xvcjogQGM7XG4gICAgfVxuICB9XG59KVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5tZW51IHtcbiAgYm9yZGVyOiBAaW52ZXJ0ZWRCb3JkZXI7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEBpbnZlcnRlZEJveFNoYWRvdztcbn1cblxuLyogTWVudSBJdGVtICovXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbSxcbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtID4gYTpub3QoLnVpKSB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEl0ZW1CYWNrZ3JvdW5kO1xuICBjb2xvcjogQGludmVydGVkSXRlbVRleHRDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtLm1lbnUge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRTdWJNZW51QmFja2dyb3VuZDtcbn1cblxuLyotLS0gQm9yZGVyIC0tLSovXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWREaXZpZGVyQmFja2dyb3VuZDtcbn1cbi51aS52ZXJ0aWNhbC5pbnZlcnRlZC5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZFZlcnRpY2FsRGl2aWRlckJhY2tncm91bmQ7XG59XG5cbi8qIFN1YiBNZW51ICovXG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAubWVudSAuaXRlbSxcbi51aS52ZXJ0aWNhbC5pbnZlcnRlZC5tZW51IC5tZW51IC5pdGVtIGE6bm90KC51aSkge1xuICBjb2xvcjogQGludmVydGVkU3ViTWVudUNvbG9yO1xufVxuXG4vKiBIZWFkZXIgKi9cbi51aS5pbnZlcnRlZC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogQGludmVydGVkSGVhZGVyQmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogRGlzYWJsZWQgKi9cbi51aS51aS5pbnZlcnRlZC5tZW51IC5pdGVtLmRpc2FibGVkIHtcbiAgY29sb3I6IEBpbnZlcnRlZERpc2FibGVkVGV4dENvbG9yO1xufVxuXG4vKi0tLSBIb3ZlciAtLS0qL1xuLnVpLmxpbmsuaW52ZXJ0ZWQubWVudSAuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5tZW51IC5kcm9wZG93bi5pdGVtOmhvdmVyLFxuLnVpLmludmVydGVkLm1lbnUgLmxpbmsuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5tZW51IGEuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEhvdmVyQmFja2dyb3VuZDtcbiAgY29sb3I6IEBpbnZlcnRlZEhvdmVyQ29sb3I7XG59XG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAuaXRlbSAubWVudSBhLml0ZW06aG92ZXIsXG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAuaXRlbSAubWVudSAubGluay5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkU3ViTWVudUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTdWJNZW51SG92ZXJDb2xvcjtcbn1cblxuLyotLS0gUHJlc3NlZCAtLS0qL1xuLnVpLmludmVydGVkLm1lbnUgYS5pdGVtOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5tZW51IC5saW5rLml0ZW06YWN0aXZle1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRNZW51UHJlc3NlZEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRNZW51UHJlc3NlZENvbG9yO1xufVxuXG4vKi0tLSBBY3RpdmUgLS0tKi9cbi51aS5pbnZlcnRlZC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEFjdGl2ZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRBY3RpdmVDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLmludmVydGVkLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkU3ViTWVudUFjdGl2ZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTdWJNZW51QWN0aXZlQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRBcnJvd0FjdGl2ZUNvbG9yO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyotLS0gQWN0aXZlIEhvdmVyIC0tLSovXG4udWkuaW52ZXJ0ZWQubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRBY3RpdmVIb3ZlckJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRBY3RpdmVIb3ZlckNvbG9yICFpbXBvcnRhbnQ7XG59XG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06aG92ZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRBcnJvd0FjdGl2ZUhvdmVyQ29sb3I7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmxvYXRlZC5tZW51IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCBAZmxvYXRlZERpc3RhbmNlIDAgMDtcbn1cbi51aS5mbG9hdGVkLm1lbnUgLml0ZW06bGFzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkucmlnaHQuZmxvYXRlZC5tZW51IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAgMCAwIEBmbG9hdGVkRGlzdGFuY2U7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMsIHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksICdAJywgJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG4gIEBoOiBAY29sb3JzW0BAY29sb3JdW2hvdmVyXTtcblxuICAmIHdoZW4gbm90IChAY29sb3I9c2Vjb25kYXJ5KSB7XG4gICAgLnVpLnVpLmludmVydGVkLm1lbnUgLkB7Y29sb3J9LmFjdGl2ZS5pdGVtLFxuICAgIC51aS51aS5pbnZlcnRlZC5Ae2NvbG9yfS5tZW51IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjO1xuICAgIH1cbiAgICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0ubWVudSAuaXRlbTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGludmVydGVkQ29sb3JlZERpdmlkZXJCYWNrZ3JvdW5kO1xuICAgIH1cbiAgICAudWkudWkuaW52ZXJ0ZWQuQHtjb2xvcn0ubWVudSAuYWN0aXZlLml0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGludmVydGVkQ29sb3JlZEFjdGl2ZUJhY2tncm91bmQ7XG4gICAgfVxuICAgIC51aS5pbnZlcnRlZC5wb2ludGluZy5Ae2NvbG9yfS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAaDtcbiAgICB9XG4gIH1cbn0pXG5cbi51aS51aS51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlcntcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXR0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5maXR0ZWQubWVudSAuaXRlbSxcbi51aS5maXR0ZWQubWVudSAuaXRlbSAubWVudSAuaXRlbSxcbi51aS5tZW51IC5maXR0ZWQuaXRlbSB7XG4gIHBhZGRpbmc6IDA7XG59XG4udWkuaG9yaXpvbnRhbGx5LmZpdHRlZC5tZW51IC5pdGVtLFxuLnVpLmhvcml6b250YWxseS5maXR0ZWQubWVudSAuaXRlbSAubWVudSAuaXRlbSxcbi51aS5tZW51IC5ob3Jpem9udGFsbHkuZml0dGVkLml0ZW0ge1xuICBwYWRkaW5nLXRvcDogQGl0ZW1WZXJ0aWNhbFBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiBAaXRlbVZlcnRpY2FsUGFkZGluZztcbn1cbi51aS52ZXJ0aWNhbGx5LmZpdHRlZC5tZW51IC5pdGVtLFxuLnVpLnZlcnRpY2FsbHkuZml0dGVkLm1lbnUgLml0ZW0gLm1lbnUgLml0ZW0sXG4udWkubWVudSAudmVydGljYWxseS5maXR0ZWQuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogQGl0ZW1Ib3Jpem9udGFsUGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogQGl0ZW1Ib3Jpem9udGFsUGFkZGluZztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgQm9yZGVybGVzc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJvcmRlcmxlc3MubWVudSAuaXRlbTpiZWZvcmUsXG4udWkuYm9yZGVybGVzcy5tZW51IC5pdGVtIC5tZW51IC5pdGVtOmJlZm9yZSxcbi51aS5tZW51IC5ib3JkZXJsZXNzLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb21wYWN0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21wYWN0Lm1lbnUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnVpLmNvbXBhY3QudmVydGljYWwubWVudSB7XG4vKiBJRSBoYWNrIHRvIG1ha2UgZHJvcGRvd24gaWNvbnMgYXBwZWFyIGlubGluZSAqL1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3ggIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnVpLmNvbXBhY3QubWVudTpub3QoLnNlY29uZGFyeSkgLml0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzIDA7XG59XG4udWkuY29tcGFjdC5tZW51IC5pdGVtOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51aS5jb21wYWN0LnZlcnRpY2FsLm1lbnUge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuLnVpLmNvbXBhY3QudmVydGljYWwubWVudSAuaXRlbTpsYXN0LWNoaWxkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51LmZsdWlkLFxuLnVpLnZlcnRpY2FsLm1lbnUuZmx1aWQge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRXZlbmx5IFNpemVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtLm1lbnUsXG4udWkuaXRlbS5tZW51IC5pdGVtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnVpLmF0dGFjaGVkLml0ZW0ubWVudTpub3QoLnRhYnVsYXIpIHtcbiAgbWFyZ2luOiAwIEBhdHRhY2hlZEhvcml6b250YWxPZmZzZXQgIWltcG9ydGFudDtcbn1cblxuLnVpLml0ZW0ubWVudSAuaXRlbTpsYXN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS5tZW51LnR3by5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDUwJTtcbn1cbi51aS5tZW51LnRocmVlLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMzMuMzMzJTtcbn1cbi51aS5tZW51LmZvdXIuaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAyNSU7XG59XG4udWkubWVudS5maXZlLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMjAlO1xufVxuLnVpLm1lbnUuc2l4Lml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTYuNjY2JTtcbn1cbi51aS5tZW51LnNldmVuLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTQuMjg1JTtcbn1cbi51aS5tZW51LmVpZ2h0Lml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTIuNTAwJTtcbn1cbi51aS5tZW51Lm5pbmUuaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAxMS4xMSU7XG59XG4udWkubWVudS50ZW4uaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAxMC4wJTtcbn1cbi51aS5tZW51LmVsZXZlbi5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDkuMDklO1xufVxuLnVpLm1lbnUudHdlbHZlLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogOC4zMzMlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZpeGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudS5maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAxO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLm1lbnUuZml4ZWQsXG4udWkubWVudS5maXhlZCAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5tZW51LmZpeGVkIC5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5maXhlZC5tZW51LFxuLnVpW2NsYXNzKj1cInRvcCBmaXhlZFwiXS5tZW51IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xufVxuLnVpW2NsYXNzKj1cInRvcCBmaXhlZFwiXS5tZW51IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cbi51aVtjbGFzcyo9XCJyaWdodCBmaXhlZFwiXS5tZW51IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4udWlbY2xhc3MqPVwiYm90dG9tIGZpeGVkXCJdLm1lbnUge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG59XG4udWlbY2xhc3MqPVwibGVmdCBmaXhlZFwiXS5tZW51IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLyogQ291cGxpbmcgd2l0aCBHcmlkICovXG4udWkuZml4ZWQubWVudSArIC51aS5ncmlkIHtcbiAgcGFkZGluZy10b3A6IEBmaXhlZFByZWNlZGluZ0dyaWRNYXJnaW47XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUG9pbnRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBvaW50aW5nLm1lbnUgLml0ZW06YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gIG1hcmdpbjogKEBhcnJvd0JvcmRlcldpZHRoIC8gMikgMCAwO1xuICB3aWR0aDogQGFycm93U2l6ZTtcbiAgaGVpZ2h0OiBAYXJyb3dTaXplO1xuXG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogQGFycm93Qm9yZGVyO1xuICBib3JkZXItcmlnaHQ6IEBhcnJvd0JvcmRlcjtcblxuICB6LWluZGV4OiBAYXJyb3daSW5kZXg7XG4gIHRyYW5zaXRpb246IEBhcnJvd1RyYW5zaXRpb247XG59XG4udWkudmVydGljYWwucG9pbnRpbmcubWVudSAuaXRlbTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IGF1dG87XG5cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICBtYXJnaW46IDAgLShAYXJyb3dCb3JkZXJXaWR0aCAvIDIpIDAgMDtcblxuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IEBhcnJvd0JvcmRlcjtcbiAgYm9yZGVyLXJpZ2h0OiBAYXJyb3dCb3JkZXI7XG59XG4udWkucG9pbnRpbmcubWVudSAudWkuZHJvcGRvd24gLm1lbnUgLml0ZW06YWZ0ZXIsXG4udWkudmVydGljYWwucG9pbnRpbmcubWVudSAudWkuZHJvcGRvd24gLm1lbnUgLml0ZW06YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBBY3RpdmUgKi9cbi51aS5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4udWkucG9pbnRpbmcubWVudSAuYWN0aXZlLmRyb3Bkb3duLml0ZW06YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIERvbid0IGRvdWJsZSB1cCBwb2ludGVycyAqL1xuLnVpLnBvaW50aW5nLm1lbnUgLmRyb3Bkb3duLmFjdGl2ZS5pdGVtOmFmdGVyLFxuLnVpLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtIC5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIENvbG9ycyAqL1xuLnVpLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGFycm93SG92ZXJDb2xvcjtcbn1cbi51aS5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBhcnJvd0FjdGl2ZUNvbG9yO1xufVxuLnVpLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGFycm93QWN0aXZlSG92ZXJDb2xvcjtcbn1cblxuLnVpLnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGFycm93VmVydGljYWxIb3ZlckNvbG9yO1xufVxuLnVpLnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGFycm93VmVydGljYWxBY3RpdmVDb2xvcjtcbn1cbi51aS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBhcnJvd1ZlcnRpY2FsU3ViTWVudUNvbG9yO1xufVxuXG5lYWNoKEBjb2xvcnMsIHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksICdAJywgJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG5cbiAgLnVpLmludmVydGVkLnBvaW50aW5nLm1lbnUgLkB7Y29sb3J9LmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYztcbiAgfVxufSlcblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNaWRkbGUgKi9cbi51aS5hdHRhY2hlZC5tZW51IHtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbjogMCBAYXR0YWNoZWRIb3Jpem9udGFsT2Zmc2V0O1xuICB3aWR0aDogQGF0dGFjaGVkV2lkdGg7XG4gIG1heC13aWR0aDogQGF0dGFjaGVkV2lkdGg7XG4gIGJveC1zaGFkb3c6IEBhdHRhY2hlZEJveFNoYWRvdztcbn1cbi51aS5hdHRhY2hlZCArIC51aS5hdHRhY2hlZC5tZW51Om5vdCgudG9wKSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi8qIFRvcCAqL1xuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5tZW51IHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0b3A6IEBhdHRhY2hlZFRvcE9mZnNldDtcbiAgbWFyZ2luLXRvcDogQHZlcnRpY2FsTWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzIEBib3JkZXJSYWRpdXMgMCAwO1xufVxuLnVpLm1lbnVbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogQm90dG9tICovXG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLm1lbnUge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHRvcDogQGF0dGFjaGVkQm90dG9tT2Zmc2V0O1xuICBtYXJnaW4tYm90dG9tOiBAdmVydGljYWxNYXJnaW47XG4gIGJveC1zaGFkb3c6IEBhdHRhY2hlZEJvdHRvbUJveFNoYWRvdztcbiAgYm9yZGVyLXJhZGl1czogMCAwIEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cztcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ubWVudTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogQXR0YWNoZWQgTWVudSBJdGVtICovXG4udWkudG9wLmF0dGFjaGVkLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgMCAwIDA7XG59XG4udWkuYm90dG9tLmF0dGFjaGVkLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIEBib3JkZXJSYWRpdXM7XG59XG5cbi8qIFRhYnVsYXIgQXR0YWNoZWQgKi9cbi51aS5hdHRhY2hlZC5tZW51Om5vdCgudGFidWxhcikge1xuICBib3JkZXI6IEBhdHRhY2hlZEJvcmRlcjtcbn1cbi51aS5hdHRhY2hlZC5pbnZlcnRlZC5tZW51IHtcbiAgYm9yZGVyOiBub25lO1xufVxuLnVpLmF0dGFjaGVkLnRhYnVsYXIubWVudSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNaW5pICovXG4udWkubWluaS5tZW51IHtcbiAgZm9udC1zaXplOiBAbWluaTtcbn1cbi51aS5taW5pLnZlcnRpY2FsLm1lbnU6bm90KC5pY29uKSB7XG4gIHdpZHRoOiBAbWluaVdpZHRoO1xufVxuLnVpLm1pbmkubWVudSAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBtaW5pO1xufVxuLnVpLm1pbmkubWVudSAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbXtcbiAgZm9udC1zaXplOiBAbWluaTtcbn1cblxuLyogVGlueSAqL1xuLnVpLnRpbnkubWVudSB7XG4gIGZvbnQtc2l6ZTogQHRpbnk7XG59XG4udWkudGlueS52ZXJ0aWNhbC5tZW51Om5vdCguaWNvbikge1xuICB3aWR0aDogQHRpbnlXaWR0aDtcbn1cbi51aS50aW55Lm1lbnUgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAdGlueTtcbn1cbi51aS50aW55Lm1lbnUgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW17XG4gIGZvbnQtc2l6ZTogQHRpbnk7XG59XG5cbi8qIFNtYWxsICovXG4udWkuc21hbGwubWVudSB7XG4gIGZvbnQtc2l6ZTogQHNtYWxsO1xufVxuLnVpLnNtYWxsLnZlcnRpY2FsLm1lbnU6bm90KC5pY29uKSB7XG4gIHdpZHRoOiBAc21hbGxXaWR0aDtcbn1cbi51aS5zbWFsbC5tZW51IC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQHNtYWxsO1xufVxuLnVpLnNtYWxsLm1lbnUgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW17XG4gIGZvbnQtc2l6ZTogQHNtYWxsO1xufVxuXG4vKiBNZWRpdW0gKi9cbi51aS5tZW51IHtcbiAgZm9udC1zaXplOiBAbWVkaXVtO1xufVxuLnVpLnZlcnRpY2FsLm1lbnUge1xuICB3aWR0aDogQG1lZGl1bVdpZHRoO1xufVxuXG4vKiBMYXJnZSAqL1xuLnVpLmxhcmdlLm1lbnUge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5sYXJnZS52ZXJ0aWNhbC5tZW51Om5vdCguaWNvbikge1xuICB3aWR0aDogQGxhcmdlV2lkdGg7XG59XG4udWkubGFyZ2UubWVudSAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5sYXJnZS5tZW51IC5kcm9wZG93biAubWVudSA+IC5pdGVte1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cblxuLyogSHVnZSAqL1xuLnVpLmh1Z2UubWVudSB7XG4gIGZvbnQtc2l6ZTogQGh1Z2U7XG59XG4udWkuaHVnZS52ZXJ0aWNhbC5tZW51Om5vdCguaWNvbikge1xuICB3aWR0aDogQGh1Z2VXaWR0aDtcbn1cbi51aS5odWdlLm1lbnUgLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cbi51aS5odWdlLm1lbnUgLmRyb3Bkb3duIC5tZW51ID4gLml0ZW17XG4gIGZvbnQtc2l6ZTogQGh1Z2U7XG59XG5cbi8qIEJpZyAqL1xuLnVpLmJpZy5tZW51IHtcbiAgZm9udC1zaXplOiBAYmlnO1xufVxuLnVpLmJpZy52ZXJ0aWNhbC5tZW51Om5vdCguaWNvbikge1xuICB3aWR0aDogQGJpZ1dpZHRoO1xufVxuLnVpLmJpZy5tZW51IC5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5iaWcubWVudSAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbXtcbiAgZm9udC1zaXplOiBAYmlnO1xufVxuXG4vKiBNYXNzaXZlICovXG4udWkubWFzc2l2ZS5tZW51IHtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cbi51aS5tYXNzaXZlLnZlcnRpY2FsLm1lbnU6bm90KC5pY29uKSB7XG4gIHdpZHRoOiBAbWFzc2l2ZVdpZHRoO1xufVxuLnVpLm1hc3NpdmUubWVudSAuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBtYXNzaXZlO1xufVxuLnVpLm1hc3NpdmUubWVudSAuZHJvcGRvd24gLm1lbnUgPiAuaXRlbXtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEludmVydGVkIGRyb3Bkb3duc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLm1lbnUgLnVpLmludmVydGVkLmludmVydGVkLmRyb3Bkb3duLml0ZW0gLm1lbnUge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWREcm9wZG93bkJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEBpbnZlcnRlZERyb3Bkb3duTWVudUJveFNoYWRvdztcbn1cblxuLnVpLm1lbnUgLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBjb2xvcjogQGludmVydGVkRHJvcGRvd25JdGVtQ29sb3IgIWltcG9ydGFudDtcbn1cblxuLnVpLm1lbnUgLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkRHJvcGRvd25BY3RpdmVJdGVtQmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICBjb2xvcjogQGludmVydGVkRHJvcGRvd25BY3RpdmVJdGVtQ29sb3IgIWltcG9ydGFudDtcbn1cblxuLnVpLm1lbnUgLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWREcm9wZG93bkhvdmVyZWRJdGVtQmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICBjb2xvcjogQGludmVydGVkRHJvcGRvd25Ib3ZlcmVkSXRlbUNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51IC51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudSA+IC5zZWxlY3RlZC5pdGVtIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkRHJvcGRvd25TZWxlY3RlZEl0ZW1CYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWREcm9wZG93blNlbGVjdGVkSXRlbUNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWkudmVydGljYWwubWVudSAuaW52ZXJ0ZWQuZHJvcGRvd24uaXRlbSAubWVudSB7XG4gIGJveC1zaGFkb3c6IEBpbnZlcnRlZERyb3Bkb3duTWVudUJveFNoYWRvdztcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gTWVzc2FnZVxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2NvbGxlY3Rpb24nO1xuQGVsZW1lbnQgOiAnbWVzc2FnZSc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIE1lc3NhZ2VcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5tZXNzYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIG1hcmdpbjogQHZlcnRpY2FsTWFyZ2luIDA7XG4gIGJhY2tncm91bmQ6IEBiYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiBAcGFkZGluZztcbiAgbGluZS1oZWlnaHQ6IEBsaW5lSGVpZ2h0O1xuICBjb2xvcjogQHRleHRDb2xvcjtcbiAgdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG4gIGJveC1zaGFkb3c6IEBib3hTaGFkb3c7XG59XG5cbi51aS5tZXNzYWdlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5tZXNzYWdlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSGVhZGVyICovXG4udWkubWVzc2FnZSAuaGVhZGVyIHtcbiAgZGlzcGxheTogQGhlYWRlckRpc3BsYXk7XG4gIGZvbnQtZmFtaWx5OiBAaGVhZGVyRm9udDtcbiAgZm9udC13ZWlnaHQ6IEBoZWFkZXJGb250V2VpZ2h0O1xuICBtYXJnaW46IEBoZWFkZXJNYXJnaW47XG59XG5cbi8qIERlZmF1bHQgZm9udCBzaXplICovXG4udWkubWVzc2FnZSAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC1zaXplOiBAaGVhZGVyRm9udFNpemU7XG59XG5cbi8qIFBhcmFncmFwaCAqL1xuLnVpLm1lc3NhZ2UgcCB7XG4gIG9wYWNpdHk6IEBtZXNzYWdlVGV4dE9wYWNpdHk7XG4gIG1hcmdpbjogQG1lc3NhZ2VQYXJhZ3JhcGhNYXJnaW4gMDtcbn1cbi51aS5tZXNzYWdlIHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLm1lc3NhZ2UgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi51aS5tZXNzYWdlIC5oZWFkZXIgKyBwIHtcbiAgbWFyZ2luLXRvcDogQGhlYWRlclBhcmFncmFwaERpc3RhbmNlO1xufVxuXG4vKiBMaXN0ICovXG4udWkubWVzc2FnZSAubGlzdDpub3QoLnVpKSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDA7XG4gIG9wYWNpdHk6IEBsaXN0T3BhY2l0eTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogQGxpc3RTdHlsZVBvc2l0aW9uO1xuICBtYXJnaW46IEBsaXN0TWFyZ2luIDAgMDtcbn1cbi51aS5tZXNzYWdlIC5saXN0Om5vdCgudWkpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5tZXNzYWdlIC5saXN0Om5vdCgudWkpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVpLm1lc3NhZ2UgLmxpc3Q6bm90KC51aSkgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgQGxpc3RJdGVtTWFyZ2luIEBsaXN0SXRlbUluZGVudDtcbiAgcGFkZGluZzogMDtcbn1cbi51aS5tZXNzYWdlIC5saXN0Om5vdCgudWkpIGxpOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJ+KAoic7XG4gIGxlZnQ6IC0xZW07XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLnVpLm1lc3NhZ2UgLmxpc3Q6bm90KC51aSkgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuLyogSWNvbiAqL1xuLnVpLm1lc3NhZ2UgPiAuaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogQGljb25EaXN0YW5jZTtcbn1cblxuLyogQ2xvc2UgSWNvbiAqL1xuLnVpLm1lc3NhZ2UgPiAuY2xvc2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIHRvcDogQGNsb3NlVG9wRGlzdGFuY2U7XG4gIHJpZ2h0OiBAY2xvc2VSaWdodERpc3RhbmNlO1xuICBvcGFjaXR5OiBAY2xvc2VPcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBAY2xvc2VUcmFuc2l0aW9uO1xufVxuLnVpLm1lc3NhZ2UgPiAuY2xvc2UuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIEZpcnN0IC8gTGFzdCBFbGVtZW50ICovXG4udWkubWVzc2FnZSA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkubWVzc2FnZSA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvdXBsaW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuZHJvcGRvd24gLm1lbnUgPiAubWVzc2FnZSB7XG4gIG1hcmdpbjogMCAtQGJvcmRlcldpZHRoO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVmlzaWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZpc2libGUudmlzaWJsZS52aXNpYmxlLnZpc2libGUubWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkuaWNvbi52aXNpYmxlLnZpc2libGUudmlzaWJsZS52aXNpYmxlLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEhpZGRlblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhpZGRlbi5oaWRkZW4uaGlkZGVuLmhpZGRlbi5tZXNzYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbXBhY3Rcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21wYWN0Lm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udWkuY29tcGFjdC5pY29uLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgd2lkdGg6IGF1dG87XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYXR0YWNoZWQubWVzc2FnZSB7XG4gIG1hcmdpbi1ib3R0b206IEBhdHRhY2hlZFlPZmZzZXQ7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDA7XG4gIGJveC1zaGFkb3c6IEBhdHRhY2hlZEJveFNoYWRvdztcbiAgbWFyZ2luLWxlZnQ6IEBhdHRhY2hlZFhPZmZzZXQ7XG4gIG1hcmdpbi1yaWdodDogQGF0dGFjaGVkWE9mZnNldDtcbn1cbi51aS5hdHRhY2hlZCArIC51aS5hdHRhY2hlZC5tZXNzYWdlOm5vdCgudG9wKTpub3QoLmJvdHRvbSkge1xuICBtYXJnaW4tdG9wOiBAYXR0YWNoZWRZT2Zmc2V0O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLnVpLmJvdHRvbS5hdHRhY2hlZC5tZXNzYWdlIHtcbiAgbWFyZ2luLXRvcDogQGF0dGFjaGVkWU9mZnNldDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cztcbiAgYm94LXNoYWRvdzogQGF0dGFjaGVkQm90dG9tQm94U2hhZG93O1xufVxuLnVpLmJvdHRvbS5hdHRhY2hlZC5tZXNzYWdlOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiBAdmVydGljYWxNYXJnaW47XG59XG4udWkuYXR0YWNoZWQuaWNvbi5tZXNzYWdlIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmljb24ubWVzc2FnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnVpLmljb24ubWVzc2FnZSA+IC5pY29uOm5vdCguY2xvc2UpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBAaWNvblZlcnRpY2FsQWxpZ247XG4gIGZvbnQtc2l6ZTogQGljb25TaXplO1xuICBvcGFjaXR5OiBAaWNvbk9wYWNpdHk7XG59XG4udWkuaWNvbi5tZXNzYWdlID4gLmNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAxIGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBAaWNvblZlcnRpY2FsQWxpZ247XG59XG5cblxuLnVpLmljb24ubWVzc2FnZSAuaWNvbjpub3QoLmNsb3NlKSArIC5jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiBAaWNvbkNvbnRlbnREaXN0YW5jZTtcbn1cbi51aS5pY29uLm1lc3NhZ2UgLmNpcmN1bGFyLmljb24ge1xuICB3aWR0aDogMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGluZy5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogQGZsb2F0aW5nQm94U2hhZG93O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFR5cGVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbkBjb25zZXF1ZW5jZXM6IHtcbiAgQHBvc2l0aXZlOiB7XG4gICAgYmFja2dyb3VuZCAgICAgOiBAcG9zaXRpdmVCYWNrZ3JvdW5kQ29sb3I7XG4gICAgaGVhZGVyICAgICAgICAgOiBAcG9zaXRpdmVIZWFkZXJDb2xvcjtcbiAgICBib3hTaGFkb3cgICAgICA6IEBwb3NpdGl2ZUJveFNoYWRvdztcbiAgICBib3hGbG9hdFNoYWRvdyA6IEBwb3NpdGl2ZUJveEZsb2F0aW5nU2hhZG93O1xuICAgIHRleHQgICAgICAgICAgIDogQHBvc2l0aXZlVGV4dENvbG9yO1xuICB9O1xuICBAbmVnYXRpdmU6IHtcbiAgICBiYWNrZ3JvdW5kICAgICA6IEBuZWdhdGl2ZUJhY2tncm91bmRDb2xvcjtcbiAgICBoZWFkZXIgICAgICAgICA6IEBuZWdhdGl2ZUhlYWRlckNvbG9yO1xuICAgIGJveFNoYWRvdyAgICAgIDogQG5lZ2F0aXZlQm94U2hhZG93O1xuICAgIGJveEZsb2F0U2hhZG93IDogQG5lZ2F0aXZlQm94RmxvYXRpbmdTaGFkb3c7XG4gICAgdGV4dCAgICAgICAgICAgOiBAbmVnYXRpdmVUZXh0Q29sb3I7XG4gIH07XG4gIEBpbmZvOiB7XG4gICAgYmFja2dyb3VuZCAgICAgOiBAaW5mb0JhY2tncm91bmRDb2xvcjtcbiAgICBoZWFkZXIgICAgICAgICA6IEBpbmZvSGVhZGVyQ29sb3I7XG4gICAgYm94U2hhZG93ICAgICAgOiBAaW5mb0JveFNoYWRvdztcbiAgICBib3hGbG9hdFNoYWRvdyA6IEBpbmZvQm94RmxvYXRpbmdTaGFkb3c7XG4gICAgdGV4dCAgICAgICAgICAgOiBAaW5mb1RleHRDb2xvcjtcbiAgfTtcbiAgQHdhcm5pbmc6IHtcbiAgICBiYWNrZ3JvdW5kICAgICA6IEB3YXJuaW5nQmFja2dyb3VuZENvbG9yO1xuICAgIGhlYWRlciAgICAgICAgIDogQHdhcm5pbmdIZWFkZXJDb2xvcjtcbiAgICBib3hTaGFkb3cgICAgICA6IEB3YXJuaW5nQm94U2hhZG93O1xuICAgIGJveEZsb2F0U2hhZG93IDogQHdhcm5pbmdCb3hGbG9hdGluZ1NoYWRvdztcbiAgICB0ZXh0ICAgICAgICAgICA6IEB3YXJuaW5nVGV4dENvbG9yO1xuICB9O1xuICBAZXJyb3I6IHtcbiAgICBiYWNrZ3JvdW5kICAgICA6IEBlcnJvckJhY2tncm91bmRDb2xvcjtcbiAgICBoZWFkZXIgICAgICAgICA6IEBlcnJvckhlYWRlckNvbG9yO1xuICAgIGJveFNoYWRvdyAgICAgIDogQGVycm9yQm94U2hhZG93O1xuICAgIGJveEZsb2F0U2hhZG93IDogQGVycm9yQm94RmxvYXRpbmdTaGFkb3c7XG4gICAgdGV4dCAgICAgICAgICAgOiBAZXJyb3JUZXh0Q29sb3I7XG4gIH07XG4gIEBzdWNjZXNzOiB7XG4gICAgYmFja2dyb3VuZCAgICAgOiBAc3VjY2Vzc0JhY2tncm91bmRDb2xvcjtcbiAgICBoZWFkZXIgICAgICAgICA6IEBzdWNjZXNzSGVhZGVyQ29sb3I7XG4gICAgYm94U2hhZG93ICAgICAgOiBAc3VjY2Vzc0JveFNoYWRvdztcbiAgICBib3hGbG9hdFNoYWRvdyA6IEBzdWNjZXNzQm94RmxvYXRpbmdTaGFkb3c7XG4gICAgdGV4dCAgICAgICAgICAgOiBAc3VjY2Vzc1RleHRDb2xvcjtcbiAgfTtcbn1cblxuLyogQ29sb3JzICovXG5cbmVhY2goQGNvbnNlcXVlbmNlcywge1xuICBAY29sb3I6IHJlcGxhY2UoQGtleSwgJ0AnLCAnJyk7XG4gIEBiZzogQGNvbnNlcXVlbmNlc1tAQGNvbG9yXVtiYWNrZ3JvdW5kXTtcbiAgQGhkOiBAY29uc2VxdWVuY2VzW0BAY29sb3JdW2hlYWRlcl07XG4gIEBiczogQGNvbnNlcXVlbmNlc1tAQGNvbG9yXVtib3hTaGFkb3ddO1xuICBAYmZzOiBAY29uc2VxdWVuY2VzW0BAY29sb3JdW2JveEZsb2F0U2hhZG93XTtcbiAgQHQ6IEBjb25zZXF1ZW5jZXNbQEBjb2xvcl1bdGV4dF07XG5cbiAgLnVpLkB7Y29sb3J9Lm1lc3NhZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBiZztcbiAgICBjb2xvcjogQHQ7XG4gIH1cblxuICAudWkuQHtjb2xvcn0ubWVzc2FnZSxcbiAgLnVpLmF0dGFjaGVkLkB7Y29sb3J9Lm1lc3NhZ2Uge1xuICAgIGJveC1zaGFkb3c6IEBicztcbiAgfVxuXG4gIC51aS5mbG9hdGluZy5Ae2NvbG9yfS5tZXNzYWdlIHtcbiAgICAgIGJveC1zaGFkb3c6IEBiZnM7XG4gIH1cblxuICAudWkuQHtjb2xvcn0ubWVzc2FnZSAuaGVhZGVyIHtcbiAgICBjb2xvcjogQGhkO1xuICB9XG59KVxuXG5lYWNoKEBjb2xvcnMsIHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksICdAJywgJycpO1xuICBAYmc6IEBjb2xvcnNbQEBjb2xvcl1bYmFja2dyb3VuZF07XG4gIEBoZDogQGNvbG9yc1tAQGNvbG9yXVtoZWFkZXJdO1xuICBAYnM6IEBjb2xvcnNbQEBjb2xvcl1bYm94U2hhZG93XTtcbiAgQGJmczogQGNvbG9yc1tAQGNvbG9yXVtib3hGbG9hdFNoYWRvd107XG4gIEB0OiBAY29sb3JzW0BAY29sb3JdW3RleHRdO1xuICBAaXNWZXJ5RGFyazogQGNvbG9yc1tAQGNvbG9yXVtpc1ZlcnlEYXJrXTtcblxuICAudWkuQHtjb2xvcn0ubWVzc2FnZSB7XG4gICAgJiB3aGVuIG5vdCAoQGlzVmVyeURhcmspIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBiZztcbiAgICAgIGNvbG9yOiBAdDtcbiAgICB9XG4gICAgJiB3aGVuIChAaXNWZXJ5RGFyaykge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGJsYWNrO1xuICAgICAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbiAgICB9XG4gIH1cblxuICAudWkuQHtjb2xvcn0ubWVzc2FnZSxcbiAgLnVpLmF0dGFjaGVkLkB7Y29sb3J9Lm1lc3NhZ2Uge1xuICAgICYgd2hlbiBub3QgKEBpc1ZlcnlEYXJrKSB7XG4gICAgICBib3gtc2hhZG93OiBAYnM7XG4gICAgfVxuICB9XG5cbiAgLnVpLmZsb2F0aW5nLkB7Y29sb3J9Lm1lc3NhZ2Uge1xuICAgICYgd2hlbiBub3QgKEBpc1ZlcnlEYXJrKSB7XG4gICAgICBib3gtc2hhZG93OiBAYmZzO1xuICAgIH1cbiAgfVxuXG4gIC51aS5Ae2NvbG9yfS5tZXNzYWdlIC5oZWFkZXIge1xuICAgICYgd2hlbiBub3QgKEBpc1ZlcnlEYXJrKSB7XG4gICAgICBjb2xvcjogQGhkO1xuICAgIH1cbiAgICAmIHdoZW4gKEBpc1ZlcnlEYXJrKSB7XG4gICAgICBjb2xvcjogQGludmVydGVkVGV4dENvbG9yO1xuICAgIH1cbiAgfVxufSlcblxuXG4udWkuaW52ZXJ0ZWQubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBibGFjaztcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlTWluaTtcbn1cbi51aS50aW55Lm1lc3NhZ2Uge1xuICBmb250LXNpemU6IEByZWxhdGl2ZVRpbnk7XG59XG4udWkuc21hbGwubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlU21hbGw7XG59XG4udWkubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlTWVkaXVtO1xufVxuLnVpLmxhcmdlLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IEByZWxhdGl2ZUxhcmdlO1xufVxuLnVpLmJpZy5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVCaWc7XG59XG4udWkuaHVnZS5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVIdWdlO1xufVxuLnVpLm1hc3NpdmUubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlTWFzc2l2ZTtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gVGFibGVcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ2NvbGxlY3Rpb24nO1xuQGVsZW1lbnQgOiAndGFibGUnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVGFibGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFByb3RvdHlwZSAqL1xuLnVpLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IEBiYWNrZ3JvdW5kO1xuICBtYXJnaW46IEBtYXJnaW47XG4gIGJvcmRlcjogQGJvcmRlcjtcbiAgYm94LXNoYWRvdzogQGJveFNoYWRvdztcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbiAgdGV4dC1hbGlnbjogQHRleHRBbGlnbjtcbiAgdmVydGljYWwtYWxpZ246IEB2ZXJ0aWNhbEFsaWduO1xuICBjb2xvcjogQGNvbG9yO1xuICBib3JkZXItY29sbGFwc2U6IEBib3JkZXJDb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IEBib3JkZXJTcGFjaW5nO1xufVxuXG4udWkudGFibGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLnRhYmxlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVpLnRhYmxlID4gdGhlYWQsXG4udWkudGFibGUgPiB0Ym9keSB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFBhcnRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBUYWJsZSBDb250ZW50ICovXG4udWkudGFibGUgdGgsXG4udWkudGFibGUgdGQge1xuICB0cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcbn1cblxuLyogSGVhZGVycyAqL1xuLnVpLnRhYmxlID4gdGhlYWQge1xuICBib3gtc2hhZG93OiBAaGVhZGVyQm94U2hhZG93O1xufVxuLnVpLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgY3Vyc29yOiBhdXRvO1xuICBiYWNrZ3JvdW5kOiBAaGVhZGVyQmFja2dyb3VuZDtcbiAgdGV4dC1hbGlnbjogQGhlYWRlckFsaWduO1xuICBjb2xvcjogQGhlYWRlckNvbG9yO1xuICBwYWRkaW5nOiBAaGVhZGVyVmVydGljYWxQYWRkaW5nIEBoZWFkZXJIb3Jpem9udGFsUGFkZGluZztcbiAgdmVydGljYWwtYWxpZ246IEBoZWFkZXJWZXJ0aWNhbEFsaWduO1xuICBmb250LXN0eWxlOiBAaGVhZGVyRm9udFN0eWxlO1xuICBmb250LXdlaWdodDogQGhlYWRlckZvbnRXZWlnaHQ7XG4gIHRleHQtdHJhbnNmb3JtOiBAaGVhZGVyVGV4dFRyYW5zZm9ybTtcbiAgYm9yZGVyLWJvdHRvbTogQGhlYWRlckJvcmRlcjtcbiAgYm9yZGVyLWxlZnQ6IEBoZWFkZXJEaXZpZGVyO1xufVxuXG4udWkudGFibGUgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnRhYmxlID4gdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cyAwIDAgMDtcbn1cbi51aS50YWJsZSA+IHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCBAYm9yZGVyUmFkaXVzIDAgMDtcbn1cbi51aS50YWJsZSA+IHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aDpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzIDAgMDtcbn1cblxuLyogRm9vdGVyICovXG4udWkudGFibGUgPiB0Zm9vdCB7XG4gIGJveC1zaGFkb3c6IEBmb290ZXJCb3hTaGFkb3c7XG59XG4udWkudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgge1xuICBjdXJzb3I6IGF1dG87XG4gIGJvcmRlci10b3A6IEBmb290ZXJCb3JkZXI7XG4gIGJhY2tncm91bmQ6IEBmb290ZXJCYWNrZ3JvdW5kO1xuICB0ZXh0LWFsaWduOiBAZm9vdGVyQWxpZ247XG4gIGNvbG9yOiBAZm9vdGVyQ29sb3I7XG4gIHBhZGRpbmc6IEBmb290ZXJWZXJ0aWNhbFBhZGRpbmcgQGZvb3Rlckhvcml6b250YWxQYWRkaW5nO1xuICB2ZXJ0aWNhbC1hbGlnbjogQGZvb3RlclZlcnRpY2FsQWxpZ247XG4gIGZvbnQtc3R5bGU6IEBmb290ZXJGb250U3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiBAZm9vdGVyRm9udFdlaWdodDtcbiAgdGV4dC10cmFuc2Zvcm06IEBmb290ZXJUZXh0VHJhbnNmb3JtO1xufVxuLnVpLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG4udWkudGFibGUgPiB0Zm9vdCA+IHRyOmZpcnN0LWNoaWxkID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCBAYm9yZGVyUmFkaXVzO1xufVxuLnVpLnRhYmxlID4gdGZvb3QgPiB0cjpmaXJzdC1jaGlsZCA+IHRoOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgQGJvcmRlclJhZGl1cyAwO1xufVxuLnVpLnRhYmxlID4gdGZvb3QgPiB0cjpmaXJzdC1jaGlsZCA+IHRoOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzO1xufVxuXG4vKiBUYWJsZSBSb3cgKi9cbi51aS50YWJsZSA+IHRyID4gdGQsXG4udWkudGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICBib3JkZXItdG9wOiBAcm93Qm9yZGVyO1xufVxuLnVpLnRhYmxlID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCxcbi51aS50YWJsZSA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi8qIFJlcGVhdGVkIHRib2R5ICovXG4udWkudGFibGUgPiB0Ym9keSArIHRib2R5IHRyOmZpcnN0LWNoaWxkID4gdGQge1xuICBib3JkZXItdG9wOiBAcm93Qm9yZGVyO1xufVxuXG4vKiBUYWJsZSBDZWxscyAqL1xuLnVpLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuLnVpLnRhYmxlID4gdHIgPiB0ZCB7XG4gIHBhZGRpbmc6IEBjZWxsVmVydGljYWxQYWRkaW5nIEBjZWxsSG9yaXpvbnRhbFBhZGRpbmc7XG4gIHRleHQtYWxpZ246IEBjZWxsVGV4dEFsaWduO1xufVxuXG4vKiBJY29ucyAqL1xuLnVpLnRhYmxlID4gLmljb24ge1xuICB2ZXJ0aWNhbC1hbGlnbjogQGljb25WZXJ0aWNhbEFsaWduO1xufVxuLnVpLnRhYmxlID4gLmljb246b25seS1jaGlsZCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogVGFibGUgU2VnbWVudCAqL1xuLnVpLnRhYmxlLnNlZ21lbnQge1xuICBwYWRkaW5nOiAwO1xufVxuLnVpLnRhYmxlLnNlZ21lbnQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVpLnRhYmxlLnNlZ21lbnQuc3RhY2tlZDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5cbi8qIFJlc3BvbnNpdmUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGhlYWQgPiB0cixcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGZvb3QsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRmb290ID4gdHIsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRib2R5LFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0cixcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGJvZHkgPiB0cixcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdHIgPiB0aCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Ym9keSA+IHRyID4gdGgsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRmb290ID4gdHIgPiB0aCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdHIgPiB0ZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCB7XG4gICAgZGlzcGxheTogQHJlc3BvbnNpdmVIZWFkZXJEaXNwbGF5O1xuICB9XG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRmb290IHtcbiAgICBkaXNwbGF5OiBAcmVzcG9uc2l2ZUZvb3RlckRpc3BsYXk7XG4gIH1cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdHIsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRoZWFkID4gdHIsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRib2R5ID4gdHIsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRmb290ID4gdHIge1xuICAgIHBhZGRpbmctdG9wOiBAcmVzcG9uc2l2ZVJvd1ZlcnRpY2FsUGFkZGluZztcbiAgICBwYWRkaW5nLWJvdHRvbTogQHJlc3BvbnNpdmVSb3dWZXJ0aWNhbFBhZGRpbmc7XG4gICAgYm94LXNoYWRvdzogQHJlc3BvbnNpdmVSb3dCb3hTaGFkb3c7XG4gIH1cblxuICAudWkudWkudWkudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0ciA+IHRoLFxuICAudWkudWkudWkudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC51aS51aS51aS51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnVpLnVpLnVpLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGZvb3QgPiB0ciA+IHRoLFxuICAudWkudWkudWkudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0ciA+IHRkLFxuICAudWkudWkudWkudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IEByZXNwb25zaXZlQ2VsbFZlcnRpY2FsUGFkZGluZyBAcmVzcG9uc2l2ZUNlbGxIb3Jpem9udGFsUGFkZGluZztcbiAgICBib3gtc2hhZG93OiBAcmVzcG9uc2l2ZUNlbGxCb3hTaGFkb3c7XG4gIH1cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0Ym9keSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSA+IHRmb290ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXdlaWdodDogQHJlc3BvbnNpdmVDZWxsSGVhZGVyRm9udFdlaWdodDtcbiAgfVxuXG4gIC8qIERlZmluaXRpb24gVGFibGUgKi9cbiAgLnVpLmRlZmluaXRpb24udGFibGU6bm90KC51bnN0YWNrYWJsZSkgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogVUkgSW1hZ2UgKi9cbi51aS50YWJsZSAuY29sbGFwc2luZyAuaW1hZ2UsXG4udWkudGFibGUgLmNvbGxhcHNpbmcgLmltYWdlIGltZyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ29tcGxleFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnN0cnVjdHVyZWQudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuLnVpLnN0cnVjdHVyZWQudGFibGUgPiB0aGVhZCA+IHRyID4gdGgge1xuICBib3JkZXItbGVmdDogQGhlYWRlckRpdmlkZXI7XG4gIGJvcmRlci1yaWdodDogQGhlYWRlckRpdmlkZXI7XG59XG4udWkuc3RydWN0dXJlZC5zb3J0YWJsZS50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gIGJvcmRlci1sZWZ0OiBAc29ydGFibGVCb3JkZXI7XG4gIGJvcmRlci1yaWdodDogQHNvcnRhYmxlQm9yZGVyO1xufVxuLnVpLnN0cnVjdHVyZWQuYmFzaWMudGFibGUgPiB0ciA+IHRoLFxuLnVpLnN0cnVjdHVyZWQuYmFzaWMudGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4udWkuc3RydWN0dXJlZC5iYXNpYy50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aS5zdHJ1Y3R1cmVkLmJhc2ljLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgYm9yZGVyLWxlZnQ6IEBiYXNpY1RhYmxlSGVhZGVyRGl2aWRlcjtcbiAgYm9yZGVyLXJpZ2h0OiBAYmFzaWNUYWJsZUhlYWRlckRpdmlkZXI7XG59XG4udWkuc3RydWN0dXJlZC5jZWxsZWQudGFibGUgPiB0ciA+IHRoLFxuLnVpLnN0cnVjdHVyZWQuY2VsbGVkLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuLnVpLnN0cnVjdHVyZWQuY2VsbGVkLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLFxuLnVpLnN0cnVjdHVyZWQuY2VsbGVkLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLFxuLnVpLnN0cnVjdHVyZWQuY2VsbGVkLnRhYmxlID4gdHIgPiB0ZCxcbi51aS5zdHJ1Y3R1cmVkLmNlbGxlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIGJvcmRlci1sZWZ0OiBAY2VsbEJvcmRlcjtcbiAgYm9yZGVyLXJpZ2h0OiBAY2VsbEJvcmRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGVmaW5pdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRlZmluaXRpb24udGFibGUgPiB0aGVhZDpub3QoLmZ1bGwtd2lkdGgpID4gdHIgPiB0aDpmaXJzdC1jaGlsZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kOiBAZGVmaW5pdGlvbkhlYWRlckJhY2tncm91bmQ7XG4gIGZvbnQtd2VpZ2h0OiBAZGVmaW5pdGlvbkhlYWRlckZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAZGVmaW5pdGlvbkhlYWRlckNvbG9yO1xuICBib3gtc2hhZG93OiAtQGNvbG9yZWRCb3JkZXJTaXplQ292ZXIgLUBjb2xvcmVkQm9yZGVyU2l6ZSAwIEBjb2xvcmVkQm9yZGVyU2l6ZUNvdmVyIEBkZWZpbml0aW9uUGFnZUJhY2tncm91bmQ7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLnVpLmRlZmluaXRpb24udGFibGUgPiB0Zm9vdDpub3QoLmZ1bGwtd2lkdGgpID4gdHIgPiB0aDpmaXJzdC1jaGlsZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kOiBAZGVmaW5pdGlvbkZvb3RlckJhY2tncm91bmQ7XG4gIGZvbnQtd2VpZ2h0OiBAZGVmaW5pdGlvbkZvb3RlckZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAZGVmaW5pdGlvbkZvb3RlckNvbG9yO1xuICBib3gtc2hhZG93OiAtQGNvbG9yZWRCb3JkZXJTaXplQ292ZXIgQGNvbG9yZWRCb3JkZXJTaXplIDAgQGNvbG9yZWRCb3JkZXJTaXplQ292ZXIgQGRlZmluaXRpb25QYWdlQmFja2dyb3VuZDtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4vKiBIaWdobGlnaHQgRGVmaW5pbmcgQ29sdW1uICovXG4udWkuZGVmaW5pdGlvbi50YWJsZSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQ6bm90KC5pZ25vcmVkKSxcbi51aS5kZWZpbml0aW9uLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkOm5vdCguaWdub3JlZCksXG4udWkuZGVmaW5pdGlvbi50YWJsZSB0ciB0ZC5kZWZpbml0aW9uIHtcbiAgYmFja2dyb3VuZDogQGRlZmluaXRpb25Db2x1bW5CYWNrZ3JvdW5kO1xuICBmb250LXdlaWdodDogQGRlZmluaXRpb25Db2x1bW5Gb250V2VpZ2h0O1xuICBjb2xvcjogQGRlZmluaXRpb25Db2x1bW5Db2xvcjtcbiAgdGV4dC10cmFuc2Zvcm06IEBkZWZpbml0aW9uQ29sdW1uVGV4dFRyYW5zZm9ybTtcbiAgYm94LXNoYWRvdzogQGRlZmluaXRpb25Db2x1bW5Cb3hTaGFkb3c7XG4gIHRleHQtYWxpZ246IEBkZWZpbml0aW9uQ29sdW1uVGV4dEFsaWduO1xuICBmb250LXNpemU6IEBkZWZpbml0aW9uQ29sdW1uRm9udFNpemU7XG4gIHBhZGRpbmctbGVmdDogQGRlZmluaXRpb25Db2x1bW5Ib3Jpem9udGFsUGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogQGRlZmluaXRpb25Db2x1bW5Ib3Jpem9udGFsUGFkZGluZztcbn1cblxuXG4vKiBGaXggMm5kIENvbHVtbiAqL1xuLnVpLmRlZmluaXRpb24udGFibGUgPiB0aGVhZDpub3QoLmZ1bGwtd2lkdGgpID4gdHIgPiB0aDpudGgtY2hpbGQoMikge1xuICBib3JkZXItbGVmdDogQGJvcmRlcldpZHRoIHNvbGlkIEBib3JkZXJDb2xvcjtcbn1cbi51aS5kZWZpbml0aW9uLnRhYmxlID4gdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSA+IHRyID4gdGg6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLWxlZnQ6IEBib3JkZXJXaWR0aCBzb2xpZCBAYm9yZGVyQ29sb3I7XG59XG4udWkuZGVmaW5pdGlvbi50YWJsZSA+IHRyID4gdGQ6bnRoLWNoaWxkKDIpLFxuLnVpLmRlZmluaXRpb24udGFibGUgPiB0Ym9keSA+IHRyID4gdGQ6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLWxlZnQ6IEBib3JkZXJXaWR0aCBzb2xpZCBAYm9yZGVyQ29sb3I7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUG9zaXRpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS51aS51aS51aS50YWJsZSB0ci5wb3NpdGl2ZSxcbi51aS51aS50YWJsZSB0ZC5wb3NpdGl2ZSB7XG4gIGJveC1zaGFkb3c6IEBwb3NpdGl2ZUJveFNoYWRvdztcbiAgYmFja2dyb3VuZDogQHBvc2l0aXZlQmFja2dyb3VuZENvbG9yO1xuICBjb2xvcjogQHBvc2l0aXZlQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTmVnYXRpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS51aS51aS51aS50YWJsZSB0ci5uZWdhdGl2ZSxcbi51aS51aS50YWJsZSB0ZC5uZWdhdGl2ZSB7XG4gIGJveC1zaGFkb3c6IEBuZWdhdGl2ZUJveFNoYWRvdztcbiAgYmFja2dyb3VuZDogQG5lZ2F0aXZlQmFja2dyb3VuZENvbG9yO1xuICBjb2xvcjogQG5lZ2F0aXZlQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEVycm9yXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudWkudWkudWkudGFibGUgdHIuZXJyb3IsXG4udWkudWkudGFibGUgdGQuZXJyb3Ige1xuICBib3gtc2hhZG93OiBAZXJyb3JCb3hTaGFkb3c7XG4gIGJhY2tncm91bmQ6IEBlcnJvckJhY2tncm91bmRDb2xvcjtcbiAgY29sb3I6IEBlcnJvckNvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFdhcm5pbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS51aS51aS51aS50YWJsZSB0ci53YXJuaW5nLFxuLnVpLnVpLnRhYmxlIHRkLndhcm5pbmcge1xuICBib3gtc2hhZG93OiBAd2FybmluZ0JveFNoYWRvdztcbiAgYmFja2dyb3VuZDogQHdhcm5pbmdCYWNrZ3JvdW5kQ29sb3I7XG4gIGNvbG9yOiBAd2FybmluZ0NvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnVpLnVpLnVpLnRhYmxlIHRyLmFjdGl2ZSxcbi51aS51aS50YWJsZSB0ZC5hY3RpdmUge1xuICBib3gtc2hhZG93OiBAYWN0aXZlQm94U2hhZG93O1xuICBiYWNrZ3JvdW5kOiBAYWN0aXZlQmFja2dyb3VuZENvbG9yO1xuICBjb2xvcjogQGFjdGl2ZUNvbG9yO1xufVxuXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLmRpc2FibGVkIHRkLFxuLnVpLnRhYmxlIHRyIHRkLmRpc2FibGVkLFxuLnVpLnRhYmxlIHRyLmRpc2FibGVkOmhvdmVyLFxuLnVpLnRhYmxlIHRyOmhvdmVyIHRkLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbG9yOiBAZGlzYWJsZWRUZXh0Q29sb3I7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogQGxhcmdlc3RUYWJsZXRTY3JlZW4pIHtcblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0aGVhZCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0aGVhZCA+IHRyLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRmb290LFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRmb290ID4gdHIsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGJvZHksXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0cixcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRmb290ID4gdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0ciA+IHRoLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0ciA+IHRkICB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0aGVhZCB7XG4gICAgZGlzcGxheTogQHJlc3BvbnNpdmVIZWFkZXJEaXNwbGF5O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGZvb3Qge1xuICAgIGRpc3BsYXk6IEByZXNwb25zaXZlRm9vdGVyRGlzcGxheTtcbiAgfVxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRoZWFkID4gdHIsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Zm9vdCA+IHRyLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRyIHtcbiAgICBwYWRkaW5nLXRvcDogQHJlc3BvbnNpdmVSb3dWZXJ0aWNhbFBhZGRpbmc7XG4gICAgcGFkZGluZy1ib3R0b206IEByZXNwb25zaXZlUm93VmVydGljYWxQYWRkaW5nO1xuICAgIGJveC1zaGFkb3c6IEByZXNwb25zaXZlUm93Qm94U2hhZG93O1xuICB9XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdHIgPiB0ZCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiBAcmVzcG9uc2l2ZUNlbGxWZXJ0aWNhbFBhZGRpbmcgQHJlc3BvbnNpdmVDZWxsSG9yaXpvbnRhbFBhZGRpbmc7XG4gICAgYm94LXNoYWRvdzogQHJlc3BvbnNpdmVDZWxsQm94U2hhZG93O1xuICB9XG5cbiAgLyogRGVmaW5pdGlvbiBUYWJsZSAqL1xuICAudWkuZGVmaW5pdGlvbltjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuIFRleHQgQWxpZ25tZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGVbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnVpLnRhYmxlW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi51aS50YWJsZVtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gVmVydGljYWwgQWxpZ25tZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGVbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0sXG4udWkudGFibGUgW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi51aS50YWJsZVtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnVpLnRhYmxlW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb2xsYXBzaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGUgdGguY29sbGFwc2luZyxcbi51aS50YWJsZSB0ZC5jb2xsYXBzaW5nIHtcbiAgd2lkdGg6IDFweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZpeGVkLnRhYmxlIHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLnVpLmZpeGVkLnRhYmxlIHRoLFxuLnVpLmZpeGVkLnRhYmxlIHRkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU2VsZWN0YWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnVpLnNlbGVjdGFibGUudGFibGUgPiB0Ym9keSA+IHRyOmhvdmVyLFxuLnVpLnRhYmxlIHRib2R5IHRyIHRkLnNlbGVjdGFibGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAc2VsZWN0YWJsZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc2VsZWN0YWJsZVRleHRDb2xvcjtcbn1cbi51aS51aS5zZWxlY3RhYmxlLmludmVydGVkLnRhYmxlID4gdGJvZHkgPiB0cjpob3Zlcixcbi51aS5pbnZlcnRlZC50YWJsZSB0Ym9keSB0ciB0ZC5zZWxlY3RhYmxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQHNlbGVjdGFibGVJbnZlcnRlZEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc2VsZWN0YWJsZUludmVydGVkVGV4dENvbG9yO1xufVxuXG4vKiBTZWxlY3RhYmxlIENlbGwgTGluayAqL1xuLnVpLnRhYmxlIHRib2R5IHRyIHRkLnNlbGVjdGFibGUge1xuICBwYWRkaW5nOiAwO1xufVxuLnVpLnRhYmxlIHRib2R5IHRyIHRkLnNlbGVjdGFibGUgPiBhOm5vdCgudWkpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBwYWRkaW5nOiBAY2VsbFZlcnRpY2FsUGFkZGluZyBAY2VsbEhvcml6b250YWxQYWRkaW5nO1xufVxuLnVpLnRhYmxlID4gdHIgPiB0ZC5zZWxlY3RhYmxlLFxuLnVpLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLnNlbGVjdGFibGUsXG4udWkuc2VsZWN0YWJsZS50YWJsZSA+IHRib2R5ID4gdHIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSA+IHRyIHtcbiAgY3Vyc29yOnBvaW50ZXI7XG59XG5cbi8qIE90aGVyIFN0YXRlcyAqL1xuLnVpLnVpLnNlbGVjdGFibGUudGFibGUgdHIuZXJyb3I6aG92ZXIsXG4udWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS5lcnJvcjpob3Zlcixcbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyOmhvdmVyIHRkLmVycm9yIHtcbiAgYmFja2dyb3VuZDogQGVycm9yQmFja2dyb3VuZEhvdmVyO1xuICBjb2xvcjogQGVycm9yQ29sb3JIb3Zlcjtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLndhcm5pbmc6aG92ZXIsXG4udWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS53YXJuaW5nOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQud2FybmluZyB7XG4gIGJhY2tncm91bmQ6IEB3YXJuaW5nQmFja2dyb3VuZEhvdmVyO1xuICBjb2xvcjogQHdhcm5pbmdDb2xvckhvdmVyO1xufVxuLnVpLnVpLnNlbGVjdGFibGUudGFibGUgdHIuYWN0aXZlOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUuYWN0aXZlOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogQGFjdGl2ZUJhY2tncm91bmRDb2xvcjtcbiAgY29sb3I6IEBhY3RpdmVDb2xvcjtcbn1cbi51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLnBvc2l0aXZlOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUucG9zaXRpdmU6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5wb3NpdGl2ZSB7XG4gIGJhY2tncm91bmQ6IEBwb3NpdGl2ZUJhY2tncm91bmRIb3ZlcjtcbiAgY29sb3I6IEBwb3NpdGl2ZUNvbG9ySG92ZXI7XG59XG4udWkudWkuc2VsZWN0YWJsZS50YWJsZSB0ci5uZWdhdGl2ZTpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLm5lZ2F0aXZlOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQubmVnYXRpdmUge1xuICBiYWNrZ3JvdW5kOiBAbmVnYXRpdmVCYWNrZ3JvdW5kSG92ZXI7XG4gIGNvbG9yOiBAbmVnYXRpdmVDb2xvckhvdmVyO1xufVxuXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNaWRkbGUgKi9cbi51aS5hdHRhY2hlZC50YWJsZSB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IDAgQGF0dGFjaGVkSG9yaXpvbnRhbE9mZnNldDtcbiAgd2lkdGg6IEBhdHRhY2hlZFdpZHRoO1xuICBtYXgtd2lkdGg6IEBhdHRhY2hlZFdpZHRoO1xuICBib3gtc2hhZG93OiBAYXR0YWNoZWRCb3hTaGFkb3c7XG4gIGJvcmRlcjogQGF0dGFjaGVkQm9yZGVyO1xufVxuLnVpLmF0dGFjaGVkICsgLnVpLmF0dGFjaGVkLnRhYmxlOm5vdCgudG9wKSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi8qIFRvcCAqL1xuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS50YWJsZSB7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdG9wOiBAYXR0YWNoZWRUb3BPZmZzZXQ7XG4gIG1hcmdpbi10b3A6IEB2ZXJ0aWNhbE1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzIDAgMDtcbn1cbi51aS50YWJsZVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4vKiBCb3R0b20gKi9cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0udGFibGUge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHRvcDogQGF0dGFjaGVkQm90dG9tT2Zmc2V0O1xuICBtYXJnaW4tYm90dG9tOiBAdmVydGljYWxNYXJnaW47XG4gIGJveC1zaGFkb3c6IEBhdHRhY2hlZEJvdHRvbUJveFNoYWRvdztcbiAgYm9yZGVyLXJhZGl1czogMCAwIEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cztcbn1cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0udGFibGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RyaXBlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVGFibGUgU3RyaXBpbmcgKi9cbi51aS5zdHJpcGVkLnRhYmxlID4gdHI6bnRoLWNoaWxkKDJuKSxcbi51aS5zdHJpcGVkLnRhYmxlID4gdGJvZHkgPiB0cjpudGgtY2hpbGQoMm4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHN0cmlwZWRCYWNrZ3JvdW5kO1xufVxuXG4vKiBTdHJpcGVzICovXG4udWkuaW52ZXJ0ZWQuc3RyaXBlZC50YWJsZSA+IHRyOm50aC1jaGlsZCgybiksXG4udWkuaW52ZXJ0ZWQuc3RyaXBlZC50YWJsZSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKDJuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnZlcnRlZFN0cmlwZWRCYWNrZ3JvdW5kO1xufVxuXG4vKiBBbGxvdyBzdHJpcGVkIGFjdGl2ZSBob3ZlciAqL1xuLnVpLnN0cmlwZWQuc2VsZWN0YWJsZS5zZWxlY3RhYmxlLnNlbGVjdGFibGUudGFibGUgdGJvZHkgdHIuYWN0aXZlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQGFjdGl2ZUJhY2tncm91bmRIb3ZlcjtcbiAgY29sb3I6IEBhY3RpdmVDb2xvckhvdmVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTaW5nbGUgTGluZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlW2NsYXNzKj1cInNpbmdsZSBsaW5lXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJzaW5nbGUgbGluZVwiXSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMsIHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksICdAJywgJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG4gIEB0OiBAY29sb3JzW0BAY29sb3JdW3RleHRdO1xuICBAaHQ6IEBjb2xvcnNbQEBjb2xvcl1baG92ZXJUZXh0XTtcbiAgQGw6IEBjb2xvcnNbQEBjb2xvcl1bbGlnaHRdO1xuICBAbGg6IEBjb2xvcnNbQEBjb2xvcl1bbGlnaHRIb3Zlcl07XG4gIEByOiBAY29sb3JzW0BAY29sb3JdW3JpYmJvbl07XG4gIEBiOiBAY29sb3JzW0BAY29sb3JdW2JyaWdodF07XG4gIEBiaDogQGNvbG9yc1tAQGNvbG9yXVticmlnaHRIb3Zlcl07XG4gIEBpc0Rhcms6IEBjb2xvcnNbQEBjb2xvcl1baXNEYXJrXTtcbiAgQGlzVmVyeURhcms6IEBjb2xvcnNbQEBjb2xvcl1baXNWZXJ5RGFya107XG5cbiAgLnVpLkB7Y29sb3J9LnRhYmxlIHtcbiAgICBib3JkZXItdG9wOiBAY29sb3JlZEJvcmRlclNpemUgc29saWQgQGM7XG4gIH1cbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYztcbiAgICBjb2xvcjogQHdoaXRlO1xuICB9XG4gIC51aS51aS51aS51aS50YWJsZSB0ci5Ae2NvbG9yfSxcbiAgLnVpLnVpLnRhYmxlIHRkLkB7Y29sb3J9IHtcbiAgICBib3gtc2hhZG93OiBAc3RhdGVNYXJrZXJXaWR0aCAwIDAgQHIgaW5zZXQ7XG4gICAgJiB3aGVuIChAaXNEYXJrKSB7XG4gICAgICBiYWNrZ3JvdW5kOiBAbDtcbiAgICB9XG4gICAgJiB3aGVuIG5vdCAoQGlzRGFyaykge1xuICAgICAgYmFja2dyb3VuZDogQGI7XG4gICAgfVxuICAgICYgd2hlbiAoQGlzVmVyeURhcmspIHtcbiAgICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgfVxuICAgICYgd2hlbiBub3QgKEBpc1ZlcnlEYXJrKSB7XG4gICAgICBjb2xvcjogQHQ7XG4gICAgfVxuICB9XG4gIC51aS51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLkB7Y29sb3J9OmhvdmVyLFxuICAudWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS5Ae2NvbG9yfTpob3ZlcixcbiAgLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQuQHtjb2xvcn0ge1xuICAgICYgd2hlbiAoQGlzRGFyaykge1xuICAgICAgYmFja2dyb3VuZDogQGxoO1xuICAgIH1cbiAgICAmIHdoZW4gbm90IChAaXNEYXJrKSB7XG4gICAgICBiYWNrZ3JvdW5kOiBAYmg7XG4gICAgfVxuICAgICYgd2hlbiAoQGlzVmVyeURhcmspIHtcbiAgICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgfVxuICAgICYgd2hlbiBub3QgKEBpc1ZlcnlEYXJrKSB7XG4gICAgICBjb2xvcjogQGh0O1xuICAgIH1cbiAgfVxufSlcblxuLyotLS0tLS0tLS0tLS0tLVxuICBDb2x1bW4gQ291bnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEdyaWQgQmFzZWQgKi9cbi51aS5vbmUuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IEBvbmVDb2x1bW47XG59XG4udWkudHdvLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiBAdHdvQ29sdW1uO1xufVxuLnVpLnRocmVlLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiBAdGhyZWVDb2x1bW47XG59XG4udWkuZm91ci5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogQGZvdXJDb2x1bW47XG59XG4udWkuZml2ZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogQGZpdmVDb2x1bW47XG59XG4udWkuc2l4LmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiBAc2l4Q29sdW1uO1xufVxuLnVpLnNldmVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiBAc2V2ZW5Db2x1bW47XG59XG4udWkuZWlnaHQuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IEBlaWdodENvbHVtbjtcbn1cbi51aS5uaW5lLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiBAbmluZUNvbHVtbjtcbn1cbi51aS50ZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IEB0ZW5Db2x1bW47XG59XG4udWkuZWxldmVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiBAZWxldmVuQ29sdW1uO1xufVxuLnVpLnR3ZWx2ZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogQHR3ZWx2ZUNvbHVtbjtcbn1cbi51aS50aGlydGVlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogQHRoaXJ0ZWVuQ29sdW1uO1xufVxuLnVpLmZvdXJ0ZWVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiBAZm91cnRlZW5Db2x1bW47XG59XG4udWkuZmlmdGVlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogQGZpZnRlZW5Db2x1bW47XG59XG4udWkuc2l4dGVlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogQHNpeHRlZW5Db2x1bW47XG59XG5cbi8qIENvbHVtbiBXaWR0aCAqL1xuLnVpLnRhYmxlIHRoLm9uZS53aWRlLFxuLnVpLnRhYmxlIHRkLm9uZS53aWRlIHtcbiAgd2lkdGg6IEBvbmVXaWRlO1xufVxuLnVpLnRhYmxlIHRoLnR3by53aWRlLFxuLnVpLnRhYmxlIHRkLnR3by53aWRlIHtcbiAgd2lkdGg6IEB0d29XaWRlO1xufVxuLnVpLnRhYmxlIHRoLnRocmVlLndpZGUsXG4udWkudGFibGUgdGQudGhyZWUud2lkZSB7XG4gIHdpZHRoOiBAdGhyZWVXaWRlO1xufVxuLnVpLnRhYmxlIHRoLmZvdXIud2lkZSxcbi51aS50YWJsZSB0ZC5mb3VyLndpZGUge1xuICB3aWR0aDogQGZvdXJXaWRlO1xufVxuLnVpLnRhYmxlIHRoLmZpdmUud2lkZSxcbi51aS50YWJsZSB0ZC5maXZlLndpZGUge1xuICB3aWR0aDogQGZpdmVXaWRlO1xufVxuLnVpLnRhYmxlIHRoLnNpeC53aWRlLFxuLnVpLnRhYmxlIHRkLnNpeC53aWRlIHtcbiAgd2lkdGg6IEBzaXhXaWRlO1xufVxuLnVpLnRhYmxlIHRoLnNldmVuLndpZGUsXG4udWkudGFibGUgdGQuc2V2ZW4ud2lkZSB7XG4gIHdpZHRoOiBAc2V2ZW5XaWRlO1xufVxuLnVpLnRhYmxlIHRoLmVpZ2h0LndpZGUsXG4udWkudGFibGUgdGQuZWlnaHQud2lkZSB7XG4gIHdpZHRoOiBAZWlnaHRXaWRlO1xufVxuLnVpLnRhYmxlIHRoLm5pbmUud2lkZSxcbi51aS50YWJsZSB0ZC5uaW5lLndpZGUge1xuICB3aWR0aDogQG5pbmVXaWRlO1xufVxuLnVpLnRhYmxlIHRoLnRlbi53aWRlLFxuLnVpLnRhYmxlIHRkLnRlbi53aWRlIHtcbiAgd2lkdGg6IEB0ZW5XaWRlO1xufVxuLnVpLnRhYmxlIHRoLmVsZXZlbi53aWRlLFxuLnVpLnRhYmxlIHRkLmVsZXZlbi53aWRlIHtcbiAgd2lkdGg6IEBlbGV2ZW5XaWRlO1xufVxuLnVpLnRhYmxlIHRoLnR3ZWx2ZS53aWRlLFxuLnVpLnRhYmxlIHRkLnR3ZWx2ZS53aWRlIHtcbiAgd2lkdGg6IEB0d2VsdmVXaWRlO1xufVxuLnVpLnRhYmxlIHRoLnRoaXJ0ZWVuLndpZGUsXG4udWkudGFibGUgdGQudGhpcnRlZW4ud2lkZSB7XG4gIHdpZHRoOiBAdGhpcnRlZW5XaWRlO1xufVxuLnVpLnRhYmxlIHRoLmZvdXJ0ZWVuLndpZGUsXG4udWkudGFibGUgdGQuZm91cnRlZW4ud2lkZSB7XG4gIHdpZHRoOiBAZm91cnRlZW5XaWRlO1xufVxuLnVpLnRhYmxlIHRoLmZpZnRlZW4ud2lkZSxcbi51aS50YWJsZSB0ZC5maWZ0ZWVuLndpZGUge1xuICB3aWR0aDogQGZpZnRlZW5XaWRlO1xufVxuLnVpLnRhYmxlIHRoLnNpeHRlZW4ud2lkZSxcbi51aS50YWJsZSB0ZC5zaXh0ZWVuLndpZGUge1xuICB3aWR0aDogQHNpeHRlZW5XaWRlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU29ydGFibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zb3J0YWJsZS50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLWxlZnQ6IEBzb3J0YWJsZUJvcmRlcjtcbiAgY29sb3I6IEBzb3J0YWJsZUNvbG9yO1xufVxuLnVpLnNvcnRhYmxlLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkLFxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZDpob3ZlciB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4udWkuc29ydGFibGUudGFibGUgPiB0aGVhZCA+IHRyID4gdGg6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBAbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIGNvbnRlbnQ6ICcnO1xuICBoZWlnaHQ6IDFlbTtcbiAgd2lkdGg6IEBzb3J0YWJsZUljb25XaWR0aDtcbiAgb3BhY2l0eTogQHNvcnRhYmxlSWNvbk9wYWNpdHk7XG4gIG1hcmdpbjogMCAwIDAgQHNvcnRhYmxlSWNvbkRpc3RhbmNlO1xuICBmb250LWZhbWlseTogQHNvcnRhYmxlSWNvbkZvbnQ7XG59XG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguYXNjZW5kaW5nOmFmdGVyIHtcbiAgY29udGVudDogQHNvcnRhYmxlSWNvbkFzY2VuZGluZztcbn1cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5kZXNjZW5kaW5nOmFmdGVyIHtcbiAgY29udGVudDogQHNvcnRhYmxlSWNvbkRlc2NlbmRpbmc7XG59XG5cbi8qIEhvdmVyICovXG4udWkuc29ydGFibGUudGFibGUgdGguZGlzYWJsZWQ6aG92ZXIge1xuICBjdXJzb3I6IGF1dG87XG4gIGNvbG9yOiBAc29ydGFibGVEaXNhYmxlZENvbG9yO1xufVxuLnVpLnNvcnRhYmxlLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQHNvcnRhYmxlSG92ZXJCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHNvcnRhYmxlSG92ZXJDb2xvcjtcbn1cblxuLyogU29ydGVkICovXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkIHtcbiAgYmFja2dyb3VuZDogQHNvcnRhYmxlQWN0aXZlQmFja2dyb3VuZDtcbiAgY29sb3I6IEBzb3J0YWJsZUFjdGl2ZUNvbG9yO1xufVxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZDphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyogU29ydGVkIEhvdmVyICovXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQHNvcnRhYmxlQWN0aXZlSG92ZXJCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHNvcnRhYmxlQWN0aXZlSG92ZXJDb2xvcjtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cbi51aS5pbnZlcnRlZC5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0ZWQge1xuICBiYWNrZ3JvdW5kOiBAc29ydGFibGVJbnZlcnRlZEFjdGl2ZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc29ydGFibGVJbnZlcnRlZEFjdGl2ZUNvbG9yO1xufVxuLnVpLmludmVydGVkLnNvcnRhYmxlLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQHNvcnRhYmxlSW52ZXJ0ZWRIb3ZlckJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc29ydGFibGVJbnZlcnRlZEhvdmVyQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuc29ydGFibGUudGFibGUgPiB0aGVhZCA+IHRyID4gdGgge1xuICBib3JkZXItbGVmdC1jb2xvcjogQHNvcnRhYmxlSW52ZXJ0ZWRCb3JkZXJDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBAc29ydGFibGVJbnZlcnRlZEJvcmRlckNvbG9yO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVGV4dCBDb2xvciAqL1xuLnVpLmludmVydGVkLnRhYmxlIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQmFja2dyb3VuZDtcbiAgY29sb3I6IEBpbnZlcnRlZENlbGxDb2xvcjtcbiAgYm9yZGVyOiBAaW52ZXJ0ZWRCb3JkZXI7XG59XG4udWkudWkuaW52ZXJ0ZWQudGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4udWkudWkuaW52ZXJ0ZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4udWkudWkuaW52ZXJ0ZWQudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4udWkudWkuaW52ZXJ0ZWQudGFibGUgPiB0ciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGludmVydGVkSGVhZGVyQmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBAaW52ZXJ0ZWRIZWFkZXJCb3JkZXJDb2xvcjtcbiAgY29sb3I6IEBpbnZlcnRlZEhlYWRlckNvbG9yO1xufVxuLnVpLmludmVydGVkLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuLnVpLmludmVydGVkLnRhYmxlID4gdHIgPiB0ZCB7XG4gIGJvcmRlci1jb2xvcjogQGludmVydGVkQ2VsbEJvcmRlckNvbG9yO1xufVxuXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIuZGlzYWJsZWQgdGQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIgdGQuZGlzYWJsZWQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIuZGlzYWJsZWQ6aG92ZXIgdGQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHI6aG92ZXIgdGQuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6IEBpbnZlcnRlZERpc2FibGVkVGV4dENvbG9yO1xufVxuLnVpLmludmVydGVkLnRhYmxlIHRyIHRkLmRpc2FibGVkOm5vdChbY2xhc3M9XCJkaXNhYmxlZFwiXSksXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIuZGlzYWJsZWQ6bm90KFtjbGFzcz1cImRpc2FibGVkXCJdKSB0ZCxcbi51aS5pbnZlcnRlZC50YWJsZSB0ci5kaXNhYmxlZCB0ZFtjbGFzc106bm90KC5kaXNhYmxlZCksXG4udWkuaW52ZXJ0ZWQudGFibGUgdHI6aG92ZXIgdGQuZGlzYWJsZWQ6bm90KFtjbGFzcz1cImRpc2FibGVkXCJdKSB7XG4gIGNvbG9yOiBAZGlzYWJsZWRUZXh0Q29sb3I7XG59XG4vKiBEZWZpbml0aW9uICovXG4udWkuaW52ZXJ0ZWQuZGVmaW5pdGlvbi50YWJsZSA+IHRmb290Om5vdCguZnVsbC13aWR0aCkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuLnVpLmludmVydGVkLmRlZmluaXRpb24udGFibGUgPiB0aGVhZDpub3QoLmZ1bGwtd2lkdGgpID4gdHIgPiB0aDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQ6IEBkZWZpbml0aW9uUGFnZUJhY2tncm91bmQ7XG59XG4udWkuaW52ZXJ0ZWQuZGVmaW5pdGlvbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbi51aS5pbnZlcnRlZC5kZWZpbml0aW9uLnRhYmxlID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZERlZmluaXRpb25Db2x1bW5CYWNrZ3JvdW5kO1xuICBjb2xvcjogQGludmVydGVkRGVmaW5pdGlvbkNvbHVtbkNvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBDb2xsYXBzaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29sbGFwc2luZy50YWJsZSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJhc2ljLnRhYmxlIHtcbiAgYmFja2dyb3VuZDogQGJhc2ljVGFibGVCYWNrZ3JvdW5kO1xuICBib3JkZXI6IEBiYXNpY1RhYmxlQm9yZGVyO1xuICBib3gtc2hhZG93OiBAYmFzaWNCb3hTaGFkb3c7XG59XG4udWkuYmFzaWMudGFibGUgPiB0aGVhZCxcbi51aS5iYXNpYy50YWJsZSA+IHRmb290IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi51aS5iYXNpYy50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aS5iYXNpYy50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aS5iYXNpYy50YWJsZSA+IHRmb290ID4gdHIgPiB0aCxcbi51aS5iYXNpYy50YWJsZSA+IHRyID4gdGgge1xuICBiYWNrZ3JvdW5kOiBAYmFzaWNUYWJsZUhlYWRlckJhY2tncm91bmQ7XG4gIGJvcmRlci1sZWZ0OiBAYmFzaWNUYWJsZUhlYWRlckRpdmlkZXI7XG59XG4udWkuYmFzaWMudGFibGUgPiB0Ym9keSA+IHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogQGJhc2ljVGFibGVDZWxsQm9yZGVyO1xufVxuLnVpLmJhc2ljLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuLnVpLmJhc2ljLnRhYmxlID4gdHIgPiB0ZCB7XG4gIGJhY2tncm91bmQ6IEBiYXNpY1RhYmxlQ2VsbEJhY2tncm91bmQ7XG59XG4udWkuYmFzaWMuc3RyaXBlZC50YWJsZSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKDJuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBiYXNpY1RhYmxlU3RyaXBlZEJhY2tncm91bmQ7XG59XG5cbi8qIFZlcnkgQmFzaWMgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRyID4gdGgsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGhlYWQgPiB0ciA+IHRoLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRib2R5ID4gdHIgPiB0aCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0Zm9vdCA+IHRyID4gdGgsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdHIgPiB0ZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0Ym9keSA+IHRyID4gdGQge1xuICBwYWRkaW5nOiBAYmFzaWNUYWJsZUNlbGxQYWRkaW5nO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0Zm9vdCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRib2R5ID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRmb290ID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpID4gdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ2VsbGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VsbGVkLnRhYmxlID4gdHIgPiB0aCxcbi51aS5jZWxsZWQudGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4udWkuY2VsbGVkLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLFxuLnVpLmNlbGxlZC50YWJsZSA+IHRmb290ID4gdHIgPiB0aCxcbi51aS5jZWxsZWQudGFibGUgPiB0ciA+IHRkLFxuLnVpLmNlbGxlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIGJvcmRlci1sZWZ0OiBAY2VsbEJvcmRlcjtcbn1cbi51aS5pbnZlcnRlZC5jZWxsZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4udWkuaW52ZXJ0ZWQuY2VsbGVkLnRhYmxlID4gdHIgPiB0ZCB7XG4gIGJvcmRlci1sZWZ0OiBAaW52ZXJ0ZWRDZWxsQm9yZGVyO1xufVxuLnVpLmNlbGxlZC50YWJsZSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4udWkuY2VsbGVkLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbi51aS5jZWxsZWQudGFibGUgPiB0Zm9vdCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4udWkuY2VsbGVkLnRhYmxlID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbi51aS5jZWxsZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWRkZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wYWRkZWQudGFibGUgPiB0ciA+IHRoLFxuLnVpLnBhZGRlZC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aS5wYWRkZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4udWkucGFkZGVkLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgcGFkZGluZy1sZWZ0OiBAcGFkZGVkSG9yaXpvbnRhbFBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6IEBwYWRkZWRIb3Jpem9udGFsUGFkZGluZztcbn1cbi51aS5wYWRkZWQudGFibGUgPiB0ciA+IHRoLFxuLnVpLnBhZGRlZC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aS5wYWRkZWQudGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4udWkucGFkZGVkLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLFxuLnVpLnBhZGRlZC50YWJsZSA+IHRyID4gdGQsXG4udWkucGFkZGVkLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgcGFkZGluZzogQHBhZGRlZFZlcnRpY2FsUGFkZGluZyBAcGFkZGVkSG9yaXpvbnRhbFBhZGRpbmc7XG59XG5cbi8qIFZlcnkgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS50YWJsZSA+IHRyID4gdGgsXG4udWlbY2xhc3MqPVwidmVyeSBwYWRkZWRcIl0udGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4udWlbY2xhc3MqPVwidmVyeSBwYWRkZWRcIl0udGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4udWlbY2xhc3MqPVwidmVyeSBwYWRkZWRcIl0udGFibGUgPiB0Zm9vdCA+IHRyID4gdGgge1xuICBwYWRkaW5nLWxlZnQ6IEB2ZXJ5UGFkZGVkSG9yaXpvbnRhbFBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6IEB2ZXJ5UGFkZGVkSG9yaXpvbnRhbFBhZGRpbmc7XG59XG4udWlbY2xhc3MqPVwidmVyeSBwYWRkZWRcIl0udGFibGUgPiB0ciA+IHRkLFxuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgcGFkZGluZzogQHZlcnlQYWRkZWRWZXJ0aWNhbFBhZGRpbmcgQHZlcnlQYWRkZWRIb3Jpem9udGFsUGFkZGluZztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb21wYWN0XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tcGFjdC50YWJsZSA+IHRyID4gdGgsXG4udWkuY29tcGFjdC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aS5jb21wYWN0LnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLFxuLnVpLmNvbXBhY3QudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgge1xuICBwYWRkaW5nLWxlZnQ6IEBjb21wYWN0SG9yaXpvbnRhbFBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6IEBjb21wYWN0SG9yaXpvbnRhbFBhZGRpbmc7XG59XG4udWkuY29tcGFjdC50YWJsZSA+IHRyID4gdGQsXG4udWkuY29tcGFjdC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIHBhZGRpbmc6IEBjb21wYWN0VmVydGljYWxQYWRkaW5nIEBjb21wYWN0SG9yaXpvbnRhbFBhZGRpbmc7XG59XG5cbi8qIFZlcnkgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0udGFibGUgPiB0ciA+IHRoLFxuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0udGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgcGFkZGluZy1sZWZ0OiBAdmVyeUNvbXBhY3RIb3Jpem9udGFsUGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogQHZlcnlDb21wYWN0SG9yaXpvbnRhbFBhZGRpbmc7XG59XG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLnRhYmxlID4gdHIgPiB0ZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0udGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICBwYWRkaW5nOiBAdmVyeUNvbXBhY3RWZXJ0aWNhbFBhZGRpbmcgQHZlcnlDb21wYWN0SG9yaXpvbnRhbFBhZGRpbmc7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTbWFsbCAqL1xuLnVpLnNtYWxsLnRhYmxlIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG5cbi8qIFN0YW5kYXJkICovXG4udWkudGFibGUge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG5cbi8qIExhcmdlICovXG4udWkubGFyZ2UudGFibGUge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gQWRcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxMyBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ3ZpZXcnO1xuQGVsZW1lbnQgOiAnYWQnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBBZHZlcnRpc2VtZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IEBvdmVyZmxvdztcbiAgbWFyZ2luOiBAbWFyZ2luO1xufVxuXG4udWkuYWQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW46IDA7XG59XG5cbi51aS5hZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4udWkuYWQgaWZyYW1lIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29tbW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMZWFkZXJib2FyZCAqL1xuLnVpLmxlYWRlcmJvYXJkLmFkIHtcbiAgd2lkdGg6IDcyOHB4O1xuICBoZWlnaHQ6IDkwcHg7XG59XG5cbi8qIE1lZGl1bSBSZWN0YW5nbGUgKi9cbi51aVtjbGFzcyo9XCJtZWRpdW0gcmVjdGFuZ2xlXCJdLmFkIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBoZWlnaHQ6IDI1MHB4O1xufVxuXG4vKiBMYXJnZSBSZWN0YW5nbGUgKi9cbi51aVtjbGFzcyo9XCJsYXJnZSByZWN0YW5nbGVcIl0uYWQge1xuICB3aWR0aDogMzM2cHg7XG4gIGhlaWdodDogMjgwcHg7XG59XG4vKiBIYWxmIFBhZ2UgKi9cbi51aVtjbGFzcyo9XCJoYWxmIHBhZ2VcIl0uYWQge1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogNjAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3F1YXJlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTcXVhcmUgKi9cbi51aS5zcXVhcmUuYWQge1xuICB3aWR0aDogMjUwcHg7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbi8qIFNtYWxsIFNxdWFyZSAqL1xuLnVpW2NsYXNzKj1cInNtYWxsIHNxdWFyZVwiXS5hZCB7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiAyMDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlY3RhbmdsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU21hbGwgUmVjdGFuZ2xlICovXG4udWlbY2xhc3MqPVwic21hbGwgcmVjdGFuZ2xlXCJdLmFkIHtcbiAgd2lkdGg6IDE4MHB4O1xuICBoZWlnaHQ6IDE1MHB4O1xufVxuXG4vKiBWZXJ0aWNhbCBSZWN0YW5nbGUgKi9cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbCByZWN0YW5nbGVcIl0uYWQge1xuICB3aWR0aDogMjQwcHg7XG4gIGhlaWdodDogNDAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9uLmFkIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDkwcHg7XG59XG4udWlbY2xhc3MqPVwic3F1YXJlIGJ1dHRvblwiXS5hZCB7XG4gIHdpZHRoOiAxMjVweDtcbiAgaGVpZ2h0OiAxMjVweDtcbn1cbi51aVtjbGFzcyo9XCJzbWFsbCBidXR0b25cIl0uYWQge1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogNjBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU2t5c2NyYXBlcnNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNreXNjcmFwZXIgKi9cbi51aS5za3lzY3JhcGVyLmFkIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDYwMHB4O1xufVxuXG4vKiBXaWRlIFNreXNjcmFwZXIgKi9cbi51aVtjbGFzcyo9XCJ3aWRlIHNreXNjcmFwZXJcIl0uYWQge1xuICB3aWR0aDogMTYwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQmFubmVyc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQmFubmVyICovXG4udWkuYmFubmVyLmFkIHtcbiAgd2lkdGg6IDQ2OHB4O1xuICBoZWlnaHQ6IDYwcHg7XG59XG5cbi8qIFZlcnRpY2FsIEJhbm5lciAqL1xuLnVpW2NsYXNzKj1cInZlcnRpY2FsIGJhbm5lclwiXS5hZCB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiAyNDBweDtcbn1cblxuLyogVG9wIEJhbm5lciAqL1xuLnVpW2NsYXNzKj1cInRvcCBiYW5uZXJcIl0uYWQge1xuICB3aWR0aDogOTMwcHg7XG4gIGhlaWdodDogMTgwcHg7XG59XG5cbi8qIEhhbGYgQmFubmVyICovXG4udWlbY2xhc3MqPVwiaGFsZiBiYW5uZXJcIl0uYWQge1xuICB3aWR0aDogMjM0cHg7XG4gIGhlaWdodDogNjBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEJvYXJkc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTGVhZGVyYm9hcmQgKi9cbi51aVtjbGFzcyo9XCJsYXJnZSBsZWFkZXJib2FyZFwiXS5hZCB7XG4gIHdpZHRoOiA5NzBweDtcbiAgaGVpZ2h0OiA5MHB4O1xufVxuXG4vKiBCaWxsYm9hcmQgKi9cbi51aS5iaWxsYm9hcmQuYWQge1xuICB3aWR0aDogOTcwcHg7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBQYW5vcmFtYVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUGFub3JhbWEgKi9cbi51aS5wYW5vcmFtYS5hZCB7XG4gIHdpZHRoOiA5ODBweDtcbiAgaGVpZ2h0OiAxMjBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBOZXRib2FyZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTmV0Ym9hcmQgKi9cbi51aS5uZXRib2FyZC5hZCB7XG4gIHdpZHRoOiA1ODBweDtcbiAgaGVpZ2h0OiA0MDBweDtcbn1cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTW9iaWxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMYXJnZSBNb2JpbGUgQmFubmVyICovXG4udWlbY2xhc3MqPVwibGFyZ2UgbW9iaWxlIGJhbm5lclwiXS5hZCB7XG4gIHdpZHRoOiAzMjBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbn1cblxuLyogTW9iaWxlIExlYWRlcmJvYXJkICovXG4udWlbY2xhc3MqPVwibW9iaWxlIGxlYWRlcmJvYXJkXCJdLmFkIHtcbiAgd2lkdGg6IDMyMHB4O1xuICBoZWlnaHQ6IDUwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIE1vYmlsZSBTaXplcyAqL1xuLnVpLm1vYmlsZS5hZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS5tb2JpbGUuYWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmNlbnRlcmVkLmFkIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnVpLnRlc3QuYWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IEB0ZXN0QmFja2dyb3VuZDtcbn1cbi51aS50ZXN0LmFkOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcblxuICBjb250ZW50OiBAdGVzdFRleHQ7XG4gIGNvbG9yOiBAdGVzdENvbG9yO1xuICBmb250LXNpemU6IEB0ZXN0Rm9udFNpemU7XG4gIGZvbnQtd2VpZ2h0OiBAdGVzdEZvbnRXZWlnaHQ7XG59XG4udWkubW9iaWxlLnRlc3QuYWQ6YWZ0ZXIge1xuICBmb250LXNpemU6IEB0ZXN0TW9iaWxlRm9udFNpemU7XG59XG4udWkudGVzdC5hZFtkYXRhLXRleHRdOmFmdGVyIHtcbiAgY29udGVudDogYXR0cihkYXRhLXRleHQpO1xufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBDYXJkXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAndmlldyc7XG5AZWxlbWVudCA6ICdjYXJkJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIENhcmRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogQGRpc3BsYXk7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgd2lkdGg6IEB3aWR0aDtcbiAgbWluLWhlaWdodDogQG1pbkhlaWdodDtcbiAgYmFja2dyb3VuZDogQGJhY2tncm91bmQ7XG4gIHBhZGRpbmc6IEBwYWRkaW5nO1xuXG4gIGJvcmRlcjogQGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbiAgYm94LXNoYWRvdzogQGJveFNoYWRvdztcbiAgdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gIHotaW5kZXg6IEB6SW5kZXg7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbi51aS5jYXJkIHtcbiAgbWFyZ2luOiBAbWFyZ2luO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCBhLFxuLnVpLmNhcmQgYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnVpLmNhcmQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnVpLmNhcmQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIENhcmRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMge1xuICBkaXNwbGF5OiBAZ3JvdXBEaXNwbGF5O1xuICBtYXJnaW46IEBncm91cE1hcmdpbjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCB7XG4gIGRpc3BsYXk6IEBncm91cENhcmREaXNwbGF5O1xuICBtYXJnaW46IEBncm91cENhcmRNYXJnaW47XG4gIGZsb2F0OiBAZ3JvdXBDYXJkRmxvYXQ7XG59XG5cbi8qIENsZWFyaW5nICovXG4udWkuY2FyZHM6YWZ0ZXIsXG4udWkuY2FyZDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuXG4vKiBDb25zZWN1dGl2ZSBDYXJkIEdyb3VwcyBQcmVzZXJ2ZSBSb3cgU3BhY2luZyAqL1xuLnVpLmNhcmRzIH4gLnVpLmNhcmRzIHtcbiAgbWFyZ2luLXRvcDogQGNvbnNlY3V0aXZlR3JvdXBEaXN0YW5jZTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFJvdW5kZWQgRWRnZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gOmZpcnN0LWNoaWxkLFxuLnVpLmNhcmQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzIEBib3JkZXJSYWRpdXMgMCAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiA6bGFzdC1jaGlsZCxcbi51aS5jYXJkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgQGJvcmRlclJhZGl1cyBAYm9yZGVyUmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gOm9ubHktY2hpbGQsXG4udWkuY2FyZCA+IDpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEltYWdlc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuaW1hZ2UsXG4udWkuY2FyZCA+IC5pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBwYWRkaW5nOiBAaW1hZ2VQYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiBAaW1hZ2VCYWNrZ3JvdW5kO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuaW1hZ2UgPiBpbWcsXG4udWkuY2FyZCA+IC5pbWFnZSA+IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuaW1hZ2U6bm90KC51aSkgPiBpbWcsXG4udWkuY2FyZCA+IC5pbWFnZTpub3QoLnVpKSA+IGltZyB7XG4gIGJvcmRlcjogQGltYWdlQm9yZGVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQsXG4udWkuY2FyZCA+IC5jb250ZW50IHtcbiAgZmxleC1ncm93OiAxO1xuICBib3JkZXI6IEBjb250ZW50Qm9yZGVyO1xuICBib3JkZXItdG9wOiBAY29udGVudERpdmlkZXI7XG4gIGJhY2tncm91bmQ6IEBjb250ZW50QmFja2dyb3VuZDtcbiAgbWFyZ2luOiBAY29udGVudE1hcmdpbjtcbiAgcGFkZGluZzogQGNvbnRlbnRQYWRkaW5nO1xuICBib3gtc2hhZG93OiBAY29udGVudEJveFNoYWRvdztcbiAgZm9udC1zaXplOiBAY29udGVudEZvbnRTaXplO1xuICBib3JkZXItcmFkaXVzOiBAY29udGVudEJvcmRlclJhZGl1cztcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudDphZnRlcixcbi51aS5jYXJkID4gLmNvbnRlbnQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyAnO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyLFxuLnVpLmNhcmQgPiAuY29udGVudCA+IC5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBAaGVhZGVyTWFyZ2luO1xuICBmb250LWZhbWlseTogQGhlYWRlckZvbnQ7XG4gIGNvbG9yOiBAaGVhZGVyQ29sb3I7XG59XG5cbi8qIERlZmF1bHQgSGVhZGVyIFNpemUgKi9cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyOm5vdCgudWkpLFxuLnVpLmNhcmQgPiAuY29udGVudCA+IC5oZWFkZXI6bm90KC51aSkge1xuICBmb250LXdlaWdodDogQGhlYWRlckZvbnRXZWlnaHQ7XG4gIGZvbnQtc2l6ZTogQGhlYWRlckZvbnRTaXplO1xuICBtYXJnaW4tdG9wOiBAaGVhZGVyTGluZUhlaWdodE9mZnNldDtcbiAgbGluZS1oZWlnaHQ6IEBoZWFkZXJMaW5lSGVpZ2h0O1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLm1ldGEgKyAuZGVzY3JpcHRpb24sXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlciArIC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAubWV0YSArIC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyICsgLmRlc2NyaXB0aW9uICB7XG4gIG1hcmdpbi10b3A6IEBkZXNjcmlwdGlvbkRpc3RhbmNlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS1cbiBGbG9hdGVkIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0sXG4udWkuY2FyZCBbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4udWkuY2FyZHMgPiAuY2FyZCBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSxcbi51aS5jYXJkIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkICBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLFxuLnVpLmNhcmQgW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWkuY2FyZHMgPiAuY2FyZCBbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0sXG4udWkuY2FyZCBbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udWkuY2FyZHMgPiAuY2FyZCBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSxcbi51aS5jYXJkIFtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICBDb250ZW50IEltYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCAuY29udGVudCBpbWcsXG4udWkuY2FyZCAuY29udGVudCBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBAY29udGVudEltYWdlVmVydGljYWxBbGlnbjtcbiAgd2lkdGg6IEBjb250ZW50SW1hZ2VXaWR0aDtcbn1cbi51aS5jYXJkcyA+IC5jYXJkIGltZy5hdmF0YXIsXG4udWkuY2FyZHMgPiAuY2FyZCAuYXZhdGFyIGltZyxcbi51aS5jYXJkIGltZy5hdmF0YXIsXG4udWkuY2FyZCAuYXZhdGFyIGltZyB7XG4gIHdpZHRoOiBAYXZhdGFyU2l6ZTtcbiAgaGVpZ2h0OiBAYXZhdGFyU2l6ZTtcbiAgYm9yZGVyLXJhZGl1czogQGF2YXRhckJvcmRlclJhZGl1cztcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBEZXNjcmlwdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6IEBkZXNjcmlwdGlvbkNvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUGFyYWdyYXBoXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IHAsXG4udWkuY2FyZCA+IC5jb250ZW50IHAge1xuICBtYXJnaW46IDAgMCBAcGFyYWdyYXBoRGlzdGFuY2U7XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IHA6bGFzdC1jaGlsZCxcbi51aS5jYXJkID4gLmNvbnRlbnQgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWV0YVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEsXG4udWkuY2FyZCAubWV0YSB7XG4gIGZvbnQtc2l6ZTogQG1ldGFGb250U2l6ZTtcbiAgY29sb3I6IEBtZXRhQ29sb3I7XG59XG4udWkuY2FyZHMgPiAuY2FyZCAubWV0YSAqLFxuLnVpLmNhcmQgLm1ldGEgKiB7XG4gIG1hcmdpbi1yaWdodDogQG1ldGFTcGFjaW5nO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEgOmxhc3QtY2hpbGQsXG4udWkuY2FyZCAubWV0YSA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEgW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0sXG4udWkuY2FyZCAubWV0YSBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IEBtZXRhU3BhY2luZztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEdlbmVyaWMgKi9cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKSxcbi51aS5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKSB7XG4gIGNvbG9yOiBAY29udGVudExpbmtDb2xvcjtcbiAgdHJhbnNpdGlvbjogQGNvbnRlbnRMaW5rVHJhbnNpdGlvbjtcbn1cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKTpob3Zlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiBAY29udGVudExpbmtIb3ZlckNvbG9yO1xufVxuXG4vKiBIZWFkZXIgKi9cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgPiBhLmhlYWRlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiBhLmhlYWRlciB7XG4gIGNvbG9yOiBAaGVhZGVyTGlua0NvbG9yO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IGEuaGVhZGVyOmhvdmVyLFxuLnVpLmNhcmQgPiAuY29udGVudCA+IGEuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6IEBoZWFkZXJMaW5rSG92ZXJDb2xvcjtcbn1cblxuLyogTWV0YSAqL1xuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEgPiBhOm5vdCgudWkpLFxuLnVpLmNhcmQgLm1ldGEgPiBhOm5vdCgudWkpIHtcbiAgY29sb3I6IEBtZXRhTGlua0NvbG9yO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEgPiBhOm5vdCgudWkpOmhvdmVyLFxuLnVpLmNhcmQgLm1ldGEgPiBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6IEBtZXRhTGlua0hvdmVyQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQnV0dG9uc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuYnV0dG9ucyxcbi51aS5jYXJkID4gLmJ1dHRvbnMsXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5idXR0b24sXG4udWkuY2FyZCA+IC5idXR0b24ge1xuICBtYXJnaW46IEBidXR0b25NYXJnaW47XG4gIHdpZHRoOiBAYnV0dG9uV2lkdGg7XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLUBib3JkZXJXaWR0aDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBEaW1tZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkIC5kaW1tZXIsXG4udWkuY2FyZCAuZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGRpbW1lckNvbG9yO1xuICB6LWluZGV4OiBAZGltbWVyWkluZGV4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIExhYmVsc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyotLS0tLVN0YXItLS0tLSAqL1xuXG4vKiBJY29uICovXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IC5zdGFyLmljb24sXG4udWkuY2FyZCA+IC5jb250ZW50IC5zdGFyLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IEBhY3Rpb25PcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBAYWN0aW9uVHJhbnNpdGlvbjtcbn1cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgLnN0YXIuaWNvbjpob3Zlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgLnN0YXIuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IEBhY3Rpb25Ib3Zlck9wYWNpdHk7XG4gIGNvbG9yOiBAc3RhckNvbG9yO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAuYWN0aXZlLnN0YXIuaWNvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgLmFjdGl2ZS5zdGFyLmljb24ge1xuICBjb2xvcjogQHN0YXJBY3RpdmVDb2xvcjtcbn1cblxuLyotLS0tLUxpa2UtLS0tLSAqL1xuXG4vKiBJY29uICovXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IC5saWtlLmljb24sXG4udWkuY2FyZCA+IC5jb250ZW50IC5saWtlLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IEBhY3Rpb25PcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBAYWN0aW9uVHJhbnNpdGlvbjtcbn1cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgLmxpa2UuaWNvbjpob3Zlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgLmxpa2UuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IEBhY3Rpb25Ib3Zlck9wYWNpdHk7XG4gIGNvbG9yOiBAbGlrZUNvbG9yO1xufVxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAuYWN0aXZlLmxpa2UuaWNvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgLmFjdGl2ZS5saWtlLmljb24ge1xuICBjb2xvcjogQGxpa2VBY3RpdmVDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tXG4gIEV4dHJhIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEsXG4udWkuY2FyZCA+IC5leHRyYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICBmbGV4LWdyb3c6IDA7XG4gIGJvcmRlci10b3A6IEBleHRyYURpdmlkZXIgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IEBleHRyYVBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kOiBAZXh0cmFCYWNrZ3JvdW5kO1xuICB3aWR0aDogQGV4dHJhV2lkdGg7XG4gIG1hcmdpbjogQGV4dHJhTWFyZ2luO1xuICBwYWRkaW5nOiBAZXh0cmFQYWRkaW5nO1xuICB0b3A6IEBleHRyYVRvcDtcbiAgbGVmdDogQGV4dHJhTGVmdDtcbiAgY29sb3I6IEBleHRyYUNvbG9yO1xuICBib3gtc2hhZG93OiBAZXh0cmFCb3hTaGFkb3c7XG4gIHRyYW5zaXRpb246IEBleHRyYVRyYW5zaXRpb247XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IC5leHRyYSBhOm5vdCgudWkpLFxuLnVpLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKSB7XG4gIGNvbG9yOiBAZXh0cmFMaW5rQ29sb3I7XG59XG4udWkuY2FyZHMgPiAuY2FyZCA+IC5leHRyYSBhOm5vdCgudWkpOmhvdmVyLFxuLnVpLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiBAZXh0cmFMaW5rSG92ZXJDb2xvcjtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEhvcml6b250YWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhvcml6b250YWwuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkLmhvcml6b250YWwge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1pbi13aWR0aDogQGhvcml6b250YWxNaW5XaWR0aDtcbiAgd2lkdGg6IEBob3Jpem9udGFsV2lkdGg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnVpLmhvcml6b250YWwuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZSxcbi51aS5jYXJkLmhvcml6b250YWwgPiAuaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiBAZGVmYXVsdEJvcmRlclJhZGl1cyAwIDAgQGRlZmF1bHRCb3JkZXJSYWRpdXM7XG4gIHdpZHRoOiBAaG9yaXpvbnRhbEltYWdlV2lkdGg7XG59XG5cbi51aS5ob3Jpem9udGFsLmNhcmRzID4gLmNhcmQgPiAuaW1hZ2UgPiBpbWcsXG4udWkuY2FyZC5ob3Jpem9udGFsID4gLmltYWdlID4gaW1nIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiBAZGVmYXVsdEJvcmRlclJhZGl1cyAwIDAgQGRlZmF1bHRCb3JkZXJSYWRpdXM7XG59XG4udWkuaG9yaXpvbnRhbC5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQsIC51aS5ob3Jpem9udGFsLmNhcmQgPiAuY29udGVudCB7XG4gIGZsZXgtYmFzaXM6IDFweDtcbn1cbi51aS5ob3Jpem9udGFsLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEsIC51aS5ob3Jpem9udGFsLmNhcmQgPiAuZXh0cmEge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBSYWlzZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJhaXNlZC5jYXJkcyA+IC5jYXJkLFxuLnVpLnJhaXNlZC5jYXJkIHtcbiAgYm94LXNoYWRvdzogQHJhaXNlZFNoYWRvdztcbn1cbi51aS5yYWlzZWQuY2FyZHMgYS5jYXJkOmhvdmVyLFxuLnVpLmxpbmsuY2FyZHMgLnJhaXNlZC5jYXJkOmhvdmVyLFxuYS51aS5yYWlzZWQuY2FyZDpob3Zlcixcbi51aS5saW5rLnJhaXNlZC5jYXJkOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogQHJhaXNlZFNoYWRvd0hvdmVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDZW50ZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VudGVyZWQuY2FyZHMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi51aS5jZW50ZXJlZC5jYXJkIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5jYXJkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTk5OXB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGlua1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgYS5jYXJkLFxuLnVpLmxpbmsuY2FyZHMgLmNhcmQsXG5hLnVpLmNhcmQsXG4udWkubGluay5jYXJkIHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG5cbi51aS5jYXJkcyBhLmNhcmQ6aG92ZXIsXG4udWkubGluay5jYXJkcyAuY2FyZDpub3QoLmljb24pOmhvdmVyLFxuYS51aS5jYXJkOmhvdmVyLFxuLnVpLmxpbmsuY2FyZDpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogQGxpbmtIb3ZlclpJbmRleDtcbiAgYmFja2dyb3VuZDogQGxpbmtIb3ZlckJhY2tncm91bmQ7XG4gIGJvcmRlcjogQGxpbmtIb3ZlckJvcmRlcjtcbiAgYm94LXNoYWRvdzogQGxpbmtIb3ZlckJveFNoYWRvdztcbiAgdHJhbnNmb3JtOiBAbGlua0hvdmVyVHJhbnNmb3JtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuZWFjaChAY29sb3JzLHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksJ0AnLCcnKTtcbiAgQGM6IEBjb2xvcnNbQEBjb2xvcl1bY29sb3JdO1xuICBAaDogQGNvbG9yc1tAQGNvbG9yXVtob3Zlcl07XG4gIEBsOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0XTtcbiAgQGxoOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0SG92ZXJdO1xuXG4gIC51aS5Ae2NvbG9yfS5jYXJkcyA+IC5jYXJkLFxuICAudWkuY2FyZHMgPiAuQHtjb2xvcn0uY2FyZCxcbiAgLnVpLkB7Y29sb3J9LmNhcmQge1xuICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgICBAYm9yZGVyU2hhZG93LFxuICAgICAgICAgICAgMCBAY29sb3JlZFNoYWRvd0Rpc3RhbmNlIDAgMCBAYyxcbiAgICAgICAgICAgIEBzaGFkb3dCb3hTaGFkb3dcbiAgO1xuICAgICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgICBAYm9yZGVyU2hhZG93LFxuICAgICAgICAgICAgMCBAY29sb3JlZFNoYWRvd0Rpc3RhbmNlIDAgMCBAaCxcbiAgICAgICAgICAgIEBzaGFkb3dIb3ZlckJveFNoYWRvd1xuICAgIDtcbiAgICB9XG4gIH1cbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LmNhcmRzID4gLmNhcmQsXG4gIC51aS5pbnZlcnRlZC5jYXJkcyA+IC5Ae2NvbG9yfS5jYXJkLFxuICAudWkuaW52ZXJ0ZWQuQHtjb2xvcn0uY2FyZCB7XG4gICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAgIDAgQHNoYWRvd0Rpc3RhbmNlIDNweCAwIEBzb2xpZFdoaXRlQm9yZGVyQ29sb3IsXG4gICAgICAgICAgICAwIEBjb2xvcmVkU2hhZG93RGlzdGFuY2UgMCAwIEBsLFxuICAgICAgICAgICAgMCAwIDAgQGJvcmRlcldpZHRoIEBzb2xpZFdoaXRlQm9yZGVyQ29sb3JcbiAgO1xuICAgICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgICAwIEBzaGFkb3dEaXN0YW5jZSAzcHggMCBAc29saWRXaGl0ZUJvcmRlckNvbG9yLFxuICAgICAgICAgICAgMCBAY29sb3JlZFNoYWRvd0Rpc3RhbmNlIDAgMCBAbGgsXG4gICAgICAgICAgICAwIDAgMCBAYm9yZGVyV2lkdGggQHNvbGlkV2hpdGVCb3JkZXJDb2xvclxuICAgIDtcbiAgICB9XG4gIH1cbn0pXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIENhcmQgQ291bnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5vbmUuY2FyZHMge1xuICBtYXJnaW4tbGVmdDogQG9uZUNhcmRPZmZzZXQ7XG4gIG1hcmdpbi1yaWdodDogQG9uZUNhcmRPZmZzZXQ7XG59XG4udWkub25lLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogQG9uZUNhcmQ7XG59XG5cbi51aS50d28uY2FyZHMge1xuICBtYXJnaW4tbGVmdDogQHR3b0NhcmRPZmZzZXQ7XG4gIG1hcmdpbi1yaWdodDogQHR3b0NhcmRPZmZzZXQ7XG59XG4udWkudHdvLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogQHR3b0NhcmQ7XG4gIG1hcmdpbi1sZWZ0OiBAdHdvQ2FyZFNwYWNpbmc7XG4gIG1hcmdpbi1yaWdodDogQHR3b0NhcmRTcGFjaW5nO1xufVxuXG4udWkudGhyZWUuY2FyZHMge1xuICBtYXJnaW4tbGVmdDogQHRocmVlQ2FyZE9mZnNldDtcbiAgbWFyZ2luLXJpZ2h0OiBAdGhyZWVDYXJkT2Zmc2V0O1xufVxuLnVpLnRocmVlLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogQHRocmVlQ2FyZDtcbiAgbWFyZ2luLWxlZnQ6IEB0aHJlZUNhcmRTcGFjaW5nO1xuICBtYXJnaW4tcmlnaHQ6IEB0aHJlZUNhcmRTcGFjaW5nO1xufVxuXG4udWkuZm91ci5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiBAZm91ckNhcmRPZmZzZXQ7XG4gIG1hcmdpbi1yaWdodDogQGZvdXJDYXJkT2Zmc2V0O1xufVxuLnVpLmZvdXIuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBAZm91ckNhcmQ7XG4gIG1hcmdpbi1sZWZ0OiBAZm91ckNhcmRTcGFjaW5nO1xuICBtYXJnaW4tcmlnaHQ6IEBmb3VyQ2FyZFNwYWNpbmc7XG59XG5cbi51aS5maXZlLmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IEBmaXZlQ2FyZE9mZnNldDtcbiAgbWFyZ2luLXJpZ2h0OiBAZml2ZUNhcmRPZmZzZXQ7XG59XG4udWkuZml2ZS5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IEBmaXZlQ2FyZDtcbiAgbWFyZ2luLWxlZnQ6IEBmaXZlQ2FyZFNwYWNpbmc7XG4gIG1hcmdpbi1yaWdodDogQGZpdmVDYXJkU3BhY2luZztcbn1cblxuLnVpLnNpeC5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiBAc2l4Q2FyZE9mZnNldDtcbiAgbWFyZ2luLXJpZ2h0OiBAc2l4Q2FyZE9mZnNldDtcbn1cbi51aS5zaXguY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBAc2l4Q2FyZDtcbiAgbWFyZ2luLWxlZnQ6IEBzaXhDYXJkU3BhY2luZztcbiAgbWFyZ2luLXJpZ2h0OiBAc2l4Q2FyZFNwYWNpbmc7XG59XG5cbi51aS5zZXZlbi5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiBAc2V2ZW5DYXJkT2Zmc2V0O1xuICBtYXJnaW4tcmlnaHQ6IEBzZXZlbkNhcmRPZmZzZXQ7XG59XG4udWkuc2V2ZW4uY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBAc2V2ZW5DYXJkO1xuICBtYXJnaW4tbGVmdDogQHNldmVuQ2FyZFNwYWNpbmc7XG4gIG1hcmdpbi1yaWdodDogQHNldmVuQ2FyZFNwYWNpbmc7XG59XG5cbi51aS5laWdodC5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiBAZWlnaHRDYXJkT2Zmc2V0O1xuICBtYXJnaW4tcmlnaHQ6IEBlaWdodENhcmRPZmZzZXQ7XG59XG4udWkuZWlnaHQuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBAZWlnaHRDYXJkO1xuICBtYXJnaW4tbGVmdDogQGVpZ2h0Q2FyZFNwYWNpbmc7XG4gIG1hcmdpbi1yaWdodDogQGVpZ2h0Q2FyZFNwYWNpbmc7XG4gIGZvbnQtc2l6ZTogMTFweDtcbn1cblxuLnVpLm5pbmUuY2FyZHMge1xuICBtYXJnaW4tbGVmdDogQG5pbmVDYXJkT2Zmc2V0O1xuICBtYXJnaW4tcmlnaHQ6IEBuaW5lQ2FyZE9mZnNldDtcbn1cbi51aS5uaW5lLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogQG5pbmVDYXJkO1xuICBtYXJnaW4tbGVmdDogQG5pbmVDYXJkU3BhY2luZztcbiAgbWFyZ2luLXJpZ2h0OiBAbmluZUNhcmRTcGFjaW5nO1xuICBmb250LXNpemU6IDEwcHg7XG59XG5cbi51aS50ZW4uY2FyZHMge1xuICBtYXJnaW4tbGVmdDogQHRlbkNhcmRPZmZzZXQ7XG4gIG1hcmdpbi1yaWdodDogQHRlbkNhcmRPZmZzZXQ7XG59XG4udWkudGVuLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogQHRlbkNhcmQ7XG4gIG1hcmdpbi1sZWZ0OiBAdGVuQ2FyZFNwYWNpbmc7XG4gIG1hcmdpbi1yaWdodDogQHRlbkNhcmRTcGFjaW5nO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRG91Ymxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTW9iaWxlIE9ubHkgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS50d28uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiBAb25lQ2FyZE9mZnNldDtcbiAgICBtYXJnaW4tcmlnaHQ6IEBvbmVDYXJkT2Zmc2V0O1xuICB9XG4gIC51aS50d28uZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IEBvbmVDYXJkO1xuICAgIG1hcmdpbi1sZWZ0OiBAb25lQ2FyZFNwYWNpbmc7XG4gICAgbWFyZ2luLXJpZ2h0OiBAb25lQ2FyZFNwYWNpbmc7XG4gIH1cbiAgLnVpLnRocmVlLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogQHR3b0NhcmRPZmZzZXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdHdvQ2FyZE9mZnNldDtcbiAgfVxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IEB0d29DYXJkO1xuICAgIG1hcmdpbi1sZWZ0OiBAdHdvQ2FyZFNwYWNpbmc7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdHdvQ2FyZFNwYWNpbmc7XG4gIH1cbiAgLnVpLmZvdXIuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiBAdHdvQ2FyZE9mZnNldDtcbiAgICBtYXJnaW4tcmlnaHQ6IEB0d29DYXJkT2Zmc2V0O1xuICB9XG4gIC51aS5mb3VyLmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBAdHdvQ2FyZDtcbiAgICBtYXJnaW4tbGVmdDogQHR3b0NhcmRTcGFjaW5nO1xuICAgIG1hcmdpbi1yaWdodDogQHR3b0NhcmRTcGFjaW5nO1xuICB9XG4gIC51aS5maXZlLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogQHR3b0NhcmRPZmZzZXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdHdvQ2FyZE9mZnNldDtcbiAgfVxuICAudWkuZml2ZS5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQHR3b0NhcmQ7XG4gICAgbWFyZ2luLWxlZnQ6IEB0d29DYXJkU3BhY2luZztcbiAgICBtYXJnaW4tcmlnaHQ6IEB0d29DYXJkU3BhY2luZztcbiAgfVxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogQHR3b0NhcmRPZmZzZXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdHdvQ2FyZE9mZnNldDtcbiAgfVxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBAdHdvQ2FyZDtcbiAgICBtYXJnaW4tbGVmdDogQHR3b0NhcmRTcGFjaW5nO1xuICAgIG1hcmdpbi1yaWdodDogQHR3b0NhcmRTcGFjaW5nO1xuICB9XG4gIC51aS5zZXZlbi5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IEB0aHJlZUNhcmRPZmZzZXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdGhyZWVDYXJkT2Zmc2V0O1xuICB9XG4gIC51aS5zZXZlbi5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQHRocmVlQ2FyZDtcbiAgICBtYXJnaW4tbGVmdDogQHRocmVlQ2FyZFNwYWNpbmc7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdGhyZWVDYXJkU3BhY2luZztcbiAgfVxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiBAdGhyZWVDYXJkT2Zmc2V0O1xuICAgIG1hcmdpbi1yaWdodDogQHRocmVlQ2FyZE9mZnNldDtcbiAgfVxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IEB0aHJlZUNhcmQ7XG4gICAgbWFyZ2luLWxlZnQ6IEB0aHJlZUNhcmRTcGFjaW5nO1xuICAgIG1hcmdpbi1yaWdodDogQHRocmVlQ2FyZFNwYWNpbmc7XG4gIH1cbiAgLnVpLm5pbmUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiBAdGhyZWVDYXJkT2Zmc2V0O1xuICAgIG1hcmdpbi1yaWdodDogQHRocmVlQ2FyZE9mZnNldDtcbiAgfVxuICAudWkubmluZS5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQHRocmVlQ2FyZDtcbiAgICBtYXJnaW4tbGVmdDogQHRocmVlQ2FyZFNwYWNpbmc7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdGhyZWVDYXJkU3BhY2luZztcbiAgfVxuICAudWkudGVuLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogQHRocmVlQ2FyZE9mZnNldDtcbiAgICBtYXJnaW4tcmlnaHQ6IEB0aHJlZUNhcmRPZmZzZXQ7XG4gIH1cbiAgLnVpLnRlbi5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQHRocmVlQ2FyZDtcbiAgICBtYXJnaW4tbGVmdDogQHRocmVlQ2FyZFNwYWNpbmc7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdGhyZWVDYXJkU3BhY2luZztcbiAgfVxufVxuXG4vKiBUYWJsZXQgT25seSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogQHRhYmxldEJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoIDogQGxhcmdlc3RUYWJsZXRTY3JlZW4pIHtcbiAgLnVpLnR3by5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IEBvbmVDYXJkT2Zmc2V0O1xuICAgIG1hcmdpbi1yaWdodDogQG9uZUNhcmRPZmZzZXQ7XG4gIH1cbiAgLnVpLnR3by5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQG9uZUNhcmQ7XG4gICAgbWFyZ2luLWxlZnQ6IEBvbmVDYXJkU3BhY2luZztcbiAgICBtYXJnaW4tcmlnaHQ6IEBvbmVDYXJkU3BhY2luZztcbiAgfVxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiBAdHdvQ2FyZE9mZnNldDtcbiAgICBtYXJnaW4tcmlnaHQ6IEB0d29DYXJkT2Zmc2V0O1xuICB9XG4gIC51aS50aHJlZS5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQHR3b0NhcmQ7XG4gICAgbWFyZ2luLWxlZnQ6IEB0d29DYXJkU3BhY2luZztcbiAgICBtYXJnaW4tcmlnaHQ6IEB0d29DYXJkU3BhY2luZztcbiAgfVxuICAudWkuZm91ci5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IEB0d29DYXJkT2Zmc2V0O1xuICAgIG1hcmdpbi1yaWdodDogQHR3b0NhcmRPZmZzZXQ7XG4gIH1cbiAgLnVpLmZvdXIuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IEB0d29DYXJkO1xuICAgIG1hcmdpbi1sZWZ0OiBAdHdvQ2FyZFNwYWNpbmc7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdHdvQ2FyZFNwYWNpbmc7XG4gIH1cbiAgLnVpLmZpdmUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiBAdGhyZWVDYXJkT2Zmc2V0O1xuICAgIG1hcmdpbi1yaWdodDogQHRocmVlQ2FyZE9mZnNldDtcbiAgfVxuICAudWkuZml2ZS5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQHRocmVlQ2FyZDtcbiAgICBtYXJnaW4tbGVmdDogQHRocmVlQ2FyZFNwYWNpbmc7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdGhyZWVDYXJkU3BhY2luZztcbiAgfVxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogQHRocmVlQ2FyZE9mZnNldDtcbiAgICBtYXJnaW4tcmlnaHQ6IEB0aHJlZUNhcmRPZmZzZXQ7XG4gIH1cbiAgLnVpLnNpeC5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQHRocmVlQ2FyZDtcbiAgICBtYXJnaW4tbGVmdDogQHRocmVlQ2FyZFNwYWNpbmc7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdGhyZWVDYXJkU3BhY2luZztcbiAgfVxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiBAdGhyZWVDYXJkT2Zmc2V0O1xuICAgIG1hcmdpbi1yaWdodDogQHRocmVlQ2FyZE9mZnNldDtcbiAgfVxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IEB0aHJlZUNhcmQ7XG4gICAgbWFyZ2luLWxlZnQ6IEB0aHJlZUNhcmRTcGFjaW5nO1xuICAgIG1hcmdpbi1yaWdodDogQHRocmVlQ2FyZFNwYWNpbmc7XG4gIH1cbiAgLnVpLmVpZ2h0LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogQGZvdXJDYXJkT2Zmc2V0O1xuICAgIG1hcmdpbi1yaWdodDogQGZvdXJDYXJkT2Zmc2V0O1xuICB9XG4gIC51aS5laWdodC5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQGZvdXJDYXJkO1xuICAgIG1hcmdpbi1sZWZ0OiBAZm91ckNhcmRTcGFjaW5nO1xuICAgIG1hcmdpbi1yaWdodDogQGZvdXJDYXJkU3BhY2luZztcbiAgfVxuICAudWkubmluZS5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IEBmb3VyQ2FyZE9mZnNldDtcbiAgICBtYXJnaW4tcmlnaHQ6IEBmb3VyQ2FyZE9mZnNldDtcbiAgfVxuICAudWkubmluZS5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogQGZvdXJDYXJkO1xuICAgIG1hcmdpbi1sZWZ0OiBAZm91ckNhcmRTcGFjaW5nO1xuICAgIG1hcmdpbi1yaWdodDogQGZvdXJDYXJkU3BhY2luZztcbiAgfVxuICAudWkudGVuLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogQGZpdmVDYXJkT2Zmc2V0O1xuICAgIG1hcmdpbi1yaWdodDogQGZpdmVDYXJkT2Zmc2V0O1xuICB9XG4gIC51aS50ZW4uZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IEBmaXZlQ2FyZDtcbiAgICBtYXJnaW4tbGVmdDogQGZpdmVDYXJkU3BhY2luZztcbiAgICBtYXJnaW4tcmlnaHQ6IEBmaXZlQ2FyZFNwYWNpbmc7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogQGxhcmdlc3RNb2JpbGVTY3JlZW4pIHtcbiAgLnVpLnN0YWNrYWJsZS5jYXJkcyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAudWkuc3RhY2thYmxlLmNhcmRzIC5jYXJkOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLnN0YWNrYWJsZS5jYXJkcyA+IC5jYXJkIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogQHN0YWNrYWJsZVJvd1NwYWNpbmcgQHN0YWNrYWJsZUNhcmRTcGFjaW5nO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogQHN0YWNrYWJsZU1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpemVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkIHtcbiAgZm9udC1zaXplOiBAbWVkaXVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQsXG4udWkuaW52ZXJ0ZWQuY2FyZCB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEBpbnZlcnRlZEJveFNoYWRvdztcbn1cblxuLyogQ29udGVudCAqL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCxcbi51aS5pbnZlcnRlZC5jYXJkID4gLmNvbnRlbnQge1xuICBib3JkZXItdG9wOiBAaW52ZXJ0ZWRDb250ZW50RGl2aWRlcjtcbn1cblxuLyogSGVhZGVyICovXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlcixcbi51aS5pbnZlcnRlZC5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyIHtcbiAgY29sb3I6IEBpbnZlcnRlZEhlYWRlckNvbG9yO1xufVxuXG4vKiBEZXNjcmlwdGlvbiAqL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5kZXNjcmlwdGlvbixcbi51aS5pbnZlcnRlZC5jYXJkID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogQGludmVydGVkRGVzY3JpcHRpb25Db2xvcjtcbn1cblxuLyogTWV0YSAqL1xuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgLm1ldGEsXG4udWkuaW52ZXJ0ZWQuY2FyZCAubWV0YSB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRNZXRhQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuY2FyZCAubWV0YSA+IGE6bm90KC51aSksXG4udWkuaW52ZXJ0ZWQuY2FyZCAubWV0YSA+IGE6bm90KC51aSkge1xuICBjb2xvcjogQGludmVydGVkTWV0YUxpbmtDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5jYXJkcyA+IC5jYXJkIC5tZXRhID4gYTpub3QoLnVpKTpob3Zlcixcbi51aS5pbnZlcnRlZC5jYXJkIC5tZXRhID4gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRNZXRhTGlua0hvdmVyQ29sb3I7XG59XG5cbi8qIEV4dHJhICovXG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuY2FyZCA+IC5leHRyYSxcbi51aS5pbnZlcnRlZC5jYXJkID4gLmV4dHJhIHtcbiAgYm9yZGVyLXRvcDogQGludmVydGVkRXh0cmFEaXZpZGVyICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRFeHRyYUNvbG9yO1xufVxuLnVpLmludmVydGVkLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKSxcbi51aS5pbnZlcnRlZC5jYXJkID4gLmV4dHJhIGE6bm90KC51aSkge1xuICBjb2xvcjogQGludmVydGVkRXh0cmFMaW5rQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuY2FyZHMgPiAuY2FyZCA+IC5leHRyYSBhOm5vdCgudWkpOmhvdmVyLFxuLnVpLmludmVydGVkLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiBAZXh0cmFMaW5rSG92ZXJDb2xvcjtcbn1cblxuLyogTGluayBjYXJkKHMpICovXG4udWkuaW52ZXJ0ZWQuY2FyZHMgYS5jYXJkOmhvdmVyLFxuLnVpLmludmVydGVkLmxpbmsuY2FyZHMgLmNhcmQ6bm90KC5pY29uKTpob3ZlcixcbmEuaW52ZXJ0ZWQudWkuY2FyZDpob3Zlcixcbi51aS5pbnZlcnRlZC5saW5rLmNhcmQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRMaW5rSG92ZXJCYWNrZ3JvdW5kO1xufVxuXG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIENvbW1lbnRcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ3ZpZXcnO1xuQGVsZW1lbnQgOiAnY29tbWVudCc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YW5kYXJkXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIHtcbiAgbWFyZ2luOiBAbWFyZ2luO1xuICBtYXgtd2lkdGg6IEBtYXhXaWR0aDtcbn1cblxuLnVpLmNvbW1lbnRzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5jb21tZW50czpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb21tZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IEBjb21tZW50QmFja2dyb3VuZDtcbiAgbWFyZ2luOiBAY29tbWVudE1hcmdpbjtcbiAgcGFkZGluZzogQGNvbW1lbnRQYWRkaW5nO1xuICBib3JkZXI6IEBjb21tZW50Qm9yZGVyO1xuICBib3JkZXItdG9wOiBAY29tbWVudERpdmlkZXI7XG4gIGxpbmUtaGVpZ2h0OiBAY29tbWVudExpbmVIZWlnaHQ7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiBAZmlyc3RDb21tZW50TWFyZ2luO1xuICBwYWRkaW5nLXRvcDogQGZpcnN0Q29tbWVudFBhZGRpbmc7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIE5lc3RlZCBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50ID4gLmNvbW1lbnRzIHtcbiAgbWFyZ2luOiBAbmVzdGVkQ29tbWVudHNNYXJnaW47XG4gIHBhZGRpbmc6IEBuZXN0ZWRDb21tZW50c1BhZGRpbmc7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgPiAuY29tbWVudHM6YmVmb3Jle1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbi51aS5jb21tZW50cyAuY29tbWVudCA+IC5jb21tZW50cyAuY29tbWVudCB7XG4gIGJvcmRlcjogQG5lc3RlZENvbW1lbnRCb3JkZXI7XG4gIGJvcmRlci10b3A6IEBuZXN0ZWRDb21tZW50RGl2aWRlcjtcbiAgYmFja2dyb3VuZDogQG5lc3RlZENvbW1lbnRCYWNrZ3JvdW5kO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEF2YXRhclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hdmF0YXIge1xuICBkaXNwbGF5OiBAYXZhdGFyRGlzcGxheTtcbiAgd2lkdGg6IEBhdmF0YXJXaWR0aDtcbiAgaGVpZ2h0OiBAYXZhdGFySGVpZ2h0O1xuICBmbG9hdDogQGF2YXRhckZsb2F0O1xuICBtYXJnaW46IEBhdmF0YXJNYXJnaW47XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgaW1nLmF2YXRhcixcbi51aS5jb21tZW50cyAuY29tbWVudCAuYXZhdGFyIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogQGF2YXRhckJvcmRlclJhZGl1cztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyogSWYgdGhlcmUgaXMgYW4gYXZhdGFyIG1vdmUgY29udGVudCBvdmVyICovXG4udWkuY29tbWVudHMgLmNvbW1lbnQgPiAuYXZhdGFyIH4gLmNvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogQGNvbnRlbnRNYXJnaW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQXV0aG9yXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmF1dGhvciB7XG4gIGZvbnQtc2l6ZTogQGF1dGhvckZvbnRTaXplO1xuICBjb2xvcjogQGF1dGhvckNvbG9yO1xuICBmb250LXdlaWdodDogQGF1dGhvckZvbnRXZWlnaHQ7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgYS5hdXRob3Ige1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgYS5hdXRob3I6aG92ZXIge1xuICBjb2xvcjogQGF1dGhvckhvdmVyQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTWV0YWRhdGFcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21tZW50cyAuY29tbWVudCAubWV0YWRhdGEge1xuICBkaXNwbGF5OiBAbWV0YWRhdGFEaXNwbGF5O1xuICBtYXJnaW4tbGVmdDogQG1ldGFkYXRhU3BhY2luZztcbiAgY29sb3I6IEBtZXRhZGF0YUNvbG9yO1xuICBmb250LXNpemU6IEBtZXRhZGF0YUZvbnRTaXplO1xufVxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5tZXRhZGF0YSA+ICoge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCBAbWV0YWRhdGFDb250ZW50U3BhY2luZyAwIDA7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgLm1ldGFkYXRhID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29tbWVudCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLnRleHQge1xuICBtYXJnaW46IEB0ZXh0TWFyZ2luO1xuICBmb250LXNpemU6IEB0ZXh0Rm9udFNpemU7XG4gIHdvcmQtd3JhcDogQHRleHRXb3JkV3JhcDtcbiAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gIGxpbmUtaGVpZ2h0OiBAdGV4dExpbmVIZWlnaHQ7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBVc2VyIEFjdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyB7XG4gIGZvbnQtc2l6ZTogQGFjdGlvbkZvbnRTaXplO1xufVxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIEBhY3Rpb25Db250ZW50RGlzdGFuY2UgMCAwO1xuICBjb2xvcjogQGFjdGlvbkxpbmtDb2xvcjtcbn1cbi51aS5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyBhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmFjdGlvbnMgYS5hY3RpdmUsXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmFjdGlvbnMgYTpob3ZlciB7XG4gIGNvbG9yOiBAYWN0aW9uTGlua0hvdmVyQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFJlcGx5IEZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21tZW50cyA+IC5yZXBseS5mb3JtIHtcbiAgbWFyZ2luLXRvcDogQHJlcGx5RGlzdGFuY2U7XG59XG4udWkuY29tbWVudHMgLmNvbW1lbnQgLnJlcGx5LmZvcm0ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogQGNvbW1lbnRSZXBseURpc3RhbmNlO1xufVxuLnVpLmNvbW1lbnRzIC5yZXBseS5mb3JtIHRleHRhcmVhIHtcbiAgZm9udC1zaXplOiBAcmVwbHlGb250U2l6ZTtcbiAgaGVpZ2h0OiBAcmVwbHlIZWlnaHQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmNvbGxhcHNlZC5jb21tZW50cyxcbi51aS5jb21tZW50cyAuY29sbGFwc2VkLmNvbW1lbnRzLFxuLnVpLmNvbW1lbnRzIC5jb2xsYXBzZWQuY29tbWVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUaHJlYWRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRocmVhZGVkLmNvbW1lbnRzIC5jb21tZW50ID4gLmNvbW1lbnRzIHtcbiAgbWFyZ2luOiBAdGhyZWFkZWRDb21tZW50TWFyZ2luO1xuICBwYWRkaW5nOiBAdGhyZWFkZWRDb21tZW50UGFkZGluZztcbiAgYm94LXNoYWRvdzogQHRocmVhZGVkQ29tbWVudEJveFNoYWRvdztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBNaW5pbWFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaW1hbC5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBAbWluaW1hbEFjdGlvblBvc2l0aW9uO1xuICB0b3A6IEBtaW5pbWFsQWN0aW9uVG9wO1xuICByaWdodDogQG1pbmltYWxBY3Rpb25SaWdodDtcbiAgbGVmdDogQG1pbmltYWxBY3Rpb25MZWZ0O1xuICB0cmFuc2l0aW9uOiBAbWluaW1hbFRyYW5zaXRpb247XG4gIHRyYW5zaXRpb24tZGVsYXk6IEBtaW5pbWFsVHJhbnNpdGlvbkRlbGF5O1xufVxuLnVpLm1pbmltYWwuY29tbWVudHMgLmNvbW1lbnQgPiAuY29udGVudDpob3ZlciA+IC5hY3Rpb25zIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuY29tbWVudHMge1xuICBmb250LXNpemU6IEBtaW5pO1xufVxuLnVpLnRpbnkuY29tbWVudHMge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkuY29tbWVudHMge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG4udWkubGFyZ2UuY29tbWVudHMge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5iaWcuY29tbWVudHMge1xuICBmb250LXNpemU6IEBiaWc7XG59XG4udWkuaHVnZS5jb21tZW50cyB7XG4gIGZvbnQtc2l6ZTogQGh1Z2U7XG59XG4udWkubWFzc2l2ZS5jb21tZW50cyB7XG4gIGZvbnQtc2l6ZTogQG1hc3NpdmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLmludmVydGVkLmNvbW1lbnRzIC5jb21tZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJsYWNrO1xufVxuXG4udWkuaW52ZXJ0ZWQuY29tbWVudHMgLmNvbW1lbnQgLmF1dGhvcixcbi51aS5pbnZlcnRlZC5jb21tZW50cyAuY29tbWVudCAudGV4dCB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5jb21tZW50cyAuY29tbWVudCAubWV0YWRhdGEsXG4udWkuaW52ZXJ0ZWQuY29tbWVudHMgLmNvbW1lbnQgLmFjdGlvbnMgYSB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRMaWdodFRleHRDb2xvcjtcbn1cblxuLnVpLmludmVydGVkLmNvbW1lbnRzIC5jb21tZW50IGEuYXV0aG9yOmhvdmVyLFxuLnVpLmludmVydGVkLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGEuYWN0aXZlLFxuLnVpLmludmVydGVkLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGE6aG92ZXIge1xuICBjb2xvcjogQGludmVydGVkSG92ZXJlZFRleHRDb2xvcjtcbn1cblxuLnVpLmludmVydGVkLnRocmVhZGVkLmNvbW1lbnRzIC5jb21tZW50ID4gLmNvbW1lbnRzIHtcbiAgYm94LXNoYWRvdzogLTFweCAwIDAgQHNvbGlkV2hpdGVCb3JkZXJDb2xvcjtcbn1cblxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBGZWVkXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAndmlldyc7XG5AZWxlbWVudCA6ICdmZWVkJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgQWN0aXZpdHkgRmVlZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmZlZWQge1xuICBtYXJnaW46IEBtYXJnaW47XG59XG4udWkuZmVlZDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkuZmVlZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRXZlbnQgKi9cbi51aS5mZWVkID4gLmV2ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgd2lkdGg6IEBldmVudFdpZHRoO1xuICBwYWRkaW5nOiBAZXZlbnRQYWRkaW5nO1xuICBtYXJnaW46IEBldmVudE1hcmdpbjtcbiAgYmFja2dyb3VuZDogQGV2ZW50QmFja2dyb3VuZDtcbiAgYm9yZGVyLXRvcDogQGV2ZW50RGl2aWRlcjtcbn1cbi51aS5mZWVkID4gLmV2ZW50OmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4udWkuZmVlZCA+IC5ldmVudDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi8qIEV2ZW50IExhYmVsICovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IEBsYWJlbFdpZHRoO1xuICBoZWlnaHQ6IEBsYWJlbEhlaWdodDtcbiAgYWxpZ24tc2VsZjogQGxhYmVsQWxpZ25TZWxmO1xuICB0ZXh0LWFsaWduOiBAbGFiZWxUZXh0QWxpZ247XG59XG4udWkuZmVlZCA+IC5ldmVudCA+IC5sYWJlbCAuaWNvbiB7XG4gIG9wYWNpdHk6IEBpY29uTGFiZWxPcGFjaXR5O1xuICBmb250LXNpemU6IEBpY29uTGFiZWxTaXplO1xuICB3aWR0aDogQGljb25MYWJlbFdpZHRoO1xuICBwYWRkaW5nOiBAaWNvbkxhYmVsUGFkZGluZztcbiAgYmFja2dyb3VuZDogQGljb25MYWJlbEJhY2tncm91bmQ7XG4gIGJvcmRlcjogQGljb25MYWJlbEJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogQGljb25MYWJlbEJvcmRlclJhZGl1cztcbiAgY29sb3I6IEBpY29uTGFiZWxDb2xvcjtcbn1cbi51aS5mZWVkID4gLmV2ZW50ID4gLmxhYmVsIGltZyB7XG4gIHdpZHRoOiBAaW1hZ2VMYWJlbFdpZHRoO1xuICBoZWlnaHQ6IEBpbWFnZUxhYmVsSGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiBAaW1hZ2VMYWJlbEJvcmRlclJhZGl1cztcbn1cbi51aS5mZWVkID4gLmV2ZW50ID4gLmxhYmVsICsgLmNvbnRlbnQge1xuICBtYXJnaW46IEBsYWJlbGVkQ29udGVudE1hcmdpbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBDb250ZW50ICovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBhbGlnbi1zZWxmOiBAY29udGVudEFsaWduU2VsZjtcbiAgdGV4dC1hbGlnbjogQGNvbnRlbnRUZXh0QWxpZ247XG4gIHdvcmQtd3JhcDogQGNvbnRlbnRXb3JkV3JhcDtcbn1cbi51aS5mZWVkID4gLmV2ZW50Omxhc3QtY2hpbGQgPiAuY29udGVudCB7XG4gIHBhZGRpbmctYm90dG9tOiBAbGFzdExhYmVsZWRDb250ZW50UGFkZGluZztcbn1cblxuLyogTGluayAqL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCBhIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBEYXRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5kYXRlIHtcbiAgbWFyZ2luOiBAZGF0ZU1hcmdpbjtcbiAgcGFkZGluZzogQGRhdGVQYWRkaW5nO1xuICBjb2xvcjogQGRhdGVDb2xvcjtcbiAgZm9udC13ZWlnaHQ6IEBkYXRlRm9udFdlaWdodDtcbiAgZm9udC1zaXplOiBAZGF0ZUZvbnRTaXplO1xuICBmb250LXN0eWxlOiBAZGF0ZUZvbnRTdHlsZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTdW1tYXJ5XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5zdW1tYXJ5IHtcbiAgbWFyZ2luOiBAc3VtbWFyeU1hcmdpbjtcbiAgZm9udC1zaXplOiBAc3VtbWFyeUZvbnRTaXplO1xuICBmb250LXdlaWdodDogQHN1bW1hcnlGb250V2VpZ2h0O1xuICBjb2xvcjogQHN1bW1hcnlDb2xvcjtcbn1cblxuLyogU3VtbWFyeSBJbWFnZSAqL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuc3VtbWFyeSBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBAc3VtbWFyeUltYWdlV2lkdGg7XG4gIGhlaWdodDogQHN1bW1hcnlJbWFnZUhlaWdodDtcbiAgbWFyZ2luOiBAc3VtbWFyeUltYWdlTWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiBAc3VtbWFyeUltYWdlQm9yZGVyUmFkaXVzO1xuICB2ZXJ0aWNhbC1hbGlnbjogQHN1bW1hcnlJbWFnZVZlcnRpY2FsQWxpZ247XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBVc2VyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC51c2VyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogQHVzZXJGb250V2VpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IEB1c2VyRGlzdGFuY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLnVzZXIgaW1nIHtcbiAgbWFyZ2luOiBAdXNlckltYWdlTWFyZ2luO1xuICB3aWR0aDogQHVzZXJJbWFnZVdpZHRoO1xuICBoZWlnaHQ6IEB1c2VySW1hZ2VIZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiBAdXNlckltYWdlVmVydGljYWxBbGlnbjtcbn1cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIElubGluZSBEYXRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBEYXRlIGluc2lkZSBTdW1tYXJ5ICovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5zdW1tYXJ5ID4gLmRhdGUge1xuICBkaXNwbGF5OiBAc3VtbWFyeURhdGVEaXNwbGF5O1xuICBmbG9hdDogQHN1bW1hcnlEYXRlRmxvYXQ7XG4gIGZvbnQtd2VpZ2h0OiBAc3VtbWFyeURhdGVGb250V2VpZ2h0O1xuICBmb250LXNpemU6IEBzdW1tYXJ5RGF0ZUZvbnRTaXplO1xuICBmb250LXN0eWxlOiBAc3VtbWFyeURhdGVGb250U3R5bGU7XG4gIG1hcmdpbjogQHN1bW1hcnlEYXRlTWFyZ2luO1xuICBwYWRkaW5nOiBAc3VtbWFyeURhdGVQYWRkaW5nO1xuICBjb2xvcjogQHN1bW1hcnlEYXRlQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgRXh0cmEgU3VtbWFyeVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuZXh0cmEge1xuICBtYXJnaW46IEBleHRyYU1hcmdpbjtcbiAgYmFja2dyb3VuZDogQGV4dHJhQmFja2dyb3VuZDtcbiAgcGFkZGluZzogQGV4dHJhUGFkZGluZztcbiAgY29sb3I6IEBleHRyYUNvbG9yO1xufVxuXG4vKiBJbWFnZXMgKi9cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLmV4dHJhLmltYWdlcyBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogQGV4dHJhSW1hZ2VNYXJnaW47XG4gIHdpZHRoOiBAZXh0cmFJbWFnZVdpZHRoO1xufVxuXG4vKiBUZXh0ICovXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5leHRyYS50ZXh0IHtcbiAgcGFkZGluZzogQGV4dHJhVGV4dFBhZGRpbmc7XG4gIGJvcmRlci1sZWZ0OiBAZXh0cmFUZXh0UG9pbnRlcjtcbiAgZm9udC1zaXplOiBAZXh0cmFUZXh0Rm9udFNpemU7XG4gIG1heC13aWR0aDogQGV4dHJhVGV4dE1heFdpZHRoO1xuICBsaW5lLWhlaWdodDogQGV4dHJhVGV4dExpbmVIZWlnaHQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1ldGFcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEge1xuICBkaXNwbGF5OiBAbWV0YWRhdGFEaXNwbGF5O1xuICBmb250LXNpemU6IEBtZXRhZGF0YUZvbnRTaXplO1xuICBtYXJnaW46IEBtZXRhZGF0YU1hcmdpbjtcbiAgYmFja2dyb3VuZDogQG1ldGFkYXRhQmFja2dyb3VuZDtcbiAgYm9yZGVyOiBAbWV0YWRhdGFCb3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IEBtZXRhZGF0YUJvcmRlclJhZGl1cztcbiAgYm94LXNoYWRvdzogQG1ldGFkYXRhQm94U2hhZG93O1xuICBwYWRkaW5nOiBAbWV0YWRhdGFQYWRkaW5nO1xuICBjb2xvcjogQG1ldGFkYXRhQ29sb3I7XG59XG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgPiAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogQG1ldGFkYXRhRWxlbWVudFNwYWNpbmc7XG59XG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhID4gKjphZnRlciB7XG4gIGNvbnRlbnQ6IEBtZXRhZGF0YURpdmlkZXI7XG4gIGNvbG9yOiBAbWV0YWRhdGFEaXZpZGVyQ29sb3I7XG4gIHRvcDogMDtcbiAgbGVmdDogQG1ldGFkYXRhRGl2aWRlck9mZnNldDtcbiAgb3BhY2l0eTogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIC5saWtlIHtcbiAgY29sb3I6IEBsaWtlQ29sb3I7XG4gIHRyYW5zaXRpb246IEBsaWtlVHJhbnNpdGlvbjtcbn1cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgLmxpa2U6aG92ZXIgLmljb24ge1xuICBjb2xvcjogQGxpa2VIb3ZlckNvbG9yO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSAuYWN0aXZlLmxpa2UgLmljb24ge1xuICBjb2xvcjogQGxpa2VBY3RpdmVDb2xvcjtcbn1cblxuLyogRmlyc3QgZWxlbWVudCAqL1xuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+IDpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBBY3Rpb24gKi9cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgYSxcbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgPiAuaWNvbiB7XG4gIGN1cnNvcjogQG1ldGFkYXRhQWN0aW9uQ3Vyc29yO1xuICBvcGFjaXR5OiBAbWV0YWRhdGFBY3Rpb25PcGFjaXR5O1xuICBjb2xvcjogQG1ldGFkYXRhQWN0aW9uQ29sb3I7XG4gIHRyYW5zaXRpb246IEBtZXRhZGF0YUFjdGlvblRyYW5zaXRpb247XG59XG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIGE6aG92ZXIsXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIGE6aG92ZXIgLmljb24sXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhID4gLmljb246aG92ZXIge1xuICBjb2xvcjogQG1ldGFkYXRhQWN0aW9uSG92ZXJDb2xvcjtcbn1cblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc21hbGwuZmVlZCB7XG4gIGZvbnQtc2l6ZTogQHNtYWxsO1xufVxuLnVpLmZlZWQge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG4udWkubGFyZ2UuZmVlZCB7XG4gIGZvbnQtc2l6ZTogQGxhcmdlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQuZmVlZCA+IC5ldmVudCB7XG4gIGJhY2tncm91bmQ6IEBibGFjaztcbn1cblxuLnVpLmludmVydGVkLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuZGF0ZSxcbi51aS5pbnZlcnRlZC5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgLmxpa2Uge1xuICBjb2xvcjogQGludmVydGVkTGlnaHRUZXh0Q29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLnN1bW1hcnksXG4udWkuaW52ZXJ0ZWQuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5leHRyYS50ZXh0IHtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbn1cblxuLnVpLmludmVydGVkLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSAubGlrZTpob3ZlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTZWxlY3RlZFRleHRDb2xvcjtcbn1cblxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBJdGVtXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAndmlldyc7XG5AZWxlbWVudCA6ICdpdGVtJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEl0ZW1cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtIHtcbiAgZGlzcGxheTogQGRpc3BsYXk7XG4gIG1hcmdpbjogQGl0ZW1TcGFjaW5nIDA7XG4gIHdpZHRoOiBAd2lkdGg7XG4gIG1pbi1oZWlnaHQ6IEBtaW5IZWlnaHQ7XG4gIGJhY2tncm91bmQ6IEBiYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiBAcGFkZGluZztcblxuICBib3JkZXI6IEBib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG4gIGJveC1zaGFkb3c6IEBib3hTaGFkb3c7XG4gIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICB6LWluZGV4OiBAekluZGV4O1xufVxuLnVpLml0ZW1zID4gLml0ZW0gYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSXRlbXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyB7XG4gIG1hcmdpbjogQGdyb3VwTWFyZ2luO1xufVxuXG4udWkuaXRlbXM6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4udWkuaXRlbXM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSXRlbVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW06YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyAnO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udWkuaXRlbXMgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4udWkuaXRlbXMgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW1hZ2VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAwIGF1dG87XG4gIGRpc3BsYXk6IEBpbWFnZURpc3BsYXk7XG4gIGZsb2F0OiBAaW1hZ2VGbG9hdDtcbiAgbWFyZ2luOiBAaW1hZ2VNYXJnaW47XG4gIHBhZGRpbmc6IEBpbWFnZVBhZGRpbmc7XG4gIG1heC1oZWlnaHQ6IEBpbWFnZU1heEhlaWdodDtcbiAgYWxpZ24tc2VsZjogQGltYWdlVmVydGljYWxBbGlnbjtcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlID4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IEBpbWFnZUJvcmRlclJhZGl1cztcbiAgYm9yZGVyOiBAaW1hZ2VCb3JkZXI7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlOm9ubHktY2hpbGQgPiBpbWcge1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgYmFja2dyb3VuZDogQGNvbnRlbnRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGNvbnRlbnRDb2xvcjtcbiAgbWFyZ2luOiBAY29udGVudE1hcmdpbjtcbiAgcGFkZGluZzogQGNvbnRlbnRQYWRkaW5nO1xuICBib3gtc2hhZG93OiBAY29udGVudEJveFNoYWRvdztcbiAgZm9udC1zaXplOiBAY29udGVudEZvbnRTaXplO1xuICBib3JkZXI6IEBjb250ZW50Qm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBAY29udGVudEJvcmRlclJhZGl1cztcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyAnO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlICsgLmNvbnRlbnQge1xuICBtaW4td2lkdGg6IDA7XG4gIHdpZHRoOiBAY29udGVudFdpZHRoO1xuICBkaXNwbGF5OiBAY29udGVudERpc3BsYXk7XG4gIG1hcmdpbi1sZWZ0OiBAY29udGVudE9mZnNldDtcbiAgYWxpZ24tc2VsZjogQGNvbnRlbnRWZXJ0aWNhbEFsaWduO1xuICBwYWRkaW5nLWxlZnQ6IEBjb250ZW50SW1hZ2VEaXN0YW5jZTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCA+IC5oZWFkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogQGhlYWRlck1hcmdpbjtcbiAgZm9udC1mYW1pbHk6IEBoZWFkZXJGb250O1xuICBmb250LXdlaWdodDogQGhlYWRlckZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAaGVhZGVyQ29sb3I7XG59XG4vKiBEZWZhdWx0IEhlYWRlciBTaXplICovXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGZvbnQtc2l6ZTogQGhlYWRlckZvbnRTaXplO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogbGVmdDtcbn1cbi51aS5pdGVtcyA+IC5pdGVtIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgQ29udGVudCBJbWFnZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gLmNvbnRlbnQgaW1nIHtcbiAgYWxpZ24tc2VsZjogQGNvbnRlbnRJbWFnZVZlcnRpY2FsQWxpZ247XG4gIHdpZHRoOiBAY29udGVudEltYWdlV2lkdGg7XG59XG4udWkuaXRlbXMgPiAuaXRlbSBpbWcuYXZhdGFyLFxuLnVpLml0ZW1zID4gLml0ZW0gLmF2YXRhciBpbWcge1xuICB3aWR0aDogQGF2YXRhclNpemU7XG4gIGhlaWdodDogQGF2YXRhclNpemU7XG4gIGJvcmRlci1yYWRpdXM6IEBhdmF0YXJCb3JkZXJSYWRpdXM7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiBAZGVzY3JpcHRpb25EaXN0YW5jZTtcbiAgbWF4LXdpZHRoOiBAZGVzY3JpcHRpb25NYXhXaWR0aDtcbiAgZm9udC1zaXplOiBAZGVzY3JpcHRpb25Gb250U2l6ZTtcbiAgbGluZS1oZWlnaHQ6IEBkZXNjcmlwdGlvbkxpbmVIZWlnaHQ7XG4gIGNvbG9yOiBAZGVzY3JpcHRpb25Db2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBwIHtcbiAgbWFyZ2luOiAwIDAgQHBhcmFncmFwaERpc3RhbmNlO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBNZXRhXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSAubWV0YSB7XG4gIG1hcmdpbjogQG1ldGFNYXJnaW47XG4gIGZvbnQtc2l6ZTogQG1ldGFGb250U2l6ZTtcbiAgbGluZS1oZWlnaHQ6IEBtZXRhTGluZUhlaWdodDtcbiAgY29sb3I6IEBtZXRhQ29sb3I7XG59XG4udWkuaXRlbXMgPiAuaXRlbSAubWV0YSAqIHtcbiAgbWFyZ2luLXJpZ2h0OiBAbWV0YVNwYWNpbmc7XG59XG4udWkuaXRlbXMgPiAuaXRlbSAubWV0YSA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEgW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiBAbWV0YVNwYWNpbmc7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBHZW5lcmljICovXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IGE6bm90KC51aSkge1xuICBjb2xvcjogQGNvbnRlbnRMaW5rQ29sb3I7XG4gIHRyYW5zaXRpb246IEBjb250ZW50TGlua1RyYW5zaXRpb247XG59XG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogQGNvbnRlbnRMaW5rSG92ZXJDb2xvcjtcbn1cblxuLyogSGVhZGVyICovXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gYS5oZWFkZXIge1xuICBjb2xvcjogQGhlYWRlckxpbmtDb2xvcjtcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiBhLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiBAaGVhZGVyTGlua0hvdmVyQ29sb3I7XG59XG5cbi8qIE1ldGEgKi9cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhID4gYTpub3QoLnVpKSB7XG4gIGNvbG9yOiBAbWV0YUxpbmtDb2xvcjtcbn1cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhID4gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiBAbWV0YUxpbmtIb3ZlckNvbG9yO1xufVxuXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBMYWJlbHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qLS0tLS1TdGFyLS0tLS0gKi9cblxuLyogSWNvbiAqL1xuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAuZmF2b3JpdGUuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogQGFjdGlvbk9wYWNpdHk7XG4gIHRyYW5zaXRpb246IEBhY3Rpb25UcmFuc2l0aW9uO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAuZmF2b3JpdGUuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IEBhY3Rpb25Ib3Zlck9wYWNpdHk7XG4gIGNvbG9yOiBAZmF2b3JpdGVDb2xvcjtcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmFjdGl2ZS5mYXZvcml0ZS5pY29uIHtcbiAgY29sb3I6IEBmYXZvcml0ZUFjdGl2ZUNvbG9yO1xufVxuXG4vKi0tLS0tTGlrZS0tLS0tICovXG5cbi8qIEljb24gKi9cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmxpa2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogQGFjdGlvbk9wYWNpdHk7XG4gIHRyYW5zaXRpb246IEBhY3Rpb25UcmFuc2l0aW9uO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAubGlrZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogQGFjdGlvbkhvdmVyT3BhY2l0eTtcbiAgY29sb3I6IEBsaWtlQ29sb3I7XG59XG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5hY3RpdmUubGlrZS5pY29uIHtcbiAgY29sb3I6IEBsaWtlQWN0aXZlQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLVxuICBFeHRyYSBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtIC5leHRyYSB7XG4gIGRpc3BsYXk6IEBleHRyYURpc3BsYXk7XG4gIHBvc2l0aW9uOiBAZXh0cmFQb3NpdGlvbjtcbiAgYmFja2dyb3VuZDogQGV4dHJhQmFja2dyb3VuZDtcbiAgbWFyZ2luOiBAZXh0cmFNYXJnaW47XG4gIHdpZHRoOiBAZXh0cmFXaWR0aDtcbiAgcGFkZGluZzogQGV4dHJhUGFkZGluZztcbiAgdG9wOiBAZXh0cmFUb3A7XG4gIGxlZnQ6IEBleHRyYUxlZnQ7XG4gIGNvbG9yOiBAZXh0cmFDb2xvcjtcbiAgYm94LXNoYWRvdzogQGV4dHJhQm94U2hhZG93O1xuICB0cmFuc2l0aW9uOiBAZXh0cmFUcmFuc2l0aW9uO1xuICBib3JkZXItdG9wOiBAZXh0cmFEaXZpZGVyO1xufVxuLnVpLml0ZW1zID4gLml0ZW0gLmV4dHJhID4gKiB7XG4gIG1hcmdpbjogKEBleHRyYVJvd1NwYWNpbmcgLyAyKSBAZXh0cmFIb3Jpem9udGFsU3BhY2luZyAoQGV4dHJhUm93U3BhY2luZyAvIDIpIDA7XG59XG4udWkuaXRlbXMgPiAuaXRlbSAuZXh0cmEgPiBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIG1hcmdpbjogKEBleHRyYVJvd1NwYWNpbmcgLyAyKSAwIChAZXh0cmFSb3dTcGFjaW5nIC8gMikgQGV4dHJhSG9yaXpvbnRhbFNwYWNpbmc7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIC5leHRyYTphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFJlc3BvbnNpdmVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIERlZmF1bHQgSW1hZ2UgV2lkdGggKi9cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlOm5vdCgudWkpIHtcbiAgd2lkdGg6IEBpbWFnZVdpZHRoO1xufVxuXG5cbi8qIFRhYmxldCBPbmx5ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEB0YWJsZXRCcmVha3BvaW50KSBhbmQgKG1heC13aWR0aDogQGxhcmdlc3RUYWJsZXRTY3JlZW4pIHtcbiAgLnVpLml0ZW1zID4gLml0ZW0ge1xuICAgIG1hcmdpbjogQHRhYmxldEl0ZW1TcGFjaW5nIDA7XG4gIH1cbiAgLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2U6bm90KC51aSkge1xuICAgIHdpZHRoOiBAdGFibGV0SW1hZ2VXaWR0aDtcbiAgfVxuICAudWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSArIC5jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwIDAgMCBAdGFibGV0Q29udGVudEltYWdlRGlzdGFuY2U7XG4gIH1cblxufVxuXG4vKiBNb2JpbGUgT25seSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkuaXRlbXM6bm90KC51bnN0YWNrYWJsZSkgPiAuaXRlbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW46IEBtb2JpbGVJdGVtU3BhY2luZyAwO1xuICB9XG4gIC51aS5pdGVtczpub3QoLnVuc3RhY2thYmxlKSA+IC5pdGVtID4gLmltYWdlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgLnVpLml0ZW1zOm5vdCgudW5zdGFja2FibGUpID4gLml0ZW0gPiAuaW1hZ2UsXG4gIC51aS5pdGVtczpub3QoLnVuc3RhY2thYmxlKSA+IC5pdGVtID4gLmltYWdlID4gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogQG1vYmlsZUltYWdlV2lkdGggIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiBAbW9iaWxlSW1hZ2VNYXhIZWlnaHQgIWltcG9ydGFudDtcbiAgfVxuICAudWkuaXRlbXM6bm90KC51bnN0YWNrYWJsZSkgPiAuaXRlbSA+IC5pbWFnZSArIC5jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiBAbW9iaWxlQ29udGVudEltYWdlRGlzdGFuY2UgMCAwO1xuICB9XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlICsgW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmNvbnRlbnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgKyBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uY29udGVudCB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlICsgW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmNvbnRlbnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFJlbGF4ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5yZWxheGVkLml0ZW1zID4gLml0ZW0ge1xuICBtYXJnaW46IEByZWxheGVkSXRlbVNwYWNpbmcgMDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uaXRlbXMgPiAuaXRlbSB7XG4gIG1hcmdpbjogQHZlcnlSZWxheGVkSXRlbVNwYWNpbmcgMDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZWQuaXRlbXMgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IEBkaXZpZGVkQm9yZGVyO1xuICBtYXJnaW46IEBkaXZpZGVkTWFyZ2luO1xuICBwYWRkaW5nOiBAZGl2aWRlZFBhZGRpbmc7XG59XG4udWkuZGl2aWRlZC5pdGVtcyA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbWFyZ2luLXRvcDogQGRpdmlkZWRGaXJzdExhc3RNYXJnaW4gIWltcG9ydGFudDtcbiAgcGFkZGluZy10b3A6IEBkaXZpZGVkRmlyc3RMYXN0UGFkZGluZyAhaW1wb3J0YW50O1xufVxuLnVpLmRpdmlkZWQuaXRlbXMgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogQGRpdmlkZWRGaXJzdExhc3RNYXJnaW4gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IEBkaXZpZGVkRmlyc3RMYXN0UGFkZGluZyAhaW1wb3J0YW50O1xufVxuXG4vKiBSZWxheGVkIERpdmlkZWQgKi9cbi51aS5yZWxheGVkLmRpdmlkZWQuaXRlbXMgPiAuaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogQHJlbGF4ZWRJdGVtU3BhY2luZyAwO1xufVxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5kaXZpZGVkLml0ZW1zID4gLml0ZW0ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IEB2ZXJ5UmVsYXhlZEl0ZW1TcGFjaW5nIDA7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIExpbmtcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zIGEuaXRlbTpob3Zlcixcbi51aS5saW5rLml0ZW1zID4gLml0ZW06aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS5pdGVtcyBhLml0ZW06aG92ZXIgLmNvbnRlbnQgLmhlYWRlcixcbi51aS5saW5rLml0ZW1zID4gLml0ZW06aG92ZXIgLmNvbnRlbnQgLmhlYWRlciB7XG4gIGNvbG9yOiBAaGVhZGVyTGlua0hvdmVyQ29sb3I7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0ge1xuICBmb250LXNpemU6IEByZWxhdGl2ZU1lZGl1bTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS1cbiAgIFVuc3RhY2thYmxlXG4tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkudW5zdGFja2FibGUuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSxcbiAgLnVpLnVuc3RhY2thYmxlLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgPiBpbWcge1xuICAgIHdpZHRoOiBAdW5zdGFja2FibGVNb2JpbGVJbWFnZVdpZHRoICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRCYWNrZ3JvdW5kO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZENvbnRlbnRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGludmVydGVkQ29udGVudENvbG9yO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gLmV4dHJhIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkRXh0cmFCYWNrZ3JvdW5kO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCA+IC5oZWFkZXIge1xuICBjb2xvcjogQGludmVydGVkSGVhZGVyQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gLmRlc2NyaXB0aW9uIHtcbiAgY29sb3I6IEBpbnZlcnRlZERlc2NyaXB0aW9uQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSAubWV0YSB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRNZXRhQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IGE6bm90KC51aSkge1xuICBjb2xvcjogQGludmVydGVkQ29udGVudExpbmtDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRDb250ZW50TGlua0hvdmVyQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gYS5oZWFkZXIge1xuICBjb2xvcjogQGludmVydGVkSGVhZGVyTGlua0NvbG9yO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCA+IGEuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6IEBpbnZlcnRlZEhlYWRlckxpbmtIb3ZlckNvbG9yO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gLm1ldGEgPiBhOm5vdCgudWkpIHtcbiAgY29sb3I6IEBpbnZlcnRlZE1ldGFMaW5rQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSAubWV0YSA+IGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogQGludmVydGVkTWV0YUxpbmtIb3ZlckNvbG9yO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAuZmF2b3JpdGUuaWNvbjpob3ZlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRGYXZvcml0ZUNvbG9yO1xufVxuLnVpLmludmVydGVkLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAuYWN0aXZlLmZhdm9yaXRlLmljb24ge1xuICBjb2xvcjogQGludmVydGVkRmF2b3JpdGVBY3RpdmVDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmxpa2UuaWNvbjpob3ZlciB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRMaWtlQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5hY3RpdmUubGlrZS5pY29uIHtcbiAgY29sb3I6IEBpbnZlcnRlZExpa2VBY3RpdmVDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5pdGVtcyA+IC5pdGVtIC5leHRyYSB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRFeHRyYUNvbG9yO1xufVxuLnVpLmludmVydGVkLml0ZW1zIGEuaXRlbTpob3ZlciAuY29udGVudCAuaGVhZGVyLFxuLnVpLmludmVydGVkLmxpbmsuaXRlbXMgPiAuaXRlbTpob3ZlciAuY29udGVudCAuaGVhZGVyIHtcbiAgY29sb3I6IEBpbnZlcnRlZEhlYWRlckxpbmtIb3ZlckNvbG9yO1xufVxuLnVpLmludmVydGVkLmRpdmlkZWQuaXRlbXMgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IEBpbnZlcnRlZERpdmlkZWRCb3JkZXI7XG59XG4udWkuaW52ZXJ0ZWQuZGl2aWRlZC5pdGVtcyA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gU3RhdGlzdGljXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAndmlldyc7XG5AZWxlbWVudCA6ICdzdGF0aXN0aWMnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFN0YXRpc3RpY1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogU3RhbmRhbG9uZSAqL1xuLnVpLnN0YXRpc3RpYyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW46IEBtYXJnaW47XG4gIG1heC13aWR0aDogQG1heFdpZHRoO1xufVxuXG4udWkuc3RhdGlzdGljICsgLnVpLnN0YXRpc3RpYyB7XG4gIG1hcmdpbjogMCAwIDAgQGhvcml6b250YWxTcGFjaW5nO1xufVxuXG4udWkuc3RhdGlzdGljOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5zdGF0aXN0aWM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgR3JvdXBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIEdyb3VwZWQgKi9cbi51aS5zdGF0aXN0aWNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi51aS5zdGF0aXN0aWNzID4gLnN0YXRpc3RpYyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4OiAwIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiBAZWxlbWVudE1hcmdpbjtcbiAgbWF4LXdpZHRoOiBAZWxlbWVudE1heFdpZHRoO1xufVxuLnVpLnN0YXRpc3RpY3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IEBncm91cE1hcmdpbjtcbn1cblxuLyogQ2xlYXJpbmcgKi9cbi51aS5zdGF0aXN0aWNzOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udWkuc3RhdGlzdGljczpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgVmFsdWVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1mYW1pbHk6IEB2YWx1ZUZvbnQ7XG4gIGZvbnQtc2l6ZTogQHZhbHVlU2l6ZTtcbiAgZm9udC13ZWlnaHQ6IEB2YWx1ZUZvbnRXZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBAdmFsdWVMaW5lSGVpZ2h0O1xuICBjb2xvcjogQHZhbHVlQ29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiBAdmFsdWVUZXh0VHJhbnNmb3JtO1xuICB0ZXh0LWFsaWduOiBAdGV4dEFsaWduO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIExhYmVsXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLmxhYmVsLFxuLnVpLnN0YXRpc3RpYyA+IC5sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBAbGFiZWxGb250O1xuICBmb250LXNpemU6IEBsYWJlbFNpemU7XG4gIGZvbnQtd2VpZ2h0OiBAbGFiZWxGb250V2VpZ2h0O1xuICBjb2xvcjogQGxhYmVsQ29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiBAbGFiZWxUZXh0VHJhbnNmb3JtO1xuICB0ZXh0LWFsaWduOiBAdGV4dEFsaWduO1xufVxuXG4vKiBUb3AgTGFiZWwgKi9cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAubGFiZWwgfiAudmFsdWUsXG4udWkuc3RhdGlzdGljID4gLmxhYmVsIH4gLnZhbHVlIHtcbiAgbWFyZ2luLXRvcDogQHRvcExhYmVsRGlzdGFuY2U7XG59XG5cbi8qIEJvdHRvbSBMYWJlbCAqL1xuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSB+IC5sYWJlbCxcbi51aS5zdGF0aXN0aWMgPiAudmFsdWUgfiAubGFiZWwge1xuICBtYXJnaW4tdG9wOiBAYm90dG9tTGFiZWxEaXN0YW5jZTtcbn1cblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEljb24gVmFsdWVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUgLmljb24sXG4udWkuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uIHtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgVGV4dCBWYWx1ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgbGluZS1oZWlnaHQ6IEB0ZXh0VmFsdWVMaW5lSGVpZ2h0O1xuICBtaW4taGVpZ2h0OiBAdGV4dFZhbHVlTWluSGVpZ2h0O1xuICBmb250LXdlaWdodDogQHRleHRWYWx1ZUZvbnRXZWlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSArIC5sYWJlbCxcbi51aS5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSArIC5sYWJlbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgSW1hZ2UgVmFsdWVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUgaW1nLFxuLnVpLnN0YXRpc3RpYyA+IC52YWx1ZSBpbWcge1xuICBtYXgtaGVpZ2h0OiBAaW1hZ2VIZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiBAaW1hZ2VWZXJ0aWNhbEFsaWduO1xufVxuXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgQ291bnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cblxuLnVpLnRlbi5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiBAaXRlbUdyb3VwTWFyZ2luO1xufVxuLnVpLnRlbi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IEB0ZW5Db2x1bW47XG4gIG1hcmdpbjogQGl0ZW1NYXJnaW47XG59XG5cbi51aS5uaW5lLnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IEBpdGVtR3JvdXBNYXJnaW47XG59XG4udWkubmluZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IEBuaW5lQ29sdW1uO1xuICBtYXJnaW46IEBpdGVtTWFyZ2luO1xufVxuXG4udWkuZWlnaHQuc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogQGl0ZW1Hcm91cE1hcmdpbjtcbn1cbi51aS5laWdodC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IEBlaWdodENvbHVtbjtcbiAgbWFyZ2luOiBAaXRlbU1hcmdpbjtcbn1cblxuLnVpLnNldmVuLnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IEBpdGVtR3JvdXBNYXJnaW47XG59XG4udWkuc2V2ZW4uc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiBAc2V2ZW5Db2x1bW47XG4gIG1hcmdpbjogQGl0ZW1NYXJnaW47XG59XG5cbi51aS5zaXguc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogQGl0ZW1Hcm91cE1hcmdpbjtcbn1cbi51aS5zaXguc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiBAc2l4Q29sdW1uO1xuICBtYXJnaW46IEBpdGVtTWFyZ2luO1xufVxuXG4udWkuZml2ZS5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiBAaXRlbUdyb3VwTWFyZ2luO1xufVxuLnVpLmZpdmUuc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiBAZml2ZUNvbHVtbjtcbiAgbWFyZ2luOiBAaXRlbU1hcmdpbjtcbn1cblxuLnVpLmZvdXIuc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogQGl0ZW1Hcm91cE1hcmdpbjtcbn1cbi51aS5mb3VyLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogQGZvdXJDb2x1bW47XG4gIG1hcmdpbjogQGl0ZW1NYXJnaW47XG59XG5cbi51aS50aHJlZS5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiBAaXRlbUdyb3VwTWFyZ2luO1xufVxuLnVpLnRocmVlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogQHRocmVlQ29sdW1uO1xuICBtYXJnaW46IEBpdGVtTWFyZ2luO1xufVxuXG4udWkudHdvLnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IEBpdGVtR3JvdXBNYXJnaW47XG59XG4udWkudHdvLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogQHR3b0NvbHVtbjtcbiAgbWFyZ2luOiBAaXRlbU1hcmdpbjtcbn1cblxuLnVpLm9uZS5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiBAaXRlbUdyb3VwTWFyZ2luO1xufVxuLnVpLm9uZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IEBvbmVDb2x1bW47XG4gIG1hcmdpbjogQGl0ZW1NYXJnaW47XG59XG5cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEhvcml6b250YWxcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpYyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1hcmdpbjogQGhvcml6b250YWxHcm91cEVsZW1lbnRNYXJnaW47XG59XG5cbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyA+IC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSB7XG4gIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbn1cbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSAuaWNvbixcbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSAuaWNvbiB7XG4gIHdpZHRoOiBAaWNvbldpZHRoO1xufVxuXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAubGFiZWwsXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDAgQGhvcml6b250YWxMYWJlbERpc3RhbmNlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQuc3RhdGlzdGljIC52YWx1ZSB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRWYWx1ZUNvbG9yO1xufVxuLnVpLmludmVydGVkLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC5sYWJlbCxcbi51aS5pbnZlcnRlZC5zdGF0aXN0aWMgLmxhYmVsIHtcbiAgY29sb3I6IEBpbnZlcnRlZExhYmVsQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMse1xuICBAY29sb3I6IHJlcGxhY2UoQGtleSwnQCcsJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG4gIEBsOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0XTtcblxuICAudWkuQHtjb2xvcn0uc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuICAudWkuc3RhdGlzdGljcyAuQHtjb2xvcn0uc3RhdGlzdGljID4gLnZhbHVlLFxuICAudWkuQHtjb2xvcn0uc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgICBjb2xvcjogQGM7XG4gIH1cbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbiAgLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLkB7Y29sb3J9LnN0YXRpc3RpYyA+IC52YWx1ZSxcbiAgLnVpLmludmVydGVkLkB7Y29sb3J9LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gICAgY29sb3I6IEBsO1xuICB9XG59KVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXS5zdGF0aXN0aWMge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiBAbGVmdEZsb2F0ZWRNYXJnaW47XG59XG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5zdGF0aXN0aWMge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogQHJpZ2h0RmxvYXRlZE1hcmdpbjtcbn1cbi51aS5mbG9hdGVkLnN0YXRpc3RpYzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkuc3RhY2thYmxlLnN0YXRpc3RpY3Mge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLnN0YWNrYWJsZS5zdGF0aXN0aWNzID4gLnN0YXRpc3RpYyB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IChAc3RhY2thYmxlUm93U3BhY2luZyAvIDIpIChAc3RhY2thYmxlR3V0dGVyIC8gMikgIWltcG9ydGFudDtcbiAgfVxufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyogTWluaSAqL1xuLnVpLm1pbmkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLm1pbmkuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiBAbWluaVZhbHVlU2l6ZSAhaW1wb3J0YW50O1xufVxuLnVpLm1pbmkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkubWluaS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogQG1pbmlIb3Jpem9udGFsVmFsdWVTaXplICFpbXBvcnRhbnQ7XG59XG4udWkubWluaS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5taW5pLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiBAbWluaVRleHRWYWx1ZVNpemUgIWltcG9ydGFudDtcbn1cblxuXG4vKiBUaW55ICovXG4udWkudGlueS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkudGlueS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IEB0aW55VmFsdWVTaXplICFpbXBvcnRhbnQ7XG59XG4udWkudGlueS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS50aW55Lmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiBAdGlueUhvcml6b250YWxWYWx1ZVNpemUgIWltcG9ydGFudDtcbn1cbi51aS50aW55LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLnRpbnkuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBmb250LXNpemU6IEB0aW55VGV4dFZhbHVlU2l6ZSAhaW1wb3J0YW50O1xufVxuXG4vKiBTbWFsbCAqL1xuLnVpLnNtYWxsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zbWFsbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IEBzbWFsbFZhbHVlU2l6ZSAhaW1wb3J0YW50O1xufVxuLnVpLnNtYWxsLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnNtYWxsLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiBAc21hbGxIb3Jpem9udGFsVmFsdWVTaXplICFpbXBvcnRhbnQ7XG59XG4udWkuc21hbGwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUsXG4udWkuc21hbGwuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBmb250LXNpemU6IEBzbWFsbFRleHRWYWx1ZVNpemUgIWltcG9ydGFudDtcbn1cblxuLyogTWVkaXVtICovXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogQHZhbHVlU2l6ZSAhaW1wb3J0YW50O1xufVxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiBAaG9yaXpvbnRhbFZhbHVlU2l6ZSAhaW1wb3J0YW50O1xufVxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiBAdGV4dFZhbHVlU2l6ZSAhaW1wb3J0YW50O1xufVxuXG4vKiBMYXJnZSAqL1xuLnVpLmxhcmdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5sYXJnZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IEBsYXJnZVZhbHVlU2l6ZSAhaW1wb3J0YW50O1xufVxuLnVpLmxhcmdlLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmxhcmdlLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiBAbGFyZ2VIb3Jpem9udGFsVmFsdWVTaXplICFpbXBvcnRhbnQ7XG59XG4udWkubGFyZ2Uuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUsXG4udWkubGFyZ2Uuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBmb250LXNpemU6IEBsYXJnZVRleHRWYWx1ZVNpemUgIWltcG9ydGFudDtcbn1cblxuLyogSHVnZSAqL1xuLnVpLmh1Z2Uuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmh1Z2Uuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiBAaHVnZVZhbHVlU2l6ZSAhaW1wb3J0YW50O1xufVxuLnVpLmh1Z2UuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaHVnZS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogQGh1Z2VIb3Jpem9udGFsVmFsdWVTaXplICFpbXBvcnRhbnQ7XG59XG4udWkuaHVnZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5odWdlLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiBAaHVnZVRleHRWYWx1ZVNpemUgIWltcG9ydGFudDtcbn1cblxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBBY2NvcmRpb25cbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAnYWNjb3JkaW9uJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQWNjb3JkaW9uXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYWNjb3JkaW9uLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIHtcbiAgbWFyZ2luOiBAY2hpbGRBY2NvcmRpb25NYXJnaW47XG4gIHBhZGRpbmc6IEBjaGlsZEFjY29yZGlvblBhZGRpbmc7XG59XG5cbi8qIFRpdGxlICovXG4udWkuYWNjb3JkaW9uIC50aXRsZSxcbi51aS5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIERlZmF1bHQgU3R5bGluZyAqL1xuLnVpLmFjY29yZGlvbiAudGl0bGU6bm90KC51aSkge1xuICBwYWRkaW5nOiBAdGl0bGVQYWRkaW5nO1xuICBmb250LWZhbWlseTogQHRpdGxlRm9udDtcbiAgZm9udC1zaXplOiBAdGl0bGVGb250U2l6ZTtcbiAgY29sb3I6IEB0aXRsZUNvbG9yO1xufVxuXG4vKiBEZWZhdWx0IFN0eWxpbmcgKi9cbi51aS5hY2NvcmRpb246bm90KC5zdHlsZWQpIC50aXRsZSB+IC5jb250ZW50Om5vdCgudWkpLFxuLnVpLmFjY29yZGlvbjpub3QoLnN0eWxlZCkgLmFjY29yZGlvbiAudGl0bGUgfiAuY29udGVudDpub3QoLnVpKSB7XG4gIG1hcmdpbjogQGNvbnRlbnRNYXJnaW47XG4gIHBhZGRpbmc6IEBjb250ZW50UGFkZGluZztcbn1cbi51aS5hY2NvcmRpb246bm90KC5zdHlsZWQpIC50aXRsZSB+IC5jb250ZW50Om5vdCgudWkpOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyogQXJyb3cgKi9cbi51aS5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbiB7XG4gIGRpc3BsYXk6IEBpY29uRGlzcGxheTtcbiAgZmxvYXQ6IEBpY29uRmxvYXQ7XG4gIG9wYWNpdHk6IEBpY29uT3BhY2l0eTtcbiAgd2lkdGg6IEBpY29uV2lkdGg7XG4gIGhlaWdodDogQGljb25IZWlnaHQ7XG4gIG1hcmdpbjogQGljb25NYXJnaW47XG4gIHBhZGRpbmc6IEBpY29uUGFkZGluZztcbiAgZm9udC1zaXplOiBAaWNvbkZvbnRTaXplO1xuICB0cmFuc2l0aW9uOiBAaWNvblRyYW5zaXRpb247XG4gIHZlcnRpY2FsLWFsaWduOiBAaWNvblZlcnRpY2FsQWxpZ247XG4gIHRyYW5zZm9ybTogQGljb25UcmFuc2Zvcm07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWVudSAqL1xuLnVpLmFjY29yZGlvbi5tZW51IC5pdGVtIC50aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiBAbWVudVRpdGxlUGFkZGluZztcbn1cbi51aS5hY2NvcmRpb24ubWVudSAuaXRlbSAudGl0bGUgPiAuZHJvcGRvd24uaWNvbiB7XG4gIGZsb2F0OiBAbWVudUljb25GbG9hdDtcbiAgbWFyZ2luOiBAbWVudUljb25NYXJnaW47XG4gIHRyYW5zZm9ybTogQG1lbnVJY29uVHJhbnNmb3JtO1xufVxuXG4vKiBIZWFkZXIgKi9cbi51aS5hY2NvcmRpb24gLnVpLmhlYWRlciAuZHJvcGRvd24uaWNvbiB7XG4gIGZvbnQtc2l6ZTogQGljb25Gb250U2l6ZTtcbiAgbWFyZ2luOiBAaWNvbk1hcmdpbjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmFjY29yZGlvbiAuYWN0aXZlLnRpdGxlIC5kcm9wZG93bi5pY29uLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUgLmRyb3Bkb3duLmljb24ge1xuICB0cmFuc2Zvcm06IEBhY3RpdmVJY29uVHJhbnNmb3JtO1xufVxuXG4udWkuYWNjb3JkaW9uLm1lbnUgLml0ZW0gLmFjdGl2ZS50aXRsZSA+IC5kcm9wZG93bi5pY29uIHtcbiAgdHJhbnNmb3JtOiBAYWN0aXZlSWNvblRyYW5zZm9ybTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFN0eWxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnN0eWxlZC5hY2NvcmRpb24ge1xuICB3aWR0aDogQHN0eWxlZFdpZHRoO1xufVxuXG4udWkuc3R5bGVkLmFjY29yZGlvbixcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24ge1xuICBib3JkZXItcmFkaXVzOiBAc3R5bGVkQm9yZGVyUmFkaXVzO1xuICBiYWNrZ3JvdW5kOiBAc3R5bGVkQmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogQHN0eWxlZEJveFNoYWRvdztcbn1cbi51aS5zdHlsZWQuYWNjb3JkaW9uIC50aXRsZSxcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlIHtcbiAgbWFyZ2luOiBAc3R5bGVkVGl0bGVNYXJnaW47XG4gIHBhZGRpbmc6IEBzdHlsZWRUaXRsZVBhZGRpbmc7XG4gIGNvbG9yOiBAc3R5bGVkVGl0bGVDb2xvcjtcbiAgZm9udC13ZWlnaHQ6IEBzdHlsZWRUaXRsZUZvbnRXZWlnaHQ7XG4gIGJvcmRlci10b3A6IEBzdHlsZWRUaXRsZUJvcmRlcjtcbiAgdHJhbnNpdGlvbjogQHN0eWxlZFRpdGxlVHJhbnNpdGlvbjtcbn1cbi51aS5zdHlsZWQuYWNjb3JkaW9uID4gLnRpdGxlOmZpcnN0LWNoaWxkLFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGU6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG5cbi8qIENvbnRlbnQgKi9cbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5jb250ZW50LFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAuY29udGVudCB7XG4gIG1hcmdpbjogQHN0eWxlZENvbnRlbnRNYXJnaW47XG4gIHBhZGRpbmc6IEBzdHlsZWRDb250ZW50UGFkZGluZztcbn1cbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24gLmNvbnRlbnQge1xuICBtYXJnaW46IEBzdHlsZWRDaGlsZENvbnRlbnRNYXJnaW47XG4gIHBhZGRpbmc6IEBzdHlsZWRDaGlsZENvbnRlbnRQYWRkaW5nO1xufVxuXG5cbi8qIEhvdmVyICovXG4udWkuc3R5bGVkLmFjY29yZGlvbiAudGl0bGU6aG92ZXIsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWN0aXZlLnRpdGxlLFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGU6aG92ZXIsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiBAc3R5bGVkVGl0bGVIb3ZlckJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc3R5bGVkVGl0bGVIb3ZlckNvbG9yO1xufVxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGU6aG92ZXIsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiBAc3R5bGVkSG92ZXJDaGlsZFRpdGxlQmFja2dyb3VuZDtcbiAgY29sb3I6IEBzdHlsZWRIb3ZlckNoaWxkVGl0bGVDb2xvcjtcbn1cblxuXG4vKiBBY3RpdmUgKi9cbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiBAc3R5bGVkQWN0aXZlVGl0bGVCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHN0eWxlZEFjdGl2ZVRpdGxlQ29sb3I7XG59XG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiBAc3R5bGVkQWN0aXZlQ2hpbGRUaXRsZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc3R5bGVkQWN0aXZlQ2hpbGRUaXRsZUNvbG9yO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIE5vdCBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hY2NvcmRpb24gLnRpdGxlIH4gLmNvbnRlbnQ6bm90KC5hY3RpdmUpLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSB+IC5jb250ZW50Om5vdCguYWN0aXZlKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5hY2NvcmRpb24sXG4udWkuZmx1aWQuYWNjb3JkaW9uIC5hY2NvcmRpb24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmFjY29yZGlvbiAudGl0bGU6bm90KC51aSkge1xuICBjb2xvcjogQGludmVydGVkVGl0bGVDb2xvcjtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuXG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWNjb3JkaW9uJztcbiAgc3JjOlxuICAgIHVybChkYXRhOmFwcGxpY2F0aW9uL3gtZm9udC10dGY7Y2hhcnNldD11dGYtODtiYXNlNjQsQUFFQUFBQUxBSUFBQXdBd1QxTXZNZ2dqQjVBQUFBQzhBQUFBWUdOdFlYQVBmT0lLQUFBQkhBQUFBRXhuWVhOd0FBQUFFQUFBQVdnQUFBQUlaMng1WnJ5ajZIZ0FBQUZ3QUFBQXlHaGxZV1QvMEloSEFBQUNPQUFBQURab2FHVmhBcGtCNXdBQUFuQUFBQUFrYUcxMGVBSnVBQklBQUFLVUFBQUFHR3h2WTJFQWpBQldBQUFDckFBQUFBNXRZWGh3QUFnQUZnQUFBcndBQUFBZ2JtRnRaZkMxbjA0QUFBTGNBQUFCUEhCdmMzUUFBd0FBQUFBRUdBQUFBQ0FBQXdJQUFaQUFCUUFBQVV3QlpnQUFBRWNCVEFGbUFBQUE5UUFaQUlRQUFBQUFBQUFBQUFBQUFBQUFBQUFCRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFEdzJnSGcvK0QvNEFIZ0FDQUFBQUFCQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFDQUFBQUF3QUFBQlFBQXdBQkFBQUFGQUFFQURnQUFBQUtBQWdBQWdBQ0FBRUFJUERhLy8zLy93QUFBQUFBSVBEWi8vMy8vd0FCLytNUEt3QURBQUVBQUFBQUFBQUFBQUFBQUFFQUFmLy9BQThBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFTQUVrQXR3RnVBQk1BQURjMFB3RTJGellYRmgwQkZBY0dKd1l2QVNZMUVnYUFCUWdIQlFZR0JRY0lCWUFHMndjR2Z3Y0JBUWNFQ2Y4SUJBY0JBUWQvQmdZQUFBQUFBUUFBQUVrQXBRRnVBQk1BQURjUk5EYzJNeklmQVJZVkZBOEJCaU1pSnlZMUFBVUdCd2dGZ0FZR2dBVUlCd1lGV3dFQUNBVUdCb0FGQ0FjRmdBWUdCUWNBQUFBQkFBQUFBUUFBcVdZbHMxOFBQUFVBQ3dJQUFBQUFBTS85bys0QUFBQUF6LzJqN2dBQUFBQUF0d0Z1QUFBQUNBQUNBQUFBQUFBQUFBRUFBQUhnLytBQUFBSUFBQUFBQUFDM0FBRUFBQUFBQUFBQUFBQUFBQUFBQUFBR0FBQUFBQUFBQUFBQUFBQUFBUUFBQUFDM0FCSUF0d0FBQUFBQUFBQUtBQlFBSGdCQ0FHUUFBQUFCQUFBQUJnQVVBQUVBQUFBQUFBSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEZ0N1QUFFQUFBQUFBQUVBREFBQUFBRUFBQUFBQUFJQURnQkFBQUVBQUFBQUFBTUFEQUFpQUFFQUFBQUFBQVFBREFCT0FBRUFBQUFBQUFVQUZnQU1BQUVBQUFBQUFBWUFCZ0F1QUFFQUFBQUFBQW9BTkFCYUFBTUFBUVFKQUFFQURBQUFBQU1BQVFRSkFBSUFEZ0JBQUFNQUFRUUpBQU1BREFBaUFBTUFBUVFKQUFRQURBQk9BQU1BQVFRSkFBVUFGZ0FNQUFNQUFRUUpBQVlBREFBMEFBTUFBUVFKQUFvQU5BQmFBSElBWVFCMEFHa0FiZ0JuQUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1BQnlBR0VBZEFCcEFHNEFaM0poZEdsdVp3QnlBR0VBZEFCcEFHNEFad0JTQUdVQVp3QjFBR3dBWVFCeUFISUFZUUIwQUdrQWJnQm5BRVlBYndCdUFIUUFJQUJuQUdVQWJnQmxBSElBWVFCMEFHVUFaQUFnQUdJQWVRQWdBRWtBWXdCdkFFMEFid0J2QUc0QUxnQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKGRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGQwOUdSazlVVkU4QUFBU3dBQW9BQUFBQUJHZ0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCRFJrWWdBQUFBOUFBQUFTMEFBQUV0RnBvdnVFOVRMeklBQUFJa0FBQUFZQUFBQUdBSUl3ZVFZMjFoY0FBQUFvUUFBQUJNQUFBQVRBOTg0Z3BuWVhOd0FBQUMwQUFBQUFnQUFBQUlBQUFBRUdobFlXUUFBQUxZQUFBQU5nQUFBRGIvMEloSGFHaGxZUUFBQXhBQUFBQWtBQUFBSkFLWkFlZG9iWFI0QUFBRE5BQUFBQmdBQUFBWUFtNEFFbTFoZUhBQUFBTk1BQUFBQmdBQUFBWUFCbEFBYm1GdFpRQUFBMVFBQUFFOEFBQUJQUEMxbjA1d2IzTjBBQUFFa0FBQUFDQUFBQUFnQUFNQUFBRUFCQVFBQVFFQkIzSmhkR2x1WndBQkFnQUJBRHI0SEFMNEd3UDRHQVFlQ2dBWlUvK0xpeDRLQUJsVC80dUxEQWVMYS9pVStIUUZIUUFBQUhrUEhRQUFBSDRSSFFBQUFBa2RBQUFCSkJJQUJ3RUJCdzBQRVJRWkhuSmhkR2x1WjNKaGRHbHVaM1V3ZFRGMU1qQjFSakJFT1hWR01FUkJBQUFDQVlrQUJBQUdBUUVFQndvTlZwMzhsQTc4bEE3OGxBNzdsQTc3M1ozM2J4V0xrSTJRajQ0STl4VDNGQVdPajVDTmtJdVFpNCtKam9lUGlJMkdpNFlJaS91VUJZdUdpWWVIaUlpSGg0bUdpNGFMaG8ySWp3ajdGUGNVQlllT2lZK0xrQWdPKzkyTDVoV0w5NVFGaTVDTmtJNk9qNCtQalpDTGtJdVFpWTZIQ1BjVSt4UUZqNGlOaG91R2k0YUpoNGVJQ1BzVSt4UUZpSWVHaVlhTGhvdUhqWWVQaUk2Smo0dVFDQTc0bEJUNGxCV0xEQW9BQUFBQUF3SUFBWkFBQlFBQUFVd0JaZ0FBQUVjQlRBRm1BQUFBOVFBWkFJUUFBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHcyZ0hnLytELzRBSGdBQ0FBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQ0FBQUFBd0FBQUJRQUF3QUJBQUFBRkFBRUFEZ0FBQUFLQUFnQUFnQUNBQUVBSVBEYS8vMy8vd0FBQUFBQUlQRFovLzMvL3dBQi8rTVBLd0FEQUFFQUFBQUFBQUFBQUFBQUFBRUFBZi8vQUE4QUFRQUFBQUVBQURmWU9KWmZEenoxQUFzQ0FBQUFBQURQL2FQdUFBQUFBTS85bys0QUFBQUFBTGNCYmdBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFCNFAvZ0FBQUNBQUFBQUFBQXR3QUJBQUFBQUFBQUFBQUFBQUFBQUFBQUJnQUFBQUFBQUFBQUFBQUFBQUVBQUFBQXR3QVNBTGNBQUFBQVVBQUFCZ0FBQUFBQURnQ3VBQUVBQUFBQUFBRUFEQUFBQUFFQUFBQUFBQUlBRGdCQUFBRUFBQUFBQUFNQURBQWlBQUVBQUFBQUFBUUFEQUJPQUFFQUFBQUFBQVVBRmdBTUFBRUFBQUFBQUFZQUJnQXVBQUVBQUFBQUFBb0FOQUJhQUFNQUFRUUpBQUVBREFBQUFBTUFBUVFKQUFJQURnQkFBQU1BQVFRSkFBTUFEQUFpQUFNQUFRUUpBQVFBREFCT0FBTUFBUVFKQUFVQUZnQU1BQU1BQVFRSkFBWUFEQUEwQUFNQUFRUUpBQW9BTkFCYUFISUFZUUIwQUdrQWJnQm5BRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUFCeUFHRUFkQUJwQUc0QVozSmhkR2x1WndCeUFHRUFkQUJwQUc0QVp3QlNBR1VBWndCMUFHd0FZUUJ5QUhJQVlRQjBBR2tBYmdCbkFFWUFid0J1QUhRQUlBQm5BR1VBYmdCbEFISUFZUUIwQUdVQVpBQWdBR0lBZVFBZ0FFa0FZd0J2QUUwQWJ3QnZBRzRBTGdBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEpIGZvcm1hdCgnd29mZicpXG4gIDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKiBEcm9wZG93biBJY29uICovXG4udWkuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbixcbi51aS5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGUgLmRyb3Bkb3duLmljb24ge1xuICBmb250LWZhbWlseTogQWNjb3JkaW9uO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLmFjY29yZGlvbiAudGl0bGUgLmRyb3Bkb3duLmljb246YmVmb3JlLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMGRhJy8qcnRsOidcXGYwZDknKi87XG59XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBDYWxlbmRhclxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ21vZHVsZSc7XG5AZWxlbWVudCA6ICdjYWxlbmRhcic7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFBvcHVwXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuY2FsZW5kYXIgLnVpLnBvcHVwIHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ2FsZW5kYXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5jYWxlbmRhciAuY2FsZW5kYXI6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgR3JpZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmNhbGVuZGFyIC51aS5wb3B1cCAudWkuZ3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udWkuY2FsZW5kYXIgLnVpLnBvcHVwIC51aS5ncmlkID4gLmNvbHVtbiB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGFibGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5jYWxlbmRhciAudWkudGFibGUueWVhcixcbi51aS5jYWxlbmRhciAudWkudGFibGUubW9udGgsXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlLm1pbnV0ZSB7XG4gIG1pbi13aWR0aDogMTVlbTtcbn1cblxuLnVpLmNhbGVuZGFyIC51aS50YWJsZS5kYXkge1xuICBtaW4td2lkdGg6IDE4ZW07XG59XG5cbi51aS5jYWxlbmRhciAudWkudGFibGUuZGF5LmFuZHdlZWsge1xuICBtaW4td2lkdGg6IDIyZW07XG59XG5cbi51aS5jYWxlbmRhciAudWkudGFibGUuaG91ciB7XG4gIG1pbi13aWR0aDogMjBlbTtcbn1cblxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0aCxcbi51aS5jYWxlbmRhciAudWkudGFibGUgdHIgdGQge1xuICBwYWRkaW5nOiAwLjVlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0aCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIHRoIC5pY29uIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyOmZpcnN0LWNoaWxkIHRoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi51aS5jYWxlbmRhciAudWkudGFibGUuZGF5IHRyOmZpcnN0LWNoaWxkIHRoIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlLmRheSB0cjpudGgtY2hpbGQoMikgdGgge1xuICBwYWRkaW5nLXRvcDogMC4yZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjNlbTtcbn1cblxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0ZCB7XG4gIHBhZGRpbmctbGVmdDogMC4xZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuMWVtO1xufVxuXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIC5saW5rIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIC5wcmV2Lmxpbmsge1xuICB3aWR0aDogMTQuMjg1NzE0MjklO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG59XG5cbi51aS5jYWxlbmRhciAudWkudGFibGUgdHIgLm5leHQubGluayB7XG4gIHdpZHRoOiAxNC4yODU3MTQyOSU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG59XG5cbi51aS5jYWxlbmRhciAudWkudGFibGUgdHIgLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6IEBkaXNhYmxlZFRleHRDb2xvcjtcbn1cblxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciAuYWRqYWNlbnQ6bm90KC5kaXNhYmxlZCkge1xuICBjb2xvcjogQGFkamFjZW50VGV4dENvbG9yO1xuICBiYWNrZ3JvdW5kOiBAYWRqYWNlbnRCYWNrZ3JvdW5kO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0ZC50b2RheSB7XG4gIGZvbnQtd2VpZ2h0OiBAdG9kYXlGb250V2VpZ2h0O1xufVxuXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIHRkLnJhbmdlIHtcbiAgYmFja2dyb3VuZDogQHJhbmdlQmFja2dyb3VuZDtcbiAgY29sb3I6IEByYW5nZVRleHRDb2xvcjtcbiAgYm94LXNoYWRvdzogQHJhbmdlQm94U2hhZG93O1xufVxuXG4udWkuY2FsZW5kYXIgLnVpLnRhYmxlLmludmVydGVkIHRyIHRkLnJhbmdlIHtcbiAgYmFja2dyb3VuZDogQHJhbmdlSW52ZXJ0ZWRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHJhbmdlSW52ZXJ0ZWRUZXh0Q29sb3I7XG4gIGJveC1zaGFkb3c6IEByYW5nZUludmVydGVkQm94U2hhZG93O1xufVxuXG4udWkuY2FsZW5kYXI6bm90KC5kaXNhYmxlZCkgLmNhbGVuZGFyOmZvY3VzIC51aS50YWJsZSB0Ym9keSB0ciB0ZC5mb2N1cyxcbi51aS5jYWxlbmRhcjpub3QoLmRpc2FibGVkKSAuY2FsZW5kYXIuYWN0aXZlIC51aS50YWJsZSB0Ym9keSB0ciB0ZC5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IEBmb2N1c0JveFNoYWRvdztcbn1cblxuLnVpLmNhbGVuZGFyOm5vdCguZGlzYWJsZWQpIC5jYWxlbmRhcjpmb2N1cyAudWkudGFibGUuaW52ZXJ0ZWQgdGJvZHkgdHIgdGQuZm9jdXMsXG4udWkuY2FsZW5kYXI6bm90KC5kaXNhYmxlZCkgLmNhbGVuZGFyLmFjdGl2ZSAudWkudGFibGUuaW52ZXJ0ZWQgdGJvZHkgdHIgdGQuZm9jdXMge1xuICBib3gtc2hhZG93OiBAZm9jdXNJbnZlcnRlZEJveFNoYWRvdztcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGlzYWJsZWQuY2FsZW5kYXIge1xuICBvcGFjaXR5OiBAZGlzYWJsZWRPcGFjaXR5O1xufVxuXG4udWkuZGlzYWJsZWQuY2FsZW5kYXIgPiAuaW5wdXQsXG4udWkuZGlzYWJsZWQuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIC5saW5rIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gQ2hlY2tib3hcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAnY2hlY2tib3gnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIENoZWNrYm94XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdXRsaW5lOiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxuICBtaW4taGVpZ2h0OiBAY2hlY2tib3hTaXplO1xuICBmb250LXNpemU6IEByZWxhdGl2ZU1lZGl1bTtcbiAgbGluZS1oZWlnaHQ6IEBjaGVja2JveExpbmVIZWlnaHQ7XG4gIG1pbi13aWR0aDogQGNoZWNrYm94U2l6ZTtcbn1cblxuLyogSFRNTCBDaGVja2JveCAqL1xuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi51aS5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHotaW5kZXg6IDM7XG4gIHdpZHRoOiBAY2hlY2tib3hTaXplO1xuICBoZWlnaHQ6IEBjaGVja2JveFNpemU7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgQm94XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi51aS5jaGVja2JveCAuYm94LFxuLnVpLmNoZWNrYm94IGxhYmVsIHtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IEBsYWJlbERpc3RhbmNlO1xuICBvdXRsaW5lOiBub25lO1xuICBmb250LXNpemU6IEBsYWJlbEZvbnRTaXplO1xufVxuXG4udWkuY2hlY2tib3ggLmJveDpiZWZvcmUsXG4udWkuY2hlY2tib3ggbGFiZWw6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cbiAgd2lkdGg6IEBjaGVja2JveFNpemU7XG4gIGhlaWdodDogQGNoZWNrYm94U2l6ZTtcbiAgY29udGVudDogJyc7XG5cbiAgYmFja2dyb3VuZDogQGNoZWNrYm94QmFja2dyb3VuZDtcbiAgYm9yZGVyLXJhZGl1czogQGNoZWNrYm94Qm9yZGVyUmFkaXVzO1xuXG4gIHRyYW5zaXRpb246IEBjaGVja2JveFRyYW5zaXRpb247XG4gIGJvcmRlcjogQGNoZWNrYm94Qm9yZGVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ2hlY2ttYXJrXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggLmJveDphZnRlcixcbi51aS5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiBAY2hlY2tib3hDaGVja0ZvbnRTaXplO1xuICB0b3A6IEBjaGVja2JveENoZWNrVG9wO1xuICBsZWZ0OiBAY2hlY2tib3hDaGVja0xlZnQ7XG4gIHdpZHRoOiBAY2hlY2tib3hDaGVja1NpemU7XG4gIGhlaWdodDogQGNoZWNrYm94Q2hlY2tTaXplO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgb3BhY2l0eTogMDtcbiAgY29sb3I6IEBjaGVja2JveENvbG9yO1xuICB0cmFuc2l0aW9uOiBAY2hlY2tib3hUcmFuc2l0aW9uO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBMYWJlbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5zaWRlICovXG4udWkuY2hlY2tib3ggbGFiZWwsXG4udWkuY2hlY2tib3ggKyBsYWJlbCB7XG4gIGNvbG9yOiBAbGFiZWxDb2xvcjtcbiAgdHJhbnNpdGlvbjogQGxhYmVsVHJhbnNpdGlvbjtcbn1cblxuLyogT3V0c2lkZSAqL1xuLnVpLmNoZWNrYm94ICsgbGFiZWwge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IC5ib3g6aG92ZXI6OmJlZm9yZSxcbi51aS5jaGVja2JveCBsYWJlbDpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGNoZWNrYm94SG92ZXJCYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6IEBjaGVja2JveEhvdmVyQm9yZGVyQ29sb3I7XG59XG4udWkuY2hlY2tib3ggbGFiZWw6aG92ZXIsXG4udWkuY2hlY2tib3ggKyBsYWJlbDpob3ZlciB7XG4gIGNvbG9yOiBAbGFiZWxIb3ZlckNvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBEb3duXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggLmJveDphY3RpdmU6OmJlZm9yZSxcbi51aS5jaGVja2JveCBsYWJlbDphY3RpdmU6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBjaGVja2JveFByZXNzZWRCYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6IEBjaGVja2JveFByZXNzZWRCb3JkZXJDb2xvcjtcbn1cbi51aS5jaGVja2JveCAuYm94OmFjdGl2ZTo6YWZ0ZXIsXG4udWkuY2hlY2tib3ggbGFiZWw6YWN0aXZlOjphZnRlciB7XG4gIGNvbG9yOiBAY2hlY2tib3hQcmVzc2VkQ29sb3I7XG59XG4udWkuY2hlY2tib3ggaW5wdXQ6YWN0aXZlIH4gbGFiZWwge1xuICBjb2xvcjogQGxhYmVsUHJlc3NlZENvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiAuYm94OmJlZm9yZSxcbi51aS5jaGVja2JveCBpbnB1dDpmb2N1cyB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBjaGVja2JveEZvY3VzQmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBAY2hlY2tib3hGb2N1c0JvcmRlckNvbG9yO1xufVxuLnVpLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gLmJveDphZnRlcixcbi51aS5jaGVja2JveCBpbnB1dDpmb2N1cyB+IGxhYmVsOmFmdGVyIHtcbiAgY29sb3I6IEBjaGVja2JveEZvY3VzQ2hlY2tDb2xvcjtcbn1cbi51aS5jaGVja2JveCBpbnB1dDpmb2N1cyB+IGxhYmVsIHtcbiAgY29sb3I6IEBsYWJlbEZvY3VzQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBAY2hlY2tib3hBY3RpdmVCYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6IEBjaGVja2JveEFjdGl2ZUJvcmRlckNvbG9yO1xufVxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIG9wYWNpdHk6IEBjaGVja2JveEFjdGl2ZUNoZWNrT3BhY2l0eTtcbiAgY29sb3I6IEBjaGVja2JveEFjdGl2ZUNoZWNrQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgSW5kZXRlcm1pbmF0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGUgfiAuYm94OmJlZm9yZSxcbi51aS5jaGVja2JveCBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTppbmRldGVybWluYXRlIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGNoZWNrYm94SW5kZXRlcm1pbmF0ZUJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogQGNoZWNrYm94SW5kZXRlcm1pbmF0ZUJvcmRlckNvbG9yO1xufVxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGUgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGUgfiBsYWJlbDphZnRlciB7XG4gIG9wYWNpdHk6IEBjaGVja2JveEluZGV0ZXJtaW5hdGVDaGVja09wYWNpdHk7XG4gIGNvbG9yOiBAY2hlY2tib3hJbmRldGVybWluYXRlQ2hlY2tDb2xvcjtcbn1cbi51aS5pbmRldGVybWluYXRlLnRvZ2dsZS5jaGVja2JveCB7XG4gICYgaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZSB+IGxhYmVsOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogQHRvZ2dsZUNlbnRlckxhbmVCYWNrZ3JvdW5kO1xuICB9XG4gICYgaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSkgfiBsYWJlbDphZnRlciB7XG4gICAgbGVmdDogQHRvZ2dsZUNlbnRlck9mZnNldDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIEFjdGl2ZSBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGU6Zm9jdXMgfiAuYm94OmJlZm9yZSxcbi51aS5jaGVja2JveCBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTppbmRldGVybWluYXRlOmZvY3VzIH4gbGFiZWw6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQ6Zm9jdXMgfiAuYm94OmJlZm9yZSxcbi51aS5jaGVja2JveCBpbnB1dDpjaGVja2VkOmZvY3VzIH4gbGFiZWw6YmVmb3JlICB7XG4gIGJhY2tncm91bmQ6IEBjaGVja2JveEFjdGl2ZUZvY3VzQmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBAY2hlY2tib3hBY3RpdmVGb2N1c0JvcmRlckNvbG9yO1xufVxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGU6Zm9jdXMgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGU6Zm9jdXMgfiBsYWJlbDphZnRlcixcbi51aS5jaGVja2JveCBpbnB1dDpjaGVja2VkOmZvY3VzIH4gLmJveDphZnRlcixcbi51aS5jaGVja2JveCBpbnB1dDpjaGVja2VkOmZvY3VzIH4gbGFiZWw6YWZ0ZXIge1xuICBjb2xvcjogQGNoZWNrYm94QWN0aXZlRm9jdXNDaGVja0NvbG9yO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBSZWFkLU9ubHlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5yZWFkLW9ubHkuY2hlY2tib3gsXG4udWkucmVhZC1vbmx5LmNoZWNrYm94IGxhYmVsIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXNhYmxlZC5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLmRpc2FibGVkLmNoZWNrYm94IGxhYmVsLFxuLnVpLmNoZWNrYm94IGlucHV0W2Rpc2FibGVkXSB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXRbZGlzYWJsZWRdIH4gbGFiZWwge1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogQGRpc2FibGVkQ2hlY2tib3hPcGFjaXR5O1xuICBjb2xvcjogQGRpc2FibGVkQ2hlY2tib3hMYWJlbENvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEhpZGRlblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5pdGlhbGl6ZWQgY2hlY2tib3ggbW92ZXMgaW5wdXQgYmVsb3cgZWxlbWVudFxuIHRvIHByZXZlbnQgbWFudWFsbHkgdHJpZ2dlcmluZyAqL1xuLnVpLmNoZWNrYm94IGlucHV0LmhpZGRlbiB7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4vKiBTZWxlY3RhYmxlIExhYmVsICovXG4udWkuY2hlY2tib3ggaW5wdXQuaGlkZGVuICsgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSYWRpb1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJhZGlvLmNoZWNrYm94IHtcbiAgbWluLWhlaWdodDogQHJhZGlvU2l6ZTtcbn1cblxuLnVpLnJhZGlvLmNoZWNrYm94IC5ib3gsXG4udWkucmFkaW8uY2hlY2tib3ggbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IEByYWRpb0xhYmVsRGlzdGFuY2U7XG59XG5cbi8qIEJveCAqL1xuLnVpLnJhZGlvLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLnJhZGlvLmNoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICB0cmFuc2Zvcm06IG5vbmU7XG5cbiAgd2lkdGg6IEByYWRpb1NpemU7XG4gIGhlaWdodDogQHJhZGlvU2l6ZTtcbiAgYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xuICB0b3A6IEByYWRpb1RvcDtcbiAgbGVmdDogQHJhZGlvTGVmdDtcbn1cblxuLyogQnVsbGV0ICovXG4udWkucmFkaW8uY2hlY2tib3ggLmJveDphZnRlcixcbi51aS5yYWRpby5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29udGVudDogJycgIWltcG9ydGFudDtcbiAgd2lkdGg6IEByYWRpb1NpemU7XG4gIGhlaWdodDogQHJhZGlvU2l6ZTtcbiAgbGluZS1oZWlnaHQ6IEByYWRpb1NpemU7XG59XG5cbi8qIFJhZGlvIENoZWNrYm94ICovXG4udWkucmFkaW8uY2hlY2tib3ggLmJveDphZnRlcixcbi51aS5yYWRpby5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIHRvcDogQGJ1bGxldFRvcDtcbiAgbGVmdDogQGJ1bGxldExlZnQ7XG4gIHdpZHRoOiBAcmFkaW9TaXplO1xuICBoZWlnaHQ6IEByYWRpb1NpemU7XG4gIGJvcmRlci1yYWRpdXM6IEBidWxsZXRSYWRpdXM7XG4gIHRyYW5zZm9ybTogc2NhbGUoQGJ1bGxldFNjYWxlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJ1bGxldENvbG9yO1xufVxuXG4vKiBGb2N1cyAqL1xuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gLmJveDpiZWZvcmUsXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcmFkaW9Gb2N1c0JhY2tncm91bmQ7XG59XG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiAuYm94OmFmdGVyLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gbGFiZWw6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcmFkaW9Gb2N1c0J1bGxldENvbG9yO1xufVxuXG4vKiBJbmRldGVybWluYXRlICovXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5ib3g6YWZ0ZXIsXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLyogQWN0aXZlICovXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcmFkaW9BY3RpdmVCYWNrZ3JvdW5kO1xufVxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEByYWRpb0FjdGl2ZUJ1bGxldENvbG9yO1xufVxuXG4vKiBBY3RpdmUgRm9jdXMgKi9cbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEByYWRpb0FjdGl2ZUZvY3VzQmFja2dyb3VuZDtcbn1cbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveDphZnRlcixcbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcmFkaW9BY3RpdmVGb2N1c0J1bGxldENvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNsaWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNsaWRlci5jaGVja2JveCB7XG4gIG1pbi1oZWlnaHQ6IEBzbGlkZXJIZWlnaHQ7XG59XG5cbi8qIElucHV0ICovXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0IHtcbiAgd2lkdGg6IEBzbGlkZXJXaWR0aDtcbiAgaGVpZ2h0OiBAc2xpZGVySGVpZ2h0O1xufVxuXG4vKiBMYWJlbCAqL1xuLnVpLnNsaWRlci5jaGVja2JveCAuYm94LFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogQHNsaWRlckxhYmVsRGlzdGFuY2U7XG4gIGxpbmUtaGVpZ2h0OiBAc2xpZGVyTGFiZWxMaW5lSGVpZ2h0O1xuICBjb2xvcjogQHNsaWRlck9mZkxhYmVsQ29sb3I7XG59XG5cbi8qIExpbmUgKi9cbi51aS5zbGlkZXIuY2hlY2tib3ggLmJveDpiZWZvcmUsXG4udWkuc2xpZGVyLmNoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuXG4gIHRvcDogQHNsaWRlckxpbmVWZXJ0aWNhbE9mZnNldDtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAc2xpZGVyTGluZUNvbG9yO1xuICB3aWR0aDogQHNsaWRlckxpbmVXaWR0aDtcbiAgaGVpZ2h0OiBAc2xpZGVyTGluZUhlaWdodDtcblxuICBib3JkZXItcmFkaXVzOiBAc2xpZGVyTGluZVJhZGl1cztcbiAgdHJhbnNpdGlvbjogQHNsaWRlckxpbmVUcmFuc2l0aW9uO1xuXG59XG5cbi8qIEhhbmRsZSAqL1xuLnVpLnNsaWRlci5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQ6IEBoYW5kbGVCYWNrZ3JvdW5kO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDI7XG5cbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBAaGFuZGxlQm94U2hhZG93O1xuICB3aWR0aDogQHNsaWRlckhhbmRsZVNpemU7XG4gIGhlaWdodDogQHNsaWRlckhhbmRsZVNpemU7XG4gIHRvcDogQHNsaWRlckhhbmRsZU9mZnNldDtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiBub25lO1xuXG4gIGJvcmRlci1yYWRpdXM6IEBjaXJjdWxhclJhZGl1cztcbiAgdHJhbnNpdGlvbjogQHNsaWRlckhhbmRsZVRyYW5zaXRpb247XG59XG5cbi8qIEZvY3VzICovXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gLmJveDpiZWZvcmUsXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRvZ2dsZUZvY3VzQ29sb3I7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLyogSG92ZXIgKi9cbi51aS5zbGlkZXIuY2hlY2tib3ggLmJveDpob3Zlcixcbi51aS5zbGlkZXIuY2hlY2tib3ggbGFiZWw6aG92ZXIge1xuICBjb2xvcjogQHNsaWRlckhvdmVyTGFiZWxDb2xvcjtcbn1cbi51aS5zbGlkZXIuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbDpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQHNsaWRlckhvdmVyTGFuZUJhY2tncm91bmQ7XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveCxcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IEBzbGlkZXJPbkxhYmVsQ29sb3IgIWltcG9ydGFudDtcbn1cbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHNsaWRlck9uTGluZUNvbG9yICFpbXBvcnRhbnQ7XG59XG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIge1xuICBsZWZ0OiBAc2xpZGVyVHJhdmVsRGlzdGFuY2U7XG59XG5cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveCxcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IEBzbGlkZXJPbkZvY3VzTGFiZWxDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAc2xpZGVyT25Gb2N1c0xpbmVDb2xvciAhaW1wb3J0YW50O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVG9nZ2xlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudG9nZ2xlLmNoZWNrYm94IHtcbiAgbWluLWhlaWdodDogQHRvZ2dsZUhlaWdodDtcbn1cblxuLyogSW5wdXQgKi9cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQge1xuICB3aWR0aDogQHRvZ2dsZVdpZHRoO1xuICBoZWlnaHQ6IEB0b2dnbGVIZWlnaHQ7XG59XG5cbi8qIExhYmVsICovXG4udWkudG9nZ2xlLmNoZWNrYm94IC5ib3gsXG4udWkudG9nZ2xlLmNoZWNrYm94IGxhYmVsIHtcbiAgbWluLWhlaWdodDogQHRvZ2dsZUhhbmRsZVNpemU7XG4gIHBhZGRpbmctbGVmdDogQHRvZ2dsZUxhYmVsRGlzdGFuY2U7XG4gIGNvbG9yOiBAdG9nZ2xlT2ZmTGFiZWxDb2xvcjtcbn1cbi51aS50b2dnbGUuY2hlY2tib3ggbGFiZWwge1xuICBwYWRkaW5nLXRvcDogQHRvZ2dsZUxhYmVsT2Zmc2V0O1xufVxuXG4vKiBTd2l0Y2ggKi9cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcblxuICB0b3A6IEB0b2dnbGVMYW5lVmVydGljYWxPZmZzZXQ7XG5cbiAgYmFja2dyb3VuZDogQHRvZ2dsZUxhbmVCYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiBAdG9nZ2xlTGFuZUJveFNoYWRvdztcbiAgd2lkdGg6IEB0b2dnbGVMYW5lV2lkdGg7XG4gIGhlaWdodDogQHRvZ2dsZUxhbmVIZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6IEB0b2dnbGVIYW5kbGVSYWRpdXM7XG59XG5cbi8qIEhhbmRsZSAqL1xuLnVpLnRvZ2dsZS5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQ6IEBoYW5kbGVCYWNrZ3JvdW5kO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDI7XG5cbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBAaGFuZGxlQm94U2hhZG93O1xuICB3aWR0aDogQHRvZ2dsZUhhbmRsZVNpemU7XG4gIGhlaWdodDogQHRvZ2dsZUhhbmRsZVNpemU7XG4gIHRvcDogQHRvZ2dsZUhhbmRsZU9mZnNldDtcbiAgbGVmdDogMDtcblxuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG4gIHRyYW5zaXRpb246IEB0b2dnbGVIYW5kbGVUcmFuc2l0aW9uO1xufVxuXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0IH4gLmJveDphZnRlcixcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQgfiBsYWJlbDphZnRlciB7XG4gIGxlZnQ6IEB0b2dnbGVPZmZPZmZzZXQ7XG4gIGJveC1zaGFkb3c6IEB0b2dnbGVPZmZIYW5kbGVCb3hTaGFkb3c7XG59XG5cbi8qIEZvY3VzICovXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gLmJveDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRvZ2dsZUZvY3VzQ29sb3I7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLyogSG92ZXIgKi9cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBsYWJlbDpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRvZ2dsZUhvdmVyQ29sb3I7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLyogQWN0aXZlICovXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94LFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogQHRvZ2dsZU9uTGFiZWxDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdG9nZ2xlT25MYW5lQ29sb3IgIWltcG9ydGFudDtcbn1cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YWZ0ZXIsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIGxlZnQ6IEB0b2dnbGVPbk9mZnNldDtcbiAgYm94LXNoYWRvdzogQHRvZ2dsZU9uSGFuZGxlQm94U2hhZG93O1xufVxuXG5cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveCxcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IEB0b2dnbGVPbkZvY3VzTGFiZWxDb2xvciAhaW1wb3J0YW50O1xufVxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdG9nZ2xlT25Gb2N1c0xhbmVDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXR0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5maXR0ZWQuY2hlY2tib3ggLmJveCxcbi51aS5maXR0ZWQuY2hlY2tib3ggbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnVpLmZpdHRlZC50b2dnbGUuY2hlY2tib3gge1xuICB3aWR0aDogQHRvZ2dsZVdpZHRoO1xufVxuXG4udWkuZml0dGVkLnNsaWRlci5jaGVja2JveCB7XG4gIHdpZHRoOiBAc2xpZGVyV2lkdGg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG4udWkuaW52ZXJ0ZWQuY2hlY2tib3ggbGFiZWwsXG4udWkuaW52ZXJ0ZWQuY2hlY2tib3ggKyBsYWJlbCB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3IgIWltcG9ydGFudDtcbn1cblxuLyogSG92ZXIgKi9cbi51aS5pbnZlcnRlZC5jaGVja2JveCAuYm94OmhvdmVyLFxuLnVpLmludmVydGVkLmNoZWNrYm94IGxhYmVsOmhvdmVyIHtcbiAgY29sb3I6IEBpbnZlcnRlZEhvdmVyZWRUZXh0Q29sb3IgIWltcG9ydGFudDtcbn1cbi51aS5pbnZlcnRlZC5jaGVja2JveCAuYm94OmhvdmVyOjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuY2hlY2tib3ggbGFiZWw6aG92ZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogQHN0cm9uZ1NlbGVjdGVkQm9yZGVyQ29sb3I7XG59XG5cbi8qU2xpZGVyIExhYmVsICovXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IC5ib3gsXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IGxhYmVsIHtcbiAgY29sb3I6IEBpbnZlcnRlZFVuc2VsZWN0ZWRUZXh0Q29sb3I7XG59XG5cbi8qIFNsaWRlciBMaW5lICovXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRVbnNlbGVjdGVkVGV4dENvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNsaWRlciBIb3ZlciAqL1xuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCAuYm94OmhvdmVyOjpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRMaWdodFRleHRDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKiBTbGlkZXIgQWN0aXZlICovXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94LFxuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogQGludmVydGVkU2VsZWN0ZWRUZXh0Q29sb3IgIWltcG9ydGFudDtcbn1cbi51aS5pbnZlcnRlZC5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHNlbGVjdGVkV2hpdGVCb3JkZXJDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKiBTbGlkZXIgQWN0aXZlIEZvY3VzICovXG4udWkuaW52ZXJ0ZWQuc2xpZGVyLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiAuYm94LFxuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogQGludmVydGVkU2VsZWN0ZWRUZXh0Q29sb3IgIWltcG9ydGFudDtcbn1cbi51aS5pbnZlcnRlZC5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLmludmVydGVkLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHNlbGVjdGVkV2hpdGVCb3JkZXJDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKiBUb2dnbGUgU3dpdGNoICovXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRUZXh0Q29sb3IgIWltcG9ydGFudDtcbn1cblxuLyogVG9nZ2xlIEhvdmVyICovXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IC5ib3g6aG92ZXI6OmJlZm9yZSxcbi51aS5pbnZlcnRlZC50b2dnbGUuY2hlY2tib3ggbGFiZWw6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEhvdmVyZWRUZXh0Q29sb3IgIWltcG9ydGFudDtcbn1cblxuLyogVG9nZ2xlIEFjdGl2ZSAqL1xuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveCxcbi51aS5pbnZlcnRlZC50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IEBpbnZlcnRlZFNlbGVjdGVkVGV4dENvbG9yICFpbXBvcnRhbnQ7XG59XG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmJlZm9yZSxcbi51aS5pbnZlcnRlZC50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0b2dnbGVPbkxhbmVDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKiBUb2dnbGUgQWN0aXZlIEZvY3VzICovXG4udWkuaW52ZXJ0ZWQudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiAuYm94LFxuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogQGludmVydGVkU2VsZWN0ZWRUZXh0Q29sb3IgIWltcG9ydGFudDtcbn1cbi51aS5pbnZlcnRlZC50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLmludmVydGVkLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRvZ2dsZU9uRm9jdXNMYW5lQ29sb3IgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEB2YXJpYXRpb25DaGVja2JveFNpemVzLCB7XG4gIEByYXc6IEB7dmFsdWV9UmF3O1xuICBAc2l6ZTogQHt2YWx1ZX1DaGVja2JveFNpemU7XG4gIEBjaXJjbGVTY2FsZTogQHt2YWx1ZX1DaGVja2JveENpcmNsZVNjYWxlO1xuICBAY2lyY2xlTGVmdDogQHt2YWx1ZX1DaGVja2JveENpcmNsZUxlZnQ7XG5cbiAgLnVpLkB7dmFsdWV9LmNoZWNrYm94IHtcbiAgICBmb250LXNpemU6IEBAc2l6ZTtcbiAgfVxuXG4gICYgd2hlbiAoQEByYXcgPiAxKSB7XG4gICAgLnVpLkB7dmFsdWV9LmZvcm0gLmNoZWNrYm94LFxuICAgIC51aS5Ae3ZhbHVlfS5jaGVja2JveCB7XG4gICAgICAmOm5vdCguc2xpZGVyKTpub3QoLnRvZ2dsZSk6bm90KC5yYWRpbykge1xuICAgICAgICAmXG4gICAgICAgIC5ib3g6YWZ0ZXIsXG4gICAgICAgIC5ib3g6YmVmb3JlLFxuICAgICAgICBsYWJlbDphZnRlcixcbiAgICAgICAgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKEBAcmF3KTtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYucmFkaW8ge1xuICAgICAgICAmXG4gICAgICAgIC5ib3g6YmVmb3JlLFxuICAgICAgICBsYWJlbDpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoQEByYXcpO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46bGVmdDtcbiAgICAgICAgfVxuICAgICAgICAmXG4gICAgICAgIC5ib3g6YWZ0ZXIsXG4gICAgICAgIGxhYmVsOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06c2NhbGUoQEBjaXJjbGVTY2FsZSk7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjpsZWZ0O1xuICAgICAgICAgIGxlZnQ6IEBAY2lyY2xlTGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSlcblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ2hlY2tib3gnO1xuICBzcmM6XG4gICAgdXJsKGRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nOFNCRDhBQUFDOEFBQUFZR050WVhBWVZ0Q0pBQUFCSEFBQUFGUm5ZWE53QUFBQUVBQUFBWEFBQUFBSVoyeDVabjRodXdVQUFBRjRBQUFCWUdobFlXUUdQZTFaQUFBQzJBQUFBRFpvYUdWaEIzMER5QUFBQXhBQUFBQWthRzEwZUJCS0FFVUFBQU0wQUFBQUhHeHZZMkVBbWdFU0FBQURVQUFBQUJCdFlYaHdBQWtBTHdBQUEyQUFBQUFnYm1GdFpTQzhJdWdBQUFPQUFBQUJrbkJ2YzNRQUF3QUFBQUFGRkFBQUFDQUFBd01UQVpBQUJRQUFBcGtDekFBQUFJOENtUUxNQUFBQjZ3QXpBUWtBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQURvQWdQQS84QUFRQVBBQUVBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQURBQUFBQXdBQUFCd0FBUUFEQUFBQUhBQURBQUVBQUFBY0FBUUFPQUFBQUFvQUNBQUNBQUlBQVFBZzZBTC8vZi8vQUFBQUFBQWc2QUQvL2YvL0FBSC80eGdFQUFNQUFRQUFBQUFBQUFBQUFBQUFBUUFCLy84QUR3QUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFFVUFVUU83QXZnQUdnQUFBUlFIQVFZaklpY0JKalUwUHdFMk16SWZBUUUyTXpJZkFSWVZBN3NRL2hRUUZoY1EvdU1RRUU0UUZ4Y1FxQUYyRUJjWEVFNFFBbk1XRVA0VUVCQUJIUkFYRmhCT0VCQ29BWGNRRUU0UUZ3QUFBQUFCQUFBQmJnTWxBa2tBRkFBQUFSVVVCd1lqSVNJbkpqMEJORGMyTXlFeUZ4WVZBeVVRRUJmOVNSY1FFQkFRRndLM0Z4QVFBaEp0RnhBUUVCQVhiUmNRRUJBUUZ3QUFBQUFCQUFBQVNRTWxBMjRBTEFBQUFSVVVCd1lyQVJVVUJ3WXJBU0luSmowQkl5SW5KajBCTkRjMk93RTFORGMyT3dFeUZ4WWRBVE15RnhZVkF5VVFFQmZ1RUJBWGJoWVFFTzRYRUJBUUVCZnVFQkFXYmhjUUVPNFhFQkFDRW0wWEVCRHVGeEFRRUJBWDdoQVFGMjBYRUJEdUZ4QVFFQkFYN2hBUUZ3QUFBUUFBQUFJQUFIUlN6VDlmRHp6MUFBc0VBQUFBQUFEUnNkUjNBQUFBQU5HeDFIY0FBQUFBQTdzRGJnQUFBQWdBQWdBQUFBQUFBQUFCQUFBRHdQL0FBQUFFQUFBQUFBQUR1d0FCQUFBQUFBQUFBQUFBQUFBQUFBQUFCd1FBQUFBQUFBQUFBQUFBQUFJQUFBQUVBQUJGQXlVQUFBTWxBQUFBQUFBQUFBb0FGQUFlQUU0QWNnQ3dBQUVBQUFBSEFDMEFBUUFBQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU9BSzRBQVFBQUFBQUFBUUFJQUFBQUFRQUFBQUFBQWdBSEFHa0FBUUFBQUFBQUF3QUlBRGtBQVFBQUFBQUFCQUFJQUg0QUFRQUFBQUFBQlFBTEFCZ0FBUUFBQUFBQUJnQUlBRkVBQVFBQUFBQUFDZ0FhQUpZQUF3QUJCQWtBQVFBUUFBZ0FBd0FCQkFrQUFnQU9BSEFBQXdBQkJBa0FBd0FRQUVFQUF3QUJCQWtBQkFBUUFJWUFBd0FCQkFrQUJRQVdBQ01BQXdBQkJBa0FCZ0FRQUZrQUF3QUJCQWtBQ2dBMEFMQkRhR1ZqYTJKdmVBQkRBR2dBWlFCakFHc0FZZ0J2QUhoV1pYSnphVzl1SURJdU1BQldBR1VBY2dCekFHa0Fid0J1QUNBQU1nQXVBREJEYUdWamEySnZlQUJEQUdnQVpRQmpBR3NBWWdCdkFIaERhR1ZqYTJKdmVBQkRBR2dBWlFCakFHc0FZZ0J2QUhoU1pXZDFiR0Z5QUZJQVpRQm5BSFVBYkFCaEFISkRhR1ZqYTJKdmVBQkRBR2dBWlFCakFHc0FZZ0J2QUhoR2IyNTBJR2RsYm1WeVlYUmxaQ0JpZVNCSlkyOU5iMjl1TGdCR0FHOEFiZ0IwQUNBQVp3QmxBRzRBWlFCeUFHRUFkQUJsQUdRQUlBQmlBSGtBSUFCSkFHTUFid0JOQUc4QWJ3QnVBQzRBQUFBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEpIGZvcm1hdCgndHJ1ZXR5cGUnKVxuICA7XG59XG5cbi8qIENoZWNrbWFyayAqL1xuLnVpLmNoZWNrYm94IGxhYmVsOmFmdGVyLFxuLnVpLmNoZWNrYm94IC5ib3g6YWZ0ZXIge1xuICBmb250LWZhbWlseTogJ0NoZWNrYm94Jztcbn1cblxuLyogQ2hlY2tlZCAqL1xuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXGU4MDAnO1xufVxuXG4vKiBJbmRldGVybWluYXRlICovXG4udWkuY2hlY2tib3ggaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IGxhYmVsOmFmdGVyIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb250ZW50OiAnXFxlODAxJztcbn1cblxuXG4vKiAgVVRGIFJlZmVyZW5jZVxuLmNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDAnOyB9XG4uZGFzaDpiZWZvcmUgIHsgY29udGVudDogJ1xcZTgwMSc7IH1cbi5wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDInOyB9XG4qL1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gRGltbWVyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnbW9kdWxlJztcbkBlbGVtZW50IDogJ2RpbW1lcic7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIERpbW1lclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmRpbW1hYmxlOm5vdChib2R5KSB7XG4gIHBvc2l0aW9uOiBAZGltbWFibGVQb3NpdGlvbjtcbn1cblxuLnVpLmRpbW1lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBAZGltbWVyUG9zaXRpb247XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcblxuICB0ZXh0LWFsaWduOiBAdGV4dEFsaWduO1xuICB2ZXJ0aWNhbC1hbGlnbjogQHZlcnRpY2FsQWxpZ247XG4gIHBhZGRpbmc6IEBwYWRkaW5nO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IEBiYWNrZ3JvdW5kQ29sb3I7XG4gIG9wYWNpdHk6IEBoaWRkZW5PcGFjaXR5O1xuICBsaW5lLWhlaWdodDogQGxpbmVIZWlnaHQ7XG5cbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiBAZHVyYXRpb247XG4gIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgei1pbmRleDogQHpJbmRleDtcbn1cblxuLyogRGltbWVyIENvbnRlbnQgKi9cbi51aS5kaW1tZXIgPiAuY29udGVudCB7XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xuICBjb2xvcjogQHRleHRDb2xvcjtcbn1cblxuXG4vKiBMb29zZSBDb3VwbGluZyAqL1xuLnVpLnNlZ21lbnQgPiAudWkuZGltbWVyIHtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4vKiBTY3JvbGxiYXJzICovXG4uYWRkU2Nyb2xsYmFycygpIHdoZW4gKEB1c2VDdXN0b21TY3JvbGxiYXJzKSB7XG4gIC51aS5kaW1tZXI6bm90KC5pbnZlcnRlZCk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiBAdHJhY2tJbnZlcnRlZEJhY2tncm91bmQ7XG4gIH1cbiAgLnVpLmRpbW1lcjpub3QoLmludmVydGVkKTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJhY2tncm91bmQ6IEB0aHVtYkludmVydGVkQmFja2dyb3VuZDtcbiAgfVxuICAudWkuZGltbWVyOm5vdCguaW52ZXJ0ZWQpOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjp3aW5kb3ctaW5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IEB0aHVtYkludmVydGVkSW5hY3RpdmVCYWNrZ3JvdW5kO1xuICB9XG4gIC51aS5kaW1tZXI6bm90KC5pbnZlcnRlZCk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBAdGh1bWJJbnZlcnRlZEhvdmVyQmFja2dyb3VuZDtcbiAgfVxufVxuLmFkZFNjcm9sbGJhcnMoKTtcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogQW5pbWF0aW5nICovXG4uYW5pbWF0aW5nLmRpbW1hYmxlOm5vdChib2R5KSxcbi5kaW1tZWQuZGltbWFibGU6bm90KGJvZHkpIHtcbiAgb3ZlcmZsb3c6IEBvdmVyZmxvdztcbn1cblxuLyogQW5pbWF0aW5nIC8gQWN0aXZlIC8gVmlzaWJsZSAqL1xuLmRpbW1lZC5kaW1tYWJsZSA+IC51aS5hbmltYXRpbmcuZGltbWVyLFxuLmRpbW1lZC5kaW1tYWJsZSA+IC51aS52aXNpYmxlLmRpbW1lcixcbi51aS5hY3RpdmUuZGltbWVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3BhY2l0eTogQHZpc2libGVPcGFjaXR5O1xufVxuXG4vKiBEaXNhYmxlZCAqL1xuLnVpLmRpc2FibGVkLmRpbW1lciB7XG4gIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExlZ2FjeVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQW5pbWF0aW5nIC8gQWN0aXZlIC8gVmlzaWJsZSAqL1xuLmRpbW1lZC5kaW1tYWJsZSA+IC51aS5hbmltYXRpbmcubGVnYWN5LmRpbW1lcixcbi5kaW1tZWQuZGltbWFibGUgPiAudWkudmlzaWJsZS5sZWdhY3kuZGltbWVyLFxuLnVpLmFjdGl2ZS5sZWdhY3kuZGltbWVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBbGlnbm1lbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aVtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXS5kaW1tZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4udWlbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0uZGltbWVyIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgUGFnZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBhZ2UuZGltbWVyIHtcbiAgcG9zaXRpb246IEBwYWdlRGltbWVyUG9zaXRpb247XG4gIHRyYW5zZm9ybS1zdHlsZTogQHRyYW5zZm9ybVN0eWxlO1xuICBwZXJzcGVjdGl2ZTogQHBlcnNwZWN0aXZlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG5ib2R5LmFuaW1hdGluZy5pbi5kaW1tYWJsZSxcbmJvZHkuZGltbWVkLmRpbW1hYmxlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuYm9keS5kaW1tYWJsZSA+IC5kaW1tZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBCbHVycmluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLmJsdXJyaW5nLmRpbW1hYmxlID4gOm5vdCguZGltbWVyKSB7XG4gIGZpbHRlcjogQGJsdXJyZWRTdGFydEZpbHRlcjtcbiAgdHJhbnNpdGlvbjogQGJsdXJyZWRUcmFuc2l0aW9uO1xufVxuLmJsdXJyaW5nLmRpbW1lZC5kaW1tYWJsZSA+IDpub3QoLmRpbW1lcik6bm90KC5wb3B1cCkge1xuICBmaWx0ZXI6IEBibHVycmVkRW5kRmlsdGVyO1xufVxuXG4vKiBEaW1tZXIgQ29sb3IgKi9cbi5ibHVycmluZy5kaW1tYWJsZSA+IC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmx1cnJlZEJhY2tncm91bmRDb2xvcjtcbn1cbi5ibHVycmluZy5kaW1tYWJsZSA+IC5pbnZlcnRlZC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmx1cnJlZEludmVydGVkQmFja2dyb3VuZENvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpbW1lciA+IC50b3AuYWxpZ25lZC5jb250ZW50ID4gKiB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4udWkuZGltbWVyID4gLmJvdHRvbS5hbGlnbmVkLmNvbnRlbnQgPiAqIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNoYWRlc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLm1lZGl1bS5tZWRpdW0ubWVkaXVtLm1lZGl1bS5tZWRpdW0uZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQG1lZGl1bUJhY2tncm91bmRDb2xvcjtcbn1cbi5saWdodC5saWdodC5saWdodC5saWdodC5saWdodC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGlnaHRCYWNrZ3JvdW5kQ29sb3I7XG59XG4udmVyeS5saWdodC5saWdodC5saWdodC5saWdodC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdmVyeUxpZ2h0QmFja2dyb3VuZENvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRCYWNrZ3JvdW5kQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuZGltbWVyID4gLmNvbnRlbnQsXG4udWkuaW52ZXJ0ZWQuZGltbWVyID4gLmNvbnRlbnQgPiAqIHtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuIEludmVydGVkIFNoYWRlc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLm1lZGl1bS5tZWRpdW0ubWVkaXVtLm1lZGl1bS5tZWRpdW0uaW52ZXJ0ZWQuZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQG1lZGl1bUludmVydGVkQmFja2dyb3VuZENvbG9yO1xufVxuLmxpZ2h0LmxpZ2h0LmxpZ2h0LmxpZ2h0LmxpZ2h0LmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBsaWdodEludmVydGVkQmFja2dyb3VuZENvbG9yO1xufVxuLnZlcnkubGlnaHQubGlnaHQubGlnaHQubGlnaHQuaW52ZXJ0ZWQuZGltbWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHZlcnlMaWdodEludmVydGVkQmFja2dyb3VuZENvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpbXBsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGlzcGxheXMgd2l0aG91dCBqYXZhc2NyaXB0ICovXG4udWkuc2ltcGxlLmRpbW1lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICB6LWluZGV4OiAtMTAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAc2ltcGxlU3RhcnRCYWNrZ3JvdW5kQ29sb3I7XG59XG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLnNpbXBsZS5kaW1tZXIge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHNpbXBsZUVuZEJhY2tncm91bmRDb2xvcjtcbiAgei1pbmRleDogQHNpbXBsZVpJbmRleDtcbn1cblxuLnVpLnNpbXBsZS5pbnZlcnRlZC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAc2ltcGxlSW52ZXJ0ZWRTdGFydEJhY2tncm91bmRDb2xvcjtcbn1cbi5kaW1tZWQuZGltbWFibGUgPiAudWkuc2ltcGxlLmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBzaW1wbGVJbnZlcnRlZEVuZEJhY2tncm91bmRDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYXJ0aWFsbHlcbi0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwidG9wIGRpbW1lclwiXSxcbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLFxuLnVpW2NsYXNzKj1cImJvdHRvbSBkaW1tZXJcIl0ge1xuICBoZWlnaHQ6IGF1dG87XG59XG4udWlbY2xhc3MqPVwiYm90dG9tIGRpbW1lclwiXSB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDA7XG59XG4udWlbY2xhc3MqPVwiY2VudGVyIGRpbW1lclwiXSB7XG4gIHRvcDo1MCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01MCUgLSAuNXB4KSk7XG59XG5cbi51aS5zZWdtZW50ID4gLnVpW2NsYXNzKj1cInRvcCBkaW1tZXJcIl0ge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLnVpLnNlZ21lbnQgPiAudWlbY2xhc3MqPVwiY2VudGVyIGRpbW1lclwiXSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLnVpLnNlZ21lbnQgPiAudWlbY2xhc3MqPVwiYm90dG9tIGRpbW1lclwiXSB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSB1cFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcENlbnRlcjtcbn1cbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBkb3duXCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25DZW50ZXI7XG59XG4udWlbY2xhc3MqPVwiY2VudGVyIGRpbW1lclwiXS50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgdXBcIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcENlbnRlcjtcbn1cbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBkb3duXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkNlbnRlcjtcbn1cbi51aVtjbGFzcyo9XCJjZW50ZXIgZGltbWVyXCJdLmJvdW5jZS50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUNlbnRlcjtcbn1cbkBrZXlmcmFtZXMgZmFkZUluVXBDZW50ZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNDAlIC0gLjVweCkpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTUwJSAtIC41cHgpKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5Eb3duQ2VudGVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTYwJSAtIC41cHgpKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01MCUgLSAuNXB4KSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dFVwQ2VudGVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTUwJSAtIC41cHgpKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDUlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC00NSUgLSAuNXB4KSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dERvd25DZW50ZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNTAlIC0gLjVweCkpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01NSUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTU1JSAtIC41cHgpKTtcbiAgfVxufVxuQGtleWZyYW1lcyBib3VuY2VDZW50ZXIge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTUwJSAtIC41cHgpKTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01MCUgLSAzMHB4KSk7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtNTAlIC0gMTVweCkpO1xuICB9XG59XG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIERyb3Bkb3duXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAnZHJvcGRvd24nO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBEcm9wZG93blxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmRyb3Bkb3duIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3V0bGluZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1lbnVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biAubWVudSB7XG4gIGN1cnNvcjogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB0b3A6IDEwMCU7XG4gIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG5cbiAgbWFyZ2luOiBAbWVudU1hcmdpbjtcbiAgcGFkZGluZzogQG1lbnVQYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiBAbWVudUJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiBAcmVsYXRpdmVNZWRpdW07XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LWFsaWduOiBAbWVudVRleHRBbGlnbjtcblxuICBib3gtc2hhZG93OiBAbWVudUJveFNoYWRvdztcbiAgYm9yZGVyOiBAbWVudUJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogQG1lbnVCb3JkZXJSYWRpdXM7XG4gIHRyYW5zaXRpb246IEBtZW51VHJhbnNpdGlvbjtcbiAgei1pbmRleDogQG1lbnVaSW5kZXg7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+ICoge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgSGlkZGVuIElucHV0XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiBpbnB1dDpub3QoLnNlYXJjaCk6Zmlyc3QtY2hpbGQsXG4udWkuZHJvcGRvd24gPiBzZWxlY3Qge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiBEcm9wZG93biBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbi5pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiBAZHJvcGRvd25JY29uU2l6ZTtcbiAgbWFyZ2luOiBAZHJvcGRvd25JY29uTWFyZ2luO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gLmRyb3Bkb3duLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IEBpdGVtRHJvcGRvd25JY29uRmxvYXQ7XG4gIG1hcmdpbjogQGl0ZW1Ecm9wZG93bkljb25NYXJnaW47XG59XG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSAuZHJvcGRvd24uaWNvbiArIC50ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiBAaXRlbURyb3Bkb3duSWNvbkRpc3RhbmNlO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFRleHRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biA+IC50ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiBAdGV4dFRyYW5zaXRpb247XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBNZW51IEl0ZW1cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IEBpdGVtQm9yZGVyO1xuICBoZWlnaHQ6IEBpdGVtSGVpZ2h0O1xuICB0ZXh0LWFsaWduOiBAaXRlbVRleHRBbGlnbjtcblxuICBib3JkZXItdG9wOiBAaXRlbURpdmlkZXI7XG4gIGxpbmUtaGVpZ2h0OiBAaXRlbUxpbmVIZWlnaHQ7XG4gIGZvbnQtc2l6ZTogQGl0ZW1Gb250U2l6ZTtcbiAgY29sb3I6IEBpdGVtQ29sb3I7XG5cbiAgcGFkZGluZzogQGl0ZW1QYWRkaW5nICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBAaXRlbVRleHRUcmFuc2Zvcm07XG4gIGZvbnQtd2VpZ2h0OiBAaXRlbUZvbnRXZWlnaHQ7XG4gIGJveC1zaGFkb3c6IEBpdGVtQm94U2hhZG93O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG59XG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgRmxvYXRlZCBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLFxuLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtID4gW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBAZmxvYXRlZERpc3RhbmNlICFpbXBvcnRhbnQ7XG59XG4udWkuZHJvcGRvd24gPiAudGV4dCA+IFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0sXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiBbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBAZmxvYXRlZERpc3RhbmNlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kcm9wZG93biAubWVudSAuaXRlbSA+IC5pY29uLmZsb2F0ZWQsXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiAuZmxhZy5mbG9hdGVkLFxuLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtID4gLmltYWdlLmZsb2F0ZWQsXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiBpbWcuZmxvYXRlZCB7XG4gIG1hcmdpbi10b3A6IEBpdGVtTGluZUhlaWdodE9mZnNldDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIE1lbnUgRGl2aWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmhlYWRlciB7XG4gIG1hcmdpbjogQG1lbnVIZWFkZXJNYXJnaW47XG4gIHBhZGRpbmc6IEBtZW51SGVhZGVyUGFkZGluZztcbiAgZm9udC13ZWlnaHQ6IEBtZW51SGVhZGVyRm9udFdlaWdodDtcbiAgdGV4dC10cmFuc2Zvcm06IEBtZW51SGVhZGVyVGV4dFRyYW5zZm9ybTtcbn1cbi51aS5kcm9wZG93biAubWVudSA+IC5oZWFkZXI6bm90KC51aSkge1xuICBjb2xvcjogQG1lbnVIZWFkZXJDb2xvcjtcbiAgZm9udC1zaXplOiBAbWVudUhlYWRlckZvbnRTaXplO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmRpdmlkZXIge1xuICBib3JkZXItdG9wOiBAbWVudURpdmlkZXJCb3JkZXI7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiBAbWVudURpdmlkZXJNYXJnaW47XG59XG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaG9yaXpvbnRhbC5kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnVpLmRyb3Bkb3duLmRyb3Bkb3duIC5tZW51ID4gLmlucHV0IHtcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogQG1lbnVJbnB1dE1hcmdpbjtcbiAgbWluLXdpZHRoOiBAbWVudUlucHV0TWluV2lkdGg7XG59XG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaGVhZGVyICsgLmlucHV0IHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi51aS5kcm9wZG93biAubWVudSA+IC5pbnB1dDpub3QoLnRyYW5zcGFyZW50KSBpbnB1dCB7XG4gIHBhZGRpbmc6IEBtZW51SW5wdXRQYWRkaW5nO1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmlucHV0Om5vdCgudHJhbnNwYXJlbnQpIC5idXR0b24sXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaW5wdXQ6bm90KC50cmFuc3BhcmVudCkgLmljb24sXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaW5wdXQ6bm90KC50cmFuc3BhcmVudCkgLmxhYmVsIHtcbiAgcGFkZGluZy10b3A6IEBtZW51SW5wdXRWZXJ0aWNhbFBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiBAbWVudUlucHV0VmVydGljYWxQYWRkaW5nO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gIEl0ZW0gRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5kZXNjcmlwdGlvbixcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmRlc2NyaXB0aW9uIHtcbiAgZmxvYXQ6IEBpdGVtRGVzY3JpcHRpb25GbG9hdDtcbiAgbWFyZ2luOiBAaXRlbURlc2NyaXB0aW9uTWFyZ2luO1xuICBjb2xvcjogQGl0ZW1EZXNjcmlwdGlvbkNvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTWVzc2FnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biAubWVudSA+IC5tZXNzYWdlIHtcbiAgcGFkZGluZzogQG1lc3NhZ2VQYWRkaW5nO1xuICBmb250LXdlaWdodDogQG1lc3NhZ2VGb250V2VpZ2h0O1xufVxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLm1lc3NhZ2U6bm90KC51aSkge1xuICBjb2xvcjogQG1lc3NhZ2VDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN1YiBNZW51XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gLm1lbnUgLm1lbnUge1xuICB0b3A6IEBzdWJNZW51VG9wO1xuICBsZWZ0OiBAc3ViTWVudUxlZnQ7XG4gIHJpZ2h0OiBAc3ViTWVudVJpZ2h0O1xuICBtYXJnaW46IEBzdWJNZW51TWFyZ2luICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IEBzdWJNZW51Qm9yZGVyUmFkaXVzICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IEBzdWJNZW51WkluZGV4ICFpbXBvcnRhbnQ7XG59XG5cbi8qIEhpZGUgQXJyb3cgKi9cbi51aS5kcm9wZG93biAubWVudSAubWVudTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFN1YiBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSWNvbnMgLyBGbGFncyAvIExhYmVscyAvIEltYWdlICovXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pY29uLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAubGFiZWwsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5mbGFnLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiBpbWcsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pbWFnZSB7XG4gIG1hcmdpbi10b3A6IEB0ZXh0TGluZUhlaWdodE9mZnNldDtcbn1cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmljb24sXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5sYWJlbCxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmZsYWcsXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5pbWFnZSxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gaW1nICB7XG4gIG1hcmdpbi10b3A6IEBpdGVtTGluZUhlaWdodE9mZnNldDtcbn1cblxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAuaWNvbixcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmxhYmVsLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAuZmxhZyxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gaW1nLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAuaW1hZ2UsXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5pY29uLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAubGFiZWwsXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5mbGFnLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuaW1hZ2UsXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IGltZyAge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgZmxvYXQ6IEBpdGVtRWxlbWVudEZsb2F0O1xuICBtYXJnaW4tcmlnaHQ6IEBpdGVtRWxlbWVudERpc3RhbmNlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEltYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IGltZyxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmltYWdlOm5vdCguaWNvbiksXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5pbWFnZTpub3QoLmljb24pLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tdG9wOiBAbWVudUltYWdlVmVydGljYWxNYXJnaW47XG4gIG1hcmdpbi1ib3R0b206IEBtZW51SW1hZ2VWZXJ0aWNhbE1hcmdpbjtcbiAgbWF4LWhlaWdodDogQG1lbnVJbWFnZU1heEhlaWdodDtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUmVtb3ZlIE1lbnUgSXRlbSBEaXZpZGVyICovXG4udWkuZHJvcGRvd24gLnVpLm1lbnUgPiAuaXRlbTpiZWZvcmUsXG4udWkubWVudSAudWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBQcmV2ZW50IE1lbnUgSXRlbSBCb3JkZXIgKi9cbi51aS5tZW51IC51aS5kcm9wZG93biAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLyogQXV0b21hdGljYWxseSBmbG9hdCBkcm9wZG93biBtZW51IHJpZ2h0IG9uIGxhc3QgbWVudSBpdGVtICovXG4udWkubWVudSAucmlnaHQubWVudSAuZHJvcGRvd246bGFzdC1jaGlsZCAubWVudSxcbi51aS5tZW51IC5yaWdodC5kcm9wZG93bi5pdGVtIC5tZW51LFxuLnVpLmJ1dHRvbnMgPiAudWkuZHJvcGRvd246bGFzdC1jaGlsZCAubWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBMYWJlbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRHJvcGRvd24gTWVudSAqL1xuLnVpLmxhYmVsLmRyb3Bkb3duIC5tZW51IHtcbiAgbWluLXdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTm8gTWFyZ2luIE9uIEljb24gQnV0dG9uICovXG4udWkuZHJvcGRvd24uaWNvbi5idXR0b24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIG1hcmdpbjogMDtcbn1cbi51aS5idXR0b24uZHJvcGRvd24gLm1lbnUge1xuICBtaW4td2lkdGg6IDEwMCU7XG59XG5cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNlbGVjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGlzcGxheXMgbGlrZSBhIHNlbGVjdCBib3ggKi9cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGVaKDBkZWcpO1xuXG4gIG1pbi13aWR0aDogQHNlbGVjdGlvbk1pbldpZHRoO1xuICBtaW4taGVpZ2h0OiBAc2VsZWN0aW9uTWluSGVpZ2h0O1xuXG4gIGJhY2tncm91bmQ6IEBzZWxlY3Rpb25CYWNrZ3JvdW5kO1xuICBkaXNwbGF5OiBAc2VsZWN0aW9uRGlzcGxheTtcbiAgcGFkZGluZzogQHNlbGVjdGlvblBhZGRpbmc7XG4gIGNvbG9yOiBAc2VsZWN0aW9uVGV4dENvbG9yO1xuICBib3gtc2hhZG93OiBAc2VsZWN0aW9uQm94U2hhZG93O1xuICBib3JkZXI6IEBzZWxlY3Rpb25Cb3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IEBzZWxlY3Rpb25Cb3JkZXJSYWRpdXM7XG4gIHRyYW5zaXRpb246IEBzZWxlY3Rpb25UcmFuc2l0aW9uO1xufVxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi52aXNpYmxlLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5hY3RpdmUge1xuICB6LWluZGV4OiBAc2VsZWN0aW9uWkluZGV4O1xufVxuXG5zZWxlY3QudWkuZHJvcGRvd24ge1xuICBoZWlnaHQ6IEBzZWxlY3RIZWlnaHQ7XG4gIHBhZGRpbmc6IEBzZWxlY3RQYWRkaW5nO1xuICBib3JkZXI6IEBzZWxlY3RCb3JkZXI7XG4gIHZpc2liaWxpdHk6IEBzZWxlY3RWaXNpYmlsaXR5O1xufVxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biA+IC5zZWFyY2guaWNvbixcbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gPiAuZGVsZXRlLmljb24sXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IEBzZWFyY2hTZWxlY3Rpb25MaW5lSGVpZ2h0O1xuICB0b3A6IEBzZWxlY3Rpb25WZXJ0aWNhbFBhZGRpbmc7XG4gIHJpZ2h0OiBAc2VsZWN0aW9uSG9yaXpvbnRhbFBhZGRpbmc7XG4gIHotaW5kZXg6IEBzZWxlY3Rpb25JY29uWkluZGV4O1xuICBtYXJnaW46IEBzZWxlY3Rpb25JY29uTWFyZ2luO1xuICBwYWRkaW5nOiBAc2VsZWN0aW9uSWNvblBhZGRpbmc7XG4gIG9wYWNpdHk6IEBzZWxlY3Rpb25JY29uT3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogQHNlbGVjdGlvbkljb25UcmFuc2l0aW9uO1xufVxuXG4vKiBDb21wYWN0ICovXG4udWkuY29tcGFjdC5zZWxlY3Rpb24uZHJvcGRvd24ge1xuICBtaW4td2lkdGg6ICAwO1xufVxuXG4vKiAgU2VsZWN0aW9uIE1lbnUgKi9cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBib3JkZXItdG9wLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBvdXRsaW5lOiBub25lO1xuICBtYXJnaW46IDAgLUBtZW51Qm9yZGVyV2lkdGg7XG4gIG1pbi13aWR0aDogQG1lbnVNaW5XaWR0aDtcbiAgd2lkdGg6IEBtZW51TWluV2lkdGg7XG5cbiAgYm9yZGVyLXJhZGl1czogQHNlbGVjdGlvbk1lbnVCb3JkZXJSYWRpdXM7XG4gIGJveC1zaGFkb3c6IEBzZWxlY3Rpb25NZW51Qm94U2hhZG93O1xuICB0cmFuc2l0aW9uOiBAc2VsZWN0aW9uTWVudVRyYW5zaXRpb247XG59XG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51OmFmdGVyLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTWVzc2FnZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSA+IC5tZXNzYWdlIHtcbiAgcGFkZGluZzogQHNlbGVjdGlvbk1lc3NhZ2VQYWRkaW5nO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duW2NsYXNzKj1cInZlcnkgc2hvcnRcIl0gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IEBzZWxlY3Rpb25Nb2JpbGVNYXhNZW51SGVpZ2h0ICogMC41O1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24uc2hvcnQgLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IEBzZWxlY3Rpb25Nb2JpbGVNYXhNZW51SGVpZ2h0ICogMC43NTtcbiAgfVxuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiBAc2VsZWN0aW9uTW9iaWxlTWF4TWVudUhlaWdodDtcbiAgfVxuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duLmxvbmcgLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IEBzZWxlY3Rpb25Nb2JpbGVNYXhNZW51SGVpZ2h0ICogMjtcbiAgfVxuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duW2NsYXNzKj1cInZlcnkgbG9uZ1wiXSAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvbk1vYmlsZU1heE1lbnVIZWlnaHQgKiAzO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEB0YWJsZXRCcmVha3BvaW50KSB7XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd25bY2xhc3MqPVwidmVyeSBzaG9ydFwiXSAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvblRhYmxldE1heE1lbnVIZWlnaHQgKiAwLjU7XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5zaG9ydCAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvblRhYmxldE1heE1lbnVIZWlnaHQgKiAwLjc1O1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IEBzZWxlY3Rpb25UYWJsZXRNYXhNZW51SGVpZ2h0O1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24ubG9uZyAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvblRhYmxldE1heE1lbnVIZWlnaHQgKiAyO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd25bY2xhc3MqPVwidmVyeSBsb25nXCJdIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiBAc2VsZWN0aW9uVGFibGV0TWF4TWVudUhlaWdodCAqIDM7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQGNvbXB1dGVyQnJlYWtwb2ludCkge1xuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duW2NsYXNzKj1cInZlcnkgc2hvcnRcIl0gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IEBzZWxlY3Rpb25Db21wdXRlck1heE1lbnVIZWlnaHQgKiAwLjU7XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5zaG9ydCAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvbkNvbXB1dGVyTWF4TWVudUhlaWdodCAqIDAuNzU7XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvbkNvbXB1dGVyTWF4TWVudUhlaWdodDtcbiAgfVxuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duLmxvbmcgLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IEBzZWxlY3Rpb25Db21wdXRlck1heE1lbnVIZWlnaHQgKiAyO1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd25bY2xhc3MqPVwidmVyeSBsb25nXCJdIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiBAc2VsZWN0aW9uQ29tcHV0ZXJNYXhNZW51SGVpZ2h0ICogMztcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAd2lkZXNjcmVlbk1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd25bY2xhc3MqPVwidmVyeSBzaG9ydFwiXSAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvbldpZGVzY3JlZW5NYXhNZW51SGVpZ2h0ICogMC41O1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24uc2hvcnQgLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IEBzZWxlY3Rpb25XaWRlc2NyZWVuTWF4TWVudUhlaWdodCAqIDAuNzU7XG4gIH1cbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvbldpZGVzY3JlZW5NYXhNZW51SGVpZ2h0O1xuICB9XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24ubG9uZyAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvbldpZGVzY3JlZW5NYXhNZW51SGVpZ2h0ICogMjtcbiAgfVxuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duW2NsYXNzKj1cInZlcnkgbG9uZ1wiXSAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlbGVjdGlvbldpZGVzY3JlZW5NYXhNZW51SGVpZ2h0ICogMztcbiAgfVxufVxuXG4vKiBNZW51IEl0ZW0gKi9cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IEBzZWxlY3Rpb25JdGVtRGl2aWRlcjtcbiAgcGFkZGluZzogQHNlbGVjdGlvbkl0ZW1QYWRkaW5nICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG4vKiBVc2VyIEl0ZW0gKi9cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUgPiAuaGlkZGVuLmFkZGl0aW9uLml0ZW0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIb3ZlciAqL1xuLnVpLnNlbGVjdGlvbi5kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogQHNlbGVjdGlvbkhvdmVyQm9yZGVyQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBzZWxlY3Rpb25Ib3ZlckJveFNoYWRvdztcbn1cblxuLyogQWN0aXZlICovXG4udWkuc2VsZWN0aW9uLmFjdGl2ZS5kcm9wZG93biB7XG4gIGJvcmRlci1jb2xvcjogQHNlbGVjdGlvblZpc2libGVCb3JkZXJDb2xvcjtcbiAgYm94LXNoYWRvdzogQHNlbGVjdGlvblZpc2libGVCb3hTaGFkb3c7XG59XG4udWkuc2VsZWN0aW9uLmFjdGl2ZS5kcm9wZG93biAubWVudSB7XG4gIGJvcmRlci1jb2xvcjogQHNlbGVjdGlvblZpc2libGVCb3JkZXJDb2xvcjtcbiAgYm94LXNoYWRvdzogQHNlbGVjdGlvblZpc2libGVNZW51Qm94U2hhZG93O1xufVxuXG4vKiBGb2N1cyAqL1xuLnVpLnNlbGVjdGlvbi5kcm9wZG93bjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogQHNlbGVjdGlvbkZvY3VzQm9yZGVyQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBzZWxlY3Rpb25Gb2N1c0JveFNoYWRvdztcbn1cbi51aS5zZWxlY3Rpb24uZHJvcGRvd246Zm9jdXMgLm1lbnUge1xuICBib3JkZXItY29sb3I6IEBzZWxlY3Rpb25Gb2N1c0JvcmRlckNvbG9yO1xuICBib3gtc2hhZG93OiBAc2VsZWN0aW9uRm9jdXNNZW51Qm94U2hhZG93O1xufVxuXG4vKiBWaXNpYmxlICovXG4udWkuc2VsZWN0aW9uLnZpc2libGUuZHJvcGRvd24gPiAudGV4dDpub3QoLmRlZmF1bHQpIHtcbiAgZm9udC13ZWlnaHQ6IEBzZWxlY3Rpb25WaXNpYmxlVGV4dEZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAc2VsZWN0aW9uVmlzaWJsZVRleHRDb2xvcjtcbn1cblxuLyogVmlzaWJsZSBIb3ZlciAqL1xuLnVpLnNlbGVjdGlvbi5hY3RpdmUuZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6IEBzZWxlY3Rpb25BY3RpdmVIb3ZlckJvcmRlckNvbG9yO1xuICBib3gtc2hhZG93OiBAc2VsZWN0aW9uQWN0aXZlSG92ZXJCb3hTaGFkb3c7XG59XG4udWkuc2VsZWN0aW9uLmFjdGl2ZS5kcm9wZG93bjpob3ZlciAubWVudSB7XG4gIGJvcmRlci1jb2xvcjogQHNlbGVjdGlvbkFjdGl2ZUhvdmVyQm9yZGVyQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBzZWxlY3Rpb25BY3RpdmVIb3Zlck1lbnVCb3hTaGFkb3c7XG59XG5cbi8qIERyb3Bkb3duIEljb24gKi9cbi51aS5hY3RpdmUuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24sXG4udWkudmlzaWJsZS5zZWxlY3Rpb24uZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIG9wYWNpdHk6IEBzZWxlY3Rpb25WaXNpYmxlSWNvbk9wYWNpdHk7XG4gIHotaW5kZXg6IDM7XG59XG5cbi8qIENvbm5lY3RpbmcgQm9yZGVyICovXG4udWkuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEBzZWxlY3Rpb25WaXNpYmxlQ29ubmVjdGluZ0JvcmRlciAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQHNlbGVjdGlvblZpc2libGVDb25uZWN0aW5nQm9yZGVyICFpbXBvcnRhbnQ7XG59XG5cbi8qIEVtcHR5IENvbm5lY3RpbmcgQm9yZGVyICovXG4udWkuYWN0aXZlLmVtcHR5LnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGJvcmRlci1yYWRpdXM6IEBzZWxlY3Rpb25Cb3JkZXJSYWRpdXMgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogQHNlbGVjdGlvbkJveFNoYWRvdyAhaW1wb3J0YW50O1xufVxuLnVpLmFjdGl2ZS5lbXB0eS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTZWFyY2hhYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZWFyY2ggU2VsZWN0aW9uICovXG4udWkuc2VhcmNoLmRyb3Bkb3duIHtcbiAgbWluLXdpZHRoOiBAc2VhcmNoTWluV2lkdGg7XG59XG5cbi8qIFNlYXJjaCBEcm9wZG93biAqL1xuLnVpLnNlYXJjaC5kcm9wZG93biA+IGlucHV0LnNlYXJjaCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgY3Vyc29yOiB0ZXh0O1xuICB0b3A6IDA7XG4gIGxlZnQ6IEB0ZXh0Q3Vyc29yU3BhY2luZztcbiAgd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgcGFkZGluZzogaW5oZXJpdDtcbn1cblxuLyogVGV4dCBMYXllcmluZyAqL1xuLnVpLnNlYXJjaC5kcm9wZG93biA+IGlucHV0LnNlYXJjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbn1cbi51aS5zZWFyY2guZHJvcGRvd24gPiAudGV4dCB7XG4gIGN1cnNvcjogdGV4dDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiBAdGV4dEN1cnNvclNwYWNpbmc7XG4gIHotaW5kZXg6IDM7XG59XG5cbi8qIFNlYXJjaCBTZWxlY3Rpb24gKi9cbi51aS5zZWFyY2guc2VsZWN0aW9uLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgbGluZS1oZWlnaHQ6IEBzZWFyY2hTZWxlY3Rpb25MaW5lSGVpZ2h0O1xuICBwYWRkaW5nOiBAc2VhcmNoU2VsZWN0aW9uSW5wdXRQYWRkaW5nO1xufVxuXG4vKiBVc2VkIHRvIHNpemUgbXVsdGkgc2VsZWN0IGlucHV0IHRvIGNoYXJhY3RlciB3aWR0aCAqL1xuLnVpLnNlYXJjaC5zZWxlY3Rpb24uZHJvcGRvd24gPiBzcGFuLnNpemVyIHtcbiAgbGluZS1oZWlnaHQ6IEBzZWFyY2hTZWxlY3Rpb25MaW5lSGVpZ2h0O1xuICBwYWRkaW5nOiBAc2VhcmNoU2VsZWN0aW9uSW5wdXRQYWRkaW5nO1xuICBkaXNwbGF5OiBub25lO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xufVxuXG4vKiBBY3RpdmUvVmlzaWJsZSBTZWFyY2ggKi9cbi51aS5zZWFyY2guZHJvcGRvd24uYWN0aXZlID4gaW5wdXQuc2VhcmNoLFxuLnVpLnNlYXJjaC5kcm9wZG93bi52aXNpYmxlID4gaW5wdXQuc2VhcmNoIHtcbiAgY3Vyc29yOiBhdXRvO1xufVxuLnVpLnNlYXJjaC5kcm9wZG93bi5hY3RpdmUgPiAudGV4dCxcbi51aS5zZWFyY2guZHJvcGRvd24udmlzaWJsZSA+IC50ZXh0IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qIEZpbHRlcmVkIFRleHQgKi9cbi51aS5hY3RpdmUuc2VhcmNoLmRyb3Bkb3duIGlucHV0LnNlYXJjaDpmb2N1cyArIC50ZXh0IC5pY29uLFxuLnVpLmFjdGl2ZS5zZWFyY2guZHJvcGRvd24gaW5wdXQuc2VhcmNoOmZvY3VzICsgLnRleHQgLmZsYWcge1xuICBvcGFjaXR5OiBAc2VsZWN0aW9uVGV4dFVuZGVybGF5SWNvbk9wYWNpdHk7XG59XG4udWkuYWN0aXZlLnNlYXJjaC5kcm9wZG93biBpbnB1dC5zZWFyY2g6Zm9jdXMgKyAudGV4dCB7XG4gIGNvbG9yOiBAc2VsZWN0aW9uVGV4dFVuZGVybGF5Q29sb3IgIWltcG9ydGFudDtcbn1cblxuLyogU2VhcmNoIE1lbnUgKi9cbi51aS5zZWFyY2guZHJvcGRvd24gLm1lbnUge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogQGxhcmdlc3RNb2JpbGVTY3JlZW4pIHtcbiAgLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlYXJjaE1vYmlsZU1heE1lbnVIZWlnaHQ7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQHRhYmxldEJyZWFrcG9pbnQpIHtcbiAgLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlYXJjaFRhYmxldE1heE1lbnVIZWlnaHQ7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQGNvbXB1dGVyQnJlYWtwb2ludCkge1xuICAudWkuc2VhcmNoLmRyb3Bkb3duIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiBAc2VhcmNoQ29tcHV0ZXJNYXhNZW51SGVpZ2h0O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEB3aWRlc2NyZWVuTW9uaXRvckJyZWFrcG9pbnQpIHtcbiAgLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogQHNlYXJjaFdpZGVzY3JlZW5NYXhNZW51SGVpZ2h0O1xuICB9XG59XG5cbi8qIENsZWFyYWJsZSBTZWxlY3Rpb24gKi9cbi51aS5kcm9wZG93biA+IC5yZW1vdmUuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiBAZHJvcGRvd25JY29uU2l6ZTtcbiAgbWFyZ2luOiBAc2VsZWN0aW9uSWNvbk1hcmdpbjtcbiAgcGFkZGluZzogQHNlbGVjdGlvbkljb25QYWRkaW5nO1xuICByaWdodDogM2VtO1xuICB0b3A6IEBzZWxlY3Rpb25WZXJ0aWNhbFBhZGRpbmc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMC42O1xuICB6LWluZGV4OiBAc2VsZWN0aW9uSWNvblpJbmRleDtcbn1cblxuLnVpLmNsZWFyYWJsZS5kcm9wZG93biAudGV4dCxcbi51aS5jbGVhcmFibGUuZHJvcGRvd24gYTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xufVxuXG4udWkuZHJvcGRvd24gc2VsZWN0Lm5vc2VsZWN0aW9uIH4gLnJlbW92ZS5pY29uLFxuLnVpLmRyb3Bkb3duIGlucHV0W3ZhbHVlPScnXSB+IC5yZW1vdmUuaWNvbixcbi51aS5kcm9wZG93biBpbnB1dDpub3QoW3ZhbHVlXSkgfiAucmVtb3ZlLmljb24sXG4udWkuZHJvcGRvd24ubG9hZGluZyA+IC5yZW1vdmUuaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBNdWx0aXBsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTXVsdGlwbGUgU2VsZWN0aW9uICovXG4udWkubXVsdGlwbGUuZHJvcGRvd24ge1xuICBwYWRkaW5nOiBAbXVsdGlwbGVTZWxlY3Rpb25QYWRkaW5nO1xufVxuLnVpLm11bHRpcGxlLmRyb3Bkb3duIC5tZW51IHtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4vKiBNdWx0aXBsZSBTZWFyY2ggU2VsZWN0aW9uICovXG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duLFxuLnVpLm11bHRpcGxlLnNlYXJjaC5kcm9wZG93biA+IGlucHV0LnNlYXJjaCB7XG4gIGN1cnNvcjogdGV4dDtcbn1cblxuLyogU2VsZWN0aW9uIExhYmVsICovXG4udWkubXVsdGlwbGUuZHJvcGRvd24gPiAubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogQGxhYmVsU2l6ZTtcbiAgcGFkZGluZzogQGxhYmVsUGFkZGluZztcbiAgbWFyZ2luOiBAbGFiZWxNYXJnaW47XG4gIGJveC1zaGFkb3c6IEBsYWJlbEJveFNoYWRvdztcbn1cblxuLyogRHJvcGRvd24gSWNvbiAqL1xuLnVpLm11bHRpcGxlLmRyb3Bkb3duIC5kcm9wZG93bi5pY29uIHtcbiAgbWFyZ2luOiBAbXVsdGlwbGVTZWxlY3Rpb25Ecm9wZG93bkljb25NYXJnaW47XG4gIHBhZGRpbmc6IEBtdWx0aXBsZVNlbGVjdGlvbkRyb3Bkb3duSWNvblBhZGRpbmc7XG59XG5cbi8qIFRleHQgKi9cbi51aS5tdWx0aXBsZS5kcm9wZG93biA+IC50ZXh0IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgcGFkZGluZzogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IEBtdWx0aXBsZVNlbGVjdGlvbkNoaWxkTWFyZ2luO1xuICBsaW5lLWhlaWdodDogQG11bHRpcGxlU2VsZWN0aW9uQ2hpbGRMaW5lSGVpZ2h0O1xufVxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsIH4gaW5wdXQuc2VhcmNoIHtcbiAgbWFyZ2luLWxlZnQ6IEBtdWx0aXBsZVNlbGVjdGlvblNlYXJjaEFmdGVyTGFiZWxEaXN0YW5jZSAhaW1wb3J0YW50O1xufVxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsIH4gLnRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsOm5vdCguaW1hZ2UpID4gaW1nOm5vdCguY2VudGVyZWQpIHtcbiAgbWFyZ2luLXJpZ2h0OiBAaXRlbUVsZW1lbnREaXN0YW5jZTtcbn1cbi51aS5tdWx0aXBsZS5kcm9wZG93biA+IC5sYWJlbDpub3QoLmltYWdlKSA+IGltZy51aTpub3QoLmF2YXRhcikge1xuICBtYXJnaW4tYm90dG9tOiBAaXRlbUVsZW1lbnRCb3R0b21EaXN0YW5jZTtcbn1cbi51aS5tdWx0aXBsZS5kcm9wZG93biA+IC5pbWFnZS5sYWJlbCBpbWcge1xuICBtYXJnaW46IEBpbWFnZUxhYmVsSW1hZ2VNYXJnaW47XG4gIGhlaWdodDogQGltYWdlTGFiZWxIZWlnaHQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS1cbiAgTXVsdGlwbGUgU2VhcmNoXG4tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFByb21wdCBUZXh0ICovXG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duID4gLnRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiBpbmhlcml0O1xuICBtYXJnaW46IEBtdWx0aXBsZVNlbGVjdGlvbkNoaWxkTWFyZ2luO1xuICBsaW5lLWhlaWdodDogQG11bHRpcGxlU2VsZWN0aW9uQ2hpbGRMaW5lSGVpZ2h0O1xufVxuXG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duID4gLmxhYmVsIH4gLnRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTZWFyY2ggKi9cbi51aS5tdWx0aXBsZS5zZWFyY2guZHJvcGRvd24gPiBpbnB1dC5zZWFyY2gge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBwYWRkaW5nOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogQG11bHRpcGxlU2VsZWN0aW9uQ2hpbGRNYXJnaW47XG4gIHdpZHRoOiBAbXVsdGlwbGVTZWxlY3Rpb25TZWFyY2hTdGFydFdpZHRoO1xuICBsaW5lLWhlaWdodDogQG11bHRpcGxlU2VsZWN0aW9uQ2hpbGRMaW5lSGVpZ2h0O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW5saW5lXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW5saW5lLmRyb3Bkb3duIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiBAaW5saW5lVGV4dENvbG9yO1xufVxuLnVpLmlubGluZS5kcm9wZG93biAuZHJvcGRvd24uaWNvbiB7XG4gIG1hcmdpbjogQGlubGluZUljb25NYXJnaW47XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi51aS5pbmxpbmUuZHJvcGRvd24gPiAudGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBAaW5saW5lVGV4dEZvbnRXZWlnaHQ7XG59XG4udWkuaW5saW5lLmRyb3Bkb3duIC5tZW51IHtcbiAgY3Vyc29yOiBhdXRvO1xuICBtYXJnaW4tdG9wOiBAaW5saW5lTWVudURpc3RhbmNlO1xuICBib3JkZXItcmFkaXVzOiBAaW5saW5lTWVudUJvcmRlclJhZGl1cztcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWVudSBJdGVtIEFjdGl2ZSAqL1xuLnVpLmRyb3Bkb3duIC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IEBhY3RpdmVJdGVtQmFja2dyb3VuZDtcbiAgZm9udC13ZWlnaHQ6IEBhY3RpdmVJdGVtRm9udFdlaWdodDtcbiAgY29sb3I6IEBhY3RpdmVJdGVtQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBhY3RpdmVJdGVtQm94U2hhZG93O1xuICB6LWluZGV4OiBAYWN0aXZlSXRlbVpJbmRleDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWVudSBJdGVtIEhvdmVyICovXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IEBob3ZlcmVkSXRlbUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaG92ZXJlZEl0ZW1Db2xvcjtcbiAgei1pbmRleDogQGhvdmVyZWRaSW5kZXg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubG9hZGluZy5kcm9wZG93biA+IGkuaWNvbiB7XG4gIGhlaWdodDogQHJlbGF0aXZlMTRweCAhaW1wb3J0YW50O1xufVxuLnVpLmxvYWRpbmcuc2VsZWN0aW9uLmRyb3Bkb3duID4gaS5pY29uIHtcbiAgcGFkZGluZzogQHJlbGF0aXZlMjFweCBAcmVsYXRpdmUxOHB4ICFpbXBvcnRhbnQ7XG59XG4udWkubG9hZGluZy5kcm9wZG93biA+IGkuaWNvbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuXG4gIG1hcmdpbjogQGxvYWRlck1hcmdpbjtcbiAgd2lkdGg6IEBsb2FkZXJTaXplO1xuICBoZWlnaHQ6IEBsb2FkZXJTaXplO1xuXG4gIGJvcmRlci1yYWRpdXM6IEBjaXJjdWxhclJhZGl1cztcbiAgYm9yZGVyOiBAbG9hZGVyTGluZVdpZHRoIHNvbGlkIEBsb2FkZXJGaWxsQ29sb3I7XG59XG4udWkubG9hZGluZy5kcm9wZG93biA+IGkuaWNvbjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCB0cmFuc3BhcmVudDtcblxuICBtYXJnaW46IEBsb2FkZXJNYXJnaW47XG4gIHdpZHRoOiBAbG9hZGVyU2l6ZTtcbiAgaGVpZ2h0OiBAbG9hZGVyU2l6ZTtcblxuICBhbmltYXRpb246IGxvYWRlciBAbG9hZGVyU3BlZWQgaW5maW5pdGUgbGluZWFyO1xuICBib3JkZXI6IEBsb2FkZXJMaW5lV2lkdGggc29saWQgQGxvYWRlckxpbmVDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xuXG59XG5cbi8qIENvdXBsaW5nICovXG4udWkubG9hZGluZy5kcm9wZG93bi5idXR0b24gPiBpLmljb246YmVmb3JlLFxuLnVpLmxvYWRpbmcuZHJvcGRvd24uYnV0dG9uID4gaS5pY29uOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBEZWZhdWx0IFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd246bm90KC5idXR0b24pID4gLmRlZmF1bHQudGV4dCxcbi51aS5kZWZhdWx0LmRyb3Bkb3duOm5vdCguYnV0dG9uKSA+IC50ZXh0IHtcbiAgY29sb3I6IEBkZWZhdWx0VGV4dENvbG9yO1xufVxuLnVpLmRyb3Bkb3duOm5vdCguYnV0dG9uKSA+IGlucHV0OmZvY3VzIH4gLmRlZmF1bHQudGV4dCxcbi51aS5kZWZhdWx0LmRyb3Bkb3duOm5vdCguYnV0dG9uKSA+IGlucHV0OmZvY3VzIH4gLnRleHQge1xuICBjb2xvcjogQGRlZmF1bHRUZXh0Rm9jdXNDb2xvcjtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sb2FkaW5nLmRyb3Bkb3duID4gLnRleHQge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4vKiBVc2VkIFRvIENoZWNrIFBvc2l0aW9uICovXG4udWkuZHJvcGRvd24gLmxvYWRpbmcubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IEBsb2FkaW5nWkluZGV4O1xufVxuLnVpLmRyb3Bkb3duID4gLmxvYWRpbmcubWVudSB7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cbi51aS5kcm9wZG93biA+IC5tZW51IC5sb2FkaW5nLm1lbnUge1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBLZXlib2FyZCBTZWxlY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZWxlY3RlZCBJdGVtICovXG4udWkuZHJvcGRvd24uc2VsZWN0ZWQsXG4udWkuZHJvcGRvd24gLm1lbnUgLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBAc2VsZWN0ZWRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQHNlbGVjdGVkQ29sb3I7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNlYXJjaCBGaWx0ZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEZpbHRlcmVkIEl0ZW0gKi9cbi51aS5kcm9wZG93biA+IC5maWx0ZXJlZC50ZXh0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnVpLmRyb3Bkb3duIC5maWx0ZXJlZC5pdGVtIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24uZXJyb3IsXG4udWkuZHJvcGRvd24uZXJyb3IgPiAudGV4dCxcbi51aS5kcm9wZG93bi5lcnJvciA+IC5kZWZhdWx0LnRleHQge1xuICBjb2xvcjogQGVycm9yVGV4dENvbG9yO1xufVxuXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duLmVycm9yIHtcbiAgYmFja2dyb3VuZDogQGVycm9yQmFja2dyb3VuZENvbG9yO1xuICBib3JkZXItY29sb3I6IEBlcnJvckJvcmRlckNvbG9yO1xufVxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5lcnJvcjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogQGVycm9yQm9yZGVyQ29sb3I7XG59XG5cbi51aS5kcm9wZG93bi5lcnJvciA+IC5tZW51LFxuLnVpLmRyb3Bkb3duLmVycm9yID4gLm1lbnUgLm1lbnUge1xuICBib3JkZXItY29sb3I6IEBlcnJvckJvcmRlckNvbG9yO1xufVxuLnVpLmRyb3Bkb3duLmVycm9yID4gLm1lbnUgPiAuaXRlbSB7XG4gIGNvbG9yOiBAZXJyb3JJdGVtVGV4dENvbG9yO1xufVxuLnVpLm11bHRpcGxlLnNlbGVjdGlvbi5lcnJvci5kcm9wZG93biA+IC5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogQGVycm9yQm9yZGVyQ29sb3I7XG59XG5cbi8qIEl0ZW0gSG92ZXIgKi9cbi51aS5kcm9wZG93bi5lcnJvciA+IC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZXJyb3JJdGVtSG92ZXJCYWNrZ3JvdW5kO1xufVxuXG4vKiBJdGVtIEFjdGl2ZSAqL1xuLnVpLmRyb3Bkb3duLmVycm9yID4gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGVycm9ySXRlbUFjdGl2ZUJhY2tncm91bmQ7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBDbGVhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biA+IC5jbGVhci5kcm9wZG93bi5pY29uIHtcbiAgb3BhY2l0eTogQGNsZWFyYWJsZUljb25PcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IEBkZWZhdWx0RHVyYXRpb24gQGRlZmF1bHRFYXNpbmc7XG59XG4udWkuZHJvcGRvd24gPiAuY2xlYXIuZHJvcGRvd24uaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IEBjbGVhcmFibGVJY29uQWN0aXZlT3BhY2l0eTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGlzYWJsZWQgKi9cbi51aS5kaXNhYmxlZC5kcm9wZG93bixcbi51aS5kcm9wZG93biAubWVudSA+IC5kaXNhYmxlZC5pdGVtIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogQGRpc2FibGVkT3BhY2l0eTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlyZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBGbHlvdXQgRGlyZWN0aW9uICovXG4udWkuZHJvcGRvd24gLm1lbnUge1xuICBsZWZ0OiAwO1xufVxuXG5cbi8qIERlZmF1bHQgU2lkZSAoUmlnaHQpICovXG4udWkuZHJvcGRvd24gLnJpZ2h0Lm1lbnUgPiAubWVudSxcbi51aS5kcm9wZG93biAubWVudSAucmlnaHQubWVudSB7XG4gIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogQHN1Yk1lbnVCb3JkZXJSYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLyogTGVmdHdhcmQgT3BlbmluZyBNZW51ICovXG4udWkuZHJvcGRvd24gPiAubGVmdC5tZW51IHtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICByaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4udWkuZHJvcGRvd24gPiAubGVmdC5tZW51IC5tZW51LFxuLnVpLmRyb3Bkb3duIC5tZW51IC5sZWZ0Lm1lbnUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAwJTtcbiAgbWFyZ2luOiBAbGVmdFN1Yk1lbnVNYXJnaW4gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogQGxlZnRTdWJNZW51Qm9yZGVyUmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uLFxuLnVpLmRyb3Bkb3duIC5sZWZ0Lm1lbnUgLml0ZW0gLmRyb3Bkb3duLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IEBsZWZ0TWVudURyb3Bkb3duSWNvbkZsb2F0O1xuICBtYXJnaW46IEBsZWZ0TWVudURyb3Bkb3duSWNvbk1hcmdpbjtcbn1cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uLFxuLnVpLmRyb3Bkb3duIC5sZWZ0Lm1lbnUgLml0ZW0gLmRyb3Bkb3duLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IEBsZWZ0TWVudURyb3Bkb3duSWNvbkZsb2F0O1xuICBtYXJnaW46IEBsZWZ0TWVudURyb3Bkb3duSWNvbk1hcmdpbjtcbn1cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uICsgLnRleHQsXG4udWkuZHJvcGRvd24gLmxlZnQubWVudSAuaXRlbSAuZHJvcGRvd24uaWNvbiArIC50ZXh0IHtcbiAgbWFyZ2luLWxlZnQ6IEBpdGVtRHJvcGRvd25JY29uRGlzdGFuY2U7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFVwd2FyZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVXB3YXJkIE1haW4gTWVudSAqL1xuLnVpLnVwd2FyZC5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIGJveC1zaGFkb3c6IEB1cHdhcmRNZW51Qm94U2hhZG93O1xuICBib3JkZXItcmFkaXVzOiBAdXB3YXJkTWVudUJvcmRlclJhZGl1cztcbn1cblxuLyogVXB3YXJkIFN1YiBNZW51ICovXG4udWkuZHJvcGRvd24gLnVwd2FyZC5tZW51IHtcbiAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4vKiBBY3RpdmUgVXB3YXJkICovXG4udWkuc2ltcGxlLnVwd2FyZC5hY3RpdmUuZHJvcGRvd24sXG4udWkuc2ltcGxlLnVwd2FyZC5kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDAgIWltcG9ydGFudDtcbn1cbi51aS51cHdhcmQuZHJvcGRvd24uYnV0dG9uOm5vdCgucG9pbnRpbmcpOm5vdCguZmxvYXRpbmcpLmFjdGl2ZSB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXMgQGJvcmRlclJhZGl1cyAwIDA7XG59XG5cbi8qIFNlbGVjdGlvbiAqL1xuLnVpLnVwd2FyZC5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICBib3JkZXItdG9wLXdpZHRoOiBAbWVudUJvcmRlcldpZHRoICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogQHVwd2FyZFNlbGVjdGlvbk1lbnVCb3hTaGFkb3c7XG59XG4udWkudXB3YXJkLnNlbGVjdGlvbi5kcm9wZG93bjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IEB1cHdhcmRTZWxlY3Rpb25Ib3ZlckJveFNoYWRvdztcbn1cblxuLyogQWN0aXZlIFVwd2FyZCAqL1xuLnVpLmFjdGl2ZS51cHdhcmQuc2VsZWN0aW9uLmRyb3Bkb3duIHtcbiAgYm9yZGVyLXJhZGl1czogQHVwd2FyZFNlbGVjdGlvblZpc2libGVCb3JkZXJSYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLyogVmlzaWJsZSBVcHdhcmQgKi9cbi51aS51cHdhcmQuc2VsZWN0aW9uLmRyb3Bkb3duLnZpc2libGUge1xuICBib3gtc2hhZG93OiBAdXB3YXJkU2VsZWN0aW9uVmlzaWJsZUJveFNoYWRvdztcbiAgYm9yZGVyLXJhZGl1czogQHVwd2FyZFNlbGVjdGlvblZpc2libGVCb3JkZXJSYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLyogVmlzaWJsZSBIb3ZlciBVcHdhcmQgKi9cbi51aS51cHdhcmQuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93bjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IEB1cHdhcmRTZWxlY3Rpb25BY3RpdmVIb3ZlckJveFNoYWRvdztcbn1cbi51aS51cHdhcmQuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93bjpob3ZlciAubWVudSB7XG4gIGJveC1zaGFkb3c6IEB1cHdhcmRTZWxlY3Rpb25BY3RpdmVIb3Zlck1lbnVCb3hTaGFkb3c7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2Nyb2xsaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiAgU2VsZWN0aW9uIE1lbnUgKi9cbi51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUsXG4udWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4udWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3A6IEBtZW51Qm9yZGVyO1xufVxuLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSAuaXRlbS5pdGVtLml0ZW0sXG4udWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51ID4gLml0ZW0uaXRlbS5pdGVtIHtcbiAgYm9yZGVyLXRvcDogQHNjcm9sbGluZ01lbnVJdGVtQm9yZGVyO1xufVxuLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUgLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLnVpLmRyb3Bkb3duID4gLmFuaW1hdGluZy5tZW51IC5zY3JvbGxpbmcubWVudSxcbi51aS5kcm9wZG93biA+IC52aXNpYmxlLm1lbnUgLnNjcm9sbGluZy5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIFNjcm9sbGJhciBpbiBJRSAqL1xuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0Om5vbmUpIHtcbiAgLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSxcbiAgLnVpLmRyb3Bkb3duIC5zY3JvbGxpbmcubWVudSB7XG4gICAgbWluLXdpZHRoOiBlKCUoXCJjYWxjKDEwMCUlIC0gJWQpXCIsIEBzY3JvbGxiYXJXaWR0aCkpO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51LFxuICAudWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiBAc2Nyb2xsaW5nTW9iaWxlTWF4TWVudUhlaWdodDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAdGFibGV0QnJlYWtwb2ludCkge1xuICAudWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51LFxuICAudWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiBAc2Nyb2xsaW5nVGFibGV0TWF4TWVudUhlaWdodDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAY29tcHV0ZXJCcmVha3BvaW50KSB7XG4gIC51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUsXG4gIC51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IEBzY3JvbGxpbmdDb21wdXRlck1heE1lbnVIZWlnaHQ7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogQHdpZGVzY3JlZW5Nb25pdG9yQnJlYWtwb2ludCkge1xuICAudWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51LFxuICAudWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiBAc2Nyb2xsaW5nV2lkZXNjcmVlbk1heE1lbnVIZWlnaHQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb2x1bW5hclxuLS0tLS0tLS0tLS0tLS0tKi9cbi51aS5kcm9wZG93bltjbGFzcyo9XCJ0d28gY29sdW1uXCJdID4gLm1lbnUgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDUwJTtcbn1cbi51aS5kcm9wZG93bltjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0gPiAubWVudSA+IC5pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzMlO1xufVxuLnVpLmRyb3Bkb3duW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdID4gLm1lbnUgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDI1JTtcbn1cbi51aS5kcm9wZG93bltjbGFzcyo9XCJmaXZlIGNvbHVtblwiXSA+IC5tZW51ID4gLml0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyMCU7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaW1wbGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIERpc3BsYXlzIHdpdGhvdXQgamF2YXNjcmlwdCAqL1xuXG4udWkuc2ltcGxlLmRyb3Bkb3duIC5tZW51OmJlZm9yZSxcbi51aS5zaW1wbGUuZHJvcGRvd24gLm1lbnU6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVpLnNpbXBsZS5kcm9wZG93biAubWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLyogSUUgaGFjayB0byBtYWtlIGRyb3Bkb3duIGljb25zIGFwcGVhciBpbmxpbmUgKi9cbiAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0b3A6IC05OTk5cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IEBzaW1wbGVUcmFuc2l0aW9uO1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zaW1wbGUuYWN0aXZlLmRyb3Bkb3duLFxuLnVpLnNpbXBsZS5kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnVpLnNpbXBsZS5hY3RpdmUuZHJvcGRvd24gPiAubWVudSxcbi51aS5zaW1wbGUuZHJvcGRvd246aG92ZXIgPiAubWVudSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDEwMCU7XG4gIG9wYWNpdHk6IDE7XG59XG4udWkuc2ltcGxlLmRyb3Bkb3duID4gLm1lbnUgPiAuaXRlbTphY3RpdmUgPiAubWVudSxcbi51aS5zaW1wbGUuZHJvcGRvd246aG92ZXIgPiAubWVudSA+IC5pdGVtOmhvdmVyID4gLm1lbnUge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbn1cbi51aS5zaW1wbGUuZGlzYWJsZWQuZHJvcGRvd246aG92ZXIgLm1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBWaXNpYmxlICovXG4udWkuc2ltcGxlLnZpc2libGUuZHJvcGRvd24gPiAubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBTY3JvbGxpbmcgKi9cbi51aS5zaW1wbGUuc2Nyb2xsaW5nLmFjdGl2ZS5kcm9wZG93biA+IC5tZW51LFxuLnVpLnNpbXBsZS5zY3JvbGxpbmcuZHJvcGRvd246aG92ZXIgPiAubWVudSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5kcm9wZG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IDA7XG59XG4udWkuZmx1aWQuZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGluZy5kcm9wZG93biAubWVudSB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3gtc2hhZG93OiBAZmxvYXRpbmdNZW51Qm94U2hhZG93ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IEBmbG9hdGluZ01lbnVCb3JkZXJSYWRpdXMgIWltcG9ydGFudDtcbn1cbi51aS5mbG9hdGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgYm9yZGVyLXJhZGl1czogQGZsb2F0aW5nTWVudUJvcmRlclJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnVpOm5vdCgudXB3YXJkKS5mbG9hdGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgbWFyZ2luLXRvcDogQGZsb2F0aW5nTWVudURpc3RhbmNlO1xufVxuLnVpLnVwd2FyZC5mbG9hdGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgbWFyZ2luLWJvdHRvbTogQGZsb2F0aW5nTWVudURpc3RhbmNlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBvaW50aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogQHBvaW50aW5nTWVudURpc3RhbmNlO1xuICBib3JkZXItcmFkaXVzOiBAcG9pbnRpbmdNZW51Qm9yZGVyUmFkaXVzO1xufVxuXG4udWkucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTpub3QoLmhpZGRlbik6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogJyc7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblxuICB3aWR0aDogQHBvaW50aW5nQXJyb3dTaXplO1xuICBoZWlnaHQ6IEBwb2ludGluZ0Fycm93U2l6ZTtcbiAgYm94LXNoYWRvdzogQHBvaW50aW5nQXJyb3dCb3hTaGFkb3c7XG4gIGJhY2tncm91bmQ6IEBwb2ludGluZ0Fycm93QmFja2dyb3VuZDtcbiAgei1pbmRleDogQHBvaW50aW5nQXJyb3daSW5kZXg7XG59XG5cbi51aS5wb2ludGluZy5kcm9wZG93biA+IC5tZW51Om5vdCguaGlkZGVuKTphZnRlciB7XG4gIHRvcDogQHBvaW50aW5nQXJyb3dPZmZzZXQ7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAwIDAgMCBAcG9pbnRpbmdBcnJvd09mZnNldDtcbn1cblxuLyogVG9wIExlZnQgUG9pbnRpbmcgKi9cbi51aS50b3AubGVmdC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IEBwb2ludGluZ0Fycm93RGlzdGFuY2VGcm9tRWRnZSAwIDA7XG59XG4udWkudG9wLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogMTAwJTtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luOiBAcG9pbnRpbmdBcnJvd0Rpc3RhbmNlRnJvbUVkZ2UgMCAwO1xufVxuLnVpLnRvcC5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICB0b3A6IEBwb2ludGluZ0Fycm93T2Zmc2V0O1xuICBsZWZ0OiBAcG9pbnRpbmdBcnJvd0Rpc3RhbmNlRnJvbUVkZ2U7XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi8qIFRvcCBSaWdodCBQb2ludGluZyAqL1xuLnVpLnRvcC5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW46IEBwb2ludGluZ0Fycm93RGlzdGFuY2VGcm9tRWRnZSAwIDA7XG59XG4udWkudG9wLnBvaW50aW5nLmRyb3Bkb3duID4gLmxlZnQubWVudTphZnRlcixcbi51aS50b3AucmlnaHQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogQHBvaW50aW5nQXJyb3dPZmZzZXQ7XG4gIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgcmlnaHQ6IEBwb2ludGluZ0Fycm93RGlzdGFuY2VGcm9tRWRnZSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLyogTGVmdCBQb2ludGluZyAqL1xuLnVpLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCAwIDAgQHBvaW50aW5nQXJyb3dEaXN0YW5jZUZyb21FZGdlO1xufVxuLnVpLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogMWVtO1xuICBsZWZ0OiBAcG9pbnRpbmdBcnJvd09mZnNldDtcbiAgbWFyZ2luOiAwIDAgMCAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuLnVpLmxlZnQ6bm90KC50b3ApOm5vdCguYm90dG9tKS5wb2ludGluZy5kcm9wZG93biA+IC5sZWZ0Lm1lbnUge1xuICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCBAcG9pbnRpbmdBcnJvd0Rpc3RhbmNlRnJvbUVkZ2UgMCAwO1xufVxuLnVpLmxlZnQ6bm90KC50b3ApOm5vdCguYm90dG9tKS5wb2ludGluZy5kcm9wZG93biA+IC5sZWZ0Lm1lbnU6YWZ0ZXIge1xuICB0b3A6IDFlbTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IEBwb2ludGluZ0Fycm93T2Zmc2V0O1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG59XG5cblxuLyogUmlnaHQgUG9pbnRpbmcgKi9cbi51aS5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIEBwb2ludGluZ0Fycm93RGlzdGFuY2VGcm9tRWRnZSAwIDA7XG59XG4udWkucmlnaHQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogMWVtO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogQHBvaW50aW5nQXJyb3dPZmZzZXQ7XG4gIG1hcmdpbjogMCAwIDAgMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbn1cblxuLyogQm90dG9tIFBvaW50aW5nICovXG4udWkuYm90dG9tLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCAwIEBwb2ludGluZ0Fycm93RGlzdGFuY2VGcm9tRWRnZSA7XG59XG4udWkuYm90dG9tLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogQHBvaW50aW5nQXJyb3dPZmZzZXQ7XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xufVxuLyogUmV2ZXJzZSBTdWItTWVudSBEaXJlY3Rpb24gKi9cbi51aS5ib3R0b20ucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSAubWVudSB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLyogQm90dG9tIExlZnQgKi9cbi51aS5ib3R0b20ubGVmdC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG4udWkuYm90dG9tLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIGxlZnQ6IEBwb2ludGluZ0Fycm93RGlzdGFuY2VGcm9tRWRnZTtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8qIEJvdHRvbSBSaWdodCAqL1xuLnVpLmJvdHRvbS5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG4udWkuYm90dG9tLnJpZ2h0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogQHBvaW50aW5nQXJyb3dEaXN0YW5jZUZyb21FZGdlO1xufVxuXG4vKiBVcHdhcmQgcG9pbnRpbmcgKi9cbi51aS5wb2ludGluZy51cHdhcmQuZHJvcGRvd24gLm1lbnUsXG4udWkudG9wLnBvaW50aW5nLnVwd2FyZC5kcm9wZG93biAubWVudSB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDEwMCUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIDAgQHBvaW50aW5nTWVudURpc3RhbmNlO1xuICBib3JkZXItcmFkaXVzOiBAcG9pbnRpbmdVcHdhcmRNZW51Qm9yZGVyUmFkaXVzO1xufVxuLnVpLnBvaW50aW5nLnVwd2FyZC5kcm9wZG93biAubWVudTphZnRlcixcbi51aS50b3AucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duIC5tZW51OmFmdGVyIHtcbiAgdG9wOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBAcG9pbnRpbmdVcHdhcmRBcnJvd0JveFNoYWRvdztcbiAgbWFyZ2luOiBAcG9pbnRpbmdBcnJvd09mZnNldCAwIDA7XG59XG5cbi8qIFJpZ2h0IFBvaW50aW5nIFVwd2FyZCAqL1xuLnVpLnJpZ2h0LnBvaW50aW5nLnVwd2FyZC5kcm9wZG93bjpub3QoLnRvcCk6bm90KC5ib3R0b20pIC5tZW51IHtcbiAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgQHBvaW50aW5nQXJyb3dEaXN0YW5jZUZyb21FZGdlIDAgMDtcbn1cbi51aS5yaWdodC5wb2ludGluZy51cHdhcmQuZHJvcGRvd246bm90KC50b3ApOm5vdCguYm90dG9tKSAubWVudTphZnRlciB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIDAgQHBvaW50aW5nQXJyb3dEaXN0YW5jZUZyb21FZGdlIDA7XG4gIGJveC1zaGFkb3c6IEBwb2ludGluZ0Fycm93Qm94U2hhZG93O1xufVxuXG5cbi8qIExlZnQgUG9pbnRpbmcgVXB3YXJkICovXG4udWkubGVmdC5wb2ludGluZy51cHdhcmQuZHJvcGRvd246bm90KC50b3ApOm5vdCguYm90dG9tKSAubWVudSB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIDAgMCBAcG9pbnRpbmdBcnJvd0Rpc3RhbmNlRnJvbUVkZ2U7XG59XG4udWkubGVmdC5wb2ludGluZy51cHdhcmQuZHJvcGRvd246bm90KC50b3ApOm5vdCguYm90dG9tKSAubWVudTphZnRlciB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIDAgQHBvaW50aW5nQXJyb3dEaXN0YW5jZUZyb21FZGdlIDA7XG4gIGJveC1zaGFkb3c6IEBwb2ludGluZ0Fycm93Qm94U2hhZG93O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBEcm9wZG93biBTaXplICovXG4udWkubWluaS5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQG1pbmk7XG59XG4udWkudGlueS5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQHRpbnk7XG59XG4udWkuc21hbGwuZHJvcGRvd24ge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbi51aS5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQG1lZGl1bTtcbn1cbi51aS5sYXJnZS5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQGxhcmdlO1xufVxuLnVpLmJpZy5kcm9wZG93biB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5odWdlLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cbi51aS5tYXNzaXZlLmRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cblxuLyogRHJvcGRvd24gSXRlbSBTaXplICovXG4udWkubWluaS5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiBAbWluaTtcbn1cbi51aS50aW55LmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiBAbWVkaXVtO1xufVxuLnVpLmxhcmdlLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5iaWcuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQGJpZztcbn1cbi51aS5odWdlLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBmb250LXNpemU6IEBodWdlO1xufVxuLnVpLm1hc3NpdmUuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogQG1hc3NpdmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogR2VuZXJhbCBydWxlcyBhbmQgYmFzaWMgZHJvcGRvd25zICovXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnUge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRNZW51QmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogQGludmVydGVkTWVudUJveFNoYWRvdztcbiAgYm9yZGVyOiBAaW52ZXJ0ZWRNZW51Qm9yZGVyO1xufVxuXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRNZW51Q29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRBY3RpdmVJdGVtQmFja2dyb3VuZDtcbiAgY29sb3I6IEBpbnZlcnRlZEFjdGl2ZUl0ZW1Db2xvcjtcbiAgYm94LXNoYWRvdzogQGludmVydGVkQWN0aXZlSXRlbUJveFNoYWRvdztcbn1cblxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRIb3ZlcmVkSXRlbUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRIb3ZlcmVkSXRlbUNvbG9yO1xufVxuXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24uc2VsZWN0ZWQsXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnUgLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRTZWxlY3RlZEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTZWxlY3RlZENvbG9yO1xufVxuXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnUgPiAuaGVhZGVyIHtcbiAgY29sb3I6IEBpbnZlcnRlZE1lbnVIZWFkZXJDb2xvcjtcbn1cblxuLnVpLmludmVydGVkLmRyb3Bkb3duID4gLnRleHQgPiAuZGVzY3JpcHRpb24sXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRJdGVtRGVzY3JpcHRpb25Db2xvcjtcbn1cblxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLmRpdmlkZXIge1xuICBib3JkZXItdG9wOiBAaW52ZXJ0ZWRNZW51RGl2aWRlckJvcmRlcjtcbn1cblxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5zY3JvbGxpbmcubWVudSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogQGludmVydGVkTWVudUJvcmRlcjtcbn1cblxuLyogU2VsZWN0aW9uICovXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmRyb3Bkb3duIHtcbiAgYm9yZGVyOiBAaW52ZXJ0ZWRTZWxlY3Rpb25Cb3JkZXI7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZFNlbGVjdGlvbkJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRTZWxlY3Rpb25UZXh0Q29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24uZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6IEBpbnZlcnRlZFNlbGVjdGlvbkhvdmVyQm9yZGVyQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBpbnZlcnRlZFNlbGVjdGlvbkhvdmVyQm94U2hhZG93O1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmRyb3Bkb3duIGlucHV0IHtcbiAgY29sb3I6IEBpbnZlcnRlZFNlbGVjdGlvbklucHV0VGV4dENvbG9yO1xufVxuXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd246bm90KC5idXR0b24pID4gLmRlZmF1bHQudGV4dCxcbi51aS5pbnZlcnRlZC5kZWZhdWx0LmRyb3Bkb3duOm5vdCguYnV0dG9uKSA+IC50ZXh0IHtcbiAgY29sb3I6IEBpbnZlcnRlZERlZmF1bHRUZXh0Q29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuZHJvcGRvd246bm90KC5idXR0b24pID4gaW5wdXQ6Zm9jdXMgfiAuZGVmYXVsdC50ZXh0LFxuLnVpLmludmVydGVkLmRlZmF1bHQuZHJvcGRvd246bm90KC5idXR0b24pID4gaW5wdXQ6Zm9jdXMgfiAudGV4dCB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWREZWZhdWx0VGV4dEZvY3VzQ29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24udmlzaWJsZS5kcm9wZG93biA+IC50ZXh0Om5vdCguZGVmYXVsdCkge1xuICBjb2xvcjogQGludmVydGVkU2VsZWN0aW9uVmlzaWJsZVRleHRDb2xvcjtcbn1cblxuLnVpLmludmVydGVkLmFjdGl2ZS5zZWFyY2guZHJvcGRvd24gaW5wdXQuc2VhcmNoOmZvY3VzICsgLnRleHQgLmljb24sXG4udWkuaW52ZXJ0ZWQuYWN0aXZlLnNlYXJjaC5kcm9wZG93biBpbnB1dC5zZWFyY2g6Zm9jdXMgKyAudGV4dCAuZmxhZyB7XG4gIG9wYWNpdHk6IEBpbnZlcnRlZFNlbGVjdGlvblRleHRVbmRlcmxheUljb25PcGFjaXR5O1xufVxuLnVpLmludmVydGVkLmFjdGl2ZS5zZWFyY2guZHJvcGRvd24gaW5wdXQuc2VhcmNoOmZvY3VzICsgLnRleHQge1xuICBjb2xvcjogQGludmVydGVkU2VsZWN0aW9uVGV4dFVuZGVybGF5Q29sb3IgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5hY3RpdmUuZHJvcGRvd24gLm1lbnUsXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmFjdGl2ZS5kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogQGludmVydGVkU2VsZWN0aW9uVmlzaWJsZUJvcmRlckNvbG9yO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiBAaW52ZXJ0ZWRTZWxlY3Rpb25JdGVtRGl2aWRlcjtcbn1cblxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLm1lc3NhZ2U6bm90KC51aSkge1xuICBjb2xvcjogQGludmVydGVkTWVzc2FnZUNvbG9yO1xufVxuXG4vKiBGaXhpbmcgdGhlIGJvcmRlciAqL1xuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuXG4vKiBMYWJlbHMgKi9cbi51aS5pbnZlcnRlZC5tdWx0aXBsZS5kcm9wZG93biA+IC5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnZlcnRlZExhYmVsQmFja2dyb3VuZENvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBAaW52ZXJ0ZWRMYWJlbEJhY2tncm91bmRJbWFnZTtcbiAgY29sb3I6IEBpbnZlcnRlZExhYmVsQ29sb3I7XG4gIGJveC1zaGFkb3c6IEBpbnZlcnRlZExhYmVsQm94U2hhZG93O1xufVxuXG4udWkuaW52ZXJ0ZWQubXVsdGlwbGUuZHJvcGRvd24gPiAubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRMYWJlbEhvdmVyQmFja2dyb3VuZENvbG9yO1xuICBib3JkZXItY29sb3I6IEBpbnZlcnRlZExhYmVsSG92ZXJCYWNrZ3JvdW5kQ29sb3I7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogQGludmVydGVkTGFiZWxIb3ZlckJhY2tncm91bmRJbWFnZTtcbiAgY29sb3I6IEBpbnZlcnRlZExhYmVsSG92ZXJUZXh0Q29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5tdWx0aXBsZS5kcm9wZG93biA+IC5sYWJlbCA+IC5jbG9zZS5pY29uLFxuLnVpLmludmVydGVkLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsID4gLmRlbGV0ZS5pY29uIHtcbiAgb3BhY2l0eTogQGludmVydGVkTGFiZWxJY29uT3BhY2l0eTtcbn1cblxuLnVpLmludmVydGVkLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsID4gLmNsb3NlLmljb246aG92ZXIsXG4udWkuaW52ZXJ0ZWQubXVsdGlwbGUuZHJvcGRvd24gPiAubGFiZWwgPiAuZGVsZXRlLmljb246aG92ZXIge1xuICBvcGFjaXR5OiBAaW52ZXJ0ZWRMYWJlbEljb25Ib3Zlck9wYWNpdHk7XG59XG5cbi8qIFNlbGVjdGlvbiBmb3IgZm9ybSBlbGVtZW50cyAqL1xuLnVpLmludmVydGVkLmRyb3Bkb3duIHRleHRhcmVhOjotd2Via2l0LXNlbGVjdGlvbixcbi51aS5pbnZlcnRlZC5kcm9wZG93biBpbnB1dDo6LXdlYmtpdC1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRJbnB1dEhpZ2hsaWdodEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRJbnB1dEhpZ2hsaWdodENvbG9yO1xufVxuLnVpLmludmVydGVkLmRyb3Bkb3duIHRleHRhcmVhOjotbW96LXNlbGVjdGlvbixcbi51aS5pbnZlcnRlZC5kcm9wZG93biBpbnB1dDo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRJbnB1dEhpZ2hsaWdodEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRJbnB1dEhpZ2hsaWdodENvbG9yO1xufVxuLnVpLmludmVydGVkLmRyb3Bkb3duIHRleHRhcmVhOjpzZWxlY3Rpb24sXG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gaW5wdXQ6OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnZlcnRlZElucHV0SGlnaGxpZ2h0QmFja2dyb3VuZDtcbiAgY29sb3I6IEBpbnZlcnRlZElucHV0SGlnaGxpZ2h0Q29sb3I7XG59XG5cbi8qIFNjcm9sbGJhcnMgKi9cbi51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiBAdHJhY2tJbnZlcnRlZEJhY2tncm91bmQ7XG59XG4udWkuaW52ZXJ0ZWQuZHJvcGRvd24gLm1lbnU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYmFja2dyb3VuZDogQHRodW1iSW52ZXJ0ZWRCYWNrZ3JvdW5kO1xufVxuLnVpLmludmVydGVkLmRyb3Bkb3duIC5tZW51Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjp3aW5kb3ctaW5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBAdGh1bWJJbnZlcnRlZEluYWN0aXZlQmFja2dyb3VuZDtcbn1cbi51aS5pbnZlcnRlZC5kcm9wZG93biAubWVudTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAdGh1bWJJbnZlcnRlZEhvdmVyQmFja2dyb3VuZDtcbn1cblxuLnVpLmludmVydGVkLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRQb2ludGluZ0Fycm93QmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogQGludmVydGVkUG9pbnRpbmdBcnJvd0JveFNoYWRvdztcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRHJvcGRvd24gQ2FyZXRzICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdEcm9wZG93bic7XG4gIHNyYzpcbiAgICB1cmwoZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWdnakI1QUFBQUM4QUFBQVlHTnRZWEFQZnVJSUFBQUJIQUFBQUV4bllYTndBQUFBRUFBQUFXZ0FBQUFJWjJ4NVpqbzgyTGdBQUFGd0FBQUJWR2hsWVdRQVE4OGJBQUFDeEFBQUFEWm9hR1ZoQXdjQjZRQUFBdndBQUFBa2FHMTBlQVM0QUJJQUFBTWdBQUFBSUd4dlkyRUJOZ0RlQUFBRFFBQUFBQkp0WVhod0FBb0FGZ0FBQTFRQUFBQWdibUZ0WlZjWnB1NEFBQU4wQUFBQlJYQnZjM1FBQXdBQUFBQUV2QUFBQUNBQUF3SUFBWkFBQlFBQUFVd0JaZ0FBQUVjQlRBRm1BQUFBOVFBWkFJUUFBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHcyZ0hnLytELzRBSGdBQ0FBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQ0FBQUFBd0FBQUJRQUF3QUJBQUFBRkFBRUFEZ0FBQUFLQUFnQUFnQUNBQUVBSVBEYS8vMy8vd0FBQUFBQUlQRFgvLzMvL3dBQi8rTVBMUUFEQUFFQUFBQUFBQUFBQUFBQUFBRUFBZi8vQUE4QUFRQUFBQUFBQUFBQUFBSUFBRGM1QVFBQUFBQUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBQUFJQUJKUUVsQUJNQUFCTTBOelkzQlRZWEZoVVVEd0VHSndZdkFTWTFBQVVHQndFQUNBVUdCb0FGQ0FjR2dBVUJFZ2NHQlFFQkFRY0VDUVlIZndZQkFRWi9Cd1lBQVFBQUFHNEJKUUVTQUJNQUFEYzBQd0UyTXpJZkFSWVZGQWNHSXlFaUp5WTFBQVdBQmdjSUJZQUdCZ1VJL3dBSEJnV0FCd2FBQlFXQUJnY0hCZ1VGQmdjQUFBQUJBQklBU1FDM0FXNEFFd0FBTnpRL0FUWVhOaGNXSFFFVUJ3WW5CaThCSmpVU0JvQUZDQWNGQmdZRkJ3Z0ZnQWJiQndaL0J3RUJCd1FKL3dnRUJ3RUJCMzhHQmdBQUFBQUJBQUFBU1FDbEFXNEFFd0FBTnhFME56WXpNaDhCRmhVVUR3RUdJeUluSmpVQUJRWUhDQVdBQmdhQUJRZ0hCZ1ZiQVFBSUJRWUdnQVVJQndXQUJnWUZCd0FBQUFFQUFBQUJBQURadWFLT1h3ODg5UUFMQWdBQUFBQUEwQUJIV0FBQUFBRFFBRWRZQUFBQUFBRWxBVzRBQUFBSUFBSUFBQUFBQUFBQUFRQUFBZUQvNEFBQUFnQUFBQUFBQVNVQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUJBQUFBQVNVQUFBRWxBQUFBdHdBU0FMY0FBQUFBQUFBQUNnQVVBQjRBUWdCa0FJZ0FxZ0FBQUFFQUFBQUlBQlFBQVFBQUFBQUFBZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFPQUs0QUFRQUFBQUFBQVFBT0FBQUFBUUFBQUFBQUFnQU9BRWNBQVFBQUFBQUFBd0FPQUNRQUFRQUFBQUFBQkFBT0FGVUFBUUFBQUFBQUJRQVdBQTRBQVFBQUFBQUFCZ0FIQURJQUFRQUFBQUFBQ2dBMEFHTUFBd0FCQkFrQUFRQU9BQUFBQXdBQkJBa0FBZ0FPQUVjQUF3QUJCQWtBQXdBT0FDUUFBd0FCQkFrQUJBQU9BRlVBQXdBQkJBa0FCUUFXQUE0QUF3QUJCQWtBQmdBT0FEa0FBd0FCQkFrQUNnQTBBR01BYVFCakFHOEFiUUJ2QUc4QWJnQldBR1VBY2dCekFHa0Fid0J1QUNBQU1RQXVBREFBYVFCakFHOEFiUUJ2QUc4QWJtbGpiMjF2YjI0QWFRQmpBRzhBYlFCdkFHOEFiZ0JTQUdVQVp3QjFBR3dBWVFCeUFHa0FZd0J2QUcwQWJ3QnZBRzRBUmdCdkFHNEFkQUFnQUdjQVpRQnVBR1VBY2dCaEFIUUFaUUJrQUNBQVlnQjVBQ0FBU1FCakFHOEFUUUJ2QUc4QWJnQXVBQUFBQUFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQT0pIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JrOVVWRThBQUFWd0FBb0FBQUFBQlNnQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJEUmtZZ0FBQUE5QUFBQWRrQUFBSFpMRFhFLzA5VEx6SUFBQUxRQUFBQVlBQUFBR0FJSXdlUVkyMWhjQUFBQXpBQUFBQk1BQUFBVEE5KzRnaG5ZWE53QUFBRGZBQUFBQWdBQUFBSUFBQUFFR2hsWVdRQUFBT0VBQUFBTmdBQUFEWUFRODhiYUdobFlRQUFBN3dBQUFBa0FBQUFKQU1IQWVsb2JYUjRBQUFENEFBQUFDQUFBQUFnQkxnQUVtMWhlSEFBQUFRQUFBQUFCZ0FBQUFZQUNGQUFibUZ0WlFBQUJBZ0FBQUZGQUFBQlJWY1pwdTV3YjNOMEFBQUZVQUFBQUNBQUFBQWdBQU1BQUFFQUJBUUFBUUVCQ0dsamIyMXZiMjRBQVFJQUFRQTYrQndDK0JzRCtCZ0VIZ29BR1ZQL2k0c2VDZ0FaVS8rTGl3d0hpMnY0bFBoMEJSMEFBQUNJRHgwQUFBQ05FUjBBQUFBSkhRQUFBZEFTQUFrQkFRZ1BFUk1XR3lBbEttbGpiMjF2YjI1cFkyOXRiMjl1ZFRCMU1YVXlNSFZHTUVRM2RVWXdSRGgxUmpCRU9YVkdNRVJCQUFBQ0FZa0FCZ0FJQWdBQkFBUUFCd0FLQUEwQVZnQ2ZBT2dCTC95VUR2eVVEdnlVRHZ1VUR2dHZpL2VtRll1UWpaQ09qbytQajQyUWl3ajNsSXNGa0l1UWlZNkhqNGlOaG91R2k0YUpoNGVIQ1BzVSt4UUZpSWlHaVlhTGhvdUhqWWVPQ1BzVTl4UUZpSStKajR1UUNBNzdiNHYzRkJXTGtJMlBqbzhJOXhUM0ZBV1BqbytOa0l1UWk1Q0pqb2dJOXhUN0ZBV1BoNDJIaTRhTGhvbUhoNGVJaUlhSmhvc0krNVNMQllhTGg0Mkhqb2lQaVkrTGtBZ08rOTJkOTI4Vmk1Q05rSStPQ1BjVTl4UUZqbytRalpDTGtJdVBpWTZIajRpTmhvdUdDSXY3bEFXTGhvbUhoNGlJaDRlSmhvdUdpNGFOaUk4SSt4VDNGQVdIam9tUGk1QUlEdnZkaStZVmkvZVVCWXVRalpDT2pvK1BqNDJRaTVDTGtJbU9od2ozRlBzVUJZK0lqWWFMaG91R2lZZUhpQWo3RlBzVUJZaUhob21HaTRhTGg0MkhqNGlPaVkrTGtBZ08rSlFVK0pRVml3d0tBQUFBQUFNQ0FBR1FBQVVBQUFGTUFXWUFBQUJIQVV3QlpnQUFBUFVBR1FDRUFBQUFBQUFBQUFBQUFBQUFBQUFBQVJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUFBQThOb0I0UC9nLytBQjRBQWdBQUFBQVFBQUFBQUFBQUFBQUFBQUlBQUFBQUFBQWdBQUFBTUFBQUFVQUFNQUFRQUFBQlFBQkFBNEFBQUFDZ0FJQUFJQUFnQUJBQ0R3MnYvOS8vOEFBQUFBQUNEdzEvLzkvLzhBQWYvakR5MEFBd0FCQUFBQUFBQUFBQUFBQUFBQkFBSC8vd0FQQUFFQUFBQUJBQUE1ZW1velh3ODg5UUFMQWdBQUFBQUEwQUJIV0FBQUFBRFFBRWRZQUFBQUFBRWxBVzRBQUFBSUFBSUFBQUFBQUFBQUFRQUFBZUQvNEFBQUFnQUFBQUFBQVNVQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUJBQUFBQVNVQUFBRWxBQUFBdHdBU0FMY0FBQUFBVUFBQUNBQUFBQUFBRGdDdUFBRUFBQUFBQUFFQURnQUFBQUVBQUFBQUFBSUFEZ0JIQUFFQUFBQUFBQU1BRGdBa0FBRUFBQUFBQUFRQURnQlZBQUVBQUFBQUFBVUFGZ0FPQUFFQUFBQUFBQVlBQndBeUFBRUFBQUFBQUFvQU5BQmpBQU1BQVFRSkFBRUFEZ0FBQUFNQUFRUUpBQUlBRGdCSEFBTUFBUVFKQUFNQURnQWtBQU1BQVFRSkFBUUFEZ0JWQUFNQUFRUUpBQVVBRmdBT0FBTUFBUVFKQUFZQURnQTVBQU1BQVFRSkFBb0FOQUJqQUdrQVl3QnZBRzBBYndCdkFHNEFWZ0JsQUhJQWN3QnBBRzhBYmdBZ0FERUFMZ0F3QUdrQVl3QnZBRzBBYndCdkFHNXBZMjl0YjI5dUFHa0FZd0J2QUcwQWJ3QnZBRzRBVWdCbEFHY0FkUUJzQUdFQWNnQnBBR01BYndCdEFHOEFid0J1QUVZQWJ3QnVBSFFBSUFCbkFHVUFiZ0JsQUhJQVlRQjBBR1VBWkFBZ0FHSUFlUUFnQUVrQVl3QnZBRTBBYndCdkFHNEFMZ0FBQUFBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEpIGZvcm1hdCgnd29mZicpXG4gIDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4udWkuZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIGZvbnQtZmFtaWx5OiAnRHJvcGRvd24nO1xuICBsaW5lLWhlaWdodDogMTtcbiAgaGVpZ2h0OiAxZW07XG4gIHdpZHRoOiAxLjIzZW07XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51aS5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG59XG4udWkuZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMGQ3Jztcbn1cblxuLyogU3ViIE1lbnUgKi9cbi51aS5kcm9wZG93biAubWVudSAuaXRlbSAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMGRhJy8qcnRsOidcXGYwZDknKi87XG59XG5cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uOmJlZm9yZSxcbi51aS5kcm9wZG93biAubGVmdC5tZW51IC5pdGVtIC5kcm9wZG93bi5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ5XCIvKnJ0bDpcIlxcZjBkYVwiKi87XG59XG5cbi8qIFZlcnRpY2FsIE1lbnUgRHJvcGRvd24gKi9cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtID4gLmRyb3Bkb3duLmljb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGFcIi8qcnRsOlwiXFxmMGQ5XCIqLztcbn1cblxuLyogSWNvbnMgZm9yIFJlZmVyZW5jZVxuLmRyb3Bkb3duLmRvd24uaWNvbiB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ3XCI7XG59XG4uZHJvcGRvd24udXAuaWNvbiB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG59XG4uZHJvcGRvd24ubGVmdC5pY29uIHtcbiAgY29udGVudDogXCJcXGYwZDlcIjtcbn1cbi5kcm9wZG93bi5pY29uLmljb24ge1xuICBjb250ZW50OiBcIlxcZjBkYVwiO1xufVxuKi9cbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFZpZGVvXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAnZW1iZWQnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmVtYmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogQGJhY2tncm91bmQ7XG4gIHBhZGRpbmctYm90dG9tOiBAd2lkZXNjcmVlblJhdGlvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gIEVtYmVkZGVkIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5lbWJlZCBpZnJhbWUsXG4udWkuZW1iZWQgZW1iZWQsXG4udWkuZW1iZWQgb2JqZWN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFbWJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmVtYmVkID4gLmVtYmVkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgUGxhY2Vob2xkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5lbWJlZCA+IC5wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGxhY2Vob2xkZXJCYWNrZ3JvdW5kO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZW1iZWQgPiAuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG59XG4udWkuZW1iZWQgPiAuaWNvbjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAzO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogQHBsYWNlaG9sZGVyQmFja2dyb3VuZDtcbiAgb3BhY2l0eTogQHBsYWNlaG9sZGVyQmFja2dyb3VuZE9wYWNpdHk7XG4gIHRyYW5zaXRpb246IEBwbGFjZWhvbGRlckJhY2tncm91bmRUcmFuc2l0aW9uO1xufVxuLnVpLmVtYmVkID4gLmljb246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcblxuICBjb2xvcjogQGljb25Db2xvcjtcbiAgZm9udC1zaXplOiBAaWNvblNpemU7XG4gIHRleHQtc2hhZG93OiBAaWNvblNoYWRvdztcbiAgdHJhbnNpdGlvbjogQGljb25UcmFuc2l0aW9uO1xuICB6LWluZGV4OiBAaWNvblpJbmRleDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmVtYmVkIC5pY29uOmhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogQGhvdmVyUGxhY2Vob2xkZXJCYWNrZ3JvdW5kO1xuICBvcGFjaXR5OiBAaG92ZXJQbGFjZWhvbGRlckJhY2tncm91bmRPcGFjaXR5O1xufVxuLnVpLmVtYmVkIC5pY29uOmhvdmVyOmJlZm9yZSB7XG4gIGNvbG9yOiBAaG92ZXJJY29uQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYWN0aXZlLmVtYmVkID4gLmljb24sXG4udWkuYWN0aXZlLmVtYmVkID4gLnBsYWNlaG9sZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51aS5hY3RpdmUuZW1iZWQgPiAuZW1iZWQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnNxdWFyZS5lbWJlZCB7XG4gIHBhZGRpbmctYm90dG9tOiBAc3F1YXJlUmF0aW87XG59XG4udWlbY2xhc3MqPVwiNDozXCJdLmVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IEBzdGFuZGFyZFJhdGlvO1xufVxuLnVpW2NsYXNzKj1cIjE2OjlcIl0uZW1iZWQge1xuICBwYWRkaW5nLWJvdHRvbTogQHdpZGVzY3JlZW5SYXRpbztcbn1cbi51aVtjbGFzcyo9XCIyMTo5XCJdLmVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IEB1bHRyYVdpZGVzY3JlZW5SYXRpbztcbn1cblxuXG5cbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIE1vZGFsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAnbW9kYWwnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgTW9kYWxcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5tb2RhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogQHpJbmRleDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICBiYWNrZ3JvdW5kOiBAYmFja2dyb3VuZDtcbiAgYm9yZGVyOiBAYm9yZGVyO1xuICBib3gtc2hhZG93OiBAYm94U2hhZG93O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBAdHJhbnNmb3JtT3JpZ2luO1xuXG4gIGZsZXg6IDAgMCBhdXRvO1xuXG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xuICB3aWxsLWNoYW5nZTogdG9wLCBsZWZ0LCBtYXJnaW4sIHRyYW5zZm9ybSwgb3BhY2l0eTtcbn1cblxuLnVpLm1vZGFsID4gOmZpcnN0LWNoaWxkOm5vdCguaWNvbik6bm90KC5kaW1tZXIpLFxuLnVpLm1vZGFsID4gLmljb246Zmlyc3QtY2hpbGQgKyAqLFxuLnVpLm1vZGFsID4gLmRpbW1lcjpmaXJzdC1jaGlsZCArICo6bm90KC5pY29uKSxcbi51aS5tb2RhbCA+IC5kaW1tZXI6Zmlyc3QtY2hpbGQgKyAuaWNvbiArICoge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQGJvcmRlclJhZGl1cztcbn1cblxuLnVpLm1vZGFsID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAYm9yZGVyUmFkaXVzO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQGJvcmRlclJhZGl1cztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ2xvc2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tb2RhbCA+IC5jbG9zZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IEBjbG9zZVRvcDtcbiAgcmlnaHQ6IEBjbG9zZVJpZ2h0O1xuICB6LWluZGV4OiAxO1xuXG4gIG9wYWNpdHk6IEBjbG9zZU9wYWNpdHk7XG4gIGZvbnQtc2l6ZTogQGNsb3NlU2l6ZTtcbiAgY29sb3I6IEBjbG9zZUNvbG9yO1xuXG4gIHdpZHRoOiBAY2xvc2VIaXRib3g7XG4gIGhlaWdodDogQGNsb3NlSGl0Ym94O1xuICBwYWRkaW5nOiBAY2xvc2VQYWRkaW5nO1xufVxuLnVpLm1vZGFsID4gLmNsb3NlOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tb2RhbCA+IC5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IEBoZWFkZXJGb250RmFtaWx5O1xuICBiYWNrZ3JvdW5kOiBAaGVhZGVyQmFja2dyb3VuZDtcbiAgbWFyZ2luOiBAaGVhZGVyTWFyZ2luO1xuICBwYWRkaW5nOiBAaGVhZGVyUGFkZGluZztcbiAgYm94LXNoYWRvdzogQGhlYWRlckJveFNoYWRvdztcblxuICBjb2xvcjogQGhlYWRlckNvbG9yO1xuICBib3JkZXItYm90dG9tOiBAaGVhZGVyQm9yZGVyO1xufVxuLnVpLm1vZGFsID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGZvbnQtc2l6ZTogQGhlYWRlckZvbnRTaXplO1xuICBsaW5lLWhlaWdodDogQGhlYWRlckxpbmVIZWlnaHQ7XG4gIGZvbnQtd2VpZ2h0OiBAaGVhZGVyRm9udFdlaWdodDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubW9kYWwgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiBAY29udGVudEZvbnRTaXplO1xuICBsaW5lLWhlaWdodDogQGNvbnRlbnRMaW5lSGVpZ2h0O1xuICBwYWRkaW5nOiBAY29udGVudFBhZGRpbmc7XG4gIGJhY2tncm91bmQ6IEBjb250ZW50QmFja2dyb3VuZDtcbn1cbi51aS5tb2RhbCA+IC5pbWFnZS5jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLyogSW1hZ2UgKi9cbi51aS5tb2RhbCA+IC5jb250ZW50ID4gLmltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogQGltYWdlV2lkdGg7XG4gIGFsaWduLXNlbGY6IEBpbWFnZVZlcnRpY2FsQWxpZ247XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi51aS5tb2RhbCA+IFtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXSB7XG4gIGFsaWduLXNlbGY6IHN0YXJ0O1xufVxuLnVpLm1vZGFsID4gW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLnVpLm1vZGFsID4gW2NsYXNzKj1cInN0cmV0Y2hlZFwiXSB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi8qIERlc2NyaXB0aW9uICovXG4udWkubW9kYWwgPiAuY29udGVudCA+IC5kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgbWluLXdpZHRoOiAwO1xuICBhbGlnbi1zZWxmOiBAZGVzY3JpcHRpb25WZXJ0aWNhbEFsaWduO1xufVxuXG4udWkubW9kYWwgPiAuY29udGVudCA+IC5pY29uICsgLmRlc2NyaXB0aW9uLFxuLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuaW1hZ2UgKyAuZGVzY3JpcHRpb24ge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgbWluLXdpZHRoOiBAZGVzY3JpcHRpb25NaW5XaWR0aDtcbiAgd2lkdGg6IEBkZXNjcmlwdGlvbldpZHRoO1xuICBwYWRkaW5nLWxlZnQ6IEBkZXNjcmlwdGlvbkRpc3RhbmNlO1xufVxuXG4vKnJ0bDppZ25vcmUqL1xuLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuaW1hZ2UgPiBpLmljb24ge1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiBAaW1hZ2VJY29uU2l6ZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3Rpb25zXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubW9kYWwgPiAuYWN0aW9ucyB7XG4gIGJhY2tncm91bmQ6IEBhY3Rpb25CYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiBAYWN0aW9uUGFkZGluZztcbiAgYm9yZGVyLXRvcDogQGFjdGlvbkJvcmRlcjtcbiAgdGV4dC1hbGlnbjogQGFjdGlvbkFsaWduO1xufVxuLnVpLm1vZGFsIC5hY3Rpb25zID4gLmJ1dHRvbiB7XG4gIG1hcmdpbi1sZWZ0OiBAYnV0dG9uRGlzdGFuY2U7XG59XG4udWkuYmFzaWMubW9kYWwgPiAuYWN0aW9ucyB7XG4gIGJvcmRlci10b3A6bm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUmVzcG9uc2l2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNb2RhbCBXaWR0aCAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogQGxhcmdlc3RNb2JpbGVTY3JlZW4pIHtcbiAgLnVpLm1vZGFsOm5vdCguZnVsbHNjcmVlbikge1xuICAgIHdpZHRoOiBAbW9iaWxlV2lkdGg7XG4gICAgbWFyZ2luOiBAbW9iaWxlTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAdGFibGV0QnJlYWtwb2ludCkge1xuICAudWkubW9kYWw6bm90KC5mdWxsc2NyZWVuKSB7XG4gICAgd2lkdGg6IEB0YWJsZXRXaWR0aDtcbiAgICBtYXJnaW46IEB0YWJsZXRNYXJnaW47XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IEBjb21wdXRlckJyZWFrcG9pbnQpIHtcbiAgLnVpLm1vZGFsOm5vdCguZnVsbHNjcmVlbikge1xuICAgIHdpZHRoOiBAY29tcHV0ZXJXaWR0aDtcbiAgICBtYXJnaW46IEBjb21wdXRlck1hcmdpbjtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogQGxhcmdlTW9uaXRvckJyZWFrcG9pbnQpIHtcbiAgLnVpLm1vZGFsOm5vdCguZnVsbHNjcmVlbikge1xuICAgIHdpZHRoOiBAbGFyZ2VNb25pdG9yV2lkdGg7XG4gICAgbWFyZ2luOiBAbGFyZ2VNb25pdG9yTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAd2lkZXNjcmVlbk1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS5tb2RhbDpub3QoLmZ1bGxzY3JlZW4pIHtcbiAgICB3aWR0aDogQHdpZGVzY3JlZW5Nb25pdG9yV2lkdGg7XG4gICAgbWFyZ2luOiBAd2lkZXNjcmVlbk1vbml0b3JNYXJnaW47XG4gIH1cbn1cblxuLyogVGFibGV0IGFuZCBNb2JpbGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IEBsYXJnZXN0VGFibGV0U2NyZWVuKSB7XG4gIC51aS5tb2RhbCA+IC5oZWFkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IEBjbG9zZUhpdGJveDtcbiAgfVxuICAudWkubW9kYWwgPiAuY2xvc2Uge1xuICAgIHRvcDogQGlubmVyQ2xvc2VUb3A7XG4gICAgcmlnaHQ6IEBpbm5lckNsb3NlUmlnaHQ7XG4gICAgY29sb3I6IEBpbm5lckNsb3NlQ29sb3I7XG4gIH1cbn1cblxuLyogTW9iaWxlICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuXG4gIC51aS5tb2RhbCA+IC5oZWFkZXIge1xuICAgIHBhZGRpbmc6IEBtb2JpbGVIZWFkZXJQYWRkaW5nICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogQGNsb3NlSGl0Ym94ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLm92ZXJsYXkuZnVsbHNjcmVlbi5tb2RhbCA+IC5jb250ZW50LmNvbnRlbnQuY29udGVudCB7XG4gICAgbWluLWhlaWdodDogQG92ZXJsYXlGdWxsc2NyZWVuU2Nyb2xsaW5nQ29udGVudE1heEhlaWdodE1vYmlsZTtcbiAgfVxuICAudWkub3ZlcmxheS5mdWxsc2NyZWVuLm1vZGFsID4gLnNjcm9sbGluZy5jb250ZW50LmNvbnRlbnQuY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogQG92ZXJsYXlGdWxsc2NyZWVuU2Nyb2xsaW5nQ29udGVudE1heEhlaWdodE1vYmlsZTtcbiAgfVxuICAudWkubW9kYWwgPiAuY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogQG1vYmlsZUNvbnRlbnRQYWRkaW5nICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVpLm1vZGFsID4gLmNsb3NlIHtcbiAgICB0b3A6IEBtb2JpbGVDbG9zZVRvcCAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBAbW9iaWxlQ2xvc2VSaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLypydGw6aWdub3JlKi9cbiAgLnVpLm1vZGFsIC5pbWFnZS5jb250ZW50IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC51aS5tb2RhbCAuY29udGVudCA+IC5pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IEBtb2JpbGVJbWFnZVBhZGRpbmcgIWltcG9ydGFudDtcbiAgfVxuICAudWkubW9kYWwgPiAuY29udGVudCA+IC5pbWFnZSA+IGkuaWNvbiB7XG4gICAgZm9udC1zaXplOiBAbW9iaWxlSW1hZ2VJY29uU2l6ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAvKnJ0bDppZ25vcmUqL1xuICAudWkubW9kYWwgLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogQG1vYmlsZURlc2NyaXB0aW9uUGFkZGluZyAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAvKiBMZXQgQnV0dG9ucyBTdGFjayAqL1xuICAudWkubW9kYWwgPiAuYWN0aW9ucyB7XG4gICAgcGFkZGluZzogQG1vYmlsZUFjdGlvblBhZGRpbmcgIWltcG9ydGFudDtcbiAgfVxuICAudWkubW9kYWwgLmFjdGlvbnMgPiAuYnV0dG9ucyxcbiAgLnVpLm1vZGFsIC5hY3Rpb25zID4gLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogQG1vYmlsZUJ1dHRvbkRpc3RhbmNlO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmRpbW1lciA+IC51aS5tb2RhbCB7XG4gIGJveC1zaGFkb3c6IEBpbnZlcnRlZEJveFNoYWRvdztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmJhc2ljLm1vZGFsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogQGJhc2ljTW9kYWxDb2xvcjtcbn1cbi51aS5iYXNpYy5tb2RhbCA+IC5oZWFkZXIsXG4udWkuYmFzaWMubW9kYWwgPiAuY29udGVudCxcbi51aS5iYXNpYy5tb2RhbCA+IC5hY3Rpb25zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4udWkuYmFzaWMubW9kYWwgPiAuaGVhZGVyIHtcbiAgY29sb3I6IEBiYXNpY01vZGFsSGVhZGVyQ29sb3I7XG59XG4udWkuYmFzaWMubW9kYWwgPiAuY2xvc2Uge1xuICB0b3A6IEBiYXNpY01vZGFsQ2xvc2VUb3A7XG4gIHJpZ2h0OiBAYmFzaWNNb2RhbENsb3NlUmlnaHQ7XG4gIGNvbG9yOiBAYmFzaWNJbm5lckNsb3NlQ29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAuYmFzaWMubW9kYWwge1xuICBjb2xvcjogQGJhc2ljSW52ZXJ0ZWRNb2RhbENvbG9yO1xufVxuLnVpLmludmVydGVkLmRpbW1lciA+IC51aS5iYXNpYy5tb2RhbCA+IC5oZWFkZXIge1xuICBjb2xvcjogQGJhc2ljSW52ZXJ0ZWRNb2RhbEhlYWRlckNvbG9yO1xufVxuLyogUmVzb3J0IHRvIG1hcmdpbiBwb3NpdGlvbmluZyBpZiBsZWdhY3kgKi9cbi51aS5sZWdhY3kubGVnYWN5Lm1vZGFsLFxuLnVpLmxlZ2FjeS5sZWdhY3kucGFnZS5kaW1tZXIgPiAudWkubW9kYWwge1xuICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbn1cbi51aS5sZWdhY3kubGVnYWN5Lm1vZGFsOm5vdCguYWxpZ25lZCksXG4udWkubGVnYWN5LmxlZ2FjeS5wYWdlLmRpbW1lciA+IC51aS5tb2RhbDpub3QoLmFsaWduZWQpIHtcbiAgdG9wOiA1MCU7XG59XG4udWkubGVnYWN5LmxlZ2FjeS5wYWdlLmRpbW1lciA+IC51aS5zY3JvbGxpbmcubW9kYWw6bm90KC5hbGlnbmVkKSxcbi51aS5wYWdlLmRpbW1lciA+IC51aS5zY3JvbGxpbmcubGVnYWN5LmxlZ2FjeS5tb2RhbDpub3QoLmFsaWduZWQpLFxuLnVpLnRvcC5hbGlnbmVkLmxlZ2FjeS5sZWdhY3kucGFnZS5kaW1tZXIgPiAudWkubW9kYWw6bm90KC5hbGlnbmVkKSxcbi51aS50b3AuYWxpZ25lZC5kaW1tZXIgPiAudWkubGVnYWN5LmxlZ2FjeS5tb2RhbDpub3QoLmFsaWduZWQpIHtcbiAgdG9wOiBhdXRvO1xufVxuXG4udWkubGVnYWN5Lm92ZXJsYXkuZnVsbHNjcmVlbi5tb2RhbCB7XG4gIG1hcmdpbi10b3A6IC1Ac2Nyb2xsaW5nTWFyZ2luICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubG9hZGluZy5tb2RhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IEBsb2FkaW5nWkluZGV4O1xufVxuXG4udWkuYWN0aXZlLm1vZGFsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50b3AuYWxpZ25lZC5tb2RhbCB7XG4gIHRvcDogQHRvcEFsaWduZWRNYXJnaW47XG59XG4udWkuYm90dG9tLmFsaWduZWQubW9kYWwge1xuICBib3R0b206IEBib3R0b21BbGlnbmVkTWFyZ2luO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkudG9wLmFsaWduZWQubW9kYWwge1xuICAgIHRvcDogQG1vYmlsZVRvcEFsaWduZWRNYXJnaW47XG4gIH1cbiAgLnVpLmJvdHRvbS5hbGlnbmVkLm1vZGFsIHtcbiAgICBib3R0b206IEBtb2JpbGVCb3R0b21BbGlnbmVkTWFyZ2luO1xuICB9XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNjcm9sbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU2Nyb2xsaW5nIERpbW1lciAqL1xuLnNjcm9sbGluZy5kaW1tYWJsZS5kaW1tZWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnNjcm9sbGluZy5kaW1tYWJsZSA+IC5kaW1tZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbi5zY3JvbGxpbmcuZGltbWFibGUuZGltbWVkID4gLmRpbW1lciB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG4ubW9kYWxzLmRpbW1lciAudWkuc2Nyb2xsaW5nLm1vZGFsOm5vdCguZnVsbHNjcmVlbikge1xuICBtYXJnaW46IEBzY3JvbGxpbmdNYXJnaW4gYXV0bztcbn1cblxuLyogVW5kZXRhY2hlZCBTY3JvbGxpbmcgKi9cbi5zY3JvbGxpbmcudW5kZXRhY2hlZC5kaW1tYWJsZS5kaW1tZWQge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuLnNjcm9sbGluZy51bmRldGFjaGVkLmRpbW1hYmxlLmRpbW1lZCA+IC5kaW1tZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnNjcm9sbGluZy51bmRldGFjaGVkLmRpbW1hYmxlIC51aS5zY3JvbGxpbmcubW9kYWw6bm90KC5mdWxsc2NyZWVuKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tdG9wOiBAc2Nyb2xsaW5nTWFyZ2luICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNjcm9sbGluZyBDb250ZW50ICovXG4udWkubW9kYWwgPiAuc2Nyb2xsaW5nLmNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiBAc2Nyb2xsaW5nQ29udGVudE1heEhlaWdodDtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG4udWkub3ZlcmxheS5mdWxsc2NyZWVuLm1vZGFsID4gLmNvbnRlbnQge1xuICBtaW4taGVpZ2h0OiBAb3ZlcmxheUZ1bGxzY3JlZW5TY3JvbGxpbmdDb250ZW50TWF4SGVpZ2h0O1xufVxuLnVpLm92ZXJsYXkuZnVsbHNjcmVlbi5tb2RhbCA+IC5zY3JvbGxpbmcuY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IEBvdmVybGF5RnVsbHNjcmVlblNjcm9sbGluZ0NvbnRlbnRNYXhIZWlnaHQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZ1bGwgU2NyZWVuXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZnVsbHNjcmVlbi5tb2RhbCB7XG4gIHdpZHRoOiBAZnVsbFNjcmVlbldpZHRoO1xuICBsZWZ0OiBAZnVsbFNjcmVlbk9mZnNldDtcbiAgbWFyZ2luOiBAZnVsbFNjcmVlbk1hcmdpbjtcbn1cbi51aS5vdmVybGF5LmZ1bGxzY3JlZW4ubW9kYWwge1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRvcDogMDtcbiAgYm9yZGVyLXJhZGl1czowO1xufVxuLnVpLmZ1bGxzY3JlZW4ubW9kYWwgPiAuaGVhZGVyIHtcbiAgcGFkZGluZy1yaWdodDogQGNsb3NlSGl0Ym94O1xufVxuLnVpLmZ1bGxzY3JlZW4ubW9kYWwgPiAuY2xvc2Uge1xuICB0b3A6IEBpbm5lckNsb3NlVG9wO1xuICByaWdodDogQGlubmVyQ2xvc2VSaWdodDtcbiAgY29sb3I6IEBpbm5lckNsb3NlQ29sb3I7XG59XG4udWkuYmFzaWMuZnVsbHNjcmVlbi5tb2RhbCA+IC5jbG9zZSB7XG4gIGNvbG9yOiBAYmFzaWNJbm5lckNsb3NlQ29sb3I7XG59XG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubW9kYWwge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG5cbi8qIE1pbmkgKi9cbi51aS5taW5pLm1vZGFsID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGZvbnQtc2l6ZTogQG1pbmlIZWFkZXJTaXplO1xufVxuXG4vKiBNaW5pIE1vZGFsIFdpZHRoICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkubWluaS5tb2RhbCB7XG4gICAgd2lkdGg6IEBtaW5pTW9iaWxlV2lkdGg7XG4gICAgbWFyZ2luOiBAbWluaU1vYmlsZU1hcmdpbjtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogQHRhYmxldEJyZWFrcG9pbnQpIHtcbiAgLnVpLm1pbmkubW9kYWwge1xuICAgIHdpZHRoOiBAbWluaVRhYmxldFdpZHRoO1xuICAgIG1hcmdpbjogQG1pbmlUYWJsZXRNYXJnaW47XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IEBjb21wdXRlckJyZWFrcG9pbnQpIHtcbiAgLnVpLm1pbmkubW9kYWwge1xuICAgIHdpZHRoOiBAbWluaUNvbXB1dGVyV2lkdGg7XG4gICAgbWFyZ2luOiBAbWluaUNvbXB1dGVyTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAbGFyZ2VNb25pdG9yQnJlYWtwb2ludCkge1xuICAudWkubWluaS5tb2RhbCB7XG4gICAgd2lkdGg6IEBtaW5pTGFyZ2VNb25pdG9yV2lkdGg7XG4gICAgbWFyZ2luOiBAbWluaUxhcmdlTW9uaXRvck1hcmdpbjtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogQHdpZGVzY3JlZW5Nb25pdG9yQnJlYWtwb2ludCkge1xuICAudWkubWluaS5tb2RhbCB7XG4gICAgd2lkdGg6IEBtaW5pV2lkZXNjcmVlbk1vbml0b3JXaWR0aDtcbiAgICBtYXJnaW46IEBtaW5pV2lkZXNjcmVlbk1vbml0b3JNYXJnaW47XG4gIH1cbn1cblxuLyogVGlueSAqL1xuLnVpLnRpbnkubW9kYWwgPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC1zaXplOiBAdGlueUhlYWRlclNpemU7XG59XG5cbi8qIFRpbnkgTW9kYWwgV2lkdGggKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS50aW55Lm1vZGFsIHtcbiAgICB3aWR0aDogQHRpbnlNb2JpbGVXaWR0aDtcbiAgICBtYXJnaW46IEB0aW55TW9iaWxlTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAdGFibGV0QnJlYWtwb2ludCkge1xuICAudWkudGlueS5tb2RhbCB7XG4gICAgd2lkdGg6IEB0aW55VGFibGV0V2lkdGg7XG4gICAgbWFyZ2luOiBAdGlueVRhYmxldE1hcmdpbjtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogQGNvbXB1dGVyQnJlYWtwb2ludCkge1xuICAudWkudGlueS5tb2RhbCB7XG4gICAgd2lkdGg6IEB0aW55Q29tcHV0ZXJXaWR0aDtcbiAgICBtYXJnaW46IEB0aW55Q29tcHV0ZXJNYXJnaW47XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IEBsYXJnZU1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS50aW55Lm1vZGFsIHtcbiAgICB3aWR0aDogQHRpbnlMYXJnZU1vbml0b3JXaWR0aDtcbiAgICBtYXJnaW46IEB0aW55TGFyZ2VNb25pdG9yTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAd2lkZXNjcmVlbk1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS50aW55Lm1vZGFsIHtcbiAgICB3aWR0aDogQHRpbnlXaWRlc2NyZWVuTW9uaXRvcldpZHRoO1xuICAgIG1hcmdpbjogQHRpbnlXaWRlc2NyZWVuTW9uaXRvck1hcmdpbjtcbiAgfVxufVxuXG4vKiBTbWFsbCAqL1xuLnVpLnNtYWxsLm1vZGFsID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGZvbnQtc2l6ZTogQHNtYWxsSGVhZGVyU2l6ZTtcbn1cblxuLyogU21hbGwgTW9kYWwgV2lkdGggKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IEBzbWFsbE1vYmlsZVdpZHRoO1xuICAgIG1hcmdpbjogQHNtYWxsTW9iaWxlTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAdGFibGV0QnJlYWtwb2ludCkge1xuICAudWkuc21hbGwubW9kYWwge1xuICAgIHdpZHRoOiBAc21hbGxUYWJsZXRXaWR0aDtcbiAgICBtYXJnaW46IEBzbWFsbFRhYmxldE1hcmdpbjtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogQGNvbXB1dGVyQnJlYWtwb2ludCkge1xuICAudWkuc21hbGwubW9kYWwge1xuICAgIHdpZHRoOiBAc21hbGxDb21wdXRlcldpZHRoO1xuICAgIG1hcmdpbjogQHNtYWxsQ29tcHV0ZXJNYXJnaW47XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IEBsYXJnZU1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IEBzbWFsbExhcmdlTW9uaXRvcldpZHRoO1xuICAgIG1hcmdpbjogQHNtYWxsTGFyZ2VNb25pdG9yTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAd2lkZXNjcmVlbk1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IEBzbWFsbFdpZGVzY3JlZW5Nb25pdG9yV2lkdGg7XG4gICAgbWFyZ2luOiBAc21hbGxXaWRlc2NyZWVuTW9uaXRvck1hcmdpbjtcbiAgfVxufVxuXG4vKiBMYXJnZSBNb2RhbCBXaWR0aCAqL1xuLnVpLmxhcmdlLm1vZGFsID4gLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogQGxhcmdlSGVhZGVyU2l6ZTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IEBsYXJnZXN0TW9iaWxlU2NyZWVuKSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IEBsYXJnZU1vYmlsZVdpZHRoO1xuICAgIG1hcmdpbjogQGxhcmdlTW9iaWxlTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAdGFibGV0QnJlYWtwb2ludCkge1xuICAudWkubGFyZ2UubW9kYWwge1xuICAgIHdpZHRoOiBAbGFyZ2VUYWJsZXRXaWR0aDtcbiAgICBtYXJnaW46IEBsYXJnZVRhYmxldE1hcmdpbjtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogQGNvbXB1dGVyQnJlYWtwb2ludCkge1xuICAudWkubGFyZ2UubW9kYWwge1xuICAgIHdpZHRoOiBAbGFyZ2VDb21wdXRlcldpZHRoO1xuICAgIG1hcmdpbjogQGxhcmdlQ29tcHV0ZXJNYXJnaW47XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IEBsYXJnZU1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IEBsYXJnZUxhcmdlTW9uaXRvcldpZHRoO1xuICAgIG1hcmdpbjogQGxhcmdlTGFyZ2VNb25pdG9yTWFyZ2luO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiBAd2lkZXNjcmVlbk1vbml0b3JCcmVha3BvaW50KSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IEBsYXJnZVdpZGVzY3JlZW5Nb25pdG9yV2lkdGg7XG4gICAgbWFyZ2luOiBAbGFyZ2VXaWRlc2NyZWVuTW9uaXRvck1hcmdpbjtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBJbnZlcnRlZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmludmVydGVkLm1vZGFsIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQmFja2dyb3VuZDtcbn1cblxuLnVpLmludmVydGVkLm1vZGFsID4gLmhlYWRlcixcbi51aS5pbnZlcnRlZC5tb2RhbCA+IC5jb250ZW50IHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQmFja2dyb3VuZDtcbiAgY29sb3I6IEBpbnZlcnRlZEhlYWRlckNvbG9yO1xufVxuXG4udWkuaW52ZXJ0ZWQubW9kYWwgPiAuYWN0aW9ucyB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEFjdGlvbkJhY2tncm91bmQ7XG4gIGJvcmRlci10b3A6IEBpbnZlcnRlZEFjdGlvbkJvcmRlcjtcbiAgY29sb3I6IEBpbnZlcnRlZEFjdGlvbkNvbG9yO1xufVxuXG4udWkuaW52ZXJ0ZWQuZGltbWVyID4gLm1vZGFsID4gLmNsb3NlIHtcbiAgY29sb3I6IEBpbnZlcnRlZERpbW1lckNsb3NlQ29sb3I7XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdFRhYmxldFNjcmVlbikge1xuICAudWkuZGltbWVyIC5pbnZlcnRlZC5tb2RhbCA+IC5jbG9zZSB7XG4gICAgY29sb3I6IEBpbnZlcnRlZENsb3NlQ29sb3I7XG4gIH1cbn1cblxuLnVpLmludmVydGVkLmZ1bGxzY3JlZW4ubW9kYWwgPiAuY2xvc2Uge1xuICBjb2xvcjogQGludmVydGVkQ2xvc2VDb2xvcjtcbn1cblxuXG5cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gTmFnXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAnbmFnJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE5hZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLm5hZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IEBvcGFjaXR5O1xuICBwb3NpdGlvbjogQHBvc2l0aW9uO1xuXG4gIHRvcDogQHRvcDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogQHpJbmRleDtcblxuICBtaW4taGVpZ2h0OiBAbWluSGVpZ2h0O1xuICB3aWR0aDogQHdpZHRoO1xuXG4gIG1hcmdpbjogQG1hcmdpbjtcbiAgcGFkZGluZzogQHBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZDogQGJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEBib3hTaGFkb3c7XG5cbiAgZm9udC1zaXplOiBAZm9udFNpemU7XG4gIHRleHQtYWxpZ246IEB0ZXh0QWxpZ247XG4gIGNvbG9yOiBAY29sb3I7XG5cbiAgYm9yZGVyLXJhZGl1czogQHRvcEJvcmRlclJhZGl1cztcbiAgdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG59XG5cbmEudWkubmFnIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udWkubmFnID4gLnRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IEB0aXRsZU1hcmdpbjtcbiAgY29sb3I6IEB0aXRsZUNvbG9yO1xufVxuXG5cbi51aS5uYWcgPiAuY2xvc2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogQGNsb3NlT3BhY2l0eTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogQGNsb3NlVG9wO1xuICByaWdodDogQGNsb3NlUmlnaHQ7XG5cbiAgZm9udC1zaXplOiBAY2xvc2VTaXplO1xuXG4gIG1hcmdpbjogQGNsb3NlTWFyZ2luO1xuICBjb2xvcjogQGNsb3NlQ29sb3I7XG4gIHRyYW5zaXRpb246IEBjbG9zZVRyYW5zaXRpb247XG59XG5cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogSG92ZXIgKi9cbi51aS5uYWc6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBAbmFnSG92ZXJCYWNrZ3JvdW5kO1xuICBvcGFjaXR5OiBAbmFnSG92ZXJPcGFjaXR5O1xufVxuXG4udWkubmFnIC5jbG9zZTpob3ZlciB7XG4gIG9wYWNpdHk6IEBjbG9zZUhvdmVyT3BhY2l0eTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RhdGljXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkub3ZlcmxheS5uYWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZpeGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZml4ZWQubmFnIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJvdHRvbVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJvdHRvbS5uYWdzLFxuLnVpLmJvdHRvbS5uYWcge1xuICBib3JkZXItcmFkaXVzOiBAYm90dG9tQm9yZGVyUmFkaXVzO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogQGJvdHRvbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBXaGl0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLm5hZ3MgLm5hZyxcbi51aS5pbnZlcnRlZC5uYWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGRhcmtUZXh0Q29sb3I7XG59XG4udWkuaW52ZXJ0ZWQubmFncyAubmFnIC5jbG9zZSxcbi51aS5pbnZlcnRlZC5uYWdzIC5uYWcgLnRpdGxlLFxuLnVpLmludmVydGVkLm5hZyAuY2xvc2UsXG4udWkuaW52ZXJ0ZWQubmFnIC50aXRsZSB7XG4gIGNvbG9yOiBAbGlnaHRUZXh0Q29sb3I7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgR3JvdXBzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubmFncyAubmFnIHtcbiAgYm9yZGVyLXJhZGl1czogQGdyb3VwZWRCb3JkZXJSYWRpdXMgIWltcG9ydGFudDtcbn1cbi51aS5uYWdzIC5uYWc6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IEB0b3BCb3JkZXJSYWRpdXM7XG59XG4udWkuYm90dG9tLm5hZ3MgLm5hZzpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogQGJvdHRvbUJvcmRlclJhZGl1cztcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gUG9wdXBcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ21vZHVsZSc7XG5AZWxlbWVudCA6ICdwb3B1cCc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUG9wdXBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5wb3B1cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcblxuICAvKiBGaXhlcyBjb250ZW50IGJlaW5nIHNxdWlzaGVkIHdoZW4gaW5saW5lIChtb3ogb25seSkgKi9cbiAgbWluLXdpZHRoOiBtaW4tY29udGVudDtcbiAgei1pbmRleDogQHpJbmRleDtcblxuICBib3JkZXI6IEBib3JkZXI7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZUhlaWdodDtcbiAgbWF4LXdpZHRoOiBAbWF4V2lkdGg7XG4gIGJhY2tncm91bmQ6IEBiYWNrZ3JvdW5kO1xuXG4gIHBhZGRpbmc6IEB2ZXJ0aWNhbFBhZGRpbmcgQGhvcml6b250YWxQYWRkaW5nO1xuICBmb250LXdlaWdodDogQGZvbnRXZWlnaHQ7XG4gIGZvbnQtc3R5bGU6IEBmb250U3R5bGU7XG4gIGNvbG9yOiBAY29sb3I7XG5cbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlclJhZGl1cztcbiAgYm94LXNoYWRvdzogQGJveFNoYWRvdztcbn1cbi51aS5wb3B1cCA+IC5oZWFkZXIge1xuICBwYWRkaW5nOiAwO1xuXG4gIGZvbnQtZmFtaWx5OiBAaGVhZGVyRm9udDtcbiAgZm9udC1zaXplOiBAaGVhZGVyRm9udFNpemU7XG4gIGxpbmUtaGVpZ2h0OiBAaGVhZGVyTGluZUhlaWdodDtcbiAgZm9udC13ZWlnaHQ6IEBoZWFkZXJGb250V2VpZ2h0O1xufVxuLnVpLnBvcHVwID4gLmhlYWRlciArIC5jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IEBoZWFkZXJEaXN0YW5jZTtcbn1cblxuLnVpLnBvcHVwOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiBAYXJyb3dTaXplO1xuICBoZWlnaHQ6IEBhcnJvd1NpemU7XG5cbiAgYmFja2dyb3VuZDogQGFycm93QmFja2dyb3VuZDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXG4gIHotaW5kZXg6IEBhcnJvd1pJbmRleDtcbiAgYm94LXNoYWRvdzogQGFycm93Qm94U2hhZG93O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBUb29sdGlwXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBDb250ZW50ICovXG5bZGF0YS10b29sdGlwXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogQXJyb3cgKi9cbltkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBmb250LXNpemU6IEBtZWRpdW07XG4gIHdpZHRoOiBAYXJyb3dTaXplO1xuICBoZWlnaHQ6IEBhcnJvd1NpemU7XG5cbiAgYmFja2dyb3VuZDogQHRvb2x0aXBBcnJvd0JhY2tncm91bmQ7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblxuICB6LWluZGV4OiBAYXJyb3daSW5kZXg7XG4gIGJveC1zaGFkb3c6IEB0b29sdGlwQXJyb3dCb3hTaGFkb3c7XG59XG5cbi8qIFBvcHVwICovXG5bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBhdHRyKGRhdGEtdG9vbHRpcCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgZm9udC1zaXplOiBAdG9vbHRpcEZvbnRTaXplO1xuXG4gIGJvcmRlcjogQHRvb2x0aXBCb3JkZXI7XG4gIGxpbmUtaGVpZ2h0OiBAdG9vbHRpcExpbmVIZWlnaHQ7XG4gIG1heC13aWR0aDogQHRvb2x0aXBNYXhXaWR0aDtcbiAgYmFja2dyb3VuZDogQHRvb2x0aXBCYWNrZ3JvdW5kO1xuXG4gIHBhZGRpbmc6IEB0b29sdGlwUGFkZGluZztcbiAgZm9udC13ZWlnaHQ6IEB0b29sdGlwRm9udFdlaWdodDtcbiAgZm9udC1zdHlsZTogQHRvb2x0aXBGb250U3R5bGU7XG4gIGNvbG9yOiBAdG9vbHRpcENvbG9yO1xuXG4gIGJvcmRlci1yYWRpdXM6IEB0b29sdGlwQm9yZGVyUmFkaXVzO1xuICBib3gtc2hhZG93OiBAdG9vbHRpcEJveFNoYWRvdztcbiAgei1pbmRleDogQHRvb2x0aXBaSW5kZXg7XG59XG5cbi8qIERlZmF1bHQgUG9zaXRpb24gKFRvcCBDZW50ZXIpICovXG5bZGF0YS10b29sdGlwXTpub3QoW2RhdGEtcG9zaXRpb25dKTpiZWZvcmUge1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZDogQHRvb2x0aXBBcnJvd0JvdHRvbUJhY2tncm91bmQ7XG4gIG1hcmdpbi1sZWZ0OiBAdG9vbHRpcEFycm93SG9yaXpvbnRhbE9mZnNldDtcbiAgbWFyZ2luLWJvdHRvbTogLUB0b29sdGlwQXJyb3dWZXJ0aWNhbE9mZnNldDtcbn1cbltkYXRhLXRvb2x0aXBdOm5vdChbZGF0YS1wb3NpdGlvbl0pOmFmdGVyIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogQHRvb2x0aXBEaXN0YW5jZUF3YXk7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuW2RhdGEtdG9vbHRpcF06YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHNjYWxlKDApICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciB0b3A7XG4gIHRyYW5zaXRpb246XG4gICAgYWxsIEB0b29sdGlwRHVyYXRpb24gQHRvb2x0aXBFYXNpbmdcbiAgO1xufVxuW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB0cmFuc2l0aW9uOlxuICAgIGFsbCBAdG9vbHRpcER1cmF0aW9uIEB0b29sdGlwRWFzaW5nXG4gIDtcbn1cbltkYXRhLXRvb2x0aXBdOmhvdmVyOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdOmhvdmVyOmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5bZGF0YS10b29sdGlwXTpob3ZlcjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgc2NhbGUoMSkgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogQW5pbWF0aW9uIFBvc2l0aW9uICovXG5bZGF0YS10b29sdGlwXTphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJ0b3AgY2VudGVyXCJdOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBjZW50ZXJcIl06YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCkgIWltcG9ydGFudDtcbn1cbltkYXRhLXRvb2x0aXBdOmhvdmVyOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBjZW50ZXJcIl06aG92ZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMSkgIWltcG9ydGFudDtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXTphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJyaWdodCBjZW50ZXJcIl06YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMCkgIWltcG9ydGFudDtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJyaWdodCBjZW50ZXJcIl06aG92ZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSkgIWltcG9ydGFudDtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJ0b3AgbGVmdFwiXTphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJ0b3AgcmlnaHRcIl06YWZ0ZXIsXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwiYm90dG9tIGxlZnRcIl06YWZ0ZXIsXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwiYm90dG9tIHJpZ2h0XCJdOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKSAhaW1wb3J0YW50O1xufVxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cInRvcCBsZWZ0XCJdOmhvdmVyOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cInRvcCByaWdodFwiXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJib3R0b20gbGVmdFwiXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJib3R0b20gcmlnaHRcIl06aG92ZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBBcnJvdyAqL1xuW2RhdGEtdG9vbHRpcF1bZGF0YS1pbnZlcnRlZF06YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBBcnJvdyBQb3NpdGlvbiAqL1xuW2RhdGEtdG9vbHRpcF1bZGF0YS1pbnZlcnRlZF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQXJyb3dCb3R0b21CYWNrZ3JvdW5kO1xufVxuXG4vKiBQb3B1cCAgKi9cbltkYXRhLXRvb2x0aXBdW2RhdGEtaW52ZXJ0ZWRdOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogQHRvb2x0aXBJbnZlcnRlZEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAdG9vbHRpcEludmVydGVkQ29sb3I7XG4gIGJvcmRlcjogQHRvb2x0aXBJbnZlcnRlZEJvcmRlcjtcbiAgYm94LXNoYWRvdzogQHRvb2x0aXBJbnZlcnRlZEJveFNoYWRvdztcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtaW52ZXJ0ZWRdOmFmdGVyIC5oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBAdG9vbHRpcEludmVydGVkSGVhZGVyQmFja2dyb3VuZDtcbiAgY29sb3I6IEB0b29sdGlwSW52ZXJ0ZWRIZWFkZXJDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFBvc2l0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBUb3AgQ2VudGVyICovXG5bZGF0YS1wb3NpdGlvbj1cInRvcCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDUwJTtcbiAgYm90dG9tOiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIG1hcmdpbi1ib3R0b206IEB0b29sdGlwRGlzdGFuY2VBd2F5O1xufVxuW2RhdGEtcG9zaXRpb249XCJ0b3AgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIGJhY2tncm91bmQ6IEB0b29sdGlwQXJyb3dUb3BCYWNrZ3JvdW5kO1xuICBtYXJnaW4tbGVmdDogQHRvb2x0aXBBcnJvd0hvcml6b250YWxPZmZzZXQ7XG4gIG1hcmdpbi1ib3R0b206IC1AdG9vbHRpcEFycm93VmVydGljYWxPZmZzZXQ7XG59XG5cbi8qIFRvcCBMZWZ0ICovXG5bZGF0YS1wb3NpdGlvbj1cInRvcCBsZWZ0XCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IEB0b29sdGlwRGlzdGFuY2VBd2F5O1xufVxuW2RhdGEtcG9zaXRpb249XCJ0b3AgbGVmdFwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogQGFycm93RGlzdGFuY2VGcm9tRWRnZTtcbiAgbWFyZ2luLWxlZnQ6IEB0b29sdGlwQXJyb3dIb3Jpem9udGFsT2Zmc2V0O1xuICBtYXJnaW4tYm90dG9tOiAtQHRvb2x0aXBBcnJvd1ZlcnRpY2FsT2Zmc2V0O1xufVxuXG4vKiBUb3AgUmlnaHQgKi9cbltkYXRhLXBvc2l0aW9uPVwidG9wIHJpZ2h0XCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IEB0b29sdGlwRGlzdGFuY2VBd2F5O1xufVxuW2RhdGEtcG9zaXRpb249XCJ0b3AgcmlnaHRcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgcmlnaHQ6IEBhcnJvd0Rpc3RhbmNlRnJvbUVkZ2U7XG4gIG1hcmdpbi1sZWZ0OiBAdG9vbHRpcEFycm93SG9yaXpvbnRhbE9mZnNldDtcbiAgbWFyZ2luLWJvdHRvbTogLUB0b29sdGlwQXJyb3dWZXJ0aWNhbE9mZnNldDtcbn1cblxuXG4vKiBCb3R0b20gQ2VudGVyICovXG5bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIG1hcmdpbi10b3A6IEB0b29sdGlwRGlzdGFuY2VBd2F5O1xufVxuW2RhdGEtcG9zaXRpb249XCJib3R0b20gY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiBAdG9vbHRpcEFycm93SG9yaXpvbnRhbE9mZnNldDtcbiAgbWFyZ2luLXRvcDogLUB0b29sdGlwQXJyb3dWZXJ0aWNhbE9mZnNldDtcbn1cblxuLyogQm90dG9tIExlZnQgKi9cbltkYXRhLXBvc2l0aW9uPVwiYm90dG9tIGxlZnRcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogQHRvb2x0aXBEaXN0YW5jZUF3YXk7XG59XG5bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBsZWZ0XCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiBAYXJyb3dEaXN0YW5jZUZyb21FZGdlO1xuICBtYXJnaW4tbGVmdDogQHRvb2x0aXBBcnJvd0hvcml6b250YWxPZmZzZXQ7XG4gIG1hcmdpbi10b3A6IC1AdG9vbHRpcEFycm93VmVydGljYWxPZmZzZXQ7XG59XG5cbi8qIEJvdHRvbSBSaWdodCAqL1xuW2RhdGEtcG9zaXRpb249XCJib3R0b20gcmlnaHRcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDEwMCU7XG4gIG1hcmdpbi10b3A6IEB0b29sdGlwRGlzdGFuY2VBd2F5O1xufVxuW2RhdGEtcG9zaXRpb249XCJib3R0b20gcmlnaHRcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IEBhcnJvd0Rpc3RhbmNlRnJvbUVkZ2U7XG4gIG1hcmdpbi1sZWZ0OiBAdG9vbHRpcEFycm93VmVydGljYWxPZmZzZXQ7XG4gIG1hcmdpbi10b3A6IC1AdG9vbHRpcEFycm93SG9yaXpvbnRhbE9mZnNldDtcbn1cblxuLyogTGVmdCBDZW50ZXIgKi9cbltkYXRhLXBvc2l0aW9uPVwibGVmdCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHJpZ2h0OiAxMDAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXJpZ2h0OiBAdG9vbHRpcERpc3RhbmNlQXdheTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIHJpZ2h0OiAxMDAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogQHRvb2x0aXBBcnJvd1ZlcnRpY2FsT2Zmc2V0O1xuICBtYXJnaW4tcmlnaHQ6IEB0b29sdGlwQXJyb3dIb3Jpem9udGFsT2Zmc2V0O1xufVxuXG4vKiBSaWdodCBDZW50ZXIgKi9cbltkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IEB0b29sdGlwRGlzdGFuY2VBd2F5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5bZGF0YS1wb3NpdGlvbj1cInJpZ2h0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiBAdG9vbHRpcEFycm93SG9yaXpvbnRhbE9mZnNldDtcbiAgbWFyZ2luLWxlZnQ6IC1AdG9vbHRpcEFycm93VmVydGljYWxPZmZzZXQ7XG59XG5cbi8qIEFycm93ICovXG5bZGF0YS1wb3NpdGlvbn49XCJib3R0b21cIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBAYXJyb3dUb3BCYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiBAYm90dG9tQXJyb3dCb3hTaGFkb3c7XG59XG5bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGFycm93Q2VudGVyQmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogQGxlZnRBcnJvd0JveFNoYWRvdztcbn1cbltkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGFycm93Q2VudGVyQmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogQHJpZ2h0QXJyb3dCb3hTaGFkb3c7XG59XG5bZGF0YS1wb3NpdGlvbn49XCJ0b3BcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBAYXJyb3dCb3R0b21CYWNrZ3JvdW5kO1xufVxuXG4vKiBJbnZlcnRlZCBBcnJvdyBDb2xvciAqL1xuW2RhdGEtaW52ZXJ0ZWRdW2RhdGEtcG9zaXRpb25+PVwiYm90dG9tXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQXJyb3dUb3BCYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiBAYm90dG9tQXJyb3dCb3hTaGFkb3c7XG59XG5bZGF0YS1pbnZlcnRlZF1bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQXJyb3dDZW50ZXJCYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiBAbGVmdEFycm93Qm94U2hhZG93O1xufVxuW2RhdGEtaW52ZXJ0ZWRdW2RhdGEtcG9zaXRpb249XCJyaWdodCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRBcnJvd0NlbnRlckJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEByaWdodEFycm93Qm94U2hhZG93O1xufVxuW2RhdGEtaW52ZXJ0ZWRdW2RhdGEtcG9zaXRpb25+PVwidG9wXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQXJyb3dCb3R0b21CYWNrZ3JvdW5kO1xufVxuXG5bZGF0YS1wb3NpdGlvbn49XCJib3R0b21cIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xufVxuW2RhdGEtcG9zaXRpb25+PVwiYm90dG9tXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xufVxuW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG59XG5bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG59XG5bZGF0YS1wb3NpdGlvbj1cInJpZ2h0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbn1cbltkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNpemVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cIm1pbmlcIl06YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwibWluaVwiXTphZnRlciB7XG4gIGZvbnQtc2l6ZTogQG1pbmk7XG59XG5bZGF0YS10b29sdGlwXVtkYXRhLXZhcmlhdGlvbn49XCJ0aW55XCJdOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cInRpbnlcIl06YWZ0ZXIge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwic21hbGxcIl06YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwic21hbGxcIl06YWZ0ZXIge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbltkYXRhLXRvb2x0aXBdW2RhdGEtdmFyaWF0aW9ufj1cIm1lZGl1bVwiXTpiZWZvcmUsXG5bZGF0YS10b29sdGlwXVtkYXRhLXZhcmlhdGlvbn49XCJtZWRpdW1cIl06YWZ0ZXIge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG5bZGF0YS10b29sdGlwXVtkYXRhLXZhcmlhdGlvbn49XCJsYXJnZVwiXTpiZWZvcmUsXG5bZGF0YS10b29sdGlwXVtkYXRhLXZhcmlhdGlvbn49XCJsYXJnZVwiXTphZnRlciB7XG4gIGZvbnQtc2l6ZTogQGxhcmdlO1xufVxuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwiaHVnZVwiXTpiZWZvcmUsXG5bZGF0YS10b29sdGlwXVtkYXRhLXZhcmlhdGlvbn49XCJodWdlXCJdOmFmdGVyIHtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0qL1xuW2RhdGEtdG9vbHRpcF1bZGF0YS12YXJpYXRpb25+PVwiYmFzaWNcIl06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTcGFjaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucG9wdXAge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEV4dGVuZGluZyBmcm9tIFRvcCAqL1xuLnVpLnRvcC5wb3B1cCB7XG4gIG1hcmdpbjogMCAwIEBwb3B1cERpc3RhbmNlQXdheTtcbn1cbi51aS50b3AubGVmdC5wb3B1cCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xufVxuLnVpLnRvcC5jZW50ZXIucG9wdXAge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xufVxuLnVpLnRvcC5yaWdodC5wb3B1cCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbn1cblxuLyogRXh0ZW5kaW5nIGZyb20gVmVydGljYWwgQ2VudGVyICovXG4udWkubGVmdC5jZW50ZXIucG9wdXAge1xuICBtYXJnaW46IDAgQHBvcHVwRGlzdGFuY2VBd2F5IDAgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgNTAlO1xufVxuLnVpLnJpZ2h0LmNlbnRlci5wb3B1cCB7XG4gIG1hcmdpbjogMCAwIDAgQHBvcHVwRGlzdGFuY2VBd2F5O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IDUwJTtcbn1cblxuLyogRXh0ZW5kaW5nIGZyb20gQm90dG9tICovXG4udWkuYm90dG9tLnBvcHVwIHtcbiAgbWFyZ2luOiBAcG9wdXBEaXN0YW5jZUF3YXkgMCAwO1xufVxuLnVpLmJvdHRvbS5sZWZ0LnBvcHVwIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG4udWkuYm90dG9tLmNlbnRlci5wb3B1cCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciB0b3A7XG59XG4udWkuYm90dG9tLnJpZ2h0LnBvcHVwIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBvaW50ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qLS0tIEJlbG93IC0tLSovXG4udWkuYm90dG9tLmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogQGFycm93T2Zmc2V0O1xuICB0b3A6IEBhcnJvd09mZnNldDtcbiAgbGVmdDogNTAlO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBib3gtc2hhZG93OiBAYm90dG9tQXJyb3dCb3hTaGFkb3c7XG59XG5cbi51aS5ib3R0b20ubGVmdC5wb3B1cCB7XG4gIG1hcmdpbi1sZWZ0OiBAYm94QXJyb3dPZmZzZXQ7XG59XG4vKnJ0bDpyZW5hbWUqL1xuLnVpLmJvdHRvbS5sZWZ0LnBvcHVwOmJlZm9yZSB7XG4gIHRvcDogQGFycm93T2Zmc2V0O1xuICBsZWZ0OiBAYXJyb3dEaXN0YW5jZUZyb21FZGdlO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm94LXNoYWRvdzogQGJvdHRvbUFycm93Qm94U2hhZG93O1xufVxuXG4udWkuYm90dG9tLnJpZ2h0LnBvcHVwIHtcbiAgbWFyZ2luLXJpZ2h0OiBAYm94QXJyb3dPZmZzZXQ7XG59XG4vKnJ0bDpyZW5hbWUqL1xuLnVpLmJvdHRvbS5yaWdodC5wb3B1cDpiZWZvcmUge1xuICB0b3A6IEBhcnJvd09mZnNldDtcbiAgcmlnaHQ6IEBhcnJvd0Rpc3RhbmNlRnJvbUVkZ2U7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJveC1zaGFkb3c6IEBib3R0b21BcnJvd0JveFNoYWRvdztcbn1cblxuLyotLS0gQWJvdmUgLS0tKi9cbi51aS50b3AuY2VudGVyLnBvcHVwOmJlZm9yZSB7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogQGFycm93T2Zmc2V0O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiBAYXJyb3dPZmZzZXQ7XG59XG4udWkudG9wLmxlZnQucG9wdXAge1xuICBtYXJnaW4tbGVmdDogQGJveEFycm93T2Zmc2V0O1xufVxuLypydGw6cmVuYW1lKi9cbi51aS50b3AubGVmdC5wb3B1cDpiZWZvcmUge1xuICBib3R0b206IEBhcnJvd09mZnNldDtcbiAgbGVmdDogQGFycm93RGlzdGFuY2VGcm9tRWRnZTtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4udWkudG9wLnJpZ2h0LnBvcHVwIHtcbiAgbWFyZ2luLXJpZ2h0OiBAYm94QXJyb3dPZmZzZXQ7XG59XG4vKnJ0bDpyZW5hbWUqL1xuLnVpLnRvcC5yaWdodC5wb3B1cDpiZWZvcmUge1xuICBib3R0b206IEBhcnJvd09mZnNldDtcbiAgcmlnaHQ6IEBhcnJvd0Rpc3RhbmNlRnJvbUVkZ2U7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8qLS0tIExlZnQgQ2VudGVyIC0tLSovXG4vKnJ0bDpyZW5hbWUqL1xuLnVpLmxlZnQuY2VudGVyLnBvcHVwOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICByaWdodDogQGFycm93T2Zmc2V0O1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IEBhcnJvd09mZnNldDtcbiAgYm94LXNoYWRvdzogQGxlZnRBcnJvd0JveFNoYWRvdztcbn1cblxuLyotLS0gUmlnaHQgQ2VudGVyICAtLS0qL1xuLypydGw6cmVuYW1lKi9cbi51aS5yaWdodC5jZW50ZXIucG9wdXA6YmVmb3JlIHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IEBhcnJvd09mZnNldDtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogQGFycm93T2Zmc2V0O1xuICBib3gtc2hhZG93OiBAcmlnaHRBcnJvd0JveFNoYWRvdztcbn1cblxuLyogQXJyb3cgQ29sb3IgQnkgTG9jYXRpb24gKi9cbi51aS5ib3R0b20ucG9wdXA6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGFycm93VG9wQmFja2dyb3VuZDtcbn1cbi51aS5yaWdodC5jZW50ZXIucG9wdXA6YmVmb3JlLFxuLnVpLmxlZnQuY2VudGVyLnBvcHVwOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBhcnJvd0NlbnRlckJhY2tncm91bmQ7XG59XG4udWkudG9wLnBvcHVwOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBhcnJvd0JvdHRvbUJhY2tncm91bmQ7XG59XG5cbi8qIEludmVydGVkIEFycm93IENvbG9yICovXG4udWkuaW52ZXJ0ZWQuYm90dG9tLnBvcHVwOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEFycm93VG9wQmFja2dyb3VuZDtcbn1cbi51aS5pbnZlcnRlZC5yaWdodC5jZW50ZXIucG9wdXA6YmVmb3JlLFxuLnVpLmludmVydGVkLmxlZnQuY2VudGVyLnBvcHVwOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEFycm93Q2VudGVyQmFja2dyb3VuZDtcbn1cbi51aS5pbnZlcnRlZC50b3AucG9wdXA6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQXJyb3dCb3R0b21CYWNrZ3JvdW5kO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogSW1tZWRpYXRlIE5lc3RlZCBHcmlkICovXG4udWkucG9wdXAgPiAudWkuZ3JpZDpub3QoLnBhZGRlZCkge1xuICB3aWR0aDogQG5lc3RlZEdyaWRXaWR0aDtcbiAgbWFyZ2luOiBAbmVzdGVkR3JpZE1hcmdpbjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmxvYWRpbmcucG9wdXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiBAbG9hZGluZ1pJbmRleDtcbn1cblxuLnVpLmFuaW1hdGluZy5wb3B1cCxcbi51aS52aXNpYmxlLnBvcHVwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi51aS52aXNpYmxlLnBvcHVwIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQmFzaWNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5iYXNpYy5wb3B1cDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgV2lkZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLndpZGUucG9wdXAge1xuICBtYXgtd2lkdGg6IEB3aWRlV2lkdGg7XG59XG4udWlbY2xhc3MqPVwidmVyeSB3aWRlXCJdLnBvcHVwIHtcbiAgbWF4LXdpZHRoOiBAdmVyeVdpZGVXaWR0aDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkud2lkZS5wb3B1cCxcbiAgLnVpW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5wb3B1cCB7XG4gICAgbWF4LXdpZHRoOiBAbWF4V2lkdGg7XG4gIH1cbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmx1aWQucG9wdXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBJbnZlcnRlZCBjb2xvcnMgICovXG4udWkuaW52ZXJ0ZWQucG9wdXAge1xuICBiYWNrZ3JvdW5kOiBAaW52ZXJ0ZWRCYWNrZ3JvdW5kO1xuICBjb2xvcjogQGludmVydGVkQ29sb3I7XG4gIGJvcmRlcjogQGludmVydGVkQm9yZGVyO1xuICBib3gtc2hhZG93OiBAaW52ZXJ0ZWRCb3hTaGFkb3c7XG59XG4udWkuaW52ZXJ0ZWQucG9wdXAgLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnZlcnRlZEhlYWRlckJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRIZWFkZXJDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5wb3B1cDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRBcnJvd0NvbG9yO1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRmxvd2luZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsb3dpbmcucG9wdXAge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkucG9wdXAge1xuICBmb250LXNpemU6IEBtaW5pO1xufVxuLnVpLnRpbnkucG9wdXAge1xuICBmb250LXNpemU6IEB0aW55O1xufVxuLnVpLnNtYWxsLnBvcHVwIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkucG9wdXAge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG4udWkubGFyZ2UucG9wdXAge1xuICBmb250LXNpemU6IEBsYXJnZTtcbn1cbi51aS5odWdlLnBvcHVwIHtcbiAgZm9udC1zaXplOiBAaHVnZTtcbn1cblxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBQcm9ncmVzcyBCYXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ21vZHVsZSc7XG5AZWxlbWVudCA6ICdwcm9ncmVzcyc7XG5cbkBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFByb2dyZXNzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkucHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogQGJvcmRlcjtcbiAgbWFyZ2luOiBAbWFyZ2luO1xuICBib3gtc2hhZG93OiBAYm94U2hhZG93O1xuICBiYWNrZ3JvdW5kOiBAYmFja2dyb3VuZDtcbiAgcGFkZGluZzogQHBhZGRpbmc7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXJSYWRpdXM7XG59XG5cbi51aS5wcm9ncmVzczpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogQGZpcnN0TWFyZ2luO1xufVxuLnVpLnByb2dyZXNzOmxhc3QtY2hpbGQge1xuICBtYXJnaW46IEBsYXN0TWFyZ2luO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogQWN0aXZpdHkgQmFyICovXG4udWkucHJvZ3Jlc3MgLmJhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IEBiYXJQb3NpdGlvbjtcbiAgd2lkdGg6IEBiYXJJbml0aWFsV2lkdGg7XG4gIG1pbi13aWR0aDogQGJhck1pbldpZHRoO1xuICBiYWNrZ3JvdW5kOiBAYmFyQmFja2dyb3VuZDtcbiAgYm9yZGVyLXJhZGl1czogQGJhckJvcmRlclJhZGl1cztcbiAgdHJhbnNpdGlvbjogQGJhclRyYW5zaXRpb247XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udWkudWkudWkucHJvZ3Jlc3M6bm90KFtkYXRhLXBlcmNlbnRdKTpub3QoLmluZGV0ZXJtaW5hdGUpIC5iYXIsXG4udWkudWkudWkucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMFwiXTpub3QoLmluZGV0ZXJtaW5hdGUpIC5iYXIge1xuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xufVxuLnVpLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjBcIl0gLmJhciAucHJvZ3Jlc3Mge1xuICBjb2xvcjogQHRleHRDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCIwXCJdIC5iYXIgLnByb2dyZXNzIHtcbiAgY29sb3I6IEBpbnZlcnRlZFRleHRDb2xvcjtcbn1cblxuLyogUGVyY2VudCBDb21wbGV0ZSAqL1xuLnVpLnByb2dyZXNzIC5iYXIgPiAucHJvZ3Jlc3Mge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwb3NpdGlvbjogQHByb2dyZXNzUG9zaXRpb247XG4gIHdpZHRoOiBAcHJvZ3Jlc3NXaWR0aDtcbiAgZm9udC1zaXplOiBAcHJvZ3Jlc3NTaXplO1xuICB0b3A6IEBwcm9ncmVzc1RvcDtcbiAgcmlnaHQ6IEBwcm9ncmVzc1JpZ2h0O1xuICBsZWZ0OiBAcHJvZ3Jlc3NMZWZ0O1xuICBib3R0b206IEBwcm9ncmVzc0JvdHRvbTtcbiAgY29sb3I6IEBwcm9ncmVzc0NvbG9yO1xuICB0ZXh0LXNoYWRvdzogQHByb2dyZXNzVGV4dFNoYWRvdztcbiAgbWFyZ2luLXRvcDogQHByb2dyZXNzT2Zmc2V0O1xuICBmb250LXdlaWdodDogQHByb2dyZXNzRm9udFdlaWdodDtcbiAgdGV4dC1hbGlnbjogQHByb2dyZXNzVGV4dEFsaWduO1xufVxuXG4vKiBMYWJlbCAqL1xuLnVpLnByb2dyZXNzID4gLmxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogQGxhYmVsV2lkdGg7XG4gIGZvbnQtc2l6ZTogQGxhYmVsU2l6ZTtcbiAgdG9wOiBAbGFiZWxUb3A7XG4gIHJpZ2h0OiBAbGFiZWxSaWdodDtcbiAgbGVmdDogQGxhYmVsTGVmdDtcbiAgYm90dG9tOiBAbGFiZWxCb3R0b207XG4gIGNvbG9yOiBAbGFiZWxDb2xvcjtcbiAgZm9udC13ZWlnaHQ6IEBsYWJlbEZvbnRXZWlnaHQ7XG4gIHRleHQtc2hhZG93OiBAbGFiZWxUZXh0U2hhZG93O1xuICBtYXJnaW4tdG9wOiBAbGFiZWxPZmZzZXQ7XG4gIHRleHQtYWxpZ246IEBsYWJlbFRleHRBbGlnbjtcbiAgdHJhbnNpdGlvbjogQGxhYmVsVHJhbnNpdGlvbjtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyogSW5kaWNhdGluZyAqL1xuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjFcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIyXCJdIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW5kaWNhdGluZ0ZpcnN0Q29sb3I7XG59XG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiM1wiXSAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGluZGljYXRpbmdTZWNvbmRDb2xvcjtcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI0XCJdIC5iYXIsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNVwiXSAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGluZGljYXRpbmdUaGlyZENvbG9yO1xufVxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjZcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbmRpY2F0aW5nRm91cnRoQ29sb3I7XG59XG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiN1wiXSAuYmFyLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjhcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbmRpY2F0aW5nRmlmdGhDb2xvcjtcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI5XCJdIC5iYXIsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiMTAwXCJdIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW5kaWNhdGluZ1NpeHRoQ29sb3I7XG59XG5cbi8qIEluZGljYXRpbmcgTGFiZWwgKi9cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIxXCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIyXCJdIC5sYWJlbCB7XG4gIGNvbG9yOiBAaW5kaWNhdGluZ0ZpcnN0TGFiZWxDb2xvcjtcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIzXCJdIC5sYWJlbCB7XG4gIGNvbG9yOiBAaW5kaWNhdGluZ1NlY29uZExhYmVsQ29sb3I7XG59XG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNFwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNVwiXSAubGFiZWwge1xuICBjb2xvcjogQGluZGljYXRpbmdUaGlyZExhYmVsQ29sb3I7XG59XG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNlwiXSAubGFiZWwge1xuICBjb2xvcjogQGluZGljYXRpbmdGb3VydGhMYWJlbENvbG9yO1xufVxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjdcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjhcIl0gLmxhYmVsIHtcbiAgY29sb3I6IEBpbmRpY2F0aW5nRmlmdGhMYWJlbENvbG9yO1xufVxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjlcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjEwMFwiXSAubGFiZWwge1xuICBjb2xvcjogQGluZGljYXRpbmdTaXh0aExhYmVsQ29sb3I7XG59XG5cbi8qIEludmVydGVkIEluZGljYXRpbmcgTGFiZWwgKi9cbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIxXCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIyXCJdIC5sYWJlbCB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRJbmRpY2F0aW5nRmlyc3RMYWJlbENvbG9yO1xufVxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjNcIl0gLmxhYmVsIHtcbiAgY29sb3I6IEBpbnZlcnRlZEluZGljYXRpbmdTZWNvbmRMYWJlbENvbG9yO1xufVxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjRcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjVcIl0gLmxhYmVsIHtcbiAgY29sb3I6IEBpbnZlcnRlZEluZGljYXRpbmdUaGlyZExhYmVsQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNlwiXSAubGFiZWwge1xuICBjb2xvcjogQGludmVydGVkSW5kaWNhdGluZ0ZvdXJ0aExhYmVsQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiN1wiXSAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiOFwiXSAubGFiZWwge1xuICBjb2xvcjogQGludmVydGVkSW5kaWNhdGluZ0ZpZnRoTGFiZWxDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI5XCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIxMDBcIl0gLmxhYmVsIHtcbiAgY29sb3I6IEBpbnZlcnRlZEluZGljYXRpbmdTaXh0aExhYmVsQ29sb3I7XG59XG5cbi8qIFNpbmdsZSBEaWdpdHMgKi9cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjFcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjJcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjNcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjRcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjVcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjZcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjdcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjhcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjlcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbmRpY2F0aW5nRmlyc3RDb2xvcjtcbn1cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjBcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMVwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCIyXCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjNcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNFwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI1XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjZcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiN1wiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI4XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjlcIl0gLmxhYmVsIHtcbiAgY29sb3I6IEBpbmRpY2F0aW5nRmlyc3RMYWJlbENvbG9yO1xufVxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMFwiXSAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCIxXCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjJcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiM1wiXSAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI0XCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjVcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNlwiXSAubGFiZWwsXG4udWkuaW52ZXJ0ZWQuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI3XCJdIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjhcIl0gLmxhYmVsLFxuLnVpLmludmVydGVkLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiOVwiXSAubGFiZWwge1xuICBjb2xvcjogQGludmVydGVkSW5kaWNhdGluZ0ZpcnN0TGFiZWxDb2xvcjtcbn1cblxuLyogSW5kaWNhdGluZyBTdWNjZXNzICovXG4udWkudWkuaW5kaWNhdGluZy5wcm9ncmVzcy5zdWNjZXNzIC5sYWJlbCB7XG4gIGNvbG9yOiBAc3VjY2Vzc0hlYWRlckNvbG9yO1xufVxuXG4vKiBNdWx0aXBsZSAqL1xuLnVpLm11bHRpcGxlLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTdWNjZXNzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudWkucHJvZ3Jlc3Muc3VjY2VzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHN1Y2Nlc3NDb2xvcjtcbn1cbi51aS51aS5wcm9ncmVzcy5zdWNjZXNzIC5iYXIsXG4udWkudWkucHJvZ3Jlc3Muc3VjY2VzcyAuYmFyOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbm9uZTtcbn1cbi51aS5wcm9ncmVzcy5zdWNjZXNzID4gLmxhYmVsIHtcbiAgY29sb3I6IEBzdWNjZXNzSGVhZGVyQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgV2FybmluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnVpLnByb2dyZXNzLndhcm5pbmcgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3YXJuaW5nQ29sb3I7XG59XG4udWkudWkucHJvZ3Jlc3Mud2FybmluZyAuYmFyLFxuLnVpLnVpLnByb2dyZXNzLndhcm5pbmcgLmJhcjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG5vbmU7XG59XG4udWkucHJvZ3Jlc3Mud2FybmluZyA+IC5sYWJlbCB7XG4gIGNvbG9yOiBAd2FybmluZ0hlYWRlckNvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEVycm9yXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudWkucHJvZ3Jlc3MuZXJyb3IgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBlcnJvckNvbG9yO1xufVxuLnVpLnVpLnByb2dyZXNzLmVycm9yIC5iYXIsXG4udWkudWkucHJvZ3Jlc3MuZXJyb3IgLmJhcjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG5vbmU7XG59XG4udWkucHJvZ3Jlc3MuZXJyb3IgPiAubGFiZWwge1xuICBjb2xvcjogQGVycm9ySGVhZGVyQ29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYWN0aXZlLnByb2dyZXNzIC5iYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi13aWR0aDogQGFjdGl2ZU1pbldpZHRoO1xufVxuLnVpLmFjdGl2ZS5wcm9ncmVzcyAuYmFyOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBvcGFjaXR5OiAwO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiBAYWN0aXZlUHVsc2VDb2xvcjtcblxuICBib3JkZXItcmFkaXVzOiBAYmFyQm9yZGVyUmFkaXVzO1xuXG4gIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYWN0aXZlIEBhY3RpdmVQdWxzZUR1cmF0aW9uIEBkZWZhdWx0RWFzaW5nIGluZmluaXRlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xufVxuQGtleWZyYW1lcyBwcm9ncmVzcy1hY3RpdmUge1xuICAwJSB7XG4gICAgb3BhY2l0eTogQGFjdGl2ZVB1bHNlTWF4T3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAsIDEpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXNhYmxlZC5wcm9ncmVzcyB7XG4gIG9wYWNpdHk6IDAuMzU7XG59XG4udWkudWkuZGlzYWJsZWQucHJvZ3Jlc3MgLmJhcixcbi51aS51aS5kaXNhYmxlZC5wcm9ncmVzcyAuYmFyOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbm9uZTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLnByb2dyZXNzIHtcbiAgYmFja2dyb3VuZDogQGludmVydGVkQmFja2dyb3VuZDtcbiAgYm9yZGVyOiBAaW52ZXJ0ZWRCb3JkZXI7XG59XG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEJhckJhY2tncm91bmQ7XG59XG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciA+IC5wcm9ncmVzcyB7XG4gIGNvbG9yOiBAaW52ZXJ0ZWRQcm9ncmVzc0NvbG9yO1xufVxuLnVpLmludmVydGVkLnByb2dyZXNzID4gLmxhYmVsIHtcbiAgY29sb3I6IEBpbnZlcnRlZExhYmVsQ29sb3I7XG59XG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3Muc3VjY2VzcyA+IC5sYWJlbCB7XG4gIGNvbG9yOiBAc3VjY2Vzc0NvbG9yO1xufVxuLnVpLmludmVydGVkLnByb2dyZXNzLndhcm5pbmcgPiAubGFiZWwge1xuICBjb2xvcjogQHdhcm5pbmdDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5wcm9ncmVzcy5lcnJvciA+IC5sYWJlbCB7XG4gIGNvbG9yOiBAZXJyb3JDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBib3R0b20gYXR0YWNoZWQgKi9cbi51aS5wcm9ncmVzcy5hdHRhY2hlZCB7XG4gIGJhY2tncm91bmQ6IEBhdHRhY2hlZEJhY2tncm91bmQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG59XG4udWkucHJvZ3Jlc3MuYXR0YWNoZWQsXG4udWkucHJvZ3Jlc3MuYXR0YWNoZWQgLmJhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IEBhdHRhY2hlZEhlaWdodDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIEBhdHRhY2hlZEJvcmRlclJhZGl1cyBAYXR0YWNoZWRCb3JkZXJSYWRpdXM7XG59XG4udWkucHJvZ3Jlc3MuYXR0YWNoZWQgLmJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8qIHRvcCBhdHRhY2hlZCAqL1xuLnVpLnByb2dyZXNzLnRvcC5hdHRhY2hlZCxcbi51aS5wcm9ncmVzcy50b3AuYXR0YWNoZWQgLmJhciB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXJhZGl1czogQGF0dGFjaGVkQm9yZGVyUmFkaXVzIEBhdHRhY2hlZEJvcmRlclJhZGl1cyAwIDA7XG59XG4udWkucHJvZ3Jlc3MudG9wLmF0dGFjaGVkIC5iYXIge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vKiBDb3VwbGluZyAqL1xuLnVpLnNlZ21lbnQgPiAudWkuYXR0YWNoZWQucHJvZ3Jlc3MsXG4udWkuY2FyZCA+IC51aS5hdHRhY2hlZC5wcm9ncmVzcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLnNlZ21lbnQgPiAudWkuYm90dG9tLmF0dGFjaGVkLnByb2dyZXNzLFxuLnVpLmNhcmQgPiAudWkuYm90dG9tLmF0dGFjaGVkLnByb2dyZXNzIHtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5lYWNoKEBjb2xvcnMsIHtcbiAgQGNvbG9yOiByZXBsYWNlKEBrZXksICdAJywgJycpO1xuICBAYzogQGNvbG9yc1tAQGNvbG9yXVtjb2xvcl07XG4gIEBsOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0XTtcblxuICAudWkuaW5kZXRlcm1pbmF0ZS5Ae2NvbG9yfS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUsXG4gIC51aS5Ae2NvbG9yfS5wcm9ncmVzcyAuYmFyLFxuICAudWkucHJvZ3Jlc3MgLkB7Y29sb3J9LmJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGM7XG4gIH1cbiAgLnVpLmludmVydGVkLmluZGV0ZXJtaW5hdGUuQHtjb2xvcn0ucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlLFxuICAudWkuQHtjb2xvcn0uaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhcixcbiAgLnVpLmludmVydGVkLnByb2dyZXNzIC5Ae2NvbG9yfS5iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBsO1xuICB9XG59KVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGlueS5wcm9ncmVzcyB7XG4gIGZvbnQtc2l6ZTogQHRpbnk7XG59XG4udWkudGlueS5wcm9ncmVzcyAuYmFyIHtcbiAgaGVpZ2h0OiBAdGlueUJhckhlaWdodDtcbn1cblxuLnVpLnNtYWxsLnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiBAc21hbGw7XG59XG4udWkuc21hbGwucHJvZ3Jlc3MgLmJhciB7XG4gIGhlaWdodDogQHNtYWxsQmFySGVpZ2h0O1xufVxuXG4udWkucHJvZ3Jlc3Mge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG4udWkucHJvZ3Jlc3MgLmJhciB7XG4gIGhlaWdodDogQGJhckhlaWdodDtcbn1cblxuLnVpLmxhcmdlLnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiBAbGFyZ2U7XG59XG4udWkubGFyZ2UucHJvZ3Jlc3MgLmJhciB7XG4gIGhlaWdodDogQGxhcmdlQmFySGVpZ2h0O1xufVxuXG4udWkuYmlnLnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiBAYmlnO1xufVxuLnVpLmJpZy5wcm9ncmVzcyAuYmFyIHtcbiAgaGVpZ2h0OiBAYmlnQmFySGVpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLVxuICBJbmRldGVybWluYXRlXG4tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVpLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciAucHJvZ3Jlc3MsXG4udWkucHJvZ3Jlc3MgLmJhciAuY2VudGVyZWQucHJvZ3Jlc3Mge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51aS5pbmRldGVybWluYXRlLnByb2dyZXNzIC5iYXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiBAYmFyQm9yZGVyUmFkaXVzO1xuICBhbmltYXRpb246IHByb2dyZXNzLXB1bHNhdGluZyBAaW5kZXRlcm1pbmF0ZVB1bHNlRHVyYXRpb24gQGRlZmF1bHRFYXNpbmcgaW5maW5pdGU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG4udWkuc2xvdy5pbmRldGVybWluYXRlLnByb2dyZXNzIC5iYXI6OmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogQGluZGV0ZXJtaW5hdGVQdWxzZUR1cmF0aW9uU2xvdztcbn1cbi51aS5mYXN0LmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiBAaW5kZXRlcm1pbmF0ZVB1bHNlRHVyYXRpb25GYXN0O1xufVxuLnVpLnN3aW5naW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHByb2dyZXNzLXN3aW5naW5nO1xufVxuLnVpLnNsaWRpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICBhbmltYXRpb24tbmFtZTogcHJvZ3Jlc3Mtc2xpZGluZztcbn1cbi51aS5maWxsaW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhcjo6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHByb2dyZXNzLWZpbGxpbmc7XG59XG4udWkuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzczpub3QoLnNsaWRpbmcpOm5vdCguZmlsbGluZyk6bm90KC5zd2luZ2luZykgLmJhcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogQGluZGV0ZXJtaW5hdGVQdWxzZUNvbG9yO1xufVxuLnVpLnNsaWRpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyLFxuLnVpLnN3aW5naW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhcixcbi51aS5maWxsaW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQ6IEBiYWNrZ3JvdW5kO1xufVxuLnVpLmludmVydGVkLnNsaWRpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyLFxuLnVpLmludmVydGVkLnN3aW5naW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhcixcbi51aS5pbnZlcnRlZC5maWxsaW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQ6IEBpbnZlcnRlZEJhY2tncm91bmQ7XG59XG4udWkuc2xpZGluZy5pbmRldGVybWluYXRlLnByb2dyZXNzIC5iYXIgLnByb2dyZXNzLFxuLnVpLnN3aW5naW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciAucHJvZ3Jlc3Mge1xuICBjb2xvcjogQGludmVydGVkUHJvZ3Jlc3NDb2xvcjtcbn1cbi51aS5pbnZlcnRlZC5zbGlkaW5nLmluZGV0ZXJtaW5hdGUucHJvZ3Jlc3MgLmJhciAucHJvZ3Jlc3MsXG4udWkuaW52ZXJ0ZWQuc3dpbmdpbmcuaW5kZXRlcm1pbmF0ZS5wcm9ncmVzcyAuYmFyIC5wcm9ncmVzcyB7XG4gIGNvbG9yOiBAcHJvZ3Jlc3NDb2xvcjtcbn1cblxuQGtleWZyYW1lcyBwcm9ncmVzcy1zd2luZ2luZyB7XG4gIDAlLCAxMDAlIHtcbiAgICB3aWR0aDoxMCU7XG4gICAgbGVmdDotMjUlO1xuICB9XG4gIDI1JSwgNjUlIHtcbiAgICB3aWR0aDo3MCU7XG4gIH1cbiAgNTAlIHtcbiAgICB3aWR0aDogMTAlO1xuICAgIGxlZnQ6MTAwJTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLXNsaWRpbmcge1xuICAwJSB7XG4gICAgd2lkdGg6MTAlO1xuICAgIGxlZnQ6LTI1JTtcbiAgfVxuICA1MCUge1xuICAgIHdpZHRoOjcwJTtcbiAgfVxuICAxMDAlIHtcbiAgICB3aWR0aDoxMCU7XG4gICAgbGVmdDoxMDAlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtZmlsbGluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAsMSk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6MTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OjA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwcm9ncmVzcy1wdWxzYXRpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLDEpO1xuICAgIG9wYWNpdHk6MC43O1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTowO1xuICB9XG59XG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFRoZW1lXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuIEB0eXBlICAgIDogJ21vZHVsZSc7XG4gQGVsZW1lbnQgOiAnc2xpZGVyJztcblxuIEBpbXBvcnQgKG11bHRpcGxlKSAnLi4vLi4vdGhlbWUuY29uZmlnJztcblxuLnVpLnNsaWRlcjpub3QoLnZlcnRpY2FsKTpub3QoLmNoZWNrYm94KSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiBAcGFkZGluZztcbn1cblxuLnVpLnNsaWRlcjpub3QoLmNoZWNrYm94KSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnVpLnNsaWRlcjpub3QoLmNoZWNrYm94KTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi51aS5zbGlkZXIgLmlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4udWkuc2xpZGVyOm5vdCgudmVydGljYWwpIC5pbm5lciB7XG4gIGhlaWdodDogQGhlaWdodDtcbn1cblxuLnVpLnNsaWRlciAuaW5uZXI6aG92ZXIge1xuICBjdXJzb3I6IEBob3ZlclBvaW50ZXI7XG59XG5cbi51aS5zbGlkZXIgLmlubmVyIC50cmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogQHRyYWNrQm9yZGVyUmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdHJhY2tDb2xvcjtcbn1cblxuLnVpLnNsaWRlcjpub3QoLnZlcnRpY2FsKSAuaW5uZXIgLnRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogQHRyYWNrSGVpZ2h0O1xuICB0b3A6IEB0cmFja1Bvc2l0aW9uVG9wO1xuICBsZWZ0OiAwO1xufVxuXG4udWkuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogQHRyYWNrRmlsbEJvcmRlclJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRyYWNrRmlsbENvbG9yO1xufVxuXG4udWkuc2xpZGVyOm5vdCgudmVydGljYWwpIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGhlaWdodDogQHRyYWNrRmlsbEhlaWdodDtcbiAgdG9wOiBAdHJhY2tQb3NpdGlvblRvcDtcbiAgbGVmdDogMDtcbn1cblxuLnVpLnNsaWRlciAuaW5uZXIgLnRodW1iIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogQHRodW1iSGVpZ2h0O1xuICB3aWR0aDogQHRodW1iSGVpZ2h0O1xuICBiYWNrZ3JvdW5kOiBAdGh1bWJCYWNrZ3JvdW5kO1xuICBib3JkZXItcmFkaXVzOiBAdGh1bWJCb3JkZXJSYWRpdXM7XG4gIGJveC1zaGFkb3c6IEB0aHVtYlNoYWRvdztcbiAgdHJhbnNpdGlvbjogQHRodW1iVHJhbnNpdGlvbjtcbn1cblxuLnVpLnNsaWRlcjpub3QoLmRpc2FibGVkKSAuaW5uZXIgLnRodW1iOmhvdmVyIHtcbiAgY3Vyc29yOiBAdGh1bWJIb3ZlclBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IEB0aHVtYkhvdmVyQmFja2dyb3VuZDtcbn1cblxuLnVpLnNsaWRlcjpub3QoLmRpc2FibGVkKTpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZDogQHRodW1iSG92ZXJCYWNrZ3JvdW5kO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpc2FibGVkLnNsaWRlcjpub3QoLmNoZWNrYm94KSB7XG4gIG9wYWNpdHk6IEBkaXNhYmxlZE9wYWN0aXk7XG59XG5cbi51aS5kaXNhYmxlZC5zbGlkZXIgLmlubmVyOmhvdmVyIHtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4udWkuZGlzYWJsZWQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGJhY2tncm91bmQ6IEBkaXNhYmxlZFRyYWNrRmlsbENvbG9yO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUmV2ZXJzZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5yZXZlcnNlZC5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG5cbi51aS5yZXZlcnNlZC5zbGlkZXIgLmlubmVyIC50aHVtYiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuXG4udWkubGFiZWxlZC5yZXZlcnNlZC5zbGlkZXIgPiAubGFiZWxzIC5sYWJlbCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtMTAwJSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBWZXJ0aWNhbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZlcnRpY2FsLnNsaWRlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IEBoZWlnaHQ7XG4gIHBhZGRpbmc6IEB2ZXJ0aWNhbFBhZGRpbmc7XG59XG5cbi51aS52ZXJ0aWNhbC5zbGlkZXIgLmlubmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4udWkudmVydGljYWwuc2xpZGVyIC5pbm5lciAudHJhY2sge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiBAdHJhY2tIZWlnaHQ7XG4gIGxlZnQ6IEB0cmFja1Bvc2l0aW9uVG9wO1xuICB0b3A6IDA7XG59XG5cbi51aS52ZXJ0aWNhbC5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgd2lkdGg6IEB0cmFja0ZpbGxIZWlnaHQ7XG4gIGxlZnQ6IEB0cmFja1Bvc2l0aW9uVG9wO1xuICB0b3A6IDA7XG59XG5cbi8qIFZlcnRpY2FsIFJldmVyc2VkICovXG4udWkudmVydGljYWwucmV2ZXJzZWQuc2xpZGVyIC5pbm5lciAudGh1bWIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbn1cblxuLnVpLnZlcnRpY2FsLnJldmVyc2VkLnNsaWRlciAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExhYmVsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbGVkLnNsaWRlciA+IC5sYWJlbHMge1xuICBoZWlnaHQ6IEBsYWJlbEhlaWdodDtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi51aS5sYWJlbGVkLnNsaWRlcjpub3QoLnZlcnRpY2FsKSA+IC5sYWJlbHMge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi51aS5sYWJlbGVkLnNsaWRlciA+IC5sYWJlbHMgLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xufVxuXG4udWkubGFiZWxlZC50aWNrZWQuc2xpZGVyID4gLmxhYmVscyAubGFiZWw6YWZ0ZXIge1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogQGxhYmVsSGVpZ2h0O1xuICB3aWR0aDogQGxhYmVsV2lkdGg7XG4gIGJhY2tncm91bmQ6IEBsYWJlbENvbG9yO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogNTAlO1xufVxuLnVpLmxhYmVsZWQudGlja2VkLnNsaWRlciA+IC5sYWJlbHMgLmhhbGZ0aWNrLmxhYmVsOmFmdGVyIHtcbiAgaGVpZ2h0OiBAbGFiZWxIZWlnaHQgLyAyO1xufVxuXG4vKiBWZXJ0aWNhbCBMYWJlbHMgKi9cblxuLnVpLmxhYmVsZWQudmVydGljYWwuc2xpZGVyID4gLmxhYmVscyB7XG4gIHdpZHRoOiBAbGFiZWxIZWlnaHQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNTAlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4udWkubGFiZWxlZC52ZXJ0aWNhbC5zbGlkZXIgPiAubGFiZWxzIC5sYWJlbCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtNTAlKTtcbn1cblxuLnVpLmxhYmVsZWQudmVydGljYWwuc2xpZGVyID4gLmxhYmVscyAubGFiZWw6YWZ0ZXIge1xuICB3aWR0aDogQGxhYmVsSGVpZ2h0O1xuICBoZWlnaHQ6IEBsYWJlbFdpZHRoO1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDUwJTtcbn1cbi51aS5sYWJlbGVkLnZlcnRpY2FsLnNsaWRlciA+IC5sYWJlbHMgLmhhbGZ0aWNrLmxhYmVsOmFmdGVyIHtcbiAgd2lkdGg6IEBsYWJlbEhlaWdodCAvIDI7XG4gIGhlaWdodDogQGxhYmVsV2lkdGg7XG59XG5cbi8qIFZlcnRpY2FsIFJldmVyc2VkIExhYmVscyAqL1xuLnVpLmxhYmVsZWQudmVydGljYWwucmV2ZXJzZWQuc2xpZGVyID4gLmxhYmVscyAubGFiZWwge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgNTAlKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaG92ZXIuc2xpZGVyIC5pbm5lciAudGh1bWIge1xuICBvcGFjaXR5OiBAaG92ZXJWYXJPcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBAaG92ZXJPcGFjaXR5VHJhbnNpdGlvbjtcbn1cblxuLnVpLmhvdmVyLnNsaWRlcjpub3QoLmRpc2FibGVkKTpob3ZlciAuaW5uZXIgLnRodW1iLCAudWkuaG92ZXIuc2xpZGVyOm5vdCguZGlzYWJsZWQpOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBvcGFjaXR5OiBAaG92ZXJWYXJIb3Zlck9wYWNpdHk7XG59XG5cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGludmVydGVkVHJhY2tGaWxsQ29sb3I7XG59XG5cbi51aS5pbnZlcnRlZC5zbGlkZXIgLmlubmVyIC50cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0cmFuc3BhcmVudFdoaXRlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuZWFjaChAY29sb3JzLCB7XG4gIEBjb2xvcjogcmVwbGFjZShAa2V5LCAnQCcsICcnKTtcbiAgQGM6IEBjb2xvcnNbQEBjb2xvcl1bY29sb3JdO1xuICBAbDogQGNvbG9yc1tAQGNvbG9yXVtsaWdodF07XG4gIEBoOiBAY29sb3JzW0BAY29sb3JdW2hvdmVyXTtcbiAgQGxoOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0SG92ZXJdO1xuXG4gIC8qIFN0YW5kYXJkICovXG4gIC51aS5Ae2NvbG9yfS5zbGlkZXIgLmlubmVyIC50cmFjay1maWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYztcbiAgfVxuICAudWkuQHtjb2xvcn0uaW52ZXJ0ZWQuc2xpZGVyIC5pbm5lciAudHJhY2stZmlsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGw7XG4gIH1cblxuICAvKiBCYXNpYyAqL1xuICAudWkuQHtjb2xvcn0uc2xpZGVyLmJhc2ljIC5pbm5lciAudGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjO1xuICB9XG4gIC51aS5Ae2NvbG9yfS5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYjpob3ZlcixcbiAgLnVpLkB7Y29sb3J9LnNsaWRlci5iYXNpYzpmb2N1cyAuaW5uZXIgLnRodW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAaDtcbiAgfVxuXG4gIC8qIEJhc2ljIEludmVydGVkICovXG4gIC51aS5Ae2NvbG9yfS5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGw7XG4gIH1cbiAgLnVpLkB7Y29sb3J9LmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLFxuICAudWkuQHtjb2xvcn0uaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBsaDtcbiAgfVxuXG59KVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTdGFuZGFyZCAqL1xuLnVpLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRyYWNrRmlsbENvbG9yO1xufVxuLnVpLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLCAudWkuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdHJhY2tGaWxsQ29sb3JGb2N1cztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBCYXNpYyBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3RhbmRhcmQgKi9cbi51aS5pbnZlcnRlZC5zbGlkZXIuYmFzaWMgLmlubmVyIC50aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnZlcnRlZFRyYWNrRmlsbENvbG9yO1xufVxuLnVpLmludmVydGVkLnNsaWRlci5iYXNpYyAuaW5uZXIgLnRodW1iOmhvdmVyLCAudWkuaW52ZXJ0ZWQuc2xpZGVyLmJhc2ljOmZvY3VzIC5pbm5lciAudGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW52ZXJ0ZWRUcmFja0ZpbGxDb2xvckZvY3VzO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTbWFsbCAqL1xuLnVpLnNsaWRlci5zbWFsbCAuaW5uZXIgLnRodW1iIHtcbiAgaGVpZ2h0OiBAc21hbGxIZWlnaHQ7XG4gIHdpZHRoOiBAc21hbGxIZWlnaHQ7XG59XG4udWkuc2xpZGVyLnNtYWxsOm5vdCgudmVydGljYWwpIC5pbm5lciB7XG4gIGhlaWdodDogQHNtYWxsSGVpZ2h0O1xufVxuLnVpLnNsaWRlci5zbWFsbDpub3QoLnZlcnRpY2FsKSAuaW5uZXIgLnRyYWNrLFxuLnVpLnNsaWRlci5zbWFsbDpub3QoLnZlcnRpY2FsKSAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBoZWlnaHQ6IEBzbWFsbFRyYWNrSGVpZ2h0O1xuICB0b3A6IEB0cmFja1Bvc2l0aW9uVG9wU21hbGw7XG59XG4udWkuc21hbGwubGFiZWxlZC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkgPiAubGFiZWxzLFxuLnVpLnNtYWxsLmxhYmVsZWQuc2xpZGVyOm5vdCgudmVydGljYWwpID4gLmxhYmVscyAubGFiZWw6YWZ0ZXIge1xuICBoZWlnaHQ6IEBzbWFsbExhYmVsSGVpZ2h0O1xufVxuLnVpLnNtYWxsLmxhYmVsZWQuc2xpZGVyOm5vdCgudmVydGljYWwpID4gLmxhYmVscyAuaGFsZnRpY2subGFiZWw6YWZ0ZXIge1xuICBoZWlnaHQ6IEBzbWFsbExhYmVsSGVpZ2h0IC8gMjtcbn1cblxuLyogU21hbGwgVmVydGljYWwgKi9cbi51aS5zbGlkZXIuc21hbGwudmVydGljYWwgLmlubmVyIHtcbiAgd2lkdGg6IEBzbWFsbEhlaWdodDtcbn1cbi51aS5zbGlkZXIuc21hbGwudmVydGljYWwgLmlubmVyIC50cmFjayxcbi51aS5zbGlkZXIuc21hbGwudmVydGljYWwgLmlubmVyIC50cmFjay1maWxsIHtcbiAgd2lkdGg6IEBzbWFsbFRyYWNrSGVpZ2h0O1xuICBsZWZ0OiBAdHJhY2tQb3NpdGlvblRvcFNtYWxsO1xufVxuLnVpLnNtYWxsLmxhYmVsZWQudmVydGljYWwuc2xpZGVyPiAubGFiZWxzLFxuLnVpLnNtYWxsLmxhYmVsZWQudmVydGljYWwuc2xpZGVyPiAubGFiZWxzIC5sYWJlbDphZnRlciB7XG4gIHdpZHRoOiBAc21hbGxMYWJlbEhlaWdodDtcbn1cbi51aS5zbWFsbC5sYWJlbGVkLnZlcnRpY2FsLnNsaWRlcj4gLmxhYmVscyAuaGFsZnRpY2subGFiZWw6YWZ0ZXIge1xuICB3aWR0aDogQHNtYWxsTGFiZWxIZWlnaHQgLyAyO1xufVxuXG4vKiBMYXJnZSAqL1xuLnVpLnNsaWRlci5sYXJnZSAuaW5uZXIgLnRodW1iIHtcbiAgaGVpZ2h0OiBAbGFyZ2VIZWlnaHQ7XG4gIHdpZHRoOiBAbGFyZ2VIZWlnaHQ7XG59XG4udWkuc2xpZGVyLmxhcmdlOm5vdCgudmVydGljYWwpIC5pbm5lciB7XG4gIGhlaWdodDogQGxhcmdlSGVpZ2h0O1xufVxuLnVpLnNsaWRlci5sYXJnZTpub3QoLnZlcnRpY2FsKSAuaW5uZXIgLnRyYWNrLFxuLnVpLnNsaWRlci5sYXJnZTpub3QoLnZlcnRpY2FsKSAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICBoZWlnaHQ6IEBsYXJnZVRyYWNrSGVpZ2h0O1xuICB0b3A6IEB0cmFja1Bvc2l0aW9uVG9wTGFyZ2U7XG59XG4udWkubGFyZ2UubGFiZWxlZC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkgPiAubGFiZWxzLFxuLnVpLmxhcmdlLmxhYmVsZWQuc2xpZGVyOm5vdCgudmVydGljYWwpID4gLmxhYmVscyAubGFiZWw6YWZ0ZXIge1xuICBoZWlnaHQ6IEBsYXJnZUxhYmVsSGVpZ2h0O1xufVxuLnVpLmxhcmdlLmxhYmVsZWQuc2xpZGVyOm5vdCgudmVydGljYWwpID4gLmxhYmVscyAuaGFsZnRpY2subGFiZWw6YWZ0ZXIge1xuICBoZWlnaHQ6IEBsYXJnZUxhYmVsSGVpZ2h0IC8gMjtcbn1cblxuLyogTGFyZ2UgVmVydGljYWwgKi9cbi51aS5zbGlkZXIubGFyZ2UudmVydGljYWwgLmlubmVyIHtcbiAgd2lkdGg6IEBsYXJnZUhlaWdodDtcbn1cbi51aS5zbGlkZXIubGFyZ2UudmVydGljYWwgLmlubmVyIC50cmFjayxcbi51aS5zbGlkZXIubGFyZ2UudmVydGljYWwgLmlubmVyIC50cmFjay1maWxsIHtcbiAgd2lkdGg6IEBsYXJnZVRyYWNrSGVpZ2h0O1xuICBsZWZ0OiBAdHJhY2tQb3NpdGlvblRvcExhcmdlO1xufVxuLnVpLmxhcmdlLmxhYmVsZWQudmVydGljYWwuc2xpZGVyPiAubGFiZWxzLFxuLnVpLmxhcmdlLmxhYmVsZWQudmVydGljYWwuc2xpZGVyPiAubGFiZWxzIC5sYWJlbDphZnRlciB7XG4gIHdpZHRoOiBAbGFyZ2VMYWJlbEhlaWdodDtcbn1cbi51aS5sYXJnZS5sYWJlbGVkLnZlcnRpY2FsLnNsaWRlcj4gLmxhYmVscyAuaGFsZnRpY2subGFiZWw6YWZ0ZXIge1xuICB3aWR0aDogQGxhcmdlTGFiZWxIZWlnaHQgLyAyO1xufVxuXG4vKiBCaWcgKi9cbi51aS5zbGlkZXIuYmlnIC5pbm5lciAudGh1bWIge1xuICBoZWlnaHQ6IEBiaWdIZWlnaHQ7XG4gIHdpZHRoOiBAYmlnSGVpZ2h0O1xufVxuLnVpLnNsaWRlci5iaWc6bm90KC52ZXJ0aWNhbCkgLmlubmVyIHtcbiAgaGVpZ2h0OiBAYmlnSGVpZ2h0O1xufVxuLnVpLnNsaWRlci5iaWc6bm90KC52ZXJ0aWNhbCkgLmlubmVyIC50cmFjayxcbi51aS5zbGlkZXIuYmlnOm5vdCgudmVydGljYWwpIC5pbm5lciAudHJhY2stZmlsbCB7XG4gIGhlaWdodDogQGJpZ1RyYWNrSGVpZ2h0O1xuICB0b3A6IEB0cmFja1Bvc2l0aW9uVG9wQmlnO1xufVxuLnVpLmJpZy5sYWJlbGVkLnNsaWRlcjpub3QoLnZlcnRpY2FsKSA+IC5sYWJlbHMsXG4udWkuYmlnLmxhYmVsZWQuc2xpZGVyOm5vdCgudmVydGljYWwpID4gLmxhYmVscyAubGFiZWw6YWZ0ZXIge1xuICBoZWlnaHQ6IEBiaWdMYWJlbEhlaWdodDtcbn1cbi51aS5iaWcubGFiZWxlZC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkgPiAubGFiZWxzIC5oYWxmdGljay5sYWJlbDphZnRlciB7XG4gIGhlaWdodDogQGJpZ0xhYmVsSGVpZ2h0IC8gMjtcbn1cblxuLyogQmlnIFZlcnRpY2FsICovXG4udWkuc2xpZGVyLmJpZy52ZXJ0aWNhbCAuaW5uZXIge1xuICB3aWR0aDogQGJpZ0hlaWdodDtcbn1cbi51aS5zbGlkZXIuYmlnLnZlcnRpY2FsIC5pbm5lciAudHJhY2ssXG4udWkuc2xpZGVyLmJpZy52ZXJ0aWNhbCAuaW5uZXIgLnRyYWNrLWZpbGwge1xuICB3aWR0aDogQGJpZ1RyYWNrSGVpZ2h0O1xuICBsZWZ0OiBAdHJhY2tQb3NpdGlvblRvcEJpZztcbn1cbi51aS5iaWcubGFiZWxlZC52ZXJ0aWNhbC5zbGlkZXI+IC5sYWJlbHMsXG4udWkuYmlnLmxhYmVsZWQudmVydGljYWwuc2xpZGVyPiAubGFiZWxzIC5sYWJlbDphZnRlciB7XG4gIHdpZHRoOiBAYmlnTGFiZWxIZWlnaHQ7XG59XG4udWkuYmlnLmxhYmVsZWQudmVydGljYWwuc2xpZGVyPiAubGFiZWxzIC5oYWxmdGljay5sYWJlbDphZnRlciB7XG4gIHdpZHRoOiBAYmlnTGFiZWxIZWlnaHQgLyAyO1xufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBSYXRpbmdcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ21vZHVsZSc7XG5AZWxlbWVudCA6ICdyYXRpbmcnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFJhdGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnJhdGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aGl0ZS1zcGFjZTogQHdoaXRlU3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBAdmVydGljYWxBbGlnbjtcbn1cbi51aS5yYXRpbmc6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLyogSWNvbiAqL1xuLnVpLnJhdGluZyAuaWNvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogQG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgY3Vyc29yOiBAaWNvbkN1cnNvcjtcbiAgd2lkdGg6IEBpY29uV2lkdGg7XG4gIGhlaWdodDogQGljb25IZWlnaHQ7XG4gIHRyYW5zaXRpb246IEBpY29uVHJhbnNpdGlvbjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU3RhbmRhcmRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5hY3RpdmUgSWNvbiAqL1xuLnVpLnJhdGluZyAuaWNvbiB7XG4gIGJhY2tncm91bmQ6IEBpbmFjdGl2ZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAaW5hY3RpdmVDb2xvcjtcbn1cblxuLyogQWN0aXZlIEljb24gKi9cbi51aS5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgYmFja2dyb3VuZDogQGFjdGl2ZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAYWN0aXZlQ29sb3I7XG59XG5cbi8qIFNlbGVjdGVkIEljb24gKi9cbi51aS5yYXRpbmcgLmljb24uc2VsZWN0ZWQsXG4udWkucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IEBzZWxlY3RlZEJhY2tncm91bmQ7XG4gIGNvbG9yOiBAc2VsZWN0ZWRDb2xvcjtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0gKi9cblxuZWFjaChAY29sb3JzLCB7XG4gIEBjb2xvcjogcmVwbGFjZShAa2V5LCAnQCcsICcnKTtcbiAgQGM6IEBjb2xvcnNbQEBjb2xvcl1bY29sb3JdO1xuICBAbDogQGNvbG9yc1tAQGNvbG9yXVtsaWdodF07XG4gIEBoOiBAY29sb3JzW0BAY29sb3JdW2hvdmVyXTtcbiAgQGxoOiBAY29sb3JzW0BAY29sb3JdW2xpZ2h0SG92ZXJdO1xuXG4gIC51aS5Ae2NvbG9yfS5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgICBjb2xvcjogQGw7XG4gICAgdGV4dC1zaGFkb3c6IDBweCAtQHNoYWRvd1dpZHRoIDBweCBAYyxcbiAgICAgICAgICAgICAgICAgLUBzaGFkb3dXaWR0aCAwcHggMHB4IEBjLFxuICAgICAgICAgICAgICAgICAwcHggQHNoYWRvd1dpZHRoIDBweCBAYyxcbiAgICAgICAgICAgICAgICAgQHNoYWRvd1dpZHRoIDBweCAwcHggQGM7XG4gIH1cbiAgLnVpLkB7Y29sb3J9LnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbiAgLnVpLkB7Y29sb3J9LnJhdGluZyAuaWNvbi5zZWxlY3RlZC5hY3RpdmUge1xuICAgIGNvbG9yOiBAbGg7XG4gICAgdGV4dC1zaGFkb3c6IDBweCAtQHNoYWRvd1dpZHRoIDBweCBAaCxcbiAgICAgICAgICAgICAgICAgLUBzaGFkb3dXaWR0aCAwcHggMHB4IEBoLFxuICAgICAgICAgICAgICAgICAwcHggQHNoYWRvd1dpZHRoIDBweCBAaCxcbiAgICAgICAgICAgICAgICAgQHNoYWRvd1dpZHRoIDBweCAwcHggQGg7XG4gIH1cbn0pXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIGRpc2FibGVkIHJhdGluZyAqL1xuLnVpLmRpc2FibGVkLnJhdGluZyAuaWNvbiB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFVzZXIgSW50ZXJhY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU2VsZWN0ZWQgUmF0aW5nICovXG4udWkucmF0aW5nLnNlbGVjdGVkIC5hY3RpdmUuaWNvbiB7XG4gIG9wYWNpdHk6IEBpbnRlcmFjdGl2ZUFjdGl2ZUljb25PcGFjaXR5O1xufVxuLnVpLnJhdGluZy5zZWxlY3RlZCAuaWNvbi5zZWxlY3RlZCxcbi51aS5yYXRpbmcgLmljb24uc2VsZWN0ZWQge1xuICBvcGFjaXR5OiBAaW50ZXJhY3RpdmVTZWxlY3RlZEljb25PcGFjaXR5O1xufVxuXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWluaS5yYXRpbmcge1xuICBmb250LXNpemU6IEBtaW5pO1xufVxuLnVpLnRpbnkucmF0aW5nIHtcbiAgZm9udC1zaXplOiBAdGlueTtcbn1cbi51aS5zbWFsbC5yYXRpbmcge1xuICBmb250LXNpemU6IEBzbWFsbDtcbn1cbi51aS5yYXRpbmcge1xuICBmb250LXNpemU6IEBtZWRpdW07XG59XG4udWkubGFyZ2UucmF0aW5nIHtcbiAgZm9udC1zaXplOiBAbGFyZ2U7XG59XG4udWkuaHVnZS5yYXRpbmcge1xuICBmb250LXNpemU6IEBodWdlO1xufVxuLnVpLm1hc3NpdmUucmF0aW5nIHtcbiAgZm9udC1zaXplOiBAbWFzc2l2ZTtcbn1cblxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBTZWFyY2hcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ21vZHVsZSc7XG5AZWxlbWVudCA6ICdzZWFyY2gnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU2VhcmNoXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udWkuc2VhcmNoID4gLnByb21wdCB7XG4gIG1hcmdpbjogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6ICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuXG4gIHRleHQtc2hhZG93OiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBAbm9ybWFsO1xuXG4gIGxpbmUtaGVpZ2h0OiBAcHJvbXB0TGluZUhlaWdodDtcbiAgcGFkZGluZzogQHByb21wdFBhZGRpbmc7XG4gIGZvbnQtc2l6ZTogQHByb21wdEZvbnRTaXplO1xuXG4gIGJhY2tncm91bmQ6IEBwcm9tcHRCYWNrZ3JvdW5kO1xuICBib3JkZXI6IEBwcm9tcHRCb3JkZXI7XG4gIGNvbG9yOiBAcHJvbXB0Q29sb3I7XG4gIGJveC1zaGFkb3c6IEBwcm9tcHRCb3hTaGFkb3c7XG4gIHRyYW5zaXRpb246IEBwcm9tcHRUcmFuc2l0aW9uO1xufVxuXG4udWkuc2VhcmNoIC5wcm9tcHQge1xuICBib3JkZXItcmFkaXVzOiBAcHJvbXB0Qm9yZGVyUmFkaXVzO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCAucHJvbXB0IH4gLnNlYXJjaC5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUmVzdWx0c1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgYmFja2dyb3VuZDogQHJlc3VsdHNCYWNrZ3JvdW5kO1xuXG4gIG1hcmdpbi10b3A6IEByZXN1bHRzRGlzdGFuY2U7XG4gIHdpZHRoOiBAcmVzdWx0c1dpZHRoO1xuXG4gIGJvcmRlci1yYWRpdXM6IEByZXN1bHRzQm9yZGVyUmFkaXVzO1xuICBib3gtc2hhZG93OiBAcmVzdWx0c0JveFNoYWRvdztcbiAgYm9yZGVyOiBAcmVzdWx0c0JvcmRlcjtcbiAgei1pbmRleDogQHJlc3VsdHNaSW5kZXg7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiBAcmVzdWx0c0JvcmRlclJhZGl1cyBAcmVzdWx0c0JvcmRlclJhZGl1cyAwIDA7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAcmVzdWx0c0JvcmRlclJhZGl1cyBAcmVzdWx0c0JvcmRlclJhZGl1cztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlc3VsdFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IEByZXN1bHRGb250U2l6ZTtcbiAgcGFkZGluZzogQHJlc3VsdFBhZGRpbmc7XG4gIGNvbG9yOiBAcmVzdWx0VGV4dENvbG9yO1xuICBsaW5lLWhlaWdodDogQHJlc3VsdExpbmVIZWlnaHQ7XG4gIGJvcmRlci1ib3R0b206IEByZXN1bHREaXZpZGVyO1xufVxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IEByZXN1bHRMYXN0RGl2aWRlciAhaW1wb3J0YW50O1xufVxuXG4vKiBJbWFnZSAqL1xuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQgLmltYWdlIHtcbiAgZmxvYXQ6IEByZXN1bHRJbWFnZUZsb2F0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiBAcmVzdWx0SW1hZ2VCYWNrZ3JvdW5kO1xuICB3aWR0aDogQHJlc3VsdEltYWdlV2lkdGg7XG4gIGhlaWdodDogQHJlc3VsdEltYWdlSGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiBAcmVzdWx0SW1hZ2VCb3JkZXJSYWRpdXM7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEluZm9cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IC5pbWFnZSArIC5jb250ZW50IHtcbiAgbWFyZ2luOiBAcmVzdWx0SW1hZ2VNYXJnaW47XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IC50aXRsZSB7XG4gIG1hcmdpbjogQHJlc3VsdFRpdGxlTWFyZ2luO1xuICBmb250LWZhbWlseTogQHJlc3VsdFRpdGxlRm9udDtcbiAgZm9udC13ZWlnaHQ6IEByZXN1bHRUaXRsZUZvbnRXZWlnaHQ7XG4gIGZvbnQtc2l6ZTogQHJlc3VsdFRpdGxlRm9udFNpemU7XG4gIGNvbG9yOiBAcmVzdWx0VGl0bGVDb2xvcjtcbn1cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IC5kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IEByZXN1bHREZXNjcmlwdGlvbkRpc3RhbmNlO1xuICBmb250LXNpemU6IEByZXN1bHREZXNjcmlwdGlvbkZvbnRTaXplO1xuICBjb2xvcjogQHJlc3VsdERlc2NyaXB0aW9uQ29sb3I7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAucHJpY2Uge1xuICBmbG9hdDogQHJlc3VsdFByaWNlRmxvYXQ7XG4gIGNvbG9yOiBAcmVzdWx0UHJpY2VDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIE1lc3NhZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5tZXNzYWdlIHtcbiAgcGFkZGluZzogQG1lc3NhZ2VWZXJ0aWNhbFBhZGRpbmcgQG1lc3NhZ2VIb3Jpem9udGFsUGFkZGluZztcbn1cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5tZXNzYWdlIC5oZWFkZXIge1xuICBmb250LWZhbWlseTogQGhlYWRlckZvbnQ7XG4gIGZvbnQtc2l6ZTogQG1lc3NhZ2VIZWFkZXJGb250U2l6ZTtcbiAgZm9udC13ZWlnaHQ6IEBtZXNzYWdlSGVhZGVyRm9udFdlaWdodDtcbiAgY29sb3I6IEBtZXNzYWdlSGVhZGVyQ29sb3I7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgPiAubWVzc2FnZSAuZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiBAbWVzc2FnZURlc2NyaXB0aW9uRGlzdGFuY2U7XG4gIGZvbnQtc2l6ZTogQG1lc3NhZ2VEZXNjcmlwdGlvbkZvbnRTaXplO1xuICBjb2xvcjogQG1lc3NhZ2VEZXNjcmlwdGlvbkNvbG9yO1xufVxuXG4vKiBWaWV3IEFsbCBSZXN1bHRzICovXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgPiAuYWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci10b3A6IEBhY3Rpb25Cb3JkZXI7XG4gIGJhY2tncm91bmQ6IEBhY3Rpb25CYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiBAYWN0aW9uUGFkZGluZztcbiAgY29sb3I6IEBhY3Rpb25Db2xvcjtcbiAgZm9udC13ZWlnaHQ6IEBhY3Rpb25Gb250V2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBAYWN0aW9uQWxpZ247XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2VhcmNoID4gLnByb21wdDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogQHByb21wdEZvY3VzQm9yZGVyQ29sb3I7XG4gIGJhY2tncm91bmQ6IEBwcm9tcHRGb2N1c0JhY2tncm91bmQ7XG4gIGNvbG9yOiBAcHJvbXB0Rm9jdXNDb2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sb2FkaW5nLnNlYXJjaCAuaW5wdXQgPiBpLmljb246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcblxuICBtYXJnaW46IEBsb2FkZXJNYXJnaW47XG4gIHdpZHRoOiBAbG9hZGVyU2l6ZTtcbiAgaGVpZ2h0OiBAbG9hZGVyU2l6ZTtcblxuICBib3JkZXItcmFkaXVzOiBAY2lyY3VsYXJSYWRpdXM7XG4gIGJvcmRlcjogQGxvYWRlckxpbmVXaWR0aCBzb2xpZCBAbG9hZGVyRmlsbENvbG9yO1xufVxuLnVpLmxvYWRpbmcuc2VhcmNoIC5pbnB1dCA+IGkuaWNvbjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG5cbiAgbWFyZ2luOiBAbG9hZGVyTWFyZ2luO1xuICB3aWR0aDogQGxvYWRlclNpemU7XG4gIGhlaWdodDogQGxvYWRlclNpemU7XG5cbiAgYW5pbWF0aW9uOiBsb2FkZXIgQGxvYWRlclNwZWVkIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyOiBAbG9hZGVyTGluZVdpZHRoIHNvbGlkIEBsb2FkZXJMaW5lQ29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IEBjaXJjdWxhclJhZGl1cztcblxuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0OmhvdmVyLFxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSAucmVzdWx0OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogQHJlc3VsdEhvdmVyQmFja2dyb3VuZDtcbn1cbi51aS5zZWFyY2ggLmFjdGlvbjpob3Zlcjpub3QoZGl2KSB7XG4gIGJhY2tncm91bmQ6IEBhY3Rpb25Ib3ZlckJhY2tncm91bmQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBAY2F0ZWdvcnlBY3RpdmVCYWNrZ3JvdW5kO1xufVxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeS5hY3RpdmUgPiAubmFtZSB7XG4gIGNvbG9yOiBAY2F0ZWdvcnlOYW1lQWN0aXZlQ29sb3I7XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0LmFjdGl2ZSxcbi51aS5jYXRlZ29yeS5zZWFyY2ggPiAucmVzdWx0cyAuY2F0ZWdvcnkgLnJlc3VsdC5hY3RpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiBAcmVzdWx0QWN0aXZlQm9yZGVyTGVmdDtcbiAgYmFja2dyb3VuZDogQHJlc3VsdEFjdGl2ZUJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEByZXN1bHRBY3RpdmVCb3hTaGFkb3c7XG59XG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdC5hY3RpdmUgLnRpdGxlIHtcbiAgY29sb3I6IEByZXN1bHRBY3RpdmVUaXRsZUNvbG9yO1xufVxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQuYWN0aXZlIC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiBAcmVzdWx0QWN0aXZlRGVzY3JpcHRpb25Db2xvcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIERpc2FibGVkICovXG4udWkuZGlzYWJsZWQuc2VhcmNoIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogQGRpc2FibGVkT3BhY2l0eTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNlbGVjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaC5zZWxlY3Rpb24gLnByb21wdCB7XG4gIGJvcmRlci1yYWRpdXM6IEBzZWxlY3Rpb25Qcm9tcHRCb3JkZXJSYWRpdXM7XG59XG5cbi8qIFJlbW92ZSBpbnB1dCAqL1xuLnVpLnNlYXJjaC5zZWxlY3Rpb24gPiAuaWNvbi5pbnB1dCA+IC5yZW1vdmUuaWNvbiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIGNvbG9yOiBAc2VsZWN0aW9uQ2xvc2VJY29uQ29sb3I7XG4gIHRvcDogQHNlbGVjdGlvbkNsb3NlVG9wO1xuICByaWdodDogQHNlbGVjdGlvbkNsb3NlUmlnaHQ7XG4gIHRyYW5zaXRpb246IEBzZWxlY3Rpb25DbG9zZVRyYW5zaXRpb247XG59XG4udWkuc2VhcmNoLnNlbGVjdGlvbiA+IC5pY29uLmlucHV0ID4gLmFjdGl2ZS5yZW1vdmUuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogQHNlbGVjdGlvbkNsb3NlSWNvbk9wYWNpdHk7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnVpLnNlYXJjaC5zZWxlY3Rpb24gPiAuaWNvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgaWNvblwiXSkgPiAuaWNvbiB+IC5yZW1vdmUuaWNvbiB7XG4gIHJpZ2h0OiBAc2VsZWN0aW9uQ2xvc2VJY29uSW5wdXRSaWdodDtcbn1cbi51aS5zZWFyY2guc2VsZWN0aW9uID4gLmljb24uaW5wdXQgPiAucmVtb3ZlLmljb246aG92ZXIge1xuICBvcGFjaXR5OiBAc2VsZWN0aW9uQ2xvc2VJY29uSG92ZXJPcGFjaXR5O1xuICBjb2xvcjogQHNlbGVjdGlvbkNsb3NlSWNvbkhvdmVyQ29sb3I7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENhdGVnb3J5XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2F0ZWdvcnkuc2VhcmNoIC5yZXN1bHRzIHtcbiAgd2lkdGg6IEBjYXRlZ29yeVJlc3VsdHNXaWR0aDtcbn1cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCAucmVzdWx0cy5hbmltYXRpbmcsXG4udWkuY2F0ZWdvcnkuc2VhcmNoIC5yZXN1bHRzLnZpc2libGUge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLyogQ2F0ZWdvcnkgKi9cbi51aS5jYXRlZ29yeS5zZWFyY2ggPiAucmVzdWx0cyAuY2F0ZWdvcnkge1xuICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIGJhY2tncm91bmQ6IEBjYXRlZ29yeUJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IEBjYXRlZ29yeUJveFNoYWRvdztcbiAgdHJhbnNpdGlvbjogQGNhdGVnb3J5VHJhbnNpdGlvbjtcbn1cblxuLyogTGFzdCBDYXRlZ29yeSAqL1xuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLyogRmlyc3QgLyBMYXN0ICovXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5OmZpcnN0LWNoaWxkIC5uYW1lICsgLnJlc3VsdCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgQHJlc3VsdHNCb3JkZXJSYWRpdXMgMCAwO1xufVxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeTpsYXN0LWNoaWxkIC5yZXN1bHQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBAcmVzdWx0c0JvcmRlclJhZGl1cyAwO1xufVxuXG4vKiBDYXRlZ29yeSBSZXN1bHQgTmFtZSAqL1xuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSA+IC5uYW1lIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdpZHRoOiBAY2F0ZWdvcnlOYW1lV2lkdGg7XG4gIHdoaXRlLXNwYWNlOiBAY2F0ZWdvcnlOYW1lV2hpdGVzcGFjZTtcbiAgYmFja2dyb3VuZDogQGNhdGVnb3J5TmFtZUJhY2tncm91bmQ7XG4gIGZvbnQtZmFtaWx5OiBAY2F0ZWdvcnlOYW1lRm9udDtcbiAgZm9udC1zaXplOiBAY2F0ZWdvcnlOYW1lRm9udFNpemU7XG4gIHBhZGRpbmc6IEBjYXRlZ29yeU5hbWVQYWRkaW5nO1xuICBmb250LXdlaWdodDogQGNhdGVnb3J5TmFtZUZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAY2F0ZWdvcnlOYW1lQ29sb3I7XG4gIGJvcmRlci1ib3R0b206IEBjYXRlZ29yeURpdmlkZXI7XG59XG5cbi8qIENhdGVnb3J5IFJlc3VsdCAqL1xuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSAucmVzdWx0cyB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIGJhY2tncm91bmQ6IEBjYXRlZ29yeVJlc3VsdEJhY2tncm91bmQ7XG4gIGJvcmRlci1sZWZ0OiBAY2F0ZWdvcnlSZXN1bHRMZWZ0Qm9yZGVyO1xuICBib3JkZXItYm90dG9tOiBAY2F0ZWdvcnlEaXZpZGVyO1xufVxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSAucmVzdWx0IHtcbiAgYm9yZGVyLWJvdHRvbTogQGNhdGVnb3J5UmVzdWx0RGl2aWRlcjtcbiAgdHJhbnNpdGlvbjogQGNhdGVnb3J5UmVzdWx0VHJhbnNpdGlvbjtcbiAgcGFkZGluZzogQGNhdGVnb3J5UmVzdWx0UGFkZGluZztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIExlZnQgLyBSaWdodFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLnNlYXJjaCA+IC5yZXN1bHRzIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG4udWlbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5zZWFyY2ggPiAucmVzdWx0cyB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5zZWFyY2ggLnJlc3VsdHMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuc2VhcmNoIHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVNaW5pO1xufVxuLnVpLnNtYWxsLnNlYXJjaCB7XG4gIGZvbnQtc2l6ZTogQHJlbGF0aXZlU21hbGw7XG59XG4udWkuc2VhcmNoIHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVNZWRpdW07XG59XG4udWkubGFyZ2Uuc2VhcmNoIHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVMYXJnZTtcbn1cbi51aS5iaWcuc2VhcmNoIHtcbiAgZm9udC1zaXplOiBAcmVsYXRpdmVCaWc7XG59XG4udWkuaHVnZS5zZWFyY2gge1xuICBmb250LXNpemU6IEByZWxhdGl2ZUh1Z2U7XG59XG4udWkubWFzc2l2ZS5zZWFyY2gge1xuICBmb250LXNpemU6IEByZWxhdGl2ZU1hc3NpdmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1vYmlsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAbGFyZ2VzdE1vYmlsZVNjcmVlbikge1xuICAudWkuc2VhcmNoIC5yZXN1bHRzIHtcbiAgICBtYXgtd2lkdGg6IEBtb2JpbGVNYXhXaWR0aDtcbiAgfVxufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBTaGFwZVxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAnc2hhcGUnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgIFNoYXBlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc2hhcGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGRpc3BsYXk6IEBkaXNwbGF5O1xuICBwZXJzcGVjdGl2ZTogQHBlcnNwZWN0aXZlO1xuICB0cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcbn1cblxuLnVpLnNoYXBlIC5zaWRlcyB7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi51aS5zaGFwZSAuc2lkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIG1hcmdpbjogQHNpZGVNYXJnaW4gIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogQGJhY2tmYWNlVmlzaWJpbGl0eTtcbn1cblxuLnVpLnNoYXBlIC5zaWRlICoge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5jdWJlLnNoYXBlIC5zaWRlIHtcbiAgbWluLXdpZHRoOiBAY3ViZVNpemU7XG4gIGhlaWdodDogQGN1YmVTaXplO1xuXG4gIHBhZGRpbmc6IEBjdWJlUGFkZGluZztcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY3ViZUJhY2tncm91bmQ7XG4gIGNvbG9yOiBAY3ViZVRleHRDb2xvcjtcbiAgYm94LXNoYWRvdzogQGN1YmVCb3hTaGFkb3c7XG59XG4udWkuY3ViZS5zaGFwZSAuc2lkZSA+IC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogdGFibGU7XG5cbiAgdGV4dC1hbGlnbjogQGN1YmVUZXh0QWxpZ247XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xufVxuLnVpLmN1YmUuc2hhcGUgLnNpZGUgPiAuY29udGVudCA+IGRpdiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogQGN1YmVGb250U2l6ZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkudGV4dC5zaGFwZS5hbmltYXRpbmcgLnNpZGVzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cbi51aS50ZXh0LnNoYXBlIC5zaWRlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi51aS50ZXh0LnNoYXBlIC5zaWRlID4gKiB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubG9hZGluZy5zaGFwZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICBsZWZ0OiAtOTk5OXB4O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBbmltYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zaGFwZSAuYW5pbWF0aW5nLnNpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IEBhbmltYXRpbmdaSW5kZXg7XG59XG4udWkuc2hhcGUgLmhpZGRlbi5zaWRlIHtcbiAgb3BhY2l0eTogQGhpZGRlblNpZGVPcGFjaXR5O1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIENTU1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNoYXBlLmFuaW1hdGluZyAuc2lkZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xufVxuLnVpLnNoYXBlLmFuaW1hdGluZyAuc2lkZSB7XG4gIHRyYW5zaXRpb246IEBzaWRlVHJhbnNpdGlvbjtcbn1cbi51aS5zaGFwZSAuYW5pbWF0aW5nLnNpZGUgKixcbi51aS5zaGFwZS5hbmltYXRpbmcgLnNpZGUgKiB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2hhcGUgLmFjdGl2ZS5zaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFNpZGViYXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnbW9kdWxlJztcbkBlbGVtZW50IDogJ3NpZGViYXInO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTaWRlYmFyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBTaWRlYmFyIE1lbnUgKi9cbi51aS5zaWRlYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuICB6LWluZGV4OiBAdG9wTGF5ZXI7XG59XG5cbi8qIEdQVSBMYXllcnMgZm9yIENoaWxkIEVsZW1lbnRzICovXG4udWkuc2lkZWJhciA+ICoge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGlyZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGVmdC5zaWRlYmFyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuLnVpLnJpZ2h0LnNpZGViYXIge1xuICByaWdodDogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG59XG5cbi51aS50b3Auc2lkZWJhcixcbi51aS5ib3R0b20uc2lkZWJhciB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuLnVpLnRvcC5zaWRlYmFyIHtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbn1cbi51aS5ib3R0b20uc2lkZWJhciB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFB1c2hhYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHVzaGFibGUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4vKiBXaG9sZSBQYWdlICovXG5ib2R5LnB1c2hhYmxlIHtcbiAgYmFja2dyb3VuZDogQGNhbnZhc0JhY2tncm91bmQ7XG4gICYuZGltbWVkIHtcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICB9XG59XG5cbi8qIFBhZ2UgQ29udGV4dCAqL1xuLnB1c2hhYmxlOm5vdChib2R5KSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG4ucHVzaGFibGU6bm90KGJvZHkpID4gLnVpLnNpZGViYXIsXG4ucHVzaGFibGU6bm90KGJvZHkpID4gLmZpeGVkLFxuLnB1c2hhYmxlOm5vdChib2R5KSA+IC5wdXNoZXI6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnB1c2hhYmxlID4gLmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIEBkdXJhdGlvbiBAZWFzaW5nO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICB6LWluZGV4OiBAZml4ZWRMYXllcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHVzaGFibGUgPiAucHVzaGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSBAZHVyYXRpb24gQGVhc2luZztcbiAgei1pbmRleDogQG1pZGRsZUxheWVyO1xuXG4gIC8qIFB1c2hlciBzaG91bGQgaW5oZXJpdCBiYWNrZ3JvdW5kIGZyb20gY29udGV4dCAqL1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xufVxuXG5ib2R5LnB1c2hhYmxlID4gLnB1c2hlciB7XG4gIGJhY2tncm91bmQ6IEBwYWdlQmFja2dyb3VuZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaW1tZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5wdXNoYWJsZSA+IC5wdXNoZXI6YWZ0ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZGltbWVyQ29sb3I7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IEBkaW1tZXJUcmFuc2l0aW9uO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgei1pbmRleDogQGRpbW1lckxheWVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zaWRlYmFyLm1lbnUgLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRGltbWVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHVzaGFibGUgPiAucHVzaGVyLmRpbW1lZDphZnRlciB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBbmltYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hbmltYXRpbmcuc2lkZWJhciB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVmlzaWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZpc2libGUuc2lkZWJhciB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi8qIFNoYWRvdyBEaXJlY3Rpb24gKi9cbi51aS5sZWZ0LnZpc2libGUuc2lkZWJhcixcbi51aS5yaWdodC52aXNpYmxlLnNpZGViYXIge1xuICBib3gtc2hhZG93OiBAaG9yaXpvbnRhbEJveFNoYWRvdztcbn1cbi51aS50b3AudmlzaWJsZS5zaWRlYmFyLFxuLnVpLmJvdHRvbS52aXNpYmxlLnNpZGViYXIge1xuICBib3gtc2hhZG93OiBAdmVydGljYWxCb3hTaGFkb3c7XG59XG5cbi8qIFZpc2libGUgT24gTG9hZCAqL1xuLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoQHdpZHRoLCAwLCAwKTtcbn1cbi51aS52aXNpYmxlLnJpZ2h0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLUB3aWR0aCwgMCwgMCk7XG59XG4udWkudmlzaWJsZS50b3Auc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLnRvcC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgQGhlaWdodCwgMCk7XG59XG4udWkudmlzaWJsZS5ib3R0b20uc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLmJvdHRvbS5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLUBoZWlnaHQsIDApO1xufVxuXG4vKiBvcHBvc2l0ZSBzaWRlcyB2aXNpYmxlIGZvcmNlcyBjb250ZW50IG92ZXJsYXkgKi9cbi51aS52aXNpYmxlLmxlZnQuc2lkZWJhciB+IC51aS52aXNpYmxlLnJpZ2h0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAudWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLnB1c2hlcixcbi51aS52aXNpYmxlLnJpZ2h0LnNpZGViYXIgfiAudWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgICBpT1Ncbi0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFdpZHRoXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMZWZ0IC8gUmlnaHQgKi9cbi51aS50aGluLmxlZnQuc2lkZWJhcixcbi51aS50aGluLnJpZ2h0LnNpZGViYXIge1xuICB3aWR0aDogQHRoaW5XaWR0aDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHRoaW5cIl0ubGVmdC5zaWRlYmFyLFxuLnVpW2NsYXNzKj1cInZlcnkgdGhpblwiXS5yaWdodC5zaWRlYmFyIHtcbiAgd2lkdGg6IEB2ZXJ5VGhpbldpZHRoO1xufVxuLnVpLmxlZnQuc2lkZWJhcixcbi51aS5yaWdodC5zaWRlYmFyIHtcbiAgd2lkdGg6IEB3aWR0aDtcbn1cbi51aS53aWRlLmxlZnQuc2lkZWJhcixcbi51aS53aWRlLnJpZ2h0LnNpZGViYXIge1xuICB3aWR0aDogQHdpZGVXaWR0aDtcbn1cbi51aVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ubGVmdC5zaWRlYmFyLFxuLnVpW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5yaWdodC5zaWRlYmFyIHtcbiAgd2lkdGg6IEB2ZXJ5V2lkZVdpZHRoO1xufVxuXG4vKiBMZWZ0IFZpc2libGUgKi9cbi51aS52aXNpYmxlLnRoaW4ubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUudGhpbi5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZChAdGhpbldpZHRoLCAwLCAwKTtcbn1cbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgdGhpblwiXS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHRoaW5cIl0ubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoQHZlcnlUaGluV2lkdGgsIDAsIDApO1xufVxuLnVpLnZpc2libGUud2lkZS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS53aWRlLmxlZnQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKEB3aWRlV2lkdGgsIDAsIDApO1xufVxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB3aWRlXCJdLmxlZnQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZChAdmVyeVdpZGVXaWR0aCwgMCwgMCk7XG59XG5cbi8qIFJpZ2h0IFZpc2libGUgKi9cbi51aS52aXNpYmxlLnRoaW4ucmlnaHQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLnRoaW4ucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC1AdGhpbldpZHRoLCAwLCAwKTtcbn1cbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgdGhpblwiXS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB0aGluXCJdLnJpZ2h0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtQHZlcnlUaGluV2lkdGgsIDAsIDApO1xufVxuLnVpLnZpc2libGUud2lkZS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUud2lkZS5yaWdodC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLUB3aWRlV2lkdGgsIDAsIDApO1xufVxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB3aWRlXCJdLnJpZ2h0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC1AdmVyeVdpZGVXaWR0aCwgMCwgMCk7XG59XG5cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIEFuaW1hdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBPdmVybGF5XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZXQtdXAgKi9cbi51aS5vdmVybGF5LnNpZGViYXIge1xuICB6LWluZGV4OiBAdG9wTGF5ZXI7XG59XG5cbi8qIEluaXRpYWwgKi9cbi51aS5sZWZ0Lm92ZXJsYXkuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuLnVpLnJpZ2h0Lm92ZXJsYXkuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG59XG4udWkudG9wLm92ZXJsYXkuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIC0xMDAlLCAwKTtcbn1cbi51aS5ib3R0b20ub3ZlcmxheS5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMTAwJSwgMCk7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuLmFuaW1hdGluZy51aS5vdmVybGF5LnNpZGViYXIsXG4udWkudmlzaWJsZS5vdmVybGF5LnNpZGViYXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gQGR1cmF0aW9uIEBlYXNpbmc7XG59XG5cbi8qIEVuZCAtIFNpZGViYXIgKi9cbi51aS52aXNpYmxlLmxlZnQub3ZlcmxheS5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCwgMCk7XG59XG4udWkudmlzaWJsZS5yaWdodC5vdmVybGF5LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cbi51aS52aXNpYmxlLnRvcC5vdmVybGF5LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cbi51aS52aXNpYmxlLmJvdHRvbS5vdmVybGF5LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cblxuLyogRW5kIC0gUHVzaGVyICovXG4udWkudmlzaWJsZS5vdmVybGF5LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5vdmVybGF5LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBQdXNoXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBJbml0aWFsICovXG4udWkucHVzaC5zaWRlYmFyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIEBkdXJhdGlvbiBAZWFzaW5nO1xuICB6LWluZGV4OiBAdG9wTGF5ZXI7XG59XG5cbi8qIFNpZGViYXIgLSBJbml0aWFsICovXG4udWkubGVmdC5wdXNoLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbn1cbi51aS5yaWdodC5wdXNoLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xufVxuLnVpLnRvcC5wdXNoLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAtMTAwJSwgMCk7XG59XG4udWkuYm90dG9tLnB1c2guc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDEwMCUsIDApO1xufVxuXG4vKiBFbmQgKi9cbi51aS52aXNpYmxlLnB1c2guc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBVbmNvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBJbml0aWFsICovXG4udWkudW5jb3Zlci5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogQGJvdHRvbUxheWVyO1xufVxuXG4vKiBFbmQgKi9cbi51aS52aXNpYmxlLnVuY292ZXIuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSBAZHVyYXRpb24gQGVhc2luZztcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTbGlkZSBBbG9uZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5pdGlhbCAqL1xuLnVpLnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB6LWluZGV4OiBAYm90dG9tTGF5ZXI7XG59XG5cbi8qIFNpZGViYXIgLSBJbml0aWFsICovXG4udWkubGVmdC5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwLCAwKTtcbn1cbi51aS5yaWdodC5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1MCUsIDAsIDApO1xufVxuLnVpLnRvcC5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNTAlLCAwKTtcbn1cbi51aS5ib3R0b20uc2xpZGUuYWxvbmcuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDUwJSwgMCk7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuLnVpLmFuaW1hdGluZy5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIEBkdXJhdGlvbiBAZWFzaW5nO1xufVxuXG4vKiBFbmQgKi9cbi51aS52aXNpYmxlLnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTbGlkZSBPdXRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEluaXRpYWwgKi9cbi51aS5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIHotaW5kZXg6IEBib3R0b21MYXllcjtcbn1cblxuLyogU2lkZWJhciAtIEluaXRpYWwgKi9cbi51aS5sZWZ0LnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1MCUsIDAsIDApO1xufVxuLnVpLnJpZ2h0LnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwLCAwKTtcbn1cbi51aS50b3Auc2xpZGUub3V0LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCA1MCUsIDApO1xufVxuLnVpLmJvdHRvbS5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIC01MCUsIDApO1xufVxuXG4vKiBBbmltYXRpb24gKi9cbi51aS5hbmltYXRpbmcuc2xpZGUub3V0LnNpZGViYXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gQGR1cmF0aW9uIEBlYXNpbmc7XG59XG5cbi8qIEVuZCAqL1xuLnVpLnZpc2libGUuc2xpZGUub3V0LnNpZGViYXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU2NhbGUgRG93blxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5pdGlhbCAqL1xuLnVpLnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSBAZHVyYXRpb24gQGVhc2luZztcbiAgei1pbmRleDogQHRvcExheWVyO1xufVxuXG4vKiBTaWRlYmFyIC0gSW5pdGlhbCAgKi9cbi51aS5sZWZ0LnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuLnVpLnJpZ2h0LnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG59XG4udWkudG9wLnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIC0xMDAlLCAwKTtcbn1cbi51aS5ib3R0b20uc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMTAwJSwgMCk7XG59XG5cbi8qIFB1c2hlciAtIEluaXRpYWwgKi9cbi51aS5zY2FsZS5kb3duLmxlZnQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA3NSUgNTAlO1xufVxuLnVpLnNjYWxlLmRvd24ucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAyNSUgNTAlO1xufVxuLnVpLnNjYWxlLmRvd24udG9wLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDc1JTtcbn1cbi51aS5zY2FsZS5kb3duLmJvdHRvbS5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAyNSU7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuLnVpLmFuaW1hdGluZy5zY2FsZS5kb3duID4gLnZpc2libGUudWkuc2lkZWJhciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSBAZHVyYXRpb24gQGVhc2luZztcbn1cbi51aS52aXNpYmxlLnNjYWxlLmRvd24uc2lkZWJhciB+IC5wdXNoZXIsXG4udWkuYW5pbWF0aW5nLnNjYWxlLmRvd24uc2lkZWJhciB+IC5wdXNoZXIge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi8qIEVuZCAqL1xuLnVpLnZpc2libGUuc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cbi51aS52aXNpYmxlLnNjYWxlLmRvd24uc2lkZWJhciB+IC5wdXNoZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xufVxuXG4ubG9hZFVJT3ZlcnJpZGVzKCk7XG4iLCIvKiFcbiAqICMgRm9tYW50aWMtVUkgLSBTdGlja3lcbiAqIGh0dHA6Ly9naXRodWIuY29tL2ZvbWFudGljL0ZvbWFudGljLVVJL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVGhlbWVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkB0eXBlICAgIDogJ21vZHVsZSc7XG5AZWxlbWVudCA6ICdzdGlja3knO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGlja3lcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zdGlja3kge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB0cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcbiAgei1pbmRleDogQHpJbmRleDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogQm91bmQgKi9cbi51aS5zdGlja3kuYm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vKiBGaXhlZCAqL1xuLnVpLnN0aWNreS5maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8qIEJvdW5kL0ZpeGVkIFBvc2l0aW9uICovXG4udWkuc3RpY2t5LmJvdW5kLnRvcCxcbi51aS5zdGlja3kuZml4ZWQudG9wIHtcbiAgdG9wOiAwO1xuICBib3R0b206IGF1dG87XG59XG4udWkuc3RpY2t5LmJvdW5kLmJvdHRvbSxcbi51aS5zdGlja3kuZml4ZWQuYm90dG9tIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubmF0aXZlLnN0aWNreSB7XG4gIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTtcbiAgcG9zaXRpb246IC1tb3otc3RpY2t5O1xuICBwb3NpdGlvbjogLW1zLXN0aWNreTtcbiAgcG9zaXRpb246IC1vLXN0aWNreTtcbiAgcG9zaXRpb246IHN0aWNreTtcbn1cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gVGFiXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAndGFiJztcblxuQGltcG9ydCAobXVsdGlwbGUpICcuLi8uLi90aGVtZS5jb25maWcnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBVSSBUYWJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkudGFiIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWIuYWN0aXZlLFxuLnVpLnRhYi5vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFiLmxvYWRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiBAbG9hZGluZ01pbkhlaWdodDtcbn1cbi51aS50YWIubG9hZGluZyAqIHtcbiAgcG9zaXRpb246IEBsb2FkaW5nQ29udGVudFBvc2l0aW9uICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IEBsb2FkaW5nQ29udGVudE9mZnNldCAhaW1wb3J0YW50O1xufVxuXG4udWkudGFiLmxvYWRpbmc6YmVmb3JlLFxuLnVpLnRhYi5sb2FkaW5nLnNlZ21lbnQ6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiBAbG9hZGVyRGlzdGFuY2VGcm9tVG9wO1xuICBsZWZ0OiA1MCU7XG5cbiAgbWFyZ2luOiBAbG9hZGVyTWFyZ2luO1xuICB3aWR0aDogQGxvYWRlclNpemU7XG4gIGhlaWdodDogQGxvYWRlclNpemU7XG5cbiAgYm9yZGVyLXJhZGl1czogQGNpcmN1bGFyUmFkaXVzO1xuICBib3JkZXI6IEBsb2FkZXJMaW5lV2lkdGggc29saWQgQGxvYWRlckZpbGxDb2xvcjtcbn1cbi51aS50YWIubG9hZGluZzphZnRlcixcbi51aS50YWIubG9hZGluZy5zZWdtZW50OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiBAbG9hZGVyRGlzdGFuY2VGcm9tVG9wO1xuICBsZWZ0OiA1MCU7XG5cbiAgbWFyZ2luOiBAbG9hZGVyTWFyZ2luO1xuICB3aWR0aDogQGxvYWRlclNpemU7XG4gIGhlaWdodDogQGxvYWRlclNpemU7XG5cbiAgYW5pbWF0aW9uOiBsb2FkZXIgQGxvYWRlclNwZWVkIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyOiBAbG9hZGVyTGluZVdpZHRoIHNvbGlkIEBsb2FkZXJMaW5lQ29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IEBjaXJjdWxhclJhZGl1cztcblxuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG59XG5cbi5sb2FkVUlPdmVycmlkZXMoKTtcbiIsIi8qIVxuICogIyBGb21hbnRpYy1VSSAtIFRvYXN0XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9mb21hbnRpYy9Gb21hbnRpYy1VSS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AdHlwZSAgICA6ICdtb2R1bGUnO1xuQGVsZW1lbnQgOiAndG9hc3QnO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRvYXN0IGNvbnRhaW5lclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnRvYXN0LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDk5OTk7XG59XG5cbi51aS50b3AucmlnaHQudG9hc3QtY29udGFpbmVyIHtcbiAgICB0b3A6IEB0b2FzdENvbnRhaW5lckRpc3RhbmNlO1xuICAgIHJpZ2h0OiBAdG9hc3RDb250YWluZXJEaXN0YW5jZTtcbiAgICBtYXJnaW4tbGVmdDogQHRvYXN0Q29udGFpbmVyRGlzdGFuY2U7XG59XG5cbi51aS50b3AubGVmdC50b2FzdC1jb250YWluZXIge1xuICAgIHRvcDogQHRvYXN0Q29udGFpbmVyRGlzdGFuY2U7XG4gICAgbGVmdDogQHRvYXN0Q29udGFpbmVyRGlzdGFuY2U7XG4gICAgbWFyZ2luLXJpZ2h0OiBAdG9hc3RDb250YWluZXJEaXN0YW5jZTtcbn1cblxuLnVpLnRvcC5jZW50ZXIudG9hc3QtY29udGFpbmVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgdG9wOiBAdG9hc3RDb250YWluZXJEaXN0YW5jZTtcbn1cblxuLnVpLmJvdHRvbS5yaWdodC50b2FzdC1jb250YWluZXIge1xuICAgIGJvdHRvbTogQHRvYXN0Q29udGFpbmVyRGlzdGFuY2U7XG4gICAgcmlnaHQ6IEB0b2FzdENvbnRhaW5lckRpc3RhbmNlO1xuICAgIG1hcmdpbi1sZWZ0OiBAdG9hc3RDb250YWluZXJEaXN0YW5jZTtcbn1cblxuLnVpLmJvdHRvbS5sZWZ0LnRvYXN0LWNvbnRhaW5lciB7XG4gICAgYm90dG9tOiBAdG9hc3RDb250YWluZXJEaXN0YW5jZTtcbiAgICBsZWZ0OiBAdG9hc3RDb250YWluZXJEaXN0YW5jZTtcbiAgICBtYXJnaW4tcmlnaHQ6IEB0b2FzdENvbnRhaW5lckRpc3RhbmNlO1xufVxuXG4udWkuYm90dG9tLmNlbnRlci50b2FzdC1jb250YWluZXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICBib3R0b206IEB0b2FzdENvbnRhaW5lckRpc3RhbmNlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVG9hc3RcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi50b2FzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogQGRlZmF1bHRCb3JkZXJSYWRpdXM7XG4gICAgcGFkZGluZzogQHRvYXN0UGFkZGluZztcbiAgICBtYXJnaW46IEB0b2FzdE1hcmdpbjtcbiAgICBjb2xvcjogQHRvYXN0VGV4dENvbG9yO1xufVxuXG4uZmxvYXRpbmcudG9hc3QsXG4uaG92ZXJmbG9hdGluZy50b2FzdDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IEBmbG9hdGluZ1NoYWRvdztcbn1cblxuLmhvdmVyZmxvYXRpbmcubWVzc2FnZTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCBpbnNldCwgQGZsb2F0aW5nU2hhZG93O1xufVxuXG4uY2VudGVyLnRvYXN0LWNvbnRhaW5lciAudG9hc3QtYm94LFxuLnJpZ2h0LnRvYXN0LWNvbnRhaW5lciAudG9hc3QtYm94IHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNlbnRlci50b2FzdC1jb250YWluZXIgLnRvYXN0LWJveCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4udmlzaWJsZS50b2FzdC1ib3gsXG4uYW5pbWF0aW5nLnRvYXN0LWJveCxcbi50b2FzdC1ib3gge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG59XG5cblxuLnRvYXN0LWNvbnRhaW5lciAuY29tcGFjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogQHRvYXN0V2lkdGg7XG59XG5cbi50b2FzdC1jb250YWluZXIgLm1lc3NhZ2UsXG4udG9hc3Q6aG92ZXIge1xuICAgIG9wYWNpdHk6IEB0b2FzdE9wYWNpdHlPbkhvdmVyO1xuICAgIGN1cnNvcjogQHRvYXN0Q3Vyc29yT25Ib3Zlcjtcbn1cblxuXG4uaWNvbi50b2FzdCAuY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogQHRvYXN0SWNvbkNvbnRlbnRQYWRkaW5nO1xufVxuXG4udG9hc3QgPiAuY29udGVudCA+IC5oZWFkZXIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uaW5mby50b2FzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHRvYXN0SW5mb0NvbG9yO1xufVxuXG4ud2FybmluZy50b2FzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHRvYXN0V2FybmluZ0NvbG9yO1xufVxuXG4uc3VjY2Vzcy50b2FzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHRvYXN0U3VjY2Vzc0NvbG9yO1xufVxuXG4uZXJyb3IudG9hc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB0b2FzdEVycm9yQ29sb3I7XG59XG5cbi50b2FzdC1ib3ggLmluZm8uYXR0YWNoZWQucHJvZ3Jlc3MgLmJhciB7XG4gICAgYmFja2dyb3VuZDogQHRvYXN0SW5mb1Byb2dyZXNzQ29sb3IgIWltcG9ydGFudDtcbn1cblxuLnRvYXN0LWJveCAud2FybmluZy5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiBAdG9hc3RXYXJuaW5nUHJvZ3Jlc3NDb2xvciAhaW1wb3J0YW50O1xufVxuXG4udG9hc3QtYm94IC5zdWNjZXNzLmF0dGFjaGVkLnByb2dyZXNzIC5iYXIge1xuICAgIGJhY2tncm91bmQ6IEB0b2FzdFN1Y2Nlc3NQcm9ncmVzc0NvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi50b2FzdC1ib3ggLmVycm9yLmF0dGFjaGVkLnByb2dyZXNzIC5iYXIge1xuICAgIGJhY2tncm91bmQ6IEB0b2FzdEVycm9yUHJvZ3Jlc3NDb2xvciAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0gKi9cblxuZWFjaChAY29sb3JzLCB7XG4gIEBjb2xvcjogcmVwbGFjZShAa2V5LCAnQCcsICcnKTtcbiAgQGM6IEBjb2xvcnNbQEBjb2xvcl1bY29sb3JdO1xuICBAbDogQGNvbG9yc1tAQGNvbG9yXVtsaWdodF07XG5cbiAgLkB7Y29sb3J9LnRvYXN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYztcbiAgfVxuICAuaW52ZXJ0ZWQuQHtjb2xvcn0udG9hc3QsXG4gIC50b2FzdC1ib3ggLmludmVydGVkLkB7Y29sb3J9LmF0dGFjaGVkLnByb2dyZXNzIC5iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBsO1xuICB9XG59KVxuXG4uaW52ZXJ0ZWQudG9hc3Qge1xuICBjb2xvcjogQHRvYXN0SW52ZXJ0ZWRUZXh0Q29sb3I7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5pY29uLnRvYXN0ID4gLmljb246bm90KC5jbG9zZSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogQHRvYXN0SWNvblZlcnRpY2FsQWxpZ247XG4gICAgZm9udC1zaXplOiBAdG9hc3RJY29uRm9udFNpemU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG5cblxuLmljb24udG9hc3QgPiAuY29udGVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBAdG9hc3RDb250ZW50VmVydGljYWxBbGlnbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS1cbiAgIFByb2dyZXNzIEJhclxuIC0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udG9hc3QtYm94IC5hdHRhY2hlZC5wcm9ncmVzcyAuYmFyIHtcbiAgICBtaW4td2lkdGg6IDA7XG59XG5cbi50b2FzdC1ib3ggLmFjdGl2ZS5wcm9ncmVzcyAuYmFyOmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBwcm9ncmVzcy1hY3RpdmUgMnMgQGRlZmF1bHRFYXNpbmcgaW5maW5pdGUgIWltcG9ydGFudDtcbn1cblxuLnRvYXN0LWJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogQHRvYXN0TWFyZ2luQm90dG9tO1xufVxuXG4udG9hc3QtYm94IC50b2FzdCxcbi50b2FzdC1ib3ggLm1lc3NhZ2Uge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udG9hc3QtYm94IC5hdHRhY2hlZC5wcm9ncmVzc3tcbiAgICB6LWluZGV4OjE7XG59XG5cbi50b2FzdC1ib3ggLmJvdHRvbS5hdHRhY2hlZC5wcm9ncmVzcyB7XG4gIG1hcmdpbjogLTNweCAwIEB0b2FzdE1hcmdpbkJvdHRvbTtcbn1cblxuLnRvYXN0LWJveCAudG9wLmF0dGFjaGVkLnByb2dyZXNzIHtcbiAgbWFyZ2luOiBAdG9hc3RNYXJnaW5Cb3R0b20gMCAtM3B4O1xufVxuXG4vKiAtLS0tLS0tLVxuIENsb3NlIEljb25cbiAtLS0tLS0tLS0tLSovXG5cbi50b2FzdC1ib3ggLm1lc3NhZ2UgPiAuY2xvc2UuaWNvbiB7XG4gIHRvcDogQHRvYXN0Q2xvc2VUb3BEaXN0YW5jZTtcbiAgcmlnaHQ6IEB0b2FzdENsb3NlUmlnaHREaXN0YW5jZTtcbn1cblxuXG4udG9hc3QtYm94IC50b2FzdD4uY2xvc2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIHRvcDogQHRvYXN0Q2xvc2VUb3BEaXN0YW5jZTtcbiAgcmlnaHQ6IEB0b2FzdENsb3NlUmlnaHREaXN0YW5jZTtcbiAgb3BhY2l0eTogQHRvYXN0Q2xvc2VPcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBAdG9hc3RDbG9zZVRyYW5zaXRpb247XG59XG5cbi50b2FzdC1ib3ggLnRvYXN0ID4gLmNsb3NlLmljb246aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuIiwiLyohXG4gKiAjIEZvbWFudGljLVVJIC0gVHJhbnNpdGlvblxuICogaHR0cDovL2dpdGh1Yi5jb20vZm9tYW50aWMvRm9tYW50aWMtVUkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQHR5cGUgICAgOiAnbW9kdWxlJztcbkBlbGVtZW50IDogJ3RyYW5zaXRpb24nO1xuXG5AaW1wb3J0IChtdWx0aXBsZSkgJy4uLy4uL3RoZW1lLmNvbmZpZyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVHJhbnNpdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiBAdHJhbnNpdGlvbkRlZmF1bHREdXJhdGlvbjtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRyYW5zaXRpb25EZWZhdWx0RWFzaW5nO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBAdHJhbnNpdGlvbkRlZmF1bHRGaWxsO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbi8qIEFuaW1hdGluZyAqL1xuLmFuaW1hdGluZy50cmFuc2l0aW9uIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogQGJhY2tmYWNlVmlzaWJpbGl0eTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBMb2FkaW5nICovXG4ubG9hZGluZy50cmFuc2l0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5OXB4O1xuICBsZWZ0OiAtOTk5OTlweDtcbn1cblxuLyogSGlkZGVuICovXG4uaGlkZGVuLnRyYW5zaXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIFZpc2libGUgKi9cbi52aXNpYmxlLnRyYW5zaXRpb24ge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4vKiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogQGJhY2tmYWNlVmlzaWJpbGl0eTtcbiAgdHJhbnNmb3JtOiBAdXNlM0RBY2NlbGVyYXRpb247Ki9cbn1cblxuLyogRGlzYWJsZWQgKi9cbi5kaXNhYmxlZC50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4ubG9vcGluZy50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cblxuLmxvYWRVSU92ZXJyaWRlcygpO1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBUcmFuc2l0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLypcbiAgU29tZSB0cmFuc2l0aW9ucyBhZGFwdGVkIGZyb20gQW5pbWF0ZSBDU1NcbiAgaHR0cHM6Ly9naXRodWIuY29tL2RhbmVkZW4vYW5pbWF0ZS5jc3NcblxuICBBZGRpdGlvbmFsIHRyYW5zaXRpb25zIGFkYXB0ZWQgZnJvbSBHbGlkZVxuICBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlXG4qL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJyb3dzZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnRyYW5zaXRpb24uYnJvd3NlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbn1cbi50cmFuc2l0aW9uLmJyb3dzZS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBicm93c2VJbjtcbn1cbi50cmFuc2l0aW9uLmJyb3dzZS5vdXQsXG4udHJhbnNpdGlvbi5icm93c2UubGVmdC5vdXQge1xuICBhbmltYXRpb24tbmFtZTogYnJvd3NlT3V0TGVmdDtcbn1cbi50cmFuc2l0aW9uLmJyb3dzZS5yaWdodC5vdXQge1xuICBhbmltYXRpb24tbmFtZTogYnJvd3NlT3V0UmlnaHQ7XG59XG5cbi8qIEluICovXG5Aa2V5ZnJhbWVzIGJyb3dzZUluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbiAgMTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSkgdHJhbnNsYXRlWigwcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogOTk5O1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgfVxufVxuXG4vKiBPdXQgKi9cbkBrZXlmcmFtZXMgYnJvd3NlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cbiAgNTAlIHtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwNSUpIHJvdGF0ZVkoMzVkZWcpIHJvdGF0ZVgoMTBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICB9XG4gIDgwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJyb3dzZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpIHJvdGF0ZVkoMzVkZWcpIHJvdGF0ZVgoMTBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICB9XG4gIDgwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERyb3Bcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5kcm9wLnRyYW5zaXRpb24ge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICBhbmltYXRpb24tZHVyYXRpb246IDQwMG1zO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zNCwgMS42MSwgMC43LCAxKTtcbn1cbi5kcm9wLnRyYW5zaXRpb24uaW4ge1xuICBhbmltYXRpb24tbmFtZTogZHJvcEluO1xufVxuLmRyb3AudHJhbnNpdGlvbi5vdXQge1xuICBhbmltYXRpb24tbmFtZTogZHJvcE91dDtcbn1cblxuLyogRHJvcCAqL1xuQGtleWZyYW1lcyBkcm9wSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQGtleWZyYW1lcyBkcm9wT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmFkZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnRyYW5zaXRpb24uZmFkZS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIHVwXCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBkb3duXCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIGxlZnRcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgcmlnaHRcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG59XG5cbi50cmFuc2l0aW9uLmZhZGUub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIHVwXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIGRvd25cIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBsZWZ0XCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgcmlnaHRcIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbn1cblxuLyogSW4gKi9cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuXG4vKiBPdXQgKi9cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1JSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01JSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUlKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbGlwc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZsaXAudHJhbnNpdGlvbi5pbixcbi5mbGlwLnRyYW5zaXRpb24ub3V0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA2MDBtcztcbn1cbi5ob3Jpem9udGFsLmZsaXAudHJhbnNpdGlvbi5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBob3Jpem9udGFsRmxpcEluO1xufVxuLmhvcml6b250YWwuZmxpcC50cmFuc2l0aW9uLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBob3Jpem9udGFsRmxpcE91dDtcbn1cbi52ZXJ0aWNhbC5mbGlwLnRyYW5zaXRpb24uaW4ge1xuICBhbmltYXRpb24tbmFtZTogdmVydGljYWxGbGlwSW47XG59XG4udmVydGljYWwuZmxpcC50cmFuc2l0aW9uLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB2ZXJ0aWNhbEZsaXBPdXQ7XG59XG5cbi8qIEluICovXG5Aa2V5ZnJhbWVzIGhvcml6b250YWxGbGlwSW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgdmVydGljYWxGbGlwSW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLyogT3V0ICovXG5Aa2V5ZnJhbWVzIGhvcml6b250YWxGbGlwT3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgdmVydGljYWxGbGlwT3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNjYWxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4uc2NhbGUudHJhbnNpdGlvbi5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzY2FsZUluO1xufVxuLnNjYWxlLnRyYW5zaXRpb24ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNjYWxlT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNjYWxlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi8qIE91dCAqL1xuQGtleWZyYW1lcyBzY2FsZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBGbHlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIElud2FyZCAqL1xuLnRyYW5zaXRpb24uZmx5IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjZzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbn1cbi50cmFuc2l0aW9uLmZseS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlJbjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZseSB1cFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlJblVwO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IGRvd25cIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5Eb3duO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IGxlZnRcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5MZWZ0O1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IHJpZ2h0XCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseUluUmlnaHQ7XG59XG5cbi8qIE91dHdhcmQgKi9cbi50cmFuc2l0aW9uLmZseS5vdXQge1xuICBhbmltYXRpb24tbmFtZTogZmx5T3V0O1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IHVwXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXRVcDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZseSBkb3duXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXREb3duO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IGxlZnRcIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseU91dExlZnQ7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgcmlnaHRcIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseU91dFJpZ2h0O1xufVxuXG4vKiBJbiAqL1xuQGtleWZyYW1lcyBmbHlJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgfVxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZseUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDE1MDBweCwgMCk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgfVxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbHlJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNTAwcHgsIDApO1xuICB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gIH1cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZseUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTUwMHB4LCAwLCAwKTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XG4gIH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB9XG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmx5SW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1MDBweCwgMCwgMCk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XG4gIH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLyogT3V0ICovXG5Aa2V5ZnJhbWVzIGZseU91dCB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xuICB9XG4gIDUwJSwgNTUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbHlPdXRVcCB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgfVxuICA0MCUsIDQ1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbHlPdXREb3duIHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuICA0MCUsIDQ1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbHlPdXRSaWdodCB7XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbHlPdXRMZWZ0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2xpZGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLnNsaWRlLmluLFxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgZG93blwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluWTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHVwXCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5ZO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gY2VudGVyO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgbGVmdFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluWDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgcmlnaHRcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xufVxuXG4udHJhbnNpdGlvbi5zbGlkZS5vdXQsXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzbGlkZSBkb3duXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzbGlkZSB1cFwiXS5vdXQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRZO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gY2VudGVyO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgbGVmdFwiXS5vdXQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRYO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzbGlkZSByaWdodFwiXS5vdXQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRYO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbn1cblxuLyogSW4gKi9cbkBrZXlmcmFtZXMgc2xpZGVJblkge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlSW5YIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuXG4vKiBPdXQgKi9cbkBrZXlmcmFtZXMgc2xpZGVPdXRZIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBzbGlkZU91dFgge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB9XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTd2luZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnRyYW5zaXRpb24uc3dpbmcge1xuICBhbmltYXRpb24tZHVyYXRpb246IDgwMG1zO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBkb3duXCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5YO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xufVxuLnRyYW5zaXRpb25bY2xhc3MqPVwic3dpbmcgdXBcIl0uaW4ge1xuICBhbmltYXRpb24tbmFtZTogc3dpbmdJblg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBsZWZ0XCJdLmluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5ZO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyByaWdodFwiXS5pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ0luWTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG59XG5cbi50cmFuc2l0aW9uLnN3aW5nLm91dCxcbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIGRvd25cIl0ub3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIHVwXCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG59XG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBsZWZ0XCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbn1cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIHJpZ2h0XCJdLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xufVxuXG4vKiBJbiAqL1xuQGtleWZyYW1lcyBzd2luZ0luWCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDE1ZGVnKTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC03LjVkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3aW5nSW5ZIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTE3LjVkZWcpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoNy41ZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgwZGVnKTtcbiAgfVxufVxuXG4vKiBPdXQgKi9cbkBrZXlmcmFtZXMgc3dpbmdPdXRYIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTcuNWRlZyk7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgxNy41ZGVnKTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBzd2luZ091dFkge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSg3LjVkZWcpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTEwZGVnKTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFpvb21cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLnpvb20uaW4ge1xuICBhbmltYXRpb24tbmFtZTogem9vbUluO1xufVxuLnRyYW5zaXRpb24uem9vbS5vdXQge1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dDtcbn1cbkBrZXlmcmFtZXMgem9vbUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgem9vbU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBTdGF0aWMgQW5pbWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEVtcGhhc2lzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi5mbGFzaC50cmFuc2l0aW9uIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcztcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xufVxuLnNoYWtlLnRyYW5zaXRpb24ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICBhbmltYXRpb24tbmFtZTogc2hha2U7XG59XG4uYm91bmNlLnRyYW5zaXRpb24ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlO1xufVxuLnRhZGEudHJhbnNpdGlvbiB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIGFuaW1hdGlvbi1uYW1lOiB0YWRhO1xufVxuLnB1bHNlLnRyYW5zaXRpb24ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xuICBhbmltYXRpb24tbmFtZTogcHVsc2U7XG59XG4uamlnZ2xlLnRyYW5zaXRpb24ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICBhbmltYXRpb24tbmFtZTogamlnZ2xlO1xufVxuLnRyYW5zaXRpb24uZ2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjAwMG1zO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOTAsIDEuMDAwLCAwLjIyMCwgMS4wMDApO1xufVxuLnRyYW5zaXRpb24uZ2xvdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBnbG93O1xufVxuXG5cbi8qIEZsYXNoICovXG5Aa2V5ZnJhbWVzIGZsYXNoIHtcbiAgMCUsIDUwJSwgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAyNSUsIDc1JSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vKiBTaGFrZSAqL1xuQGtleWZyYW1lcyBzaGFrZSB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cbiAgMjAlLCA0MCUsIDYwJSwgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbn1cblxuLyogQm91bmNlICovXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIDAlLCAyMCUsIDUwJSwgODAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTtcbiAgfVxufVxuXG4vKiBUYWRhICovXG5Aa2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMCUsIDIwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cbiAgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xuICB9XG4gIDQwJSwgNjAlLCA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDApO1xuICB9XG59XG5cbi8qIFB1bHNlICovXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbn1cblxuLyogSmlnZ2xlICovXG5Aa2V5ZnJhbWVzIGppZ2dsZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gIH1cbiAgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcbiAgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuXG4vKiBHbG93ICovXG5Aa2V5ZnJhbWVzIGdsb3cge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRkNGRDtcbiAgfVxuICAzMCUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY2Q0Q7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRkNGRDtcbiAgfVxufVxuXG4iLCIvKiBGT05UIFBBVEhcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgc3JjOiB1cmwoJ0B7ZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LmVvdD92PUB7ZmEtdmVyc2lvbn0nKTtcbiAgc3JjOiB1cmwoJ0B7ZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LmVvdD8jaWVmaXgmdj1Ae2ZhLXZlcnNpb259JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnQHtmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZjI/dj1Ae2ZhLXZlcnNpb259JykgZm9ybWF0KCd3b2ZmMicpLFxuICAgIHVybCgnQHtmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PUB7ZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICB1cmwoJ0B7ZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LnR0Zj92PUB7ZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCdAe2ZhLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC5zdmc/dj1Ae2ZhLXZlcnNpb259I2ZvbnRhd2Vzb21lcmVndWxhcicpIGZvcm1hdCgnc3ZnJyk7XG4gIC8vIHNyYzogdXJsKCdAe2ZhLWZvbnQtcGF0aH0vRm9udEF3ZXNvbWUub3RmJykgZm9ybWF0KCdvcGVudHlwZScpOyAvLyB1c2VkIHdoZW4gZGV2ZWxvcGluZyBmb250c1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4iLCIvLyBCYXNlIENsYXNzIERlZmluaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLkB7ZmEtY3NzLXByZWZpeH0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIEBmYS1mb250LXNpemUtYmFzZS9AZmEtbGluZS1oZWlnaHQtYmFzZSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cbiIsIi8vIEljb24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyogbWFrZXMgdGhlIGZvbnQgMzMlIGxhcmdlciByZWxhdGl2ZSB0byB0aGUgaWNvbiBjb250YWluZXIgKi9cbi5Ae2ZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgZm9udC1zaXplOiAoNGVtIC8gMyk7XG4gIGxpbmUtaGVpZ2h0OiAoM2VtIC8gNCk7XG4gIHZlcnRpY2FsLWFsaWduOiAtMTUlO1xufVxuLkB7ZmEtY3NzLXByZWZpeH0tMnggeyBmb250LXNpemU6IDJlbTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tM3ggeyBmb250LXNpemU6IDNlbTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tNHggeyBmb250LXNpemU6IDRlbTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tNXggeyBmb250LXNpemU6IDVlbTsgfVxuIiwiLy8gRml4ZWQgV2lkdGggSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZ3IHtcbiAgd2lkdGg6ICgxOGVtIC8gMTQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIvLyBMaXN0IEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5Ae2ZhLWNzcy1wcmVmaXh9LXVsIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogQGZhLWxpLXdpZHRoO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gID4gbGkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbn1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWxpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtQGZhLWxpLXdpZHRoO1xuICB3aWR0aDogQGZhLWxpLXdpZHRoO1xuICB0b3A6ICgyZW0gLyAxNCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJi5Ae2ZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgICBsZWZ0OiAoLUBmYS1saS13aWR0aCArICg0ZW0gLyAxNCkpO1xuICB9XG59XG4iLCIvLyBCb3JkZXJlZCAmIFB1bGxlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uQHtmYS1jc3MtcHJlZml4fS1ib3JkZXIge1xuICBwYWRkaW5nOiAuMmVtIC4yNWVtIC4xNWVtO1xuICBib3JkZXI6IHNvbGlkIC4wOGVtIEBmYS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IC4xZW07XG59XG5cbi5Ae2ZhLWNzcy1wcmVmaXh9LXB1bGwtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5Ae2ZhLWNzcy1wcmVmaXh9IHtcbiAgJi5Ae2ZhLWNzcy1wcmVmaXh9LXB1bGwtbGVmdCB7IG1hcmdpbi1yaWdodDogLjNlbTsgfVxuICAmLkB7ZmEtY3NzLXByZWZpeH0tcHVsbC1yaWdodCB7IG1hcmdpbi1sZWZ0OiAuM2VtOyB9XG59XG5cbi8qIERlcHJlY2F0ZWQgYXMgb2YgNC40LjAgKi9cbi5wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG4ucHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cblxuLkB7ZmEtY3NzLXByZWZpeH0ge1xuICAmLnB1bGwtbGVmdCB7IG1hcmdpbi1yaWdodDogLjNlbTsgfVxuICAmLnB1bGwtcmlnaHQgeyBtYXJnaW4tbGVmdDogLjNlbTsgfVxufVxuIiwiLy8gQW5pbWF0ZWQgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNwaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuLkB7ZmEtY3NzLXByZWZpeH0tcHVsc2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTtcbiAgICAgICAgICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuIiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZmEtaWNvbigpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCBAZmEtZm9udC1zaXplLWJhc2UvQGZhLWxpbmUtaGVpZ2h0LWJhc2UgRm9udEF3ZXNvbWU7IC8vIHNob3J0ZW5pbmcgZm9udCBkZWNsYXJhdGlvblxuICBmb250LXNpemU6IGluaGVyaXQ7IC8vIGNhbid0IGhhdmUgZm9udC1zaXplIGluaGVyaXQgb24gbGluZSBhYm92ZSwgc28gbmVlZCB0byBvdmVycmlkZVxuICB0ZXh0LXJlbmRlcmluZzogYXV0bzsgLy8gb3B0aW1pemVsZWdpYmlsaXR5IHRocm93cyB0aGluZ3Mgb2ZmICMxMDk0XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG59XG5cbi5mYS1pY29uLXJvdGF0ZShAZGVncmVlcywgQHJvdGF0aW9uKSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249QHtyb3RhdGlvbn0pXCI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG59XG5cbi5mYS1pY29uLWZsaXAoQGhvcml6LCBAdmVydCwgQHJvdGF0aW9uKSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249QHtyb3RhdGlvbn0sIG1pcnJvcj0xKVwiO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoQGhvcml6LCBAdmVydCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZShAaG9yaXosIEB2ZXJ0KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKEBob3JpeiwgQHZlcnQpO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzLiBBIGxhIEJvb3RzdHJhcCA0LlxuLy9cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuXG4uc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLnNyLW9ubHktZm9jdXNhYmxlKCkge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFJvdGF0ZWQgJiBGbGlwcGVkIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5Ae2ZhLWNzcy1wcmVmaXh9LXJvdGF0ZS05MCAgeyAuZmEtaWNvbi1yb3RhdGUoOTBkZWcsIDEpOyAgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcm90YXRlLTE4MCB7IC5mYS1pY29uLXJvdGF0ZSgxODBkZWcsIDIpOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yb3RhdGUtMjcwIHsgLmZhLWljb24tcm90YXRlKDI3MGRlZywgMyk7IH1cblxuLkB7ZmEtY3NzLXByZWZpeH0tZmxpcC1ob3Jpem9udGFsIHsgLmZhLWljb24tZmxpcCgtMSwgMSwgMCk7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwgICB7IC5mYS1pY29uLWZsaXAoMSwgLTEsIDIpOyB9XG5cbi8vIEhvb2sgZm9yIElFOC05XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbjpyb290IC5Ae2ZhLWNzcy1wcmVmaXh9LXJvdGF0ZS05MCxcbjpyb290IC5Ae2ZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0xODAsXG46cm9vdCAuQHtmYS1jc3MtcHJlZml4fS1yb3RhdGUtMjcwLFxuOnJvb3QgLkB7ZmEtY3NzLXByZWZpeH0tZmxpcC1ob3Jpem9udGFsLFxuOnJvb3QgLkB7ZmEtY3NzLXByZWZpeH0tZmxpcC12ZXJ0aWNhbCB7XG4gIGZpbHRlcjogbm9uZTtcbn1cbiIsIi8vIFN0YWNrZWQgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLkB7ZmEtY3NzLXByZWZpeH0tc3RhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uQHtmYS1jc3MtcHJlZml4fS1zdGFjay0xeCwgLkB7ZmEtY3NzLXByZWZpeH0tc3RhY2stMngge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uQHtmYS1jc3MtcHJlZml4fS1zdGFjay0xeCB7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7IGZvbnQtc2l6ZTogMmVtOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1pbnZlcnNlIHsgY29sb3I6IEBmYS1pbnZlcnNlOyB9XG4iLCIvKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbiAgIHJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG5cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZ2xhc3M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW11c2ljOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbXVzaWM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNlYXJjaDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWVudmVsb3BlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaGVhcnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN0YXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdGFyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zdGFyLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdGFyLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXVzZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci11c2VyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1maWxtOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsbTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGgtbGFyZ2U6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aC1sYXJnZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGg6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGgtbGlzdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRoLWxpc3Q7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2hlY2s7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXJlbW92ZTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1jbG9zZTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS10aW1lczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRpbWVzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zZWFyY2gtcGx1czpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNlYXJjaC1wbHVzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zZWFyY2gtbWludXM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zZWFyY2gtbWludXM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBvd2VyLW9mZjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXBvd2VyLW9mZjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2lnbmFsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2lnbmFsOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1nZWFyOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWNvZzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNvZzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdHJhc2gtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRyYXNoLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhvbWU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ob21lOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1maWxlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1maWxlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNsb2NrLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jbG9jay1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcm9hZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1kb3dubG9hZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFycm93LWNpcmNsZS1vLWRvd247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYXJyb3ctY2lyY2xlLW8tdXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaW5ib3g7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBsYXktY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wbGF5LWNpcmNsZS1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yb3RhdGUtcmlnaHQ6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tcmVwZWF0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcmVwZWF0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yZWZyZXNoOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcmVmcmVzaDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbGlzdC1hbHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1saXN0LWFsdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbG9jazpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWxvY2s7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZsYWc6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mbGFnOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1oZWFkcGhvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaGVhZHBob25lczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdm9sdW1lLW9mZjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXZvbHVtZS1vZmY7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZvbHVtZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdm9sdW1lLWRvd247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZvbHVtZS11cDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXZvbHVtZS11cDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcXJjb2RlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1iYXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYmFyY29kZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGFnOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGFnOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGFnczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYm9vazpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJvb2s7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJvb2ttYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYm9va21hcms7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXByaW50OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcHJpbnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNhbWVyYTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZm9udDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZvbnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJvbGQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ib2xkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1pdGFsaWM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1pdGFsaWM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRleHQtaGVpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGV4dC1oZWlnaHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRleHQtd2lkdGg6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10ZXh0LXdpZHRoOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hbGlnbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYWxpZ24tbGVmdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYWxpZ24tY2VudGVyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYWxpZ24tY2VudGVyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFsaWduLXJpZ2h0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hbGlnbi1qdXN0aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYWxpZ24tanVzdGlmeTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbGlzdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWxpc3Q7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWRlZGVudDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1vdXRkZW50OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItb3V0ZGVudDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taW5kZW50OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaW5kZW50OyB9XG4uQHtmYS1jc3MtcHJlZml4fS12aWRlby1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci12aWRlby1jYW1lcmE7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBob3RvOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWltYWdlOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXBpY3R1cmUtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXBpY3R1cmUtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGVuY2lsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGVuY2lsOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tYXAtbWFya2VyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWFwLW1hcmtlcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYWRqdXN0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYWRqdXN0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS10aW50OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGludDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZWRpdDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1wZW5jaWwtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wZW5jaWwtc3F1YXJlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNoYXJlLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2hhcmUtc3F1YXJlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNoZWNrLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2hlY2stc3F1YXJlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFycm93czpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFycm93czsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3RlcC1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN0ZXAtYmFja3dhcmQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZhc3QtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mYXN0LWJhY2t3YXJkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJhY2t3YXJkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGxheTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGF1c2U6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wYXVzZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3RvcDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN0b3A7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mb3J3YXJkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mYXN0LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mYXN0LWZvcndhcmQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN0ZXAtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN0ZXAtZm9yd2FyZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZWplY3Q6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1lamVjdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2hldnJvbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2hldnJvbi1sZWZ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2hldnJvbi1yaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGx1cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wbHVzLWNpcmNsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbWludXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWludXMtY2lyY2xlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10aW1lcy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aW1lcy1jaXJjbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNoZWNrLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNoZWNrLWNpcmNsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcXVlc3Rpb24tY2lyY2xlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1pbmZvLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWluZm8tY2lyY2xlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jcm9zc2hhaXJzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY3Jvc3NoYWlyczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGltZXMtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aW1lcy1jaXJjbGUtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2hlY2stY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jaGVjay1jaXJjbGUtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmFuOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYmFuOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYXJyb3ctbGVmdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXJyb3ctcmlnaHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hcnJvdy1yaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXJyb3ctdXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hcnJvdy11cDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFycm93LWRvd247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1haWwtZm9yd2FyZDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1zaGFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNoYXJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1leHBhbmQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1leHBhbmQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNvbXByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29tcHJlc3M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBsdXM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wbHVzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1taW51czpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1pbnVzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFzdGVyaXNrOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1leGNsYW1hdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1leGNsYW1hdGlvbi1jaXJjbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdpZnQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1naWZ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1sZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGVhZjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmlyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZpcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWV5ZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWV5ZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZXllLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZXllLXNsYXNoOyB9XG4uQHtmYS1jc3MtcHJlZml4fS13YXJuaW5nOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZXhjbGFtYXRpb24tdHJpYW5nbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGxhbmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2FsZW5kYXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXJhbmRvbTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXJhbmRvbTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNvbW1lbnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1hZ25ldDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1hZ25ldDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2hldnJvbi11cDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNoZXZyb24tdXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNoZXZyb24tZG93bjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNoZXZyb24tZG93bjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcmV0d2VldDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXJldHdlZXQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWNhcnQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zaG9wcGluZy1jYXJ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mb2xkZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZvbGRlci1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZm9sZGVyLW9wZW47IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFycm93cy12OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYXJyb3dzLXY7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFycm93cy1oOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYXJyb3dzLWg7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJhci1jaGFydC1vOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWJhci1jaGFydDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJhci1jaGFydDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdHdpdHRlci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10d2l0dGVyLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmFjZWJvb2stc3F1YXJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYW1lcmEtcmV0cm86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYW1lcmEtcmV0cm87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWtleTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWtleTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ2VhcnM6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tY29nczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNvZ3M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29tbWVudHM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRodW1icy1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGh1bWJzLW8tdXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRodW1icy1vLWRvd246YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aHVtYnMtby1kb3duOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGY6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdGFyLWhhbGY7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhlYXJ0LW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oZWFydC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zaWduLW91dDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNpZ24tb3V0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1saW5rZWRpbi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1saW5rZWRpbi1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRodW1iLXRhY2s6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aHVtYi10YWNrOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1leHRlcm5hbC1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZXh0ZXJuYWwtbGluazsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2lnbi1pbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNpZ24taW47IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRyb3BoeTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRyb3BoeTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ2l0aHViLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdpdGh1Yi1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVwbG9hZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbGVtb24tbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWxlbW9uLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGhvbmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3F1YXJlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJvb2ttYXJrLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ib29rbWFyay1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1waG9uZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1waG9uZS1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXR3aXR0ZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10d2l0dGVyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1mOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmFjZWJvb2s7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdpdGh1YjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdW5sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdW5sb2NrOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jcmVkaXQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNyZWRpdC1jYXJkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mZWVkOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXJzczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXJzczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taGRkLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oZGQtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYnVsbGhvcm46YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1idWxsaG9ybjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmVsbDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJlbGw7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNlcnRpZmljYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2VydGlmaWNhdGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhhbmQtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWhhbmQtby1yaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taGFuZC1vLWxlZnQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oYW5kLW8tbGVmdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taGFuZC1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaGFuZC1vLXVwOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1oYW5kLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWhhbmQtby1kb3duOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFycm93LWNpcmNsZS1sZWZ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hcnJvdy1jaXJjbGUtcmlnaHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFycm93LWNpcmNsZS11cDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLWRvd246YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ2xvYmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1nbG9iZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0td3JlbmNoOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItd3JlbmNoOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10YXNrczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRhc2tzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1maWx0ZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1maWx0ZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJyaWVmY2FzZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJyaWVmY2FzZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXJyb3dzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFycm93cy1hbHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdyb3VwOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXVzZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdXNlcnM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNoYWluOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWxpbms6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1saW5rOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNsb3VkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mbGFzazpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZsYXNrOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jdXQ6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tc2Npc3NvcnM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zY2lzc29yczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY29weTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1maWxlcy1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsZXMtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGFwZXJjbGlwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGFwZXJjbGlwOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zYXZlOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWZsb3BweS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmxvcHB5LW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbmF2aWNvbjpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1yZW9yZGVyOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWJhcnM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1iYXJzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1saXN0LXVsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGlzdC11bDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbGlzdC1vbDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWxpc3Qtb2w7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN0cmlrZXRocm91Z2g6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdHJpa2V0aHJvdWdoOyB9XG4uQHtmYS1jc3MtcHJlZml4fS11bmRlcmxpbmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci11bmRlcmxpbmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRhYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGFibGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1hZ2ljOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWFnaWM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRydWNrOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdHJ1Y2s7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXBpbnRlcmVzdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXBpbnRlcmVzdC1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdvb2dsZS1wbHVzLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1nb29nbGUtcGx1czsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbW9uZXk6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tb25leTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2FyZXQtZG93bjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNhcmV0LWRvd247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNhcmV0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2FyZXQtdXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNhcmV0LWxlZnQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYXJldC1sZWZ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYXJldC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNhcmV0LXJpZ2h0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jb2x1bW5zOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29sdW1uczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdW5zb3J0ZWQ6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tc29ydDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNvcnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNvcnQtZG93bjpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1zb3J0LWRlc2M6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zb3J0LWRlc2M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNvcnQtdXA6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tc29ydC1hc2M6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zb3J0LWFzYzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZW52ZWxvcGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1lbnZlbG9wZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbGlua2VkaW46YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1saW5rZWRpbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcm90YXRlLWxlZnQ6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tdW5kbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVuZG87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWxlZ2FsOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWdhdmVsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZ2F2ZWw7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWRhc2hib2FyZDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS10YWNob21ldGVyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGFjaG9tZXRlcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY29tbWVudC1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29tbWVudC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jb21tZW50cy1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29tbWVudHMtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmxhc2g6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tYm9sdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJvbHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNpdGVtYXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zaXRlbWFwOyB9XG4uQHtmYS1jc3MtcHJlZml4fS11bWJyZWxsYTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVtYnJlbGxhOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1wYXN0ZTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1jbGlwYm9hcmQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jbGlwYm9hcmQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWxpZ2h0YnVsYi1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGlnaHRidWxiLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWV4Y2hhbmdlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZXhjaGFuZ2U7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNsb3VkLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2xvdWQtZG93bmxvYWQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNsb3VkLXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNsb3VkLXVwbG9hZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdXNlci1tZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVzZXItbWQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN0ZXRob3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3RldGhvc2NvcGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN1aXRjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3VpdGNhc2U7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJlbGwtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJlbGwtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY29mZmVlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29mZmVlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jdXRsZXJ5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY3V0bGVyeTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmlsZS10ZXh0LW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1maWxlLXRleHQtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYnVpbGRpbmctbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJ1aWxkaW5nLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhvc3BpdGFsLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ob3NwaXRhbC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hbWJ1bGFuY2U6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hbWJ1bGFuY2U7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1lZGtpdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1lZGtpdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmlnaHRlci1qZXQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1maWdodGVyLWpldDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmVlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJlZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWgtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaC1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGx1cy1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYW5nbGUtZG91YmxlLXVwOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFuZ2xlLWRvdWJsZS1kb3duOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hbmdsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYW5nbGUtbGVmdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYW5nbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hbmdsZS1yaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hbmdsZS11cDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFuZ2xlLWRvd247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWRlc2t0b3A6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1kZXNrdG9wOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1sYXB0b3A6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1sYXB0b3A7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRhYmxldDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRhYmxldDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbW9iaWxlLXBob25lOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LW1vYmlsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1vYmlsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jaXJjbGUtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcXVvdGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXF1b3RlLWxlZnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXF1b3RlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcXVvdGUtcmlnaHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zcGlubmVyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jaXJjbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1haWwtcmVwbHk6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tcmVwbHk6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1yZXBseTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ2l0aHViLWFsdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdpdGh1Yi1hbHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZvbGRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZm9sZGVyLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZvbGRlci1vcGVuLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mb2xkZXItb3Blbi1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zbWlsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc21pbGUtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZnJvd24tbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZyb3duLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1laC1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWVoLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdhbWVwYWQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1nYW1lcGFkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1rZXlib2FyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXIta2V5Ym9hcmQtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmxhZy1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmxhZy1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZsYWctY2hlY2tlcmVkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10ZXJtaW5hbDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRlcm1pbmFsOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29kZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbWFpbC1yZXBseS1hbGw6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tcmVwbHktYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcmVwbHktYWxsOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtZW1wdHk6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLWZ1bGw6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdGFyLWhhbGYtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbG9jYXRpb24tYXJyb3c6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1sb2NhdGlvbi1hcnJvdzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY3JvcDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNyb3A7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNvZGUtZm9yazpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNvZGUtZm9yazsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdW5saW5rOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWNoYWluLWJyb2tlbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNoYWluLWJyb2tlbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcXVlc3Rpb246YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1xdWVzdGlvbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taW5mbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWluZm87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZXhjbGFtYXRpb247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN1cGVyc2NyaXB0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3VwZXJzY3JpcHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN1YnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN1YnNjcmlwdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZXJhc2VyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZXJhc2VyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1wdXp6bGUtcGllY2U6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wdXp6bGUtcGllY2U7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1taWNyb3Bob25lOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWljcm9waG9uZS1zbGFzaDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2hpZWxkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2FsZW5kYXItbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmlyZS1leHRpbmd1aXNoZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1maXJlLWV4dGluZ3Vpc2hlcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcm9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcm9ja2V0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tYXhjZG46YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tYXhjZG47IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNoZXZyb24tY2lyY2xlLXJpZ2h0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNoZXZyb24tY2lyY2xlLXVwOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2hldnJvbi1jaXJjbGUtZG93bjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taHRtbDU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1odG1sNTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY3NzMzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNzczM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFuY2hvcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFuY2hvcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdW5sb2NrLWFsdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVubG9jay1hbHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJ1bGxzZXllOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYnVsbHNleWU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWVsbGlwc2lzLWg6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1lbGxpcHNpcy1oOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy12OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZWxsaXBzaXMtdjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcnNzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXJzcy1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBsYXktY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGxheS1jaXJjbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRpY2tldDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRpY2tldDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbWludXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWludXMtc3F1YXJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1taW51cy1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1pbnVzLXNxdWFyZS1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1sZXZlbC11cDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWxldmVsLXVwOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1sZXZlbC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGV2ZWwtZG93bjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2hlY2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2hlY2stc3F1YXJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1wZW5jaWwtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGVuY2lsLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2hhcmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2hhcmUtc3F1YXJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29tcGFzczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdG9nZ2xlLWRvd246YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNhcmV0LXNxdWFyZS1vLWRvd247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRvZ2dsZS11cDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby11cDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXVwOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10b2dnbGUtcmlnaHQ6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYXJldC1zcXVhcmUtby1yaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZXVybzpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1ldXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ldXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdicDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdicDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZG9sbGFyOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXVzZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVzZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcnVwZWU6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0taW5yOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaW5yOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jbnk6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tcm1iOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXllbjpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1qcHk6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1qcHk7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXJ1YmxlOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXJvdWJsZTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1ydWI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ydWI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXdvbjpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1rcnc6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1rcnc7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJpdGNvaW46YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tYnRjOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYnRjOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1maWxlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmlsZS10ZXh0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsZS10ZXh0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWFzYzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNvcnQtYWxwaGEtYXNjOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWRlc2M6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zb3J0LWFscGhhLWRlc2M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LWFzYzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNvcnQtYW1vdW50LWFzYzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtZGVzYzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNvcnQtYW1vdW50LWRlc2M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy1hc2M6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zb3J0LW51bWVyaWMtYXNjOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zb3J0LW51bWVyaWMtZGVzYzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNvcnQtbnVtZXJpYy1kZXNjOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10aHVtYnMtdXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aHVtYnMtdXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRodW1icy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGh1bWJzLWRvd247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXIteW91dHViZS1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci15b3V0dWJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS14aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXIteGluZzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0teGluZy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci14aW5nLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0teW91dHViZS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXIteW91dHViZS1wbGF5OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1kcm9wYm94OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZHJvcGJveDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdGFjay1vdmVyZmxvdzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaW5zdGFncmFtOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mbGlja3I6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mbGlja3I7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFkbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFkbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYml0YnVja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYml0YnVja2V0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYml0YnVja2V0LXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdHVtYmxyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdHVtYmxyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10dW1ibHItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdHVtYmxyLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbG9uZy1hcnJvdy1kb3duOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbG9uZy1hcnJvdy11cDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbG9uZy1hcnJvdy1sZWZ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbG9uZy1hcnJvdy1yaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXBwbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hcHBsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0td2luZG93czpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXdpbmRvd3M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFuZHJvaWQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hbmRyb2lkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1saW51eDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWxpbnV4OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWRyaWJiYmxlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1za3lwZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNreXBlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mb3Vyc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZm91cnNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdHJlbGxvOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdHJlbGxvOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mZW1hbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1hbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tYWxlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1naXR0aXA6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tZ3JhdGlwYXk6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ncmF0aXBheTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3VuLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdW4tbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbW9vbi1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbW9vbi1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYXJjaGl2ZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYnVnOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYnVnOyB9XG4uQHtmYS1jc3MtcHJlZml4fS12azpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXZrOyB9XG4uQHtmYS1jc3MtcHJlZml4fS13ZWlibzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXdlaWJvOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yZW5yZW46YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1yZW5yZW47IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBhZ2VsaW5lczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXBhZ2VsaW5lczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdGFjay1leGNoYW5nZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hcnJvdy1jaXJjbGUtby1yaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFycm93LWNpcmNsZS1vLWxlZnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1sZWZ0OmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1vLWxlZnQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYXJldC1zcXVhcmUtby1sZWZ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1kb3QtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1kb3QtY2lyY2xlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXdoZWVsY2hhaXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci13aGVlbGNoYWlyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS12aW1lby1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci12aW1lby1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXR1cmtpc2gtbGlyYTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS10cnk6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10cnk7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBsdXMtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wbHVzLXNxdWFyZS1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zcGFjZS1zaHV0dGxlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3BhY2Utc2h1dHRsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2xhY2s6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zbGFjazsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZW52ZWxvcGUtc3F1YXJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS13b3JkcHJlc3M6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci13b3JkcHJlc3M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW9wZW5pZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW9wZW5pZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taW5zdGl0dXRpb246YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tYmFuazpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS11bml2ZXJzaXR5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdW5pdmVyc2l0eTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbW9ydGFyLWJvYXJkOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWdyYWR1YXRpb24tY2FwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZ3JhZHVhdGlvbi1jYXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXIteWFob287IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdvb2dsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdvb2dsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcmVkZGl0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcmVkZGl0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcmVkZGl0LXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3R1bWJsZXVwb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3R1bWJsZXVwb24tY2lyY2xlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zdHVtYmxldXBvbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN0dW1ibGV1cG9uOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1kZWxpY2lvdXM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1kZWxpY2lvdXM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWRpZ2c6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1kaWdnOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLXBwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGllZC1waXBlci1wcDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGllZC1waXBlci1hbHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1waWVkLXBpcGVyLWFsdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZHJ1cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZHJ1cGFsOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1qb29tbGE6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1qb29tbGE7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGFuZ3VhZ2U7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZheDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZheDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYnVpbGRpbmc6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1idWlsZGluZzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2hpbGQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jaGlsZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGF3OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGF3OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zcG9vbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNwb29uOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jdWJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY3ViZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY3ViZXM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jdWJlczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmVoYW5jZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJlaGFuY2U7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYmVoYW5jZS1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN0ZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3RlYW07IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN0ZWFtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN0ZWFtLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcmVjeWNsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXJlY3ljbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWF1dG9tb2JpbGU6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tY2FyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2FyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYWI6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tdGF4aTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRheGk7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRyZWU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10cmVlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3BvdGlmeTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZGV2aWFudGFydDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWRldmlhbnRhcnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNvdW5kY2xvdWQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zb3VuZGNsb3VkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1kYXRhYmFzZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWRhdGFiYXNlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1maWxlLXBkZi1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsZS1wZGYtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmlsZS13b3JkLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1maWxlLXdvcmQtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmlsZS1leGNlbC1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsZS1leGNlbC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1maWxlLXBvd2VycG9pbnQtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZpbGUtcG93ZXJwb2ludC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1maWxlLXBob3RvLW86YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tZmlsZS1waWN0dXJlLW86YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tZmlsZS1pbWFnZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsZS1pbWFnZS1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1maWxlLXppcC1vOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWZpbGUtYXJjaGl2ZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsZS1hcmNoaXZlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZpbGUtc291bmQtbzpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1maWxlLWF1ZGlvLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1maWxlLWF1ZGlvLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZpbGUtbW92aWUtbzpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1maWxlLXZpZGVvLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1maWxlLXZpZGVvLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZpbGUtY29kZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlsZS1jb2RlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZpbmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci12aW5lOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jb2RlcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29kZXBlbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tanNmaWRkbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1qc2ZpZGRsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbGlmZS1ib3V5OmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWxpZmUtYnVveTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1saWZlLXNhdmVyOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXN1cHBvcnQ6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tbGlmZS1yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGlmZS1yaW5nOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jaXJjbGUtby1ub3RjaDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNpcmNsZS1vLW5vdGNoOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yYTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1yZXNpc3RhbmNlOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXJlYmVsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcmViZWw7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdlOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWVtcGlyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWVtcGlyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ2l0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdpdC1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdpdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdpdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0teS1jb21iaW5hdG9yLXNxdWFyZTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS15Yy1zcXVhcmU6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0taGFja2VyLW5ld3M6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oYWNrZXItbmV3czsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGVuY2VudC13ZWlibzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRlbmNlbnQtd2VpYm87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXFxOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcXE7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXdlY2hhdDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS13ZWl4aW46YmVmb3JlIHsgY29udGVudDogQGZhLXZhci13ZWl4aW47IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNlbmQ6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tcGFwZXItcGxhbmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wYXBlci1wbGFuZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2VuZC1vOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXBhcGVyLXBsYW5lLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wYXBlci1wbGFuZS1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1oaXN0b3J5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaGlzdG9yeTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2lyY2xlLXRoaW46YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jaXJjbGUtdGhpbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taGVhZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaGVhZGVyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1wYXJhZ3JhcGg6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wYXJhZ3JhcGg7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNsaWRlcnM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zbGlkZXJzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zaGFyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zaGFyZS1hbHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1ib21iOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYm9tYjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc29jY2VyLWJhbGwtbzpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1mdXRib2wtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZ1dGJvbC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10dHk6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10dHk7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJpbm9jdWxhcnM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1iaW5vY3VsYXJzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1wbHVnOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGx1ZzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2xpZGVzaGFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNsaWRlc2hhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXR3aXRjaDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXR3aXRjaDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0teWVscDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXllbHA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW5ld3NwYXBlci1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbmV3c3BhcGVyLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXdpZmk6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci13aWZpOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYWxjdWxhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2FsY3VsYXRvcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGF5cGFsOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1nb29nbGUtd2FsbGV0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZ29vZ2xlLXdhbGxldDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2MtdmlzYTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNjLXZpc2E7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNjLW1hc3RlcmNhcmQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYy1tYXN0ZXJjYXJkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYy1kaXNjb3ZlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNjLWRpc2NvdmVyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYy1hbWV4OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2MtYW1leDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2MtcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2MtcGF5cGFsOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYy1zdHJpcGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYy1zdHJpcGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJlbGwtc2xhc2g6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1iZWxsLXNsYXNoOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1iZWxsLXNsYXNoLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1iZWxsLXNsYXNoLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRyYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdHJhc2g7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNvcHlyaWdodDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNvcHlyaWdodDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYXQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZXllZHJvcHBlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWV5ZWRyb3BwZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBhaW50LWJydXNoOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGFpbnQtYnJ1c2g7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJpcnRoZGF5LWNha2U6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1iaXJ0aGRheS1jYWtlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hcmVhLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYXJlYS1jaGFydDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGllLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGllLWNoYXJ0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1saW5lLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGluZS1jaGFydDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbGFzdGZtOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGFzdGZtOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGFzdGZtLXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdG9nZ2xlLW9mZjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRvZ2dsZS1vZmY7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1vbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRvZ2dsZS1vbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmljeWNsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJpY3ljbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJ1czpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJ1czsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taW94aG9zdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWlveGhvc3Q7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFuZ2VsbGlzdDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFuZ2VsbGlzdDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2M6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2hla2VsOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXNoZXFlbDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1pbHM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1pbHM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1lYW5wYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWVhbnBhdGg7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1idXlzZWxsYWRzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jb25uZWN0ZGV2ZWxvcDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNvbm5lY3RkZXZlbG9wOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1kYXNoY3ViZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWRhc2hjdWJlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mb3J1bWJlZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZvcnVtYmVlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1sZWFucHViOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGVhbnB1YjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2VsbHN5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2VsbHN5OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zaGlydHNpbmJ1bGs7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNpbXBseWJ1aWx0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2ltcGx5YnVpbHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNreWF0bGFzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2t5YXRsYXM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNhcnQtcGx1czpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNhcnQtcGx1czsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2FydC1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2FydC1hcnJvdy1kb3duOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1kaWFtb25kOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZGlhbW9uZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2hpcDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNoaXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXVzZXItc2VjcmV0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdXNlci1zZWNyZXQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1vdG9yY3ljbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tb3RvcmN5Y2xlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zdHJlZXQtdmlldzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN0cmVldC12aWV3OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1oZWFydGJlYXQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oZWFydGJlYXQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZlbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdmVudXM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1hcnM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tYXJzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tZXJjdXJ5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWVyY3VyeTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taW50ZXJzZXg6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tdHJhbnNnZW5kZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10cmFuc2dlbmRlcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdHJhbnNnZW5kZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdHJhbnNnZW5kZXItYWx0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS12ZW51cy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci12ZW51cy1kb3VibGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1hcnMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWFycy1kb3VibGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZlbnVzLW1hcnM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci12ZW51cy1tYXJzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1hcnMtc3Ryb2tlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWFycy1zdHJva2UtdjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbWFycy1zdHJva2UtaDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1hcnMtc3Ryb2tlLWg7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW5ldXRlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW5ldXRlcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ2VuZGVybGVzczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdlbmRlcmxlc3M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLW9mZmljaWFsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmFjZWJvb2stb2ZmaWNpYWw7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdC1wOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGludGVyZXN0LXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXdoYXRzYXBwOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItd2hhdHNhcHA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNlcnZlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNlcnZlcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdXNlci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdXNlci1wbHVzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS11c2VyLXRpbWVzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdXNlci10aW1lczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taG90ZWw6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tYmVkOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYmVkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS12aWFjb2luOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdmlhY29pbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdHJhaW46YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10cmFpbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3Vid2F5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3Vid2F5OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tZWRpdW06YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tZWRpdW07IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXljOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXktY29tYmluYXRvcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXktY29tYmluYXRvcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tb3B0aW4tbW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW9wdGluLW1vbnN0ZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW9wZW5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItb3BlbmNhcnQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWV4cGVkaXRlZHNzbDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWV4cGVkaXRlZHNzbDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmF0dGVyeS00OmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWJhdHRlcnk6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYmF0dGVyeS1mdWxsOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTM6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMjpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1iYXR0ZXJ5LWhhbGY7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMTpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1iYXR0ZXJ5LXF1YXJ0ZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYmF0dGVyeS1lbXB0eTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbW91c2UtcG9pbnRlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1vdXNlLXBvaW50ZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWktY3Vyc29yOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaS1jdXJzb3I7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW9iamVjdC1ncm91cDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW9iamVjdC1ncm91cDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tb2JqZWN0LXVuZ3JvdXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1vYmplY3QtdW5ncm91cDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3RpY2t5LW5vdGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdGlja3ktbm90ZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3RpY2t5LW5vdGUtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN0aWNreS1ub3RlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNjLWpjYjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNjLWpjYjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2MtZGluZXJzLWNsdWI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYy1kaW5lcnMtY2x1YjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2xvbmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jbG9uZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmFsYW5jZS1zY2FsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJhbGFuY2Utc2NhbGU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaG91cmdsYXNzLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy0xOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1zdGFydDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWhvdXJnbGFzcy1zdGFydDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLTI6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLWhhbGY6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ob3VyZ2xhc3MtaGFsZjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLTM6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLWVuZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWhvdXJnbGFzcy1lbmQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWhvdXJnbGFzczsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taGFuZC1ncmFiLW86YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0taGFuZC1yb2NrLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oYW5kLXJvY2stbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taGFuZC1zdG9wLW86YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0taGFuZC1wYXBlci1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaGFuZC1wYXBlci1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1oYW5kLXNjaXNzb3JzLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oYW5kLXNjaXNzb3JzLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhhbmQtbGl6YXJkLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oYW5kLWxpemFyZC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1oYW5kLXNwb2NrLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oYW5kLXNwb2NrLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaGFuZC1wb2ludGVyLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhhbmQtcGVhY2UtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWhhbmQtcGVhY2UtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdHJhZGVtYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdHJhZGVtYXJrOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yZWdpc3RlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcmVnaXN0ZXJlZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9uczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdnOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZ2c7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdnLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdnLWNpcmNsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdHJpcGFkdmlzb3I6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10cmlwYWR2aXNvcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tb2Rub2tsYXNzbmlraTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW9kbm9rbGFzc25pa2k7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWdldC1wb2NrZXQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1nZXQtcG9ja2V0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS13aWtpcGVkaWEtdzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXdpa2lwZWRpYS13OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zYWZhcmk6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zYWZhcmk7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNocm9tZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNocm9tZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZmlyZWZveDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZpcmVmb3g7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW9wZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItb3BlcmE7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWludGVybmV0LWV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaW50ZXJuZXQtZXhwbG9yZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXR2OmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXRlbGV2aXNpb246YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10ZWxldmlzaW9uOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jb250YW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jb250YW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LTUwMHB4OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItNTAwcHg7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFtYXpvbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFtYXpvbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItcGx1cy1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2FsZW5kYXItcGx1cy1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1taW51cy1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY2FsZW5kYXItbWludXMtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItdGltZXMtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWNhbGVuZGFyLXRpbWVzLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLWNoZWNrLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jYWxlbmRhci1jaGVjay1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1pbmR1c3RyeTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWluZHVzdHJ5OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tYXAtcGluOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWFwLXBpbjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbWFwLXNpZ25zOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbWFwLXNpZ25zOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tYXAtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1hcC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tYXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tYXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNvbW1lbnRpbmc6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jb21tZW50aW5nOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jb21tZW50aW5nLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jb21tZW50aW5nLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWhvdXp6OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaG91eno7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZpbWVvOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdmltZW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJsYWNrLXRpZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJsYWNrLXRpZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZm9udGljb25zOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZm9udGljb25zOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1yZWRkaXQtYWxpZW46YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1yZWRkaXQtYWxpZW47IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWVkZ2U6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1lZGdlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1jcmVkaXQtY2FyZC1hbHQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1jcmVkaXQtY2FyZC1hbHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWNvZGllcGllOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItY29kaWVwaWU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LW1vZHg6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tb2R4OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mb3J0LWF3ZXNvbWU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXVzYjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVzYjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcHJvZHVjdC1odW50OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcHJvZHVjdC1odW50OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1taXhjbG91ZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLW1peGNsb3VkOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1zY3JpYmQ6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zY3JpYmQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBhdXNlLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXBhdXNlLWNpcmNsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wYXVzZS1jaXJjbGUtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3RvcC1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1zdG9wLWNpcmNsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc3RvcC1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXN0b3AtY2lyY2xlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhZzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNob3BwaW5nLWJhZzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2hvcHBpbmctYmFza2V0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2hvcHBpbmctYmFza2V0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1oYXNodGFnOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaGFzaHRhZzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmx1ZXRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYmx1ZXRvb3RoOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1ibHVldG9vdGgtYjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJsdWV0b290aC1iOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1wZXJjZW50OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcGVyY2VudDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ2l0bGFiOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZ2l0bGFiOyB9XG4uQHtmYS1jc3MtcHJlZml4fS13cGJlZ2lubmVyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItd3BiZWdpbm5lcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0td3Bmb3JtczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXdwZm9ybXM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWVudmlyYTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWVudmlyYTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdW5pdmVyc2FsLWFjY2VzczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVuaXZlcnNhbC1hY2Nlc3M7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXdoZWVsY2hhaXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItd2hlZWxjaGFpci1hbHQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItcXVlc3Rpb24tY2lyY2xlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJsaW5kOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYmxpbmQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWF1ZGlvLWRlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYXVkaW8tZGVzY3JpcHRpb247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZvbHVtZS1jb250cm9sLXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdm9sdW1lLWNvbnRyb2wtcGhvbmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWJyYWlsbGU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1icmFpbGxlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFzbC1pbnRlcnByZXRpbmc6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZGVhZm5lc3M6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0taGFyZC1vZi1oZWFyaW5nOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWRlYWY6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1kZWFmOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1nbGlkZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdsaWRlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1nbGlkZS1nOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZ2xpZGUtZzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tc2lnbmluZzpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc2lnbi1sYW5ndWFnZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbG93LXZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWxvdy12aXNpb247IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZpYWRlbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXZpYWRlbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdmlhZGVvLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXZpYWRlby1zcXVhcmU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc25hcGNoYXQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc25hcGNoYXQtZ2hvc3Q7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNuYXBjaGF0LXNxdWFyZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcGllZC1waXBlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXBpZWQtcGlwZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZpcnN0LW9yZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZmlyc3Qtb3JkZXI7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXlvYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXIteW9hc3Q7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXRoZW1laXNsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRoZW1laXNsZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXMtY2lyY2xlOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLW9mZmljaWFsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItZ29vZ2xlLXBsdXMtb2ZmaWNpYWw7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWZhOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWZvbnQtYXdlc29tZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWZvbnQtYXdlc29tZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0taGFuZHNoYWtlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1oYW5kc2hha2UtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtb3BlbjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWVudmVsb3BlLW9wZW47IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLW9wZW4tbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWVudmVsb3BlLW9wZW4tbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tbGlub2RlOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItbGlub2RlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWJvb2s6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1hZGRyZXNzLWJvb2s7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtYm9vay1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItYWRkcmVzcy1ib29rLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXZjYXJkOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFkZHJlc3MtY2FyZDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdmNhcmQtbzpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWNhcmQtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWFkZHJlc3MtY2FyZC1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS11c2VyLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXVzZXItY2lyY2xlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS11c2VyLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdXNlci1jaXJjbGUtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdXNlci1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdXNlci1vOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1pZC1iYWRnZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWlkLWJhZGdlOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1kcml2ZXJzLWxpY2Vuc2U6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0taWQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWlkLWNhcmQ7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWRyaXZlcnMtbGljZW5zZS1vOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LWlkLWNhcmQtbzpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWlkLWNhcmQtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcXVvcmE6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1xdW9yYTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1mcmVlLWNvZGUtY2FtcDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGVsZWdyYW06YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10ZWxlZ3JhbTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItNDpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlcjpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGhlcm1vbWV0ZXItZnVsbDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItMzpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0yOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aGVybW9tZXRlci1oYWxmOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0xOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci10aGVybW9tZXRlci1xdWFydGVyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0wOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItdGhlcm1vbWV0ZXItZW1wdHk7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNob3dlcjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXNob3dlcjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmF0aHR1YjpiZWZvcmUsXG4uQHtmYS1jc3MtcHJlZml4fS1zMTU6YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0tYmF0aDpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWJhdGg7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXBvZGNhc3Q6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1wb2RjYXN0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci13aW5kb3ctbWF4aW1pemU7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXdpbmRvdy1taW5pbWl6ZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXdpbmRvdy1taW5pbWl6ZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0td2luZG93LXJlc3RvcmU6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci13aW5kb3ctcmVzdG9yZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGltZXMtcmVjdGFuZ2xlOmJlZm9yZSxcbi5Ae2ZhLWNzcy1wcmVmaXh9LXdpbmRvdy1jbG9zZTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXdpbmRvdy1jbG9zZTsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tdGltZXMtcmVjdGFuZ2xlLW86YmVmb3JlLFxuLkB7ZmEtY3NzLXByZWZpeH0td2luZG93LWNsb3NlLW86YmVmb3JlIHsgY29udGVudDogQGZhLXZhci13aW5kb3ctY2xvc2UtbzsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tYmFuZGNhbXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1iYW5kY2FtcDsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tZ3JhdjpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLWdyYXY7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWV0c3k6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1ldHN5OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1pbWRiOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItaW1kYjsgfVxuLkB7ZmEtY3NzLXByZWZpeH0tcmF2ZWxyeTpiZWZvcmUgeyBjb250ZW50OiBAZmEtdmFyLXJhdmVscnk7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LWVlcmNhc3Q6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1lZXJjYXN0OyB9XG4uQHtmYS1jc3MtcHJlZml4fS1taWNyb2NoaXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1taWNyb2NoaXA7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXNub3dmbGFrZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc25vd2ZsYWtlLW87IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXN1cGVycG93ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IEBmYS12YXItc3VwZXJwb3dlcnM7IH1cbi5Ae2ZhLWNzcy1wcmVmaXh9LXdwZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci13cGV4cGxvcmVyOyB9XG4uQHtmYS1jc3MtcHJlZml4fS1tZWV0dXA6YmVmb3JlIHsgY29udGVudDogQGZhLXZhci1tZWV0dXA7IH1cbiIsIi8vIFNjcmVlbiBSZWFkZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zci1vbmx5IHsgLnNyLW9ubHkoKTsgfVxuLnNyLW9ubHktZm9jdXNhYmxlIHsgLnNyLW9ubHktZm9jdXNhYmxlKCk7IH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/