=
=
=
=
=
=
=
=
C=C3=B3mo configurar la seguridad en Inte=
rnet Explorer
=
=
=
=
=
Internet Explorer es uno de los navegadores m=C3=A1s usados y extendi=
dos del mercado, por lo que es importante aprender como podemos navegar =
de forma m=C3=A1s segura cuando usemos el navegador de Microsoft, y es d=
e lo que hablaremos en el art=C3=ADculo de est=C3=A1 semana.
Internet Explorer ofrece cuatro zonas diferentes mediante las cuales pue=
des clasificar el nivel de seguridad en funci=C3=B3n de la confianza que=
tengas en una p=C3=A1gina, los diferentes zonas posibles que podemos co=
nfigurar son:
Internet
Intranet Local
Sitios de confianza
Sitios restringidos
Internet Explorer agrupa todos los sitios Web en una sola zona, la zo=
na Internet, y hace guardia con un nivel medio de seguridad, pero como h=
emos visto ofrece tres zonas m=C3=A1s que no solemos utilizar, y donde s=
e pueden clasificar p=C3=A1ginas en las que tengamos muchas confianza o =
sobre las tengamos sospechas.
Por lo que si configuramos Internet Explorer con un nivel de seguridad c=
orrecto para cada una de est=C3=A1s cuatro zonas y clasificamos correcta=
mente las p=C3=A1ginas que m=C3=A1s visitamos, puede ayudarnos significa=
tivamente a navegar de forma segura en Internet sin temor de ActiveX mal=
iciosos, applets Java da=C3=B1inos o cualquier otro tipo de malware.
Lo primero que tenemos que hacer es abrir Internet Explorer, y hacer cli=
c en Herramientas que se encuentra en la parte superior de la bar=
ra de men=C3=BA de Internet Explorer, y cuando salga el desplegable hace=
r clic en Opciones de Internet .
Cuando se abre Opciones de Internet , haz clic en la pesta=C3=B1a =
de Seguridad con lo que nos saldr=C3=A1 la siguiente pantalla don=
de podremos ver las diferentes zonas disponibles.
<=
/a>
Internet Explorer nos permite especificar que configuraci=C3=B3n de segu=
ridad queremos usar para cada zona de forma individual, as=C3=AD como ta=
mbi=C3=A9n nos permite utilizar un nivel de seguridad predeterminado med=
iante el bot=C3=B3n
Nivel predeterminado , o tambi=C3=A9n podemos =
cambiar las configuraciones individuales a partir de un nivel predetermi=
nado que hayamos seleccionado mediante el bot=C3=B3n
Nivel personaliz=
ado con lo que se puede adecuar el nivel de seguridad a tus necesida=
des.
Los niveles de seguridad predeterminados en Internet Explorer son los si=
guientes:
Bajo -> Proporciona garant=C3=ADas m=C3=ADnimas, permite que s=
e puede descargar y ejecutar la mayor=C3=ADa del contenido, por lo que n=
o es muy recomedable.
Medio bajo -> Es muy parecido al nivel bajo, exceptuando que e=
n est=C3=A1 ocasi=C3=B3n no se descargan controles ActiveX sin firmar.=
li>
Medio -> Con est=C3=A1 opci=C3=B3n dispondremos de una navegac=
i=C3=B3n segura y funcional, es decir, sin demasiadas preguntas sobre qu=
e queremos hacer. Adem=C3=A1s en este nivel tampoco se descargar=C3=A1n =
los controladores ActiveX sin firmar.
Alto -> Es sin duda la manera m=C3=A1s segura de navegar, pero=
la menos funcional, por lo que es muy recomendada para p=C3=A1ginas sob=
re las que no confiamos demasiado y que podr=C3=ADan infectar nuestros s=
istemas.
Viendo los diferentes niveles de seguridad predeterminados, nosotros =
os recomendamos utilizar el nivel Medio, puesto que el usuario dispone d=
e una navegaci=C3=B3n segura y funcional, pero dependiendo de lo paranoi=
cos que se=C3=A1is con la seguridad de vuestro ordenadores podr=C3=A9is =
seleccionar un nivel que se adecue a vuestras necesidades. Si no sabes q=
ue nivel escoger para cada zona, siempre es bueno empezar con el nivel m=
=C3=A1s seguro y luego ir reduciendo hasta que llegues a una relaci=C3=B3=
n de seguridad-funcionalidad que sea de tu agrado.
Una vez tengamos cada una de las zonas configuradas, vamos a ver como a=C3=
=B1adir una paginas web a nuestra zona de Sitios de confianza , lo=
primero que tenemos que hacer es copiar la direcci=C3=B3n web que quere=
mos a=C3=B1adir.
Ahora, vamos de nuevo a la pantalla de configuraci=C3=B3n de la segurida=
d de Internet Explorer Herramientas -> Opciones de Internet -> =
Seguridad , seleccionamos Sitios de confianza y hacemos clic e=
n el bot=C3=B3n de Sitios=E2=80=A6 con lo que nos aparecer=C3=A1 =
la siguiente ventana:
<=
/a>
Lo =C3=BAltimo que tendremos que hacer pegar la direcci=C3=B3n web que h=
ab=C3=ADamos copiado, y hacer clic en el bot=C3=B3n de
Agregar , c=
on lo que la web ahora pertenecer=C3=A1 a nuestros
Sitios de confianz=
a .
Para eliminar una p=C3=A1gina de alguna de las zonas, simplemente hay qu=
e realizar el mismo camino pero una vez en la pantalla anterior, selecci=
onar el sitio web a eliminar y hacer clic en el bot=C3=B3n
Quitar =
.
Por =C3=BAltimo me gustar=C3=ADa recordarte que puedes encontrar otros a=
rt=C3=ADculos y noticias sobre Windows e Internet en la secci=C3=B3n de=
dicada a
Windows y
Internet Explorer respectivamente=
.
=
=
=
=
=
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=css_pbm0lsQQJ7A7WCCIMgxLho6mI_kBNgznNUWmTWcnfoE.css
Content-Type: text/css; name=css_pbm0lsQQJ7A7WCCIMgxLho6mI_kBNgznNUWmTWcnfoE.css
Content-Location: http://www.websecurity.es/files/css/css_pbm0lsQQJ7A7WCCIMgxLho6mI_kBNgznNUWmTWcnfoE.css
Content-Transfer-Encoding: Quoted-Printable
#autocomplete{border:1px solid;overflow:hidden;position:absolute;z-index=
:100;}#autocomplete ul{list-style:none;list-style-image:none;margin:0;pa=
dding:0;}#autocomplete li{background:#fff;color:#000;cursor:default;whit=
e-space:pre;zoom:1;}html.js input.form-autocomplete{background-image:url=
(/misc/throbber.gif);background-position:100% 2px;background-repeat:no-r=
epeat;}html.js input.throbbing{background-position:100% -18px;}html.js f=
ieldset.collapsed{border-bottom-width:0;border-left-width:0;border-right=
-width:0;height:1em;}html.js fieldset.collapsed .fieldset-wrapper{displa=
y:none;}fieldset.collapsible{position:relative;}fieldset.collapsible .fi=
eldset-legend{display:block;}.form-textarea-wrapper textarea{display:blo=
ck;margin:0;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:bor=
der-box;box-sizing:border-box;}.resizable-textarea .grippie{background:#=
eee url(/misc/grippie.png) no-repeat center 2px;border:1px solid #ddd;bo=
rder-top-width:0;cursor:s-resize;height:9px;overflow:hidden;}body.drag{c=
ursor:move;}.draggable a.tabledrag-handle{cursor:move;float:left;height:=
1.7em;margin-left:-1em;overflow:hidden;text-decoration:none;}a.tabledrag=
-handle:hover{text-decoration:none;}a.tabledrag-handle .handle{backgroun=
d:url(/misc/draggable.png) no-repeat 6px 9px;height:13px;margin:-0.4em 0=
.5em;padding:0.42em 0.5em;width:13px;}a.tabledrag-handle-hover .handle{b=
ackground-position:6px -11px;}div.indentation{float:left;height:1.7em;ma=
rgin:-0.4em 0.2em -0.4em -0.4em;padding:0.42em 0 0.42em 0.6em;width:20px=
;}div.tree-child{background:url(/misc/tree.png) no-repeat 11px center;}d=
iv.tree-child-last{background:url(/misc/tree-bottom.png) no-repeat 11px =
center;}div.tree-child-horizontal{background:url(/misc/tree.png) no-repe=
at -11px center;}.tabledrag-toggle-weight-wrapper{text-align:right;}tabl=
e.sticky-header{background-color:#fff;margin-top:0;}.progress .bar{backg=
round-color:#fff;border:1px solid;}.progress .filled{background-color:#0=
00;height:1.5em;width:5px;}.progress .percentage{float:right;}.ajax-prog=
ress{display:inline-block;}.ajax-progress .throbber{background:transpare=
nt url(/misc/throbber.gif) no-repeat 0px -18px;float:left;height:15px;ma=
rgin:2px;width:15px;}.ajax-progress .message{padding-left:20px;}tr .ajax=
-progress .throbber{margin:0 2px;}.ajax-progress-bar{width:16em;}.contai=
ner-inline div,.container-inline label{display:inline;}.container-inline=
.fieldset-wrapper{display:block;}.nowrap{white-space:nowrap;}html.js .j=
s-hide{display:none;}.element-hidden{display:none;}.element-invisible{po=
sition:absolute !important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,=
1px,1px);overflow:hidden;height:1px;}.element-invisible.element-focusabl=
e:active,.element-invisible.element-focusable:focus{position:static !imp=
ortant;clip:auto;overflow:visible;height:auto;}.clearfix:after{content:"=
.";display:block;height:0;clear:both;visibility:hidden;}* html .clearfix=
{height:1%;}*:first-child + html .clearfix{min-height:1%;}
ul.menu{border:none;list-style:none;text-align:left;}ul.menu li{margin:0=
0 0 0.5em;}ul li.expanded{list-style-image:url(/misc/menu-expanded.png)=
;list-style-type:circle;}ul li.collapsed{list-style-image:url(/misc/menu=
-collapsed.png);list-style-type:disc;}ul li.leaf{list-style-image:url(/m=
isc/menu-leaf.png);list-style-type:square;}li.expanded,li.collapsed,li.l=
eaf{padding:0.2em 0.5em 0 0;margin:0;}li a.active{color:#000;}td.menu-di=
sabled{background:#ccc;}ul.inline,ul.links.inline{display:inline;padding=
-left:0;}ul.inline li{display:inline;list-style-type:none;padding:0 0.5e=
m;}.breadcrumb{padding-bottom:0.5em;}ul.primary{border-bottom:1px solid =
#bbb;border-collapse:collapse;height:auto;line-height:normal;list-style:=
none;margin:5px;padding:0 0 0 1em;white-space:nowrap;}ul.primary li{disp=
lay:inline;}ul.primary li a{background-color:#ddd;border-color:#bbb;bord=
er-style:solid solid none solid;border-width:1px;height:auto;margin-righ=
t:0.5em;padding:0 1em;text-decoration:none;}ul.primary li.active a{backg=
round-color:#fff;border:1px solid #bbb;border-bottom:1px solid #fff;}ul.=
primary li a:hover{background-color:#eee;border-color:#ccc;border-bottom=
-color:#eee;}ul.secondary{border-bottom:1px solid #bbb;padding:0.5em 1em=
;margin:5px;}ul.secondary li{border-right:1px solid #ccc;display:inline;=
padding:0 1em;}ul.secondary a{padding:0;text-decoration:none;}ul.seconda=
ry a.active{border-bottom:4px solid #999;}
div.messages{background-position:8px 8px;background-repeat:no-repeat;bor=
der:1px solid;margin:6px 0;padding:10px 10px 10px 50px;}div.status{backg=
round-image:url(/misc/message-24-ok.png);border-color:#be7;}div.status,.=
ok{color:#234600;}div.status,table tr.ok{background-color:#f8fff0;}div.w=
arning{background-image:url(/misc/message-24-warning.png);border-color:#=
ed5;}div.warning,.warning{color:#840;}div.warning,table tr.warning{backg=
round-color:#fffce5;}div.error{background-image:url(/misc/message-24-err=
or.png);border-color:#ed541d;}div.error,.error{color:#8c2e0b;}div.error,=
table tr.error{background-color:#fef5f1;}div.error p.error{color:#333;}d=
iv.messages ul{margin:0 0 0 1em;padding:0;}div.messages ul li{list-style=
-image:none;}
fieldset{margin-bottom:1em;padding:0.5em;}form{margin:0;padding:0;}hr{bo=
rder:1px solid gray;height:1px;}img{border:0;}table{border-collapse:coll=
apse;}th{border-bottom:3px solid #ccc;padding-right:1em;text-align:left;=
}tbody{border-top:1px solid #ccc;}tr.even,tr.odd{background-color:#eee;b=
order-bottom:1px solid #ccc;padding:0.1em 0.6em;}th.active img{display:i=
nline;}td.active{background-color:#ddd;}.item-list .title{font-weight:bo=
ld;}.item-list ul{margin:0 0 0.75em 0;padding:0;}.item-list ul li{margin=
:0 0 0.25em 1.5em;padding:0;}.form-item,.form-actions{margin-top:1em;mar=
gin-bottom:1em;}tr.odd .form-item,tr.even .form-item{margin-top:0;margin=
-bottom:0;white-space:nowrap;}.form-item .description{font-size:0.85em;}=
label{display:block;font-weight:bold;}label.option{display:inline;font-w=
eight:normal;}.form-checkboxes .form-item,.form-radios .form-item{margin=
-top:0.4em;margin-bottom:0.4em;}.form-type-radio .description,.form-type=
-checkbox .description{margin-left:2.4em;}input.form-checkbox,input.form=
-radio{vertical-align:middle;}.marker,.form-required{color:#f00;}.form-i=
tem input.error,.form-item textarea.error,.form-item select.error{border=
:2px solid red;}.container-inline .form-actions,.container-inline.form-a=
ctions{margin-top:0;margin-bottom:0;}.more-link{text-align:right;}.more-=
help-link{text-align:right;}.more-help-link a{background:url(/misc/help.=
png) 0 50% no-repeat;padding:1px 0 1px 20px;}.item-list .pager{clear:bot=
h;text-align:center;}.item-list .pager li{background-image:none;display:=
inline;list-style-type:none;padding:0.5em;}.pager-current{font-weight:bo=
ld;}#autocomplete li.selected{background:#0072b9;color:#fff;}html.js fie=
ldset.collapsible .fieldset-legend{background:url(/misc/menu-expanded.pn=
g) 5px 65% no-repeat;padding-left:15px;}html.js fieldset.collapsed .fiel=
dset-legend{background-image:url(/misc/menu-collapsed.png);background-po=
sition:5px 50%;}.fieldset-legend span.summary{color:#999;font-size:0.9em=
;margin-left:0.5em;}tr.drag{background-color:#fffff0;}tr.drag-previous{b=
ackground-color:#ffd;}.tabledrag-toggle-weight{font-size:0.9em;}body div=
.tabledrag-changed-warning{margin-bottom:0.5em;}tr.selected td{backgroun=
d:#ffc;}td.checkbox,th.checkbox{text-align:center;}.progress{font-weight=
:bold;}.progress .bar{background:#ccc;border-color:#666;margin:0 0.2em;-=
moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.prog=
ress .filled{background:#0072b9 url(/misc/progress.gif);}
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=css_fup0ewN7nQnIbQ4Davo6FRx6Rm0Qf04pc9c6eFFxKw4.css
Content-Type: text/css; name=css_fup0ewN7nQnIbQ4Davo6FRx6Rm0Qf04pc9c6eFFxKw4.css
Content-Location: http://www.websecurity.es/files/css/css_fup0ewN7nQnIbQ4Davo6FRx6Rm0Qf04pc9c6eFFxKw4.css
Content-Transfer-Encoding: Quoted-Printable
#comments{margin-top:15px;}.indented{margin-left:25px;}.comment-unpublis=
hed{background-color:#fff4f4;}.comment-preview{background-color:#ffffea;=
}
.field .field-label{font-weight:bold;}.field-label-inline .field-label,.=
field-label-inline .field-items{float:left;}form .field-multiple-table{m=
argin:0;}form .field-multiple-table th.field-label{padding-left:0;}form =
.field-multiple-table td.field-multiple-drag{width:30px;padding-right:0;=
}form .field-multiple-table td.field-multiple-drag a.tabledrag-handle{pa=
dding-right:.5em;}form .field-add-more-submit{margin:.5em 0 0;}
.node-unpublished{background-color:#fff4f4;}.preview .node{background-co=
lor:#ffffea;}td.revision-current{background:#ffc;}
.poll{overflow:hidden;}.poll .bar{height:1em;margin:1px 0;background-col=
or:#ddd;}.poll .bar .foreground{background-color:#000;height:1em;float:l=
eft;}.poll .links{text-align:center;}.poll .percent{text-align:right;}.p=
oll .total{text-align:center;}.poll .vote-form{text-align:center;}.poll =
.vote-form .choices{text-align:left;margin:0 auto;display:table;}.poll .=
vote-form .choices .title{font-weight:bold;}.node-form #edit-poll-more{m=
argin:0;}.node-form #poll-choice-table .form-text{display:inline;width:a=
uto;}.node-form #poll-choice-table td.choice-flag{white-space:nowrap;wid=
th:4em;}td.poll-chtext{width:80%;}td.poll-chvotes .form-text{width:85%;}=
#permissions td.module{font-weight:bold;}#permissions td.permission{padd=
ing-left:1.5em;}#permissions tr.odd .form-item,#permissions tr.even .for=
m-item{white-space:normal;}#user-admin-settings fieldset .fieldset-descr=
iption{font-size:0.85em;padding-bottom:.5em;}#user-admin-roles td.edit-n=
ame{clear:both;}#user-admin-roles .form-item-name{float:left;margin-righ=
t:1em;}.password-strength{width:17em;float:right;margin-top:1.4em;}.pass=
word-strength-title{display:inline;}.password-strength-text{float:right;=
font-weight:bold;}.password-indicator{background-color:#C4C4C4;height:0.=
3em;width:100%;}.password-indicator div{height:100%;width:0%;background-=
color:#47C965;}input.password-confirm,input.password-field{width:16em;ma=
rgin-bottom:0.4em;}div.password-confirm{float:right;margin-top:1.5em;vis=
ibility:hidden;width:17em;}div.form-item div.password-suggestions{paddin=
g:0.2em 0.5em;margin:0.7em 0;width:38.5em;border:1px solid #B4B4B4;}div.=
password-suggestions ul{margin-bottom:0;}.confirm-parent,.password-paren=
t{clear:left;margin:0;width:36.3em;}.profile{clear:both;margin:1em 0;}.p=
rofile .user-picture{float:right;margin:0 1em 1em 0;}.profile h3{border-=
bottom:1px solid #ccc;}.profile dl{margin:0 0 1.5em 0;}.profile dt{margi=
n:0 0 0.2em 0;font-weight:bold;}.profile dd{margin:0 0 1em 0;}
span.ext{background:url(/sites/all/modules/extlink/extlink_s.png) 2px ce=
nter no-repeat;width:10px;height:10px;padding-right:12px;text-decoration=
:none;}span.mailto{background:url(/sites/all/modules/extlink/extlink_s.p=
ng) -20px center no-repeat;width:10px;height:10px;padding-right:12px;tex=
t-decoration:none;}@media print{span.ext,span.mailto{display:none;paddin=
g:0;}}
.views-exposed-form .views-exposed-widget{float:left;padding:.5em 1em 0 =
0;}.views-exposed-form .views-exposed-widget .form-submit{margin-top:1.6=
em;}.views-exposed-form .form-item,.views-exposed-form .form-submit{marg=
in-top:0;margin-bottom:0;}.views-exposed-form label{font-weight:bold;}.v=
iews-exposed-widgets{margin-bottom:.5em;}.views-align-left{text-align:le=
ft;}.views-align-right{text-align:right;}.views-align-center{text-align:=
center;}.views-view-grid tbody{border-top:none;}.view .progress-disabled=
{float:none;}
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=css_fEYpOCi0elnUIv6msIFVhi8RPss72XqfV5vvu4ek0y4.css
Content-Type: text/css; name=css_fEYpOCi0elnUIv6msIFVhi8RPss72XqfV5vvu4ek0y4.css
Content-Location: http://www.websecurity.es/files/css/css_fEYpOCi0elnUIv6msIFVhi8RPss72XqfV5vvu4ek0y4.css
Content-Transfer-Encoding: Quoted-Printable
.ctools-locked{color:red;border:1px solid red;padding:1em;}.ctools-owns-=
lock{background:#FFFFDD none repeat scroll 0 0;border:1px solid #F0C020;=
padding:1em;}a.ctools-ajaxing,input.ctools-ajaxing,button.ctools-ajaxing=
,select.ctools-ajaxing{padding-right:18px !important;background:url(/sit=
es/all/modules/ctools/images/status-active.gif) right center no-repeat;}=
div.ctools-ajaxing{float:left;width:18px;background:url(/sites/all/modul=
es/ctools/images/status-active.gif) center center no-repeat;}
#lightbox{position:absolute;top:40px;left:0;width:100%;z-index:100;text-=
align:center;line-height:0}#lightbox a img{border:0}#outerImageContainer=
{position:relative;background-color:#fff;width:250px;height:250px;margin=
:0 auto;min-width:240px;overflow:hidden}#imageContainer,#frameContainer,=
#modalContainer{padding:10px}#modalContainer{line-height:1em;overflow:au=
to}#loading{height:25%;width:100%;text-align:center;line-height:0;positi=
on:absolute;top:40%;left:45%}#hoverNav{position:absolute;top:0;left:0;he=
ight:100%;width:100%;z-index:10}#imageContainer>#hoverNav{left:0}#frameH=
overNav{z-index:10;margin-left:auto;margin-right:auto;width:20%;position=
:absolute;bottom:0;height:45px}#imageData>#frameHoverNav{left:0}#hoverNa=
v a,#frameHoverNav a{outline:0}#prevLink,#nextLink{width:49%;height:100%=
;background:transparent url(/sites/all/modules/lightbox2/images/blank.gi=
f) no-repeat;display:block}#prevLink,#framePrevLink{left:0;float:left}#n=
extLink,#frameNextLink{right:0;float:right}#prevLink:hover,#prevLink:vis=
ited:hover,#prevLink.force_show_nav,#framePrevLink{background:url(/sites=
/all/modules/lightbox2/images/prev.gif) left 15% no-repeat}#nextLink:hov=
er,#nextLink:visited:hover,#nextLink.force_show_nav,#frameNextLink{backg=
round:url(/sites/all/modules/lightbox2/images/next.gif) right 15% no-rep=
eat}#prevLink:hover.force_show_nav,#prevLink:visited:hover.force_show_na=
v,#framePrevLink:hover,#framePrevLink:visited:hover{background:url(/site=
s/all/modules/lightbox2/images/prev_hover.gif) left 15% no-repeat}#nextL=
ink:hover.force_show_nav,#nextLink:visited:hover.force_show_nav,#frameNe=
xtLink:hover,#frameNextLink:visited:hover{background:url(/sites/all/modu=
les/lightbox2/images/next_hover.gif) right 15% no-repeat}#framePrevLink,=
#frameNextLink{width:45px;height:45px;display:block;position:absolute;bo=
ttom:0}#imageDataContainer{font:10px Verdana,Helvetica,sans-serif;backgr=
ound-color:#fff;margin:0 auto;line-height:1.4em;min-width:240px}#imageDa=
ta{padding:0 10px}#imageData #imageDetails{width:70%;float:left;text-ali=
gn:left}#imageData #caption{font-weight:bold}#imageData #numberDisplay{d=
isplay:block;clear:left;padding-bottom:1.0em}#imageData #lightbox2-node-=
link-text{display:block;padding-bottom:1.0em}#imageData #bottomNav{heigh=
t:66px}.lightbox2-alt-layout #imageData #bottomNav,.lightbox2-alt-layout=
-data #bottomNav{margin-bottom:60px}#lightbox2-overlay{position:absolute=
;top:0;left:0;z-index:90;width:100%;height:500px;background-color:#000}#=
overlay_default{opacity:.6}#overlay_macff2{background:transparent url(/s=
ites/all/modules/lightbox2/images/overlay.png) repeat}.clearfix:after{co=
ntent:".";display:block;height:0;clear:both;visibility:hidden}* html>bod=
y .clearfix{display:inline;width:100%}* html .clearfix{height:1%;}#botto=
mNavClose{display:block;background:url(/sites/all/modules/lightbox2/imag=
es/close.gif) left no-repeat;margin-top:33px;float:right;padding-top:.7e=
m;height:26px;width:26px}#bottomNavClose:hover{background-position:right=
}#loadingLink{display:block;background:url(/sites/all/modules/lightbox2/=
images/loading.gif) no-repeat;width:32px;height:32px}#bottomNavZoom{disp=
lay:none;background:url(/sites/all/modules/lightbox2/images/expand.gif) =
no-repeat;width:34px;height:34px;position:relative;left:30px;float:right=
}#bottomNavZoomOut{display:none;background:url(/sites/all/modules/lightb=
ox2/images/contract.gif) no-repeat;width:34px;height:34px;position:relat=
ive;left:30px;float:right}#lightshowPlay{margin-top:42px;float:right;mar=
gin-right:5px;margin-bottom:1px;height:20px;width:20px;background:url(/s=
ites/all/modules/lightbox2/images/play.png) no-repeat}#lightshowPause{ma=
rgin-top:42px;float:right;margin-right:5px;margin-bottom:1px;height:20px=
;width:20px;background:url(/sites/all/modules/lightbox2/images/pause.png=
) no-repeat}.lightbox2-alt-layout-data #bottomNavClose,.lightbox2-alt-la=
yout #bottomNavClose{margin-top:93px}.lightbox2-alt-layout-data #bottomN=
avZoom,.lightbox2-alt-layout-data #bottomNavZoomOut,.lightbox2-alt-layou=
t #bottomNavZoom,.lightbox2-alt-layout #bottomNavZoomOut{margin-top:93px=
}.lightbox2-alt-layout-data #lightshowPlay,.lightbox2-alt-layout-data #l=
ightshowPause,.lightbox2-alt-layout #lightshowPlay,.lightbox2-alt-layout=
#lightshowPause{margin-top:102px}.lightbox_hide_image{display:none}#lig=
htboxImage{-ms-interpolation-mode:bicubic}
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=css_TGJb4peQX-zPXkYpaPJ84mCM5BpWmXDDxHM6QS3jZis.css
Content-Type: text/css; name=css_TGJb4peQX-zPXkYpaPJ84mCM5BpWmXDDxHM6QS3jZis.css
Content-Location: http://www.websecurity.es/files/css/css_TGJb4peQX-zPXkYpaPJ84mCM5BpWmXDDxHM6QS3jZis.css
Content-Transfer-Encoding: Quoted-Printable
body{min-width:960px;}.container_12{margin-left:auto;margin-right:auto;w=
idth:960px;}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.gri=
d_8,.grid_9,.grid_10,.grid_11,.grid_12{display:inline;float:left;margin-=
left:10px;margin-right:10px;}.push_1,.pull_1,.push_2,.pull_2,.push_3,.pu=
ll_3,.push_4,.pull_4,.push_5,.pull_5,.push_6,.pull_6,.push_7,.pull_7,.pu=
sh_8,.pull_8,.push_9,.pull_9,.push_10,.pull_10,.push_11,.pull_11{positio=
n:relative;}.alpha{margin-left:0;}.omega{margin-right:0;}.container_12 .=
grid_1{width:60px;}.container_12 .grid_2{width:140px;}.container_12 .gri=
d_3{width:220px;}.container_12 .grid_4{width:300px;}.container_12 .grid_=
5{width:380px;}.container_12 .grid_6{width:460px;}.container_12 .grid_7{=
width:540px;}.container_12 .grid_8{width:620px;}.container_12 .grid_9{wi=
dth:700px;}.container_12 .grid_10{width:780px;}.container_12 .grid_11{wi=
dth:860px;}.container_12 .grid_12{width:940px;}.container_12 .prefix_1{p=
adding-left:80px;}.container_12 .prefix_2{padding-left:160px;}.container=
_12 .prefix_3{padding-left:240px;}.container_12 .prefix_4{padding-left:3=
20px;}.container_12 .prefix_5{padding-left:400px;}.container_12 .prefix_=
6{padding-left:480px;}.container_12 .prefix_7{padding-left:560px;}.conta=
iner_12 .prefix_8{padding-left:640px;}.container_12 .prefix_9{padding-le=
ft:720px;}.container_12 .prefix_10{padding-left:800px;}.container_12 .pr=
efix_11{padding-left:880px;}.container_12 .suffix_1{padding-right:80px;}=
.container_12 .suffix_2{padding-right:160px;}.container_12 .suffix_3{pad=
ding-right:240px;}.container_12 .suffix_4{padding-right:320px;}.containe=
r_12 .suffix_5{padding-right:400px;}.container_12 .suffix_6{padding-righ=
t:480px;}.container_12 .suffix_7{padding-right:560px;}.container_12 .suf=
fix_8{padding-right:640px;}.container_12 .suffix_9{padding-right:720px;}=
.container_12 .suffix_10{padding-right:800px;}.container_12 .suffix_11{p=
adding-right:880px;}.container_12 .push_1{left:80px;}.container_12 .push=
_2{left:160px;}.container_12 .push_3{left:240px;}.container_12 .push_4{l=
eft:320px;}.container_12 .push_5{left:400px;}.container_12 .push_6{left:=
480px;}.container_12 .push_7{left:560px;}.container_12 .push_8{left:640p=
x;}.container_12 .push_9{left:720px;}.container_12 .push_10{left:800px;}=
.container_12 .push_11{left:880px;}.container_12 .pull_1{left:-80px;}.co=
ntainer_12 .pull_2{left:-160px;}.container_12 .pull_3{left:-240px;}.cont=
ainer_12 .pull_4{left:-320px;}.container_12 .pull_5{left:-400px;}.contai=
ner_12 .pull_6{left:-480px;}.container_12 .pull_7{left:-560px;}.containe=
r_12 .pull_8{left:-640px;}.container_12 .pull_9{left:-720px;}.container_=
12 .pull_10{left:-800px;}.container_12 .pull_11{left:-880px;}.clear{clea=
r:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0;=
}.clearfix:before,.clearfix:after,.container_12:before,.container_12:aft=
er{content:'.';display:block;overflow:hidden;visibility:hidden;font-size=
:0;line-height:0;width:0;height:0;}.clearfix:after,.container_12:after{c=
lear:both;}.clearfix,.container_12{zoom:1;}
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=css_KewDO5wEEsc7lN4pHuveACu0xsD2jrJhTUcVZmmWkVs.css
Content-Type: text/css; name=css_KewDO5wEEsc7lN4pHuveACu0xsD2jrJhTUcVZmmWkVs.css
Content-Location: http://www.websecurity.es/files/css/css_KewDO5wEEsc7lN4pHuveACu0xsD2jrJhTUcVZmmWkVs.css
Content-Transfer-Encoding: Quoted-Printable
body{min-width:720px;}.container_12{margin-left:auto;margin-right:auto;w=
idth:720px;}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.gri=
d_8,.grid_9,.grid_10,.grid_11,.grid_12{display:inline;float:left;margin-=
left:10px;margin-right:10px;}.push_1,.pull_1,.push_2,.pull_2,.push_3,.pu=
ll_3,.push_4,.pull_4,.push_5,.pull_5,.push_6,.pull_6,.push_7,.pull_7,.pu=
sh_8,.pull_8,.push_9,.pull_9,.push_10,.pull_10,.push_11,.pull_11{positio=
n:relative;}.alpha{margin-left:0;}.omega{margin-right:0;}.container_12 .=
grid_1{width:40px;}.container_12 .grid_2{width:100px;}.container_12 .gri=
d_3{width:160px;}.container_12 .grid_4{width:220px;}.container_12 .grid_=
5{width:280px;}.container_12 .grid_6{width:340px;}.container_12 .grid_7{=
width:400px;}.container_12 .grid_8{width:460px;}.container_12 .grid_9{wi=
dth:520px;}.container_12 .grid_10{width:580px;}.container_12 .grid_11{wi=
dth:640px;}.container_12 .grid_12{width:700px;}.container_12 .prefix_1{p=
adding-left:60px;}.container_12 .prefix_2{padding-left:120px;}.container=
_12 .prefix_3{padding-left:180px;}.container_12 .prefix_4{padding-left:2=
40px;}.container_12 .prefix_5{padding-left:300px;}.container_12 .prefix_=
6{padding-left:360px;}.container_12 .prefix_7{padding-left:420px;}.conta=
iner_12 .prefix_8{padding-left:480px;}.container_12 .prefix_9{padding-le=
ft:540px;}.container_12 .prefix_10{padding-left:600px;}.container_12 .pr=
efix_11{padding-left:660px;}.container_12 .suffix_1{padding-right:60px;}=
.container_12 .suffix_2{padding-right:120px;}.container_12 .suffix_3{pad=
ding-right:180px;}.container_12 .suffix_4{padding-right:240px;}.containe=
r_12 .suffix_5{padding-right:300px;}.container_12 .suffix_6{padding-righ=
t:360px;}.container_12 .suffix_7{padding-right:420px;}.container_12 .suf=
fix_8{padding-right:480px;}.container_12 .suffix_9{padding-right:540px;}=
.container_12 .suffix_10{padding-right:600px;}.container_12 .suffix_11{p=
adding-right:660px;}.container_12 .push_1{left:60px;}.container_12 .push=
_2{left:120px;}.container_12 .push_3{left:180px;}.container_12 .push_4{l=
eft:240px;}.container_12 .push_5{left:300px;}.container_12 .push_6{left:=
360px;}.container_12 .push_7{left:420px;}.container_12 .push_8{left:480p=
x;}.container_12 .push_9{left:540px;}.container_12 .push_10{left:600px;}=
.container_12 .push_11{left:660px;}.container_12 .pull_1{left:-60px;}.co=
ntainer_12 .pull_2{left:-120px;}.container_12 .pull_3{left:-180px;}.cont=
ainer_12 .pull_4{left:-240px;}.container_12 .pull_5{left:-300px;}.contai=
ner_12 .pull_6{left:-360px;}.container_12 .pull_7{left:-420px;}.containe=
r_12 .pull_8{left:-480px;}.container_12 .pull_9{left:-540px;}.container_=
12 .pull_10{left:-600px;}.container_12 .pull_11{left:-660px;}.clear{clea=
r:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0;=
}.clearfix:before,.clearfix:after,.container_12:before,.container_12:aft=
er{content:'.';display:block;overflow:hidden;visibility:hidden;font-size=
:0;line-height:0;width:0;height:0;}.clearfix:after,.container_12:after{c=
lear:both;}.clearfix,.container_12{zoom:1;}
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=css_Ody3Rnnxl1jUn-gSkZfNONZA3PvWask0tHZzQnHYUIU.css
Content-Type: text/css; name=css_Ody3Rnnxl1jUn-gSkZfNONZA3PvWask0tHZzQnHYUIU.css
Content-Location: http://www.websecurity.es/files/css/css_Ody3Rnnxl1jUn-gSkZfNONZA3PvWask0tHZzQnHYUIU.css
Content-Transfer-Encoding: 8bit
.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.grid_8,.grid_9,.grid_10,.grid_11,.grid_12{margin-left:10px;margin-right:10px;}.alpha,.omega{margin-left:0;margin-right:0;}.align_center,.align_right{text-align:left;}
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=css_0Ln2G6yk61Z6vN0h9znwP0T48hKIpeuFnQ-_8q1Uyis.css
Content-Type: text/css; name=css_0Ln2G6yk61Z6vN0h9znwP0T48hKIpeuFnQ-_8q1Uyis.css
Content-Location: http://www.websecurity.es/files/css/css_0Ln2G6yk61Z6vN0h9znwP0T48hKIpeuFnQ-_8q1Uyis.css
Content-Transfer-Encoding: Quoted-Printable
body{font:0.8em/165% "Lucida Grande","Lucida Sans Unicode",Segoe UI,Helv=
etica,Arial,sans-serif;margin:0;padding:0;outline:0 none;vertical-align:=
baseline;}h1,h2,h3,h4,h5,h6{margin:25px 0 20px 0;line-height:120%;text-s=
hadow:1px 1px 1px #EAF1EA;font-family:Myriad Pro,"Lucida Grande","Lucida=
Sans Unicode",Segoe UI,Helvetica,Arial,sans-serif;}h1{font-size:32px;ma=
rgin:0 0 20px 0;}h2{font-size:20px;color:#1487d4;font-weight:normal;}h3{=
font-size:130%;}h4{font-size:110%;}.front .node h1{font-size:30px;color:=
#494d4f;font-weight:normal;}.front .node h1.front-heading{margin-bottom:=
0;font-weight:bold;}.node.node-teaser h2{margin-top:0;}.subtitle{padding=
:5px 0 15px 0;font-size:18px;color:#494d4f;font-family:Myriad Pro,"Lucid=
a Grande","Lucida Sans Unicode",Segoe UI,Helvetica,Arial,sans-serif;}inp=
ut,textarea,select{font-family:"Lucida Grande","Lucida Sans Unicode",Seg=
oe UI,Helvetica,Arial,sans-serif;}#footer h1,#footer h2,#footer h3,#foot=
er h4,#footer h5,#footer h6,#footer-bottom h1,#footer-bottom h2,#footer-=
bottom h3,#footer-bottom h4,#footer-bottom h5,#footer-bottom h6{text-sha=
dow:none;}p{margin:0 0 25px 0;}a,li a.active{text-decoration:none;}a img=
{border:none;outline:none;display:block;overflow:hidden;}img.masked,.fie=
ld-type-image img{background:transparent url(/sites/all/themes/corporate=
clean/images/pattern.png);border:1px solid #d8d8d8;padding:10px;margin:1=
0px 0;}img{max-width:100%;height:auto;-webkit-box-sizing:border-box;-moz=
-box-sizing:border-box;box-sizing:border-box;}code{font-family:"Courier =
New",Courier,monospace;}blockquote{background:transparent url(/sites/all=
/themes/corporateclean/images/blockquote.png) no-repeat top left;margin:=
40px 0;padding:0 55px;}.breadcrumb{padding:0 10px 20px 0;}.breadcrumb-se=
parator{padding:0 8px 0 4px;}.submitted{margin:-15px 0 20px 0;font-size:=
85%;text-transform:uppercase;}.region-sidebar-first .block h2,.region-si=
debar-second .block h2{margin:0 0 15px 0;padding:0 0 5px 0;}.region-cont=
ent{line-height:155%;}#site-name{font-size:250%;}#header{clear:both;}#he=
ader-inside{margin:0 auto;padding:40px 0;overflow:hidden;}#header-menu{c=
lear:both;}#logo{display:block;overflow:hidden;padding:0;margin:0;}#logo=
a{padding:0;margin:0;display:block;overflow:hidden;}#logo img{padding:0=
;margin:0;display:block;overflow:hidden;}#banner{clear:both;border-botto=
m:1px solid #fcfcfc;overflow:hidden;}#content{clear:both;overflow:hidden=
;}#content-inside{padding:30px 0 60px;}#main{}#sidebar{}.no-sidebars #ma=
in{padding-top:10px;padding-bottom:10px;}.no-sidebars #sidebar{display:n=
one;}.meta-data{font-size:75%;text-transform:uppercase;color:#545454;mar=
gin:5px 0 20px 0;display:block;overflow:hidden;clear:both;}#footer{clear=
:both;overflow:hidden;padding:20px 0 50px 0;}#footer-inside{}.footer-are=
a{}.footer-area.first{}.footer-area.second{}.footer-area.third{}.node.no=
de-teaser{margin-bottom:60px;}#footer-bottom{clear:both;overflow:hidden;=
padding:40px 0;}#footer-bottom-inside{}#footer-bottom-left{}#footer-bott=
om-right{}.region-sidebar-first .block .content,.region-sidebar-second .=
block .content{border:1px solid #ffffff;-webkit-border-radius:5px;-moz-b=
order-radius:5px;border-radius:5px;padding:20px;overflow:hidden;margin:0=
0 40px 0;-webkit-box-shadow:0 2px 6px #efefef inset;-moz-box-shadow:0 2=
px 6px #efefef inset;box-shadow:0 2px 6px #efefef inset;}.region-sidebar=
-first #block-block-2.block .content,.region-sidebar-second #block-block=
-2.block .content{background:none;border:none;padding:0;-webkit-box-shad=
ow:none;-moz-box-shadow:none;box-shadow:none;}.region-sidebar-first ul.m=
enu,.region-sidebar-second ul.menu{margin:0;padding:0;}.region-sidebar-f=
irst ul.menu li,.region-sidebar-second ul.menu li{list-style:none;margin=
:0;padding:5px;border-bottom:1px solid #e7e7e7;display:block;}.region-si=
debar-first ul.menu li.expanded,.region-sidebar-second ul.menu li.expand=
ed{border-bottom:none;}.region-sidebar-first ul.menu ul.menu,.region-sid=
ebar-second ul.menu ul.menu{padding:0 0 0 15px;}.region-sidebar-first ul=
.menu li.collapsed,.region-sidebar-second ul.menu li.collapsed,#footer .=
block ul.menu li.collapsed{background:url(/sites/all/themes/corporatecle=
an/images/menu-collapsed.png) no-repeat scroll left 10px transparent;}.r=
egion-sidebar-first ul.menu li.expanded,.region-sidebar-second ul.menu l=
i.expanded,#footer .block ul.menu li.expanded{background:url(/sites/all/=
themes/corporateclean/images/menu-expanded.png) no-repeat scroll left 10=
px transparent;}.region-sidebar-first ul.menu li.collapsed > a,.region-s=
idebar-second ul.menu li.collapsed > a,#footer .block ul.menu li.collaps=
ed > a{padding-left:15px;}.region-sidebar-first ul.menu li.expanded > a,=
.region-sidebar-second ul.menu li.expanded > a,#footer .block ul.menu li=
.expanded > a{padding-left:15px;}.contact-form{margin:10px 0;}.filter-wr=
apper{border:1px solid #DDDDDD;border-top:none;}.user-picture{float:left=
;padding:0 20px 10px 0;}.about-features{padding:60px 0 0 0;}.about-featu=
re.last{}.about-members{clear:both;padding:10px 0 0 0;}.about-member{bac=
kground:transparent url(/sites/all/themes/corporateclean/images/pattern.=
png);border:1px solid #e4e4e4;padding:15px;margin-bottom:15px;}.about-fe=
ature h2{margin-top:0;}.about-member p{margin:0;}.product{margin-bottom:=
60px;}.product h2{margin:0 0 5px 0;}.product-subtitle{padding:0 0 10px 0=
;}.services{clear:both;padding:20px 0;}.service-left{}.service-right{}.t=
estimonial{display:block;overflow:hidden;position:relative;clear:both;}.=
testimonial-inner{outline:none;border:1px solid #ffffff;-webkit-border-r=
adius:5px;-moz-border-radius:5px;border-radius:5px;padding:20px;overflow=
:hidden;background:#ffffff;margin:25px 0 0 0;font-style:italic;-webkit-b=
ox-shadow:0 2px 3px #efefef inset;-moz-box-shadow:0 2px 3px #efefef inse=
t;box-shadow:0 2px 3px #efefef inset;}.testimonial-submitted{background:=
url(/sites/all/themes/corporateclean/images/testimonial.png) no-repeat s=
croll 95% 0 transparent;text-align:right;padding:20px 0 0 0;}#header-men=
u ul.menu{display:block;padding:0;margin:0;position:relative;z-index:100=
;}#header-menu ul.menu li{display:inline-block;float:left;vertical-align=
:middle;padding:0;margin:0;}#header-menu ul.menu li a{outline:none;text-=
decoration:none;margin:0 25px 0 0;padding:10px 5px;font-size:14px;font-w=
eight:normal;text-align:center;text-transform:uppercase;font-family:Myri=
ad Pro,"Lucida Grande","Lucida Sans Unicode",Segoe UI,Helvetica,Arial,sa=
ns-serif;display:block;}#header-menu ul.menu li.first a{padding-left:0;}=
#header-menu ul.menu li.last a{padding-right:0;}#header-menu ul.menu li =
a:hover,#header-menu ul.menu li a.active{color:#1487d4;}#header-menu ul.=
menu li a:after{content:none;}#header-menu ul.menu li.expanded{position:=
relative;}#header-menu ul.menu li.expanded a{background:transparent url(=
/sites/all/themes/corporateclean/images/menu-expanded.png) no-repeat cen=
ter right;padding:10px 15px 10px 10px;}#header-menu ul.menu li.expanded =
ul.menu{width:230px;z-index:100;padding:0;display:none;position:absolute=
;}#header-menu ul.menu li.expanded:hover,#header-menu ul.menu li.expande=
d:hover > ul.menu{display:block;}#header-menu ul.menu li.expanded ul.men=
u li a{padding:10px;margin:0;display:block;width:210px;text-align:left;l=
ine-height:130%;background:none;font-size:12px;}#header-menu ul.menu li.=
expanded ul.menu li.expanded{background:transparent url(/sites/all/theme=
s/corporateclean/images/menu-collapsed.png) no-repeat center right;}#hea=
der-menu ul.menu li ul.menu li a:hover{background:#1b1b1b;color:#1487d4;=
}#header-menu ul.menu li.expanded ul.menu li.expanded a:hover{background=
:#1b1b1b url(/sites/all/themes/corporateclean/images/menu-collapsed.png)=
no-repeat center right;}#header-menu ul.menu li.expanded ul.menu li.lea=
f a:hover{background:#1b1b1b;}#header-menu ul.menu li.expanded ul ul{dis=
play:none;left:230px;top:0;padding:0;}#navigation .block-superfish ul.sf=
-menu{margin:0;padding:0;}#navigation .block-superfish ul.sf-menu li a{m=
argin:0 25px 0 0;padding:10px;font-size:14px;font-weight:normal;text-ali=
gn:left;text-transform:uppercase;font-family:Myriad Pro,"Lucida Grande",=
"Lucida Sans Unicode",Segoe UI,Helvetica,Arial,sans-serif;}#navigation .=
block-superfish ul.sf-menu li a.menuparent{padding:10px 30px 10px 10px;}=
#navigation .block-superfish ul.sf-menu li.first a{padding-left:0;}#navi=
gation .block-superfish ul.sf-menu li.last a{margin-right:0;}#navigation=
.block-superfish ul.sf-menu li li a,#navigation .block-superfish ul.sf-=
menu li li.first a,#navigation .block-superfish ul.sf-menu li li.last a{=
margin:0;padding:10px;font-size:12px;}#navigation .block-superfish ul.sf=
-menu li:hover ul,#navigation .block-superfish ul.sf-menu li.sfHover ul{=
top:35px;}#navigation .block-superfish ul.sf-menu li:hover ul ul,#naviga=
tion .block-superfish ul.sf-menu li.sfHover ul ul{top:0;}#navigation .bl=
ock-superfish select{width:100%;margin:10px 0;padding:5px;}#navigation .=
block-superfish ul.sf-menu li,#navigation .block-superfish ul.sf-menu li=
a,#navigation .block-superfish ul.sf-menu li:hover,#navigation .block-s=
uperfish ul.sf-menu li a:focus,.block-superfish ul.sf-menu li a:hover,#n=
avigation .block-superfish ul.sf-menu li a:active{background:none;border=
:none;}#footer .block ul.menu{margin:0;padding:0;}#footer .block ul.menu=
ul.menu{margin:0 0 0 15px;}#footer .block ul.menu li{list-style:none;ma=
rgin:0;padding:0;list-style-image:none;}#footer .block ul.menu li a{disp=
lay:block;padding:5px;}ul.secondary-menu,#footer-bottom ul.menu{padding:=
0;margin:0 0 10px 0;display:block;overflow:hidden;}ul.secondary-menu li,=
#footer-bottom ul.menu li{display:block;float:left;list-style-type:none;=
overflow:hidden;padding:0 10px;margin:0;}ul.secondary-menu li.first,#foo=
ter-bottom ul.menu li.first{padding:0 10px 0 0;margin:0;}ul.secondary-me=
nu li.last,#footer-bottom ul.menu li.last{border-right:none;margin:0;}#f=
ooter-bottom ul.menu ul.menu{display:none;}#comments{padding:20px 0 0 0;=
}.comment{border:1px solid #ffffff;-webkit-border-radius:5px;-moz-border=
-radius:5px;border-radius:5px;padding:20px;overflow:hidden;background:#f=
fffff;margin:0 0 30px 0;-webkit-box-shadow:0 2px 6px #efefef inset;-moz-=
box-shadow:0 2px 6px #efefef inset;box-shadow:0 2px 6px #efefef inset;}#=
comments-title{border:1px solid #e7e7e7;padding:5px 10px;display:block;o=
verflow:hidden;margin:0 0 30px 0;background:#fdfdfd;background-image:-ms=
-linear-gradient(top,#fdfdfd 0%,#efefef 100%);background-image:-moz-line=
ar-gradient(top,#fdfdfd 0%,#efefef 100%);background-image:-o-linear-grad=
ient(top,#fdfdfd 0%,#efefef 100%);background-image:-webkit-gradient(line=
ar,left top,left bottom,color-stop(0,#fdfdfd),color-stop(1,#efefef));bac=
kground-image:-webkit-linear-gradient(top,#fdfdfd 0%,#efefef 100%);backg=
round-image:linear-gradient(top,#fdfdfd 0%,#efefef 100%);filter:progid:D=
XImageTransform.Microsoft.gradient(startColorstr=3D'#fdfdfd',endColorstr=
=3D'#efefef');-webkit-border-radius:5px;-moz-border-radius:5px;border-ra=
dius:5px;}#comments-title h2{padding:0;margin:0;}#comments-title-left{fl=
oat:left;width:50%;}#comments-title-right{float:right;width:50%;text-ali=
gn:right;}#comments-title-right .counter{color:#979696;font-weight:bold;=
font-size:20px;background:transparent url(/sites/all/themes/corporatecle=
an/images/comments.png) no-repeat center left;padding:0 0 0 35px;}#comme=
nts h3{margin:0;padding:10px 0 20px 0;font-weight:normal;}#comments ul.l=
inks{display:block;}#comments ul.links li a{color:#fefefe;padding:5px 10=
px;margin:0 0 0 2px;text-shadow:0 1px 1px #003547;font-weight:bold;borde=
r:none;font-family:"Lucida Grande","Lucida Sans Unicode",Segoe UI,Helvet=
ica,Arial,sans-serif;cursor:pointer;-webkit-border-radius:5px;-moz-borde=
r-radius:5px;border-radius:5px;-webkit-box-shadow:0px 1px 2px #939da2;-m=
oz-box-shadow:0px 1px 2px #939da2;box-shadow:0px 1px 2px #939da2;}#comme=
nts ul.links li a:hover{text-decoration:none;}.poll .bar .foreground{bac=
kground-color:#0092c3;}.poll .title{padding:0 0 20px 0;}#block-node-rece=
nt table,#block-node-recent td{border:none;}#block-node-recent table tbo=
dy{border:none;}#block-node-recent tr.even,#block-node-recent tr.odd{bor=
der-bottom:1px solid #e7e7e7;}#block-search-form{background:#e8e8e8;bord=
er:none;overflow:hidden;-webkit-border-radius:5px;-moz-border-radius:5px=
;border-radius:5px;-webkit-box-shadow:0px 2px 5px #c8c8c8 inset;-moz-box=
-shadow:0px 2px 5px #c8c8c8 inset;box-shadow:0px 2px 5px #c8c8c8 inset;}=
#header #block-search-form{margin:15px 0 0 0;}#block-search-form .form-i=
tem{margin:0;padding:0;}#block-search-form input.form-text{background:no=
ne;border:none;outline:none;text-decoration:none;color:#9f9f9f;float:lef=
t;width:70%;padding:10px;margin:0;height:15px;line-height:15px;-webkit-b=
ox-shadow:none;-moz-box-shadow:none;box-shadow:none;}#block-search-form =
input.form-submit{background:none;border:none;outline:none;padding:6px 1=
0px 0 10px;float:right;}.region-sidebar-first #block-search-form,.region=
-sidebar-second #block-search-form{-webkit-box-shadow:none;-moz-box-shad=
ow:none;box-shadow:none;}.region-sidebar-first #block-search-form.block,=
.region-sidebar-second #block-search-form.block{background:none;}.region=
-sidebar-first #block-search-form.block .content,.region-sidebar-second =
#block-search-form.block .content{background:#ffffff;border:1px solid #F=
FFFFF;overflow:hidden;padding:0;}div.messages.status{background:#52ac61;=
border:1px solid #46a055;padding:10px;margin:0 0 15px 0;color:#ffffff;}d=
iv.messages.error{background:#d30000;border:1px solid #b50000;padding:10=
px;margin:0 0 15px 0;color:#ffffff;}div.messages.warning{background:#dd6=
e0c;border:1px solid #d2ac7f;padding:10px;margin:0 0 15px 0;color:#fffff=
f;}div.messages.status a,div.messages.error a,div.messages.warning a{col=
or:#ffffff;text-decoration:underline;}#slider{position:relative;margin:0=
auto;padding:0;}#slideshow{position:relative;display:none;}#slideshow i=
mg{display:none;}.slider-item{width:100%!important;max-width:100%!import=
ant;}.slider-item .content{padding:30px 0 0 0;position:relative;}.slider=
-item a{outline:none;}#slider-controls-wrapper{padding:20px 0;display:no=
ne;}#slider-controls{display:block;text-align:center;}#slider-controls u=
l{display:block;overflow:hidden;margin:0;padding:0;text-align:center;}#s=
lider-controls ul li{display:inline;margin:0;padding:0;list-style:none;}=
#slider-controls ul li a{width:17px;height:17px;background:url(/sites/al=
l/themes/corporateclean/images/inactive-slide.png) no-repeat center cent=
er;display:inline-block;padding:0;margin:0;outline:none;}#slider-control=
s ul li a:focus{outline:none;}#slider-controls ul li.activeSlide a:hover=
,#slider-controls ul li.activeSlide a{background:url(/sites/all/themes/c=
orporateclean/images/active-slide.png) no-repeat center center;}#slidesh=
ow h2{margin:0 0 10px 0;color:#222222;font-size:30px;font-weight:bold;}t=
able{border-spacing:0;border:0;width:100%;}table td,table th{border:1px =
solid #bbbbbb;}table th{background:#222222;color:#ffffff;font-weight:bol=
d;}table tr.odd{background:transparent;}table tr.even{background:#ffffff=
;}table td,table th{padding:5px;}table.noborder td,table.noborder th,tab=
le.noborder tr{border:none;}ol{list-style-type:decimal;}ol ol{list-style=
-type:upper-alpha;}ol ol ol{list-style-type:lower-alpha;}li{display:list=
-item;}.pager-current{font-weight:bold;color:#7c713f;}.links{display:blo=
ck;text-align:right;}.links li{list-style-type:none;}.item-list ul{margi=
n:0 0 0.25em 1em;padding:0;}.item-list ul li{margin:0 0 0 5px;padding:0 =
0 5px 5px;}ol.search-results{padding:0;}.links ul li a,a.more,input[type=
=3D"submit"],input[type=3D"reset"],input[type=3D"button"]{color:#fefefe;=
padding:7px 15px;text-shadow:0 1px 1px #003547;font-weight:bold;border:n=
one;font-family:"Lucida Grande","Lucida Sans Unicode",Segoe UI,Helvetica=
,Arial,sans-serif;cursor:pointer;-webkit-border-radius:15px;-moz-border-=
radius:15px;border-radius:15px;-webkit-box-shadow:0px 1px 2px #939da2;-m=
oz-box-shadow:0px 1px 2px #939da2;box-shadow:0px 1px 2px #939da2;}.links=
ul li a:hover,a.more:hover,input[type=3D"submit"]:hover,input[type=3D"r=
eset"]:hover,input[type=3D"button"]:hover{text-decoration:none;}.resizab=
le-textarea .grippie{border:1px solid #dddddd;}#edit-submit,#edit-previe=
w{margin:0 10px 0 0;}#block-search-form input.form-submit{margin:0;borde=
r:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;back=
ground:none;filter:none;}ul.inline li{display:inline-block;margin:0;padd=
ing:10px 5px;zoom:1;*display:inline;}input.form-submit{margin:0 10px 0 0=
;}label{font-weight:bold;}input.form-text{background:#e8e8e8;border:1px =
solid #f2f2f2;font-family:"Lucida Grande","Lucida Sans Unicode",Segoe UI=
,Helvetica,Arial,sans-serif;height:25px;line-height:25px;margin:0 0 10px=
0;padding:5px;width:80%;color:#5f6a5f;-webkit-border-radius:5px;-moz-bo=
rder-radius:5px;border-radius:5px;-webkit-box-shadow:0px 2px 3px #bcbcbc=
inset;-moz-box-shadow:0px 2px 3px #bcbcbc inset;box-shadow:0px 2px 3px =
#bcbcbc inset;}input.form-text.error{border:2px solid red;}textarea{back=
ground:#e8e8e8;border:1px solid #f2f2f2;font-family:"Lucida Grande","Luc=
ida Sans Unicode",Segoe UI,Helvetica,Arial,sans-serif;margin:0 20px 10px=
0;padding:10px 5px;height:155px;font-size:100%;color:#5f6a5f;-webkit-bo=
rder-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-sha=
dow:0px 2px 3px #bcbcbc inset;-moz-box-shadow:0px 2px 3px #bcbcbc inset;=
box-shadow:0px 2px 3px #bcbcbc inset;}.filter-wrapper{border:1px solid #=
DDDDDD;border-top:none;}ul.social-bookmarks{margin:0;padding:0;}ul.socia=
l-bookmarks li{display:inline-block;float:left;list-style-type:none;marg=
in:0;}ul.social-bookmarks li a{display:inline-block;width:25px;height:24=
px;padding:0 3px;margin:0 auto;text-align:center;overflow:hidden;outline=
:none;}ul.social-bookmarks li.label{padding:0 15px 0 0;}ul.social-bookma=
rks li.facebook a{background:url(/sites/all/themes/corporateclean/images=
/social-media-facebook.png) no-repeat center bottom;}ul.social-bookmarks=
li.twitter a{background:url(/sites/all/themes/corporateclean/images/soc=
ial-media-twitter.png) no-repeat center bottom;}ul.social-bookmarks li.r=
ss a{background:url(/sites/all/themes/corporateclean/images/social-media=
-rss.png) no-repeat center bottom;}ul.social-bookmarks li.linkedin a{bac=
kground:url(/sites/all/themes/corporateclean/images/social-media-linkedi=
n.png) no-repeat center bottom;}ul.social-bookmarks li.delicious a{backg=
round:url(/sites/all/themes/corporateclean/images/social-media-delicious=
.png) no-repeat center bottom;}#forum{padding:20px 0;}.twtr-hd,.twtr-ft{=
display:none;}.twtr-bd{display:block;overflow:hidden;}.twtr-widget .twtr=
-tweet{border-bottom:1px solid #353535 !important;padding:0 0 5px 0;marg=
in:0 0 5px 0;}ul.primary,ul.tabs{clear:both;margin:10px 0 35px 0;white-s=
pace:normal}ul.primary li,ul.tabs li{padding:10px 0;line-height:130%;}ul=
.primary li a,ul.tabs li a{margin:0;padding:4px 1em;display:inline-block=
;}.node-teaser .comment-add{display:none;}
body{color:#7a7a7a;background:#1a1a1a;}a,li a.active,#footer a:hover,#fo=
oter li a.active:hover,#footer-bottom a:hover,#footer-bottom li a.active=
:hover,#header a,#header-menu ul.menu li a:hover,#header-menu ul.menu li=
a.active,#header-menu ul.menu li ul.menu li a:hover,#navigation .block-=
superfish ul.sf-menu li a:focus,#navigation .block-superfish ul.sf-menu =
li a:hover,#navigation .block-superfish ul.sf-menu li a.active,.front .n=
ode h1.front-heading{color:#1487d4;}#header-menu a,#header-menu ul.menu =
li a,#navigation .block-superfish ul.sf-menu li a{color:#ffffff;}#footer=
a,#footer li a.active,#footer-bottom a,#footer-bottom li a.active{color=
:#e4e4e4;}h1,h2,h3,h4,h5,h6{color:#1487d4;text-shadow:1px 1px 1px #eaf1e=
a;}#slogan{color:#d5d5d5;}#header{background:#2f2f2f;background-image:-m=
s-linear-gradient(top,#2f2f2f 0%,#1b1a1a 100%);background-image:-moz-lin=
ear-gradient(top,#2f2f2f 0%,#1b1a1a 100%);background-image:-o-linear-gra=
dient(top,#2f2f2f 0%,#1b1a1a 100%);background-image:-webkit-gradient(lin=
ear,left top,left bottom,color-stop(0,#2f2f2f),color-stop(1,#1b1a1a));ba=
ckground-image:-webkit-linear-gradient(top,#2f2f2f 0%,#1b1a1a 100%);back=
ground-image:linear-gradient(top,#2f2f2f 0%,#1b1a1a 100%);filter:progid:=
DXImageTransform.Microsoft.gradient(startColorstr=3D'#2f2f2f',endColorst=
r=3D'#1b1a1a');}#header-menu{background:#222222;border-top:1px solid #35=
3535;border-bottom:1px solid #353535;}#header-menu ul.menu li.expanded u=
l.menu,#navigation .block-superfish ul.sf-menu li,#navigation .block-sup=
erfish ul.sf-menu li li a{background:#222222;}#header-menu ul.menu li.ex=
panded ul.menu li a,#footer .block ul.menu li a,#navigation .block-super=
fish ul.sf-menu li li a{border-bottom:1px solid #353535;}#footer-bottom{=
border-top:1px solid #353535;}ul.secondary-menu li,#footer-bottom ul.men=
u li{border-right:1px solid #353535;}#header-menu ul.menu li ul.menu li =
a:hover,#header-menu ul.menu li.expanded ul.menu li.expanded a:hover,#he=
ader-menu ul.menu li.expanded ul.menu li.leaf a:hover,#navigation .block=
-superfish ul.sf-menu li li:hover,#navigation .block-superfish ul.sf-men=
u li li a:focus,#navigation .block-superfish ul.sf-menu li li a:hover,#n=
avigation .block-superfish ul.sf-menu li li a:active{background-color:#1=
b1b1b;}#banner{background:#efeeee;background-image:-ms-linear-gradient(t=
op,#efeeee 0%,#dadada 100%);background-image:-moz-linear-gradient(top,#e=
feeee 0%,#dadada 100%);background-image:-o-linear-gradient(top,#efeeee 0=
%,#dadada 100%);background-image:-webkit-gradient(linear,left top,left b=
ottom,color-stop(0,#efeeee),color-stop(1,#dadada));background-image:-web=
kit-linear-gradient(top,#efeeee 0%,#dadada 100%);background-image:linear=
-gradient(top,#efeeee 0%,#dadada 100%);filter:progid:DXImageTransform.Mi=
crosoft.gradient(startColorstr=3D'#efeeee',endColorstr=3D'#dadada');bord=
er-bottom:1px solid #fcfcfc;}#content{background:#e8e8e8;background-imag=
e:-ms-linear-gradient(top,#e8e8e8 0%,#efefef 100%);background-image:-moz=
-linear-gradient(top,#e8e8e8 0%,#efefef 100%);background-image:-o-linear=
-gradient(top,#e8e8e8 0%,#efefef 100%);background-image:-webkit-gradient=
(linear,left top,left bottom,color-stop(0,#e8e8e8),color-stop(1,#efefef)=
);background-image:-webkit-linear-gradient(top,#e8e8e8 0%,#efefef 100%);=
background-image:linear-gradient(top,#e8e8e8 0%,#efefef 100%);filter:pro=
gid:DXImageTransform.Microsoft.gradient(startColorstr=3D'#e8e8e8',endCol=
orstr=3D'#efefef');}#footer{background:#181818;}#footer-bottom{backgroun=
d:#1a1a1a;background-image:-ms-linear-gradient(top,#262626 0%,#1a1a1a 10=
0%);background-image:-moz-linear-gradient(top,#262626 0%,#1a1a1a 100%);b=
ackground-image:-o-linear-gradient(top,#262626 0%,#1a1a1a 100%);backgrou=
nd-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#2626=
26),color-stop(1,#1a1a1a));background-image:-webkit-linear-gradient(top,=
#262626 0%,#1a1a1a 100%);background-image:linear-gradient(top,#262626 0%=
,#1a1a1a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startCo=
lorstr=3D'#262626',endColorstr=3D'#1a1a1a');}.links ul li a,a.more,#comm=
ents ul.links li a,input[type=3D"submit"],input[type=3D"reset"],input[ty=
pe=3D"button"]{color:#fefefe;text-shadow:0 1px 1px #003547;background:#0=
093c5;background-image:-ms-linear-gradient(top,#0093c5 0%,#0079a2 100%);=
background-image:-moz-linear-gradient(top,#0093c5 0%,#0079a2 100%);backg=
round-image:-o-linear-gradient(top,#0093c5 0%,#0079a2 100%);background-i=
mage:-webkit-gradient(linear,left top,left bottom,color-stop(0,#0093c5),=
color-stop(1,#0079a2));background-image:-webkit-linear-gradient(top,#009=
3c5 0%,#0079a2 100%);background-image:linear-gradient(top,#0093c5 0%,#00=
79a2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColors=
tr=3D'#0093c5',endColorstr=3D'#0079a2');-webkit-box-shadow:0px 1px 2px #=
939da2;-moz-box-shadow:0px 1px 2px #939da2;box-shadow:0px 1px 2px #939da=
2;}.links ul li a:hover,a.more:hover,#comments ul.links li a:hover,input=
[type=3D"submit"]:hover,input[type=3D"reset"]:hover,input[type=3D"button=
"]:hover{background:#008ab8;}.region-sidebar-first .block .content,.regi=
on-sidebar-second .block .content{background:#fdfdfd;}
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=js_oCVMDTeSNt-_QxknevWyf6yO5OzmME3AhRz3ggZgNtg.js
Content-Type: application/javascript; name=js_oCVMDTeSNt-_QxknevWyf6yO5OzmME3AhRz3ggZgNtg.js
Content-Location: http://www.websecurity.es/files/js/js_oCVMDTeSNt-_QxknevWyf6yO5OzmME3AhRz3ggZgNtg.js
Content-Transfer-Encoding: Base64
LyohIGpRdWVyeSB2MS4xMC4yIHwgKGMpIDIwMDUsIDIwMTMgalF1ZXJ5IEZvdW5k
YXRpb24sIEluYy4gfCBqcXVlcnkub3JnL2xpY2Vuc2UKLy9AIHNvdXJjZU1hcHBp
bmdVUkw9anF1ZXJ5LTEuMTAuMi5taW4ubWFwCiovCihmdW5jdGlvbihlLHQpe3Zh
ciBuLHIsaT10eXBlb2YgdCxvPWUubG9jYXRpb24sYT1lLmRvY3VtZW50LHM9YS5k
b2N1bWVudEVsZW1lbnQsbD1lLmpRdWVyeSx1PWUuJCxjPXt9LHA9W10sZj0iMS4x
MC4yIixkPXAuY29uY2F0LGg9cC5wdXNoLGc9cC5zbGljZSxtPXAuaW5kZXhPZix5
PWMudG9TdHJpbmcsdj1jLmhhc093blByb3BlcnR5LGI9Zi50cmltLHg9ZnVuY3Rp
b24oZSx0KXtyZXR1cm4gbmV3IHguZm4uaW5pdChlLHQscil9LHc9L1srLV0/KD86
XGQqXC58KVxkKyg/OltlRV1bKy1dP1xkK3wpLy5zb3VyY2UsVD0vXFMrL2csQz0v
Xltcc1x1RkVGRlx4QTBdK3xbXHNcdUZFRkZceEEwXSskL2csTj0vXig/OlxzKig8
W1x3XFddKz4pW14+XSp8IyhbXHctXSopKSQvLGs9L148KFx3KylccypcLz8+KD86
PFwvXDE+fCkkLyxFPS9eW1xdLDp7fVxzXSokLyxTPS8oPzpefDp8LCkoPzpccypc
WykrL2csQT0vXFwoPzpbIlxcXC9iZm5ydF18dVtcZGEtZkEtRl17NH0pL2csaj0v
IlteIlxcXHJcbl0qInx0cnVlfGZhbHNlfG51bGx8LT8oPzpcZCtcLnwpXGQrKD86
W2VFXVsrLV0/XGQrfCkvZyxEPS9eLW1zLS8sTD0vLShbXGRhLXpdKS9naSxIPWZ1
bmN0aW9uKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX0scT1mdW5jdGlvbihl
KXsoYS5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0
ZSI9PT1hLnJlYWR5U3RhdGUpJiYoXygpLHgucmVhZHkoKSl9LF89ZnVuY3Rpb24o
KXthLmFkZEV2ZW50TGlzdGVuZXI/KGEucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9N
Q29udGVudExvYWRlZCIscSwhMSksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2Fk
IixxLCExKSk6KGEuZGV0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIscSks
ZS5kZXRhY2hFdmVudCgib25sb2FkIixxKSl9O3guZm49eC5wcm90b3R5cGU9e2px
dWVyeTpmLGNvbnN0cnVjdG9yOngsaW5pdDpmdW5jdGlvbihlLG4scil7dmFyIGks
bztpZighZSlyZXR1cm4gdGhpcztpZigic3RyaW5nIj09dHlwZW9mIGUpe2lmKGk9
IjwiPT09ZS5jaGFyQXQoMCkmJiI+Ij09PWUuY2hhckF0KGUubGVuZ3RoLTEpJiZl
Lmxlbmd0aD49Mz9bbnVsbCxlLG51bGxdOk4uZXhlYyhlKSwhaXx8IWlbMV0mJm4p
cmV0dXJuIW58fG4uanF1ZXJ5PyhufHxyKS5maW5kKGUpOnRoaXMuY29uc3RydWN0
b3IobikuZmluZChlKTtpZihpWzFdKXtpZihuPW4gaW5zdGFuY2VvZiB4P25bMF06
bix4Lm1lcmdlKHRoaXMseC5wYXJzZUhUTUwoaVsxXSxuJiZuLm5vZGVUeXBlP24u
b3duZXJEb2N1bWVudHx8bjphLCEwKSksay50ZXN0KGlbMV0pJiZ4LmlzUGxhaW5P
YmplY3QobikpZm9yKGkgaW4gbil4LmlzRnVuY3Rpb24odGhpc1tpXSk/dGhpc1tp
XShuW2ldKTp0aGlzLmF0dHIoaSxuW2ldKTtyZXR1cm4gdGhpc31pZihvPWEuZ2V0
RWxlbWVudEJ5SWQoaVsyXSksbyYmby5wYXJlbnROb2RlKXtpZihvLmlkIT09aVsy
XSlyZXR1cm4gci5maW5kKGUpO3RoaXMubGVuZ3RoPTEsdGhpc1swXT1vfXJldHVy
biB0aGlzLmNvbnRleHQ9YSx0aGlzLnNlbGVjdG9yPWUsdGhpc31yZXR1cm4gZS5u
b2RlVHlwZT8odGhpcy5jb250ZXh0PXRoaXNbMF09ZSx0aGlzLmxlbmd0aD0xLHRo
aXMpOnguaXNGdW5jdGlvbihlKT9yLnJlYWR5KGUpOihlLnNlbGVjdG9yIT09dCYm
KHRoaXMuc2VsZWN0b3I9ZS5zZWxlY3Rvcix0aGlzLmNvbnRleHQ9ZS5jb250ZXh0
KSx4Lm1ha2VBcnJheShlLHRoaXMpKX0sc2VsZWN0b3I6IiIsbGVuZ3RoOjAsdG9B
cnJheTpmdW5jdGlvbigpe3JldHVybiBnLmNhbGwodGhpcyl9LGdldDpmdW5jdGlv
bihlKXtyZXR1cm4gbnVsbD09ZT90aGlzLnRvQXJyYXkoKTowPmU/dGhpc1t0aGlz
Lmxlbmd0aCtlXTp0aGlzW2VdfSxwdXNoU3RhY2s6ZnVuY3Rpb24oZSl7dmFyIHQ9
eC5tZXJnZSh0aGlzLmNvbnN0cnVjdG9yKCksZSk7cmV0dXJuIHQucHJldk9iamVj
dD10aGlzLHQuY29udGV4dD10aGlzLmNvbnRleHQsdH0sZWFjaDpmdW5jdGlvbihl
LHQpe3JldHVybiB4LmVhY2godGhpcyxlLHQpfSxyZWFkeTpmdW5jdGlvbihlKXty
ZXR1cm4geC5yZWFkeS5wcm9taXNlKCkuZG9uZShlKSx0aGlzfSxzbGljZTpmdW5j
dGlvbigpe3JldHVybiB0aGlzLnB1c2hTdGFjayhnLmFwcGx5KHRoaXMsYXJndW1l
bnRzKSl9LGZpcnN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoMCl9LGxhc3Q6
ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcSgtMSl9LGVxOmZ1bmN0aW9uKGUpe3Zh
ciB0PXRoaXMubGVuZ3RoLG49K2UrKDA+ZT90OjApO3JldHVybiB0aGlzLnB1c2hT
dGFjayhuPj0wJiZ0Pm4/W3RoaXNbbl1dOltdKX0sbWFwOmZ1bmN0aW9uKGUpe3Jl
dHVybiB0aGlzLnB1c2hTdGFjayh4Lm1hcCh0aGlzLGZ1bmN0aW9uKHQsbil7cmV0
dXJuIGUuY2FsbCh0LG4sdCl9KSl9LGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlz
LnByZXZPYmplY3R8fHRoaXMuY29uc3RydWN0b3IobnVsbCl9LHB1c2g6aCxzb3J0
OltdLnNvcnQsc3BsaWNlOltdLnNwbGljZX0seC5mbi5pbml0LnByb3RvdHlwZT14
LmZuLHguZXh0ZW5kPXguZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsbixyLGks
byxhLHM9YXJndW1lbnRzWzBdfHx7fSxsPTEsdT1hcmd1bWVudHMubGVuZ3RoLGM9
ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIHMmJihjPXMscz1hcmd1bWVudHNbMV18
fHt9LGw9MiksIm9iamVjdCI9PXR5cGVvZiBzfHx4LmlzRnVuY3Rpb24ocyl8fChz
PXt9KSx1PT09bCYmKHM9dGhpcywtLWwpO3U+bDtsKyspaWYobnVsbCE9KG89YXJn
dW1lbnRzW2xdKSlmb3IoaSBpbiBvKWU9c1tpXSxyPW9baV0scyE9PXImJihjJiZy
JiYoeC5pc1BsYWluT2JqZWN0KHIpfHwobj14LmlzQXJyYXkocikpKT8obj8obj0h
MSxhPWUmJnguaXNBcnJheShlKT9lOltdKTphPWUmJnguaXNQbGFpbk9iamVjdChl
KT9lOnt9LHNbaV09eC5leHRlbmQoYyxhLHIpKTpyIT09dCYmKHNbaV09cikpO3Jl
dHVybiBzfSx4LmV4dGVuZCh7ZXhwYW5kbzoialF1ZXJ5IisoZitNYXRoLnJhbmRv
bSgpKS5yZXBsYWNlKC9cRC9nLCIiKSxub0NvbmZsaWN0OmZ1bmN0aW9uKHQpe3Jl
dHVybiBlLiQ9PT14JiYoZS4kPXUpLHQmJmUualF1ZXJ5PT09eCYmKGUualF1ZXJ5
PWwpLHh9LGlzUmVhZHk6ITEscmVhZHlXYWl0OjEsaG9sZFJlYWR5OmZ1bmN0aW9u
KGUpe2U/eC5yZWFkeVdhaXQrKzp4LnJlYWR5KCEwKX0scmVhZHk6ZnVuY3Rpb24o
ZSl7aWYoZT09PSEwPyEtLXgucmVhZHlXYWl0OiF4LmlzUmVhZHkpe2lmKCFhLmJv
ZHkpcmV0dXJuIHNldFRpbWVvdXQoeC5yZWFkeSk7eC5pc1JlYWR5PSEwLGUhPT0h
MCYmLS14LnJlYWR5V2FpdD4wfHwobi5yZXNvbHZlV2l0aChhLFt4XSkseC5mbi50
cmlnZ2VyJiZ4KGEpLnRyaWdnZXIoInJlYWR5Iikub2ZmKCJyZWFkeSIpKX19LGlz
RnVuY3Rpb246ZnVuY3Rpb24oZSl7cmV0dXJuImZ1bmN0aW9uIj09PXgudHlwZShl
KX0saXNBcnJheTpBcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iYXJy
YXkiPT09eC50eXBlKGUpfSxpc1dpbmRvdzpmdW5jdGlvbihlKXtyZXR1cm4gbnVs
bCE9ZSYmZT09ZS53aW5kb3d9LGlzTnVtZXJpYzpmdW5jdGlvbihlKXtyZXR1cm4h
aXNOYU4ocGFyc2VGbG9hdChlKSkmJmlzRmluaXRlKGUpfSx0eXBlOmZ1bmN0aW9u
KGUpe3JldHVybiBudWxsPT1lP2UrIiI6Im9iamVjdCI9PXR5cGVvZiBlfHwiZnVu
Y3Rpb24iPT10eXBlb2YgZT9jW3kuY2FsbChlKV18fCJvYmplY3QiOnR5cGVvZiBl
fSxpc1BsYWluT2JqZWN0OmZ1bmN0aW9uKGUpe3ZhciBuO2lmKCFlfHwib2JqZWN0
IiE9PXgudHlwZShlKXx8ZS5ub2RlVHlwZXx8eC5pc1dpbmRvdyhlKSlyZXR1cm4h
MTt0cnl7aWYoZS5jb25zdHJ1Y3RvciYmIXYuY2FsbChlLCJjb25zdHJ1Y3RvciIp
JiYhdi5jYWxsKGUuY29uc3RydWN0b3IucHJvdG90eXBlLCJpc1Byb3RvdHlwZU9m
IikpcmV0dXJuITF9Y2F0Y2gocil7cmV0dXJuITF9aWYoeC5zdXBwb3J0Lm93bkxh
c3QpZm9yKG4gaW4gZSlyZXR1cm4gdi5jYWxsKGUsbik7Zm9yKG4gaW4gZSk7cmV0
dXJuIG49PT10fHx2LmNhbGwoZSxuKX0saXNFbXB0eU9iamVjdDpmdW5jdGlvbihl
KXt2YXIgdDtmb3IodCBpbiBlKXJldHVybiExO3JldHVybiEwfSxlcnJvcjpmdW5j
dGlvbihlKXt0aHJvdyBFcnJvcihlKX0scGFyc2VIVE1MOmZ1bmN0aW9uKGUsdCxu
KXtpZighZXx8InN0cmluZyIhPXR5cGVvZiBlKXJldHVybiBudWxsOyJib29sZWFu
Ij09dHlwZW9mIHQmJihuPXQsdD0hMSksdD10fHxhO3ZhciByPWsuZXhlYyhlKSxp
PSFuJiZbXTtyZXR1cm4gcj9bdC5jcmVhdGVFbGVtZW50KHJbMV0pXToocj14LmJ1
aWxkRnJhZ21lbnQoW2VdLHQsaSksaSYmeChpKS5yZW1vdmUoKSx4Lm1lcmdlKFtd
LHIuY2hpbGROb2RlcykpfSxwYXJzZUpTT046ZnVuY3Rpb24obil7cmV0dXJuIGUu
SlNPTiYmZS5KU09OLnBhcnNlP2UuSlNPTi5wYXJzZShuKTpudWxsPT09bj9uOiJz
dHJpbmciPT10eXBlb2YgbiYmKG49eC50cmltKG4pLG4mJkUudGVzdChuLnJlcGxh
Y2UoQSwiQCIpLnJlcGxhY2UoaiwiXSIpLnJlcGxhY2UoUywiIikpKT9GdW5jdGlv
bigicmV0dXJuICIrbikoKTooeC5lcnJvcigiSW52YWxpZCBKU09OOiAiK24pLHQp
fSxwYXJzZVhNTDpmdW5jdGlvbihuKXt2YXIgcixpO2lmKCFufHwic3RyaW5nIiE9
dHlwZW9mIG4pcmV0dXJuIG51bGw7dHJ5e2UuRE9NUGFyc2VyPyhpPW5ldyBET01Q
YXJzZXIscj1pLnBhcnNlRnJvbVN0cmluZyhuLCJ0ZXh0L3htbCIpKToocj1uZXcg
QWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTERPTSIpLHIuYXN5bmM9ImZhbHNl
IixyLmxvYWRYTUwobikpfWNhdGNoKG8pe3I9dH1yZXR1cm4gciYmci5kb2N1bWVu
dEVsZW1lbnQmJiFyLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJwYXJzZXJlcnJvciIp
Lmxlbmd0aHx8eC5lcnJvcigiSW52YWxpZCBYTUw6ICIrbikscn0sbm9vcDpmdW5j
dGlvbigpe30sZ2xvYmFsRXZhbDpmdW5jdGlvbih0KXt0JiZ4LnRyaW0odCkmJihl
LmV4ZWNTY3JpcHR8fGZ1bmN0aW9uKHQpe2UuZXZhbC5jYWxsKGUsdCl9KSh0KX0s
Y2FtZWxDYXNlOmZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UoRCwibXMtIiku
cmVwbGFjZShMLEgpfSxub2RlTmFtZTpmdW5jdGlvbihlLHQpe3JldHVybiBlLm5v
ZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT10LnRvTG93ZXJDYXNl
KCl9LGVhY2g6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk9MCxvPWUubGVuZ3RoLGE9
TShlKTtpZihuKXtpZihhKXtmb3IoO28+aTtpKyspaWYocj10LmFwcGx5KGVbaV0s
bikscj09PSExKWJyZWFrfWVsc2UgZm9yKGkgaW4gZSlpZihyPXQuYXBwbHkoZVtp
XSxuKSxyPT09ITEpYnJlYWt9ZWxzZSBpZihhKXtmb3IoO28+aTtpKyspaWYocj10
LmNhbGwoZVtpXSxpLGVbaV0pLHI9PT0hMSlicmVha31lbHNlIGZvcihpIGluIGUp
aWYocj10LmNhbGwoZVtpXSxpLGVbaV0pLHI9PT0hMSlicmVhaztyZXR1cm4gZX0s
dHJpbTpiJiYhYi5jYWxsKCJcdWZlZmZcdTAwYTAiKT9mdW5jdGlvbihlKXtyZXR1
cm4gbnVsbD09ZT8iIjpiLmNhbGwoZSl9OmZ1bmN0aW9uKGUpe3JldHVybiBudWxs
PT1lPyIiOihlKyIiKS5yZXBsYWNlKEMsIiIpfSxtYWtlQXJyYXk6ZnVuY3Rpb24o
ZSx0KXt2YXIgbj10fHxbXTtyZXR1cm4gbnVsbCE9ZSYmKE0oT2JqZWN0KGUpKT94
Lm1lcmdlKG4sInN0cmluZyI9PXR5cGVvZiBlP1tlXTplKTpoLmNhbGwobixlKSks
bn0saW5BcnJheTpmdW5jdGlvbihlLHQsbil7dmFyIHI7aWYodCl7aWYobSlyZXR1
cm4gbS5jYWxsKHQsZSxuKTtmb3Iocj10Lmxlbmd0aCxuPW4/MD5uP01hdGgubWF4
KDAscituKTpuOjA7cj5uO24rKylpZihuIGluIHQmJnRbbl09PT1lKXJldHVybiBu
fXJldHVybi0xfSxtZXJnZTpmdW5jdGlvbihlLG4pe3ZhciByPW4ubGVuZ3RoLGk9
ZS5sZW5ndGgsbz0wO2lmKCJudW1iZXIiPT10eXBlb2Ygcilmb3IoO3I+bztvKysp
ZVtpKytdPW5bb107ZWxzZSB3aGlsZShuW29dIT09dCllW2krK109bltvKytdO3Jl
dHVybiBlLmxlbmd0aD1pLGV9LGdyZXA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk9
W10sbz0wLGE9ZS5sZW5ndGg7Zm9yKG49ISFuO2E+bztvKyspcj0hIXQoZVtvXSxv
KSxuIT09ciYmaS5wdXNoKGVbb10pO3JldHVybiBpfSxtYXA6ZnVuY3Rpb24oZSx0
LG4pe3ZhciByLGk9MCxvPWUubGVuZ3RoLGE9TShlKSxzPVtdO2lmKGEpZm9yKDtv
Pmk7aSsrKXI9dChlW2ldLGksbiksbnVsbCE9ciYmKHNbcy5sZW5ndGhdPXIpO2Vs
c2UgZm9yKGkgaW4gZSlyPXQoZVtpXSxpLG4pLG51bGwhPXImJihzW3MubGVuZ3Ro
XT1yKTtyZXR1cm4gZC5hcHBseShbXSxzKX0sZ3VpZDoxLHByb3h5OmZ1bmN0aW9u
KGUsbil7dmFyIHIsaSxvO3JldHVybiJzdHJpbmciPT10eXBlb2YgbiYmKG89ZVtu
XSxuPWUsZT1vKSx4LmlzRnVuY3Rpb24oZSk/KHI9Zy5jYWxsKGFyZ3VtZW50cywy
KSxpPWZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkobnx8dGhpcyxyLmNvbmNhdChn
LmNhbGwoYXJndW1lbnRzKSkpfSxpLmd1aWQ9ZS5ndWlkPWUuZ3VpZHx8eC5ndWlk
KyssaSk6dH0sYWNjZXNzOmZ1bmN0aW9uKGUsbixyLGksbyxhLHMpe3ZhciBsPTAs
dT1lLmxlbmd0aCxjPW51bGw9PXI7aWYoIm9iamVjdCI9PT14LnR5cGUocikpe289
ITA7Zm9yKGwgaW4gcil4LmFjY2VzcyhlLG4sbCxyW2xdLCEwLGEscyl9ZWxzZSBp
ZihpIT09dCYmKG89ITAseC5pc0Z1bmN0aW9uKGkpfHwocz0hMCksYyYmKHM/KG4u
Y2FsbChlLGkpLG49bnVsbCk6KGM9bixuPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4g
Yy5jYWxsKHgoZSksbil9KSksbikpZm9yKDt1Pmw7bCsrKW4oZVtsXSxyLHM/aTpp
LmNhbGwoZVtsXSxsLG4oZVtsXSxyKSkpO3JldHVybiBvP2U6Yz9uLmNhbGwoZSk6
dT9uKGVbMF0scik6YX0sbm93OmZ1bmN0aW9uKCl7cmV0dXJuKG5ldyBEYXRlKS5n
ZXRUaW1lKCl9LHN3YXA6ZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbyxhPXt9O2Zv
cihvIGluIHQpYVtvXT1lLnN0eWxlW29dLGUuc3R5bGVbb109dFtvXTtpPW4uYXBw
bHkoZSxyfHxbXSk7Zm9yKG8gaW4gdCllLnN0eWxlW29dPWFbb107cmV0dXJuIGl9
fSkseC5yZWFkeS5wcm9taXNlPWZ1bmN0aW9uKHQpe2lmKCFuKWlmKG49eC5EZWZl
cnJlZCgpLCJjb21wbGV0ZSI9PT1hLnJlYWR5U3RhdGUpc2V0VGltZW91dCh4LnJl
YWR5KTtlbHNlIGlmKGEuYWRkRXZlbnRMaXN0ZW5lcilhLmFkZEV2ZW50TGlzdGVu
ZXIoIkRPTUNvbnRlbnRMb2FkZWQiLHEsITEpLGUuYWRkRXZlbnRMaXN0ZW5lcigi
bG9hZCIscSwhMSk7ZWxzZXthLmF0dGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFu
Z2UiLHEpLGUuYXR0YWNoRXZlbnQoIm9ubG9hZCIscSk7dmFyIHI9ITE7dHJ5e3I9
bnVsbD09ZS5mcmFtZUVsZW1lbnQmJmEuZG9jdW1lbnRFbGVtZW50fWNhdGNoKGkp
e31yJiZyLmRvU2Nyb2xsJiZmdW5jdGlvbiBvKCl7aWYoIXguaXNSZWFkeSl7dHJ5
e3IuZG9TY3JvbGwoImxlZnQiKX1jYXRjaChlKXtyZXR1cm4gc2V0VGltZW91dChv
LDUwKX1fKCkseC5yZWFkeSgpfX0oKX1yZXR1cm4gbi5wcm9taXNlKHQpfSx4LmVh
Y2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJl
Z0V4cCBPYmplY3QgRXJyb3IiLnNwbGl0KCIgIiksZnVuY3Rpb24oZSx0KXtjWyJb
b2JqZWN0ICIrdCsiXSJdPXQudG9Mb3dlckNhc2UoKX0pO2Z1bmN0aW9uIE0oZSl7
dmFyIHQ9ZS5sZW5ndGgsbj14LnR5cGUoZSk7cmV0dXJuIHguaXNXaW5kb3coZSk/
ITE6MT09PWUubm9kZVR5cGUmJnQ/ITA6ImFycmF5Ij09PW58fCJmdW5jdGlvbiIh
PT1uJiYoMD09PXR8fCJudW1iZXIiPT10eXBlb2YgdCYmdD4wJiZ0LTEgaW4gZSl9
cj14KGEpLGZ1bmN0aW9uKGUsdCl7dmFyIG4scixpLG8sYSxzLGwsdSxjLHAsZixk
LGgsZyxtLHksdixiPSJzaXp6bGUiKy1uZXcgRGF0ZSx3PWUuZG9jdW1lbnQsVD0w
LEM9MCxOPXN0KCksaz1zdCgpLEU9c3QoKSxTPSExLEE9ZnVuY3Rpb24oZSx0KXty
ZXR1cm4gZT09PXQ/KFM9ITAsMCk6MH0saj10eXBlb2YgdCxEPTE8PDMxLEw9e30u
aGFzT3duUHJvcGVydHksSD1bXSxxPUgucG9wLF89SC5wdXNoLE09SC5wdXNoLE89
SC5zbGljZSxGPUguaW5kZXhPZnx8ZnVuY3Rpb24oZSl7dmFyIHQ9MCxuPXRoaXMu
bGVuZ3RoO2Zvcig7bj50O3QrKylpZih0aGlzW3RdPT09ZSlyZXR1cm4gdDtyZXR1
cm4tMX0sQj0iY2hlY2tlZHxzZWxlY3RlZHxhc3luY3xhdXRvZm9jdXN8YXV0b3Bs
YXl8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGlzbWFwfGxvb3B8bXVs
dGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWQiLFA9IltcXHgyMFxc
dFxcclxcblxcZl0iLFI9Iig/OlxcXFwufFtcXHctXXxbXlxceDAwLVxceGEwXSkr
IixXPVIucmVwbGFjZSgidyIsIncjIiksJD0iXFxbIitQKyIqKCIrUisiKSIrUCsi
Kig/OihbKl4kfCF+XT89KSIrUCsiKig/OihbJ1wiXSkoKD86XFxcXC58W15cXFxc
XSkqPylcXDN8KCIrVysiKXwpfCkiK1ArIipcXF0iLEk9IjooIitSKyIpKD86XFwo
KChbJ1wiXSkoKD86XFxcXC58W15cXFxcXSkqPylcXDN8KCg/OlxcXFwufFteXFxc
XCgpW1xcXV18IiskLnJlcGxhY2UoMyw4KSsiKSopfC4qKVxcKXwpIix6PVJlZ0V4
cCgiXiIrUCsiK3woKD86XnxbXlxcXFxdKSg/OlxcXFwuKSopIitQKyIrJCIsImci
KSxYPVJlZ0V4cCgiXiIrUCsiKiwiK1ArIioiKSxVPVJlZ0V4cCgiXiIrUCsiKihb
Pit+XXwiK1ArIikiK1ArIioiKSxWPVJlZ0V4cChQKyIqWyt+XSIpLFk9UmVnRXhw
KCI9IitQKyIqKFteXFxdJ1wiXSopIitQKyIqXFxdIiwiZyIpLEo9UmVnRXhwKEkp
LEc9UmVnRXhwKCJeIitXKyIkIiksUT17SUQ6UmVnRXhwKCJeIygiK1IrIikiKSxD
TEFTUzpSZWdFeHAoIl5cXC4oIitSKyIpIiksVEFHOlJlZ0V4cCgiXigiK1IucmVw
bGFjZSgidyIsIncqIikrIikiKSxBVFRSOlJlZ0V4cCgiXiIrJCksUFNFVURPOlJl
Z0V4cCgiXiIrSSksQ0hJTEQ6UmVnRXhwKCJeOihvbmx5fGZpcnN0fGxhc3R8bnRo
fG50aC1sYXN0KS0oY2hpbGR8b2YtdHlwZSkoPzpcXCgiK1ArIiooZXZlbnxvZGR8
KChbKy1dfCkoXFxkKilufCkiK1ArIiooPzooWystXXwpIitQKyIqKFxcZCspfCkp
IitQKyIqXFwpfCkiLCJpIiksYm9vbDpSZWdFeHAoIl4oPzoiK0IrIikkIiwiaSIp
LG5lZWRzQ29udGV4dDpSZWdFeHAoIl4iK1ArIipbPit+XXw6KGV2ZW58b2RkfGVx
fGd0fGx0fG50aHxmaXJzdHxsYXN0KSg/OlxcKCIrUCsiKigoPzotXFxkKT9cXGQq
KSIrUCsiKlxcKXwpKD89W14tXXwkKSIsImkiKX0sSz0vXltee10rXHtccypcW25h
dGl2ZSBcdy8sWj0vXig/OiMoW1x3LV0rKXwoXHcrKXxcLihbXHctXSspKSQvLGV0
PS9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGJ1dHRvbikkL2ksdHQ9L15oXGQk
L2ksbnQ9Lyd8XFwvZyxydD1SZWdFeHAoIlxcXFwoW1xcZGEtZl17MSw2fSIrUCsi
P3woIitQKyIpfC4pIiwiaWciKSxpdD1mdW5jdGlvbihlLHQsbil7dmFyIHI9IjB4
Iit0LTY1NTM2O3JldHVybiByIT09cnx8bj90OjA+cj9TdHJpbmcuZnJvbUNoYXJD
b2RlKHIrNjU1MzYpOlN0cmluZy5mcm9tQ2hhckNvZGUoNTUyOTZ8cj4+MTAsNTYz
MjB8MTAyMyZyKX07dHJ5e00uYXBwbHkoSD1PLmNhbGwody5jaGlsZE5vZGVzKSx3
LmNoaWxkTm9kZXMpLEhbdy5jaGlsZE5vZGVzLmxlbmd0aF0ubm9kZVR5cGV9Y2F0
Y2gob3Qpe009e2FwcGx5OkgubGVuZ3RoP2Z1bmN0aW9uKGUsdCl7Xy5hcHBseShl
LE8uY2FsbCh0KSl9OmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS5sZW5ndGgscj0wO3do
aWxlKGVbbisrXT10W3IrK10pO2UubGVuZ3RoPW4tMX19fWZ1bmN0aW9uIGF0KGUs
dCxuLGkpe3ZhciBvLGEscyxsLHUsYyxkLG0seSx4O2lmKCh0P3Qub3duZXJEb2N1
bWVudHx8dDp3KSE9PWYmJnAodCksdD10fHxmLG49bnx8W10sIWV8fCJzdHJpbmci
IT10eXBlb2YgZSlyZXR1cm4gbjtpZigxIT09KGw9dC5ub2RlVHlwZSkmJjkhPT1s
KXJldHVybltdO2lmKGgmJiFpKXtpZihvPVouZXhlYyhlKSlpZihzPW9bMV0pe2lm
KDk9PT1sKXtpZihhPXQuZ2V0RWxlbWVudEJ5SWQocyksIWF8fCFhLnBhcmVudE5v
ZGUpcmV0dXJuIG47aWYoYS5pZD09PXMpcmV0dXJuIG4ucHVzaChhKSxufWVsc2Ug
aWYodC5vd25lckRvY3VtZW50JiYoYT10Lm93bmVyRG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQocykpJiZ2KHQsYSkmJmEuaWQ9PT1zKXJldHVybiBuLnB1c2goYSksbn1l
bHNle2lmKG9bMl0pcmV0dXJuIE0uYXBwbHkobix0LmdldEVsZW1lbnRzQnlUYWdO
YW1lKGUpKSxuO2lmKChzPW9bM10pJiZyLmdldEVsZW1lbnRzQnlDbGFzc05hbWUm
JnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSlyZXR1cm4gTS5hcHBseShuLHQuZ2V0
RWxlbWVudHNCeUNsYXNzTmFtZShzKSksbn1pZihyLnFzYSYmKCFnfHwhZy50ZXN0
KGUpKSl7aWYobT1kPWIseT10LHg9OT09PWwmJmUsMT09PWwmJiJvYmplY3QiIT09
dC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKXtjPW10KGUpLChkPXQuZ2V0QXR0cmli
dXRlKCJpZCIpKT9tPWQucmVwbGFjZShudCwiXFwkJiIpOnQuc2V0QXR0cmlidXRl
KCJpZCIsbSksbT0iW2lkPSciK20rIiddICIsdT1jLmxlbmd0aDt3aGlsZSh1LS0p
Y1t1XT1tK3l0KGNbdV0pO3k9Vi50ZXN0KGUpJiZ0LnBhcmVudE5vZGV8fHQseD1j
LmpvaW4oIiwiKX1pZih4KXRyeXtyZXR1cm4gTS5hcHBseShuLHkucXVlcnlTZWxl
Y3RvckFsbCh4KSksbn1jYXRjaChUKXt9ZmluYWxseXtkfHx0LnJlbW92ZUF0dHJp
YnV0ZSgiaWQiKX19fXJldHVybiBrdChlLnJlcGxhY2UoeiwiJDEiKSx0LG4saSl9
ZnVuY3Rpb24gc3QoKXt2YXIgZT1bXTtmdW5jdGlvbiB0KG4scil7cmV0dXJuIGUu
cHVzaChuKz0iICIpPm8uY2FjaGVMZW5ndGgmJmRlbGV0ZSB0W2Uuc2hpZnQoKV0s
dFtuXT1yfXJldHVybiB0fWZ1bmN0aW9uIGx0KGUpe3JldHVybiBlW2JdPSEwLGV9
ZnVuY3Rpb24gdXQoZSl7dmFyIHQ9Zi5jcmVhdGVFbGVtZW50KCJkaXYiKTt0cnl7
cmV0dXJuISFlKHQpfWNhdGNoKG4pe3JldHVybiExfWZpbmFsbHl7dC5wYXJlbnRO
b2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCksdD1udWxsfX1mdW5jdGlv
biBjdChlLHQpe3ZhciBuPWUuc3BsaXQoInwiKSxyPWUubGVuZ3RoO3doaWxlKHIt
LSlvLmF0dHJIYW5kbGVbbltyXV09dH1mdW5jdGlvbiBwdChlLHQpe3ZhciBuPXQm
JmUscj1uJiYxPT09ZS5ub2RlVHlwZSYmMT09PXQubm9kZVR5cGUmJih+dC5zb3Vy
Y2VJbmRleHx8RCktKH5lLnNvdXJjZUluZGV4fHxEKTtpZihyKXJldHVybiByO2lm
KG4pd2hpbGUobj1uLm5leHRTaWJsaW5nKWlmKG49PT10KXJldHVybi0xO3JldHVy
biBlPzE6LTF9ZnVuY3Rpb24gZnQoZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciBu
PXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4iaW5wdXQiPT09biYmdC50
eXBlPT09ZX19ZnVuY3Rpb24gZHQoZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciBu
PXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4oImlucHV0Ij09PW58fCJi
dXR0b24iPT09bikmJnQudHlwZT09PWV9fWZ1bmN0aW9uIGh0KGUpe3JldHVybiBs
dChmdW5jdGlvbih0KXtyZXR1cm4gdD0rdCxsdChmdW5jdGlvbihuLHIpe3ZhciBp
LG89ZShbXSxuLmxlbmd0aCx0KSxhPW8ubGVuZ3RoO3doaWxlKGEtLSluW2k9b1th
XV0mJihuW2ldPSEocltpXT1uW2ldKSl9KX0pfXM9YXQuaXNYTUw9ZnVuY3Rpb24o
ZSl7dmFyIHQ9ZSYmKGUub3duZXJEb2N1bWVudHx8ZSkuZG9jdW1lbnRFbGVtZW50
O3JldHVybiB0PyJIVE1MIiE9PXQubm9kZU5hbWU6ITF9LHI9YXQuc3VwcG9ydD17
fSxwPWF0LnNldERvY3VtZW50PWZ1bmN0aW9uKGUpe3ZhciBuPWU/ZS5vd25lckRv
Y3VtZW50fHxlOncsaT1uLmRlZmF1bHRWaWV3O3JldHVybiBuIT09ZiYmOT09PW4u
bm9kZVR5cGUmJm4uZG9jdW1lbnRFbGVtZW50PyhmPW4sZD1uLmRvY3VtZW50RWxl
bWVudCxoPSFzKG4pLGkmJmkuYXR0YWNoRXZlbnQmJmkhPT1pLnRvcCYmaS5hdHRh
Y2hFdmVudCgib25iZWZvcmV1bmxvYWQiLGZ1bmN0aW9uKCl7cCgpfSksci5hdHRy
aWJ1dGVzPXV0KGZ1bmN0aW9uKGUpe3JldHVybiBlLmNsYXNzTmFtZT0iaSIsIWUu
Z2V0QXR0cmlidXRlKCJjbGFzc05hbWUiKX0pLHIuZ2V0RWxlbWVudHNCeVRhZ05h
bWU9dXQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuYXBwZW5kQ2hpbGQobi5jcmVhdGVD
b21tZW50KCIiKSksIWUuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKS5sZW5ndGh9
KSxyLmdldEVsZW1lbnRzQnlDbGFzc05hbWU9dXQoZnVuY3Rpb24oZSl7cmV0dXJu
IGUuaW5uZXJIVE1MPSI8ZGl2IGNsYXNzPSdhJz48L2Rpdj48ZGl2IGNsYXNzPSdh
IGknPjwvZGl2PiIsZS5maXJzdENoaWxkLmNsYXNzTmFtZT0iaSIsMj09PWUuZ2V0
RWxlbWVudHNCeUNsYXNzTmFtZSgiaSIpLmxlbmd0aH0pLHIuZ2V0QnlJZD11dChm
dW5jdGlvbihlKXtyZXR1cm4gZC5hcHBlbmRDaGlsZChlKS5pZD1iLCFuLmdldEVs
ZW1lbnRzQnlOYW1lfHwhbi5nZXRFbGVtZW50c0J5TmFtZShiKS5sZW5ndGh9KSxy
LmdldEJ5SWQ/KG8uZmluZC5JRD1mdW5jdGlvbihlLHQpe2lmKHR5cGVvZiB0Lmdl
dEVsZW1lbnRCeUlkIT09aiYmaCl7dmFyIG49dC5nZXRFbGVtZW50QnlJZChlKTty
ZXR1cm4gbiYmbi5wYXJlbnROb2RlP1tuXTpbXX19LG8uZmlsdGVyLklEPWZ1bmN0
aW9uKGUpe3ZhciB0PWUucmVwbGFjZShydCxpdCk7cmV0dXJuIGZ1bmN0aW9uKGUp
e3JldHVybiBlLmdldEF0dHJpYnV0ZSgiaWQiKT09PXR9fSk6KGRlbGV0ZSBvLmZp
bmQuSUQsby5maWx0ZXIuSUQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKHJ0
LGl0KTtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIG49dHlwZW9mIGUuZ2V0QXR0cmli
dXRlTm9kZSE9PWomJmUuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gbiYm
bi52YWx1ZT09PXR9fSksby5maW5kLlRBRz1yLmdldEVsZW1lbnRzQnlUYWdOYW1l
P2Z1bmN0aW9uKGUsbil7cmV0dXJuIHR5cGVvZiBuLmdldEVsZW1lbnRzQnlUYWdO
YW1lIT09aj9uLmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpOnR9OmZ1bmN0aW9uKGUs
dCl7dmFyIG4scj1bXSxpPTAsbz10LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpO2lm
KCIqIj09PWUpe3doaWxlKG49b1tpKytdKTE9PT1uLm5vZGVUeXBlJiZyLnB1c2go
bik7cmV0dXJuIHJ9cmV0dXJuIG99LG8uZmluZC5DTEFTUz1yLmdldEVsZW1lbnRz
QnlDbGFzc05hbWUmJmZ1bmN0aW9uKGUsbil7cmV0dXJuIHR5cGVvZiBuLmdldEVs
ZW1lbnRzQnlDbGFzc05hbWUhPT1qJiZoP24uZ2V0RWxlbWVudHNCeUNsYXNzTmFt
ZShlKTp0fSxtPVtdLGc9W10sKHIucXNhPUsudGVzdChuLnF1ZXJ5U2VsZWN0b3JB
bGwpKSYmKHV0KGZ1bmN0aW9uKGUpe2UuaW5uZXJIVE1MPSI8c2VsZWN0PjxvcHRp
b24gc2VsZWN0ZWQ9Jyc+PC9vcHRpb24+PC9zZWxlY3Q+IixlLnF1ZXJ5U2VsZWN0
b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGh8fGcucHVzaCgiXFxbIitQKyIqKD86
dmFsdWV8IitCKyIpIiksZS5xdWVyeVNlbGVjdG9yQWxsKCI6Y2hlY2tlZCIpLmxl
bmd0aHx8Zy5wdXNoKCI6Y2hlY2tlZCIpfSksdXQoZnVuY3Rpb24oZSl7dmFyIHQ9
bi5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO3Quc2V0QXR0cmlidXRlKCJ0eXBlIiwi
aGlkZGVuIiksZS5hcHBlbmRDaGlsZCh0KS5zZXRBdHRyaWJ1dGUoInQiLCIiKSxl
LnF1ZXJ5U2VsZWN0b3JBbGwoIlt0Xj0nJ10iKS5sZW5ndGgmJmcucHVzaCgiWype
JF09IitQKyIqKD86Jyd8XCJcIikiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIjplbmFi
bGVkIikubGVuZ3RofHxnLnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksZS5x
dWVyeVNlbGVjdG9yQWxsKCIqLDp4IiksZy5wdXNoKCIsLio6Iil9KSksKHIubWF0
Y2hlc1NlbGVjdG9yPUsudGVzdCh5PWQud2Via2l0TWF0Y2hlc1NlbGVjdG9yfHxk
Lm1vek1hdGNoZXNTZWxlY3Rvcnx8ZC5vTWF0Y2hlc1NlbGVjdG9yfHxkLm1zTWF0
Y2hlc1NlbGVjdG9yKSkmJnV0KGZ1bmN0aW9uKGUpe3IuZGlzY29ubmVjdGVkTWF0
Y2g9eS5jYWxsKGUsImRpdiIpLHkuY2FsbChlLCJbcyE9JyddOngiKSxtLnB1c2go
IiE9IixJKX0pLGc9Zy5sZW5ndGgmJlJlZ0V4cChnLmpvaW4oInwiKSksbT1tLmxl
bmd0aCYmUmVnRXhwKG0uam9pbigifCIpKSx2PUsudGVzdChkLmNvbnRhaW5zKXx8
ZC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj9mdW5jdGlvbihlLHQpe3ZhciBuPTk9
PT1lLm5vZGVUeXBlP2UuZG9jdW1lbnRFbGVtZW50OmUscj10JiZ0LnBhcmVudE5v
ZGU7cmV0dXJuIGU9PT1yfHwhKCFyfHwxIT09ci5ub2RlVHlwZXx8IShuLmNvbnRh
aW5zP24uY29udGFpbnMocik6ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiYmMTYm
ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihyKSkpfTpmdW5jdGlvbihlLHQpe2lm
KHQpd2hpbGUodD10LnBhcmVudE5vZGUpaWYodD09PWUpcmV0dXJuITA7cmV0dXJu
ITF9LEE9ZC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj9mdW5jdGlvbihlLHQpe2lm
KGU9PT10KXJldHVybiBTPSEwLDA7dmFyIGk9dC5jb21wYXJlRG9jdW1lbnRQb3Np
dGlvbiYmZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiYmZS5jb21wYXJlRG9jdW1l
bnRQb3NpdGlvbih0KTtyZXR1cm4gaT8xJml8fCFyLnNvcnREZXRhY2hlZCYmdC5j
b21wYXJlRG9jdW1lbnRQb3NpdGlvbihlKT09PWk/ZT09PW58fHYodyxlKT8tMTp0
PT09bnx8dih3LHQpPzE6Yz9GLmNhbGwoYyxlKS1GLmNhbGwoYyx0KTowOjQmaT8t
MToxOmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24/LTE6MX06ZnVuY3Rpb24oZSx0
KXt2YXIgcixpPTAsbz1lLnBhcmVudE5vZGUsYT10LnBhcmVudE5vZGUscz1bZV0s
bD1bdF07aWYoZT09PXQpcmV0dXJuIFM9ITAsMDtpZighb3x8IWEpcmV0dXJuIGU9
PT1uPy0xOnQ9PT1uPzE6bz8tMTphPzE6Yz9GLmNhbGwoYyxlKS1GLmNhbGwoYyx0
KTowO2lmKG89PT1hKXJldHVybiBwdChlLHQpO3I9ZTt3aGlsZShyPXIucGFyZW50
Tm9kZSlzLnVuc2hpZnQocik7cj10O3doaWxlKHI9ci5wYXJlbnROb2RlKWwudW5z
aGlmdChyKTt3aGlsZShzW2ldPT09bFtpXSlpKys7cmV0dXJuIGk/cHQoc1tpXSxs
W2ldKTpzW2ldPT09dz8tMTpsW2ldPT09dz8xOjB9LG4pOmZ9LGF0Lm1hdGNoZXM9
ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXQoZSxudWxsLG51bGwsdCl9LGF0Lm1hdGNo
ZXNTZWxlY3Rvcj1mdW5jdGlvbihlLHQpe2lmKChlLm93bmVyRG9jdW1lbnR8fGUp
IT09ZiYmcChlKSx0PXQucmVwbGFjZShZLCI9JyQxJ10iKSwhKCFyLm1hdGNoZXNT
ZWxlY3Rvcnx8IWh8fG0mJm0udGVzdCh0KXx8ZyYmZy50ZXN0KHQpKSl0cnl7dmFy
IG49eS5jYWxsKGUsdCk7aWYobnx8ci5kaXNjb25uZWN0ZWRNYXRjaHx8ZS5kb2N1
bWVudCYmMTEhPT1lLmRvY3VtZW50Lm5vZGVUeXBlKXJldHVybiBufWNhdGNoKGkp
e31yZXR1cm4gYXQodCxmLG51bGwsW2VdKS5sZW5ndGg+MH0sYXQuY29udGFpbnM9
ZnVuY3Rpb24oZSx0KXtyZXR1cm4oZS5vd25lckRvY3VtZW50fHxlKSE9PWYmJnAo
ZSksdihlLHQpfSxhdC5hdHRyPWZ1bmN0aW9uKGUsbil7KGUub3duZXJEb2N1bWVu
dHx8ZSkhPT1mJiZwKGUpO3ZhciBpPW8uYXR0ckhhbmRsZVtuLnRvTG93ZXJDYXNl
KCldLGE9aSYmTC5jYWxsKG8uYXR0ckhhbmRsZSxuLnRvTG93ZXJDYXNlKCkpP2ko
ZSxuLCFoKTp0O3JldHVybiBhPT09dD9yLmF0dHJpYnV0ZXN8fCFoP2UuZ2V0QXR0
cmlidXRlKG4pOihhPWUuZ2V0QXR0cmlidXRlTm9kZShuKSkmJmEuc3BlY2lmaWVk
P2EudmFsdWU6bnVsbDphfSxhdC5lcnJvcj1mdW5jdGlvbihlKXt0aHJvdyBFcnJv
cigiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIitlKX0s
YXQudW5pcXVlU29ydD1mdW5jdGlvbihlKXt2YXIgdCxuPVtdLGk9MCxvPTA7aWYo
Uz0hci5kZXRlY3REdXBsaWNhdGVzLGM9IXIuc29ydFN0YWJsZSYmZS5zbGljZSgw
KSxlLnNvcnQoQSksUyl7d2hpbGUodD1lW28rK10pdD09PWVbb10mJihpPW4ucHVz
aChvKSk7d2hpbGUoaS0tKWUuc3BsaWNlKG5baV0sMSl9cmV0dXJuIGV9LGE9YXQu
Z2V0VGV4dD1mdW5jdGlvbihlKXt2YXIgdCxuPSIiLHI9MCxpPWUubm9kZVR5cGU7
aWYoaSl7aWYoMT09PWl8fDk9PT1pfHwxMT09PWkpe2lmKCJzdHJpbmciPT10eXBl
b2YgZS50ZXh0Q29udGVudClyZXR1cm4gZS50ZXh0Q29udGVudDtmb3IoZT1lLmZp
cnN0Q2hpbGQ7ZTtlPWUubmV4dFNpYmxpbmcpbis9YShlKX1lbHNlIGlmKDM9PT1p
fHw0PT09aSlyZXR1cm4gZS5ub2RlVmFsdWV9ZWxzZSBmb3IoO3Q9ZVtyXTtyKysp
bis9YSh0KTtyZXR1cm4gbn0sbz1hdC5zZWxlY3RvcnM9e2NhY2hlTGVuZ3RoOjUw
LGNyZWF0ZVBzZXVkbzpsdCxtYXRjaDpRLGF0dHJIYW5kbGU6e30sZmluZDp7fSxy
ZWxhdGl2ZTp7Ij4iOntkaXI6InBhcmVudE5vZGUiLGZpcnN0OiEwfSwiICI6e2Rp
cjoicGFyZW50Tm9kZSJ9LCIrIjp7ZGlyOiJwcmV2aW91c1NpYmxpbmciLGZpcnN0
OiEwfSwifiI6e2RpcjoicHJldmlvdXNTaWJsaW5nIn19LHByZUZpbHRlcjp7QVRU
UjpmdW5jdGlvbihlKXtyZXR1cm4gZVsxXT1lWzFdLnJlcGxhY2UocnQsaXQpLGVb
M109KGVbNF18fGVbNV18fCIiKS5yZXBsYWNlKHJ0LGl0KSwifj0iPT09ZVsyXSYm
KGVbM109IiAiK2VbM10rIiAiKSxlLnNsaWNlKDAsNCl9LENISUxEOmZ1bmN0aW9u
KGUpe3JldHVybiBlWzFdPWVbMV0udG9Mb3dlckNhc2UoKSwibnRoIj09PWVbMV0u
c2xpY2UoMCwzKT8oZVszXXx8YXQuZXJyb3IoZVswXSksZVs0XT0rKGVbNF0/ZVs1
XSsoZVs2XXx8MSk6MiooImV2ZW4iPT09ZVszXXx8Im9kZCI9PT1lWzNdKSksZVs1
XT0rKGVbN10rZVs4XXx8Im9kZCI9PT1lWzNdKSk6ZVszXSYmYXQuZXJyb3IoZVsw
XSksZX0sUFNFVURPOmZ1bmN0aW9uKGUpe3ZhciBuLHI9IWVbNV0mJmVbMl07cmV0
dXJuIFEuQ0hJTEQudGVzdChlWzBdKT9udWxsOihlWzNdJiZlWzRdIT09dD9lWzJd
PWVbNF06ciYmSi50ZXN0KHIpJiYobj1tdChyLCEwKSkmJihuPXIuaW5kZXhPZigi
KSIsci5sZW5ndGgtbiktci5sZW5ndGgpJiYoZVswXT1lWzBdLnNsaWNlKDAsbiks
ZVsyXT1yLnNsaWNlKDAsbikpLGUuc2xpY2UoMCwzKSl9fSxmaWx0ZXI6e1RBRzpm
dW5jdGlvbihlKXt2YXIgdD1lLnJlcGxhY2UocnQsaXQpLnRvTG93ZXJDYXNlKCk7
cmV0dXJuIioiPT09ZT9mdW5jdGlvbigpe3JldHVybiEwfTpmdW5jdGlvbihlKXty
ZXR1cm4gZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dH19
LENMQVNTOmZ1bmN0aW9uKGUpe3ZhciB0PU5bZSsiICJdO3JldHVybiB0fHwodD1S
ZWdFeHAoIihefCIrUCsiKSIrZSsiKCIrUCsifCQpIikpJiZOKGUsZnVuY3Rpb24o
ZSl7cmV0dXJuIHQudGVzdCgic3RyaW5nIj09dHlwZW9mIGUuY2xhc3NOYW1lJiZl
LmNsYXNzTmFtZXx8dHlwZW9mIGUuZ2V0QXR0cmlidXRlIT09aiYmZS5nZXRBdHRy
aWJ1dGUoImNsYXNzIil8fCIiKX0pfSxBVFRSOmZ1bmN0aW9uKGUsdCxuKXtyZXR1
cm4gZnVuY3Rpb24ocil7dmFyIGk9YXQuYXR0cihyLGUpO3JldHVybiBudWxsPT1p
PyIhPSI9PT10OnQ/KGkrPSIiLCI9Ij09PXQ/aT09PW46IiE9Ij09PXQ/aSE9PW46
Il49Ij09PXQ/biYmMD09PWkuaW5kZXhPZihuKToiKj0iPT09dD9uJiZpLmluZGV4
T2Yobik+LTE6IiQ9Ij09PXQ/biYmaS5zbGljZSgtbi5sZW5ndGgpPT09bjoifj0i
PT09dD8oIiAiK2krIiAiKS5pbmRleE9mKG4pPi0xOiJ8PSI9PT10P2k9PT1ufHxp
LnNsaWNlKDAsbi5sZW5ndGgrMSk9PT1uKyItIjohMSk6ITB9fSxDSElMRDpmdW5j
dGlvbihlLHQsbixyLGkpe3ZhciBvPSJudGgiIT09ZS5zbGljZSgwLDMpLGE9Imxh
c3QiIT09ZS5zbGljZSgtNCkscz0ib2YtdHlwZSI9PT10O3JldHVybiAxPT09ciYm
MD09PWk/ZnVuY3Rpb24oZSl7cmV0dXJuISFlLnBhcmVudE5vZGV9OmZ1bmN0aW9u
KHQsbixsKXt2YXIgdSxjLHAsZixkLGgsZz1vIT09YT8ibmV4dFNpYmxpbmciOiJw
cmV2aW91c1NpYmxpbmciLG09dC5wYXJlbnROb2RlLHk9cyYmdC5ub2RlTmFtZS50
b0xvd2VyQ2FzZSgpLHY9IWwmJiFzO2lmKG0pe2lmKG8pe3doaWxlKGcpe3A9dDt3
aGlsZShwPXBbZ10paWYocz9wLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT15OjE9
PT1wLm5vZGVUeXBlKXJldHVybiExO2g9Zz0ib25seSI9PT1lJiYhaCYmIm5leHRT
aWJsaW5nIn1yZXR1cm4hMH1pZihoPVthP20uZmlyc3RDaGlsZDptLmxhc3RDaGls
ZF0sYSYmdil7Yz1tW2JdfHwobVtiXT17fSksdT1jW2VdfHxbXSxkPXVbMF09PT1U
JiZ1WzFdLGY9dVswXT09PVQmJnVbMl0scD1kJiZtLmNoaWxkTm9kZXNbZF07d2hp
bGUocD0rK2QmJnAmJnBbZ118fChmPWQ9MCl8fGgucG9wKCkpaWYoMT09PXAubm9k
ZVR5cGUmJisrZiYmcD09PXQpe2NbZV09W1QsZCxmXTticmVha319ZWxzZSBpZih2
JiYodT0odFtiXXx8KHRbYl09e30pKVtlXSkmJnVbMF09PT1UKWY9dVsxXTtlbHNl
IHdoaWxlKHA9KytkJiZwJiZwW2ddfHwoZj1kPTApfHxoLnBvcCgpKWlmKChzP3Au
bm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXk6MT09PXAubm9kZVR5cGUpJiYrK2Ym
Jih2JiYoKHBbYl18fChwW2JdPXt9KSlbZV09W1QsZl0pLHA9PT10KSlicmVhazty
ZXR1cm4gZi09aSxmPT09cnx8MD09PWYlciYmZi9yPj0wfX19LFBTRVVETzpmdW5j
dGlvbihlLHQpe3ZhciBuLHI9by5wc2V1ZG9zW2VdfHxvLnNldEZpbHRlcnNbZS50
b0xvd2VyQ2FzZSgpXXx8YXQuZXJyb3IoInVuc3VwcG9ydGVkIHBzZXVkbzogIitl
KTtyZXR1cm4gcltiXT9yKHQpOnIubGVuZ3RoPjE/KG49W2UsZSwiIix0XSxvLnNl
dEZpbHRlcnMuaGFzT3duUHJvcGVydHkoZS50b0xvd2VyQ2FzZSgpKT9sdChmdW5j
dGlvbihlLG4pe3ZhciBpLG89cihlLHQpLGE9by5sZW5ndGg7d2hpbGUoYS0tKWk9
Ri5jYWxsKGUsb1thXSksZVtpXT0hKG5baV09b1thXSl9KTpmdW5jdGlvbihlKXty
ZXR1cm4gcihlLDAsbil9KTpyfX0scHNldWRvczp7bm90Omx0KGZ1bmN0aW9uKGUp
e3ZhciB0PVtdLG49W10scj1sKGUucmVwbGFjZSh6LCIkMSIpKTtyZXR1cm4gclti
XT9sdChmdW5jdGlvbihlLHQsbixpKXt2YXIgbyxhPXIoZSxudWxsLGksW10pLHM9
ZS5sZW5ndGg7d2hpbGUocy0tKShvPWFbc10pJiYoZVtzXT0hKHRbc109bykpfSk6
ZnVuY3Rpb24oZSxpLG8pe3JldHVybiB0WzBdPWUscih0LG51bGwsbyxuKSwhbi5w
b3AoKX19KSxoYXM6bHQoZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3Jl
dHVybiBhdChlLHQpLmxlbmd0aD4wfX0pLGNvbnRhaW5zOmx0KGZ1bmN0aW9uKGUp
e3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4odC50ZXh0Q29udGVudHx8dC5pbm5l
clRleHR8fGEodCkpLmluZGV4T2YoZSk+LTF9fSksbGFuZzpsdChmdW5jdGlvbihl
KXtyZXR1cm4gRy50ZXN0KGV8fCIiKXx8YXQuZXJyb3IoInVuc3VwcG9ydGVkIGxh
bmc6ICIrZSksZT1lLnJlcGxhY2UocnQsaXQpLnRvTG93ZXJDYXNlKCksZnVuY3Rp
b24odCl7dmFyIG47ZG8gaWYobj1oP3QubGFuZzp0LmdldEF0dHJpYnV0ZSgieG1s
OmxhbmciKXx8dC5nZXRBdHRyaWJ1dGUoImxhbmciKSlyZXR1cm4gbj1uLnRvTG93
ZXJDYXNlKCksbj09PWV8fDA9PT1uLmluZGV4T2YoZSsiLSIpO3doaWxlKCh0PXQu
cGFyZW50Tm9kZSkmJjE9PT10Lm5vZGVUeXBlKTtyZXR1cm4hMX19KSx0YXJnZXQ6
ZnVuY3Rpb24odCl7dmFyIG49ZS5sb2NhdGlvbiYmZS5sb2NhdGlvbi5oYXNoO3Jl
dHVybiBuJiZuLnNsaWNlKDEpPT09dC5pZH0scm9vdDpmdW5jdGlvbihlKXtyZXR1
cm4gZT09PWR9LGZvY3VzOmZ1bmN0aW9uKGUpe3JldHVybiBlPT09Zi5hY3RpdmVF
bGVtZW50JiYoIWYuaGFzRm9jdXN8fGYuaGFzRm9jdXMoKSkmJiEhKGUudHlwZXx8
ZS5ocmVmfHx+ZS50YWJJbmRleCl9LGVuYWJsZWQ6ZnVuY3Rpb24oZSl7cmV0dXJu
IGUuZGlzYWJsZWQ9PT0hMX0sZGlzYWJsZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUu
ZGlzYWJsZWQ9PT0hMH0sY2hlY2tlZDpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVO
YW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiEhZS5jaGVja2Vk
fHwib3B0aW9uIj09PXQmJiEhZS5zZWxlY3RlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24o
ZSl7cmV0dXJuIGUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnNlbGVjdGVkSW5k
ZXgsZS5zZWxlY3RlZD09PSEwfSxlbXB0eTpmdW5jdGlvbihlKXtmb3IoZT1lLmZp
cnN0Q2hpbGQ7ZTtlPWUubmV4dFNpYmxpbmcpaWYoZS5ub2RlTmFtZT4iQCJ8fDM9
PT1lLm5vZGVUeXBlfHw0PT09ZS5ub2RlVHlwZSlyZXR1cm4hMTtyZXR1cm4hMH0s
cGFyZW50OmZ1bmN0aW9uKGUpe3JldHVybiFvLnBzZXVkb3MuZW1wdHkoZSl9LGhl
YWRlcjpmdW5jdGlvbihlKXtyZXR1cm4gdHQudGVzdChlLm5vZGVOYW1lKX0saW5w
dXQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGV0LnRlc3QoZS5ub2RlTmFtZSl9LGJ1dHRv
bjpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0
dXJuImlucHV0Ij09PXQmJiJidXR0b24iPT09ZS50eXBlfHwiYnV0dG9uIj09PXR9
LHRleHQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuImlucHV0Ij09PWUubm9kZU5h
bWUudG9Mb3dlckNhc2UoKSYmInRleHQiPT09ZS50eXBlJiYobnVsbD09KHQ9ZS5n
ZXRBdHRyaWJ1dGUoInR5cGUiKSl8fHQudG9Mb3dlckNhc2UoKT09PWUudHlwZSl9
LGZpcnN0Omh0KGZ1bmN0aW9uKCl7cmV0dXJuWzBdfSksbGFzdDpodChmdW5jdGlv
bihlLHQpe3JldHVyblt0LTFdfSksZXE6aHQoZnVuY3Rpb24oZSx0LG4pe3JldHVy
blswPm4/bit0Om5dfSksZXZlbjpodChmdW5jdGlvbihlLHQpe3ZhciBuPTA7Zm9y
KDt0Pm47bis9MillLnB1c2gobik7cmV0dXJuIGV9KSxvZGQ6aHQoZnVuY3Rpb24o
ZSx0KXt2YXIgbj0xO2Zvcig7dD5uO24rPTIpZS5wdXNoKG4pO3JldHVybiBlfSks
bHQ6aHQoZnVuY3Rpb24oZSx0LG4pe3ZhciByPTA+bj9uK3Q6bjtmb3IoOy0tcj49
MDspZS5wdXNoKHIpO3JldHVybiBlfSksZ3Q6aHQoZnVuY3Rpb24oZSx0LG4pe3Zh
ciByPTA+bj9uK3Q6bjtmb3IoO3Q+KytyOyllLnB1c2gocik7cmV0dXJuIGV9KX19
LG8ucHNldWRvcy5udGg9by5wc2V1ZG9zLmVxO2ZvcihuIGlue3JhZGlvOiEwLGNo
ZWNrYm94OiEwLGZpbGU6ITAscGFzc3dvcmQ6ITAsaW1hZ2U6ITB9KW8ucHNldWRv
c1tuXT1mdChuKTtmb3IobiBpbntzdWJtaXQ6ITAscmVzZXQ6ITB9KW8ucHNldWRv
c1tuXT1kdChuKTtmdW5jdGlvbiBndCgpe31ndC5wcm90b3R5cGU9by5maWx0ZXJz
PW8ucHNldWRvcyxvLnNldEZpbHRlcnM9bmV3IGd0O2Z1bmN0aW9uIG10KGUsdCl7
dmFyIG4scixpLGEscyxsLHUsYz1rW2UrIiAiXTtpZihjKXJldHVybiB0PzA6Yy5z
bGljZSgwKTtzPWUsbD1bXSx1PW8ucHJlRmlsdGVyO3doaWxlKHMpeyghbnx8KHI9
WC5leGVjKHMpKSkmJihyJiYocz1zLnNsaWNlKHJbMF0ubGVuZ3RoKXx8cyksbC5w
dXNoKGk9W10pKSxuPSExLChyPVUuZXhlYyhzKSkmJihuPXIuc2hpZnQoKSxpLnB1
c2goe3ZhbHVlOm4sdHlwZTpyWzBdLnJlcGxhY2UoeiwiICIpfSkscz1zLnNsaWNl
KG4ubGVuZ3RoKSk7Zm9yKGEgaW4gby5maWx0ZXIpIShyPVFbYV0uZXhlYyhzKSl8
fHVbYV0mJiEocj11W2FdKHIpKXx8KG49ci5zaGlmdCgpLGkucHVzaCh7dmFsdWU6
bix0eXBlOmEsbWF0Y2hlczpyfSkscz1zLnNsaWNlKG4ubGVuZ3RoKSk7aWYoIW4p
YnJlYWt9cmV0dXJuIHQ/cy5sZW5ndGg6cz9hdC5lcnJvcihlKTprKGUsbCkuc2xp
Y2UoMCl9ZnVuY3Rpb24geXQoZSl7dmFyIHQ9MCxuPWUubGVuZ3RoLHI9IiI7Zm9y
KDtuPnQ7dCsrKXIrPWVbdF0udmFsdWU7cmV0dXJuIHJ9ZnVuY3Rpb24gdnQoZSx0
LG4pe3ZhciByPXQuZGlyLG89biYmInBhcmVudE5vZGUiPT09cixhPUMrKztyZXR1
cm4gdC5maXJzdD9mdW5jdGlvbih0LG4saSl7d2hpbGUodD10W3JdKWlmKDE9PT10
Lm5vZGVUeXBlfHxvKXJldHVybiBlKHQsbixpKX06ZnVuY3Rpb24odCxuLHMpe3Zh
ciBsLHUsYyxwPVQrIiAiK2E7aWYocyl7d2hpbGUodD10W3JdKWlmKCgxPT09dC5u
b2RlVHlwZXx8bykmJmUodCxuLHMpKXJldHVybiEwfWVsc2Ugd2hpbGUodD10W3Jd
KWlmKDE9PT10Lm5vZGVUeXBlfHxvKWlmKGM9dFtiXXx8KHRbYl09e30pLCh1PWNb
cl0pJiZ1WzBdPT09cCl7aWYoKGw9dVsxXSk9PT0hMHx8bD09PWkpcmV0dXJuIGw9
PT0hMH1lbHNlIGlmKHU9Y1tyXT1bcF0sdVsxXT1lKHQsbixzKXx8aSx1WzFdPT09
ITApcmV0dXJuITB9fWZ1bmN0aW9uIGJ0KGUpe3JldHVybiBlLmxlbmd0aD4xP2Z1
bmN0aW9uKHQsbixyKXt2YXIgaT1lLmxlbmd0aDt3aGlsZShpLS0paWYoIWVbaV0o
dCxuLHIpKXJldHVybiExO3JldHVybiEwfTplWzBdfWZ1bmN0aW9uIHh0KGUsdCxu
LHIsaSl7dmFyIG8sYT1bXSxzPTAsbD1lLmxlbmd0aCx1PW51bGwhPXQ7Zm9yKDts
PnM7cysrKShvPWVbc10pJiYoIW58fG4obyxyLGkpKSYmKGEucHVzaChvKSx1JiZ0
LnB1c2gocykpO3JldHVybiBhfWZ1bmN0aW9uIHd0KGUsdCxuLHIsaSxvKXtyZXR1
cm4gciYmIXJbYl0mJihyPXd0KHIpKSxpJiYhaVtiXSYmKGk9d3QoaSxvKSksbHQo
ZnVuY3Rpb24obyxhLHMsbCl7dmFyIHUsYyxwLGY9W10sZD1bXSxoPWEubGVuZ3Ro
LGc9b3x8TnQodHx8IioiLHMubm9kZVR5cGU/W3NdOnMsW10pLG09IWV8fCFvJiZ0
P2c6eHQoZyxmLGUscyxsKSx5PW4/aXx8KG8/ZTpofHxyKT9bXTphOm07aWYobiYm
bihtLHkscyxsKSxyKXt1PXh0KHksZCkscih1LFtdLHMsbCksYz11Lmxlbmd0aDt3
aGlsZShjLS0pKHA9dVtjXSkmJih5W2RbY11dPSEobVtkW2NdXT1wKSl9aWYobyl7
aWYoaXx8ZSl7aWYoaSl7dT1bXSxjPXkubGVuZ3RoO3doaWxlKGMtLSkocD15W2Nd
KSYmdS5wdXNoKG1bY109cCk7aShudWxsLHk9W10sdSxsKX1jPXkubGVuZ3RoO3do
aWxlKGMtLSkocD15W2NdKSYmKHU9aT9GLmNhbGwobyxwKTpmW2NdKT4tMSYmKG9b
dV09IShhW3VdPXApKX19ZWxzZSB5PXh0KHk9PT1hP3kuc3BsaWNlKGgseS5sZW5n
dGgpOnkpLGk/aShudWxsLGEseSxsKTpNLmFwcGx5KGEseSl9KX1mdW5jdGlvbiBU
dChlKXt2YXIgdCxuLHIsaT1lLmxlbmd0aCxhPW8ucmVsYXRpdmVbZVswXS50eXBl
XSxzPWF8fG8ucmVsYXRpdmVbIiAiXSxsPWE/MTowLGM9dnQoZnVuY3Rpb24oZSl7
cmV0dXJuIGU9PT10fSxzLCEwKSxwPXZ0KGZ1bmN0aW9uKGUpe3JldHVybiBGLmNh
bGwodCxlKT4tMX0scywhMCksZj1bZnVuY3Rpb24oZSxuLHIpe3JldHVybiFhJiYo
cnx8biE9PXUpfHwoKHQ9bikubm9kZVR5cGU/YyhlLG4scik6cChlLG4scikpfV07
Zm9yKDtpPmw7bCsrKWlmKG49by5yZWxhdGl2ZVtlW2xdLnR5cGVdKWY9W3Z0KGJ0
KGYpLG4pXTtlbHNle2lmKG49by5maWx0ZXJbZVtsXS50eXBlXS5hcHBseShudWxs
LGVbbF0ubWF0Y2hlcyksbltiXSl7Zm9yKHI9KytsO2k+cjtyKyspaWYoby5yZWxh
dGl2ZVtlW3JdLnR5cGVdKWJyZWFrO3JldHVybiB3dChsPjEmJmJ0KGYpLGw+MSYm
eXQoZS5zbGljZSgwLGwtMSkuY29uY2F0KHt2YWx1ZToiICI9PT1lW2wtMl0udHlw
ZT8iKiI6IiJ9KSkucmVwbGFjZSh6LCIkMSIpLG4scj5sJiZUdChlLnNsaWNlKGws
cikpLGk+ciYmVHQoZT1lLnNsaWNlKHIpKSxpPnImJnl0KGUpKX1mLnB1c2gobil9
cmV0dXJuIGJ0KGYpfWZ1bmN0aW9uIEN0KGUsdCl7dmFyIG49MCxyPXQubGVuZ3Ro
PjAsYT1lLmxlbmd0aD4wLHM9ZnVuY3Rpb24ocyxsLGMscCxkKXt2YXIgaCxnLG0s
eT1bXSx2PTAsYj0iMCIseD1zJiZbXSx3PW51bGwhPWQsQz11LE49c3x8YSYmby5m
aW5kLlRBRygiKiIsZCYmbC5wYXJlbnROb2RlfHxsKSxrPVQrPW51bGw9PUM/MTpN
YXRoLnJhbmRvbSgpfHwuMTtmb3IodyYmKHU9bCE9PWYmJmwsaT1uKTtudWxsIT0o
aD1OW2JdKTtiKyspe2lmKGEmJmgpe2c9MDt3aGlsZShtPWVbZysrXSlpZihtKGgs
bCxjKSl7cC5wdXNoKGgpO2JyZWFrfXcmJihUPWssaT0rK24pfXImJigoaD0hbSYm
aCkmJnYtLSxzJiZ4LnB1c2goaCkpfWlmKHYrPWIsciYmYiE9PXYpe2c9MDt3aGls
ZShtPXRbZysrXSltKHgseSxsLGMpO2lmKHMpe2lmKHY+MCl3aGlsZShiLS0peFti
XXx8eVtiXXx8KHlbYl09cS5jYWxsKHApKTt5PXh0KHkpfU0uYXBwbHkocCx5KSx3
JiYhcyYmeS5sZW5ndGg+MCYmdit0Lmxlbmd0aD4xJiZhdC51bmlxdWVTb3J0KHAp
fXJldHVybiB3JiYoVD1rLHU9QykseH07cmV0dXJuIHI/bHQocyk6c31sPWF0LmNv
bXBpbGU9ZnVuY3Rpb24oZSx0KXt2YXIgbixyPVtdLGk9W10sbz1FW2UrIiAiXTtp
Zighbyl7dHx8KHQ9bXQoZSkpLG49dC5sZW5ndGg7d2hpbGUobi0tKW89VHQodFtu
XSksb1tiXT9yLnB1c2gobyk6aS5wdXNoKG8pO289RShlLEN0KGkscikpfXJldHVy
biBvfTtmdW5jdGlvbiBOdChlLHQsbil7dmFyIHI9MCxpPXQubGVuZ3RoO2Zvcig7
aT5yO3IrKylhdChlLHRbcl0sbik7cmV0dXJuIG59ZnVuY3Rpb24ga3QoZSx0LG4s
aSl7dmFyIGEscyx1LGMscCxmPW10KGUpO2lmKCFpJiYxPT09Zi5sZW5ndGgpe2lm
KHM9ZlswXT1mWzBdLnNsaWNlKDApLHMubGVuZ3RoPjImJiJJRCI9PT0odT1zWzBd
KS50eXBlJiZyLmdldEJ5SWQmJjk9PT10Lm5vZGVUeXBlJiZoJiZvLnJlbGF0aXZl
W3NbMV0udHlwZV0pe2lmKHQ9KG8uZmluZC5JRCh1Lm1hdGNoZXNbMF0ucmVwbGFj
ZShydCxpdCksdCl8fFtdKVswXSwhdClyZXR1cm4gbjtlPWUuc2xpY2Uocy5zaGlm
dCgpLnZhbHVlLmxlbmd0aCl9YT1RLm5lZWRzQ29udGV4dC50ZXN0KGUpPzA6cy5s
ZW5ndGg7d2hpbGUoYS0tKXtpZih1PXNbYV0sby5yZWxhdGl2ZVtjPXUudHlwZV0p
YnJlYWs7aWYoKHA9by5maW5kW2NdKSYmKGk9cCh1Lm1hdGNoZXNbMF0ucmVwbGFj
ZShydCxpdCksVi50ZXN0KHNbMF0udHlwZSkmJnQucGFyZW50Tm9kZXx8dCkpKXtp
ZihzLnNwbGljZShhLDEpLGU9aS5sZW5ndGgmJnl0KHMpLCFlKXJldHVybiBNLmFw
cGx5KG4saSksbjticmVha319fXJldHVybiBsKGUsZikoaSx0LCFoLG4sVi50ZXN0
KGUpKSxufXIuc29ydFN0YWJsZT1iLnNwbGl0KCIiKS5zb3J0KEEpLmpvaW4oIiIp
PT09YixyLmRldGVjdER1cGxpY2F0ZXM9UyxwKCksci5zb3J0RGV0YWNoZWQ9dXQo
ZnVuY3Rpb24oZSl7cmV0dXJuIDEmZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihm
LmNyZWF0ZUVsZW1lbnQoImRpdiIpKX0pLHV0KGZ1bmN0aW9uKGUpe3JldHVybiBl
LmlubmVySFRNTD0iPGEgaHJlZj0nIyc+PC9hPiIsIiMiPT09ZS5maXJzdENoaWxk
LmdldEF0dHJpYnV0ZSgiaHJlZiIpfSl8fGN0KCJ0eXBlfGhyZWZ8aGVpZ2h0fHdp
ZHRoIixmdW5jdGlvbihlLG4scil7cmV0dXJuIHI/dDplLmdldEF0dHJpYnV0ZShu
LCJ0eXBlIj09PW4udG9Mb3dlckNhc2UoKT8xOjIpfSksci5hdHRyaWJ1dGVzJiZ1
dChmdW5jdGlvbihlKXtyZXR1cm4gZS5pbm5lckhUTUw9IjxpbnB1dC8+IixlLmZp
cnN0Q2hpbGQuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsIiIpLCIiPT09ZS5maXJzdENo
aWxkLmdldEF0dHJpYnV0ZSgidmFsdWUiKX0pfHxjdCgidmFsdWUiLGZ1bmN0aW9u
KGUsbixyKXtyZXR1cm4gcnx8ImlucHV0IiE9PWUubm9kZU5hbWUudG9Mb3dlckNh
c2UoKT90OmUuZGVmYXVsdFZhbHVlfSksdXQoZnVuY3Rpb24oZSl7cmV0dXJuIG51
bGw9PWUuZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpfSl8fGN0KEIsZnVuY3Rpb24o
ZSxuLHIpe3ZhciBpO3JldHVybiByP3Q6KGk9ZS5nZXRBdHRyaWJ1dGVOb2RlKG4p
KSYmaS5zcGVjaWZpZWQ/aS52YWx1ZTplW25dPT09ITA/bi50b0xvd2VyQ2FzZSgp
Om51bGx9KSx4LmZpbmQ9YXQseC5leHByPWF0LnNlbGVjdG9ycyx4LmV4cHJbIjoi
XT14LmV4cHIucHNldWRvcyx4LnVuaXF1ZT1hdC51bmlxdWVTb3J0LHgudGV4dD1h
dC5nZXRUZXh0LHguaXNYTUxEb2M9YXQuaXNYTUwseC5jb250YWlucz1hdC5jb250
YWluc30oZSk7dmFyIE89e307ZnVuY3Rpb24gRihlKXt2YXIgdD1PW2VdPXt9O3Jl
dHVybiB4LmVhY2goZS5tYXRjaChUKXx8W10sZnVuY3Rpb24oZSxuKXt0W25dPSEw
fSksdH14LkNhbGxiYWNrcz1mdW5jdGlvbihlKXtlPSJzdHJpbmciPT10eXBlb2Yg
ZT9PW2VdfHxGKGUpOnguZXh0ZW5kKHt9LGUpO3ZhciBuLHIsaSxvLGEscyxsPVtd
LHU9IWUub25jZSYmW10sYz1mdW5jdGlvbih0KXtmb3Iocj1lLm1lbW9yeSYmdCxp
PSEwLGE9c3x8MCxzPTAsbz1sLmxlbmd0aCxuPSEwO2wmJm8+YTthKyspaWYobFth
XS5hcHBseSh0WzBdLHRbMV0pPT09ITEmJmUuc3RvcE9uRmFsc2Upe3I9ITE7YnJl
YWt9bj0hMSxsJiYodT91Lmxlbmd0aCYmYyh1LnNoaWZ0KCkpOnI/bD1bXTpwLmRp
c2FibGUoKSl9LHA9e2FkZDpmdW5jdGlvbigpe2lmKGwpe3ZhciB0PWwubGVuZ3Ro
OyhmdW5jdGlvbiBpKHQpe3guZWFjaCh0LGZ1bmN0aW9uKHQsbil7dmFyIHI9eC50
eXBlKG4pOyJmdW5jdGlvbiI9PT1yP2UudW5pcXVlJiZwLmhhcyhuKXx8bC5wdXNo
KG4pOm4mJm4ubGVuZ3RoJiYic3RyaW5nIiE9PXImJmkobil9KX0pKGFyZ3VtZW50
cyksbj9vPWwubGVuZ3RoOnImJihzPXQsYyhyKSl9cmV0dXJuIHRoaXN9LHJlbW92
ZTpmdW5jdGlvbigpe3JldHVybiBsJiZ4LmVhY2goYXJndW1lbnRzLGZ1bmN0aW9u
KGUsdCl7dmFyIHI7d2hpbGUoKHI9eC5pbkFycmF5KHQsbCxyKSk+LTEpbC5zcGxp
Y2UociwxKSxuJiYobz49ciYmby0tLGE+PXImJmEtLSl9KSx0aGlzfSxoYXM6ZnVu
Y3Rpb24oZSl7cmV0dXJuIGU/eC5pbkFycmF5KGUsbCk+LTE6ISghbHx8IWwubGVu
Z3RoKX0sZW1wdHk6ZnVuY3Rpb24oKXtyZXR1cm4gbD1bXSxvPTAsdGhpc30sZGlz
YWJsZTpmdW5jdGlvbigpe3JldHVybiBsPXU9cj10LHRoaXN9LGRpc2FibGVkOmZ1
bmN0aW9uKCl7cmV0dXJuIWx9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gdT10LHJ8
fHAuZGlzYWJsZSgpLHRoaXN9LGxvY2tlZDpmdW5jdGlvbigpe3JldHVybiF1fSxm
aXJlV2l0aDpmdW5jdGlvbihlLHQpe3JldHVybiFsfHxpJiYhdXx8KHQ9dHx8W10s
dD1bZSx0LnNsaWNlP3Quc2xpY2UoKTp0XSxuP3UucHVzaCh0KTpjKHQpKSx0aGlz
fSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIHAuZmlyZVdpdGgodGhpcyxhcmd1bWVu
dHMpLHRoaXN9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFpfX07cmV0dXJuIHB9
LHguZXh0ZW5kKHtEZWZlcnJlZDpmdW5jdGlvbihlKXt2YXIgdD1bWyJyZXNvbHZl
IiwiZG9uZSIseC5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksInJlc29sdmVkIl0s
WyJyZWplY3QiLCJmYWlsIix4LkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwicmVq
ZWN0ZWQiXSxbIm5vdGlmeSIsInByb2dyZXNzIix4LkNhbGxiYWNrcygibWVtb3J5
IildXSxuPSJwZW5kaW5nIixyPXtzdGF0ZTpmdW5jdGlvbigpe3JldHVybiBufSxh
bHdheXM6ZnVuY3Rpb24oKXtyZXR1cm4gaS5kb25lKGFyZ3VtZW50cykuZmFpbChh
cmd1bWVudHMpLHRoaXN9LHRoZW46ZnVuY3Rpb24oKXt2YXIgZT1hcmd1bWVudHM7
cmV0dXJuIHguRGVmZXJyZWQoZnVuY3Rpb24obil7eC5lYWNoKHQsZnVuY3Rpb24o
dCxvKXt2YXIgYT1vWzBdLHM9eC5pc0Z1bmN0aW9uKGVbdF0pJiZlW3RdO2lbb1sx
XV0oZnVuY3Rpb24oKXt2YXIgZT1zJiZzLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtl
JiZ4LmlzRnVuY3Rpb24oZS5wcm9taXNlKT9lLnByb21pc2UoKS5kb25lKG4ucmVz
b2x2ZSkuZmFpbChuLnJlamVjdCkucHJvZ3Jlc3Mobi5ub3RpZnkpOm5bYSsiV2l0
aCJdKHRoaXM9PT1yP24ucHJvbWlzZSgpOnRoaXMscz9bZV06YXJndW1lbnRzKX0p
fSksZT1udWxsfSkucHJvbWlzZSgpfSxwcm9taXNlOmZ1bmN0aW9uKGUpe3JldHVy
biBudWxsIT1lP3guZXh0ZW5kKGUscik6cn19LGk9e307cmV0dXJuIHIucGlwZT1y
LnRoZW4seC5lYWNoKHQsZnVuY3Rpb24oZSxvKXt2YXIgYT1vWzJdLHM9b1szXTty
W29bMV1dPWEuYWRkLHMmJmEuYWRkKGZ1bmN0aW9uKCl7bj1zfSx0WzFeZV1bMl0u
ZGlzYWJsZSx0WzJdWzJdLmxvY2spLGlbb1swXV09ZnVuY3Rpb24oKXtyZXR1cm4g
aVtvWzBdKyJXaXRoIl0odGhpcz09PWk/cjp0aGlzLGFyZ3VtZW50cyksdGhpc30s
aVtvWzBdKyJXaXRoIl09YS5maXJlV2l0aH0pLHIucHJvbWlzZShpKSxlJiZlLmNh
bGwoaSxpKSxpfSx3aGVuOmZ1bmN0aW9uKGUpe3ZhciB0PTAsbj1nLmNhbGwoYXJn
dW1lbnRzKSxyPW4ubGVuZ3RoLGk9MSE9PXJ8fGUmJnguaXNGdW5jdGlvbihlLnBy
b21pc2UpP3I6MCxvPTE9PT1pP2U6eC5EZWZlcnJlZCgpLGE9ZnVuY3Rpb24oZSx0
LG4pe3JldHVybiBmdW5jdGlvbihyKXt0W2VdPXRoaXMsbltlXT1hcmd1bWVudHMu
bGVuZ3RoPjE/Zy5jYWxsKGFyZ3VtZW50cyk6cixuPT09cz9vLm5vdGlmeVdpdGgo
dCxuKTotLWl8fG8ucmVzb2x2ZVdpdGgodCxuKX19LHMsbCx1O2lmKHI+MSlmb3Io
cz1BcnJheShyKSxsPUFycmF5KHIpLHU9QXJyYXkocik7cj50O3QrKyluW3RdJiZ4
LmlzRnVuY3Rpb24oblt0XS5wcm9taXNlKT9uW3RdLnByb21pc2UoKS5kb25lKGEo
dCx1LG4pKS5mYWlsKG8ucmVqZWN0KS5wcm9ncmVzcyhhKHQsbCxzKSk6LS1pO3Jl
dHVybiBpfHxvLnJlc29sdmVXaXRoKHUsbiksby5wcm9taXNlKCl9fSkseC5zdXBw
b3J0PWZ1bmN0aW9uKHQpe3ZhciBuLHIsbyxzLGwsdSxjLHAsZixkPWEuY3JlYXRl
RWxlbWVudCgiZGl2Iik7aWYoZC5zZXRBdHRyaWJ1dGUoImNsYXNzTmFtZSIsInQi
KSxkLmlubmVySFRNTD0iICA8bGluay8+PHRhYmxlPjwvdGFibGU+PGEgaHJlZj0n
L2EnPmE8L2E+PGlucHV0IHR5cGU9J2NoZWNrYm94Jy8+IixuPWQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoIioiKXx8W10scj1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJh
IilbMF0sIXJ8fCFyLnN0eWxlfHwhbi5sZW5ndGgpcmV0dXJuIHQ7cz1hLmNyZWF0
ZUVsZW1lbnQoInNlbGVjdCIpLHU9cy5hcHBlbmRDaGlsZChhLmNyZWF0ZUVsZW1l
bnQoIm9wdGlvbiIpKSxvPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImlucHV0Iilb
MF0sci5zdHlsZS5jc3NUZXh0PSJ0b3A6MXB4O2Zsb2F0OmxlZnQ7b3BhY2l0eTou
NSIsdC5nZXRTZXRBdHRyaWJ1dGU9InQiIT09ZC5jbGFzc05hbWUsdC5sZWFkaW5n
V2hpdGVzcGFjZT0zPT09ZC5maXJzdENoaWxkLm5vZGVUeXBlLHQudGJvZHk9IWQu
Z2V0RWxlbWVudHNCeVRhZ05hbWUoInRib2R5IikubGVuZ3RoLHQuaHRtbFNlcmlh
bGl6ZT0hIWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImxpbmsiKS5sZW5ndGgsdC5z
dHlsZT0vdG9wLy50ZXN0KHIuZ2V0QXR0cmlidXRlKCJzdHlsZSIpKSx0LmhyZWZO
b3JtYWxpemVkPSIvYSI9PT1yLmdldEF0dHJpYnV0ZSgiaHJlZiIpLHQub3BhY2l0
eT0vXjAuNS8udGVzdChyLnN0eWxlLm9wYWNpdHkpLHQuY3NzRmxvYXQ9ISFyLnN0
eWxlLmNzc0Zsb2F0LHQuY2hlY2tPbj0hIW8udmFsdWUsdC5vcHRTZWxlY3RlZD11
LnNlbGVjdGVkLHQuZW5jdHlwZT0hIWEuY3JlYXRlRWxlbWVudCgiZm9ybSIpLmVu
Y3R5cGUsdC5odG1sNUNsb25lPSI8Om5hdj48LzpuYXY+IiE9PWEuY3JlYXRlRWxl
bWVudCgibmF2IikuY2xvbmVOb2RlKCEwKS5vdXRlckhUTUwsdC5pbmxpbmVCbG9j
a05lZWRzTGF5b3V0PSExLHQuc2hyaW5rV3JhcEJsb2Nrcz0hMSx0LnBpeGVsUG9z
aXRpb249ITEsdC5kZWxldGVFeHBhbmRvPSEwLHQubm9DbG9uZUV2ZW50PSEwLHQu
cmVsaWFibGVNYXJnaW5SaWdodD0hMCx0LmJveFNpemluZ1JlbGlhYmxlPSEwLG8u
Y2hlY2tlZD0hMCx0Lm5vQ2xvbmVDaGVja2VkPW8uY2xvbmVOb2RlKCEwKS5jaGVj
a2VkLHMuZGlzYWJsZWQ9ITAsdC5vcHREaXNhYmxlZD0hdS5kaXNhYmxlZDt0cnl7
ZGVsZXRlIGQudGVzdH1jYXRjaChoKXt0LmRlbGV0ZUV4cGFuZG89ITF9bz1hLmNy
ZWF0ZUVsZW1lbnQoImlucHV0Iiksby5zZXRBdHRyaWJ1dGUoInZhbHVlIiwiIiks
dC5pbnB1dD0iIj09PW8uZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpLG8udmFsdWU9InQi
LG8uc2V0QXR0cmlidXRlKCJ0eXBlIiwicmFkaW8iKSx0LnJhZGlvVmFsdWU9InQi
PT09by52YWx1ZSxvLnNldEF0dHJpYnV0ZSgiY2hlY2tlZCIsInQiKSxvLnNldEF0
dHJpYnV0ZSgibmFtZSIsInQiKSxsPWEuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgp
LGwuYXBwZW5kQ2hpbGQobyksdC5hcHBlbmRDaGVja2VkPW8uY2hlY2tlZCx0LmNo
ZWNrQ2xvbmU9bC5jbG9uZU5vZGUoITApLmNsb25lTm9kZSghMCkubGFzdENoaWxk
LmNoZWNrZWQsZC5hdHRhY2hFdmVudCYmKGQuYXR0YWNoRXZlbnQoIm9uY2xpY2si
LGZ1bmN0aW9uKCl7dC5ub0Nsb25lRXZlbnQ9ITF9KSxkLmNsb25lTm9kZSghMCku
Y2xpY2soKSk7Zm9yKGYgaW57c3VibWl0OiEwLGNoYW5nZTohMCxmb2N1c2luOiEw
fSlkLnNldEF0dHJpYnV0ZShjPSJvbiIrZiwidCIpLHRbZisiQnViYmxlcyJdPWMg
aW4gZXx8ZC5hdHRyaWJ1dGVzW2NdLmV4cGFuZG89PT0hMTtkLnN0eWxlLmJhY2tn
cm91bmRDbGlwPSJjb250ZW50LWJveCIsZC5jbG9uZU5vZGUoITApLnN0eWxlLmJh
Y2tncm91bmRDbGlwPSIiLHQuY2xlYXJDbG9uZVN0eWxlPSJjb250ZW50LWJveCI9
PT1kLnN0eWxlLmJhY2tncm91bmRDbGlwO2ZvcihmIGluIHgodCkpYnJlYWs7cmV0
dXJuIHQub3duTGFzdD0iMCIhPT1mLHgoZnVuY3Rpb24oKXt2YXIgbixyLG8scz0i
cGFkZGluZzowO21hcmdpbjowO2JvcmRlcjowO2Rpc3BsYXk6YmxvY2s7Ym94LXNp
emluZzpjb250ZW50LWJveDstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7LXdl
YmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94OyIsbD1hLmdldEVsZW1lbnRzQnlU
YWdOYW1lKCJib2R5IilbMF07bCYmKG49YS5jcmVhdGVFbGVtZW50KCJkaXYiKSxu
LnN0eWxlLmNzc1RleHQ9ImJvcmRlcjowO3dpZHRoOjA7aGVpZ2h0OjA7cG9zaXRp
b246YWJzb2x1dGU7dG9wOjA7bGVmdDotOTk5OXB4O21hcmdpbi10b3A6MXB4Iixs
LmFwcGVuZENoaWxkKG4pLmFwcGVuZENoaWxkKGQpLGQuaW5uZXJIVE1MPSI8dGFi
bGU+PHRyPjx0ZD48L3RkPjx0ZD50PC90ZD48L3RyPjwvdGFibGU+IixvPWQuZ2V0
RWxlbWVudHNCeVRhZ05hbWUoInRkIiksb1swXS5zdHlsZS5jc3NUZXh0PSJwYWRk
aW5nOjA7bWFyZ2luOjA7Ym9yZGVyOjA7ZGlzcGxheTpub25lIixwPTA9PT1vWzBd
Lm9mZnNldEhlaWdodCxvWzBdLnN0eWxlLmRpc3BsYXk9IiIsb1sxXS5zdHlsZS5k
aXNwbGF5PSJub25lIix0LnJlbGlhYmxlSGlkZGVuT2Zmc2V0cz1wJiYwPT09b1sw
XS5vZmZzZXRIZWlnaHQsZC5pbm5lckhUTUw9IiIsZC5zdHlsZS5jc3NUZXh0PSJi
b3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7
LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzoxcHg7Ym9yZGVy
OjFweDtkaXNwbGF5OmJsb2NrO3dpZHRoOjRweDttYXJnaW4tdG9wOjElO3Bvc2l0
aW9uOmFic29sdXRlO3RvcDoxJTsiLHguc3dhcChsLG51bGwhPWwuc3R5bGUuem9v
bT97em9vbToxfTp7fSxmdW5jdGlvbigpe3QuYm94U2l6aW5nPTQ9PT1kLm9mZnNl
dFdpZHRofSksZS5nZXRDb21wdXRlZFN0eWxlJiYodC5waXhlbFBvc2l0aW9uPSIx
JSIhPT0oZS5nZXRDb21wdXRlZFN0eWxlKGQsbnVsbCl8fHt9KS50b3AsdC5ib3hT
aXppbmdSZWxpYWJsZT0iNHB4Ij09PShlLmdldENvbXB1dGVkU3R5bGUoZCxudWxs
KXx8e3dpZHRoOiI0cHgifSkud2lkdGgscj1kLmFwcGVuZENoaWxkKGEuY3JlYXRl
RWxlbWVudCgiZGl2IikpLHIuc3R5bGUuY3NzVGV4dD1kLnN0eWxlLmNzc1RleHQ9
cyxyLnN0eWxlLm1hcmdpblJpZ2h0PXIuc3R5bGUud2lkdGg9IjAiLGQuc3R5bGUu
d2lkdGg9IjFweCIsdC5yZWxpYWJsZU1hcmdpblJpZ2h0PSFwYXJzZUZsb2F0KChl
LmdldENvbXB1dGVkU3R5bGUocixudWxsKXx8e30pLm1hcmdpblJpZ2h0KSksdHlw
ZW9mIGQuc3R5bGUuem9vbSE9PWkmJihkLmlubmVySFRNTD0iIixkLnN0eWxlLmNz
c1RleHQ9cysid2lkdGg6MXB4O3BhZGRpbmc6MXB4O2Rpc3BsYXk6aW5saW5lO3pv
b206MSIsdC5pbmxpbmVCbG9ja05lZWRzTGF5b3V0PTM9PT1kLm9mZnNldFdpZHRo
LGQuc3R5bGUuZGlzcGxheT0iYmxvY2siLGQuaW5uZXJIVE1MPSI8ZGl2PjwvZGl2
PiIsZC5maXJzdENoaWxkLnN0eWxlLndpZHRoPSI1cHgiLHQuc2hyaW5rV3JhcEJs
b2Nrcz0zIT09ZC5vZmZzZXRXaWR0aCx0LmlubGluZUJsb2NrTmVlZHNMYXlvdXQm
JihsLnN0eWxlLnpvb209MSkpLGwucmVtb3ZlQ2hpbGQobiksbj1kPW89cj1udWxs
KX0pLG49cz1sPXU9cj1vPW51bGwsdAp9KHt9KTt2YXIgQj0vKD86XHtbXHNcU10q
XH18XFtbXHNcU10qXF0pJC8sUD0vKFtBLVpdKS9nO2Z1bmN0aW9uIFIoZSxuLHIs
aSl7aWYoeC5hY2NlcHREYXRhKGUpKXt2YXIgbyxhLHM9eC5leHBhbmRvLGw9ZS5u
b2RlVHlwZSx1PWw/eC5jYWNoZTplLGM9bD9lW3NdOmVbc10mJnM7aWYoYyYmdVtj
XSYmKGl8fHVbY10uZGF0YSl8fHIhPT10fHwic3RyaW5nIiE9dHlwZW9mIG4pcmV0
dXJuIGN8fChjPWw/ZVtzXT1wLnBvcCgpfHx4Lmd1aWQrKzpzKSx1W2NdfHwodVtj
XT1sP3t9Ont0b0pTT046eC5ub29wfSksKCJvYmplY3QiPT10eXBlb2Ygbnx8ImZ1
bmN0aW9uIj09dHlwZW9mIG4pJiYoaT91W2NdPXguZXh0ZW5kKHVbY10sbik6dVtj
XS5kYXRhPXguZXh0ZW5kKHVbY10uZGF0YSxuKSksYT11W2NdLGl8fChhLmRhdGF8
fChhLmRhdGE9e30pLGE9YS5kYXRhKSxyIT09dCYmKGFbeC5jYW1lbENhc2Uobild
PXIpLCJzdHJpbmciPT10eXBlb2Ygbj8obz1hW25dLG51bGw9PW8mJihvPWFbeC5j
YW1lbENhc2UobildKSk6bz1hLG99fWZ1bmN0aW9uIFcoZSx0LG4pe2lmKHguYWNj
ZXB0RGF0YShlKSl7dmFyIHIsaSxvPWUubm9kZVR5cGUsYT1vP3guY2FjaGU6ZSxz
PW8/ZVt4LmV4cGFuZG9dOnguZXhwYW5kbztpZihhW3NdKXtpZih0JiYocj1uP2Fb
c106YVtzXS5kYXRhKSl7eC5pc0FycmF5KHQpP3Q9dC5jb25jYXQoeC5tYXAodCx4
LmNhbWVsQ2FzZSkpOnQgaW4gcj90PVt0XToodD14LmNhbWVsQ2FzZSh0KSx0PXQg
aW4gcj9bdF06dC5zcGxpdCgiICIpKSxpPXQubGVuZ3RoO3doaWxlKGktLSlkZWxl
dGUgclt0W2ldXTtpZihuPyFJKHIpOiF4LmlzRW1wdHlPYmplY3QocikpcmV0dXJu
fShufHwoZGVsZXRlIGFbc10uZGF0YSxJKGFbc10pKSkmJihvP3guY2xlYW5EYXRh
KFtlXSwhMCk6eC5zdXBwb3J0LmRlbGV0ZUV4cGFuZG98fGEhPWEud2luZG93P2Rl
bGV0ZSBhW3NdOmFbc109bnVsbCl9fX14LmV4dGVuZCh7Y2FjaGU6e30sbm9EYXRh
OnthcHBsZXQ6ITAsZW1iZWQ6ITAsb2JqZWN0OiJjbHNpZDpEMjdDREI2RS1BRTZE
LTExY2YtOTZCOC00NDQ1NTM1NDAwMDAifSxoYXNEYXRhOmZ1bmN0aW9uKGUpe3Jl
dHVybiBlPWUubm9kZVR5cGU/eC5jYWNoZVtlW3guZXhwYW5kb11dOmVbeC5leHBh
bmRvXSwhIWUmJiFJKGUpfSxkYXRhOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gUihl
LHQsbil9LHJlbW92ZURhdGE6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVyhlLHQpfSxf
ZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIFIoZSx0LG4sITApfSxfcmVtb3Zl
RGF0YTpmdW5jdGlvbihlLHQpe3JldHVybiBXKGUsdCwhMCl9LGFjY2VwdERhdGE6
ZnVuY3Rpb24oZSl7aWYoZS5ub2RlVHlwZSYmMSE9PWUubm9kZVR5cGUmJjkhPT1l
Lm5vZGVUeXBlKXJldHVybiExO3ZhciB0PWUubm9kZU5hbWUmJngubm9EYXRhW2Uu
bm9kZU5hbWUudG9Mb3dlckNhc2UoKV07cmV0dXJuIXR8fHQhPT0hMCYmZS5nZXRB
dHRyaWJ1dGUoImNsYXNzaWQiKT09PXR9fSkseC5mbi5leHRlbmQoe2RhdGE6ZnVu
Y3Rpb24oZSxuKXt2YXIgcixpLG89bnVsbCxhPTAscz10aGlzWzBdO2lmKGU9PT10
KXtpZih0aGlzLmxlbmd0aCYmKG89eC5kYXRhKHMpLDE9PT1zLm5vZGVUeXBlJiYh
eC5fZGF0YShzLCJwYXJzZWRBdHRycyIpKSl7Zm9yKHI9cy5hdHRyaWJ1dGVzO3Iu
bGVuZ3RoPmE7YSsrKWk9clthXS5uYW1lLDA9PT1pLmluZGV4T2YoImRhdGEtIikm
JihpPXguY2FtZWxDYXNlKGkuc2xpY2UoNSkpLCQocyxpLG9baV0pKTt4Ll9kYXRh
KHMsInBhcnNlZEF0dHJzIiwhMCl9cmV0dXJuIG99cmV0dXJuIm9iamVjdCI9PXR5
cGVvZiBlP3RoaXMuZWFjaChmdW5jdGlvbigpe3guZGF0YSh0aGlzLGUpfSk6YXJn
dW1lbnRzLmxlbmd0aD4xP3RoaXMuZWFjaChmdW5jdGlvbigpe3guZGF0YSh0aGlz
LGUsbil9KTpzPyQocyxlLHguZGF0YShzLGUpKTpudWxsfSxyZW1vdmVEYXRhOmZ1
bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt4LnJlbW92ZURh
dGEodGhpcyxlKX0pfX0pO2Z1bmN0aW9uICQoZSxuLHIpe2lmKHI9PT10JiYxPT09
ZS5ub2RlVHlwZSl7dmFyIGk9ImRhdGEtIituLnJlcGxhY2UoUCwiLSQxIikudG9M
b3dlckNhc2UoKTtpZihyPWUuZ2V0QXR0cmlidXRlKGkpLCJzdHJpbmciPT10eXBl
b2Ygcil7dHJ5e3I9InRydWUiPT09cj8hMDoiZmFsc2UiPT09cj8hMToibnVsbCI9
PT1yP251bGw6K3IrIiI9PT1yPytyOkIudGVzdChyKT94LnBhcnNlSlNPTihyKTpy
fWNhdGNoKG8pe314LmRhdGEoZSxuLHIpfWVsc2Ugcj10fXJldHVybiByfWZ1bmN0
aW9uIEkoZSl7dmFyIHQ7Zm9yKHQgaW4gZSlpZigoImRhdGEiIT09dHx8IXguaXNF
bXB0eU9iamVjdChlW3RdKSkmJiJ0b0pTT04iIT09dClyZXR1cm4hMTtyZXR1cm4h
MH14LmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oZSxuLHIpe3ZhciBpO3JldHVybiBl
PyhuPShufHwiZngiKSsicXVldWUiLGk9eC5fZGF0YShlLG4pLHImJighaXx8eC5p
c0FycmF5KHIpP2k9eC5fZGF0YShlLG4seC5tYWtlQXJyYXkocikpOmkucHVzaChy
KSksaXx8W10pOnR9LGRlcXVldWU6ZnVuY3Rpb24oZSx0KXt0PXR8fCJmeCI7dmFy
IG49eC5xdWV1ZShlLHQpLHI9bi5sZW5ndGgsaT1uLnNoaWZ0KCksbz14Ll9xdWV1
ZUhvb2tzKGUsdCksYT1mdW5jdGlvbigpe3guZGVxdWV1ZShlLHQpfTsiaW5wcm9n
cmVzcyI9PT1pJiYoaT1uLnNoaWZ0KCksci0tKSxpJiYoImZ4Ij09PXQmJm4udW5z
aGlmdCgiaW5wcm9ncmVzcyIpLGRlbGV0ZSBvLnN0b3AsaS5jYWxsKGUsYSxvKSks
IXImJm8mJm8uZW1wdHkuZmlyZSgpfSxfcXVldWVIb29rczpmdW5jdGlvbihlLHQp
e3ZhciBuPXQrInF1ZXVlSG9va3MiO3JldHVybiB4Ll9kYXRhKGUsbil8fHguX2Rh
dGEoZSxuLHtlbXB0eTp4LkNhbGxiYWNrcygib25jZSBtZW1vcnkiKS5hZGQoZnVu
Y3Rpb24oKXt4Ll9yZW1vdmVEYXRhKGUsdCsicXVldWUiKSx4Ll9yZW1vdmVEYXRh
KGUsbil9KX0pfX0pLHguZm4uZXh0ZW5kKHtxdWV1ZTpmdW5jdGlvbihlLG4pe3Zh
ciByPTI7cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlJiYobj1lLGU9ImZ4IixyLS0p
LHI+YXJndW1lbnRzLmxlbmd0aD94LnF1ZXVlKHRoaXNbMF0sZSk6bj09PXQ/dGhp
czp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD14LnF1ZXVlKHRoaXMsZSxuKTt4
Ll9xdWV1ZUhvb2tzKHRoaXMsZSksImZ4Ij09PWUmJiJpbnByb2dyZXNzIiE9PXRb
MF0mJnguZGVxdWV1ZSh0aGlzLGUpfSl9LGRlcXVldWU6ZnVuY3Rpb24oZSl7cmV0
dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3guZGVxdWV1ZSh0aGlzLGUpfSl9LGRl
bGF5OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9eC5meD94LmZ4LnNwZWVkc1tlXXx8
ZTplLHQ9dHx8ImZ4Iix0aGlzLnF1ZXVlKHQsZnVuY3Rpb24odCxuKXt2YXIgcj1z
ZXRUaW1lb3V0KHQsZSk7bi5zdG9wPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHIp
fX0pfSxjbGVhclF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnF1ZXVlKGV8
fCJmeCIsW10pfSxwcm9taXNlOmZ1bmN0aW9uKGUsbil7dmFyIHIsaT0xLG89eC5E
ZWZlcnJlZCgpLGE9dGhpcyxzPXRoaXMubGVuZ3RoLGw9ZnVuY3Rpb24oKXstLWl8
fG8ucmVzb2x2ZVdpdGgoYSxbYV0pfTsic3RyaW5nIiE9dHlwZW9mIGUmJihuPWUs
ZT10KSxlPWV8fCJmeCI7d2hpbGUocy0tKXI9eC5fZGF0YShhW3NdLGUrInF1ZXVl
SG9va3MiKSxyJiZyLmVtcHR5JiYoaSsrLHIuZW1wdHkuYWRkKGwpKTtyZXR1cm4g
bCgpLG8ucHJvbWlzZShuKX19KTt2YXIgeixYLFU9L1tcdFxyXG5cZl0vZyxWPS9c
ci9nLFk9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9ufG9iamVjdCkk
L2ksSj0vXig/OmF8YXJlYSkkL2ksRz0vXig/OmNoZWNrZWR8c2VsZWN0ZWQpJC9p
LFE9eC5zdXBwb3J0LmdldFNldEF0dHJpYnV0ZSxLPXguc3VwcG9ydC5pbnB1dDt4
LmZuLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQpe3JldHVybiB4LmFjY2Vzcyh0
aGlzLHguYXR0cixlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpm
dW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7eC5yZW1vdmVB
dHRyKHRoaXMsZSl9KX0scHJvcDpmdW5jdGlvbihlLHQpe3JldHVybiB4LmFjY2Vz
cyh0aGlzLHgucHJvcCxlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlUHJv
cDpmdW5jdGlvbihlKXtyZXR1cm4gZT14LnByb3BGaXhbZV18fGUsdGhpcy5lYWNo
KGZ1bmN0aW9uKCl7dHJ5e3RoaXNbZV09dCxkZWxldGUgdGhpc1tlXX1jYXRjaChu
KXt9fSl9LGFkZENsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scixpLG8sYT0wLHM9
dGhpcy5sZW5ndGgsbD0ic3RyaW5nIj09dHlwZW9mIGUmJmU7aWYoeC5pc0Z1bmN0
aW9uKGUpKXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24odCl7eCh0aGlzKS5hZGRD
bGFzcyhlLmNhbGwodGhpcyx0LHRoaXMuY2xhc3NOYW1lKSl9KTtpZihsKWZvcih0
PShlfHwiIikubWF0Y2goVCl8fFtdO3M+YTthKyspaWYobj10aGlzW2FdLHI9MT09
PW4ubm9kZVR5cGUmJihuLmNsYXNzTmFtZT8oIiAiK24uY2xhc3NOYW1lKyIgIiku
cmVwbGFjZShVLCIgIik6IiAiKSl7bz0wO3doaWxlKGk9dFtvKytdKTA+ci5pbmRl
eE9mKCIgIitpKyIgIikmJihyKz1pKyIgIik7bi5jbGFzc05hbWU9eC50cmltKHIp
fXJldHVybiB0aGlzfSxyZW1vdmVDbGFzczpmdW5jdGlvbihlKXt2YXIgdCxuLHIs
aSxvLGE9MCxzPXRoaXMubGVuZ3RoLGw9MD09PWFyZ3VtZW50cy5sZW5ndGh8fCJz
dHJpbmciPT10eXBlb2YgZSYmZTtpZih4LmlzRnVuY3Rpb24oZSkpcmV0dXJuIHRo
aXMuZWFjaChmdW5jdGlvbih0KXt4KHRoaXMpLnJlbW92ZUNsYXNzKGUuY2FsbCh0
aGlzLHQsdGhpcy5jbGFzc05hbWUpKX0pO2lmKGwpZm9yKHQ9KGV8fCIiKS5tYXRj
aChUKXx8W107cz5hO2ErKylpZihuPXRoaXNbYV0scj0xPT09bi5ub2RlVHlwZSYm
KG4uY2xhc3NOYW1lPygiICIrbi5jbGFzc05hbWUrIiAiKS5yZXBsYWNlKFUsIiAi
KToiIikpe289MDt3aGlsZShpPXRbbysrXSl3aGlsZShyLmluZGV4T2YoIiAiK2kr
IiAiKT49MClyPXIucmVwbGFjZSgiICIraSsiICIsIiAiKTtuLmNsYXNzTmFtZT1l
P3gudHJpbShyKToiIn1yZXR1cm4gdGhpc30sdG9nZ2xlQ2xhc3M6ZnVuY3Rpb24o
ZSx0KXt2YXIgbj10eXBlb2YgZTtyZXR1cm4iYm9vbGVhbiI9PXR5cGVvZiB0JiYi
c3RyaW5nIj09PW4/dD90aGlzLmFkZENsYXNzKGUpOnRoaXMucmVtb3ZlQ2xhc3Mo
ZSk6eC5pc0Z1bmN0aW9uKGUpP3RoaXMuZWFjaChmdW5jdGlvbihuKXt4KHRoaXMp
LnRvZ2dsZUNsYXNzKGUuY2FsbCh0aGlzLG4sdGhpcy5jbGFzc05hbWUsdCksdCl9
KTp0aGlzLmVhY2goZnVuY3Rpb24oKXtpZigic3RyaW5nIj09PW4pe3ZhciB0LHI9
MCxvPXgodGhpcyksYT1lLm1hdGNoKFQpfHxbXTt3aGlsZSh0PWFbcisrXSlvLmhh
c0NsYXNzKHQpP28ucmVtb3ZlQ2xhc3ModCk6by5hZGRDbGFzcyh0KX1lbHNlKG49
PT1pfHwiYm9vbGVhbiI9PT1uKSYmKHRoaXMuY2xhc3NOYW1lJiZ4Ll9kYXRhKHRo
aXMsIl9fY2xhc3NOYW1lX18iLHRoaXMuY2xhc3NOYW1lKSx0aGlzLmNsYXNzTmFt
ZT10aGlzLmNsYXNzTmFtZXx8ZT09PSExPyIiOnguX2RhdGEodGhpcywiX19jbGFz
c05hbWVfXyIpfHwiIil9KX0saGFzQ2xhc3M6ZnVuY3Rpb24oZSl7dmFyIHQ9IiAi
K2UrIiAiLG49MCxyPXRoaXMubGVuZ3RoO2Zvcig7cj5uO24rKylpZigxPT09dGhp
c1tuXS5ub2RlVHlwZSYmKCIgIit0aGlzW25dLmNsYXNzTmFtZSsiICIpLnJlcGxh
Y2UoVSwiICIpLmluZGV4T2YodCk+PTApcmV0dXJuITA7cmV0dXJuITF9LHZhbDpm
dW5jdGlvbihlKXt2YXIgbixyLGksbz10aGlzWzBdO3tpZihhcmd1bWVudHMubGVu
Z3RoKXJldHVybiBpPXguaXNGdW5jdGlvbihlKSx0aGlzLmVhY2goZnVuY3Rpb24o
bil7dmFyIG87MT09PXRoaXMubm9kZVR5cGUmJihvPWk/ZS5jYWxsKHRoaXMsbix4
KHRoaXMpLnZhbCgpKTplLG51bGw9PW8/bz0iIjoibnVtYmVyIj09dHlwZW9mIG8/
bys9IiI6eC5pc0FycmF5KG8pJiYobz14Lm1hcChvLGZ1bmN0aW9uKGUpe3JldHVy
biBudWxsPT1lPyIiOmUrIiJ9KSkscj14LnZhbEhvb2tzW3RoaXMudHlwZV18fHgu
dmFsSG9va3NbdGhpcy5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSxyJiYic2V0Imlu
IHImJnIuc2V0KHRoaXMsbywidmFsdWUiKSE9PXR8fCh0aGlzLnZhbHVlPW8pKX0p
O2lmKG8pcmV0dXJuIHI9eC52YWxIb29rc1tvLnR5cGVdfHx4LnZhbEhvb2tzW28u
bm9kZU5hbWUudG9Mb3dlckNhc2UoKV0sciYmImdldCJpbiByJiYobj1yLmdldChv
LCJ2YWx1ZSIpKSE9PXQ/bjoobj1vLnZhbHVlLCJzdHJpbmciPT10eXBlb2Ygbj9u
LnJlcGxhY2UoViwiIik6bnVsbD09bj8iIjpuKX19fSkseC5leHRlbmQoe3ZhbEhv
b2tzOntvcHRpb246e2dldDpmdW5jdGlvbihlKXt2YXIgdD14LmZpbmQuYXR0cihl
LCJ2YWx1ZSIpO3JldHVybiBudWxsIT10P3Q6ZS50ZXh0fX0sc2VsZWN0OntnZXQ6
ZnVuY3Rpb24oZSl7dmFyIHQsbixyPWUub3B0aW9ucyxpPWUuc2VsZWN0ZWRJbmRl
eCxvPSJzZWxlY3Qtb25lIj09PWUudHlwZXx8MD5pLGE9bz9udWxsOltdLHM9bz9p
KzE6ci5sZW5ndGgsbD0wPmk/czpvP2k6MDtmb3IoO3M+bDtsKyspaWYobj1yW2xd
LCEoIW4uc2VsZWN0ZWQmJmwhPT1pfHwoeC5zdXBwb3J0Lm9wdERpc2FibGVkP24u
ZGlzYWJsZWQ6bnVsbCE9PW4uZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpKXx8bi5w
YXJlbnROb2RlLmRpc2FibGVkJiZ4Lm5vZGVOYW1lKG4ucGFyZW50Tm9kZSwib3B0
Z3JvdXAiKSkpe2lmKHQ9eChuKS52YWwoKSxvKXJldHVybiB0O2EucHVzaCh0KX1y
ZXR1cm4gYX0sc2V0OmZ1bmN0aW9uKGUsdCl7dmFyIG4scixpPWUub3B0aW9ucyxv
PXgubWFrZUFycmF5KHQpLGE9aS5sZW5ndGg7d2hpbGUoYS0tKXI9aVthXSwoci5z
ZWxlY3RlZD14LmluQXJyYXkoeChyKS52YWwoKSxvKT49MCkmJihuPSEwKTtyZXR1
cm4gbnx8KGUuc2VsZWN0ZWRJbmRleD0tMSksb319fSxhdHRyOmZ1bmN0aW9uKGUs
bixyKXt2YXIgbyxhLHM9ZS5ub2RlVHlwZTtpZihlJiYzIT09cyYmOCE9PXMmJjIh
PT1zKXJldHVybiB0eXBlb2YgZS5nZXRBdHRyaWJ1dGU9PT1pP3gucHJvcChlLG4s
cik6KDE9PT1zJiZ4LmlzWE1MRG9jKGUpfHwobj1uLnRvTG93ZXJDYXNlKCksbz14
LmF0dHJIb29rc1tuXXx8KHguZXhwci5tYXRjaC5ib29sLnRlc3Qobik/WDp6KSks
cj09PXQ/byYmImdldCJpbiBvJiZudWxsIT09KGE9by5nZXQoZSxuKSk/YTooYT14
LmZpbmQuYXR0cihlLG4pLG51bGw9PWE/dDphKTpudWxsIT09cj9vJiYic2V0Imlu
IG8mJihhPW8uc2V0KGUscixuKSkhPT10P2E6KGUuc2V0QXR0cmlidXRlKG4scisi
Iikscik6KHgucmVtb3ZlQXR0cihlLG4pLHQpKX0scmVtb3ZlQXR0cjpmdW5jdGlv
bihlLHQpe3ZhciBuLHIsaT0wLG89dCYmdC5tYXRjaChUKTtpZihvJiYxPT09ZS5u
b2RlVHlwZSl3aGlsZShuPW9baSsrXSlyPXgucHJvcEZpeFtuXXx8bix4LmV4cHIu
bWF0Y2guYm9vbC50ZXN0KG4pP0smJlF8fCFHLnRlc3Qobik/ZVtyXT0hMTplW3gu
Y2FtZWxDYXNlKCJkZWZhdWx0LSIrbildPWVbcl09ITE6eC5hdHRyKGUsbiwiIiks
ZS5yZW1vdmVBdHRyaWJ1dGUoUT9uOnIpfSxhdHRySG9va3M6e3R5cGU6e3NldDpm
dW5jdGlvbihlLHQpe2lmKCF4LnN1cHBvcnQucmFkaW9WYWx1ZSYmInJhZGlvIj09
PXQmJngubm9kZU5hbWUoZSwiaW5wdXQiKSl7dmFyIG49ZS52YWx1ZTtyZXR1cm4g
ZS5zZXRBdHRyaWJ1dGUoInR5cGUiLHQpLG4mJihlLnZhbHVlPW4pLHR9fX19LHBy
b3BGaXg6eyJmb3IiOiJodG1sRm9yIiwiY2xhc3MiOiJjbGFzc05hbWUifSxwcm9w
OmZ1bmN0aW9uKGUsbixyKXt2YXIgaSxvLGEscz1lLm5vZGVUeXBlO2lmKGUmJjMh
PT1zJiY4IT09cyYmMiE9PXMpcmV0dXJuIGE9MSE9PXN8fCF4LmlzWE1MRG9jKGUp
LGEmJihuPXgucHJvcEZpeFtuXXx8bixvPXgucHJvcEhvb2tzW25dKSxyIT09dD9v
JiYic2V0ImluIG8mJihpPW8uc2V0KGUscixuKSkhPT10P2k6ZVtuXT1yOm8mJiJn
ZXQiaW4gbyYmbnVsbCE9PShpPW8uZ2V0KGUsbikpP2k6ZVtuXX0scHJvcEhvb2tz
Ont0YWJJbmRleDp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PXguZmluZC5hdHRyKGUs
InRhYmluZGV4Iik7cmV0dXJuIHQ/cGFyc2VJbnQodCwxMCk6WS50ZXN0KGUubm9k
ZU5hbWUpfHxKLnRlc3QoZS5ub2RlTmFtZSkmJmUuaHJlZj8wOi0xfX19fSksWD17
c2V0OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdD09PSExP3gucmVtb3ZlQXR0cihl
LG4pOksmJlF8fCFHLnRlc3Qobik/ZS5zZXRBdHRyaWJ1dGUoIVEmJngucHJvcEZp
eFtuXXx8bixuKTplW3guY2FtZWxDYXNlKCJkZWZhdWx0LSIrbildPWVbbl09ITAs
bn19LHguZWFjaCh4LmV4cHIubWF0Y2guYm9vbC5zb3VyY2UubWF0Y2goL1x3Ky9n
KSxmdW5jdGlvbihlLG4pe3ZhciByPXguZXhwci5hdHRySGFuZGxlW25dfHx4LmZp
bmQuYXR0cjt4LmV4cHIuYXR0ckhhbmRsZVtuXT1LJiZRfHwhRy50ZXN0KG4pP2Z1
bmN0aW9uKGUsbixpKXt2YXIgbz14LmV4cHIuYXR0ckhhbmRsZVtuXSxhPWk/dDoo
eC5leHByLmF0dHJIYW5kbGVbbl09dCkhPXIoZSxuLGkpP24udG9Mb3dlckNhc2Uo
KTpudWxsO3JldHVybiB4LmV4cHIuYXR0ckhhbmRsZVtuXT1vLGF9OmZ1bmN0aW9u
KGUsbixyKXtyZXR1cm4gcj90OmVbeC5jYW1lbENhc2UoImRlZmF1bHQtIituKV0/
bi50b0xvd2VyQ2FzZSgpOm51bGx9fSksSyYmUXx8KHguYXR0ckhvb2tzLnZhbHVl
PXtzZXQ6ZnVuY3Rpb24oZSxuLHIpe3JldHVybiB4Lm5vZGVOYW1lKGUsImlucHV0
Iik/KGUuZGVmYXVsdFZhbHVlPW4sdCk6eiYmei5zZXQoZSxuLHIpfX0pLFF8fCh6
PXtzZXQ6ZnVuY3Rpb24oZSxuLHIpe3ZhciBpPWUuZ2V0QXR0cmlidXRlTm9kZShy
KTtyZXR1cm4gaXx8ZS5zZXRBdHRyaWJ1dGVOb2RlKGk9ZS5vd25lckRvY3VtZW50
LmNyZWF0ZUF0dHJpYnV0ZShyKSksaS52YWx1ZT1uKz0iIiwidmFsdWUiPT09cnx8
bj09PWUuZ2V0QXR0cmlidXRlKHIpP246dH19LHguZXhwci5hdHRySGFuZGxlLmlk
PXguZXhwci5hdHRySGFuZGxlLm5hbWU9eC5leHByLmF0dHJIYW5kbGUuY29vcmRz
PWZ1bmN0aW9uKGUsbixyKXt2YXIgaTtyZXR1cm4gcj90OihpPWUuZ2V0QXR0cmli
dXRlTm9kZShuKSkmJiIiIT09aS52YWx1ZT9pLnZhbHVlOm51bGx9LHgudmFsSG9v
a3MuYnV0dG9uPXtnZXQ6ZnVuY3Rpb24oZSxuKXt2YXIgcj1lLmdldEF0dHJpYnV0
ZU5vZGUobik7cmV0dXJuIHImJnIuc3BlY2lmaWVkP3IudmFsdWU6dH0sc2V0Onou
c2V0fSx4LmF0dHJIb29rcy5jb250ZW50ZWRpdGFibGU9e3NldDpmdW5jdGlvbihl
LHQsbil7ei5zZXQoZSwiIj09PXQ/ITE6dCxuKX19LHguZWFjaChbIndpZHRoIiwi
aGVpZ2h0Il0sZnVuY3Rpb24oZSxuKXt4LmF0dHJIb29rc1tuXT17c2V0OmZ1bmN0
aW9uKGUscil7cmV0dXJuIiI9PT1yPyhlLnNldEF0dHJpYnV0ZShuLCJhdXRvIiks
cik6dH19fSkpLHguc3VwcG9ydC5ocmVmTm9ybWFsaXplZHx8eC5lYWNoKFsiaHJl
ZiIsInNyYyJdLGZ1bmN0aW9uKGUsdCl7eC5wcm9wSG9va3NbdF09e2dldDpmdW5j
dGlvbihlKXtyZXR1cm4gZS5nZXRBdHRyaWJ1dGUodCw0KX19fSkseC5zdXBwb3J0
LnN0eWxlfHwoeC5hdHRySG9va3Muc3R5bGU9e2dldDpmdW5jdGlvbihlKXtyZXR1
cm4gZS5zdHlsZS5jc3NUZXh0fHx0fSxzZXQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4g
ZS5zdHlsZS5jc3NUZXh0PXQrIiJ9fSkseC5zdXBwb3J0Lm9wdFNlbGVjdGVkfHwo
eC5wcm9wSG9va3Muc2VsZWN0ZWQ9e2dldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBh
cmVudE5vZGU7cmV0dXJuIHQmJih0LnNlbGVjdGVkSW5kZXgsdC5wYXJlbnROb2Rl
JiZ0LnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCksbnVsbH19KSx4LmVhY2goWyJ0
YWJJbmRleCIsInJlYWRPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJj
ZWxsUGFkZGluZyIsInJvd1NwYW4iLCJjb2xTcGFuIiwidXNlTWFwIiwiZnJhbWVC
b3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe3gucHJvcEZpeFt0
aGlzLnRvTG93ZXJDYXNlKCldPXRoaXN9KSx4LnN1cHBvcnQuZW5jdHlwZXx8KHgu
cHJvcEZpeC5lbmN0eXBlPSJlbmNvZGluZyIpLHguZWFjaChbInJhZGlvIiwiY2hl
Y2tib3giXSxmdW5jdGlvbigpe3gudmFsSG9va3NbdGhpc109e3NldDpmdW5jdGlv
bihlLG4pe3JldHVybiB4LmlzQXJyYXkobik/ZS5jaGVja2VkPXguaW5BcnJheSh4
KGUpLnZhbCgpLG4pPj0wOnR9fSx4LnN1cHBvcnQuY2hlY2tPbnx8KHgudmFsSG9v
a3NbdGhpc10uZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT09ZS5nZXRBdHRy
aWJ1dGUoInZhbHVlIik/Im9uIjplLnZhbHVlfSl9KTt2YXIgWj0vXig/OmlucHV0
fHNlbGVjdHx0ZXh0YXJlYSkkL2ksZXQ9L15rZXkvLHR0PS9eKD86bW91c2V8Y29u
dGV4dG1lbnUpfGNsaWNrLyxudD0vXig/OmZvY3VzaW5mb2N1c3xmb2N1c291dGJs
dXIpJC8scnQ9L14oW14uXSopKD86XC4oLispfCkkLztmdW5jdGlvbiBpdCgpe3Jl
dHVybiEwfWZ1bmN0aW9uIG90KCl7cmV0dXJuITF9ZnVuY3Rpb24gYXQoKXt0cnl7
cmV0dXJuIGEuYWN0aXZlRWxlbWVudH1jYXRjaChlKXt9fXguZXZlbnQ9e2dsb2Jh
bDp7fSxhZGQ6ZnVuY3Rpb24oZSxuLHIsbyxhKXt2YXIgcyxsLHUsYyxwLGYsZCxo
LGcsbSx5LHY9eC5fZGF0YShlKTtpZih2KXtyLmhhbmRsZXImJihjPXIscj1jLmhh
bmRsZXIsYT1jLnNlbGVjdG9yKSxyLmd1aWR8fChyLmd1aWQ9eC5ndWlkKyspLChs
PXYuZXZlbnRzKXx8KGw9di5ldmVudHM9e30pLChmPXYuaGFuZGxlKXx8KGY9di5o
YW5kbGU9ZnVuY3Rpb24oZSl7cmV0dXJuIHR5cGVvZiB4PT09aXx8ZSYmeC5ldmVu
dC50cmlnZ2VyZWQ9PT1lLnR5cGU/dDp4LmV2ZW50LmRpc3BhdGNoLmFwcGx5KGYu
ZWxlbSxhcmd1bWVudHMpfSxmLmVsZW09ZSksbj0obnx8IiIpLm1hdGNoKFQpfHxb
IiJdLHU9bi5sZW5ndGg7d2hpbGUodS0tKXM9cnQuZXhlYyhuW3VdKXx8W10sZz15
PXNbMV0sbT0oc1syXXx8IiIpLnNwbGl0KCIuIikuc29ydCgpLGcmJihwPXguZXZl
bnQuc3BlY2lhbFtnXXx8e30sZz0oYT9wLmRlbGVnYXRlVHlwZTpwLmJpbmRUeXBl
KXx8ZyxwPXguZXZlbnQuc3BlY2lhbFtnXXx8e30sZD14LmV4dGVuZCh7dHlwZTpn
LG9yaWdUeXBlOnksZGF0YTpvLGhhbmRsZXI6cixndWlkOnIuZ3VpZCxzZWxlY3Rv
cjphLG5lZWRzQ29udGV4dDphJiZ4LmV4cHIubWF0Y2gubmVlZHNDb250ZXh0LnRl
c3QoYSksbmFtZXNwYWNlOm0uam9pbigiLiIpfSxjKSwoaD1sW2ddKXx8KGg9bFtn
XT1bXSxoLmRlbGVnYXRlQ291bnQ9MCxwLnNldHVwJiZwLnNldHVwLmNhbGwoZSxv
LG0sZikhPT0hMXx8KGUuYWRkRXZlbnRMaXN0ZW5lcj9lLmFkZEV2ZW50TGlzdGVu
ZXIoZyxmLCExKTplLmF0dGFjaEV2ZW50JiZlLmF0dGFjaEV2ZW50KCJvbiIrZyxm
KSkpLHAuYWRkJiYocC5hZGQuY2FsbChlLGQpLGQuaGFuZGxlci5ndWlkfHwoZC5o
YW5kbGVyLmd1aWQ9ci5ndWlkKSksYT9oLnNwbGljZShoLmRlbGVnYXRlQ291bnQr
KywwLGQpOmgucHVzaChkKSx4LmV2ZW50Lmdsb2JhbFtnXT0hMCk7ZT1udWxsfX0s
cmVtb3ZlOmZ1bmN0aW9uKGUsdCxuLHIsaSl7dmFyIG8sYSxzLGwsdSxjLHAsZixk
LGgsZyxtPXguaGFzRGF0YShlKSYmeC5fZGF0YShlKTtpZihtJiYoYz1tLmV2ZW50
cykpe3Q9KHR8fCIiKS5tYXRjaChUKXx8WyIiXSx1PXQubGVuZ3RoO3doaWxlKHUt
LSlpZihzPXJ0LmV4ZWModFt1XSl8fFtdLGQ9Zz1zWzFdLGg9KHNbMl18fCIiKS5z
cGxpdCgiLiIpLnNvcnQoKSxkKXtwPXguZXZlbnQuc3BlY2lhbFtkXXx8e30sZD0o
cj9wLmRlbGVnYXRlVHlwZTpwLmJpbmRUeXBlKXx8ZCxmPWNbZF18fFtdLHM9c1sy
XSYmUmVnRXhwKCIoXnxcXC4pIitoLmpvaW4oIlxcLig/Oi4qXFwufCkiKSsiKFxc
LnwkKSIpLGw9bz1mLmxlbmd0aDt3aGlsZShvLS0pYT1mW29dLCFpJiZnIT09YS5v
cmlnVHlwZXx8biYmbi5ndWlkIT09YS5ndWlkfHxzJiYhcy50ZXN0KGEubmFtZXNw
YWNlKXx8ciYmciE9PWEuc2VsZWN0b3ImJigiKioiIT09cnx8IWEuc2VsZWN0b3Ip
fHwoZi5zcGxpY2UobywxKSxhLnNlbGVjdG9yJiZmLmRlbGVnYXRlQ291bnQtLSxw
LnJlbW92ZSYmcC5yZW1vdmUuY2FsbChlLGEpKTtsJiYhZi5sZW5ndGgmJihwLnRl
YXJkb3duJiZwLnRlYXJkb3duLmNhbGwoZSxoLG0uaGFuZGxlKSE9PSExfHx4LnJl
bW92ZUV2ZW50KGUsZCxtLmhhbmRsZSksZGVsZXRlIGNbZF0pfWVsc2UgZm9yKGQg
aW4gYyl4LmV2ZW50LnJlbW92ZShlLGQrdFt1XSxuLHIsITApO3guaXNFbXB0eU9i
amVjdChjKSYmKGRlbGV0ZSBtLmhhbmRsZSx4Ll9yZW1vdmVEYXRhKGUsImV2ZW50
cyIpKX19LHRyaWdnZXI6ZnVuY3Rpb24obixyLGksbyl7dmFyIHMsbCx1LGMscCxm
LGQsaD1baXx8YV0sZz12LmNhbGwobiwidHlwZSIpP24udHlwZTpuLG09di5jYWxs
KG4sIm5hbWVzcGFjZSIpP24ubmFtZXNwYWNlLnNwbGl0KCIuIik6W107aWYodT1m
PWk9aXx8YSwzIT09aS5ub2RlVHlwZSYmOCE9PWkubm9kZVR5cGUmJiFudC50ZXN0
KGcreC5ldmVudC50cmlnZ2VyZWQpJiYoZy5pbmRleE9mKCIuIik+PTAmJihtPWcu
c3BsaXQoIi4iKSxnPW0uc2hpZnQoKSxtLnNvcnQoKSksbD0wPmcuaW5kZXhPZigi
OiIpJiYib24iK2csbj1uW3guZXhwYW5kb10/bjpuZXcgeC5FdmVudChnLCJvYmpl
Y3QiPT10eXBlb2YgbiYmbiksbi5pc1RyaWdnZXI9bz8yOjMsbi5uYW1lc3BhY2U9
bS5qb2luKCIuIiksbi5uYW1lc3BhY2VfcmU9bi5uYW1lc3BhY2U/UmVnRXhwKCIo
XnxcXC4pIittLmpvaW4oIlxcLig/Oi4qXFwufCkiKSsiKFxcLnwkKSIpOm51bGws
bi5yZXN1bHQ9dCxuLnRhcmdldHx8KG4udGFyZ2V0PWkpLHI9bnVsbD09cj9bbl06
eC5tYWtlQXJyYXkocixbbl0pLHA9eC5ldmVudC5zcGVjaWFsW2ddfHx7fSxvfHwh
cC50cmlnZ2VyfHxwLnRyaWdnZXIuYXBwbHkoaSxyKSE9PSExKSl7aWYoIW8mJiFw
Lm5vQnViYmxlJiYheC5pc1dpbmRvdyhpKSl7Zm9yKGM9cC5kZWxlZ2F0ZVR5cGV8
fGcsbnQudGVzdChjK2cpfHwodT11LnBhcmVudE5vZGUpO3U7dT11LnBhcmVudE5v
ZGUpaC5wdXNoKHUpLGY9dTtmPT09KGkub3duZXJEb2N1bWVudHx8YSkmJmgucHVz
aChmLmRlZmF1bHRWaWV3fHxmLnBhcmVudFdpbmRvd3x8ZSl9ZD0wO3doaWxlKCh1
PWhbZCsrXSkmJiFuLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpbi50eXBlPWQ+MT9j
OnAuYmluZFR5cGV8fGcscz0oeC5fZGF0YSh1LCJldmVudHMiKXx8e30pW24udHlw
ZV0mJnguX2RhdGEodSwiaGFuZGxlIikscyYmcy5hcHBseSh1LHIpLHM9bCYmdVts
XSxzJiZ4LmFjY2VwdERhdGEodSkmJnMuYXBwbHkmJnMuYXBwbHkodSxyKT09PSEx
JiZuLnByZXZlbnREZWZhdWx0KCk7aWYobi50eXBlPWcsIW8mJiFuLmlzRGVmYXVs
dFByZXZlbnRlZCgpJiYoIXAuX2RlZmF1bHR8fHAuX2RlZmF1bHQuYXBwbHkoaC5w
b3AoKSxyKT09PSExKSYmeC5hY2NlcHREYXRhKGkpJiZsJiZpW2ddJiYheC5pc1dp
bmRvdyhpKSl7Zj1pW2xdLGYmJihpW2xdPW51bGwpLHguZXZlbnQudHJpZ2dlcmVk
PWc7dHJ5e2lbZ10oKX1jYXRjaCh5KXt9eC5ldmVudC50cmlnZ2VyZWQ9dCxmJiYo
aVtsXT1mKX1yZXR1cm4gbi5yZXN1bHR9fSxkaXNwYXRjaDpmdW5jdGlvbihlKXtl
PXguZXZlbnQuZml4KGUpO3ZhciBuLHIsaSxvLGEscz1bXSxsPWcuY2FsbChhcmd1
bWVudHMpLHU9KHguX2RhdGEodGhpcywiZXZlbnRzIil8fHt9KVtlLnR5cGVdfHxb
XSxjPXguZXZlbnQuc3BlY2lhbFtlLnR5cGVdfHx7fTtpZihsWzBdPWUsZS5kZWxl
Z2F0ZVRhcmdldD10aGlzLCFjLnByZURpc3BhdGNofHxjLnByZURpc3BhdGNoLmNh
bGwodGhpcyxlKSE9PSExKXtzPXguZXZlbnQuaGFuZGxlcnMuY2FsbCh0aGlzLGUs
dSksbj0wO3doaWxlKChvPXNbbisrXSkmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVk
KCkpe2UuY3VycmVudFRhcmdldD1vLmVsZW0sYT0wO3doaWxlKChpPW8uaGFuZGxl
cnNbYSsrXSkmJiFlLmlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkKCkpKCFl
Lm5hbWVzcGFjZV9yZXx8ZS5uYW1lc3BhY2VfcmUudGVzdChpLm5hbWVzcGFjZSkp
JiYoZS5oYW5kbGVPYmo9aSxlLmRhdGE9aS5kYXRhLHI9KCh4LmV2ZW50LnNwZWNp
YWxbaS5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fGkuaGFuZGxlcikuYXBwbHkoby5l
bGVtLGwpLHIhPT10JiYoZS5yZXN1bHQ9cik9PT0hMSYmKGUucHJldmVudERlZmF1
bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKSl9cmV0dXJuIGMucG9zdERpc3BhdGNo
JiZjLnBvc3REaXNwYXRjaC5jYWxsKHRoaXMsZSksZS5yZXN1bHR9fSxoYW5kbGVy
czpmdW5jdGlvbihlLG4pe3ZhciByLGksbyxhLHM9W10sbD1uLmRlbGVnYXRlQ291
bnQsdT1lLnRhcmdldDtpZihsJiZ1Lm5vZGVUeXBlJiYoIWUuYnV0dG9ufHwiY2xp
Y2siIT09ZS50eXBlKSlmb3IoO3UhPXRoaXM7dT11LnBhcmVudE5vZGV8fHRoaXMp
aWYoMT09PXUubm9kZVR5cGUmJih1LmRpc2FibGVkIT09ITB8fCJjbGljayIhPT1l
LnR5cGUpKXtmb3Iobz1bXSxhPTA7bD5hO2ErKylpPW5bYV0scj1pLnNlbGVjdG9y
KyIgIixvW3JdPT09dCYmKG9bcl09aS5uZWVkc0NvbnRleHQ/eChyLHRoaXMpLmlu
ZGV4KHUpPj0wOnguZmluZChyLHRoaXMsbnVsbCxbdV0pLmxlbmd0aCksb1tyXSYm
by5wdXNoKGkpO28ubGVuZ3RoJiZzLnB1c2goe2VsZW06dSxoYW5kbGVyczpvfSl9
cmV0dXJuIG4ubGVuZ3RoPmwmJnMucHVzaCh7ZWxlbTp0aGlzLGhhbmRsZXJzOm4u
c2xpY2UobCl9KSxzfSxmaXg6ZnVuY3Rpb24oZSl7aWYoZVt4LmV4cGFuZG9dKXJl
dHVybiBlO3ZhciB0LG4scixpPWUudHlwZSxvPWUscz10aGlzLmZpeEhvb2tzW2ld
O3N8fCh0aGlzLmZpeEhvb2tzW2ldPXM9dHQudGVzdChpKT90aGlzLm1vdXNlSG9v
a3M6ZXQudGVzdChpKT90aGlzLmtleUhvb2tzOnt9KSxyPXMucHJvcHM/dGhpcy5w
cm9wcy5jb25jYXQocy5wcm9wcyk6dGhpcy5wcm9wcyxlPW5ldyB4LkV2ZW50KG8p
LHQ9ci5sZW5ndGg7d2hpbGUodC0tKW49clt0XSxlW25dPW9bbl07cmV0dXJuIGUu
dGFyZ2V0fHwoZS50YXJnZXQ9by5zcmNFbGVtZW50fHxhKSwzPT09ZS50YXJnZXQu
bm9kZVR5cGUmJihlLnRhcmdldD1lLnRhcmdldC5wYXJlbnROb2RlKSxlLm1ldGFL
ZXk9ISFlLm1ldGFLZXkscy5maWx0ZXI/cy5maWx0ZXIoZSxvKTplfSxwcm9wczoi
YWx0S2V5IGJ1YmJsZXMgY2FuY2VsYWJsZSBjdHJsS2V5IGN1cnJlbnRUYXJnZXQg
ZXZlbnRQaGFzZSBtZXRhS2V5IHJlbGF0ZWRUYXJnZXQgc2hpZnRLZXkgdGFyZ2V0
IHRpbWVTdGFtcCB2aWV3IHdoaWNoIi5zcGxpdCgiICIpLGZpeEhvb2tzOnt9LGtl
eUhvb2tzOntwcm9wczoiY2hhciBjaGFyQ29kZSBrZXkga2V5Q29kZSIuc3BsaXQo
IiAiKSxmaWx0ZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbnVsbD09ZS53aGljaCYm
KGUud2hpY2g9bnVsbCE9dC5jaGFyQ29kZT90LmNoYXJDb2RlOnQua2V5Q29kZSks
ZX19LG1vdXNlSG9va3M6e3Byb3BzOiJidXR0b24gYnV0dG9ucyBjbGllbnRYIGNs
aWVudFkgZnJvbUVsZW1lbnQgb2Zmc2V0WCBvZmZzZXRZIHBhZ2VYIHBhZ2VZIHNj
cmVlblggc2NyZWVuWSB0b0VsZW1lbnQiLnNwbGl0KCIgIiksZmlsdGVyOmZ1bmN0
aW9uKGUsbil7dmFyIHIsaSxvLHM9bi5idXR0b24sbD1uLmZyb21FbGVtZW50O3Jl
dHVybiBudWxsPT1lLnBhZ2VYJiZudWxsIT1uLmNsaWVudFgmJihpPWUudGFyZ2V0
Lm93bmVyRG9jdW1lbnR8fGEsbz1pLmRvY3VtZW50RWxlbWVudCxyPWkuYm9keSxl
LnBhZ2VYPW4uY2xpZW50WCsobyYmby5zY3JvbGxMZWZ0fHxyJiZyLnNjcm9sbExl
ZnR8fDApLShvJiZvLmNsaWVudExlZnR8fHImJnIuY2xpZW50TGVmdHx8MCksZS5w
YWdlWT1uLmNsaWVudFkrKG8mJm8uc2Nyb2xsVG9wfHxyJiZyLnNjcm9sbFRvcHx8
MCktKG8mJm8uY2xpZW50VG9wfHxyJiZyLmNsaWVudFRvcHx8MCkpLCFlLnJlbGF0
ZWRUYXJnZXQmJmwmJihlLnJlbGF0ZWRUYXJnZXQ9bD09PWUudGFyZ2V0P24udG9F
bGVtZW50OmwpLGUud2hpY2h8fHM9PT10fHwoZS53aGljaD0xJnM/MToyJnM/Mzo0
JnM/MjowKSxlfX0sc3BlY2lhbDp7bG9hZDp7bm9CdWJibGU6ITB9LGZvY3VzOnt0
cmlnZ2VyOmZ1bmN0aW9uKCl7aWYodGhpcyE9PWF0KCkmJnRoaXMuZm9jdXMpdHJ5
e3JldHVybiB0aGlzLmZvY3VzKCksITF9Y2F0Y2goZSl7fX0sZGVsZWdhdGVUeXBl
OiJmb2N1c2luIn0sYmx1cjp7dHJpZ2dlcjpmdW5jdGlvbigpe3JldHVybiB0aGlz
PT09YXQoKSYmdGhpcy5ibHVyPyh0aGlzLmJsdXIoKSwhMSk6dH0sZGVsZWdhdGVU
eXBlOiJmb2N1c291dCJ9LGNsaWNrOnt0cmlnZ2VyOmZ1bmN0aW9uKCl7cmV0dXJu
IHgubm9kZU5hbWUodGhpcywiaW5wdXQiKSYmImNoZWNrYm94Ij09PXRoaXMudHlw
ZSYmdGhpcy5jbGljaz8odGhpcy5jbGljaygpLCExKTp0fSxfZGVmYXVsdDpmdW5j
dGlvbihlKXtyZXR1cm4geC5ub2RlTmFtZShlLnRhcmdldCwiYSIpfX0sYmVmb3Jl
dW5sb2FkOntwb3N0RGlzcGF0Y2g6ZnVuY3Rpb24oZSl7ZS5yZXN1bHQhPT10JiYo
ZS5vcmlnaW5hbEV2ZW50LnJldHVyblZhbHVlPWUucmVzdWx0KX19fSxzaW11bGF0
ZTpmdW5jdGlvbihlLHQsbixyKXt2YXIgaT14LmV4dGVuZChuZXcgeC5FdmVudCxu
LHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITAsb3JpZ2luYWxFdmVudDp7fX0pO3I/eC5l
dmVudC50cmlnZ2VyKGksbnVsbCx0KTp4LmV2ZW50LmRpc3BhdGNoLmNhbGwodCxp
KSxpLmlzRGVmYXVsdFByZXZlbnRlZCgpJiZuLnByZXZlbnREZWZhdWx0KCl9fSx4
LnJlbW92ZUV2ZW50PWEucmVtb3ZlRXZlbnRMaXN0ZW5lcj9mdW5jdGlvbihlLHQs
bil7ZS5yZW1vdmVFdmVudExpc3RlbmVyJiZlLnJlbW92ZUV2ZW50TGlzdGVuZXIo
dCxuLCExKX06ZnVuY3Rpb24oZSx0LG4pe3ZhciByPSJvbiIrdDtlLmRldGFjaEV2
ZW50JiYodHlwZW9mIGVbcl09PT1pJiYoZVtyXT1udWxsKSxlLmRldGFjaEV2ZW50
KHIsbikpfSx4LkV2ZW50PWZ1bmN0aW9uKGUsbil7cmV0dXJuIHRoaXMgaW5zdGFu
Y2VvZiB4LkV2ZW50PyhlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRo
aXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0
UHJldmVudGVkfHxlLnJldHVyblZhbHVlPT09ITF8fGUuZ2V0UHJldmVudERlZmF1
bHQmJmUuZ2V0UHJldmVudERlZmF1bHQoKT9pdDpvdCk6dGhpcy50eXBlPWUsbiYm
eC5leHRlbmQodGhpcyxuKSx0aGlzLnRpbWVTdGFtcD1lJiZlLnRpbWVTdGFtcHx8
eC5ub3coKSx0aGlzW3guZXhwYW5kb109ITAsdCk6bmV3IHguRXZlbnQoZSxuKX0s
eC5FdmVudC5wcm90b3R5cGU9e2lzRGVmYXVsdFByZXZlbnRlZDpvdCxpc1Byb3Bh
Z2F0aW9uU3RvcHBlZDpvdCxpc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZDpv
dCxwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxF
dmVudDt0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1pdCxlJiYoZS5wcmV2ZW50RGVm
YXVsdD9lLnByZXZlbnREZWZhdWx0KCk6ZS5yZXR1cm5WYWx1ZT0hMSl9LHN0b3BQ
cm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0
aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPWl0LGUmJihlLnN0b3BQcm9wYWdhdGlv
biYmZS5zdG9wUHJvcGFnYXRpb24oKSxlLmNhbmNlbEJ1YmJsZT0hMCl9LHN0b3BJ
bW1lZGlhdGVQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3RoaXMuaXNJbW1lZGlhdGVQ
cm9wYWdhdGlvblN0b3BwZWQ9aXQsdGhpcy5zdG9wUHJvcGFnYXRpb24oKX19LHgu
ZWFjaCh7bW91c2VlbnRlcjoibW91c2VvdmVyIixtb3VzZWxlYXZlOiJtb3VzZW91
dCJ9LGZ1bmN0aW9uKGUsdCl7eC5ldmVudC5zcGVjaWFsW2VdPXtkZWxlZ2F0ZVR5
cGU6dCxiaW5kVHlwZTp0LGhhbmRsZTpmdW5jdGlvbihlKXt2YXIgbixyPXRoaXMs
aT1lLnJlbGF0ZWRUYXJnZXQsbz1lLmhhbmRsZU9iajtyZXR1cm4oIWl8fGkhPT1y
JiYheC5jb250YWlucyhyLGkpKSYmKGUudHlwZT1vLm9yaWdUeXBlLG49by5oYW5k
bGVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxlLnR5cGU9dCksbn19fSkseC5zdXBw
b3J0LnN1Ym1pdEJ1YmJsZXN8fCh4LmV2ZW50LnNwZWNpYWwuc3VibWl0PXtzZXR1
cDpmdW5jdGlvbigpe3JldHVybiB4Lm5vZGVOYW1lKHRoaXMsImZvcm0iKT8hMToo
eC5ldmVudC5hZGQodGhpcywiY2xpY2suX3N1Ym1pdCBrZXlwcmVzcy5fc3VibWl0
IixmdW5jdGlvbihlKXt2YXIgbj1lLnRhcmdldCxyPXgubm9kZU5hbWUobiwiaW5w
dXQiKXx8eC5ub2RlTmFtZShuLCJidXR0b24iKT9uLmZvcm06dDtyJiYheC5fZGF0
YShyLCJzdWJtaXRCdWJibGVzIikmJih4LmV2ZW50LmFkZChyLCJzdWJtaXQuX3N1
Ym1pdCIsZnVuY3Rpb24oZSl7ZS5fc3VibWl0X2J1YmJsZT0hMH0pLHguX2RhdGEo
ciwic3VibWl0QnViYmxlcyIsITApKX0pLHQpfSxwb3N0RGlzcGF0Y2g6ZnVuY3Rp
b24oZSl7ZS5fc3VibWl0X2J1YmJsZSYmKGRlbGV0ZSBlLl9zdWJtaXRfYnViYmxl
LHRoaXMucGFyZW50Tm9kZSYmIWUuaXNUcmlnZ2VyJiZ4LmV2ZW50LnNpbXVsYXRl
KCJzdWJtaXQiLHRoaXMucGFyZW50Tm9kZSxlLCEwKSl9LHRlYXJkb3duOmZ1bmN0
aW9uKCl7cmV0dXJuIHgubm9kZU5hbWUodGhpcywiZm9ybSIpPyExOih4LmV2ZW50
LnJlbW92ZSh0aGlzLCIuX3N1Ym1pdCIpLHQpfX0pLHguc3VwcG9ydC5jaGFuZ2VC
dWJibGVzfHwoeC5ldmVudC5zcGVjaWFsLmNoYW5nZT17c2V0dXA6ZnVuY3Rpb24o
KXtyZXR1cm4gWi50ZXN0KHRoaXMubm9kZU5hbWUpPygoImNoZWNrYm94Ij09PXRo
aXMudHlwZXx8InJhZGlvIj09PXRoaXMudHlwZSkmJih4LmV2ZW50LmFkZCh0aGlz
LCJwcm9wZXJ0eWNoYW5nZS5fY2hhbmdlIixmdW5jdGlvbihlKXsiY2hlY2tlZCI9
PT1lLm9yaWdpbmFsRXZlbnQucHJvcGVydHlOYW1lJiYodGhpcy5fanVzdF9jaGFu
Z2VkPSEwKX0pLHguZXZlbnQuYWRkKHRoaXMsImNsaWNrLl9jaGFuZ2UiLGZ1bmN0
aW9uKGUpe3RoaXMuX2p1c3RfY2hhbmdlZCYmIWUuaXNUcmlnZ2VyJiYodGhpcy5f
anVzdF9jaGFuZ2VkPSExKSx4LmV2ZW50LnNpbXVsYXRlKCJjaGFuZ2UiLHRoaXMs
ZSwhMCl9KSksITEpOih4LmV2ZW50LmFkZCh0aGlzLCJiZWZvcmVhY3RpdmF0ZS5f
Y2hhbmdlIixmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldDtaLnRlc3QodC5ub2Rl
TmFtZSkmJiF4Ll9kYXRhKHQsImNoYW5nZUJ1YmJsZXMiKSYmKHguZXZlbnQuYWRk
KHQsImNoYW5nZS5fY2hhbmdlIixmdW5jdGlvbihlKXshdGhpcy5wYXJlbnROb2Rl
fHxlLmlzU2ltdWxhdGVkfHxlLmlzVHJpZ2dlcnx8eC5ldmVudC5zaW11bGF0ZSgi
Y2hhbmdlIix0aGlzLnBhcmVudE5vZGUsZSwhMCl9KSx4Ll9kYXRhKHQsImNoYW5n
ZUJ1YmJsZXMiLCEwKSl9KSx0KX0saGFuZGxlOmZ1bmN0aW9uKGUpe3ZhciBuPWUu
dGFyZ2V0O3JldHVybiB0aGlzIT09bnx8ZS5pc1NpbXVsYXRlZHx8ZS5pc1RyaWdn
ZXJ8fCJyYWRpbyIhPT1uLnR5cGUmJiJjaGVja2JveCIhPT1uLnR5cGU/ZS5oYW5k
bGVPYmouaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dH0sdGVhcmRvd246
ZnVuY3Rpb24oKXtyZXR1cm4geC5ldmVudC5yZW1vdmUodGhpcywiLl9jaGFuZ2Ui
KSwhWi50ZXN0KHRoaXMubm9kZU5hbWUpfX0pLHguc3VwcG9ydC5mb2N1c2luQnVi
Ymxlc3x8eC5lYWNoKHtmb2N1czoiZm9jdXNpbiIsYmx1cjoiZm9jdXNvdXQifSxm
dW5jdGlvbihlLHQpe3ZhciBuPTAscj1mdW5jdGlvbihlKXt4LmV2ZW50LnNpbXVs
YXRlKHQsZS50YXJnZXQseC5ldmVudC5maXgoZSksITApfTt4LmV2ZW50LnNwZWNp
YWxbdF09e3NldHVwOmZ1bmN0aW9uKCl7MD09PW4rKyYmYS5hZGRFdmVudExpc3Rl
bmVyKGUsciwhMCl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7MD09PS0tbiYmYS5yZW1v
dmVFdmVudExpc3RlbmVyKGUsciwhMCl9fX0pLHguZm4uZXh0ZW5kKHtvbjpmdW5j
dGlvbihlLG4scixpLG8pe3ZhciBhLHM7aWYoIm9iamVjdCI9PXR5cGVvZiBlKXsi
c3RyaW5nIiE9dHlwZW9mIG4mJihyPXJ8fG4sbj10KTtmb3IoYSBpbiBlKXRoaXMu
b24oYSxuLHIsZVthXSxvKTtyZXR1cm4gdGhpc31pZihudWxsPT1yJiZudWxsPT1p
PyhpPW4scj1uPXQpOm51bGw9PWkmJigic3RyaW5nIj09dHlwZW9mIG4/KGk9cixy
PXQpOihpPXIscj1uLG49dCkpLGk9PT0hMSlpPW90O2Vsc2UgaWYoIWkpcmV0dXJu
IHRoaXM7cmV0dXJuIDE9PT1vJiYocz1pLGk9ZnVuY3Rpb24oZSl7cmV0dXJuIHgo
KS5vZmYoZSkscy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LGkuZ3VpZD1zLmd1aWR8
fChzLmd1aWQ9eC5ndWlkKyspKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt4LmV2ZW50
LmFkZCh0aGlzLGUsaSxyLG4pfSl9LG9uZTpmdW5jdGlvbihlLHQsbixyKXtyZXR1
cm4gdGhpcy5vbihlLHQsbixyLDEpfSxvZmY6ZnVuY3Rpb24oZSxuLHIpe3ZhciBp
LG87aWYoZSYmZS5wcmV2ZW50RGVmYXVsdCYmZS5oYW5kbGVPYmopcmV0dXJuIGk9
ZS5oYW5kbGVPYmoseChlLmRlbGVnYXRlVGFyZ2V0KS5vZmYoaS5uYW1lc3BhY2U/
aS5vcmlnVHlwZSsiLiIraS5uYW1lc3BhY2U6aS5vcmlnVHlwZSxpLnNlbGVjdG9y
LGkuaGFuZGxlciksdGhpcztpZigib2JqZWN0Ij09dHlwZW9mIGUpe2ZvcihvIGlu
IGUpdGhpcy5vZmYobyxuLGVbb10pO3JldHVybiB0aGlzfXJldHVybihuPT09ITF8
fCJmdW5jdGlvbiI9PXR5cGVvZiBuKSYmKHI9bixuPXQpLHI9PT0hMSYmKHI9b3Qp
LHRoaXMuZWFjaChmdW5jdGlvbigpe3guZXZlbnQucmVtb3ZlKHRoaXMsZSxyLG4p
fSl9LHRyaWdnZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0
aW9uKCl7eC5ldmVudC50cmlnZ2VyKGUsdCx0aGlzKX0pfSx0cmlnZ2VySGFuZGxl
cjpmdW5jdGlvbihlLG4pe3ZhciByPXRoaXNbMF07cmV0dXJuIHI/eC5ldmVudC50
cmlnZ2VyKGUsbixyLCEwKTp0fX0pO3ZhciBzdD0vXi5bXjojXFtcLixdKiQvLGx0
PS9eKD86cGFyZW50c3xwcmV2KD86VW50aWx8QWxsKSkvLHV0PXguZXhwci5tYXRj
aC5uZWVkc0NvbnRleHQsY3Q9e2NoaWxkcmVuOiEwLGNvbnRlbnRzOiEwLG5leHQ6
ITAscHJldjohMH07eC5mbi5leHRlbmQoe2ZpbmQ6ZnVuY3Rpb24oZSl7dmFyIHQs
bj1bXSxyPXRoaXMsaT1yLmxlbmd0aDtpZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0
dXJuIHRoaXMucHVzaFN0YWNrKHgoZSkuZmlsdGVyKGZ1bmN0aW9uKCl7Zm9yKHQ9
MDtpPnQ7dCsrKWlmKHguY29udGFpbnMoclt0XSx0aGlzKSlyZXR1cm4hMH0pKTtm
b3IodD0wO2k+dDt0KyspeC5maW5kKGUsclt0XSxuKTtyZXR1cm4gbj10aGlzLnB1
c2hTdGFjayhpPjE/eC51bmlxdWUobik6biksbi5zZWxlY3Rvcj10aGlzLnNlbGVj
dG9yP3RoaXMuc2VsZWN0b3IrIiAiK2U6ZSxufSxoYXM6ZnVuY3Rpb24oZSl7dmFy
IHQsbj14KGUsdGhpcykscj1uLmxlbmd0aDtyZXR1cm4gdGhpcy5maWx0ZXIoZnVu
Y3Rpb24oKXtmb3IodD0wO3I+dDt0KyspaWYoeC5jb250YWlucyh0aGlzLG5bdF0p
KXJldHVybiEwfSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3Rh
Y2soZnQodGhpcyxlfHxbXSwhMCkpfSxmaWx0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJu
IHRoaXMucHVzaFN0YWNrKGZ0KHRoaXMsZXx8W10sITEpKX0saXM6ZnVuY3Rpb24o
ZSl7cmV0dXJuISFmdCh0aGlzLCJzdHJpbmciPT10eXBlb2YgZSYmdXQudGVzdChl
KT94KGUpOmV8fFtdLCExKS5sZW5ndGh9LGNsb3Nlc3Q6ZnVuY3Rpb24oZSx0KXt2
YXIgbixyPTAsaT10aGlzLmxlbmd0aCxvPVtdLGE9dXQudGVzdChlKXx8InN0cmlu
ZyIhPXR5cGVvZiBlP3goZSx0fHx0aGlzLmNvbnRleHQpOjA7Zm9yKDtpPnI7cisr
KWZvcihuPXRoaXNbcl07biYmbiE9PXQ7bj1uLnBhcmVudE5vZGUpaWYoMTE+bi5u
b2RlVHlwZSYmKGE/YS5pbmRleChuKT4tMToxPT09bi5ub2RlVHlwZSYmeC5maW5k
Lm1hdGNoZXNTZWxlY3RvcihuLGUpKSl7bj1vLnB1c2gobik7YnJlYWt9cmV0dXJu
IHRoaXMucHVzaFN0YWNrKG8ubGVuZ3RoPjE/eC51bmlxdWUobyk6byl9LGluZGV4
OmZ1bmN0aW9uKGUpe3JldHVybiBlPyJzdHJpbmciPT10eXBlb2YgZT94LmluQXJy
YXkodGhpc1swXSx4KGUpKTp4LmluQXJyYXkoZS5qcXVlcnk/ZVswXTplLHRoaXMp
OnRoaXNbMF0mJnRoaXNbMF0ucGFyZW50Tm9kZT90aGlzLmZpcnN0KCkucHJldkFs
bCgpLmxlbmd0aDotMX0sYWRkOmZ1bmN0aW9uKGUsdCl7dmFyIG49InN0cmluZyI9
PXR5cGVvZiBlP3goZSx0KTp4Lm1ha2VBcnJheShlJiZlLm5vZGVUeXBlP1tlXTpl
KSxyPXgubWVyZ2UodGhpcy5nZXQoKSxuKTtyZXR1cm4gdGhpcy5wdXNoU3RhY2so
eC51bmlxdWUocikpfSxhZGRCYWNrOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmFk
ZChudWxsPT1lP3RoaXMucHJldk9iamVjdDp0aGlzLnByZXZPYmplY3QuZmlsdGVy
KGUpKX19KTtmdW5jdGlvbiBwdChlLHQpe2RvIGU9ZVt0XTt3aGlsZShlJiYxIT09
ZS5ub2RlVHlwZSk7cmV0dXJuIGV9eC5lYWNoKHtwYXJlbnQ6ZnVuY3Rpb24oZSl7
dmFyIHQ9ZS5wYXJlbnROb2RlO3JldHVybiB0JiYxMSE9PXQubm9kZVR5cGU/dDpu
dWxsfSxwYXJlbnRzOmZ1bmN0aW9uKGUpe3JldHVybiB4LmRpcihlLCJwYXJlbnRO
b2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIHguZGly
KGUsInBhcmVudE5vZGUiLG4pfSxuZXh0OmZ1bmN0aW9uKGUpe3JldHVybiBwdChl
LCJuZXh0U2libGluZyIpfSxwcmV2OmZ1bmN0aW9uKGUpe3JldHVybiBwdChlLCJw
cmV2aW91c1NpYmxpbmciKX0sbmV4dEFsbDpmdW5jdGlvbihlKXtyZXR1cm4geC5k
aXIoZSwibmV4dFNpYmxpbmciKX0scHJldkFsbDpmdW5jdGlvbihlKXtyZXR1cm4g
eC5kaXIoZSwicHJldmlvdXNTaWJsaW5nIil9LG5leHRVbnRpbDpmdW5jdGlvbihl
LHQsbil7cmV0dXJuIHguZGlyKGUsIm5leHRTaWJsaW5nIixuKX0scHJldlVudGls
OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4geC5kaXIoZSwicHJldmlvdXNTaWJsaW5n
IixuKX0sc2libGluZ3M6ZnVuY3Rpb24oZSl7cmV0dXJuIHguc2libGluZygoZS5w
YXJlbnROb2RlfHx7fSkuZmlyc3RDaGlsZCxlKX0sY2hpbGRyZW46ZnVuY3Rpb24o
ZSl7cmV0dXJuIHguc2libGluZyhlLmZpcnN0Q2hpbGQpfSxjb250ZW50czpmdW5j
dGlvbihlKXtyZXR1cm4geC5ub2RlTmFtZShlLCJpZnJhbWUiKT9lLmNvbnRlbnRE
b2N1bWVudHx8ZS5jb250ZW50V2luZG93LmRvY3VtZW50OngubWVyZ2UoW10sZS5j
aGlsZE5vZGVzKX19LGZ1bmN0aW9uKGUsdCl7eC5mbltlXT1mdW5jdGlvbihuLHIp
e3ZhciBpPXgubWFwKHRoaXMsdCxuKTtyZXR1cm4iVW50aWwiIT09ZS5zbGljZSgt
NSkmJihyPW4pLHImJiJzdHJpbmciPT10eXBlb2YgciYmKGk9eC5maWx0ZXIocixp
KSksdGhpcy5sZW5ndGg+MSYmKGN0W2VdfHwoaT14LnVuaXF1ZShpKSksbHQudGVz
dChlKSYmKGk9aS5yZXZlcnNlKCkpKSx0aGlzLnB1c2hTdGFjayhpKX19KSx4LmV4
dGVuZCh7ZmlsdGVyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10WzBdO3JldHVybiBu
JiYoZT0iOm5vdCgiK2UrIikiKSwxPT09dC5sZW5ndGgmJjE9PT1yLm5vZGVUeXBl
P3guZmluZC5tYXRjaGVzU2VsZWN0b3IocixlKT9bcl06W106eC5maW5kLm1hdGNo
ZXMoZSx4LmdyZXAodCxmdW5jdGlvbihlKXtyZXR1cm4gMT09PWUubm9kZVR5cGV9
KSl9LGRpcjpmdW5jdGlvbihlLG4scil7dmFyIGk9W10sbz1lW25dO3doaWxlKG8m
JjkhPT1vLm5vZGVUeXBlJiYocj09PXR8fDEhPT1vLm5vZGVUeXBlfHwheChvKS5p
cyhyKSkpMT09PW8ubm9kZVR5cGUmJmkucHVzaChvKSxvPW9bbl07cmV0dXJuIGl9
LHNpYmxpbmc6ZnVuY3Rpb24oZSx0KXt2YXIgbj1bXTtmb3IoO2U7ZT1lLm5leHRT
aWJsaW5nKTE9PT1lLm5vZGVUeXBlJiZlIT09dCYmbi5wdXNoKGUpO3JldHVybiBu
fX0pO2Z1bmN0aW9uIGZ0KGUsdCxuKXtpZih4LmlzRnVuY3Rpb24odCkpcmV0dXJu
IHguZ3JlcChlLGZ1bmN0aW9uKGUscil7cmV0dXJuISF0LmNhbGwoZSxyLGUpIT09
bn0pO2lmKHQubm9kZVR5cGUpcmV0dXJuIHguZ3JlcChlLGZ1bmN0aW9uKGUpe3Jl
dHVybiBlPT09dCE9PW59KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHN0LnRl
c3QodCkpcmV0dXJuIHguZmlsdGVyKHQsZSxuKTt0PXguZmlsdGVyKHQsZSl9cmV0
dXJuIHguZ3JlcChlLGZ1bmN0aW9uKGUpe3JldHVybiB4LmluQXJyYXkoZSx0KT49
MCE9PW59KX1mdW5jdGlvbiBkdChlKXt2YXIgdD1odC5zcGxpdCgifCIpLG49ZS5j
cmVhdGVEb2N1bWVudEZyYWdtZW50KCk7aWYobi5jcmVhdGVFbGVtZW50KXdoaWxl
KHQubGVuZ3RoKW4uY3JlYXRlRWxlbWVudCh0LnBvcCgpKTtyZXR1cm4gbn12YXIg
aHQ9ImFiYnJ8YXJ0aWNsZXxhc2lkZXxhdWRpb3xiZGl8Y2FudmFzfGRhdGF8ZGF0
YWxpc3R8ZGV0YWlsc3xmaWdjYXB0aW9ufGZpZ3VyZXxmb290ZXJ8aGVhZGVyfGhn
cm91cHxtYXJrfG1ldGVyfG5hdnxvdXRwdXR8cHJvZ3Jlc3N8c2VjdGlvbnxzdW1t
YXJ5fHRpbWV8dmlkZW8iLGd0PS8galF1ZXJ5XGQrPSIoPzpudWxsfFxkKykiL2cs
bXQ9UmVnRXhwKCI8KD86IitodCsiKVtcXHMvPl0iLCJpIikseXQ9L15ccysvLHZ0
PS88KD8hYXJlYXxicnxjb2x8ZW1iZWR8aHJ8aW1nfGlucHV0fGxpbmt8bWV0YXxw
YXJhbSkoKFtcdzpdKylbXj5dKilcLz4vZ2ksYnQ9LzwoW1x3Ol0rKS8seHQ9Lzx0
Ym9keS9pLHd0PS88fCYjP1x3KzsvLFR0PS88KD86c2NyaXB0fHN0eWxlfGxpbmsp
L2ksQ3Q9L14oPzpjaGVja2JveHxyYWRpbykkL2ksTnQ9L2NoZWNrZWRccyooPzpb
Xj1dfD1ccyouY2hlY2tlZC4pL2ksa3Q9L14kfFwvKD86amF2YXxlY21hKXNjcmlw
dC9pLEV0PS9edHJ1ZVwvKC4qKS8sU3Q9L15ccyo8ISg/OlxbQ0RBVEFcW3wtLSl8
KD86XF1cXXwtLSk+XHMqJC9nLEF0PXtvcHRpb246WzEsIjxzZWxlY3QgbXVsdGlw
bGU9J211bHRpcGxlJz4iLCI8L3NlbGVjdD4iXSxsZWdlbmQ6WzEsIjxmaWVsZHNl
dD4iLCI8L2ZpZWxkc2V0PiJdLGFyZWE6WzEsIjxtYXA+IiwiPC9tYXA+Il0scGFy
YW06WzEsIjxvYmplY3Q+IiwiPC9vYmplY3Q+Il0sdGhlYWQ6WzEsIjx0YWJsZT4i
LCI8L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90
YWJsZT4iXSxjb2w6WzIsIjx0YWJsZT48dGJvZHk+PC90Ym9keT48Y29sZ3JvdXA+
IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRkOlszLCI8dGFibGU+PHRib2R5Pjx0
cj4iLCI8L3RyPjwvdGJvZHk+PC90YWJsZT4iXSxfZGVmYXVsdDp4LnN1cHBvcnQu
aHRtbFNlcmlhbGl6ZT9bMCwiIiwiIl06WzEsIlg8ZGl2PiIsIjwvZGl2PiJdfSxq
dD1kdChhKSxEdD1qdC5hcHBlbmRDaGlsZChhLmNyZWF0ZUVsZW1lbnQoImRpdiIp
KTtBdC5vcHRncm91cD1BdC5vcHRpb24sQXQudGJvZHk9QXQudGZvb3Q9QXQuY29s
Z3JvdXA9QXQuY2FwdGlvbj1BdC50aGVhZCxBdC50aD1BdC50ZCx4LmZuLmV4dGVu
ZCh7dGV4dDpmdW5jdGlvbihlKXtyZXR1cm4geC5hY2Nlc3ModGhpcyxmdW5jdGlv
bihlKXtyZXR1cm4gZT09PXQ/eC50ZXh0KHRoaXMpOnRoaXMuZW1wdHkoKS5hcHBl
bmQoKHRoaXNbMF0mJnRoaXNbMF0ub3duZXJEb2N1bWVudHx8YSkuY3JlYXRlVGV4
dE5vZGUoZSkpfSxudWxsLGUsYXJndW1lbnRzLmxlbmd0aCl9LGFwcGVuZDpmdW5j
dGlvbigpe3JldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cyxmdW5jdGlvbihl
KXtpZigxPT09dGhpcy5ub2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09
dGhpcy5ub2RlVHlwZSl7dmFyIHQ9THQodGhpcyxlKTt0LmFwcGVuZENoaWxkKGUp
fX0pfSxwcmVwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJn
dW1lbnRzLGZ1bmN0aW9uKGUpe2lmKDE9PT10aGlzLm5vZGVUeXBlfHwxMT09PXRo
aXMubm9kZVR5cGV8fDk9PT10aGlzLm5vZGVUeXBlKXt2YXIgdD1MdCh0aGlzLGUp
O3QuaW5zZXJ0QmVmb3JlKGUsdC5maXJzdENoaWxkKX19KX0sYmVmb3JlOmZ1bmN0
aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLGZ1bmN0aW9uKGUp
e3RoaXMucGFyZW50Tm9kZSYmdGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShl
LHRoaXMpfSl9LGFmdGVyOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAo
YXJndW1lbnRzLGZ1bmN0aW9uKGUpe3RoaXMucGFyZW50Tm9kZSYmdGhpcy5wYXJl
bnROb2RlLmluc2VydEJlZm9yZShlLHRoaXMubmV4dFNpYmxpbmcpfSl9LHJlbW92
ZTpmdW5jdGlvbihlLHQpe3ZhciBuLHI9ZT94LmZpbHRlcihlLHRoaXMpOnRoaXMs
aT0wO2Zvcig7bnVsbCE9KG49cltpXSk7aSsrKXR8fDEhPT1uLm5vZGVUeXBlfHx4
LmNsZWFuRGF0YShGdChuKSksbi5wYXJlbnROb2RlJiYodCYmeC5jb250YWlucyhu
Lm93bmVyRG9jdW1lbnQsbikmJl90KEZ0KG4sInNjcmlwdCIpKSxuLnBhcmVudE5v
ZGUucmVtb3ZlQ2hpbGQobikpO3JldHVybiB0aGlzfSxlbXB0eTpmdW5jdGlvbigp
e3ZhciBlLHQ9MDtmb3IoO251bGwhPShlPXRoaXNbdF0pO3QrKyl7MT09PWUubm9k
ZVR5cGUmJnguY2xlYW5EYXRhKEZ0KGUsITEpKTt3aGlsZShlLmZpcnN0Q2hpbGQp
ZS5yZW1vdmVDaGlsZChlLmZpcnN0Q2hpbGQpO2Uub3B0aW9ucyYmeC5ub2RlTmFt
ZShlLCJzZWxlY3QiKSYmKGUub3B0aW9ucy5sZW5ndGg9MCl9cmV0dXJuIHRoaXN9
LGNsb25lOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9bnVsbD09ZT8hMTplLHQ9bnVs
bD09dD9lOnQsdGhpcy5tYXAoZnVuY3Rpb24oKXtyZXR1cm4geC5jbG9uZSh0aGlz
LGUsdCl9KX0saHRtbDpmdW5jdGlvbihlKXtyZXR1cm4geC5hY2Nlc3ModGhpcyxm
dW5jdGlvbihlKXt2YXIgbj10aGlzWzBdfHx7fSxyPTAsaT10aGlzLmxlbmd0aDtp
ZihlPT09dClyZXR1cm4gMT09PW4ubm9kZVR5cGU/bi5pbm5lckhUTUwucmVwbGFj
ZShndCwiIik6dDtpZighKCJzdHJpbmciIT10eXBlb2YgZXx8VHQudGVzdChlKXx8
IXguc3VwcG9ydC5odG1sU2VyaWFsaXplJiZtdC50ZXN0KGUpfHwheC5zdXBwb3J0
LmxlYWRpbmdXaGl0ZXNwYWNlJiZ5dC50ZXN0KGUpfHxBdFsoYnQuZXhlYyhlKXx8
WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pKXtlPWUucmVwbGFjZSh2dCwiPCQx
PjwvJDI+Iik7dHJ5e2Zvcig7aT5yO3IrKyluPXRoaXNbcl18fHt9LDE9PT1uLm5v
ZGVUeXBlJiYoeC5jbGVhbkRhdGEoRnQobiwhMSkpLG4uaW5uZXJIVE1MPWUpO249
MH1jYXRjaChvKXt9fW4mJnRoaXMuZW1wdHkoKS5hcHBlbmQoZSl9LG51bGwsZSxh
cmd1bWVudHMubGVuZ3RoKX0scmVwbGFjZVdpdGg6ZnVuY3Rpb24oKXt2YXIgZT14
Lm1hcCh0aGlzLGZ1bmN0aW9uKGUpe3JldHVybltlLm5leHRTaWJsaW5nLGUucGFy
ZW50Tm9kZV19KSx0PTA7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLGZ1
bmN0aW9uKG4pe3ZhciByPWVbdCsrXSxpPWVbdCsrXTtpJiYociYmci5wYXJlbnRO
b2RlIT09aSYmKHI9dGhpcy5uZXh0U2libGluZykseCh0aGlzKS5yZW1vdmUoKSxp
Lmluc2VydEJlZm9yZShuLHIpKX0sITApLHQ/dGhpczp0aGlzLnJlbW92ZSgpfSxk
ZXRhY2g6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucmVtb3ZlKGUsITApfSxkb21N
YW5pcDpmdW5jdGlvbihlLHQsbil7ZT1kLmFwcGx5KFtdLGUpO3ZhciByLGksbyxh
LHMsbCx1PTAsYz10aGlzLmxlbmd0aCxwPXRoaXMsZj1jLTEsaD1lWzBdLGc9eC5p
c0Z1bmN0aW9uKGgpO2lmKGd8fCEoMT49Y3x8InN0cmluZyIhPXR5cGVvZiBofHx4
LnN1cHBvcnQuY2hlY2tDbG9uZSkmJk50LnRlc3QoaCkpcmV0dXJuIHRoaXMuZWFj
aChmdW5jdGlvbihyKXt2YXIgaT1wLmVxKHIpO2cmJihlWzBdPWguY2FsbCh0aGlz
LHIsaS5odG1sKCkpKSxpLmRvbU1hbmlwKGUsdCxuKX0pO2lmKGMmJihsPXguYnVp
bGRGcmFnbWVudChlLHRoaXNbMF0ub3duZXJEb2N1bWVudCwhMSwhbiYmdGhpcyks
cj1sLmZpcnN0Q2hpbGQsMT09PWwuY2hpbGROb2Rlcy5sZW5ndGgmJihsPXIpLHIp
KXtmb3IoYT14Lm1hcChGdChsLCJzY3JpcHQiKSxIdCksbz1hLmxlbmd0aDtjPnU7
dSsrKWk9bCx1IT09ZiYmKGk9eC5jbG9uZShpLCEwLCEwKSxvJiZ4Lm1lcmdlKGEs
RnQoaSwic2NyaXB0IikpKSx0LmNhbGwodGhpc1t1XSxpLHUpO2lmKG8pZm9yKHM9
YVthLmxlbmd0aC0xXS5vd25lckRvY3VtZW50LHgubWFwKGEscXQpLHU9MDtvPnU7
dSsrKWk9YVt1XSxrdC50ZXN0KGkudHlwZXx8IiIpJiYheC5fZGF0YShpLCJnbG9i
YWxFdmFsIikmJnguY29udGFpbnMocyxpKSYmKGkuc3JjP3guX2V2YWxVcmwoaS5z
cmMpOnguZ2xvYmFsRXZhbCgoaS50ZXh0fHxpLnRleHRDb250ZW50fHxpLmlubmVy
SFRNTHx8IiIpLnJlcGxhY2UoU3QsIiIpKSk7bD1yPW51bGx9cmV0dXJuIHRoaXN9
fSk7ZnVuY3Rpb24gTHQoZSx0KXtyZXR1cm4geC5ub2RlTmFtZShlLCJ0YWJsZSIp
JiZ4Lm5vZGVOYW1lKDE9PT10Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIp
P2UuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInRib2R5IilbMF18fGUuYXBwZW5kQ2hp
bGQoZS5vd25lckRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRib2R5IikpOmV9ZnVu
Y3Rpb24gSHQoZSl7cmV0dXJuIGUudHlwZT0obnVsbCE9PXguZmluZC5hdHRyKGUs
InR5cGUiKSkrIi8iK2UudHlwZSxlfWZ1bmN0aW9uIHF0KGUpe3ZhciB0PUV0LmV4
ZWMoZS50eXBlKTtyZXR1cm4gdD9lLnR5cGU9dFsxXTplLnJlbW92ZUF0dHJpYnV0
ZSgidHlwZSIpLGV9ZnVuY3Rpb24gX3QoZSx0KXt2YXIgbixyPTA7Zm9yKDtudWxs
IT0obj1lW3JdKTtyKyspeC5fZGF0YShuLCJnbG9iYWxFdmFsIiwhdHx8eC5fZGF0
YSh0W3JdLCJnbG9iYWxFdmFsIikpfWZ1bmN0aW9uIE10KGUsdCl7aWYoMT09PXQu
bm9kZVR5cGUmJnguaGFzRGF0YShlKSl7dmFyIG4scixpLG89eC5fZGF0YShlKSxh
PXguX2RhdGEodCxvKSxzPW8uZXZlbnRzO2lmKHMpe2RlbGV0ZSBhLmhhbmRsZSxh
LmV2ZW50cz17fTtmb3IobiBpbiBzKWZvcihyPTAsaT1zW25dLmxlbmd0aDtpPnI7
cisrKXguZXZlbnQuYWRkKHQsbixzW25dW3JdKX1hLmRhdGEmJihhLmRhdGE9eC5l
eHRlbmQoe30sYS5kYXRhKSl9fWZ1bmN0aW9uIE90KGUsdCl7dmFyIG4scixpO2lm
KDE9PT10Lm5vZGVUeXBlKXtpZihuPXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSwh
eC5zdXBwb3J0Lm5vQ2xvbmVFdmVudCYmdFt4LmV4cGFuZG9dKXtpPXguX2RhdGEo
dCk7Zm9yKHIgaW4gaS5ldmVudHMpeC5yZW1vdmVFdmVudCh0LHIsaS5oYW5kbGUp
O3QucmVtb3ZlQXR0cmlidXRlKHguZXhwYW5kbyl9InNjcmlwdCI9PT1uJiZ0LnRl
eHQhPT1lLnRleHQ/KEh0KHQpLnRleHQ9ZS50ZXh0LHF0KHQpKToib2JqZWN0Ij09
PW4/KHQucGFyZW50Tm9kZSYmKHQub3V0ZXJIVE1MPWUub3V0ZXJIVE1MKSx4LnN1
cHBvcnQuaHRtbDVDbG9uZSYmZS5pbm5lckhUTUwmJiF4LnRyaW0odC5pbm5lckhU
TUwpJiYodC5pbm5lckhUTUw9ZS5pbm5lckhUTUwpKToiaW5wdXQiPT09biYmQ3Qu
dGVzdChlLnR5cGUpPyh0LmRlZmF1bHRDaGVja2VkPXQuY2hlY2tlZD1lLmNoZWNr
ZWQsdC52YWx1ZSE9PWUudmFsdWUmJih0LnZhbHVlPWUudmFsdWUpKToib3B0aW9u
Ij09PW4/dC5kZWZhdWx0U2VsZWN0ZWQ9dC5zZWxlY3RlZD1lLmRlZmF1bHRTZWxl
Y3RlZDooImlucHV0Ij09PW58fCJ0ZXh0YXJlYSI9PT1uKSYmKHQuZGVmYXVsdFZh
bHVlPWUuZGVmYXVsdFZhbHVlKX19eC5lYWNoKHthcHBlbmRUbzoiYXBwZW5kIixw
cmVwZW5kVG86InByZXBlbmQiLGluc2VydEJlZm9yZToiYmVmb3JlIixpbnNlcnRB
ZnRlcjoiYWZ0ZXIiLHJlcGxhY2VBbGw6InJlcGxhY2VXaXRoIn0sZnVuY3Rpb24o
ZSx0KXt4LmZuW2VdPWZ1bmN0aW9uKGUpe3ZhciBuLHI9MCxpPVtdLG89eChlKSxh
PW8ubGVuZ3RoLTE7Zm9yKDthPj1yO3IrKyluPXI9PT1hP3RoaXM6dGhpcy5jbG9u
ZSghMCkseChvW3JdKVt0XShuKSxoLmFwcGx5KGksbi5nZXQoKSk7cmV0dXJuIHRo
aXMucHVzaFN0YWNrKGkpfX0pO2Z1bmN0aW9uIEZ0KGUsbil7dmFyIHIsbyxhPTAs
cz10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZSE9PWk/ZS5nZXRFbGVtZW50
c0J5VGFnTmFtZShufHwiKiIpOnR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGwhPT1p
P2UucXVlcnlTZWxlY3RvckFsbChufHwiKiIpOnQ7aWYoIXMpZm9yKHM9W10scj1l
LmNoaWxkTm9kZXN8fGU7bnVsbCE9KG89clthXSk7YSsrKSFufHx4Lm5vZGVOYW1l
KG8sbik/cy5wdXNoKG8pOngubWVyZ2UocyxGdChvLG4pKTtyZXR1cm4gbj09PXR8
fG4mJngubm9kZU5hbWUoZSxuKT94Lm1lcmdlKFtlXSxzKTpzfWZ1bmN0aW9uIEJ0
KGUpe0N0LnRlc3QoZS50eXBlKSYmKGUuZGVmYXVsdENoZWNrZWQ9ZS5jaGVja2Vk
KX14LmV4dGVuZCh7Y2xvbmU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMs
bD14LmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKTtpZih4LnN1cHBvcnQuaHRt
bDVDbG9uZXx8eC5pc1hNTERvYyhlKXx8IW10LnRlc3QoIjwiK2Uubm9kZU5hbWUr
Ij4iKT9vPWUuY2xvbmVOb2RlKCEwKTooRHQuaW5uZXJIVE1MPWUub3V0ZXJIVE1M
LER0LnJlbW92ZUNoaWxkKG89RHQuZmlyc3RDaGlsZCkpLCEoeC5zdXBwb3J0Lm5v
Q2xvbmVFdmVudCYmeC5zdXBwb3J0Lm5vQ2xvbmVDaGVja2VkfHwxIT09ZS5ub2Rl
VHlwZSYmMTEhPT1lLm5vZGVUeXBlfHx4LmlzWE1MRG9jKGUpKSlmb3Iocj1GdChv
KSxzPUZ0KGUpLGE9MDtudWxsIT0oaT1zW2FdKTsrK2EpclthXSYmT3QoaSxyW2Fd
KTtpZih0KWlmKG4pZm9yKHM9c3x8RnQoZSkscj1yfHxGdChvKSxhPTA7bnVsbCE9
KGk9c1thXSk7YSsrKU10KGksclthXSk7ZWxzZSBNdChlLG8pO3JldHVybiByPUZ0
KG8sInNjcmlwdCIpLHIubGVuZ3RoPjAmJl90KHIsIWwmJkZ0KGUsInNjcmlwdCIp
KSxyPXM9aT1udWxsLG99LGJ1aWxkRnJhZ21lbnQ6ZnVuY3Rpb24oZSx0LG4scil7
dmFyIGksbyxhLHMsbCx1LGMscD1lLmxlbmd0aCxmPWR0KHQpLGQ9W10saD0wO2Zv
cig7cD5oO2grKylpZihvPWVbaF0sb3x8MD09PW8paWYoIm9iamVjdCI9PT14LnR5
cGUobykpeC5tZXJnZShkLG8ubm9kZVR5cGU/W29dOm8pO2Vsc2UgaWYod3QudGVz
dChvKSl7cz1zfHxmLmFwcGVuZENoaWxkKHQuY3JlYXRlRWxlbWVudCgiZGl2Iikp
LGw9KGJ0LmV4ZWMobyl8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCksYz1BdFts
XXx8QXQuX2RlZmF1bHQscy5pbm5lckhUTUw9Y1sxXStvLnJlcGxhY2UodnQsIjwk
MT48LyQyPiIpK2NbMl0saT1jWzBdO3doaWxlKGktLSlzPXMubGFzdENoaWxkO2lm
KCF4LnN1cHBvcnQubGVhZGluZ1doaXRlc3BhY2UmJnl0LnRlc3QobykmJmQucHVz
aCh0LmNyZWF0ZVRleHROb2RlKHl0LmV4ZWMobylbMF0pKSwheC5zdXBwb3J0LnRi
b2R5KXtvPSJ0YWJsZSIhPT1sfHx4dC50ZXN0KG8pPyI8dGFibGU+IiE9PWNbMV18
fHh0LnRlc3Qobyk/MDpzOnMuZmlyc3RDaGlsZCxpPW8mJm8uY2hpbGROb2Rlcy5s
ZW5ndGg7d2hpbGUoaS0tKXgubm9kZU5hbWUodT1vLmNoaWxkTm9kZXNbaV0sInRi
b2R5IikmJiF1LmNoaWxkTm9kZXMubGVuZ3RoJiZvLnJlbW92ZUNoaWxkKHUpfXgu
bWVyZ2UoZCxzLmNoaWxkTm9kZXMpLHMudGV4dENvbnRlbnQ9IiI7d2hpbGUocy5m
aXJzdENoaWxkKXMucmVtb3ZlQ2hpbGQocy5maXJzdENoaWxkKTtzPWYubGFzdENo
aWxkfWVsc2UgZC5wdXNoKHQuY3JlYXRlVGV4dE5vZGUobykpO3MmJmYucmVtb3Zl
Q2hpbGQocykseC5zdXBwb3J0LmFwcGVuZENoZWNrZWR8fHguZ3JlcChGdChkLCJp
bnB1dCIpLEJ0KSxoPTA7d2hpbGUobz1kW2grK10paWYoKCFyfHwtMT09PXguaW5B
cnJheShvLHIpKSYmKGE9eC5jb250YWlucyhvLm93bmVyRG9jdW1lbnQsbykscz1G
dChmLmFwcGVuZENoaWxkKG8pLCJzY3JpcHQiKSxhJiZfdChzKSxuKSl7aT0wO3do
aWxlKG89c1tpKytdKWt0LnRlc3Qoby50eXBlfHwiIikmJm4ucHVzaChvKX1yZXR1
cm4gcz1udWxsLGZ9LGNsZWFuRGF0YTpmdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxh
LHM9MCxsPXguZXhwYW5kbyx1PXguY2FjaGUsYz14LnN1cHBvcnQuZGVsZXRlRXhw
YW5kbyxmPXguZXZlbnQuc3BlY2lhbDtmb3IoO251bGwhPShuPWVbc10pO3MrKylp
ZigodHx8eC5hY2NlcHREYXRhKG4pKSYmKG89bltsXSxhPW8mJnVbb10pKXtpZihh
LmV2ZW50cylmb3IociBpbiBhLmV2ZW50cylmW3JdP3guZXZlbnQucmVtb3ZlKG4s
cik6eC5yZW1vdmVFdmVudChuLHIsYS5oYW5kbGUpOwp1W29dJiYoZGVsZXRlIHVb
b10sYz9kZWxldGUgbltsXTp0eXBlb2Ygbi5yZW1vdmVBdHRyaWJ1dGUhPT1pP24u
cmVtb3ZlQXR0cmlidXRlKGwpOm5bbF09bnVsbCxwLnB1c2gobykpfX0sX2V2YWxV
cmw6ZnVuY3Rpb24oZSl7cmV0dXJuIHguYWpheCh7dXJsOmUsdHlwZToiR0VUIixk
YXRhVHlwZToic2NyaXB0Iixhc3luYzohMSxnbG9iYWw6ITEsInRocm93cyI6ITB9
KX19KSx4LmZuLmV4dGVuZCh7d3JhcEFsbDpmdW5jdGlvbihlKXtpZih4LmlzRnVu
Y3Rpb24oZSkpcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbih0KXt4KHRoaXMpLndy
YXBBbGwoZS5jYWxsKHRoaXMsdCkpfSk7aWYodGhpc1swXSl7dmFyIHQ9eChlLHRo
aXNbMF0ub3duZXJEb2N1bWVudCkuZXEoMCkuY2xvbmUoITApO3RoaXNbMF0ucGFy
ZW50Tm9kZSYmdC5pbnNlcnRCZWZvcmUodGhpc1swXSksdC5tYXAoZnVuY3Rpb24o
KXt2YXIgZT10aGlzO3doaWxlKGUuZmlyc3RDaGlsZCYmMT09PWUuZmlyc3RDaGls
ZC5ub2RlVHlwZSllPWUuZmlyc3RDaGlsZDtyZXR1cm4gZX0pLmFwcGVuZCh0aGlz
KX1yZXR1cm4gdGhpc30sd3JhcElubmVyOmZ1bmN0aW9uKGUpe3JldHVybiB4Lmlz
RnVuY3Rpb24oZSk/dGhpcy5lYWNoKGZ1bmN0aW9uKHQpe3godGhpcykud3JhcElu
bmVyKGUuY2FsbCh0aGlzLHQpKX0pOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0
PXgodGhpcyksbj10LmNvbnRlbnRzKCk7bi5sZW5ndGg/bi53cmFwQWxsKGUpOnQu
YXBwZW5kKGUpfSl9LHdyYXA6ZnVuY3Rpb24oZSl7dmFyIHQ9eC5pc0Z1bmN0aW9u
KGUpO3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24obil7eCh0aGlzKS53cmFwQWxs
KHQ/ZS5jYWxsKHRoaXMsbik6ZSl9KX0sdW53cmFwOmZ1bmN0aW9uKCl7cmV0dXJu
IHRoaXMucGFyZW50KCkuZWFjaChmdW5jdGlvbigpe3gubm9kZU5hbWUodGhpcywi
Ym9keSIpfHx4KHRoaXMpLnJlcGxhY2VXaXRoKHRoaXMuY2hpbGROb2Rlcyl9KS5l
bmQoKX19KTt2YXIgUHQsUnQsV3QsJHQ9L2FscGhhXChbXildKlwpL2ksSXQ9L29w
YWNpdHlccyo9XHMqKFteKV0qKS8senQ9L14odG9wfHJpZ2h0fGJvdHRvbXxsZWZ0
KSQvLFh0PS9eKG5vbmV8dGFibGUoPyEtY1tlYV0pLispLyxVdD0vXm1hcmdpbi8s
VnQ9UmVnRXhwKCJeKCIrdysiKSguKikkIiwiaSIpLFl0PVJlZ0V4cCgiXigiK3cr
IikoPyFweClbYS16JV0rJCIsImkiKSxKdD1SZWdFeHAoIl4oWystXSk9KCIrdysi
KSIsImkiKSxHdD17Qk9EWToiYmxvY2sifSxRdD17cG9zaXRpb246ImFic29sdXRl
Iix2aXNpYmlsaXR5OiJoaWRkZW4iLGRpc3BsYXk6ImJsb2NrIn0sS3Q9e2xldHRl
clNwYWNpbmc6MCxmb250V2VpZ2h0OjQwMH0sWnQ9WyJUb3AiLCJSaWdodCIsIkJv
dHRvbSIsIkxlZnQiXSxlbj1bIldlYmtpdCIsIk8iLCJNb3oiLCJtcyJdO2Z1bmN0
aW9uIHRuKGUsdCl7aWYodCBpbiBlKXJldHVybiB0O3ZhciBuPXQuY2hhckF0KDAp
LnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKSxyPXQsaT1lbi5sZW5ndGg7d2hpbGUo
aS0tKWlmKHQ9ZW5baV0rbix0IGluIGUpcmV0dXJuIHQ7cmV0dXJuIHJ9ZnVuY3Rp
b24gbm4oZSx0KXtyZXR1cm4gZT10fHxlLCJub25lIj09PXguY3NzKGUsImRpc3Bs
YXkiKXx8IXguY29udGFpbnMoZS5vd25lckRvY3VtZW50LGUpfWZ1bmN0aW9uIHJu
KGUsdCl7dmFyIG4scixpLG89W10sYT0wLHM9ZS5sZW5ndGg7Zm9yKDtzPmE7YSsr
KXI9ZVthXSxyLnN0eWxlJiYob1thXT14Ll9kYXRhKHIsIm9sZGRpc3BsYXkiKSxu
PXIuc3R5bGUuZGlzcGxheSx0PyhvW2FdfHwibm9uZSIhPT1ufHwoci5zdHlsZS5k
aXNwbGF5PSIiKSwiIj09PXIuc3R5bGUuZGlzcGxheSYmbm4ocikmJihvW2FdPXgu
X2RhdGEociwib2xkZGlzcGxheSIsbG4oci5ub2RlTmFtZSkpKSk6b1thXXx8KGk9
bm4ociksKG4mJiJub25lIiE9PW58fCFpKSYmeC5fZGF0YShyLCJvbGRkaXNwbGF5
IixpP246eC5jc3MociwiZGlzcGxheSIpKSkpO2ZvcihhPTA7cz5hO2ErKylyPWVb
YV0sci5zdHlsZSYmKHQmJiJub25lIiE9PXIuc3R5bGUuZGlzcGxheSYmIiIhPT1y
LnN0eWxlLmRpc3BsYXl8fChyLnN0eWxlLmRpc3BsYXk9dD9vW2FdfHwiIjoibm9u
ZSIpKTtyZXR1cm4gZX14LmZuLmV4dGVuZCh7Y3NzOmZ1bmN0aW9uKGUsbil7cmV0
dXJuIHguYWNjZXNzKHRoaXMsZnVuY3Rpb24oZSxuLHIpe3ZhciBpLG8sYT17fSxz
PTA7aWYoeC5pc0FycmF5KG4pKXtmb3Iobz1SdChlKSxpPW4ubGVuZ3RoO2k+cztz
KyspYVtuW3NdXT14LmNzcyhlLG5bc10sITEsbyk7cmV0dXJuIGF9cmV0dXJuIHIh
PT10P3guc3R5bGUoZSxuLHIpOnguY3NzKGUsbil9LGUsbixhcmd1bWVudHMubGVu
Z3RoPjEpfSxzaG93OmZ1bmN0aW9uKCl7cmV0dXJuIHJuKHRoaXMsITApfSxoaWRl
OmZ1bmN0aW9uKCl7cmV0dXJuIHJuKHRoaXMpfSx0b2dnbGU6ZnVuY3Rpb24oZSl7
cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgZT9lP3RoaXMuc2hvdygpOnRoaXMuaGlk
ZSgpOnRoaXMuZWFjaChmdW5jdGlvbigpe25uKHRoaXMpP3godGhpcykuc2hvdygp
OngodGhpcykuaGlkZSgpfSl9fSkseC5leHRlbmQoe2Nzc0hvb2tzOntvcGFjaXR5
OntnZXQ6ZnVuY3Rpb24oZSx0KXtpZih0KXt2YXIgbj1XdChlLCJvcGFjaXR5Iik7
cmV0dXJuIiI9PT1uPyIxIjpufX19fSxjc3NOdW1iZXI6e2NvbHVtbkNvdW50OiEw
LGZpbGxPcGFjaXR5OiEwLGZvbnRXZWlnaHQ6ITAsbGluZUhlaWdodDohMCxvcGFj
aXR5OiEwLG9yZGVyOiEwLG9ycGhhbnM6ITAsd2lkb3dzOiEwLHpJbmRleDohMCx6
b29tOiEwfSxjc3NQcm9wczp7ImZsb2F0Ijp4LnN1cHBvcnQuY3NzRmxvYXQ/ImNz
c0Zsb2F0Ijoic3R5bGVGbG9hdCJ9LHN0eWxlOmZ1bmN0aW9uKGUsbixyLGkpe2lm
KGUmJjMhPT1lLm5vZGVUeXBlJiY4IT09ZS5ub2RlVHlwZSYmZS5zdHlsZSl7dmFy
IG8sYSxzLGw9eC5jYW1lbENhc2UobiksdT1lLnN0eWxlO2lmKG49eC5jc3NQcm9w
c1tsXXx8KHguY3NzUHJvcHNbbF09dG4odSxsKSkscz14LmNzc0hvb2tzW25dfHx4
LmNzc0hvb2tzW2xdLHI9PT10KXJldHVybiBzJiYiZ2V0ImluIHMmJihvPXMuZ2V0
KGUsITEsaSkpIT09dD9vOnVbbl07aWYoYT10eXBlb2Ygciwic3RyaW5nIj09PWEm
JihvPUp0LmV4ZWMocikpJiYocj0ob1sxXSsxKSpvWzJdK3BhcnNlRmxvYXQoeC5j
c3MoZSxuKSksYT0ibnVtYmVyIiksIShudWxsPT1yfHwibnVtYmVyIj09PWEmJmlz
TmFOKHIpfHwoIm51bWJlciIhPT1hfHx4LmNzc051bWJlcltsXXx8KHIrPSJweCIp
LHguc3VwcG9ydC5jbGVhckNsb25lU3R5bGV8fCIiIT09cnx8MCE9PW4uaW5kZXhP
ZigiYmFja2dyb3VuZCIpfHwodVtuXT0iaW5oZXJpdCIpLHMmJiJzZXQiaW4gcyYm
KHI9cy5zZXQoZSxyLGkpKT09PXQpKSl0cnl7dVtuXT1yfWNhdGNoKGMpe319fSxj
c3M6ZnVuY3Rpb24oZSxuLHIsaSl7dmFyIG8sYSxzLGw9eC5jYW1lbENhc2Uobik7
cmV0dXJuIG49eC5jc3NQcm9wc1tsXXx8KHguY3NzUHJvcHNbbF09dG4oZS5zdHls
ZSxsKSkscz14LmNzc0hvb2tzW25dfHx4LmNzc0hvb2tzW2xdLHMmJiJnZXQiaW4g
cyYmKGE9cy5nZXQoZSwhMCxyKSksYT09PXQmJihhPVd0KGUsbixpKSksIm5vcm1h
bCI9PT1hJiZuIGluIEt0JiYoYT1LdFtuXSksIiI9PT1yfHxyPyhvPXBhcnNlRmxv
YXQoYSkscj09PSEwfHx4LmlzTnVtZXJpYyhvKT9vfHwwOmEpOmF9fSksZS5nZXRD
b21wdXRlZFN0eWxlPyhSdD1mdW5jdGlvbih0KXtyZXR1cm4gZS5nZXRDb21wdXRl
ZFN0eWxlKHQsbnVsbCl9LFd0PWZ1bmN0aW9uKGUsbixyKXt2YXIgaSxvLGEscz1y
fHxSdChlKSxsPXM/cy5nZXRQcm9wZXJ0eVZhbHVlKG4pfHxzW25dOnQsdT1lLnN0
eWxlO3JldHVybiBzJiYoIiIhPT1sfHx4LmNvbnRhaW5zKGUub3duZXJEb2N1bWVu
dCxlKXx8KGw9eC5zdHlsZShlLG4pKSxZdC50ZXN0KGwpJiZVdC50ZXN0KG4pJiYo
aT11LndpZHRoLG89dS5taW5XaWR0aCxhPXUubWF4V2lkdGgsdS5taW5XaWR0aD11
Lm1heFdpZHRoPXUud2lkdGg9bCxsPXMud2lkdGgsdS53aWR0aD1pLHUubWluV2lk
dGg9byx1Lm1heFdpZHRoPWEpKSxsfSk6YS5kb2N1bWVudEVsZW1lbnQuY3VycmVu
dFN0eWxlJiYoUnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIGUuY3VycmVudFN0eWxlfSxX
dD1mdW5jdGlvbihlLG4scil7dmFyIGksbyxhLHM9cnx8UnQoZSksbD1zP3Nbbl06
dCx1PWUuc3R5bGU7cmV0dXJuIG51bGw9PWwmJnUmJnVbbl0mJihsPXVbbl0pLFl0
LnRlc3QobCkmJiF6dC50ZXN0KG4pJiYoaT11LmxlZnQsbz1lLnJ1bnRpbWVTdHls
ZSxhPW8mJm8ubGVmdCxhJiYoby5sZWZ0PWUuY3VycmVudFN0eWxlLmxlZnQpLHUu
bGVmdD0iZm9udFNpemUiPT09bj8iMWVtIjpsLGw9dS5waXhlbExlZnQrInB4Iix1
LmxlZnQ9aSxhJiYoby5sZWZ0PWEpKSwiIj09PWw/ImF1dG8iOmx9KTtmdW5jdGlv
biBvbihlLHQsbil7dmFyIHI9VnQuZXhlYyh0KTtyZXR1cm4gcj9NYXRoLm1heCgw
LHJbMV0tKG58fDApKSsoclsyXXx8InB4Iik6dH1mdW5jdGlvbiBhbihlLHQsbixy
LGkpe3ZhciBvPW49PT0ocj8iYm9yZGVyIjoiY29udGVudCIpPzQ6IndpZHRoIj09
PXQ/MTowLGE9MDtmb3IoOzQ+bztvKz0yKSJtYXJnaW4iPT09biYmKGErPXguY3Nz
KGUsbitadFtvXSwhMCxpKSkscj8oImNvbnRlbnQiPT09biYmKGEtPXguY3NzKGUs
InBhZGRpbmciK1p0W29dLCEwLGkpKSwibWFyZ2luIiE9PW4mJihhLT14LmNzcyhl
LCJib3JkZXIiK1p0W29dKyJXaWR0aCIsITAsaSkpKTooYSs9eC5jc3MoZSwicGFk
ZGluZyIrWnRbb10sITAsaSksInBhZGRpbmciIT09biYmKGErPXguY3NzKGUsImJv
cmRlciIrWnRbb10rIldpZHRoIiwhMCxpKSkpO3JldHVybiBhfWZ1bmN0aW9uIHNu
KGUsdCxuKXt2YXIgcj0hMCxpPSJ3aWR0aCI9PT10P2Uub2Zmc2V0V2lkdGg6ZS5v
ZmZzZXRIZWlnaHQsbz1SdChlKSxhPXguc3VwcG9ydC5ib3hTaXppbmcmJiJib3Jk
ZXItYm94Ij09PXguY3NzKGUsImJveFNpemluZyIsITEsbyk7aWYoMD49aXx8bnVs
bD09aSl7aWYoaT1XdChlLHQsbyksKDA+aXx8bnVsbD09aSkmJihpPWUuc3R5bGVb
dF0pLFl0LnRlc3QoaSkpcmV0dXJuIGk7cj1hJiYoeC5zdXBwb3J0LmJveFNpemlu
Z1JlbGlhYmxlfHxpPT09ZS5zdHlsZVt0XSksaT1wYXJzZUZsb2F0KGkpfHwwfXJl
dHVybiBpK2FuKGUsdCxufHwoYT8iYm9yZGVyIjoiY29udGVudCIpLHIsbykrInB4
In1mdW5jdGlvbiBsbihlKXt2YXIgdD1hLG49R3RbZV07cmV0dXJuIG58fChuPXVu
KGUsdCksIm5vbmUiIT09biYmbnx8KFB0PShQdHx8eCgiPGlmcmFtZSBmcmFtZWJv
cmRlcj0nMCcgd2lkdGg9JzAnIGhlaWdodD0nMCcvPiIpLmNzcygiY3NzVGV4dCIs
ImRpc3BsYXk6YmxvY2sgIWltcG9ydGFudCIpKS5hcHBlbmRUbyh0LmRvY3VtZW50
RWxlbWVudCksdD0oUHRbMF0uY29udGVudFdpbmRvd3x8UHRbMF0uY29udGVudERv
Y3VtZW50KS5kb2N1bWVudCx0LndyaXRlKCI8IWRvY3R5cGUgaHRtbD48aHRtbD48
Ym9keT4iKSx0LmNsb3NlKCksbj11bihlLHQpLFB0LmRldGFjaCgpKSxHdFtlXT1u
KSxufWZ1bmN0aW9uIHVuKGUsdCl7dmFyIG49eCh0LmNyZWF0ZUVsZW1lbnQoZSkp
LmFwcGVuZFRvKHQuYm9keSkscj14LmNzcyhuWzBdLCJkaXNwbGF5Iik7cmV0dXJu
IG4ucmVtb3ZlKCkscn14LmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLGZ1bmN0aW9u
KGUsbil7eC5jc3NIb29rc1tuXT17Z2V0OmZ1bmN0aW9uKGUscixpKXtyZXR1cm4g
cj8wPT09ZS5vZmZzZXRXaWR0aCYmWHQudGVzdCh4LmNzcyhlLCJkaXNwbGF5Iikp
P3guc3dhcChlLFF0LGZ1bmN0aW9uKCl7cmV0dXJuIHNuKGUsbixpKX0pOnNuKGUs
bixpKTp0fSxzZXQ6ZnVuY3Rpb24oZSx0LHIpe3ZhciBpPXImJlJ0KGUpO3JldHVy
biBvbihlLHQscj9hbihlLG4scix4LnN1cHBvcnQuYm94U2l6aW5nJiYiYm9yZGVy
LWJveCI9PT14LmNzcyhlLCJib3hTaXppbmciLCExLGkpLGkpOjApfX19KSx4LnN1
cHBvcnQub3BhY2l0eXx8KHguY3NzSG9va3Mub3BhY2l0eT17Z2V0OmZ1bmN0aW9u
KGUsdCl7cmV0dXJuIEl0LnRlc3QoKHQmJmUuY3VycmVudFN0eWxlP2UuY3VycmVu
dFN0eWxlLmZpbHRlcjplLnN0eWxlLmZpbHRlcil8fCIiKT8uMDEqcGFyc2VGbG9h
dChSZWdFeHAuJDEpKyIiOnQ/IjEiOiIifSxzZXQ6ZnVuY3Rpb24oZSx0KXt2YXIg
bj1lLnN0eWxlLHI9ZS5jdXJyZW50U3R5bGUsaT14LmlzTnVtZXJpYyh0KT8iYWxw
aGEob3BhY2l0eT0iKzEwMCp0KyIpIjoiIixvPXImJnIuZmlsdGVyfHxuLmZpbHRl
cnx8IiI7bi56b29tPTEsKHQ+PTF8fCIiPT09dCkmJiIiPT09eC50cmltKG8ucmVw
bGFjZSgkdCwiIikpJiZuLnJlbW92ZUF0dHJpYnV0ZSYmKG4ucmVtb3ZlQXR0cmli
dXRlKCJmaWx0ZXIiKSwiIj09PXR8fHImJiFyLmZpbHRlcil8fChuLmZpbHRlcj0k
dC50ZXN0KG8pP28ucmVwbGFjZSgkdCxpKTpvKyIgIitpKX19KSx4KGZ1bmN0aW9u
KCl7eC5zdXBwb3J0LnJlbGlhYmxlTWFyZ2luUmlnaHR8fCh4LmNzc0hvb2tzLm1h
cmdpblJpZ2h0PXtnZXQ6ZnVuY3Rpb24oZSxuKXtyZXR1cm4gbj94LnN3YXAoZSx7
ZGlzcGxheToiaW5saW5lLWJsb2NrIn0sV3QsW2UsIm1hcmdpblJpZ2h0Il0pOnR9
fSksIXguc3VwcG9ydC5waXhlbFBvc2l0aW9uJiZ4LmZuLnBvc2l0aW9uJiZ4LmVh
Y2goWyJ0b3AiLCJsZWZ0Il0sZnVuY3Rpb24oZSxuKXt4LmNzc0hvb2tzW25dPXtn
ZXQ6ZnVuY3Rpb24oZSxyKXtyZXR1cm4gcj8ocj1XdChlLG4pLFl0LnRlc3Qocik/
eChlKS5wb3NpdGlvbigpW25dKyJweCI6cik6dH19fSl9KSx4LmV4cHImJnguZXhw
ci5maWx0ZXJzJiYoeC5leHByLmZpbHRlcnMuaGlkZGVuPWZ1bmN0aW9uKGUpe3Jl
dHVybiAwPj1lLm9mZnNldFdpZHRoJiYwPj1lLm9mZnNldEhlaWdodHx8IXguc3Vw
cG9ydC5yZWxpYWJsZUhpZGRlbk9mZnNldHMmJiJub25lIj09PShlLnN0eWxlJiZl
LnN0eWxlLmRpc3BsYXl8fHguY3NzKGUsImRpc3BsYXkiKSl9LHguZXhwci5maWx0
ZXJzLnZpc2libGU9ZnVuY3Rpb24oZSl7cmV0dXJuIXguZXhwci5maWx0ZXJzLmhp
ZGRlbihlKX0pLHguZWFjaCh7bWFyZ2luOiIiLHBhZGRpbmc6IiIsYm9yZGVyOiJX
aWR0aCJ9LGZ1bmN0aW9uKGUsdCl7eC5jc3NIb29rc1tlK3RdPXtleHBhbmQ6ZnVu
Y3Rpb24obil7dmFyIHI9MCxpPXt9LG89InN0cmluZyI9PXR5cGVvZiBuP24uc3Bs
aXQoIiAiKTpbbl07Zm9yKDs0PnI7cisrKWlbZStadFtyXSt0XT1vW3JdfHxvW3It
Ml18fG9bMF07cmV0dXJuIGl9fSxVdC50ZXN0KGUpfHwoeC5jc3NIb29rc1tlK3Rd
LnNldD1vbil9KTt2YXIgY249LyUyMC9nLHBuPS9cW1xdJC8sZm49L1xyP1xuL2cs
ZG49L14oPzpzdWJtaXR8YnV0dG9ufGltYWdlfHJlc2V0fGZpbGUpJC9pLGhuPS9e
KD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGtleWdlbikvaTt4LmZuLmV4dGVuZCh7
c2VyaWFsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIHgucGFyYW0odGhpcy5zZXJpYWxp
emVBcnJheSgpKX0sc2VyaWFsaXplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhp
cy5tYXAoZnVuY3Rpb24oKXt2YXIgZT14LnByb3AodGhpcywiZWxlbWVudHMiKTty
ZXR1cm4gZT94Lm1ha2VBcnJheShlKTp0aGlzfSkuZmlsdGVyKGZ1bmN0aW9uKCl7
dmFyIGU9dGhpcy50eXBlO3JldHVybiB0aGlzLm5hbWUmJiF4KHRoaXMpLmlzKCI6
ZGlzYWJsZWQiKSYmaG4udGVzdCh0aGlzLm5vZGVOYW1lKSYmIWRuLnRlc3QoZSkm
Jih0aGlzLmNoZWNrZWR8fCFDdC50ZXN0KGUpKX0pLm1hcChmdW5jdGlvbihlLHQp
e3ZhciBuPXgodGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/bnVsbDp4LmlzQXJy
YXkobik/eC5tYXAobixmdW5jdGlvbihlKXtyZXR1cm57bmFtZTp0Lm5hbWUsdmFs
dWU6ZS5yZXBsYWNlKGZuLCJcclxuIil9fSk6e25hbWU6dC5uYW1lLHZhbHVlOm4u
cmVwbGFjZShmbiwiXHJcbiIpfX0pLmdldCgpfX0pLHgucGFyYW09ZnVuY3Rpb24o
ZSxuKXt2YXIgcixpPVtdLG89ZnVuY3Rpb24oZSx0KXt0PXguaXNGdW5jdGlvbih0
KT90KCk6bnVsbD09dD8iIjp0LGlbaS5sZW5ndGhdPWVuY29kZVVSSUNvbXBvbmVu
dChlKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQpfTtpZihuPT09dCYmKG49eC5h
amF4U2V0dGluZ3MmJnguYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsKSx4LmlzQXJy
YXkoZSl8fGUuanF1ZXJ5JiYheC5pc1BsYWluT2JqZWN0KGUpKXguZWFjaChlLGZ1
bmN0aW9uKCl7byh0aGlzLm5hbWUsdGhpcy52YWx1ZSl9KTtlbHNlIGZvcihyIGlu
IGUpZ24ocixlW3JdLG4sbyk7cmV0dXJuIGkuam9pbigiJiIpLnJlcGxhY2UoY24s
IisiKX07ZnVuY3Rpb24gZ24oZSx0LG4scil7dmFyIGk7aWYoeC5pc0FycmF5KHQp
KXguZWFjaCh0LGZ1bmN0aW9uKHQsaSl7bnx8cG4udGVzdChlKT9yKGUsaSk6Z24o
ZSsiWyIrKCJvYmplY3QiPT10eXBlb2YgaT90OiIiKSsiXSIsaSxuLHIpfSk7ZWxz
ZSBpZihufHwib2JqZWN0IiE9PXgudHlwZSh0KSlyKGUsdCk7ZWxzZSBmb3IoaSBp
biB0KWduKGUrIlsiK2krIl0iLHRbaV0sbixyKX14LmVhY2goImJsdXIgZm9jdXMg
Zm9jdXNpbiBmb2N1c291dCBsb2FkIHJlc2l6ZSBzY3JvbGwgdW5sb2FkIGNsaWNr
IGRibGNsaWNrIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW92ZXIg
bW91c2VvdXQgbW91c2VlbnRlciBtb3VzZWxlYXZlIGNoYW5nZSBzZWxlY3Qgc3Vi
bWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgZXJyb3IgY29udGV4dG1lbnUiLnNw
bGl0KCIgIiksZnVuY3Rpb24oZSx0KXt4LmZuW3RdPWZ1bmN0aW9uKGUsbil7cmV0
dXJuIGFyZ3VtZW50cy5sZW5ndGg+MD90aGlzLm9uKHQsbnVsbCxlLG4pOnRoaXMu
dHJpZ2dlcih0KX19KSx4LmZuLmV4dGVuZCh7aG92ZXI6ZnVuY3Rpb24oZSx0KXty
ZXR1cm4gdGhpcy5tb3VzZWVudGVyKGUpLm1vdXNlbGVhdmUodHx8ZSl9LGJpbmQ6
ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0aGlzLm9uKGUsbnVsbCx0LG4pfSx1bmJp
bmQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5vZmYoZSxudWxsLHQpfSxkZWxl
Z2F0ZTpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gdGhpcy5vbih0LGUsbixyKX0s
dW5kZWxlZ2F0ZTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIDE9PT1hcmd1bWVudHMu
bGVuZ3RoP3RoaXMub2ZmKGUsIioqIik6dGhpcy5vZmYodCxlfHwiKioiLG4pfX0p
O3ZhciBtbix5bix2bj14Lm5vdygpLGJuPS9cPy8seG49LyMuKiQvLHduPS8oWz8m
XSlfPVteJl0qLyxUbj0vXiguKj8pOlsgXHRdKihbXlxyXG5dKilccj8kL2dtLENu
PS9eKD86YWJvdXR8YXBwfGFwcC1zdG9yYWdlfC4rLWV4dGVuc2lvbnxmaWxlfHJl
c3x3aWRnZXQpOiQvLE5uPS9eKD86R0VUfEhFQUQpJC8sa249L15cL1wvLyxFbj0v
XihbXHcuKy1dKzopKD86XC9cLyhbXlwvPyM6XSopKD86OihcZCspfCl8KS8sU249
eC5mbi5sb2FkLEFuPXt9LGpuPXt9LERuPSIqLyIuY29uY2F0KCIqIik7dHJ5e3lu
PW8uaHJlZn1jYXRjaChMbil7eW49YS5jcmVhdGVFbGVtZW50KCJhIikseW4uaHJl
Zj0iIix5bj15bi5ocmVmfW1uPUVuLmV4ZWMoeW4udG9Mb3dlckNhc2UoKSl8fFtd
O2Z1bmN0aW9uIEhuKGUpe3JldHVybiBmdW5jdGlvbih0LG4peyJzdHJpbmciIT10
eXBlb2YgdCYmKG49dCx0PSIqIik7dmFyIHIsaT0wLG89dC50b0xvd2VyQ2FzZSgp
Lm1hdGNoKFQpfHxbXTtpZih4LmlzRnVuY3Rpb24obikpd2hpbGUocj1vW2krK10p
IisiPT09clswXT8ocj1yLnNsaWNlKDEpfHwiKiIsKGVbcl09ZVtyXXx8W10pLnVu
c2hpZnQobikpOihlW3JdPWVbcl18fFtdKS5wdXNoKG4pfX1mdW5jdGlvbiBxbihl
LG4scixpKXt2YXIgbz17fSxhPWU9PT1qbjtmdW5jdGlvbiBzKGwpe3ZhciB1O3Jl
dHVybiBvW2xdPSEwLHguZWFjaChlW2xdfHxbXSxmdW5jdGlvbihlLGwpe3ZhciBj
PWwobixyLGkpO3JldHVybiJzdHJpbmciIT10eXBlb2YgY3x8YXx8b1tjXT9hPyEo
dT1jKTp0OihuLmRhdGFUeXBlcy51bnNoaWZ0KGMpLHMoYyksITEpfSksdX1yZXR1
cm4gcyhuLmRhdGFUeXBlc1swXSl8fCFvWyIqIl0mJnMoIioiKX1mdW5jdGlvbiBf
bihlLG4pe3ZhciByLGksbz14LmFqYXhTZXR0aW5ncy5mbGF0T3B0aW9uc3x8e307
Zm9yKGkgaW4gbiluW2ldIT09dCYmKChvW2ldP2U6cnx8KHI9e30pKVtpXT1uW2ld
KTtyZXR1cm4gciYmeC5leHRlbmQoITAsZSxyKSxlfXguZm4ubG9hZD1mdW5jdGlv
bihlLG4scil7aWYoInN0cmluZyIhPXR5cGVvZiBlJiZTbilyZXR1cm4gU24uYXBw
bHkodGhpcyxhcmd1bWVudHMpO3ZhciBpLG8sYSxzPXRoaXMsbD1lLmluZGV4T2Yo
IiAiKTtyZXR1cm4gbD49MCYmKGk9ZS5zbGljZShsLGUubGVuZ3RoKSxlPWUuc2xp
Y2UoMCxsKSkseC5pc0Z1bmN0aW9uKG4pPyhyPW4sbj10KTpuJiYib2JqZWN0Ij09
dHlwZW9mIG4mJihhPSJQT1NUIikscy5sZW5ndGg+MCYmeC5hamF4KHt1cmw6ZSx0
eXBlOmEsZGF0YVR5cGU6Imh0bWwiLGRhdGE6bn0pLmRvbmUoZnVuY3Rpb24oZSl7
bz1hcmd1bWVudHMscy5odG1sKGk/eCgiPGRpdj4iKS5hcHBlbmQoeC5wYXJzZUhU
TUwoZSkpLmZpbmQoaSk6ZSl9KS5jb21wbGV0ZShyJiZmdW5jdGlvbihlLHQpe3Mu
ZWFjaChyLG98fFtlLnJlc3BvbnNlVGV4dCx0LGVdKX0pLHRoaXN9LHguZWFjaChb
ImFqYXhTdGFydCIsImFqYXhTdG9wIiwiYWpheENvbXBsZXRlIiwiYWpheEVycm9y
IiwiYWpheFN1Y2Nlc3MiLCJhamF4U2VuZCJdLGZ1bmN0aW9uKGUsdCl7eC5mblt0
XT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5vbih0LGUpfX0pLHguZXh0ZW5kKHth
Y3RpdmU6MCxsYXN0TW9kaWZpZWQ6e30sZXRhZzp7fSxhamF4U2V0dGluZ3M6e3Vy
bDp5bix0eXBlOiJHRVQiLGlzTG9jYWw6Q24udGVzdChtblsxXSksZ2xvYmFsOiEw
LHByb2Nlc3NEYXRhOiEwLGFzeW5jOiEwLGNvbnRlbnRUeXBlOiJhcHBsaWNhdGlv
bi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9VVRGLTgiLGFjY2VwdHM6
eyIqIjpEbix0ZXh0OiJ0ZXh0L3BsYWluIixodG1sOiJ0ZXh0L2h0bWwiLHhtbDoi
YXBwbGljYXRpb24veG1sLCB0ZXh0L3htbCIsanNvbjoiYXBwbGljYXRpb24vanNv
biwgdGV4dC9qYXZhc2NyaXB0In0sY29udGVudHM6e3htbDoveG1sLyxodG1sOi9o
dG1sLyxqc29uOi9qc29uL30scmVzcG9uc2VGaWVsZHM6e3htbDoicmVzcG9uc2VY
TUwiLHRleHQ6InJlc3BvbnNlVGV4dCIsanNvbjoicmVzcG9uc2VKU09OIn0sY29u
dmVydGVyczp7IiogdGV4dCI6U3RyaW5nLCJ0ZXh0IGh0bWwiOiEwLCJ0ZXh0IGpz
b24iOngucGFyc2VKU09OLCJ0ZXh0IHhtbCI6eC5wYXJzZVhNTH0sZmxhdE9wdGlv
bnM6e3VybDohMCxjb250ZXh0OiEwfX0sYWpheFNldHVwOmZ1bmN0aW9uKGUsdCl7
cmV0dXJuIHQ/X24oX24oZSx4LmFqYXhTZXR0aW5ncyksdCk6X24oeC5hamF4U2V0
dGluZ3MsZSl9LGFqYXhQcmVmaWx0ZXI6SG4oQW4pLGFqYXhUcmFuc3BvcnQ6SG4o
am4pLGFqYXg6ZnVuY3Rpb24oZSxuKXsib2JqZWN0Ij09dHlwZW9mIGUmJihuPWUs
ZT10KSxuPW58fHt9O3ZhciByLGksbyxhLHMsbCx1LGMscD14LmFqYXhTZXR1cCh7
fSxuKSxmPXAuY29udGV4dHx8cCxkPXAuY29udGV4dCYmKGYubm9kZVR5cGV8fGYu
anF1ZXJ5KT94KGYpOnguZXZlbnQsaD14LkRlZmVycmVkKCksZz14LkNhbGxiYWNr
cygib25jZSBtZW1vcnkiKSxtPXAuc3RhdHVzQ29kZXx8e30seT17fSx2PXt9LGI9
MCx3PSJjYW5jZWxlZCIsQz17cmVhZHlTdGF0ZTowLGdldFJlc3BvbnNlSGVhZGVy
OmZ1bmN0aW9uKGUpe3ZhciB0O2lmKDI9PT1iKXtpZighYyl7Yz17fTt3aGlsZSh0
PVRuLmV4ZWMoYSkpY1t0WzFdLnRvTG93ZXJDYXNlKCldPXRbMl19dD1jW2UudG9M
b3dlckNhc2UoKV19cmV0dXJuIG51bGw9PXQ/bnVsbDp0fSxnZXRBbGxSZXNwb25z
ZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gMj09PWI/YTpudWxsfSxzZXRSZXF1
ZXN0SGVhZGVyOmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS50b0xvd2VyQ2FzZSgpO3Jl
dHVybiBifHwoZT12W25dPXZbbl18fGUseVtlXT10KSx0aGlzfSxvdmVycmlkZU1p
bWVUeXBlOmZ1bmN0aW9uKGUpe3JldHVybiBifHwocC5taW1lVHlwZT1lKSx0aGlz
fSxzdGF0dXNDb2RlOmZ1bmN0aW9uKGUpe3ZhciB0O2lmKGUpaWYoMj5iKWZvcih0
IGluIGUpbVt0XT1bbVt0XSxlW3RdXTtlbHNlIEMuYWx3YXlzKGVbQy5zdGF0dXNd
KTtyZXR1cm4gdGhpc30sYWJvcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZXx8dztyZXR1
cm4gdSYmdS5hYm9ydCh0KSxrKDAsdCksdGhpc319O2lmKGgucHJvbWlzZShDKS5j
b21wbGV0ZT1nLmFkZCxDLnN1Y2Nlc3M9Qy5kb25lLEMuZXJyb3I9Qy5mYWlsLHAu
dXJsPSgoZXx8cC51cmx8fHluKSsiIikucmVwbGFjZSh4biwiIikucmVwbGFjZShr
bixtblsxXSsiLy8iKSxwLnR5cGU9bi5tZXRob2R8fG4udHlwZXx8cC5tZXRob2R8
fHAudHlwZSxwLmRhdGFUeXBlcz14LnRyaW0ocC5kYXRhVHlwZXx8IioiKS50b0xv
d2VyQ2FzZSgpLm1hdGNoKFQpfHxbIiJdLG51bGw9PXAuY3Jvc3NEb21haW4mJihy
PUVuLmV4ZWMocC51cmwudG9Mb3dlckNhc2UoKSkscC5jcm9zc0RvbWFpbj0hKCFy
fHxyWzFdPT09bW5bMV0mJnJbMl09PT1tblsyXSYmKHJbM118fCgiaHR0cDoiPT09
clsxXT8iODAiOiI0NDMiKSk9PT0obW5bM118fCgiaHR0cDoiPT09bW5bMV0/Ijgw
IjoiNDQzIikpKSkscC5kYXRhJiZwLnByb2Nlc3NEYXRhJiYic3RyaW5nIiE9dHlw
ZW9mIHAuZGF0YSYmKHAuZGF0YT14LnBhcmFtKHAuZGF0YSxwLnRyYWRpdGlvbmFs
KSkscW4oQW4scCxuLEMpLDI9PT1iKXJldHVybiBDO2w9cC5nbG9iYWwsbCYmMD09
PXguYWN0aXZlKysmJnguZXZlbnQudHJpZ2dlcigiYWpheFN0YXJ0IikscC50eXBl
PXAudHlwZS50b1VwcGVyQ2FzZSgpLHAuaGFzQ29udGVudD0hTm4udGVzdChwLnR5
cGUpLG89cC51cmwscC5oYXNDb250ZW50fHwocC5kYXRhJiYobz1wLnVybCs9KGJu
LnRlc3Qobyk/IiYiOiI/IikrcC5kYXRhLGRlbGV0ZSBwLmRhdGEpLHAuY2FjaGU9
PT0hMSYmKHAudXJsPXduLnRlc3Qobyk/by5yZXBsYWNlKHduLCIkMV89Iit2bisr
KTpvKyhibi50ZXN0KG8pPyImIjoiPyIpKyJfPSIrdm4rKykpLHAuaWZNb2RpZmll
ZCYmKHgubGFzdE1vZGlmaWVkW29dJiZDLnNldFJlcXVlc3RIZWFkZXIoIklmLU1v
ZGlmaWVkLVNpbmNlIix4Lmxhc3RNb2RpZmllZFtvXSkseC5ldGFnW29dJiZDLnNl
dFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2giLHguZXRhZ1tvXSkpLChwLmRh
dGEmJnAuaGFzQ29udGVudCYmcC5jb250ZW50VHlwZSE9PSExfHxuLmNvbnRlbnRU
eXBlKSYmQy5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLHAuY29udGVu
dFR5cGUpLEMuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IixwLmRhdGFUeXBlc1sw
XSYmcC5hY2NlcHRzW3AuZGF0YVR5cGVzWzBdXT9wLmFjY2VwdHNbcC5kYXRhVHlw
ZXNbMF1dKygiKiIhPT1wLmRhdGFUeXBlc1swXT8iLCAiK0RuKyI7IHE9MC4wMSI6
IiIpOnAuYWNjZXB0c1siKiJdKTtmb3IoaSBpbiBwLmhlYWRlcnMpQy5zZXRSZXF1
ZXN0SGVhZGVyKGkscC5oZWFkZXJzW2ldKTtpZihwLmJlZm9yZVNlbmQmJihwLmJl
Zm9yZVNlbmQuY2FsbChmLEMscCk9PT0hMXx8Mj09PWIpKXJldHVybiBDLmFib3J0
KCk7dz0iYWJvcnQiO2ZvcihpIGlue3N1Y2Nlc3M6MSxlcnJvcjoxLGNvbXBsZXRl
OjF9KUNbaV0ocFtpXSk7aWYodT1xbihqbixwLG4sQykpe0MucmVhZHlTdGF0ZT0x
LGwmJmQudHJpZ2dlcigiYWpheFNlbmQiLFtDLHBdKSxwLmFzeW5jJiZwLnRpbWVv
dXQ+MCYmKHM9c2V0VGltZW91dChmdW5jdGlvbigpe0MuYWJvcnQoInRpbWVvdXQi
KX0scC50aW1lb3V0KSk7dHJ5e2I9MSx1LnNlbmQoeSxrKX1jYXRjaChOKXtpZigh
KDI+YikpdGhyb3cgTjtrKC0xLE4pfX1lbHNlIGsoLTEsIk5vIFRyYW5zcG9ydCIp
O2Z1bmN0aW9uIGsoZSxuLHIsaSl7dmFyIGMseSx2LHcsVCxOPW47MiE9PWImJihi
PTIscyYmY2xlYXJUaW1lb3V0KHMpLHU9dCxhPWl8fCIiLEMucmVhZHlTdGF0ZT1l
PjA/NDowLGM9ZT49MjAwJiYzMDA+ZXx8MzA0PT09ZSxyJiYodz1NbihwLEMscikp
LHc9T24ocCx3LEMsYyksYz8ocC5pZk1vZGlmaWVkJiYoVD1DLmdldFJlc3BvbnNl
SGVhZGVyKCJMYXN0LU1vZGlmaWVkIiksVCYmKHgubGFzdE1vZGlmaWVkW29dPVQp
LFQ9Qy5nZXRSZXNwb25zZUhlYWRlcigiZXRhZyIpLFQmJih4LmV0YWdbb109VCkp
LDIwND09PWV8fCJIRUFEIj09PXAudHlwZT9OPSJub2NvbnRlbnQiOjMwND09PWU/
Tj0ibm90bW9kaWZpZWQiOihOPXcuc3RhdGUseT13LmRhdGEsdj13LmVycm9yLGM9
IXYpKToodj1OLChlfHwhTikmJihOPSJlcnJvciIsMD5lJiYoZT0wKSkpLEMuc3Rh
dHVzPWUsQy5zdGF0dXNUZXh0PShufHxOKSsiIixjP2gucmVzb2x2ZVdpdGgoZixb
eSxOLENdKTpoLnJlamVjdFdpdGgoZixbQyxOLHZdKSxDLnN0YXR1c0NvZGUobSks
bT10LGwmJmQudHJpZ2dlcihjPyJhamF4U3VjY2VzcyI6ImFqYXhFcnJvciIsW0Ms
cCxjP3k6dl0pLGcuZmlyZVdpdGgoZixbQyxOXSksbCYmKGQudHJpZ2dlcigiYWph
eENvbXBsZXRlIixbQyxwXSksLS14LmFjdGl2ZXx8eC5ldmVudC50cmlnZ2VyKCJh
amF4U3RvcCIpKSl9cmV0dXJuIEN9LGdldEpTT046ZnVuY3Rpb24oZSx0LG4pe3Jl
dHVybiB4LmdldChlLHQsbiwianNvbiIpfSxnZXRTY3JpcHQ6ZnVuY3Rpb24oZSxu
KXtyZXR1cm4geC5nZXQoZSx0LG4sInNjcmlwdCIpfX0pLHguZWFjaChbImdldCIs
InBvc3QiXSxmdW5jdGlvbihlLG4pe3hbbl09ZnVuY3Rpb24oZSxyLGksbyl7cmV0
dXJuIHguaXNGdW5jdGlvbihyKSYmKG89b3x8aSxpPXIscj10KSx4LmFqYXgoe3Vy
bDplLHR5cGU6bixkYXRhVHlwZTpvLGRhdGE6cixzdWNjZXNzOml9KX19KTtmdW5j
dGlvbiBNbihlLG4scil7dmFyIGksbyxhLHMsbD1lLmNvbnRlbnRzLHU9ZS5kYXRh
VHlwZXM7d2hpbGUoIioiPT09dVswXSl1LnNoaWZ0KCksbz09PXQmJihvPWUubWlt
ZVR5cGV8fG4uZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpKTtpZihv
KWZvcihzIGluIGwpaWYobFtzXSYmbFtzXS50ZXN0KG8pKXt1LnVuc2hpZnQocyk7
YnJlYWt9aWYodVswXWluIHIpYT11WzBdO2Vsc2V7Zm9yKHMgaW4gcil7aWYoIXVb
MF18fGUuY29udmVydGVyc1tzKyIgIit1WzBdXSl7YT1zO2JyZWFrfWl8fChpPXMp
fWE9YXx8aX1yZXR1cm4gYT8oYSE9PXVbMF0mJnUudW5zaGlmdChhKSxyW2FdKTp0
fWZ1bmN0aW9uIE9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzLGwsdT17fSxjPWUuZGF0
YVR5cGVzLnNsaWNlKCk7aWYoY1sxXSlmb3IoYSBpbiBlLmNvbnZlcnRlcnMpdVth
LnRvTG93ZXJDYXNlKCldPWUuY29udmVydGVyc1thXTtvPWMuc2hpZnQoKTt3aGls
ZShvKWlmKGUucmVzcG9uc2VGaWVsZHNbb10mJihuW2UucmVzcG9uc2VGaWVsZHNb
b11dPXQpLCFsJiZyJiZlLmRhdGFGaWx0ZXImJih0PWUuZGF0YUZpbHRlcih0LGUu
ZGF0YVR5cGUpKSxsPW8sbz1jLnNoaWZ0KCkpaWYoIioiPT09bylvPWw7ZWxzZSBp
ZigiKiIhPT1sJiZsIT09byl7aWYoYT11W2wrIiAiK29dfHx1WyIqICIrb10sIWEp
Zm9yKGkgaW4gdSlpZihzPWkuc3BsaXQoIiAiKSxzWzFdPT09byYmKGE9dVtsKyIg
IitzWzBdXXx8dVsiKiAiK3NbMF1dKSl7YT09PSEwP2E9dVtpXTp1W2ldIT09ITAm
JihvPXNbMF0sYy51bnNoaWZ0KHNbMV0pKTticmVha31pZihhIT09ITApaWYoYSYm
ZVsidGhyb3dzIl0pdD1hKHQpO2Vsc2UgdHJ5e3Q9YSh0KX1jYXRjaChwKXtyZXR1
cm57c3RhdGU6InBhcnNlcmVycm9yIixlcnJvcjphP3A6Ik5vIGNvbnZlcnNpb24g
ZnJvbSAiK2wrIiB0byAiK299fX1yZXR1cm57c3RhdGU6InN1Y2Nlc3MiLGRhdGE6
dH19eC5hamF4U2V0dXAoe2FjY2VwdHM6e3NjcmlwdDoidGV4dC9qYXZhc2NyaXB0
LCBhcHBsaWNhdGlvbi9qYXZhc2NyaXB0LCBhcHBsaWNhdGlvbi9lY21hc2NyaXB0
LCBhcHBsaWNhdGlvbi94LWVjbWFzY3JpcHQifSxjb250ZW50czp7c2NyaXB0Oi8o
PzpqYXZhfGVjbWEpc2NyaXB0L30sY29udmVydGVyczp7InRleHQgc2NyaXB0Ijpm
dW5jdGlvbihlKXtyZXR1cm4geC5nbG9iYWxFdmFsKGUpLGV9fX0pLHguYWpheFBy
ZWZpbHRlcigic2NyaXB0IixmdW5jdGlvbihlKXtlLmNhY2hlPT09dCYmKGUuY2Fj
aGU9ITEpLGUuY3Jvc3NEb21haW4mJihlLnR5cGU9IkdFVCIsZS5nbG9iYWw9ITEp
fSkseC5hamF4VHJhbnNwb3J0KCJzY3JpcHQiLGZ1bmN0aW9uKGUpe2lmKGUuY3Jv
c3NEb21haW4pe3ZhciBuLHI9YS5oZWFkfHx4KCJoZWFkIilbMF18fGEuZG9jdW1l
bnRFbGVtZW50O3JldHVybntzZW5kOmZ1bmN0aW9uKHQsaSl7bj1hLmNyZWF0ZUVs
ZW1lbnQoInNjcmlwdCIpLG4uYXN5bmM9ITAsZS5zY3JpcHRDaGFyc2V0JiYobi5j
aGFyc2V0PWUuc2NyaXB0Q2hhcnNldCksbi5zcmM9ZS51cmwsbi5vbmxvYWQ9bi5v
bnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oZSx0KXsodHx8IW4ucmVhZHlTdGF0
ZXx8L2xvYWRlZHxjb21wbGV0ZS8udGVzdChuLnJlYWR5U3RhdGUpKSYmKG4ub25s
b2FkPW4ub25yZWFkeXN0YXRlY2hhbmdlPW51bGwsbi5wYXJlbnROb2RlJiZuLnBh
cmVudE5vZGUucmVtb3ZlQ2hpbGQobiksbj1udWxsLHR8fGkoMjAwLCJzdWNjZXNz
IikpfSxyLmluc2VydEJlZm9yZShuLHIuZmlyc3RDaGlsZCl9LGFib3J0OmZ1bmN0
aW9uKCl7biYmbi5vbmxvYWQodCwhMCl9fX19KTt2YXIgRm49W10sQm49Lyg9KVw/
KD89JnwkKXxcP1w/Lzt4LmFqYXhTZXR1cCh7anNvbnA6ImNhbGxiYWNrIixqc29u
cENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGU9Rm4ucG9wKCl8fHguZXhwYW5kbysi
XyIrdm4rKztyZXR1cm4gdGhpc1tlXT0hMCxlfX0pLHguYWpheFByZWZpbHRlcigi
anNvbiBqc29ucCIsZnVuY3Rpb24obixyLGkpe3ZhciBvLGEscyxsPW4uanNvbnAh
PT0hMSYmKEJuLnRlc3Qobi51cmwpPyJ1cmwiOiJzdHJpbmciPT10eXBlb2Ygbi5k
YXRhJiYhKG4uY29udGVudFR5cGV8fCIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94
LXd3dy1mb3JtLXVybGVuY29kZWQiKSYmQm4udGVzdChuLmRhdGEpJiYiZGF0YSIp
O3JldHVybiBsfHwianNvbnAiPT09bi5kYXRhVHlwZXNbMF0/KG89bi5qc29ucENh
bGxiYWNrPXguaXNGdW5jdGlvbihuLmpzb25wQ2FsbGJhY2spP24uanNvbnBDYWxs
YmFjaygpOm4uanNvbnBDYWxsYmFjayxsP25bbF09bltsXS5yZXBsYWNlKEJuLCIk
MSIrbyk6bi5qc29ucCE9PSExJiYobi51cmwrPShibi50ZXN0KG4udXJsKT8iJiI6
Ij8iKStuLmpzb25wKyI9IitvKSxuLmNvbnZlcnRlcnNbInNjcmlwdCBqc29uIl09
ZnVuY3Rpb24oKXtyZXR1cm4gc3x8eC5lcnJvcihvKyIgd2FzIG5vdCBjYWxsZWQi
KSxzWzBdfSxuLmRhdGFUeXBlc1swXT0ianNvbiIsYT1lW29dLGVbb109ZnVuY3Rp
b24oKXtzPWFyZ3VtZW50c30saS5hbHdheXMoZnVuY3Rpb24oKXtlW29dPWEsbltv
XSYmKG4uanNvbnBDYWxsYmFjaz1yLmpzb25wQ2FsbGJhY2ssRm4ucHVzaChvKSks
cyYmeC5pc0Z1bmN0aW9uKGEpJiZhKHNbMF0pLHM9YT10fSksInNjcmlwdCIpOnR9
KTt2YXIgUG4sUm4sV249MCwkbj1lLkFjdGl2ZVhPYmplY3QmJmZ1bmN0aW9uKCl7
dmFyIGU7Zm9yKGUgaW4gUG4pUG5bZV0odCwhMCl9O2Z1bmN0aW9uIEluKCl7dHJ5
e3JldHVybiBuZXcgZS5YTUxIdHRwUmVxdWVzdH1jYXRjaCh0KXt9fWZ1bmN0aW9u
IHpuKCl7dHJ5e3JldHVybiBuZXcgZS5BY3RpdmVYT2JqZWN0KCJNaWNyb3NvZnQu
WE1MSFRUUCIpfWNhdGNoKHQpe319eC5hamF4U2V0dGluZ3MueGhyPWUuQWN0aXZl
WE9iamVjdD9mdW5jdGlvbigpe3JldHVybiF0aGlzLmlzTG9jYWwmJkluKCl8fHpu
KCl9OkluLFJuPXguYWpheFNldHRpbmdzLnhocigpLHguc3VwcG9ydC5jb3JzPSEh
Um4mJiJ3aXRoQ3JlZGVudGlhbHMiaW4gUm4sUm49eC5zdXBwb3J0LmFqYXg9ISFS
bixSbiYmeC5hamF4VHJhbnNwb3J0KGZ1bmN0aW9uKG4pe2lmKCFuLmNyb3NzRG9t
YWlufHx4LnN1cHBvcnQuY29ycyl7dmFyIHI7cmV0dXJue3NlbmQ6ZnVuY3Rpb24o
aSxvKXt2YXIgYSxzLGw9bi54aHIoKTtpZihuLnVzZXJuYW1lP2wub3BlbihuLnR5
cGUsbi51cmwsbi5hc3luYyxuLnVzZXJuYW1lLG4ucGFzc3dvcmQpOmwub3Blbihu
LnR5cGUsbi51cmwsbi5hc3luYyksbi54aHJGaWVsZHMpZm9yKHMgaW4gbi54aHJG
aWVsZHMpbFtzXT1uLnhockZpZWxkc1tzXTtuLm1pbWVUeXBlJiZsLm92ZXJyaWRl
TWltZVR5cGUmJmwub3ZlcnJpZGVNaW1lVHlwZShuLm1pbWVUeXBlKSxuLmNyb3Nz
RG9tYWlufHxpWyJYLVJlcXVlc3RlZC1XaXRoIl18fChpWyJYLVJlcXVlc3RlZC1X
aXRoIl09IlhNTEh0dHBSZXF1ZXN0Iik7dHJ5e2ZvcihzIGluIGkpbC5zZXRSZXF1
ZXN0SGVhZGVyKHMsaVtzXSl9Y2F0Y2godSl7fWwuc2VuZChuLmhhc0NvbnRlbnQm
Jm4uZGF0YXx8bnVsbCkscj1mdW5jdGlvbihlLGkpe3ZhciBzLHUsYyxwO3RyeXtp
ZihyJiYoaXx8ND09PWwucmVhZHlTdGF0ZSkpaWYocj10LGEmJihsLm9ucmVhZHlz
dGF0ZWNoYW5nZT14Lm5vb3AsJG4mJmRlbGV0ZSBQblthXSksaSk0IT09bC5yZWFk
eVN0YXRlJiZsLmFib3J0KCk7ZWxzZXtwPXt9LHM9bC5zdGF0dXMsdT1sLmdldEFs
bFJlc3BvbnNlSGVhZGVycygpLCJzdHJpbmciPT10eXBlb2YgbC5yZXNwb25zZVRl
eHQmJihwLnRleHQ9bC5yZXNwb25zZVRleHQpO3RyeXtjPWwuc3RhdHVzVGV4dH1j
YXRjaChmKXtjPSIifXN8fCFuLmlzTG9jYWx8fG4uY3Jvc3NEb21haW4/MTIyMz09
PXMmJihzPTIwNCk6cz1wLnRleHQ/MjAwOjQwNH19Y2F0Y2goZCl7aXx8bygtMSxk
KX1wJiZvKHMsYyxwLHUpfSxuLmFzeW5jPzQ9PT1sLnJlYWR5U3RhdGU/c2V0VGlt
ZW91dChyKTooYT0rK1duLCRuJiYoUG58fChQbj17fSx4KGUpLnVubG9hZCgkbikp
LFBuW2FdPXIpLGwub25yZWFkeXN0YXRlY2hhbmdlPXIpOnIoKX0sYWJvcnQ6ZnVu
Y3Rpb24oKXtyJiZyKHQsITApfX19fSk7dmFyIFhuLFVuLFZuPS9eKD86dG9nZ2xl
fHNob3d8aGlkZSkkLyxZbj1SZWdFeHAoIl4oPzooWystXSk9fCkoIit3KyIpKFth
LXolXSopJCIsImkiKSxKbj0vcXVldWVIb29rcyQvLEduPVtucl0sUW49eyIqIjpb
ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLmNyZWF0ZVR3ZWVuKGUsdCkscj1uLmN1
cigpLGk9WW4uZXhlYyh0KSxvPWkmJmlbM118fCh4LmNzc051bWJlcltlXT8iIjoi
cHgiKSxhPSh4LmNzc051bWJlcltlXXx8InB4IiE9PW8mJityKSYmWW4uZXhlYyh4
LmNzcyhuLmVsZW0sZSkpLHM9MSxsPTIwO2lmKGEmJmFbM10hPT1vKXtvPW98fGFb
M10saT1pfHxbXSxhPStyfHwxO2RvIHM9c3x8Ii41IixhLz1zLHguc3R5bGUobi5l
bGVtLGUsYStvKTt3aGlsZShzIT09KHM9bi5jdXIoKS9yKSYmMSE9PXMmJi0tbCl9
cmV0dXJuIGkmJihhPW4uc3RhcnQ9K2F8fCtyfHwwLG4udW5pdD1vLG4uZW5kPWlb
MV0/YSsoaVsxXSsxKSppWzJdOitpWzJdKSxufV19O2Z1bmN0aW9uIEtuKCl7cmV0
dXJuIHNldFRpbWVvdXQoZnVuY3Rpb24oKXtYbj10fSksWG49eC5ub3coKX1mdW5j
dGlvbiBabihlLHQsbil7dmFyIHIsaT0oUW5bdF18fFtdKS5jb25jYXQoUW5bIioi
XSksbz0wLGE9aS5sZW5ndGg7Zm9yKDthPm87bysrKWlmKHI9aVtvXS5jYWxsKG4s
dCxlKSlyZXR1cm4gcn1mdW5jdGlvbiBlcihlLHQsbil7dmFyIHIsaSxvPTAsYT1H
bi5sZW5ndGgscz14LkRlZmVycmVkKCkuYWx3YXlzKGZ1bmN0aW9uKCl7ZGVsZXRl
IGwuZWxlbX0pLGw9ZnVuY3Rpb24oKXtpZihpKXJldHVybiExO3ZhciB0PVhufHxL
bigpLG49TWF0aC5tYXgoMCx1LnN0YXJ0VGltZSt1LmR1cmF0aW9uLXQpLHI9bi91
LmR1cmF0aW9ufHwwLG89MS1yLGE9MCxsPXUudHdlZW5zLmxlbmd0aDtmb3IoO2w+
YTthKyspdS50d2VlbnNbYV0ucnVuKG8pO3JldHVybiBzLm5vdGlmeVdpdGgoZSxb
dSxvLG5dKSwxPm8mJmw/bjoocy5yZXNvbHZlV2l0aChlLFt1XSksITEpfSx1PXMu
cHJvbWlzZSh7ZWxlbTplLHByb3BzOnguZXh0ZW5kKHt9LHQpLG9wdHM6eC5leHRl
bmQoITAse3NwZWNpYWxFYXNpbmc6e319LG4pLG9yaWdpbmFsUHJvcGVydGllczp0
LG9yaWdpbmFsT3B0aW9uczpuLHN0YXJ0VGltZTpYbnx8S24oKSxkdXJhdGlvbjpu
LmR1cmF0aW9uLHR3ZWVuczpbXSxjcmVhdGVUd2VlbjpmdW5jdGlvbih0LG4pe3Zh
ciByPXguVHdlZW4oZSx1Lm9wdHMsdCxuLHUub3B0cy5zcGVjaWFsRWFzaW5nW3Rd
fHx1Lm9wdHMuZWFzaW5nKTtyZXR1cm4gdS50d2VlbnMucHVzaChyKSxyfSxzdG9w
OmZ1bmN0aW9uKHQpe3ZhciBuPTAscj10P3UudHdlZW5zLmxlbmd0aDowO2lmKGkp
cmV0dXJuIHRoaXM7Zm9yKGk9ITA7cj5uO24rKyl1LnR3ZWVuc1tuXS5ydW4oMSk7
cmV0dXJuIHQ/cy5yZXNvbHZlV2l0aChlLFt1LHRdKTpzLnJlamVjdFdpdGgoZSxb
dSx0XSksdGhpc319KSxjPXUucHJvcHM7Zm9yKHRyKGMsdS5vcHRzLnNwZWNpYWxF
YXNpbmcpO2E+bztvKyspaWYocj1HbltvXS5jYWxsKHUsZSxjLHUub3B0cykpcmV0
dXJuIHI7cmV0dXJuIHgubWFwKGMsWm4sdSkseC5pc0Z1bmN0aW9uKHUub3B0cy5z
dGFydCkmJnUub3B0cy5zdGFydC5jYWxsKGUsdSkseC5meC50aW1lcih4LmV4dGVu
ZChsLHtlbGVtOmUsYW5pbTp1LHF1ZXVlOnUub3B0cy5xdWV1ZX0pKSx1LnByb2dy
ZXNzKHUub3B0cy5wcm9ncmVzcykuZG9uZSh1Lm9wdHMuZG9uZSx1Lm9wdHMuY29t
cGxldGUpLmZhaWwodS5vcHRzLmZhaWwpLmFsd2F5cyh1Lm9wdHMuYWx3YXlzKX1m
dW5jdGlvbiB0cihlLHQpe3ZhciBuLHIsaSxvLGE7Zm9yKG4gaW4gZSlpZihyPXgu
Y2FtZWxDYXNlKG4pLGk9dFtyXSxvPWVbbl0seC5pc0FycmF5KG8pJiYoaT1vWzFd
LG89ZVtuXT1vWzBdKSxuIT09ciYmKGVbcl09byxkZWxldGUgZVtuXSksYT14LmNz
c0hvb2tzW3JdLGEmJiJleHBhbmQiaW4gYSl7bz1hLmV4cGFuZChvKSxkZWxldGUg
ZVtyXTtmb3IobiBpbiBvKW4gaW4gZXx8KGVbbl09b1tuXSx0W25dPWkpfWVsc2Ug
dFtyXT1pfXguQW5pbWF0aW9uPXguZXh0ZW5kKGVyLHt0d2VlbmVyOmZ1bmN0aW9u
KGUsdCl7eC5pc0Z1bmN0aW9uKGUpPyh0PWUsZT1bIioiXSk6ZT1lLnNwbGl0KCIg
Iik7dmFyIG4scj0wLGk9ZS5sZW5ndGg7Zm9yKDtpPnI7cisrKW49ZVtyXSxRbltu
XT1RbltuXXx8W10sUW5bbl0udW5zaGlmdCh0KX0scHJlZmlsdGVyOmZ1bmN0aW9u
KGUsdCl7dD9Hbi51bnNoaWZ0KGUpOkduLnB1c2goZSl9fSk7ZnVuY3Rpb24gbnIo
ZSx0LG4pe3ZhciByLGksbyxhLHMsbCx1PXRoaXMsYz17fSxwPWUuc3R5bGUsZj1l
Lm5vZGVUeXBlJiZubihlKSxkPXguX2RhdGEoZSwiZnhzaG93Iik7bi5xdWV1ZXx8
KHM9eC5fcXVldWVIb29rcyhlLCJmeCIpLG51bGw9PXMudW5xdWV1ZWQmJihzLnVu
cXVldWVkPTAsbD1zLmVtcHR5LmZpcmUscy5lbXB0eS5maXJlPWZ1bmN0aW9uKCl7
cy51bnF1ZXVlZHx8bCgpfSkscy51bnF1ZXVlZCsrLHUuYWx3YXlzKGZ1bmN0aW9u
KCl7dS5hbHdheXMoZnVuY3Rpb24oKXtzLnVucXVldWVkLS0seC5xdWV1ZShlLCJm
eCIpLmxlbmd0aHx8cy5lbXB0eS5maXJlKCl9KX0pKSwxPT09ZS5ub2RlVHlwZSYm
KCJoZWlnaHQiaW4gdHx8IndpZHRoImluIHQpJiYobi5vdmVyZmxvdz1bcC5vdmVy
ZmxvdyxwLm92ZXJmbG93WCxwLm92ZXJmbG93WV0sImlubGluZSI9PT14LmNzcyhl
LCJkaXNwbGF5IikmJiJub25lIj09PXguY3NzKGUsImZsb2F0IikmJih4LnN1cHBv
cnQuaW5saW5lQmxvY2tOZWVkc0xheW91dCYmImlubGluZSIhPT1sbihlLm5vZGVO
YW1lKT9wLnpvb209MTpwLmRpc3BsYXk9ImlubGluZS1ibG9jayIpKSxuLm92ZXJm
bG93JiYocC5vdmVyZmxvdz0iaGlkZGVuIix4LnN1cHBvcnQuc2hyaW5rV3JhcEJs
b2Nrc3x8dS5hbHdheXMoZnVuY3Rpb24oKXtwLm92ZXJmbG93PW4ub3ZlcmZsb3db
MF0scC5vdmVyZmxvd1g9bi5vdmVyZmxvd1sxXSxwLm92ZXJmbG93WT1uLm92ZXJm
bG93WzJdfSkpO2ZvcihyIGluIHQpaWYoaT10W3JdLFZuLmV4ZWMoaSkpe2lmKGRl
bGV0ZSB0W3JdLG89b3x8InRvZ2dsZSI9PT1pLGk9PT0oZj8iaGlkZSI6InNob3ci
KSljb250aW51ZTtjW3JdPWQmJmRbcl18fHguc3R5bGUoZSxyKX1pZigheC5pc0Vt
cHR5T2JqZWN0KGMpKXtkPyJoaWRkZW4iaW4gZCYmKGY9ZC5oaWRkZW4pOmQ9eC5f
ZGF0YShlLCJmeHNob3ciLHt9KSxvJiYoZC5oaWRkZW49IWYpLGY/eChlKS5zaG93
KCk6dS5kb25lKGZ1bmN0aW9uKCl7eChlKS5oaWRlKCl9KSx1LmRvbmUoZnVuY3Rp
b24oKXt2YXIgdDt4Ll9yZW1vdmVEYXRhKGUsImZ4c2hvdyIpO2Zvcih0IGluIGMp
eC5zdHlsZShlLHQsY1t0XSl9KTtmb3IociBpbiBjKWE9Wm4oZj9kW3JdOjAscix1
KSxyIGluIGR8fChkW3JdPWEuc3RhcnQsZiYmKGEuZW5kPWEuc3RhcnQsYS5zdGFy
dD0id2lkdGgiPT09cnx8ImhlaWdodCI9PT1yPzE6MCkpfX1mdW5jdGlvbiBycihl
LHQsbixyLGkpe3JldHVybiBuZXcgcnIucHJvdG90eXBlLmluaXQoZSx0LG4scixp
KX14LlR3ZWVuPXJyLHJyLnByb3RvdHlwZT17Y29uc3RydWN0b3I6cnIsaW5pdDpm
dW5jdGlvbihlLHQsbixyLGksbyl7dGhpcy5lbGVtPWUsdGhpcy5wcm9wPW4sdGhp
cy5lYXNpbmc9aXx8InN3aW5nIix0aGlzLm9wdGlvbnM9dCx0aGlzLnN0YXJ0PXRo
aXMubm93PXRoaXMuY3VyKCksdGhpcy5lbmQ9cix0aGlzLnVuaXQ9b3x8KHguY3Nz
TnVtYmVyW25dPyIiOiJweCIpfSxjdXI6ZnVuY3Rpb24oKXt2YXIgZT1yci5wcm9w
SG9va3NbdGhpcy5wcm9wXTtyZXR1cm4gZSYmZS5nZXQ/ZS5nZXQodGhpcyk6cnIu
cHJvcEhvb2tzLl9kZWZhdWx0LmdldCh0aGlzKX0scnVuOmZ1bmN0aW9uKGUpe3Zh
ciB0LG49cnIucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIHRoaXMucG9zPXQ9
dGhpcy5vcHRpb25zLmR1cmF0aW9uP3guZWFzaW5nW3RoaXMuZWFzaW5nXShlLHRo
aXMub3B0aW9ucy5kdXJhdGlvbiplLDAsMSx0aGlzLm9wdGlvbnMuZHVyYXRpb24p
OmUsdGhpcy5ub3c9KHRoaXMuZW5kLXRoaXMuc3RhcnQpKnQrdGhpcy5zdGFydCx0
aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVs
ZW0sdGhpcy5ub3csdGhpcyksbiYmbi5zZXQ/bi5zZXQodGhpcyk6cnIucHJvcEhv
b2tzLl9kZWZhdWx0LnNldCh0aGlzKSx0aGlzfX0scnIucHJvdG90eXBlLmluaXQu
cHJvdG90eXBlPXJyLnByb3RvdHlwZSxyci5wcm9wSG9va3M9e19kZWZhdWx0Ontn
ZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIG51bGw9PWUuZWxlbVtlLnByb3Bd
fHxlLmVsZW0uc3R5bGUmJm51bGwhPWUuZWxlbS5zdHlsZVtlLnByb3BdPyh0PXgu
Y3NzKGUuZWxlbSxlLnByb3AsIiIpLHQmJiJhdXRvIiE9PXQ/dDowKTplLmVsZW1b
ZS5wcm9wXX0sc2V0OmZ1bmN0aW9uKGUpe3guZnguc3RlcFtlLnByb3BdP3guZngu
c3RlcFtlLnByb3BdKGUpOmUuZWxlbS5zdHlsZSYmKG51bGwhPWUuZWxlbS5zdHls
ZVt4LmNzc1Byb3BzW2UucHJvcF1dfHx4LmNzc0hvb2tzW2UucHJvcF0pP3guc3R5
bGUoZS5lbGVtLGUucHJvcCxlLm5vdytlLnVuaXQpOmUuZWxlbVtlLnByb3BdPWUu
bm93fX19LHJyLnByb3BIb29rcy5zY3JvbGxUb3A9cnIucHJvcEhvb2tzLnNjcm9s
bExlZnQ9e3NldDpmdW5jdGlvbihlKXtlLmVsZW0ubm9kZVR5cGUmJmUuZWxlbS5w
YXJlbnROb2RlJiYoZS5lbGVtW2UucHJvcF09ZS5ub3cpfX0seC5lYWNoKFsidG9n
Z2xlIiwic2hvdyIsImhpZGUiXSxmdW5jdGlvbihlLHQpe3ZhciBuPXguZm5bdF07
eC5mblt0XT1mdW5jdGlvbihlLHIsaSl7cmV0dXJuIG51bGw9PWV8fCJib29sZWFu
Ij09dHlwZW9mIGU/bi5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dGhpcy5hbmltYXRl
KGlyKHQsITApLGUscixpKX19KSx4LmZuLmV4dGVuZCh7ZmFkZVRvOmZ1bmN0aW9u
KGUsdCxuLHIpe3JldHVybiB0aGlzLmZpbHRlcihubikuY3NzKCJvcGFjaXR5Iiww
KS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7b3BhY2l0eTp0fSxlLG4scil9LGFuaW1h
dGU6ZnVuY3Rpb24oZSx0LG4scil7dmFyIGk9eC5pc0VtcHR5T2JqZWN0KGUpLG89
eC5zcGVlZCh0LG4sciksYT1mdW5jdGlvbigpe3ZhciB0PWVyKHRoaXMseC5leHRl
bmQoe30sZSksbyk7KGl8fHguX2RhdGEodGhpcywiZmluaXNoIikpJiZ0LnN0b3Ao
ITApfTtyZXR1cm4gYS5maW5pc2g9YSxpfHxvLnF1ZXVlPT09ITE/dGhpcy5lYWNo
KGEpOnRoaXMucXVldWUoby5xdWV1ZSxhKX0sc3RvcDpmdW5jdGlvbihlLG4scil7
dmFyIGk9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zdG9wO2RlbGV0ZSBlLnN0b3AsdChy
KX07cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlJiYocj1uLG49ZSxlPXQpLG4mJmUh
PT0hMSYmdGhpcy5xdWV1ZShlfHwiZngiLFtdKSx0aGlzLmVhY2goZnVuY3Rpb24o
KXt2YXIgdD0hMCxuPW51bGwhPWUmJmUrInF1ZXVlSG9va3MiLG89eC50aW1lcnMs
YT14Ll9kYXRhKHRoaXMpO2lmKG4pYVtuXSYmYVtuXS5zdG9wJiZpKGFbbl0pO2Vs
c2UgZm9yKG4gaW4gYSlhW25dJiZhW25dLnN0b3AmJkpuLnRlc3QobikmJmkoYVtu
XSk7Zm9yKG49by5sZW5ndGg7bi0tOylvW25dLmVsZW0hPT10aGlzfHxudWxsIT1l
JiZvW25dLnF1ZXVlIT09ZXx8KG9bbl0uYW5pbS5zdG9wKHIpLHQ9ITEsby5zcGxp
Y2UobiwxKSk7KHR8fCFyKSYmeC5kZXF1ZXVlKHRoaXMsZSl9KX0sZmluaXNoOmZ1
bmN0aW9uKGUpe3JldHVybiBlIT09ITEmJihlPWV8fCJmeCIpLHRoaXMuZWFjaChm
dW5jdGlvbigpe3ZhciB0LG49eC5fZGF0YSh0aGlzKSxyPW5bZSsicXVldWUiXSxp
PW5bZSsicXVldWVIb29rcyJdLG89eC50aW1lcnMsYT1yP3IubGVuZ3RoOjA7Zm9y
KG4uZmluaXNoPSEwLHgucXVldWUodGhpcyxlLFtdKSxpJiZpLnN0b3AmJmkuc3Rv
cC5jYWxsKHRoaXMsITApLHQ9by5sZW5ndGg7dC0tOylvW3RdLmVsZW09PT10aGlz
JiZvW3RdLnF1ZXVlPT09ZSYmKG9bdF0uYW5pbS5zdG9wKCEwKSxvLnNwbGljZSh0
LDEpKTtmb3IodD0wO2E+dDt0Kyspclt0XSYmclt0XS5maW5pc2gmJnJbdF0uZmlu
aXNoLmNhbGwodGhpcyk7ZGVsZXRlIG4uZmluaXNofSl9fSk7ZnVuY3Rpb24gaXIo
ZSx0KXt2YXIgbixyPXtoZWlnaHQ6ZX0saT0wO2Zvcih0PXQ/MTowOzQ+aTtpKz0y
LXQpbj1adFtpXSxyWyJtYXJnaW4iK25dPXJbInBhZGRpbmciK25dPWU7cmV0dXJu
IHQmJihyLm9wYWNpdHk9ci53aWR0aD1lKSxyfXguZWFjaCh7c2xpZGVEb3duOmly
KCJzaG93Iiksc2xpZGVVcDppcigiaGlkZSIpLHNsaWRlVG9nZ2xlOmlyKCJ0b2dn
bGUiKSxmYWRlSW46e29wYWNpdHk6InNob3cifSxmYWRlT3V0OntvcGFjaXR5OiJo
aWRlIn0sZmFkZVRvZ2dsZTp7b3BhY2l0eToidG9nZ2xlIn19LGZ1bmN0aW9uKGUs
dCl7eC5mbltlXT1mdW5jdGlvbihlLG4scil7cmV0dXJuIHRoaXMuYW5pbWF0ZSh0
LGUsbixyKX19KSx4LnNwZWVkPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1lJiYib2Jq
ZWN0Ij09dHlwZW9mIGU/eC5leHRlbmQoe30sZSk6e2NvbXBsZXRlOm58fCFuJiZ0
fHx4LmlzRnVuY3Rpb24oZSkmJmUsZHVyYXRpb246ZSxlYXNpbmc6biYmdHx8dCYm
IXguaXNGdW5jdGlvbih0KSYmdH07cmV0dXJuIHIuZHVyYXRpb249eC5meC5vZmY/
MDoibnVtYmVyIj09dHlwZW9mIHIuZHVyYXRpb24/ci5kdXJhdGlvbjpyLmR1cmF0
aW9uIGluIHguZnguc3BlZWRzP3guZnguc3BlZWRzW3IuZHVyYXRpb25dOnguZngu
c3BlZWRzLl9kZWZhdWx0LChudWxsPT1yLnF1ZXVlfHxyLnF1ZXVlPT09ITApJiYo
ci5xdWV1ZT0iZngiKSxyLm9sZD1yLmNvbXBsZXRlLHIuY29tcGxldGU9ZnVuY3Rp
b24oKXt4LmlzRnVuY3Rpb24oci5vbGQpJiZyLm9sZC5jYWxsKHRoaXMpLHIucXVl
dWUmJnguZGVxdWV1ZSh0aGlzLHIucXVldWUpfSxyfSx4LmVhc2luZz17bGluZWFy
OmZ1bmN0aW9uKGUpe3JldHVybiBlfSxzd2luZzpmdW5jdGlvbihlKXtyZXR1cm4u
NS1NYXRoLmNvcyhlKk1hdGguUEkpLzJ9fSx4LnRpbWVycz1bXSx4LmZ4PXJyLnBy
b3RvdHlwZS5pbml0LHguZngudGljaz1mdW5jdGlvbigpe3ZhciBlLG49eC50aW1l
cnMscj0wO2ZvcihYbj14Lm5vdygpO24ubGVuZ3RoPnI7cisrKWU9bltyXSxlKCl8
fG5bcl0hPT1lfHxuLnNwbGljZShyLS0sMSk7bi5sZW5ndGh8fHguZnguc3RvcCgp
LFhuPXR9LHguZngudGltZXI9ZnVuY3Rpb24oZSl7ZSgpJiZ4LnRpbWVycy5wdXNo
KGUpJiZ4LmZ4LnN0YXJ0KCl9LHguZnguaW50ZXJ2YWw9MTMseC5meC5zdGFydD1m
dW5jdGlvbigpe1VufHwoVW49c2V0SW50ZXJ2YWwoeC5meC50aWNrLHguZnguaW50
ZXJ2YWwpKX0seC5meC5zdG9wPWZ1bmN0aW9uKCl7Y2xlYXJJbnRlcnZhbChVbiks
VW49bnVsbH0seC5meC5zcGVlZHM9e3Nsb3c6NjAwLGZhc3Q6MjAwLF9kZWZhdWx0
OjQwMH0seC5meC5zdGVwPXt9LHguZXhwciYmeC5leHByLmZpbHRlcnMmJih4LmV4
cHIuZmlsdGVycy5hbmltYXRlZD1mdW5jdGlvbihlKXtyZXR1cm4geC5ncmVwKHgu
dGltZXJzLGZ1bmN0aW9uKHQpe3JldHVybiBlPT09dC5lbGVtfSkubGVuZ3RofSks
eC5mbi5vZmZzZXQ9ZnVuY3Rpb24oZSl7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1
cm4gZT09PXQ/dGhpczp0aGlzLmVhY2goZnVuY3Rpb24odCl7eC5vZmZzZXQuc2V0
T2Zmc2V0KHRoaXMsZSx0KX0pO3ZhciBuLHIsbz17dG9wOjAsbGVmdDowfSxhPXRo
aXNbMF0scz1hJiZhLm93bmVyRG9jdW1lbnQ7aWYocylyZXR1cm4gbj1zLmRvY3Vt
ZW50RWxlbWVudCx4LmNvbnRhaW5zKG4sYSk/KHR5cGVvZiBhLmdldEJvdW5kaW5n
Q2xpZW50UmVjdCE9PWkmJihvPWEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpLHI9
b3Iocykse3RvcDpvLnRvcCsoci5wYWdlWU9mZnNldHx8bi5zY3JvbGxUb3ApLShu
LmNsaWVudFRvcHx8MCksbGVmdDpvLmxlZnQrKHIucGFnZVhPZmZzZXR8fG4uc2Ny
b2xsTGVmdCktKG4uY2xpZW50TGVmdHx8MCl9KTpvfSx4Lm9mZnNldD17c2V0T2Zm
c2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj14LmNzcyhlLCJwb3NpdGlvbiIpOyJz
dGF0aWMiPT09ciYmKGUuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIik7dmFyIGk9
eChlKSxvPWkub2Zmc2V0KCksYT14LmNzcyhlLCJ0b3AiKSxzPXguY3NzKGUsImxl
ZnQiKSxsPSgiYWJzb2x1dGUiPT09cnx8ImZpeGVkIj09PXIpJiZ4LmluQXJyYXko
ImF1dG8iLFthLHNdKT4tMSx1PXt9LGM9e30scCxmO2w/KGM9aS5wb3NpdGlvbigp
LHA9Yy50b3AsZj1jLmxlZnQpOihwPXBhcnNlRmxvYXQoYSl8fDAsZj1wYXJzZUZs
b2F0KHMpfHwwKSx4LmlzRnVuY3Rpb24odCkmJih0PXQuY2FsbChlLG4sbykpLG51
bGwhPXQudG9wJiYodS50b3A9dC50b3Atby50b3ArcCksbnVsbCE9dC5sZWZ0JiYo
dS5sZWZ0PXQubGVmdC1vLmxlZnQrZiksInVzaW5nImluIHQ/dC51c2luZy5jYWxs
KGUsdSk6aS5jc3ModSl9fSx4LmZuLmV4dGVuZCh7cG9zaXRpb246ZnVuY3Rpb24o
KXtpZih0aGlzWzBdKXt2YXIgZSx0LG49e3RvcDowLGxlZnQ6MH0scj10aGlzWzBd
O3JldHVybiJmaXhlZCI9PT14LmNzcyhyLCJwb3NpdGlvbiIpP3Q9ci5nZXRCb3Vu
ZGluZ0NsaWVudFJlY3QoKTooZT10aGlzLm9mZnNldFBhcmVudCgpLHQ9dGhpcy5v
ZmZzZXQoKSx4Lm5vZGVOYW1lKGVbMF0sImh0bWwiKXx8KG49ZS5vZmZzZXQoKSks
bi50b3ArPXguY3NzKGVbMF0sImJvcmRlclRvcFdpZHRoIiwhMCksbi5sZWZ0Kz14
LmNzcyhlWzBdLCJib3JkZXJMZWZ0V2lkdGgiLCEwKSkse3RvcDp0LnRvcC1uLnRv
cC14LmNzcyhyLCJtYXJnaW5Ub3AiLCEwKSxsZWZ0OnQubGVmdC1uLmxlZnQteC5j
c3MociwibWFyZ2luTGVmdCIsITApfX19LG9mZnNldFBhcmVudDpmdW5jdGlvbigp
e3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBlPXRoaXMub2Zmc2V0UGFy
ZW50fHxzO3doaWxlKGUmJiF4Lm5vZGVOYW1lKGUsImh0bWwiKSYmInN0YXRpYyI9
PT14LmNzcyhlLCJwb3NpdGlvbiIpKWU9ZS5vZmZzZXRQYXJlbnQ7cmV0dXJuIGV8
fHN9KX19KSx4LmVhY2goe3Njcm9sbExlZnQ6InBhZ2VYT2Zmc2V0IixzY3JvbGxU
b3A6InBhZ2VZT2Zmc2V0In0sZnVuY3Rpb24oZSxuKXt2YXIgcj0vWS8udGVzdChu
KTt4LmZuW2VdPWZ1bmN0aW9uKGkpe3JldHVybiB4LmFjY2Vzcyh0aGlzLGZ1bmN0
aW9uKGUsaSxvKXt2YXIgYT1vcihlKTtyZXR1cm4gbz09PXQ/YT9uIGluIGE/YVtu
XTphLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFtpXTplW2ldOihhP2Euc2Nyb2xs
VG8ocj94KGEpLnNjcm9sbExlZnQoKTpvLHI/bzp4KGEpLnNjcm9sbFRvcCgpKTpl
W2ldPW8sdCl9LGUsaSxhcmd1bWVudHMubGVuZ3RoLG51bGwpfX0pO2Z1bmN0aW9u
IG9yKGUpe3JldHVybiB4LmlzV2luZG93KGUpP2U6OT09PWUubm9kZVR5cGU/ZS5k
ZWZhdWx0Vmlld3x8ZS5wYXJlbnRXaW5kb3c6ITF9eC5lYWNoKHtIZWlnaHQ6Imhl
aWdodCIsV2lkdGg6IndpZHRoIn0sZnVuY3Rpb24oZSxuKXt4LmVhY2goe3BhZGRp
bmc6ImlubmVyIitlLGNvbnRlbnQ6biwiIjoib3V0ZXIiK2V9LGZ1bmN0aW9uKHIs
aSl7eC5mbltpXT1mdW5jdGlvbihpLG8pe3ZhciBhPWFyZ3VtZW50cy5sZW5ndGgm
JihyfHwiYm9vbGVhbiIhPXR5cGVvZiBpKSxzPXJ8fChpPT09ITB8fG89PT0hMD8i
bWFyZ2luIjoiYm9yZGVyIik7cmV0dXJuIHguYWNjZXNzKHRoaXMsZnVuY3Rpb24o
bixyLGkpe3ZhciBvO3JldHVybiB4LmlzV2luZG93KG4pP24uZG9jdW1lbnQuZG9j
dW1lbnRFbGVtZW50WyJjbGllbnQiK2VdOjk9PT1uLm5vZGVUeXBlPyhvPW4uZG9j
dW1lbnRFbGVtZW50LE1hdGgubWF4KG4uYm9keVsic2Nyb2xsIitlXSxvWyJzY3Jv
bGwiK2VdLG4uYm9keVsib2Zmc2V0IitlXSxvWyJvZmZzZXQiK2VdLG9bImNsaWVu
dCIrZV0pKTppPT09dD94LmNzcyhuLHIscyk6eC5zdHlsZShuLHIsaSxzKX0sbixh
P2k6dCxhLG51bGwpfX0pfSkseC5mbi5zaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHRo
aXMubGVuZ3RofSx4LmZuLmFuZFNlbGY9eC5mbi5hZGRCYWNrLCJvYmplY3QiPT10
eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlLmV4
cG9ydHM/bW9kdWxlLmV4cG9ydHM9eDooZS5qUXVlcnk9ZS4kPXgsImZ1bmN0aW9u
Ij09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZCYmZGVmaW5lKCJqcXVlcnkiLFtd
LGZ1bmN0aW9uKCl7cmV0dXJuIHh9KSl9KSh3aW5kb3cpOwo7CgovKioKICogalF1
ZXJ5IE9uY2UgUGx1Z2luIHYxLjIKICogaHR0cDovL3BsdWdpbnMuanF1ZXJ5LmNv
bS9wcm9qZWN0L29uY2UKICoKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlU
IGFuZCBHUEwgbGljZW5zZXM6CiAqICAgaHR0cDovL3d3dy5vcGVuc291cmNlLm9y
Zy9saWNlbnNlcy9taXQtbGljZW5zZS5waHAKICogICBodHRwOi8vd3d3LmdudS5v
cmcvbGljZW5zZXMvZ3BsLmh0bWwKICovCgooZnVuY3Rpb24gKCQpIHsKICB2YXIg
Y2FjaGUgPSB7fSwgdXVpZCA9IDA7CgogIC8qKgogICAqIEZpbHRlcnMgZWxlbWVu
dHMgYnkgd2hldGhlciB0aGV5IGhhdmUgbm90IHlldCBiZWVuIHByb2Nlc3NlZC4K
ICAgKgogICAqIEBwYXJhbSBpZAogICAqICAgKE9wdGlvbmFsKSBJZiB0aGlzIGlz
IGEgc3RyaW5nLCB0aGVuIGl0IHdpbGwgYmUgdXNlZCBhcyB0aGUgQ1NTIGNsYXNz
CiAgICogICBuYW1lIHRoYXQgaXMgYXBwbGllZCB0byB0aGUgZWxlbWVudHMgZm9y
IGRldGVybWluaW5nIHdoZXRoZXIgaXQgaGFzCiAgICogICBhbHJlYWR5IGJlZW4g
cHJvY2Vzc2VkLiBUaGUgZWxlbWVudHMgd2lsbCBnZXQgYSBjbGFzcyBpbiB0aGUg
Zm9ybSBvZgogICAqICAgImlkLXByb2Nlc3NlZCIuCiAgICoKICAgKiAgIElmIHRo
ZSBpZCBwYXJhbWV0ZXIgaXMgYSBmdW5jdGlvbiwgaXQgd2lsbCBiZSBwYXNzZWQg
b2ZmIHRvIHRoZSBmbgogICAqICAgcGFyYW1ldGVyIGFuZCB0aGUgaWQgd2lsbCBi
ZWNvbWUgYSB1bmlxdWUgaWRlbnRpZmllciwgcmVwcmVzZW50ZWQgYXMgYQogICAq
ICAgbnVtYmVyLgogICAqCiAgICogICBXaGVuIHRoZSBpZCBpcyBuZWl0aGVyIGEg
c3RyaW5nIG9yIGEgZnVuY3Rpb24sIGl0IGJlY29tZXMgYSB1bmlxdWUKICAgKiAg
IGlkZW50aWZpZXIsIGRlcGljdGVkIGFzIGEgbnVtYmVyLiBUaGUgZWxlbWVudCdz
IGNsYXNzIHdpbGwgdGhlbiBiZQogICAqICAgcmVwcmVzZW50ZWQgaW4gdGhlIGZv
cm0gb2YgImpxdWVyeS1vbmNlLSMtcHJvY2Vzc2VkIi4KICAgKgogICAqICAgVGFr
ZSBub3RlIHRoYXQgdGhlIGlkIG11c3QgYmUgdmFsaWQgZm9yIHVzYWdlIGFzIGFu
IGVsZW1lbnQncyBjbGFzcyBuYW1lLgogICAqIEBwYXJhbSBmbgogICAqICAgKE9w
dGlvbmFsKSBJZiBnaXZlbiwgdGhpcyBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZCBm
b3IgZWFjaCBlbGVtZW50IHRoYXQKICAgKiAgIGhhcyBub3QgeWV0IGJlZW4gcHJv
Y2Vzc2VkLiBUaGUgZnVuY3Rpb24ncyByZXR1cm4gdmFsdWUgZm9sbG93cyB0aGUg
c2FtZQogICAqICAgbG9naWMgYXMgJC5lYWNoKCkuIFJldHVybmluZyB0cnVlIHdp
bGwgY29udGludWUgdG8gdGhlIG5leHQgbWF0Y2hlZAogICAqICAgZWxlbWVudCBp
biB0aGUgc2V0LCB3aGlsZSByZXR1cm5pbmcgZmFsc2Ugd2lsbCBlbnRpcmVseSBi
cmVhayB0aGUKICAgKiAgIGl0ZXJhdGlvbi4KICAgKi8KICAkLmZuLm9uY2UgPSBm
dW5jdGlvbiAoaWQsIGZuKSB7CiAgICBpZiAodHlwZW9mIGlkICE9ICdzdHJpbmcn
KSB7CiAgICAgIC8vIEdlbmVyYXRlIGEgbnVtZXJpYyBJRCBpZiB0aGUgaWQgcGFz
c2VkIGNhbid0IGJlIHVzZWQgYXMgYSBDU1MgY2xhc3MuCiAgICAgIGlmICghKGlk
IGluIGNhY2hlKSkgewogICAgICAgIGNhY2hlW2lkXSA9ICsrdXVpZDsKICAgICAg
fQogICAgICAvLyBXaGVuIHRoZSBmbiBwYXJhbWV0ZXIgaXMgbm90IHBhc3NlZCwg
d2UgaW50ZXJwcmV0IGl0IGZyb20gdGhlIGlkLgogICAgICBpZiAoIWZuKSB7CiAg
ICAgICAgZm4gPSBpZDsKICAgICAgfQogICAgICBpZCA9ICdqcXVlcnktb25jZS0n
ICsgY2FjaGVbaWRdOwogICAgfQogICAgLy8gUmVtb3ZlIGVsZW1lbnRzIGZyb20g
dGhlIHNldCB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIHByb2Nlc3NlZC4KICAgIHZh
ciBuYW1lID0gaWQgKyAnLXByb2Nlc3NlZCc7CiAgICB2YXIgZWxlbWVudHMgPSB0
aGlzLm5vdCgnLicgKyBuYW1lKS5hZGRDbGFzcyhuYW1lKTsKCiAgICByZXR1cm4g
JC5pc0Z1bmN0aW9uKGZuKSA/IGVsZW1lbnRzLmVhY2goZm4pIDogZWxlbWVudHM7
CiAgfTsKCiAgLyoqCiAgICogRmlsdGVycyBlbGVtZW50cyB0aGF0IGhhdmUgYmVl
biBwcm9jZXNzZWQgb25jZSBhbHJlYWR5LgogICAqCiAgICogQHBhcmFtIGlkCiAg
ICogICBBIHJlcXVpcmVkIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIG5hbWUgb2Yg
dGhlIGNsYXNzIHdoaWNoIHNob3VsZCBiZSB1c2VkCiAgICogICB3aGVuIGZpbHRl
cmluZyB0aGUgZWxlbWVudHMuIFRoaXMgb25seSBmaWx0ZXJzIGVsZW1lbnRzIHRo
YXQgaGF2ZSBhbHJlYWR5CiAgICogICBiZWVuIHByb2Nlc3NlZCBieSB0aGUgb25j
ZSBmdW5jdGlvbi4gVGhlIGlkIHNob3VsZCBiZSB0aGUgc2FtZSBpZCB0aGF0CiAg
ICogICB3YXMgb3JpZ2luYWxseSBwYXNzZWQgdG8gdGhlIG9uY2UoKSBmdW5jdGlv
bi4KICAgKiBAcGFyYW0gZm4KICAgKiAgIChPcHRpb25hbCkgSWYgZ2l2ZW4sIHRo
aXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgZm9yIGVhY2ggZWxlbWVudCB0aGF0
CiAgICogICBoYXMgbm90IHlldCBiZWVuIHByb2Nlc3NlZC4gVGhlIGZ1bmN0aW9u
J3MgcmV0dXJuIHZhbHVlIGZvbGxvd3MgdGhlIHNhbWUKICAgKiAgIGxvZ2ljIGFz
ICQuZWFjaCgpLiBSZXR1cm5pbmcgdHJ1ZSB3aWxsIGNvbnRpbnVlIHRvIHRoZSBu
ZXh0IG1hdGNoZWQKICAgKiAgIGVsZW1lbnQgaW4gdGhlIHNldCwgd2hpbGUgcmV0
dXJuaW5nIGZhbHNlIHdpbGwgZW50aXJlbHkgYnJlYWsgdGhlCiAgICogICBpdGVy
YXRpb24uCiAgICovCiAgJC5mbi5yZW1vdmVPbmNlID0gZnVuY3Rpb24gKGlkLCBm
bikgewogICAgdmFyIG5hbWUgPSBpZCArICctcHJvY2Vzc2VkJzsKICAgIHZhciBl
bGVtZW50cyA9IHRoaXMuZmlsdGVyKCcuJyArIG5hbWUpLnJlbW92ZUNsYXNzKG5h
bWUpOwoKICAgIHJldHVybiAkLmlzRnVuY3Rpb24oZm4pID8gZWxlbWVudHMuZWFj
aChmbikgOiBlbGVtZW50czsKICB9Owp9KShqUXVlcnkpOwo7Cgp2YXIgRHJ1cGFs
ID0gRHJ1cGFsIHx8IHsgJ3NldHRpbmdzJzoge30sICdiZWhhdmlvcnMnOiB7fSwg
J2xvY2FsZSc6IHt9IH07CgovLyBBbGxvdyBvdGhlciBKYXZhU2NyaXB0IGxpYnJh
cmllcyB0byB1c2UgJC4KalF1ZXJ5Lm5vQ29uZmxpY3QoKTsKCihmdW5jdGlvbiAo
JCkgewoKLyoqCiAqIE92ZXJyaWRlIGpRdWVyeS5mbi5pbml0IHRvIGd1YXJkIGFn
YWluc3QgWFNTIGF0dGFja3MuCiAqCiAqIFNlZSBodHRwOi8vYnVncy5qcXVlcnku
Y29tL3RpY2tldC85NTIxCiAqLwp2YXIganF1ZXJ5X2luaXQgPSAkLmZuLmluaXQ7
CiQuZm4uaW5pdCA9IGZ1bmN0aW9uIChzZWxlY3RvciwgY29udGV4dCwgcm9vdGpR
dWVyeSkgewogIC8vIElmIHRoZSBzdHJpbmcgY29udGFpbnMgYSAiIyIgYmVmb3Jl
IGEgIjwiLCB0cmVhdCBpdCBhcyBpbnZhbGlkIEhUTUwuCiAgaWYgKHNlbGVjdG9y
ICYmIHR5cGVvZiBzZWxlY3RvciA9PT0gJ3N0cmluZycpIHsKICAgIHZhciBoYXNo
X3Bvc2l0aW9uID0gc2VsZWN0b3IuaW5kZXhPZignIycpOwogICAgaWYgKGhhc2hf
cG9zaXRpb24gPj0gMCkgewogICAgICB2YXIgYnJhY2tldF9wb3NpdGlvbiA9IHNl
bGVjdG9yLmluZGV4T2YoJzwnKTsKICAgICAgaWYgKGJyYWNrZXRfcG9zaXRpb24g
PiBoYXNoX3Bvc2l0aW9uKSB7CiAgICAgICAgdGhyb3cgJ1N5bnRheCBlcnJvciwg
dW5yZWNvZ25pemVkIGV4cHJlc3Npb246ICcgKyBzZWxlY3RvcjsKICAgICAgfQog
ICAgfQogIH0KICByZXR1cm4ganF1ZXJ5X2luaXQuY2FsbCh0aGlzLCBzZWxlY3Rv
ciwgY29udGV4dCwgcm9vdGpRdWVyeSk7Cn07CiQuZm4uaW5pdC5wcm90b3R5cGUg
PSBqcXVlcnlfaW5pdC5wcm90b3R5cGU7CgovKioKICogQXR0YWNoIGFsbCByZWdp
c3RlcmVkIGJlaGF2aW9ycyB0byBhIHBhZ2UgZWxlbWVudC4KICoKICogQmVoYXZp
b3JzIGFyZSBldmVudC10cmlnZ2VyZWQgYWN0aW9ucyB0aGF0IGF0dGFjaCB0byBw
YWdlIGVsZW1lbnRzLCBlbmhhbmNpbmcKICogZGVmYXVsdCBub24tSmF2YVNjcmlw
dCBVSXMuIEJlaGF2aW9ycyBhcmUgcmVnaXN0ZXJlZCBpbiB0aGUgRHJ1cGFsLmJl
aGF2aW9ycwogKiBvYmplY3QgdXNpbmcgdGhlIG1ldGhvZCAnYXR0YWNoJyBhbmQg
b3B0aW9uYWxseSBhbHNvICdkZXRhY2gnIGFzIGZvbGxvd3M6CiAqIEBjb2RlCiAq
ICAgIERydXBhbC5iZWhhdmlvcnMuYmVoYXZpb3JOYW1lID0gewogKiAgICAgIGF0
dGFjaDogZnVuY3Rpb24gKGNvbnRleHQsIHNldHRpbmdzKSB7CiAqICAgICAgICAu
Li4KICogICAgICB9LAogKiAgICAgIGRldGFjaDogZnVuY3Rpb24gKGNvbnRleHQs
IHNldHRpbmdzLCB0cmlnZ2VyKSB7CiAqICAgICAgICAuLi4KICogICAgICB9CiAq
ICAgIH07CiAqIEBlbmRjb2RlCiAqCiAqIERydXBhbC5hdHRhY2hCZWhhdmlvcnMg
aXMgYWRkZWQgYmVsb3cgdG8gdGhlIGpRdWVyeSByZWFkeSBldmVudCBhbmQgc28K
ICogcnVucyBvbiBpbml0aWFsIHBhZ2UgbG9hZC4gRGV2ZWxvcGVycyBpbXBsZW1l
bnRpbmcgQUhBSC9BamF4IGluIHRoZWlyCiAqIHNvbHV0aW9ucyBzaG91bGQgYWxz
byBjYWxsIHRoaXMgZnVuY3Rpb24gYWZ0ZXIgbmV3IHBhZ2UgY29udGVudCBoYXMg
YmVlbgogKiBsb2FkZWQsIGZlZWRpbmcgaW4gYW4gZWxlbWVudCB0byBiZSBwcm9j
ZXNzZWQsIGluIG9yZGVyIHRvIGF0dGFjaCBhbGwKICogYmVoYXZpb3JzIHRvIHRo
ZSBuZXcgY29udGVudC4KICoKICogQmVoYXZpb3JzIHNob3VsZCB1c2UKICogQGNv
ZGUKICogICAkKHNlbGVjdG9yKS5vbmNlKCdiZWhhdmlvci1uYW1lJywgZnVuY3Rp
b24gKCkgewogKiAgICAgLi4uCiAqICAgfSk7CiAqIEBlbmRjb2RlCiAqIHRvIGVu
c3VyZSB0aGUgYmVoYXZpb3IgaXMgYXR0YWNoZWQgb25seSBvbmNlIHRvIGEgZ2l2
ZW4gZWxlbWVudC4gKERvaW5nIHNvCiAqIGVuYWJsZXMgdGhlIHJlcHJvY2Vzc2lu
ZyBvZiBnaXZlbiBlbGVtZW50cywgd2hpY2ggbWF5IGJlIG5lZWRlZCBvbiBvY2Nh
c2lvbgogKiBkZXNwaXRlIHRoZSBhYmlsaXR5IHRvIGxpbWl0IGJlaGF2aW9yIGF0
dGFjaG1lbnQgdG8gYSBwYXJ0aWN1bGFyIGVsZW1lbnQuKQogKgogKiBAcGFyYW0g
Y29udGV4dAogKiAgIEFuIGVsZW1lbnQgdG8gYXR0YWNoIGJlaGF2aW9ycyB0by4g
SWYgbm9uZSBpcyBnaXZlbiwgdGhlIGRvY3VtZW50IGVsZW1lbnQKICogICBpcyB1
c2VkLgogKiBAcGFyYW0gc2V0dGluZ3MKICogICBBbiBvYmplY3QgY29udGFpbmlu
ZyBzZXR0aW5ncyBmb3IgdGhlIGN1cnJlbnQgY29udGV4dC4gSWYgbm9uZSBnaXZl
biwgdGhlCiAqICAgZ2xvYmFsIERydXBhbC5zZXR0aW5ncyBvYmplY3QgaXMgdXNl
ZC4KICovCkRydXBhbC5hdHRhY2hCZWhhdmlvcnMgPSBmdW5jdGlvbiAoY29udGV4
dCwgc2V0dGluZ3MpIHsKICBjb250ZXh0ID0gY29udGV4dCB8fCBkb2N1bWVudDsK
ICBzZXR0aW5ncyA9IHNldHRpbmdzIHx8IERydXBhbC5zZXR0aW5nczsKICAvLyBF
eGVjdXRlIGFsbCBvZiB0aGVtLgogICQuZWFjaChEcnVwYWwuYmVoYXZpb3JzLCBm
dW5jdGlvbiAoKSB7CiAgICBpZiAoJC5pc0Z1bmN0aW9uKHRoaXMuYXR0YWNoKSkg
ewogICAgICB0aGlzLmF0dGFjaChjb250ZXh0LCBzZXR0aW5ncyk7CiAgICB9CiAg
fSk7Cn07CgovKioKICogRGV0YWNoIHJlZ2lzdGVyZWQgYmVoYXZpb3JzIGZyb20g
YSBwYWdlIGVsZW1lbnQuCiAqCiAqIERldmVsb3BlcnMgaW1wbGVtZW50aW5nIEFI
QUgvQWpheCBpbiB0aGVpciBzb2x1dGlvbnMgc2hvdWxkIGNhbGwgdGhpcwogKiBm
dW5jdGlvbiBiZWZvcmUgcGFnZSBjb250ZW50IGlzIGFib3V0IHRvIGJlIHJlbW92
ZWQsIGZlZWRpbmcgaW4gYW4gZWxlbWVudAogKiB0byBiZSBwcm9jZXNzZWQsIGlu
IG9yZGVyIHRvIGFsbG93IHNwZWNpYWwgYmVoYXZpb3JzIHRvIGRldGFjaCBmcm9t
IHRoZQogKiBjb250ZW50LgogKgogKiBTdWNoIGltcGxlbWVudGF0aW9ucyBzaG91
bGQgbG9vayBmb3IgdGhlIGNsYXNzIG5hbWUgdGhhdCB3YXMgYWRkZWQgaW4gdGhl
aXIKICogY29ycmVzcG9uZGluZyBEcnVwYWwuYmVoYXZpb3JzLmJlaGF2aW9yTmFt
ZS5hdHRhY2ggaW1wbGVtZW50YXRpb24sIGkuZS4KICogYmVoYXZpb3JOYW1lLXBy
b2Nlc3NlZCwgdG8gZW5zdXJlIHRoZSBiZWhhdmlvciBpcyBkZXRhY2hlZCBvbmx5
IGZyb20KICogcHJldmlvdXNseSBwcm9jZXNzZWQgZWxlbWVudHMuCiAqCiAqIEBw
YXJhbSBjb250ZXh0CiAqICAgQW4gZWxlbWVudCB0byBkZXRhY2ggYmVoYXZpb3Jz
IGZyb20uIElmIG5vbmUgaXMgZ2l2ZW4sIHRoZSBkb2N1bWVudCBlbGVtZW50CiAq
ICAgaXMgdXNlZC4KICogQHBhcmFtIHNldHRpbmdzCiAqICAgQW4gb2JqZWN0IGNv
bnRhaW5pbmcgc2V0dGluZ3MgZm9yIHRoZSBjdXJyZW50IGNvbnRleHQuIElmIG5v
bmUgZ2l2ZW4sIHRoZQogKiAgIGdsb2JhbCBEcnVwYWwuc2V0dGluZ3Mgb2JqZWN0
IGlzIHVzZWQuCiAqIEBwYXJhbSB0cmlnZ2VyCiAqICAgQSBzdHJpbmcgY29udGFp
bmluZyB3aGF0J3MgY2F1c2luZyB0aGUgYmVoYXZpb3JzIHRvIGJlIGRldGFjaGVk
LiBUaGUKICogICBwb3NzaWJsZSB0cmlnZ2VycyBhcmU6CiAqICAgLSB1bmxvYWQ6
IChkZWZhdWx0KSBUaGUgY29udGV4dCBlbGVtZW50IGlzIGJlaW5nIHJlbW92ZWQg
ZnJvbSB0aGUgRE9NLgogKiAgIC0gbW92ZTogVGhlIGVsZW1lbnQgaXMgYWJvdXQg
dG8gYmUgbW92ZWQgd2l0aGluIHRoZSBET00gKGZvciBleGFtcGxlLAogKiAgICAg
ZHVyaW5nIGEgdGFibGVkcmFnIHJvdyBzd2FwKS4gQWZ0ZXIgdGhlIG1vdmUgaXMg
Y29tcGxldGVkLAogKiAgICAgRHJ1cGFsLmF0dGFjaEJlaGF2aW9ycygpIGlzIGNh
bGxlZCwgc28gdGhhdCB0aGUgYmVoYXZpb3IgY2FuIHVuZG8KICogICAgIHdoYXRl
dmVyIGl0IGRpZCBpbiByZXNwb25zZSB0byB0aGUgbW92ZS4gTWFueSBiZWhhdmlv
cnMgd29uJ3QgbmVlZCB0bwogKiAgICAgZG8gYW55dGhpbmcgc2ltcGx5IGluIHJl
c3BvbnNlIHRvIHRoZSBlbGVtZW50IGJlaW5nIG1vdmVkLCBidXQgYmVjYXVzZQog
KiAgICAgSUZSQU1FIGVsZW1lbnRzIHJlbG9hZCB0aGVpciAic3JjIiB3aGVuIGJl
aW5nIG1vdmVkIHdpdGhpbiB0aGUgRE9NLAogKiAgICAgYmVoYXZpb3JzIGJvdW5k
IHRvIElGUkFNRSBlbGVtZW50cyAobGlrZSBXWVNJV1lHIGVkaXRvcnMpIG1heSBu
ZWVkIHRvCiAqICAgICB0YWtlIHNvbWUgYWN0aW9uLgogKiAgIC0gc2VyaWFsaXpl
OiBXaGVuIGFuIEFqYXggZm9ybSBpcyBzdWJtaXR0ZWQsIHRoaXMgaXMgY2FsbGVk
IHdpdGggdGhlCiAqICAgICBmb3JtIGFzIHRoZSBjb250ZXh0LiBUaGlzIHByb3Zp
ZGVzIGV2ZXJ5IGJlaGF2aW9yIHdpdGhpbiB0aGUgZm9ybSBhbgogKiAgICAgb3Bw
b3J0dW5pdHkgdG8gZW5zdXJlIHRoYXQgdGhlIGZpZWxkIGVsZW1lbnRzIGhhdmUg
Y29ycmVjdCBjb250ZW50CiAqICAgICBpbiB0aGVtIGJlZm9yZSB0aGUgZm9ybSBp
cyBzZXJpYWxpemVkLiBUaGUgY2Fub25pY2FsIHVzZS1jYXNlIGlzIHNvCiAqICAg
ICB0aGF0IFdZU0lXWUcgZWRpdG9ycyBjYW4gdXBkYXRlIHRoZSBoaWRkZW4gdGV4
dGFyZWEgdG8gd2hpY2ggdGhleSBhcmUKICogICAgIGJvdW5kLgogKgogKiBAc2Vl
IERydXBhbC5hdHRhY2hCZWhhdmlvcnMKICovCkRydXBhbC5kZXRhY2hCZWhhdmlv
cnMgPSBmdW5jdGlvbiAoY29udGV4dCwgc2V0dGluZ3MsIHRyaWdnZXIpIHsKICBj
b250ZXh0ID0gY29udGV4dCB8fCBkb2N1bWVudDsKICBzZXR0aW5ncyA9IHNldHRp
bmdzIHx8IERydXBhbC5zZXR0aW5nczsKICB0cmlnZ2VyID0gdHJpZ2dlciB8fCAn
dW5sb2FkJzsKICAvLyBFeGVjdXRlIGFsbCBvZiB0aGVtLgogICQuZWFjaChEcnVw
YWwuYmVoYXZpb3JzLCBmdW5jdGlvbiAoKSB7CiAgICBpZiAoJC5pc0Z1bmN0aW9u
KHRoaXMuZGV0YWNoKSkgewogICAgICB0aGlzLmRldGFjaChjb250ZXh0LCBzZXR0
aW5ncywgdHJpZ2dlcik7CiAgICB9CiAgfSk7Cn07CgovKioKICogRW5jb2RlIHNw
ZWNpYWwgY2hhcmFjdGVycyBpbiBhIHBsYWluLXRleHQgc3RyaW5nIGZvciBkaXNw
bGF5IGFzIEhUTUwuCiAqCiAqIEBpbmdyb3VwIHNhbml0aXphdGlvbgogKi8KRHJ1
cGFsLmNoZWNrUGxhaW4gPSBmdW5jdGlvbiAoc3RyKSB7CiAgdmFyIGNoYXJhY3Rl
ciwgcmVnZXgsCiAgICAgIHJlcGxhY2UgPSB7ICcmJzogJyZhbXA7JywgJyInOiAn
JnF1b3Q7JywgJzwnOiAnJmx0OycsICc+JzogJyZndDsnIH07CiAgc3RyID0gU3Ry
aW5nKHN0cik7CiAgZm9yIChjaGFyYWN0ZXIgaW4gcmVwbGFjZSkgewogICAgaWYg
KHJlcGxhY2UuaGFzT3duUHJvcGVydHkoY2hhcmFjdGVyKSkgewogICAgICByZWdl
eCA9IG5ldyBSZWdFeHAoY2hhcmFjdGVyLCAnZycpOwogICAgICBzdHIgPSBzdHIu
cmVwbGFjZShyZWdleCwgcmVwbGFjZVtjaGFyYWN0ZXJdKTsKICAgIH0KICB9CiAg
cmV0dXJuIHN0cjsKfTsKCi8qKgogKiBSZXBsYWNlIHBsYWNlaG9sZGVycyB3aXRo
IHNhbml0aXplZCB2YWx1ZXMgaW4gYSBzdHJpbmcuCiAqCiAqIEBwYXJhbSBzdHIK
ICogICBBIHN0cmluZyB3aXRoIHBsYWNlaG9sZGVycy4KICogQHBhcmFtIGFyZ3MK
ICogICBBbiBvYmplY3Qgb2YgcmVwbGFjZW1lbnRzIHBhaXJzIHRvIG1ha2UuIElu
Y2lkZW5jZXMgb2YgYW55IGtleSBpbiB0aGlzCiAqICAgYXJyYXkgYXJlIHJlcGxh
Y2VkIHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgdmFsdWUuIEJhc2VkIG9uIHRoZSBm
aXJzdAogKiAgIGNoYXJhY3RlciBvZiB0aGUga2V5LCB0aGUgdmFsdWUgaXMgZXNj
YXBlZCBhbmQvb3IgdGhlbWVkOgogKiAgICAtICF2YXJpYWJsZTogaW5zZXJ0ZWQg
YXMgaXMKICogICAgLSBAdmFyaWFibGU6IGVzY2FwZSBwbGFpbiB0ZXh0IHRvIEhU
TUwgKERydXBhbC5jaGVja1BsYWluKQogKiAgICAtICV2YXJpYWJsZTogZXNjYXBl
IHRleHQgYW5kIHRoZW1lIGFzIGEgcGxhY2Vob2xkZXIgZm9yIHVzZXItc3VibWl0
dGVkCiAqICAgICAgY29udGVudCAoY2hlY2tQbGFpbiArIERydXBhbC50aGVtZSgn
cGxhY2Vob2xkZXInKSkKICoKICogQHNlZSBEcnVwYWwudCgpCiAqIEBpbmdyb3Vw
IHNhbml0aXphdGlvbgogKi8KRHJ1cGFsLmZvcm1hdFN0cmluZyA9IGZ1bmN0aW9u
KHN0ciwgYXJncykgewogIC8vIFRyYW5zZm9ybSBhcmd1bWVudHMgYmVmb3JlIGlu
c2VydGluZyB0aGVtLgogIGZvciAodmFyIGtleSBpbiBhcmdzKSB7CiAgICBzd2l0
Y2ggKGtleS5jaGFyQXQoMCkpIHsKICAgICAgLy8gRXNjYXBlZCBvbmx5LgogICAg
ICBjYXNlICdAJzoKICAgICAgICBhcmdzW2tleV0gPSBEcnVwYWwuY2hlY2tQbGFp
bihhcmdzW2tleV0pOwogICAgICBicmVhazsKICAgICAgLy8gUGFzcy10aHJvdWdo
LgogICAgICBjYXNlICchJzoKICAgICAgICBicmVhazsKICAgICAgLy8gRXNjYXBl
ZCBhbmQgcGxhY2Vob2xkZXIuCiAgICAgIGNhc2UgJyUnOgogICAgICBkZWZhdWx0
OgogICAgICAgIGFyZ3Nba2V5XSA9IERydXBhbC50aGVtZSgncGxhY2Vob2xkZXIn
LCBhcmdzW2tleV0pOwogICAgICAgIGJyZWFrOwogICAgfQogICAgc3RyID0gc3Ry
LnJlcGxhY2Uoa2V5LCBhcmdzW2tleV0pOwogIH0KICByZXR1cm4gc3RyOwp9OwoK
LyoqCiAqIFRyYW5zbGF0ZSBzdHJpbmdzIHRvIHRoZSBwYWdlIGxhbmd1YWdlIG9y
IGEgZ2l2ZW4gbGFuZ3VhZ2UuCiAqCiAqIFNlZSB0aGUgZG9jdW1lbnRhdGlvbiBv
ZiB0aGUgc2VydmVyLXNpZGUgdCgpIGZ1bmN0aW9uIGZvciBmdXJ0aGVyIGRldGFp
bHMuCiAqCiAqIEBwYXJhbSBzdHIKICogICBBIHN0cmluZyBjb250YWluaW5nIHRo
ZSBFbmdsaXNoIHN0cmluZyB0byB0cmFuc2xhdGUuCiAqIEBwYXJhbSBhcmdzCiAq
ICAgQW4gb2JqZWN0IG9mIHJlcGxhY2VtZW50cyBwYWlycyB0byBtYWtlIGFmdGVy
IHRyYW5zbGF0aW9uLiBJbmNpZGVuY2VzCiAqICAgb2YgYW55IGtleSBpbiB0aGlz
IGFycmF5IGFyZSByZXBsYWNlZCB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHZhbHVl
LgogKiAgIFNlZSBEcnVwYWwuZm9ybWF0U3RyaW5nKCkuCiAqCiAqIEBwYXJhbSBv
cHRpb25zCiAqICAgLSAnY29udGV4dCcgKGRlZmF1bHRzIHRvIHRoZSBlbXB0eSBj
b250ZXh0KTogVGhlIGNvbnRleHQgdGhlIHNvdXJjZSBzdHJpbmcKICogICAgIGJl
bG9uZ3MgdG8uCiAqCiAqIEByZXR1cm4KICogICBUaGUgdHJhbnNsYXRlZCBzdHJp
bmcuCiAqLwpEcnVwYWwudCA9IGZ1bmN0aW9uIChzdHIsIGFyZ3MsIG9wdGlvbnMp
IHsKICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKICBvcHRpb25zLmNvbnRleHQg
PSBvcHRpb25zLmNvbnRleHQgfHwgJyc7CgogIC8vIEZldGNoIHRoZSBsb2NhbGl6
ZWQgdmVyc2lvbiBvZiB0aGUgc3RyaW5nLgogIGlmIChEcnVwYWwubG9jYWxlLnN0
cmluZ3MgJiYgRHJ1cGFsLmxvY2FsZS5zdHJpbmdzW29wdGlvbnMuY29udGV4dF0g
JiYgRHJ1cGFsLmxvY2FsZS5zdHJpbmdzW29wdGlvbnMuY29udGV4dF1bc3RyXSkg
ewogICAgc3RyID0gRHJ1cGFsLmxvY2FsZS5zdHJpbmdzW29wdGlvbnMuY29udGV4
dF1bc3RyXTsKICB9CgogIGlmIChhcmdzKSB7CiAgICBzdHIgPSBEcnVwYWwuZm9y
bWF0U3RyaW5nKHN0ciwgYXJncyk7CiAgfQogIHJldHVybiBzdHI7Cn07CgovKioK
ICogRm9ybWF0IGEgc3RyaW5nIGNvbnRhaW5pbmcgYSBjb3VudCBvZiBpdGVtcy4K
ICoKICogVGhpcyBmdW5jdGlvbiBlbnN1cmVzIHRoYXQgdGhlIHN0cmluZyBpcyBw
bHVyYWxpemVkIGNvcnJlY3RseS4gU2luY2UgRHJ1cGFsLnQoKSBpcwogKiBjYWxs
ZWQgYnkgdGhpcyBmdW5jdGlvbiwgbWFrZSBzdXJlIG5vdCB0byBwYXNzIGFscmVh
ZHktbG9jYWxpemVkIHN0cmluZ3MgdG8gaXQuCiAqCiAqIFNlZSB0aGUgZG9jdW1l
bnRhdGlvbiBvZiB0aGUgc2VydmVyLXNpZGUgZm9ybWF0X3BsdXJhbCgpIGZ1bmN0
aW9uIGZvciBmdXJ0aGVyIGRldGFpbHMuCiAqCiAqIEBwYXJhbSBjb3VudAogKiAg
IFRoZSBpdGVtIGNvdW50IHRvIGRpc3BsYXkuCiAqIEBwYXJhbSBzaW5ndWxhcgog
KiAgIFRoZSBzdHJpbmcgZm9yIHRoZSBzaW5ndWxhciBjYXNlLiBQbGVhc2UgbWFr
ZSBzdXJlIGl0IGlzIGNsZWFyIHRoaXMgaXMKICogICBzaW5ndWxhciwgdG8gZWFz
ZSB0cmFuc2xhdGlvbiAoZS5nLiB1c2UgIjEgbmV3IGNvbW1lbnQiIGluc3RlYWQg
b2YgIjEgbmV3IikuCiAqICAgRG8gbm90IHVzZSBAY291bnQgaW4gdGhlIHNpbmd1
bGFyIHN0cmluZy4KICogQHBhcmFtIHBsdXJhbAogKiAgIFRoZSBzdHJpbmcgZm9y
IHRoZSBwbHVyYWwgY2FzZS4gUGxlYXNlIG1ha2Ugc3VyZSBpdCBpcyBjbGVhciB0
aGlzIGlzIHBsdXJhbCwKICogICB0byBlYXNlIHRyYW5zbGF0aW9uLiBVc2UgQGNv
dW50IGluIHBsYWNlIG9mIHRoZSBpdGVtIGNvdW50LCBhcyBpbiAiQGNvdW50CiAq
ICAgbmV3IGNvbW1lbnRzIi4KICogQHBhcmFtIGFyZ3MKICogICBBbiBvYmplY3Qg
b2YgcmVwbGFjZW1lbnRzIHBhaXJzIHRvIG1ha2UgYWZ0ZXIgdHJhbnNsYXRpb24u
IEluY2lkZW5jZXMKICogICBvZiBhbnkga2V5IGluIHRoaXMgYXJyYXkgYXJlIHJl
cGxhY2VkIHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgdmFsdWUuCiAqICAgU2VlIERy
dXBhbC5mb3JtYXRTdHJpbmcoKS4KICogICBOb3RlIHRoYXQgeW91IGRvIG5vdCBu
ZWVkIHRvIGluY2x1ZGUgQGNvdW50IGluIHRoaXMgYXJyYXkuCiAqICAgVGhpcyBy
ZXBsYWNlbWVudCBpcyBkb25lIGF1dG9tYXRpY2FsbHkgZm9yIHRoZSBwbHVyYWwg
Y2FzZS4KICogQHBhcmFtIG9wdGlvbnMKICogICBUaGUgb3B0aW9ucyB0byBwYXNz
IHRvIHRoZSBEcnVwYWwudCgpIGZ1bmN0aW9uLgogKiBAcmV0dXJuCiAqICAgQSB0
cmFuc2xhdGVkIHN0cmluZy4KICovCkRydXBhbC5mb3JtYXRQbHVyYWwgPSBmdW5j
dGlvbiAoY291bnQsIHNpbmd1bGFyLCBwbHVyYWwsIGFyZ3MsIG9wdGlvbnMpIHsK
ICB2YXIgYXJncyA9IGFyZ3MgfHwge307CiAgYXJnc1snQGNvdW50J10gPSBjb3Vu
dDsKICAvLyBEZXRlcm1pbmUgdGhlIGluZGV4IG9mIHRoZSBwbHVyYWwgZm9ybS4K
ICB2YXIgaW5kZXggPSBEcnVwYWwubG9jYWxlLnBsdXJhbEZvcm11bGEgPyBEcnVw
YWwubG9jYWxlLnBsdXJhbEZvcm11bGEoYXJnc1snQGNvdW50J10pIDogKChhcmdz
WydAY291bnQnXSA9PSAxKSA/IDAgOiAxKTsKCiAgaWYgKGluZGV4ID09IDApIHsK
ICAgIHJldHVybiBEcnVwYWwudChzaW5ndWxhciwgYXJncywgb3B0aW9ucyk7CiAg
fQogIGVsc2UgaWYgKGluZGV4ID09IDEpIHsKICAgIHJldHVybiBEcnVwYWwudChw
bHVyYWwsIGFyZ3MsIG9wdGlvbnMpOwogIH0KICBlbHNlIHsKICAgIGFyZ3NbJ0Bj
b3VudFsnICsgaW5kZXggKyAnXSddID0gYXJnc1snQGNvdW50J107CiAgICBkZWxl
dGUgYXJnc1snQGNvdW50J107CiAgICByZXR1cm4gRHJ1cGFsLnQocGx1cmFsLnJl
cGxhY2UoJ0Bjb3VudCcsICdAY291bnRbJyArIGluZGV4ICsgJ10nKSwgYXJncywg
b3B0aW9ucyk7CiAgfQp9OwoKLyoqCiAqIEdlbmVyYXRlIHRoZSB0aGVtZWQgcmVw
cmVzZW50YXRpb24gb2YgYSBEcnVwYWwgb2JqZWN0LgogKgogKiBBbGwgcmVxdWVz
dHMgZm9yIHRoZW1lZCBvdXRwdXQgbXVzdCBnbyB0aHJvdWdoIHRoaXMgZnVuY3Rp
b24uIEl0IGV4YW1pbmVzCiAqIHRoZSByZXF1ZXN0IGFuZCByb3V0ZXMgaXQgdG8g
dGhlIGFwcHJvcHJpYXRlIHRoZW1lIGZ1bmN0aW9uLiBJZiB0aGUgY3VycmVudAog
KiB0aGVtZSBkb2VzIG5vdCBwcm92aWRlIGFuIG92ZXJyaWRlIGZ1bmN0aW9uLCB0
aGUgZ2VuZXJpYyB0aGVtZSBmdW5jdGlvbiBpcwogKiBjYWxsZWQuCiAqCiAqIEZv
ciBleGFtcGxlLCB0byByZXRyaWV2ZSB0aGUgSFRNTCBmb3IgdGV4dCB0aGF0IHNo
b3VsZCBiZSBlbXBoYXNpemVkIGFuZAogKiBkaXNwbGF5ZWQgYXMgYSBwbGFjZWhv
bGRlciBpbnNpZGUgYSBzZW50ZW5jZSwgY2FsbAogKiBEcnVwYWwudGhlbWUoJ3Bs
YWNlaG9sZGVyJywgdGV4dCkuCiAqCiAqIEBwYXJhbSBmdW5jCiAqICAgVGhlIG5h
bWUgb2YgdGhlIHRoZW1lIGZ1bmN0aW9uIHRvIGNhbGwuCiAqIEBwYXJhbSAuLi4K
ICogICBBZGRpdGlvbmFsIGFyZ3VtZW50cyB0byBwYXNzIGFsb25nIHRvIHRoZSB0
aGVtZSBmdW5jdGlvbi4KICogQHJldHVybgogKiAgIEFueSBkYXRhIHRoZSB0aGVt
ZSBmdW5jdGlvbiByZXR1cm5zLiBUaGlzIGNvdWxkIGJlIGEgcGxhaW4gSFRNTCBz
dHJpbmcsCiAqICAgYnV0IGFsc28gYSBjb21wbGV4IG9iamVjdC4KICovCkRydXBh
bC50aGVtZSA9IGZ1bmN0aW9uIChmdW5jKSB7CiAgdmFyIGFyZ3MgPSBBcnJheS5w
cm90b3R5cGUuc2xpY2UuYXBwbHkoYXJndW1lbnRzLCBbMV0pOwoKICByZXR1cm4g
KERydXBhbC50aGVtZVtmdW5jXSB8fCBEcnVwYWwudGhlbWUucHJvdG90eXBlW2Z1
bmNdKS5hcHBseSh0aGlzLCBhcmdzKTsKfTsKCi8qKgogKiBGcmVlemUgdGhlIGN1
cnJlbnQgYm9keSBoZWlnaHQgKGFzIG1pbmltdW0gaGVpZ2h0KS4gVXNlZCB0byBw
cmV2ZW50CiAqIHVubmVjZXNzYXJ5IHVwd2FyZHMgc2Nyb2xsaW5nIHdoZW4gZG9p
bmcgRE9NIG1hbmlwdWxhdGlvbnMuCiAqLwpEcnVwYWwuZnJlZXplSGVpZ2h0ID0g
ZnVuY3Rpb24gKCkgewogIERydXBhbC51bmZyZWV6ZUhlaWdodCgpOwogICQoJzxk
aXYgaWQ9ImZyZWV6ZS1oZWlnaHQiPjwvZGl2PicpLmNzcyh7CiAgICBwb3NpdGlv
bjogJ2Fic29sdXRlJywKICAgIHRvcDogJzBweCcsCiAgICBsZWZ0OiAnMHB4JywK
ICAgIHdpZHRoOiAnMXB4JywKICAgIGhlaWdodDogJCgnYm9keScpLmNzcygnaGVp
Z2h0JykKICB9KS5hcHBlbmRUbygnYm9keScpOwp9OwoKLyoqCiAqIFVuZnJlZXpl
IHRoZSBib2R5IGhlaWdodC4KICovCkRydXBhbC51bmZyZWV6ZUhlaWdodCA9IGZ1
bmN0aW9uICgpIHsKICAkKCcjZnJlZXplLWhlaWdodCcpLnJlbW92ZSgpOwp9OwoK
LyoqCiAqIEVuY29kZXMgYSBEcnVwYWwgcGF0aCBmb3IgdXNlIGluIGEgVVJMLgog
KgogKiBGb3IgYWVzdGhldGljIHJlYXNvbnMgc2xhc2hlcyBhcmUgbm90IGVzY2Fw
ZWQuCiAqLwpEcnVwYWwuZW5jb2RlUGF0aCA9IGZ1bmN0aW9uIChpdGVtLCB1cmkp
IHsKICB1cmkgPSB1cmkgfHwgbG9jYXRpb24uaHJlZjsKICByZXR1cm4gZW5jb2Rl
VVJJQ29tcG9uZW50KGl0ZW0pLnJlcGxhY2UoLyUyRi9nLCAnLycpOwp9OwoKLyoq
CiAqIEdldCB0aGUgdGV4dCBzZWxlY3Rpb24gaW4gYSB0ZXh0YXJlYS4KICovCkRy
dXBhbC5nZXRTZWxlY3Rpb24gPSBmdW5jdGlvbiAoZWxlbWVudCkgewogIGlmICh0
eXBlb2YgZWxlbWVudC5zZWxlY3Rpb25TdGFydCAhPSAnbnVtYmVyJyAmJiBkb2N1
bWVudC5zZWxlY3Rpb24pIHsKICAgIC8vIFRoZSBjdXJyZW50IHNlbGVjdGlvbi4K
ICAgIHZhciByYW5nZTEgPSBkb2N1bWVudC5zZWxlY3Rpb24uY3JlYXRlUmFuZ2Uo
KTsKICAgIHZhciByYW5nZTIgPSByYW5nZTEuZHVwbGljYXRlKCk7CiAgICAvLyBT
ZWxlY3QgYWxsIHRleHQuCiAgICByYW5nZTIubW92ZVRvRWxlbWVudFRleHQoZWxl
bWVudCk7CiAgICAvLyBOb3cgbW92ZSAnZHVtbXknIGVuZCBwb2ludCB0byBlbmQg
cG9pbnQgb2Ygb3JpZ2luYWwgcmFuZ2UuCiAgICByYW5nZTIuc2V0RW5kUG9pbnQo
J0VuZFRvRW5kJywgcmFuZ2UxKTsKICAgIC8vIE5vdyB3ZSBjYW4gY2FsY3VsYXRl
IHN0YXJ0IGFuZCBlbmQgcG9pbnRzLgogICAgdmFyIHN0YXJ0ID0gcmFuZ2UyLnRl
eHQubGVuZ3RoIC0gcmFuZ2UxLnRleHQubGVuZ3RoOwogICAgdmFyIGVuZCA9IHN0
YXJ0ICsgcmFuZ2UxLnRleHQubGVuZ3RoOwogICAgcmV0dXJuIHsgJ3N0YXJ0Jzog
c3RhcnQsICdlbmQnOiBlbmQgfTsKICB9CiAgcmV0dXJuIHsgJ3N0YXJ0JzogZWxl
bWVudC5zZWxlY3Rpb25TdGFydCwgJ2VuZCc6IGVsZW1lbnQuc2VsZWN0aW9uRW5k
IH07Cn07CgovKioKICogQnVpbGQgYW4gZXJyb3IgbWVzc2FnZSBmcm9tIGFuIEFq
YXggcmVzcG9uc2UuCiAqLwpEcnVwYWwuYWpheEVycm9yID0gZnVuY3Rpb24gKHht
bGh0dHAsIHVyaSkgewogIHZhciBzdGF0dXNDb2RlLCBzdGF0dXNUZXh0LCBwYXRo
VGV4dCwgcmVzcG9uc2VUZXh0LCByZWFkeVN0YXRlVGV4dCwgbWVzc2FnZTsKICBp
ZiAoeG1saHR0cC5zdGF0dXMpIHsKICAgIHN0YXR1c0NvZGUgPSAiXG4iICsgRHJ1
cGFsLnQoIkFuIEFKQVggSFRUUCBlcnJvciBvY2N1cnJlZC4iKSArICAiXG4iICsg
RHJ1cGFsLnQoIkhUVFAgUmVzdWx0IENvZGU6ICFzdGF0dXMiLCB7JyFzdGF0dXMn
OiB4bWxodHRwLnN0YXR1c30pOwogIH0KICBlbHNlIHsKICAgIHN0YXR1c0NvZGUg
PSAiXG4iICsgRHJ1cGFsLnQoIkFuIEFKQVggSFRUUCByZXF1ZXN0IHRlcm1pbmF0
ZWQgYWJub3JtYWxseS4iKTsKICB9CiAgc3RhdHVzQ29kZSArPSAiXG4iICsgRHJ1
cGFsLnQoIkRlYnVnZ2luZyBpbmZvcm1hdGlvbiBmb2xsb3dzLiIpOwogIHBhdGhU
ZXh0ID0gIlxuIiArIERydXBhbC50KCJQYXRoOiAhdXJpIiwgeychdXJpJzogdXJp
fSApOwogIHN0YXR1c1RleHQgPSAnJzsKICAvLyBJbiBzb21lIGNhc2VzLCB3aGVu
IHN0YXR1c0NvZGUgPT0gMCwgeG1saHR0cC5zdGF0dXNUZXh0IG1heSBub3QgYmUg
ZGVmaW5lZC4KICAvLyBVbmZvcnR1bmF0ZWx5LCB0ZXN0aW5nIGZvciBpdCB3aXRo
IHR5cGVvZiwgZXRjLCBkb2Vzbid0IHNlZW0gdG8gY2F0Y2ggdGhhdAogIC8vIGFu
ZCB0aGUgdGVzdCBjYXVzZXMgYW4gZXhjZXB0aW9uLiBTbyB3ZSBuZWVkIHRvIGNh
dGNoIHRoZSBleGNlcHRpb24gaGVyZS4KICB0cnkgewogICAgc3RhdHVzVGV4dCA9
ICJcbiIgKyBEcnVwYWwudCgiU3RhdHVzVGV4dDogIXN0YXR1c1RleHQiLCB7JyFz
dGF0dXNUZXh0JzogJC50cmltKHhtbGh0dHAuc3RhdHVzVGV4dCl9KTsKICB9CiAg
Y2F0Y2ggKGUpIHt9CgogIHJlc3BvbnNlVGV4dCA9ICcnOwogIC8vIEFnYWluLCB3
ZSBkb24ndCBoYXZlIGEgd2F5IHRvIGtub3cgZm9yIHN1cmUgd2hldGhlciBhY2Nl
c3NpbmcKICAvLyB4bWxodHRwLnJlc3BvbnNlVGV4dCBpcyBnb2luZyB0byB0aHJv
dyBhbiBleGNlcHRpb24uIFNvIHdlJ2xsIGNhdGNoIGl0LgogIHRyeSB7CiAgICBy
ZXNwb25zZVRleHQgPSAiXG4iICsgRHJ1cGFsLnQoIlJlc3BvbnNlVGV4dDogIXJl
c3BvbnNlVGV4dCIsIHsnIXJlc3BvbnNlVGV4dCc6ICQudHJpbSh4bWxodHRwLnJl
c3BvbnNlVGV4dCkgfSApOwogIH0gY2F0Y2ggKGUpIHt9CgogIC8vIE1ha2UgdGhl
IHJlc3BvbnNlVGV4dCBtb3JlIHJlYWRhYmxlIGJ5IHN0cmlwcGluZyBIVE1MIHRh
Z3MgYW5kIG5ld2xpbmVzLgogIHJlc3BvbnNlVGV4dCA9IHJlc3BvbnNlVGV4dC5y
ZXBsYWNlKC88KCJbXiJdKiJ8J1teJ10qJ3xbXiciPl0pKj4vZ2ksIiIpOwogIHJl
c3BvbnNlVGV4dCA9IHJlc3BvbnNlVGV4dC5yZXBsYWNlKC9bXG5dK1xzKy9nLCJc
biIpOwoKICAvLyBXZSBkb24ndCBuZWVkIHJlYWR5U3RhdGUgZXhjZXB0IGZvciBz
dGF0dXMgPT0gMC4KICByZWFkeVN0YXRlVGV4dCA9IHhtbGh0dHAuc3RhdHVzID09
IDAgPyAoIlxuIiArIERydXBhbC50KCJSZWFkeVN0YXRlOiAhcmVhZHlTdGF0ZSIs
IHsnIXJlYWR5U3RhdGUnOiB4bWxodHRwLnJlYWR5U3RhdGV9KSkgOiAiIjsKCiAg
bWVzc2FnZSA9IHN0YXR1c0NvZGUgKyBwYXRoVGV4dCArIHN0YXR1c1RleHQgKyBy
ZXNwb25zZVRleHQgKyByZWFkeVN0YXRlVGV4dDsKICByZXR1cm4gbWVzc2FnZTsK
fTsKCi8vIENsYXNzIGluZGljYXRpbmcgdGhhdCBKUyBpcyBlbmFibGVkOyB1c2Vk
IGZvciBzdHlsaW5nIHB1cnBvc2UuCiQoJ2h0bWwnKS5hZGRDbGFzcygnanMnKTsK
Ci8vICdqcyBlbmFibGVkJyBjb29raWUuCmRvY3VtZW50LmNvb2tpZSA9ICdoYXNf
anM9MTsgcGF0aD0vJzsKCi8qKgogKiBBZGRpdGlvbnMgdG8galF1ZXJ5LnN1cHBv
cnQuCiAqLwokKGZ1bmN0aW9uICgpIHsKICAvKioKICAgKiBCb29sZWFuIGluZGlj
YXRpbmcgd2hldGhlciBvciBub3QgcG9zaXRpb246Zml4ZWQgaXMgc3VwcG9ydGVk
LgogICAqLwogIGlmIChqUXVlcnkuc3VwcG9ydC5wb3NpdGlvbkZpeGVkID09PSB1
bmRlZmluZWQpIHsKICAgIHZhciBlbCA9ICQoJzxkaXYgc3R5bGU9InBvc2l0aW9u
OmZpeGVkOyB0b3A6MTBweCIgLz4nKS5hcHBlbmRUbyhkb2N1bWVudC5ib2R5KTsK
ICAgIGpRdWVyeS5zdXBwb3J0LnBvc2l0aW9uRml4ZWQgPSBlbFswXS5vZmZzZXRU
b3AgPT09IDEwOwogICAgZWwucmVtb3ZlKCk7CiAgfQp9KTsKCi8vQXR0YWNoIGFs
bCBiZWhhdmlvcnMuCiQoZnVuY3Rpb24gKCkgewogIERydXBhbC5hdHRhY2hCZWhh
dmlvcnMoZG9jdW1lbnQsIERydXBhbC5zZXR0aW5ncyk7Cn0pOwoKLyoqCiAqIFRo
ZSBkZWZhdWx0IHRoZW1lcy4KICovCkRydXBhbC50aGVtZS5wcm90b3R5cGUgPSB7
CgogIC8qKgogICAqIEZvcm1hdHMgdGV4dCBmb3IgZW1waGFzaXplZCBkaXNwbGF5
IGluIGEgcGxhY2Vob2xkZXIgaW5zaWRlIGEgc2VudGVuY2UuCiAgICoKICAgKiBA
cGFyYW0gc3RyCiAgICogICBUaGUgdGV4dCB0byBmb3JtYXQgKHBsYWluLXRleHQp
LgogICAqIEByZXR1cm4KICAgKiAgIFRoZSBmb3JtYXR0ZWQgdGV4dCAoaHRtbCku
CiAgICovCiAgcGxhY2Vob2xkZXI6IGZ1bmN0aW9uIChzdHIpIHsKICAgIHJldHVy
biAnPGVtIGNsYXNzPSJwbGFjZWhvbGRlciI+JyArIERydXBhbC5jaGVja1BsYWlu
KHN0cikgKyAnPC9lbT4nOwogIH0KfTsKCn0pKGpRdWVyeSk7CjsK
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=js_IdFmhuP3VU0BYN8lesMhkbxoybLCpj8rNiBfBpUmYxE.js
Content-Type: application/javascript; name=js_IdFmhuP3VU0BYN8lesMhkbxoybLCpj8rNiBfBpUmYxE.js
Content-Location: http://www.websecurity.es/files/js/js_IdFmhuP3VU0BYN8lesMhkbxoybLCpj8rNiBfBpUmYxE.js
Content-Transfer-Encoding: Base64
KGZ1bmN0aW9uICgkKSB7CgpEcnVwYWwuZXh0bGluayA9IERydXBhbC5leHRsaW5r
IHx8IHt9OwoKRHJ1cGFsLmV4dGxpbmsuYXR0YWNoID0gZnVuY3Rpb24gKGNvbnRl
eHQsIHNldHRpbmdzKSB7CiAgLy8gU3RyaXAgdGhlIGhvc3QgbmFtZSBkb3duLCBy
ZW1vdmluZyBwb3J0cywgc3ViZG9tYWlucywgb3Igd3d3LgogIHZhciBwYXR0ZXJu
ID0gL14oKFteXC86XSs/XC4pKikoW15cLjpdezQsfSkoKFwuW2Etel17MSw0fSkq
KSg6WzAtOV17MSw1fSk/JC87CiAgdmFyIGhvc3QgPSB3aW5kb3cubG9jYXRpb24u
aG9zdC5yZXBsYWNlKHBhdHRlcm4sICckMyQ0Jyk7CiAgdmFyIHN1YmRvbWFpbiA9
IHdpbmRvdy5sb2NhdGlvbi5ob3N0LnJlcGxhY2UocGF0dGVybiwgJyQxJyk7Cgog
IC8vIEFKQVggcmVxdWVzdHMgbWF5IG5vdCBoYXZlIEV4dGVybmFsIExpbmsgc2V0
dGluZ3MgaW4gdGhlIHJlc3BvbnNlLgogIHNldHRpbmdzID0gKHNldHRpbmdzICYm
IHNldHRpbmdzLmV4dGxpbmspID8gc2V0dGluZ3MgOiBEcnVwYWwuc2V0dGluZ3M7
CgogIC8vIERldGVybWluZSB3aGF0IHN1YmRvbWFpbnMgYXJlIGNvbnNpZGVyZWQg
aW50ZXJuYWwuCiAgdmFyIHN1YmRvbWFpbnM7CiAgaWYgKHNldHRpbmdzLmV4dGxp
bmsuZXh0U3ViZG9tYWlucykgewogICAgc3ViZG9tYWlucyA9ICIoW14vXSpcXC4p
PyI7CiAgfQogIGVsc2UgaWYgKHN1YmRvbWFpbiA9PSAnd3d3LicgfHwgc3ViZG9t
YWluID09ICcnKSB7CiAgICBzdWJkb21haW5zID0gIih3d3dcXC4pPyI7CiAgfQog
IGVsc2UgewogICAgc3ViZG9tYWlucyA9IHN1YmRvbWFpbi5yZXBsYWNlKCIuIiwg
IlxcLiIpOwogIH0KCiAgLy8gQnVpbGQgcmVndWxhciBleHByZXNzaW9ucyB0aGF0
IGRlZmluZSBhbiBpbnRlcm5hbCBsaW5rLgogIHZhciBpbnRlcm5hbF9saW5rID0g
bmV3IFJlZ0V4cCgiXmh0dHBzPzovLyIgKyBzdWJkb21haW5zICsgaG9zdCwgImki
KTsKCiAgLy8gRXh0cmEgaW50ZXJuYWwgbGluayBtYXRjaGluZy4KICB2YXIgZXh0
SW5jbHVkZSA9IGZhbHNlOwogIGlmIChzZXR0aW5ncy5leHRsaW5rLmV4dEluY2x1
ZGUpIHsKICAgIGV4dEluY2x1ZGUgPSBuZXcgUmVnRXhwKHNldHRpbmdzLmV4dGxp
bmsuZXh0SW5jbHVkZS5yZXBsYWNlKC9cXC8sICdcXCcpLCAiaSIpOwogIH0KCiAg
Ly8gRXh0cmEgZXh0ZXJuYWwgbGluayBtYXRjaGluZy4KICB2YXIgZXh0RXhjbHVk
ZSA9IGZhbHNlOwogIGlmIChzZXR0aW5ncy5leHRsaW5rLmV4dEV4Y2x1ZGUpIHsK
ICAgIGV4dEV4Y2x1ZGUgPSBuZXcgUmVnRXhwKHNldHRpbmdzLmV4dGxpbmsuZXh0
RXhjbHVkZS5yZXBsYWNlKC9cXC8sICdcXCcpLCAiaSIpOwogIH0KCiAgLy8gRXh0
cmEgZXh0ZXJuYWwgbGluayBDU1Mgc2VsZWN0b3IgZXhjbHVzaW9uLgogIHZhciBl
eHRDc3NFeGNsdWRlID0gZmFsc2U7CiAgaWYgKHNldHRpbmdzLmV4dGxpbmsuZXh0
Q3NzRXhjbHVkZSkgewogICAgZXh0Q3NzRXhjbHVkZSA9IHNldHRpbmdzLmV4dGxp
bmsuZXh0Q3NzRXhjbHVkZTsKICB9CgogIC8vIEV4dHJhIGV4dGVybmFsIGxpbmsg
Q1NTIHNlbGVjdG9yIGV4cGxpY2l0LgogIHZhciBleHRDc3NFeHBsaWNpdCA9IGZh
bHNlOwogIGlmIChzZXR0aW5ncy5leHRsaW5rLmV4dENzc0V4cGxpY2l0KSB7CiAg
ICBleHRDc3NFeHBsaWNpdCA9IHNldHRpbmdzLmV4dGxpbmsuZXh0Q3NzRXhwbGlj
aXQ7CiAgfQoKICAvLyBGaW5kIGFsbCBsaW5rcyB3aGljaCBhcmUgTk9UIGludGVy
bmFsIGFuZCBiZWdpbiB3aXRoIGh0dHAgYXMgb3Bwb3NlZAogIC8vIHRvIGZ0cDov
LywgamF2YXNjcmlwdDosIGV0Yy4gb3RoZXIga2luZHMgb2YgbGlua3MuCiAgLy8g
V2hlbiBvcGVyYXRpbmcgb24gdGhlICd0aGlzJyB2YXJpYWJsZSwgdGhlIGhvc3Qg
aGFzIGJlZW4gYXBwZW5kZWQgdG8KICAvLyBhbGwgbGlua3MgYnkgdGhlIGJyb3dz
ZXIsIGV2ZW4gbG9jYWwgb25lcy4KICAvLyBJbiBqUXVlcnkgMS4xIGFuZCBoaWdo
ZXIsIHdlJ2QgdXNlIGEgZmlsdGVyIG1ldGhvZCBoZXJlLCBidXQgaXQgaXMgbm90
CiAgLy8gYXZhaWxhYmxlIGluIGpRdWVyeSAxLjAgKERydXBhbCA1IGRlZmF1bHQp
LgogIHZhciBleHRlcm5hbF9saW5rcyA9IG5ldyBBcnJheSgpOwogIHZhciBtYWls
dG9fbGlua3MgPSBuZXcgQXJyYXkoKTsKICAkKCJhOm5vdCguIiArIHNldHRpbmdz
LmV4dGxpbmsuZXh0Q2xhc3MgKyAiLCAuIiArIHNldHRpbmdzLmV4dGxpbmsubWFp
bHRvQ2xhc3MgKyAiKSwgYXJlYTpub3QoLiIgKyBzZXR0aW5ncy5leHRsaW5rLmV4
dENsYXNzICsgIiwgLiIgKyBzZXR0aW5ncy5leHRsaW5rLm1haWx0b0NsYXNzICsg
IikiLCBjb250ZXh0KS5lYWNoKGZ1bmN0aW9uKGVsKSB7CiAgICB0cnkgewogICAg
ICB2YXIgdXJsID0gdGhpcy5ocmVmLnRvTG93ZXJDYXNlKCk7CiAgICAgIGlmICh1
cmwuaW5kZXhPZignaHR0cCcpID09IDAKICAgICAgICAmJiAoKCF1cmwubWF0Y2go
aW50ZXJuYWxfbGluaykgJiYgIShleHRFeGNsdWRlICYmIHVybC5tYXRjaChleHRF
eGNsdWRlKSkpIHx8IChleHRJbmNsdWRlICYmIHVybC5tYXRjaChleHRJbmNsdWRl
KSkpCiAgICAgICAgJiYgIShleHRDc3NFeGNsdWRlICYmICQodGhpcykucGFyZW50
cyhleHRDc3NFeGNsdWRlKS5sZW5ndGggPiAwKQogICAgICAgICYmICEoZXh0Q3Nz
RXhwbGljaXQgJiYgJCh0aGlzKS5wYXJlbnRzKGV4dENzc0V4cGxpY2l0KS5sZW5n
dGggPCAxKSkgewogICAgICAgIGV4dGVybmFsX2xpbmtzLnB1c2godGhpcyk7CiAg
ICAgIH0KICAgICAgLy8gRG8gbm90IGluY2x1ZGUgYXJlYSB0YWdzIHdpdGggYmVn
aW4gd2l0aCBtYWlsdG86ICh0aGlzIHByb2hpYml0cwogICAgICAvLyBpY29ucyBm
cm9tIGJlaW5nIGFkZGVkIHRvIGltYWdlLW1hcHMpLgogICAgICBlbHNlIGlmICh0
aGlzLnRhZ05hbWUgIT0gJ0FSRUEnIAogICAgICAgICYmIHVybC5pbmRleE9mKCdt
YWlsdG86JykgPT0gMCAKICAgICAgICAmJiAhKGV4dENzc0V4Y2x1ZGUgJiYgJCh0
aGlzKS5wYXJlbnRzKGV4dENzc0V4Y2x1ZGUpLmxlbmd0aCA+IDApCiAgICAgICAg
JiYgIShleHRDc3NFeHBsaWNpdCAmJiAkKHRoaXMpLnBhcmVudHMoZXh0Q3NzRXhw
bGljaXQpLmxlbmd0aCA8IDEpKSB7CiAgICAgICAgbWFpbHRvX2xpbmtzLnB1c2go
dGhpcyk7CiAgICAgIH0KICAgIH0KICAgIC8vIElFNyB0aHJvd3MgZXJyb3JzIG9m
dGVuIHdoZW4gZGVhbGluZyB3aXRoIGlycmVndWxhciBsaW5rcywgc3VjaCBhczoK
ICAgIC8vIDxhIGhyZWY9Im5vZGUvMTAiPjwvYT4gRW1wdHkgdGFncy4KICAgIC8v
IDxhIGhyZWY9Imh0dHA6Ly91c2VyOnBhc3NAZXhhbXBsZS5jb20iPmV4YW1wbGU8
L2E+IFVzZXI6cGFzcyBzeW50YXguCiAgICBjYXRjaCAoZXJyb3IpIHsKICAgICAg
cmV0dXJuIGZhbHNlOwogICAgfQogIH0pOwoKICBpZiAoc2V0dGluZ3MuZXh0bGlu
ay5leHRDbGFzcykgewogICAgRHJ1cGFsLmV4dGxpbmsuYXBwbHlDbGFzc0FuZFNw
YW4oZXh0ZXJuYWxfbGlua3MsIHNldHRpbmdzLmV4dGxpbmsuZXh0Q2xhc3MpOwog
IH0KCiAgaWYgKHNldHRpbmdzLmV4dGxpbmsubWFpbHRvQ2xhc3MpIHsKICAgIERy
dXBhbC5leHRsaW5rLmFwcGx5Q2xhc3NBbmRTcGFuKG1haWx0b19saW5rcywgc2V0
dGluZ3MuZXh0bGluay5tYWlsdG9DbGFzcyk7CiAgfQoKICBpZiAoc2V0dGluZ3Mu
ZXh0bGluay5leHRUYXJnZXQpIHsKICAgIC8vIEFwcGx5IHRoZSB0YXJnZXQgYXR0
cmlidXRlIHRvIGFsbCBsaW5rcy4KICAgICQoZXh0ZXJuYWxfbGlua3MpLmF0dHIo
J3RhcmdldCcsIHNldHRpbmdzLmV4dGxpbmsuZXh0VGFyZ2V0KTsKICB9CgogIERy
dXBhbC5leHRsaW5rID0gRHJ1cGFsLmV4dGxpbmsgfHwge307CgogIC8vIFNldCB1
cCBkZWZhdWx0IGNsaWNrIGZ1bmN0aW9uIGZvciB0aGUgZXh0ZXJuYWwgbGlua3Mg
cG9wdXAuIFRoaXMgc2hvdWxkIGJlCiAgLy8gb3ZlcnJpZGRlbiBieSBtb2R1bGVz
IHdhbnRpbmcgdG8gYWx0ZXIgdGhlIHBvcHVwLgogIERydXBhbC5leHRsaW5rLnBv
cHVwQ2xpY2tIYW5kbGVyID0gRHJ1cGFsLmV4dGxpbmsucG9wdXBDbGlja0hhbmRs
ZXIgfHwgZnVuY3Rpb24oKSB7CiAgICBpZiAoc2V0dGluZ3MuZXh0bGluay5leHRB
bGVydCkgewogICAgICByZXR1cm4gY29uZmlybShzZXR0aW5ncy5leHRsaW5rLmV4
dEFsZXJ0VGV4dCk7CiAgICB9CiAgIH0KCiAgJChleHRlcm5hbF9saW5rcykuY2xp
Y2soZnVuY3Rpb24oZSkgewogICAgcmV0dXJuIERydXBhbC5leHRsaW5rLnBvcHVw
Q2xpY2tIYW5kbGVyKGUpOwogIH0pOwp9OwoKLyoqCiAqIEFwcGx5IGEgY2xhc3Mg
YW5kIGEgdHJhaWxpbmcgPHNwYW4+IHRvIGFsbCBsaW5rcyBub3QgY29udGFpbmlu
ZyBpbWFnZXMuCiAqCiAqIEBwYXJhbSBsaW5rcwogKiAgIEFuIGFycmF5IG9mIERP
TSBlbGVtZW50cyByZXByZXNlbnRpbmcgdGhlIGxpbmtzLgogKiBAcGFyYW0gY2xh
c3NfbmFtZQogKiAgIFRoZSBjbGFzcyB0byBhcHBseSB0byB0aGUgbGlua3MuCiAq
LwpEcnVwYWwuZXh0bGluay5hcHBseUNsYXNzQW5kU3BhbiA9IGZ1bmN0aW9uIChs
aW5rcywgY2xhc3NfbmFtZSkgewogIHZhciAkbGlua3NfdG9fcHJvY2VzczsKICBp
ZiAoRHJ1cGFsLnNldHRpbmdzLmV4dGxpbmsuZXh0SW1nQ2xhc3MpewogICAgJGxp
bmtzX3RvX3Byb2Nlc3MgPSAkKGxpbmtzKTsKICB9CiAgZWxzZSB7CiAgICAkbGlu
a3NfdG9fcHJvY2VzcyA9ICQobGlua3MpLm5vdCgnW2ltZ10nKTsKICB9CiAgJGxp
bmtzX3RvX3Byb2Nlc3MuYWRkQ2xhc3MoY2xhc3NfbmFtZSk7CiAgdmFyIGk7CiAg
dmFyIGxlbmd0aCA9ICRsaW5rc190b19wcm9jZXNzLmxlbmd0aDsKICBmb3IgKGkg
PSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKICAgIHZhciAkbGluayA9ICQoJGxpbmtz
X3RvX3Byb2Nlc3NbaV0pOwogICAgaWYgKCRsaW5rLmNzcygnZGlzcGxheScpID09
ICdpbmxpbmUnIHx8ICRsaW5rLmNzcygnZGlzcGxheScpID09ICdpbmxpbmUtYmxv
Y2snKSB7CiAgICAgIGlmIChjbGFzc19uYW1lID09IERydXBhbC5zZXR0aW5ncy5l
eHRsaW5rLm1haWx0b0NsYXNzKSB7CiAgICAgICAgJGxpbmsuYXBwZW5kKCc8c3Bh
biBjbGFzcz0iJyArIGNsYXNzX25hbWUgKyAnIj48c3BhbiBjbGFzcz0iZWxlbWVu
dC1pbnZpc2libGUiPiAnICsgRHJ1cGFsLnNldHRpbmdzLmV4dGxpbmsubWFpbHRv
TGFiZWwgKyAnPC9zcGFuPjwvc3Bhbj4nKTsKICAgICAgfQogICAgICBlbHNlIHsK
ICAgICAgICAkbGluay5hcHBlbmQoJzxzcGFuIGNsYXNzPSInICsgY2xhc3NfbmFt
ZSArICciPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+ICcgKyBEcnVw
YWwuc2V0dGluZ3MuZXh0bGluay5leHRMYWJlbCArICc8L3NwYW4+PC9zcGFuPicp
OwogICAgICB9CiAgICB9CiAgfQp9OwoKRHJ1cGFsLmJlaGF2aW9ycy5leHRsaW5r
ID0gRHJ1cGFsLmJlaGF2aW9ycy5leHRsaW5rIHx8IHt9OwpEcnVwYWwuYmVoYXZp
b3JzLmV4dGxpbmsuYXR0YWNoID0gZnVuY3Rpb24gKGNvbnRleHQsIHNldHRpbmdz
KSB7CiAgLy8gQmFja3dhcmRzIGNvbXBhdGliaWxpdHksIGZvciB0aGUgYmVuZWZp
dCBvZiBtb2R1bGVzIG92ZXJyaWRpbmcgZXh0bGluawogIC8vIGZ1bmN0aW9uYWxp
dHkgYnkgZGVmaW5pbmcgYW4gImV4dGxpbmtBdHRhY2giIGdsb2JhbCBmdW5jdGlv
bi4KICBpZiAodHlwZW9mIGV4dGxpbmtBdHRhY2ggPT09ICdmdW5jdGlvbicpIHsK
ICAgIGV4dGxpbmtBdHRhY2goY29udGV4dCk7CiAgfQogIGVsc2UgewogICAgRHJ1
cGFsLmV4dGxpbmsuYXR0YWNoKGNvbnRleHQsIHNldHRpbmdzKTsKICB9Cn07Cgp9
KShqUXVlcnkpOwo7Cg==
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=js_6pnuKLf2PKOU5z81S5P3cYoCorYJTzFpkmabmbaaH8Q.js
Content-Type: application/javascript; name=js_6pnuKLf2PKOU5z81S5P3cYoCorYJTzFpkmabmbaaH8Q.js
Content-Location: http://www.websecurity.es/files/js/js_6pnuKLf2PKOU5z81S5P3cYoCorYJTzFpkmabmbaaH8Q.js
Content-Transfer-Encoding: Base64
RHJ1cGFsLmxvY2FsZSA9IHsgJ3BsdXJhbEZvcm11bGEnOiBmdW5jdGlvbiAoJG4p
IHsgcmV0dXJuIE51bWJlcigoJG4hPTEpKTsgfSwgJ3N0cmluZ3MnOiB7IiI6eyJE
ZXNlbGVjdCBhbGwgcm93cyBpbiB0aGlzIHRhYmxlIjoiUXVpdGFyIGxhIHNlbGVj
Y2nDs24gYSB0b2RhcyBsYXMgZmlsYXMgZGUgZXN0YSB0YWJsYSIsICJTZWxlY3Qg
YWxsIHJvd3MgaW4gdGhpcyB0YWJsZSI6IlNlbGVjY2lvbmFyIHRvZGFzIGxhcyBm
aWxhcyBkZSBlc3RhIHRhYmxhIiwgIkNvbmZpZ3VyZSI6IkNvbmZpZ3VyYXIiLCAi
U2hvdyI6Ik1vc3RyYXIiLCAiTm90IHB1Ymxpc2hlZCI6Ik5vIHB1YmxpY2FkbyIs
ICJIaWRlIjoiT2N1bHRhciIsICJBdXRvbWF0aWMgYWxpYXMiOiJBbGlhcyBhdXRv
bcOhdGljbyBkZSBydXRhIiwgIlNwbGl0IHN1bW1hcnkgYXQgY3Vyc29yIjoiRGl2
aWRpciBlbCBwb3N0IGRlc2RlIGVsIGN1cnNvciIsICJTYXZpbmcuLi4iOiJHdWFy
ZGFuZG8uLi4iLCAiRm9ybSBMb2FkaW5nIjoiQ2FyZ2FuZG8gZm9ybXVsYXJpbyIs
ICJOb3QgcmVzdHJpY3RlZCI6IlNpbiByZXN0cmljY2nDs24iLCAiTG9hZGluZyI6
IkNhcmdhbmRvIiwgIk5vdCBjdXN0b21pemFibGUiOiJObyBwZXJzb25hbGl6YWJs
ZSIsICJSZXN0cmljdGVkIHRvIGNlcnRhaW4gcGFnZXMiOiJSZXN0cmluZ2lkbyBh
IGFsZ3VuYXMgcMOhZ2luYXMiLCAiUHJldmlvdXMiOiJBbnRlcmlvciIsICJOZXh0
IjoiU2lndWllbnRlIiwgIkNsb3NlIjoiQ2VycmFyIiwgIk5vIHN0eWxlIjoiU2lu
IGVzdGlsbyIsICJObyB0aXRsZSI6IlNpbiB0w610dWxvIiwgIkFsaWFzOiBAYWxp
YXMiOiJBbGlhczogQGFsaWFzIiwgIk5vIGFsaWFzIjoiU2luIGFsaWFzIiwgIlNj
aGVkdWxlZCBmb3IgcHVibGlzaGluZyI6IkVzdGlsbyBkZSBwYW5lbCBwYXJhIFx1
MDAyMiFwYW5lXHUwMDIyIiwgIkF2YWlsYWJsZSB0b2tlbnMiOiJDb21vZGluZXMg
ZGlzcG9uaWJsZXMiLCAiSW5zZXJ0IHRoaXMgdG9rZW4gaW50byB5b3VyIGZvcm0i
OiJJbnNlcnRlIGVzdGUgY29tb2TDrW4gZW4gc3UgZm9ybXVsYXJpbyIsICJMb2Fk
aW5nIHRva2VuIGJyb3dzZXIuLi4iOiJDYXJnYW5kbyBuYXZlZ2Fkb3IgZGUgY29t
b2RpbmVzLi4uIiwgIkluY2x1c2lvbjogQHZhbHVlIjoiSW5jbHVzacOzbjogQHZh
bHVlIiwgIlByaW9yaXR5OiBAdmFsdWUiOiJQcmlvcmlkYWQ6IEB2YWx1ZSIsICJE
b25lIjoiSGVjaG8iLCAiQnkgQG5hbWUgb24gQGRhdGUiOiJQb3IgQG5hbWUgZW4g
QGRhdGUiLCAiQnkgQG5hbWUiOiJQb3IgQG5hbWUiLCAiTm90IGluIG1lbnUiOiJO
byBlc3TDoSBlbiB1biBtZW7DuiIsICJOZXcgcmV2aXNpb24iOiJOdWV2YSByZXZp
c2nDs24iLCAiRHJhZyB0byByZS1vcmRlciI6IkFycmFzdHJlIHBhcmEgcmVvcmRl
bmFyIiwgIkNoYW5nZXMgbWFkZSBpbiB0aGlzIHRhYmxlIHdpbGwgbm90IGJlIHNh
dmVkIHVudGlsIHRoZSBmb3JtIGlzIHN1Ym1pdHRlZC4iOiJMb3MgY2FtYmlvcyBy
ZWFsaXphZG9zIGVuIGVzdGEgdGFibGEgbm8gc2UgZ3VhcmRhcsOhbiBoYXN0YSBx
dWUgc2UgZW52w61lIGVsIGZvcm11bGFyaW8iLCAiVGhlIGNoYW5nZXMgdG8gdGhl
c2UgYmxvY2tzIHdpbGwgbm90IGJlIHNhdmVkIHVudGlsIHRoZSBcdTAwM0NlbVx1
MDAzRVNhdmUgYmxvY2tzXHUwMDNDXHUwMDJGZW1cdTAwM0UgYnV0dG9uIGlzIGNs
aWNrZWQuIjoiTG9zIGNhbWJpb3Mgc29icmUgZXN0b3MgYmxvcXVlcyBubyBzZSBn
dWFyZGFyw6FuIGhhc3RhIHF1ZSBubyBwdWxzZSBlbCBib3TDs24gXHUwMDNDZW1c
dTAwM0VHdWFyZGFyIGJsb3F1ZXNcdTAwM0NcdTAwMkZlbVx1MDAzRS4iLCAiU2hv
dyBzaG9ydGN1dHMiOiJNb3N0cmFyIGF0YWpvcyIsICJObyByZXZpc2lvbiI6IlNp
biByZXZpc2nDs24iLCAiQG51bWJlciBjb21tZW50cyBwZXIgcGFnZSI6IkBudW1i
ZXIgY29tZW50YXJpb3MgcG9yIHDDoWdpbmEiLCAiKGFjdGl2ZSB0YWIpIjoiKHNv
bGFwYSBhY3RpdmEpIiwgIkFuIEFKQVggSFRUUCBlcnJvciBvY2N1cnJlZC4iOiJI
dWJvIHVuIGVycm9yIEhUVFAgQUpBWC4iLCAiSFRUUCBSZXN1bHQgQ29kZTogIXN0
YXR1cyI6IkPDs2RpZ28gZGUgUmVzdWx0YWRvIEhUVFA6ICFzdGF0dXMiLCAiQW4g
QUpBWCBIVFRQIHJlcXVlc3QgdGVybWluYXRlZCBhYm5vcm1hbGx5LiI6IlVuYSBz
b2xpY2l0dWQgSFRUUCBkZSBBSkFYIHRlcm1pbsOzIGRlIG1hbmVyYSBhbm9ybWFs
LiIsICJEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gZm9sbG93cy4iOiJBIGNvbnRpbnVh
Y2nDs24gc2UgZGV0YWxsYSBsYSBpbmZvcm1hY2nDs24gZGUgZGVwdXJhY2nDs24u
IiwgIlBhdGg6ICF1cmkiOiJSdXRhOiAhdXJpIiwgIlN0YXR1c1RleHQ6ICFzdGF0
dXNUZXh0IjoiU3RhdHVzVGV4dDogIXN0YXR1c1RleHQiLCAiUmVzcG9uc2VUZXh0
OiAhcmVzcG9uc2VUZXh0IjoiUmVzcG9uc2VUZXh0OiAhcmVzcG9uc2VUZXh0Iiwg
IlJlYWR5U3RhdGU6ICFyZWFkeVN0YXRlIjoiUmVhZHlTdGF0ZTogIXJlYWR5U3Rh
dGUiLCAiVGhlIGJsb2NrIGNhbm5vdCBiZSBwbGFjZWQgaW4gdGhpcyByZWdpb24u
IjoiRWwgYmxvcXVlIG5vIHNlIHB1ZWRlIGNvbG9jYXIgZW4gZXN0YSByZWdpw7Nu
LiIsICJDdXN0b21pemUgZGFzaGJvYXJkIjoiUGVyc29uYWxpemFyIHBhbmVsIGRl
IGNvbnRyb2wiLCAiSGlkZSBzdW1tYXJ5IjoiT2N1bHRhciByZXN1bWVuIiwgIkVk
aXQgc3VtbWFyeSI6IkVkaXRhciByZXN1bWVuIiwgIkB0aXRsZSBkaWFsb2ciOiJE
acOhbG9nbyBAdGl0bGUiLCAiUmUtb3JkZXIgcm93cyBieSBudW1lcmljYWwgd2Vp
Z2h0IGluc3RlYWQgb2YgZHJhZ2dpbmcuIjoiUmVvcmRlbmFyIGxhcyBmaWxhcyBw
b3IgcGVzbyBudW3DqXJpY28gZW4gbHVnYXIgZGUgYXJyYXN0cmFyLiIsICJTaG93
IHJvdyB3ZWlnaHRzIjoiTW9zdHJhciBwZXNvcyBkZSBsYSBmaWxhIiwgIkhpZGUg
cm93IHdlaWdodHMiOiJPY3VsdGFyIHBlc29zIGRlIGxhIGZpbGEiLCAiQXV0b2Nv
bXBsZXRlIHBvcHVwIjoiVmVudGFuYSBlbWVyZ2VudGUgY29uIGF1dG9jb21wbGV0
YWRvIiwgIlNlYXJjaGluZyBmb3IgbWF0Y2hlcy4uLiI6IkJ1c2NhbmRvIGNvaW5j
aWRlbmNpYXMiLCAiSGlkZSBzaG9ydGN1dHMiOiJPY3VsdGFyIGF0YWpvcyJ9fSB9
OzsKLyohCiAqIGpRdWVyeSBDeWNsZSBQbHVnaW4gKHdpdGggVHJhbnNpdGlvbiBE
ZWZpbml0aW9ucykKICogRXhhbXBsZXMgYW5kIGRvY3VtZW50YXRpb24gYXQ6IGh0
dHA6Ly9qcXVlcnkubWFsc3VwLmNvbS9jeWNsZS8KICogQ29weXJpZ2h0IChjKSAy
MDA3LTIwMTAgTS4gQWxzdXAKICogVmVyc2lvbjogMi45OTk5LjggKDI2LU9DVC0y
MDEyKQogKiBEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgYW5kIEdQTCBsaWNl
bnNlcy4KICogaHR0cDovL2pxdWVyeS5tYWxzdXAuY29tL2xpY2Vuc2UuaHRtbAog
KiBSZXF1aXJlczogalF1ZXJ5IHYxLjMuMiBvciBsYXRlcgogKi8KOyhmdW5jdGlv
bigkLCB1bmRlZmluZWQpIHsKInVzZSBzdHJpY3QiOwoKdmFyIHZlciA9ICcyLjk5
OTkuOCc7CgovLyBpZiAkLnN1cHBvcnQgaXMgbm90IGRlZmluZWQgKHByZSBqUXVl
cnkgMS4zKSBhZGQgd2hhdCBJIG5lZWQKaWYgKCQuc3VwcG9ydCA9PT0gdW5kZWZp
bmVkKSB7CgkkLnN1cHBvcnQgPSB7CgkJb3BhY2l0eTogISgkLmJyb3dzZXIubXNp
ZSkKCX07Cn0KCmZ1bmN0aW9uIGRlYnVnKHMpIHsKCWlmICgkLmZuLmN5Y2xlLmRl
YnVnKQoJCWxvZyhzKTsKfQkJCmZ1bmN0aW9uIGxvZygpIHsKCWlmICh3aW5kb3cu
Y29uc29sZSAmJiBjb25zb2xlLmxvZykKCQljb25zb2xlLmxvZygnW2N5Y2xlXSAn
ICsgQXJyYXkucHJvdG90eXBlLmpvaW4uY2FsbChhcmd1bWVudHMsJyAnKSk7Cn0K
JC5leHByWyc6J10ucGF1c2VkID0gZnVuY3Rpb24oZWwpIHsKCXJldHVybiBlbC5j
eWNsZVBhdXNlOwp9OwoKCi8vIHRoZSBvcHRpb25zIGFyZyBjYW4gYmUuLi4KLy8g
ICBhIG51bWJlciAgLSBpbmRpY2F0ZXMgYW4gaW1tZWRpYXRlIHRyYW5zaXRpb24g
c2hvdWxkIG9jY3VyIHRvIHRoZSBnaXZlbiBzbGlkZSBpbmRleAovLyAgIGEgc3Ry
aW5nICAtICdwYXVzZScsICdyZXN1bWUnLCAndG9nZ2xlJywgJ25leHQnLCAncHJl
dicsICdzdG9wJywgJ2Rlc3Ryb3knIG9yIHRoZSBuYW1lIG9mIGEgdHJhbnNpdGlv
biBlZmZlY3QgKGllLCAnZmFkZScsICd6b29tJywgZXRjKQovLyAgIGFuIG9iamVj
dCAtIHByb3BlcnRpZXMgdG8gY29udHJvbCB0aGUgc2xpZGVzaG93Ci8vCi8vIHRo
ZSBhcmcyIGFyZyBjYW4gYmUuLi4KLy8gICB0aGUgbmFtZSBvZiBhbiBmeCAob25s
eSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYSBudW1lcmljIHZhbHVlIGZvciAn
b3B0aW9ucycpCi8vICAgdGhlIHZhbHVlIHRydWUgKG9ubHkgdXNlZCBpbiBmaXJz
dCBhcmcgPT0gJ3Jlc3VtZScpIGFuZCBpbmRpY2F0ZXMKLy8JIHRoYXQgdGhlIHJl
c3VtZSBzaG91bGQgb2NjdXIgaW1tZWRpYXRlbHkgKG5vdCB3YWl0IGZvciBuZXh0
IHRpbWVvdXQpCgokLmZuLmN5Y2xlID0gZnVuY3Rpb24ob3B0aW9ucywgYXJnMikg
ewoJdmFyIG8gPSB7IHM6IHRoaXMuc2VsZWN0b3IsIGM6IHRoaXMuY29udGV4dCB9
OwoKCS8vIGluIDEuMysgd2UgY2FuIGZpeCBtaXN0YWtlcyB3aXRoIHRoZSByZWFk
eSBzdGF0ZQoJaWYgKHRoaXMubGVuZ3RoID09PSAwICYmIG9wdGlvbnMgIT0gJ3N0
b3AnKSB7CgkJaWYgKCEkLmlzUmVhZHkgJiYgby5zKSB7CgkJCWxvZygnRE9NIG5v
dCByZWFkeSwgcXVldWluZyBzbGlkZXNob3cnKTsKCQkJJChmdW5jdGlvbigpIHsK
CQkJCSQoby5zLG8uYykuY3ljbGUob3B0aW9ucyxhcmcyKTsKCQkJfSk7CgkJCXJl
dHVybiB0aGlzOwoJCX0KCQkvLyBpcyB5b3VyIERPTSByZWFkeT8gIGh0dHA6Ly9k
b2NzLmpxdWVyeS5jb20vVHV0b3JpYWxzOkludHJvZHVjaW5nXyQoZG9jdW1lbnQp
LnJlYWR5KCkKCQlsb2coJ3Rlcm1pbmF0aW5nOyB6ZXJvIGVsZW1lbnRzIGZvdW5k
IGJ5IHNlbGVjdG9yJyArICgkLmlzUmVhZHkgPyAnJyA6ICcgKERPTSBub3QgcmVh
ZHkpJykpOwoJCXJldHVybiB0aGlzOwoJfQoKCS8vIGl0ZXJhdGUgdGhlIG1hdGNo
ZWQgbm9kZXNldAoJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKCQl2YXIg
b3B0cyA9IGhhbmRsZUFyZ3VtZW50cyh0aGlzLCBvcHRpb25zLCBhcmcyKTsKCQlp
ZiAob3B0cyA9PT0gZmFsc2UpCgkJCXJldHVybjsKCgkJb3B0cy51cGRhdGVBY3Rp
dmVQYWdlckxpbmsgPSBvcHRzLnVwZGF0ZUFjdGl2ZVBhZ2VyTGluayB8fCAkLmZu
LmN5Y2xlLnVwZGF0ZUFjdGl2ZVBhZ2VyTGluazsKCQkKCQkvLyBzdG9wIGV4aXN0
aW5nIHNsaWRlc2hvdyBmb3IgdGhpcyBjb250YWluZXIgKGlmIHRoZXJlIGlzIG9u
ZSkKCQlpZiAodGhpcy5jeWNsZVRpbWVvdXQpCgkJCWNsZWFyVGltZW91dCh0aGlz
LmN5Y2xlVGltZW91dCk7CgkJdGhpcy5jeWNsZVRpbWVvdXQgPSB0aGlzLmN5Y2xl
UGF1c2UgPSAwOwoJCXRoaXMuY3ljbGVTdG9wID0gMDsgLy8gaXNzdWUgIzEwOAoK
CQl2YXIgJGNvbnQgPSAkKHRoaXMpOwoJCXZhciAkc2xpZGVzID0gb3B0cy5zbGlk
ZUV4cHIgPyAkKG9wdHMuc2xpZGVFeHByLCB0aGlzKSA6ICRjb250LmNoaWxkcmVu
KCk7CgkJdmFyIGVscyA9ICRzbGlkZXMuZ2V0KCk7CgoJCWlmIChlbHMubGVuZ3Ro
IDwgMikgewoJCQlsb2coJ3Rlcm1pbmF0aW5nOyB0b28gZmV3IHNsaWRlczogJyAr
IGVscy5sZW5ndGgpOwoJCQlyZXR1cm47CgkJfQoKCQl2YXIgb3B0czIgPSBidWls
ZE9wdGlvbnMoJGNvbnQsICRzbGlkZXMsIGVscywgb3B0cywgbyk7CgkJaWYgKG9w
dHMyID09PSBmYWxzZSkKCQkJcmV0dXJuOwoKCQl2YXIgc3RhcnRUaW1lID0gb3B0
czIuY29udGludW91cyA/IDEwIDogZ2V0VGltZW91dChlbHNbb3B0czIuY3VyclNs
aWRlXSwgZWxzW29wdHMyLm5leHRTbGlkZV0sIG9wdHMyLCAhb3B0czIuYmFja3dh
cmRzKTsKCgkJLy8gaWYgaXQncyBhbiBhdXRvIHNsaWRlc2hvdywga2ljayBpdCBv
ZmYKCQlpZiAoc3RhcnRUaW1lKSB7CgkJCXN0YXJ0VGltZSArPSAob3B0czIuZGVs
YXkgfHwgMCk7CgkJCWlmIChzdGFydFRpbWUgPCAxMCkKCQkJCXN0YXJ0VGltZSA9
IDEwOwoJCQlkZWJ1ZygnZmlyc3QgdGltZW91dDogJyArIHN0YXJ0VGltZSk7CgkJ
CXRoaXMuY3ljbGVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbigpe2dvKGVs
cyxvcHRzMiwwLCFvcHRzLmJhY2t3YXJkcyk7fSwgc3RhcnRUaW1lKTsKCQl9Cgl9
KTsKfTsKCmZ1bmN0aW9uIHRyaWdnZXJQYXVzZShjb250LCBieUhvdmVyLCBvblBh
Z2VyKSB7Cgl2YXIgb3B0cyA9ICQoY29udCkuZGF0YSgnY3ljbGUub3B0cycpOwoJ
aWYgKCFvcHRzKQoJCXJldHVybjsKCXZhciBwYXVzZWQgPSAhIWNvbnQuY3ljbGVQ
YXVzZTsKCWlmIChwYXVzZWQgJiYgb3B0cy5wYXVzZWQpCgkJb3B0cy5wYXVzZWQo
Y29udCwgb3B0cywgYnlIb3Zlciwgb25QYWdlcik7CgllbHNlIGlmICghcGF1c2Vk
ICYmIG9wdHMucmVzdW1lZCkKCQlvcHRzLnJlc3VtZWQoY29udCwgb3B0cywgYnlI
b3Zlciwgb25QYWdlcik7Cn0KCi8vIHByb2Nlc3MgdGhlIGFyZ3MgdGhhdCB3ZXJl
IHBhc3NlZCB0byB0aGUgcGx1Z2luIGZuCmZ1bmN0aW9uIGhhbmRsZUFyZ3VtZW50
cyhjb250LCBvcHRpb25zLCBhcmcyKSB7CglpZiAoY29udC5jeWNsZVN0b3AgPT09
IHVuZGVmaW5lZCkKCQljb250LmN5Y2xlU3RvcCA9IDA7CglpZiAob3B0aW9ucyA9
PT0gdW5kZWZpbmVkIHx8IG9wdGlvbnMgPT09IG51bGwpCgkJb3B0aW9ucyA9IHt9
OwoJaWYgKG9wdGlvbnMuY29uc3RydWN0b3IgPT0gU3RyaW5nKSB7CgkJc3dpdGNo
KG9wdGlvbnMpIHsKCQljYXNlICdkZXN0cm95JzoKCQljYXNlICdzdG9wJzoKCQkJ
dmFyIG9wdHMgPSAkKGNvbnQpLmRhdGEoJ2N5Y2xlLm9wdHMnKTsKCQkJaWYgKCFv
cHRzKQoJCQkJcmV0dXJuIGZhbHNlOwoJCQljb250LmN5Y2xlU3RvcCsrOyAvLyBj
YWxsYmFja3MgbG9vayBmb3IgY2hhbmdlCgkJCWlmIChjb250LmN5Y2xlVGltZW91
dCkKCQkJCWNsZWFyVGltZW91dChjb250LmN5Y2xlVGltZW91dCk7CgkJCWNvbnQu
Y3ljbGVUaW1lb3V0ID0gMDsKCQkJaWYgKG9wdHMuZWxlbWVudHMpCgkJCQkkKG9w
dHMuZWxlbWVudHMpLnN0b3AoKTsKCQkJJChjb250KS5yZW1vdmVEYXRhKCdjeWNs
ZS5vcHRzJyk7CgkJCWlmIChvcHRpb25zID09ICdkZXN0cm95JykKCQkJCWRlc3Ry
b3koY29udCwgb3B0cyk7CgkJCXJldHVybiBmYWxzZTsKCQljYXNlICd0b2dnbGUn
OgoJCQljb250LmN5Y2xlUGF1c2UgPSAoY29udC5jeWNsZVBhdXNlID09PSAxKSA/
IDAgOiAxOwoJCQljaGVja0luc3RhbnRSZXN1bWUoY29udC5jeWNsZVBhdXNlLCBh
cmcyLCBjb250KTsKCQkJdHJpZ2dlclBhdXNlKGNvbnQpOwoJCQlyZXR1cm4gZmFs
c2U7CgkJY2FzZSAncGF1c2UnOgoJCQljb250LmN5Y2xlUGF1c2UgPSAxOwoJCQl0
cmlnZ2VyUGF1c2UoY29udCk7CgkJCXJldHVybiBmYWxzZTsKCQljYXNlICdyZXN1
bWUnOgoJCQljb250LmN5Y2xlUGF1c2UgPSAwOwoJCQljaGVja0luc3RhbnRSZXN1
bWUoZmFsc2UsIGFyZzIsIGNvbnQpOwoJCQl0cmlnZ2VyUGF1c2UoY29udCk7CgkJ
CXJldHVybiBmYWxzZTsKCQljYXNlICdwcmV2JzoKCQljYXNlICduZXh0JzoKCQkJ
b3B0cyA9ICQoY29udCkuZGF0YSgnY3ljbGUub3B0cycpOwoJCQlpZiAoIW9wdHMp
IHsKCQkJCWxvZygnb3B0aW9ucyBub3QgZm91bmQsICJwcmV2L25leHQiIGlnbm9y
ZWQnKTsKCQkJCXJldHVybiBmYWxzZTsKCQkJfQoJCQkkLmZuLmN5Y2xlW29wdGlv
bnNdKG9wdHMpOwoJCQlyZXR1cm4gZmFsc2U7CgkJZGVmYXVsdDoKCQkJb3B0aW9u
cyA9IHsgZng6IG9wdGlvbnMgfTsKCQl9CgkJcmV0dXJuIG9wdGlvbnM7Cgl9Cgll
bHNlIGlmIChvcHRpb25zLmNvbnN0cnVjdG9yID09IE51bWJlcikgewoJCS8vIGdv
IHRvIHRoZSByZXF1ZXN0ZWQgc2xpZGUKCQl2YXIgbnVtID0gb3B0aW9uczsKCQlv
cHRpb25zID0gJChjb250KS5kYXRhKCdjeWNsZS5vcHRzJyk7CgkJaWYgKCFvcHRp
b25zKSB7CgkJCWxvZygnb3B0aW9ucyBub3QgZm91bmQsIGNhbiBub3QgYWR2YW5j
ZSBzbGlkZScpOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCWlmIChudW0gPCAwIHx8
IG51bSA+PSBvcHRpb25zLmVsZW1lbnRzLmxlbmd0aCkgewoJCQlsb2coJ2ludmFs
aWQgc2xpZGUgaW5kZXg6ICcgKyBudW0pOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJ
CW9wdGlvbnMubmV4dFNsaWRlID0gbnVtOwoJCWlmIChjb250LmN5Y2xlVGltZW91
dCkgewoJCQljbGVhclRpbWVvdXQoY29udC5jeWNsZVRpbWVvdXQpOwoJCQljb250
LmN5Y2xlVGltZW91dCA9IDA7CgkJfQoJCWlmICh0eXBlb2YgYXJnMiA9PSAnc3Ry
aW5nJykKCQkJb3B0aW9ucy5vbmVUaW1lRnggPSBhcmcyOwoJCWdvKG9wdGlvbnMu
ZWxlbWVudHMsIG9wdGlvbnMsIDEsIG51bSA+PSBvcHRpb25zLmN1cnJTbGlkZSk7
CgkJcmV0dXJuIGZhbHNlOwoJfQoJcmV0dXJuIG9wdGlvbnM7CgkKCWZ1bmN0aW9u
IGNoZWNrSW5zdGFudFJlc3VtZShpc1BhdXNlZCwgYXJnMiwgY29udCkgewoJCWlm
ICghaXNQYXVzZWQgJiYgYXJnMiA9PT0gdHJ1ZSkgeyAvLyByZXN1bWUgbm93IQoJ
CQl2YXIgb3B0aW9ucyA9ICQoY29udCkuZGF0YSgnY3ljbGUub3B0cycpOwoJCQlp
ZiAoIW9wdGlvbnMpIHsKCQkJCWxvZygnb3B0aW9ucyBub3QgZm91bmQsIGNhbiBu
b3QgcmVzdW1lJyk7CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCQkJaWYgKGNvbnQu
Y3ljbGVUaW1lb3V0KSB7CgkJCQljbGVhclRpbWVvdXQoY29udC5jeWNsZVRpbWVv
dXQpOwoJCQkJY29udC5jeWNsZVRpbWVvdXQgPSAwOwoJCQl9CgkJCWdvKG9wdGlv
bnMuZWxlbWVudHMsIG9wdGlvbnMsIDEsICFvcHRpb25zLmJhY2t3YXJkcyk7CgkJ
fQoJfQp9CgpmdW5jdGlvbiByZW1vdmVGaWx0ZXIoZWwsIG9wdHMpIHsKCWlmICgh
JC5zdXBwb3J0Lm9wYWNpdHkgJiYgb3B0cy5jbGVhcnR5cGUgJiYgZWwuc3R5bGUu
ZmlsdGVyKSB7CgkJdHJ5IHsgZWwuc3R5bGUucmVtb3ZlQXR0cmlidXRlKCdmaWx0
ZXInKTsgfQoJCWNhdGNoKHNtb3RoZXIpIHt9IC8vIGhhbmRsZSBvbGQgb3BlcmEg
dmVyc2lvbnMKCX0KfQoKLy8gdW5iaW5kIGV2ZW50IGhhbmRsZXJzCmZ1bmN0aW9u
IGRlc3Ryb3koY29udCwgb3B0cykgewoJaWYgKG9wdHMubmV4dCkKCQkkKG9wdHMu
bmV4dCkudW5iaW5kKG9wdHMucHJldk5leHRFdmVudCk7CglpZiAob3B0cy5wcmV2
KQoJCSQob3B0cy5wcmV2KS51bmJpbmQob3B0cy5wcmV2TmV4dEV2ZW50KTsKCQoJ
aWYgKG9wdHMucGFnZXIgfHwgb3B0cy5wYWdlckFuY2hvckJ1aWxkZXIpCgkJJC5l
YWNoKG9wdHMucGFnZXJBbmNob3JzIHx8IFtdLCBmdW5jdGlvbigpIHsKCQkJdGhp
cy51bmJpbmQoKS5yZW1vdmUoKTsKCQl9KTsKCW9wdHMucGFnZXJBbmNob3JzID0g
bnVsbDsKCSQoY29udCkudW5iaW5kKCdtb3VzZWVudGVyLmN5Y2xlIG1vdXNlbGVh
dmUuY3ljbGUnKTsKCWlmIChvcHRzLmRlc3Ryb3kpIC8vIGNhbGxiYWNrCgkJb3B0
cy5kZXN0cm95KG9wdHMpOwp9CgovLyBvbmUtdGltZSBpbml0aWFsaXphdGlvbgpm
dW5jdGlvbiBidWlsZE9wdGlvbnMoJGNvbnQsICRzbGlkZXMsIGVscywgb3B0aW9u
cywgbykgewoJdmFyIHN0YXJ0aW5nU2xpZGVTcGVjaWZpZWQ7CgkvLyBzdXBwb3J0
IG1ldGFkYXRhIHBsdWdpbiAodjEuMCBhbmQgdjIuMCkKCXZhciBvcHRzID0gJC5l
eHRlbmQoe30sICQuZm4uY3ljbGUuZGVmYXVsdHMsIG9wdGlvbnMgfHwge30sICQu
bWV0YWRhdGEgPyAkY29udC5tZXRhZGF0YSgpIDogJC5tZXRhID8gJGNvbnQuZGF0
YSgpIDoge30pOwoJdmFyIG1ldGEgPSAkLmlzRnVuY3Rpb24oJGNvbnQuZGF0YSkg
PyAkY29udC5kYXRhKG9wdHMubWV0YUF0dHIpIDogbnVsbDsKCWlmIChtZXRhKQoJ
CW9wdHMgPSAkLmV4dGVuZChvcHRzLCBtZXRhKTsKCWlmIChvcHRzLmF1dG9zdG9w
KQoJCW9wdHMuY291bnRkb3duID0gb3B0cy5hdXRvc3RvcENvdW50IHx8IGVscy5s
ZW5ndGg7CgoJdmFyIGNvbnQgPSAkY29udFswXTsKCSRjb250LmRhdGEoJ2N5Y2xl
Lm9wdHMnLCBvcHRzKTsKCW9wdHMuJGNvbnQgPSAkY29udDsKCW9wdHMuc3RvcENv
dW50ID0gY29udC5jeWNsZVN0b3A7CglvcHRzLmVsZW1lbnRzID0gZWxzOwoJb3B0
cy5iZWZvcmUgPSBvcHRzLmJlZm9yZSA/IFtvcHRzLmJlZm9yZV0gOiBbXTsKCW9w
dHMuYWZ0ZXIgPSBvcHRzLmFmdGVyID8gW29wdHMuYWZ0ZXJdIDogW107CgoJLy8g
cHVzaCBzb21lIGFmdGVyIGNhbGxiYWNrcwoJaWYgKCEkLnN1cHBvcnQub3BhY2l0
eSAmJiBvcHRzLmNsZWFydHlwZSkKCQlvcHRzLmFmdGVyLnB1c2goZnVuY3Rpb24o
KSB7IHJlbW92ZUZpbHRlcih0aGlzLCBvcHRzKTsgfSk7CglpZiAob3B0cy5jb250
aW51b3VzKQoJCW9wdHMuYWZ0ZXIucHVzaChmdW5jdGlvbigpIHsgZ28oZWxzLG9w
dHMsMCwhb3B0cy5iYWNrd2FyZHMpOyB9KTsKCglzYXZlT3JpZ2luYWxPcHRzKG9w
dHMpOwoKCS8vIGNsZWFyVHlwZSBjb3JyZWN0aW9ucwoJaWYgKCEkLnN1cHBvcnQu
b3BhY2l0eSAmJiBvcHRzLmNsZWFydHlwZSAmJiAhb3B0cy5jbGVhcnR5cGVOb0Jn
KQoJCWNsZWFyVHlwZUZpeCgkc2xpZGVzKTsKCgkvLyBjb250YWluZXIgcmVxdWly
ZXMgbm9uLXN0YXRpYyBwb3NpdGlvbiBzbyB0aGF0IHNsaWRlcyBjYW4gYmUgcG9z
aXRpb24gd2l0aGluCglpZiAoJGNvbnQuY3NzKCdwb3NpdGlvbicpID09ICdzdGF0
aWMnKQoJCSRjb250LmNzcygncG9zaXRpb24nLCAncmVsYXRpdmUnKTsKCWlmIChv
cHRzLndpZHRoKQoJCSRjb250LndpZHRoKG9wdHMud2lkdGgpOwoJaWYgKG9wdHMu
aGVpZ2h0ICYmIG9wdHMuaGVpZ2h0ICE9ICdhdXRvJykKCQkkY29udC5oZWlnaHQo
b3B0cy5oZWlnaHQpOwoKCWlmIChvcHRzLnN0YXJ0aW5nU2xpZGUgIT09IHVuZGVm
aW5lZCkgewoJCW9wdHMuc3RhcnRpbmdTbGlkZSA9IHBhcnNlSW50KG9wdHMuc3Rh
cnRpbmdTbGlkZSwxMCk7CgkJaWYgKG9wdHMuc3RhcnRpbmdTbGlkZSA+PSBlbHMu
bGVuZ3RoIHx8IG9wdHMuc3RhcnRTbGlkZSA8IDApCgkJCW9wdHMuc3RhcnRpbmdT
bGlkZSA9IDA7IC8vIGNhdGNoIGJvZ3VzIGlucHV0CgkJZWxzZSAKCQkJc3RhcnRp
bmdTbGlkZVNwZWNpZmllZCA9IHRydWU7Cgl9CgllbHNlIGlmIChvcHRzLmJhY2t3
YXJkcykKCQlvcHRzLnN0YXJ0aW5nU2xpZGUgPSBlbHMubGVuZ3RoIC0gMTsKCWVs
c2UKCQlvcHRzLnN0YXJ0aW5nU2xpZGUgPSAwOwoKCS8vIGlmIHJhbmRvbSwgbWl4
IHVwIHRoZSBzbGlkZSBhcnJheQoJaWYgKG9wdHMucmFuZG9tKSB7CgkJb3B0cy5y
YW5kb21NYXAgPSBbXTsKCQlmb3IgKHZhciBpID0gMDsgaSA8IGVscy5sZW5ndGg7
IGkrKykKCQkJb3B0cy5yYW5kb21NYXAucHVzaChpKTsKCQlvcHRzLnJhbmRvbU1h
cC5zb3J0KGZ1bmN0aW9uKGEsYikge3JldHVybiBNYXRoLnJhbmRvbSgpIC0gMC41
O30pOwoJCWlmIChzdGFydGluZ1NsaWRlU3BlY2lmaWVkKSB7CgkJCS8vIHRyeSB0
byBmaW5kIHRoZSBzcGVjaWZpZWQgc3RhcnRpbmcgc2xpZGUgYW5kIGlmIGZvdW5k
IHNldCBzdGFydCBzbGlkZSBpbmRleCBpbiB0aGUgbWFwIGFjY29yZGluZ2x5CgkJ
CWZvciAoIHZhciBjbnQgPSAwOyBjbnQgPCBlbHMubGVuZ3RoOyBjbnQrKyApIHsK
CQkJCWlmICggb3B0cy5zdGFydGluZ1NsaWRlID09IG9wdHMucmFuZG9tTWFwW2Nu
dF0gKSB7CgkJCQkJb3B0cy5yYW5kb21JbmRleCA9IGNudDsKCQkJCX0KCQkJfQoJ
CX0KCQllbHNlIHsKCQkJb3B0cy5yYW5kb21JbmRleCA9IDE7CgkJCW9wdHMuc3Rh
cnRpbmdTbGlkZSA9IG9wdHMucmFuZG9tTWFwWzFdOwoJCX0KCX0KCWVsc2UgaWYg
KG9wdHMuc3RhcnRpbmdTbGlkZSA+PSBlbHMubGVuZ3RoKQoJCW9wdHMuc3RhcnRp
bmdTbGlkZSA9IDA7IC8vIGNhdGNoIGJvZ3VzIGlucHV0CglvcHRzLmN1cnJTbGlk
ZSA9IG9wdHMuc3RhcnRpbmdTbGlkZSB8fCAwOwoJdmFyIGZpcnN0ID0gb3B0cy5z
dGFydGluZ1NsaWRlOwoKCS8vIHNldCBwb3NpdGlvbiBhbmQgekluZGV4IG9uIGFs
bCB0aGUgc2xpZGVzCgkkc2xpZGVzLmNzcyh7cG9zaXRpb246ICdhYnNvbHV0ZScs
IHRvcDowLCBsZWZ0OjB9KS5oaWRlKCkuZWFjaChmdW5jdGlvbihpKSB7CgkJdmFy
IHo7CgkJaWYgKG9wdHMuYmFja3dhcmRzKQoJCQl6ID0gZmlyc3QgPyBpIDw9IGZp
cnN0ID8gZWxzLmxlbmd0aCArIChpLWZpcnN0KSA6IGZpcnN0LWkgOiBlbHMubGVu
Z3RoLWk7CgkJZWxzZQoJCQl6ID0gZmlyc3QgPyBpID49IGZpcnN0ID8gZWxzLmxl
bmd0aCAtIChpLWZpcnN0KSA6IGZpcnN0LWkgOiBlbHMubGVuZ3RoLWk7CgkJJCh0
aGlzKS5jc3MoJ3otaW5kZXgnLCB6KTsKCX0pOwoKCS8vIG1ha2Ugc3VyZSBmaXJz
dCBzbGlkZSBpcyB2aXNpYmxlCgkkKGVsc1tmaXJzdF0pLmNzcygnb3BhY2l0eScs
MSkuc2hvdygpOyAvLyBvcGFjaXR5IGJpdCBuZWVkZWQgdG8gaGFuZGxlIHJlc3Rh
cnQgdXNlIGNhc2UKCXJlbW92ZUZpbHRlcihlbHNbZmlyc3RdLCBvcHRzKTsKCgkv
LyBzdHJldGNoIHNsaWRlcwoJaWYgKG9wdHMuZml0KSB7CgkJaWYgKCFvcHRzLmFz
cGVjdCkgewoJICAgICAgICBpZiAob3B0cy53aWR0aCkKCSAgICAgICAgICAgICRz
bGlkZXMud2lkdGgob3B0cy53aWR0aCk7CgkgICAgICAgIGlmIChvcHRzLmhlaWdo
dCAmJiBvcHRzLmhlaWdodCAhPSAnYXV0bycpCgkgICAgICAgICAgICAkc2xpZGVz
LmhlaWdodChvcHRzLmhlaWdodCk7CgkJfSBlbHNlIHsKCQkJJHNsaWRlcy5lYWNo
KGZ1bmN0aW9uKCl7CgkJCQl2YXIgJHNsaWRlID0gJCh0aGlzKTsKCQkJCXZhciBy
YXRpbyA9IChvcHRzLmFzcGVjdCA9PT0gdHJ1ZSkgPyAkc2xpZGUud2lkdGgoKS8k
c2xpZGUuaGVpZ2h0KCkgOiBvcHRzLmFzcGVjdDsKCQkJCWlmKCBvcHRzLndpZHRo
ICYmICRzbGlkZS53aWR0aCgpICE9IG9wdHMud2lkdGggKSB7CgkJCQkJJHNsaWRl
LndpZHRoKCBvcHRzLndpZHRoICk7CgkJCQkJJHNsaWRlLmhlaWdodCggb3B0cy53
aWR0aCAvIHJhdGlvICk7CgkJCQl9CgoJCQkJaWYoIG9wdHMuaGVpZ2h0ICYmICRz
bGlkZS5oZWlnaHQoKSA8IG9wdHMuaGVpZ2h0ICkgewoJCQkJCSRzbGlkZS5oZWln
aHQoIG9wdHMuaGVpZ2h0ICk7CgkJCQkJJHNsaWRlLndpZHRoKCBvcHRzLmhlaWdo
dCAqIHJhdGlvICk7CgkJCQl9CgkJCX0pOwoJCX0KCX0KCglpZiAob3B0cy5jZW50
ZXIgJiYgKCghb3B0cy5maXQpIHx8IG9wdHMuYXNwZWN0KSkgewoJCSRzbGlkZXMu
ZWFjaChmdW5jdGlvbigpewoJCQl2YXIgJHNsaWRlID0gJCh0aGlzKTsKCQkJJHNs
aWRlLmNzcyh7CgkJCQkibWFyZ2luLWxlZnQiOiBvcHRzLndpZHRoID8KCQkJCQko
KG9wdHMud2lkdGggLSAkc2xpZGUud2lkdGgoKSkgLyAyKSArICJweCIgOgoJCQkJ
CTAsCgkJCQkibWFyZ2luLXRvcCI6IG9wdHMuaGVpZ2h0ID8KCQkJCQkoKG9wdHMu
aGVpZ2h0IC0gJHNsaWRlLmhlaWdodCgpKSAvIDIpICsgInB4IiA6CgkJCQkJMAoJ
CQl9KTsKCQl9KTsKCX0KCglpZiAob3B0cy5jZW50ZXIgJiYgIW9wdHMuZml0ICYm
ICFvcHRzLnNsaWRlUmVzaXplKSB7CgkJJHNsaWRlcy5lYWNoKGZ1bmN0aW9uKCl7
CgkJCXZhciAkc2xpZGUgPSAkKHRoaXMpOwoJCQkkc2xpZGUuY3NzKHsKCQkJCSJt
YXJnaW4tbGVmdCI6IG9wdHMud2lkdGggPyAoKG9wdHMud2lkdGggLSAkc2xpZGUu
d2lkdGgoKSkgLyAyKSArICJweCIgOiAwLAoJCQkJIm1hcmdpbi10b3AiOiBvcHRz
LmhlaWdodCA/ICgob3B0cy5oZWlnaHQgLSAkc2xpZGUuaGVpZ2h0KCkpIC8gMikg
KyAicHgiIDogMAoJCQl9KTsKCQl9KTsKCX0KCQkKCS8vIHN0cmV0Y2ggY29udGFp
bmVyCgl2YXIgcmVzaGFwZSA9IChvcHRzLmNvbnRhaW5lclJlc2l6ZSB8fCBvcHRz
LmNvbnRhaW5lclJlc2l6ZUhlaWdodCkgJiYgISRjb250LmlubmVySGVpZ2h0KCk7
CglpZiAocmVzaGFwZSkgeyAvLyBkbyB0aGlzIG9ubHkgaWYgY29udGFpbmVyIGhh
cyBubyBzaXplIGh0dHA6Ly90aW55dXJsLmNvbS9kYTJvYTkKCQl2YXIgbWF4dyA9
IDAsIG1heGggPSAwOwoJCWZvcih2YXIgaj0wOyBqIDwgZWxzLmxlbmd0aDsgaisr
KSB7CgkJCXZhciAkZSA9ICQoZWxzW2pdKSwgZSA9ICRlWzBdLCB3ID0gJGUub3V0
ZXJXaWR0aCgpLCBoID0gJGUub3V0ZXJIZWlnaHQoKTsKCQkJaWYgKCF3KSB3ID0g
ZS5vZmZzZXRXaWR0aCB8fCBlLndpZHRoIHx8ICRlLmF0dHIoJ3dpZHRoJyk7CgkJ
CWlmICghaCkgaCA9IGUub2Zmc2V0SGVpZ2h0IHx8IGUuaGVpZ2h0IHx8ICRlLmF0
dHIoJ2hlaWdodCcpOwoJCQltYXh3ID0gdyA+IG1heHcgPyB3IDogbWF4dzsKCQkJ
bWF4aCA9IGggPiBtYXhoID8gaCA6IG1heGg7CgkJfQoJCWlmIChvcHRzLmNvbnRh
aW5lclJlc2l6ZSAmJiBtYXh3ID4gMCAmJiBtYXhoID4gMCkKCQkJJGNvbnQuY3Nz
KHt3aWR0aDptYXh3KydweCcsaGVpZ2h0Om1heGgrJ3B4J30pOwoJCWlmIChvcHRz
LmNvbnRhaW5lclJlc2l6ZUhlaWdodCAmJiBtYXhoID4gMCkKCQkJJGNvbnQuY3Nz
KHtoZWlnaHQ6bWF4aCsncHgnfSk7Cgl9CgoJdmFyIHBhdXNlRmxhZyA9IGZhbHNl
OyAgLy8gaHR0cHM6Ly9naXRodWIuY29tL21hbHN1cC9jeWNsZS9pc3N1ZXMvNDQK
CWlmIChvcHRzLnBhdXNlKQoJCSRjb250LmJpbmQoJ21vdXNlZW50ZXIuY3ljbGUn
LCBmdW5jdGlvbigpewoJCQlwYXVzZUZsYWcgPSB0cnVlOwoJCQl0aGlzLmN5Y2xl
UGF1c2UrKzsKCQkJdHJpZ2dlclBhdXNlKGNvbnQsIHRydWUpOwoJCX0pLmJpbmQo
J21vdXNlbGVhdmUuY3ljbGUnLCBmdW5jdGlvbigpewoJCQkJaWYgKHBhdXNlRmxh
ZykKCQkJCQl0aGlzLmN5Y2xlUGF1c2UtLTsKCQkJCXRyaWdnZXJQYXVzZShjb250
LCB0cnVlKTsKCQl9KTsKCglpZiAoc3VwcG9ydE11bHRpVHJhbnNpdGlvbnMob3B0
cykgPT09IGZhbHNlKQoJCXJldHVybiBmYWxzZTsKCgkvLyBhcHBhcmVudGx5IGEg
bG90IG9mIHBlb3BsZSB1c2UgaW1hZ2Ugc2xpZGVzaG93cyB3aXRob3V0IGhlaWdo
dC93aWR0aCBhdHRyaWJ1dGVzIG9uIHRoZSBpbWFnZXMuCgkvLyBDeWNsZSAyLjUw
KyByZXF1aXJlcyB0aGUgc2l6aW5nIGluZm8gZm9yIGV2ZXJ5IHNsaWRlOyB0aGlz
IGJsb2NrIHRyaWVzIHRvIGRlYWwgd2l0aCB0aGF0LgoJdmFyIHJlcXVldWUgPSBm
YWxzZTsKCW9wdGlvbnMucmVxdWV1ZUF0dGVtcHRzID0gb3B0aW9ucy5yZXF1ZXVl
QXR0ZW1wdHMgfHwgMDsKCSRzbGlkZXMuZWFjaChmdW5jdGlvbigpIHsKCQkvLyB0
cnkgdG8gZ2V0IGhlaWdodC93aWR0aCBvZiBlYWNoIHNsaWRlCgkJdmFyICRlbCA9
ICQodGhpcyk7CgkJdGhpcy5jeWNsZUggPSAob3B0cy5maXQgJiYgb3B0cy5oZWln
aHQpID8gb3B0cy5oZWlnaHQgOiAoJGVsLmhlaWdodCgpIHx8IHRoaXMub2Zmc2V0
SGVpZ2h0IHx8IHRoaXMuaGVpZ2h0IHx8ICRlbC5hdHRyKCdoZWlnaHQnKSB8fCAw
KTsKCQl0aGlzLmN5Y2xlVyA9IChvcHRzLmZpdCAmJiBvcHRzLndpZHRoKSA/IG9w
dHMud2lkdGggOiAoJGVsLndpZHRoKCkgfHwgdGhpcy5vZmZzZXRXaWR0aCB8fCB0
aGlzLndpZHRoIHx8ICRlbC5hdHRyKCd3aWR0aCcpIHx8IDApOwoKCQlpZiAoICRl
bC5pcygnaW1nJykgKSB7CgkJCS8vIHNpZ2guLiAgc25pZmZpbmcsIGhhY2tpbmcs
IHNocnVnZ2luZy4uLiAgdGhpcyBjcmFwcHkgaGFjayB0cmllcyB0byBhY2NvdW50
IGZvciB3aGF0IGJyb3dzZXJzIGRvIHdoZW4KCQkJLy8gYW4gaW1hZ2UgaXMgYmVp
bmcgZG93bmxvYWRlZCBhbmQgdGhlIG1hcmt1cCBkaWQgbm90IGluY2x1ZGUgc2l6
aW5nIGluZm8gKGhlaWdodC93aWR0aCBhdHRyaWJ1dGVzKTsKCQkJLy8gdGhlcmUg
c2VlbXMgdG8gYmUgc29tZSAiZGVmYXVsdCIgc2l6ZXMgdXNlZCBpbiB0aGlzIHNp
dHVhdGlvbgoJCQl2YXIgbG9hZGluZ0lFCT0gKCQuYnJvd3Nlci5tc2llICAmJiB0
aGlzLmN5Y2xlVyA9PSAyOCAmJiB0aGlzLmN5Y2xlSCA9PSAzMCAmJiAhdGhpcy5j
b21wbGV0ZSk7CgkJCXZhciBsb2FkaW5nRkYJPSAoJC5icm93c2VyLm1vemlsbGEg
JiYgdGhpcy5jeWNsZVcgPT0gMzQgJiYgdGhpcy5jeWNsZUggPT0gMTkgJiYgIXRo
aXMuY29tcGxldGUpOwoJCQl2YXIgbG9hZGluZ09wCT0gKCQuYnJvd3Nlci5vcGVy
YSAmJiAoKHRoaXMuY3ljbGVXID09IDQyICYmIHRoaXMuY3ljbGVIID09IDE5KSB8
fCAodGhpcy5jeWNsZVcgPT0gMzcgJiYgdGhpcy5jeWNsZUggPT0gMTcpKSAmJiAh
dGhpcy5jb21wbGV0ZSk7CgkJCXZhciBsb2FkaW5nT3RoZXIgPSAodGhpcy5jeWNs
ZUggPT09IDAgJiYgdGhpcy5jeWNsZVcgPT09IDAgJiYgIXRoaXMuY29tcGxldGUp
OwoJCQkvLyBkb24ndCByZXF1ZXVlIGZvciBpbWFnZXMgdGhhdCBhcmUgc3RpbGwg
bG9hZGluZyBidXQgaGF2ZSBhIHZhbGlkIHNpemUKCQkJaWYgKGxvYWRpbmdJRSB8
fCBsb2FkaW5nRkYgfHwgbG9hZGluZ09wIHx8IGxvYWRpbmdPdGhlcikgewoJCQkJ
aWYgKG8ucyAmJiBvcHRzLnJlcXVldWVPbkltYWdlTm90TG9hZGVkICYmICsrb3B0
aW9ucy5yZXF1ZXVlQXR0ZW1wdHMgPCAxMDApIHsgLy8gdHJhY2sgcmV0cnkgY291
bnQgc28gd2UgZG9uJ3QgbG9vcCBmb3JldmVyCgkJCQkJbG9nKG9wdGlvbnMucmVx
dWV1ZUF0dGVtcHRzLCcgLSBpbWcgc2xpZGUgbm90IGxvYWRlZCwgcmVxdWV1aW5n
IHNsaWRlc2hvdzogJywgdGhpcy5zcmMsIHRoaXMuY3ljbGVXLCB0aGlzLmN5Y2xl
SCk7CgkJCQkJc2V0VGltZW91dChmdW5jdGlvbigpIHskKG8ucyxvLmMpLmN5Y2xl
KG9wdGlvbnMpO30sIG9wdHMucmVxdWV1ZVRpbWVvdXQpOwoJCQkJCXJlcXVldWUg
PSB0cnVlOwoJCQkJCXJldHVybiBmYWxzZTsgLy8gYnJlYWsgZWFjaCBsb29wCgkJ
CQl9CgkJCQllbHNlIHsKCQkJCQlsb2coJ2NvdWxkIG5vdCBkZXRlcm1pbmUgc2l6
ZSBvZiBpbWFnZTogJyt0aGlzLnNyYywgdGhpcy5jeWNsZVcsIHRoaXMuY3ljbGVI
KTsKCQkJCX0KCQkJfQoJCX0KCQlyZXR1cm4gdHJ1ZTsKCX0pOwoKCWlmIChyZXF1
ZXVlKQoJCXJldHVybiBmYWxzZTsKCglvcHRzLmNzc0JlZm9yZSA9IG9wdHMuY3Nz
QmVmb3JlIHx8IHt9OwoJb3B0cy5jc3NBZnRlciA9IG9wdHMuY3NzQWZ0ZXIgfHwg
e307CglvcHRzLmNzc0ZpcnN0ID0gb3B0cy5jc3NGaXJzdCB8fCB7fTsKCW9wdHMu
YW5pbUluID0gb3B0cy5hbmltSW4gfHwge307CglvcHRzLmFuaW1PdXQgPSBvcHRz
LmFuaW1PdXQgfHwge307CgoJJHNsaWRlcy5ub3QoJzplcSgnK2ZpcnN0KycpJyku
Y3NzKG9wdHMuY3NzQmVmb3JlKTsKCSQoJHNsaWRlc1tmaXJzdF0pLmNzcyhvcHRz
LmNzc0ZpcnN0KTsKCglpZiAob3B0cy50aW1lb3V0KSB7CgkJb3B0cy50aW1lb3V0
ID0gcGFyc2VJbnQob3B0cy50aW1lb3V0LDEwKTsKCQkvLyBlbnN1cmUgdGhhdCB0
aW1lb3V0IGFuZCBzcGVlZCBzZXR0aW5ncyBhcmUgc2FuZQoJCWlmIChvcHRzLnNw
ZWVkLmNvbnN0cnVjdG9yID09IFN0cmluZykKCQkJb3B0cy5zcGVlZCA9ICQuZngu
c3BlZWRzW29wdHMuc3BlZWRdIHx8IHBhcnNlSW50KG9wdHMuc3BlZWQsMTApOwoJ
CWlmICghb3B0cy5zeW5jKQoJCQlvcHRzLnNwZWVkID0gb3B0cy5zcGVlZCAvIDI7
CgkJCgkJdmFyIGJ1ZmZlciA9IG9wdHMuZnggPT0gJ25vbmUnID8gMCA6IG9wdHMu
ZnggPT0gJ3NodWZmbGUnID8gNTAwIDogMjUwOwoJCXdoaWxlKChvcHRzLnRpbWVv
dXQgLSBvcHRzLnNwZWVkKSA8IGJ1ZmZlcikgLy8gc2FuaXRpemUgdGltZW91dAoJ
CQlvcHRzLnRpbWVvdXQgKz0gb3B0cy5zcGVlZDsKCX0KCWlmIChvcHRzLmVhc2lu
ZykKCQlvcHRzLmVhc2VJbiA9IG9wdHMuZWFzZU91dCA9IG9wdHMuZWFzaW5nOwoJ
aWYgKCFvcHRzLnNwZWVkSW4pCgkJb3B0cy5zcGVlZEluID0gb3B0cy5zcGVlZDsK
CWlmICghb3B0cy5zcGVlZE91dCkKCQlvcHRzLnNwZWVkT3V0ID0gb3B0cy5zcGVl
ZDsKCglvcHRzLnNsaWRlQ291bnQgPSBlbHMubGVuZ3RoOwoJb3B0cy5jdXJyU2xp
ZGUgPSBvcHRzLmxhc3RTbGlkZSA9IGZpcnN0OwoJaWYgKG9wdHMucmFuZG9tKSB7
CgkJaWYgKCsrb3B0cy5yYW5kb21JbmRleCA9PSBlbHMubGVuZ3RoKQoJCQlvcHRz
LnJhbmRvbUluZGV4ID0gMDsKCQlvcHRzLm5leHRTbGlkZSA9IG9wdHMucmFuZG9t
TWFwW29wdHMucmFuZG9tSW5kZXhdOwoJfQoJZWxzZSBpZiAob3B0cy5iYWNrd2Fy
ZHMpCgkJb3B0cy5uZXh0U2xpZGUgPSBvcHRzLnN0YXJ0aW5nU2xpZGUgPT09IDAg
PyAoZWxzLmxlbmd0aC0xKSA6IG9wdHMuc3RhcnRpbmdTbGlkZS0xOwoJZWxzZQoJ
CW9wdHMubmV4dFNsaWRlID0gb3B0cy5zdGFydGluZ1NsaWRlID49IChlbHMubGVu
Z3RoLTEpID8gMCA6IG9wdHMuc3RhcnRpbmdTbGlkZSsxOwoKCS8vIHJ1biB0cmFu
c2l0aW9uIGluaXQgZm4KCWlmICghb3B0cy5tdWx0aUZ4KSB7CgkJdmFyIGluaXQg
PSAkLmZuLmN5Y2xlLnRyYW5zaXRpb25zW29wdHMuZnhdOwoJCWlmICgkLmlzRnVu
Y3Rpb24oaW5pdCkpCgkJCWluaXQoJGNvbnQsICRzbGlkZXMsIG9wdHMpOwoJCWVs
c2UgaWYgKG9wdHMuZnggIT0gJ2N1c3RvbScgJiYgIW9wdHMubXVsdGlGeCkgewoJ
CQlsb2coJ3Vua25vd24gdHJhbnNpdGlvbjogJyArIG9wdHMuZngsJzsgc2xpZGVz
aG93IHRlcm1pbmF0aW5nJyk7CgkJCXJldHVybiBmYWxzZTsKCQl9Cgl9CgoJLy8g
ZmlyZSBhcnRpZmljaWFsIGV2ZW50cwoJdmFyIGUwID0gJHNsaWRlc1tmaXJzdF07
CglpZiAoIW9wdHMuc2tpcEluaXRpYWxpemF0aW9uQ2FsbGJhY2tzKSB7CgkJaWYg
KG9wdHMuYmVmb3JlLmxlbmd0aCkKCQkJb3B0cy5iZWZvcmVbMF0uYXBwbHkoZTAs
IFtlMCwgZTAsIG9wdHMsIHRydWVdKTsKCQlpZiAob3B0cy5hZnRlci5sZW5ndGgp
CgkJCW9wdHMuYWZ0ZXJbMF0uYXBwbHkoZTAsIFtlMCwgZTAsIG9wdHMsIHRydWVd
KTsKCX0KCWlmIChvcHRzLm5leHQpCgkJJChvcHRzLm5leHQpLmJpbmQob3B0cy5w
cmV2TmV4dEV2ZW50LGZ1bmN0aW9uKCl7cmV0dXJuIGFkdmFuY2Uob3B0cywxKTt9
KTsKCWlmIChvcHRzLnByZXYpCgkJJChvcHRzLnByZXYpLmJpbmQob3B0cy5wcmV2
TmV4dEV2ZW50LGZ1bmN0aW9uKCl7cmV0dXJuIGFkdmFuY2Uob3B0cywwKTt9KTsK
CWlmIChvcHRzLnBhZ2VyIHx8IG9wdHMucGFnZXJBbmNob3JCdWlsZGVyKQoJCWJ1
aWxkUGFnZXIoZWxzLG9wdHMpOwoKCWV4cG9zZUFkZFNsaWRlKG9wdHMsIGVscyk7
CgoJcmV0dXJuIG9wdHM7Cn0KCi8vIHNhdmUgb2ZmIG9yaWdpbmFsIG9wdHMgc28g
d2UgY2FuIHJlc3RvcmUgYWZ0ZXIgY2xlYXJpbmcgc3RhdGUKZnVuY3Rpb24gc2F2
ZU9yaWdpbmFsT3B0cyhvcHRzKSB7CglvcHRzLm9yaWdpbmFsID0geyBiZWZvcmU6
IFtdLCBhZnRlcjogW10gfTsKCW9wdHMub3JpZ2luYWwuY3NzQmVmb3JlID0gJC5l
eHRlbmQoe30sIG9wdHMuY3NzQmVmb3JlKTsKCW9wdHMub3JpZ2luYWwuY3NzQWZ0
ZXIgID0gJC5leHRlbmQoe30sIG9wdHMuY3NzQWZ0ZXIpOwoJb3B0cy5vcmlnaW5h
bC5hbmltSW4JPSAkLmV4dGVuZCh7fSwgb3B0cy5hbmltSW4pOwoJb3B0cy5vcmln
aW5hbC5hbmltT3V0ICAgPSAkLmV4dGVuZCh7fSwgb3B0cy5hbmltT3V0KTsKCSQu
ZWFjaChvcHRzLmJlZm9yZSwgZnVuY3Rpb24oKSB7IG9wdHMub3JpZ2luYWwuYmVm
b3JlLnB1c2godGhpcyk7IH0pOwoJJC5lYWNoKG9wdHMuYWZ0ZXIsICBmdW5jdGlv
bigpIHsgb3B0cy5vcmlnaW5hbC5hZnRlci5wdXNoKHRoaXMpOyB9KTsKfQoKZnVu
Y3Rpb24gc3VwcG9ydE11bHRpVHJhbnNpdGlvbnMob3B0cykgewoJdmFyIGksIHR4
LCB0eHMgPSAkLmZuLmN5Y2xlLnRyYW5zaXRpb25zOwoJLy8gbG9vayBmb3IgbXVs
dGlwbGUgZWZmZWN0cwoJaWYgKG9wdHMuZnguaW5kZXhPZignLCcpID4gMCkgewoJ
CW9wdHMubXVsdGlGeCA9IHRydWU7CgkJb3B0cy5meHMgPSBvcHRzLmZ4LnJlcGxh
Y2UoL1xzKi9nLCcnKS5zcGxpdCgnLCcpOwoJCS8vIGRpc2NhcmQgYW55IGJvZ3Vz
IGVmZmVjdCBuYW1lcwoJCWZvciAoaT0wOyBpIDwgb3B0cy5meHMubGVuZ3RoOyBp
KyspIHsKCQkJdmFyIGZ4ID0gb3B0cy5meHNbaV07CgkJCXR4ID0gdHhzW2Z4XTsK
CQkJaWYgKCF0eCB8fCAhdHhzLmhhc093blByb3BlcnR5KGZ4KSB8fCAhJC5pc0Z1
bmN0aW9uKHR4KSkgewoJCQkJbG9nKCdkaXNjYXJkaW5nIHVua25vd24gdHJhbnNp
dGlvbjogJyxmeCk7CgkJCQlvcHRzLmZ4cy5zcGxpY2UoaSwxKTsKCQkJCWktLTsK
CQkJfQoJCX0KCQkvLyBpZiB3ZSBoYXZlIGFuIGVtcHR5IGxpc3QgdGhlbiB3ZSB0
aHJldyBldmVyeXRoaW5nIGF3YXkhCgkJaWYgKCFvcHRzLmZ4cy5sZW5ndGgpIHsK
CQkJbG9nKCdObyB2YWxpZCB0cmFuc2l0aW9ucyBuYW1lZDsgc2xpZGVzaG93IHRl
cm1pbmF0aW5nLicpOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJfQoJZWxzZSBpZiAo
b3B0cy5meCA9PSAnYWxsJykgeyAgLy8gYXV0by1nZW4gdGhlIGxpc3Qgb2YgdHJh
bnNpdGlvbnMKCQlvcHRzLm11bHRpRnggPSB0cnVlOwoJCW9wdHMuZnhzID0gW107
CgkJZm9yICh2YXIgcCBpbiB0eHMpIHsKCQkJaWYgKHR4cy5oYXNPd25Qcm9wZXJ0
eShwKSkgewoJCQkJdHggPSB0eHNbcF07CgkJCQlpZiAodHhzLmhhc093blByb3Bl
cnR5KHApICYmICQuaXNGdW5jdGlvbih0eCkpCgkJCQkJb3B0cy5meHMucHVzaChw
KTsKCQkJfQoJCX0KCX0KCWlmIChvcHRzLm11bHRpRnggJiYgb3B0cy5yYW5kb21p
emVFZmZlY3RzKSB7CgkJLy8gbXVuZ2UgdGhlIGZ4cyBhcnJheSB0byBtYWtlIGVm
ZmVjdCBzZWxlY3Rpb24gcmFuZG9tCgkJdmFyIHIxID0gTWF0aC5mbG9vcihNYXRo
LnJhbmRvbSgpICogMjApICsgMzA7CgkJZm9yIChpID0gMDsgaSA8IHIxOyBpKysp
IHsKCQkJdmFyIHIyID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogb3B0cy5m
eHMubGVuZ3RoKTsKCQkJb3B0cy5meHMucHVzaChvcHRzLmZ4cy5zcGxpY2UocjIs
MSlbMF0pOwoJCX0KCQlkZWJ1ZygncmFuZG9taXplZCBmeCBzZXF1ZW5jZTogJyxv
cHRzLmZ4cyk7Cgl9CglyZXR1cm4gdHJ1ZTsKfQoKLy8gcHJvdmlkZSBhIG1lY2hh
bmlzbSBmb3IgYWRkaW5nIHNsaWRlcyBhZnRlciB0aGUgc2xpZGVzaG93IGhhcyBz
dGFydGVkCmZ1bmN0aW9uIGV4cG9zZUFkZFNsaWRlKG9wdHMsIGVscykgewoJb3B0
cy5hZGRTbGlkZSA9IGZ1bmN0aW9uKG5ld1NsaWRlLCBwcmVwZW5kKSB7CgkJdmFy
ICRzID0gJChuZXdTbGlkZSksIHMgPSAkc1swXTsKCQlpZiAoIW9wdHMuYXV0b3N0
b3BDb3VudCkKCQkJb3B0cy5jb3VudGRvd24rKzsKCQllbHNbcHJlcGVuZD8ndW5z
aGlmdCc6J3B1c2gnXShzKTsKCQlpZiAob3B0cy5lbHMpCgkJCW9wdHMuZWxzW3By
ZXBlbmQ/J3Vuc2hpZnQnOidwdXNoJ10ocyk7IC8vIHNodWZmbGUgbmVlZHMgdGhp
cwoJCW9wdHMuc2xpZGVDb3VudCA9IGVscy5sZW5ndGg7CgoJCS8vIGFkZCB0aGUg
c2xpZGUgdG8gdGhlIHJhbmRvbSBtYXAgYW5kIHJlc29ydAoJCWlmIChvcHRzLnJh
bmRvbSkgewoJCQlvcHRzLnJhbmRvbU1hcC5wdXNoKG9wdHMuc2xpZGVDb3VudC0x
KTsKCQkJb3B0cy5yYW5kb21NYXAuc29ydChmdW5jdGlvbihhLGIpIHtyZXR1cm4g
TWF0aC5yYW5kb20oKSAtIDAuNTt9KTsKCQl9CgoJCSRzLmNzcygncG9zaXRpb24n
LCdhYnNvbHV0ZScpOwoJCSRzW3ByZXBlbmQ/J3ByZXBlbmRUbyc6J2FwcGVuZFRv
J10ob3B0cy4kY29udCk7CgoJCWlmIChwcmVwZW5kKSB7CgkJCW9wdHMuY3VyclNs
aWRlKys7CgkJCW9wdHMubmV4dFNsaWRlKys7CgkJfQoKCQlpZiAoISQuc3VwcG9y
dC5vcGFjaXR5ICYmIG9wdHMuY2xlYXJ0eXBlICYmICFvcHRzLmNsZWFydHlwZU5v
QmcpCgkJCWNsZWFyVHlwZUZpeCgkcyk7CgoJCWlmIChvcHRzLmZpdCAmJiBvcHRz
LndpZHRoKQoJCQkkcy53aWR0aChvcHRzLndpZHRoKTsKCQlpZiAob3B0cy5maXQg
JiYgb3B0cy5oZWlnaHQgJiYgb3B0cy5oZWlnaHQgIT0gJ2F1dG8nKQoJCQkkcy5o
ZWlnaHQob3B0cy5oZWlnaHQpOwoJCXMuY3ljbGVIID0gKG9wdHMuZml0ICYmIG9w
dHMuaGVpZ2h0KSA/IG9wdHMuaGVpZ2h0IDogJHMuaGVpZ2h0KCk7CgkJcy5jeWNs
ZVcgPSAob3B0cy5maXQgJiYgb3B0cy53aWR0aCkgPyBvcHRzLndpZHRoIDogJHMu
d2lkdGgoKTsKCgkJJHMuY3NzKG9wdHMuY3NzQmVmb3JlKTsKCgkJaWYgKG9wdHMu
cGFnZXIgfHwgb3B0cy5wYWdlckFuY2hvckJ1aWxkZXIpCgkJCSQuZm4uY3ljbGUu
Y3JlYXRlUGFnZXJBbmNob3IoZWxzLmxlbmd0aC0xLCBzLCAkKG9wdHMucGFnZXIp
LCBlbHMsIG9wdHMpOwoKCQlpZiAoJC5pc0Z1bmN0aW9uKG9wdHMub25BZGRTbGlk
ZSkpCgkJCW9wdHMub25BZGRTbGlkZSgkcyk7CgkJZWxzZQoJCQkkcy5oaWRlKCk7
IC8vIGRlZmF1bHQgYmVoYXZpb3IKCX07Cn0KCi8vIHJlc2V0IGludGVybmFsIHN0
YXRlOyB3ZSBkbyB0aGlzIG9uIGV2ZXJ5IHBhc3MgaW4gb3JkZXIgdG8gc3VwcG9y
dCBtdWx0aXBsZSBlZmZlY3RzCiQuZm4uY3ljbGUucmVzZXRTdGF0ZSA9IGZ1bmN0
aW9uKG9wdHMsIGZ4KSB7CglmeCA9IGZ4IHx8IG9wdHMuZng7CglvcHRzLmJlZm9y
ZSA9IFtdOyBvcHRzLmFmdGVyID0gW107CglvcHRzLmNzc0JlZm9yZSA9ICQuZXh0
ZW5kKHt9LCBvcHRzLm9yaWdpbmFsLmNzc0JlZm9yZSk7CglvcHRzLmNzc0FmdGVy
ICA9ICQuZXh0ZW5kKHt9LCBvcHRzLm9yaWdpbmFsLmNzc0FmdGVyKTsKCW9wdHMu
YW5pbUluCT0gJC5leHRlbmQoe30sIG9wdHMub3JpZ2luYWwuYW5pbUluKTsKCW9w
dHMuYW5pbU91dCAgID0gJC5leHRlbmQoe30sIG9wdHMub3JpZ2luYWwuYW5pbU91
dCk7CglvcHRzLmZ4Rm4gPSBudWxsOwoJJC5lYWNoKG9wdHMub3JpZ2luYWwuYmVm
b3JlLCBmdW5jdGlvbigpIHsgb3B0cy5iZWZvcmUucHVzaCh0aGlzKTsgfSk7Cgkk
LmVhY2gob3B0cy5vcmlnaW5hbC5hZnRlciwgIGZ1bmN0aW9uKCkgeyBvcHRzLmFm
dGVyLnB1c2godGhpcyk7IH0pOwoKCS8vIHJlLWluaXQKCXZhciBpbml0ID0gJC5m
bi5jeWNsZS50cmFuc2l0aW9uc1tmeF07CglpZiAoJC5pc0Z1bmN0aW9uKGluaXQp
KQoJCWluaXQob3B0cy4kY29udCwgJChvcHRzLmVsZW1lbnRzKSwgb3B0cyk7Cn07
CgovLyB0aGlzIGlzIHRoZSBtYWluIGVuZ2luZSBmbiwgaXQgaGFuZGxlcyB0aGUg
dGltZW91dHMsIGNhbGxiYWNrcyBhbmQgc2xpZGUgaW5kZXggbWdtdApmdW5jdGlv
biBnbyhlbHMsIG9wdHMsIG1hbnVhbCwgZndkKSB7Cgl2YXIgcCA9IG9wdHMuJGNv
bnRbMF0sIGN1cnIgPSBlbHNbb3B0cy5jdXJyU2xpZGVdLCBuZXh0ID0gZWxzW29w
dHMubmV4dFNsaWRlXTsKCgkvLyBvcHRzLmJ1c3kgaXMgdHJ1ZSBpZiB3ZSdyZSBp
biB0aGUgbWlkZGxlIG9mIGFuIGFuaW1hdGlvbgoJaWYgKG1hbnVhbCAmJiBvcHRz
LmJ1c3kgJiYgb3B0cy5tYW51YWxUcnVtcCkgewoJCS8vIGxldCBtYW51YWwgdHJh
bnNpdGlvbnMgcmVxdWVzdHMgdHJ1bXAgYWN0aXZlIG9uZXMKCQlkZWJ1ZygnbWFu
dWFsVHJ1bXAgaW4gZ28oKSwgc3RvcHBpbmcgYWN0aXZlIHRyYW5zaXRpb24nKTsK
CQkkKGVscykuc3RvcCh0cnVlLHRydWUpOwoJCW9wdHMuYnVzeSA9IDA7CgkJY2xl
YXJUaW1lb3V0KHAuY3ljbGVUaW1lb3V0KTsKCX0KCgkvLyBkb24ndCBiZWdpbiBh
bm90aGVyIHRpbWVvdXQtYmFzZWQgdHJhbnNpdGlvbiBpZiB0aGVyZSBpcyBvbmUg
YWN0aXZlCglpZiAob3B0cy5idXN5KSB7CgkJZGVidWcoJ3RyYW5zaXRpb24gYWN0
aXZlLCBpZ25vcmluZyBuZXcgdHggcmVxdWVzdCcpOwoJCXJldHVybjsKCX0KCgoJ
Ly8gc3RvcCBjeWNsaW5nIGlmIHdlIGhhdmUgYW4gb3V0c3RhbmRpbmcgc3RvcCBy
ZXF1ZXN0CglpZiAocC5jeWNsZVN0b3AgIT0gb3B0cy5zdG9wQ291bnQgfHwgcC5j
eWNsZVRpbWVvdXQgPT09IDAgJiYgIW1hbnVhbCkKCQlyZXR1cm47CgoJLy8gY2hl
Y2sgdG8gc2VlIGlmIHdlIHNob3VsZCBzdG9wIGN5Y2xpbmcgYmFzZWQgb24gYXV0
b3N0b3Agb3B0aW9ucwoJaWYgKCFtYW51YWwgJiYgIXAuY3ljbGVQYXVzZSAmJiAh
b3B0cy5ib3VuY2UgJiYKCQkoKG9wdHMuYXV0b3N0b3AgJiYgKC0tb3B0cy5jb3Vu
dGRvd24gPD0gMCkpIHx8CgkJKG9wdHMubm93cmFwICYmICFvcHRzLnJhbmRvbSAm
JiBvcHRzLm5leHRTbGlkZSA8IG9wdHMuY3VyclNsaWRlKSkpIHsKCQlpZiAob3B0
cy5lbmQpCgkJCW9wdHMuZW5kKG9wdHMpOwoJCXJldHVybjsKCX0KCgkvLyBpZiBz
bGlkZXNob3cgaXMgcGF1c2VkLCBvbmx5IHRyYW5zaXRpb24gb24gYSBtYW51YWwg
dHJpZ2dlcgoJdmFyIGNoYW5nZWQgPSBmYWxzZTsKCWlmICgobWFudWFsIHx8ICFw
LmN5Y2xlUGF1c2UpICYmIChvcHRzLm5leHRTbGlkZSAhPSBvcHRzLmN1cnJTbGlk
ZSkpIHsKCQljaGFuZ2VkID0gdHJ1ZTsKCQl2YXIgZnggPSBvcHRzLmZ4OwoJCS8v
IGtlZXAgdHJ5aW5nIHRvIGdldCB0aGUgc2xpZGUgc2l6ZSBpZiB3ZSBkb24ndCBo
YXZlIGl0IHlldAoJCWN1cnIuY3ljbGVIID0gY3Vyci5jeWNsZUggfHwgJChjdXJy
KS5oZWlnaHQoKTsKCQljdXJyLmN5Y2xlVyA9IGN1cnIuY3ljbGVXIHx8ICQoY3Vy
cikud2lkdGgoKTsKCQluZXh0LmN5Y2xlSCA9IG5leHQuY3ljbGVIIHx8ICQobmV4
dCkuaGVpZ2h0KCk7CgkJbmV4dC5jeWNsZVcgPSBuZXh0LmN5Y2xlVyB8fCAkKG5l
eHQpLndpZHRoKCk7CgoJCS8vIHN1cHBvcnQgbXVsdGlwbGUgdHJhbnNpdGlvbiB0
eXBlcwoJCWlmIChvcHRzLm11bHRpRngpIHsKCQkJaWYgKGZ3ZCAmJiAob3B0cy5s
YXN0RnggPT09IHVuZGVmaW5lZCB8fCArK29wdHMubGFzdEZ4ID49IG9wdHMuZnhz
Lmxlbmd0aCkpCgkJCQlvcHRzLmxhc3RGeCA9IDA7CgkJCWVsc2UgaWYgKCFmd2Qg
JiYgKG9wdHMubGFzdEZ4ID09PSB1bmRlZmluZWQgfHwgLS1vcHRzLmxhc3RGeCA8
IDApKQoJCQkJb3B0cy5sYXN0RnggPSBvcHRzLmZ4cy5sZW5ndGggLSAxOwoJCQlm
eCA9IG9wdHMuZnhzW29wdHMubGFzdEZ4XTsKCQl9CgoJCS8vIG9uZS10aW1lIGZ4
IG92ZXJyaWRlcyBhcHBseSB0bzogICQoJ2RpdicpLmN5Y2xlKDMsJ3pvb20nKTsK
CQlpZiAob3B0cy5vbmVUaW1lRngpIHsKCQkJZnggPSBvcHRzLm9uZVRpbWVGeDsK
CQkJb3B0cy5vbmVUaW1lRnggPSBudWxsOwoJCX0KCgkJJC5mbi5jeWNsZS5yZXNl
dFN0YXRlKG9wdHMsIGZ4KTsKCgkJLy8gcnVuIHRoZSBiZWZvcmUgY2FsbGJhY2tz
CgkJaWYgKG9wdHMuYmVmb3JlLmxlbmd0aCkKCQkJJC5lYWNoKG9wdHMuYmVmb3Jl
LCBmdW5jdGlvbihpLG8pIHsKCQkJCWlmIChwLmN5Y2xlU3RvcCAhPSBvcHRzLnN0
b3BDb3VudCkgcmV0dXJuOwoJCQkJby5hcHBseShuZXh0LCBbY3VyciwgbmV4dCwg
b3B0cywgZndkXSk7CgkJCX0pOwoKCQkvLyBzdGFnZSB0aGUgYWZ0ZXIgY2FsbGFj
a3MKCQl2YXIgYWZ0ZXIgPSBmdW5jdGlvbigpIHsKCQkJb3B0cy5idXN5ID0gMDsK
CQkJJC5lYWNoKG9wdHMuYWZ0ZXIsIGZ1bmN0aW9uKGksbykgewoJCQkJaWYgKHAu
Y3ljbGVTdG9wICE9IG9wdHMuc3RvcENvdW50KSByZXR1cm47CgkJCQlvLmFwcGx5
KG5leHQsIFtjdXJyLCBuZXh0LCBvcHRzLCBmd2RdKTsKCQkJfSk7CgkJCWlmICgh
cC5jeWNsZVN0b3ApIHsKCQkJCS8vIHF1ZXVlIG5leHQgdHJhbnNpdGlvbgoJCQkJ
cXVldWVOZXh0KCk7CgkJCX0KCQl9OwoKCQlkZWJ1ZygndHggZmlyaW5nKCcrZngr
Jyk7IGN1cnJTbGlkZTogJyArIG9wdHMuY3VyclNsaWRlICsgJzsgbmV4dFNsaWRl
OiAnICsgb3B0cy5uZXh0U2xpZGUpOwoJCQoJCS8vIGdldCByZWFkeSB0byBwZXJm
b3JtIHRoZSB0cmFuc2l0aW9uCgkJb3B0cy5idXN5ID0gMTsKCQlpZiAob3B0cy5m
eEZuKSAvLyBmeCBmdW5jdGlvbiBwcm92aWRlZD8KCQkJb3B0cy5meEZuKGN1cnIs
IG5leHQsIG9wdHMsIGFmdGVyLCBmd2QsIG1hbnVhbCAmJiBvcHRzLmZhc3RPbkV2
ZW50KTsKCQllbHNlIGlmICgkLmlzRnVuY3Rpb24oJC5mbi5jeWNsZVtvcHRzLmZ4
XSkpIC8vIGZ4IHBsdWdpbiA/CgkJCSQuZm4uY3ljbGVbb3B0cy5meF0oY3Vyciwg
bmV4dCwgb3B0cywgYWZ0ZXIsIGZ3ZCwgbWFudWFsICYmIG9wdHMuZmFzdE9uRXZl
bnQpOwoJCWVsc2UKCQkJJC5mbi5jeWNsZS5jdXN0b20oY3VyciwgbmV4dCwgb3B0
cywgYWZ0ZXIsIGZ3ZCwgbWFudWFsICYmIG9wdHMuZmFzdE9uRXZlbnQpOwoJfQoJ
ZWxzZSB7CgkJcXVldWVOZXh0KCk7Cgl9CgoJaWYgKGNoYW5nZWQgfHwgb3B0cy5u
ZXh0U2xpZGUgPT0gb3B0cy5jdXJyU2xpZGUpIHsKCQkvLyBjYWxjdWxhdGUgdGhl
IG5leHQgc2xpZGUKCQl2YXIgcm9sbDsKCQlvcHRzLmxhc3RTbGlkZSA9IG9wdHMu
Y3VyclNsaWRlOwoJCWlmIChvcHRzLnJhbmRvbSkgewoJCQlvcHRzLmN1cnJTbGlk
ZSA9IG9wdHMubmV4dFNsaWRlOwoJCQlpZiAoKytvcHRzLnJhbmRvbUluZGV4ID09
IGVscy5sZW5ndGgpIHsKCQkJCW9wdHMucmFuZG9tSW5kZXggPSAwOwoJCQkJb3B0
cy5yYW5kb21NYXAuc29ydChmdW5jdGlvbihhLGIpIHtyZXR1cm4gTWF0aC5yYW5k
b20oKSAtIDAuNTt9KTsKCQkJfQoJCQlvcHRzLm5leHRTbGlkZSA9IG9wdHMucmFu
ZG9tTWFwW29wdHMucmFuZG9tSW5kZXhdOwoJCQlpZiAob3B0cy5uZXh0U2xpZGUg
PT0gb3B0cy5jdXJyU2xpZGUpCgkJCQlvcHRzLm5leHRTbGlkZSA9IChvcHRzLmN1
cnJTbGlkZSA9PSBvcHRzLnNsaWRlQ291bnQgLSAxKSA/IDAgOiBvcHRzLmN1cnJT
bGlkZSArIDE7CgkJfQoJCWVsc2UgaWYgKG9wdHMuYmFja3dhcmRzKSB7CgkJCXJv
bGwgPSAob3B0cy5uZXh0U2xpZGUgLSAxKSA8IDA7CgkJCWlmIChyb2xsICYmIG9w
dHMuYm91bmNlKSB7CgkJCQlvcHRzLmJhY2t3YXJkcyA9ICFvcHRzLmJhY2t3YXJk
czsKCQkJCW9wdHMubmV4dFNsaWRlID0gMTsKCQkJCW9wdHMuY3VyclNsaWRlID0g
MDsKCQkJfQoJCQllbHNlIHsKCQkJCW9wdHMubmV4dFNsaWRlID0gcm9sbCA/IChl
bHMubGVuZ3RoLTEpIDogb3B0cy5uZXh0U2xpZGUtMTsKCQkJCW9wdHMuY3VyclNs
aWRlID0gcm9sbCA/IDAgOiBvcHRzLm5leHRTbGlkZSsxOwoJCQl9CgkJfQoJCWVs
c2UgeyAvLyBzZXF1ZW5jZQoJCQlyb2xsID0gKG9wdHMubmV4dFNsaWRlICsgMSkg
PT0gZWxzLmxlbmd0aDsKCQkJaWYgKHJvbGwgJiYgb3B0cy5ib3VuY2UpIHsKCQkJ
CW9wdHMuYmFja3dhcmRzID0gIW9wdHMuYmFja3dhcmRzOwoJCQkJb3B0cy5uZXh0
U2xpZGUgPSBlbHMubGVuZ3RoLTI7CgkJCQlvcHRzLmN1cnJTbGlkZSA9IGVscy5s
ZW5ndGgtMTsKCQkJfQoJCQllbHNlIHsKCQkJCW9wdHMubmV4dFNsaWRlID0gcm9s
bCA/IDAgOiBvcHRzLm5leHRTbGlkZSsxOwoJCQkJb3B0cy5jdXJyU2xpZGUgPSBy
b2xsID8gZWxzLmxlbmd0aC0xIDogb3B0cy5uZXh0U2xpZGUtMTsKCQkJfQoJCX0K
CX0KCWlmIChjaGFuZ2VkICYmIG9wdHMucGFnZXIpCgkJb3B0cy51cGRhdGVBY3Rp
dmVQYWdlckxpbmsob3B0cy5wYWdlciwgb3B0cy5jdXJyU2xpZGUsIG9wdHMuYWN0
aXZlUGFnZXJDbGFzcyk7CgkKCWZ1bmN0aW9uIHF1ZXVlTmV4dCgpIHsKCQkvLyBz
dGFnZSB0aGUgbmV4dCB0cmFuc2l0aW9uCgkJdmFyIG1zID0gMCwgdGltZW91dCA9
IG9wdHMudGltZW91dDsKCQlpZiAob3B0cy50aW1lb3V0ICYmICFvcHRzLmNvbnRp
bnVvdXMpIHsKCQkJbXMgPSBnZXRUaW1lb3V0KGVsc1tvcHRzLmN1cnJTbGlkZV0s
IGVsc1tvcHRzLm5leHRTbGlkZV0sIG9wdHMsIGZ3ZCk7CiAgICAgICAgIGlmIChv
cHRzLmZ4ID09ICdzaHVmZmxlJykKICAgICAgICAgICAgbXMgLT0gb3B0cy5zcGVl
ZE91dDsKICAgICAgfQoJCWVsc2UgaWYgKG9wdHMuY29udGludW91cyAmJiBwLmN5
Y2xlUGF1c2UpIC8vIGNvbnRpbnVvdXMgc2hvd3Mgd29yayBvZmYgYW4gYWZ0ZXIg
Y2FsbGJhY2ssIG5vdCB0aGlzIHRpbWVyIGxvZ2ljCgkJCW1zID0gMTA7CgkJaWYg
KG1zID4gMCkKCQkJcC5jeWNsZVRpbWVvdXQgPSBzZXRUaW1lb3V0KGZ1bmN0aW9u
KCl7IGdvKGVscywgb3B0cywgMCwgIW9wdHMuYmFja3dhcmRzKTsgfSwgbXMpOwoJ
fQp9CgovLyBpbnZva2VkIGFmdGVyIHRyYW5zaXRpb24KJC5mbi5jeWNsZS51cGRh
dGVBY3RpdmVQYWdlckxpbmsgPSBmdW5jdGlvbihwYWdlciwgY3VyclNsaWRlLCBj
bHNOYW1lKSB7CiAgICQocGFnZXIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAk
KHRoaXMpLmNoaWxkcmVuKCkucmVtb3ZlQ2xhc3MoY2xzTmFtZSkuZXEoY3VyclNs
aWRlKS5hZGRDbGFzcyhjbHNOYW1lKTsKICAgfSk7Cn07CgovLyBjYWxjdWxhdGUg
dGltZW91dCB2YWx1ZSBmb3IgY3VycmVudCB0cmFuc2l0aW9uCmZ1bmN0aW9uIGdl
dFRpbWVvdXQoY3VyciwgbmV4dCwgb3B0cywgZndkKSB7CglpZiAob3B0cy50aW1l
b3V0Rm4pIHsKCQkvLyBjYWxsIHVzZXIgcHJvdmlkZWQgY2FsYyBmbgoJCXZhciB0
ID0gb3B0cy50aW1lb3V0Rm4uY2FsbChjdXJyLGN1cnIsbmV4dCxvcHRzLGZ3ZCk7
CgkJd2hpbGUgKG9wdHMuZnggIT0gJ25vbmUnICYmICh0IC0gb3B0cy5zcGVlZCkg
PCAyNTApIC8vIHNhbml0aXplIHRpbWVvdXQKCQkJdCArPSBvcHRzLnNwZWVkOwoJ
CWRlYnVnKCdjYWxjdWxhdGVkIHRpbWVvdXQ6ICcgKyB0ICsgJzsgc3BlZWQ6ICcg
KyBvcHRzLnNwZWVkKTsKCQlpZiAodCAhPT0gZmFsc2UpCgkJCXJldHVybiB0OwoJ
fQoJcmV0dXJuIG9wdHMudGltZW91dDsKfQoKLy8gZXhwb3NlIG5leHQvcHJldiBm
dW5jdGlvbiwgY2FsbGVyIG11c3QgcGFzcyBpbiBzdGF0ZQokLmZuLmN5Y2xlLm5l
eHQgPSBmdW5jdGlvbihvcHRzKSB7IGFkdmFuY2Uob3B0cywxKTsgfTsKJC5mbi5j
eWNsZS5wcmV2ID0gZnVuY3Rpb24ob3B0cykgeyBhZHZhbmNlKG9wdHMsMCk7fTsK
Ci8vIGFkdmFuY2Ugc2xpZGUgZm9yd2FyZCBvciBiYWNrCmZ1bmN0aW9uIGFkdmFu
Y2Uob3B0cywgbW92ZUZvcndhcmQpIHsKCXZhciB2YWwgPSBtb3ZlRm9yd2FyZCA/
IDEgOiAtMTsKCXZhciBlbHMgPSBvcHRzLmVsZW1lbnRzOwoJdmFyIHAgPSBvcHRz
LiRjb250WzBdLCB0aW1lb3V0ID0gcC5jeWNsZVRpbWVvdXQ7CglpZiAodGltZW91
dCkgewoJCWNsZWFyVGltZW91dCh0aW1lb3V0KTsKCQlwLmN5Y2xlVGltZW91dCA9
IDA7Cgl9CglpZiAob3B0cy5yYW5kb20gJiYgdmFsIDwgMCkgewoJCS8vIG1vdmUg
YmFjayB0byB0aGUgcHJldmlvdXNseSBkaXNwbGF5IHNsaWRlCgkJb3B0cy5yYW5k
b21JbmRleC0tOwoJCWlmICgtLW9wdHMucmFuZG9tSW5kZXggPT0gLTIpCgkJCW9w
dHMucmFuZG9tSW5kZXggPSBlbHMubGVuZ3RoLTI7CgkJZWxzZSBpZiAob3B0cy5y
YW5kb21JbmRleCA9PSAtMSkKCQkJb3B0cy5yYW5kb21JbmRleCA9IGVscy5sZW5n
dGgtMTsKCQlvcHRzLm5leHRTbGlkZSA9IG9wdHMucmFuZG9tTWFwW29wdHMucmFu
ZG9tSW5kZXhdOwoJfQoJZWxzZSBpZiAob3B0cy5yYW5kb20pIHsKCQlvcHRzLm5l
eHRTbGlkZSA9IG9wdHMucmFuZG9tTWFwW29wdHMucmFuZG9tSW5kZXhdOwoJfQoJ
ZWxzZSB7CgkJb3B0cy5uZXh0U2xpZGUgPSBvcHRzLmN1cnJTbGlkZSArIHZhbDsK
CQlpZiAob3B0cy5uZXh0U2xpZGUgPCAwKSB7CgkJCWlmIChvcHRzLm5vd3JhcCkg
cmV0dXJuIGZhbHNlOwoJCQlvcHRzLm5leHRTbGlkZSA9IGVscy5sZW5ndGggLSAx
OwoJCX0KCQllbHNlIGlmIChvcHRzLm5leHRTbGlkZSA+PSBlbHMubGVuZ3RoKSB7
CgkJCWlmIChvcHRzLm5vd3JhcCkgcmV0dXJuIGZhbHNlOwoJCQlvcHRzLm5leHRT
bGlkZSA9IDA7CgkJfQoJfQoKCXZhciBjYiA9IG9wdHMub25QcmV2TmV4dEV2ZW50
IHx8IG9wdHMucHJldk5leHRDbGljazsgLy8gcHJldk5leHRDbGljayBpcyBkZXBy
ZWNhdGVkCglpZiAoJC5pc0Z1bmN0aW9uKGNiKSkKCQljYih2YWwgPiAwLCBvcHRz
Lm5leHRTbGlkZSwgZWxzW29wdHMubmV4dFNsaWRlXSk7CglnbyhlbHMsIG9wdHMs
IDEsIG1vdmVGb3J3YXJkKTsKCXJldHVybiBmYWxzZTsKfQoKZnVuY3Rpb24gYnVp
bGRQYWdlcihlbHMsIG9wdHMpIHsKCXZhciAkcCA9ICQob3B0cy5wYWdlcik7Cgkk
LmVhY2goZWxzLCBmdW5jdGlvbihpLG8pIHsKCQkkLmZuLmN5Y2xlLmNyZWF0ZVBh
Z2VyQW5jaG9yKGksbywkcCxlbHMsb3B0cyk7Cgl9KTsKCW9wdHMudXBkYXRlQWN0
aXZlUGFnZXJMaW5rKG9wdHMucGFnZXIsIG9wdHMuc3RhcnRpbmdTbGlkZSwgb3B0
cy5hY3RpdmVQYWdlckNsYXNzKTsKfQoKJC5mbi5jeWNsZS5jcmVhdGVQYWdlckFu
Y2hvciA9IGZ1bmN0aW9uKGksIGVsLCAkcCwgZWxzLCBvcHRzKSB7Cgl2YXIgYTsK
CWlmICgkLmlzRnVuY3Rpb24ob3B0cy5wYWdlckFuY2hvckJ1aWxkZXIpKSB7CgkJ
YSA9IG9wdHMucGFnZXJBbmNob3JCdWlsZGVyKGksZWwpOwoJCWRlYnVnKCdwYWdl
ckFuY2hvckJ1aWxkZXIoJytpKycsIGVsKSByZXR1cm5lZDogJyArIGEpOwoJfQoJ
ZWxzZQoJCWEgPSAnPGEgaHJlZj0iIyI+JysoaSsxKSsnPC9hPic7CgkJCglpZiAo
IWEpCgkJcmV0dXJuOwoJdmFyICRhID0gJChhKTsKCS8vIGRvbid0IHJlcGFyZW50
IGlmIGFuY2hvciBpcyBpbiB0aGUgZG9tCglpZiAoJGEucGFyZW50cygnYm9keScp
Lmxlbmd0aCA9PT0gMCkgewoJCXZhciBhcnIgPSBbXTsKCQlpZiAoJHAubGVuZ3Ro
ID4gMSkgewoJCQkkcC5lYWNoKGZ1bmN0aW9uKCkgewoJCQkJdmFyICRjbG9uZSA9
ICRhLmNsb25lKHRydWUpOwoJCQkJJCh0aGlzKS5hcHBlbmQoJGNsb25lKTsKCQkJ
CWFyci5wdXNoKCRjbG9uZVswXSk7CgkJCX0pOwoJCQkkYSA9ICQoYXJyKTsKCQl9
CgkJZWxzZSB7CgkJCSRhLmFwcGVuZFRvKCRwKTsKCQl9Cgl9CgoJb3B0cy5wYWdl
ckFuY2hvcnMgPSAgb3B0cy5wYWdlckFuY2hvcnMgfHwgW107CglvcHRzLnBhZ2Vy
QW5jaG9ycy5wdXNoKCRhKTsKCQoJdmFyIHBhZ2VyRm4gPSBmdW5jdGlvbihlKSB7
CgkJZS5wcmV2ZW50RGVmYXVsdCgpOwoJCW9wdHMubmV4dFNsaWRlID0gaTsKCQl2
YXIgcCA9IG9wdHMuJGNvbnRbMF0sIHRpbWVvdXQgPSBwLmN5Y2xlVGltZW91dDsK
CQlpZiAodGltZW91dCkgewoJCQljbGVhclRpbWVvdXQodGltZW91dCk7CgkJCXAu
Y3ljbGVUaW1lb3V0ID0gMDsKCQl9CgkJdmFyIGNiID0gb3B0cy5vblBhZ2VyRXZl
bnQgfHwgb3B0cy5wYWdlckNsaWNrOyAvLyBwYWdlckNsaWNrIGlzIGRlcHJlY2F0
ZWQKCQlpZiAoJC5pc0Z1bmN0aW9uKGNiKSkKCQkJY2Iob3B0cy5uZXh0U2xpZGUs
IGVsc1tvcHRzLm5leHRTbGlkZV0pOwoJCWdvKGVscyxvcHRzLDEsb3B0cy5jdXJy
U2xpZGUgPCBpKTsgLy8gdHJpZ2dlciB0aGUgdHJhbnMKLy8JCXJldHVybiBmYWxz
ZTsgLy8gPD09IGFsbG93IGJ1YmJsZQoJfTsKCQoJaWYgKCAvbW91c2VlbnRlcnxt
b3VzZW92ZXIvaS50ZXN0KG9wdHMucGFnZXJFdmVudCkgKSB7CgkJJGEuaG92ZXIo
cGFnZXJGbiwgZnVuY3Rpb24oKXsvKiBuby1vcCAqL30gKTsKCX0KCWVsc2UgewoJ
CSRhLmJpbmQob3B0cy5wYWdlckV2ZW50LCBwYWdlckZuKTsKCX0KCQoJaWYgKCAh
IC9eY2xpY2svLnRlc3Qob3B0cy5wYWdlckV2ZW50KSAmJiAhb3B0cy5hbGxvd1Bh
Z2VyQ2xpY2tCdWJibGUpCgkJJGEuYmluZCgnY2xpY2suY3ljbGUnLCBmdW5jdGlv
bigpe3JldHVybiBmYWxzZTt9KTsgLy8gc3VwcHJlc3MgY2xpY2sKCQoJdmFyIGNv
bnQgPSBvcHRzLiRjb250WzBdOwoJdmFyIHBhdXNlRmxhZyA9IGZhbHNlOyAvLyBo
dHRwczovL2dpdGh1Yi5jb20vbWFsc3VwL2N5Y2xlL2lzc3Vlcy80NAoJaWYgKG9w
dHMucGF1c2VPblBhZ2VySG92ZXIpIHsKCQkkYS5ob3ZlcigKCQkJZnVuY3Rpb24o
KSB7IAoJCQkJcGF1c2VGbGFnID0gdHJ1ZTsKCQkJCWNvbnQuY3ljbGVQYXVzZSsr
OyAKCQkJCXRyaWdnZXJQYXVzZShjb250LHRydWUsdHJ1ZSk7CgkJCX0sIGZ1bmN0
aW9uKCkgeyAKCQkJCWlmIChwYXVzZUZsYWcpCgkJCQkJY29udC5jeWNsZVBhdXNl
LS07IAoJCQkJdHJpZ2dlclBhdXNlKGNvbnQsdHJ1ZSx0cnVlKTsKCQkJfSAKCQkp
OwoJfQp9OwoKLy8gaGVscGVyIGZuIHRvIGNhbGN1bGF0ZSB0aGUgbnVtYmVyIG9m
IHNsaWRlcyBiZXR3ZWVuIHRoZSBjdXJyZW50IGFuZCB0aGUgbmV4dAokLmZuLmN5
Y2xlLmhvcHNGcm9tTGFzdCA9IGZ1bmN0aW9uKG9wdHMsIGZ3ZCkgewoJdmFyIGhv
cHMsIGwgPSBvcHRzLmxhc3RTbGlkZSwgYyA9IG9wdHMuY3VyclNsaWRlOwoJaWYg
KGZ3ZCkKCQlob3BzID0gYyA+IGwgPyBjIC0gbCA6IG9wdHMuc2xpZGVDb3VudCAt
IGw7CgllbHNlCgkJaG9wcyA9IGMgPCBsID8gbCAtIGMgOiBsICsgb3B0cy5zbGlk
ZUNvdW50IC0gYzsKCXJldHVybiBob3BzOwp9OwoKLy8gZml4IGNsZWFyVHlwZSBw
cm9ibGVtcyBpbiBpZTYgYnkgc2V0dGluZyBhbiBleHBsaWNpdCBiZyBjb2xvcgov
LyAob3RoZXJ3aXNlIHRleHQgc2xpZGVzIGxvb2sgaG9ycmlibGUgZHVyaW5nIGEg
ZmFkZSB0cmFuc2l0aW9uKQpmdW5jdGlvbiBjbGVhclR5cGVGaXgoJHNsaWRlcykg
ewoJZGVidWcoJ2FwcGx5aW5nIGNsZWFyVHlwZSBiYWNrZ3JvdW5kLWNvbG9yIGhh
Y2snKTsKCWZ1bmN0aW9uIGhleChzKSB7CgkJcyA9IHBhcnNlSW50KHMsMTApLnRv
U3RyaW5nKDE2KTsKCQlyZXR1cm4gcy5sZW5ndGggPCAyID8gJzAnK3MgOiBzOwoJ
fQoJZnVuY3Rpb24gZ2V0QmcoZSkgewoJCWZvciAoIDsgZSAmJiBlLm5vZGVOYW1l
LnRvTG93ZXJDYXNlKCkgIT0gJ2h0bWwnOyBlID0gZS5wYXJlbnROb2RlKSB7CgkJ
CXZhciB2ID0gJC5jc3MoZSwnYmFja2dyb3VuZC1jb2xvcicpOwoJCQlpZiAodiAm
JiB2LmluZGV4T2YoJ3JnYicpID49IDAgKSB7CgkJCQl2YXIgcmdiID0gdi5tYXRj
aCgvXGQrL2cpOwoJCQkJcmV0dXJuICcjJysgaGV4KHJnYlswXSkgKyBoZXgocmdi
WzFdKSArIGhleChyZ2JbMl0pOwoJCQl9CgkJCWlmICh2ICYmIHYgIT0gJ3RyYW5z
cGFyZW50JykKCQkJCXJldHVybiB2OwoJCX0KCQlyZXR1cm4gJyNmZmZmZmYnOwoJ
fQoJJHNsaWRlcy5lYWNoKGZ1bmN0aW9uKCkgeyAkKHRoaXMpLmNzcygnYmFja2dy
b3VuZC1jb2xvcicsIGdldEJnKHRoaXMpKTsgfSk7Cn0KCi8vIHJlc2V0IGNvbW1v
biBwcm9wcyBiZWZvcmUgdGhlIG5leHQgdHJhbnNpdGlvbgokLmZuLmN5Y2xlLmNv
bW1vblJlc2V0ID0gZnVuY3Rpb24oY3VycixuZXh0LG9wdHMsdyxoLHJldikgewoJ
JChvcHRzLmVsZW1lbnRzKS5ub3QoY3VycikuaGlkZSgpOwoJaWYgKHR5cGVvZiBv
cHRzLmNzc0JlZm9yZS5vcGFjaXR5ID09ICd1bmRlZmluZWQnKQoJCW9wdHMuY3Nz
QmVmb3JlLm9wYWNpdHkgPSAxOwoJb3B0cy5jc3NCZWZvcmUuZGlzcGxheSA9ICdi
bG9jayc7CglpZiAob3B0cy5zbGlkZVJlc2l6ZSAmJiB3ICE9PSBmYWxzZSAmJiBu
ZXh0LmN5Y2xlVyA+IDApCgkJb3B0cy5jc3NCZWZvcmUud2lkdGggPSBuZXh0LmN5
Y2xlVzsKCWlmIChvcHRzLnNsaWRlUmVzaXplICYmIGggIT09IGZhbHNlICYmIG5l
eHQuY3ljbGVIID4gMCkKCQlvcHRzLmNzc0JlZm9yZS5oZWlnaHQgPSBuZXh0LmN5
Y2xlSDsKCW9wdHMuY3NzQWZ0ZXIgPSBvcHRzLmNzc0FmdGVyIHx8IHt9OwoJb3B0
cy5jc3NBZnRlci5kaXNwbGF5ID0gJ25vbmUnOwoJJChjdXJyKS5jc3MoJ3pJbmRl
eCcsb3B0cy5zbGlkZUNvdW50ICsgKHJldiA9PT0gdHJ1ZSA/IDEgOiAwKSk7Cgkk
KG5leHQpLmNzcygnekluZGV4JyxvcHRzLnNsaWRlQ291bnQgKyAocmV2ID09PSB0
cnVlID8gMCA6IDEpKTsKfTsKCi8vIHRoZSBhY3R1YWwgZm4gZm9yIGVmZmVjdGlu
ZyBhIHRyYW5zaXRpb24KJC5mbi5jeWNsZS5jdXN0b20gPSBmdW5jdGlvbihjdXJy
LCBuZXh0LCBvcHRzLCBjYiwgZndkLCBzcGVlZE92ZXJyaWRlKSB7Cgl2YXIgJGwg
PSAkKGN1cnIpLCAkbiA9ICQobmV4dCk7Cgl2YXIgc3BlZWRJbiA9IG9wdHMuc3Bl
ZWRJbiwgc3BlZWRPdXQgPSBvcHRzLnNwZWVkT3V0LCBlYXNlSW4gPSBvcHRzLmVh
c2VJbiwgZWFzZU91dCA9IG9wdHMuZWFzZU91dDsKCSRuLmNzcyhvcHRzLmNzc0Jl
Zm9yZSk7CglpZiAoc3BlZWRPdmVycmlkZSkgewoJCWlmICh0eXBlb2Ygc3BlZWRP
dmVycmlkZSA9PSAnbnVtYmVyJykKCQkJc3BlZWRJbiA9IHNwZWVkT3V0ID0gc3Bl
ZWRPdmVycmlkZTsKCQllbHNlCgkJCXNwZWVkSW4gPSBzcGVlZE91dCA9IDE7CgkJ
ZWFzZUluID0gZWFzZU91dCA9IG51bGw7Cgl9Cgl2YXIgZm4gPSBmdW5jdGlvbigp
IHsKCQkkbi5hbmltYXRlKG9wdHMuYW5pbUluLCBzcGVlZEluLCBlYXNlSW4sIGZ1
bmN0aW9uKCkgewoJCQljYigpOwoJCX0pOwoJfTsKCSRsLmFuaW1hdGUob3B0cy5h
bmltT3V0LCBzcGVlZE91dCwgZWFzZU91dCwgZnVuY3Rpb24oKSB7CgkJJGwuY3Nz
KG9wdHMuY3NzQWZ0ZXIpOwoJCWlmICghb3B0cy5zeW5jKSAKCQkJZm4oKTsKCX0p
OwoJaWYgKG9wdHMuc3luYykgZm4oKTsKfTsKCi8vIHRyYW5zaXRpb24gZGVmaW5p
dGlvbnMgLSBvbmx5IGZhZGUgaXMgZGVmaW5lZCBoZXJlLCB0cmFuc2l0aW9uIHBh
Y2sgZGVmaW5lcyB0aGUgcmVzdAokLmZuLmN5Y2xlLnRyYW5zaXRpb25zID0gewoJ
ZmFkZTogZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCQkkc2xpZGVz
Lm5vdCgnOmVxKCcrb3B0cy5jdXJyU2xpZGUrJyknKS5jc3MoJ29wYWNpdHknLDAp
OwoJCW9wdHMuYmVmb3JlLnB1c2goZnVuY3Rpb24oY3VycixuZXh0LG9wdHMpIHsK
CQkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyk7CgkJCW9w
dHMuY3NzQmVmb3JlLm9wYWNpdHkgPSAwOwoJCX0pOwoJCW9wdHMuYW5pbUluCSAg
ID0geyBvcGFjaXR5OiAxIH07CgkJb3B0cy5hbmltT3V0ICAgPSB7IG9wYWNpdHk6
IDAgfTsKCQlvcHRzLmNzc0JlZm9yZSA9IHsgdG9wOiAwLCBsZWZ0OiAwIH07Cgl9
Cn07CgokLmZuLmN5Y2xlLnZlciA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gdmVyOyB9
OwoKLy8gb3ZlcnJpZGUgdGhlc2UgZ2xvYmFsbHkgaWYgeW91IGxpa2UgKHRoZXkg
YXJlIGFsbCBvcHRpb25hbCkKJC5mbi5jeWNsZS5kZWZhdWx0cyA9IHsKICAgIGFj
dGl2ZVBhZ2VyQ2xhc3M6ICdhY3RpdmVTbGlkZScsIC8vIGNsYXNzIG5hbWUgdXNl
ZCBmb3IgdGhlIGFjdGl2ZSBwYWdlciBsaW5rCiAgICBhZnRlcjogICAgICAgICAg
ICBudWxsLCAgICAgLy8gdHJhbnNpdGlvbiBjYWxsYmFjayAoc2NvcGUgc2V0IHRv
IGVsZW1lbnQgdGhhdCB3YXMgc2hvd24pOiAgZnVuY3Rpb24oY3VyclNsaWRlRWxl
bWVudCwgbmV4dFNsaWRlRWxlbWVudCwgb3B0aW9ucywgZm9yd2FyZEZsYWcpCiAg
ICBhbGxvd1BhZ2VyQ2xpY2tCdWJibGU6IGZhbHNlLCAvLyBhbGxvd3Mgb3IgcHJl
dmVudHMgY2xpY2sgZXZlbnQgb24gcGFnZXIgYW5jaG9ycyBmcm9tIGJ1YmJsaW5n
CiAgICBhbmltSW46ICAgICAgICAgICBudWxsLCAgICAgLy8gcHJvcGVydGllcyB0
aGF0IGRlZmluZSBob3cgdGhlIHNsaWRlIGFuaW1hdGVzIGluCiAgICBhbmltT3V0
OiAgICAgICAgICBudWxsLCAgICAgLy8gcHJvcGVydGllcyB0aGF0IGRlZmluZSBo
b3cgdGhlIHNsaWRlIGFuaW1hdGVzIG91dAogICAgYXNwZWN0OiAgICAgICAgICAg
ZmFsc2UsICAgIC8vIHByZXNlcnZlIGFzcGVjdCByYXRpbyBkdXJpbmcgZml0IHJl
c2l6aW5nLCBjcm9wcGluZyBpZiBuZWNlc3NhcnkgKG11c3QgYmUgdXNlZCB3aXRo
IGZpdCBvcHRpb24pCiAgICBhdXRvc3RvcDogICAgICAgICAwLCAgICAgICAgLy8g
dHJ1ZSB0byBlbmQgc2xpZGVzaG93IGFmdGVyIFggdHJhbnNpdGlvbnMgKHdoZXJl
IFggPT0gc2xpZGUgY291bnQpCiAgICBhdXRvc3RvcENvdW50OiAgICAwLCAgICAg
ICAgLy8gbnVtYmVyIG9mIHRyYW5zaXRpb25zIChvcHRpb25hbGx5IHVzZWQgd2l0
aCBhdXRvc3RvcCB0byBkZWZpbmUgWCkKICAgIGJhY2t3YXJkczogICAgICAgIGZh
bHNlLCAgICAvLyB0cnVlIHRvIHN0YXJ0IHNsaWRlc2hvdyBhdCBsYXN0IHNsaWRl
IGFuZCBtb3ZlIGJhY2t3YXJkcyB0aHJvdWdoIHRoZSBzdGFjawogICAgYmVmb3Jl
OiAgICAgICAgICAgbnVsbCwgICAgIC8vIHRyYW5zaXRpb24gY2FsbGJhY2sgKHNj
b3BlIHNldCB0byBlbGVtZW50IHRvIGJlIHNob3duKTogICAgIGZ1bmN0aW9uKGN1
cnJTbGlkZUVsZW1lbnQsIG5leHRTbGlkZUVsZW1lbnQsIG9wdGlvbnMsIGZvcndh
cmRGbGFnKQogICAgY2VudGVyOiAgICAgICAgICAgbnVsbCwgICAgIC8vIHNldCB0
byB0cnVlIHRvIGhhdmUgY3ljbGUgYWRkIHRvcC9sZWZ0IG1hcmdpbiB0byBlYWNo
IHNsaWRlICh1c2Ugd2l0aCB3aWR0aCBhbmQgaGVpZ2h0IG9wdGlvbnMpCiAgICBj
bGVhcnR5cGU6ICAgICAgICAhJC5zdXBwb3J0Lm9wYWNpdHksICAvLyB0cnVlIGlm
IGNsZWFyVHlwZSBjb3JyZWN0aW9ucyBzaG91bGQgYmUgYXBwbGllZCAoZm9yIElF
KQogICAgY2xlYXJ0eXBlTm9CZzogICAgZmFsc2UsICAgIC8vIHNldCB0byB0cnVl
IHRvIGRpc2FibGUgZXh0cmEgY2xlYXJ0eXBlIGZpeGluZyAobGVhdmUgZmFsc2Ug
dG8gZm9yY2UgYmFja2dyb3VuZCBjb2xvciBzZXR0aW5nIG9uIHNsaWRlcykKICAg
IGNvbnRhaW5lclJlc2l6ZTogIDEsICAgICAgICAvLyByZXNpemUgY29udGFpbmVy
IHRvIGZpdCBsYXJnZXN0IHNsaWRlCiAgICBjb250YWluZXJSZXNpemVIZWlnaHQ6
ICAwLCAgLy8gcmVzaXplIGNvbnRhaW5lcnMgaGVpZ2h0IHRvIGZpdCB0aGUgbGFy
Z2VzdCBzbGlkZSBidXQgbGVhdmUgdGhlIHdpZHRoIGR5bmFtaWMKICAgIGNvbnRp
bnVvdXM6ICAgICAgIDAsICAgICAgICAvLyB0cnVlIHRvIHN0YXJ0IG5leHQgdHJh
bnNpdGlvbiBpbW1lZGlhdGVseSBhZnRlciBjdXJyZW50IG9uZSBjb21wbGV0ZXMK
ICAgIGNzc0FmdGVyOiAgICAgICAgIG51bGwsICAgICAvLyBwcm9wZXJ0aWVzIHRo
YXQgZGVmaW5lZCB0aGUgc3RhdGUgb2YgdGhlIHNsaWRlIGFmdGVyIHRyYW5zaXRp
b25pbmcgb3V0CiAgICBjc3NCZWZvcmU6ICAgICAgICBudWxsLCAgICAgLy8gcHJv
cGVydGllcyB0aGF0IGRlZmluZSB0aGUgaW5pdGlhbCBzdGF0ZSBvZiB0aGUgc2xp
ZGUgYmVmb3JlIHRyYW5zaXRpb25pbmcgaW4KICAgIGRlbGF5OiAgICAgICAgICAg
IDAsICAgICAgICAvLyBhZGRpdGlvbmFsIGRlbGF5IChpbiBtcykgZm9yIGZpcnN0
IHRyYW5zaXRpb24gKGhpbnQ6IGNhbiBiZSBuZWdhdGl2ZSkKICAgIGVhc2VJbjog
ICAgICAgICAgIG51bGwsICAgICAvLyBlYXNpbmcgZm9yICJpbiIgdHJhbnNpdGlv
bgogICAgZWFzZU91dDogICAgICAgICAgbnVsbCwgICAgIC8vIGVhc2luZyBmb3Ig
Im91dCIgdHJhbnNpdGlvbgogICAgZWFzaW5nOiAgICAgICAgICAgbnVsbCwgICAg
IC8vIGVhc2luZyBtZXRob2QgZm9yIGJvdGggaW4gYW5kIG91dCB0cmFuc2l0aW9u
cwogICAgZW5kOiAgICAgICAgICAgICAgbnVsbCwgICAgIC8vIGNhbGxiYWNrIGlu
dm9rZWQgd2hlbiB0aGUgc2xpZGVzaG93IHRlcm1pbmF0ZXMgKHVzZSB3aXRoIGF1
dG9zdG9wIG9yIG5vd3JhcCBvcHRpb25zKTogZnVuY3Rpb24ob3B0aW9ucykKICAg
IGZhc3RPbkV2ZW50OiAgICAgIDAsICAgICAgICAvLyBmb3JjZSBmYXN0IHRyYW5z
aXRpb25zIHdoZW4gdHJpZ2dlcmVkIG1hbnVhbGx5ICh2aWEgcGFnZXIgb3IgcHJl
di9uZXh0KTsgdmFsdWUgPT0gdGltZSBpbiBtcwogICAgZml0OiAgICAgICAgICAg
ICAgMCwgICAgICAgIC8vIGZvcmNlIHNsaWRlcyB0byBmaXQgY29udGFpbmVyCiAg
ICBmeDogICAgICAgICAgICAgICAnZmFkZScsICAgLy8gbmFtZSBvZiB0cmFuc2l0
aW9uIGVmZmVjdCAob3IgY29tbWEgc2VwYXJhdGVkIG5hbWVzLCBleDogJ2ZhZGUs
c2Nyb2xsVXAsc2h1ZmZsZScpCiAgICBmeEZuOiAgICAgICAgICAgICBudWxsLCAg
ICAgLy8gZnVuY3Rpb24gdXNlZCB0byBjb250cm9sIHRoZSB0cmFuc2l0aW9uOiBm
dW5jdGlvbihjdXJyU2xpZGVFbGVtZW50LCBuZXh0U2xpZGVFbGVtZW50LCBvcHRp
b25zLCBhZnRlckNhbGJhY2ssIGZvcndhcmRGbGFnKQogICAgaGVpZ2h0OiAgICAg
ICAgICAgJ2F1dG8nLCAgIC8vIGNvbnRhaW5lciBoZWlnaHQgKGlmIHRoZSAnZml0
JyBvcHRpb24gaXMgdHJ1ZSwgdGhlIHNsaWRlcyB3aWxsIGJlIHNldCB0byB0aGlz
IGhlaWdodCBhcyB3ZWxsKQogICAgbWFudWFsVHJ1bXA6ICAgICAgdHJ1ZSwgICAg
IC8vIGNhdXNlcyBtYW51YWwgdHJhbnNpdGlvbiB0byBzdG9wIGFuIGFjdGl2ZSB0
cmFuc2l0aW9uIGluc3RlYWQgb2YgYmVpbmcgaWdub3JlZAogICAgbWV0YUF0dHI6
ICAgICAgICAgJ2N5Y2xlJywgIC8vIGRhdGEtIGF0dHJpYnV0ZSB0aGF0IGhvbGRz
IHRoZSBvcHRpb24gZGF0YSBmb3IgdGhlIHNsaWRlc2hvdwogICAgbmV4dDogICAg
ICAgICAgICAgbnVsbCwgICAgIC8vIGVsZW1lbnQsIGpRdWVyeSBvYmplY3QsIG9y
IGpRdWVyeSBzZWxlY3RvciBzdHJpbmcgZm9yIHRoZSBlbGVtZW50IHRvIHVzZSBh
cyBldmVudCB0cmlnZ2VyIGZvciBuZXh0IHNsaWRlCiAgICBub3dyYXA6ICAgICAg
ICAgICAwLCAgICAgICAgLy8gdHJ1ZSB0byBwcmV2ZW50IHNsaWRlc2hvdyBmcm9t
IHdyYXBwaW5nCiAgICBvblBhZ2VyRXZlbnQ6ICAgICBudWxsLCAgICAgLy8gY2Fs
bGJhY2sgZm4gZm9yIHBhZ2VyIGV2ZW50czogZnVuY3Rpb24oemVyb0Jhc2VkU2xp
ZGVJbmRleCwgc2xpZGVFbGVtZW50KQogICAgb25QcmV2TmV4dEV2ZW50OiAgbnVs
bCwgICAgIC8vIGNhbGxiYWNrIGZuIGZvciBwcmV2L25leHQgZXZlbnRzOiBmdW5j
dGlvbihpc05leHQsIHplcm9CYXNlZFNsaWRlSW5kZXgsIHNsaWRlRWxlbWVudCkK
ICAgIHBhZ2VyOiAgICAgICAgICAgIG51bGwsICAgICAvLyBlbGVtZW50LCBqUXVl
cnkgb2JqZWN0LCBvciBqUXVlcnkgc2VsZWN0b3Igc3RyaW5nIGZvciB0aGUgZWxl
bWVudCB0byB1c2UgYXMgcGFnZXIgY29udGFpbmVyCiAgICBwYWdlckFuY2hvckJ1
aWxkZXI6IG51bGwsICAgLy8gY2FsbGJhY2sgZm4gZm9yIGJ1aWxkaW5nIGFuY2hv
ciBsaW5rczogIGZ1bmN0aW9uKGluZGV4LCBET01lbGVtZW50KQogICAgcGFnZXJF
dmVudDogICAgICAgJ2NsaWNrLmN5Y2xlJywgLy8gbmFtZSBvZiBldmVudCB3aGlj
aCBkcml2ZXMgdGhlIHBhZ2VyIG5hdmlnYXRpb24KICAgIHBhdXNlOiAgICAgICAg
ICAgIDAsICAgICAgICAvLyB0cnVlIHRvIGVuYWJsZSAicGF1c2Ugb24gaG92ZXIi
CiAgICBwYXVzZU9uUGFnZXJIb3ZlcjogMCwgICAgICAgLy8gdHJ1ZSB0byBwYXVz
ZSB3aGVuIGhvdmVyaW5nIG92ZXIgcGFnZXIgbGluawogICAgcHJldjogICAgICAg
ICAgICAgbnVsbCwgICAgIC8vIGVsZW1lbnQsIGpRdWVyeSBvYmplY3QsIG9yIGpR
dWVyeSBzZWxlY3RvciBzdHJpbmcgZm9yIHRoZSBlbGVtZW50IHRvIHVzZSBhcyBl
dmVudCB0cmlnZ2VyIGZvciBwcmV2aW91cyBzbGlkZQogICAgcHJldk5leHRFdmVu
dDogICAgJ2NsaWNrLmN5Y2xlJywvLyBldmVudCB3aGljaCBkcml2ZXMgdGhlIG1h
bnVhbCB0cmFuc2l0aW9uIHRvIHRoZSBwcmV2aW91cyBvciBuZXh0IHNsaWRlCiAg
ICByYW5kb206ICAgICAgICAgICAwLCAgICAgICAgLy8gdHJ1ZSBmb3IgcmFuZG9t
LCBmYWxzZSBmb3Igc2VxdWVuY2UgKG5vdCBhcHBsaWNhYmxlIHRvIHNodWZmbGUg
ZngpCiAgICByYW5kb21pemVFZmZlY3RzOiAxLCAgICAgICAgLy8gdmFsaWQgd2hl
biBtdWx0aXBsZSBlZmZlY3RzIGFyZSB1c2VkOyB0cnVlIHRvIG1ha2UgdGhlIGVm
ZmVjdCBzZXF1ZW5jZSByYW5kb20KICAgIHJlcXVldWVPbkltYWdlTm90TG9hZGVk
OiB0cnVlLCAvLyByZXF1ZXVlIHRoZSBzbGlkZXNob3cgaWYgYW55IGltYWdlIHNs
aWRlcyBhcmUgbm90IHlldCBsb2FkZWQKICAgIHJlcXVldWVUaW1lb3V0OiAgIDI1
MCwgICAgICAvLyBtcyBkZWxheSBmb3IgcmVxdWV1ZQogICAgcmV2OiAgICAgICAg
ICAgICAgMCwgICAgICAgIC8vIGNhdXNlcyBhbmltYXRpb25zIHRvIHRyYW5zaXRp
b24gaW4gcmV2ZXJzZSAoZm9yIGVmZmVjdHMgdGhhdCBzdXBwb3J0IGl0IHN1Y2gg
YXMgc2Nyb2xsSG9yei9zY3JvbGxWZXJ0L3NodWZmbGUpCiAgICBzaHVmZmxlOiAg
ICAgICAgICBudWxsLCAgICAgLy8gY29vcmRzIGZvciBzaHVmZmxlIGFuaW1hdGlv
biwgZXg6IHsgdG9wOjE1LCBsZWZ0OiAyMDAgfQogICAgc2tpcEluaXRpYWxpemF0
aW9uQ2FsbGJhY2tzOiBmYWxzZSwgLy8gc2V0IHRvIHRydWUgdG8gZGlzYWJsZSB0
aGUgZmlyc3QgYmVmb3JlL2FmdGVyIGNhbGxiYWNrIHRoYXQgb2NjdXJzIHByaW9y
IHRvIGFueSB0cmFuc2l0aW9uCiAgICBzbGlkZUV4cHI6ICAgICAgICBudWxsLCAg
ICAgLy8gZXhwcmVzc2lvbiBmb3Igc2VsZWN0aW5nIHNsaWRlcyAoaWYgc29tZXRo
aW5nIG90aGVyIHRoYW4gYWxsIGNoaWxkcmVuIGlzIHJlcXVpcmVkKQogICAgc2xp
ZGVSZXNpemU6ICAgICAgMSwgICAgICAgIC8vIGZvcmNlIHNsaWRlIHdpZHRoL2hl
aWdodCB0byBmaXhlZCBzaXplIGJlZm9yZSBldmVyeSB0cmFuc2l0aW9uCiAgICBz
cGVlZDogICAgICAgICAgICAxMDAwLCAgICAgLy8gc3BlZWQgb2YgdGhlIHRyYW5z
aXRpb24gKGFueSB2YWxpZCBmeCBzcGVlZCB2YWx1ZSkKICAgIHNwZWVkSW46ICAg
ICAgICAgIG51bGwsICAgICAvLyBzcGVlZCBvZiB0aGUgJ2luJyB0cmFuc2l0aW9u
CiAgICBzcGVlZE91dDogICAgICAgICBudWxsLCAgICAgLy8gc3BlZWQgb2YgdGhl
ICdvdXQnIHRyYW5zaXRpb24KICAgIHN0YXJ0aW5nU2xpZGU6ICAgIHVuZGVmaW5l
ZCwvLyB6ZXJvLWJhc2VkIGluZGV4IG9mIHRoZSBmaXJzdCBzbGlkZSB0byBiZSBk
aXNwbGF5ZWQKICAgIHN5bmM6ICAgICAgICAgICAgIDEsICAgICAgICAvLyB0cnVl
IGlmIGluL291dCB0cmFuc2l0aW9ucyBzaG91bGQgb2NjdXIgc2ltdWx0YW5lb3Vz
bHkKICAgIHRpbWVvdXQ6ICAgICAgICAgIDQwMDAsICAgICAvLyBtaWxsaXNlY29u
ZHMgYmV0d2VlbiBzbGlkZSB0cmFuc2l0aW9ucyAoMCB0byBkaXNhYmxlIGF1dG8g
YWR2YW5jZSkKICAgIHRpbWVvdXRGbjogICAgICAgIG51bGwsICAgICAvLyBjYWxs
YmFjayBmb3IgZGV0ZXJtaW5pbmcgcGVyLXNsaWRlIHRpbWVvdXQgdmFsdWU6ICBm
dW5jdGlvbihjdXJyU2xpZGVFbGVtZW50LCBuZXh0U2xpZGVFbGVtZW50LCBvcHRp
b25zLCBmb3J3YXJkRmxhZykKICAgIHVwZGF0ZUFjdGl2ZVBhZ2VyTGluazogbnVs
bCwvLyBjYWxsYmFjayBmbiBpbnZva2VkIHRvIHVwZGF0ZSB0aGUgYWN0aXZlIHBh
Z2VyIGxpbmsgKGFkZHMvcmVtb3ZlcyBhY3RpdmVQYWdlckNsYXNzIHN0eWxlKQog
ICAgd2lkdGg6ICAgICAgICAgICAgbnVsbCAgICAgIC8vIGNvbnRhaW5lciB3aWR0
aCAoaWYgdGhlICdmaXQnIG9wdGlvbiBpcyB0cnVlLCB0aGUgc2xpZGVzIHdpbGwg
YmUgc2V0IHRvIHRoaXMgd2lkdGggYXMgd2VsbCkKfTsKCn0pKGpRdWVyeSk7CgoK
LyohCiAqIGpRdWVyeSBDeWNsZSBQbHVnaW4gVHJhbnNpdGlvbiBEZWZpbml0aW9u
cwogKiBUaGlzIHNjcmlwdCBpcyBhIHBsdWdpbiBmb3IgdGhlIGpRdWVyeSBDeWNs
ZSBQbHVnaW4KICogRXhhbXBsZXMgYW5kIGRvY3VtZW50YXRpb24gYXQ6IGh0dHA6
Ly9tYWxzdXAuY29tL2pxdWVyeS9jeWNsZS8KICogQ29weXJpZ2h0IChjKSAyMDA3
LTIwMTAgTS4gQWxzdXAKICogVmVyc2lvbjoJIDIuNzMKICogRHVhbCBsaWNlbnNl
ZCB1bmRlciB0aGUgTUlUIGFuZCBHUEwgbGljZW5zZXM6CiAqIGh0dHA6Ly93d3cu
b3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwCiAqIGh0dHA6
Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwuaHRtbAogKi8KKGZ1bmN0aW9uKCQp
IHsKInVzZSBzdHJpY3QiOwoKLy8KLy8gVGhlc2UgZnVuY3Rpb25zIGRlZmluZSBz
bGlkZSBpbml0aWFsaXphdGlvbiBhbmQgcHJvcGVydGllcyBmb3IgdGhlIG5hbWVk
Ci8vIHRyYW5zaXRpb25zLiBUbyBzYXZlIGZpbGUgc2l6ZSBmZWVsIGZyZWUgdG8g
cmVtb3ZlIGFueSBvZiB0aGVzZSB0aGF0IHlvdQovLyBkb24ndCBuZWVkLgovLwok
LmZuLmN5Y2xlLnRyYW5zaXRpb25zLm5vbmUgPSBmdW5jdGlvbigkY29udCwgJHNs
aWRlcywgb3B0cykgewoJb3B0cy5meEZuID0gZnVuY3Rpb24oY3VycixuZXh0LG9w
dHMsYWZ0ZXIpewoJCSQobmV4dCkuc2hvdygpOwoJCSQoY3VycikuaGlkZSgpOwoJ
CWFmdGVyKCk7Cgl9Owp9OwoKLy8gbm90IGEgY3Jvc3MtZmFkZSwgZmFkZW91dCBv
bmx5IGZhZGVzIG91dCB0aGUgdG9wIHNsaWRlCiQuZm4uY3ljbGUudHJhbnNpdGlv
bnMuZmFkZW91dCA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7Cgkk
c2xpZGVzLm5vdCgnOmVxKCcrb3B0cy5jdXJyU2xpZGUrJyknKS5jc3MoeyBkaXNw
bGF5OiAnYmxvY2snLCAnb3BhY2l0eSc6IDEgfSk7CglvcHRzLmJlZm9yZS5wdXNo
KGZ1bmN0aW9uKGN1cnIsbmV4dCxvcHRzLHcsaCxyZXYpIHsKCQkkKGN1cnIpLmNz
cygnekluZGV4JyxvcHRzLnNsaWRlQ291bnQgKyAocmV2ICE9PSB0cnVlID8gMSA6
IDApKTsKCQkkKG5leHQpLmNzcygnekluZGV4JyxvcHRzLnNsaWRlQ291bnQgKyAo
cmV2ICE9PSB0cnVlID8gMCA6IDEpKTsKCX0pOwoJb3B0cy5hbmltSW4ub3BhY2l0
eSA9IDE7CglvcHRzLmFuaW1PdXQub3BhY2l0eSA9IDA7CglvcHRzLmNzc0JlZm9y
ZS5vcGFjaXR5ID0gMTsKCW9wdHMuY3NzQmVmb3JlLmRpc3BsYXkgPSAnYmxvY2sn
OwoJb3B0cy5jc3NBZnRlci56SW5kZXggPSAwOwp9OwoKLy8gc2Nyb2xsVXAvRG93
bi9MZWZ0L1JpZ2h0CiQuZm4uY3ljbGUudHJhbnNpdGlvbnMuc2Nyb2xsVXAgPSBm
dW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJJGNvbnQuY3NzKCdvdmVy
ZmxvdycsJ2hpZGRlbicpOwoJb3B0cy5iZWZvcmUucHVzaCgkLmZuLmN5Y2xlLmNv
bW1vblJlc2V0KTsKCXZhciBoID0gJGNvbnQuaGVpZ2h0KCk7CglvcHRzLmNzc0Jl
Zm9yZS50b3AgPSBoOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNz
c0ZpcnN0LnRvcCA9IDA7CglvcHRzLmFuaW1Jbi50b3AgPSAwOwoJb3B0cy5hbmlt
T3V0LnRvcCA9IC1oOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNjcm9sbERv
d24gPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJJGNvbnQuY3Nz
KCdvdmVyZmxvdycsJ2hpZGRlbicpOwoJb3B0cy5iZWZvcmUucHVzaCgkLmZuLmN5
Y2xlLmNvbW1vblJlc2V0KTsKCXZhciBoID0gJGNvbnQuaGVpZ2h0KCk7CglvcHRz
LmNzc0ZpcnN0LnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS50b3AgPSAtaDsKCW9w
dHMuY3NzQmVmb3JlLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9w
dHMuYW5pbU91dC50b3AgPSBoOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNj
cm9sbExlZnQgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJJGNv
bnQuY3NzKCdvdmVyZmxvdycsJ2hpZGRlbicpOwoJb3B0cy5iZWZvcmUucHVzaCgk
LmZuLmN5Y2xlLmNvbW1vblJlc2V0KTsKCXZhciB3ID0gJGNvbnQud2lkdGgoKTsK
CW9wdHMuY3NzRmlyc3QubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9yZS5sZWZ0ID0g
dzsKCW9wdHMuY3NzQmVmb3JlLnRvcCA9IDA7CglvcHRzLmFuaW1Jbi5sZWZ0ID0g
MDsKCW9wdHMuYW5pbU91dC5sZWZ0ID0gMC13Owp9OwokLmZuLmN5Y2xlLnRyYW5z
aXRpb25zLnNjcm9sbFJpZ2h0ID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9w
dHMpIHsKCSRjb250LmNzcygnb3ZlcmZsb3cnLCdoaWRkZW4nKTsKCW9wdHMuYmVm
b3JlLnB1c2goJC5mbi5jeWNsZS5jb21tb25SZXNldCk7Cgl2YXIgdyA9ICRjb250
LndpZHRoKCk7CglvcHRzLmNzc0ZpcnN0LmxlZnQgPSAwOwoJb3B0cy5jc3NCZWZv
cmUubGVmdCA9IC13OwoJb3B0cy5jc3NCZWZvcmUudG9wID0gMDsKCW9wdHMuYW5p
bUluLmxlZnQgPSAwOwoJb3B0cy5hbmltT3V0LmxlZnQgPSB3Owp9OwokLmZuLmN5
Y2xlLnRyYW5zaXRpb25zLnNjcm9sbEhvcnogPSBmdW5jdGlvbigkY29udCwgJHNs
aWRlcywgb3B0cykgewoJJGNvbnQuY3NzKCdvdmVyZmxvdycsJ2hpZGRlbicpLndp
ZHRoKCk7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9w
dHMsIGZ3ZCkgewoJCWlmIChvcHRzLnJldikKCQkJZndkID0gIWZ3ZDsKCQkkLmZu
LmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzKTsKCQlvcHRzLmNzc0Jl
Zm9yZS5sZWZ0ID0gZndkID8gKG5leHQuY3ljbGVXLTEpIDogKDEtbmV4dC5jeWNs
ZVcpOwoJCW9wdHMuYW5pbU91dC5sZWZ0ID0gZndkID8gLWN1cnIuY3ljbGVXIDog
Y3Vyci5jeWNsZVc7Cgl9KTsKCW9wdHMuY3NzRmlyc3QubGVmdCA9IDA7CglvcHRz
LmNzc0JlZm9yZS50b3AgPSAwOwoJb3B0cy5hbmltSW4ubGVmdCA9IDA7CglvcHRz
LmFuaW1PdXQudG9wID0gMDsKfTsKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy5zY3Jv
bGxWZXJ0ID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCSRjb250
LmNzcygnb3ZlcmZsb3cnLCdoaWRkZW4nKTsKCW9wdHMuYmVmb3JlLnB1c2goZnVu
Y3Rpb24oY3VyciwgbmV4dCwgb3B0cywgZndkKSB7CgkJaWYgKG9wdHMucmV2KQoJ
CQlmd2QgPSAhZndkOwoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0
LG9wdHMpOwoJCW9wdHMuY3NzQmVmb3JlLnRvcCA9IGZ3ZCA/ICgxLW5leHQuY3lj
bGVIKSA6IChuZXh0LmN5Y2xlSC0xKTsKCQlvcHRzLmFuaW1PdXQudG9wID0gZndk
ID8gY3Vyci5jeWNsZUggOiAtY3Vyci5jeWNsZUg7Cgl9KTsKCW9wdHMuY3NzRmly
c3QudG9wID0gMDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwoJb3B0cy5hbmlt
SW4udG9wID0gMDsKCW9wdHMuYW5pbU91dC5sZWZ0ID0gMDsKfTsKCi8vIHNsaWRl
WC9zbGlkZVkKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy5zbGlkZVggPSBmdW5jdGlv
bigkY29udCwgJHNsaWRlcywgb3B0cykgewoJb3B0cy5iZWZvcmUucHVzaChmdW5j
dGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJChvcHRzLmVsZW1lbnRzKS5ub3Qo
Y3VycikuaGlkZSgpOwoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0
LG9wdHMsZmFsc2UsdHJ1ZSk7CgkJb3B0cy5hbmltSW4ud2lkdGggPSBuZXh0LmN5
Y2xlVzsKCX0pOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNzc0Jl
Zm9yZS50b3AgPSAwOwoJb3B0cy5jc3NCZWZvcmUud2lkdGggPSAwOwoJb3B0cy5h
bmltSW4ud2lkdGggPSAnc2hvdyc7CglvcHRzLmFuaW1PdXQud2lkdGggPSAwOwp9
OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNsaWRlWSA9IGZ1bmN0aW9uKCRjb250
LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1
cnIsIG5leHQsIG9wdHMpIHsKCQkkKG9wdHMuZWxlbWVudHMpLm5vdChjdXJyKS5o
aWRlKCk7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyx0
cnVlLGZhbHNlKTsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQgPSBuZXh0LmN5Y2xlSDsK
CX0pOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9yZS50
b3AgPSAwOwoJb3B0cy5jc3NCZWZvcmUuaGVpZ2h0ID0gMDsKCW9wdHMuYW5pbUlu
LmhlaWdodCA9ICdzaG93JzsKCW9wdHMuYW5pbU91dC5oZWlnaHQgPSAwOwp9OwoK
Ly8gc2h1ZmZsZQokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNodWZmbGUgPSBmdW5j
dGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJdmFyIGksIHcgPSAkY29udC5j
c3MoJ292ZXJmbG93JywgJ3Zpc2libGUnKS53aWR0aCgpOwoJJHNsaWRlcy5jc3Mo
e2xlZnQ6IDAsIHRvcDogMH0pOwoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihj
dXJyLG5leHQsb3B0cykgewoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3Vycixu
ZXh0LG9wdHMsdHJ1ZSx0cnVlLHRydWUpOwoJfSk7CgkvLyBvbmx5IGFkanVzdCBz
cGVlZCBvbmNlIQoJaWYgKCFvcHRzLnNwZWVkQWRqdXN0ZWQpIHsKCQlvcHRzLnNw
ZWVkID0gb3B0cy5zcGVlZCAvIDI7IC8vIHNodWZmbGUgaGFzIDIgdHJhbnNpdGlv
bnMKCQlvcHRzLnNwZWVkQWRqdXN0ZWQgPSB0cnVlOwoJfQoJb3B0cy5yYW5kb20g
PSAwOwoJb3B0cy5zaHVmZmxlID0gb3B0cy5zaHVmZmxlIHx8IHtsZWZ0Oi13LCB0
b3A6MTV9OwoJb3B0cy5lbHMgPSBbXTsKCWZvciAoaT0wOyBpIDwgJHNsaWRlcy5s
ZW5ndGg7IGkrKykKCQlvcHRzLmVscy5wdXNoKCRzbGlkZXNbaV0pOwoKCWZvciAo
aT0wOyBpIDwgb3B0cy5jdXJyU2xpZGU7IGkrKykKCQlvcHRzLmVscy5wdXNoKG9w
dHMuZWxzLnNoaWZ0KCkpOwoKCS8vIGN1c3RvbSB0cmFuc2l0aW9uIGZuIChoYXQg
dGlwIHRvIEJlbmphbWluIFN0ZXJsaW5nIGZvciB0aGlzIGJpdCBvZiBzd2VldG5l
c3MhKQoJb3B0cy5meEZuID0gZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cywgY2Is
IGZ3ZCkgewoJCWlmIChvcHRzLnJldikKCQkJZndkID0gIWZ3ZDsKCQl2YXIgJGVs
ID0gZndkID8gJChjdXJyKSA6ICQobmV4dCk7CgkJJChuZXh0KS5jc3Mob3B0cy5j
c3NCZWZvcmUpOwoJCXZhciBjb3VudCA9IG9wdHMuc2xpZGVDb3VudDsKCQkkZWwu
YW5pbWF0ZShvcHRzLnNodWZmbGUsIG9wdHMuc3BlZWRJbiwgb3B0cy5lYXNlSW4s
IGZ1bmN0aW9uKCkgewoJCQl2YXIgaG9wcyA9ICQuZm4uY3ljbGUuaG9wc0Zyb21M
YXN0KG9wdHMsIGZ3ZCk7CgkJCWZvciAodmFyIGs9MDsgayA8IGhvcHM7IGsrKykg
ewoJCQkJaWYgKGZ3ZCkKCQkJCQlvcHRzLmVscy5wdXNoKG9wdHMuZWxzLnNoaWZ0
KCkpOwoJCQkJZWxzZQoJCQkJCW9wdHMuZWxzLnVuc2hpZnQob3B0cy5lbHMucG9w
KCkpOwoJCQl9CgkJCWlmIChmd2QpIHsKCQkJCWZvciAodmFyIGk9MCwgbGVuPW9w
dHMuZWxzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKQoJCQkJCSQob3B0cy5lbHNbaV0p
LmNzcygnei1pbmRleCcsIGxlbi1pK2NvdW50KTsKCQkJfQoJCQllbHNlIHsKCQkJ
CXZhciB6ID0gJChjdXJyKS5jc3MoJ3otaW5kZXgnKTsKCQkJCSRlbC5jc3MoJ3ot
aW5kZXgnLCBwYXJzZUludCh6LDEwKSsxK2NvdW50KTsKCQkJfQoJCQkkZWwuYW5p
bWF0ZSh7bGVmdDowLCB0b3A6MH0sIG9wdHMuc3BlZWRPdXQsIG9wdHMuZWFzZU91
dCwgZnVuY3Rpb24oKSB7CgkJCQkkKGZ3ZCA/IHRoaXMgOiBjdXJyKS5oaWRlKCk7
CgkJCQlpZiAoY2IpIGNiKCk7CgkJCX0pOwoJCX0pOwoJfTsKCSQuZXh0ZW5kKG9w
dHMuY3NzQmVmb3JlLCB7IGRpc3BsYXk6ICdibG9jaycsIG9wYWNpdHk6IDEsIHRv
cDogMCwgbGVmdDogMCB9KTsKfTsKCi8vIHR1cm5VcC9Eb3duL0xlZnQvUmlnaHQK
JC5mbi5jeWNsZS50cmFuc2l0aW9ucy50dXJuVXAgPSBmdW5jdGlvbigkY29udCwg
JHNsaWRlcywgb3B0cykgewoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJy
LCBuZXh0LCBvcHRzKSB7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5l
eHQsb3B0cyx0cnVlLGZhbHNlKTsKCQlvcHRzLmNzc0JlZm9yZS50b3AgPSBuZXh0
LmN5Y2xlSDsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQgPSBuZXh0LmN5Y2xlSDsKCQlv
cHRzLmFuaW1PdXQud2lkdGggPSBuZXh0LmN5Y2xlVzsKCX0pOwoJb3B0cy5jc3NG
aXJzdC50b3AgPSAwOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNz
c0JlZm9yZS5oZWlnaHQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMu
YW5pbU91dC5oZWlnaHQgPSAwOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnR1
cm5Eb3duID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCW9wdHMu
YmVmb3JlLnB1c2goZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cykgewoJCSQuZm4u
Y3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMsdHJ1ZSxmYWxzZSk7CgkJ
b3B0cy5hbmltSW4uaGVpZ2h0ID0gbmV4dC5jeWNsZUg7CgkJb3B0cy5hbmltT3V0
LnRvcCAgID0gY3Vyci5jeWNsZUg7Cgl9KTsKCW9wdHMuY3NzRmlyc3QudG9wID0g
MDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwoJb3B0cy5jc3NCZWZvcmUudG9w
ID0gMDsKCW9wdHMuY3NzQmVmb3JlLmhlaWdodCA9IDA7CglvcHRzLmFuaW1PdXQu
aGVpZ2h0ID0gMDsKfTsKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy50dXJuTGVmdCA9
IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRzLmJlZm9yZS5w
dXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNv
bW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLGZhbHNlLHRydWUpOwoJCW9wdHMuY3Nz
QmVmb3JlLmxlZnQgPSBuZXh0LmN5Y2xlVzsKCQlvcHRzLmFuaW1Jbi53aWR0aCA9
IG5leHQuY3ljbGVXOwoJfSk7CglvcHRzLmNzc0JlZm9yZS50b3AgPSAwOwoJb3B0
cy5jc3NCZWZvcmUud2lkdGggPSAwOwoJb3B0cy5hbmltSW4ubGVmdCA9IDA7Cglv
cHRzLmFuaW1PdXQud2lkdGggPSAwOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25z
LnR1cm5SaWdodCA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7Cglv
cHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkk
LmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLGZhbHNlLHRydWUp
OwoJCW9wdHMuYW5pbUluLndpZHRoID0gbmV4dC5jeWNsZVc7CgkJb3B0cy5hbmlt
T3V0LmxlZnQgPSBjdXJyLmN5Y2xlVzsKCX0pOwoJJC5leHRlbmQob3B0cy5jc3NC
ZWZvcmUsIHsgdG9wOiAwLCBsZWZ0OiAwLCB3aWR0aDogMCB9KTsKCW9wdHMuYW5p
bUluLmxlZnQgPSAwOwoJb3B0cy5hbmltT3V0LndpZHRoID0gMDsKfTsKCi8vIHpv
b20KJC5mbi5jeWNsZS50cmFuc2l0aW9ucy56b29tID0gZnVuY3Rpb24oJGNvbnQs
ICRzbGlkZXMsIG9wdHMpIHsKCW9wdHMuYmVmb3JlLnB1c2goZnVuY3Rpb24oY3Vy
ciwgbmV4dCwgb3B0cykgewoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3Vycixu
ZXh0LG9wdHMsZmFsc2UsZmFsc2UsdHJ1ZSk7CgkJb3B0cy5jc3NCZWZvcmUudG9w
ID0gbmV4dC5jeWNsZUgvMjsKCQlvcHRzLmNzc0JlZm9yZS5sZWZ0ID0gbmV4dC5j
eWNsZVcvMjsKCQkkLmV4dGVuZChvcHRzLmFuaW1JbiwgeyB0b3A6IDAsIGxlZnQ6
IDAsIHdpZHRoOiBuZXh0LmN5Y2xlVywgaGVpZ2h0OiBuZXh0LmN5Y2xlSCB9KTsK
CQkkLmV4dGVuZChvcHRzLmFuaW1PdXQsIHsgd2lkdGg6IDAsIGhlaWdodDogMCwg
dG9wOiBjdXJyLmN5Y2xlSC8yLCBsZWZ0OiBjdXJyLmN5Y2xlVy8yIH0pOwoJfSk7
CglvcHRzLmNzc0ZpcnN0LnRvcCA9IDA7CglvcHRzLmNzc0ZpcnN0LmxlZnQgPSAw
OwoJb3B0cy5jc3NCZWZvcmUud2lkdGggPSAwOwoJb3B0cy5jc3NCZWZvcmUuaGVp
Z2h0ID0gMDsKfTsKCi8vIGZhZGVab29tCiQuZm4uY3ljbGUudHJhbnNpdGlvbnMu
ZmFkZVpvb20gPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJb3B0
cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJC5m
bi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyxmYWxzZSxmYWxzZSk7
CgkJb3B0cy5jc3NCZWZvcmUubGVmdCA9IG5leHQuY3ljbGVXLzI7CgkJb3B0cy5j
c3NCZWZvcmUudG9wID0gbmV4dC5jeWNsZUgvMjsKCQkkLmV4dGVuZChvcHRzLmFu
aW1JbiwgeyB0b3A6IDAsIGxlZnQ6IDAsIHdpZHRoOiBuZXh0LmN5Y2xlVywgaGVp
Z2h0OiBuZXh0LmN5Y2xlSCB9KTsKCX0pOwoJb3B0cy5jc3NCZWZvcmUud2lkdGgg
PSAwOwoJb3B0cy5jc3NCZWZvcmUuaGVpZ2h0ID0gMDsKCW9wdHMuYW5pbU91dC5v
cGFjaXR5ID0gMDsKfTsKCi8vIGJsaW5kWAokLmZuLmN5Y2xlLnRyYW5zaXRpb25z
LmJsaW5kWCA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7Cgl2YXIg
dyA9ICRjb250LmNzcygnb3ZlcmZsb3cnLCdoaWRkZW4nKS53aWR0aCgpOwoJb3B0
cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJC5m
bi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyk7CgkJb3B0cy5hbmlt
SW4ud2lkdGggPSBuZXh0LmN5Y2xlVzsKCQlvcHRzLmFuaW1PdXQubGVmdCAgID0g
Y3Vyci5jeWNsZVc7Cgl9KTsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSB3OwoJb3B0
cy5jc3NCZWZvcmUudG9wID0gMDsKCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJb3B0
cy5hbmltT3V0LmxlZnQgPSB3Owp9OwovLyBibGluZFkKJC5mbi5jeWNsZS50cmFu
c2l0aW9ucy5ibGluZFkgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykg
ewoJdmFyIGggPSAkY29udC5jc3MoJ292ZXJmbG93JywnaGlkZGVuJykuaGVpZ2h0
KCk7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMp
IHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzKTsKCQlv
cHRzLmFuaW1Jbi5oZWlnaHQgPSBuZXh0LmN5Y2xlSDsKCQlvcHRzLmFuaW1PdXQu
dG9wICAgPSBjdXJyLmN5Y2xlSDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUudG9wID0g
aDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0g
MDsKCW9wdHMuYW5pbU91dC50b3AgPSBoOwp9OwovLyBibGluZFoKJC5mbi5jeWNs
ZS50cmFuc2l0aW9ucy5ibGluZFogPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywg
b3B0cykgewoJdmFyIGggPSAkY29udC5jc3MoJ292ZXJmbG93JywnaGlkZGVuJyku
aGVpZ2h0KCk7Cgl2YXIgdyA9ICRjb250LndpZHRoKCk7CglvcHRzLmJlZm9yZS5w
dXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNv
bW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzKTsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQg
PSBuZXh0LmN5Y2xlSDsKCQlvcHRzLmFuaW1PdXQudG9wICAgPSBjdXJyLmN5Y2xl
SDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUudG9wID0gaDsKCW9wdHMuY3NzQmVmb3Jl
LmxlZnQgPSB3OwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuYW5pbUluLmxl
ZnQgPSAwOwoJb3B0cy5hbmltT3V0LnRvcCA9IGg7CglvcHRzLmFuaW1PdXQubGVm
dCA9IHc7Cn07CgovLyBncm93WCAtIGdyb3cgaG9yaXpvbnRhbGx5IGZyb20gY2Vu
dGVyZWQgMCB3aWR0aAokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLmdyb3dYID0gZnVu
Y3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCW9wdHMuYmVmb3JlLnB1c2go
ZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cykgewoJCSQuZm4uY3ljbGUuY29tbW9u
UmVzZXQoY3VycixuZXh0LG9wdHMsZmFsc2UsdHJ1ZSk7CgkJb3B0cy5jc3NCZWZv
cmUubGVmdCA9IHRoaXMuY3ljbGVXLzI7CgkJb3B0cy5hbmltSW4ubGVmdCA9IDA7
CgkJb3B0cy5hbmltSW4ud2lkdGggPSB0aGlzLmN5Y2xlVzsKCQlvcHRzLmFuaW1P
dXQubGVmdCA9IDA7Cgl9KTsKCW9wdHMuY3NzQmVmb3JlLnRvcCA9IDA7CglvcHRz
LmNzc0JlZm9yZS53aWR0aCA9IDA7Cn07Ci8vIGdyb3dZIC0gZ3JvdyB2ZXJ0aWNh
bGx5IGZyb20gY2VudGVyZWQgMCBoZWlnaHQKJC5mbi5jeWNsZS50cmFuc2l0aW9u
cy5ncm93WSA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRz
LmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZu
LmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLHRydWUsZmFsc2UpOwoJ
CW9wdHMuY3NzQmVmb3JlLnRvcCA9IHRoaXMuY3ljbGVILzI7CgkJb3B0cy5hbmlt
SW4udG9wID0gMDsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQgPSB0aGlzLmN5Y2xlSDsK
CQlvcHRzLmFuaW1PdXQudG9wID0gMDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUuaGVp
Z2h0ID0gMDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwp9OwoKLy8gY3VydGFp
blggLSBzcXVlZXplIGluIGJvdGggZWRnZXMgaG9yaXpvbnRhbGx5CiQuZm4uY3lj
bGUudHJhbnNpdGlvbnMuY3VydGFpblggPSBmdW5jdGlvbigkY29udCwgJHNsaWRl
cywgb3B0cykgewoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0
LCBvcHRzKSB7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0
cyxmYWxzZSx0cnVlLHRydWUpOwoJCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSBuZXh0
LmN5Y2xlVy8yOwoJCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJCW9wdHMuYW5pbUlu
LndpZHRoID0gdGhpcy5jeWNsZVc7CgkJb3B0cy5hbmltT3V0LmxlZnQgPSBjdXJy
LmN5Y2xlVy8yOwoJCW9wdHMuYW5pbU91dC53aWR0aCA9IDA7Cgl9KTsKCW9wdHMu
Y3NzQmVmb3JlLnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS53aWR0aCA9IDA7Cn07
Ci8vIGN1cnRhaW5ZIC0gc3F1ZWV6ZSBpbiBib3RoIGVkZ2VzIHZlcnRpY2FsbHkK
JC5mbi5jeWNsZS50cmFuc2l0aW9ucy5jdXJ0YWluWSA9IGZ1bmN0aW9uKCRjb250
LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1
cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIs
bmV4dCxvcHRzLHRydWUsZmFsc2UsdHJ1ZSk7CgkJb3B0cy5jc3NCZWZvcmUudG9w
ID0gbmV4dC5jeWNsZUgvMjsKCQlvcHRzLmFuaW1Jbi50b3AgPSAwOwoJCW9wdHMu
YW5pbUluLmhlaWdodCA9IG5leHQuY3ljbGVIOwoJCW9wdHMuYW5pbU91dC50b3Ag
PSBjdXJyLmN5Y2xlSC8yOwoJCW9wdHMuYW5pbU91dC5oZWlnaHQgPSAwOwoJfSk7
CglvcHRzLmNzc0JlZm9yZS5oZWlnaHQgPSAwOwoJb3B0cy5jc3NCZWZvcmUubGVm
dCA9IDA7Cn07CgovLyBjb3ZlciAtIGN1cnIgc2xpZGUgY292ZXJlZCBieSBuZXh0
IHNsaWRlCiQuZm4uY3ljbGUudHJhbnNpdGlvbnMuY292ZXIgPSBmdW5jdGlvbigk
Y29udCwgJHNsaWRlcywgb3B0cykgewoJdmFyIGQgPSBvcHRzLmRpcmVjdGlvbiB8
fCAnbGVmdCc7Cgl2YXIgdyA9ICRjb250LmNzcygnb3ZlcmZsb3cnLCdoaWRkZW4n
KS53aWR0aCgpOwoJdmFyIGggPSAkY29udC5oZWlnaHQoKTsKCW9wdHMuYmVmb3Jl
LnB1c2goZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cykgewoJCSQuZm4uY3ljbGUu
Y29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMpOwoJCW9wdHMuY3NzQWZ0ZXIuZGlz
cGxheSA9ICcnOwoJCWlmIChkID09ICdyaWdodCcpCgkJCW9wdHMuY3NzQmVmb3Jl
LmxlZnQgPSAtdzsKCQllbHNlIGlmIChkID09ICd1cCcpCgkJCW9wdHMuY3NzQmVm
b3JlLnRvcCA9IGg7CgkJZWxzZSBpZiAoZCA9PSAnZG93bicpCgkJCW9wdHMuY3Nz
QmVmb3JlLnRvcCA9IC1oOwoJCWVsc2UKCQkJb3B0cy5jc3NCZWZvcmUubGVmdCA9
IHc7Cgl9KTsKCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9w
ID0gMDsKCW9wdHMuY3NzQmVmb3JlLnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS5s
ZWZ0ID0gMDsKfTsKCi8vIHVuY292ZXIgLSBjdXJyIHNsaWRlIG1vdmVzIG9mZiBu
ZXh0IHNsaWRlCiQuZm4uY3ljbGUudHJhbnNpdGlvbnMudW5jb3ZlciA9IGZ1bmN0
aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7Cgl2YXIgZCA9IG9wdHMuZGlyZWN0
aW9uIHx8ICdsZWZ0JzsKCXZhciB3ID0gJGNvbnQuY3NzKCdvdmVyZmxvdycsJ2hp
ZGRlbicpLndpZHRoKCk7Cgl2YXIgaCA9ICRjb250LmhlaWdodCgpOwoJb3B0cy5i
ZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJC5mbi5j
eWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyx0cnVlLHRydWUsdHJ1ZSk7
CgkJaWYgKGQgPT0gJ3JpZ2h0JykKCQkJb3B0cy5hbmltT3V0LmxlZnQgPSB3OwoJ
CWVsc2UgaWYgKGQgPT0gJ3VwJykKCQkJb3B0cy5hbmltT3V0LnRvcCA9IC1oOwoJ
CWVsc2UgaWYgKGQgPT0gJ2Rvd24nKQoJCQlvcHRzLmFuaW1PdXQudG9wID0gaDsK
CQllbHNlCgkJCW9wdHMuYW5pbU91dC5sZWZ0ID0gLXc7Cgl9KTsKCW9wdHMuYW5p
bUluLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuY3NzQmVm
b3JlLnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS5sZWZ0ID0gMDsKfTsKCi8vIHRv
c3MgLSBtb3ZlIHRvcCBzbGlkZSBhbmQgZmFkZSBhd2F5CiQuZm4uY3ljbGUudHJh
bnNpdGlvbnMudG9zcyA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7
Cgl2YXIgdyA9ICRjb250LmNzcygnb3ZlcmZsb3cnLCd2aXNpYmxlJykud2lkdGgo
KTsKCXZhciBoID0gJGNvbnQuaGVpZ2h0KCk7CglvcHRzLmJlZm9yZS5wdXNoKGZ1
bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJl
c2V0KGN1cnIsbmV4dCxvcHRzLHRydWUsdHJ1ZSx0cnVlKTsKCQkvLyBwcm92aWRl
IGRlZmF1bHQgdG9zcyBzZXR0aW5ncyBpZiBhbmltT3V0IG5vdCBwcm92aWRlZAoJ
CWlmICghb3B0cy5hbmltT3V0LmxlZnQgJiYgIW9wdHMuYW5pbU91dC50b3ApCgkJ
CSQuZXh0ZW5kKG9wdHMuYW5pbU91dCwgeyBsZWZ0OiB3KjIsIHRvcDogLWgvMiwg
b3BhY2l0eTogMCB9KTsKCQllbHNlCgkJCW9wdHMuYW5pbU91dC5vcGFjaXR5ID0g
MDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9y
ZS50b3AgPSAwOwoJb3B0cy5hbmltSW4ubGVmdCA9IDA7Cn07CgovLyB3aXBlIC0g
Y2xpcCBhbmltYXRpb24KJC5mbi5jeWNsZS50cmFuc2l0aW9ucy53aXBlID0gZnVu
Y3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCXZhciB3ID0gJGNvbnQuY3Nz
KCdvdmVyZmxvdycsJ2hpZGRlbicpLndpZHRoKCk7Cgl2YXIgaCA9ICRjb250Lmhl
aWdodCgpOwoJb3B0cy5jc3NCZWZvcmUgPSBvcHRzLmNzc0JlZm9yZSB8fCB7fTsK
CXZhciBjbGlwOwoJaWYgKG9wdHMuY2xpcCkgewoJCWlmICgvbDJyLy50ZXN0KG9w
dHMuY2xpcCkpCgkJCWNsaXAgPSAncmVjdCgwcHggMHB4ICcraCsncHggMHB4KSc7
CgkJZWxzZSBpZiAoL3IybC8udGVzdChvcHRzLmNsaXApKQoJCQljbGlwID0gJ3Jl
Y3QoMHB4ICcrdysncHggJytoKydweCAnK3crJ3B4KSc7CgkJZWxzZSBpZiAoL3Qy
Yi8udGVzdChvcHRzLmNsaXApKQoJCQljbGlwID0gJ3JlY3QoMHB4ICcrdysncHgg
MHB4IDBweCknOwoJCWVsc2UgaWYgKC9iMnQvLnRlc3Qob3B0cy5jbGlwKSkKCQkJ
Y2xpcCA9ICdyZWN0KCcraCsncHggJyt3KydweCAnK2grJ3B4IDBweCknOwoJCWVs
c2UgaWYgKC96b29tLy50ZXN0KG9wdHMuY2xpcCkpIHsKCQkJdmFyIHRvcCA9IHBh
cnNlSW50KGgvMiwxMCk7CgkJCXZhciBsZWZ0ID0gcGFyc2VJbnQody8yLDEwKTsK
CQkJY2xpcCA9ICdyZWN0KCcrdG9wKydweCAnK2xlZnQrJ3B4ICcrdG9wKydweCAn
K2xlZnQrJ3B4KSc7CgkJfQoJfQoKCW9wdHMuY3NzQmVmb3JlLmNsaXAgPSBvcHRz
LmNzc0JlZm9yZS5jbGlwIHx8IGNsaXAgfHwgJ3JlY3QoMHB4IDBweCAwcHggMHB4
KSc7CgoJdmFyIGQgPSBvcHRzLmNzc0JlZm9yZS5jbGlwLm1hdGNoKC8oXGQrKS9n
KTsKCXZhciB0ID0gcGFyc2VJbnQoZFswXSwxMCksIHIgPSBwYXJzZUludChkWzFd
LDEwKSwgYiA9IHBhcnNlSW50KGRbMl0sMTApLCBsID0gcGFyc2VJbnQoZFszXSwx
MCk7CgoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRz
KSB7CgkJaWYgKGN1cnIgPT0gbmV4dCkgcmV0dXJuOwoJCXZhciAkY3VyciA9ICQo
Y3VyciksICRuZXh0ID0gJChuZXh0KTsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0
KGN1cnIsbmV4dCxvcHRzLHRydWUsdHJ1ZSxmYWxzZSk7CgkJb3B0cy5jc3NBZnRl
ci5kaXNwbGF5ID0gJ2Jsb2NrJzsKCgkJdmFyIHN0ZXAgPSAxLCBjb3VudCA9IHBh
cnNlSW50KChvcHRzLnNwZWVkSW4gLyAxMyksMTApIC0gMTsKCQkoZnVuY3Rpb24g
ZigpIHsKCQkJdmFyIHR0ID0gdCA/IHQgLSBwYXJzZUludChzdGVwICogKHQvY291
bnQpLDEwKSA6IDA7CgkJCXZhciBsbCA9IGwgPyBsIC0gcGFyc2VJbnQoc3RlcCAq
IChsL2NvdW50KSwxMCkgOiAwOwoJCQl2YXIgYmIgPSBiIDwgaCA/IGIgKyBwYXJz
ZUludChzdGVwICogKChoLWIpL2NvdW50IHx8IDEpLDEwKSA6IGg7CgkJCXZhciBy
ciA9IHIgPCB3ID8gciArIHBhcnNlSW50KHN0ZXAgKiAoKHctcikvY291bnQgfHwg
MSksMTApIDogdzsKCQkJJG5leHQuY3NzKHsgY2xpcDogJ3JlY3QoJyt0dCsncHgg
JytycisncHggJytiYisncHggJytsbCsncHgpJyB9KTsKCQkJKHN0ZXArKyA8PSBj
b3VudCkgPyBzZXRUaW1lb3V0KGYsIDEzKSA6ICRjdXJyLmNzcygnZGlzcGxheScs
ICdub25lJyk7CgkJfSkoKTsKCX0pOwoJJC5leHRlbmQob3B0cy5jc3NCZWZvcmUs
IHsgZGlzcGxheTogJ2Jsb2NrJywgb3BhY2l0eTogMSwgdG9wOiAwLCBsZWZ0OiAw
IH0pOwoJb3B0cy5hbmltSW4JICAgPSB7IGxlZnQ6IDAgfTsKCW9wdHMuYW5pbU91
dCAgID0geyBsZWZ0OiAwIH07Cn07Cgp9KShqUXVlcnkpOwo7Cg==
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=lightbox.js
Content-Type: application/javascript; name=lightbox.js
Content-Location: http://www.websecurity.es/sites/all/modules/lightbox2/js/lightbox.js?1414323199
Content-Transfer-Encoding: Base64
dmFyIExpZ2h0Ym94OyhmdW5jdGlvbihhKXtMaWdodGJveD17YXV0b19tb2RhbDpm
YWxzZSxvdmVybGF5T3BhY2l0eTowLjgsb3ZlcmxheUNvbG9yOiIwMDAiLGRpc2Fi
bGVDbG9zZUNsaWNrOnRydWUscmVzaXplU2VxdWVuY2U6MCxyZXNpemVTcGVlZDoi
bm9ybWFsIixmYWRlSW5TcGVlZDoibm9ybWFsIixzbGlkZURvd25TcGVlZDoic2xv
dyIsbWluV2lkdGg6MjQwLGJvcmRlclNpemU6MTAsYm94Q29sb3I6ImZmZiIsZm9u
dENvbG9yOiIwMDAiLHRvcFBvc2l0aW9uOiIiLGluZm9IZWlnaHQ6MjAsYWx0ZXJu
YXRpdmVfbGF5b3V0OmZhbHNlLGltYWdlQXJyYXk6W10saW1hZ2VOdW06bnVsbCx0
b3RhbDowLGFjdGl2ZUltYWdlOm51bGwsaW5wcm9ncmVzczpmYWxzZSxkaXNhYmxl
UmVzaXplOmZhbHNlLGRpc2FibGVab29tOmZhbHNlLGlzWm9vbWVkSW46ZmFsc2Us
cnRsOmZhbHNlLGxvb3BJdGVtczpmYWxzZSxrZXlzQ2xvc2U6WyJjIiwieCIsMjdd
LGtleXNQcmV2aW91czpbInAiLDM3XSxrZXlzTmV4dDpbIm4iLDM5XSxrZXlzWm9v
bTpbInoiXSxrZXlzUGxheVBhdXNlOlszMl0sc2xpZGVJbnRlcnZhbDo1MDAwLHNo
b3dQbGF5UGF1c2U6dHJ1ZSxhdXRvU3RhcnQ6dHJ1ZSxhdXRvRXhpdDp0cnVlLHBh
dXNlT25OZXh0Q2xpY2s6ZmFsc2UscGF1c2VPblByZXZDbGljazp0cnVlLHNsaWRl
SWRBcnJheTpbXSxzbGlkZUlkQ291bnQ6MCxpc1NsaWRlc2hvdzpmYWxzZSxpc1Bh
dXNlZDpmYWxzZSxsb29wU2xpZGVzOmZhbHNlLGlzTGlnaHRmcmFtZTpmYWxzZSxp
ZnJhbWVfd2lkdGg6NjAwLGlmcmFtZV9oZWlnaHQ6NDAwLGlmcmFtZV9ib3JkZXI6
MSxlbmFibGVWaWRlbzpmYWxzZSxmbHZQbGF5ZXI6Ii9mbHZwbGF5ZXIuc3dmIixm
bHZGbGFzaHZhcnM6IiIsaXNNb2RhbDpmYWxzZSxpc1ZpZGVvOmZhbHNlLHZpZGVv
SWQ6ZmFsc2UsbW9kYWxXaWR0aDo0MDAsbW9kYWxIZWlnaHQ6NDAwLG1vZGFsSFRN
TDpudWxsLGluaXRpYWxpemU6ZnVuY3Rpb24oKXt2YXIgbT1EcnVwYWwuc2V0dGlu
Z3MubGlnaHRib3gyO0xpZ2h0Ym94Lm92ZXJsYXlPcGFjaXR5PW0ub3ZlcmxheV9v
cGFjaXR5O0xpZ2h0Ym94Lm92ZXJsYXlDb2xvcj1tLm92ZXJsYXlfY29sb3I7TGln
aHRib3guZGlzYWJsZUNsb3NlQ2xpY2s9bS5kaXNhYmxlX2Nsb3NlX2NsaWNrO0xp
Z2h0Ym94LnJlc2l6ZVNlcXVlbmNlPW0ucmVzaXplX3NlcXVlbmNlO0xpZ2h0Ym94
LnJlc2l6ZVNwZWVkPW0ucmVzaXplX3NwZWVkO0xpZ2h0Ym94LmZhZGVJblNwZWVk
PW0uZmFkZV9pbl9zcGVlZDtMaWdodGJveC5zbGlkZURvd25TcGVlZD1tLnNsaWRl
X2Rvd25fc3BlZWQ7TGlnaHRib3guYm9yZGVyU2l6ZT1tLmJvcmRlcl9zaXplO0xp
Z2h0Ym94LmJveENvbG9yPW0uYm94X2NvbG9yO0xpZ2h0Ym94LmZvbnRDb2xvcj1t
LmZvbnRfY29sb3I7TGlnaHRib3gudG9wUG9zaXRpb249bS50b3BfcG9zaXRpb247
TGlnaHRib3gucnRsPW0ucnRsO0xpZ2h0Ym94Lmxvb3BJdGVtcz1tLmxvb3BfaXRl
bXM7TGlnaHRib3gua2V5c0Nsb3NlPW0ua2V5c19jbG9zZS5zcGxpdCgiICIpO0xp
Z2h0Ym94LmtleXNQcmV2aW91cz1tLmtleXNfcHJldmlvdXMuc3BsaXQoIiAiKTtM
aWdodGJveC5rZXlzTmV4dD1tLmtleXNfbmV4dC5zcGxpdCgiICIpO0xpZ2h0Ym94
LmtleXNab29tPW0ua2V5c196b29tLnNwbGl0KCIgIik7TGlnaHRib3gua2V5c1Bs
YXlQYXVzZT1tLmtleXNfcGxheV9wYXVzZS5zcGxpdCgiICIpO0xpZ2h0Ym94LmRp
c2FibGVSZXNpemU9bS5kaXNhYmxlX3Jlc2l6ZTtMaWdodGJveC5kaXNhYmxlWm9v
bT1tLmRpc2FibGVfem9vbTtMaWdodGJveC5zbGlkZUludGVydmFsPW0uc2xpZGVz
aG93X2ludGVydmFsO0xpZ2h0Ym94LnNob3dQbGF5UGF1c2U9bS5zaG93X3BsYXlf
cGF1c2U7TGlnaHRib3guc2hvd0NhcHRpb249bS5zaG93X2NhcHRpb247TGlnaHRi
b3guYXV0b1N0YXJ0PW0uc2xpZGVzaG93X2F1dG9tYXRpY19zdGFydDtMaWdodGJv
eC5hdXRvRXhpdD1tLnNsaWRlc2hvd19hdXRvbWF0aWNfZXhpdDtMaWdodGJveC5w
YXVzZU9uTmV4dENsaWNrPW0ucGF1c2Vfb25fbmV4dF9jbGljaztMaWdodGJveC5w
YXVzZU9uUHJldkNsaWNrPW0ucGF1c2Vfb25fcHJldmlvdXNfY2xpY2s7TGlnaHRi
b3gubG9vcFNsaWRlcz1tLmxvb3Bfc2xpZGVzO0xpZ2h0Ym94LmFsdGVybmF0aXZl
X2xheW91dD1tLnVzZV9hbHRfbGF5b3V0O0xpZ2h0Ym94LmlmcmFtZV93aWR0aD1t
LmlmcmFtZV93aWR0aDtMaWdodGJveC5pZnJhbWVfaGVpZ2h0PW0uaWZyYW1lX2hl
aWdodDtMaWdodGJveC5pZnJhbWVfYm9yZGVyPW0uaWZyYW1lX2JvcmRlcjtMaWdo
dGJveC5lbmFibGVWaWRlbz1tLmVuYWJsZV92aWRlbztpZihtLmVuYWJsZV92aWRl
byl7TGlnaHRib3guZmx2UGxheWVyPW0uZmx2UGxheWVyO0xpZ2h0Ym94LmZsdkZs
YXNodmFycz1tLmZsdkZsYXNodmFyc312YXIgYz0obS51c2VfYWx0X2xheW91dD8i
bGlnaHRib3gyLWFsdC1sYXlvdXQiOiJsaWdodGJveDItb3JpZy1sYXlvdXQiKTt2
YXIgaz0nPGRpdiBpZD0ibGlnaHRib3gyLW92ZXJsYXkiIHN0eWxlPSJkaXNwbGF5
OiBub25lOyI+PC9kaXY+ICAgICAgPGRpdiBpZD0ibGlnaHRib3giIHN0eWxlPSJk
aXNwbGF5OiBub25lOyIgY2xhc3M9IicrYysnIj4gICAgICAgIDxkaXYgaWQ9Im91
dGVySW1hZ2VDb250YWluZXIiPjwvZGl2PiAgICAgICAgPGRpdiBpZD0iaW1hZ2VE
YXRhQ29udGFpbmVyIiBjbGFzcz0iY2xlYXJmaXgiPiAgICAgICAgICA8ZGl2IGlk
PSJpbWFnZURhdGEiPjwvZGl2PiAgICAgICAgPC9kaXY+ICAgICAgPC9kaXY+Jzt2
YXIgZT0nPGRpdiBpZD0ibG9hZGluZyI+PGEgaHJlZj0iIyIgaWQ9ImxvYWRpbmdM
aW5rIj48L2E+PC9kaXY+Jzt2YXIgcT0nPGRpdiBpZD0ibW9kYWxDb250YWluZXIi
IHN0eWxlPSJkaXNwbGF5OiBub25lOyI+PC9kaXY+Jzt2YXIgbD0nPGRpdiBpZD0i
ZnJhbWVDb250YWluZXIiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+PC9kaXY+Jzt2
YXIgdj0nPGRpdiBpZD0iaW1hZ2VDb250YWluZXIiIHN0eWxlPSJkaXNwbGF5OiBu
b25lOyI+PC9kaXY+Jzt2YXIgcj0nPGRpdiBpZD0iaW1hZ2VEZXRhaWxzIj48L2Rp
dj4nO3ZhciBkPSc8ZGl2IGlkPSJib3R0b21OYXYiPjwvZGl2Pic7dmFyIHA9Jzxp
bWcgaWQ9ImxpZ2h0Ym94SW1hZ2UiIGFsdD0iIiAvPic7dmFyIGY9JzxkaXYgaWQ9
ImhvdmVyTmF2Ij48YSBpZD0icHJldkxpbmsiIGhyZWY9IiMiPjwvYT48YSBpZD0i
bmV4dExpbmsiIGhyZWY9IiMiPjwvYT48L2Rpdj4nO3ZhciBoPSc8ZGl2IGlkPSJm
cmFtZUhvdmVyTmF2Ij48YSBpZD0iZnJhbWVQcmV2TGluayIgaHJlZj0iIyI+PC9h
PjxhIGlkPSJmcmFtZU5leHRMaW5rIiBocmVmPSIjIj48L2E+PC9kaXY+Jzt2YXIg
Zj0nPGRpdiBpZD0iaG92ZXJOYXYiPjxhIGlkPSJwcmV2TGluayIgdGl0bGU9Iicr
RHJ1cGFsLnQoIlByZXZpb3VzIikrJyIgaHJlZj0iIyI+PC9hPjxhIGlkPSJuZXh0
TGluayIgdGl0bGU9IicrRHJ1cGFsLnQoIk5leHQiKSsnIiBocmVmPSIjIj48L2E+
PC9kaXY+Jzt2YXIgaD0nPGRpdiBpZD0iZnJhbWVIb3Zlck5hdiI+PGEgaWQ9ImZy
YW1lUHJldkxpbmsiIHRpdGxlPSInK0RydXBhbC50KCJQcmV2aW91cyIpKyciIGhy
ZWY9IiMiPjwvYT48YSBpZD0iZnJhbWVOZXh0TGluayIgdGl0bGU9IicrRHJ1cGFs
LnQoIk5leHQiKSsnIiBocmVmPSIjIj48L2E+PC9kaXY+Jzt2YXIgdD0nPHNwYW4g
aWQ9ImNhcHRpb24iPjwvc3Bhbj4nO3ZhciBpPSc8c3BhbiBpZD0ibnVtYmVyRGlz
cGxheSI+PC9zcGFuPic7dmFyIG89JzxhIGlkPSJib3R0b21OYXZDbG9zZSIgdGl0
bGU9IicrRHJ1cGFsLnQoIkNsb3NlIikrJyIgaHJlZj0iIyI+PC9hPic7dmFyIGI9
JzxhIGlkPSJib3R0b21OYXZab29tIiBocmVmPSIjIj48L2E+Jzt2YXIgbj0nPGEg
aWQ9ImJvdHRvbU5hdlpvb21PdXQiIGhyZWY9IiMiPjwvYT4nO3ZhciBnPSc8YSBp
ZD0ibGlnaHRzaG93UGF1c2UiIHRpdGxlPSInK0RydXBhbC50KCJQYXVzZSBTbGlk
ZXNob3ciKSsnIiBocmVmPSIjIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPjwvYT4n
O3ZhciB1PSc8YSBpZD0ibGlnaHRzaG93UGxheSIgdGl0bGU9IicrRHJ1cGFsLnQo
IlBsYXkgU2xpZGVzaG93IikrJyIgaHJlZj0iIyIgc3R5bGU9ImRpc3BsYXk6IG5v
bmU7Ij48L2E+JzthKCJib2R5IikuYXBwZW5kKGspO2EoIiNvdXRlckltYWdlQ29u
dGFpbmVyIikuYXBwZW5kKHErbCt2K2UpO2lmKCFtLnVzZV9hbHRfbGF5b3V0KXth
KCIjaW1hZ2VDb250YWluZXIiKS5hcHBlbmQocCtmKTthKCIjaW1hZ2VEYXRhIiku
YXBwZW5kKHIrZCk7YSgiI2ltYWdlRGV0YWlscyIpLmFwcGVuZCh0K2kpO2EoIiNi
b3R0b21OYXYiKS5hcHBlbmQoaCtvK2IrbitnK3UpfWVsc2V7YSgiI291dGVySW1h
Z2VDb250YWluZXIiKS5hcHBlbmQoZCk7YSgiI2ltYWdlQ29udGFpbmVyIikuYXBw
ZW5kKHApO2EoIiNib3R0b21OYXYiKS5hcHBlbmQobytiK24pO2EoIiNpbWFnZURh
dGEiKS5hcHBlbmQoZityKTthKCIjaW1hZ2VEZXRhaWxzIikuYXBwZW5kKHQraStn
K3UpfWlmKExpZ2h0Ym94LmRpc2FibGVDbG9zZUNsaWNrKXthKCIjbGlnaHRib3gy
LW92ZXJsYXkiKS5jbGljayhmdW5jdGlvbigpe0xpZ2h0Ym94LmVuZCgpO3JldHVy
biBmYWxzZX0pLmhpZGUoKX1hKCIjbG9hZGluZ0xpbmssICNib3R0b21OYXZDbG9z
ZSIpLmNsaWNrKGZ1bmN0aW9uKCl7TGlnaHRib3guZW5kKCJmb3JjZUNsb3NlIik7
cmV0dXJuIGZhbHNlfSk7YSgiI3ByZXZMaW5rLCAjZnJhbWVQcmV2TGluayIpLmNs
aWNrKGZ1bmN0aW9uKCl7TGlnaHRib3guY2hhbmdlRGF0YShMaWdodGJveC5hY3Rp
dmVJbWFnZS0xKTtyZXR1cm4gZmFsc2V9KTthKCIjbmV4dExpbmssICNmcmFtZU5l
eHRMaW5rIikuY2xpY2soZnVuY3Rpb24oKXtMaWdodGJveC5jaGFuZ2VEYXRhKExp
Z2h0Ym94LmFjdGl2ZUltYWdlKzEpO3JldHVybiBmYWxzZX0pO2EoIiNib3R0b21O
YXZab29tIikuY2xpY2soZnVuY3Rpb24oKXtMaWdodGJveC5jaGFuZ2VEYXRhKExp
Z2h0Ym94LmFjdGl2ZUltYWdlLHRydWUpO3JldHVybiBmYWxzZX0pO2EoIiNib3R0
b21OYXZab29tT3V0IikuY2xpY2soZnVuY3Rpb24oKXtMaWdodGJveC5jaGFuZ2VE
YXRhKExpZ2h0Ym94LmFjdGl2ZUltYWdlLGZhbHNlKTtyZXR1cm4gZmFsc2V9KTth
KCIjbGlnaHRzaG93UGF1c2UiKS5jbGljayhmdW5jdGlvbigpe0xpZ2h0Ym94LnRv
Z2dsZVBsYXlQYXVzZSgibGlnaHRzaG93UGF1c2UiLCJsaWdodHNob3dQbGF5Iik7
cmV0dXJuIGZhbHNlfSk7YSgiI2xpZ2h0c2hvd1BsYXkiKS5jbGljayhmdW5jdGlv
bigpe0xpZ2h0Ym94LnRvZ2dsZVBsYXlQYXVzZSgibGlnaHRzaG93UGxheSIsImxp
Z2h0c2hvd1BhdXNlIik7cmV0dXJuIGZhbHNlfSk7YSgiI3ByZXZMaW5rLCAjbmV4
dExpbmssICNmcmFtZVByZXZMaW5rLCAjZnJhbWVOZXh0TGluayIpLmNzcyh7cGFk
ZGluZ1RvcDpMaWdodGJveC5ib3JkZXJTaXplKyJweCJ9KTthKCIjaW1hZ2VDb250
YWluZXIsICNmcmFtZUNvbnRhaW5lciwgI21vZGFsQ29udGFpbmVyIikuY3NzKHtw
YWRkaW5nOkxpZ2h0Ym94LmJvcmRlclNpemUrInB4In0pO2EoIiNvdXRlckltYWdl
Q29udGFpbmVyLCAjaW1hZ2VEYXRhQ29udGFpbmVyLCAjYm90dG9tTmF2Q2xvc2Ui
KS5jc3Moe2JhY2tncm91bmRDb2xvcjoiIyIrTGlnaHRib3guYm94Q29sb3IsY29s
b3I6IiMiK0xpZ2h0Ym94LmZvbnRDb2xvcn0pO2lmKExpZ2h0Ym94LmFsdGVybmF0
aXZlX2xheW91dCl7YSgiI2JvdHRvbU5hdlpvb20sICNib3R0b21OYXZab29tT3V0
IikuY3NzKHtib3R0b206TGlnaHRib3guYm9yZGVyU2l6ZSsicHgiLHJpZ2h0Okxp
Z2h0Ym94LmJvcmRlclNpemUrInB4In0pfWVsc2V7aWYoTGlnaHRib3gucnRsPT0x
JiZhLmJyb3dzZXIubXNpZSl7YSgiI2JvdHRvbU5hdlpvb20sICNib3R0b21OYXZa
b29tT3V0IikuY3NzKHtsZWZ0OiIwcHgifSl9fWlmKG0uZm9yY2Vfc2hvd19uYXYp
e2EoIiNwcmV2TGluaywgI25leHRMaW5rIikuYWRkQ2xhc3MoImZvcmNlX3Nob3df
bmF2Iil9fSxpbml0TGlzdDpmdW5jdGlvbihiKXtpZihiPT11bmRlZmluZWR8fGI9
PW51bGwpe2I9ZG9jdW1lbnR9YSgiYVtyZWxePSdsaWdodGJveCddOm5vdCgubGln
aHRib3gtcHJvY2Vzc2VkKSwgYXJlYVtyZWxePSdsaWdodGJveCddOm5vdCgubGln
aHRib3gtcHJvY2Vzc2VkKSIsYikuYWRkQ2xhc3MoImxpZ2h0Ym94LXByb2Nlc3Nl
ZCIpLmNsaWNrKGZ1bmN0aW9uKGMpe2lmKExpZ2h0Ym94LmRpc2FibGVDbG9zZUNs
aWNrKXthKCIjbGlnaHRib3giKS51bmJpbmQoImNsaWNrIik7YSgiI2xpZ2h0Ym94
IikuY2xpY2soZnVuY3Rpb24oKXtMaWdodGJveC5lbmQoImZvcmNlQ2xvc2UiKX0p
fUxpZ2h0Ym94LnN0YXJ0KHRoaXMsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UpO2lm
KGMucHJldmVudERlZmF1bHQpe2MucHJldmVudERlZmF1bHQoKX1yZXR1cm4gZmFs
c2V9KTthKCJhW3JlbF49J2xpZ2h0c2hvdyddOm5vdCgubGlnaHRib3gtcHJvY2Vz
c2VkKSwgYXJlYVtyZWxePSdsaWdodHNob3cnXTpub3QoLmxpZ2h0Ym94LXByb2Nl
c3NlZCkiLGIpLmFkZENsYXNzKCJsaWdodGJveC1wcm9jZXNzZWQiKS5jbGljayhm
dW5jdGlvbihjKXtpZihMaWdodGJveC5kaXNhYmxlQ2xvc2VDbGljayl7YSgiI2xp
Z2h0Ym94IikudW5iaW5kKCJjbGljayIpO2EoIiNsaWdodGJveCIpLmNsaWNrKGZ1
bmN0aW9uKCl7TGlnaHRib3guZW5kKCJmb3JjZUNsb3NlIil9KX1MaWdodGJveC5z
dGFydCh0aGlzLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UpO2lmKGMucHJldmVudERl
ZmF1bHQpe2MucHJldmVudERlZmF1bHQoKX1yZXR1cm4gZmFsc2V9KTthKCJhW3Jl
bF49J2xpZ2h0ZnJhbWUnXTpub3QoLmxpZ2h0Ym94LXByb2Nlc3NlZCksIGFyZWFb
cmVsXj0nbGlnaHRmcmFtZSddOm5vdCgubGlnaHRib3gtcHJvY2Vzc2VkKSIsYiku
YWRkQ2xhc3MoImxpZ2h0Ym94LXByb2Nlc3NlZCIpLmNsaWNrKGZ1bmN0aW9uKGMp
e2lmKExpZ2h0Ym94LmRpc2FibGVDbG9zZUNsaWNrKXthKCIjbGlnaHRib3giKS51
bmJpbmQoImNsaWNrIik7YSgiI2xpZ2h0Ym94IikuY2xpY2soZnVuY3Rpb24oKXtM
aWdodGJveC5lbmQoImZvcmNlQ2xvc2UiKX0pfUxpZ2h0Ym94LnN0YXJ0KHRoaXMs
ZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSk7aWYoYy5wcmV2ZW50RGVmYXVsdCl7Yy5w
cmV2ZW50RGVmYXVsdCgpfXJldHVybiBmYWxzZX0pO2lmKExpZ2h0Ym94LmVuYWJs
ZVZpZGVvKXthKCJhW3JlbF49J2xpZ2h0dmlkZW8nXTpub3QoLmxpZ2h0Ym94LXBy
b2Nlc3NlZCksIGFyZWFbcmVsXj0nbGlnaHR2aWRlbyddOm5vdCgubGlnaHRib3gt
cHJvY2Vzc2VkKSIsYikuYWRkQ2xhc3MoImxpZ2h0Ym94LXByb2Nlc3NlZCIpLmNs
aWNrKGZ1bmN0aW9uKGMpe2lmKExpZ2h0Ym94LmRpc2FibGVDbG9zZUNsaWNrKXth
KCIjbGlnaHRib3giKS51bmJpbmQoImNsaWNrIik7YSgiI2xpZ2h0Ym94IikuY2xp
Y2soZnVuY3Rpb24oKXtMaWdodGJveC5lbmQoImZvcmNlQ2xvc2UiKX0pfUxpZ2h0
Ym94LnN0YXJ0KHRoaXMsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSk7aWYoYy5wcmV2
ZW50RGVmYXVsdCl7Yy5wcmV2ZW50RGVmYXVsdCgpfXJldHVybiBmYWxzZX0pfWEo
ImFbcmVsXj0nbGlnaHRtb2RhbCddOm5vdCgubGlnaHRib3gtcHJvY2Vzc2VkKSwg
YXJlYVtyZWxePSdsaWdodG1vZGFsJ106bm90KC5saWdodGJveC1wcm9jZXNzZWQp
IixiKS5hZGRDbGFzcygibGlnaHRib3gtcHJvY2Vzc2VkIikuY2xpY2soZnVuY3Rp
b24oYyl7YSgiI2xpZ2h0Ym94IikudW5iaW5kKCJjbGljayIpO2EoIiNsaWdodGJv
eCIpLmFkZENsYXNzKGEodGhpcykuYXR0cigiY2xhc3MiKSk7YSgiI2xpZ2h0Ym94
IikucmVtb3ZlQ2xhc3MoImxpZ2h0Ym94LXByb2Nlc3NlZCIpO0xpZ2h0Ym94LnN0
YXJ0KHRoaXMsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSk7aWYoYy5wcmV2ZW50RGVm
YXVsdCl7Yy5wcmV2ZW50RGVmYXVsdCgpfXJldHVybiBmYWxzZX0pO2EoIiNsaWdo
dGJveEF1dG9Nb2RhbDpub3QoLmxpZ2h0Ym94LXByb2Nlc3NlZCkiLGIpLmFkZENs
YXNzKCJsaWdodGJveC1wcm9jZXNzZWQiKS5jbGljayhmdW5jdGlvbihjKXtMaWdo
dGJveC5hdXRvX21vZGFsPXRydWU7YSgiI2xpZ2h0Ym94IikudW5iaW5kKCJjbGlj
ayIpO0xpZ2h0Ym94LnN0YXJ0KHRoaXMsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSk7
aWYoYy5wcmV2ZW50RGVmYXVsdCl7Yy5wcmV2ZW50RGVmYXVsdCgpfXJldHVybiBm
YWxzZX0pfSxzdGFydDpmdW5jdGlvbihkLGwsZixtLG4pe0xpZ2h0Ym94LmlzUGF1
c2VkPSFMaWdodGJveC5hdXRvU3RhcnQ7TGlnaHRib3gudG9nZ2xlU2VsZWN0c0Zs
YXNoKCJoaWRlIik7dmFyIHU9TGlnaHRib3guZ2V0UGFnZVNpemUoKTthKCIjbGln
aHRib3gyLW92ZXJsYXkiKS5oaWRlKCkuY3NzKHt3aWR0aDoiMTAwJSIsekluZGV4
OiIxMDA5MCIsaGVpZ2h0OnVbMV0rInB4IixiYWNrZ3JvdW5kQ29sb3I6IiMiK0xp
Z2h0Ym94Lm92ZXJsYXlDb2xvcn0pO2lmKG0mJnRoaXMuZGV0ZWN0TWFjRkYyKCkp
e2EoIiNsaWdodGJveDItb3ZlcmxheSIpLnJlbW92ZUNsYXNzKCJvdmVybGF5X2Rl
ZmF1bHQiKTthKCIjbGlnaHRib3gyLW92ZXJsYXkiKS5hZGRDbGFzcygib3Zlcmxh
eV9tYWNmZjIiKTthKCIjbGlnaHRib3gyLW92ZXJsYXkiKS5jc3Moe29wYWNpdHk6
bnVsbH0pfWVsc2V7YSgiI2xpZ2h0Ym94Mi1vdmVybGF5IikucmVtb3ZlQ2xhc3Mo
Im92ZXJsYXlfbWFjZmYyIik7YSgiI2xpZ2h0Ym94Mi1vdmVybGF5IikuYWRkQ2xh
c3MoIm92ZXJsYXlfZGVmYXVsdCIpO2EoIiNsaWdodGJveDItb3ZlcmxheSIpLmNz
cyh7b3BhY2l0eTpMaWdodGJveC5vdmVybGF5T3BhY2l0eX0pfWEoIiNsaWdodGJv
eDItb3ZlcmxheSIpLmZhZGVJbihMaWdodGJveC5mYWRlSW5TcGVlZCk7TGlnaHRi
b3guaXNTbGlkZXNob3c9bDtMaWdodGJveC5pc0xpZ2h0ZnJhbWU9ZjtMaWdodGJv
eC5pc1ZpZGVvPW07TGlnaHRib3guaXNNb2RhbD1uO0xpZ2h0Ym94LmltYWdlQXJy
YXk9W107TGlnaHRib3guaW1hZ2VOdW09MDt2YXIgbz1hKGQudGFnTmFtZSk7dmFy
IGg9bnVsbDt2YXIgYj1MaWdodGJveC5wYXJzZVJlbChkKTt2YXIgYz1iLnJlbDt2
YXIgcz1iLmdyb3VwO3ZhciB4PShiLnRpdGxlP2IudGl0bGU6ZC50aXRsZSk7dmFy
IGU9bnVsbDt2YXIgcj0wO2lmKGIuZmxhc2h2YXJzKXtMaWdodGJveC5mbHZGbGFz
aHZhcnM9TGlnaHRib3guZmx2Rmxhc2h2YXJzKyImIitiLmZsYXNodmFyc312YXIg
dj1kLnRpdGxlO2lmKCF2KXt2YXIgeT1hKGQpLmZpbmQoImltZyIpO2lmKHkmJmEo
eSkuYXR0cigiYWx0Iikpe3Y9YSh5KS5hdHRyKCJhbHQiKX1lbHNle3Y9eH19aWYo
YShkKS5hdHRyKCJpZCIpPT0ibGlnaHRib3hBdXRvTW9kYWwiKXtlPWIuc3R5bGU7
TGlnaHRib3guaW1hZ2VBcnJheS5wdXNoKFsiI2xpZ2h0Ym94QXV0b01vZGFsID4g
KiIseCx2LGUsMV0pfWVsc2V7aWYoKGM9PSJsaWdodGJveCJ8fGM9PSJsaWdodHNo
b3ciKSYmIXMpe0xpZ2h0Ym94LmltYWdlQXJyYXkucHVzaChbZC5ocmVmLHgsdl0p
fWVsc2V7aWYoIXMpe2U9Yi5zdHlsZTtMaWdodGJveC5pbWFnZUFycmF5LnB1c2go
W2QuaHJlZix4LHYsZV0pfWVsc2V7Zm9yKHI9MDtyPG8ubGVuZ3RoO3IrKyl7aD1v
W3JdO2lmKGguaHJlZiYmdHlwZW9mKGguaHJlZik9PSJzdHJpbmciJiZhKGgpLmF0
dHIoInJlbCIpKXt2YXIgZz1MaWdodGJveC5wYXJzZVJlbChoKTt2YXIgdz0oZy50
aXRsZT9nLnRpdGxlOmgudGl0bGUpO2ltZ19hbHQ9aC50aXRsZTtpZighaW1nX2Fs
dCl7dmFyIHQ9YShoKS5maW5kKCJpbWciKTtpZih0JiZhKHQpLmF0dHIoImFsdCIp
KXtpbWdfYWx0PWEodCkuYXR0cigiYWx0Iil9ZWxzZXtpbWdfYWx0PXh9fWlmKGcu
cmVsPT1jKXtpZihnLmdyb3VwPT1zKXtpZihMaWdodGJveC5pc0xpZ2h0ZnJhbWV8
fExpZ2h0Ym94LmlzTW9kYWx8fExpZ2h0Ym94LmlzVmlkZW8pe2U9Zy5zdHlsZX1M
aWdodGJveC5pbWFnZUFycmF5LnB1c2goW2guaHJlZix3LGltZ19hbHQsZV0pfX19
fWZvcihyPTA7cjxMaWdodGJveC5pbWFnZUFycmF5Lmxlbmd0aDtyKyspe2Zvcihq
PUxpZ2h0Ym94LmltYWdlQXJyYXkubGVuZ3RoLTE7aj5yO2otLSl7aWYoTGlnaHRi
b3guaW1hZ2VBcnJheVtyXVswXT09TGlnaHRib3guaW1hZ2VBcnJheVtqXVswXSl7
TGlnaHRib3guaW1hZ2VBcnJheS5zcGxpY2UoaiwxKX19fXdoaWxlKExpZ2h0Ym94
LmltYWdlQXJyYXlbTGlnaHRib3guaW1hZ2VOdW1dWzBdIT1kLmhyZWYpe0xpZ2h0
Ym94LmltYWdlTnVtKyt9fX19aWYoTGlnaHRib3guaXNTbGlkZXNob3cmJkxpZ2h0
Ym94LnNob3dQbGF5UGF1c2UmJkxpZ2h0Ym94LmlzUGF1c2VkKXthKCIjbGlnaHRz
aG93UGxheSIpLnNob3coKTthKCIjbGlnaHRzaG93UGF1c2UiKS5oaWRlKCl9dmFy
IHE9TGlnaHRib3guZ2V0UGFnZVNjcm9sbCgpO3ZhciBrPXFbMV0rKExpZ2h0Ym94
LnRvcFBvc2l0aW9uPT0iIj8odVszXS8xMCk6TGlnaHRib3gudG9wUG9zaXRpb24p
KjE7dmFyIHA9cVswXTthKCIjZnJhbWVDb250YWluZXIsICNtb2RhbENvbnRhaW5l
ciwgI2xpZ2h0Ym94SW1hZ2UiKS5oaWRlKCk7YSgiI2hvdmVyTmF2LCAjcHJldkxp
bmssICNuZXh0TGluaywgI2ZyYW1lSG92ZXJOYXYsICNmcmFtZVByZXZMaW5rLCAj
ZnJhbWVOZXh0TGluayIpLmhpZGUoKTthKCIjaW1hZ2VEYXRhQ29udGFpbmVyLCAj
bnVtYmVyRGlzcGxheSwgI2JvdHRvbU5hdlpvb20sICNib3R0b21OYXZab29tT3V0
IikuaGlkZSgpO2EoIiNvdXRlckltYWdlQ29udGFpbmVyIikuY3NzKHt3aWR0aDoi
MjUwcHgiLGhlaWdodDoiMjUwcHgifSk7YSgiI2xpZ2h0Ym94IikuY3NzKHt6SW5k
ZXg6IjEwNTAwIix0b3A6aysicHgiLGxlZnQ6cCsicHgifSkuc2hvdygpO0xpZ2h0
Ym94LnRvdGFsPUxpZ2h0Ym94LmltYWdlQXJyYXkubGVuZ3RoO0xpZ2h0Ym94LmNo
YW5nZURhdGEoTGlnaHRib3guaW1hZ2VOdW0pfSxjaGFuZ2VEYXRhOmZ1bmN0aW9u
KGQsayl7aWYoTGlnaHRib3guaW5wcm9ncmVzcz09PWZhbHNlKXtpZihMaWdodGJv
eC50b3RhbD4xJiYoKExpZ2h0Ym94LmlzU2xpZGVzaG93JiZMaWdodGJveC5sb29w
U2xpZGVzKXx8KCFMaWdodGJveC5pc1NsaWRlc2hvdyYmTGlnaHRib3gubG9vcEl0
ZW1zKSkpe2lmKGQ+PUxpZ2h0Ym94LnRvdGFsKXtkPTB9aWYoZDwwKXtkPUxpZ2h0
Ym94LnRvdGFsLTF9fWlmKExpZ2h0Ym94LmlzU2xpZGVzaG93KXtmb3IodmFyIGU9
MDtlPExpZ2h0Ym94LnNsaWRlSWRDb3VudDtlKyspe3dpbmRvdy5jbGVhclRpbWVv
dXQoTGlnaHRib3guc2xpZGVJZEFycmF5W2VdKX19TGlnaHRib3guaW5wcm9ncmVz
cz10cnVlO0xpZ2h0Ym94LmFjdGl2ZUltYWdlPWQ7aWYoTGlnaHRib3guZGlzYWJs
ZVJlc2l6ZSYmIUxpZ2h0Ym94LmlzU2xpZGVzaG93KXtrPXRydWV9TGlnaHRib3gu
aXNab29tZWRJbj1rO2EoIiNsb2FkaW5nIikuY3NzKHt6SW5kZXg6IjEwNTAwIn0p
LnNob3coKTtpZighTGlnaHRib3guYWx0ZXJuYXRpdmVfbGF5b3V0KXthKCIjaW1h
Z2VDb250YWluZXIiKS5oaWRlKCl9YSgiI2ZyYW1lQ29udGFpbmVyLCAjbW9kYWxD
b250YWluZXIsICNsaWdodGJveEltYWdlIikuaGlkZSgpO2EoIiNob3Zlck5hdiwg
I3ByZXZMaW5rLCAjbmV4dExpbmssICNmcmFtZUhvdmVyTmF2LCAjZnJhbWVQcmV2
TGluaywgI2ZyYW1lTmV4dExpbmsiKS5oaWRlKCk7YSgiI2ltYWdlRGF0YUNvbnRh
aW5lciwgI251bWJlckRpc3BsYXksICNib3R0b21OYXZab29tLCAjYm90dG9tTmF2
Wm9vbU91dCIpLmhpZGUoKTtpZighTGlnaHRib3guaXNMaWdodGZyYW1lJiYhTGln
aHRib3guaXNWaWRlbyYmIUxpZ2h0Ym94LmlzTW9kYWwpe2EoIiNsaWdodGJveCAj
aW1hZ2VEYXRhQ29udGFpbmVyIikucmVtb3ZlQ2xhc3MoImxpZ2h0Ym94Mi1hbHQt
bGF5b3V0LWRhdGEiKTtpbWdQcmVsb2FkZXI9bmV3IEltYWdlKCk7aW1nUHJlbG9h
ZGVyLm9uZXJyb3I9ZnVuY3Rpb24oKXtMaWdodGJveC5pbWdOb2RlTG9hZGluZ0Vy
cm9yKHRoaXMpfTtpbWdQcmVsb2FkZXIub25sb2FkPWZ1bmN0aW9uKCl7dmFyIG49
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxpZ2h0Ym94SW1hZ2UiKTtuLnNyYz1M
aWdodGJveC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVswXTtuLmFs
dD1MaWdodGJveC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVsyXTt2
YXIgbD1pbWdQcmVsb2FkZXIud2lkdGg7dmFyIGk9aW1nUHJlbG9hZGVyLmhlaWdo
dDt2YXIgbT1MaWdodGJveC5nZXRQYWdlU2l6ZSgpO3ZhciBvPXt3Om1bMl0tKExp
Z2h0Ym94LmJvcmRlclNpemUqMiksaDptWzNdLShMaWdodGJveC5ib3JkZXJTaXpl
KjYpLShMaWdodGJveC5pbmZvSGVpZ2h0KjQpLShtWzNdLzEwKX07dmFyIHE9e3c6
aW1nUHJlbG9hZGVyLndpZHRoLGg6aW1nUHJlbG9hZGVyLmhlaWdodH07aWYoayE9
PXRydWUpe3ZhciBwPTE7YSgiI2JvdHRvbU5hdlpvb21PdXQsICNib3R0b21OYXZa
b29tIikuaGlkZSgpO2lmKChxLnc+PW8ud3x8cS5oPj1vLmgpJiZxLmgmJnEudyl7
cD0oKG8udy9xLncpPChvLmgvcS5oKSk/by53L3EudzpvLmgvcS5oO2lmKCFMaWdo
dGJveC5kaXNhYmxlWm9vbSYmIUxpZ2h0Ym94LmlzU2xpZGVzaG93KXthKCIjYm90
dG9tTmF2Wm9vbSIpLmNzcyh7ekluZGV4OiIxMDUwMCJ9KS5zaG93KCl9fWw9TWF0
aC5mbG9vcihxLncqcCk7aT1NYXRoLmZsb29yKHEuaCpwKX1lbHNle2EoIiNib3R0
b21OYXZab29tIikuaGlkZSgpO2lmKChxLnc+PW8ud3x8cS5oPj1vLmgpJiZxLmgm
JnEudyl7aWYoIUxpZ2h0Ym94LmRpc2FibGVSZXNpemUmJkxpZ2h0Ym94LmlzU2xp
ZGVzaG93PT09ZmFsc2UmJiFMaWdodGJveC5kaXNhYmxlWm9vbSl7YSgiI2JvdHRv
bU5hdlpvb21PdXQiKS5jc3Moe3pJbmRleDoiMTA1MDAifSkuc2hvdygpfX19bi5z
dHlsZS53aWR0aD0obCkrInB4IjtuLnN0eWxlLmhlaWdodD0oaSkrInB4IjtMaWdo
dGJveC5yZXNpemVDb250YWluZXIobCxpKTtpbWdQcmVsb2FkZXIub25sb2FkPWZ1
bmN0aW9uKCl7fX07aW1nUHJlbG9hZGVyLnNyYz1MaWdodGJveC5pbWFnZUFycmF5
W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVswXTtpbWdQcmVsb2FkZXIuYWx0PUxpZ2h0
Ym94LmltYWdlQXJyYXlbTGlnaHRib3guYWN0aXZlSW1hZ2VdWzJdfWVsc2V7aWYo
TGlnaHRib3guaXNMaWdodGZyYW1lKXthKCIjbGlnaHRib3ggI2ltYWdlRGF0YUNv
bnRhaW5lciIpLmFkZENsYXNzKCJsaWdodGJveDItYWx0LWxheW91dC1kYXRhIik7
dmFyIGg9TGlnaHRib3guaW1hZ2VBcnJheVtMaWdodGJveC5hY3RpdmVJbWFnZV1b
MF07YSgiI2ZyYW1lQ29udGFpbmVyIikuaHRtbCgnPGlmcmFtZSBpZD0ibGlnaHRi
b3hGcmFtZSIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7IiBzcmM9IicraCsnIj48L2lm
cmFtZT4nKTtpZihhLmJyb3dzZXIubW96aWxsYSYmaC5pbmRleE9mKCIuc3dmIikh
PS0xKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImxpZ2h0Ym94RnJhbWUiKS5zcmM9TGlnaHRib3guaW1hZ2VBcnJheVtMaWdo
dGJveC5hY3RpdmVJbWFnZV1bMF19LDEwMDApfWlmKCFMaWdodGJveC5pZnJhbWVf
Ym9yZGVyKXthKCIjbGlnaHRib3hGcmFtZSIpLmNzcyh7Ym9yZGVyOiJub25lIn0p
O2EoIiNsaWdodGJveEZyYW1lIikuYXR0cigiZnJhbWVib3JkZXIiLCIwIil9dmFy
IGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxpZ2h0Ym94RnJhbWUiKTt2YXIg
Yz1MaWdodGJveC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVszXTtm
PUxpZ2h0Ym94LnNldFN0eWxlcyhmLGMpO0xpZ2h0Ym94LnJlc2l6ZUNvbnRhaW5l
cihwYXJzZUludChmLndpZHRoLDEwKSxwYXJzZUludChmLmhlaWdodCwxMCkpfWVs
c2V7aWYoTGlnaHRib3guaXNWaWRlb3x8TGlnaHRib3guaXNNb2RhbCl7YSgiI2xp
Z2h0Ym94ICNpbWFnZURhdGFDb250YWluZXIiKS5hZGRDbGFzcygibGlnaHRib3gy
LWFsdC1sYXlvdXQtZGF0YSIpO3ZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJtb2RhbENvbnRhaW5lciIpO3ZhciBnPUxpZ2h0Ym94LmltYWdlQXJyYXlbTGln
aHRib3guYWN0aXZlSW1hZ2VdWzNdO2I9TGlnaHRib3guc2V0U3R5bGVzKGIsZyk7
aWYoTGlnaHRib3guaXNWaWRlbyl7TGlnaHRib3gubW9kYWxIZWlnaHQ9cGFyc2VJ
bnQoYi5oZWlnaHQsMTApLTEwO0xpZ2h0Ym94Lm1vZGFsV2lkdGg9cGFyc2VJbnQo
Yi53aWR0aCwxMCktMTA7TGlnaHR2aWRlby5zdGFydFZpZGVvKExpZ2h0Ym94Lmlt
YWdlQXJyYXlbTGlnaHRib3guYWN0aXZlSW1hZ2VdWzBdKX1MaWdodGJveC5yZXNp
emVDb250YWluZXIocGFyc2VJbnQoYi53aWR0aCwxMCkscGFyc2VJbnQoYi5oZWln
aHQsMTApKX19fX19LGltZ05vZGVMb2FkaW5nRXJyb3I6ZnVuY3Rpb24oZCl7dmFy
IGM9RHJ1cGFsLnNldHRpbmdzLmxpZ2h0Ym94Mjt2YXIgYj1MaWdodGJveC5pbWFn
ZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVswXTtpZihjLmRpc3BsYXlfaW1h
Z2Vfc2l6ZSE9PSIiKXtiPWIucmVwbGFjZShuZXcgUmVnRXhwKCIuIitjLmRpc3Bs
YXlfaW1hZ2Vfc2l6ZSksIiIpfUxpZ2h0Ym94LmltYWdlQXJyYXlbTGlnaHRib3gu
YWN0aXZlSW1hZ2VdWzBdPWI7ZC5vbmVycm9yPWZ1bmN0aW9uKCl7TGlnaHRib3gu
aW1nTG9hZGluZ0Vycm9yKGQpfTtkLnNyYz1ifSxpbWdMb2FkaW5nRXJyb3I6ZnVu
Y3Rpb24oYyl7dmFyIGI9RHJ1cGFsLnNldHRpbmdzLmxpZ2h0Ym94MjtMaWdodGJv
eC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVswXT1iLmRlZmF1bHRf
aW1hZ2U7Yy5zcmM9Yi5kZWZhdWx0X2ltYWdlfSxyZXNpemVDb250YWluZXI6ZnVu
Y3Rpb24oZyxjKXtnPShnPExpZ2h0Ym94Lm1pbldpZHRoP0xpZ2h0Ym94Lm1pbldp
ZHRoOmcpO3RoaXMud2lkdGhDdXJyZW50PWEoIiNvdXRlckltYWdlQ29udGFpbmVy
Iikud2lkdGgoKTt0aGlzLmhlaWdodEN1cnJlbnQ9YSgiI291dGVySW1hZ2VDb250
YWluZXIiKS5oZWlnaHQoKTt2YXIgYj0oZysoTGlnaHRib3guYm9yZGVyU2l6ZSoy
KSk7dmFyIGU9KGMrKExpZ2h0Ym94LmJvcmRlclNpemUqMikpO3RoaXMueFNjYWxl
PShiL3RoaXMud2lkdGhDdXJyZW50KSoxMDA7dGhpcy55U2NhbGU9KGUvdGhpcy5o
ZWlnaHRDdXJyZW50KSoxMDA7d0RpZmY9dGhpcy53aWR0aEN1cnJlbnQtYjtoRGlm
Zj10aGlzLmhlaWdodEN1cnJlbnQtZTthKCIjbW9kYWxDb250YWluZXIiKS5jc3Mo
e3dpZHRoOmcsaGVpZ2h0OmN9KTtpZihMaWdodGJveC5yZXNpemVTZXF1ZW5jZSl7
dmFyIGY9e3dpZHRoOmJ9O3ZhciBkPXtoZWlnaHQ6ZX07aWYoTGlnaHRib3gucmVz
aXplU2VxdWVuY2U9PTIpe2Y9e2hlaWdodDplfTtkPXt3aWR0aDpifX1hKCIjb3V0
ZXJJbWFnZUNvbnRhaW5lciIpLmFuaW1hdGUoZixMaWdodGJveC5yZXNpemVTcGVl
ZCkuYW5pbWF0ZShkLExpZ2h0Ym94LnJlc2l6ZVNwZWVkLCJsaW5lYXIiLGZ1bmN0
aW9uKCl7TGlnaHRib3guc2hvd0RhdGEoKX0pfWVsc2V7YSgiI291dGVySW1hZ2VD
b250YWluZXIiKS5hbmltYXRlKHt3aWR0aDpiLGhlaWdodDplfSxMaWdodGJveC5y
ZXNpemVTcGVlZCwibGluZWFyIixmdW5jdGlvbigpe0xpZ2h0Ym94LnNob3dEYXRh
KCl9KX1pZigoaERpZmY9PT0wKSYmKHdEaWZmPT09MCkpe2lmKGEuYnJvd3Nlci5t
c2llKXtMaWdodGJveC5wYXVzZSgyNTApfWVsc2V7TGlnaHRib3gucGF1c2UoMTAw
KX19dmFyIGg9RHJ1cGFsLnNldHRpbmdzLmxpZ2h0Ym94MjtpZighaC51c2VfYWx0
X2xheW91dCl7YSgiI3ByZXZMaW5rLCAjbmV4dExpbmsiKS5jc3Moe2hlaWdodDpj
KyJweCJ9KX1hKCIjaW1hZ2VEYXRhQ29udGFpbmVyIikuY3NzKHt3aWR0aDpiKyJw
eCJ9KX0sc2hvd0RhdGE6ZnVuY3Rpb24oKXthKCIjbG9hZGluZyIpLmhpZGUoKTtp
ZihMaWdodGJveC5pc0xpZ2h0ZnJhbWV8fExpZ2h0Ym94LmlzVmlkZW98fExpZ2h0
Ym94LmlzTW9kYWwpe0xpZ2h0Ym94LnVwZGF0ZURldGFpbHMoKTtpZihMaWdodGJv
eC5pc0xpZ2h0ZnJhbWUpe2EoIiNmcmFtZUNvbnRhaW5lciIpLnNob3coKTtpZihh
LmJyb3dzZXIuc2FmYXJpfHxMaWdodGJveC5mYWRlSW5TcGVlZD09PTApe2EoIiNs
aWdodGJveEZyYW1lIikuY3NzKHt6SW5kZXg6IjEwNTAwIn0pLnNob3coKX1lbHNl
e2EoIiNsaWdodGJveEZyYW1lIikuY3NzKHt6SW5kZXg6IjEwNTAwIn0pLmZhZGVJ
bihMaWdodGJveC5mYWRlSW5TcGVlZCl9fWVsc2V7aWYoTGlnaHRib3guaXNWaWRl
byl7YSgiI21vZGFsQ29udGFpbmVyIikuaHRtbChMaWdodGJveC5tb2RhbEhUTUwp
LmNsaWNrKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlfSkuY3NzKCJ6SW5kZXgiLCIx
MDUwMCIpLnNob3coKX1lbHNle3ZhciBmPXVuZXNjYXBlKExpZ2h0Ym94LmltYWdl
QXJyYXlbTGlnaHRib3guYWN0aXZlSW1hZ2VdWzBdKTtpZihMaWdodGJveC5pbWFn
ZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVs0XSl7YShmKS5hcHBlbmRUbygi
I21vZGFsQ29udGFpbmVyIik7YSgiI21vZGFsQ29udGFpbmVyIikuY3NzKHt6SW5k
ZXg6IjEwNTAwIn0pLnNob3coKX1lbHNle2EoIiNtb2RhbENvbnRhaW5lciIpLmhp
ZGUoKS5sb2FkKGYsZnVuY3Rpb24oKXthKCIjbW9kYWxDb250YWluZXIiKS5jc3Mo
e3pJbmRleDoiMTA1MDAifSkuc2hvdygpfSl9YSgiI21vZGFsQ29udGFpbmVyIiku
dW5iaW5kKCJjbGljayIpfX19ZWxzZXthKCIjaW1hZ2VDb250YWluZXIiKS5zaG93
KCk7aWYoYS5icm93c2VyLnNhZmFyaXx8TGlnaHRib3guZmFkZUluU3BlZWQ9PT0w
KXthKCIjbGlnaHRib3hJbWFnZSIpLmNzcyh7ekluZGV4OiIxMDUwMCJ9KS5zaG93
KCl9ZWxzZXthKCIjbGlnaHRib3hJbWFnZSIpLmNzcyh7ekluZGV4OiIxMDUwMCJ9
KS5mYWRlSW4oTGlnaHRib3guZmFkZUluU3BlZWQpfUxpZ2h0Ym94LnVwZGF0ZURl
dGFpbHMoKTt0aGlzLnByZWxvYWROZWlnaGJvckltYWdlcygpfUxpZ2h0Ym94Lmlu
cHJvZ3Jlc3M9ZmFsc2U7aWYoTGlnaHRib3guaXNTbGlkZXNob3cpe2lmKCFMaWdo
dGJveC5sb29wU2xpZGVzJiZMaWdodGJveC5hY3RpdmVJbWFnZT09KExpZ2h0Ym94
LnRvdGFsLTEpKXtpZihMaWdodGJveC5hdXRvRXhpdCl7TGlnaHRib3guc2xpZGVJ
ZEFycmF5W0xpZ2h0Ym94LnNsaWRlSWRDb3VudCsrXT1zZXRUaW1lb3V0KGZ1bmN0
aW9uKCl7TGlnaHRib3guZW5kKCJzbGlkZXNob3ciKX0sTGlnaHRib3guc2xpZGVJ
bnRlcnZhbCl9fWVsc2V7aWYoIUxpZ2h0Ym94LmlzUGF1c2VkJiZMaWdodGJveC50
b3RhbD4xKXtMaWdodGJveC5zbGlkZUlkQXJyYXlbTGlnaHRib3guc2xpZGVJZENv
dW50KytdPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtMaWdodGJveC5jaGFuZ2VEYXRh
KExpZ2h0Ym94LmFjdGl2ZUltYWdlKzEpfSxMaWdodGJveC5zbGlkZUludGVydmFs
KX19aWYoTGlnaHRib3guc2hvd1BsYXlQYXVzZSYmTGlnaHRib3gudG90YWw+MSYm
IUxpZ2h0Ym94LmlzUGF1c2VkKXthKCIjbGlnaHRzaG93UGF1c2UiKS5zaG93KCk7
YSgiI2xpZ2h0c2hvd1BsYXkiKS5oaWRlKCl9ZWxzZXtpZihMaWdodGJveC5zaG93
UGxheVBhdXNlJiZMaWdodGJveC50b3RhbD4xKXthKCIjbGlnaHRzaG93UGF1c2Ui
KS5oaWRlKCk7YSgiI2xpZ2h0c2hvd1BsYXkiKS5zaG93KCl9fX12YXIgYz1MaWdo
dGJveC5nZXRQYWdlU2l6ZSgpO3ZhciBiPUxpZ2h0Ym94LmdldFBhZ2VTY3JvbGwo
KTt2YXIgZD1jWzFdO2lmKExpZ2h0Ym94LmlzWm9vbWVkSW4mJmNbMV0+Y1szXSl7
dmFyIGU9KExpZ2h0Ym94LnRvcFBvc2l0aW9uPT0iIj8oY1szXS8xMCk6TGlnaHRi
b3gudG9wUG9zaXRpb24pKjE7ZD1kK2JbMV0rZX1hKCIjbGlnaHRib3gyLW92ZXJs
YXkiKS5jc3Moe2hlaWdodDpkKyJweCIsd2lkdGg6Y1swXSsicHgifSk7aWYoYS5i
cm93c2VyLm1vemlsbGEpe2lmKExpZ2h0Ym94LmltYWdlQXJyYXlbTGlnaHRib3gu
YWN0aXZlSW1hZ2VdWzBdLmluZGV4T2YoIi5wZGYiKSE9LTEpe3NldFRpbWVvdXQo
ZnVuY3Rpb24oKXtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibGlnaHRib3hGcmFt
ZSIpLnNyYz1MaWdodGJveC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdl
XVswXX0sMTAwMCl9fX0sdXBkYXRlRGV0YWlsczpmdW5jdGlvbigpe2EoIiNpbWFn
ZURhdGFDb250YWluZXIiKS5oaWRlKCk7dmFyIGM9RHJ1cGFsLnNldHRpbmdzLmxp
Z2h0Ym94MjtpZihjLnNob3dfY2FwdGlvbil7dmFyIGI9TGlnaHRib3guZmlsdGVy
WFNTKExpZ2h0Ym94LmltYWdlQXJyYXlbTGlnaHRib3guYWN0aXZlSW1hZ2VdWzFd
KTtpZighYil7Yj0iIn1hKCIjY2FwdGlvbiIpLmh0bWwoYikuY3NzKHt6SW5kZXg6
IjEwNTAwIn0pLnNob3coKX12YXIgZT1udWxsO2lmKGMuaW1hZ2VfY291bnQmJkxp
Z2h0Ym94LnRvdGFsPjEpe3ZhciBkPUxpZ2h0Ym94LmFjdGl2ZUltYWdlKzE7aWYo
IUxpZ2h0Ym94LmlzTGlnaHRmcmFtZSYmIUxpZ2h0Ym94LmlzTW9kYWwmJiFMaWdo
dGJveC5pc1ZpZGVvKXtlPWMuaW1hZ2VfY291bnQucmVwbGFjZSgvXCFjdXJyZW50
LyxkKS5yZXBsYWNlKC9cIXRvdGFsLyxMaWdodGJveC50b3RhbCl9ZWxzZXtpZihM
aWdodGJveC5pc1ZpZGVvKXtlPWMudmlkZW9fY291bnQucmVwbGFjZSgvXCFjdXJy
ZW50LyxkKS5yZXBsYWNlKC9cIXRvdGFsLyxMaWdodGJveC50b3RhbCl9ZWxzZXtl
PWMucGFnZV9jb3VudC5yZXBsYWNlKC9cIWN1cnJlbnQvLGQpLnJlcGxhY2UoL1wh
dG90YWwvLExpZ2h0Ym94LnRvdGFsKX19YSgiI251bWJlckRpc3BsYXkiKS5odG1s
KGUpLmNzcyh7ekluZGV4OiIxMDUwMCJ9KS5zaG93KCl9ZWxzZXthKCIjbnVtYmVy
RGlzcGxheSIpLmhpZGUoKX1hKCIjaW1hZ2VEYXRhQ29udGFpbmVyIikuaGlkZSgp
LnNsaWRlRG93bihMaWdodGJveC5zbGlkZURvd25TcGVlZCxmdW5jdGlvbigpe2Eo
IiNib3R0b21OYXYiKS5zaG93KCl9KTtpZihMaWdodGJveC5ydGw9PTEpe2EoIiNi
b3R0b21OYXYiKS5jc3MoeyJmbG9hdCI6ImxlZnQifSl9TGlnaHRib3gudXBkYXRl
TmF2KCl9LHVwZGF0ZU5hdjpmdW5jdGlvbigpe2EoIiNob3Zlck5hdiIpLmNzcyh7
ekluZGV4OiIxMDUwMCJ9KS5zaG93KCk7dmFyIGM9IiNwcmV2TGluayI7dmFyIGI9
IiNuZXh0TGluayI7aWYoTGlnaHRib3guaXNTbGlkZXNob3cpe2lmKChMaWdodGJv
eC50b3RhbD4xJiZMaWdodGJveC5sb29wU2xpZGVzKXx8TGlnaHRib3guYWN0aXZl
SW1hZ2UhPT0wKXthKGMpLmNzcyh7ekluZGV4OiIxMDUwMCJ9KS5zaG93KCkuY2xp
Y2soZnVuY3Rpb24oKXtpZihMaWdodGJveC5wYXVzZU9uUHJldkNsaWNrKXtMaWdo
dGJveC50b2dnbGVQbGF5UGF1c2UoImxpZ2h0c2hvd1BhdXNlIiwibGlnaHRzaG93
UGxheSIpfUxpZ2h0Ym94LmNoYW5nZURhdGEoTGlnaHRib3guYWN0aXZlSW1hZ2Ut
MSk7cmV0dXJuIGZhbHNlfSl9ZWxzZXthKGMpLmhpZGUoKX1pZigoTGlnaHRib3gu
dG90YWw+MSYmTGlnaHRib3gubG9vcFNsaWRlcyl8fExpZ2h0Ym94LmFjdGl2ZUlt
YWdlIT0oTGlnaHRib3gudG90YWwtMSkpe2EoYikuY3NzKHt6SW5kZXg6IjEwNTAw
In0pLnNob3coKS5jbGljayhmdW5jdGlvbigpe2lmKExpZ2h0Ym94LnBhdXNlT25O
ZXh0Q2xpY2spe0xpZ2h0Ym94LnRvZ2dsZVBsYXlQYXVzZSgibGlnaHRzaG93UGF1
c2UiLCJsaWdodHNob3dQbGF5Iil9TGlnaHRib3guY2hhbmdlRGF0YShMaWdodGJv
eC5hY3RpdmVJbWFnZSsxKTtyZXR1cm4gZmFsc2V9KX1lbHNle2EoYikuaGlkZSgp
fX1lbHNle2lmKChMaWdodGJveC5pc0xpZ2h0ZnJhbWV8fExpZ2h0Ym94LmlzTW9k
YWx8fExpZ2h0Ym94LmlzVmlkZW8pJiYhTGlnaHRib3guYWx0ZXJuYXRpdmVfbGF5
b3V0KXthKCIjZnJhbWVIb3Zlck5hdiIpLmNzcyh7ekluZGV4OiIxMDUwMCJ9KS5z
aG93KCk7YSgiI2hvdmVyTmF2IikuY3NzKHt6SW5kZXg6IjEwNTAwIn0pLmhpZGUo
KTtjPSIjZnJhbWVQcmV2TGluayI7Yj0iI2ZyYW1lTmV4dExpbmsifWlmKChMaWdo
dGJveC50b3RhbD4xJiZMaWdodGJveC5sb29wSXRlbXMpfHxMaWdodGJveC5hY3Rp
dmVJbWFnZSE9PTApe2EoYykuY3NzKHt6SW5kZXg6IjEwNTAwIn0pLnNob3coKS51
bmJpbmQoKS5jbGljayhmdW5jdGlvbigpe0xpZ2h0Ym94LmNoYW5nZURhdGEoTGln
aHRib3guYWN0aXZlSW1hZ2UtMSk7cmV0dXJuIGZhbHNlfSl9ZWxzZXthKGMpLmhp
ZGUoKX1pZigoTGlnaHRib3gudG90YWw+MSYmTGlnaHRib3gubG9vcEl0ZW1zKXx8
TGlnaHRib3guYWN0aXZlSW1hZ2UhPShMaWdodGJveC50b3RhbC0xKSl7YShiKS5j
c3Moe3pJbmRleDoiMTA1MDAifSkuc2hvdygpLnVuYmluZCgpLmNsaWNrKGZ1bmN0
aW9uKCl7TGlnaHRib3guY2hhbmdlRGF0YShMaWdodGJveC5hY3RpdmVJbWFnZSsx
KTtyZXR1cm4gZmFsc2V9KX1lbHNle2EoYikuaGlkZSgpfX1pZighTGlnaHRib3gu
aXNNb2RhbCl7dGhpcy5lbmFibGVLZXlib2FyZE5hdigpfX0sZW5hYmxlS2V5Ym9h
cmROYXY6ZnVuY3Rpb24oKXthKGRvY3VtZW50KS5iaW5kKCJrZXlkb3duIix0aGlz
LmtleWJvYXJkQWN0aW9uKX0sZGlzYWJsZUtleWJvYXJkTmF2OmZ1bmN0aW9uKCl7
YShkb2N1bWVudCkudW5iaW5kKCJrZXlkb3duIix0aGlzLmtleWJvYXJkQWN0aW9u
KX0sa2V5Ym9hcmRBY3Rpb246ZnVuY3Rpb24oYil7aWYoYj09PW51bGwpe2tleWNv
ZGU9ZXZlbnQua2V5Q29kZTtlc2NhcGVLZXk9Mjd9ZWxzZXtrZXljb2RlPWIua2V5
Q29kZTtlc2NhcGVLZXk9Yi5ET01fVktfRVNDQVBFfWtleT1TdHJpbmcuZnJvbUNo
YXJDb2RlKGtleWNvZGUpLnRvTG93ZXJDYXNlKCk7aWYoTGlnaHRib3guY2hlY2tL
ZXkoTGlnaHRib3gua2V5c0Nsb3NlLGtleSxrZXljb2RlKSl7TGlnaHRib3guZW5k
KCJmb3JjZUNsb3NlIil9ZWxzZXtpZihMaWdodGJveC5jaGVja0tleShMaWdodGJv
eC5rZXlzUHJldmlvdXMsa2V5LGtleWNvZGUpKXtpZigoTGlnaHRib3gudG90YWw+
MSYmKChMaWdodGJveC5pc1NsaWRlc2hvdyYmTGlnaHRib3gubG9vcFNsaWRlcyl8
fCghTGlnaHRib3guaXNTbGlkZXNob3cmJkxpZ2h0Ym94Lmxvb3BJdGVtcykpKXx8
TGlnaHRib3guYWN0aXZlSW1hZ2UhPT0wKXtMaWdodGJveC5jaGFuZ2VEYXRhKExp
Z2h0Ym94LmFjdGl2ZUltYWdlLTEpfX1lbHNle2lmKExpZ2h0Ym94LmNoZWNrS2V5
KExpZ2h0Ym94LmtleXNOZXh0LGtleSxrZXljb2RlKSl7aWYoKExpZ2h0Ym94LnRv
dGFsPjEmJigoTGlnaHRib3guaXNTbGlkZXNob3cmJkxpZ2h0Ym94Lmxvb3BTbGlk
ZXMpfHwoIUxpZ2h0Ym94LmlzU2xpZGVzaG93JiZMaWdodGJveC5sb29wSXRlbXMp
KSl8fExpZ2h0Ym94LmFjdGl2ZUltYWdlIT0oTGlnaHRib3gudG90YWwtMSkpe0xp
Z2h0Ym94LmNoYW5nZURhdGEoTGlnaHRib3guYWN0aXZlSW1hZ2UrMSl9fWVsc2V7
aWYoTGlnaHRib3guY2hlY2tLZXkoTGlnaHRib3gua2V5c1pvb20sa2V5LGtleWNv
ZGUpJiYhTGlnaHRib3guZGlzYWJsZVJlc2l6ZSYmIUxpZ2h0Ym94LmRpc2FibGVa
b29tJiYhTGlnaHRib3guaXNTbGlkZXNob3cmJiFMaWdodGJveC5pc0xpZ2h0ZnJh
bWUpe2lmKExpZ2h0Ym94LmlzWm9vbWVkSW4pe0xpZ2h0Ym94LmNoYW5nZURhdGEo
TGlnaHRib3guYWN0aXZlSW1hZ2UsZmFsc2UpfWVsc2V7aWYoIUxpZ2h0Ym94Lmlz
Wm9vbWVkSW4pe0xpZ2h0Ym94LmNoYW5nZURhdGEoTGlnaHRib3guYWN0aXZlSW1h
Z2UsdHJ1ZSl9fXJldHVybiBmYWxzZX1lbHNle2lmKExpZ2h0Ym94LmNoZWNrS2V5
KExpZ2h0Ym94LmtleXNQbGF5UGF1c2Usa2V5LGtleWNvZGUpJiZMaWdodGJveC5p
c1NsaWRlc2hvdyl7aWYoTGlnaHRib3guaXNQYXVzZWQpe0xpZ2h0Ym94LnRvZ2ds
ZVBsYXlQYXVzZSgibGlnaHRzaG93UGxheSIsImxpZ2h0c2hvd1BhdXNlIil9ZWxz
ZXtMaWdodGJveC50b2dnbGVQbGF5UGF1c2UoImxpZ2h0c2hvd1BhdXNlIiwibGln
aHRzaG93UGxheSIpfXJldHVybiBmYWxzZX19fX19fSxwcmVsb2FkTmVpZ2hib3JJ
bWFnZXM6ZnVuY3Rpb24oKXtpZigoTGlnaHRib3gudG90YWwtMSk+TGlnaHRib3gu
YWN0aXZlSW1hZ2Upe3ByZWxvYWROZXh0SW1hZ2U9bmV3IEltYWdlKCk7cHJlbG9h
ZE5leHRJbWFnZS5zcmM9TGlnaHRib3guaW1hZ2VBcnJheVtMaWdodGJveC5hY3Rp
dmVJbWFnZSsxXVswXX1pZihMaWdodGJveC5hY3RpdmVJbWFnZT4wKXtwcmVsb2Fk
UHJldkltYWdlPW5ldyBJbWFnZSgpO3ByZWxvYWRQcmV2SW1hZ2Uuc3JjPUxpZ2h0
Ym94LmltYWdlQXJyYXlbTGlnaHRib3guYWN0aXZlSW1hZ2UtMV1bMF19fSxlbmQ6
ZnVuY3Rpb24oYil7dmFyIGQ9KGI9PSJzbGlkZXNob3ciP2ZhbHNlOnRydWUpO2lm
KExpZ2h0Ym94LmlzU2xpZGVzaG93JiZMaWdodGJveC5pc1BhdXNlZCYmIWQpe3Jl
dHVybn1pZihMaWdodGJveC5pbnByb2dyZXNzPT09dHJ1ZSYmYiE9ImZvcmNlQ2xv
c2UiKXtyZXR1cm59TGlnaHRib3guZGlzYWJsZUtleWJvYXJkTmF2KCk7YSgiI2xp
Z2h0Ym94IikuaGlkZSgpO2EoIiNsaWdodGJveDItb3ZlcmxheSIpLmZhZGVPdXQo
KTtMaWdodGJveC5pc1BhdXNlZD10cnVlO0xpZ2h0Ym94LmlucHJvZ3Jlc3M9ZmFs
c2U7TGlnaHRib3gudG9nZ2xlU2VsZWN0c0ZsYXNoKCJ2aXNpYmxlIik7aWYoTGln
aHRib3guaXNTbGlkZXNob3cpe2Zvcih2YXIgYz0wO2M8TGlnaHRib3guc2xpZGVJ
ZENvdW50O2MrKyl7d2luZG93LmNsZWFyVGltZW91dChMaWdodGJveC5zbGlkZUlk
QXJyYXlbY10pfWEoIiNsaWdodHNob3dQYXVzZSwgI2xpZ2h0c2hvd1BsYXkiKS5o
aWRlKCl9ZWxzZXtpZihMaWdodGJveC5pc0xpZ2h0ZnJhbWUpe2EoIiNmcmFtZUNv
bnRhaW5lciIpLmVtcHR5KCkuaGlkZSgpfWVsc2V7aWYoTGlnaHRib3guaXNWaWRl
b3x8TGlnaHRib3guaXNNb2RhbCl7aWYoIUxpZ2h0Ym94LmF1dG9fbW9kYWwpe2Eo
IiNtb2RhbENvbnRhaW5lciIpLmhpZGUoKS5odG1sKCIiKX1MaWdodGJveC5hdXRv
X21vZGFsPWZhbHNlfX19fSxnZXRQYWdlU2Nyb2xsOmZ1bmN0aW9uKCl7dmFyIGMs
YjtpZihzZWxmLnBhZ2VZT2Zmc2V0fHxzZWxmLnBhZ2VYT2Zmc2V0KXtiPXNlbGYu
cGFnZVlPZmZzZXQ7Yz1zZWxmLnBhZ2VYT2Zmc2V0fWVsc2V7aWYoZG9jdW1lbnQu
ZG9jdW1lbnRFbGVtZW50JiYoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9s
bFRvcHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQpKXtiPWRv
Y3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3A7Yz1kb2N1bWVudC5kb2N1
bWVudEVsZW1lbnQuc2Nyb2xsTGVmdH1lbHNle2lmKGRvY3VtZW50LmJvZHkpe2I9
ZG9jdW1lbnQuYm9keS5zY3JvbGxUb3A7Yz1kb2N1bWVudC5ib2R5LnNjcm9sbExl
ZnR9fX1hcnJheVBhZ2VTY3JvbGw9W2MsYl07cmV0dXJuIGFycmF5UGFnZVNjcm9s
bH0sZ2V0UGFnZVNpemU6ZnVuY3Rpb24oKXt2YXIgZCxiO2lmKHdpbmRvdy5pbm5l
ckhlaWdodCYmd2luZG93LnNjcm9sbE1heFkpe2Q9d2luZG93LmlubmVyV2lkdGgr
d2luZG93LnNjcm9sbE1heFg7Yj13aW5kb3cuaW5uZXJIZWlnaHQrd2luZG93LnNj
cm9sbE1heFl9ZWxzZXtpZihkb2N1bWVudC5ib2R5LnNjcm9sbEhlaWdodD5kb2N1
bWVudC5ib2R5Lm9mZnNldEhlaWdodCl7ZD1kb2N1bWVudC5ib2R5LnNjcm9sbFdp
ZHRoO2I9ZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHR9ZWxzZXtkPWRvY3VtZW50
LmJvZHkub2Zmc2V0V2lkdGg7Yj1kb2N1bWVudC5ib2R5Lm9mZnNldEhlaWdodH19
dmFyIGMsZTtpZihzZWxmLmlubmVySGVpZ2h0KXtpZihkb2N1bWVudC5kb2N1bWVu
dEVsZW1lbnQuY2xpZW50V2lkdGgpe2M9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50
LmNsaWVudFdpZHRofWVsc2V7Yz1zZWxmLmlubmVyV2lkdGh9ZT1zZWxmLmlubmVy
SGVpZ2h0fWVsc2V7aWYoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZkb2N1bWVu
dC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0KXtjPWRvY3VtZW50LmRvY3Vt
ZW50RWxlbWVudC5jbGllbnRXaWR0aDtlPWRvY3VtZW50LmRvY3VtZW50RWxlbWVu
dC5jbGllbnRIZWlnaHR9ZWxzZXtpZihkb2N1bWVudC5ib2R5KXtjPWRvY3VtZW50
LmJvZHkuY2xpZW50V2lkdGg7ZT1kb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodH19
fWlmKGI8ZSl7cGFnZUhlaWdodD1lfWVsc2V7cGFnZUhlaWdodD1ifWlmKGQ8Yyl7
cGFnZVdpZHRoPWR9ZWxzZXtwYWdlV2lkdGg9Y31hcnJheVBhZ2VTaXplPW5ldyBB
cnJheShwYWdlV2lkdGgscGFnZUhlaWdodCxjLGUpO3JldHVybiBhcnJheVBhZ2VT
aXplfSxwYXVzZTpmdW5jdGlvbihkKXt2YXIgYz1uZXcgRGF0ZSgpO3ZhciBiPW51
bGw7ZG97Yj1uZXcgRGF0ZSgpfXdoaWxlKGItYzxkKX0sdG9nZ2xlU2VsZWN0c0Zs
YXNoOmZ1bmN0aW9uKGIpe2lmKGI9PSJ2aXNpYmxlIil7YSgic2VsZWN0LmxpZ2h0
Ym94X2hpZGRlbiwgZW1iZWQubGlnaHRib3hfaGlkZGVuLCBvYmplY3QubGlnaHRi
b3hfaGlkZGVuIikuc2hvdygpfWVsc2V7aWYoYj09ImhpZGUiKXthKCJzZWxlY3Q6
dmlzaWJsZSwgZW1iZWQ6dmlzaWJsZSwgb2JqZWN0OnZpc2libGUiKS5ub3QoIiNs
aWdodGJveEF1dG9Nb2RhbCBzZWxlY3QsICNsaWdodGJveEF1dG9Nb2RhbCBlbWJl
ZCwgI2xpZ2h0Ym94QXV0b01vZGFsIG9iamVjdCIpLmFkZENsYXNzKCJsaWdodGJv
eF9oaWRkZW4iKTthKCJzZWxlY3QubGlnaHRib3hfaGlkZGVuLCBlbWJlZC5saWdo
dGJveF9oaWRkZW4sIG9iamVjdC5saWdodGJveF9oaWRkZW4iKS5oaWRlKCl9fX0s
cGFyc2VSZWw6ZnVuY3Rpb24oYil7dmFyIGQ9W107ZC5yZWw9ZC50aXRsZT1kLmdy
b3VwPWQuc3R5bGU9ZC5mbGFzaHZhcnM9bnVsbDtpZighYShiKS5hdHRyKCJyZWwi
KSl7cmV0dXJuIGR9ZC5yZWw9YShiKS5hdHRyKCJyZWwiKS5tYXRjaCgvXHcrLylb
MF07aWYoYShiKS5hdHRyKCJyZWwiKS5tYXRjaCgvXFsoLiopXF0vKSl7dmFyIGM9
YShiKS5hdHRyKCJyZWwiKS5tYXRjaCgvXFsoLio/KVxdLylbMV0uc3BsaXQoInwi
KTtkLmdyb3VwPWNbMF07ZC5zdHlsZT1jWzFdO2lmKGQuc3R5bGUhPXVuZGVmaW5l
ZCYmZC5zdHlsZS5tYXRjaCgvZmxhc2h2YXJzOlxzPyguKj8pOy8pKXtkLmZsYXNo
dmFycz1kLnN0eWxlLm1hdGNoKC9mbGFzaHZhcnM6XHM/KC4qPyk7LylbMV19fWlm
KGEoYikuYXR0cigicmVsIikubWF0Y2goL1xbLipcXVxbKC4qKVxdLykpe2QudGl0
bGU9YShiKS5hdHRyKCJyZWwiKS5tYXRjaCgvXFsuKlxdXFsoLiopXF0vKVsxXX1y
ZXR1cm4gZH0sc2V0U3R5bGVzOmZ1bmN0aW9uKGcsZil7Zy53aWR0aD1MaWdodGJv
eC5pZnJhbWVfd2lkdGg7Zy5oZWlnaHQ9TGlnaHRib3guaWZyYW1lX2hlaWdodDtn
LnNjcm9sbGluZz0iYXV0byI7aWYoIWYpe3JldHVybiBnfXZhciBkPWYuc3BsaXQo
IjsiKTtmb3IodmFyIGM9MDtjPGQubGVuZ3RoO2MrKyl7aWYoZFtjXS5pbmRleE9m
KCJ3aWR0aDoiKT49MCl7dmFyIGI9ZFtjXS5yZXBsYWNlKCJ3aWR0aDoiLCIiKTtn
LndpZHRoPWpRdWVyeS50cmltKGIpfWVsc2V7aWYoZFtjXS5pbmRleE9mKCJoZWln
aHQ6Iik+PTApe3ZhciBlPWRbY10ucmVwbGFjZSgiaGVpZ2h0OiIsIiIpO2cuaGVp
Z2h0PWpRdWVyeS50cmltKGUpfWVsc2V7aWYoZFtjXS5pbmRleE9mKCJzY3JvbGxp
bmc6Iik+PTApe3ZhciBrPWRbY10ucmVwbGFjZSgic2Nyb2xsaW5nOiIsIiIpO2cu
c2Nyb2xsaW5nPWpRdWVyeS50cmltKGspfWVsc2V7aWYoZFtjXS5pbmRleE9mKCJv
dmVyZmxvdzoiKT49MCl7dmFyIGw9ZFtjXS5yZXBsYWNlKCJvdmVyZmxvdzoiLCIi
KTtnLm92ZXJmbG93PWpRdWVyeS50cmltKGwpfX19fX1yZXR1cm4gZ30sdG9nZ2xl
UGxheVBhdXNlOmZ1bmN0aW9uKGMsYil7aWYoTGlnaHRib3guaXNTbGlkZXNob3cm
JmM9PSJsaWdodHNob3dQYXVzZSIpe2Zvcih2YXIgZD0wO2Q8TGlnaHRib3guc2xp
ZGVJZENvdW50O2QrKyl7d2luZG93LmNsZWFyVGltZW91dChMaWdodGJveC5zbGlk
ZUlkQXJyYXlbZF0pfX1hKCIjIitjKS5oaWRlKCk7YSgiIyIrYikuc2hvdygpO2lm
KGM9PSJsaWdodHNob3dQbGF5Iil7TGlnaHRib3guaXNQYXVzZWQ9ZmFsc2U7aWYo
IUxpZ2h0Ym94Lmxvb3BTbGlkZXMmJkxpZ2h0Ym94LmFjdGl2ZUltYWdlPT0oTGln
aHRib3gudG90YWwtMSkpe0xpZ2h0Ym94LmVuZCgpfWVsc2V7aWYoTGlnaHRib3gu
dG90YWw+MSl7TGlnaHRib3guY2hhbmdlRGF0YShMaWdodGJveC5hY3RpdmVJbWFn
ZSsxKX19fWVsc2V7TGlnaHRib3guaXNQYXVzZWQ9dHJ1ZX19LHRyaWdnZXJMaWdo
dGJveDpmdW5jdGlvbihjLGIpe2lmKGMubGVuZ3RoKXtpZihiJiZiLmxlbmd0aCl7
YSgiYVtyZWxePSciK2MrIlsiK2IrIl0nXSwgYXJlYVtyZWxePSciK2MrIlsiK2Ir
Il0nXSIpLmVxKDApLnRyaWdnZXIoImNsaWNrIil9ZWxzZXthKCJhW3JlbF49JyIr
YysiJ10sIGFyZWFbcmVsXj0nIitjKyInXSIpLmVxKDApLnRyaWdnZXIoImNsaWNr
Iil9fX0sZGV0ZWN0TWFjRkYyOmZ1bmN0aW9uKCl7dmFyIGM9bmF2aWdhdG9yLnVz
ZXJBZ2VudC50b0xvd2VyQ2FzZSgpO2lmKC9maXJlZm94W1wvXHNdKFxkK1wuXGQr
KS8udGVzdChjKSl7dmFyIGI9bmV3IE51bWJlcihSZWdFeHAuJDEpO2lmKGI8MyYm
Yy5pbmRleE9mKCJtYWMiKSE9LTEpe3JldHVybiB0cnVlfX1yZXR1cm4gZmFsc2V9
LGNoZWNrS2V5OmZ1bmN0aW9uKGQsYixjKXtyZXR1cm4oalF1ZXJ5LmluQXJyYXko
YixkKSE9LTF8fGpRdWVyeS5pbkFycmF5KFN0cmluZyhjKSxkKSE9LTEpfSxmaWx0
ZXJYU1M6ZnVuY3Rpb24oZCxiKXt2YXIgYz0iIjthLmFqYXgoe3VybDpEcnVwYWwu
c2V0dGluZ3MuYmFzZVBhdGgrInN5c3RlbS9saWdodGJveDIvZmlsdGVyLXhzcyIs
ZGF0YTp7c3RyaW5nOmQsYWxsb3dlZF90YWdzOmJ9LHR5cGU6IlBPU1QiLGFzeW5j
OmZhbHNlLGRhdGFUeXBlOiJqc29uIixzdWNjZXNzOmZ1bmN0aW9uKGUpe2M9ZX19
KTtyZXR1cm4gY319O0RydXBhbC5iZWhhdmlvcnMuaW5pdExpZ2h0Ym94PXthdHRh
Y2g6ZnVuY3Rpb24oYil7YSgiYm9keTpub3QoLmxpZ2h0Ym94LXByb2Nlc3NlZCki
LGIpLmFkZENsYXNzKCJsaWdodGJveC1wcm9jZXNzZWQiKS5lYWNoKGZ1bmN0aW9u
KCl7TGlnaHRib3guaW5pdGlhbGl6ZSgpO3JldHVybiBmYWxzZX0pO0xpZ2h0Ym94
LmluaXRMaXN0KGIpO2EoIiNsaWdodGJveEF1dG9Nb2RhbCIsYikudHJpZ2dlckhh
bmRsZXIoImNsaWNrIil9fX0pKGpRdWVyeSk7
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=js_rv_BKYv7yieH0IgHddhWHDC-bWGan8yiJbusyOpr0mw.js
Content-Type: application/javascript; name=js_rv_BKYv7yieH0IgHddhWHDC-bWGan8yiJbusyOpr0mw.js
Content-Location: http://www.websecurity.es/files/js/js_rv_BKYv7yieH0IgHddhWHDC-bWGan8yiJbusyOpr0mw.js
Content-Transfer-Encoding: Base64
KGZ1bmN0aW9uICgkKSB7CgokKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpIHsK
CiAgLy8gRXhwcmVzc2lvbiB0byBjaGVjayBmb3IgYWJzb2x1dGUgaW50ZXJuYWwg
bGlua3MuCiAgdmFyIGlzSW50ZXJuYWwgPSBuZXcgUmVnRXhwKCJeKGh0dHBzPyk6
XC9cLyIgKyB3aW5kb3cubG9jYXRpb24uaG9zdCwgImkiKTsKCiAgLy8gQXR0YWNo
IG9uY2xpY2sgZXZlbnQgdG8gZG9jdW1lbnQgb25seSBhbmQgY2F0Y2ggY2xpY2tz
IG9uIGFsbCBlbGVtZW50cy4KICAkKGRvY3VtZW50LmJvZHkpLmNsaWNrKGZ1bmN0
aW9uKGV2ZW50KSB7CiAgICAvLyBDYXRjaCB0aGUgY2xvc2VzdCBzdXJyb3VuZGlu
ZyBsaW5rIG9mIGEgY2xpY2tlZCBlbGVtZW50LgogICAgJChldmVudC50YXJnZXQp
LmNsb3Nlc3QoImEsYXJlYSIpLmVhY2goZnVuY3Rpb24oKSB7CgogICAgICB2YXIg
Z2EgPSBEcnVwYWwuc2V0dGluZ3MuZ29vZ2xlYW5hbHl0aWNzOwogICAgICAvLyBF
eHByZXNzaW9uIHRvIGNoZWNrIGZvciBzcGVjaWFsIGxpbmtzIGxpa2UgZ290d28u
bW9kdWxlIC9nby8qIGxpbmtzLgogICAgICB2YXIgaXNJbnRlcm5hbFNwZWNpYWwg
PSBuZXcgUmVnRXhwKCIoXC9nb1wvLiopJCIsICJpIik7CiAgICAgIC8vIEV4cHJl
c3Npb24gdG8gY2hlY2sgZm9yIGRvd25sb2FkIGxpbmtzLgogICAgICB2YXIgaXNE
b3dubG9hZCA9IG5ldyBSZWdFeHAoIlxcLigiICsgZ2EudHJhY2tEb3dubG9hZEV4
dGVuc2lvbnMgKyAiKSQiLCAiaSIpOwoKICAgICAgLy8gSXMgdGhlIGNsaWNrZWQg
VVJMIGludGVybmFsPwogICAgICBpZiAoaXNJbnRlcm5hbC50ZXN0KHRoaXMuaHJl
ZikpIHsKICAgICAgICAvLyBTa2lwICdjbGljaycgdHJhY2tpbmcsIGlmIGN1c3Rv
bSB0cmFja2luZyBldmVudHMgYXJlIGJvdW5kLgogICAgICAgIGlmICgkKHRoaXMp
LmlzKCcuY29sb3Jib3gnKSkgewogICAgICAgICAgLy8gRG8gbm90aGluZyBoZXJl
LiBUaGUgY3VzdG9tIGV2ZW50IHdpbGwgaGFuZGxlIGFsbCB0cmFja2luZy4KICAg
ICAgICB9CiAgICAgICAgLy8gSXMgZG93bmxvYWQgdHJhY2tpbmcgYWN0aXZhdGVk
IGFuZCB0aGUgZmlsZSBleHRlbnNpb24gY29uZmlndXJlZCBmb3IgZG93bmxvYWQg
dHJhY2tpbmc/CiAgICAgICAgZWxzZSBpZiAoZ2EudHJhY2tEb3dubG9hZCAmJiBp
c0Rvd25sb2FkLnRlc3QodGhpcy5ocmVmKSkgewogICAgICAgICAgLy8gRG93bmxv
YWQgbGluayBjbGlja2VkLgogICAgICAgICAgdmFyIGV4dGVuc2lvbiA9IGlzRG93
bmxvYWQuZXhlYyh0aGlzLmhyZWYpOwogICAgICAgICAgX2dhcS5wdXNoKFsiX3Ry
YWNrRXZlbnQiLCAiRG93bmxvYWRzIiwgZXh0ZW5zaW9uWzFdLnRvVXBwZXJDYXNl
KCksIHRoaXMuaHJlZi5yZXBsYWNlKGlzSW50ZXJuYWwsICcnKV0pOwogICAgICAg
IH0KICAgICAgICBlbHNlIGlmIChpc0ludGVybmFsU3BlY2lhbC50ZXN0KHRoaXMu
aHJlZikpIHsKICAgICAgICAgIC8vIEtlZXAgdGhlIGludGVybmFsIFVSTCBmb3Ig
R29vZ2xlIEFuYWx5dGljcyB3ZWJzaXRlIG92ZXJsYXkgaW50YWN0LgogICAgICAg
ICAgX2dhcS5wdXNoKFsiX3RyYWNrUGFnZXZpZXciLCB0aGlzLmhyZWYucmVwbGFj
ZShpc0ludGVybmFsLCAnJyldKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWxz
ZSB7CiAgICAgICAgaWYgKGdhLnRyYWNrTWFpbHRvICYmICQodGhpcykuaXMoImFb
aHJlZl49J21haWx0bzonXSxhcmVhW2hyZWZePSdtYWlsdG86J10iKSkgewogICAg
ICAgICAgLy8gTWFpbHRvIGxpbmsgY2xpY2tlZC4KICAgICAgICAgIF9nYXEucHVz
aChbIl90cmFja0V2ZW50IiwgIk1haWxzIiwgIkNsaWNrIiwgdGhpcy5ocmVmLnN1
YnN0cmluZyg3KV0pOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmIChnYS50cmFj
a091dGJvdW5kICYmIHRoaXMuaHJlZi5tYXRjaCgvXlx3KzpcL1wvL2kpKSB7CiAg
ICAgICAgICBpZiAoZ2EudHJhY2tEb21haW5Nb2RlID09IDIgJiYgaXNDcm9zc0Rv
bWFpbih0aGlzLmhvc3RuYW1lLCBnYS50cmFja0Nyb3NzRG9tYWlucykpIHsKICAg
ICAgICAgICAgLy8gVG9wLWxldmVsIGNyb3NzIGRvbWFpbiBjbGlja2VkLiBkb2N1
bWVudC5sb2NhdGlvbiBpcyBoYW5kbGVkIGJ5IF9saW5rIGludGVybmFsbHkuCiAg
ICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgIF9n
YXEucHVzaChbIl9saW5rIiwgdGhpcy5ocmVmXSk7CiAgICAgICAgICB9CiAgICAg
ICAgICBlbHNlIHsKICAgICAgICAgICAgLy8gRXh0ZXJuYWwgbGluayBjbGlja2Vk
LgogICAgICAgICAgICBfZ2FxLnB1c2goWyJfdHJhY2tFdmVudCIsICJPdXRib3Vu
ZCBsaW5rcyIsICJDbGljayIsIHRoaXMuaHJlZl0pOwogICAgICAgICAgfQogICAg
ICAgIH0KICAgICAgfQogICAgfSk7CiAgfSk7CgogIC8vIENvbG9yYm94OiBUaGlz
IGV2ZW50IHRyaWdnZXJzIHdoZW4gdGhlIHRyYW5zaXRpb24gaGFzIGNvbXBsZXRl
ZCBhbmQgdGhlCiAgLy8gbmV3bHkgbG9hZGVkIGNvbnRlbnQgaGFzIGJlZW4gcmV2
ZWFsZWQuCiAgJChkb2N1bWVudCkuYmluZCgiY2JveF9jb21wbGV0ZSIsIGZ1bmN0
aW9uKCkgewogICAgdmFyIGhyZWYgPSAkLmNvbG9yYm94LmVsZW1lbnQoKS5hdHRy
KCJocmVmIik7CiAgICBpZiAoaHJlZikgewogICAgICBfZ2FxLnB1c2goWyJfdHJh
Y2tQYWdldmlldyIsIGhyZWYucmVwbGFjZShpc0ludGVybmFsLCAnJyldKTsKICAg
IH0KICB9KTsKCn0pOwoKLyoqCiAqIENoZWNrIHdoZXRoZXIgdGhlIGhvc3RuYW1l
IGlzIHBhcnQgb2YgdGhlIGNyb3NzIGRvbWFpbnMgb3Igbm90LgogKgogKiBAcGFy
YW0gc3RyaW5nIGhvc3RuYW1lCiAqICAgVGhlIGhvc3RuYW1lIG9mIHRoZSBjbGlj
a2VkIFVSTC4KICogQHBhcmFtIGFycmF5IGNyb3NzRG9tYWlucwogKiAgIEFsbCBj
cm9zcyBkb21haW4gaG9zdG5hbWVzIGFzIEpTIGFycmF5LgogKgogKiBAcmV0dXJu
IGJvb2xlYW4KICovCmZ1bmN0aW9uIGlzQ3Jvc3NEb21haW4oaG9zdG5hbWUsIGNy
b3NzRG9tYWlucykgewogIC8qKgogICAqIGpRdWVyeSA8IDEuNi4zIGJ1ZzogJC5p
bkFycmF5IGNydXNoZXMgSUU2IGFuZCBDaHJvbWUgaWYgc2Vjb25kIGFyZ3VtZW50
IGlzCiAgICogYG51bGxgIG9yIGB1bmRlZmluZWRgLCBodHRwOi8vYnVncy5qcXVl
cnkuY29tL3RpY2tldC8xMDA3NiwKICAgKiBodHRwczovL2dpdGh1Yi5jb20vanF1
ZXJ5L2pxdWVyeS9jb21taXQvYTgzOWFmMDM0ZGIyYmQ5MzRlNGQ0ZmE2NzU4YTNm
ZWQ4ZGU3NDE3NAogICAqCiAgICogQHRvZG86IFJlbW92ZS9SZWZhY3RvciBpbiBE
OAogICAqLwogIGlmICghY3Jvc3NEb21haW5zKSB7CiAgICByZXR1cm4gZmFsc2U7
CiAgfQogIGVsc2UgewogICAgcmV0dXJuICQuaW5BcnJheShob3N0bmFtZSwgY3Jv
c3NEb21haW5zKSA+IC0xID8gdHJ1ZSA6IGZhbHNlOwogIH0KfQoKfSkoalF1ZXJ5
KTsKOwo=
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=f.js
Content-Type: text/javascript; charset=UTF-8; name=f.js
Content-Location: http://www.google.com/coop/cse/brand?form=searchbox_016463450983606207542%3A4qxariyfcdq&lang=es
Content-Transfer-Encoding: 8bit
(function() {
var f = document.getElementById('searchbox_016463450983606207542:4qxariyfcdq');
if (!f) {
f = document.getElementById('searchbox_demo');
}
if (f && f['q']) {
var q = f['q'];
var n = navigator;
var l = location;
var du = function(n, v) {
var u = document.createElement('input');
u.name = n;
u.value = v;
u.type = 'hidden';
f.appendChild(u);
return u;
};
var su = function (n, t, v, l) {
if (!encodeURIComponent || !decodeURIComponent) {
return;
}
var regexp = new RegExp('(?:[?&]' + n + '=)([^]*)');
var existing = regexp.exec(t);
if (existing) {
v = decodeURIComponent(existing[1]);
}
var delimIndex = v.indexOf('://');
if (delimIndex >= 0) {
v = v.substring(delimIndex + '://'.length, v.length);
}
var v_sub = v.substring(0, l);
while (encodeURIComponent(v_sub).length > l) {
v_sub = v_sub.substring(0, v_sub.length - 1);
}
du(n, v_sub);
};
var pl = function(he) {
var ti = 0, tsi = 0, tk = 0, pt;
return function() {
var ct = (new Date).getTime();
if (pt) {
var i = ct - pt;
ti += i;
tsi += i*i;
}
tk++;
pt = ct;
he.value = [ti, tsi, tk].join('j');
};
};
var append = false;
if (n.appName == 'Microsoft Internet Explorer') {
var s = f.parentNode.childNodes;
for (var i = 0; i < s.length; i++) {
if (s[i].nodeName == 'SCRIPT' &&
s[i].attributes['src'] &&
s[i].attributes['src'].nodeValue == unescape('http:\x2F\x2Fwww.google.com\x2Fcoop\x2Fcse\x2Fbrand?form=searchbox_016463450983606207542%3A4qxariyfcdq\x26lang=es')) {
append = true;
break;
}
}
} else {
append = true;
}
if (append) {
var loc = document.location.toString(); var ref = document.referrer;
su('siteurl', loc, loc, 250);
su('ref', loc, ref, 750);
if (q.addEventListener) {
q.addEventListener('keyup', pl(du('ss', '')), false);
} else if (q.attachEvent) {
q.attachEvent('onkeyup', pl(du('ss', '')));
}
}
if (n.platform == 'Win32') {
q.style.cssText = 'border: 1px solid #7e9db9; padding: 2px;';
}
if (window.history.navigationMode) {
window.history.navigationMode = 'compatible';
}
var b = function() {
if (q.value == '') {
q.style.background = '#FFFFFF url(http:\x2F\x2Fwww.google.com\x2Fcse\x2Fintl\x2Fes\x2Fimages\x2Fgoogle_custom_search_watermark.gif) left no-repeat';
}
};
var f = function() {
q.style.background = '#ffffff';
};
q.onfocus = f;
q.onblur = b;
if (!/[&?]q=[^&]/.test(l.search)) {
b();
}
}
})();
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=f.js
Content-Type: text/javascript; charset=UTF-8; name=f.js
Content-Location: http://pagead2.googlesyndication.com/pagead/show_ads.js
Content-Transfer-Encoding: Quoted-Printable
(function(){var k=3Dthis,aa=3Dfunction(a){var b=3Dtypeof a;if("object"=3D=
=3Db)if(a){if(a instanceof Array)return"array";if(a instanceof Object)re=
turn b;var c=3DObject.prototype.toString.call(a);if("[object Window]"=3D=
=3Dc)return"object";if("[object Array]"=3D=3Dc||"number"=3D=3Dtypeof a.l=
ength&&"undefined"!=3Dtypeof a.splice&&"undefined"!=3Dtypeof a.propertyI=
sEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object=
Function]"=3D=3Dc||"undefined"!=3Dtypeof a.call&&"undefined"!=3Dtypeof =
a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"=
}else return"null";
else if("function"=3D=3Db&&"undefined"=3D=3Dtypeof a.call)return"object"=
;return b},ba=3Dfunction(a,b,c){return a.call.apply(a.bind,arguments)},c=
a=3Dfunction(a,b,c){if(!a)throw Error();if(2
a?0:a},w=3Dfunc=
tion(a,b){return/^true$/.test(a)?!0:/^false$/.test(a)?!1:b},da=3D/^([\w-=
]+\.)*([\w-]{2,})(\:[0-9]+)?$/,y=3Dfunction(a,b){if(!a)return b;var c=3D=
a.match(da);return c?c[0]:b};var ea=3Du("0.15"),fa=3Du("0.01"),ga=3Du("0=
.001"),ha=3Du("0.001"),ia=3Du("0.2"),ja=3Dw("true",!0);var ka=3Dw("false=
",!1),la=3Dw("false",!1);var z=3Dfunction(a){z[" "](a);return a};z[" "]=3D=
function(){};var A=3Dfunction(a){try{var b;if(b=3D!!a&&null!=3Da.locatio=
n.href)o:{try{z(a.foo);b=3D!0;break o}catch(c){}b=3D!1}return b}catch(e)=
{return!1}};var ma=3Dfunction(a){var b=3Da.toString();a.name&&-1=3D=3Db.=
indexOf(a.name)&&(b+=3D": "+a.name);a.message&&-1=3D=3Db.indexOf(a.messa=
ge)&&(b+=3D": "+a.message);if(a.stack){a=3Da.stack;var c=3Db;try{-1=3D=3D=
a.indexOf(c)&&(a=3Dc+"\n"+a);for(var e;a!=3De;)e=3Da,a=3Da.replace(/((ht=
tps?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/,"$1");b=3Da.replace(/\n */g,"\n")}=
catch(d){b=3Dc}}return b};var C=3Ddocument,E=3Dwindow,F,na=3Dnull,G=3DC.=
getElementsByTagName("script");G&&G.length&&(na=3DG[G.length-1]);F=3Dna;=
var oa=3D/&/g,pa=3D//g,ra=3D/"/g,sa=3D/'/g,ta=3D/\x00/g,H=3D{=
"\x00":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0=
B":"\\x0B",'"':'\\"',"\\":"\\\\"},I=3D{"'":"\\'"};var J=3Dfunction(a,b){=
for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&b.call(null,a[=
c],c,a)},K=3Dfunction(a){return!!a&&"function"=3D=3Dtypeof a&&!!a.call},=
ua=3Dfunction(a,b){if(!(2>arguments.length))for(var c=3D1,e=3Darguments.=
length;c
Math.random())){var c=3DMath.random();if(c>2)+a.charCodeAt(e)&4294967295;return 0b?d+=3D"000":256>=
b?d+=3D"00":4096>b&&(d+=3D"0");return R[a]=3Dd+b.toString(16)}));b.push(=
'"')};var S=3D"google_ad_block google_ad_channel google_ad_client google=
_ad_format google_ad_height google_ad_host google_ad_host_channel google=
_ad_host_tier_id google_ad_output google_ad_override google_ad_region go=
ogle_ad_section google_ad_slot google_ad_type google_ad_unit_key google_=
ad_unit_key_2 google_ad_width google_adtest google_allow_expandable_ads =
google_alternate_ad_url google_alternate_color google_analytics_domain_n=
ame google_analytics_uacct google_analytics_url_parameters google_availa=
ble_width google_bid google_captcha_token google_city google_color_bg go=
ogle_color_border google_color_line google_color_link google_color_text =
google_color_url google_container_id google_content_recommendation_ui_ty=
pe google_contents google_country google_cpm google_ctr_threshold google=
_cust_age google_cust_ch google_cust_criteria google_cust_gender google_=
cust_id google_cust_interests google_cust_job google_cust_l google_cust_=
lh google_cust_u_url google_disable_video_autoplay google_ed google_eids=
google_enable_content_recommendations google_enable_ose google_enable_o=
se_periscope google_encoding google_floating_ad_position google_font_fac=
e google_font_size google_frame_id google_gl google_hints google_image_s=
ize google_kw google_kw_type google_lact google_language google_loeid go=
ogle_max_num_ads google_max_radlink_len google_mtl google_num_radlinks g=
oogle_num_radlinks_per_unit google_only_ads_with_video google_only_pyv_a=
ds google_only_userchoice_ads google_original_width google_override_form=
at google_page_url google_pgb_reactive google_previous_watch google_prev=
ious_searches google_referrer_url google_region google_responsive_format=
s google_reuse_colors google_rl_dest_url google_rl_filtering google_rl_m=
ode google_rt google_safe google_sc_id google_scs google_source_type goo=
gle_sui google_skip google_tag_for_child_directed_treatment google_tag_i=
nfo google_tag_origin google_targeting google_tdsma google_tfs google_tl=
google_ui_features google_ui_version google_video_doc_id google_video_p=
roduct_type google_video_url_to_fetch google_with_pyv_ads google_yt_pt g=
oogle_yt_up".split(" "),
Na=3D{google_analytics_domain_name:!0,google_analytics_uacct:!0},Oa=3Dfu=
nction(a){a.google_page_url&&(a.google_page_url=3DString(a.google_page_u=
rl));var b=3D[];J(a,function(a,e){if(null!=3Da){var d;try{var f=3D[];Q(n=
ew Ka,a,f);d=3Df.join("")}catch(h){}d&&ua(b,e,"=3D",d,";")}});return b.j=
oin("")};var T=3Dnull;var U=3Dfunction(a){this.j=3Da;a.google_iframe_onc=
opy||(a.google_iframe_oncopy=3D{handlers:{},upd:m(this.u,this)});this.r=3D=
a.google_iframe_oncopy},Pa;var V=3D"var i=3Dthis.id,s=3Dwindow.google_if=
rame_oncopy,H=3Ds&&s.handlers,h=3DH&&H[i],w=3Dthis.contentWindow,d;try{d=
=3Dw.document}catch(e){}if(h&&d&&(!d.body||!d.body.firstChild)){if(h.cal=
l){setTimeout(h,0)}else if(h.match){try{h=3Ds.upd(h,i)}catch(e){}w.locat=
ion.replace(h)}}";
/[\x00&<>"']/.test(V)&&(-1!=3DV.indexOf("&")&&(V=3DV.replace(oa,"&")=
),-1!=3DV.indexOf("<")&&(V=3DV.replace(pa,"<")),-1!=3DV.indexOf(">")&=
&(V=3DV.replace(qa,">")),-1!=3DV.indexOf('"')&&(V=3DV.replace(ra,"&qu=
ot;")),-1!=3DV.indexOf("'")&&(V=3DV.replace(sa,"'")),-1!=3DV.indexOf=
("\x00")&&(V=3DV.replace(ta,"")));Pa=3DV;U.prototype.set=3Dfunction(=
a,b){this.r.handlers[a]=3Db;this.j.addEventListener&&this.j.addEventList=
ener("load",m(this.s,this,a),!1)};
U.prototype.s=3Dfunction(a){a=3Dthis.j.document.getElementById(a);try{va=
r b=3Da.contentWindow.document;if(a.onload&&b&&(!b.body||!b.body.firstCh=
ild))a.onload()}catch(c){}};U.prototype.u=3Dfunction(a,b){var c=3DQa("rx=
",a),e;o:{if(a&&(e=3Da.match("dt=3D([^&]+)"))&&2=3D=3De.length){e=3De[1]=
;break o}e=3D""}e=3D(new Date).getTime()-e;c=3Dc.replace(/&dtd=3D(\d+|M)=
/,"&dtd=3D"+(1E4>e?e+"":"M"));this.set(b,c);return c};var Qa=3Dfunction(=
a,b){var c=3Dnew RegExp("\\b"+a+"=3D(\\d+)"),e=3Dc.exec(b);e&&(b=3Db.rep=
lace(c,a+"=3D"+(+e[1]+1||1)));return b};var W;o:{var Ra=3Dk.navigator;if=
(Ra){var Sa=3DRa.userAgent;if(Sa){W=3DSa;break o}}W=3D""};var Ta=3D-1!=3D=
W.indexOf("Opera")||-1!=3DW.indexOf("OPR"),Ua=3D-1!=3DW.indexOf("Trident=
")||-1!=3DW.indexOf("MSIE"),Va=3D-1!=3DW.indexOf("Gecko")&&-1=3D=3DW.toL=
owerCase().indexOf("webkit")&&!(-1!=3DW.indexOf("Trident")||-1!=3DW.inde=
xOf("MSIE")),Wa=3D-1!=3DW.toLowerCase().indexOf("webkit");
(function(){var a=3D"",b;if(Ta&&k.opera)return a=3Dk.opera.version,"func=
tion"=3D=3Daa(a)?a():a;Va?b=3D/rv\:([^\);]+)(\)|;)/:Ua?b=3D/\b(?:MSIE|rv=
)[: ]([^\);]+)(\)|;)/:Wa&&(b=3D/WebKit\/(\S+)/);b&&(a=3D(a=3Db.exec(W))?=
a[1]:"");return Ua&&(b=3D(b=3Dk.document)?b.documentMode:void 0,b>parseF=
loat(a))?String(b):a})();var Xa=3D{"120x90":!0,"160x90":!0,"180x90":!0,"=
200x90":!0,"468x15":!0,"728x15":!0};var X,Y=3Dfunction(a){this.k=3D[];th=
is.j=3Da||window;this.i=3D0;this.l=3Dnull;this.m=3D0},Ya=3Dfunction(a,b)=
{this.t=3Da;this.q=3Db};Y.prototype.w=3Dfunction(a,b){0!=3Dthis.i||0!=3D=
this.k.length||b&&b!=3Dwindow?this.p(a,b):(this.i=3D2,this.o(new Ya(a,wi=
ndow)))};Y.prototype.p=3Dfunction(a,b){this.k.push(new Ya(a,b||this.j));=
Z(this)};Y.prototype.A=3Dfunction(a){this.i=3D1;if(a){var b=3DN("sjr::ti=
meout",m(this.n,this,!0));this.l=3Dthis.j.setTimeout(b,a)}};
Y.prototype.n=3Dfunction(a){a&&++this.m;1=3D=3Dthis.i&&(null!=3Dthis.l&&=
(this.j.clearTimeout(this.l),this.l=3Dnull),this.i=3D0);Z(this)};Y.proto=
type.B=3Dfunction(){return!(!window||!Array)};Y.prototype.C=3Dfunction()=
{return this.m};Y.prototype.nq=3DY.prototype.w;Y.prototype.nqa=3DY.proto=
type.p;Y.prototype.al=3DY.prototype.A;Y.prototype.rl=3DY.prototype.n;Y.p=
rototype.sz=3DY.prototype.B;Y.prototype.tc=3DY.prototype.C;var Z=3Dfunct=
ion(a){var b=3DN("sjr::tryrun",m(a.v,a));a.j.setTimeout(b,0)};
Y.prototype.v=3Dfunction(){if(0=3D=3Dthis.i&&this.k.length){var a=3Dthis=
.k.shift();this.i=3D2;var b=3DN("sjr::run",m(this.o,this,a));a.q.setTime=
out(b,0);Z(this)}};Y.prototype.o=3Dfunction(a){this.i=3D0;a.t()};
var Za=3Dfunction(a){try{return a.sz()}catch(b){return!1}},$a=3Dfunction=
(a){return!!a&&("object"=3D=3Dtypeof a||"function"=3D=3Dtypeof a)&&Za(a)=
&&K(a.nq)&&K(a.nqa)&&K(a.al)&&K(a.rl)},$=3Dfunction(){if(X&&Za(X))return=
X;var a=3DJa(),b=3Da.google_jobrunner;return $a(b)?X=3Db:a.google_jobru=
nner=3DX=3Dnew Y(a)},ab=3Dfunction(a,b){$().nq(a,b)},bb=3Dfunction(a,b){=
$().nqa(a,b)};var cb=3DGa?1=3D=3Dxa():!xa(),db=3Dfunction(){var a=3Dz("s=
cript"),b;b=3Dy("","pagead2.googlesyndication.com");return["<",a,' src=3D=
"',P(b,"/pagead/js/r20141021/r20140417/show_ads_impl.js",""),'">',a,">=
"].join("")},eb=3Dfunction(a,b,c,e){return function(){var d=3D!1;e&&$().=
al(3E4);var f=3Da.document.getElementById(b);f&&!A(f.contentWindow)&&3=3D=
=3Da.google_top_js_status&&
(a.google_top_js_status=3D6);try{if(A(a.document.getElementById(b).conte=
ntWindow)){var h=3Da.document.getElementById(b).contentWindow,g=3Dh.docu=
ment;g.body&&g.body.firstChild||(g.open(),h.google_async_iframe_close=3D=
!0,g.write(c))}else{var l=3Da.document.getElementById(b).contentWindow,p=
;f=3Dc;f=3DString(f);if(f.quote)p=3Df.quote();else{h=3D['"'];for(g=3D0;g=
q)D=3Dn;else{var v=3Dn;if(v in I)D=3DI[v];else=
if(v in H)D=3DI[v]=3DH[v];else{var t=3D
v,x=3Dv.charCodeAt(0);if(31x)t=3Dv;else{if(256>x){if(t=3D"\\x",1=
6>x||256x&&(t+=3D"0");t+=3Dx.toString(16=
).toUpperCase()}D=3DI[v]=3Dt}}B=3DD}h[s]=3DB}h.push('"');p=3Dh.join("")}=
l.location.replace("javascript:"+p)}d=3D!0}catch(lb){l=3DJa().google_job=
runner,$a(l)&&l.rl()}d&&(d=3DQa("google_async_rrc",c),(new U(a)).set(b,e=
b(a,b,d,!1)))}},fb=3Dfunction(a){var b=3D["");return b.joi=
n("")},gb=3Dfunction(a,b,c,e){e=3De?'"':
"";var d=3De+"0"+e;a.width=3De+b+e;a.height=3De+c+e;a.frameborder=3Dd;a.=
marginwidth=3Dd;a.marginheight=3Dd;a.vspace=3Dd;a.hspace=3Dd;a.allowtran=
sparency=3De+"true"+e;a.scrolling=3De+"no"+e;a.allowfullscreen=3De+"true=
"+e},hb=3Dfunction(){var a;if(a=3Dcb){if(!T)o:{var b=3D[E.top];a=3D[];fo=
r(var c=3D0,e;e=3Db[c++];){a.push(e);try{if(e.frames)for(var d=3De.frame=
s.length,f=3D0;fb.length;++f)b.push(e.frames[f])}catch(h){}}for=
(d=3D0;de;f=3Df.parentNode,++e)c.push(9!=3Df.n=
odeType&&f.id||"");(c=3Dc.join())&&d.push(c);b.google_ad_unit_key=3Dya(d=
.join(":")).toString();d=3Da.google_adk2_experiment=3Da.google_adk2_expe=
riment||L(["C","E"],ha)||"N";if("E"=3D=3Dd){d=3DF;c=3D[];for(e=3D0;d&&25=
>e;++e){var f=3D(f=3D9!=3Dd.nodeType&&d.id)?
"/"+f:"",h;o:{var g=3Dd.parentElement;h=3Dd.nodeName.toLowerCase();if(g)=
for(var g=3Dg.childNodes,l=3D0,p=3D0;pe;++e){for(var s=3Dq.frames,f=3D0;f");h=3Dc.id;l=3D"border:none;height:"+p+"px=
;margin:0;padding:0;position:relative;visibility:visible;width:"+l+"px;b=
ackground-color:transparent";f.write(['',g.join(" "),
" "].join(""));h=3Dc.id;c=3Db.google_override_format||!Xa[b.g=
oogle_ad_width+"x"+b.google_ad_height]&&"aa"=3D=3Db.google_loader_used?L=
(["c","e"],ia):null;ib(a,b,"e"=3D=3Dc);b=3DOa(b);f=3Dhb();g=3D(new Date)=
.getTime();l=3Da.google_top_experiment;if(p=3Da.google_async_for_oa_expe=
riment)a.google_async_for_oa_experiment=3Dvoid 0;var n=3Da.google_always=
_use_delayed_impressions_experiment,q=3Da.google_auto_width_experiment,s=
=3Da.google_floating_ads_js_experiment;d=3D["=
",f,"<",d,">",b,"google_show_ads_impl=3Dtrue;google_unique_id=3D",
a.google_unique_id,';google_async_iframe_id=3D"',h,'";google_start_time=3D=
',r,";",l?'google_top_experiment=3D"'+l+'";':"",p?'google_async_for_oa_e=
xperiment=3D"'+p+'";':"",n?'google_always_use_delayed_impressions_experi=
ment=3D"'+n+'";':"",c?'google_append_as_for_format_override=3D"'+c+'";':=
"",q?'google_auto_width_experiment=3D"'+q+'";':"",s?'google_floating_ads=
_js_experiment=3D"'+s+'";':"","google_bpp=3D",g>r?g-r:1,";google_async_r=
rc=3D0;",d,">",db(),""].join("");(a.document.getElementB=
yId(h)?ab:bb)(eb(a,
h,d,!0))}});})();
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=SeguridadIE-1.gif
Content-Type: image/gif; name=SeguridadIE-1.gif
Content-Location: http://www.websecurity.es/imagenesWeb/SeguridadIE/SeguridadIE-1.png
Content-Transfer-Encoding: Base64
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
DwgAOw==
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=SeguridadIE-2.gif
Content-Type: image/gif; name=SeguridadIE-2.gif
Content-Location: http://www.websecurity.es/imagenesWeb/SeguridadIE/SeguridadIE-2.png
Content-Transfer-Encoding: Base64
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
lEvZlDA5lBo5hsS4fqcnAiHpC1q5lVzZlV75lf7wlWI5lmRZlmZ5lmWJDDZZi1mJ
lmYZlloJl245l3RZl12plkSJlbhgl2Mpl3LJl4AZmGj5l4JJlng5lZJYlR3pC7mA
DI75mJAZmZIpmf4wmSrpmDz5mJeJDJWJmZyJmSkJmqEpmpo5mpN5mqjpmMSwAZ9Q
i4yZmrBJmZr5mZ25mZx5mZVZm6OJm515m71pm7EZnKvZmqv4msEZnL3pmZlJmrrZ
nL9pmsDpm545nZu5nNYJndWJncl5nKc5nIjpjoppjKr/SQzkWZ7meZ7oeZ7+gJ7r
SZ7r2Z7E8J7l2Z7yGZ/26Z73aZ/wWZ/p2Z/+eZ5M8ATEKQLj+Z8Gap77GZ/0OZ/5
+Z7wyaALmp/4+aAHWqHkGaADWqAW+p8Uyp/8qZ8QGqITaqAeqp4NiqAmmqAoSqEb
6p8Y+p0PGJ6pJwIXygQ2eqM4mqM6mqP+oKM9aqM9+qNMEKQ8eaNCGqRGOqRJypNE
uqNO+qQ6+gFPgAe1WKNQeqU4WqRKCqRL2qVGqpJb+qNiCqYpiaVmmqNSSqWraKVn
CqVCyqVHuqVw6qVKyqRD+qZfWqZ1mqdIyqV+eqdlGqeA2qRtiqVpCqOm944GYAD9
/9CojvqokBqpkeoPk+qolEqpjXqpkoqp/aCpmdqplgqqk8qpklqqptoPxzCltbio
p9qqlfqonBqrogqqsvqpmHqrsxqrpOqqrpqqaioCrMqrvLqrnkqrsJqryLqrmUqq
teqpstqsoWqroVqrnaqswhqpvoqopfeOjXoM3vqt4Bqu4jqu/hCu5eqt5Xqux5Cu
33qu7Lqu8Iqu8Qqv6qqu8zqu+JqvxxACEbADtdit+hqw5jqw8iqv9TqvB+uuBtuu
4GqvAiuw/OqvqwiwD/uwB4uw9/qu9MqwF1uwHtuxCcuxDSuyC+ux91qx+Bqx2hp8
Mop6IvABHxACMjuzNFuzNv97syHAkzKrkjs7s/6wsynZsz37szkbtDnrs0BLtDyL
s0zbtCGwAf1aizDrtFRLs0SLtD5rtEUbtFe7tT+rtEKrs0tbtWQLtRL7sjFLtmQ7
tjqbtEe7tUL7tks7tlmrtV0rtkjbtno7tzxLt2qLs2a7su/orX9buIZ7uIiLuIG7
ioSbuI6LtY8buYAbtYy7r5LLtF17uZq7uZz7tJQrjFTJkcYosxtQuqZ7uqibuqq7
uqzbuq77urAbu6krCGdLurJ7u6+rkri7u7yLurRbi7bbu7DrD8JbvMZ7vMhrkxIL
uokpujOavNAbvahrA+HwAtZ7vdibvdq7vdzbvd77veD/G77dGw42IL2p+wS/u4rm
u77s277Qi77Lu5HFOKMRUL/2e7/4m7/6u7/827/++7/6+wTVewcEXMAGfMAInMAK
vMAM3MAO/MAL/ALhAMAUvL+CYAEWUIsVvMEc3MEe/MEgHML4e8EZ3I4x6ryoJ4M5
uMI5SIIvAMEwHMMyPMM0XMAvQAQsnMM6fIE7qMI7/MMtXIImnKgte3pZ+IVIzIVM
+AD70MRO/MRQHMVSPMVUXMVWfMVYbMUPoIVJ3MVdHIZH7MVi7IVhyLzgicKnd4iO
uMZsjIdMnMVwHMdyPMd03MQPwMZ4nMdvCIlqrMd+3MZ5OMTbWsSmZ4u9eMiITAEJ
//DGddzIc+wPVgzJjgzFD9CKiHzJmHyKqbiKlniLmfzJh/yLgkvIpXeM6njKp4yN
jDzJTcyTkyzJTgzLUyzLrPwAqHzLuMyM7GjKudzLqZyNgsyyaFzID3mRxjyPFgmR
DLnKr8zKVEzLUQzNjvwAx1zNFbmPybyQAkmQ1tzN9JjNE5mRwfyORgmVPAmVJfmU
PzmUzOzI0KySsQzPsAzJ9LwPkuzK9pyS8azPzmzHIOmUSUmS6hyTTznQI2nQMymV
RfnP5hzQMInQ6SzQ6CySCm3GJzy/LtuWgUmYhcmVHD2XeNnO7szP82zPsWzSrZzP
KV3ST1zPKd3P+/AAe7nRW//50YJp0zUdmIe5ihoNmDgtlj9dlkEN0ms5zqRMicbJ
nbJJmbtpm9X5mdIJ1UoNmcMp0qxMz65c0lp90iyd1ScN0w/QmFMdmb9Jm2ZNndoJ
1df5nKY51sjgncUp1m49nWTd1HZNmr5Zm6LZnHOtmqw5ysNcyhraogxqoiN62PrJ
oh9K2MSAoVbdzLS81SvN1ZQ92S/dzw/w1oyNohO6oCoqoojdoSe62RcqoLU42Iyt
2KBdoqENoq1N2i9q1IFNiWxaqEkKqIPap3VapG/K27aNplP62O6M0iYt2cVd2cdt
2cTtzA/Q2L+dpWAqp2Iq3WSapdINpNX9p899qGvq3M//rd1/qtvi7dtzGqeCut2q
KtsYfZXBeq2vKq3HCt/Rmqzuja3BDdP4nM/zDM/67dIojc8Azt+Yzaj1DanEGq3O
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
Yg5mDg1mYzKmYvIlZE6mYd6lZUZmYWYmZ1amZ0rmZ27/ZmjG5TVsQAScJmqmpiCk
Jmu2pmqi5g7EpmzOJm3Wpm3uAGtuwDJ05l16oyVioVz+XgFWYmIKJ/ARJ3EOZ3D+
picWJ3MGw18a519WUTPc5DhQp9lhJ3HC5O9hZ3NiZxVVIkyK501aJ3iepxIRH3Yq
p3OyZ3Ie53K6p3ECZ3vCZ33S53vi53w2Z37y534i53/Gp332ZzCYJgHowBIkqIIu
KIM2qIM+KIRGKITqwBs8ARMQqIBi4f8RpxQGw0fOAIfK5YeGaGKOqACWaDOA6Il6
aIqSKHRS53X6w4uqaHn6Q1FWJ2KyKIjKI47OQHTeZIlGp3rKqI/KKI8S5Y/m6I0C
/+lN0qiS4uiKmugCoqiKTqmOuqiUdmiWimiLRmmXWumWUimWfqmWkimXVmmZounv
zYAgHCgJvCmcxqmczimd1qmd3ime6gABLIOaiumKbmhiBsMByGUlFqqgEmpxBsOh
BmqiLqqiNuqgMqqhRuqLKtGLQil50qSMXip1PuqLCup0wiSlRqei3uSn/qWmfiqO
Dip3ziSOFiqq4mh6KiqlFmqg1iqkIuqk6uqt8iqt+qqj2uqvSmqvEuuwemqxIuux
Cmuw5mozPIEOlIC0Tiu1Vqu1Xiu2Zqu2bqu06sBH7qqxLmqFPSpmEme5Sqa50iW5
nutmbqdR1uhhvuqlyuqmdv8nYobqZgKpvSYmvL4qk77rpvZrkh5mqSJmXabrwaKr
wrbrwrKrw6orwvJlxCIqw1YsXY5DBCyBtMrAMHSsx34syIasyI4syZbsyErrEkjh
w8bluCLsxC7nZjKmc8asZNIlvOqrwBoslMYrlOrrcvrsv+5szgotwPJr0fKsz77s
zGKmzCqt0zYt1Nas1NIs1TJtzT6BxpYApKUA13at134t2Iat2I4t2YItyqaA1cZs
yyZmNPClcwZD2wYncsZtosol3doq27rt3PIlTLZtkhrpvc5qeL4td1YqkMJqetLr
vvasUc7reP6r4Qaupd7t21Lu3sqt3ept5mJu3nIu3Gr/bufWbeji7ed6ruVuruiW
burS7QxkrLTyAuzGruzOLu3Wru3eLu7aLi2grAugLunebctWYtsq6uc+6vAq6vE2
w/EWr/AGKvMqr/Mm7/JKb/Qy6vRab/Uab/Y2L/FSb/di7/dqb/hyL/KCb/mK7/mS
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
ys1cy8ccy8tczbv8zNsczcWczecczOn8ze08zfFczg1Zct08z+sc0O880P9c0Aud
0OHVw5XBlzvbGBRdpTvb0fsX0hd90h89siNduxud0i990/UQ0xn90ytd0jnd0j29
0zW91FF91E091UOd1Fdd1TPd1Vkd1mc91kH91G1d13P91OOa+F5d1nm91YW91ok9
2Icd2SXdwzG7a5ndlzP92f8ZPdoZ/b0t29mrvdlFO9uhHdunfbWvHdy13dutXdy7
3dzDndvRXdrPvdzVndqvPfmGetvX3d2/vd3vPd3xnd71PbI9fMuNoQD4TBlY1MkB
XuAJXg8DfnQR3uAX3hET/uAfvuEHXuIVnuL/3eIZPuMrPuIxvuMLfuM93uFF/uJB
/uMhfuRNPuVRvuRZXuNPfuJffuVjnuNnPuRVvuVpnuT5bJHSDhpsHuZv3uVrPueF
XudxXuaLPuj5LNEdXaUVXRmcvn+hXurfleqXWNOjHuuv/qS5/ukbveqzPuy9furB
fuvNvuvR/uu1Pu3Zfu3HXu3L3u3lHu7n3urj/u7tXuz/z17vyT7v6x7wz/4aNKD4
6J7vA7/tEf/tD5/xE7/xJ3bZG92alaEX+KzgKX90K//fMZ/yLd/TJ1/zLx/0PV/y
M5/0OT/0P9/0N3/0WX/1Rf/1Vb/zXX/2Yb/2ZT/1S//2dT/3Uf/0W9/2ex/4cf/3
Y5/3i3/3fZ/2hd/4lT/4kZ/5k3/4j3/5od/6q3/5/d3JC6DyE14Ztpz7Qf77t7/7
AX78Ab78C+D8w9/7wT/91//93V/85b/9yX/+7b/+0f/+9T//AaJArwLGjBVQBoyg
QIIGESocWPBgQoMQG05cGNEhRYYSH3LUiNGix4wXK3bcSHKkSJQrQ550CdJkzI8l
/2mqfCmzZkqWOG3ynLkT474HyaLwO4qURhEEZY4gRfpgHy5cyowhLGgMWNaqVwtq
BcZVq9etVsVmJdv1LNiyWL+GbYvWrFu2Y9emnXs3Lly7cvXWffuXrlrAgwXj7ct3
L+HDig37LZw3ceDIix8znoy4smTImR1vvsy5cdqhRZ8eVcrUqemoUw/2et2LawHX
sGXTfm1bGezYVmfrrt37Nm9lvnfnNh78N+7kyIkLPw7cufLhxaNXXy69+XXqz5lb
7579+3To2LeT5z7ee3nw5tWj184+fvrw6+e3p/++NmmjplE3Nc0Pa7hY1UtBuxWk
m4GwIVigMQcSqOBrDEbYYP+CDi4I4YUSZvighR02+CGFE2pYIYgYeniiiRuiuKKK
JYrIYYowsvgiiSOGaGOMLc7o4o0y5kijjzsC2aOONeKI5I9J7gegf6o9JSBWCDpI
pZRVFdggVldWqSWVWU6JpZRWeSnmll+OGaaVZKqZZpdtgsklnGeaWeaaxviDZpx5
zmmnnHW+ueefetLJ5qBU4lkon4AS6qahi/YZaKKCKupopZTyyWR/S/23mlQDYpgm
qFWKqqKBo24YKqr+rLoqqndGaGqpa5IKq4P+NHgriKfqKmuqvCqIqK+x1irsrK72
uqupeObaC57FPmurhsNKa+yv1EKLbLbEJlvttLRey+3/s5k+5SSAUWK5IK/pxrqu
l+2iK6G6r93KroTB2ihvqPjW22y+o+7rbrz8/svsvwf6i/DACQccJr0HK6ywswDD
q+/DDBv87sQaW0wxxgJfvHDH+Y6b1KZPQuWptLqqbCrLya6cMcv0asjqna02u2rL
rNJbM84523rzoTnn2vPOWNZMM6u45tzsqxc6izRsNTPtc0FGF6i01UxbbeCtRkc4
tc1eY0011lzfOS/TX8P8cals6+uy2y3HTHfbsL79b9x3zy0wyaeZbK6nu8G7zOAa
Fn7wa4inq7jhsC0e79UONws51o1LjXYvy4xtuebzRu752Lb2+zmzzDY97+aYt7o4
/+ekzzu66rmi7Q/iXj+tOuO1l4671OjWbnrmuX9Oeb8Ouz6554krzzjz8V7efOWH
Ow79884TTv310y8v/eOO+81PuZ1OVc0yiDv4izTGlH9+L+mvb36877Mvv/r0Yzl/
/Efbbz7Tv+DJvp3lT3V3eh/w7JW+q9nKfsDbmTT8EUCfrYp+zvrfneK3rAGOLYEU
XOAFd+YPC5bvdu5b1u7wB0DZoS+Fm6vgsjBYQPXVznbNemA1GsgqG/YPf/xr3wDr
Bz8f9hCI90PfEHkYRCLqz4hJRGIR3XdEJj7xh1gCn/igtI9c5OJCxpDGbn7BRS/C
BowSEuNryFggM7ovjF9kY/+/0NjFVoUwWl7MFRnxVMcz3i6Pc2yaGG8FRq+p0Vk1
ZBYcTfc/e5EOjf54IOYU+cY9Su2OmWvWHRs5yWghMoxyTKTl7Dg7R95OkLshJCbH
6MYzpnKNZWxjK1H5SlXGkpVpdGUtYXlLWeaSll20ZS9x+UsrAq5TWnyegX7BuGMm
E33LdF8zkWnMAiYTeYqEJiHRhkzO0c53uLIm2qzmSdqtMHJd65cmnalIF5JTmtqk
ZrAKNrPX3W50xhzb8bBpzmqac2YhnB3P0IkuZUYToFxk5kChGVCDJpSgqEJoQRkK
Ioc29JkUjaYwUxO4YlbjF4X7hUdhs9GOfvQ1IXXfSHv/UVKPIjSlJ2UpCP+3qo9O
EKYxlRqrPKq0G3Y0hBIUKUwt2UKe3mqjgFQaSjl6NZ+VcKWJpClJkYrTeRE1pp7U
qVJ95tOehjCqR72pJ1e1OZy2KqU8bVZIb9rTpYKUoyZlalaf+tajxpWlbm3rWufK
VpXe1a5w5atc/UrXvXr0opzCYjH1qtJlIBOxHlWsXRO72I9C9rGNjaxlHctYjlq2
rZiVbGUpq1nQdvaym52sSrca2syOlrOl/axqW5taz8aWtKKF7WpNK9vbuja3tu1t
bX/7WuDyVri0Da5xPUvYkx0lKlr8BTZeIw1kFi66z+1FdD1HXehK17rO1S52u8vd
/+9W97rTBS95uTve7WY3vOVNr3i92174ole+6+VpfNk7X/yu97z7Va95/eve+/L3
v+/VL4EFDGD6Hji/Aw4wgxNsYAf3t8ANVrCEFzxhBPciuRnNxVQa68xfTAUXIF7s
iEvsvhPnNcUfXrGIW9xRFpPYxSqO8YtnbOMah1jHJobxjn3cYxz/WMhBRvGNjcxj
GSMZyEqmMZOP7GQiNznHT04ylKks5SsPeclZtrKXqwzmLoe5xBwmpodf3AtcpBmZ
JJ5Kmte8ZjermcRxnjOc22xnOuP5zXpG85zZ7Oc7B7rPchZ0oQmdZ0AfWtGJrjOf
Gf1oR/9Z0oZu9J4nfelKR/8604je9KAhjelPU7rToV70qEGt6VJbWtScRjWpU71h
ovCHXMM0bC7M52bI4lrNul5Griu7a9YGu9e/1uywge1rXiO72Io9trGTLWxoE1vZ
z2Y2R6W9bGo3G9vV1va1re3sbYOb2+L2dri/bW5yozva4253ut3N7nfLO970nna9
f1FmW/v6xcuAhjP3PZV+/xvPApcuwf1tcH4jXHMHH7jCHR7whQMcFwVn+MMTHnGI
U1ziDcf4xjVe8YmHvOMWz7jHR37xkn/85BxPuchbbnKVozzmLwc5zFcu85vPHOc1
Z7nNf+5zlucbZVo8McVF7FGjK3bGSkf6kY/O9A9DPen/Ul861dts9adnvelRx7rT
uX51EW+96l8ne9fFXnavn33qWk872tc+drWHne1gbzvc3U53s8897m/fO975nne5
293vdy884f0+9OVmMRdJvwYuoKHYX0Cj8Y+P/ORF7HjIe/TyuMi85SmvecmD/vOY
r/zmR3/60oee855PfedNL3rVk/71q0d97Gk/+9bfXvesh33vay971/Pe9r/Pve+J
j/zg7/74yi++8JmP++cDP/rLn/7wm5983Cc+QIu/cZNHLGMVgx/K4xd/rs3Pa/R/
//wtLn/72d/19af//fOPP/nhf3X56//+6uf//vsPgPT3fwLofwUYgPZ3gPlngASY
/4Det4AIuH3MxXgqpWIqFXZOZ4FQloEVaIEcSIEttoEg2IEi+IEzFoImOIIoWIIZ
eIEnyIIamIIv6IEtSIEySII0uIIsOIMwmIMuqIM3yIM4KIRBSIQ7aIRAeIQqOIQj
FoGL12Y3dg2+gHR41nm+UIVTCIVS+IQjFoVSYHVcKAVxloVYyIVaOIVTEYVkiIZm
GIZliIVeeIVbuIZqGIdnWIdUmIZyeIdjqId5+GJ+iIdmGIh0CIh8aIeF6IZ9KIiG
OIiKSIiLmIiHCIlz6IiVKImPiIl62IRFZ3Qe5WEj9oS/wHi9IAVSEHBhKAWeCIqh
eA2m2ImkuIpO94mdKIqxOP9js/hhy5CKn6iLoYiLvaiKoCiLthiMtIiLapaKtSiM
t0iMymiMwuiMUleM0hiNvtiMxziMyziN1qiN1ZiNz9iN2MiM4XiN5UiO5wiO6SiN
m5gLjncNUfiOlPeOvhCPv3ANv1CKidB5pliPrzeP9SgF7giP9+iFAkmP91h6/4iQ
/jiQ8tiQpReQB+mQAbmQBtmPFlmRnfeQDOkLAemQEpmQG4mRDvmRF6mRIMmRJqmQ
JZmRKxmSKDmSL6mSInmSMwmTNdmSNOmSKZmTN7mTMcmT7HgN0OALvgANH2aUQ1mU
R0liVqgMUvCURxmQXigFSVmVuFCKqYiVSkmPWSkF0ND/iqXIlL/QlaVYllUJll6p
i2TZitBgilQpYl55llaZlVInl5CXlWmJlXgpllwZlmj5l385l0xJillphVkZl4bJ
l1+plE0JlkRplEj5mEspmVw5lkkJmZc5mZHpmJZZmZn5mZTZmaA5mqJJlpupmZ5Z
mpx5mqrZmqT5mqaJmbKJmqHJmrPJmezYeWc2eY6Hhh6mB8EZnPYoBYkQkLmQiqiY
bFMZG6Soi8twDR4GlcpgnLqYCNegi/foeMV5nVipDMrQitZ5DcbZir45lanolq2Y
COvphfYInlR5neRpj1i5nq0oeb2QCM9Ziorlb/lZkNL5neFZnNiJj+AZcNeJnva4
/wzs2YrNCZ8Iep/+CZ25IJwVaqEXiqEZqqEbyqEd6qEfCqIhKqIjSqLB2ZtcyJv4
JmtNUmtE144ilgvQIKOiaI8ipgfeMKMxSorEmZ1fiY87qoteWZ6Y95X+hopeOaNh
SaReuaP76JaiSIqkOJRPmorX8JTtyKRa2Za96ZG6KKNC6oUx6pZZeY/7mKWmmAtR
CaVImqNR6qVpOaRvKqQiNnmMV6ZiWqc1igt4SqN3KqN56qc5qqd8aqcw+qd9aqiC
GqiAmqiMuqeHWqiPqqiNiqiS6qiEOqiQmqmTaqmViqll6gveoAeX+qfsCJaPhwtS
+IlgeaOpWouiWJxuqZ+9gP+c2Umfy2CgFPl4pgirxlmfy6CqFBeWbpkI4OlrAbmr
trqVyNqR4QmnXvietiqrtQiV26mL4Emeseqd46mrxGqsGrmfUAmg7Ams1Jqr5UqV
51qt5Ol4yniqRxmsj5d5rrqq8xqv70qvU4Gv92qv7tqv9Yqq/Bqw/jqwAAuvBHuw
Bpuv8lqw+vqvDtuwDJuwEDuxEosLojpi+6qipaEpGNUp+qAPYKlFSvmOMXoNetCO
RDmPxmmypdiKB8mY5SmVbRmdbekL2VqzX3mQMZqtKjuVOZue71icUpCyU8mzU0mU
OIulKmucYFmeVcmtV4ql9Ni0QNuVJqueUEuzMnu1Thv/kFJZtU9LtYyZCzsrsilr
ttGJtiV7tiQbnW2rsm+rtm5rsiMbt3W7tnJrt2m7t2w7t3cLt3ybt3hLt4Hrt32r
t4NruIlbuH+rB4eLtk0IsiILo75QtjJ6spVbtpYLlWk5tHvarNGJjy4buoyHlVn5
nvtZtmVLphxVl1+alYnQkWTahsjZhah7uqWoDGOaj5Y7u6WYZsiJuh65p14JnowX
pKbIu5oTlrsau6s7p2TakccbpsYbnb6Luaa7ukZJuaB7ud27vdmrudwrut5LvtqL
veCbvuUbvur7vey7vuj7vvJ7vuMrvuZ7v+0Lv/Nrv+5bv3uKsv9btpIbsjHqYVG4
/6cGjLJVCLoT6rTuaIVaBA0mu55TIcEG3HkLWrPvCMF7aqVDeWv5uQwS/I7k6QvQ
ycETzMDtCJ4qjJ3XibXYicDG2cIHjAvXmcI2jMMTPMELaj4jC8IZPMLtyMEM/I41
vKBoCMIufMPvyMMRbMAuDMU8fMBTjMEIfMFSnMBUvMJRXMVbfMVWrMVZ/MVk3MVc
jMVefMZhDMZjrMZpjMZiXMZvLMedpwdtXMUE3I4edrkj24533McGvMfRCboTPMh8
bJR+TMiBXLOIbMiNXMh+TKaPp8iOXMmRfMiYTJGWnMmMvMeYDMmevMiJ3MmkHMqm
vMeP/MmizMmnrMqj/MqtvP/KqAzLl8zKoDzLsYzLtVzKunzLv0zLsszLp4yyvazH
kFl0hhyjemC5HqbCyozMzqxFMVqUyTzN0UzJElzN0qzNzZzNMepr1tzN4kzN3gzN
2yyvb4vO52zO17zO7tzO48zN5UzO2HzO32zP8FzP7yzP+MzP9DzP+dzP7LzP8QzQ
/mzQAn3QBB3Q/6zQD73No6rPHkbA2zzNdlqUxTzNoojRzXzR9mjRGx2FHi3SId1c
I33RJ23SHZ3SLJ3SIE3SKh3TLv3RKP3SNl3TKw3TLb3TN23RPZ3TMw3UJS3UOE3U
PG3UMo3UOp3UNH3UPl3UTC3VUU3VS03SKDvUuaDH1Qz/mVGoRb6Asl3dzFxdlF69
ueVs1mRNj2NtuWL91W1d1myN1nLt1mdd12qd1nC91m8913x913qd131t13Ht14Q9
2Ht92IH914KN13Rt2I1d2IgN2Ynt2JIN2JWt2I992ZGd2ZbN2Js92I9b2RUd02yt
0at71hct16rN16yd2tO82rDd2rL92l8927Zd26ht0rGN27t927pd2r/N28Cd0sNt
3MKN3Ll93Mqd3L7N3M/t3NEd3NA93dJd3LfNzL9d0S3tu5Z72t3N3bm9vTMN3te9
0uXN2uct3ugt2+rt3uS93vH93uE93+YN3/Wd3vet3/S93/bN3//t3wGe3wA+4ALe
/94xnd0rrceo3dIU2uC43eAzTdsR/uAMHt4PLuEQfuEUjuEVnuEWft0dLuIcTuIb
buIhXuIofuKuneIsvuIT/uIaruIz7uI0PuGnbeFNiAzIAOMXnd0jHuMgXuND3uNE
LuNGLuRFruRHvuRJzuRP7uRR/uFT7uFVDuQ2DuVUfuVIruUt3uTNjOMMruPIQOVh
LuVW7uVZjuZB3uVsvuZYfuZb/uVvzuV0PudyruZ4Hudpvudu7uNFPuYVPs1mLuiF
buiHjuiJruiLzuiN7uiPDumRLumTTumVHumErkWBXuiYbumd7umfDuqhLuqjTuql
3umcrum5wOMXvep6sOrT/P/qr65FsZ7StM7qsF7ruH7rs57rvL7rqt7rwP7rsi7s
xe7rxl7sxG7ruo7sy37sys7szx7s0H7s0j7s047t167tzE7tzR7tyZ7t3B7u1i7u
Dg7umb6iHVtYKLPjyM7qhE7sv97S8f7t8h7s817h9F7t987v9u7v9Q7w+/7vAh/w
7l7w+m7wBK/wCc/wCO/w+Q7xD/7wEh/xWnTaxB7o7d7gyADv+q7x8+7xIS/xIr/x
JA/yI4/yJZ/yJ6/yLc/yL1/rJh/zKz/zLl/zMM/qMp/zNL/zNt/zOA/rr37xsp7x
8s7x0S7rSW/0S4/0TF/tSt/0Uf/0Tm/sUD/1Ul/1VG//9VmP9Vvv9VoP9l0f9ldP
9lxf9l8v9tF+8aw+5rKeALdezG8f7XJf7XRv7Hbv9vKO9xe999Pc91r097kQ+IOv
94U/94Zf94h/94qf94fv+In/+Isf+Y0P+ZUv+ZZP+Zev+Znv9hqd95rO4/SOsvQe
+htv8KWP76R/+quv+q1v+q6f+q8v+7FP+7kO+7Y/+7hf+7d++7yf+76/+7je+8L/
+8Qf/Lzu+jiO+k1IDMQQ+nJP63oA/cI//chf/cCODNf//NKe/dyv/ar+/d0P7uJP
6+RP/d6P/uMf/uuf/uXP/urf/ucP//Pv/vFv/faP/e9f//Qv/wCBLNdAgcgSEByY
/6vgQYUJFw7U41AhQ2T7HiSLwk/jRhpFEJQ5snHjg33EiOUqhhAZsmICi0UsyNKl
Spkoaba02XAlzpQ6a/aMyfPmTJ9CixINilThz6E5kzpdavQp0KhKd1plehTq1a1Z
pzalyjWs16pdpZYde1YsWLZa02JVS1YP2YoXM4rk1/FjSLwkTQ7EuTIhxJiDURYe
HFhgYsQJFRt+zHgp5MaAKx+eLFmw5sWOL0f2nDn05tGdLYs+TTq1acyqW7MGvZoy
6tezXceuzdk27M+9aeMGXjAiZ4sY8eb1CPK435OLU7KkGPF5MYqAFVJHaBN69unV
tWNv+N17d+7Xx5svvz08+f/16Nurd+4+Pnzr9MWnBz8/f/3999/3Z0+/8+wLkL8B
AZTPQPwOZHBBB/87Tw8E6zIOL72U66skYg5KoKDDDMplroZaArHDEVfi0EMSUzyx
RBVRzMVEl2CU8UMWZ3SxxRttjPHFHHHcccUedRwSyCJ5rFHIJGn0MUgmiVzyRySb
PFJJKqN0UkorobyySy6/NBLLIiV8UqDi7hLpQr5EYs6g5yZaySCY4ETxTYPiTMDO
DuvUaU83+8RTz0AB5XOhQQ0tlM4/EV1U0TwJbfTORCWN1M9HGb3UUUEntXTTSg/V
FNJMKR21U1E9LRVUUlFl9VRXMW1VID1MLejM49RcTkP/lnLRh7rtWNKj1w6x21XY
X1MyllhkfVWWV2YPKvbZ65wdFtplq502WWupPZbbZrXNVtposR23W3DL/Vbca81V
19ttz103XXLjfbddeN0Nd1580a1X33v/tTfgBCTsl0I0OUpuzZE0TGnYOFtKaS4S
ZWpYpqsqnhjiHjPe1eGLN364Y4spBvljj0k+WeOUReYY45BdNnlklWVm+eWSUaYZ
ZpxbvnlmnlfW2Webge655ph/zrnooI3eeeikHZbYaFstTDhXkxZrIIEGYmygAVmz
3lprrwcCm+uxcylbbKy1NnvtsLt2u22y2VZ77rfPThtuu+VGm269+7477roB5ztv
/7z9PjzwvQc3XPC/G1/8ccQdT7zwySOvnPHLCddccc4l9xzyzzMHfVbQc5k6zaoz
NEkfloqBnaAEXJcw9olch912g3DPXXbedZ/9deB/Byr43Isn3nfhkV9e+eOd7/32
5qV/nvrod58e++q1v9747pO3fvjsvRd/e/KZNx987sv/fnz1z4eeffnRb/94mOBP
HeG9cjXAgMBm31OvkDEXAK5EgLcL4P/0kcCFLNCACmQgAh/YwAjuroIFRMYBLThB
CWYQghzcoAcpCEIMarCEHxRhB03owBSGcIUXZOELSRhDFMqwhScc4Q1pmEMb9rCG
P+QhEG83Fx0mIH8awVWG+v/XqwXCzmK9mpUTScTEPEHsgU20ogex+MRibHGKXawi
F714xTB+cYxaLCMZpajGLFJxjWh8oxvbCMY40nGOZ5SjGNMIxzvuMY9m9KMd9VhH
PAoSkIQMZCEVmUhGItKRLzlkS46InP0p0QCvQ1EDqAMxImptk5g0iCbzBEpPjtKJ
ofzkKUsJsRWJkpWZTGUrYwlLU8qylrRsiT/8gUtSuhKTuvSlKoNpy1ei8pbGLOYq
ezlLZC7zmMoUJjOhSUxnJnOYvIzmM6/ZzGxaU5rbnCaKCGbNSSaRTfvon9jytEB9
eE1rUWSnO7u2ztnJM2tgbGco7xlPfdIzn+rEpz3zpEv/ggKUnwatZz8DqtCD6jIB
Dv3nPBeqTogKdKISPShGE4rQiO5zoxrtqD8tmlGPhvSiJR3pR1HKUJWKlKUmJalL
OZpSmLb0pOsMVkrLubpz9q8l+WyI11qih7EJRKgZLCraZAJUoy41qUdlqlJ/+lSn
IkOXaNMlUj0EVapOdatVDSpLgPlVr4Z1qlmVqlbNqtamlrWtbE1rVLlKVrjOda1y
Betb8erWuHa1rnntK133+le+2lWvfh0sUCNi2J1WsqcG2JOJ9NFOB85KIJNtAAsl
S9nIXpazKPJsZjvLq8/eibSiBa0u25lVqxJ0tbv0R4cI6o8FzpZXs92lbF370Niq
/xa3BpmtaHE72dmaFrOaDS1yT6vc4462uaBdrnNLu1nUGne6yZVudanL3OtGF7rP
ta52sfvd7oJ3u9nlrnhDVN7GYuixveoiMrz2Oii6br6wg699d9JF/Mp3v/n1L337
e1/+xpfAAM5qMXSp4F02YMGz1QdrYbfgCMPWH11UbYB9S1sJM9jArfVwhUFcYf0K
+MMmLjF+B/zfFaM4wCo+MYxTXOAZA/jALZbxi2msYxuzOMY7vvGPe+ziINcYx0D2
sX0lhuT2KkwjJOmfJik22V5pkkxdnGwxpAwxKmvZiliu8pe7vGWWjFnMWSYzbjWJ
Ww5fWKyuZfCbK6zlBbeWoP8OvrBqietmBhM0zgyeM565jOYzh3nKhD60oQet6DIj
etFeTjSkH01mMEu60YyuNKXNHGlNO/rSls50oUG96UmLutOYDham9dFk/l1SIVRm
ouvW2+XJFgTWWLY1rWWdQV3nOsu1fnWvg01hWeuZiVflNYSzSuIMb7hXWXV2nBWi
5w1n0NmtvTWwef3rXWe728Ledqx9Le5gc3vcuC43ucON7nVr29vndje4351uds+7
3d82N73jne97+1pC+161XW7F04X1b9u8/mkGg4XwDB48yw2nMsNdF/GHT7zWFXe4
AC3uujpPfNkCNHay27xnEmNbtXF2doZJzmzaspzjtJX/eMYTTnGNyxziF685zWeO
851bvOcx1/nNfS50oPOc6BgP+saLPnSlI93oTc/5023edDJBndUZYgITeA7ryaYa
zDrnus/DjvCxcxvWZOe6yNM+XJVDeM8UpnbL2T7y31bYtXaP+8e/vvW0mx3sfY/1
2f3Od8EH/u+F37vYAZ94tCO+7IYn/OElH3nKK97xi0812K9+zqxvO7OCzyngKVv4
0dO89Dg//cY/b/rVo771qhf96z0fe9qTXvZUvv1xbV971vPe9b6H/e6F3/vh/774
wSd+8o2vfOQv//eZn33AK6Q6xy6s82GneOZJ/3jsh1v03Af/98W//fGbPvzkR7/5
/8uP+vOrP/3sX//G2w//98s//t6vP/7dv3/689/+0A+7zbM+JvA+Ysg+KjNA+EtA
+1vAAlS/BuQ6CIQ1CUTAB7RABbxABsxAB8TADtRAD+TADxTBECTBCNxAEwRBFBxB
FSzBCTxBF0xBWAPACRTAJ9uHrMM+rtO+HOTBHvTBHwTCIBTCISTCIjTCI0TCJFTC
JWTCJnRCHtxBrqtBfiAJHPTBKHzCLNTCLeTCLvTCLwTDMORCLKSyKaxCrbtCMVTD
NWTDNnTDN4TDLSTDyTLDG2SCBQw7A8RCPFTBPORBPoRB7APECszBQZwsQFQtQ9QH
RWREKms5QhTEP5TEQoS1R/9cxEmMsD7UxED0Q0r0xEj8xE4ExVEUxVLcREg0xcwD
xDq0wh6cwzhEQrfzwUe0xCWkRVisxEwUwlrExV70RSjsQVZEQ07UB1XERFMkxmRE
xVM8RF1kRmdExmVUxmYMxWdsROzzh2vkOtrSxmikRlK0xmMMx2qcxkskR2lEx677
wzrsh34wgMlCw2F8Rz2IRyp7R32ox8m6x3zUh32ER3v8R3wESIEkyH4MSHk8yJbz
x7tzO9eSO4c0SH9gAg57O4F0yHd0rYm8OzScrXskKK2jSLsDybyjRV0CyYnEu5FU
SAjTSH/wx4J8SYQkSJnkx5gcyJo8yJsMSIOcSZ2EyZz/1Eeg5Emc7MmgLMqhVEej
jEd27Aete8dhxEetCxaoxMGnhLWqLMioNEiqdMqsxEqu3Mqr7EqO1EqMdESUNMuW
Q0naAskIw8GRg8e2tESJdEl8pMisq8u2tMtMlEuJ5EviikqX9Eu+dEq6JMy/JC60
hEbFBEurpLKvFMuwfMyxjEzHjEvJvEzLLEuvpMzJxMzNbEzO/EzI9EyrTDXSZMo7
NEDKvMOpDEvVFEirhE3WbB3aXM3XrE3cvE3ZzE0D8EvYpK20bJ27jDBiYMtMZEvj
zMSnVLatpMvVFEytm8jbPM5sZDt8NE6/9E3ptM7CVEm63E67hE6HHM5+nK3eFMjZ
/9TN2ExP9JRO98TO3WxP+XxP+oxP9qxP/LxP29RP9eRN+/TP+RRI1/RPppzMO9TB
rENQrlNQQGzQsHtQBs06B51QCK1QCb3DWpxIBA3JDb1FicRLZ6RLDj1LiUzAu5zO
W1TQD31QS9RI5QRMEFVOWkxRwLRLElVLw7TRCBXLBe1RCvXRAwXSIbXQII1LI41K
JOVRIS1SIsVQII3CBmVKA2CCd3zHBaTSYLlSe6xSg8TSLt1SfQRTc+zHMf1SKyVT
KkXTM/XS5exSbkTONxVRxaRIKqVIAwzOtTRHwbRS69THujTLxAxO5CzTPoVR30TU
ReQwNRXMGVXTTMRTt0zLs/9MVDYN00JtUzFdUy7dVE3NVEy91EcNVTPl1E8V1TQl
VU8d1U4FVVRF08w7VWIwUANoHUztRz1IwEftx1rVVVrN1S7d1V+9R1/11GAtVmK1
VWRlVILCU13CSF/lsDel1dmq0vPMU99kVrvzTfNUrUQtzhN1rWl1VpTk1jwlqGn9
U4y8SMHM1oYM1448VGBVVnnlVXoVVn2s12HNV3y9V2NN1n31114F2HnV134lWH49
1lqlx4LVx9RU0PokhqyjR4h9WIp92PiM2ItVzYxVUIytWI/VWJPgWBzc2I8t2ZA1
iY/NxpRF2ZG12I492Y5dWZcFWZgVWZO92ZbFWZa1WZ7/Jdmc7Vmajdmf9dmXJVqh
Bdqj3VmkLdqaVVqdhdqg/VhcbVommNXHxFoDOM2sxdp/vMeC7MqdDFuw5Umy/dph
HFu0LVu1PVuuvTv2FNu15dq4PVu1lFuv7Vq4Ndu8Tdu53Vu65du71Vu2Ddy2xVvA
Rdy/VVzCTVzGXVy/ZYKtbdtZpVVaDUitJQbLJcj+ydwEREPO1dzPrVzP1cfRvVzT
3VzUFd3OPV3WTV3XXd3QLV3YnV3Z7UfVrV3SvV3a3V3bBV3d/d3W9V3c7V3gJd7g
fd3h5V3kjV3jXd7jhd7nlV7lpV7npVXXLF7pOxgkIjgbbMentMIqXaKJhcf+Ad94
/zTfJC3fJepYfEzf9hXf811f+XVf9g3f971f+0Vf/Z1f9a1f+o1f/w1g+MXf/QXg
Au5fAubf/xVgBGZgBT7gBR7g/I3gCm5gCXbgCTbgC7ZgCOZg9V3YBTbQnTRKeuQ6
wx3IrBRco1RhFGZhqFzhGHZhGc7bQSVhGr7hGW7bR9ThvH3hE/ZhZ4RhF67LHA7i
HjbiJIZGHG7hI3ZiJR7iJybIVEPhKQVT6VTTyC1T963SK+ZiUcXiLrbSMAbjL/Zi
MT7jLB5jM8ZILHbJNBbjLUbjNeZTOC7jOSaxak1UKmVj8+xjPsZjQFZjOR5kQeZT
Qo5jQJbIOy5kMrbjR17jOf9+Y/d940hu5D92ZEtO5ExGZEbe5IXdZO0duOrz3qaU
X5LVWpjFYvVFZVZeZVV2X1eOZVjuUlo+5Vf+zQ295Vkm2Vd+S1+WTmDWylpWLbys
5V7mZbYU5la2ZVk+5mBeZGc+Zbbc5Wce5mrGZml2y2DmZW62ZmZG5m9e5nHu5mtO
UvK15tR8yiX64hAu31pm5zgW33de53181Hn+4vqlZ33OZ3yW5yLW5XN9O7bMyEd1
yIB21vL9SGwdV+bcVg+NsCVa5IVWS4Z2SXWd6InE6GpN6I60y2I2TJYs6I5syXim
1v4517VE6YamZJNkaI6my7oUaZhu42j253uOZ5y2Z3j/3ul63ueb5ump1GlRphpS
psJ9+N70NGcCfeX0bGpvlk1zlk6pdupZrupavmqrZDPZNMxqnWqUlFPujOjf1Mq8
HFGQ1Gq3HOsN3Uuz3lCxlkuxNkm19uobpWayVmmy/s1JNebqLGvm5GZ2req8PExi
fuuM/s1FTc+YxmqoVmpmzurHfmqqduypNuHGxsfUHMimHFCe5GyZ/OzNnmqjDG3S
Hm3PPu17LG2e/EhHnKym9EtlE+uUtEjWhmjUxq1the1hlLvb5jDY7kja4uwPbU51
ne1tTeyBvm3dbsmQ7IeQ1MXdJi6M1lHq5u3X/k7dJuiIFtTvpGvR/kl9WG3VTm3s
/w7v8TZvhNQD9CZq6nOvhWlHU4bnrGvKheViJpDvdaZveaZS/Obv/cZpAJ9v/w5w
Ah9w+abmiXxuRn3rBXdr/7Zpulzw+faH/F5kBe9iglbwN15UDGfw/r7wDodweNal
Cd9OEHVwwK5wDqfkEb9rXQZrOzXl6JTxSg5xBOfiCtfjjE5xuzbxs87v+w7yLjZw
/S5yIf/vIyfyINeD/h5yhy3yYF5vNE7S/A7mKK9yKldQK8/yLO7yLv5yQKbvSvZQ
F+dOGM9lHbfTMrdyEC3zNR/zZd3Q3YbzNz9J/K5jt1TzDJ/zMrdrPh/RC3/oDWfU
bTbxt7bzEaVzRD90Nx/Rh/9+9DKXyN3OZSzfci0XcDG39Ey/ci6/dK3VdPm24v7p
By4u0yYvdTBXUwNIdT5e9VZ3SvGF9UJldVN/dVuXdVwndV1/aDu1U4o+V4uO9ZcG
z5Y09XN97gxf9bvmU1a/cG1Ndj6erVRPaZcs9XA1drZGVGHnU5LuyOd+1xLPcWTH
u22/9pQm9dae9ok2T4v29ebW9lxXdXl3dXof9lqf913Pd3yv911v8ntPdXXuH/rO
73/H7/we+IMX44Rvx4V3coR/eIcneIlX+FWPeIufeIyveI2++PjNeI/fePP9eJEP
eYaH+Iy/6I4n+YbXeJYHeZdf+ZMv+YhfZJOneJi3+Zb/l3mcV/mcf/mdB/qbD3qN
n/KWZ8qmrFKkd0dWj1ymx29SzzqnX3qkl3qoT3r6tvqqd3qtp3qlz3qv33qw7/ox
N8mrf/qwx3q0P/uxX/uoF3u3T3u2X3oQ5Xq4b3uzn3q7z3u8//q413vflPu+v/u6
53u133vCR/y3L/zAN3zBP/z6fvysS82m5Gymp9J+mPJ+lG/Kd8rN92/N72LOB/3L
/3zL9+/K93zUD/3ST/3OX33VJ33YP33Xj33an/3Rv33TF33dZ/3Xt/3db33cB37f
F/7er/3il/3hP37eT37jz/3gZ/7fd37lf37ij/5ihP7J/2KpB2Wrh3Xv336lD3/6
/x5//C7/75f681f/hRd/9id/9zd/+Ef/9n/196//+L//+bd/Wd9/gDBgoB8TJv30
MTGQcGDBgwkXEjSIUKHAiA4pMpT4sGLDiRA7bsx48aNGjBY9cixJcmRKliJRvgx5
UiZIhXpiUtz3IFkUfj5/0iiCoMyRnz8f7OtHsN9AghSX6lG6cWnTqQarPr0qNSvT
rQmpemXY1elXrWTFGvB3Fuxas1b7+VP7FmvZsXPD+nPLlS7asGzvtrW716/eunz/
Dg58uHBfxYQFG368GHJjwJb1RHaqk6dRn0GHFu2MVKrBiBkLRi14urTqiA1Nu2Zd
tqDs1aRtw6ZdOzbc1rpv8//OXVAtQX+4fdMG/rv3wLyvkT+fHf249N3LoVtPLnx6
cOzKtXvfnp379erfyYM3L/687NTpDWzu2fkz0c78Risd+bA0ZoX7lXr0n37+Abgf
gQO+FuCBCiZoYILGqdagfws6aJA/DJaGYYETShhhhhVu6GGIAmqI4IccniiiiSNS
iCKLHZII4oozllijjDa6SONDN8EYn330hWYUfgI1NBCRAmHW1ZEEGolRkUw5qdWS
T04pZZRKXtnkQkyolVZcW1oYl0Jx5QUXmQmRCRdTZObVJVxppTWcmGN+aZyZxnkZ
F5RgYsmnlkRa6eeegPZJ6J9MDopolYUqmmWiVDq66KH/kAoq6aOBGnopo0Xe5KiP
8wlVn2hJdfVQfk71w+OpZSm0KkOt5sdqaVuR5Wqtsb46K6qm4lqcrnaieSqwbeZn
XF5jqokml6WppSevzb7arFTQWkgrr9bCiq2ustp67a7Zfrttrt2Cy22v3pqrLbni
3qruueWO+y676I4bVbhKfWoUkPbhF+uu/Bk0m78CS/XvwCIVTPBSCgeM8MIOy8Vm
rMcWV+ybFcv1pnNqyhUnccWd+fGycnHZW8WvPWxRwg43rHLKKLcMs8EruxzzrDYf
XPPML9+8M840y8ywz0MLXbR7B+cLVKhBHkWqUmIFzN/CKkNN9dSvVY311aVlzfXW
/09/veayFXeVcclil1nysMtaGKevxLk9MtjSDpdssl4HbHXeWu+N98J+Rw1234L/
TXjgpRaO+OFdG6534owr7vjiYUNeOeVQSZ60Z0vzS2pFUGJlQFQChf705xCBvlVT
pKtueumpO7X66Z+zHrvGTeGpVO5vNgen7mk9baxT0ApEPO/A7y58ccAX3zrsqNcO
/eyyvx497dO77rz11GuP/fPXV+/99tnb/j335Y9vPvnS2ys9fDvJpy/no57KFqxJ
rt5z/v7uX3D/9uvvaQFkygCz1SWJFYxMdCoT3OimpjtFTIEiY9MCudQcPZmMeQXc
IP8E2EECfjBbZhHhWEj4v/8RctB/HlQhCFlowhUCMIQpjKELZ3iV0QVQc/zYF/3q
Z7qlpCo/HPHhEOtXxFMdUYhiMeISkdhEJQLRiVGEoq5+WEUoLeVjWLxiEq1IxCd6
kYlTDKMUuQjGLX5xjGgUoxnV2MU1ljGNbZyjHOvIRjue6iZu1CEPheQ0XekDiEyw
10EEeapAsuaQhswPIgvGyEUCCJKFTOQjKRlJS07SkZfUZCHPpEhMNnKKoQSkJEf5
SU6aspKoLCUrQdnKVboylrCcpShfWUtZ3pKWukoNKvk4Pz86smdQEaYlKUlMTRrT
X5BMZjCR2cxnHjOKzFxkNKupzGI+k5rXdOYysznNb3r/M5zdHCc2ycnNcqLznOqU
pjgpmSRI+hI0nasf6vJYT1c1hZ6f02c+8enD8vHzn/fEVT8JKtB9+tOHA3VeQBWK
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
6IEq6H0mqH36pyAAqHieCmX2pmUuAXv6QoZqaFxsqC/4g4aCaIh6qIiSaIma6Il2
6IeiKIiq6IqiKDL8Z3i+5IXiAolyaIZ+aIueqI66qI36aI+KKI+uqJCWKIxCqIzu
JFpOpFpWJBz232X6Qi4gw5RSaVxUKZViaZZeqZZyaZd66ZdOqT+AKZeK6ZiOqQHE
aHVGKZmWKTK06Zi+qZmS6f+cymmdemmceimaHulZTiZ5kl8P8mn9XeaUEkOhGqo/
EAOiJuqiKuqiJmpcFGqjPiqkRiqlIqqikkmlYmqmamqkMiqncuqkbqqkGmqpmmqp
MsETQGl1EuqpXqqnvqqnTqqsaiqmOmqoskmnzuquvmqmWqqoHiqlAuuunioxpOqq
Smh+UCgXWmih6sZwsE2bsM3I0Ia0Vuu1OsfIOEe2Tqu1Tiu0euu3Uiu4Xuuzmuu5
fsATuCWSwtRlOqu5Wqu0Zqu3huu81he0kmu+jmu33mu0kqu96ga98iu6qmuEOiJP
TuJaMit6LsFDbZuVHduZsZrmBR+YsVmrTV/02dQxFCz/u77UZTrsw4osBF2ennHe
lVleogWamWVspeUHx65roI7nku6mwq7i+V2mUhzDzvKsP+yszwLtzx6Dzw4tzwpt
zyIt0SKt0cZF0Qqt0gbt0zot1CZt1R6t0WJt1u5sCETADhhsTOVsP2gt0QYt2U4t
1iqt0xYt1TKt1S6t2l6t2a6t2kbt3Ert1WIt13qtx+Liky7BB3xACAju4PoD4RZu
4Qou4oaA4h7u4C4u4T5u4kau4zau5DLu5DZu5Uqu5ULu5WIu5Dru4G5A135tu/5t
4IYu5mqu5z6u4n4u667u64Ju64Iu4mZu5+Iu525u6o7u3srshPrpT1Ymw25t6DJu
/+waru1SLpkk7+4yb+LGhfNCb/Rm7vOyyfTabvRK7+6Gbu+W7scuQfEar+F+bvNO
7uJa7/Ier/Y+L/pO7/YqL/JeL/qyr/ambgh4L9+mI0VqoEUK6hII7gYI8AATcAEb
8AETsD8g8AIzcAM78AND8AELgu/O1GUGcARj8AYocAZzcAd7MAJP8Pf27UUuwQc/
8AabcAqrsAOrKgXP6AozMArD8AzDcAuL8P4yaf86KQlHQA/78A8DcRAL8RATcREb
8REjcRIj8QRbwBL8QnUqcRRL8RRTcRUv8Q408RMnK5DRbHnaoP/KHx7oQBiMYxmb
8RmjcRqD4xTUwC3oADAU5v8Yq/Ec03Ed2zEysrEbw/EW98Oy3mz4RcAbTAAKeIME
GPIhI3IiK/IiM3IjO/IjQ3IkS/Ijo8AEvIE10FQgD3IhT3Ine/Ing3IoO3IlX/Lv
Kmvw8ubCnt8G2MBBNuQrw3Isy/ISBCQlpAA2tnI8zvIu83Iv22Mt3zIf+/F5nh8T
5EItlANtKvNpOmYz9yVnymVkypQxI/MyW/NoOnM25yU0D4M0J2mfdvGfAuXB2mI5
W9oIm3M69xg6q3M70yAO12yTQpY3uHM9C5U3jGKq0LM987NN4TNMDXOn6cFAE3RB
G/RBI3RCK/RCM3RDO/RDQ3RES/REU3RFW/RFY3RGa/T/Rit0TAV0P4M0r310SJM0
nI10SaP0hJ10SrN0UK10S8M0Tr00A2ajN9r0TeN0Tuv0Th/jHfv0TwP1OJajNdbU
TB+gQeqyLyv1UjN1Uzv1U8tyQA5kUaOyzXYgTG7kTWr1VnN1V3v1V4N1WIs1R65k
S1J1OAsvCXKlUY5lW7v1W8N1XMv1XNN1Xa+BVWKlVs6UURugYcalNgN2YAv2YBN2
YRu2YAfmbe51VctzBbbmNUN2ZEv2ZFN2ZVt2ZdumN3s0Y+uwBf5md4J2aIv2aJN2
aZv2aaO2cH7n98KzFwOqA6bnei4ofzZog842gdo2ft72bjMob7NnbisocPv2gQo3
/3s+KGsjbCp2tmPTKIuSSY8SKY6GaHQDqXQPKZBSd3Vr945y93Vv93T/6Hdnd3gX
aZrSFF8XIJRK6Za6qZniKXuHqZ3eqXvX6XvL931/qX3bqX7XN53i933zNzLoKXIr
aU+69jgz4KAiQ6k2aoMLq69aaoT/KrGC6q9KaoU7uIQH64XrKrEOK4Zn+IabKqgy
OIk3uK5euIl3eK7yqoYz6qxaOK4+OIaf6rESODgbuDiXoLsaa7n6q76Kq77KK7YG
LLZy68Du65GHq48DObzyK8AS+blGOb5Sq71aeZGD67ZOucBCeZtoub8KbJFfOZUX
RLrG7HlzdghyII8H7JnISf/IQHl91QmRV9i31vmRI3mYs0m/Yvmef8m5fnmSv7mX
A3rIYPm4xqufHzq9KnqWG/qg6/m/lmujC7pumPmN5yZap7IHgmw/gZ+p7ZmrHRqi
7Z3vjRqLrV6zwd6pK5nkiRrEGlvfrTrg/Zn2GV/x7RTMYvrM5nhaj2DYtu3Rsu3d
0m2x123dGnvWDvuxF/vb2i3cpm20uy2zOzvVSjuxLzu0T/u2W/vbUrvZMnu3Y3ve
kq7HtraOk+BlAi7lsjv9vi/0Yi/9Kq+7v3v6pm79rm/2Uq/9bu71tm+807vn+ju/
x7vrXi7rBrz6zvu7yzvD4zv8cq7AW+/Eu24Al/tZ9/r/pl91+B7D/Xr8x4N8yIv8
yJN8yZv8yaN8ynt8xat8y7t8yOcvxidsY8M2AOMvDeN8zuv8zsOwDPP8zy9wCJt7
cqvjctc80CN90iv90jP9zz+B0Mu8cqv5BV6mFVv91WN91mv91nN913v9DwsCMjpx
1Bf91FugIMhxUKv92rN927v92/t0G+sALZA9/5p9BQqCIKOAKPN93/v93wN+4Av+
4BO+BBQyKZdD3efw3TvgBrCCK0N15Ev+5FN+5S9kQNbCMCh+PBu9AyJDLYzDZYv+
6Ef2YZv+6WezZqKCNQyDNWg2QKc5Csb07Mt07Jsn7eM+mmu6Ved+78P+7tO87ws/
/xdnPO8P//ET/8x3PvLnPnozP0w7//OzdPRLP0pTf/WT9PVjP0hr//bzc/d7fz2D
f/i38/iTfzqb//mXc/qrfy2yf/vH4vvDPyvK//yXIhHuQ/7r//7zP0DsEziQYEGD
BxEmVLiQYUOHDyFGlDiRYkWLFzFm1IjxgQR0/ECGpFEEQZkjIUM+ULmSZUuXL2HG
lDmTZk2bN3Hm1LmTZ0+fP4EGFTrUJgoJl1CCHFnyZNIaepJFlTqValWrV7Fm1bqV
a1evX8GGFTuWbFmzZ9GmVavVm4Qo7ZLyW2oybhS7d/Hm1buXb1+/fwEHFjyYcGHD
hxEnVryYcWPHjwOjuwQ37v/cpnExZ9a8mXNnz59BhxY9mnRp06dRp1a9mnXrz5Zd
x5Y9m3Zt27dx59ZNG/Zu37+BBxc+nHjxzb2NJ1e+nHlz576RP5c+nXp168yjX9e+
nXt376Gzfxevul2UKefRp1e/nj16CVPeS4g/Hz59+fXhq38runx7///Tiw+/+wi0
zz79KBuPtPAUbHA08wjQYYkJKazQwgsxzFDDDSnU4Y1LkAoNQgk5LNHEEzH0EETT
JCDDxRdhjFHGGWms0cYYJciMQQd59GwKAt7Y5J8hiSzSyCORTFLJJYn84Q0CQgTt
xyCZrNLKK5N0EsrSJKiBHz7ADFPMMcks08wz0Qwzghr/cqyMJLp6jFNKHTbRZo07
8cxTzz357NPPP+/kJoVNdBhtCjrtBFTRRRndU1BCTSNDkDQprdRSNPkhA7Md5ewU
pSmWAEEGGYYp1dRTUU1V1VVZbbVUChJYwgbRQBWVVFdxzVXXVGGVtTQyLg1WWEs1
dZMpT5HNDFQXUmjW2WehjVbaaamt9tliNvA1tGWt7dbbb6nFVtvRgB3W3HPFLDYp
TpOVE1RheIlX3nnprdfee/HNV15jtolg3M/e1VfggQm+l19/ZyWtXHQZFlZdlNht
t0dQl1kGl4sxzljjjTnu2OOPL85lA0H+9XGJikFOWeWL/Vk5Y5FJTpjchsekhuYz
/x8W6c3LJE4W1It9CVrooYP2xx+ikU66aKWZJhqZkUvu7Gdcmjba6KaxFvrorJ2G
WmbRFraUGpvNtJnsm9PddOeeJQbVl1yQiVvuueM2mu678a47773pNsBrWpd4e29/
+C4cb8IN7/tvhYUd+8yz0U7bWDjZRhbUuInJXPPNifEnc88/Nzp00K0mXfTOT/cc
dM41Z+KJT6Lm7HJkWP+8dqtHXx131Ekf3fbVOXcd9q9DC5tSspEfG3k+km8eTLOD
zVmptSu3fInMmche++2Z8Cd777vfHvzwx/d+fPG7P5/77D94Ao/YNwMV+/XDp//7
+slH/371zVd/+/bfRzzQGP8vTctjXpigB70ymQ1ylZKeXKhXvU6BygAG6McFMZjB
fvjjghzcYAZLx0EPfnCEG7TaBzWYwmO4D36aoaAFU4hCDZZOhiIEIQ09iMMYYnCF
AfxVsAx4tgQeUEzKU2D01HYsCU5wCRc8xhOhGMUQ+uMYVISiFa+YRSxusYpR9CIU
QxCBHbRQWU3sxxefiMUsprGLbFSjGrvIRTh6MYxjFOBnCPg4Ix5xiJATIhGRODme
LZFHoPrAB0KQSEUu0h+MDEEjFQnJR04ykY2U5CUpuUhNhmADYiQjZgyJyE1WUpOY
NKUjSWnJSGZylJ204w/FVkRA9lGWzwPkpR4YMUJ2B1T/TxzlKoFptUoabZjEHGYx
VflLRbryk3Hp5TGU+UhhSpOYmKRmMUlJzWT+kpl39EweyyZLI9rSecxT3i2JlUTK
7dJBoErkBuAZT3nOk5719Ec98ZnPeQrildtawjv1GVCBDjSg/GxmZsAZy8ilKZcR
ZGeDQEVQiW7gnhMN6Ov6KaUlWJSjHZ0nRg+KmYRWqoELJVNDlfhQiC4hAi116Uth
GlOZzpSmNX0pPy0Q0pCAyqY99elPaYpTnSZlpCZtGErXqVLxHCoMFnDqU6EaValO
lapVtepTp1CDW+iAFbTSQVOvGlaxjnWqWd1qVxUWAaMaNQJIHaRSvYOON0wABW2R
/89d8ZpXve6Vr331q3xQMIE38EE0cqWrXf+aWMUuNq+BHSyXJDCptaItAvJR51vh
yh24RAhFnfXshjzEB3Dwhx+c/expURva0ZamBjdy7Wtha6M2CTKzCrIBK0QLDkrs
lre99e1vf2sN4Q6XuMU1bnF7W4taeHMzt80tcKEbXd4el7rVFW5yl7tLXdaWu92t
7Xa9G17xShC84zXveTtVXvSul73fUW974Rvf6bxXvvW1b3Hoe1/97jc3I+kCAuRh
EnkMmMAFjsOBEZxgBS+YwQ128IMhHGEJT5jCFbbwhTGcYQ1vmMMd9vCHQVxhGnSh
CCU28YlRnGIVr5jFLXbxi0FhHGMZz5jGNbbxjXGcYx3vmMc99vGPVdwCIQ+ZyEU2
8pGRnGQlL5nJTXbyk6EcZSlPmcpVtvKVsZxlLW+Zy0YOCAA7
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=feed.png
Content-Type: image/png; name=feed.png
Content-Location: http://www.websecurity.es/misc/feed.png
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABVlBMVEXMXRXZcina
XircYSvdbi/eZSzeby/ecDDfcTDgai3gdUXhdDDheDHicDbidjHjbi7jeTHjeTLk
ezLkfEfldC7lfDLlfTLmdC/mfzPmi2DneC/ngTPoeTHogjTogzTohTXoiVXpfjnp
hTXpiDbqfTHqhzXqiUnrfzLriTXsgTLsijbslmPuhTPuhTTukUzummTuq4nuspXv
jUHvnWTwiTTxizXxt5fyjTXyk0Lyo2bzpGf0kTb0pmf0rHP0soD0vZj1kjf1qWj1
v5n1wJj2lDf2m0T3lzj3oVD3rWn3w5n31L74mTn4nkT4r2n4tHX4v475mjn5nUH5
n0X5pVL5yJv517/6nDn6okb6rF76s2r6voP6w4/6zqf607P7nTr7qVL7r177uXf7
5tj8woT82bX848392rX938H95c398eb+5s7+7Nr+8eb+8ub+9/L++PL/+fP///8v
+WdaAAAAAnRSTlMQj0FWQdgAAADnSURBVBhXJc67TsMwFIDhc3GcO0ThtgEVjEww
8Bo8Kg+DmCoGBENJW2iTUxw7drDE+P3Tj4ClIkXMipnGtxnxutdFwhmrnArtnrkK
7VXL9O9sGJXS9T1A+Nxh9EaYiyO2QMnxmQ7Rsue6Qvvd/VYqg07E9DE0j21pROv0
Z2vsgThLqDq/bUwPC29ligP2dTVhY5eGGnGelMrnw5fgqXmBO2e84pwWPK7TRK88
5/uZmE6KNNm+w4UsoZkCxb8ZBumgdmvAEPDmIRPZGJtNH0rvTIL4ZOOPFWfsFOZy
QMBLds5P3vsQ2M5/DWByb3nOxmEAAAAASUVORK5CYII=
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=plusone.js
Content-Type: application/javascript; charset=utf-8; name=plusone.js
Content-Location: https://apis.google.com/js/plusone.js
Content-Transfer-Encoding: Base64
dmFyIGdhcGk9d2luZG93LmdhcGk9d2luZG93LmdhcGl8fHt9O2dhcGkuX2JzPW5l
dyBEYXRlKCkuZ2V0VGltZSgpOyhmdW5jdGlvbigpe3ZhciBhYT1lbmNvZGVVUklD
b21wb25lbnQsaz13aW5kb3csYmE9T2JqZWN0LHE9ZG9jdW1lbnQsY2E9QXJyYXks
ZGE9cGFyc2VJbnQscj1TdHJpbmcsZWE9ZGVjb2RlVVJJQ29tcG9uZW50O2Z1bmN0
aW9uIGZhKGEsYil7cmV0dXJuIGEudHlwZT1ifQp2YXIgZ2E9ImFwcGVuZENoaWxk
IixoYT0ic2hpZnQiLGlhPSJleGVjIixqYT0id2lkdGgiLHM9InJlcGxhY2UiLGth
PSJjb25jYXQiLGxhPSJjaGFyQXQiLG1hPSJtYXRjaCIsdD0iY3JlYXRlRWxlbWVu
dCIsdj0ic2V0QXR0cmlidXRlIixuYT0iYmluZCIsb2E9ImdldFRpbWUiLHBhPSJn
ZXRFbGVtZW50c0J5VGFnTmFtZSIseD0ic3Vic3RyIix5PSJ0b1N0cmluZyIsej0i
c3BsaXQiLEE9ImxvY2F0aW9uIixCPSJzdHlsZSIscWE9InByb3RvY29sIixEPSJo
cmVmIixyYT0iYWN0aW9uIixFPSJhcHBseSIsc2E9ImF0dHJpYnV0ZXMiLHRhPSJo
ZWlnaHQiLEY9InB1c2giLEc9InRlc3QiLHVhPSJzbGljZSIsdmE9ImdldEVsZW1l
bnRCeUlkIix3YT0iSlNPTiIsSD0iaW5kZXhPZiIseGE9Im5vZGVOYW1lIix5YT0i
dHlwZSIsST0ibGVuZ3RoIixLPSJwcm90b3R5cGUiLHphPSJyZW1vdmVDaGlsZCIs
TD0iY2FsbCIsTT0iZ2V0QXR0cmlidXRlIixOPSJjaGFyQ29kZUF0IixBYT0ic3Vi
c3RyaW5nIiwKQmE9ImRvY3VtZW50TW9kZSIsTz0icGFyZW50Tm9kZSIsQ2E9InVw
ZGF0ZSIsUD0iam9pbiIsRGE9InRvTG93ZXJDYXNlIixFYT1mdW5jdGlvbihhLGIs
Yyl7cmV0dXJuIGFbTF1bRV0oYVtuYV0sYXJndW1lbnRzKX0sRmE9ZnVuY3Rpb24o
YSxiLGMpe2lmKCFhKXRocm93IEVycm9yKCk7aWYoMjxhcmd1bWVudHNbSV0pe3Zh
ciBkPWNhW0tdW3VhXVtMXShhcmd1bWVudHMsMik7cmV0dXJuIGZ1bmN0aW9uKCl7
dmFyIGM9Y2FbS11bdWFdW0xdKGFyZ3VtZW50cyk7Y2FbS10udW5zaGlmdFtFXShj
LGQpO3JldHVybiBhW0VdKGIsYyl9fXJldHVybiBmdW5jdGlvbigpe3JldHVybiBh
W0VdKGIsYXJndW1lbnRzKX19LEdhPWZ1bmN0aW9uKGEsYixjKXtHYT1GdW5jdGlv
bltLXVtuYV0mJi0xIT1GdW5jdGlvbltLXVtuYV1beV0oKVtIXSgibmF0aXZlIGNv
ZGUiKT9FYTpGYTtyZXR1cm4gR2FbRV0obnVsbCxhcmd1bWVudHMpfTsKRnVuY3Rp
b25bS10uYmluZD1GdW5jdGlvbltLXVtuYV18fGZ1bmN0aW9uKGEsYil7aWYoMTxh
cmd1bWVudHNbSV0pe3ZhciBjPWNhW0tdW3VhXVtMXShhcmd1bWVudHMsMSk7Yy51
bnNoaWZ0KHRoaXMsYSk7cmV0dXJuIEdhW0VdKG51bGwsYyl9cmV0dXJuIEdhKHRo
aXMsYSl9O3ZhciBRPWssUj1xLEhhPVFbQV0sSWE9ZnVuY3Rpb24oKXt9LEphPS9c
W25hdGl2ZSBjb2RlXF0vLFM9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBhW2JdPWFb
Yl18fGN9LEthPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8dGhpc1tJXTtiKysp
aWYodGhpc1tiXT09PWEpcmV0dXJuIGI7cmV0dXJuLTF9LExhPWZ1bmN0aW9uKGEp
e2E9YS5zb3J0KCk7Zm9yKHZhciBiPVtdLGM9dm9pZCAwLGQ9MDtkPGFbSV07ZCsr
KXt2YXIgZT1hW2RdO2UhPWMmJmJbRl0oZSk7Yz1lfXJldHVybiBifSxNYT0vJi9n
LE5hPS88L2csT2E9Lz4vZyxQYT0vIi9nLFFhPS8nL2csUmE9ZnVuY3Rpb24oYSl7
cmV0dXJuIHIoYSlbc10oTWEsIiZhbXA7Iilbc10oTmEsIiZsdDsiKVtzXShPYSwi
Jmd0OyIpW3NdKFBhLCImcXVvdDsiKVtzXShRYSwiJiMzOTsiKX0sVD1mdW5jdGlv
bigpe3ZhciBhO2lmKChhPWJhLmNyZWF0ZSkmJkphW0ddKGEpKWE9YShudWxsKTtl
bHNle2E9e307Zm9yKHZhciBiIGluIGEpYVtiXT0Kdm9pZCAwfXJldHVybiBhfSxV
PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGJhW0tdLmhhc093blByb3BlcnR5W0xdKGEs
Yil9LFNhPWZ1bmN0aW9uKGEpe2lmKEphW0ddKGJhLmtleXMpKXJldHVybiBiYS5r
ZXlzKGEpO3ZhciBiPVtdLGM7Zm9yKGMgaW4gYSlVKGEsYykmJmJbRl0oYyk7cmV0
dXJuIGJ9LFY9ZnVuY3Rpb24oYSxiKXthPWF8fHt9O2Zvcih2YXIgYyBpbiBhKVUo
YSxjKSYmKGJbY109YVtjXSl9LFRhPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlv
bigpe1Euc2V0VGltZW91dChhLDApfX0sVWE9ZnVuY3Rpb24oYSxiKXtpZighYSl0
aHJvdyBFcnJvcihifHwiIik7fSxXPVMoUSwiZ2FwaSIse30pO3ZhciBYPWZ1bmN0
aW9uKGEsYixjKXt2YXIgZD1uZXcgUmVnRXhwKCIoWyNdLiomfFsjXSkiK2IrIj0o
W14mI10qKSIsImciKTtiPW5ldyBSZWdFeHAoIihbPyNdLiomfFs/I10pIitiKyI9
KFteJiNdKikiLCJnIik7aWYoYT1hJiYoZFtpYV0oYSl8fGJbaWFdKGEpKSl0cnl7
Yz1lYShhWzJdKX1jYXRjaChlKXt9cmV0dXJuIGN9LFZhPS9eKFtePyNdKikoXD8o
W14jXSopKT8oXCMoLiopKT8kLyxXYT1mdW5jdGlvbihhKXthPWFbbWFdKFZhKTt2
YXIgYj1UKCk7Yi5IPWFbMV07Yi5qPWFbM10/W2FbM11dOltdO2Iubz1hWzVdP1th
WzVdXTpbXTtyZXR1cm4gYn0sWGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuSCsoMDxh
LmpbSV0/Ij8iK2EualtQXSgiJiIpOiIiKSsoMDxhLm9bSV0/IiMiK2Eub1tQXSgi
JiIpOiIiKX0sWWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtpZihhKWZvcih2YXIg
ZCBpbiBhKWlmKFUoYSxkKSYmbnVsbCE9YVtkXSl7dmFyIGU9Yj9iKGFbZF0pOmFb
ZF07Y1tGXShhYShkKSsKIj0iK2FhKGUpKX1yZXR1cm4gY30sWmE9ZnVuY3Rpb24o
YSxiLGMsZCl7YT1XYShhKTthLmpbRl1bRV0oYS5qLFlhKGIsZCkpO2Eub1tGXVtF
XShhLm8sWWEoYyxkKSk7cmV0dXJuIFhhKGEpfSwkYT1mdW5jdGlvbihhLGIpe3Zh
ciBjPSIiOzJFMzxiW0ldJiYoYz1iW0FhXSgyRTMpLGI9YltBYV0oMCwyRTMpKTt2
YXIgZD1hW3RdKCJkaXYiKSxlPWFbdF0oImEiKTtlLmhyZWY9YjtkW2dhXShlKTtk
LmlubmVySFRNTD1kLmlubmVySFRNTDtiPXIoZC5maXJzdENoaWxkW0RdKTtkW09d
JiZkW09dW3phXShkKTtyZXR1cm4gYitjfSxhYj0vXmh0dHBzPzpcL1wvW15cLyVc
XD8jXHNdK1wvW15cc10qJC9pO3ZhciBiYj1mdW5jdGlvbihhLGIsYyxkKXtpZihR
W2MrIkV2ZW50TGlzdGVuZXIiXSlRW2MrIkV2ZW50TGlzdGVuZXIiXShhLGIsITEp
O2Vsc2UgaWYoUVtkKyJ0YWNoRXZlbnQiXSlRW2QrInRhY2hFdmVudCJdKCJvbiIr
YSxiKX0sY2I9ZnVuY3Rpb24oKXt2YXIgYT1SLnJlYWR5U3RhdGU7cmV0dXJuImNv
bXBsZXRlIj09PWF8fCJpbnRlcmFjdGl2ZSI9PT1hJiYtMT09bmF2aWdhdG9yLnVz
ZXJBZ2VudFtIXSgiTVNJRSIpfSxmYj1mdW5jdGlvbihhKXt2YXIgYj1kYjtpZigh
Y2IoKSl0cnl7YigpfWNhdGNoKGMpe31lYihhKX0sZWI9ZnVuY3Rpb24oYSl7aWYo
Y2IoKSlhKCk7ZWxzZXt2YXIgYj0hMSxjPWZ1bmN0aW9uKCl7aWYoIWIpcmV0dXJu
IGI9ITAsYVtFXSh0aGlzLGFyZ3VtZW50cyl9O1EuYWRkRXZlbnRMaXN0ZW5lcj8o
US5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixjLCExKSxRLmFkZEV2ZW50TGlzdGVu
ZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGMsITEpKTpRLmF0dGFjaEV2ZW50JiYKKFEu
YXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsZnVuY3Rpb24oKXtjYigp
JiZjW0VdKHRoaXMsYXJndW1lbnRzKX0pLFEuYXR0YWNoRXZlbnQoIm9ubG9hZCIs
YykpfX0sZ2I9ZnVuY3Rpb24oYSl7Zm9yKDthLmZpcnN0Q2hpbGQ7KWFbemFdKGEu
Zmlyc3RDaGlsZCl9LGhiPXtidXR0b246ITAsZGl2OiEwLHNwYW46ITB9O3ZhciBZ
O1k9UyhRLCJfX19qc2wiLFQoKSk7UyhZLCJJIiwwKTtTKFksImhlbCIsMTApO3Zh
ciBpYj1mdW5jdGlvbihhKXtyZXR1cm4gWS5kcG8/WS5oOlgoYSwianNoIixZLmgp
fSxqYj1mdW5jdGlvbihhKXt2YXIgYj1TKFksInN3cyIsW10pO2JbRl1bRV0oYixh
KX0sa2I9ZnVuY3Rpb24oYSl7cmV0dXJuIFMoWSwid2F0dCIsVCgpKVthXX0sbGI9
ZnVuY3Rpb24oYSl7dmFyIGI9UyhZLCJQUSIsW10pO1kuUFE9W107dmFyIGM9YltJ
XTtpZigwPT09YylhKCk7ZWxzZSBmb3IodmFyIGQ9MCxlPWZ1bmN0aW9uKCl7Kytk
PT09YyYmYSgpfSxmPTA7ZjxjO2YrKyliW2ZdKGUpfSxuYj1mdW5jdGlvbihhKXty
ZXR1cm4gUyhTKFksIkgiLFQoKSksYSxUKCkpfTt2YXIgb2I9UyhZLCJwZXJmIixU
KCkpLHBiPVMob2IsImciLFQoKSkscWI9UyhvYiwiaSIsVCgpKTtTKG9iLCJyIixb
XSk7VCgpO1QoKTt2YXIgcmI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW9iLnI7ImZ1
bmN0aW9uIj09PXR5cGVvZiBkP2QoYSxiLGMpOmRbRl0oW2EsYixjXSl9LHNiPWZ1
bmN0aW9uKGEsYixjKXtwYlthXT0hYiYmcGJbYV18fGN8fChuZXcgRGF0ZSlbb2Fd
KCk7cmIoYSl9LHViPWZ1bmN0aW9uKGEsYixjKXtiJiYwPGJbSV0mJihiPXRiKGIp
LGMmJjA8Y1tJXSYmKGIrPSJfX18iK3RiKGMpKSwyODxiW0ldJiYoYj1iW3hdKDAs
MjgpKyhiW0ldLTI4KSksYz1iLGI9UyhxYiwiX3AiLFQoKSksUyhiLGMsVCgpKVth
XT0obmV3IERhdGUpW29hXSgpLHJiKGEsIl9wIixjKSl9LHRiPWZ1bmN0aW9uKGEp
e3JldHVybiBhW1BdKCJfXyIpW3NdKC9cLi9nLCJfIilbc10oL1wtL2csIl8iKVtz
XSgvXCwvZywiXyIpfTt2YXIgdmI9VCgpLHdiPVtdLHhiPWZ1bmN0aW9uKGEpe3Ro
cm93IEVycm9yKCJCYWQgaGludCIrKGE/IjogIithOiIiKSk7fTt3YltGXShbImpz
bCIsZnVuY3Rpb24oYSl7Zm9yKHZhciBiIGluIGEpaWYoVShhLGIpKXt2YXIgYz1h
W2JdOyJvYmplY3QiPT10eXBlb2YgYz9ZW2JdPVMoWSxiLFtdKVtrYV0oYyk6UyhZ
LGIsYyl9aWYoYj1hLnUpYT1TKFksInVzIixbXSksYVtGXShiKSwoYj0vXmh0dHBz
OiguKikkL1tpYV0oYikpJiZhW0ZdKCJodHRwOiIrYlsxXSl9XSk7dmFyIHliPS9e
KFwvW2EtekEtWjAtOV9cLV0rKSskLyx6Yj0vXlthLXpBLVowLTlcLV9cLiwhXSsk
LyxBYj0vXmdhcGlcLmxvYWRlZF9bMC05XSskLyxCYj0vXlthLXpBLVowLTksLl8t
XSskLyxGYj1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hW3pdKCI7IiksZj12Yltl
W2hhXSgpXSxnPW51bGw7ZiYmKGc9ZihlLGIsYyxkKSk7aWYoYj1nKWI9ZyxjPWJb
bWFdKENiKSxkPWJbbWFdKERiKSxiPSEhZCYmMT09PWRbSV0mJkViW0ddKGIpJiYh
IWMmJjE9PT1jW0ldO2J8fHhiKGEpO3JldHVybiBnfSxJYj1mdW5jdGlvbihhLGIs
YyxkKXthPUdiKGEpO0FiW0ddKGMpfHx4YigiaW52YWxpZF9jYWxsYmFjayIpO2I9
SGIoYik7ZD1kJiZkW0ldP0hiKGQpOm51bGw7dmFyIGU9ZnVuY3Rpb24oYSl7cmV0
dXJuIGFhKGEpW3NdKC8lMkMvZywiLCIpfTtyZXR1cm5bYWEoYS5UKVtzXSgvJTJD
L2csIiwiKVtzXSgvJTJGL2csIi8iKSwiL2s9IixlKGEudmVyc2lvbiksIi9tPSIs
ZShiKSxkPyIvZXhtPSIrCmUoZCk6IiIsIi9ydD1qL3N2PTEvZD0xL2VkPTEiLGEu
Sj8iL2FtPSIrZShhLkopOiIiLGEuSz8iL3JzPSIrZShhLkspOiIiLCIvY2I9Iixl
KGMpXVtQXSgiIil9LEdiPWZ1bmN0aW9uKGEpeyIvIiE9PWFbbGFdKDApJiZ4Yigi
cmVsYXRpdmUgcGF0aCIpO2Zvcih2YXIgYj1hW0FhXSgxKVt6XSgiLyIpLGM9W107
YltJXTspe2E9YltoYV0oKTtpZighYVtJXXx8MD09YVtIXSgiLiIpKXhiKCJlbXB0
eS9yZWxhdGl2ZSBkaXJlY3RvcnkiKTtlbHNlIGlmKDA8YVtIXSgiPSIpKXtiLnVu
c2hpZnQoYSk7YnJlYWt9Y1tGXShhKX1hPXt9O2Zvcih2YXIgZD0wLGU9YltJXTtk
PGU7KytkKXt2YXIgZj1iW2RdW3pdKCI9IiksZz1lYShmWzBdKSxoPWVhKGZbMV0p
OzI9PWZbSV0mJmcmJmgmJihhW2ddPWFbZ118fGgpfWI9Ii8iK2NbUF0oIi8iKTt5
YltHXShiKXx8eGIoImludmFsaWRfcHJlZml4Iik7Yz1KYihhLCJrIiwhMCk7ZD1K
YihhLCJhbSIpO2E9SmIoYSwicnMiKTtyZXR1cm57VDpiLHZlcnNpb246YywKSjpk
LEs6YX19LEhiPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD1hW0ldO2M8
ZDsrK2Mpe3ZhciBlPWFbY11bc10oL1wuL2csIl8iKVtzXSgvLS9nLCJfIik7QmJb
R10oZSkmJmJbRl0oZSl9cmV0dXJuIGJbUF0oIiwiKX0sSmI9ZnVuY3Rpb24oYSxi
LGMpe2E9YVtiXTshYSYmYyYmeGIoIm1pc3Npbmc6ICIrYik7aWYoYSl7aWYoemJb
R10oYSkpcmV0dXJuIGE7eGIoImludmFsaWQ6ICIrYil9cmV0dXJuIG51bGx9LEVi
PS9eaHR0cHM/OlwvXC9bYS16MC05Xy4tXStcLmdvb2dsZVwuY29tKDpcZCspP1wv
W2EtekEtWjAtOV8uLCE9XC1cL10rJC8sRGI9L1wvY2I9L2csQ2I9L1wvXC8vZyxL
Yj1mdW5jdGlvbigpe3ZhciBhPWliKEhhW0RdKTtpZighYSl0aHJvdyBFcnJvcigi
QmFkIGhpbnQiKTtyZXR1cm4gYX07CnZiLm09ZnVuY3Rpb24oYSxiLGMsZCl7KGE9
YVswXSl8fHhiKCJtaXNzaW5nX2hpbnQiKTtyZXR1cm4iaHR0cHM6Ly9hcGlzLmdv
b2dsZS5jb20iK0liKGEsYixjLGQpfTt2YXIgTGI9ZGVjb2RlVVJJKCIlNzNjcmlw
dCIpLE1iPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGFbSV07Kytk
KXt2YXIgZT1hW2RdO2UmJjA+S2FbTF0oYixlKSYmY1tGXShlKX1yZXR1cm4gY30s
T2I9ZnVuY3Rpb24oYSl7ImxvYWRpbmciIT1SLnJlYWR5U3RhdGU/TmIoYSk6Ui53
cml0ZSgiPCIrTGIrJyBzcmM9IicrZW5jb2RlVVJJKGEpKyciPjwvJytMYisiPiIp
fSxOYj1mdW5jdGlvbihhKXt2YXIgYj1SW3RdKExiKTtiW3ZdKCJzcmMiLGEpO2Iu
YXN5bmM9InRydWUiOyhhPVJbcGFdKExiKVswXSk/YVtPXS5pbnNlcnRCZWZvcmUo
YixhKTooUi5oZWFkfHxSLmJvZHl8fFIuZG9jdW1lbnRFbGVtZW50KVtnYV0oYil9
LFBiPWZ1bmN0aW9uKGEsYil7dmFyIGM9YiYmYi5fYztpZihjKWZvcih2YXIgZD0w
O2Q8d2JbSV07ZCsrKXt2YXIgZT13YltkXVswXSxmPXdiW2RdWzFdO2YmJlUoYyxl
KSYmZihjW2VdLGEsYil9fSxSYj1mdW5jdGlvbihhLGIpe1FiKGZ1bmN0aW9uKCl7
dmFyIGM7CmM9Yj09PWliKEhhW0RdKT9TKFcsIl8iLFQoKSk6VCgpO2M9UyhuYihi
KSwiXyIsYyk7YShjKX0pfSxUYj1mdW5jdGlvbihhLGIpe3ZhciBjPWJ8fHt9OyJm
dW5jdGlvbiI9PXR5cGVvZiBiJiYoYz17fSxjLmNhbGxiYWNrPWIpO1BiKGEsYyk7
dmFyIGQ9YT9hW3pdKCI6Iik6W10sZT1jLmh8fEtiKCksZj1TKFksImFoIixUKCkp
O2lmKGZbIjo6Il0mJmRbSV0pe2Zvcih2YXIgZz1bXSxoPW51bGw7aD1kW2hhXSgp
Oyl7dmFyIGw9aFt6XSgiLiIpLGw9ZltoXXx8ZltsWzFdJiYibnM6IitsWzBdfHwi
Il18fGUsbj1nW0ldJiZnW2dbSV0tMV18fG51bGwsbT1uO24mJm4uaGludD09bHx8
KG09e2hpbnQ6bCxNOltdfSxnW0ZdKG0pKTttLk1bRl0oaCl9dmFyIHA9Z1tJXTtp
ZigxPHApe3ZhciB3PWMuY2FsbGJhY2s7dyYmKGMuY2FsbGJhY2s9ZnVuY3Rpb24o
KXswPT0tLXAmJncoKX0pfWZvcig7ZD1nW2hhXSgpOylTYihkLk0sYyxkLmhpbnQp
fWVsc2UgU2IoZHx8W10sYyxlKX0sU2I9ZnVuY3Rpb24oYSwKYixjKXthPUxhKGEp
fHxbXTt2YXIgZD1iLmNhbGxiYWNrLGU9Yi5jb25maWcsZj1iLnRpbWVvdXQsZz1i
Lm9udGltZW91dCxoPW51bGwsbD0hMTtpZihmJiYhZ3x8IWYmJmcpdGhyb3ciVGlt
ZW91dCByZXF1aXJlcyBib3RoIHRoZSB0aW1lb3V0IHBhcmFtZXRlciBhbmQgb250
aW1lb3V0IHBhcmFtZXRlciB0byBiZSBzZXQiO3ZhciBuPVMobmIoYyksInIiLFtd
KS5zb3J0KCksbT1TKG5iKGMpLCJMIixbXSkuc29ydCgpLHA9W11ba2FdKG4pLHc9
ZnVuY3Rpb24oYSxiKXtpZihsKXJldHVybiAwO1EuY2xlYXJUaW1lb3V0KGgpO21b
Rl1bRV0obSxDKTt2YXIgZD0oKFd8fHt9KS5jb25maWd8fHt9KVtDYV07ZD9kKGUp
OmUmJlMoWSwiY3UiLFtdKVtGXShlKTtpZihiKXt1YigibWUwIixhLHApO3RyeXtS
YihiLGMpfWZpbmFsbHl7dWIoIm1lMSIsYSxwKX19cmV0dXJuIDF9OzA8ZiYmKGg9
US5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bD0hMDtnKCl9LGYpKTt2YXIgQz1NYihh
LG0pO2lmKENbSV0pe3ZhciBDPQpNYihhLG4pLHU9UyhZLCJDUCIsW10pLEo9dVtJ
XTt1W0pdPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiAwO3ViKCJtbDEiLEMscCk7
dmFyIGI9ZnVuY3Rpb24oYil7dVtKXT1udWxsO3coQyxhKSYmbGIoZnVuY3Rpb24o
KXtkJiZkKCk7YigpfSl9LGM9ZnVuY3Rpb24oKXt2YXIgYT11W0orMV07YSYmYSgp
fTswPEomJnVbSi0xXT91W0pdPWZ1bmN0aW9uKCl7YihjKX06YihjKX07aWYoQ1tJ
XSl7dmFyIG1iPSJsb2FkZWRfIitZLkkrKztXW21iXT1mdW5jdGlvbihhKXt1W0pd
KGEpO1dbbWJdPW51bGx9O2E9RmIoYyxDLCJnYXBpLiIrbWIsbik7bltGXVtFXShu
LEMpO3ViKCJtbDAiLEMscCk7Yi5zeW5jfHxRLl9fX2dhcGlzeW5jP09iKGEpOk5i
KGEpfWVsc2UgdVtKXShJYSl9ZWxzZSB3KEMpJiZkJiZkKCl9O3ZhciBRYj1mdW5j
dGlvbihhKXtpZihZLmhlZSYmMDxZLmhlbCl0cnl7cmV0dXJuIGEoKX1jYXRjaChi
KXtZLmhlbC0tLFRiKCJkZWJ1Z19lcnJvciIsZnVuY3Rpb24oKXt0cnl7ay5fX19q
c2wuaGVmbihiKX1jYXRjaChhKXt0aHJvdyBiO319KX1lbHNlIHJldHVybiBhKCl9
O1cubG9hZD1mdW5jdGlvbihhLGIpe3JldHVybiBRYihmdW5jdGlvbigpe3JldHVy
biBUYihhLGIpfSl9O3ZhciBVYj1mdW5jdGlvbihhKXt2YXIgYj1rLl9fX2pzbD1r
Ll9fX2pzbHx8e307YlthXT1iW2FdfHxbXTtyZXR1cm4gYlthXX0sVmI9ZnVuY3Rp
b24oYSl7dmFyIGI9ay5fX19qc2w9ay5fX19qc2x8fHt9O2IuY2ZnPSFhJiZiLmNm
Z3x8e307cmV0dXJuIGIuY2ZnfSxXYj1mdW5jdGlvbihhKXtyZXR1cm4ib2JqZWN0
Ij09PXR5cGVvZiBhJiYvXFtuYXRpdmUgY29kZVxdL1tHXShhW0ZdKX0sWGI9ZnVu
Y3Rpb24oYSxiKXtpZihiKWZvcih2YXIgYyBpbiBiKWIuaGFzT3duUHJvcGVydHko
YykmJihhW2NdJiZiW2NdJiYib2JqZWN0Ij09PXR5cGVvZiBhW2NdJiYib2JqZWN0
Ij09PXR5cGVvZiBiW2NdJiYhV2IoYVtjXSkmJiFXYihiW2NdKT9YYihhW2NdLGJb
Y10pOmJbY10mJiJvYmplY3QiPT09dHlwZW9mIGJbY10/KGFbY109V2IoYltjXSk/
W106e30sWGIoYVtjXSxiW2NdKSk6YVtjXT1iW2NdKX0sWWI9ZnVuY3Rpb24oYSl7
aWYoYSYmIS9eXHMrJC9bR10oYSkpe2Zvcig7MD09YVtOXShhW0ldLQoxKTspYT1h
W0FhXSgwLGFbSV0tMSk7dmFyIGI7dHJ5e2I9a1t3YV0ucGFyc2UoYSl9Y2F0Y2go
Yyl7fWlmKCJvYmplY3QiPT09dHlwZW9mIGIpcmV0dXJuIGI7dHJ5e2I9KG5ldyBG
dW5jdGlvbigicmV0dXJuICgiK2ErIlxuKSIpKSgpfWNhdGNoKGQpe31pZigib2Jq
ZWN0Ij09PXR5cGVvZiBiKXJldHVybiBiO3RyeXtiPShuZXcgRnVuY3Rpb24oInJl
dHVybiAoeyIrYSsiXG59KSIpKSgpfWNhdGNoKGUpe31yZXR1cm4ib2JqZWN0Ij09
PXR5cGVvZiBiP2I6e319fSxaYj1mdW5jdGlvbihhKXtWYighMCk7dmFyIGI9ay5f
X19nY2ZnLGM9VWIoImN1Iik7aWYoYiYmYiE9PWsuX19fZ3Upe3ZhciBkPXt9O1hi
KGQsYik7Y1tGXShkKTtrLl9fX2d1PWJ9dmFyIGI9VWIoImN1IiksZT1xLnNjcmlw
dHN8fHFbcGFdKCJzY3JpcHQiKXx8W10sZD1bXSxmPVtdO2ZbRl1bRV0oZixVYigi
dXMiKSk7Zm9yKHZhciBnPTA7ZzxlW0ldOysrZylmb3IodmFyIGg9ZVtnXSxsPTA7
bDxmW0ldOysrbCloLnNyYyYmCjA9PWguc3JjW0hdKGZbbF0pJiZkW0ZdKGgpOzA9
PWRbSV0mJjA8ZVtJXSYmZVtlW0ldLTFdLnNyYyYmZFtGXShlW2VbSV0tMV0pO2Zv
cihlPTA7ZTxkW0ldOysrZSlkW2VdW01dKCJnYXBpX3Byb2Nlc3NlZCIpfHwoZFtl
XVt2XSgiZ2FwaV9wcm9jZXNzZWQiLCEwKSwoZj1kW2VdKT8oZz1mLm5vZGVUeXBl
LGY9Mz09Z3x8ND09Zz9mLm5vZGVWYWx1ZTpmLnRleHRDb250ZW50fHxmLmlubmVy
VGV4dHx8Zi5pbm5lckhUTUx8fCIiKTpmPXZvaWQgMCwoZj1ZYihmKSkmJmJbRl0o
ZikpO2EmJihkPXt9LFhiKGQsYSksY1tGXShkKSk7ZD1VYigiY2QiKTthPTA7Zm9y
KGI9ZFtJXTthPGI7KythKVhiKFZiKCksZFthXSk7ZD1VYigiY2kiKTthPTA7Zm9y
KGI9ZFtJXTthPGI7KythKVhiKFZiKCksZFthXSk7YT0wO2ZvcihiPWNbSV07YTxi
OysrYSlYYihWYigpLGNbYV0pfSxaPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBW
YigpO2E9YVt6XSgiLyIpO2Zvcih2YXIgYj1WYigpLGM9MCxkPWFbSV07YiYmCiJv
YmplY3QiPT09dHlwZW9mIGImJmM8ZDsrK2MpYj1iW2FbY11dO3JldHVybiBjPT09
YVtJXSYmdm9pZCAwIT09Yj9iOnZvaWQgMH0sJGI9ZnVuY3Rpb24oYSxiKXt2YXIg
Yz1hO2lmKCJzdHJpbmciPT09dHlwZW9mIGEpe2Zvcih2YXIgZD1jPXt9LGU9YVt6
XSgiLyIpLGY9MCxnPWVbSV07ZjxnLTE7KytmKXZhciBoPXt9LGQ9ZFtlW2ZdXT1o
O2RbZVtmXV09Yn1aYihjKX07dmFyIGFjPWZ1bmN0aW9uKCl7dmFyIGE9ay5fX0dP
T0dMRUFQSVM7YSYmKGEuZ29vZ2xlYXBpcyYmIWFbImdvb2dsZWFwaXMuY29uZmln
Il0mJihhWyJnb29nbGVhcGlzLmNvbmZpZyJdPWEuZ29vZ2xlYXBpcyksUyhZLCJj
aSIsW10pW0ZdKGEpLGsuX19HT09HTEVBUElTPXZvaWQgMCl9O3ZhciBiYz17YXBw
cGFja2FnZW5hbWU6MSxjYWxsYmFjazoxLGNsaWVudGlkOjEsY29va2llcG9saWN5
OjEsb3BlbmlkcmVhbG06LTEsaW5jbHVkZWdyYW50ZWRzY29wZXM6LTEscmVxdWVz
dHZpc2libGVhY3Rpb25zOjEsc2NvcGU6MX0sY2M9ITEsZGM9VCgpLGVjPWZ1bmN0
aW9uKCl7aWYoIWNjKXtmb3IodmFyIGE9cVtwYV0oIm1ldGEiKSxiPTA7YjxhW0ld
OysrYil7dmFyIGM9YVtiXS5uYW1lW0RhXSgpO2lmKDA9PWMubGFzdEluZGV4T2Yo
Imdvb2dsZS1zaWduaW4tIiwwKSl7dmFyIGM9Y1tBYV0oMTQpLGQ9YVtiXS5jb250
ZW50O2JjW2NdJiZkJiYoZGNbY109ZCl9fWlmKGsuc2VsZiE9PWsudG9wKXt2YXIg
YT1xW0FdW3ldKCksZTtmb3IoZSBpbiBiYykwPGJjW2VdJiYoYj1YKGEsZSwiIikp
JiYoZGNbZV09Yil9Y2M9ITB9ZT1UKCk7VihkYyxlKTtyZXR1cm4gZX0sZmM9ZnVu
Y3Rpb24oYSl7cmV0dXJuISEoYS5jbGllbnRpZCYmYS5zY29wZSYmYS5jYWxsYmFj
ayl9O3ZhciBnYz1rLmNvbnNvbGUsaGM9ZnVuY3Rpb24oYSl7Z2MmJmdjLmxvZyYm
Z2MubG9nKGEpfTt2YXIgaWM9ZnVuY3Rpb24oKXtyZXR1cm4hIVkub2F9LGpjPWZ1
bmN0aW9uKCl7fTt2YXIgJD1TKFksInJ3IixUKCkpLGtjPWZ1bmN0aW9uKGEpe2Zv
cih2YXIgYiBpbiAkKWEoJFtiXSl9LGxjPWZ1bmN0aW9uKGEsYil7dmFyIGM9JFth
XTtjJiZjLnN0YXRlPGImJihjLnN0YXRlPWIpfTt2YXIgbWM7dmFyIG5jPS9eaHR0
cHM/OlwvXC8oPzpcd3xbXC1cLl0pK1wuZ29vZ2xlXC4oPzpcd3xbXC06XC5dKSso
PzpcL1teXD9cI10qKT9cL3VcLyhcZClcLy8sb2M9L15odHRwcz86XC9cLyg/Olx3
fFtcLVwuXSkrXC5nb29nbGVcLig/Olx3fFtcLTpcLl0pKyg/OlwvW15cP1wjXSop
P1wvYlwvKFxkezEwLH0pXC8vLHBjPWZ1bmN0aW9uKGEpe3ZhciBiPVooImdvb2ds
ZWFwaXMuY29uZmlnL3Nlc3Npb25JbmRleCIpO251bGw9PWImJihiPWsuX19YX0dP
T0dfQVVUSFVTRVIpO2lmKG51bGw9PWIpe3ZhciBjPWsuZ29vZ2xlO2MmJihiPWMu
YXV0aHVzZXIpfW51bGw9PWImJihhPWF8fGtbQV1bRF0sYj1YKGEsImF1dGh1c2Vy
Iil8fG51bGwsbnVsbD09YiYmKGI9KGI9YVttYV0obmMpKT9iWzFdOm51bGwpKTty
ZXR1cm4gbnVsbD09Yj9udWxsOnIoYil9LHFjPWZ1bmN0aW9uKGEpe3ZhciBiPVoo
Imdvb2dsZWFwaXMuY29uZmlnL3Nlc3Npb25EZWxlZ2F0ZSIpO251bGw9PWImJihi
PShhPShhfHxrW0FdW0RdKVttYV0ob2MpKT8KYVsxXTpudWxsKTtyZXR1cm4gbnVs
bD09Yj9udWxsOnIoYil9O3ZhciByYz1mdW5jdGlvbigpe3RoaXMuYz0tMX07dmFy
IHNjPWZ1bmN0aW9uKCl7dGhpcy5jPS0xO3RoaXMuYz02NDt0aGlzLmI9W107dGhp
cy5wPVtdO3RoaXMuTj1bXTt0aGlzLm49W107dGhpcy5uWzBdPTEyODtmb3IodmFy
IGE9MTthPHRoaXMuYzsrK2EpdGhpcy5uW2FdPTA7dGhpcy5sPXRoaXMuZz0wO3Ro
aXMucmVzZXQoKX07KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe31hLnByb3RvdHlw
ZT1yY1tLXTtzYy4kPXJjW0tdO3NjLnByb3RvdHlwZT1uZXcgYTtzYy5IPWZ1bmN0
aW9uKGEsYyxkKXtyZXR1cm4gcmNbS11bY11bRV0oYSxjYVtLXVt1YV1bTF0oYXJn
dW1lbnRzLDIpKX19KSgpO3NjW0tdLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5iWzBd
PTE3MzI1ODQxOTM7dGhpcy5iWzFdPTQwMjMyMzM0MTc7dGhpcy5iWzJdPTI1NjIz
ODMxMDI7dGhpcy5iWzNdPTI3MTczMzg3ODt0aGlzLmJbNF09MzI4NTM3NzUyMDt0
aGlzLmw9dGhpcy5nPTB9Owp2YXIgdGM9ZnVuY3Rpb24oYSxiLGMpe2N8fChjPTAp
O3ZhciBkPWEuTjtpZigic3RyaW5nIj09dHlwZW9mIGIpZm9yKHZhciBlPTA7MTY+
ZTtlKyspZFtlXT1iW05dKGMpPDwyNHxiW05dKGMrMSk8PDE2fGJbTl0oYysyKTw8
OHxiW05dKGMrMyksYys9NDtlbHNlIGZvcihlPTA7MTY+ZTtlKyspZFtlXT1iW2Nd
PDwyNHxiW2MrMV08PDE2fGJbYysyXTw8OHxiW2MrM10sYys9NDtmb3IoZT0xNjs4
MD5lO2UrKyl7dmFyIGY9ZFtlLTNdXmRbZS04XV5kW2UtMTRdXmRbZS0xNl07ZFtl
XT0oZjw8MXxmPj4+MzEpJjQyOTQ5NjcyOTV9Yj1hLmJbMF07Yz1hLmJbMV07Zm9y
KHZhciBnPWEuYlsyXSxoPWEuYlszXSxsPWEuYls0XSxuLGU9MDs4MD5lO2UrKyk0
MD5lPzIwPmU/KGY9aF5jJihnXmgpLG49MTUxODUwMDI0OSk6KGY9Y15nXmgsbj0x
ODU5Nzc1MzkzKTo2MD5lPyhmPWMmZ3xoJihjfGcpLG49MjQwMDk1OTcwOCk6KGY9
Y15nXmgsbj0zMzk1NDY5NzgyKSxmPShiPDw1fGI+Pj4yNykrZisKbCtuK2RbZV0m
NDI5NDk2NzI5NSxsPWgsaD1nLGc9KGM8PDMwfGM+Pj4yKSY0Mjk0OTY3Mjk1LGM9
YixiPWY7YS5iWzBdPWEuYlswXStiJjQyOTQ5NjcyOTU7YS5iWzFdPWEuYlsxXStj
JjQyOTQ5NjcyOTU7YS5iWzJdPWEuYlsyXStnJjQyOTQ5NjcyOTU7YS5iWzNdPWEu
YlszXStoJjQyOTQ5NjcyOTU7YS5iWzRdPWEuYls0XStsJjQyOTQ5NjcyOTV9Owpz
Y1tLXS51cGRhdGU9ZnVuY3Rpb24oYSxiKXt2b2lkIDA9PT1iJiYoYj1hW0ldKTtm
b3IodmFyIGM9Yi10aGlzLmMsZD0wLGU9dGhpcy5wLGY9dGhpcy5nO2Q8Yjspe2lm
KDA9PWYpZm9yKDtkPD1jOyl0Yyh0aGlzLGEsZCksZCs9dGhpcy5jO2lmKCJzdHJp
bmciPT10eXBlb2YgYSlmb3IoO2Q8Yjspe2lmKGVbZl09YVtOXShkKSwrK2YsKytk
LGY9PXRoaXMuYyl7dGModGhpcyxlKTtmPTA7YnJlYWt9fWVsc2UgZm9yKDtkPGI7
KWlmKGVbZl09YVtkXSwrK2YsKytkLGY9PXRoaXMuYyl7dGModGhpcyxlKTtmPTA7
YnJlYWt9fXRoaXMuZz1mO3RoaXMubCs9Yn07dmFyIHVjPWZ1bmN0aW9uKCl7dGhp
cy5xPW5ldyBzY307dWNbS10ucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLnEucmVzZXQo
KX07dmFyIEJjPWZ1bmN0aW9uKCl7dmFyIGE7dmM/KGE9bmV3IFEuVWludDMyQXJy
YXkoMSksd2MuZ2V0UmFuZG9tVmFsdWVzKGEpLGE9TnVtYmVyKCIwLiIrYVswXSkp
OihhPXhjLGErPWRhKHljW3hdKDAsMjApLDE2KSx5Yz16Yyh5YyksYS89QWMrTWF0
aC5wb3coMTYsMjApKTtyZXR1cm4gYX0sd2M9US5jcnlwdG8sdmM9ITEsQ2M9MCxE
Yz0wLHhjPTEsQWM9MCx5Yz0iIixFYz1mdW5jdGlvbihhKXthPWF8fFEuZXZlbnQ7
dmFyIGI9YS5zY3JlZW5YK2EuY2xpZW50WDw8MTYsYj1iKyhhLnNjcmVlblkrYS5j
bGllbnRZKSxiPShuZXcgRGF0ZSlbb2FdKCklMUU2KmI7eGM9eGMqYiVBYzswPENj
JiYrK0RjPT1DYyYmYmIoIm1vdXNlbW92ZSIsRWMsInJlbW92ZSIsImRlIil9LHpj
PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyB1YzthPXVuZXNjYXBlKGFhKGEpKTtmb3Io
dmFyIGM9W10sZD0wLGU9YVtJXTtkPGU7KytkKWNbRl0oYVtOXShkKSk7Yi5xW0Nh
XShjKTthPWIucTtiPVtdO2Q9OCphLmw7CjU2PmEuZz9hW0NhXShhLm4sNTYtYS5n
KTphW0NhXShhLm4sYS5jLShhLmctNTYpKTtmb3IoYz1hLmMtMTs1Njw9YztjLS0p
YS5wW2NdPWQmMjU1LGQvPTI1Njt0YyhhLGEucCk7Zm9yKGM9ZD0wOzU+YztjKysp
Zm9yKGU9MjQ7MDw9ZTtlLT04KWJbZF09YS5iW2NdPj5lJjI1NSwrK2Q7YT0iIjtm
b3IoYz0wO2M8YltJXTtjKyspYSs9IjAxMjM0NTY3ODlBQkNERUYiW2xhXShNYXRo
LmZsb29yKGJbY10vMTYpKSsiMDEyMzQ1Njc4OUFCQ0RFRiJbbGFdKGJbY10lMTYp
O3JldHVybiBhfSx2Yz0hIXdjJiYiZnVuY3Rpb24iPT10eXBlb2Ygd2MuZ2V0UmFu
ZG9tVmFsdWVzOwp2Y3x8KEFjPTFFNiooc2NyZWVuW2phXSpzY3JlZW5bamFdK3Nj
cmVlblt0YV0pLHljPXpjKFIuY29va2llKyJ8IitSW0FdKyJ8IisobmV3IERhdGUp
W29hXSgpKyJ8IitNYXRoLnJhbmRvbSgpKSxDYz1aKCJyYW5kb20vbWF4T2JzZXJ2
ZU1vdXNlbW92ZSIpfHwwLDAhPUNjJiZiYigibW91c2Vtb3ZlIixFYywiYWRkIiwi
YXQiKSk7dmFyIEZjPWZ1bmN0aW9uKCl7dmFyIGE9WS5vbmw7aWYoIWEpe2E9VCgp
O1kub25sPWE7dmFyIGI9VCgpO2EuZT1mdW5jdGlvbihhKXt2YXIgZD1iW2FdO2Qm
JihkZWxldGUgYlthXSxkKCkpfTthLmE9ZnVuY3Rpb24oYSxkKXtiW2FdPWR9O2Eu
cj1mdW5jdGlvbihhKXtkZWxldGUgYlthXX19cmV0dXJuIGF9LEdjPWZ1bmN0aW9u
KGEsYil7dmFyIGM9Yi5vbmxvYWQ7cmV0dXJuImZ1bmN0aW9uIj09PXR5cGVvZiBj
PyhGYygpLmEoYSxjKSxjKTpudWxsfSxIYz1mdW5jdGlvbihhKXtVYSgvXlx3KyQv
W0ddKGEpLCJVbnN1cHBvcnRlZCBpZCAtICIrYSk7RmMoKTtyZXR1cm4nb25sb2Fk
PSJ3aW5kb3cuX19fanNsLm9ubC5lKCYjMzQ7JythKycmIzM0OykiJ30sSWM9ZnVu
Y3Rpb24oYSl7RmMoKS5yKGEpfTt2YXIgSmM9e2FsbG93dHJhbnNwYXJlbmN5OiJ0
cnVlIixmcmFtZWJvcmRlcjoiMCIsaHNwYWNlOiIwIixtYXJnaW5oZWlnaHQ6IjAi
LG1hcmdpbndpZHRoOiIwIixzY3JvbGxpbmc6Im5vIixzdHlsZToiIix0YWJpbmRl
eDoiMCIsdnNwYWNlOiIwIix3aWR0aDoiMTAwJSJ9LEtjPXthbGxvd3RyYW5zcGFy
ZW5jeTohMCxvbmxvYWQ6ITB9LExjPTAsTWM9ZnVuY3Rpb24oYSl7VWEoIWF8fGFi
W0ddKGEpLCJJbGxlZ2FsIHVybCBmb3IgbmV3IGlmcmFtZSAtICIrYSl9LE5jPWZ1
bmN0aW9uKGEsYixjLGQsZSl7TWMoYy5zcmMpO3ZhciBmLGc9R2MoZCxjKSxoPWc/
SGMoZCk6IiI7dHJ5e2Y9YVt0XSgnPGlmcmFtZSBmcmFtZWJvcmRlcj0iJytSYShy
KGMuZnJhbWVib3JkZXIpKSsnIiBzY3JvbGxpbmc9IicrUmEocihjLnNjcm9sbGlu
ZykpKyciICcraCsnIG5hbWU9IicrUmEocihjLm5hbWUpKSsnIi8+Jyl9Y2F0Y2go
bCl7Zj1hW3RdKCJpZnJhbWUiKSxnJiYoZi5vbmxvYWQ9ZnVuY3Rpb24oKXtmLm9u
bG9hZD0KbnVsbDtnW0xdKHRoaXMpfSxJYyhkKSl9Zm9yKHZhciBuIGluIGMpYT1j
W25dLCJzdHlsZSI9PT1uJiYib2JqZWN0Ij09PXR5cGVvZiBhP1YoYSxmW0JdKTpL
Y1tuXXx8Zlt2XShuLHIoYSkpOyhuPWUmJmUuYmVmb3JlTm9kZXx8bnVsbCl8fGUm
JmUuZG9udGNsZWFyfHxnYihiKTtiLmluc2VydEJlZm9yZShmLG4pO2Y9bj9uLnBy
ZXZpb3VzU2libGluZzpiLmxhc3RDaGlsZDtjLmFsbG93dHJhbnNwYXJlbmN5JiYo
Zi5hbGxvd1RyYW5zcGFyZW5jeT0hMCk7cmV0dXJuIGZ9O3ZhciBPYz0vXjpbXHdd
KyQvLFBjPS86KFthLXpBLVpfXSspOi9nLFFjPWZ1bmN0aW9uKCl7dmFyIGE9cGMo
KXx8IjAiLGI9cWMoKSxjO2M9cGModm9pZCAwKXx8YTt2YXIgZD1xYyh2b2lkIDAp
LGU9IiI7YyYmKGUrPSJ1LyIrYysiLyIpO2QmJihlKz0iYi8iK2QrIi8iKTtjPWV8
fG51bGw7KGU9KGQ9ITE9PT1aKCJpc0xvZ2dlZEluIikpPyJfL2ltLyI6IiIpJiYo
Yz0iIik7dmFyIGY9WigiaWZyYW1lcy86c29jaWFsaG9zdDoiKSxnPVooImlmcmFt
ZXMvOmltX3NvY2lhbGhvc3Q6Iik7cmV0dXJuIG1jPXtzb2NpYWxob3N0OmYsY3R4
X3NvY2lhbGhvc3Q6ZD9nOmYsc2Vzc2lvbl9pbmRleDphLHNlc3Npb25fZGVsZWdh
dGU6YixzZXNzaW9uX3ByZWZpeDpjLGltX3ByZWZpeDplfX0sUmM9ZnVuY3Rpb24o
YSxiKXtyZXR1cm4gUWMoKVtiXXx8IiJ9LFNjPWZ1bmN0aW9uKGEpe3JldHVybiBm
dW5jdGlvbihiLGMpe3JldHVybiBhP1FjKClbY118fGFbY118fCIiOlFjKClbY118
fCIifX07dmFyIFRjPXsiXGIiOiJcXGIiLCJcdCI6IlxcdCIsIlxuIjoiXFxuIiwi
XGYiOiJcXGYiLCJcciI6IlxcciIsJyInOidcXCInLCJcXCI6IlxcXFwifSxVYz1m
dW5jdGlvbihhKXt2YXIgYixjLGQ7Yj0vW1wiXFxceDAwLVx4MWZceDdmLVx4OWZd
L2c7aWYodm9pZCAwIT09YSl7c3dpdGNoKHR5cGVvZiBhKXtjYXNlICJzdHJpbmci
OnJldHVybiBiW0ddKGEpPyciJythW3NdKGIsZnVuY3Rpb24oYSl7dmFyIGI9VGNb
YV07aWYoYilyZXR1cm4gYjtiPWFbTl0oKTtyZXR1cm4iXFx1MDAiK01hdGguZmxv
b3IoYi8xNilbeV0oMTYpKyhiJTE2KVt5XSgxNil9KSsnIic6JyInK2ErJyInO2Nh
c2UgIm51bWJlciI6cmV0dXJuIGlzRmluaXRlKGEpP3IoYSk6Im51bGwiO2Nhc2Ug
ImJvb2xlYW4iOmNhc2UgIm51bGwiOnJldHVybiByKGEpO2Nhc2UgIm9iamVjdCI6
aWYoIWEpcmV0dXJuIm51bGwiO2I9W107aWYoIm51bWJlciI9PT10eXBlb2YgYVtJ
XSYmIWEucHJvcGVydHlJc0VudW1lcmFibGUoImxlbmd0aCIpKXtkPQphW0ldO2Zv
cihjPTA7YzxkO2MrPTEpYltGXShVYyhhW2NdKXx8Im51bGwiKTtyZXR1cm4iWyIr
YltQXSgiLCIpKyJdIn1mb3IoYyBpbiBhKSEvX19fJC9bR10oYykmJlUoYSxjKSYm
InN0cmluZyI9PT10eXBlb2YgYyYmKGQ9VWMoYVtjXSkpJiZiW0ZdKFVjKGMpKyI6
IitkKTtyZXR1cm4ieyIrYltQXSgiLCIpKyJ9In1yZXR1cm4iIn19LFZjPWZ1bmN0
aW9uKGEpe2lmKCFhKXJldHVybiExO2lmKC9eW1xdLDp7fVxzXSokL1tHXShhW3Nd
KC9cXFsiXFxcL2ItdV0vZywiQCIpW3NdKC8iW14iXFxcblxyXSoifHRydWV8ZmFs
c2V8bnVsbHwtP1xkKyg/OlwuXGQqKT8oPzpbZUVdWytcLV0/XGQrKT8vZywiXSIp
W3NdKC8oPzpefDp8LCkoPzpccypcWykrL2csIiIpKSl0cnl7cmV0dXJuIGV2YWwo
IigiK2ErIikiKX1jYXRjaChiKXt9cmV0dXJuITF9LFdjPSExO3RyeXtXYz0hIWtb
d2FdJiYnWyJhIl0nPT09a1t3YV0uc3RyaW5naWZ5KFsiYSJdKSYmImEiPT09a1t3
YV0ucGFyc2UoJ1siYSJdJylbMF19Y2F0Y2goWGMpe30KdmFyIFljPWZ1bmN0aW9u
KGEpe3RyeXtyZXR1cm4ga1t3YV0ucGFyc2UoYSl9Y2F0Y2goYil7cmV0dXJuITF9
fSxaYz1XYz9rW3dhXS5zdHJpbmdpZnk6VWMsJGM9V2M/WWM6VmM7dmFyIGFkPWZ1
bmN0aW9uKGEpe3ZhciBiO2FbbWFdKC9eaHR0cHM/JTNBL2kpJiYoYj1lYShhKSk7
cmV0dXJuICRhKHEsYj9iOmEpfSxiZD1mdW5jdGlvbihhKXthPWF8fCJjYW5vbmlj
YWwiO2Zvcih2YXIgYj1xW3BhXSgibGluayIpLGM9MCxkPWJbSV07YzxkO2MrKyl7
dmFyIGU9YltjXSxmPWVbTV0oInJlbCIpO2lmKGYmJmZbRGFdKCk9PWEmJihlPWVb
TV0oImhyZWYiKSkmJihlPWFkKGUpKSYmbnVsbCE9ZVttYV0oL15odHRwcz86XC9c
L1tcd1wtXF9cLl0rL2kpKXJldHVybiBlfXJldHVybiBrW0FdW0RdfTt2YXIgY2Q9
e3NlOiIwIn0sZGQ9e3Bvc3Q6ITB9LGVkPXtzdHlsZToicG9zaXRpb246YWJzb2x1
dGU7dG9wOi0xMDAwMHB4O3dpZHRoOjQ1MHB4O21hcmdpbjowcHg7Ym9yZGVyLXN0
eWxlOm5vbmUifSxmZD0ib25QbHVzT25lIF9yZWFkeSBfY2xvc2UgX29wZW4gX3Jl
c2l6ZU1lIF9yZW5kZXJzdGFydCBvbmNpcmNsZWQgZHJlZnJlc2ggZXJlZnJlc2gi
LnNwbGl0KCIgIiksZ2Q9UyhZLCJXSSIsVCgpKSxoZD1mdW5jdGlvbihhLGIsYyl7
dmFyIGQsZTtkPXt9O3ZhciBmPWU9YTsicGx1cyI9PWEmJmJbcmFdJiYoZT1hKyJf
IitiW3JhXSxmPWErIi8iK2JbcmFdKTsoZT1aKCJpZnJhbWVzLyIrZSsiL3VybCIp
KXx8KGU9IjppbV9zb2NpYWxob3N0Oi86c2Vzc2lvbl9wcmVmaXg6OmltX3ByZWZp
eDpfL3dpZGdldC9yZW5kZXIvIitmKyI/dXNlZ2FwaT0xIik7Zm9yKHZhciBnIGlu
IGNkKWRbZ109ZysiLyIrKGJbZ118fGNkW2ddKSsiLyI7ZD0kYShSLGVbc10oUGMs
U2MoZCkpKTtnPSJpZnJhbWVzLyIrCmErIi9wYXJhbXMvIjtmPXt9O1YoYixmKTso
ZT1aKCJsYW5nIil8fFooImd3aWRnZXQvbGFuZyIpKSYmKGYuaGw9ZSk7ZGRbYV18
fChmLm9yaWdpbj1rW0FdLm9yaWdpbnx8a1tBXVtxYV0rIi8vIitrW0FdLmhvc3Qp
O2YuZXhwPVooZysiZXhwIik7aWYoZz1aKGcrImxvY2F0aW9uIikpZm9yKGU9MDtl
PGdbSV07ZSsrKXt2YXIgaD1nW2VdO2ZbaF09UVtBXVtoXX1zd2l0Y2goYSl7Y2Fz
ZSAicGx1cyI6Y2FzZSAiZm9sbG93IjpnPWZbRF07ZT1iW3JhXT92b2lkIDA6InB1
Ymxpc2hlciI7Zz0oZz0ic3RyaW5nIj09dHlwZW9mIGc/Zzp2b2lkIDApP2FkKGcp
OmJkKGUpO2YudXJsPWc7ZGVsZXRlIGZbRF07YnJlYWs7Y2FzZSAicGx1c29uZSI6
Zz0oZz1iW0RdKT9hZChnKTpiZCgpO2YudXJsPWc7Zz1iLmRiO2U9WigpO251bGw9
PWcmJmUmJihnPWUuZGIsbnVsbD09ZyYmKGc9ZS5nd2lkZ2V0JiZlLmd3aWRnZXQu
ZGIpKTtmLmRiPWd8fHZvaWQgMDtnPWIuZWNwO2U9WigpO251bGw9PWcmJgplJiYo
Zz1lLmVjcCxudWxsPT1nJiYoZz1lLmd3aWRnZXQmJmUuZ3dpZGdldC5lY3ApKTtm
LmVjcD1nfHx2b2lkIDA7ZGVsZXRlIGZbRF07YnJlYWs7Y2FzZSAic2lnbmluIjpm
LnVybD1iZCgpfVkuSUxJJiYoZi5pbG9hZGVyPSIxIik7ZGVsZXRlIGZbImRhdGEt
b25sb2FkIl07ZGVsZXRlIGYucmQ7Zm9yKHZhciBsIGluIGNkKWZbbF0mJmRlbGV0
ZSBmW2xdO2YuZ3NyYz1aKCJpZnJhbWVzLzpzb3VyY2U6Iik7bD1aKCJpbmxpbmUv
Y3NzIik7InVuZGVmaW5lZCIhPT10eXBlb2YgbCYmMDxjJiZsPj1jJiYoZi5pYz0i
MSIpO2w9L14jfF5mci0vO2M9e307Zm9yKHZhciBuIGluIGYpVShmLG4pJiZsW0dd
KG4pJiYoY1tuW3NdKGwsIiIpXT1mW25dLGRlbGV0ZSBmW25dKTtuPSJxIj09Wigi
aWZyYW1lcy8iK2ErIi9wYXJhbXMvc2kiKT9mOmM7bD1lYygpO2Zvcih2YXIgbSBp
biBsKSFVKGwsbSl8fFUoZixtKXx8VShjLG0pfHwoblttXT1sW21dKTttPVtdW2th
XShmZCk7KG49WigiaWZyYW1lcy8iKwphKyIvbWV0aG9kcyIpKSYmIm9iamVjdCI9
PT10eXBlb2YgbiYmSmFbR10obltGXSkmJihtPW1ba2FdKG4pKTtmb3IodmFyIHAg
aW4gYilVKGIscCkmJi9eb24vW0ddKHApJiYoInBsdXMiIT1hfHwib25jb25uZWN0
IiE9cCkmJihtW0ZdKHApLGRlbGV0ZSBmW3BdKTtkZWxldGUgZi5jYWxsYmFjaztj
Ll9tZXRob2RzPW1bUF0oIiwiKTtyZXR1cm4gWmEoZCxmLGMpfSxpZD1bInN0eWxl
IiwiZGF0YS1nYXBpc2NhbiJdLGtkPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1UKCks
Yz0wIT1hW3hhXVtEYV0oKVtIXSgiZzoiKSxkPTAsZT1hW3NhXVtJXTtkPGU7ZCsr
KXt2YXIgZj1hW3NhXVtkXSxnPWYubmFtZSxoPWYudmFsdWU7MDw9S2FbTF0oaWQs
Zyl8fGMmJjAhPWdbSF0oImRhdGEtIil8fCJudWxsIj09PWh8fCJzcGVjaWZpZWQi
aW4gZiYmIWYuc3BlY2lmaWVkfHwoYyYmKGc9Z1t4XSg1KSksYltnW0RhXSgpXT1o
KX1hPWFbQl07KGM9amQoYSYmYVt0YV0pKSYmKGIuaGVpZ2h0PXIoYykpOyhhPQpq
ZChhJiZhW2phXSkpJiYoYi53aWR0aD1yKGEpKTtyZXR1cm4gYn0samQ9ZnVuY3Rp
b24oYSl7dmFyIGI9dm9pZCAwOyJudW1iZXIiPT09dHlwZW9mIGE/Yj1hOiJzdHJp
bmciPT09dHlwZW9mIGEmJihiPWRhKGEsMTApKTtyZXR1cm4gYn0sbWQ9ZnVuY3Rp
b24oKXt2YXIgYT1ZLmRydztrYyhmdW5jdGlvbihiKXtpZihhIT09Yi5pZCYmNCE9
Yi5zdGF0ZSYmInNoYXJlIiE9Ylt5YV0pe3ZhciBjPWIuaWQsZD1iW3lhXSxlPWIu
dXJsO2I9Yi51c2VyUGFyYW1zO3ZhciBmPVJbdmFdKGMpO2lmKGYpe3ZhciBnPWhk
KGQsYiwwKTtnPyhmPWZbT10sZVtzXSgvXCMuKi8sIiIpW3NdKC8oXD98JilpYz0x
LywiIikhPT1nW3NdKC9cIy4qLywiIilbc10oLyhcP3wmKWljPTEvLCIiKSYmKGIu
ZG9udGNsZWFyPSEwLGIucmQ9ITAsYi5yaT0hMCxmYShiLGQpLGxkKGYsYiksKGQ9
JFtmLmxhc3RDaGlsZC5pZF0pJiYoZC5vaWQ9YyksbGMoYyw0KSkpOmRlbGV0ZSAk
W2NdfWVsc2UgZGVsZXRlICRbY119fSl9O3ZhciBuZCxvZCxwZCxxZCxyZCxzZD0v
KD86XnxccylnLSgoXFMpKikoPzokfFxzKS8sdGQ9e3BsdXNvbmU6ITAsYXV0b2Nv
bXBsZXRlOiEwLHByb2ZpbGU6ITAsc2lnbmluOiEwfTtuZD1TKFksIlNXIixUKCkp
O29kPVMoWSwiU0EiLFQoKSk7cGQ9UyhZLCJTTSIsVCgpKTtxZD1TKFksIkZXIixb
XSk7cmQ9bnVsbDsKdmFyIHZkPWZ1bmN0aW9uKGEsYil7dWQodm9pZCAwLCExLGEs
Yil9LHVkPWZ1bmN0aW9uKGEsYixjLGQpe3NiKCJwczAiLCEwKTtjPSgic3RyaW5n
Ij09PXR5cGVvZiBjP3FbdmFdKGMpOmMpfHxSO3ZhciBlO2U9UltCYV07aWYoYy5x
dWVyeVNlbGVjdG9yQWxsJiYoIWV8fDg8ZSkpe2U9ZD9bZF06U2EobmQpW2thXShT
YShvZCkpW2thXShTYShwZCkpO2Zvcih2YXIgZj1bXSxnPTA7ZzxlW0ldO2crKyl7
dmFyIGg9ZVtnXTtmW0ZdKCIuZy0iK2gsImdcXDoiK2gpfWU9Yy5xdWVyeVNlbGVj
dG9yQWxsKGZbUF0oIiwiKSl9ZWxzZSBlPWNbcGFdKCIqIik7Yz1UKCk7Zm9yKGY9
MDtmPGVbSV07ZisrKXtnPWVbZl07dmFyIGw9ZyxoPWQsbj1sW3hhXVtEYV0oKSxt
PXZvaWQgMDtsW01dKCJkYXRhLWdhcGlzY2FuIik/aD1udWxsOigwPT1uW0hdKCJn
OiIpP209blt4XSgyKToobD0obD1yKGwuY2xhc3NOYW1lfHxsW01dKCJjbGFzcyIp
KSkmJnNkW2lhXShsKSkmJihtPWxbMV0pLGg9IW18fCEobmRbbV18fApvZFttXXx8
cGRbbV0pfHxoJiZtIT09aD9udWxsOm0pO2gmJih0ZFtoXXx8MD09Z1t4YV1bRGFd
KClbSF0oImc6Iil8fDAhPVNhKGtkKGcpKVtJXSkmJihnW3ZdKCJkYXRhLWdhcGlz
Y2FuIiwhMCksUyhjLGgsW10pW0ZdKGcpKX1pZihiKWZvcih2YXIgcCBpbiBjKWZv
cihiPWNbcF0sZD0wO2Q8YltJXTtkKyspYltkXVt2XSgiZGF0YS1vbmxvYWQiLCEw
KTtmb3IodmFyIHcgaW4gYylxZFtGXSh3KTtzYigicHMxIiwhMCk7aWYoKHA9cWRb
UF0oIjoiKSl8fGEpdHJ5e1cubG9hZChwLGEpfWNhdGNoKEMpe2hjKEMpO3JldHVy
bn1pZih3ZChyZHx8e30pKWZvcih2YXIgdSBpbiBjKXthPWNbdV07dz0wO2Zvcihi
PWFbSV07dzxiO3crKylhW3ddLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1nYXBpc2Nh
biIpO3hkKHUpfWVsc2V7ZD1bXTtmb3IodSBpbiBjKWZvcihhPWNbdV0sdz0wLGI9
YVtJXTt3PGI7dysrKWU9YVt3XSx5ZCh1LGUsa2QoZSksZCxiKTt6ZChwLGQpfX0s
QWQ9ZnVuY3Rpb24oYSl7dmFyIGI9ClMoVyxhLHt9KTtiLmdvfHwoYi5nbz1mdW5j
dGlvbihiKXtyZXR1cm4gdmQoYixhKX0sYi5yZW5kZXI9ZnVuY3Rpb24oYixkKXt2
YXIgZT1kfHx7fTtmYShlLGEpO3JldHVybiBsZChiLGUpfSl9LEJkPWZ1bmN0aW9u
KGEpe25kW2FdPSEwfSxDZD1mdW5jdGlvbihhKXtvZFthXT0hMH0sRGQ9ZnVuY3Rp
b24oYSl7cGRbYV09ITB9O3ZhciB4ZD1mdW5jdGlvbihhLGIpe3ZhciBjPWtiKGEp
O2ImJmM/KGMoYiksKGM9Yi5pZnJhbWVOb2RlKSYmY1t2XSgiZGF0YS1nYXBpYXR0
YWNoZWQiLCEwKSk6Vy5sb2FkKGEsZnVuY3Rpb24oKXt2YXIgYz1rYihhKSxlPWIm
JmIuaWZyYW1lTm9kZTtlJiZjPyhjKGIpLGVbdl0oImRhdGEtZ2FwaWF0dGFjaGVk
IiwhMCkpOigwLFdbYV0uZ28pKGUmJmVbT10pfSl9LHdkPWZ1bmN0aW9uKCl7cmV0
dXJuITF9LHpkPWZ1bmN0aW9uKCl7fSx5ZD1mdW5jdGlvbihhLGIsYyxkLGUsZil7
c3dpdGNoKEVkKGIsYSxmKSl7Y2FzZSAwOmE9cGRbYV0/YSsiX2Fubm90YXRpb24i
OmE7ZD17fTtkLmlmcmFtZU5vZGU9YjtkLnVzZXJQYXJhbXM9Yzt4ZChhLGQpO2Jy
ZWFrO2Nhc2UgMTp2YXIgZztpZihiW09dKXtmb3IodmFyIGggaW4gYyl7aWYoZj1V
KGMsaCkpZj1jW2hdLGY9ISFmJiYib2JqZWN0Ij09PXR5cGVvZiBmJiYoIWZbeV18
fGZbeV09PT1iYVtLXVt5XXx8Zlt5XT09PWNhW0tdW3ldKTtpZihmKXRyeXtjW2hd
PQpaYyhjW2hdKX1jYXRjaChsKXtkZWxldGUgY1toXX19dmFyIG49ITA7Yy5kb250
Y2xlYXImJihuPSExKTtkZWxldGUgYy5kb250Y2xlYXI7amMoKTtmPWhkKGEsYyxl
KTtoPXthbGxvd1Bvc3Q6MSxhdHRyaWJ1dGVzOmVkfTtoLmRvbnRjbGVhcj0hbjtl
PXt9O2UudXNlclBhcmFtcz1jO2UudXJsPWY7ZmEoZSxhKTt2YXIgbTtjLnJkP209
YjoobT1xW3RdKCJkaXYiKSxiW3ZdKCJkYXRhLWdhcGlzdHViIiwhMCksbVtCXS5j
c3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0NTBweDtsZWZ0Oi0xMDAw
MHB4OyIsYltPXS5pbnNlcnRCZWZvcmUobSxiKSk7ZS5zaXRlRWxlbWVudD1tO20u
aWR8fChiPW0sUyhnZCxhLDApLG49Il9fXyIrYSsiXyIrZ2RbYV0rKyxiLmlkPW4p
O2I9VCgpO2JbIj50eXBlIl09YTtWKGMsYik7bj1mO2M9bTtmPWh8fHt9O2I9Zltz
YV18fHt9O1VhKCFmLmFsbG93UG9zdHx8IWIub25sb2FkLCJvbmxvYWQgaXMgbm90
IHN1cHBvcnRlZCBieSBwb3N0IGlmcmFtZSIpOwpoPWI9bjtPY1tHXShiKSYmKGg9
WigiaWZyYW1lcy8iK2hbQWFdKDEpKyIvdXJsIiksVWEoISFoLCJVbmtub3duIGlm
cmFtZSB1cmwgY29uZmlnIGZvciAtICIrYikpO249JGEoUixoW3NdKFBjLFJjKSk7
Yj1jLm93bmVyRG9jdW1lbnR8fFI7bT0wO2RvIGg9Zi5pZHx8WyJJIixMYysrLCJf
IiwobmV3IERhdGUpW29hXSgpXVtQXSgiIik7d2hpbGUoYlt2YV0oaCkmJjU+Kytt
KTtVYSg1Pm0sIkVycm9yIGNyZWF0aW5nIGlmcmFtZSBpZCIpO209e307dmFyIHA9
e307YltCYV0mJjk+YltCYV0mJihtLmhvc3RpZW1vZGU9YltCYV0pO1YoZi5xdWVy
eVBhcmFtc3x8e30sbSk7VihmLmZyYWdtZW50UGFyYW1zfHx7fSxwKTt2YXIgdz1m
LmNvbm5lY3RXaXRoUXVlcnlQYXJhbXM/bTpwLEM9Zi5wZm5hbWUsdT1UKCk7dS5p
ZD1oO3UucGFyZW50PWJbQV1bcWFdKyIvLyIrYltBXS5ob3N0O3ZhciBKPVgoYltB
XVtEXSwicGFyZW50IiksQz1DfHwiIjshQyYmSiYmKEo9WChiW0FdW0RdLCJpZCIs
IiIpLApDPVgoYltBXVtEXSwicGZuYW1lIiwiIiksQz1KP0MrIi8iK0o6IiIpO3Uu
cGZuYW1lPUM7Vih1LHcpOyh1PVgobiwicnBjdG9rZW4iKXx8bS5ycGN0b2tlbnx8
cC5ycGN0b2tlbil8fCh1PXcucnBjdG9rZW49Zi5ycGN0b2tlbnx8cihNYXRoLnJv
dW5kKDFFOCpCYygpKSkpO2YucnBjdG9rZW49dTt1PWJbQV1bRF07dz1UKCk7KEo9
WCh1LCJfYnNoIixZLmJzaCkpJiYody5fYnNoPUopOyh1PWliKHUpKSYmKHcuanNo
PXUpO2YuaGludEluRnJhZ21lbnQ/Vih3LHApOlYodyxtKTtuPVphKG4sbSxwLGYu
cGFyYW1zU2VyaWFsaXplcik7cD1UKCk7VihKYyxwKTtWKGZbc2FdLHApO3AubmFt
ZT1wLmlkPWg7cC5zcmM9bjtmLmV1cmw9bjtpZigoZnx8e30pLmFsbG93UG9zdCYm
MkUzPG5bSV0pe209V2Eobik7cC5zcmM9IiI7cFsiZGF0YS1wb3N0b3JpZ2luIl09
bjtuPU5jKGIsYyxwLGgpOy0xIT1uYXZpZ2F0b3IudXNlckFnZW50W0hdKCJXZWJL
aXQiKSYmKGc9bi5jb250ZW50V2luZG93LmRvY3VtZW50LApnLm9wZW4oKSxwPWdb
dF0oImRpdiIpLHc9e30sdT1oKyJfaW5uZXIiLHcubmFtZT11LHcuc3JjPSIiLHcu
c3R5bGU9ImRpc3BsYXk6bm9uZSIsTmMoYixwLHcsdSxmKSk7cD0oZj1tLmpbMF0p
P2Zbel0oIiYiKTpbXTtmPVtdO2Zvcih3PTA7dzxwW0ldO3crKyl1PXBbd11bel0o
Ij0iLDIpLGZbRl0oW2VhKHVbMF0pLGVhKHVbMV0pXSk7bS5qPVtdO3A9WGEobSk7
bT1iW3RdKCJmb3JtIik7bS5hY3Rpb249cDttLm1ldGhvZD0iUE9TVCI7bS50YXJn
ZXQ9aDttW0JdLmRpc3BsYXk9Im5vbmUiO2ZvcihoPTA7aDxmW0ldO2grKylwPWJb
dF0oImlucHV0IiksZmEocCwiaGlkZGVuIikscC5uYW1lPWZbaF1bMF0scC52YWx1
ZT1mW2hdWzFdLG1bZ2FdKHApO2NbZ2FdKG0pO20uc3VibWl0KCk7bVtPXVt6YV0o
bSk7ZyYmZy5jbG9zZSgpO2c9bn1lbHNlIGc9TmMoYixjLHAsaCxmKTtlLmlmcmFt
ZU5vZGU9ZztlLmlkPWdbTV0oImlkIik7Zz1lLmlkO2M9VCgpO2MuaWQ9ZztjLnVz
ZXJQYXJhbXM9CmUudXNlclBhcmFtcztjLnVybD1lLnVybDtmYShjLGVbeWFdKTtj
LnN0YXRlPTE7JFtnXT1jO2c9ZX1lbHNlIGc9bnVsbDtnJiYoKGU9Zy5pZCkmJmRb
Rl0oZSkseGQoYSxnKSl9fSxFZD1mdW5jdGlvbihhLGIsYyl7aWYoYSYmMT09PWEu
bm9kZVR5cGUmJmIpe2lmKGMpcmV0dXJuIDE7aWYocGRbYl0pe2lmKGhiW2FbeGFd
W0RhXSgpXSlyZXR1cm4oYT1hLmlubmVySFRNTCkmJmFbc10oL15bXHNceGEwXSt8
W1xzXHhhMF0rJC9nLCIiKT8wOjF9ZWxzZXtpZihvZFtiXSlyZXR1cm4gMDtpZihu
ZFtiXSlyZXR1cm4gMX19cmV0dXJuIG51bGx9LGxkPWZ1bmN0aW9uKGEsYil7dmFy
IGM9Ylt5YV07ZGVsZXRlIGJbeWFdO3ZhciBkPSgic3RyaW5nIj09PXR5cGVvZiBh
P3FbdmFdKGEpOmEpfHx2b2lkIDA7aWYoZCl7dmFyIGU9e30sZjtmb3IoZiBpbiBi
KVUoYixmKSYmKGVbZltEYV0oKV09YltmXSk7ZS5yZD0xOyhmPSEhZS5yaSkmJmRl
bGV0ZSBlLnJpO3ZhciBnPVtdO3lkKGMsZCxlLGcsMCwKZik7emQoYyxnKX1lbHNl
IGhjKCJzdHJpbmciPT09ImdhcGkuIitjKyIucmVuZGVyOiBtaXNzaW5nIGVsZW1l
bnQgIit0eXBlb2YgYT9hOiIiKX07UyhXLCJwbGF0Zm9ybSIse30pLmdvPXZkO3Zh
ciB3ZD1mdW5jdGlvbihhKXtmb3IodmFyIGI9WyJfYyIsImpzbCIsImgiXSxjPTA7
YzxiW0ldJiZhO2MrKylhPWFbYltjXV07Yj1pYihIYVtEXSk7cmV0dXJuIWF8fDAh
PWFbSF0oIm47IikmJjAhPWJbSF0oIm47IikmJmEhPT1ifSx6ZD1mdW5jdGlvbihh
LGIpe0ZkKGEsYil9LGRiPWZ1bmN0aW9uKGEpe3VkKGEsITApfSxHZD1mdW5jdGlv
bihhLGIpe2Zvcih2YXIgYz1ifHxbXSxkPTA7ZDxjW0ldOysrZClhKGNbZF0pO2Zv
cihkPTA7ZDxjW0ldO2QrKylBZChjW2RdKX07CndiW0ZdKFsicGxhdGZvcm0iLGZ1
bmN0aW9uKGEsYixjKXtyZD1jO2ImJnFkW0ZdKGIpO0dkKEJkLGEpO0dkKENkLGMu
X2MuYW5ub3RhdGlvbik7R2QoRGQsYy5fYy5iaW1vZGFsKTthYygpO1piKCk7aWYo
ImV4cGxpY2l0IiE9WigicGFyc2V0YWdzIikpe2piKGEpO2ZjKGVjKCkpJiYhWigi
ZGlzYWJsZVJlYWx0aW1lQ2FsbGJhY2siKSYmamMoKTt2YXIgZDtjJiYoYT1jLmNh
bGxiYWNrKSYmKGQ9VGEoYSksZGVsZXRlIGMuY2FsbGJhY2spO2ZiKGZ1bmN0aW9u
KCl7ZGIoZCl9KX19XSk7Vy5fcGw9ITA7dmFyIEhkPWZ1bmN0aW9uKGEpe2E9KGE9
JFthXSk/YS5vaWQ6dm9pZCAwO2lmKGEpe3ZhciBiPVJbdmFdKGEpO2ImJmJbT11b
emFdKGIpO2RlbGV0ZSAkW2FdO0hkKGEpfX07dmFyIElkPS9eXHtoXDonLyxKZD0v
XiFfLyxLZD0iIixGZD1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXtiYigibWVz
c2FnZSIsZCwicmVtb3ZlIiwiZGUiKX1mdW5jdGlvbiBkKGQpe3ZhciBnPWQuZGF0
YSxoPWQub3JpZ2luO2lmKExkKGcsYikpe3ZhciBsPWU7ZT0hMTtsJiZzYigicnFl
Iik7TWQoYSxmdW5jdGlvbigpe2wmJnNiKCJycWQiKTtjKCk7Zm9yKHZhciBhPVMo
WSwiUlBNUSIsW10pLGI9MDtiPGFbSV07YisrKWFbYl0oe2RhdGE6ZyxvcmlnaW46
aH0pfSl9fWlmKDAhPT1iW0ldKXtLZD1YKEhhW0RdLCJwZm5hbWUiLCIiKTt2YXIg
ZT0hMDtiYigibWVzc2FnZSIsZCwiYWRkIiwiYXQiKTtUYihhLGMpfX0sTGQ9ZnVu
Y3Rpb24oYSxiKXthPXIoYSk7aWYoSWRbR10oYSkpcmV0dXJuITA7dmFyIGM9ITE7
SmRbR10oYSkmJihjPSEwLGE9YVt4XSgyKSk7aWYoIS9eXHsvW0ddKGEpKXJldHVy
biExO3ZhciBkPSRjKGEpO2lmKCFkKXJldHVybiExO3ZhciBlPWQuZjtpZihkLnMm
JgplJiYtMSE9S2FbTF0oYixlKSl7aWYoIl9yZW5kZXJzdGFydCI9PT1kLnN8fGQu
cz09PUtkKyIvIitlKyI6Ol9yZW5kZXJzdGFydCIpe3ZhciBmPWQuYSYmZC5hW2M/
MDoxXSxjPVJbdmFdKGUpO2xjKGUsMik7aWYoZiYmYyYmZltqYV0mJmZbdGFdKXtu
OntkPWNbT107ZT1mfHx7fTtpZihpYygpKXt2YXIgZz1jLmlkO2lmKGcpe2Y9KGY9
JFtnXSk/Zi5zdGF0ZTp2b2lkIDA7aWYoMT09PWZ8fDQ9PT1mKWJyZWFrIG47SGQo
Zyl9fShmPWQubmV4dFNpYmxpbmcpJiZmW01dJiZmW01dKCJkYXRhLWdhcGlzdHVi
IikmJihkW09dW3phXShmKSxkW0JdLmNzc1RleHQ9IiIpO3ZhciBmPWVbamFdLGg9
ZVt0YV0sbD1kW0JdO2wudGV4dEluZGVudD0iMCI7bC5tYXJnaW49IjAiO2wucGFk
ZGluZz0iMCI7bC5iYWNrZ3JvdW5kPSJ0cmFuc3BhcmVudCI7bC5ib3JkZXJTdHls
ZT0ibm9uZSI7bC5jc3NGbG9hdD0ibm9uZSI7bC5zdHlsZUZsb2F0PSJub25lIjts
LmxpbmVIZWlnaHQ9Im5vcm1hbCI7bC5mb250U2l6ZT0KIjFweCI7bC52ZXJ0aWNh
bEFsaWduPSJiYXNlbGluZSI7ZD1kW0JdO2QuZGlzcGxheT0iaW5saW5lLWJsb2Nr
IjtsPWNbQl07bC5wb3NpdGlvbj0ic3RhdGljIjtsLmxlZnQ9MDtsLnRvcD0wO2wu
dmlzaWJpbGl0eT0idmlzaWJsZSI7ZiYmKGQud2lkdGg9bC53aWR0aD1mKyJweCIp
O2gmJihkLmhlaWdodD1sLmhlaWdodD1oKyJweCIpO2UudmVydGljYWxBbGlnbiYm
KGQudmVydGljYWxBbGlnbj1lLnZlcnRpY2FsQWxpZ24pO2cmJmxjKGcsMyl9Y1si
ZGF0YS1jc2ktd2R0Il09KG5ldyBEYXRlKVtvYV0oKX19cmV0dXJuITB9cmV0dXJu
ITF9LE1kPWZ1bmN0aW9uKGEsYil7VGIoYSxiKX07dmFyIE5kPWZ1bmN0aW9uKGEs
Yil7dGhpcy5CPWE7dmFyIGM9Ynx8e307dGhpcy5SPWMuVzt0aGlzLkE9Yy5kb21h
aW47dGhpcy5DPWMucGF0aDt0aGlzLlM9Yy5YfSxPZD0vXlstKy9fPS46fCUmYS16
QS1aMC05QF0qJC8sUGQ9L15bQS1aX11bQS1aMC05X117MCw2M30kLzsKTmRbS10u
d3JpdGU9ZnVuY3Rpb24oYSxiKXtpZighUGRbR10odGhpcy5CKSl0aHJvdyJJbnZh
bGlkIGNvb2tpZSBuYW1lIjtpZighT2RbR10oYSkpdGhyb3ciSW52YWxpZCBjb29r
aWUgdmFsdWUiO3ZhciBjPXRoaXMuQisiPSIrYTt0aGlzLkEmJihjKz0iO2RvbWFp
bj0iK3RoaXMuQSk7dGhpcy5DJiYoYys9IjtwYXRoPSIrdGhpcy5DKTt2YXIgZD0i
bnVtYmVyIj09PXR5cGVvZiBiP2I6dGhpcy5SO2lmKDA8PWQpe3ZhciBlPW5ldyBE
YXRlO2Uuc2V0U2Vjb25kcyhlLmdldFNlY29uZHMoKStkKTtjKz0iO2V4cGlyZXM9
IitlLnRvVVRDU3RyaW5nKCl9dGhpcy5TJiYoYys9IjtzZWN1cmUiKTtxLmNvb2tp
ZT1jO3JldHVybiEwfTtOZC5pdGVyYXRlPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1x
LmNvb2tpZVt6XSgvO1xzKi8pLGM9MDtjPGJbSV07KytjKXt2YXIgZD1iW2NdW3pd
KCI9IiksZT1kW2hhXSgpO2EoZSxkW1BdKCI9IikpfX07dmFyIFFkPWZ1bmN0aW9u
KGEpe3RoaXMuVT1hfSxSZD17fTtRZFtLXS53cml0ZT1mdW5jdGlvbihhKXtSZFt0
aGlzLlVdPWE7cmV0dXJuITB9O1FkLml0ZXJhdGU9ZnVuY3Rpb24oYSl7Zm9yKHZh
ciBiIGluIFJkKVJkLmhhc093blByb3BlcnR5KGIpJiZhKGIsUmRbYl0pfTt2YXIg
U2Q9Imh0dHBzOiI9PT1rW0FdW3FhXSxUZD1TZHx8Imh0dHA6Ij09PWtbQV1bcWFd
P05kOlFkLFVkPWZ1bmN0aW9uKGEpe3ZhciBiPWFbeF0oMSksYz0iIixkPWtbQV0u
aG9zdG5hbWU7aWYoIiIhPT1iKXtjPWRhKGIsMTApO2lmKGlzTmFOKGMpKXJldHVy
biBudWxsO2I9ZFt6XSgiLiIpO2lmKGJbSV08Yy0xKXJldHVybiBudWxsO2JbSV09
PWMtMSYmKGQ9Ii4iK2QpfWVsc2UgZD0iIjtyZXR1cm57ZDoiUyI9PWFbbGFdKDAp
LGRvbWFpbjpkLGk6Y319LFZkPWZ1bmN0aW9uKGEpe2lmKDAhPT1hW0hdKCJHQ1ND
IikpcmV0dXJuIG51bGw7dmFyIGI9e3c6ITF9O2E9YVt4XSg0KTtpZighYSlyZXR1
cm4gYjt2YXIgYz1hW2xhXSgwKTthPWFbeF0oMSk7dmFyIGQ9YS5sYXN0SW5kZXhP
ZigiXyIpO2lmKC0xPT1kKXJldHVybiBiO3ZhciBlPVVkKGFbeF0oZCsxKSk7aWYo
bnVsbD09ZSlyZXR1cm4gYjthPWFbQWFdKDAsZCk7aWYoIl8iIT09YVtsYV0oMCkp
cmV0dXJuIGI7ZD0iRSI9PT0KYyYmZS5kO3JldHVybiFkJiYoIlUiIT09Y3x8ZS5k
KXx8ZCYmIVNkP2I6e3c6ITAsZDpkLFY6YVt4XSgxKSxkb21haW46ZS5kb21haW4s
aTplLml9fSxXZD1mdW5jdGlvbihhKXtpZighYSlyZXR1cm5bXTthPWFbel0oIj0i
KTtyZXR1cm4gYVsxXT9hWzFdW3pdKCJ8Iik6W119LFhkPWZ1bmN0aW9uKGEpe2E9
YVt6XSgiOiIpO3JldHVybnt0OmFbMF1bel0oIj0iKVsxXSxPOldkKGFbMV0pLFo6
V2QoYVsyXSksWTpXZChhWzNdKX19LFlkPWZ1bmN0aW9uKCl7dmFyIGEsYj1udWxs
O1RkLml0ZXJhdGUoZnVuY3Rpb24oYyxkKXtpZigwPT09Y1tIXSgiR19BVVRIVVNF
Ul8iKSl7dmFyIGU9VWQoY1tBYV0oMTEpKTtpZighYXx8ZS5kJiYhYS5kfHxlLmQ9
PWEuZCYmZS5pPmEuaSlhPWUsYj1kfX0pO2lmKG51bGwhPT1iKXt2YXIgYztUZC5p
dGVyYXRlKGZ1bmN0aW9uKGIsZCl7dmFyIGU9VmQoYik7ZSYmZS53JiZlLmQ9PWEu
ZCYmZS5pPT1hLmkmJihjPWQpfSk7aWYoYyl7dmFyIGQ9WGQoYyksCmU9ZCYmZC5P
W051bWJlcihiKV0sZD1kJiZkLnQ7aWYoZSlyZXR1cm57UDpiLFE6ZSx0OmR9fX1y
ZXR1cm4gbnVsbH07dmFyIFpkPWZ1bmN0aW9uKGEpe3RoaXMuRz1hfTtaZFtLXS5r
PTA7WmRbS10uRj0yO1pkW0tdLkc9bnVsbDtaZFtLXS52PSExO1pkW0tdLkw9ZnVu
Y3Rpb24oKXt0aGlzLnZ8fCh0aGlzLms9MCx0aGlzLnY9ITAsdGhpcy5EKCkpfTta
ZFtLXS5EPWZ1bmN0aW9uKCl7dGhpcy52JiYodGhpcy5HKCk/dGhpcy5rPXRoaXMu
Rjp0aGlzLms9TWF0aC5taW4oMioodGhpcy5rfHx0aGlzLkYpLDEyMCksay5zZXRU
aW1lb3V0KEdhKHRoaXMuRCx0aGlzKSwxRTMqdGhpcy5rKSl9O2Zvcih2YXIgJGQ9
MDs2ND4kZDsrKyRkKTt2YXIgYWU9bnVsbCxpYz1mdW5jdGlvbigpe3JldHVybiBZ
Lm9hPSEwfSxqYz1mdW5jdGlvbigpe1kub2E9ITA7dmFyIGE9WWQoKTsoYT1hJiZh
LlApJiYkYigiZ29vZ2xlYXBpcy5jb25maWcvc2Vzc2lvbkluZGV4IixhKTthZXx8
KGFlPVMoWSwic3MiLG5ldyBaZChiZSkpKTthPWFlO2EuTCYmYS5MKCl9LGJlPWZ1
bmN0aW9uKCl7dmFyIGE9WWQoKSxiPWEmJmEuUXx8bnVsbCxjPWEmJmEudDtUYigi
YXV0aCIse2NhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGE9US5nYXBpLmF1dGgsZT17
Y2xpZW50X2lkOmMsc2Vzc2lvbl9zdGF0ZTpifTthLmNoZWNrU2Vzc2lvblN0YXRl
KGUsZnVuY3Rpb24oYil7dmFyIGM9ZS5zZXNzaW9uX3N0YXRlLGg9WigiaXNMb2dn
ZWRJbiIpO2I9WigiZGVidWcvZm9yY2VJbSIpPyExOmMmJmJ8fCFjJiYhYjtpZiho
PWghPWIpJGIoImlzTG9nZ2VkSW4iLGIpLGpjKCksbWQoKSxifHwoKGI9YS5zaWdu
T3V0KT9iKCk6KGI9YS5zZXRUb2tlbikmJmIobnVsbCkpO2I9CmVjKCk7dmFyIGw9
Wigic2F2ZWRVc2VyU3RhdGUiKSxjPWEuX2d1c3MoYi5jb29raWVwb2xpY3kpLGw9
bCE9YyYmInVuZGVmaW5lZCIhPXR5cGVvZiBsOyRiKCJzYXZlZFVzZXJTdGF0ZSIs
Yyk7KGh8fGwpJiZmYyhiKSYmIVooImRpc2FibGVSZWFsdGltZUNhbGxiYWNrIikm
JmEuX3BpbWYoYiwhMCl9KX19KTtyZXR1cm4hMH07c2IoImJzMCIsITAsay5nYXBp
Ll9icyk7c2IoImJzMSIsITApO2RlbGV0ZSBrLmdhcGkuX2JzO30pKCk7CmdhcGku
bG9hZCgicGx1c29uZSIse2NhbGxiYWNrOndpbmRvd1siZ2FwaV9vbmxvYWQiXSxf
Yzp7ImpzbCI6eyJjaSI6eyJsbGFuZyI6ImVzIiwiY2xpZW50Ijp7ImhlYWRlcnMi
OnsicmVzcG9uc2UiOlsiQ2FjaGUtQ29udHJvbCIsIkNvbnRlbnQtRGlzcG9zaXRp
b24iLCJDb250ZW50LUVuY29kaW5nIiwiQ29udGVudC1MYW5ndWFnZSIsIkNvbnRl
bnQtTGVuZ3RoIiwiQ29udGVudC1NRDUiLCJDb250ZW50LVJhbmdlIiwiQ29udGVu
dC1UeXBlIiwiRGF0ZSIsIkVUYWciLCJFeHBpcmVzIiwiTGFzdC1Nb2RpZmllZCIs
IkxvY2F0aW9uIiwiUHJhZ21hIiwiUmFuZ2UiLCJTZXJ2ZXIiLCJUcmFuc2Zlci1F
bmNvZGluZyIsIldXVy1BdXRoZW50aWNhdGUiLCJYLUdvb2ctU2FmZXR5LUNvbnRl
bnQtVHlwZSIsIlgtR29vZy1TYWZldHktRW5jb2RpbmciLCJYLUdvb2ctVXBsb2Fk
LUNodW5rLUdyYW51bGFyaXR5IiwiWC1Hb29nLVVwbG9hZC1Db250cm9sLVVSTCIs
IlgtR29vZy1VcGxvYWQtU2l6ZS1SZWNlaXZlZCIsIlgtR29vZy1VcGxvYWQtU3Rh
dHVzIiwiWC1Hb29nLVVwbG9hZC1VUkwiLCJYLUdvb2ctRGlmZi1Eb3dubG9hZC1S
YW5nZSIsIlgtR29vZy1IYXNoIiwiWC1TZXJ2ZXItT2JqZWN0LVZlcnNpb24iLCJY
LUd1cGxvYWRlci1DdXN0b21lciIsIlgtR3VwbG9hZGVyLVVwbG9hZC1SZXN1bHQi
LCJYLUd1cGxvYWRlci1VcGxvYWRpZCJdLCJyZXF1ZXN0IjpbIkFjY2VwdCIsIkFj
Y2VwdC1MYW5ndWFnZSIsIkF1dGhvcml6YXRpb24iLCJDYWNoZS1Db250cm9sIiwi
Q29udGVudC1EaXNwb3NpdGlvbiIsIkNvbnRlbnQtRW5jb2RpbmciLCJDb250ZW50
LUxhbmd1YWdlIiwiQ29udGVudC1MZW5ndGgiLCJDb250ZW50LU1ENSIsIkNvbnRl
bnQtUmFuZ2UiLCJDb250ZW50LVR5cGUiLCJEYXRlIiwiR0RhdGEtVmVyc2lvbiIs
Ikhvc3QiLCJJZi1NYXRjaCIsIklmLU1vZGlmaWVkLVNpbmNlIiwiSWYtTm9uZS1N
YXRjaCIsIklmLVVubW9kaWZpZWQtU2luY2UiLCJPcmlnaW4iLCJPcmlnaW5Ub2tl
biIsIlByYWdtYSIsIlJhbmdlIiwiU2x1ZyIsIlRyYW5zZmVyLUVuY29kaW5nIiwi
WC1DbGllbnREZXRhaWxzIiwiWC1HRGF0YS1DbGllbnQiLCJYLUdEYXRhLUtleSIs
IlgtR29vZy1BdXRoVXNlciIsIlgtR29vZy1QYWdlSWQiLCJYLUdvb2ctRW5jb2Rl
LVJlc3BvbnNlLUlmLUV4ZWN1dGFibGUiLCJYLUdvb2ctQ29ycmVsYXRpb24tSWQi
LCJYLUdvb2ctUmVxdWVzdC1JbmZvIiwiWC1Hb29nLUV4cGVyaW1lbnRzIiwieC1n
b29nLWlhbS1yb2xlIiwieC1nb29nLWlhbS1hdXRob3JpemF0aW9uLXRva2VuIiwi
WC1Hb29nLVNwYXR1bGEiLCJYLUdvb2ctVXBsb2FkLUNvbW1hbmQiLCJYLUdvb2ct
VXBsb2FkLUNvbnRlbnQtRGlzcG9zaXRpb24iLCJYLUdvb2ctVXBsb2FkLUNvbnRl
bnQtTGVuZ3RoIiwiWC1Hb29nLVVwbG9hZC1Db250ZW50LVR5cGUiLCJYLUdvb2ct
VXBsb2FkLUZpbGUtTmFtZSIsIlgtR29vZy1VcGxvYWQtT2Zmc2V0IiwiWC1Hb29n
LVVwbG9hZC1Qcm90b2NvbCIsIlgtR29vZy1WaXNpdG9yLUlkIiwiWC1IVFRQLU1l
dGhvZC1PdmVycmlkZSIsIlgtSmF2YVNjcmlwdC1Vc2VyLUFnZW50IiwiWC1QYW4t
VmVyc2lvbmlkIiwiWC1PcmlnaW4iLCJYLVJlZmVyZXIiLCJYLVVwbG9hZC1Db250
ZW50LUxlbmd0aCIsIlgtVXBsb2FkLUNvbnRlbnQtVHlwZSIsIlgtVXNlLUhUVFAt
U3RhdHVzLUNvZGUtT3ZlcnJpZGUiLCJYLVlvdVR1YmUtVlZUIiwiWC1Zb3VUdWJl
LVBhZ2UtQ0wiLCJYLVlvdVR1YmUtUGFnZS1UaW1lc3RhbXAiXX0sInJtcyI6Im1p
Z3JhdGVkIiwiY29ycyI6ZmFsc2V9LCJwbHVzX2xheWVyIjp7ImlzRW5hYmxlZCI6
ZmFsc2V9LCJlbmFibGVNdWx0aWxvZ2luIjp0cnVlLCJkaXNhYmxlUmVhbHRpbWVD
YWxsYmFjayI6ZmFsc2UsImlzTG9nZ2VkSW4iOmZhbHNlLCJpZnJhbWVzIjp7ImFk
ZGl0bm93Ijp7Im1ldGhvZHMiOlsibGF1bmNodXJsIl0sInVybCI6Imh0dHBzOi8v
YXBpcy5nb29nbGUuY29tL2FkZGl0bm93L2FkZGl0bm93Lmh0bWw/dXNlZ2FwaVx1
MDAzZDEifSwicGVyc29uIjp7InVybCI6Ijpzb2NpYWxob3N0Oi86c2Vzc2lvbl9w
cmVmaXg6Xy93aWRnZXQvcmVuZGVyL3BlcnNvbj91c2VnYXBpXHUwMDNkMSJ9LCJt
YW5hZ2VycyI6eyJ1cmwiOiI6c29jaWFsaG9zdDovOnNlc3Npb25fcHJlZml4Ol8v
d2lkZ2V0L3JlbmRlci9tYW5hZ2Vycz91c2VnYXBpXHUwMDNkMSJ9LCJ2aXNpYmls
aXR5Ijp7InBhcmFtcyI6eyJ1cmwiOiIifSwidXJsIjoiOnNvY2lhbGhvc3Q6Lzpz
ZXNzaW9uX3ByZWZpeDpfL3dpZGdldC9yZW5kZXIvdmlzaWJpbGl0eT91c2VnYXBp
XHUwMDNkMSJ9LCJwaG90b2NvbW1lbnRzIjp7InVybCI6Ijpzb2NpYWxob3N0Oi86
c2Vzc2lvbl9wcmVmaXg6Xy93aWRnZXQvcmVuZGVyL3Bob3RvY29tbWVudHM/dXNl
Z2FwaVx1MDAzZDEifSwicGx1c19mb2xsb3dlcnMiOnsicGFyYW1zIjp7InVybCI6
IiJ9LCJ1cmwiOiI6c29jaWFsaG9zdDovXy9pbS9fL3dpZGdldC9yZW5kZXIvcGx1
cy9mb2xsb3dlcnM/dXNlZ2FwaVx1MDAzZDEifSwic2lnbmluIjp7Im1ldGhvZHMi
Olsib25hdXRoIl0sInBhcmFtcyI6eyJ1cmwiOiIifSwidXJsIjoiOnNvY2lhbGhv
c3Q6LzpzZXNzaW9uX3ByZWZpeDpfL3dpZGdldC9yZW5kZXIvc2lnbmluP3VzZWdh
cGlcdTAwM2QxIn0sInNoYXJlIjp7InVybCI6Ijpzb2NpYWxob3N0Oi86c2Vzc2lv
bl9wcmVmaXg6OmltX3ByZWZpeDpfL3dpZGdldC9yZW5kZXIvc2hhcmU/dXNlZ2Fw
aVx1MDAzZDEifSwiY29tbWVudGNvdW50Ijp7InVybCI6Ijpzb2NpYWxob3N0Oi86
c2Vzc2lvbl9wcmVmaXg6Xy93aWRnZXQvcmVuZGVyL2NvbW1lbnRjb3VudD91c2Vn
YXBpXHUwMDNkMSJ9LCJwYWdlIjp7InVybCI6Ijpzb2NpYWxob3N0Oi86c2Vzc2lv
bl9wcmVmaXg6Xy93aWRnZXQvcmVuZGVyL3BhZ2U/dXNlZ2FwaVx1MDAzZDEifSwi
aGFuZ291dCI6eyJ1cmwiOiJodHRwczovL3RhbGtnYWRnZXQuZ29vZ2xlLmNvbS86
c2Vzc2lvbl9wcmVmaXg6dGFsa2dhZGdldC9fL3dpZGdldCJ9LCJwbHVzX2NpcmNs
ZSI6eyJwYXJhbXMiOnsidXJsIjoiIn0sInVybCI6Ijpzb2NpYWxob3N0Oi86c2Vz
c2lvbl9wcmVmaXg6OnNlOl8vd2lkZ2V0L3BsdXMvY2lyY2xlP3VzZWdhcGlcdTAw
M2QxIn0sInlvdXR1YmUiOnsibWV0aG9kcyI6WyJzY3JvbGwiLCJvcGVud2luZG93
Il0sInBhcmFtcyI6eyJsb2NhdGlvbiI6WyJzZWFyY2giLCJoYXNoIl19LCJ1cmwi
OiI6c29jaWFsaG9zdDovOnNlc3Npb25fcHJlZml4Ol8vd2lkZ2V0L3JlbmRlci95
b3V0dWJlP3VzZWdhcGlcdTAwM2QxIn0sInpvb21hYmxlaW1hZ2UiOnsidXJsIjoi
aHR0cHM6Ly9zc2wuZ3N0YXRpYy5jb20vbWljcm9zY29wZS9lbWJlZC8ifSwiY2Fy
ZCI6eyJ1cmwiOiI6c29jaWFsaG9zdDovOnNlc3Npb25fcHJlZml4Ol8vaG92ZXJj
YXJkL2NhcmQifSwiZXZ3aWRnZXQiOnsicGFyYW1zIjp7InVybCI6IiJ9LCJ1cmwi
OiI6c29jaWFsaG9zdDovOnNlc3Npb25fcHJlZml4Ol8vZXZlbnRzL3dpZGdldD91
c2VnYXBpXHUwMDNkMSJ9LCJyZXBvcnRhYnVzZSI6eyJwYXJhbXMiOnsidXJsIjoi
In0sInVybCI6Ijpzb2NpYWxob3N0Oi86c2Vzc2lvbl9wcmVmaXg6Xy93aWRnZXQv
cmVuZGVyL3JlcG9ydGFidXNlP3VzZWdhcGlcdTAwM2QxIn0sImZvbGxvdyI6eyJ1
cmwiOiI6c29jaWFsaG9zdDovOnNlc3Npb25fcHJlZml4Ol8vd2lkZ2V0L3JlbmRl
ci9mb2xsb3c/dXNlZ2FwaVx1MDAzZDEifSwic2hvcnRsaXN0cyI6eyJ1cmwiOiIi
fSwicGx1cyI6eyJ1cmwiOiI6c29jaWFsaG9zdDovOnNlc3Npb25fcHJlZml4Ol8v
d2lkZ2V0L3JlbmRlci9iYWRnZT91c2VnYXBpXHUwMDNkMSJ9LCJjb25maWd1cmF0
b3IiOnsidXJsIjoiOnNvY2lhbGhvc3Q6LzpzZXNzaW9uX3ByZWZpeDpfL3BsdXNi
dXR0b25jb25maWd1cmF0b3I/dXNlZ2FwaVx1MDAzZDEifSwiOnNvY2lhbGhvc3Q6
IjoiaHR0cHM6Ly9hcGlzLmdvb2dsZS5jb20iLCJwb3N0Ijp7InBhcmFtcyI6eyJ1
cmwiOiIifSwidXJsIjoiOnNvY2lhbGhvc3Q6LzpzZXNzaW9uX3ByZWZpeDo6aW1f
cHJlZml4Ol8vd2lkZ2V0L3JlbmRlci9wb3N0P3VzZWdhcGlcdTAwM2QxIn0sImNv
bW11bml0eSI6eyJ1cmwiOiI6Y3R4X3NvY2lhbGhvc3Q6LzpzZXNzaW9uX3ByZWZp
eDo6aW1fcHJlZml4Ol8vd2lkZ2V0L3JlbmRlci9jb21tdW5pdHk/dXNlZ2FwaVx1
MDAzZDEifSwiOmdwbHVzX3VybDoiOiJodHRwczovL3BsdXMuZ29vZ2xlLmNvbSIs
InJicl9zIjp7InBhcmFtcyI6eyJ1cmwiOiIifSwidXJsIjoiOnNvY2lhbGhvc3Q6
LzpzZXNzaW9uX3ByZWZpeDo6c2U6Xy93aWRnZXQvcmVuZGVyL3JlY29iYXJzaW1w
bGVzY3JvbGxlciJ9LCJhdXRvY29tcGxldGUiOnsicGFyYW1zIjp7InVybCI6IiJ9
LCJ1cmwiOiI6c29jaWFsaG9zdDovOnNlc3Npb25fcHJlZml4Ol8vd2lkZ2V0L3Jl
bmRlci9hdXRvY29tcGxldGUifSwicGx1c19zaGFyZSI6eyJwYXJhbXMiOnsidXJs
IjoiIn0sInVybCI6Ijpzb2NpYWxob3N0Oi86c2Vzc2lvbl9wcmVmaXg6OnNlOl8v
KzEvc2hhcmVidXR0b24/cGx1c1NoYXJlXHUwMDNkdHJ1ZVx1MDAyNnVzZWdhcGlc
dTAwM2QxIn0sIjpzb3VyY2U6IjoiM3AiLCJibG9nZ2VyIjp7Im1ldGhvZHMiOlsi
c2Nyb2xsIiwib3BlbndpbmRvdyJdLCJwYXJhbXMiOnsibG9jYXRpb24iOlsic2Vh
cmNoIiwiaGFzaCJdfSwidXJsIjoiOnNvY2lhbGhvc3Q6LzpzZXNzaW9uX3ByZWZp
eDpfL3dpZGdldC9yZW5kZXIvYmxvZ2dlcj91c2VnYXBpXHUwMDNkMSJ9LCJzYXZl
dG93YWxsZXQiOnsidXJsIjoiaHR0cHM6Ly9jbGllbnRzNS5nb29nbGUuY29tL3My
dy9vL3NhdmV0b3dhbGxldCJ9LCJyYnJfaSI6eyJwYXJhbXMiOnsidXJsIjoiIn0s
InVybCI6Ijpzb2NpYWxob3N0Oi86c2Vzc2lvbl9wcmVmaXg6OnNlOl8vd2lkZ2V0
L3JlbmRlci9yZWNvYmFyaW52aXRhdGlvbiJ9LCJhcHBjaXJjbGVwaWNrZXIiOnsi
dXJsIjoiOnNvY2lhbGhvc3Q6LzpzZXNzaW9uX3ByZWZpeDpfL3dpZGdldC9yZW5k
ZXIvYXBwY2lyY2xlcGlja2VyIn0sInVkY193ZWJjb25zZW50ZmxvdyI6eyJwYXJh
bXMiOnsidXJsIjoiIn0sInVybCI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vc2V0
dGluZ3Mvd2ViY29uc2VudD91c2VnYXBpXHUwMDNkMSJ9LCJzYXZldG9kcml2ZSI6
eyJtZXRob2RzIjpbInNhdmUiXSwidXJsIjoiaHR0cHM6Ly9kcml2ZS5nb29nbGUu
Y29tL3NhdmV0b2RyaXZlYnV0dG9uP3VzZWdhcGlcdTAwM2QxIn0sIjppbV9zb2Np
YWxob3N0OiI6Imh0dHBzOi8vcGx1cy5nb29nbGVhcGlzLmNvbSIsInl0c2hhcmUi
OnsicGFyYW1zIjp7InVybCI6IiJ9LCJ1cmwiOiI6c29jaWFsaG9zdDovOnNlc3Np
b25fcHJlZml4Ol8vd2lkZ2V0L3JlbmRlci95dHNoYXJlP3VzZWdhcGlcdTAwM2Qx
In0sIjpzaWdudXBob3N0OiI6Imh0dHBzOi8vcGx1cy5nb29nbGUuY29tIiwicGx1
c29uZSI6eyJwYXJhbXMiOnsiY291bnQiOiIiLCJzaXplIjoiIiwidXJsIjoiIn0s
InVybCI6Ijpzb2NpYWxob3N0Oi86c2Vzc2lvbl9wcmVmaXg6OnNlOl8vKzEvZmFz
dGJ1dHRvbj91c2VnYXBpXHUwMDNkMSJ9LCJjb21tZW50cyI6eyJtZXRob2RzIjpb
InNjcm9sbCIsIm9wZW53aW5kb3ciXSwicGFyYW1zIjp7ImxvY2F0aW9uIjpbInNl
YXJjaCIsImhhc2giXX0sInVybCI6Ijpzb2NpYWxob3N0Oi86c2Vzc2lvbl9wcmVm
aXg6Xy93aWRnZXQvcmVuZGVyL2NvbW1lbnRzP3VzZWdhcGlcdTAwM2QxIn0sInl0
c3Vic2NyaWJlIjp7InVybCI6Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3N1YnNj
cmliZV9lbWJlZD91c2VnYXBpXHUwMDNkMSJ9fSwiaXNQbHVzVXNlciI6ZmFsc2Us
ImRlYnVnIjp7Imhvc3QiOiJodHRwczovL2FwaXMuZ29vZ2xlLmNvbSIsImZvcmNl
SW0iOmZhbHNlLCJyZXBvcnRFeGNlcHRpb25SYXRlIjowLjA1LCJyZXRocm93RXhj
ZXB0aW9uIjpmYWxzZX0sImVuYWJsZUNvbnRleHR1YWxTaWduaW4iOmZhbHNlLCJl
bmFibGVTaWduaW5Ub29sdGlwIjpmYWxzZSwiZGV2aWNlVHlwZSI6ImRlc2t0b3Ai
LCJpbmxpbmUiOnsiY3NzIjoxfSwibGV4cHMiOlsxMDAsOTcsNzksMTA5LDQ1LDE3
LDExNywxMTUsODEsMTI3LDEyNCwxMjIsNjEsMzBdLCJpbmNsdWRlX2dyYW50ZWRf
c2NvcGVzIjp0cnVlLCJvYXV0aC1mbG93Ijp7InVzZWdhcGkiOmZhbHNlLCJkaXNh
YmxlT3B0Ijp0cnVlLCJhdXRoVXJsIjoiaHR0cHM6Ly9hY2NvdW50cy5nb29nbGUu
Y29tL28vb2F1dGgyL2F1dGgiLCJwcm94eVVybCI6Imh0dHBzOi8vYWNjb3VudHMu
Z29vZ2xlLmNvbS9vL29hdXRoMi9wb3N0bWVzc2FnZVJlbGF5In0sInJlcG9ydCI6
eyJhcGlSYXRlIjp7ImdhcGlcXC5zaWduaW5cXC4uKiI6MC4wNX0sImhvc3QiOiJo
dHRwczovL2FwaXMuZ29vZ2xlLmNvbSIsInJhdGUiOjAuMDAxLCJhcGlzIjpbImlm
cmFtZXNcXC4uKiIsImdhZGdldHNcXC4uKiIsImdhcGlcXC5hcHBjaXJjbGVwaWNr
ZXJcXC4uKiIsImdhcGlcXC5hdXRoXFwuLioiLCJnYXBpXFwuY2xpZW50XFwuLioi
XX0sImNzaSI6eyJyYXRlIjowLjAxfSwiZ29vZ2xlYXBpcy5jb25maWciOnsiYXV0
aCI6eyJ1c2VGaXJzdFBhcnR5QXV0aFYyIjpmYWxzZX19fSwiaCI6Im07L18vc2Nz
L2FwcHMtc3RhdGljL18vanMva1x1MDAzZG96LmdhcGkuZXNfNDE5LmdaeDh6ODIz
V1drLk8vbVx1MDAzZF9fZmVhdHVyZXNfXy9hbVx1MDAzZEFRL3J0XHUwMDNkai9k
XHUwMDNkMS90XHUwMDNkemNtcy9yc1x1MDAzZEFHTFRjQ05OWEdLdG5VRXd0dmNH
SHdGZ0dXZ3lBZTI3NkEiLCJ1IjoiaHR0cHM6Ly9hcGlzLmdvb2dsZS5jb20vanMv
cGx1c29uZS5qcyIsImhlZSI6dHJ1ZSwiZnAiOiI5MWI0YzZhNzQwMjBjNTlkN2Rl
YzViMTkyOTI2YjRlZGQzMTQwYjUwIiwiZHBvIjpmYWxzZX0sInBsYXRmb3JtIjpb
ImFkZGl0bm93IiwiYmxvZ2dlciIsImNvbW1lbnRzIiwiY29tbWVudGNvdW50Iiwi
Y29tbXVuaXR5IiwiZm9sbG93IiwicGFnZSIsInBlcnNvbiIsInBsdXMiLCJwbHVz
b25lIiwicG9zdCIsInJlcG9ydGFidXNlIiwic2F2ZXRvZHJpdmUiLCJzYXZldG93
YWxsZXQiLCJzaG9ydGxpc3RzIiwidmlzaWJpbGl0eSIsInlvdXR1YmUiLCJ5dHN1
YnNjcmliZSIsInpvb21hYmxlaW1hZ2UiLCJwaG90b2NvbW1lbnRzIiwiaGFuZ291
dCIsIm1hbmFnZXJzIiwidWRjX3dlYmNvbnNlbnRmbG93Il0sImZwIjoiOTFiNGM2
YTc0MDIwYzU5ZDdkZWM1YjE5MjkyNmI0ZWRkMzE0MGI1MCIsImFubm90YXRpb24i
OlsiaW50ZXJhY3RpdmVwb3N0IiwicmVjb2JhciIsImF1dG9jb21wbGV0ZSIsInBy
b2ZpbGUiXSwiYmltb2RhbCI6WyJzaWduaW4iLCJzaGFyZSJdfX0pOw==
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=plus_google.gif
Content-Type: image/gif; name=plus_google.gif
Content-Location: http://www.websecurity.es/banners/plus_google.gif
Content-Transfer-Encoding: Base64
R0lGODlhPgARAPf/ALjK2/vx8uXY2zF0qfX69KpIXGyv3QBbq5GnuvVkgcPN1iVh
lO3y9vnz6cwyUPKsupPAj+ZMaz6Du/WNoiNej0t7o4irhPz8/Pi2w5wNKrrU7CZk
mNPAw9O1u4S74lKXy5bK7gxrwPbq7U1yk/M0W1Wazdjd4nGz4YK232Wi10qRxk2C
rVONvcvQ1Hqz22iFnzh/u0CGvSxwqddlfXmUrfEaRXKs1ZDG6ovB5/K1UmOdy8xG
YTd+tihpoI6531+j1Fub1He55VyWxZ7E5Wer2x92xFaRwdDj82+cwypsok+TyX/A
65q93EWMwqO4y32+6Xm65om022+y4Ex+qDuAt2qk2C5ypytupSpqnidnnEiOxDKC
yi91ri1vpfLy8tnZ2dTU1NTT1Pf39/z8++bl5dTY09TT0/P4/Pz7/N/f39nZ2uXl
5vv8/NPU09na2eXm5dzc3OXl5dPT1Pf3+Obl5tSta9/g3+60Vd/g4PLx8Wul0TZ9
s3u9de/v7+SjO6LPnTqHy9rZ2vf49+90jUZ7rJK942qMquvq6+zr6+zs61aPwtKh
UorFhYTE7lCTz/Hy8vLy8VCJtTZ5sPbNi+TCid4fRrTM4SdpnqnUpWCfWuWhrvWZ
q+zn39N4iuO8fJjKlPj3+OGrtu+OXKW4ovGfeODg4MWmrNqrtW+Ts9Loz99Xcu+g
ICx4uvCqNs9Xb1J7oPXZrB1nqh1rsPFrhSN5xQA+deEgR+EvU+TDpXuu3NfTzNPU
1HOhy4XCgNHBp7C/zUR1ommkz/CEmcjV3t7S1E+Gstzq9vG9Zzdun+SjsIigtuqv
u7DBz/KzTChrogBAeSlUe4urx+vs7Eh8Q+zr7MoRNsuFEdrZ2eKTE9ra2XOp2Tpj
h/T09Cxuo+23wt/f4Pbiwvbmy/nnyK+6wwBLjsyHlNzj6KvJ4jR4ro22iZHIjL3E
yWOg1syUn2+2ada4hUSLy1qSVffWn2WsXzJwLDCAx5O32KDF5qI0Sr4rSNjY2Ozs
7Ojo6JaWlv///////yH5BAEAAP8ALAAAAAA+ABEAAAj/AP8J/NevoMGDCBMqXMiQ
4cCBBfdJnEixosWLGDNmLCgQTT9++0CAuIHDgwsbenQIMcLCn8uXMGPKnEkz5oV9
/PoR5HcDRKMlUE4Q+VFCRYw9XGTQPHLkTM2n/lKpU0egZs6PN54seRJEisuiMSRZ
uRLzTCF29+4BSWEMKk1GvZ5e5YcjCJQgJwy4/KBFArouSWJWQfHyDDunbmX2wiS3
ID8PUk5IMUDEpZImVAYkueSPzRg0GrYwQIOGzYXTYzBMEDYhwIUGk+RNEofmgoZc
VVIM4fMn9awIwsZ4HnNhLgoilWdawZLFnxhBYnw4EgMKOigxYjbNEiQiQYIGOcIJ
/4LVDJwPbQyAABLk7tODWyKWVdMkZs4cQXNd/PhB80qWDf54IWAURXgBySMCCkjC
BHl48QAJpLTiRYM5HLNFFF6cE4IX80CgygwzuBJKgl5wM5cNJaT4gRIuxcADF85s
AOA+iezDRAhMSGSJIyHUU8MgEnlTgyircCLNPnfcAQ8t5tjDyj6ZpLNDPohQU1Ef
cwWjwpZaNOESD5LIkMUCC/gTxxtrmFBECAC8QcYbB/CiSiUCrJGMLbhgQ8kacfjh
yTCKyBKLCXHEY0E5GbSzBhl00EEGGYfMpUMMMUhABRUuJRUjmf58Y0caaQAAwwEs
IIHEAdEQs4MDnThwShrvWNhTxyJ1gKoAIeSgUgY904xSQAb4FNCBHXjgQcZcQuwh
CToDDABYD/8tQAEF/gTyhRpqfPEFM0448Us2X1zzBQcdqOGGtmr4ossXLSADjDKv
PKPMudpyYIq29JYyF0tWdJMEczJKOy21ZoARBhgFh7GLwQbLgXDBDJsRxsSGUNAG
GGCM8EIbB2OMcRtywCFyTjvxE0kxK6Q8xcoVtFyBP/rELPPMNNcsMw210NDCONCs
Y3PMOJEskGP8FG300UgnrfTS/CAwwjYvtMB00Rw9RFBDWGettUIPBQQAOw==
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=TwitterFollowMe.png
Content-Type: image/png; name=TwitterFollowMe.png
Content-Location: http://www.websecurity.es/banners/TwitterFollowMe.png
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAP8AAABZCAMAAADGkwILAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFd8TT6+vrWdr/7ObVUFBPzOfq
/v797ujY5tzG5OPjmJiX9fLpZcng3Mqq6N7Jouz+8u3heeH/3Nvb+Pbw0baKhoaG
09PSm+v+i8rVMDAv+fn5y6Vpct//bZ+sWsTd593IR7rW+vXqy8vLstfWwsLC+fj1
ht3yvr298Orcenl39fX1uY1M//769PDm6+TRZ2dm6uLQTdf+geT/8PDws7KylOn/
4dG1rKur6eDM9vTtieb/v5dcZ77RIqTCYtv/oqKha93/rNvh2tbINqzHXsrlhNru
8eze+/r29uLJkeL1dNPp/PPkDAsL8u7j6uLOr6eLxt7Zyal45Ni/etXqLKjEiXFO
SrPK2OPaH6PB4vX66+XSwpNO6N/KUb/amtXfqO//tLCm5dvEbNDpjODzV7bL1r+Z
//32P7bT8vv9gYB++vfyUEU3/vnzctDm/vntt4lFr5VoxL+y7+na9fPr/Pv67NzE
397XnpybY2JgeLC8J6bD7ezj4ODgScXo+O3d8ujVxKBpsK+vleX37One7efXaldE
uuLr6eHNlJOSftnu//zx+vHf6ODO9N7EiqCmX9Hwt4pJc3Jx6uDL9e3d7uHM8OXS
9/Xvr6qk0d7Tjuf/7ujXjo2MtJ16zMnAm+f5u4xGw+35Vm519O3aepSc2NjY0sy/
9O7ga83j6eLP7fLv7OXU4uHW3O7v0K13Ud3/ot/vbWxrOrDLMKrG8+/lpolcpqal
YYWNvJBP4N3NRtP8tIZDPtT/b9n2rs7H7OPQ9OrZ79/Iurq5+P3/9vPq+u/gvbao
to9U4Orkctfx+OrXx8bGqKioQbDI8uzc6uLN0KNl8u/t8/PyUtH1nX1N8fTzz7CB
9+bQjaqTvIdBRUVEJycnGaHB5+fnODg3IiIiFhYV0NDQy9rQ1tXV8OfZ0qFfPz4+
8OPOrfL/3cWhpLum/vbpHR0dbHyBoJ93tra26OPVtIQ/8ezg7u7uWllY8+ve/fz7
V6S6lsLB7fb25+feZdb2Xtb4ut7f////AAAA////hd+JVAAAAQB0Uk5T////////
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
////////////AFP3ByUAACHKSURBVHja1JwJWJTntcdHlBGFIIoLLmXTQcQBHZco
BtxYRtaaYBAJS1gc4lwkVSYRqYmBUhHQGI3iVklqVSwxRKFWjcZooI0LmmKb3Coi
xluNF1t7hUzTGD5zz3nP+22DEBLtc28PSoZFHn7/s77LF823/84maMGsFqPRaHYt
D6xzdPSvdQn3Xd63qHdVwMmJxdOTnD0cHBzSZCuy/QmafyNIHUH6+8dIkMCogHTo
1vA7PCz/T/kR0oqQZg5Zq4JMcuaQKiIPDw8HD3yP5syMv1B8DF9XCOD/f8kvR6tZ
jlZfZKxSRauN4zwUhElJ9J7ZdHA+/aezJdF3cjEkAar+1fydo7WblLSlFH9jEVDm
RCsGk18VX8R3scVdmUIFD1kBB93j4JeiVdcpWk+enMgZpbqjjlsPD1XAyqzw24po
su2PLZ6ospOiBZDBZybaWCzYxYuSCMoYSEtz+Z78Wp6SGK0x9xBSdKSHTW1VWGe/
itHbVbwiKvzq+/crICdyxICqgES0qsTeYInsj2RVouF3KRSRRABvUAxQABRrvxe/
+fYzXUF2BSw5WRnNighWOJc7bD8SM04RhpP1hhdFRUX4t0sTZWDvUCbUANVjIlws
Zh1CEiAtrfz78DsOHvmkR0+gPWzDWulojquOUtG1VYmct3dvmbOvaMu7MvHL+F6t
RWJvWQUIApYEUgSkpS3/Hvxffjrytdse3cLbgssRTi6+WBwbq6TGOJZ4OfAOQOCs
vt/blILIKqAILAooBFgOkADO1h7z33p35MhPBjt3FeciN0cXGxKhryuO5ZkMfqD8
TVT6WOleThLuG96Vudzj1vlLKhXwZ+4Q4wCDgCUBCgCNgNXAtDTHHvPfHgn2abd1
zbaqiakNOc0qNFYtJfjDHC2S3HMhi1GY9EEtWIzK+He73FPoQBLsAFtdRGmAxVAW
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
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=Facebook.jpg
Content-Type: image/jpeg; name=Facebook.jpg
Content-Location: http://www.websecurity.es/banners/Facebook.jpg
Content-Transfer-Encoding: Base64
/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQH/wAARCABwASwDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA
AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh
MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6
Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ
mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx
8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA
AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV
YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp
anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE
xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD8
t6KKK/0gP5fCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiig
AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKM4p1vHLd
zNb2kU13cIAXt7SKS7uEB6F4LZZZlB4wWQA5GCaPPotX5ANoq9Npeq28TzXGk6vb
wxjdJNcaVqNvDGucbpJprWOKNc8bndRnjOao0k09mn6O4WtuFFFFMAooooAKKKKA
CiiigAooozQAUUHgFiCFHViCFH1YjA/OkBDAFSGB5BBBBB5BBHBB7EEigBaKKKAC
iiigAooooAKKKKACiijPbvQAUUjEIpd/kQdXf5EH1ZsKPzpevIoAKKKKACiiigAo
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
RRRQAUUUUAFFFFAH/9k=
------------GUKUxiT5m4ltKAs8Mieq9p
Content-Disposition: inline; filename=favicon.htm
Content-Type: text/html; charset=utf-8; name=favicon.htm
Content-Location: http://www.websecurity.es/home/websecurity/www/sites/all/themes/corporateclean/favicon.ico
Content-Transfer-Encoding: Quoted-Printable
Error 404 (P=C3=A1gina no encontrada) | Websecurity.es =
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
Error 404 (P=C3=A1gina no encontrada)
=
=
=
=
=
P=C3=A1gina no encontrada, ser=C3=A1 redireccionado en 5 segundos a =
la p=C3=A1gina principal.
=
=
=
=
=
------------GUKUxiT5m4ltKAs8Mieq9p--