Content-Type: multipart/related; start=; boundary=----------593EbJThBn2TVX69B2Huu6
Content-Location: http://es.wikipedia.org/wiki/M%C3%B3naco
Subject: =?utf-8?Q?M=C3=B3naco=20-=20Wikipedia,=20la=20enciclopedia=20libre?=
MIME-Version: 1.0
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename*=utf-8''M%C3%B3naco.htm
Content-Type: text/html; charset=UTF-8; name*=utf-8''M%C3%B3naco.htm
Content-ID:
Content-Location: http://es.wikipedia.org/wiki/M%C3%B3naco
Content-Transfer-Encoding: Base64
PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJh
bnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQv
eGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCIgbGFuZz0iZXMiIGRpcj0ibHRyIj4KPGhlYWQ+
Cjx0aXRsZT5Nw7NuYWNvIC0gV2lraXBlZGlhLCBsYSBlbmNpY2xvcGVkaWEgbGli
cmU8L3RpdGxlPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRl
bnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIgLz4KPG1ldGEgaHR0cC1lcXVp
dj0iQ29udGVudC1TdHlsZS1UeXBlIiBjb250ZW50PSJ0ZXh0L2NzcyIgLz4KPG1l
dGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJNZWRpYVdpa2kgMS4xNndtZjQi
IC8+CjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiB0eXBlPSJhcHBsaWNhdGlvbi94LXdp
a2kiIHRpdGxlPSJFZGl0YXIiIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1NJUMz
JUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQiIC8+CjxsaW5rIHJlbD0iZWRpdCIgdGl0
bGU9IkVkaXRhciIgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPU0lQzMlQjNuYWNv
JmFtcDthY3Rpb249ZWRpdCIgLz4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29u
IiBocmVmPSJodHRwOi8vZXMud2lraXBlZGlhLm9yZy9hcHBsZS10b3VjaC1pY29u
LnBuZyIgLz4KPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIvZmF2aWNv
bi5pY28iIC8+CjxsaW5rIHJlbD0ic2VhcmNoIiB0eXBlPSJhcHBsaWNhdGlvbi9v
cGVuc2VhcmNoZGVzY3JpcHRpb24reG1sIiBocmVmPSIvdy9vcGVuc2VhcmNoX2Rl
c2MucGhwIiB0aXRsZT0iV2lraXBlZGlhIChlcykiIC8+CjxsaW5rIHJlbD0iY29w
eXJpZ2h0IiBocmVmPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNl
cy9ieS1zYS8zLjAvIiAvPgo8bGluayByZWw9ImFsdGVybmF0ZSIgdHlwZT0iYXBw
bGljYXRpb24vYXRvbSt4bWwiIHRpdGxlPSJXaWtpcGVkaWEgRnVlbnRlIEF0b20i
IGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1Fc3BlY2lhbDpDYW1iaW9zUmVjaWVu
dGVzJmFtcDtmZWVkPWF0b20iIC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0iaHR0cDovL2JpdHMud2lraW1lZGlhLm9yZy9za2lucy0xLjUvdmVjdG9yL21h
aW4tbHRyLmNzcz8yODNyIiB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiIg
Lz4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwOi8vYml0cy53aWtp
bWVkaWEub3JnL3NraW5zLTEuNS9jb21tb24vc2hhcmVkLmNzcz8yODNyIiB0eXBl
PSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiIgLz4KPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSJodHRwOi8vYml0cy53aWtpbWVkaWEub3JnL3NraW5zLTEuNS9j
b21tb24vY29tbW9uUHJpbnQuY3NzPzI4M3IiIHR5cGU9InRleHQvY3NzIiBtZWRp
YT0icHJpbnQiIC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cDov
L2JpdHMud2lraW1lZGlhLm9yZy93L2V4dGVuc2lvbnMvVXNhYmlsaXR5SW5pdGlh
dGl2ZS9jc3MvY29tYmluZWQubWluLmNzcz8xMTciIHR5cGU9InRleHQvY3NzIiBt
ZWRpYT0iYWxsIiAvPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHA6
Ly9iaXRzLndpa2ltZWRpYS5vcmcvdy9leHRlbnNpb25zL1VzYWJpbGl0eUluaXRp
YXRpdmUvY3NzL3ZlY3Rvci9qcXVlcnktdWktMS43LjIuY3NzPzEuNy4yeSIgdHlw
ZT0idGV4dC9jc3MiIG1lZGlhPSJhbGwiIC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPU1lZGlhV2lraTpDb21tb24uY3Nz
JmFtcDt1c2Vtc2djYWNoZT15ZXMmYW1wO2N0eXBlPXRleHQlMkZjc3MmYW1wO3Nt
YXhhZ2U9MjY3ODQwMCZhbXA7YWN0aW9uPXJhdyZhbXA7bWF4YWdlPTI2Nzg0MDAi
IHR5cGU9InRleHQvY3NzIiBtZWRpYT0iYWxsIiAvPgo8bGluayByZWw9InN0eWxl
c2hlZXQiIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1NZWRpYVdpa2k6UHJpbnQu
Y3NzJmFtcDt1c2Vtc2djYWNoZT15ZXMmYW1wO2N0eXBlPXRleHQlMkZjc3MmYW1w
O3NtYXhhZ2U9MjY3ODQwMCZhbXA7YWN0aW9uPXJhdyZhbXA7bWF4YWdlPTI2Nzg0
MDAiIHR5cGU9InRleHQvY3NzIiBtZWRpYT0icHJpbnQiIC8+CjxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPU1lZGlhV2lraTpI
YW5kaGVsZC5jc3MmYW1wO3VzZW1zZ2NhY2hlPXllcyZhbXA7Y3R5cGU9dGV4dCUy
RmNzcyZhbXA7c21heGFnZT0yNjc4NDAwJmFtcDthY3Rpb249cmF3JmFtcDttYXhh
Z2U9MjY3ODQwMCIgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJoYW5kaGVsZCIgLz4K
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9
TWVkaWFXaWtpOlZlY3Rvci5jc3MmYW1wO3VzZW1zZ2NhY2hlPXllcyZhbXA7Y3R5
cGU9dGV4dCUyRmNzcyZhbXA7c21heGFnZT0yNjc4NDAwJmFtcDthY3Rpb249cmF3
JmFtcDttYXhhZ2U9MjY3ODQwMCIgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJhbGwi
IC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL3cvaW5kZXgucGhwP3Rp
dGxlPS0mYW1wO2FjdGlvbj1yYXcmYW1wO21heGFnZT0yNjc4NDAwJmFtcDtnZW49
Y3NzIiB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9ImFsbCIgLz4KPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiPgp2YXIgc2tpbj0idmVjdG9yIiwKc3R5bGVwYXRo
PSJodHRwOi8vYml0cy53aWtpbWVkaWEub3JnL3NraW5zLTEuNSIsCndnVXJsUHJv
dG9jb2xzPSJodHRwXFw6XFwvXFwvfGh0dHBzXFw6XFwvXFwvfGZ0cFxcOlxcL1xc
L3xpcmNcXDpcXC9cXC98Z29waGVyXFw6XFwvXFwvfHRlbG5ldFxcOlxcL1xcL3xu
bnRwXFw6XFwvXFwvfHdvcmxkd2luZFxcOlxcL1xcL3xtYWlsdG9cXDp8bmV3c1xc
Onxzdm5cXDpcXC9cXC8iLAp3Z0FydGljbGVQYXRoPSIvd2lraS8kMSIsCndnU2Ny
aXB0UGF0aD0iL3ciLAp3Z1NjcmlwdEV4dGVuc2lvbj0iLnBocCIsCndnU2NyaXB0
PSIvdy9pbmRleC5waHAiLAp3Z1ZhcmlhbnRBcnRpY2xlUGF0aD1mYWxzZSwKd2dB
Y3Rpb25QYXRocz17fSwKd2dTZXJ2ZXI9Imh0dHA6Ly9lcy53aWtpcGVkaWEub3Jn
IiwKd2dDYW5vbmljYWxOYW1lc3BhY2U9IiIsCndnQ2Fub25pY2FsU3BlY2lhbFBh
Z2VOYW1lPWZhbHNlLAp3Z05hbWVzcGFjZU51bWJlcj0wLAp3Z1BhZ2VOYW1lPSJN
w7NuYWNvIiwKd2dUaXRsZT0iTcOzbmFjbyIsCndnQWN0aW9uPSJ2aWV3IiwKd2dB
cnRpY2xlSWQ9MjM1NjQsCndnSXNBcnRpY2xlPXRydWUsCndnVXNlck5hbWU9bnVs
bCwKd2dVc2VyR3JvdXBzPW51bGwsCndnVXNlckxhbmd1YWdlPSJlcyIsCndnQ29u
dGVudExhbmd1YWdlPSJlcyIsCndnQnJlYWtGcmFtZXM9ZmFsc2UsCndnQ3VyUmV2
aXNpb25JZD00MDE1MDM2MiwKd2dWZXJzaW9uPSIxLjE2d21mNCIsCndnRW5hYmxl
QVBJPXRydWUsCndnRW5hYmxlV3JpdGVBUEk9dHJ1ZSwKd2dTZXBhcmF0b3JUcmFu
c2Zvcm1UYWJsZT1bIiwJLiIsICIuCSwiXSwKd2dEaWdpdFRyYW5zZm9ybVRhYmxl
PVsiIiwgIiJdLAp3Z01haW5QYWdlVGl0bGU9Ildpa2lwZWRpYTpQb3J0YWRhIiwK
d2dGb3JtYXR0ZWROYW1lc3BhY2VzPXsiLTIiOiAiTWVkaWEiLCAiLTEiOiAiRXNw
ZWNpYWwiLCAiMCI6ICIiLCAiMSI6ICJEaXNjdXNpw7NuIiwgIjIiOiAiVXN1YXJp
byIsICIzIjogIlVzdWFyaW8gRGlzY3VzacOzbiIsICI0IjogIldpa2lwZWRpYSIs
ICI1IjogIldpa2lwZWRpYSBEaXNjdXNpw7NuIiwgIjYiOiAiQXJjaGl2byIsICI3
IjogIkFyY2hpdm8gRGlzY3VzacOzbiIsICI4IjogIk1lZGlhV2lraSIsICI5Ijog
Ik1lZGlhV2lraSBEaXNjdXNpw7NuIiwgIjEwIjogIlBsYW50aWxsYSIsICIxMSI6
ICJQbGFudGlsbGEgRGlzY3VzacOzbiIsICIxMiI6ICJBeXVkYSIsICIxMyI6ICJB
eXVkYSBEaXNjdXNpw7NuIiwgIjE0IjogIkNhdGVnb3LDrWEiLCAiMTUiOiAiQ2F0
ZWdvcsOtYSBEaXNjdXNpw7NuIiwgIjEwMCI6ICJQb3J0YWwiLCAiMTAxIjogIlBv
cnRhbCBEaXNjdXNpw7NuIiwgIjEwMiI6ICJXaWtpcHJveWVjdG8iLCAiMTAzIjog
Ildpa2lwcm95ZWN0byBEaXNjdXNpw7NuIiwgIjEwNCI6ICJBbmV4byIsICIxMDUi
OiAiQW5leG8gRGlzY3VzacOzbiJ9LAp3Z05hbWVzcGFjZUlkcz17Im1lZGlhIjog
LTIsICJlc3BlY2lhbCI6IC0xLCAiIjogMCwgImRpc2N1c2nDs24iOiAxLCAidXN1
YXJpbyI6IDIsICJ1c3VhcmlvX2Rpc2N1c2nDs24iOiAzLCAid2lraXBlZGlhIjog
NCwgIndpa2lwZWRpYV9kaXNjdXNpw7NuIjogNSwgImFyY2hpdm8iOiA2LCAiYXJj
aGl2b19kaXNjdXNpw7NuIjogNywgIm1lZGlhd2lraSI6IDgsICJtZWRpYXdpa2lf
ZGlzY3VzacOzbiI6IDksICJwbGFudGlsbGEiOiAxMCwgInBsYW50aWxsYV9kaXNj
dXNpw7NuIjogMTEsICJheXVkYSI6IDEyLCAiYXl1ZGFfZGlzY3VzacOzbiI6IDEz
LCAiY2F0ZWdvcsOtYSI6IDE0LCAiY2F0ZWdvcsOtYV9kaXNjdXNpw7NuIjogMTUs
ICJwb3J0YWwiOiAxMDAsICJwb3J0YWxfZGlzY3VzacOzbiI6IDEwMSwgIndpa2lw
cm95ZWN0byI6IDEwMiwgIndpa2lwcm95ZWN0b19kaXNjdXNpw7NuIjogMTAzLCAi
YW5leG8iOiAxMDQsICJhbmV4b19kaXNjdXNpw7NuIjogMTA1LCAiaW1hZ2VuIjog
NiwgImltYWdlbl9kaXNjdXNpw7NuIjogNywgImltYWdlIjogNiwgImltYWdlX3Rh
bGsiOiA3fSwKd2dTaXRlTmFtZT0iV2lraXBlZGlhIiwKd2dDYXRlZ29yaWVzPVsi
V2lraXBlZGlhOlRyYWR1Y2Npb25lcyBwYXJhIG1lam9yYXIiLCAiTcOzbmFjbyIs
ICJMb2NhbGlkYWRlcyBkZSBFdXJvcGEiLCAiV2lraXBlZGlhOkFydMOtY3Vsb3Mg
ZGVzdGFjYWRvcyBlbiB3OmFmIl0sCndnTVdTdWdnZXN0VGVtcGxhdGU9Imh0dHA6
Ly9lcy53aWtpcGVkaWEub3JnL3cvYXBpLnBocD9hY3Rpb249b3BlbnNlYXJjaFx4
MjZzZWFyY2g9e3NlYXJjaFRlcm1zfVx4MjZuYW1lc3BhY2U9e25hbWVzcGFjZXN9
XHgyNnN1Z2dlc3QiLAp3Z0RCbmFtZT0iZXN3aWtpIiwKd2dTZWFyY2hOYW1lc3Bh
Y2VzPVswLCAxMDAsIDEwNF0sCndnTVdTdWdnZXN0TWVzc2FnZXM9WyJjb24gc3Vn
ZXJlbmNpYXMiLCAic2luIHN1Z2VyZW5jaWFzIl0sCndnUmVzdHJpY3Rpb25FZGl0
PVtdLAp3Z1Jlc3RyaWN0aW9uTW92ZT1bXSwKd2dXaWtpbWVkaWFNb2JpbGVVcmw9
Imh0dHA6Ly9lcy5tLndpa2lwZWRpYS5vcmcvd2lraSIsCndnQ29sbGFwc2libGVO
YXZCdWNrZXRUZXN0PWZhbHNlLAp3Z0NvbGxhcHNpYmxlTmF2Rm9yY2VOZXdWZXJz
aW9uPWZhbHNlLAp3Z1ZlY3RvclByZWZlcmVuY2VzPXsiY29sbGFwc2libGVuYXYi
OiB7ImVuYWJsZSI6IDF9LCAiZWRpdHdhcm5pbmciOiB7ImVuYWJsZSI6IDF9LCAi
c2ltcGxlc2VhcmNoIjogeyJlbmFibGUiOiAxLCAiZGlzYWJsZXN1Z2dlc3QiOiAw
fX0sCndnVmVjdG9yRW5hYmxlZE1vZHVsZXM9eyJjb2xsYXBzaWJsZW5hdiI6IHRy
dWUsICJjb2xsYXBzaWJsZXRhYnMiOiB0cnVlLCAiZWRpdHdhcm5pbmciOiB0cnVl
LCAiZXhwYW5kYWJsZXNlYXJjaCI6IGZhbHNlLCAiZm9vdGVyY2xlYW51cCI6IGZh
bHNlLCAic2ltcGxlc2VhcmNoIjogdHJ1ZX0sCndnTm90aWNlPSIiOwo8L3Njcmlw
dD48c2NyaXB0IHNyYz0iaHR0cDovL2JpdHMud2lraW1lZGlhLm9yZy9za2lucy0x
LjUvY29tbW9uL3dpa2liaXRzLmpzPzI4M3IiIHR5cGU9InRleHQvamF2YXNjcmlw
dCI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9
Imh0dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvc2tpbnMtMS41L2NvbW1vbi9qcXVl
cnkubWluLmpzPzI4M3IiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iaHR0cDovL2Jp
dHMud2lraW1lZGlhLm9yZy9za2lucy0xLjUvY29tbW9uL2FqYXguanM/MjgzciIg
dHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Imh0
dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvc2tpbnMtMS41L2NvbW1vbi9td3N1Z2dl
c3QuanM/MjgzciIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KPHNj
cmlwdCBzcmM9Imh0dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvdy9leHRlbnNpb25z
L1dpa2ltZWRpYU1vYmlsZS9Nb2JpbGVSZWRpcmVjdC5qcz8yLjIiIHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSJodHRwOi8vYml0
cy53aWtpbWVkaWEub3JnL3cvZXh0ZW5zaW9ucy9Vc2FiaWxpdHlJbml0aWF0aXZl
L2pzL3BsdWdpbnMuY29tYmluZWQubWluLmpzPzI4M3IiIHR5cGU9InRleHQvamF2
YXNjcmlwdCI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSJodHRwOi8vYml0cy53aWtp
bWVkaWEub3JnL3cvZXh0ZW5zaW9ucy9Vc2FiaWxpdHlJbml0aWF0aXZlL1ZlY3Rv
ci9WZWN0b3IuY29tYmluZWQubWluLmpzPzI4M3IiIHR5cGU9InRleHQvamF2YXNj
cmlwdCI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5t
dy51c2FiaWxpdHkuYWRkTWVzc2FnZXMoeyd2ZWN0b3ItY29sbGFwc2libGVuYXYt
bW9yZSc6J03DoXMgaWRpb21hcycsJ3ZlY3Rvci1lZGl0d2FybmluZy13YXJuaW5n
JzonRGVqYXIgZXN0YSBww6FnaW5hIGxlIGNhdXNhcsOhIGxhIHDDqXJkaWRhIGRl
IGN1YWxxdWllciBjYW1iaW8gcXVlIGhheWEgaGVjaG8uXG5TaSBlc3TDoSBcImxv
Z3VlYWRvXCIsIHB1ZWRlIGRlc2hhYmlsaXRhciBlc3RhIGFkdmVydGVuY2lhIGVu
IGxhIHNlY2Npw7NuIFwiRWRpY2nDs25cIiBkZSBzdXMgcHJlZmVyZW5jaWFzLics
J3ZlY3Rvci1zaW1wbGVzZWFyY2gtc2VhcmNoJzonQsO6c3F1ZWRhJywndmVjdG9y
LXNpbXBsZXNlYXJjaC1jb250YWluaW5nJzonY29udGVuaWVuZG8uLi4nfSk7PC9z
Y3JpcHQ+CjxzY3JpcHQgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcv
Y2VudHJhbG5vdGljZS93aWtpcGVkaWEvZXMvY2VudHJhbG5vdGljZS5qcz8yODNy
IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pgo8IS0tW2lmIGx0IElF
IDddPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ym9keXtiZWhhdmlvcjp1cmwoIi93
L3NraW5zLTEuNS92ZWN0b3IvY3NzaG92ZXIuaHRjIil9PC9zdHlsZT48IVtlbmRp
Zl0tLT4KPHNjcmlwdCBzcmM9Ii93L2luZGV4LnBocD90aXRsZT0tJmFtcDthY3Rp
b249cmF3JmFtcDtnZW49anMmYW1wO3VzZXNraW49dmVjdG9yJmFtcDsyODNyIiB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PgoKPC9oZWFkPgo8Ym9keSBj
bGFzcz0ibWVkaWF3aWtpIGx0ciBucy0wIG5zLXN1YmplY3QgcGFnZS1Nw7NuYWNv
IHNraW4tdmVjdG9yIj4KCQk8ZGl2IGlkPSJtdy1wYWdlLWJhc2UiIGNsYXNzPSJu
b3ByaW50Ij48L2Rpdj4KCQk8ZGl2IGlkPSJtdy1oZWFkLWJhc2UiIGNsYXNzPSJu
b3ByaW50Ij48L2Rpdj4KCQk8IS0tIGNvbnRlbnQgLS0+CgkJPGRpdiBpZD0iY29u
dGVudCI+CgkJCTxhIGlkPSJ0b3AiPjwvYT4KCQkJPGRpdiBpZD0ibXctanMtbWVz
c2FnZSIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPjwvZGl2PgoJCQkJCQk8IS0tIHNp
dGVub3RpY2UgLS0+CgkJCTxkaXYgaWQ9InNpdGVOb3RpY2UiPjxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij5pZiAod2dOb3RpY2UgIT0gJycpIGRvY3VtZW50
LndyaXRlbG4od2dOb3RpY2UpOzwvc2NyaXB0PjwvZGl2PgoJCQk8IS0tIC9zaXRl
bm90aWNlIC0tPgoJCQkJCQk8IS0tIGZpcnN0SGVhZGluZyAtLT4KCQkJPGgxIGlk
PSJmaXJzdEhlYWRpbmciIGNsYXNzPSJmaXJzdEhlYWRpbmciPk3Ds25hY288L2gx
PgoJCQk8IS0tIC9maXJzdEhlYWRpbmcgLS0+CgkJCTwhLS0gYm9keUNvbnRlbnQg
LS0+CgkJCTxkaXYgaWQ9ImJvZHlDb250ZW50Ij4KCQkJCTwhLS0gdGFnbGluZSAt
LT4KCQkJCTxkaXYgaWQ9InNpdGVTdWIiPkRlIFdpa2lwZWRpYSwgbGEgZW5jaWNs
b3BlZGlhIGxpYnJlPC9kaXY+CgkJCQk8IS0tIC90YWdsaW5lIC0tPgoJCQkJPCEt
LSBzdWJ0aXRsZSAtLT4KCQkJCTxkaXYgaWQ9ImNvbnRlbnRTdWIiPjwvZGl2PgoJ
CQkJPCEtLSAvc3VidGl0bGUgLS0+CgkJCQkJCQkJCQkJCQkJCQk8IS0tIGp1bXB0
byAtLT4KCQkJCTxkaXYgaWQ9Imp1bXAtdG8tbmF2Ij4KCQkJCQlTYWx0YXIgYSA8
YSBocmVmPSIjbXctaGVhZCI+bmF2ZWdhY2nDs248L2E+LAoJCQkJCTxhIGhyZWY9
IiNwLXNlYXJjaCI+YsO6c3F1ZWRhPC9hPgoJCQkJPC9kaXY+CgkJCQk8IS0tIC9q
dW1wdG8gLS0+CgkJCQkJCQkJPCEtLSBib2R5dGV4dCAtLT4KCQkJCTx0YWJsZSBj
bGFzcz0iaW5mb2JveCBnZW9ncmFwaHkiIHN0eWxlPSJ3aWR0aDoyM2VtOyBmb250
LXNpemU6ODclOyB0ZXh0LWFsaWduOmxlZnQiPgo8dHI+Cjx0aCBjb2xzcGFuPSIy
IiBzdHlsZT0iZm9udC1zaXplOjEzNSU7IHRleHQtYWxpZ246Y2VudGVyOyBmb250
LXdlaWdodDpib2xkIj48aT5QcmluY2lwYXV0w6kgZGUgTW9uYWNvPGJyIC8+ClBy
aW5jaXBhdHUgZGUgTcO6bmVndTwvaT48YnIgLz4KUHJpbmNpcGFkbyBkZSBNw7Nu
YWNvPC90aD4KPC90cj4KPHRyIGNsYXNzPSJtZXJnZWR0b3Byb3ciPgo8dGQgY29s
c3Bhbj0iMyIgY2xhc3M9Im1hcHRhYmxlIiBhbGlnbj0iY2VudGVyIiBzdHlsZT0i
cGFkZGluZzowIDA7Ij4KPHRhYmxlIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJ3aWR0
aDoxMDAlOyBiYWNrZ3JvdW5kOndoaXRlOyBwYWRkaW5nOjAuNWVtIDA7Ij4KPHRy
Pgo8dGQgYWxpZ249ImNlbnRlciIgc3R5bGU9IndpZHRoOjU4JTsgdmVydGljYWwt
YWxpZ246bWlkZGxlOyI+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpGbGFnX29mX01v
bmFjby5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9IkJhbmRlcmEgZGUgTcOzbmFj
byI+PGltZyBhbHQ9IkJhbmRlcmEgZGUgTcOzbmFjbyIgc3JjPSJodHRwOi8vdXBs
b2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvZS9lYS9G
bGFnX29mX01vbmFjby5zdmcvMTI1cHgtRmxhZ19vZl9Nb25hY28uc3ZnLnBuZyIg
d2lkdGg9IjEyNSIgaGVpZ2h0PSIxMDAiIGNsYXNzPSJ0aHVtYmJvcmRlciIgLz48
L2E+PC90ZD4KPHRkIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJ3aWR0aDphdXRvOyB2
ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Ij48YSBocmVmPSIvd2lraS9BcmNoaXZvOkNv
YXRfb2ZfQXJtc19vZl9Nb25hY28uc3ZnIiBjbGFzcz0iaW1hZ2UiIHRpdGxlPSJF
c2N1ZG8gZGUgTcOzbmFjbyI+PGltZyBhbHQ9IkVzY3VkbyBkZSBNw7NuYWNvIiBz
cmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9u
cy90aHVtYi81LzViL0NvYXRfb2ZfQXJtc19vZl9Nb25hY28uc3ZnLzEyNXB4LUNv
YXRfb2ZfQXJtc19vZl9Nb25hY28uc3ZnLnBuZyIgd2lkdGg9IjEyNSIgaGVpZ2h0
PSIxMjAiIC8+PC9hPjwvdGQ+CjwvdHI+Cjx0cj4KPHRkIGFsaWduPSJjZW50ZXIi
PjxzbWFsbD48YSBocmVmPSIvd2lraS9CYW5kZXJhX2RlX00lQzMlQjNuYWNvIiB0
aXRsZT0iQmFuZGVyYSBkZSBNw7NuYWNvIj5CYW5kZXJhPC9hPjwvc21hbGw+PC90
ZD4KPHRkIGFsaWduPSJjZW50ZXIiPjxzbWFsbD48YSBocmVmPSIvd2lraS9Fc2N1
ZG9fZGVfTSVDMyVCM25hY28iIHRpdGxlPSJFc2N1ZG8gZGUgTcOzbmFjbyI+RXNj
dWRvPC9hPjwvc21hbGw+PC90ZD4KPC90cj4KPC90YWJsZT4KPC90ZD4KPC90cj4K
PHRyPgo8dGQgY2xhc3M9Im1hcHRhYmxlIiBhbGlnbj0iY2VudGVyIiBjb2xzcGFu
PSIyIiBzdHlsZT0icGFkZGluZzowZW0gMC44ZW0gMC40ZW0gMC44ZW0iPgo8dGFi
bGUgc3R5bGU9IndpZHRoOjEwMCU7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJl
bnQ7IHRleHQtYWxpZ246bGVmdDsgYm9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlOyBw
YWRkaW5nOjA7IG1hcmdpbjowOyBib3JkZXI6MDsgZm9udC1zaXplOjEwMCUiPgo8
dHI+Cjx0ZCBjb2xzcGFuPSIyIiBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyB2
ZXJ0aWNhbC1hbGlnbjogdG9wOyBmb250LXNpemU6IDkwJTsgYm9yZGVyLWJvdHRv
bTogc29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVtIDFlbSAwLjRlbSAw
OyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0ZXh0LWFsaWduOiBjZW50ZXI7Ij48YSBo
cmVmPSIvd2lraS9BbmV4bzpMZW1hc19kZV9Fc3RhZG8iIHRpdGxlPSJBbmV4bzpM
ZW1hcyBkZSBFc3RhZG8iPkxlbWE8L2E+OiBEZW8gSnV2YW50ZTxiciAvPgooPGEg
aHJlZj0iL3dpa2kvSWRpb21hX2xhdCVDMyVBRG4iIHRpdGxlPSJJZGlvbWEgbGF0
w61uIiBjbGFzcz0ibXctcmVkaXJlY3QiPkxhdMOtbjwvYT46ICJDb24gbGEgYXl1
ZGEgZGUgRGlvcyIpPC90ZD4KPC90cj4KPHRyPgo8dGQgY29sc3Bhbj0iMiIgc3R5
bGU9InRleHQtYWxpZ246IGNlbnRlcjsgdmVydGljYWwtYWxpZ246IHRvcDsgZm9u
dC1zaXplOiA5MCU7IGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjY2NkMmQ5O3Bh
ZGRpbmc6IDAuNGVtIDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0
ZXh0LWFsaWduOiBjZW50ZXI7Ij48YSBocmVmPSIvd2lraS9IaW1ub19uYWNpb25h
bCIgdGl0bGU9IkhpbW5vIG5hY2lvbmFsIiBjbGFzcz0ibXctcmVkaXJlY3QiPkhp
bW5vIG5hY2lvbmFsPC9hPjogPGEgaHJlZj0iL3dpa2kvSGltbm9fZGVfTSVDMyVC
M25hY28iIHRpdGxlPSJIaW1ubyBkZSBNw7NuYWNvIj5IaW1ubyBkZSBNw7NuYWNv
PC9hPjwvdGQ+CjwvdHI+Cjx0cj4KPHRkIGNvbHNwYW49IjIiPiYjMTYwOzwvdGQ+
CjwvdHI+Cjx0cj4KPHRkIGNvbHNwYW49IjIiPgo8ZGl2IGNsYXNzPSJjZW50ZXIi
Pgo8ZGl2IGNsYXNzPSJmbG9hdG5vbmUiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86
TG9jYXRpb25fTW9uYWNvX0V1cm9wZS5wbmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9
IlNpdHVhY2nDs24gZGUgTcOzbmFjbyI+PGltZyBhbHQ9IlNpdHVhY2nDs24gZGUg
TcOzbmFjbyIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBl
ZGlhL2NvbW1vbnMvdGh1bWIvZi9mNS9Mb2NhdGlvbl9Nb25hY29fRXVyb3BlLnBu
Zy8yNTBweC1Mb2NhdGlvbl9Nb25hY29fRXVyb3BlLnBuZyIgd2lkdGg9IjI1MCIg
aGVpZ2h0PSIyMTkiIC8+PC9hPjwvZGl2Pgo8L2Rpdj4KPC90ZD4KPC90cj4KPHRy
Pgo8dGQgY29sc3Bhbj0iMiI+JiMxNjA7PC90ZD4KPC90cj4KPHRyPgo8dGQgc3R5
bGU9ImJvcmRlci10b3A6c29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6MC40ZW0g
MWVtIDAuNGVtIDA7IHZlcnRpY2FsLWFsaWduOiB0b3A7IHRleHQtYWxpZ246bGVm
dCI+PGEgaHJlZj0iL3dpa2kvQ2FwaXRhbF8ocG9sJUMzJUFEdGljYSkiIHRpdGxl
PSJDYXBpdGFsIChwb2zDrXRpY2EpIj5DYXBpdGFsPC9hPjwvdGQ+Cjx0ZCBzdHls
ZT0iYm9yZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVt
IDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wIj5Nw7NuYWNvPHN1cCBp
ZD0iY2l0ZV9yZWYtMCIgY2xhc3M9InJlZmVyZW5jZSI+PGEgaHJlZj0iI2NpdGVf
bm90ZS0wIj48c3BhbiBjbGFzcz0iY29yY2hldGUtbGxhbWFkYSI+Wzwvc3Bhbj4x
PHNwYW4gY2xhc3M9ImNvcmNoZXRlLWxsYW1hZGEiPl08L3NwYW4+PC9hPjwvc3Vw
PiAoPGEgaHJlZj0iL3dpa2kvTW9uYWNvLVZpbGxlIiB0aXRsZT0iTW9uYWNvLVZp
bGxlIj5Nb25hY28tVmlsbGU8L2E+KTxiciAvPgo8c21hbGw+PGEgaHJlZj0iaHR0
cDovL3Rvb2xzZXJ2ZXIub3JnL35nZW9oYWNrL2dlb2hhY2sucGhwP3BhZ2VuYW1l
PU0lQzMlQjNuYWNvJmFtcDtsYW5ndWFnZT1lcyZhbXA7cGFyYW1zPTQzXzQ0X05f
N18yNF9FXyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIHJlbD0ibm9mb2xsb3ciPjQz
wrA0NOKAsiBOIDfCsDI04oCyIEU8L2E+PC9zbWFsbD48L3RkPgo8L3RyPgo8dHI+
Cjx0ZCBzdHlsZT0iYm9yZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHBhZGRp
bmc6IDAuNGVtIDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0ZXh0
LWFsaWduOiBsZWZ0OyI+PGEgaHJlZj0iL3dpa2kvSWRpb21hX29maWNpYWwiIHRp
dGxlPSJJZGlvbWEgb2ZpY2lhbCI+SWRpb21hcyBvZmljaWFsZXM8L2E+PC90ZD4K
PHRkIHN0eWxlPSJib3JkZXItdG9wOiBzb2xpZCAxcHggI2NjZDJkOTsgcGFkZGlu
ZzogMC40ZW0gMWVtIDAuNGVtIDA7IHZlcnRpY2FsLWFsaWduOiB0b3A7IHRleHQt
YWxpZ246IGxlZnQ7Ij48YSBocmVmPSIvd2lraS9JZGlvbWFfbW9uZWdhc2NvIiB0
aXRsZT0iSWRpb21hIG1vbmVnYXNjbyI+TW9uZWdhc2NvPC9hPiB5IDxhIGhyZWY9
Ii93aWtpL0lkaW9tYV9mcmFuYyVDMyVBOXMiIHRpdGxlPSJJZGlvbWEgZnJhbmPD
qXMiPmZyYW5jw6lzPC9hPjwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJib3Jk
ZXItdG9wOiBzb2xpZCAxcHggI2NjZDJkOTsgcGFkZGluZzogMC40ZW0gMWVtIDAu
NGVtIDA7IHZlcnRpY2FsLWFsaWduOiB0b3A7IHRleHQtYWxpZ246IGxlZnQ7Ij48
YSBocmVmPSIvd2lraS9Gb3JtYV9kZV9nb2JpZXJubyIgdGl0bGU9IkZvcm1hIGRl
IGdvYmllcm5vIj5Gb3JtYSBkZSBnb2JpZXJubzwvYT48L3RkPgo8dGQgc3R5bGU9
ImJvcmRlci10b3A6IHNvbGlkIDFweCAjY2NkMmQ5OyBwYWRkaW5nOiAwLjRlbSAx
ZW0gMC40ZW0gMDsgdmVydGljYWwtYWxpZ246IHRvcDsgdGV4dC1hbGlnbjogbGVm
dDsiPjxhIGhyZWY9Ii93aWtpL01vbmFycXUlQzMlQURhX2NvbnN0aXR1Y2lvbmFs
IiB0aXRsZT0iTW9uYXJxdcOtYSBjb25zdGl0dWNpb25hbCI+TW9uYXJxdcOtYSBj
b25zdGl0dWNpb25hbDwvYT48L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHlsZT0icGFk
ZGluZzogMC40ZW0gMWVtIDAuNGVtIDA7IHZlcnRpY2FsLWFsaWduOiB0b3A7IHRl
eHQtYWxpZ246IGxlZnQ7Ij48YSBocmVmPSIvd2lraS9Tb2JlcmFub3NfZGVfTSVD
MyVCM25hY28iIHRpdGxlPSJTb2JlcmFub3MgZGUgTcOzbmFjbyIgY2xhc3M9Im13
LXJlZGlyZWN0Ij5QcsOtbmNpcGU8L2E+PGJyIC8+CjxhIGhyZWY9Ii93aWtpL01p
bmlzdHJvX2RlX0VzdGFkb19kZV9NJUMzJUIzbmFjbyIgdGl0bGU9Ik1pbmlzdHJv
IGRlIEVzdGFkbyBkZSBNw7NuYWNvIj5NaW5pc3RybyBkZSBFc3RhZG88L2E+PC90
ZD4KPHRkIHN0eWxlPSJwYWRkaW5nOiAwLjRlbSAxZW0gMC40ZW0gMDsgdmVydGlj
YWwtYWxpZ246IHRvcDsgdGV4dC1hbGlnbjogbGVmdDsiPjxhIGhyZWY9Ii93aWtp
L0FsYmVydG9fSUlfZGVfTSVDMyVCM25hY28iIHRpdGxlPSJBbGJlcnRvIElJIGRl
IE3Ds25hY28iPkFsYmVydG8gSUk8L2E+PGJyIC8+CjxhIGhyZWY9Ii93L2luZGV4
LnBocD90aXRsZT1NaWNoZWxfUm9nZXImYW1wO2FjdGlvbj1lZGl0JmFtcDtyZWRs
aW5rPTEiIGNsYXNzPSJuZXciIHRpdGxlPSJNaWNoZWwgUm9nZXIgKGHDum4gbm8g
cmVkYWN0YWRvKSI+TWljaGVsIFJvZ2VyPC9hPjwvdGQ+CjwvdHI+Cjx0cj4KPHRk
IHN0eWxlPSJib3JkZXItdG9wOiBzb2xpZCAxcHggI2NjZDJkOTsgcGFkZGluZzog
MC40ZW0gMWVtIDAuNGVtIDA7IHZlcnRpY2FsLWFsaWduOiB0b3A7IHRleHQtYWxp
Z246IGxlZnQ7Ij5JbmRlcGVuZGVuY2lhPGJyIC8+CiYjMTYwO+KAoiBGZWNoYTwv
dGQ+Cjx0ZCBzdHlsZT0iYm9yZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHBh
ZGRpbmc6IDAuNGVtIDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0
ZXh0LWFsaWduOiBsZWZ0OyI+PGJyIC8+CjxhIGhyZWY9Ii93aWtpLzhfZGVfZW5l
cm8iIHRpdGxlPSI4IGRlIGVuZXJvIj44IGRlIGVuZXJvPC9hPiBkZSA8YSBocmVm
PSIvd2lraS8xMjk3IiB0aXRsZT0iMTI5NyI+MTI5NzwvYT48L3RkPgo8L3RyPgo8
dHI+Cjx0ZCBzdHlsZT0iYm9yZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHBh
ZGRpbmc6IDAuNGVtIDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0
ZXh0LWFsaWduOiBsZWZ0OyI+PGEgaHJlZj0iL3dpa2kvQW5leG86UGElQzMlQURz
ZXNfcG9yX3N1cGVyZmljaWUiIHRpdGxlPSJBbmV4bzpQYcOtc2VzIHBvciBzdXBl
cmZpY2llIj5TdXBlcmZpY2llPC9hPjxiciAvPgomIzE2MDvigKIgVG90YWw8YnIg
Lz4KJiMxNjA74oCiJiMxNjA7JSBhZ3VhPGJyIC8+CjxhIGhyZWY9Ii93aWtpL0Zy
b250ZXJhIiB0aXRsZT0iRnJvbnRlcmEiPkZyb250ZXJhczwvYT48L3RkPgo8dGQg
c3R5bGU9ImJvcmRlci10b3A6IHNvbGlkIDFweCAjY2NkMmQ5OyBwYWRkaW5nOiAw
LjRlbSAxZW0gMC40ZW0gMDsgdmVydGljYWwtYWxpZ246IHRvcDsgdGV4dC1hbGln
bjogbGVmdDsiPjxhIGhyZWY9Ii93aWtpL0FuZXhvOlBhJUMzJUFEc2VzX3Bvcl9z
dXBlcmZpY2llIiB0aXRsZT0iQW5leG86UGHDrXNlcyBwb3Igc3VwZXJmaWNpZSI+
UHVlc3RvIDI0NsK6PC9hPjxiciAvPgoxLDk1IDxhIGhyZWY9Ii93aWtpL0tpbCVD
MyVCM21ldHJvX2N1YWRyYWRvIiB0aXRsZT0iS2lsw7NtZXRybyBjdWFkcmFkbyI+
a23CsjwvYT48YnIgLz4KZGVzcHJlY2lhYmxlPGJyIC8+CjQsNCA8YSBocmVmPSIv
d2lraS9LaWwlQzMlQjNtZXRybyIgdGl0bGU9IktpbMOzbWV0cm8iPmttPC9hPiAo
Y29uIDxhIGhyZWY9Ii93aWtpL0ZyYW5jaWEiIHRpdGxlPSJGcmFuY2lhIj5GcmFu
Y2lhPC9hPik8L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHlsZT0iYm9yZGVyLXRvcDog
c29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVtIDFlbSAwLjRlbSAwOyB2
ZXJ0aWNhbC1hbGlnbjogdG9wOyB0ZXh0LWFsaWduOiBsZWZ0OyI+PGEgaHJlZj0i
L3dpa2kvQW5leG86UGElQzMlQURzZXNfcG9yX3BvYmxhY2klQzMlQjNuIiB0aXRs
ZT0iQW5leG86UGHDrXNlcyBwb3IgcG9ibGFjacOzbiI+UG9ibGFjacOzbiB0b3Rh
bDwvYT48YnIgLz4KJiMxNjA74oCiIFRvdGFsPGJyIC8+CiYjMTYwO+KAoiA8YSBo
cmVmPSIvd2lraS9BbmV4bzpQYSVDMyVBRHNlc19wb3JfZGVuc2lkYWRfZGVfcG9i
bGFjaSVDMyVCM24iIHRpdGxlPSJBbmV4bzpQYcOtc2VzIHBvciBkZW5zaWRhZCBk
ZSBwb2JsYWNpw7NuIj5EZW5zaWRhZDwvYT48L3RkPgo8dGQgc3R5bGU9ImJvcmRl
ci10b3A6IHNvbGlkIDFweCAjY2NkMmQ5OyBwYWRkaW5nOiAwLjRlbSAxZW0gMC40
ZW0gMDsgdmVydGljYWwtYWxpZ246IHRvcDsgdGV4dC1hbGlnbjogbGVmdDsiPjxh
IGhyZWY9Ii93aWtpL0FuZXhvOlBhJUMzJUFEc2VzX3Bvcl9wb2JsYWNpJUMzJUIz
biIgdGl0bGU9IkFuZXhvOlBhw61zZXMgcG9yIHBvYmxhY2nDs24iPlB1ZXN0byAx
ODjCujwvYT48YnIgLz4KMzIuNDA5ICg8YSBocmVmPSIvd2lraS8yMDA1IiB0aXRs
ZT0iMjAwNSI+MjAwNTwvYT4gZXN0Lik8YnIgLz4KMTYuNjIwICgywropIGhhYi9r
bcKyPC90ZD4KPC90cj4KPHRyPgo8dGQgc3R5bGU9ImJvcmRlci10b3A6IHNvbGlk
IDFweCAjY2NkMmQ5OyBwYWRkaW5nOiAwLjRlbSAxZW0gMC40ZW0gMDsgdmVydGlj
YWwtYWxpZ246IHRvcDsgdGV4dC1hbGlnbjogbGVmdDsiPjxhIGhyZWY9Ii93aWtp
L1Byb2R1Y3RvX0ludGVybm9fQnJ1dG8iIHRpdGxlPSJQcm9kdWN0byBJbnRlcm5v
IEJydXRvIiBjbGFzcz0ibXctcmVkaXJlY3QiPlBJQjwvYT4gKDxhIGhyZWY9Ii93
aWtpL1BhcmlkYWRfZGVfcG9kZXJfYWRxdWlzaXRpdm8iIHRpdGxlPSJQYXJpZGFk
IGRlIHBvZGVyIGFkcXVpc2l0aXZvIj5QUEE8L2E+KTxiciAvPgomIzE2MDvigKIg
VG90YWwgPHNtYWxsPig8YSBocmVmPSIvd2lraS8yMDAwIiB0aXRsZT0iMjAwMCI+
MjAwMDwvYT4pPC9zbWFsbD48YnIgLz4KJiMxNjA74oCiIDxhIGhyZWY9Ii93aWtp
L0FuZXhvOlBhJUMzJUFEc2VzX3Bvcl9QSUJfKFBQQSlfcGVyX2MlQzMlQTFwaXRh
IiB0aXRsZT0iQW5leG86UGHDrXNlcyBwb3IgUElCIChQUEEpIHBlciBjw6FwaXRh
Ij5QSUIgcGVyIGPDoXBpdGE8L2E+PC90ZD4KPHRkIHN0eWxlPSJib3JkZXItdG9w
OiBzb2xpZCAxcHggI2NjZDJkOTsgcGFkZGluZzogMC40ZW0gMWVtIDAuNGVtIDA7
IHZlcnRpY2FsLWFsaWduOiB0b3A7IHRleHQtYWxpZ246IGxlZnQ7Ij48YSBocmVm
PSIvd2lraS9BbmV4bzpQYSVDMyVBRHNlc19wb3JfUElCXyhQUEEpIiB0aXRsZT0i
QW5leG86UGHDrXNlcyBwb3IgUElCIChQUEEpIj5QdWVzdG8gMTc3wro8L2E+PGJy
IC8+ClVTJCA4NzAgbWlsbG9uZXM8YnIgLz4KVVMkIDI3LjAwMCAoMjR0aCk8L3Rk
Pgo8L3RyPgo8dHI+Cjx0ZCBzdHlsZT0iYm9yZGVyLXRvcDogc29saWQgMXB4ICNj
Y2QyZDk7IHBhZGRpbmc6IDAuNGVtIDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGln
bjogdG9wOyB0ZXh0LWFsaWduOiBsZWZ0OyI+PGEgaHJlZj0iL3dpa2kvJUMzJThE
bmRpY2VfZGVfRGVzYXJyb2xsb19IdW1hbm8iIHRpdGxlPSLDjW5kaWNlIGRlIERl
c2Fycm9sbG8gSHVtYW5vIiBjbGFzcz0ibXctcmVkaXJlY3QiPklESDwvYT4gKDE5
OTcpPC90ZD4KPHRkIHN0eWxlPSJib3JkZXItdG9wOiBzb2xpZCAxcHggI2NjZDJk
OTsgcGFkZGluZzogMC40ZW0gMWVtIDAuNGVtIDA7IHZlcnRpY2FsLWFsaWduOiB0
b3A7IHRleHQtYWxpZ246IGxlZnQ7Ij4wLjk0NiAoPGEgaHJlZj0iL3dpa2kvQW5l
eG86UGElQzMlQURzZXNfcG9yXyVDMyU4RG5kaWNlX2RlX0Rlc2Fycm9sbG9fSHVt
YW5vIiB0aXRsZT0iQW5leG86UGHDrXNlcyBwb3Igw41uZGljZSBkZSBEZXNhcnJv
bGxvIEh1bWFubyIgY2xhc3M9Im13LXJlZGlyZWN0Ij4xMsK6PC9hPikmIzE2MDvi
gJMmIzE2MDs8Zm9udCBjb2xvcj0iIzAwOTkwMCI+YWx0bzwvZm9udD48L3RkPgo8
L3RyPgo8dHIgc3R5bGU9InZlcnRpY2FsLWFsaWduOiB0b3A7Ij4KPHRkIHN0eWxl
PSJib3JkZXItdG9wOiBzb2xpZCAxcHggI2NjZDJkOTsgcGFkZGluZzogMC40ZW0g
MWVtIDAuNGVtIDA7IHZlcnRpY2FsLWFsaWduOiB0b3A7IHRleHQtYWxpZ246IGxl
ZnQ7Ij48YSBocmVmPSIvd2lraS9Nb25lZGEiIHRpdGxlPSJNb25lZGEiPk1vbmVk
YTwvYT48L3RkPgo8dGQgc3R5bGU9ImJvcmRlci10b3A6IHNvbGlkIDFweCAjY2Nk
MmQ5OyBwYWRkaW5nOiAwLjRlbSAxZW0gMC40ZW0gMDsgdmVydGljYWwtYWxpZ246
IHRvcDsgdGV4dC1hbGlnbjogbGVmdDsiPjxhIGhyZWY9Ii93aWtpL0V1cm8iIHRp
dGxlPSJFdXJvIj5FdXJvPC9hPjxzdXA+Mjwvc3VwPiAo4oKsLCA8Y29kZT48YSBo
cmVmPSIvd2lraS9JU09fNDIxNyIgdGl0bGU9IklTTyA0MjE3Ij5FVVI8L2E+PC9j
b2RlPik8L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHlsZT0iYm9yZGVyLXRvcDogc29s
aWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVtIDFlbSAwLjRlbSAwOyB2ZXJ0
aWNhbC1hbGlnbjogdG9wOyB0ZXh0LWFsaWduOiBsZWZ0OyI+PGEgaHJlZj0iL3dp
a2kvQW5leG86R2VudGlsaWNpb3Nfb3JkZW5hZG9zX3Bvcl90b3AlQzMlQjNuaW1v
cyIgdGl0bGU9IkFuZXhvOkdlbnRpbGljaW9zIG9yZGVuYWRvcyBwb3IgdG9ww7Nu
aW1vcyI+R2VudGlsaWNpbzwvYT48L3RkPgo8dGQgc3R5bGU9ImJvcmRlci10b3A6
IHNvbGlkIDFweCAjY2NkMmQ5OyBwYWRkaW5nOiAwLjRlbSAxZW0gMC40ZW0gMDsg
dmVydGljYWwtYWxpZ246IHRvcDsgdGV4dC1hbGlnbjogbGVmdDsiPk1vbmVnYXNj
bywgbW9uZWdhc2NhPC90ZD4KPC90cj4KPHRyPgo8dGQ+PGEgaHJlZj0iL3dpa2kv
SHVzb19ob3JhcmlvIiB0aXRsZT0iSHVzbyBob3JhcmlvIj5IdXNvIGhvcmFyaW88
L2E+PGJyIC8+CiYjMTYwO+KAoiBlbiA8YSBocmVmPSIvd2lraS9Ib3JhcmlvX2Rl
X3ZlcmFubyIgdGl0bGU9IkhvcmFyaW8gZGUgdmVyYW5vIj52ZXJhbm88L2E+PC90
ZD4KPHRkPjxhIGhyZWY9Ii93aWtpL0NFVCIgdGl0bGU9IkNFVCIgY2xhc3M9Im13
LXJlZGlyZWN0Ij5DRVQ8L2E+ICg8YSBocmVmPSIvd2lraS9UaWVtcG9fQ29vcmRp
bmFkb19Vbml2ZXJzYWwiIHRpdGxlPSJUaWVtcG8gQ29vcmRpbmFkbyBVbml2ZXJz
YWwiIGNsYXNzPSJtdy1yZWRpcmVjdCI+VVRDPC9hPisxKTxiciAvPgo8YSBocmVm
PSIvd2lraS9DRVNUIiB0aXRsZT0iQ0VTVCIgY2xhc3M9Im13LXJlZGlyZWN0Ij5D
RVNUPC9hPiAoPGEgaHJlZj0iL3dpa2kvVGllbXBvX0Nvb3JkaW5hZG9fVW5pdmVy
c2FsIiB0aXRsZT0iVGllbXBvIENvb3JkaW5hZG8gVW5pdmVyc2FsIiBjbGFzcz0i
bXctcmVkaXJlY3QiPlVUQzwvYT4rMik8L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHls
ZT0iYm9yZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVt
IDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0ZXh0LWFsaWduOiBs
ZWZ0OyI+PGEgaHJlZj0iL3dpa2kvQW5leG86RG9taW5pb3NfZGVfSW50ZXJuZXQi
IHRpdGxlPSJBbmV4bzpEb21pbmlvcyBkZSBJbnRlcm5ldCIgY2xhc3M9Im13LXJl
ZGlyZWN0Ij5Eb21pbmlvIEludGVybmV0PC9hPjwvdGQ+Cjx0ZCBzdHlsZT0iYm9y
ZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVtIDFlbSAw
LjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0ZXh0LWFsaWduOiBsZWZ0OyI+
PHR0Pi5tYzwvdHQ+PC90ZD4KPC90cj4KPHRyPgo8dGQgc3R5bGU9ImJvcmRlci10
b3A6IHNvbGlkIDFweCAjY2NkMmQ5OyBwYWRkaW5nOiAwLjRlbSAxZW0gMC40ZW0g
MDsgdmVydGljYWwtYWxpZ246IHRvcDsgdGV4dC1hbGlnbjogbGVmdDsiPjxhIGhy
ZWY9Ii93aWtpL0FuZXhvOlByZWZpam9zX3RlbGVmJUMzJUIzbmljb3NfaW50ZXJu
YWNpb25hbGVzIiB0aXRsZT0iQW5leG86UHJlZmlqb3MgdGVsZWbDs25pY29zIGlu
dGVybmFjaW9uYWxlcyI+UHJlZmlqbyB0ZWxlZsOzbmljbzwvYT48L3RkPgo8dGQg
c3R5bGU9ImJvcmRlci10b3A6IHNvbGlkIDFweCAjY2NkMmQ5OyBwYWRkaW5nOiAw
LjRlbSAxZW0gMC40ZW0gMDsgdmVydGljYWwtYWxpZ246IHRvcDsgdGV4dC1hbGln
bjogbGVmdDsiPjx0dD4rMzc3PC90dD48L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHls
ZT0iYm9yZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVt
IDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0ZXh0LWFsaWduOiBs
ZWZ0OyI+PGEgaHJlZj0iL3dpa2kvQW5leG86UHJlZmlqb3NfcmFkaW9mJUMzJUIz
bmljb3MiIHRpdGxlPSJBbmV4bzpQcmVmaWpvcyByYWRpb2bDs25pY29zIj5QcmVm
aWpvIHJhZGlvZsOzbmljbzwvYT48L3RkPgo8dGQgc3R5bGU9ImJvcmRlci10b3A6
IHNvbGlkIDFweCAjY2NkMmQ5OyBwYWRkaW5nOiAwLjRlbSAxZW0gMC40ZW0gMDsg
dmVydGljYWwtYWxpZ246IHRvcDsgdGV4dC1hbGlnbjogbGVmdDsiPjxzbWFsbD48
dHQ+M0FBLTNBWjwvdHQ+PC9zbWFsbD48L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHls
ZT0iYm9yZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVt
IDFlbSAwLjRlbSAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB0ZXh0LWFsaWduOiBs
ZWZ0OyI+PGEgaHJlZj0iL3dpa2kvSVNPXzMxNjYtMSIgdGl0bGU9IklTTyAzMTY2
LTEiPkPDs2RpZ28gSVNPPC9hPjwvdGQ+Cjx0ZCBzdHlsZT0iYm9yZGVyLXRvcDog
c29saWQgMXB4ICNjY2QyZDk7IHBhZGRpbmc6IDAuNGVtIDFlbSAwLjRlbSAwOyB2
ZXJ0aWNhbC1hbGlnbjogdG9wOyB0ZXh0LWFsaWduOiBsZWZ0OyI+NDkyIC8gTUNP
IC8gTUM8L3RkPgo8L3RyPgo8dHI+Cjx0ZCBjb2xzcGFuPSIyIiBzdHlsZT0iYm9y
ZGVyLXRvcDogc29saWQgMXB4ICNjY2QyZDk7IHZlcnRpY2FsLWFsaWduOiB0b3A7
IHRleHQtYWxpZ246IGxlZnQ7Ij5NaWVtYnJvIGRlOiA8YSBocmVmPSIvd2lraS9G
cmFuY29mb24lQzMlQURhIiB0aXRsZT0iRnJhbmNvZm9uw61hIj5PSUY8L2E+LCA8
YSBocmVmPSIvd2lraS9PTlUiIHRpdGxlPSJPTlUiIGNsYXNzPSJtdy1yZWRpcmVj
dCI+T05VPC9hPiwgPGEgaHJlZj0iL3dpa2kvT1NDRSIgdGl0bGU9Ik9TQ0UiIGNs
YXNzPSJtdy1yZWRpcmVjdCI+T1NDRTwvYT4sIDxhIGhyZWY9Ii93aWtpL0NvbnNl
am9fZGVfRXVyb3BhIiB0aXRsZT0iQ29uc2VqbyBkZSBFdXJvcGEiPkNPRTwvYT48
L3RkPgo8L3RyPgo8dHIgc3R5bGU9InZlcnRpY2FsLWFsaWduOiB0b3A7IGZvbnQt
c2l6ZTo5NSU7Ij4KPHRkIGNvbHNwYW49IjIiIHN0eWxlPSJib3JkZXItdG9wOiBz
b2xpZCAxcHggI2NjZDJkOTsgdmVydGljYWwtYWxpZ246IHRvcDsiPgo8ZGl2IHN0
eWxlPSJtYXJnaW4tbGVmdDogMmVtIiBjbGFzcz0icmVmZXJlbmNlcyI+PHN1cD4x
PC9zdXA+IE3Ds25hY28gZXMgdW5hIDxhIGhyZWY9Ii93aWtpL0NpdWRhZC1lc3Rh
ZG8iIHRpdGxlPSJDaXVkYWQtZXN0YWRvIiBjbGFzcz0ibXctcmVkaXJlY3QiPmNp
dWRhZC1lc3RhZG88L2E+LjxiciAvPgo8c3VwPjI8L3N1cD4gQW50ZXMgZGUgPGEg
aHJlZj0iL3dpa2kvMjAwMiIgdGl0bGU9IjIwMDIiPjIwMDI8L2E+IGNpcmN1bGFi
YW4gY29uanVudGFtZW50ZSBlbCA8YSBocmVmPSIvd2lraS9GcmFuY29fbW9uZWdh
c2NvIiB0aXRsZT0iRnJhbmNvIG1vbmVnYXNjbyI+ZnJhbmNvIG1vbmVnYXNjbzwv
YT4geSBlbCA8YSBocmVmPSIvd2lraS9GcmFuY29fZnJhbmMlQzMlQTlzIiB0aXRs
ZT0iRnJhbmNvIGZyYW5jw6lzIj5mcmFuY28gZnJhbmPDqXM8L2E+PC9kaXY+Cjwv
dGQ+CjwvdHI+CjwvdGFibGU+CjwvdGQ+CjwvdHI+CjwvdGFibGU+CjxkaXYgY2xh
c3M9Im5vcHJpbnQiIHN0eWxlPSJtYXJnaW4tbGVmdDogMmVtIj48aT5QYXJhIG90
cm9zIHVzb3MgZGUgZXN0ZSB0w6lybWlubywgdsOpYXNlIDxhIGhyZWY9Ii93aWtp
L00lQzMlQjNuYWNvXyhkZXNhbWJpZ3VhY2klQzMlQjNuKSIgdGl0bGU9Ik3Ds25h
Y28gKGRlc2FtYmlndWFjacOzbikiPk3Ds25hY28gKGRlc2FtYmlndWFjacOzbik8
L2E+LjwvaT48L2Rpdj4KPHA+RWwgPGI+PGEgaHJlZj0iL3dpa2kvUHJpbmNpcGFk
byIgdGl0bGU9IlByaW5jaXBhZG8iPlByaW5jaXBhZG88L2E+IGRlIE3Ds25hY288
L2I+IG8gc2ltcGxlbWVudGUgPGI+TcOzbmFjbzwvYj4gKGVuIDxhIGhyZWY9Ii93
aWtpL0lkaW9tYV9mcmFuYyVDMyVBOXMiIHRpdGxlPSJJZGlvbWEgZnJhbmPDqXMi
PmZyYW5jw6lzPC9hPjogPGk+UHJpbmNpcGF1dMOpIGRlIE1vbmFjbzwvaT47IGVu
IDxhIGhyZWY9Ii93aWtpL0lkaW9tYV9tb25lZ2FzY28iIHRpdGxlPSJJZGlvbWEg
bW9uZWdhc2NvIj5tb25lZ2FzY288L2E+OiA8aT5QcmluY2lwYXR1IGRlIE3Dum5l
Z3U8L2k+OyBlbiA8YSBocmVmPSIvd2lraS9JZGlvbWFfb2NjaXRhbm8iIHRpdGxl
PSJJZGlvbWEgb2NjaXRhbm8iPm9jY2l0YW5vPC9hPjogPGk+UHJpbmNpcGF0IGRl
IE3Ds25lZ3VlPC9pPjsgZW4gPGEgaHJlZj0iL3dpa2kvSWRpb21hX2l0YWxpYW5v
IiB0aXRsZT0iSWRpb21hIGl0YWxpYW5vIj5pdGFsaWFubzwvYT46IDxpPlByaW5j
aXBhdG8gZGkgTW9uYWNvPC9pPiksIE9jdXBhIGVsIHNlZ3VuZG8gcHVlc3RvIGNv
bW8gPGEgaHJlZj0iL3dpa2kvUGElQzMlQURzIiB0aXRsZT0iUGHDrXMiPnBhw61z
PC9hPiBtw6FzIHBlcXVlw7FvIGRlbCBtdW5kbywgdHJhcyBlbCA8YSBocmVmPSIv
d2lraS9WYXRpY2FubyIgdGl0bGU9IlZhdGljYW5vIiBjbGFzcz0ibXctcmVkaXJl
Y3QiPlZhdGljYW5vPC9hPiB5ICwgdGFtYmnDqW4gc2VndW5kbywgbcOhcyBkZW5z
YW1lbnRlIHBvYmxhZG8sIHRyYXMgPGEgaHJlZj0iL3dpa2kvTWFjYW8iIHRpdGxl
PSJNYWNhbyI+TWFjYW88L2E+LiBFc3TDoSBzaXR1YWRvIGVudHJlIGVsIDxhIGhy
ZWY9Ii93aWtpL01hcl9NZWRpdGVyciVDMyVBMW5lbyIgdGl0bGU9Ik1hciBNZWRp
dGVycsOhbmVvIj5NYXIgTWVkaXRlcnLDoW5lbzwvYT4geSA8YSBocmVmPSIvd2lr
aS9GcmFuY2lhIiB0aXRsZT0iRnJhbmNpYSI+RnJhbmNpYTwvYT4sIGVuIGxhIDxh
IGhyZWY9Ii93aWtpL1Byb3ZlbnphLUFscGVzLUNvc3RhX0F6dWwiIHRpdGxlPSJQ
cm92ZW56YS1BbHBlcy1Db3N0YSBBenVsIj5SaXZpZXJhIGZyYW5jZXNhPC9hPiwg
dGFtYmnDqW4gbGxhbWFkYSBsYSA8YSBocmVmPSIvd2lraS9Db3N0YV9BenVsXyhG
cmFuY2lhKSIgdGl0bGU9IkNvc3RhIEF6dWwgKEZyYW5jaWEpIj5Db3N0YSBBenVs
PC9hPi48L3A+Cjx0YWJsZSBpZD0idG9jIiBjbGFzcz0idG9jIj4KPHRyPgo8dGQ+
CjxkaXYgaWQ9InRvY3RpdGxlIj4KPGgyPkNvbnRlbmlkbzwvaDI+CjwvZGl2Pgo8
dWw+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMSB0b2NzZWN0aW9uLTEiPjxhIGhyZWY9
IiNFdGltb2xvZy5DMy5BRGEiPjxzcGFuIGNsYXNzPSJ0b2NudW1iZXIiPjE8L3Nw
YW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5FdGltb2xvZ8OtYTwvc3Bhbj48L2E+
PC9saT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0xIHRvY3NlY3Rpb24tMiI+PGEgaHJl
Zj0iI0hpc3RvcmlhIj48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4yPC9zcGFuPiA8
c3BhbiBjbGFzcz0idG9jdGV4dCI+SGlzdG9yaWE8L3NwYW4+PC9hPgo8dWw+Cjxs
aSBjbGFzcz0idG9jbGV2ZWwtMiB0b2NzZWN0aW9uLTMiPjxhIGhyZWY9IiNJbnRy
b2R1Y2NpLkMzLkIzbiI+PHNwYW4gY2xhc3M9InRvY251bWJlciI+Mi4xPC9zcGFu
PiA8c3BhbiBjbGFzcz0idG9jdGV4dCI+SW50cm9kdWNjacOzbjwvc3Bhbj48L2E+
PC9saT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0yIHRvY3NlY3Rpb24tNCI+PGEgaHJl
Zj0iI1ByZWhpc3RvcmlhIj48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4yLjI8L3Nw
YW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5QcmVoaXN0b3JpYTwvc3Bhbj48L2E+
PC9saT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0yIHRvY3NlY3Rpb24tNSI+PGEgaHJl
Zj0iI0FudGlnLkMzLkJDZWRhZCI+PHNwYW4gY2xhc3M9InRvY251bWJlciI+Mi4z
PC9zcGFuPiA8c3BhbiBjbGFzcz0idG9jdGV4dCI+QW50aWfDvGVkYWQ8L3NwYW4+
PC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMiB0b2NzZWN0aW9uLTYiPjxh
IGhyZWY9IiNFZGFkX01lZGlhIj48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4yLjQ8
L3NwYW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5FZGFkIE1lZGlhPC9zcGFuPjwv
YT4KPHVsPgo8bGkgY2xhc3M9InRvY2xldmVsLTMgdG9jc2VjdGlvbi03Ij48YSBo
cmVmPSIjQ29taWVuem9zX2RlX2xhX2RpbmFzdC5DMy5BRGFfR3JpbWFsZGkiPjxz
cGFuIGNsYXNzPSJ0b2NudW1iZXIiPjIuNC4xPC9zcGFuPiA8c3BhbiBjbGFzcz0i
dG9jdGV4dCI+Q29taWVuem9zIGRlIGxhIGRpbmFzdMOtYSBHcmltYWxkaTwvc3Bh
bj48L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0zIHRvY3NlY3Rpb24tOCI+
PGEgaHJlZj0iI0x1Y2hhc19jb250cmFfRy5DMy5BOW5vdmEiPjxzcGFuIGNsYXNz
PSJ0b2NudW1iZXIiPjIuNC4yPC9zcGFuPiA8c3BhbiBjbGFzcz0idG9jdGV4dCI+
THVjaGFzIGNvbnRyYSBHw6lub3ZhPC9zcGFuPjwvYT48L2xpPgo8L3VsPgo8L2xp
Pgo8bGkgY2xhc3M9InRvY2xldmVsLTIgdG9jc2VjdGlvbi05Ij48YSBocmVmPSIj
RWRhZF9Nb2Rlcm5hIj48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4yLjU8L3NwYW4+
IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5FZGFkIE1vZGVybmE8L3NwYW4+PC9hPjwv
bGk+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMiB0b2NzZWN0aW9uLTEwIj48YSBocmVm
PSIjUmV2b2x1Y2lvbmVzIj48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4yLjY8L3Nw
YW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5SZXZvbHVjaW9uZXM8L3NwYW4+PC9h
PjwvbGk+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMiB0b2NzZWN0aW9uLTExIj48YSBo
cmVmPSIjRWRhZF9Db250ZW1wb3IuQzMuQTFuZWEiPjxzcGFuIGNsYXNzPSJ0b2Nu
dW1iZXIiPjIuNzwvc3Bhbj4gPHNwYW4gY2xhc3M9InRvY3RleHQiPkVkYWQgQ29u
dGVtcG9yw6FuZWE8L3NwYW4+PC9hPjwvbGk+CjwvdWw+CjwvbGk+CjxsaSBjbGFz
cz0idG9jbGV2ZWwtMSB0b2NzZWN0aW9uLTEyIj48YSBocmVmPSIjUG9sLkMzLkFE
dGljYSI+PHNwYW4gY2xhc3M9InRvY251bWJlciI+Mzwvc3Bhbj4gPHNwYW4gY2xh
c3M9InRvY3RleHQiPlBvbMOtdGljYTwvc3Bhbj48L2E+Cjx1bD4KPGxpIGNsYXNz
PSJ0b2NsZXZlbC0yIHRvY3NlY3Rpb24tMTMiPjxhIGhyZWY9IiNQb2Rlcl9lamVj
dXRpdm8iPjxzcGFuIGNsYXNzPSJ0b2NudW1iZXIiPjMuMTwvc3Bhbj4gPHNwYW4g
Y2xhc3M9InRvY3RleHQiPlBvZGVyIGVqZWN1dGl2bzwvc3Bhbj48L2E+PC9saT4K
PGxpIGNsYXNzPSJ0b2NsZXZlbC0yIHRvY3NlY3Rpb24tMTQiPjxhIGhyZWY9IiNQ
b2Rlcl9sZWdpc2xhdGl2byI+PHNwYW4gY2xhc3M9InRvY251bWJlciI+My4yPC9z
cGFuPiA8c3BhbiBjbGFzcz0idG9jdGV4dCI+UG9kZXIgbGVnaXNsYXRpdm88L3Nw
YW4+PC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMiB0b2NzZWN0aW9uLTE1
Ij48YSBocmVmPSIjUG9kZXJfSnVkaWNpYWwiPjxzcGFuIGNsYXNzPSJ0b2NudW1i
ZXIiPjMuMzwvc3Bhbj4gPHNwYW4gY2xhc3M9InRvY3RleHQiPlBvZGVyIEp1ZGlj
aWFsPC9zcGFuPjwvYT48L2xpPgo8bGkgY2xhc3M9InRvY2xldmVsLTIgdG9jc2Vj
dGlvbi0xNiI+PGEgaHJlZj0iI0dvYmllcm5vX2xvY2FsIj48c3BhbiBjbGFzcz0i
dG9jbnVtYmVyIj4zLjQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5Hb2Jp
ZXJubyBsb2NhbDwvc3Bhbj48L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0y
IHRvY3NlY3Rpb24tMTciPjxhIGhyZWY9IiNNb25hcnF1LkMzLkFEYSI+PHNwYW4g
Y2xhc3M9InRvY251bWJlciI+My41PC9zcGFuPiA8c3BhbiBjbGFzcz0idG9jdGV4
dCI+TW9uYXJxdcOtYTwvc3Bhbj48L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2NsZXZl
bC0yIHRvY3NlY3Rpb24tMTgiPjxhIGhyZWY9IiNSZWxhY2lvbmVzX2V4dGVyaW9y
ZXMiPjxzcGFuIGNsYXNzPSJ0b2NudW1iZXIiPjMuNjwvc3Bhbj4gPHNwYW4gY2xh
c3M9InRvY3RleHQiPlJlbGFjaW9uZXMgZXh0ZXJpb3Jlczwvc3Bhbj48L2E+PC9s
aT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0yIHRvY3NlY3Rpb24tMTkiPjxhIGhyZWY9
IiNEZXJlY2hvc19odW1hbm9zIj48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4zLjc8
L3NwYW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5EZXJlY2hvcyBodW1hbm9zPC9z
cGFuPjwvYT48L2xpPgo8L3VsPgo8L2xpPgo8bGkgY2xhc3M9InRvY2xldmVsLTEg
dG9jc2VjdGlvbi0yMCI+PGEgaHJlZj0iI09yZ2FuaXphY2kuQzMuQjNuX2FkbWlu
aXN0cmF0aXZhIj48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj40PC9zcGFuPiA8c3Bh
biBjbGFzcz0idG9jdGV4dCI+T3JnYW5pemFjacOzbiBhZG1pbmlzdHJhdGl2YTwv
c3Bhbj48L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0xIHRvY3NlY3Rpb24t
MjEiPjxhIGhyZWY9IiNHZW9ncmFmLkMzLkFEYSI+PHNwYW4gY2xhc3M9InRvY251
bWJlciI+NTwvc3Bhbj4gPHNwYW4gY2xhc3M9InRvY3RleHQiPkdlb2dyYWbDrWE8
L3NwYW4+PC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMSB0b2NzZWN0aW9u
LTIyIj48YSBocmVmPSIjRWNvbm9tLkMzLkFEYSI+PHNwYW4gY2xhc3M9InRvY251
bWJlciI+Njwvc3Bhbj4gPHNwYW4gY2xhc3M9InRvY3RleHQiPkVjb25vbcOtYTwv
c3Bhbj48L2E+Cjx1bD4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0yIHRvY3NlY3Rpb24t
MjMiPjxhIGhyZWY9IiNGaXNjYWwiPjxzcGFuIGNsYXNzPSJ0b2NudW1iZXIiPjYu
MTwvc3Bhbj4gPHNwYW4gY2xhc3M9InRvY3RleHQiPkZpc2NhbDwvc3Bhbj48L2E+
Cjx1bD4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0zIHRvY3NlY3Rpb24tMjQiPjxhIGhy
ZWY9IiNDYXNpbm9fZGVfTW9udGVjYXJsbyI+PHNwYW4gY2xhc3M9InRvY251bWJl
ciI+Ni4xLjE8L3NwYW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5DYXNpbm8gZGUg
TW9udGVjYXJsbzwvc3Bhbj48L2E+PC9saT4KPC91bD4KPC9saT4KPC91bD4KPC9s
aT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0xIHRvY3NlY3Rpb24tMjUiPjxhIGhyZWY9
IiNEZW1vZ3JhZi5DMy5BRGEiPjxzcGFuIGNsYXNzPSJ0b2NudW1iZXIiPjc8L3Nw
YW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5EZW1vZ3JhZsOtYTwvc3Bhbj48L2E+
PC9saT4KPGxpIGNsYXNzPSJ0b2NsZXZlbC0xIHRvY3NlY3Rpb24tMjYiPjxhIGhy
ZWY9IiNSZWxpZ2kuQzMuQjNuX3lfbGVuZ3VhcyI+PHNwYW4gY2xhc3M9InRvY251
bWJlciI+ODwvc3Bhbj4gPHNwYW4gY2xhc3M9InRvY3RleHQiPlJlbGlnacOzbiB5
IGxlbmd1YXM8L3NwYW4+PC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMSB0
b2NzZWN0aW9uLTI3Ij48YSBocmVmPSIjQ3VsdHVyYV95X2FydGUiPjxzcGFuIGNs
YXNzPSJ0b2NudW1iZXIiPjk8L3NwYW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5D
dWx0dXJhIHkgYXJ0ZTwvc3Bhbj48L2E+Cjx1bD4KPGxpIGNsYXNzPSJ0b2NsZXZl
bC0yIHRvY3NlY3Rpb24tMjgiPjxhIGhyZWY9IiNNZWRpb3NfZGVfY29tdW5pY2Fj
aS5DMy5CM24iPjxzcGFuIGNsYXNzPSJ0b2NudW1iZXIiPjkuMTwvc3Bhbj4gPHNw
YW4gY2xhc3M9InRvY3RleHQiPk1lZGlvcyBkZSBjb211bmljYWNpw7NuPC9zcGFu
PjwvYT48L2xpPgo8L3VsPgo8L2xpPgo8bGkgY2xhc3M9InRvY2xldmVsLTEgdG9j
c2VjdGlvbi0yOSI+PGEgaHJlZj0iI0VkdWNhY2kuQzMuQjNuIj48c3BhbiBjbGFz
cz0idG9jbnVtYmVyIj4xMDwvc3Bhbj4gPHNwYW4gY2xhc3M9InRvY3RleHQiPkVk
dWNhY2nDs248L3NwYW4+PC9hPgo8dWw+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMiB0
b2NzZWN0aW9uLTMwIj48YSBocmVmPSIjUHJpbWFyaWFfeV9TZWN1bmRhcmlhIj48
c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4xMC4xPC9zcGFuPiA8c3BhbiBjbGFzcz0i
dG9jdGV4dCI+UHJpbWFyaWEgeSBTZWN1bmRhcmlhPC9zcGFuPjwvYT48L2xpPgo8
bGkgY2xhc3M9InRvY2xldmVsLTIgdG9jc2VjdGlvbi0zMSI+PGEgaHJlZj0iI1Vu
aXZlcnNpZGFkZXMiPjxzcGFuIGNsYXNzPSJ0b2NudW1iZXIiPjEwLjI8L3NwYW4+
IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5Vbml2ZXJzaWRhZGVzPC9zcGFuPjwvYT48
L2xpPgo8L3VsPgo8L2xpPgo8bGkgY2xhc3M9InRvY2xldmVsLTEgdG9jc2VjdGlv
bi0zMiI+PGEgaHJlZj0iI1NlZ3VyaWRhZF95X2RlZmVuc2EiPjxzcGFuIGNsYXNz
PSJ0b2NudW1iZXIiPjExPC9zcGFuPiA8c3BhbiBjbGFzcz0idG9jdGV4dCI+U2Vn
dXJpZGFkIHkgZGVmZW5zYTwvc3Bhbj48L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2Ns
ZXZlbC0xIHRvY3NlY3Rpb24tMzMiPjxhIGhyZWY9IiNUcmFuc3BvcnRlIj48c3Bh
biBjbGFzcz0idG9jbnVtYmVyIj4xMjwvc3Bhbj4gPHNwYW4gY2xhc3M9InRvY3Rl
eHQiPlRyYW5zcG9ydGU8L3NwYW4+PC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jbGV2
ZWwtMSB0b2NzZWN0aW9uLTM0Ij48YSBocmVmPSIjRGVwb3J0ZXMiPjxzcGFuIGNs
YXNzPSJ0b2NudW1iZXIiPjEzPC9zcGFuPiA8c3BhbiBjbGFzcz0idG9jdGV4dCI+
RGVwb3J0ZXM8L3NwYW4+PC9hPgo8dWw+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMiB0
b2NzZWN0aW9uLTM1Ij48YSBocmVmPSIjRi5DMy5CM3JtdWxhXzEiPjxzcGFuIGNs
YXNzPSJ0b2NudW1iZXIiPjEzLjE8L3NwYW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0
Ij5Gw7NybXVsYSAxPC9zcGFuPjwvYT48L2xpPgo8bGkgY2xhc3M9InRvY2xldmVs
LTIgdG9jc2VjdGlvbi0zNiI+PGEgaHJlZj0iI1RlbmlzIj48c3BhbiBjbGFzcz0i
dG9jbnVtYmVyIj4xMy4yPC9zcGFuPiA8c3BhbiBjbGFzcz0idG9jdGV4dCI+VGVu
aXM8L3NwYW4+PC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jbGV2ZWwtMiB0b2NzZWN0
aW9uLTM3Ij48YSBocmVmPSIjRi5DMy5CQXRib2wiPjxzcGFuIGNsYXNzPSJ0b2Nu
dW1iZXIiPjEzLjM8L3NwYW4+IDxzcGFuIGNsYXNzPSJ0b2N0ZXh0Ij5Gw7p0Ym9s
PC9zcGFuPjwvYT48L2xpPgo8L3VsPgo8L2xpPgo8bGkgY2xhc3M9InRvY2xldmVs
LTEgdG9jc2VjdGlvbi0zOCI+PGEgaHJlZj0iI1YuQzMuQTlhc2VfdGFtYmkuQzMu
QTluIj48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4xNDwvc3Bhbj4gPHNwYW4gY2xh
c3M9InRvY3RleHQiPlbDqWFzZSB0YW1iacOpbjwvc3Bhbj48L2E+PC9saT4KPGxp
IGNsYXNzPSJ0b2NsZXZlbC0xIHRvY3NlY3Rpb24tMzkiPjxhIGhyZWY9IiNOb3Rh
cyI+PHNwYW4gY2xhc3M9InRvY251bWJlciI+MTU8L3NwYW4+IDxzcGFuIGNsYXNz
PSJ0b2N0ZXh0Ij5Ob3Rhczwvc3Bhbj48L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2Ns
ZXZlbC0xIHRvY3NlY3Rpb24tNDAiPjxhIGhyZWY9IiNFbmxhY2VzX2V4dGVybm9z
Ij48c3BhbiBjbGFzcz0idG9jbnVtYmVyIj4xNjwvc3Bhbj4gPHNwYW4gY2xhc3M9
InRvY3RleHQiPkVubGFjZXMgZXh0ZXJub3M8L3NwYW4+PC9hPjwvbGk+CjwvdWw+
CjwvdGQ+CjwvdHI+CjwvdGFibGU+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KLy88IVtDREFUQVsKaWYgKHdpbmRvdy5zaG93VG9jVG9nZ2xlKSB7IHZh
ciB0b2NTaG93VGV4dCA9ICJtb3N0cmFyIjsgdmFyIHRvY0hpZGVUZXh0ID0gIm9j
dWx0YXIiOyBzaG93VG9jVG9nZ2xlKCk7IH0gCi8vXV0+Cjwvc2NyaXB0Pgo8aDI+
PHNwYW4gY2xhc3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5kZXgucGhw
P3RpdGxlPU0lQzMlQjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2VjdGlvbj0x
IiB0aXRsZT0iRWRpdGFyIHNlY2Npw7NuOiBFdGltb2xvZ8OtYSI+ZWRpdGFyPC9h
Pl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IkV0aW1vbG9n
LkMzLkFEYSI+RXRpbW9sb2fDrWE8L3NwYW4+PC9oMj4KPHVsPgo8bGk+VW5hIHBv
c2liaWxpZGFkIGVzIHF1ZSBlbCBub21icmUgTcOzbmFjbyBxdWllcmUgZGVjaXIg
4oCYc8OzbG8gcG9yIHPDrSBtaXNtb+KAmSwgdW5hIHJlZmVyZW5jaWEgYWwgaMOp
cm9lIGdyaWVnbyBIw6lyY3VsZXMsIGFsIHF1ZSBzZSBsZSByZW5kw61hIGN1bHRv
IGVuIGVsIHNhbnR1YXJpbyBkZWwgbHVnYXIgZGUgTcOzbmFjby4gT3RyYSBwb3Np
YmlsaWRhZCBlcyBxdWUgTcOzbmFjbyBkZXJpdmUgZGVsIG5vbWJyZSBkZSBsYSBj
b2xvbmlhIDxhIGhyZWY9Ii93aWtpL0ZvY2VhIiB0aXRsZT0iRm9jZWEiPmZvY2Vh
PC9hPiBNb25vaWtvcywgZnVuZGFkYSBlbiBlbCA8YSBocmVmPSIvd2lraS9TaWds
b19WSV9hLl9DLiIgdGl0bGU9IlNpZ2xvIFZJIGEuIEMuIj5zLiYjMTYwO1ZJJiMx
NjA7YS4mIzE2MDtDLjwvYT4uIExvcyBmb2Nlb3MgaGFiw61hbiBjb25zdHJ1aWRv
IHVuIHRlbXBsbyBlbiBlbCBsdWdhciwgZWwgdGVtcGxvIGRlIEhlcmFrbGVzIE3D
s25vaWtvcyAo4oCYbGEgw7puaWNhIGNhc2EgZGUgPGEgaHJlZj0iL3dpa2kvSCVD
MyVBOXJjdWxlcyIgdGl0bGU9IkjDqXJjdWxlcyI+SMOpcmN1bGVzPC9hPuKAmSku
PC9saT4KPC91bD4KPGgyPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhy
ZWY9Ii93L2luZGV4LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVk
aXQmYW1wO3NlY3Rpb249MiIgdGl0bGU9IkVkaXRhciBzZWNjacOzbjogSGlzdG9y
aWEiPmVkaXRhcjwvYT5dPC9zcGFuPiA8c3BhbiBjbGFzcz0ibXctaGVhZGxpbmUi
IGlkPSJIaXN0b3JpYSI+SGlzdG9yaWE8L3NwYW4+PC9oMj4KPGRpdiBjbGFzcz0i
bm9wcmludCBBUCIgc3R5bGU9Im1hcmdpbjowIDAgMC4yZXggMWVtIj48aT48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjg3JSI+QXJ0w61jdWxvIHByaW5jaXBhbDo8L3Nw
YW4+IDxhIGhyZWY9Ii93aWtpL0hpc3RvcmlhX2RlX00lQzMlQjNuYWNvIiB0aXRs
ZT0iSGlzdG9yaWEgZGUgTcOzbmFjbyI+SGlzdG9yaWEgZGUgTcOzbmFjbzwvYT48
L2k+PC9kaXY+CjxoMz48c3BhbiBjbGFzcz0iZWRpdHNlY3Rpb24iPls8YSBocmVm
PSIvdy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0
JmFtcDtzZWN0aW9uPTMiIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IEludHJvZHVj
Y2nDs24iPmVkaXRhcjwvYT5dPC9zcGFuPiA8c3BhbiBjbGFzcz0ibXctaGVhZGxp
bmUiIGlkPSJJbnRyb2R1Y2NpLkMzLkIzbiI+SW50cm9kdWNjacOzbjwvc3Bhbj48
L2gzPgo8cD5Eb21pbmFkYSBwb3IgZGl2ZXJzb3MgcHVlYmxvcyBkZSBsYSBhbnRp
Z8O8ZWRhZCwgZnVlIGNvbG9uaWEgZGUgbG9zIGZlbmljaW9zLCBwb3IgbG9zIGN1
YWxlcyBwb3Nlw61hIGVsIHRlbXBsbyBkZWwgZGlvcyBNZWxrYXJ0LiBNYXMgdGFy
ZGUsIGxvcyBncmllZ29zIGxhIGRvbWluYXJvbiBjb24gZWwgbm9tYnJlIGRlIE1v
bm9pa29zIChlcyBkZWNpcjogImVsIGRlIHVuYSB2aXZpZW5kYSIgYWRqZXRpdmFj
acOzbiBxdWUgc2UgZGFiYSBhIEhlcmFrbGVzLCBhc2ltaWxhZG8gcG9yIGxvcyBo
ZWxlbm9zIGEgTWVsa2FydCkgeSBsb3Mgcm9tYW5vcyBjb24gZWwgZGUgUG9ydHVz
IEhlcmN1bGlzIE1vbsOmY2kuIEVuIGVsIDxhIGhyZWY9Ii93aWtpL1NpZ2xvX0ki
IHRpdGxlPSJTaWdsbyBJIj5zaWdsbyBJPC9hPiwgTcOzbmFjbyBmdWUgY29tcGxl
dGFtZW50ZSBjcmlzdGlhbml6YWRvIHkgbHVlZ28gcGFzw7MgYSBkaXZlcnNvcyBw
dWVibG9zIGLDoXJiYXJvcyBjb21vIGZyYW5jb3MgeSBsb21iYXJkb3MuIFBhc8Oz
IGx1ZWdvIGFsIFNhY3JvIEltcGVyaW8gUm9tYW5vIEdlcm3DoW5pY28sIHksIGZp
bmFsbWVudGUgYSBsYSBSZXDDumJsaWNhIGRlIEfDqW5vdmEgaGFzdGEgPGEgaHJl
Zj0iL3dpa2kvMTI5NyIgdGl0bGU9IjEyOTciPjEyOTc8L2E+LCBhw7FvIGRlc2Rl
IGVsIHF1ZSBsYSBmYW1pbGlhIEdyaW1hbGRpIGdvYmllcm5hIGVsIHBhw61zIGhh
c3RhIGxhIGFjdHVhbGlkYWQsIGxlZ2l0aW3DoW5kb2xvIGVuIDxhIGhyZWY9Ii93
aWtpLzE0MTkiIHRpdGxlPSIxNDE5Ij4xNDE5PC9hPi48L3A+CjxkaXYgY2xhc3M9
InRodW1iIHRyaWdodCI+CjxkaXYgY2xhc3M9InRodW1iaW5uZXIiIHN0eWxlPSJ3
aWR0aDoyNTJweDsiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86RnJvbnRpZXJlX01v
bmFjby5naWYiIGNsYXNzPSJpbWFnZSI+PGltZyBhbHQ9IiIgc3JjPSJodHRwOi8v
dXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvNy83
ZC9Gcm9udGllcmVfTW9uYWNvLmdpZi8yNTBweC1Gcm9udGllcmVfTW9uYWNvLmdp
ZiIgd2lkdGg9IjI1MCIgaGVpZ2h0PSIxODgiIGNsYXNzPSJ0aHVtYmltYWdlIiAv
PjwvYT4KPGRpdiBjbGFzcz0idGh1bWJjYXB0aW9uIj4KPGRpdiBjbGFzcz0ibWFn
bmlmeSI+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpGcm9udGllcmVfTW9uYWNvLmdp
ZiIgY2xhc3M9ImludGVybmFsIiB0aXRsZT0iQXVtZW50YXIiPjxpbWcgc3JjPSJo
dHRwOi8vYml0cy53aWtpbWVkaWEub3JnL3NraW5zLTEuNS9jb21tb24vaW1hZ2Vz
L21hZ25pZnktY2xpcC5wbmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxMSIgYWx0PSIi
IC8+PC9hPjwvZGl2PgpNw7NuYWNvLCBNZW50w7NuIHkgUm9xdWVicnVuZSBjb24g
MjQgPGEgaHJlZj0iL3dpa2kvS20lQzIlQjIiIHRpdGxlPSJLbcKyIiBjbGFzcz0i
bXctcmVkaXJlY3QiPmttwrI8L2E+IGZvcm1hcm9uIHBhcnRlIGRlbCBQcmluY2lw
YWRvIGRlIE3Ds25hY28gaGFzdGEgPGEgaHJlZj0iL3dpa2kvMTg0NyIgdGl0bGU9
IjE4NDciPjE4NDc8L2E+LCBwZXJvIE1lbnTDs24geSBSb3F1ZWJydW5lIGZ1ZXJv
biBvZmljaWFsbWVudGUgY2VkaWRvcyBhIEZyYW5jaWEgZW4gPGEgaHJlZj0iL3dp
a2kvMTg2MSIgdGl0bGU9IjE4NjEiPjE4NjE8L2E+LjwvZGl2Pgo8L2Rpdj4KPC9k
aXY+CjxwPkhhc3RhIHN1IGluZGVwZW5kZW5jaWEgZnVlIGNvZGljaWFkYSBjb21v
IGJhc2UgbmF2YWwgcG9yIGxvcyBmcmFuY2VzZXMuIFNlIGNlbGVicmFyb24gZGl2
ZXJzb3MgdHJhdGFkb3MgZGUgcHJvdGVjY2nDs24geSBhdXRvbm9tw61hIGNvbiA8
YSBocmVmPSIvd2lraS9GcmFuY2lhIiB0aXRsZT0iRnJhbmNpYSI+RnJhbmNpYTwv
YT4gKDE0MDksIDE2NDEgeSAxODYxKSwgPGEgaHJlZj0iL3dpa2kvRXNwYSVDMyVC
MWEiIHRpdGxlPSJFc3Bhw7FhIj5Fc3Bhw7FhPC9hPiAoZW4gMTUxMiksIHkgZWwg
cmVpbm8gaXRhbGlhbm8gZGUgQ2VyZGXDsWEgKENvbmdyZXNvIGRlIFZpZW5hIGRl
IDE4MTUpLiBPY3VwYWRhIHBvciBsb3MgZXNwYcOxb2xlcyBlbiAxNjA1LCBvYnR1
dm8gbG9zIHNlw7FvcsOtb3MgZGUgUm9jY2FicnVuYSAoIlJvcXVlYnJ1bmUiKSB5
IE1lbnRvbmUvTWVudMOzbiAobG9zIGN1YWxlcyBwZXJkZXLDrWEgY29uIGxhIFJl
dm9sdWNpw7NuIGRlIDE4NDgpLiBEdXJhbnRlIGxhIFJldm9sdWNpw7NuIEZyYW5j
ZXNhIGVsIHBhw61zIGZ1ZSBvY3VwYWRvIGVuIDE3OTMsIHNpdHVhY2nDs24gcXVl
IHBlcmR1cmFyw61hIGhhc3RhIDE4MTUuIEhhc3RhIDxhIGhyZWY9Ii93aWtpLzE4
NDciIHRpdGxlPSIxODQ3Ij4xODQ3PC9hPiwgZWwgcHJpbmNpcGFkbyBkZSBNw7Nu
YWNvIG9jdXDDsyB1bmEgc3VwZXJmaWNpZSB0b3RhbCBkZSAyNCA8YSBocmVmPSIv
d2lraS9LbSVDMiVCMiIgdGl0bGU9IkttwrIiIGNsYXNzPSJtdy1yZWRpcmVjdCI+
a23CsjwvYT4geSBjb21wcmVuZMOtYSB0cmVzIGNvbXVuYXM6IE3Ds25hY28gKDEg
MjUwIGhhYml0YW50ZXMpLCBSb3F1ZWJydW5lIChob3kgUm9xdWVicnVuZS1DYXAt
TWFydGluKSAoODUwIGhhYml0YW50ZXMpIHkgTWVudMOzbiAoIDQgOTAwIGhhYml0
YW50ZXMpLiBQZXJvIGR1cmFudGUgZWwgbW92aW1pZW50byByZXZvbHVjaW9uYXJp
byBkZSA8YSBocmVmPSIvd2lraS8xODQ4IiB0aXRsZT0iMTg0OCI+MTg0ODwvYT4s
IE1lbnTDs24geSBSb3F1ZWJydW5lIHByb2NsYW1hcm9uIHN1IHJldm9jYWNpw7Nu
IGRlIGxhIGZhbWlsaWEgR3JpbWFsZGkgeSBzZSBwcm9jbGFtYXJvbiDCqyYjMTYw
O2NpdWRhZGVzIGxpYnJlcyYjMTYwO8K7IGJham8gbGEgcHJvdGVjY2nDs24gZGVs
IFJlaW5vIGRlIENlcmRlw7FhLiBOaXphLCBNZW50w7NuIHkgUm9xdWVicnVuZSB2
b3Rhcm9uIHN1IGFuZXhpw7NuIGEgRnJhbmNpYSwgcXVlIGZ1ZSByYXRpZmljYWRh
IHBvciBlbCB0cmF0YWRvIGZyYW5jby1tb25lZ2FzY28gZGUgPGEgaHJlZj0iL3dp
a2kvMTg2MSIgdGl0bGU9IjE4NjEiPjE4NjE8L2E+LiBFbiA8YSBocmVmPSIvd2lr
aS8xODY1IiB0aXRsZT0iMTg2NSI+MTg2NTwvYT4gc2UgZmlybcOzIHVuIGNvbnZl
bmlvIGNvbiBGcmFuY2lhIHNvYnJlIGxhcyBjdWVzdGlvbmVzIGRlIGFkdWFuYXMg
eSBhYm9saWNpb25lcyBkZSBpbXB1ZXN0b3MgZGlyZWN0b3MuIENvbiBlbCBwcsOt
bmNpcGUgPGEgaHJlZj0iL3dpa2kvQWxiZXJ0b19JIiB0aXRsZT0iQWxiZXJ0byBJ
Ij5BbGJlcnRvIEk8L2E+LCBzZSBwcm9jZWRpw7MgYSBhYm9saXIgZWwgYWJzb2x1
dGlzbW8gZW4gMTg2OS48L3A+CjxwPkR1cmFudGUgZXNlIHNpZ2xvLCBNw7NuYWNv
IHN1ZnJpw7Mgc2VyaWFzIHZpY2lzaXR1ZGVzIHF1ZSBhbWVuYXphcm9uIHN1IGlu
ZGVwZW5kZW5jaWEgbmFjaW9uYWwuIFNlIHJlZm9ybcOzIGVuIGRvcyBvcG9ydHVu
aWRhZGVzIGxhIGNvbnN0aXR1Y2nDs24gZGUgPGEgaHJlZj0iL3dpa2kvMTkxMSIg
dGl0bGU9IjE5MTEiPjE5MTE8L2E+LCAoZW4gPGEgaHJlZj0iL3dpa2kvMTkxNyIg
dGl0bGU9IjE5MTciPjE5MTc8L2E+IHkgZW4gPGEgaHJlZj0iL3dpa2kvMTkzMCIg
dGl0bGU9IjE5MzAiPjE5MzA8L2E+KS4gTHVpcyBJSSB0dXZvIHF1ZSByZWNvbm9j
ZXIgYSBzdSBoaWphLCBDYXJsb3RhIHBhcmEgYXNlZ3VyYXIgbGEgY29udGludWlk
YWQgZGluw6FzdGljYSBkZWwgZnV0dXJvIFJhaW5pZXJvIElJSSwgcXVlIGFzY2Vu
ZGnDsyBhbCB0cm9ubyBlbiAxOTQ5IHkgZGlleiBhw7FvcyBkZXNwdcOpcywgZXN0
ZSB0dXZvIHF1ZSBzdXNwZW5kZXIgbGEgY29uc3RpdHVjacOzbiB0cmFzIHZhcmlv
cyBkZXNhY3VlcmRvcyBjb24gZWwgQ29uc2VqbyBOYWNpb25hbC48L3A+CjxwPkVu
IDxhIGhyZWY9Ii93aWtpLzE5NjIiIHRpdGxlPSIxOTYyIj4xOTYyPC9hPiwgc2Ug
cHJvbXVsZ8OzIGxhIG51ZXZhIGNvbnN0aXR1Y2nDs24sIGFzZWd1csOhbmRvc2Ug
YXPDrSBlbCByZXNwZXRvIGEgbG9zIGRlcmVjaG9zIGZ1bmRhbWVudGFsZXMgZGUg
bG9zIG1vbmVnYXNjb3MuIEFsIGHDsW8gc2lndWllbnRlLCBzZSBmaXJtw7MgdW4g
dHJhdGFkbyBjb24gRnJhbmNpYSwgZGVsIGN1YWwgc2UgYXJyZWdsYXJvbiBkaWZl
cmVuZG9zIGVjb27Ds21pY29zIHkgc2UgY3JlYXJvbiBudWV2b3MgYWN1ZXJkb3Mg
ZGUgdmVjaW5kYWQgeSBtb25lZGEsIHF1ZSBzZSByZW5vdmFyb24gZW4gPGEgaHJl
Zj0iL3dpa2kvMjAwMiIgdGl0bGU9IjIwMDIiPjIwMDI8L2E+IGNvbiBsYSBwdWVz
dGEgZW4gY2lyY3VsYWNpw7NuIGRlbCA8YSBocmVmPSIvd2lraS9FdXJvIiB0aXRs
ZT0iRXVybyI+ZXVybzwvYT4gZW4gTcOzbmFjbywgc2kgYmllbiBlc3RlIGVzdGFk
byBubyBlcyBtaWVtYnJvIGRlIGxhIFVuacOzbiBFdXJvcGVhIChVRSkuPC9wPgo8
cD5VbiB0cmF0YWRvIGNvbiBGcmFuY2lhIGVzdGFibGFjZSBxdWUgc2kgYWxnw7pu
IGTDrWEgZWwgdHJvbm8gbW9uZWdhc2NvIHF1ZWRhIHZhY2FudGUsIE3Ds25hY28g
cGFzYXLDoSBhIHNlciBwb3Nlc2nDs24gZnJhbmNlc2EuPC9wPgo8aDM+PHNwYW4g
Y2xhc3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxl
PU0lQzMlQjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2VjdGlvbj00IiB0aXRs
ZT0iRWRpdGFyIHNlY2Npw7NuOiBQcmVoaXN0b3JpYSI+ZWRpdGFyPC9hPl08L3Nw
YW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IlByZWhpc3RvcmlhIj5Q
cmVoaXN0b3JpYTwvc3Bhbj48L2gzPgo8cD5FbCB0ZXJyaXRvcmlvIGFjdHVhbCBk
ZSBNw7NuYWNvIHNpcnZpw7MgZGUgYWJyaWdvIGEgbG9zIHByaW1lcm9zIGhhYml0
YW50ZXMgZGUgbGEgcmVnacOzbiBhIHBhcnRpciBkZWwgZmluYWwgZGVsIFBhbGVv
bMOtdGljbyBpbmZlcmlvciwgYXByb3hpbWFkYW1lbnRlIGhhY2UgMzAwIDAwMCBh
w7Fvcy4gUmVzdG9zIMOzc2VvcyBkZSBhbmltYWxlcyBxdWUgc2lydmllcm9uIGRl
IGFsaW1lbnRvIGEgZXN0b3MgaG9tYnJlcyBwcmVoaXN0w7NyaWNvcyBmdWVyb24g
ZW5jb250cmFkb3MgZW4gdW5hIGNhdmVybmEgZGVsIEphcmTDrW4gZXjDs3RpY28g
ZGUgTcOzbmFjby48c3VwIGlkPSJjaXRlX3JlZi0xIiBjbGFzcz0icmVmZXJlbmNl
Ij48YSBocmVmPSIjY2l0ZV9ub3RlLTEiPjxzcGFuIGNsYXNzPSJjb3JjaGV0ZS1s
bGFtYWRhIj5bPC9zcGFuPjI8c3BhbiBjbGFzcz0iY29yY2hldGUtbGxhbWFkYSI+
XTwvc3Bhbj48L2E+PC9zdXA+IExhcyBleGNhdmFjaW9uZXMgaGFuIGlndWFsbWVu
dGUgcmV2ZWxhZG8gbGEgcHJlc2VuY2lhIGRlIHVuYSBjdWVuY2EgZW4gbGEgY3Vl
dmEgZGVsIE9ic2VydmF0b3JpbyB5IGVuIGxhIGN1ZXZhIGRlbCBQcsOtbmNpcGUu
PHN1cCBpZD0iY2l0ZV9yZWYtMiIgY2xhc3M9InJlZmVyZW5jZSI+PGEgaHJlZj0i
I2NpdGVfbm90ZS0yIj48c3BhbiBjbGFzcz0iY29yY2hldGUtbGxhbWFkYSI+Wzwv
c3Bhbj4zPHNwYW4gY2xhc3M9ImNvcmNoZXRlLWxsYW1hZGEiPl08L3NwYW4+PC9h
Pjwvc3VwPiBMYSBwcmVzZW5jaWEgaHVtYW5hIGVzdMOhIGF0ZXN0aWd1YWRhIGVu
IGVsIFBhbGVvbMOtdGNvIG1lZGlvIHkgZW4gZWwgc3VwZXJpb3IuIFNlIGhhbiBl
bmNvbnRyYWRvIHJlc3RvcyBkZSBvYnJhcyBkZSBhcnRlIChncmFiYWRvcyB5IGVz
Y3VsdHVyYXMpIGRlbnRybyBkZSBsYXMgY3VldmFzIGRhdGFkYXMgaGFjaWEgMSA1
MDAgYS4gZC4gQy4gTGFzIHNlcHVsdHVyYXMgZnVuZXJhcmlhcywgaW5kaXZpZHVh
bGVzIG8gY29sZWN0aXZhcywgc2UgdnVlbHZlbiBjYWRhIHZleiBtw6FzIG51bWVy
b3Nhcy4gTGEgc2VwdWx0dXJhIGRlIGxvcyBob21icmVzIGxsYW1hZG9zIMKrJiMx
NjA7ZGUgR3JpbWFsZGkmIzE2MDvCuyAobm8gY29uZnVuZGlyIGNvbiBsYSBmYW1p
bGlhIHJlYWwpLCBkYXRhIGRlIGVzdGEgw6lwb2NhIHkgY29udGllbmUgdW5hIG11
amVyIHkgdW4gYWRvbGVzY2VudGUuPC9wPgo8aDM+PHNwYW4gY2xhc3M9ImVkaXRz
ZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPU0lQzMlQjNuYWNv
JmFtcDthY3Rpb249ZWRpdCZhbXA7c2VjdGlvbj01IiB0aXRsZT0iRWRpdGFyIHNl
Y2Npw7NuOiBBbnRpZ8O8ZWRhZCI+ZWRpdGFyPC9hPl08L3NwYW4+IDxzcGFuIGNs
YXNzPSJtdy1oZWFkbGluZSIgaWQ9IkFudGlnLkMzLkJDZWRhZCI+QW50aWfDvGVk
YWQ8L3NwYW4+PC9oMz4KPHA+U2Vnw7puIDxhIGhyZWY9Ii93aWtpL0Rpb2Rvcm9f
ZGVfU2ljaWxpYSIgdGl0bGU9IkRpb2Rvcm8gZGUgU2ljaWxpYSIgY2xhc3M9Im13
LXJlZGlyZWN0Ij5EaW9kb3JvIGRlIFNpY2lsaWE8L2E+IHkgZWwgZ2XDs2dyYWZv
IDxhIGhyZWY9Ii93aWtpL0VzdHJhYiVDMyVCM24iIHRpdGxlPSJFc3RyYWLDs24i
PkVzdHJhYsOzbjwvYT4sIGxvcyBwcmltZXJvcyBoYWJpdGFudGVzIHNlZGVudGFy
aW9zIGZ1ZXJvbiBsb3MgPGEgaHJlZj0iL3dpa2kvTGlndXJlcyIgdGl0bGU9Ikxp
Z3VyZXMiPmxpZ3VyZXM8L2E+LCBxdWUgZW1pZ3Jhcm9uIGRlc2RlIGxhIGNpdWRh
ZCBkZSBHw6lub3ZhIGVuIEl0YWxpYS4gTm8gb2JzdGFudGUsIGxhIDxhIGhyZWY9
Ii93aWtpL0FudGlndW9faWRpb21hX2xpZ3VyIiB0aXRsZT0iQW50aWd1byBpZGlv
bWEgbGlndXIiPmFudGlndWEgbGVuZ3VhIGxpZ3VyPC9hPiwgc2luIGNvbmV4acOz
biBjb24gbGFzIGxlbmd1YXMgaW5kb2V1cm9wZWFzLCBubyBlc3RhYmEgYXBhcmVu
dGFkYSBjb24gZWwgPGEgaHJlZj0iL3dpa2kvSWRpb21hX2xpZ3VyIiB0aXRsZT0i
SWRpb21hIGxpZ3VyIj5kaWFsZWN0bzwvYT4gaG95IGVuIGTDrWEgaGFibGFkbyBw
b3IgbG9zIGhhYml0YW50ZXMgZGUgPGEgaHJlZj0iL3dpa2kvTGlndXJpYSIgdGl0
bGU9IkxpZ3VyaWEiPkxpZ3VyaWE8L2E+IG5pIGNvbiBlbCBtb25lZ2FzY28gbW9k
ZXJuby4gRXN0ZSBhdmFuY2UgaGFjaWEgTcOzbmFjbyBzZSBoYWJyw61hIHF1aXrD
oXMgZGViaWRvIGEgbGEgYXBlcnR1cmEgbWFyw610aW1hIGRlIHVuIHB1ZWJsbyBs
aWd1ciBzaXR1YWRvIHRpZXJyYSBhZGVudHJvLjwvcD4KPHA+TG9zIGdyaWVnb3Mg
ZGUgPGEgaHJlZj0iL3dpa2kvTWFyc2VsbGEiIHRpdGxlPSJNYXJzZWxsYSI+TWFy
c2VsbGE8L2E+IChlbnRvbmNlcyBNYXNzYWxpYSksIGZ1bmRhcm9uIGxhIGNvbG9u
aWEgZGUgPGk+TW9ub8Ova29zPC9pPiBlbiBlbCBzaWdsbyBWSSBhbnRlcyBkZSBD
cmlzdG8gZW4gbGEgYmFow61hIGRvbmRlIGFjdHVhbG1lbnRlIGRlIGVuY3VlbnRy
YSBNw7NuYWNvLiBNb25vw69rb3MgZXJhIGFzb2NpZWRhIGEgSMOpcmN1bGVzLCBh
ZG9yYWRvIGJham8gZWwgbm9tYnJlIGRlIDxpPkhlcmN1bGVzIE1vbm9lY3VzPC9p
Pi4gU2Vnw7puIERpb2Rvcm8gZGUgU2ljaWxpYSB5IEVzdHJhYsOzbiwgdGFudG8g
Z3JpZWdvcyBjb21vIGxpZ3VyZXMgY3Jlw61hbiBxdWUgSMOpcmN1bGVzIGhhYsOt
YSBwYXNhZG8gcG9yIGxhIHJlZ2nDs24uPC9wPgo8cD5EZXNwdcOpcyBkZSBsYSBH
dWVycmEgZGUgbGFzIEdhbGlhcywgSnVsaW8gQ8Opc2FyIHNlIGluc3RhbMOzIGVu
IGVzdGEgdGllcnJhIHlhIGFiYW5kb25hZGEgcG9yIGxvcyBncmllZ29zLCBsbyBx
dWUgc2lnbmlmaWPDsyBlbCBwYXNvIGRlIGVzdGUgdGVycml0b3JpbyBhbCBjb250
cm9sIGRlIGxhIDxhIGhyZWY9Ii93aWtpL1JlcCVDMyVCQWJsaWNhX1JvbWFuYSIg
dGl0bGU9IlJlcMO6YmxpY2EgUm9tYW5hIiBjbGFzcz0ibXctcmVkaXJlY3QiPlJl
cMO6YmxpY2EgUm9tYW5hPC9hPiBjb21vIHBhcnRlIGRlIGxhIHByb3ZpbmNpYSBy
b21hbmEgZGUgbGEgPGEgaHJlZj0iL3dpa2kvR2FsaWFfTmFyYm9uZW5zZSIgdGl0
bGU9IkdhbGlhIE5hcmJvbmVuc2UiPkdhbGlhIE5hcmJvbmVuc2U8L2E+LiBFbiBM
YSBFbmVpZGEsIGVsIHBvZXRhIFZpcmdpbGlvIGxhIG1lbmNpb25hIHlhLjwvcD4K
PGgzPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2luZGV4
LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3NlY3Rp
b249NiIgdGl0bGU9IkVkaXRhciBzZWNjacOzbjogRWRhZCBNZWRpYSI+ZWRpdGFy
PC9hPl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IkVkYWRf
TWVkaWEiPkVkYWQgTWVkaWE8L3NwYW4+PC9oMz4KPHA+TcOzbmFjbyBwZXJtYW5l
Y2nDsyBiYWpvIGRvbWluaW8gcm9tYW5vIGhhc3RhIGxhIGNhw61kYSBkZWwgSW1w
ZXJpbyBSb21hbm8gZGUgT2NjaWRlbnRlIGVsIDQgZGUgc2VwdGllbWJyZSBkZSA0
NzYuIEVsIGVzdHJlY2hvIGZ1ZSBldmVudHVhbG1lbnRlIG9jdXBhZG8gcG9yIHNh
cnJhY2Vub3MgeSBkaXZlcnNhcyB0cmlidXMgZ2VybcOhbmljYXMuIExvcyBzYXJy
YWNlbm9zIGZ1ZXJvbiBleHB1bHNhZG9zIGVuIDk3NSB5IGVuIGVsIHNpZ2xvIFhJ
IGVsIGVzdHJlY2hvIGZ1ZSBudWV2YW1lbnRhIHBvYmxhZG8gcG9yIGxpZ3VyZXMg
KGVzdGEgdmV6LCBwYXJsYW50ZXMgZGUgc3UgbGVuZ3VhIGFjdHVhbCkgLjwvcD4K
PHA+RW4gMTE5MSwgZWwgZW1wZXJhZG9yIGRlbCBTYWNybyBJbXBlcmlvIFJvbWFu
by1HZXJtw6FuaWNvIEVucmlxdWUgVkkgY29uY2VkacOzIGxhIHNvYmVyYW7DrWEg
c29icmUgTcOzbmFjbyBhIGxhIGNpdWRhZCBkZSBHw6lub3ZhIGVuIEl0YWxpYSwg
ZGUgZG9uZGUgZXJhbiBvcmlnaW5hcmlvcyBsb3MgbGlodXJlcy4gRWwgMTAgZGUg
anVuaW8gZGUgMTIxNSwgdW5hIGNvbWl0aXZhIGRlIDxhIGhyZWY9Ii93aWtpL0dp
YmVsaW5vcyIgdGl0bGU9IkdpYmVsaW5vcyIgY2xhc3M9Im13LXJlZGlyZWN0Ij5H
aWJlbGlub3M8L2E+IGNvbWFuZGFkb3MgcG9yIEZ1bGNvIGRlbCBDYXNzZWxsbyBj
b21lbnrDsyBsYSBjb25zdHJ1Y2Npw7NuIGRlIHVuYSBmb3J0YWxlemEgc29icmUg
ZWwgcm9jaGVyIGRlIE3Ds25hY28uIEVzdGEgZmVjaGEgbWFyY2EgZWwgaW5pY2lv
IGRlIGxhIGhpc3RvcmlhIG1vZGVybmEgZGVsIFByaW5jaXBhZG8gZGUgTcOzbmFj
by48L3A+CjxwPkVzdGEgZm9ydGFsZXphIGNvbnN0aXR1w61hIHVuIHB1bnRvIGVz
dHJhdMOpZ2ljbyBwYXJhIGNvbnRyb2xhciBsYSByZWdpw7NuIGZyZW50ZSBhIGxh
IHBhcnRlIGFkdmVyc2EgZGUgbG9zIDxhIGhyZWY9Ii93aWtpL0clQzMlQkNlbGZv
IiB0aXRsZT0iR8O8ZWxmbyIgY2xhc3M9Im13LXJlZGlyZWN0Ij5nw7xlbGZvczwv
YT4uIMOJc3RvcyBlc3RhYmxlY2llcm9uIHRhbWJpw6luIGN1YXJ0ZWxlcyBhIGxh
IGJhc2UgZGVsIFJvY2hlciBhIGZpbiBkZSBhcG95YXIgYSBsYXMgZ3Vhcm5pY2lv
bmVzLiBGdWUgcGFyYSBhdHJhZXIgYSBsb3MgaGFiaXRhbnRlcyBkZSBHw6lub3Zh
IHkgZGUgbGFzIGNpdWRhZGVzIHByw7N4aW1hcyBxdWUgb2ZyZWNpZXJvbiB0aWVy
cmEgeSBleG9uZXJhcm9uIGRlIGltcHVlc3RvcyBhIGxvcyBudWV2b3MgYXJyaWJh
bnRlcyAuPC9wPgo8aDQ+PHNwYW4gY2xhc3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJl
Zj0iL3cvaW5kZXgucGhwP3RpdGxlPU0lQzMlQjNuYWNvJmFtcDthY3Rpb249ZWRp
dCZhbXA7c2VjdGlvbj03IiB0aXRsZT0iRWRpdGFyIHNlY2Npw7NuOiBDb21pZW56
b3MgZGUgbGEgZGluYXN0w61hIEdyaW1hbGRpIj5lZGl0YXI8L2E+XTwvc3Bhbj4g
PHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iQ29taWVuem9zX2RlX2xhX2Rp
bmFzdC5DMy5BRGFfR3JpbWFsZGkiPkNvbWllbnpvcyBkZSBsYSBkaW5hc3TDrWEg
R3JpbWFsZGk8L3NwYW4+PC9oND4KPGRpdiBjbGFzcz0idGh1bWIgdHJpZ2h0Ij4K
PGRpdiBjbGFzcz0idGh1bWJpbm5lciIgc3R5bGU9IndpZHRoOjIyMnB4OyI+PGEg
aHJlZj0iL3dpa2kvQXJjaGl2bzpNb25hY28tRnJhbmNvaXNHcmltYWxkaS5qcGci
IGNsYXNzPSJpbWFnZSI+PGltZyBhbHQ9IiIgc3JjPSJodHRwOi8vdXBsb2FkLndp
a2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvOC84Yy9Nb25hY28t
RnJhbmNvaXNHcmltYWxkaS5qcGcvMjIwcHgtTW9uYWNvLUZyYW5jb2lzR3JpbWFs
ZGkuanBnIiB3aWR0aD0iMjIwIiBoZWlnaHQ9IjI5MyIgY2xhc3M9InRodW1iaW1h
Z2UiIC8+PC9hPgo8ZGl2IGNsYXNzPSJ0aHVtYmNhcHRpb24iPgo8ZGl2IGNsYXNz
PSJtYWduaWZ5Ij48YSBocmVmPSIvd2lraS9BcmNoaXZvOk1vbmFjby1GcmFuY29p
c0dyaW1hbGRpLmpwZyIgY2xhc3M9ImludGVybmFsIiB0aXRsZT0iQXVtZW50YXIi
PjxpbWcgc3JjPSJodHRwOi8vYml0cy53aWtpbWVkaWEub3JnL3NraW5zLTEuNS9j
b21tb24vaW1hZ2VzL21hZ25pZnktY2xpcC5wbmciIHdpZHRoPSIxNSIgaGVpZ2h0
PSIxMSIgYWx0PSIiIC8+PC9hPjwvZGl2PgpFc3RhdHVhIGRlIEdyaW1hbGRpIHZl
c3RpZG8gY29tbyB1biA8YSBocmVmPSIvd2lraS9Nb25qZSIgdGl0bGU9Ik1vbmpl
IiBjbGFzcz0ibXctcmVkaXJlY3QiPm1vbmplPC9hPiBjb24gdW5hIDxhIGhyZWY9
Ii93aWtpL0VzcGFkYSIgdGl0bGU9IkVzcGFkYSI+ZXNwYWRhPC9hPiBiYWpvIHN1
IDxhIGhyZWY9Ii93aWtpL0NhcGEiIHRpdGxlPSJDYXBhIj5jYXBhPC9hPiBkZWxh
bnRlIGRlbCA8YSBocmVmPSIvd2lraS9QYWxhY2lvX2RlbF9QciVDMyVBRG5jaXBl
X2RlX00lQzMlQjNuYWNvIiB0aXRsZT0iUGFsYWNpbyBkZWwgUHLDrW5jaXBlIGRl
IE3Ds25hY28iPlBhbGFjaW8gZGVsIFByw61uY2lwZSBkZSBNw7NuYWNvPC9hPi48
L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8cD5FbCA4IGRlIGVuZXJvIGRlIDEyOTcsIEZy
YW7Dp29pcyBHcmltYWxkaSwgZGVzY2VuZGllbnRlIGRlIE90dG8gQ2FuZWxsYSBj
w7Nuc3VsIGRlIEfDqW5vdmEgZW4gMTEzMywgc2UgYW5leGlvbsOzIGxhIGZvcnRh
bGV6YSBwb3IgbGEgZnVlcnphLiBFc3RlIGfDvGVsZm8gbm8gcG9zZcOtYSBtYXMg
cXVlIHVuIHBlcXVlw7FvIGVqw6lyY2l0bywgc2UgZGlzZnJhesOzIGRlIG1vbmpl
IGZyYW5jaXNjYW5vIHBhcmEgcGVuZXRyYXIsIHkgdW5hIHZleiBkZW50cm8gbGVz
IGFicmnDsyBhIHN1cyBzb2xkYWRvcy4gTG9zIGfDvGVsZm9zIGZ1ZXJvbiBtw6Fz
IHRhcmRlIGRlcnJvdGFkb3MgeSBGcmFuw6dvaXMgZXhwdWxzYWRvIGRlIE3Ds25h
Y28gcG9yIGxvcyBnZW5vdmVzZXMgZW4gMTMwMS4gTGEgZmFtaWxpYSBHcmltYWxk
aSBzZSBhcG95w7MgZW50b25jZXMgZW4gZWwgUmV5IGRlIEZyYW5jaWEuPC9wPgo8
cD5FbCBwcmltbyBkZSBGcmFuw6dvaXMgLCBSYWluaWVybyBJIGRlIEdyaW1hbGRp
LCBhbCBzZXJ2aWNpbyBkZSBGZWxpcGUgSSBlbCBIZXJtb3NvLCBjb21hbmTDsyB1
bmEgZmxvdGEgZGUgZ2FsZXJhcyB5IHZlbmNpw7MgYSBsb3MgaG9sYW5kZXNlcyBl
biBsYSBCYXRhbGxhIGRlIFppZXJpa3NlZSBlbiAxMzA0LiBGdWUgbm9tYnJhZG8g
ZW50b25jZXMgYWxtaXJhbnRlIGRlIEZyYW5jaWEuIFBhZHJlIGRlIENhcmxvcyBJ
IGRlIEdyaW1hbGRpLCBmdW5kw7MgbGEgZGluYXN0w61hIHF1ZSBsbGV2YSBzdSBu
b21icmUsIHF1ZSBzZXJ2aXLDrWEgZmllbG1lbnRlIGEgbGEgbW9uYXJxdcOtYSBm
cmFuY2VzYSBkdXJhbnRlIGxvcyBzaWdsb3MgdmVuaWRlcm9zIC48L3A+CjxoND48
c3BhbiBjbGFzcz0iZWRpdHNlY3Rpb24iPls8YSBocmVmPSIvdy9pbmRleC5waHA/
dGl0bGU9TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0JmFtcDtzZWN0aW9uPTgi
IHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IEx1Y2hhcyBjb250cmEgR8Opbm92YSI+
ZWRpdGFyPC9hPl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9
Ikx1Y2hhc19jb250cmFfRy5DMy5BOW5vdmEiPkx1Y2hhcyBjb250cmEgR8Opbm92
YTwvc3Bhbj48L2g0Pgo8cD5SZXRvbWFuZG8gbGEgbHVjaGEgY29udHJhIEfDqW5v
dmEsIENhcmxvcyBJIG9jdXDDsyBsYSBjaXVkYWQsIGVsIDEyIGRlIHNlcHRpZW1i
cmUgZGUgMTMzMSwgc2UgYXV0b3Byb2NsYW3DsyDCqyYjMTYwO1Nlw7FvciBkZSBN
w7NuYWNvJiMxNjA7wrsgZW4gMTM0Mi4gTWllbnRyYXMgcXVlIGFkcXVpcsOtYSBl
bCBzZcOxb3JpbyBkZSBNZW50b24gZW4gMTM0NiAsIGVsIG1pc21vIGHDsW8sIENh
cmxvcyBzZXJ2w61hIHBhcmFsYWxlbGFtZW50ZSBhIGxhIENvcm9uYSBGcmFuY2Vz
YSBjb21hbmRhbmRvIHVuYSBjb21wYcOxw61hIGRlIGFsYWJhcmRlcm9zIGVuIGxh
IGJhdGFsbGEgZGUgQ3LDqWN5LCBlbiB0YW50byBxdWUgc29jb3Jyw61hIHBvciBt
YXIgZWwgY2FtcGFtZW50byBmcmFuY8OpcyB0cmFzIGVsIHNpdGlvIGRlIENhbGFp
cy4gTHVlZ28sIGVuIDEzNTUsIG9idHV2byBlbCBzZcOxb3LDrW8gZGUgUm9xdWVi
cnVuZS1DYXAtTWFydGluLiBQZXJvIGVuIDEzNTcsIGZhbGxlY2nDsyBkdXJhbnRl
IGVsIHNpdGlvIGNvbWFuZGFuZG8gcG9yIGVsIGdlbm92w6lzIFNpbW9uIEJvY2Nh
bmVncmEuIExhIHRvdGFsaWRhZCBkZWwgcHJpbmNpcGFkbyBmdWUgZW50b25jZXMg
YXNpbWlsYWRvIHBvciBHw6lub3ZhLCBhIGV4Y2VwY2nDs24gZGUgTWVudMOzbiwg
ZGVmZW5kaWRvIHBvciBSYWluaWVybyBJSSwgZWwgaGlqbyBkZSBDYXJsb3MsIHF1
ZSByw6FwaWRhbWVudGUgcmVjb25xdWlzdMOzIFJvcXVlYnJ1bmUuPC9wPgo8cD5M
b3MgaGlqb3MgZGUgUmFpbmllcm8gSUk6IEFtYnJvc2lvLCBBbnRvbmlvIHkgSnVh
biByZXRvbWFyb24gTGUgUm9jaGUgeSBzZSBjb252aXJ0aWVyb24gdG9kb3MgZW4g
Y29zZcOxb3JlcyAoaW5zdGl0dWNpw7NuIHBvY28gZnJlY3VlbnRlIGVuIGxhIEVk
YWQgTWVkaWEpLiBKdWFuIGNvbnNlcnbDsyBwb3Igc3UgcGFydGUgc8OzbG8gTcOz
bmFjbyB5IGxhIENvbmRhbWluYS4gUGVybWFuZWNpw7MgZW4gbHVjaGEgY29udGlu
w7phIGNvbnRyYSBsb3MgZ2Vub3Zlc2VzLiBTdSBoaWpvLCBDYXRhbMOhbiwgc8Oz
bG8gbG8gc3VjZWRpw7MgcG9yIHRyZXMgYcOxb3MsIHkgc3UgbmlldGEgQ2xhdWRp
bmEgR3JpbWFsZGkgZGUgTcOzbmFjbyBmdWUgZGVzcG9zYWRhIGVuIDE0NjUgcG9y
IHVuIEdyaW1hbGRpIGQnQW50aWJlcywgTGFtYmVydCBHcmltYWxkaSBkJ0FudGli
ZXMuIMOJc3RlIG9idHV2byBlbiAxNDg5IGVsIHJlY29ub2NpbWllbnRvIGRlIHN1
IGluZGVwZW5kZW5jaWEgcG9yIGVsIHJleSBkZSBGcmFuY2lhIHkgZWwgZHVxdWUg
ZGUgU2Fib3lhLiBHw6lub3ZhIGludGVudMOzIHVuIMO6bHRpbW8gc2l0aW8gZW4g
MTUwOSwgcGVybyBkZSBjYXJhIGEgdW5hIHJlc2lzdGVuY2lhIHZpY3Rvcmlvc2Es
IHJlbnVuY2lvIGRlZmluaXRpdmFtZW50ZSBhIE3Ds25hY28gLjwvcD4KPGgzPjxz
cGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2luZGV4LnBocD90
aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3NlY3Rpb249OSIg
dGl0bGU9IkVkaXRhciBzZWNjacOzbjogRWRhZCBNb2Rlcm5hIj5lZGl0YXI8L2E+
XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iRWRhZF9Nb2Rl
cm5hIj5FZGFkIE1vZGVybmE8L3NwYW4+PC9oMz4KPHA+THVjaWFubyBtdXJpw7Mg
YXNlc2luYWRvIGVuIDE1MjMgcG9yIHN1IHByaW1vIEJhcnRvbG9tZW8gRG9yaWEu
IE5vIGRlasOzIG1hcyBxdWUgdW4gaGlqbyBkZSBjb3J0YSBlZGFkLCBIb25vcmlv
LCBjdXlhIHR1dGVsYSBsZSBmdWUgY29uZmlhZGEgYSBzdSB0w61vIEFndXN0w61u
LCBvYmlzcG8gZGUgR3Jhc3NlLCBxdWUgZnVlIHJlY29ub2NpZG8gc2XDsW9yLiBB
Z3VzdMOtbiBubyBvYnR1dm8gZGUgcGFydGUgZGUgRnJhbmNpc2NvIEkgZWwgYXBv
eW8gcXVlIGhhYsOtYW4gcG9zZcOtZG8gbG9zIEdyaW1hbGRpLCBjb2xvY8OzIGVs
IFJvY2hlciBiYWpvIHByb3RlY3RvcmFkbyBlc3Bhw7FvbCBlbiAxNTI0LiBVbmEg
Z3Vhcm5pY2nDs24gZXNwYcOxb2xhIGZ1ZSBhc8OtIHB1ZXN0YSBiYWpvIHJlc3Bv
bnNhYmlsaWRhZCBkZSBsb3MgR3JpbWFsZGkgZHVyYW50ZSBtw6FzIGRlIHVuIHNp
Z2xvLjwvcD4KPHA+RWwgbmlldG8gZGUgSG9ub3JpbywgSG9ub3JpbyBJSSwgcHVl
c3RvIGJham8gbGEgdHV0ZWxhIGRlbCBwcsOtbmNpcGUgZGUgVmFsZGV0YXJlLCB0
b23DsyBlbCB0w610dWxvIGRlIHByw61uY2lwZSBlbiAxNjAyLiBSZXRvcm7DsyBh
IGxhIGFsaWFuemEgY29uIEZyYW5jaWEgdHJhcyBlbCB0cmF0YWRvIGRlIFBlcm9u
w6ksIGZpcm1hZG8gZW4gMTY0MSB5IG5lZ29jaWFkw7MgZGUgcGFydGUgZGUgRnJh
bmNpYSBwb3IgUmljaGVsaXUuIEVsIHByw61uY2lwZSBleHB1bHNvIDxpPm1hbnVp
IG1pbGl0YXJpPC9pPiBhIGxhIGd1YXJuaWNpw7NuIGVzcGHDsW9sYSwgeSBvYnR1
dm8gZWwgZHVjYWRvIGRlIFZhbGVudGlub2lzLiBFc3RhcyBudWV2YXMgZnVlbnRl
cyBkZSBlbnRyYWRhcywgbWFzIGVsIGFiYW5kb25vIGRlIGxvcyBnYXN0b3MgZGUg
bGEgZ3Vhcm5pY2nDs24gZXNwYcOxb2xhLCBwZXJtaXRpZXJvbiBlbCBlbWJlbGxl
emFtaWVudG8gZGVsIHBhbGFjaW8uPC9wPgo8cD5MdWlzIEkgZGUgTcOzbmFjbyBj
b21hbmTDsyBzdSByZWdpbWllbnRvIGRlIGNhYmFsbGVyw61hIHkgb2J0dXZvIHVu
YSBlbWJhamFkYSBwb3IgcGFydGUgZGVsIFZhdGljYW5vIGVuIDE3MDEuPC9wPgo8
aDM+PHNwYW4gY2xhc3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5kZXgu
cGhwP3RpdGxlPU0lQzMlQjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2VjdGlv
bj0xMCIgdGl0bGU9IkVkaXRhciBzZWNjacOzbjogUmV2b2x1Y2lvbmVzIj5lZGl0
YXI8L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iUmV2
b2x1Y2lvbmVzIj5SZXZvbHVjaW9uZXM8L3NwYW4+PC9oMz4KPGRpdiBjbGFzcz0i
dGh1bWIgdHJpZ2h0Ij4KPGRpdiBjbGFzcz0idGh1bWJpbm5lciIgc3R5bGU9Indp
ZHRoOjIyMnB4OyI+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpNb25hY29jMTg5MC5q
cGciIGNsYXNzPSJpbWFnZSI+PGltZyBhbHQ9IiIgc3JjPSJodHRwOi8vdXBsb2Fk
Lndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvYS9hNy9Nb25h
Y29jMTg5MC5qcGcvMjIwcHgtTW9uYWNvYzE4OTAuanBnIiB3aWR0aD0iMjIwIiBo
ZWlnaHQ9IjE1OCIgY2xhc3M9InRodW1iaW1hZ2UiIC8+PC9hPgo8ZGl2IGNsYXNz
PSJ0aHVtYmNhcHRpb24iPgo8ZGl2IGNsYXNzPSJtYWduaWZ5Ij48YSBocmVmPSIv
d2lraS9BcmNoaXZvOk1vbmFjb2MxODkwLmpwZyIgY2xhc3M9ImludGVybmFsIiB0
aXRsZT0iQXVtZW50YXIiPjxpbWcgc3JjPSJodHRwOi8vYml0cy53aWtpbWVkaWEu
b3JnL3NraW5zLTEuNS9jb21tb24vaW1hZ2VzL21hZ25pZnktY2xpcC5wbmciIHdp
ZHRoPSIxNSIgaGVpZ2h0PSIxMSIgYWx0PSIiIC8+PC9hPjwvZGl2PgpNw7NuYWNv
IGVuIDE4OTAuPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPHA+VHJhcyBsYSBub2NoZSBk
ZWwgPGEgaHJlZj0iL3dpa2kvNF9kZV9hZ29zdG8iIHRpdGxlPSI0IGRlIGFnb3N0
byI+NCBkZSBhZ29zdG88L2E+IGRlIDxhIGhyZWY9Ii93aWtpLzE3ODkiIHRpdGxl
PSIxNzg5Ij4xNzg5PC9hPiwgbG9zIHByw61uY2lwZXMgZGUgTcOzbmFjbyBwZXJk
aWVyb24gdG9kYXMgc3VzIHBvc2VzaW9uZXMgZnJhbmNlc2FzLCB5IGxvcyBpbmdy
ZXNvcyBkZXJpdmFkb3MgZGUgZWxsYXMuIExhIFNvY2llZGFkIFBvcHVsYXIgbWls
aXTDsyBwb3IgbGEgYXNvY2lhY2nDs24gY29uIGxhIFJlcMO6YmxpY2EsIGRlY2lk
aWRhIHBvciBsYSBDb252ZW5jacOzbiBuYWNpb25hbCBlbCAxNSBkZSBmZWJyZXJv
IGRlIDE3OTMuPC9wPgo8cD5EZSAxNzkzIGEgMTgxNCBNw7NuYWNvIGVzdHV2byBp
bnRlZ3JhZG8gZW4gRnJhbmNpYSwgYmFqbyBlbCBub21icmUgZGUgPGk+Rm9ydCBk
J0hlcmN1bGU8L2k+LiBGb3Jtw7MgcGFydGUgZGUgbGEgcmVnacOzbiBkZSBsb3Mg
QWxwZXMgTWFyw610aW1vcywgbHVlZ28gZnVlIGFzb2NpYWRvIGEgU2FuIFJlbW8u
PC9wPgo8cD5FbCB0cmF0YWRvIGRlIFBhcsOtcyBlbCA8YSBocmVmPSIvd2lraS8z
MF9kZV9tYXlvIiB0aXRsZT0iMzAgZGUgbWF5byI+MzAgZGUgbWF5bzwvYT4gZGUg
PGEgaHJlZj0iL3dpa2kvMTgxNCIgdGl0bGU9IjE4MTQiPjE4MTQ8L2E+IHZvbHZp
w7MgYSBjb2xvY2FyIGFsIHByaW5jaXBhZG8gZW4gbGEgw7NyYml0YSBhbnRlcmlv
ciBhIDxhIGhyZWY9Ii93aWtpLzE3ODkiIHRpdGxlPSIxNzg5Ij4xNzg5PC9hPi4g
UGVybyBjdWFuZG8gSG9ub3JpbyBJViBhcnJpYsOzIGEgbGEgUm9jYSBlbiBtYXJ6
byBkZSAxODE1IHBhcmEgdG9tYXIgcG9zZXNpw7NuIGRlIGVsbGEsIGZ1ZSBkZXRl
bmlkbyBwb3IgUGllcnJlIENhbWJyb25uZSYjMTYwOzogZXMgZWwgaW5pY2lvIGRl
IGxvcyBDaWVuIETDrWFzLjwvcD4KPHA+TcOzbmFjbyBzZSBjb2xvY8OzIGVudG9u
Y2VzIGJhasOzIHByb3RlY3RvcmFkbyBkZWwgUmVpbm8gZGUgQ2VyZGXDsWEgZW4g
ZWwgc2VndW5kbyB0cmF0YWRvIGRlIFBhcsOtcywgZmlybWFkbyBlbCA8YSBocmVm
PSIvd2lraS8yMF9kZV9ub3ZpZW1icmUiIHRpdGxlPSIyMCBkZSBub3ZpZW1icmUi
PjIwIGRlIG5vdmllbWJyZTwvYT4gZGUgMTgxNSwgY29uZmlybWFkbyBwb3IgZWwg
dHJhdGFkbyBkZSBTdXRwaW5pZ2kgZW4gPGEgaHJlZj0iL3dpa2kvMTgxNyIgdGl0
bGU9IjE4MTciPjE4MTc8L2E+LjwvcD4KPHA+SGFzdGEgPGEgaHJlZj0iL3dpa2kv
MTg0NyIgdGl0bGU9IjE4NDciPjE4NDc8L2E+LCBlbCBwcmluY2lwYWRvIGRlIE3D
s25hY28gb2N1cMOzIHVuYSBzdXBlcmZpY2llIHRvdGFsIGRlIDI0JiMxNjA7PGEg
aHJlZj0iL3dpa2kvS20lQzIlQjIiIHRpdGxlPSJLbcKyIiBjbGFzcz0ibXctcmVk
aXJlY3QiPmttwrI8L2E+IHkgY29tcHJlbmTDrWEgdHJlcyBjb211bmFzOiBNw7Nu
YWNvICgxIDI1MCBoYWJpdGFudGVzKSwgUm9xdWVicnVuZSAoaG95IFJvcXVlYnJ1
bmUtQ2FwLU1hcmluKSAoODUwIGhhYml0YW50ZXMpIHkgTWVudMOzbiAoNDkwMCBo
YWJpdGFudGVzKS4gTGEgcGFydGUgbcOhcyB2YXN0YSB5IHJpY2EgZGVsIHByaW5j
aXBhZG8gZXJhIGxhIGxsYW51cmEgbWVudG9uZXNhLCBjb24gc3VzIGN1bHRpdm9z
IGRlIGPDrXRyaWNvcyB5IG9saXZvcy4gU2luIGVtYmFyZ28sIGR1cmFudGUgZWwg
bW92aW1pZW50byByZXZvbHVjaW9uYXJpbyBkZSA8YSBocmVmPSIvd2lraS8xODQ4
IiB0aXRsZT0iMTg0OCI+MTg0ODwvYT4sIE1lbnTDs24geSBSb3F1ZWJydW5lIHBy
b2NsYW1hcm9uIHN1IHJldm9jYWNpw7NuIGRlIGxhIGZhbWlsaWEgR3JpbWFsZGkg
eSBzZSBwcm9jbGFtYXJvbiDCqyYjMTYwO2NpdWFkZXMgbGlicmVzJiMxNjA7wrsg
YmFqbyBsYSBwcm90ZWNjacOzbiBkZWwgUmVpbm8gZGUgQ2VyZGXDsWEuIEVuIDxh
IGhyZWY9Ii93aWtpLzE4NjkiIHRpdGxlPSIxODY5Ij4xODY5PC9hPiwgZWwgUGll
bW9udGUgQ2VyZGXDsWEgY2VkacOzIE5pemEgYSBGcmFuY2lhIGx1ZWdvIGRlbCBh
cG95byBkZSBOYXBvbGXDs24gSUlJIGFsIGNvbWllbnpvIGRlIGxhIHVuaWZpY2Fj
acOzbiBpdGFsaWFuYS4gTml6YSwgTWVudMOzbiB5IFJvcXVlYnJ1bmUgdm90YXLD
s24gc3UgYW5leGnDs24gYSBGcmFuY2lhLCBxdWUgZnVlIHJhdGlmaWNhZGEgcG9y
IGVsIDxhIGhyZWY9Ii93aWtpL1RyYXRhZG9zX0ZyYW5jby1Nb25lZ2FzY29zIiB0
aXRsZT0iVHJhdGFkb3MgRnJhbmNvLU1vbmVnYXNjb3MiPlRyYXRhZG8gRnJhbmNv
LU1vbmVnYXNjbyBkZSAxODYxPC9hPi48L3A+CjxwPk3Ds25hY28gYWJhbmRvbsOz
IGZpbmFsbWVudGUgZWwgcHJvdGVjdG9yYWRvIHF1ZSB0dXZvIGRlc2RlIDE4MTUg
eSBzdSBpbmRlcGVuZGVuY2lhIGZ1ZSBmb3JtYWxtZW50ZSByZWNvbm9jaWRhLCBz
ZXBhcsOhbmRvc2UgZGUgdG9kYSBwcm90ZWNjacOzbiBkZSBGcmFuY2lhIG8gSXRh
bGlhLjwvcD4KPGgzPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9
Ii93L2luZGV4LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQm
YW1wO3NlY3Rpb249MTEiIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IEVkYWQgQ29u
dGVtcG9yw6FuZWEiPmVkaXRhcjwvYT5dPC9zcGFuPiA8c3BhbiBjbGFzcz0ibXct
aGVhZGxpbmUiIGlkPSJFZGFkX0NvbnRlbXBvci5DMy5BMW5lYSI+RWRhZCBDb250
ZW1wb3LDoW5lYTwvc3Bhbj48L2gzPgo8ZGl2IGNsYXNzPSJ0aHVtYiB0cmlnaHQi
Pgo8ZGl2IGNsYXNzPSJ0aHVtYmlubmVyIiBzdHlsZT0id2lkdGg6MjIycHg7Ij48
YSBocmVmPSIvd2lraS9BcmNoaXZvOldob2xlX01vbmFjby5qcGciIGNsYXNzPSJp
bWFnZSI+PGltZyBhbHQ9IiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5v
cmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvZi9mOC9XaG9sZV9Nb25hY28uanBn
LzIyMHB4LVdob2xlX01vbmFjby5qcGciIHdpZHRoPSIyMjAiIGhlaWdodD0iMTY1
IiBjbGFzcz0idGh1bWJpbWFnZSIgLz48L2E+CjxkaXYgY2xhc3M9InRodW1iY2Fw
dGlvbiI+CjxkaXYgY2xhc3M9Im1hZ25pZnkiPjxhIGhyZWY9Ii93aWtpL0FyY2hp
dm86V2hvbGVfTW9uYWNvLmpwZyIgY2xhc3M9ImludGVybmFsIiB0aXRsZT0iQXVt
ZW50YXIiPjxpbWcgc3JjPSJodHRwOi8vYml0cy53aWtpbWVkaWEub3JnL3NraW5z
LTEuNS9jb21tb24vaW1hZ2VzL21hZ25pZnktY2xpcC5wbmciIHdpZHRoPSIxNSIg
aGVpZ2h0PSIxMSIgYWx0PSIiIC8+PC9hPjwvZGl2PgpNw7NuYWNvIGVuIGxhIGFj
dHVhbGlkYWQuPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPHA+RXN0ZSDDumx0aW1vIHRy
YXRhZG8gcHJldmlhIGxhIGF5dWRhIGRlIEZyYW5jaWEgcGFyYSBsYSBjb25zdHJ1
Y2Npw7NuIGRlIGxhIENvcm5pc2EgTWVkaWEsIHkgZWwgcGFzbyBkZWwgZmVycm9j
YXJyaWwgZnJhbmPDqXMgc29icmUgZWwgdGVycml0b3JpbyBtb25lZ2FzY28gKGNv
biBkb3MgZXN0YWNpb25lcykuPC9wPgo8cD5GdWUgZW50b25jZXMgcXVlIGVsIHBy
w61uY2lwZSBDYXJsb3MgSUlJIHR1dm8gbGEgaWRlYSBkZSBjcmVhciBsb3MganVl
Z29zIGRlbCBDYXNpbm8gZGUgTW9udGVjYXJsbyAoZWwganVlZ28gZGUgYXphciBl
cmEgaWxlZ2FsIGVuIGxvcyBwYcOtc2VzIHZlY2lub3MpLCBxdWUgcGVybWl0w7Mg
YWwgcHJpbmNpcGFkbywgZW5yaXF1ZWNpw6luZG9zZSwgZGVzYXJyb2xsYXJzZSBy
w6FwaWRhbWVudGUuIEVuIDE4NjMgYWNvcmTDsyBlbCBwcml2aWxlZ2lvIGRlIGV4
cGxvdGFyIGVsIGNhc2lubywgbG9zIGhvdGVsZXMgeSBlbCB0ZWF0cm8gYSA8YSBo
cmVmPSIvdy9pbmRleC5waHA/dGl0bGU9RnJhbiVDMyVBN29pc19CbGFuYyZhbXA7
YWN0aW9uPWVkaXQmYW1wO3JlZGxpbms9MSIgY2xhc3M9Im5ldyIgdGl0bGU9IkZy
YW7Dp29pcyBCbGFuYyAoYcO6biBubyByZWRhY3RhZG8pIj5GcmFuw6dvaXMgQmxh
bmM8L2E+LCBmdW5kYWRvciBkZSBsYSBTb2NpZWRhZCBkZSBCYcOxb3MgeSBNYXIg
ZGVsIEPDrXJjdWxvIGRlIEV4dHJhbmplcm9zIGEgZmluIGRlIGFwb3J0YXIgaW5n
cmVzb3MgYSBsYSBDb3J0ZS48L3A+CjxwPkVuIDE4NjYsIENhcmxvcyBJSSwgcXVp
ZW4gaGFiw61hIGltcHVsc2FkbyBlc3RvcyB0cmFiYWpvcywgcmVub21icsOzIGFs
IGJhcnJpbyBkZSBsb3MgU3DDqWx1Z3VlcyBjb21vIDxhIGhyZWY9Ii93aWtpL01v
bnRlY2FybG9fKE0lQzMlQjNuYWNvKSIgdGl0bGU9Ik1vbnRlY2FybG8gKE3Ds25h
Y28pIiBjbGFzcz0ibXctcmVkaXJlY3QiPk1vbnRlY2FybG88L2E+IGVuIHN1IHBy
b3BpbyBob25vci4gRWwgYWN0aXZhbWllbnRvIGRlbCBmZXJyb2NhcnJpbCA8YSBo
cmVmPSIvd2lraS9OaXphIiB0aXRsZT0iTml6YSI+Tml6YTwvYT4tPGEgaHJlZj0i
L3dpa2kvVmVudGltaWdsaWEiIHRpdGxlPSJWZW50aW1pZ2xpYSI+VmVudGltaWds
aWE8L2E+IGVuIDE4NjggYWZpYW56w7MgbGEgcHJvc3BldGlkYWQuIEZ1bmTDsyB1
bmEgT2ZpY2luYSBkZSBDb3JyZW9zLCBxdWUgY29tZW56w7MgYSBlZGl0YXIgc3Vz
IHByb3BpYXMgZXN0YW1waWxsYXMgZW4gMTg2NSwgb2J0dXZvIGRlIGxhIFNhbnRh
IFNlZGUgbGEgY3JlYWNpw7NuIGRlIHVuIG9iaXNwYWRvLCBvYnJhIGRlIGxvcyBj
b25zdWxhZG9zIGVuIGVsIGV4dHJhbmplcm8uPC9wPgo8cD5GaW5hbG1lbnRlLCBl
biAxODY5LCBDYXJsb3MgSUlJIGVsaW1pbsOzIGxvcyBpbXB1ZXN0b3MgZGUgYmll
bmVzIHBlcnNvbmFsZXMgeSBtb2JpbGlhcmlvcywgaGVjaG8gcXVlIGNvbmR1am8g
YSB1bmEgaW50ZW5zYSBhY3RpdmlkYWQgZGUgY29uc3RydWNjacOzbi4gU2UgY29u
c3RydXllcm9uIGR1cmFudGUgZXN0YSDDqXBvY2EgdW5hIMOzcGVyYSBlbiAxODY5
LCBudW1lcm9zb3MgbXVzZW9zLCB5IGxhIEZ1bmRhY2nDs24gZGVsIEluc3RpdHV0
byBPY2Vhbm9ncsOhZmljbyBlbiAxOTA2LjwvcD4KPHA+RWwgcHJpbWVyIHJhbGx5
IGRlIE1vbnRlY2FybG8gdHV2byBsdWdhciBlbiAxOTExLCBlbCBwcmltZXIgR3Jh
bmQgUHJpeCBhdXRvbW92aWzDrXN0aWNvIGVuIDE5MjkuIEVsIHByw61uY2lwZSBk
ZSBNw7NuYWNvIGRpc3BvbsOtYSBkZSBwbGVub3MgcG9kZXJlcywgw6lzdGEgZXJh
IHB1ZXMgdW5hIG1vbmFycXXDrWEgYWJzb2x1dGEsIGhhc3RhIGxhIHJlZm9ybWEg
ZGUgbGEgY29uc3RpdHVjacOzbiBkZSAxOTExLCBxdWUgaGl6byBkZWwgcGHDrXMg
dW5hIG1vbmFycXXDrWEgY29uc3RpdHVjaW9uYWwuIEVuIGp1bGlvIGRlIDE5MTgs
IHVuIHRyYXRhZG8gZnVlIGZpcm1hZG8gYWNvcmRhbmRvIHVuYSBwcm90ZWNjacOz
biBsaW1pdGFkYSBkZWwgcHJpbmNpcGFkbyBwb3IgRnJhbmNpYS4gRWwgdHJhdGFk
byBmb3Jtw7MgcGFydGUgZGVsIFRyYXRhZG8gZGUgVmVyc2FsbGVzIHkgZXN0YWJs
ZWNpw7MgcXVlIGxhIHBvbMOtdGljYSBkZSBNw7NuYWNvIG5vIHBvZHLDrWEgb3Bv
bmVyc2UgYSBsb3MgaW50ZXJlc2VzIHBvbMOtdGljb3MsIG1pbGl0YXJlcyBuaSBl
Y29uw7NtaWNvcyBkZSBGcmFuY2lhLiBFbiAxOTIyLCBlbCBwcmluY2lwYWRvIHBl
cmRpw7MgdGFtYmnDqW4gc3UgbW9ub3BvbGlvIGRlIGxvcyBqdWVnb3MgZGUgbGEg
PGEgaHJlZj0iL3dpa2kvQ29zdGFfQXp1bF8oRnJhbmNpYSkiIHRpdGxlPSJDb3N0
YSBBenVsIChGcmFuY2lhKSI+Q29zdGEgQXp1bDwvYT4uPC9wPgo8cD5EdXJhbnRl
IGxhIElJIEd1ZXJyYSBNdW5kaWFsIHNlIHByb2R1Y2UgbGEgbGxlZ2FkYSBkZSBs
YXMgdHJvcGFzIGl0YWxpYW5hcyBlbiBqdW5pbyBkZSAxOTQwIGlucXVpZXTDsyBh
bCBwcsOtbmNpcGUgTHVpcyBJSSBkZSBNw7NuYWNvIGEgdMOtdHVsbyBwZXJzb25h
bCwgcHVlc3RvIHF1ZSBjcmXDrWEgcXVlIHNlIHByb2R1Y2lyw61hIHVuYSBhbmV4
acOzbiB5IHN1IHBvc3RlcmlvciBkZXN0aXR1Y2nDs24uIFBvciBlbGxvLCBzZSBh
Y2VyY8OzIGFsIEdvYmllcm5vIGRlIFZpY2h5LCB0YW50byBhIFBpZXJyZSBMYXZh
bCBjb21vIGFsIE1hcmlzY2FsIFDDqXRhaW4sIGEgbG9zIHF1ZSBwaWRpw7MsIGNv
biDDqXhpdG8sIGF5dWRhLiBIaXRsZXIgb3JkZW7DsyBsYSBpbnZhc2nDs24gZGUg
TcOzbmFjbyBwb3IgZWwgZWrDqXJjaXRvIGFsZW3DoW4gZW4gc2VwdGllbWJyZSBk
ZSAxOTQzIGFsIGlndWFsIHF1ZSBkZSBsYSBGcmFuY2lhIGRlIFZpY2h5IHkgZGUg
SXRhbGlhLiBFbCBnb2JpZXJubyBmdWUgY29sYWJvcmFjaW9uaXN0YSBjb24gbG9z
IG51ZXZvcyBvY3VwYW50ZXMuIE3Ds25hY28gZnVlIGxpYmVyYWRvIHBvciB0cm9w
YXMgZGUgRXN0YWRvcyBVbmlkb3MgYWwgZmluYWwgZGUgbGEgZ3VlcnJhLjwvcD4K
PGgyPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2luZGV4
LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3NlY3Rp
b249MTIiIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IFBvbMOtdGljYSI+ZWRpdGFy
PC9hPl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IlBvbC5D
My5BRHRpY2EiPlBvbMOtdGljYTwvc3Bhbj48L2gyPgo8ZGl2IGNsYXNzPSJub3By
aW50IEFQIiBzdHlsZT0ibWFyZ2luOjAgMCAwLjJleCAxZW0iPjxpPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6ODclIj5BcnTDrWN1bG8gcHJpbmNpcGFsOjwvc3Bhbj4g
PGEgaHJlZj0iL3dpa2kvUG9sJUMzJUFEdGljYV9kZV9NJUMzJUIzbmFjbyIgdGl0
bGU9IlBvbMOtdGljYSBkZSBNw7NuYWNvIj5Qb2zDrXRpY2EgZGUgTcOzbmFjbzwv
YT48L2k+PC9kaXY+CjxoMz48c3BhbiBjbGFzcz0iZWRpdHNlY3Rpb24iPls8YSBo
cmVmPSIvdy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1wO2FjdGlvbj1l
ZGl0JmFtcDtzZWN0aW9uPTEzIiB0aXRsZT0iRWRpdGFyIHNlY2Npw7NuOiBQb2Rl
ciBlamVjdXRpdm8iPmVkaXRhcjwvYT5dPC9zcGFuPiA8c3BhbiBjbGFzcz0ibXct
aGVhZGxpbmUiIGlkPSJQb2Rlcl9lamVjdXRpdm8iPlBvZGVyIGVqZWN1dGl2bzwv
c3Bhbj48L2gzPgo8ZGl2IGNsYXNzPSJub3ByaW50IEFQIiBzdHlsZT0ibWFyZ2lu
OjAgMCAwLjJleCAxZW0iPjxpPjxzcGFuIHN0eWxlPSJmb250LXNpemU6ODclIj5B
cnTDrWN1bG8gcHJpbmNpcGFsOjwvc3Bhbj4gPGEgaHJlZj0iL3dpa2kvTWluaXN0
cm9fZGVfRXN0YWRvX2RlX00lQzMlQjNuYWNvIiB0aXRsZT0iTWluaXN0cm8gZGUg
RXN0YWRvIGRlIE3Ds25hY28iPk1pbmlzdHJvIGRlIEVzdGFkbyBkZSBNw7NuYWNv
PC9hPjwvaT48L2Rpdj4KPHA+TcOzbmFjbyBoYSBzaWRvIGdvYmVybmFkbyBwb3Ig
dW5hIDxhIGhyZWY9Ii93aWtpL01vbmFycXUlQzMlQURhX2NvbnN0aXR1Y2lvbmFs
IiB0aXRsZT0iTW9uYXJxdcOtYSBjb25zdGl0dWNpb25hbCI+bW9uYXJxdcOtYSBj
b25zdGl0dWNpb25hbDwvYT4gZGVzZGUgPGEgaHJlZj0iL3dpa2kvMTkxMSIgdGl0
bGU9IjE5MTEiPjE5MTE8L2E+LCBjb24gZWwgPGEgaHJlZj0iL3dpa2kvUHIlQzMl
QURuY2lwZSIgdGl0bGU9IlByw61uY2lwZSI+UHLDrW5jaXBlPC9hPiBjb21vIDxh
IGhyZWY9Ii93aWtpL0plZmVfZGVfRXN0YWRvIiB0aXRsZT0iSmVmZSBkZSBFc3Rh
ZG8iPkplZmUgZGUgRXN0YWRvPC9hPi4gTGEgcmFtYSBlamVjdXRpdmEgY29uc2lz
dGUgZW4gdW4gTWluaXN0cm8gZGUgRXN0YWRvIChKZWZlIGRlIEdvYmllcm5vKSwg
cXVpZW4gcHJlc2lkZSB1biBnYWJpbmV0ZSAoQ29uc2VqbyBkZSBHb2JpZXJubykg
ZGUgNiBtaWVtYnJvcy4gRWwgTWluaXN0cm8gZGVsIEVzdGFkbyBlcyB1biBjaXVk
YWRhbm8gZnJhbmPDqXMgZGVzaWduYWRvIHBvciBlbCBwcsOtbmNpcGUsIHF1ZSBs
byBlbGlnZSBlbnRyZSBjYW5kaWRhdG9zIHByb3B1ZXN0b3MgcG9yIGVsIGdvYmll
cm5vIGRlIDxhIGhyZWY9Ii93aWtpL0ZyYW5jaWEiIHRpdGxlPSJGcmFuY2lhIj5G
cmFuY2lhPC9hPiwgcXVlIHNlIGVuY2FyZ2EgZGUgbG9zIGFzdW50b3MgZGUgZGVm
ZW5zYSB5IHNlZ3VyaWRhZCBkZWwgcHJpbmNpcGFkby48L3A+CjxoMz48c3BhbiBj
bGFzcz0iZWRpdHNlY3Rpb24iPls8YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9
TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0JmFtcDtzZWN0aW9uPTE0IiB0aXRs
ZT0iRWRpdGFyIHNlY2Npw7NuOiBQb2RlciBsZWdpc2xhdGl2byI+ZWRpdGFyPC9h
Pl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IlBvZGVyX2xl
Z2lzbGF0aXZvIj5Qb2RlciBsZWdpc2xhdGl2bzwvc3Bhbj48L2gzPgo8ZGl2IGNs
YXNzPSJub3ByaW50IEFQIiBzdHlsZT0ibWFyZ2luOjAgMCAwLjJleCAxZW0iPjxp
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6ODclIj5BcnTDrWN1bG8gcHJpbmNpcGFs
Ojwvc3Bhbj4gPGEgaHJlZj0iL3dpa2kvQ29uc2Vqb19OYWNpb25hbF9kZV9NJUMz
JUIzbmFjbyIgdGl0bGU9IkNvbnNlam8gTmFjaW9uYWwgZGUgTcOzbmFjbyI+Q29u
c2VqbyBOYWNpb25hbCBkZSBNw7NuYWNvPC9hPjwvaT48L2Rpdj4KPHA+QmFqbyBs
YSA8YSBocmVmPSIvd2lraS9Db25zdGl0dWNpJUMzJUIzbiIgdGl0bGU9IkNvbnN0
aXR1Y2nDs24iPkNvbnN0aXR1Y2nDs248L2E+IGRlIDxhIGhyZWY9Ii93aWtpLzE5
NjIiIHRpdGxlPSIxOTYyIj4xOTYyPC9hPiwgZWwgUHLDrW5jaXBlIGNvbXBhcnRl
IHN1IHBvZGVyIGNvbiB1biBQYXJsYW1lbnRvIHVuaWNhbWVyYWwsIGVsIENvbnNl
am8gTmFjaW9uYWwgZGUgTcOzbmFjby4gTG9zIDI0IG1pZW1icm9zIGRlbCBjdWVy
cG8gbGVnaXNsYXRpdm8gc29uIGVsZWdpZG9zIHBvciBtZWRpbyBkZSB2b3RhY2nD
s24gZGlyZWN0YSB5IDxhIGhyZWY9Ii93aWtpL0RlbW9jcmFjaWEiIHRpdGxlPSJE
ZW1vY3JhY2lhIj5kZW1vY3LDoXRpY2E8L2E+LCB5IHRpZW5lbiB1biBwZXLDrW9k
byBkZSA1IGHDsW9zLiBFbGxvcywgY3VtcGxlbiBsYSBmdW5jacOzbiBkZSBoYWNl
ciBsYXMgbGV5ZXMgeSByZWdsYW1lbnRhciBsb3MgZGVjcmV0b3MgcmVhbGVzLjwv
cD4KPGgzPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2lu
ZGV4LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3Nl
Y3Rpb249MTUiIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IFBvZGVyIEp1ZGljaWFs
Ij5lZGl0YXI8L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBp
ZD0iUG9kZXJfSnVkaWNpYWwiPlBvZGVyIEp1ZGljaWFsPC9zcGFuPjwvaDM+Cjxk
aXYgY2xhc3M9Im5vcHJpbnQgQVAiIHN0eWxlPSJtYXJnaW46MCAwIDAuMmV4IDFl
bSI+PGk+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4NyUiPkFydMOtY3VsbyBwcmlu
Y2lwYWw6PC9zcGFuPiA8YSBocmVmPSIvd2lraS9UcmlidW5hbF9TdXByZW1vX2Rl
X00lQzMlQjNuYWNvIiB0aXRsZT0iVHJpYnVuYWwgU3VwcmVtbyBkZSBNw7NuYWNv
Ij5UcmlidW5hbCBTdXByZW1vIGRlIE3Ds25hY288L2E+PC9pPjwvZGl2Pgo8cD5M
YSBDb3J0ZSBTdXByZW1hIGRlIE3Ds25hY28gZXMgZWwgbcOhcyBhbHRvIHRyaWJ1
bmFsIGRlIGp1c3RpY2lhIGVuIGxhIGNpdWRhZCAtIGVzdGFkbyBkZSBNw7NuYWNv
IGFzw60gY29tbyBwYXJhIGFzdW50b3MganVkaWNpYWxlcyB5IGFwZWxhY2lvbmVz
LCB0YWwgY29tbyBsbyBlc3RhYmxlY2UgbGEgPGEgaHJlZj0iL3dpa2kvQ29uc3Rp
dHVjaSVDMyVCM25fZGVfTSVDMyVCM25hY28iIHRpdGxlPSJDb25zdGl0dWNpw7Nu
IGRlIE3Ds25hY28iPkNvbnN0aXR1Y2nDs24gZGUgTcOzbmFjbzwvYT4uIFNlIGNv
bXBvbmUgZGUgY2luY28gbWllbWJyb3MgcHJpbmNpcGFsZXMgeSBkb3MganVlY2Vz
IGFkanVudG9zLCBub21icmFkb3MgcG9yIGVsIFByw61uY2lwZSBkZSBNw7NuYWNv
IHBvciByZWNvbWVuZGFjacOzbiBkZWwgQ29uc2VqbyBOYWNpb25hbCBkZSBNw7Nu
YWNvIHkgb3Ryb3Mgw7NyZ2Fub3MgZ3ViZXJuYW1lbnRhbGVzLiBFbCBUcmlidW5h
bCBTdXByZW1vIGZ1ZSBjcmVhZG8gZW4gPGEgaHJlZj0iL3dpa2kvMTk2MiIgdGl0
bGU9IjE5NjIiPjE5NjI8L2E+IHRyYXMgbGEgYXByb2JhY2nDs24gZGUgbnVldmEg
Q29uc3RpdHVjacOzbiBjb24gbGEgaW50ZW5jacOzbiBkZSBnYXJhbnRpemFyIGxh
cyBsaWJlcnRhZGVzIGZ1bmRhbWVudGFsZXMuPC9wPgo8aDM+PHNwYW4gY2xhc3M9
ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPU0lQzMl
QjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2VjdGlvbj0xNiIgdGl0bGU9IkVk
aXRhciBzZWNjacOzbjogR29iaWVybm8gbG9jYWwiPmVkaXRhcjwvYT5dPC9zcGFu
PiA8c3BhbiBjbGFzcz0ibXctaGVhZGxpbmUiIGlkPSJHb2JpZXJub19sb2NhbCI+
R29iaWVybm8gbG9jYWw8L3NwYW4+PC9oMz4KPHA+TG9zIHByaW5jaXBhbGVzIGFz
dW50b3MgbG9jYWxlcyBzb24gZGlyaWdpZG9zIHBvciBlbCBDb25jaWxpbyBDb211
bmFsLCBlbCBjdWFsIHNlIGNvbXBvbmUgZGUgMTUgbWllbWJyb3MgZWxlZ2lkb3Mg
eSBwcmVzaWRpZG9zIHBvciB1biA8YSBocmVmPSIvd2lraS9BbGNhbGRlIiB0aXRs
ZT0iQWxjYWxkZSI+YWxjYWxkZTwvYT4uIEVsIENvbmNpbGlvIENvbXVuYWwgaGFj
ZSBsYXMgdmVjZXMgZGUgPGEgaHJlZj0iL3dpa2kvQXl1bnRhbWllbnRvIiB0aXRs
ZT0iQXl1bnRhbWllbnRvIj5heXVudGFtaWVudG88L2E+IHkgY3VtcGxlIGxhIGZ1
bmNpw7NuIGRlIGhhY2VyIGxhcyBnZXN0aW9uZXMgbG9jYWxlcyBwYXJhIHN1IGRl
c2Fycm9sbG8uPC9wPgo8ZGl2IGNsYXNzPSJjZW50ZXIiPgo8ZGl2IGNsYXNzPSJ0
aHVtYiB0bm9uZSI+CjxkaXYgY2xhc3M9InRodW1iaW5uZXIiIHN0eWxlPSJ3aWR0
aDo0MDJweDsiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86UGFub3JhbWFfc2NobG9z
c19tb25hY28uanBnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSIiIHNyYz0iaHR0
cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1i
L2UvZWQvUGFub3JhbWFfc2NobG9zc19tb25hY28uanBnLzQwMHB4LVBhbm9yYW1h
X3NjaGxvc3NfbW9uYWNvLmpwZyIgd2lkdGg9IjQwMCIgaGVpZ2h0PSIxMTciIGNs
YXNzPSJ0aHVtYmltYWdlIiAvPjwvYT4KPGRpdiBjbGFzcz0idGh1bWJjYXB0aW9u
Ij4KPGRpdiBjbGFzcz0ibWFnbmlmeSI+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpQ
YW5vcmFtYV9zY2hsb3NzX21vbmFjby5qcGciIGNsYXNzPSJpbnRlcm5hbCIgdGl0
bGU9IkF1bWVudGFyIj48aW1nIHNyYz0iaHR0cDovL2JpdHMud2lraW1lZGlhLm9y
Zy9za2lucy0xLjUvY29tbW9uL2ltYWdlcy9tYWduaWZ5LWNsaXAucG5nIiB3aWR0
aD0iMTUiIGhlaWdodD0iMTEiIGFsdD0iIiAvPjwvYT48L2Rpdj4KPGEgaHJlZj0i
L3dpa2kvUGFsYWNpb19kZWxfUHIlQzMlQURuY2lwZV9kZV9NJUMzJUIzbmFjbyIg
dGl0bGU9IlBhbGFjaW8gZGVsIFByw61uY2lwZSBkZSBNw7NuYWNvIj5QYWxhY2lv
IGRlbCBQcsOtbmNpcGUgZGUgTcOzbmFjbzwvYT4uPC9kaXY+CjwvZGl2Pgo8L2Rp
dj4KPC9kaXY+CjxoMz48c3BhbiBjbGFzcz0iZWRpdHNlY3Rpb24iPls8YSBocmVm
PSIvdy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0
JmFtcDtzZWN0aW9uPTE3IiB0aXRsZT0iRWRpdGFyIHNlY2Npw7NuOiBNb25hcnF1
w61hIj5lZGl0YXI8L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5l
IiBpZD0iTW9uYXJxdS5DMy5BRGEiPk1vbmFycXXDrWE8L3NwYW4+PC9oMz4KPGRp
diBjbGFzcz0idGh1bWIgdHJpZ2h0Ij4KPGRpdiBjbGFzcz0idGh1bWJpbm5lciIg
c3R5bGU9IndpZHRoOjE1MnB4OyI+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpBbGJl
cnRfSUlfTW9uYWNvXygyMDA4KS5qcGciIGNsYXNzPSJpbWFnZSI+PGltZyBhbHQ9
IiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2Nv
bW1vbnMvdGh1bWIvYi9iYS9BbGJlcnRfSUlfTW9uYWNvXyUyODIwMDglMjkuanBn
LzE1MHB4LUFsYmVydF9JSV9Nb25hY29fJTI4MjAwOCUyOS5qcGciIHdpZHRoPSIx
NTAiIGhlaWdodD0iMjIxIiBjbGFzcz0idGh1bWJpbWFnZSIgLz48L2E+CjxkaXYg
Y2xhc3M9InRodW1iY2FwdGlvbiI+CjxkaXYgY2xhc3M9Im1hZ25pZnkiPjxhIGhy
ZWY9Ii93aWtpL0FyY2hpdm86QWxiZXJ0X0lJX01vbmFjb18oMjAwOCkuanBnIiBj
bGFzcz0iaW50ZXJuYWwiIHRpdGxlPSJBdW1lbnRhciI+PGltZyBzcmM9Imh0dHA6
Ly9iaXRzLndpa2ltZWRpYS5vcmcvc2tpbnMtMS41L2NvbW1vbi9pbWFnZXMvbWFn
bmlmeS1jbGlwLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjExIiBhbHQ9IiIgLz48
L2E+PC9kaXY+CjxhIGhyZWY9Ii93aWtpL0FsYmVydG9fSUlfZGVfTSVDMyVCM25h
Y28iIHRpdGxlPSJBbGJlcnRvIElJIGRlIE3Ds25hY28iPkFsYmVydG8gSUkgZGUg
TcOzbmFjbzwvYT4uPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ibm9w
cmludCBBUCIgc3R5bGU9Im1hcmdpbjowIDAgMC4yZXggMWVtIj48aT48c3BhbiBz
dHlsZT0iZm9udC1zaXplOjg3JSI+QXJ0w61jdWxvIHByaW5jaXBhbDo8L3NwYW4+
IDxhIGhyZWY9Ii93aWtpL0RpbmFzdCVDMyVBRGFfR3JpbWFsZGkiIHRpdGxlPSJE
aW5hc3TDrWEgR3JpbWFsZGkiPkRpbmFzdMOtYSBHcmltYWxkaTwvYT48L2k+PC9k
aXY+CjxkaXYgY2xhc3M9Im5vcHJpbnQgQVAiIHN0eWxlPSJtYXJnaW46MCAwIDAu
MmV4IDFlbSI+PGk+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4NyUiPkFydMOtY3Vs
byBwcmluY2lwYWw6PC9zcGFuPiA8YSBocmVmPSIvd2lraS9Db25zZWpvX2RlX2xh
X0Nvcm9uYV9kZV9NJUMzJUIzbmFjbyIgdGl0bGU9IkNvbnNlam8gZGUgbGEgQ29y
b25hIGRlIE3Ds25hY28iPkNvbnNlam8gZGUgbGEgQ29yb25hIGRlIE3Ds25hY288
L2E+PC9pPjwvZGl2Pgo8cD5MYSBkaW5hc3TDrWEgR3JpbWFsZGkgZXMgdW5hIGNh
c2Egbm9ibGUgb3JpZ2luYXJpYSBkZSBJdGFsaWEsIHkgZnVlIGZ1bmRhZGEgcG9y
IEZyYW5jaXNjbyBHcmltYWxkaSwgcXVlIHRvbcOzIGVuIDxhIGhyZWY9Ii93aWtp
LzEwOTkiIHRpdGxlPSIxMDk5Ij4xMDk5PC9hPiBlbCBzZcOxb3LDrW8gZGUgTcOz
bmFjbyBqdW50byBhIHN1cyBzb2xkYWRvcyB2ZXN0aWRvcyBkZSBmcmFuY2lzY2Fu
b3MuIEVuIGFxdWVsIHByaW5jaXBhZG8gaGFuIHJlaW5hZG8gc3VzIHN1Y2Vzb3Jl
cyBoYXN0YSBsYSBhY3R1YWxpZGFkLCBzaSBleGNlcHR1YW1vcyB2YXJpYXMgZGlz
Y29udGludWlkYWRlcy4gTGEgw7psdGltYSBzZSBwcm9kdWpvIGNvbiBlbCBtYXRy
aW1vbmlvIGRlIGxhIHByaW5jZXNhIENhcmxvdGEgZGUgTcOzbmFjbywgbWFkcmUg
ZGUgUmFpbmllcm8gSUlJLCBjb24gUGllcnJlIGRlIFBvbGlnbmFjLjwvcD4KPHA+
U3VzIGludGVncmFudGVzIG3DoXMgZGVzdGFjYWRvcyBlbiBsYSBhY3R1YWxpZGFk
IHNvbjo8L3A+Cjx1bD4KPGxpPjxhIGhyZWY9Ii93aWtpL0FsYmVydG9fSUlfZGVf
TSVDMyVCM25hY28iIHRpdGxlPSJBbGJlcnRvIElJIGRlIE3Ds25hY28iPkFsYmVy
dG8gSUk8L2E+LCBQcsOtbmNpcGUgU29iZXJhbm8gZGUgTcOzbmFjbywgaGlqbyB5
IHN1Y2Vzb3IgZGVsIHByw61uY2lwZSA8YSBocmVmPSIvd2lraS9SYWluaWVyb19J
SUkiIHRpdGxlPSJSYWluaWVybyBJSUkiIGNsYXNzPSJtdy1yZWRpcmVjdCI+UmFp
bmllcm8gSUlJPC9hPiB5IGRlIDxhIGhyZWY9Ii93aWtpL0dyYWNlX0tlbGx5IiB0
aXRsZT0iR3JhY2UgS2VsbHkiPkdyYWNpYSBQYXRyaWNpYTwvYT4gZGUgTcOzbmFj
by48L2xpPgo8bGk+PGEgaHJlZj0iL3dpa2kvQ2hhcmxlbmVfV2l0dHN0b2NrIiB0
aXRsZT0iQ2hhcmxlbmUgV2l0dHN0b2NrIj5DaGFybGVuZSBXaXR0c3RvY2s8L2E+
LCBwcm9tZXRpZGEgZGVsIHByw61uY2lwZSBBbGJlcnRvLjwvbGk+CjxsaT48YSBo
cmVmPSIvd2lraS9DYXJvbGluYV9kZV9NJUMzJUIzbmFjbyIgdGl0bGU9IkNhcm9s
aW5hIGRlIE3Ds25hY28iPkNhcm9saW5hIGRlIE3Ds25hY288L2E+LCBoZXJtYW5h
IG1heW9yIGRlIEFsYmVydG8geSBFc3RlZmFuw61hLjwvbGk+CjxsaT48YSBocmVm
PSIvd2lraS9Fc3RlZmFuJUMzJUFEYV9kZV9NJUMzJUIzbmFjbyIgdGl0bGU9IkVz
dGVmYW7DrWEgZGUgTcOzbmFjbyI+RXN0ZWZhbsOtYSBkZSBNw7NuYWNvPC9hPiwg
aGVybWFuYSBtZW5vciBkZSBBbGJlcnRvIHkgQ2Fyb2xpbmEuPC9saT4KPGxpPjxh
IGhyZWY9Ii93aWtpL0FuZHJlYV9DYXNpcmFnaGkiIHRpdGxlPSJBbmRyZWEgQ2Fz
aXJhZ2hpIj5BbmRyZWEgQ2FzaXJhZ2hpPC9hPiwgPGEgaHJlZj0iL3dpa2kvQ2Fy
bG90YV9DYXNpcmFnaGkiIHRpdGxlPSJDYXJsb3RhIENhc2lyYWdoaSI+Q2FybG90
YSBDYXNpcmFnaGk8L2E+IHkgUGllcnJlIENhc2lyYWdoaSwgaGlqb3MgZGUgQ2Fy
b2xpbmEgZGUgTcOzbmFjbyB5IGRlIDxhIGhyZWY9Ii93aWtpL1N0JUMzJUE5ZmFu
b19DYXNpcmFnaGkiIHRpdGxlPSJTdMOpZmFubyBDYXNpcmFnaGkiPlN0w6lmYW5v
IENhc2lyYWdoaTwvYT4uPC9saT4KPC91bD4KPHA+RXMgb2JqZXRvIGRlIHBvbMOp
bWljYSBlbCBvcmlnZW4gZGUgQWxleGFuZHJlIENvc3RlIHkgZGUgSmF6bcOtbiBH
cmFjZSBSb3RvbG8sIGhpam9zIGlsZWfDrXRpbW9zIGRlIEFsYmVydG8gSUkgZGUg
TcOzbmFjbyBjb24gc2VuZGFzIGFtYW50ZXMsIHJlY29ub2NpZG9zIHJlY2llbnRl
bWVudGUuPC9wPgo8cD5FbiBjYXNvIGRlIHF1ZSBBbGJlcnRvIGRlIE3Ds25hY28g
bXVlcmEgc2luIGRlc2NlbmRlbmNpYSBsZWfDrXRpbWEsIGxvcyBoaWpvcyBkZSBD
YXJvbGluYSBkZSBNw7NuYWNvIHBhc2Fyw61hbiBhIG9jdXBhciBsb3MgcHJpbWVy
b3MgcHVlc3RvcyBkZSBsYSBsw61uZWEgc3VjZXNvcmlhLjwvcD4KPGgzPjxzcGFu
IGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2luZGV4LnBocD90aXRs
ZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3NlY3Rpb249MTgiIHRp
dGxlPSJFZGl0YXIgc2VjY2nDs246IFJlbGFjaW9uZXMgZXh0ZXJpb3JlcyI+ZWRp
dGFyPC9hPl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IlJl
bGFjaW9uZXNfZXh0ZXJpb3JlcyI+UmVsYWNpb25lcyBleHRlcmlvcmVzPC9zcGFu
PjwvaDM+CjxkaXYgY2xhc3M9Im5vcHJpbnQgQVAiIHN0eWxlPSJtYXJnaW46MCAw
IDAuMmV4IDFlbSI+PGk+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4NyUiPkFydMOt
Y3VsbyBwcmluY2lwYWw6PC9zcGFuPiA8YSBocmVmPSIvd2lraS9SZWxhY2lvbmVz
X2V4dGVyaW9yZXNfZGVfTSVDMyVCM25hY28iIHRpdGxlPSJSZWxhY2lvbmVzIGV4
dGVyaW9yZXMgZGUgTcOzbmFjbyI+UmVsYWNpb25lcyBleHRlcmlvcmVzIGRlIE3D
s25hY288L2E+PC9pPjwvZGl2Pgo8ZGl2IGNsYXNzPSJ0aHVtYiB0cmlnaHQiPgo8
ZGl2IGNsYXNzPSJ0aHVtYmlubmVyIiBzdHlsZT0id2lkdGg6MTUycHg7Ij48YSBo
cmVmPSIvd2lraS9BcmNoaXZvOk1vbmFjb19FbWJhc3N5X2luX1dhc2hpbmd0b24u
anBnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSIiIHNyYz0iaHR0cDovL3VwbG9h
ZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iL2EvYWIvTW9u
YWNvX0VtYmFzc3lfaW5fV2FzaGluZ3Rvbi5qcGcvMTUwcHgtTW9uYWNvX0VtYmFz
c3lfaW5fV2FzaGluZ3Rvbi5qcGciIHdpZHRoPSIxNTAiIGhlaWdodD0iMTM3IiBj
bGFzcz0idGh1bWJpbWFnZSIgLz48L2E+CjxkaXYgY2xhc3M9InRodW1iY2FwdGlv
biI+CjxkaXYgY2xhc3M9Im1hZ25pZnkiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86
TW9uYWNvX0VtYmFzc3lfaW5fV2FzaGluZ3Rvbi5qcGciIGNsYXNzPSJpbnRlcm5h
bCIgdGl0bGU9IkF1bWVudGFyIj48aW1nIHNyYz0iaHR0cDovL2JpdHMud2lraW1l
ZGlhLm9yZy9za2lucy0xLjUvY29tbW9uL2ltYWdlcy9tYWduaWZ5LWNsaXAucG5n
IiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIGFsdD0iIiAvPjwvYT48L2Rpdj4KPGEg
aHJlZj0iL3dpa2kvRW1iYWphZGEiIHRpdGxlPSJFbWJhamFkYSIgY2xhc3M9Im13
LXJlZGlyZWN0Ij5FbWJhamFkYTwvYT4gZGUgTcOzbmFjbyBlbiA8YSBocmVmPSIv
d2lraS9XYXNoaW5ndG9uIiB0aXRsZT0iV2FzaGluZ3RvbiI+V2FzaGluZ3Rvbjwv
YT4sIDxhIGhyZWY9Ii93aWtpL0VzdGFkb3NfVW5pZG9zIiB0aXRsZT0iRXN0YWRv
cyBVbmlkb3MiPkVzdGFkb3MgVW5pZG9zPC9hPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+
CjxwPk3Ds25hY28gcGFydGljaXBhIGFjdGl2YW1lbnRlIGVuIGxhcyA8YSBocmVm
PSIvd2lraS9OYWNpb25lc19VbmlkYXMiIHRpdGxlPSJOYWNpb25lcyBVbmlkYXMi
IGNsYXNzPSJtdy1yZWRpcmVjdCI+TmFjaW9uZXMgVW5pZGFzPC9hPiwgYSBsYXMg
cXVlIHNlIGFkaGlyacOzIGVuIDxhIGhyZWY9Ii93aWtpLzE5OTMiIHRpdGxlPSIx
OTkzIj4xOTkzPC9hPiwgcG9zZWUgZGl2ZXJzYXMgbWlzaW9uZXMgZGlwbG9tw6F0
aWNhcyB5IGNvbnN1bGFkb3MgaG9ub3JhcmlvcyBlbiB2YXJpb3MgcGHDrXNlcy4g
TcOzbmFjbyBzZSB1bmnDsyBhbCBDb25zZWpvIGRlIEV1cm9wYSBlbCA8YSBocmVm
PSIvd2lraS80X2RlX29jdHVicmUiIHRpdGxlPSI0IGRlIG9jdHVicmUiPjQgZGUg
b2N0dWJyZTwvYT4gZGUgPGEgaHJlZj0iL3dpa2kvMjAwNCIgdGl0bGU9IjIwMDQi
PjIwMDQ8L2E+LCB0YW1iacOpbiBlcyBtaWVtYnJvIGRlIG11Y2hhcyBvcmdhbml6
YWNpb25lcyBpbnRlcm5hY2lvbmFsZXMgaW50ZXJndWJlcm5hbWVudGFsZXMsIGlu
Y2x1aWRhIGxhIDxhIGhyZWY9Ii93aWtpL0ludGVycG9sIiB0aXRsZT0iSW50ZXJw
b2wiPkludGVycG9sPC9hPiwgbGEgPGEgaHJlZj0iL3dpa2kvVU5FU0NPIiB0aXRs
ZT0iVU5FU0NPIiBjbGFzcz0ibXctcmVkaXJlY3QiPlVORVNDTzwvYT4geSBsYSA8
YSBocmVmPSIvd2lraS9Pcmdhbml6YWNpJUMzJUIzbl9NdW5kaWFsX2RlX2xhX1Nh
bHVkIiB0aXRsZT0iT3JnYW5pemFjacOzbiBNdW5kaWFsIGRlIGxhIFNhbHVkIj5P
cmdhbml6YWNpw7NuIE11bmRpYWwgZGUgbGEgU2FsdWQ8L2E+IChPTVMpLkVsIEJ1
cmVhdSBIaWRyb2dyw6FmaWNvIEludGVybmFjaW9uYWwgKEJISSkgdGllbmUgc3Ug
c2VkZSBlbiBNw7NuYWNvLjwvcD4KPGgzPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlv
biI+WzxhIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7
YWN0aW9uPWVkaXQmYW1wO3NlY3Rpb249MTkiIHRpdGxlPSJFZGl0YXIgc2VjY2nD
s246IERlcmVjaG9zIGh1bWFub3MiPmVkaXRhcjwvYT5dPC9zcGFuPiA8c3BhbiBj
bGFzcz0ibXctaGVhZGxpbmUiIGlkPSJEZXJlY2hvc19odW1hbm9zIj5EZXJlY2hv
cyBodW1hbm9zPC9zcGFuPjwvaDM+CjxwPkVuIG1hdGVyaWEgZGUgPGEgaHJlZj0i
L3dpa2kvRGVyZWNob3NfaHVtYW5vcyIgdGl0bGU9IkRlcmVjaG9zIGh1bWFub3Mi
IGNsYXNzPSJtdy1yZWRpcmVjdCI+ZGVyZWNob3MgaHVtYW5vczwvYT4sIHJlc3Bl
Y3RvIGEgbGEgcGVydGVuZW5jaWEgZW4gbG9zIHNpZXRlIG9yZ2FuaXNtb3MgZGUg
bGEgQ2FydGEgSW50ZXJuYWNpb25hbCBkZSBEZXJlY2hvcyBIdW1hbm9zLCBxdWUg
aW5jbHV5ZW4gYWwgPGEgaHJlZj0iL3dpa2kvQ29taXQlQzMlQTlfZGVfRGVyZWNo
b3NfSHVtYW5vcyIgdGl0bGU9IkNvbWl0w6kgZGUgRGVyZWNob3MgSHVtYW5vcyI+
Q29taXTDqSBkZSBEZXJlY2hvcyBIdW1hbm9zPC9hPiAoSFJDKSwgTcOzbmFjbyBo
YSBmaXJtYWRvIG8gcmF0aWZpY2Fkbzo8L3A+Cjx0YWJsZSBjbGFzcz0id2lraXRh
YmxlIiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7IG1hcmdpbjogMC44ZW07IG1h
cmdpbi1sZWZ0OjBweDsgYm9yZGVyOjEuNXB4IHNvbGlkICNhYWE7IHdpZHRoOjM1
ZW07IGZvbnQtc2l6ZTogODUlOyI+CjxjYXB0aW9uPjxhIGhyZWY9Ii93aWtpL0Fy
Y2hpdm86VU5fZW1ibGVtX2JsdWUuc3ZnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0
PSJVTiBlbWJsZW0gYmx1ZS5zdmciIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVk
aWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iL2UvZWUvVU5fZW1ibGVtX2Js
dWUuc3ZnLzI1cHgtVU5fZW1ibGVtX2JsdWUuc3ZnLnBuZyIgd2lkdGg9IjI1IiBo
ZWlnaHQ9IjIxIiAvPjwvYT4gPGI+RXN0YXR1cyBkZSBsb3MgcHJpbmNpcGFsZXMg
aW5zdHJ1bWVudG9zIGludGVybmFjaW9uYWxlcyBkZSA8YSBocmVmPSIvd2lraS9E
ZXJlY2hvc19IdW1hbm9zIiB0aXRsZT0iRGVyZWNob3MgSHVtYW5vcyI+ZGVyZWNo
b3MgaHVtYW5vczwvYT48L2I+LjxzdXAgaWQ9ImNpdGVfcmVmLTMiIGNsYXNzPSJy
ZWZlcmVuY2UiPjxhIGhyZWY9IiNjaXRlX25vdGUtMyI+PHNwYW4gY2xhc3M9ImNv
cmNoZXRlLWxsYW1hZGEiPls8L3NwYW4+NDxzcGFuIGNsYXNzPSJjb3JjaGV0ZS1s
bGFtYWRhIj5dPC9zcGFuPjwvYT48L3N1cD48L2NhcHRpb24+Cjx0cj4KPHRoIHJv
d3NwYW49IjMiIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJwYWRkaW5nOiAwLjNlbTsg
YmFja2dyb3VuZDogI0U4RThFODsgZm9udC1zaXplOiAxMDAlOyI+TcOzbmFjbzwv
dGg+Cjx0aCBjb2xzcGFuPSIxNyIgYWxpZ249ImNlbnRlciIgc3R5bGU9InBhZGRp
bmc6IDAuM2VtOyBiYWNrZ3JvdW5kOiAjRThFOEU4OyBmb250LXNpemU6IDEwMCU7
Ij5UcmF0YWRvcyBpbnRlcm5hY2lvbmFsZXM8L3RoPgo8L3RyPgo8dHI+Cjx0aCBj
b2xzcGFuPSIyIiBhbGlnbj0iY2VudGVyIiBzdHlsZT0icGFkZGluZzogMC4zZW07
IGJhY2tncm91bmQ6ICNGOEY4Rjg7IGZvbnQtc2l6ZToxMDAlOyI+PGEgaHJlZj0i
L3dpa2kvUGFjdG9fSW50ZXJuYWNpb25hbF9kZV9EZXJlY2hvc19FY29uJUMzJUIz
bWljb3MsX1NvY2lhbGVzX3lfQ3VsdHVyYWxlcyIgdGl0bGU9IlBhY3RvIEludGVy
bmFjaW9uYWwgZGUgRGVyZWNob3MgRWNvbsOzbWljb3MsIFNvY2lhbGVzIHkgQ3Vs
dHVyYWxlcyI+Q0VTQ1I8L2E+PHN1cCBpZD0iY2l0ZV9yZWYtNCIgY2xhc3M9InJl
ZmVyZW5jZSI+PGEgaHJlZj0iI2NpdGVfbm90ZS00Ij48c3BhbiBjbGFzcz0iY29y
Y2hldGUtbGxhbWFkYSI+Wzwvc3Bhbj41PHNwYW4gY2xhc3M9ImNvcmNoZXRlLWxs
YW1hZGEiPl08L3NwYW4+PC9hPjwvc3VwPjwvdGg+Cjx0aCBjb2xzcGFuPSIzIiBh
bGlnbj0iY2VudGVyIiBzdHlsZT0icGFkZGluZzogMC4zZW07IGJhY2tncm91bmQ6
ICNGOEY4Rjg7IGZvbnQtc2l6ZToxMDAlOyI+PGEgaHJlZj0iL3dpa2kvUGFjdG9f
SW50ZXJuYWNpb25hbF9kZV9EZXJlY2hvc19DaXZpbGVzX3lfUG9sJUMzJUFEdGlj
b3MiIHRpdGxlPSJQYWN0byBJbnRlcm5hY2lvbmFsIGRlIERlcmVjaG9zIENpdmls
ZXMgeSBQb2zDrXRpY29zIj5DQ1BSPC9hPjxzdXAgaWQ9ImNpdGVfcmVmLTUiIGNs
YXNzPSJyZWZlcmVuY2UiPjxhIGhyZWY9IiNjaXRlX25vdGUtNSI+PHNwYW4gY2xh
c3M9ImNvcmNoZXRlLWxsYW1hZGEiPls8L3NwYW4+NjxzcGFuIGNsYXNzPSJjb3Jj
aGV0ZS1sbGFtYWRhIj5dPC9zcGFuPjwvYT48L3N1cD48L3RoPgo8dGggcm93c3Bh
bj0iMiIgYWxpZ249ImNlbnRlciIgc3R5bGU9InBhZGRpbmc6IDAuM2VtOyBiYWNr
Z3JvdW5kOiAjRjhGOEY4OyBmb250LXNpemU6MTAwJTsiPjxhIGhyZWY9Ii93aWtp
L0NvbnZlbmNpJUMzJUIzbl9JbnRlcm5hY2lvbmFsX3NvYnJlX2xhX0VsaW1pbmFj
aSVDMyVCM25fZGVfdG9kYXNfbGFzX0Zvcm1hc19kZV9EaXNjcmltaW5hY2klQzMl
QjNuX1JhY2lhbCIgdGl0bGU9IkNvbnZlbmNpw7NuIEludGVybmFjaW9uYWwgc29i
cmUgbGEgRWxpbWluYWNpw7NuIGRlIHRvZGFzIGxhcyBGb3JtYXMgZGUgRGlzY3Jp
bWluYWNpw7NuIFJhY2lhbCI+Q0VSRDwvYT48c3VwIGlkPSJjaXRlX3JlZi02IiBj
bGFzcz0icmVmZXJlbmNlIj48YSBocmVmPSIjY2l0ZV9ub3RlLTYiPjxzcGFuIGNs
YXNzPSJjb3JjaGV0ZS1sbGFtYWRhIj5bPC9zcGFuPjc8c3BhbiBjbGFzcz0iY29y
Y2hldGUtbGxhbWFkYSI+XTwvc3Bhbj48L2E+PC9zdXA+PC90aD4KPHRoIHJvd3Nw
YW49IjIiIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJwYWRkaW5nOiAwLjNlbTsgYmFj
a2dyb3VuZDogI0Y4RjhGODsgZm9udC1zaXplOjEwMCU7Ij48YSBocmVmPSIvdy9p
bmRleC5waHA/dGl0bGU9Q29udmVuY2klQzMlQjNuX0ludGVybmFjaW9uYWxfcGFy
YV9sYV9wcm90ZWNjaSVDMyVCM25fZGVfdG9kYXNfbGFzX1BlcnNvbmFzX2NvbnRy
YV9sYXNfRGVzYXBhcmljaW9uZXNfRm9yemFkYXMmYW1wO2FjdGlvbj1lZGl0JmFt
cDtyZWRsaW5rPTEiIGNsYXNzPSJuZXciIHRpdGxlPSJDb252ZW5jacOzbiBJbnRl
cm5hY2lvbmFsIHBhcmEgbGEgcHJvdGVjY2nDs24gZGUgdG9kYXMgbGFzIFBlcnNv
bmFzIGNvbnRyYSBsYXMgRGVzYXBhcmljaW9uZXMgRm9yemFkYXMgKGHDum4gbm8g
cmVkYWN0YWRvKSI+Q0VEPC9hPjxzdXAgaWQ9ImNpdGVfcmVmLTciIGNsYXNzPSJy
ZWZlcmVuY2UiPjxhIGhyZWY9IiNjaXRlX25vdGUtNyI+PHNwYW4gY2xhc3M9ImNv
cmNoZXRlLWxsYW1hZGEiPls8L3NwYW4+ODxzcGFuIGNsYXNzPSJjb3JjaGV0ZS1s
bGFtYWRhIj5dPC9zcGFuPjwvYT48L3N1cD48L3RoPgo8dGggY29sc3Bhbj0iMiIg
YWxpZ249ImNlbnRlciIgc3R5bGU9InBhZGRpbmc6IDAuM2VtOyBiYWNrZ3JvdW5k
OiAjRjhGOEY4OyBmb250LXNpemU6MTAwJTsiPjxhIGhyZWY9Ii93aWtpL0NvbnZl
bmNpJUMzJUIzbl9zb2JyZV9sYV9lbGltaW5hY2klQzMlQjNuX2RlX3RvZGFzX2xh
c19mb3JtYXNfZGVfZGlzY3JpbWluYWNpJUMzJUIzbl9jb250cmFfbGFfbXVqZXIi
IHRpdGxlPSJDb252ZW5jacOzbiBzb2JyZSBsYSBlbGltaW5hY2nDs24gZGUgdG9k
YXMgbGFzIGZvcm1hcyBkZSBkaXNjcmltaW5hY2nDs24gY29udHJhIGxhIG11amVy
IiBjbGFzcz0ibXctcmVkaXJlY3QiPkNFREFXPC9hPjxzdXAgaWQ9ImNpdGVfcmVm
LTgiIGNsYXNzPSJyZWZlcmVuY2UiPjxhIGhyZWY9IiNjaXRlX25vdGUtOCI+PHNw
YW4gY2xhc3M9ImNvcmNoZXRlLWxsYW1hZGEiPls8L3NwYW4+OTxzcGFuIGNsYXNz
PSJjb3JjaGV0ZS1sbGFtYWRhIj5dPC9zcGFuPjwvYT48L3N1cD48L3RoPgo8dGgg
Y29sc3Bhbj0iMiIgYWxpZ249ImNlbnRlciIgc3R5bGU9InBhZGRpbmc6IDAuM2Vt
OyBiYWNrZ3JvdW5kOiAjRjhGOEY4OyBmb250LXNpemU6MTAwJTsiPjxhIGhyZWY9
Ii93aWtpL0NvbnZlbmNpJUMzJUIzbl9jb250cmFfbGFfdG9ydHVyYV95X290cm9z
X3RyYXRvc19vX3BlbmFzX2NydWVsZXMsX2luaHVtYW5vc19vX2RlZ3JhZGFudGVz
IiB0aXRsZT0iQ29udmVuY2nDs24gY29udHJhIGxhIHRvcnR1cmEgeSBvdHJvcyB0
cmF0b3MgbyBwZW5hcyBjcnVlbGVzLCBpbmh1bWFub3MgbyBkZWdyYWRhbnRlcyI+
Q0FUPC9hPjxzdXAgaWQ9ImNpdGVfcmVmLTkiIGNsYXNzPSJyZWZlcmVuY2UiPjxh
IGhyZWY9IiNjaXRlX25vdGUtOSI+PHNwYW4gY2xhc3M9ImNvcmNoZXRlLWxsYW1h
ZGEiPls8L3NwYW4+MTA8c3BhbiBjbGFzcz0iY29yY2hldGUtbGxhbWFkYSI+XTwv
c3Bhbj48L2E+PC9zdXA+PC90aD4KPHRoIGNvbHNwYW49IjMiIGFsaWduPSJjZW50
ZXIiIHN0eWxlPSJwYWRkaW5nOiAwLjNlbTsgYmFja2dyb3VuZDogI0Y4RjhGODsg
Zm9udC1zaXplOjEwMCU7Ij48YSBocmVmPSIvd2lraS9Db252ZW5jaSVDMyVCM25f
c29icmVfbG9zX0RlcmVjaG9zX2RlbF9OaSVDMyVCMW8iIHRpdGxlPSJDb252ZW5j
acOzbiBzb2JyZSBsb3MgRGVyZWNob3MgZGVsIE5pw7FvIj5DUkM8L2E+PHN1cCBp
ZD0iY2l0ZV9yZWYtMTAiIGNsYXNzPSJyZWZlcmVuY2UiPjxhIGhyZWY9IiNjaXRl
X25vdGUtMTAiPjxzcGFuIGNsYXNzPSJjb3JjaGV0ZS1sbGFtYWRhIj5bPC9zcGFu
PjExPHNwYW4gY2xhc3M9ImNvcmNoZXRlLWxsYW1hZGEiPl08L3NwYW4+PC9hPjwv
c3VwPjwvdGg+Cjx0aCByb3dzcGFuPSIyIiBhbGlnbj0iY2VudGVyIiBzdHlsZT0i
cGFkZGluZzogMC4zZW07IGJhY2tncm91bmQ6ICNGOEY4Rjg7IGZvbnQtc2l6ZTox
MDAlOyI+PGEgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPUNvbnZlbmNpJUMzJUIz
bl9JbnRlcm5hY2lvbmFsX3NvYnJlX2xhX3Byb3RlY2NpJUMzJUIzbl9kZV9sb3Nf
ZGVyZWNob3NfZGVfdG9kb3NfbG9zX3RyYWJhamFkb3Jlc19taWdyYXRvcmlvc195
X2RlX3N1c19mYW1pbGlhcmVzJmFtcDthY3Rpb249ZWRpdCZhbXA7cmVkbGluaz0x
IiBjbGFzcz0ibmV3IiB0aXRsZT0iQ29udmVuY2nDs24gSW50ZXJuYWNpb25hbCBz
b2JyZSBsYSBwcm90ZWNjacOzbiBkZSBsb3MgZGVyZWNob3MgZGUgdG9kb3MgbG9z
IHRyYWJhamFkb3JlcyBtaWdyYXRvcmlvcyB5IGRlIHN1cyBmYW1pbGlhcmVzIChh
w7puIG5vIHJlZGFjdGFkbykiPk1XQzwvYT48c3VwIGlkPSJjaXRlX3JlZi0xMSIg
Y2xhc3M9InJlZmVyZW5jZSI+PGEgaHJlZj0iI2NpdGVfbm90ZS0xMSI+PHNwYW4g
Y2xhc3M9ImNvcmNoZXRlLWxsYW1hZGEiPls8L3NwYW4+MTI8c3BhbiBjbGFzcz0i
Y29yY2hldGUtbGxhbWFkYSI+XTwvc3Bhbj48L2E+PC9zdXA+PC90aD4KPHRoIGNv
bHNwYW49IjIiIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJwYWRkaW5nOiAwLjNlbTsg
YmFja2dyb3VuZDogI0Y4RjhGODsgZm9udC1zaXplOjEwMCU7Ij48YSBocmVmPSIv
d2lraS9Db252ZW5jaSVDMyVCM25fc29icmVfbG9zX0RlcmVjaG9zX2RlX2xhc19Q
ZXJzb25hc19jb25fRGlzY2FwYWNpZGFkIiB0aXRsZT0iQ29udmVuY2nDs24gc29i
cmUgbG9zIERlcmVjaG9zIGRlIGxhcyBQZXJzb25hcyBjb24gRGlzY2FwYWNpZGFk
Ij5DUlBEPC9hPjxzdXAgaWQ9ImNpdGVfcmVmLTEyIiBjbGFzcz0icmVmZXJlbmNl
Ij48YSBocmVmPSIjY2l0ZV9ub3RlLTEyIj48c3BhbiBjbGFzcz0iY29yY2hldGUt
bGxhbWFkYSI+Wzwvc3Bhbj4xMzxzcGFuIGNsYXNzPSJjb3JjaGV0ZS1sbGFtYWRh
Ij5dPC9zcGFuPjwvYT48L3N1cD48L3RoPgo8L3RyPgo8dHI+Cjx0aCBhbGlnbj0i
Y2VudGVyIiBzdHlsZT0icGFkZGluZzogMC4zZW07IGJhY2tncm91bmQ6ICNGOEY4
Rjg7IGZvbnQtc2l6ZTo4MCU7Ij5DRVNDUjwvdGg+Cjx0aCBhbGlnbj0iY2VudGVy
IiBzdHlsZT0icGFkZGluZzogMC4zZW07IGJhY2tncm91bmQ6ICNGOEY4Rjg7IGZv
bnQtc2l6ZTo4MCU7Ij48YSBocmVmPSIvd2lraS9Qcm90b2NvbG9fRmFjdWx0YXRp
dm9fZGVsX1BhY3RvX0ludGVybmFjaW9uYWxfZGVfRGVyZWNob3NfRWNvbiVDMyVC
M21pY29zLF9Tb2NpYWxlc195X0N1bHR1cmFsZXMiIHRpdGxlPSJQcm90b2NvbG8g
RmFjdWx0YXRpdm8gZGVsIFBhY3RvIEludGVybmFjaW9uYWwgZGUgRGVyZWNob3Mg
RWNvbsOzbWljb3MsIFNvY2lhbGVzIHkgQ3VsdHVyYWxlcyI+Q0VTQ1ItT1A8L2E+
PC90aD4KPHRoIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJwYWRkaW5nOiAwLjNlbTsg
YmFja2dyb3VuZDogI0Y4RjhGODsgZm9udC1zaXplOjgwJTsiPkNDUFI8L3RoPgo8
dGggYWxpZ249ImNlbnRlciIgc3R5bGU9InBhZGRpbmc6IDAuM2VtOyBiYWNrZ3Jv
dW5kOiAjRjhGOEY4OyBmb250LXNpemU6ODAlOyI+Q0NQUi1PUDE8L3RoPgo8dGgg
YWxpZ249ImNlbnRlciIgc3R5bGU9InBhZGRpbmc6IDAuM2VtOyBiYWNrZ3JvdW5k
OiAjRjhGOEY4OyBmb250LXNpemU6ODAlOyI+Q0NQUi1PUDItRFA8L3RoPgo8dGgg
YWxpZ249ImNlbnRlciIgc3R5bGU9InBhZGRpbmc6IDAuM2VtOyBiYWNrZ3JvdW5k
OiAjRjhGOEY4OyBmb250LXNpemU6ODAlOyI+Q0VEQVc8L3RoPgo8dGggYWxpZ249
ImNlbnRlciIgc3R5bGU9InBhZGRpbmc6IDAuM2VtOyBiYWNrZ3JvdW5kOiAjRjhG
OEY4OyBmb250LXNpemU6ODAlOyI+Q0VEQVctT1A8L3RoPgo8dGggYWxpZ249ImNl
bnRlciIgc3R5bGU9InBhZGRpbmc6IDAuM2VtOyBiYWNrZ3JvdW5kOiAjRjhGOEY4
OyBmb250LXNpemU6ODAlOyI+Q0FUPC90aD4KPHRoIGFsaWduPSJjZW50ZXIiIHN0
eWxlPSJwYWRkaW5nOiAwLjNlbTsgYmFja2dyb3VuZDogI0Y4RjhGODsgZm9udC1z
aXplOjgwJTsiPkNBVC1PUDwvdGg+Cjx0aCBhbGlnbj0iY2VudGVyIiBzdHlsZT0i
cGFkZGluZzogMC4zZW07IGJhY2tncm91bmQ6ICNGOEY4Rjg7IGZvbnQtc2l6ZTo4
MCU7Ij5DUkM8L3RoPgo8dGggYWxpZ249ImNlbnRlciIgc3R5bGU9InBhZGRpbmc6
IDAuM2VtOyBiYWNrZ3JvdW5kOiAjRjhGOEY4OyBmb250LXNpemU6ODAlOyI+Q1JD
LU9QLUFDPC90aD4KPHRoIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJwYWRkaW5nOiAw
LjNlbTsgYmFja2dyb3VuZDogI0Y4RjhGODsgZm9udC1zaXplOjgwJTsiPkNSQy1P
UC1TQzwvdGg+Cjx0aCBhbGlnbj0iY2VudGVyIiBzdHlsZT0icGFkZGluZzogMC4z
ZW07IGJhY2tncm91bmQ6ICNGOEY4Rjg7IGZvbnQtc2l6ZTo4MCU7Ij5DUlBEPC90
aD4KPHRoIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJwYWRkaW5nOiAwLjNlbTsgYmFj
a2dyb3VuZDogI0Y4RjhGODsgZm9udC1zaXplOjgwJTsiPjxhIGhyZWY9Ii93aWtp
L1Byb3RvY29sb19GYWN1bHRhdGl2b19kZV9sYV9Db252ZW5jaSVDMyVCM25fc29i
cmVfbG9zX0RlcmVjaG9zX2RlX2xhc19QZXJzb25hc19jb25fRGlzY2FwYWNpZGFk
IiB0aXRsZT0iUHJvdG9jb2xvIEZhY3VsdGF0aXZvIGRlIGxhIENvbnZlbmNpw7Nu
IHNvYnJlIGxvcyBEZXJlY2hvcyBkZSBsYXMgUGVyc29uYXMgY29uIERpc2NhcGFj
aWRhZCI+Q1JQRC1PUDwvYT48L3RoPgo8L3RyPgo8dHI+Cjx0aCByb3dzcGFuPSIx
IiBhbGlnbj0iY2VudGVyIiBzdHlsZT0icGFkZGluZzogMC4zZW07IGJhY2tncm91
bmQ6ICNFOEU4RTg7IGZvbnQtc2l6ZTogMTAwJTsiPlBlcnRlbmVuY2lhPC90aD4K
PHRkIGFsaWduPSJjZW50ZXIiPjxzbWFsbD48YSBocmVmPSIvd2lraS9BcmNoaXZv
Olllc19jaGVjay5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9IkZpcm1hZG8geSBy
YXRpZmljYWRvLiI+PGltZyBhbHQ9IkZpcm1hZG8geSByYXRpZmljYWRvLiIgc3Jj
PSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMv
dGh1bWIvZi9mYi9ZZXNfY2hlY2suc3ZnLzE1cHgtWWVzX2NoZWNrLnN2Zy5wbmci
IHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgLz48L2E+PC9zbWFsbD48L3RkPgo8dGQg
YWxpZ249ImNlbnRlciI+PHNtYWxsPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86U3lt
Ym9sX2NvbW1lbnRfdm90ZS5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9IlNpbiBp
bmZvcm1hY2nDs24uIj48aW1nIGFsdD0iU2luIGluZm9ybWFjacOzbi4iIHNyYz0i
aHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3Ro
dW1iL2UvZTAvU3ltYm9sX2NvbW1lbnRfdm90ZS5zdmcvMTVweC1TeW1ib2xfY29t
bWVudF92b3RlLnN2Zy5wbmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgLz48L2E+
PC9zbWFsbD48L3RkPgo8dGQgYWxpZ249ImNlbnRlciI+PHNtYWxsPjxhIGhyZWY9
Ii93aWtpL0FyY2hpdm86WWVzX2NoZWNrLnN2ZyIgY2xhc3M9ImltYWdlIiB0aXRs
ZT0iRmlybWFkbyB5IHJhdGlmaWNhZG8uIj48aW1nIGFsdD0iRmlybWFkbyB5IHJh
dGlmaWNhZG8uIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtp
cGVkaWEvY29tbW9ucy90aHVtYi9mL2ZiL1llc19jaGVjay5zdmcvMTVweC1ZZXNf
Y2hlY2suc3ZnLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiAvPjwvYT48L3Nt
YWxsPjwvdGQ+Cjx0ZCBhbGlnbj0iY2VudGVyIj48c21hbGw+PGEgaHJlZj0iL3dp
a2kvQXJjaGl2bzpYX21hcmsuc3ZnIiBjbGFzcz0iaW1hZ2UiIHRpdGxlPSJOaSBm
aXJtYWRvIG5pIHJhdGlmaWNhZG8uIj48aW1nIGFsdD0iTmkgZmlybWFkbyBuaSBy
YXRpZmljYWRvLiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lr
aXBlZGlhL2NvbW1vbnMvdGh1bWIvYS9hMi9YX21hcmsuc3ZnLzEwcHgtWF9tYXJr
LnN2Zy5wbmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMSIgLz48L2E+PC9zbWFsbD48
L3RkPgo8dGQgYWxpZ249ImNlbnRlciI+PHNtYWxsPjxhIGhyZWY9Ii93aWtpL0Fy
Y2hpdm86WmVpY2hlbl8xMDEuc3ZnIiBjbGFzcz0iaW1hZ2UiIHRpdGxlPSJNw7Nu
YWNvIGhhIHJlY29ub2NpZG8gbGEgY29tcGV0ZW5jaWEgZGUgcmVjaWJpciB5IHBy
b2Nlc2FyIGNvbXVuaWNhY2lvbmVzIGluZGl2aWR1YWxlcyBwb3IgcGFydGUgZGUg
bG9zIMOzcmdhbm9zIGNvbXBldGVudGVzLiI+PGltZyBhbHQ9Ik3Ds25hY28gaGEg
cmVjb25vY2lkbyBsYSBjb21wZXRlbmNpYSBkZSByZWNpYmlyIHkgcHJvY2VzYXIg
Y29tdW5pY2FjaW9uZXMgaW5kaXZpZHVhbGVzIHBvciBwYXJ0ZSBkZSBsb3Mgw7Ny
Z2Fub3MgY29tcGV0ZW50ZXMuIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlh
Lm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi8zLzM4L1plaWNoZW5fMTAxLnN2
Zy8xNXB4LVplaWNoZW5fMTAxLnN2Zy5wbmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIx
MyIgLz48L2E+PC9zbWFsbD48L3RkPgo8dGQgYWxpZ249ImNlbnRlciI+PHNtYWxs
PjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86WmVpY2hlbl8xMDEuc3ZnIiBjbGFzcz0i
aW1hZ2UiIHRpdGxlPSJNw7NuYWNvIGhhIHJlY29ub2NpZG8gbGEgY29tcGV0ZW5j
aWEgZGUgcmVjaWJpciB5IHByb2Nlc2FyIGNvbXVuaWNhY2lvbmVzIGluZGl2aWR1
YWxlcyBwb3IgcGFydGUgZGUgbG9zIMOzcmdhbm9zIGNvbXBldGVudGVzLiI+PGlt
ZyBhbHQ9Ik3Ds25hY28gaGEgcmVjb25vY2lkbyBsYSBjb21wZXRlbmNpYSBkZSBy
ZWNpYmlyIHkgcHJvY2VzYXIgY29tdW5pY2FjaW9uZXMgaW5kaXZpZHVhbGVzIHBv
ciBwYXJ0ZSBkZSBsb3Mgw7NyZ2Fub3MgY29tcGV0ZW50ZXMuIiBzcmM9Imh0dHA6
Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi8z
LzM4L1plaWNoZW5fMTAxLnN2Zy8xNXB4LVplaWNoZW5fMTAxLnN2Zy5wbmciIHdp
ZHRoPSIxNSIgaGVpZ2h0PSIxMyIgLz48L2E+PC9zbWFsbD48L3RkPgo8dGQgYWxp
Z249ImNlbnRlciI+PHNtYWxsPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86U3ltYm9s
X2NvbW1lbnRfdm90ZS5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9IlNpbiBpbmZv
cm1hY2nDs24uIj48aW1nIGFsdD0iU2luIGluZm9ybWFjacOzbi4iIHNyYz0iaHR0
cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1i
L2UvZTAvU3ltYm9sX2NvbW1lbnRfdm90ZS5zdmcvMTVweC1TeW1ib2xfY29tbWVu
dF92b3RlLnN2Zy5wbmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgLz48L2E+PC9z
bWFsbD48L3RkPgo8dGQgYWxpZ249ImNlbnRlciI+PHNtYWxsPjxhIGhyZWY9Ii93
aWtpL0FyY2hpdm86WF9tYXJrLnN2ZyIgY2xhc3M9ImltYWdlIiB0aXRsZT0iTmkg
ZmlybWFkbyBuaSByYXRpZmljYWRvLiI+PGltZyBhbHQ9Ik5pIGZpcm1hZG8gbmkg
cmF0aWZpY2Fkby4iIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dp
a2lwZWRpYS9jb21tb25zL3RodW1iL2EvYTIvWF9tYXJrLnN2Zy8xMHB4LVhfbWFy
ay5zdmcucG5nIiB3aWR0aD0iMTAiIGhlaWdodD0iMTEiIC8+PC9hPjwvc21hbGw+
PC90ZD4KPHRkIGFsaWduPSJjZW50ZXIiPjxzbWFsbD48YSBocmVmPSIvd2lraS9B
cmNoaXZvOlhfbWFyay5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9Ik5pIGZpcm1h
ZG8gbmkgcmF0aWZpY2Fkby4iPjxpbWcgYWx0PSJOaSBmaXJtYWRvIG5pIHJhdGlm
aWNhZG8uIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVk
aWEvY29tbW9ucy90aHVtYi9hL2EyL1hfbWFyay5zdmcvMTBweC1YX21hcmsuc3Zn
LnBuZyIgd2lkdGg9IjEwIiBoZWlnaHQ9IjExIiAvPjwvYT48L3NtYWxsPjwvdGQ+
Cjx0ZCBhbGlnbj0iY2VudGVyIj48c21hbGw+PGEgaHJlZj0iL3dpa2kvQXJjaGl2
bzpaZWljaGVuXzEwMS5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9Ik3Ds25hY28g
aGEgcmVjb25vY2lkbyBsYSBjb21wZXRlbmNpYSBkZSByZWNpYmlyIHkgcHJvY2Vz
YXIgY29tdW5pY2FjaW9uZXMgaW5kaXZpZHVhbGVzIHBvciBwYXJ0ZSBkZSBsb3Mg
w7NyZ2Fub3MgY29tcGV0ZW50ZXMuIj48aW1nIGFsdD0iTcOzbmFjbyBoYSByZWNv
bm9jaWRvIGxhIGNvbXBldGVuY2lhIGRlIHJlY2liaXIgeSBwcm9jZXNhciBjb211
bmljYWNpb25lcyBpbmRpdmlkdWFsZXMgcG9yIHBhcnRlIGRlIGxvcyDDs3JnYW5v
cyBjb21wZXRlbnRlcy4iIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3Jn
L3dpa2lwZWRpYS9jb21tb25zL3RodW1iLzMvMzgvWmVpY2hlbl8xMDEuc3ZnLzE1
cHgtWmVpY2hlbl8xMDEuc3ZnLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjEzIiAv
PjwvYT48L3NtYWxsPjwvdGQ+Cjx0ZCBhbGlnbj0iY2VudGVyIj48c21hbGw+PGEg
aHJlZj0iL3dpa2kvQXJjaGl2bzpTeW1ib2xfY29tbWVudF92b3RlLnN2ZyIgY2xh
c3M9ImltYWdlIiB0aXRsZT0iU2luIGluZm9ybWFjacOzbi4iPjxpbWcgYWx0PSJT
aW4gaW5mb3JtYWNpw7NuLiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5v
cmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvZS9lMC9TeW1ib2xfY29tbWVudF92
b3RlLnN2Zy8xNXB4LVN5bWJvbF9jb21tZW50X3ZvdGUuc3ZnLnBuZyIgd2lkdGg9
IjE1IiBoZWlnaHQ9IjE1IiAvPjwvYT48L3NtYWxsPjwvdGQ+Cjx0ZCBhbGlnbj0i
Y2VudGVyIj48c21hbGw+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpaZWljaGVuXzEw
MS5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9Ik3Ds25hY28gaGEgcmVjb25vY2lk
byBsYSBjb21wZXRlbmNpYSBkZSByZWNpYmlyIHkgcHJvY2VzYXIgY29tdW5pY2Fj
aW9uZXMgaW5kaXZpZHVhbGVzIHBvciBwYXJ0ZSBkZSBsb3Mgw7NyZ2Fub3MgY29t
cGV0ZW50ZXMuIj48aW1nIGFsdD0iTcOzbmFjbyBoYSByZWNvbm9jaWRvIGxhIGNv
bXBldGVuY2lhIGRlIHJlY2liaXIgeSBwcm9jZXNhciBjb211bmljYWNpb25lcyBp
bmRpdmlkdWFsZXMgcG9yIHBhcnRlIGRlIGxvcyDDs3JnYW5vcyBjb21wZXRlbnRl
cy4iIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9j
b21tb25zL3RodW1iLzMvMzgvWmVpY2hlbl8xMDEuc3ZnLzE1cHgtWmVpY2hlbl8x
MDEuc3ZnLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjEzIiAvPjwvYT48L3NtYWxs
PjwvdGQ+Cjx0ZCBhbGlnbj0iY2VudGVyIj48c21hbGw+PGEgaHJlZj0iL3dpa2kv
QXJjaGl2bzpaZWljaGVuXzEwMS5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9Ik3D
s25hY28gaGEgcmVjb25vY2lkbyBsYSBjb21wZXRlbmNpYSBkZSByZWNpYmlyIHkg
cHJvY2VzYXIgY29tdW5pY2FjaW9uZXMgaW5kaXZpZHVhbGVzIHBvciBwYXJ0ZSBk
ZSBsb3Mgw7NyZ2Fub3MgY29tcGV0ZW50ZXMuIj48aW1nIGFsdD0iTcOzbmFjbyBo
YSByZWNvbm9jaWRvIGxhIGNvbXBldGVuY2lhIGRlIHJlY2liaXIgeSBwcm9jZXNh
ciBjb211bmljYWNpb25lcyBpbmRpdmlkdWFsZXMgcG9yIHBhcnRlIGRlIGxvcyDD
s3JnYW5vcyBjb21wZXRlbnRlcy4iIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVk
aWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iLzMvMzgvWmVpY2hlbl8xMDEu
c3ZnLzE1cHgtWmVpY2hlbl8xMDEuc3ZnLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9
IjEzIiAvPjwvYT48L3NtYWxsPjwvdGQ+Cjx0ZCBhbGlnbj0iY2VudGVyIj48c21h
bGw+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpDaGVjay5zdmciIGNsYXNzPSJpbWFn
ZSIgdGl0bGU9IkZpcm1hZG8gcGVybyBubyByYXRpZmljYWRvLiI+PGltZyBhbHQ9
IkZpcm1hZG8gcGVybyBubyByYXRpZmljYWRvLiIgc3JjPSJodHRwOi8vdXBsb2Fk
Lndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvMi8yYS9DaGVj
ay5zdmcvMTVweC1DaGVjay5zdmcucG5nIiB3aWR0aD0iMTUiIGhlaWdodD0iMTUi
IC8+PC9hPjwvc21hbGw+PC90ZD4KPHRkIGFsaWduPSJjZW50ZXIiPjxzbWFsbD48
YSBocmVmPSIvd2lraS9BcmNoaXZvOlhfbWFyay5zdmciIGNsYXNzPSJpbWFnZSIg
dGl0bGU9Ik5pIGZpcm1hZG8gbmkgcmF0aWZpY2Fkby4iPjxpbWcgYWx0PSJOaSBm
aXJtYWRvIG5pIHJhdGlmaWNhZG8uIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1l
ZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi9hL2EyL1hfbWFyay5zdmcv
MTBweC1YX21hcmsuc3ZnLnBuZyIgd2lkdGg9IjEwIiBoZWlnaHQ9IjExIiAvPjwv
YT48L3NtYWxsPjwvdGQ+Cjx0ZCBhbGlnbj0iY2VudGVyIj48c21hbGw+PGEgaHJl
Zj0iL3dpa2kvQXJjaGl2bzpTeW1ib2xfY29tbWVudF92b3RlLnN2ZyIgY2xhc3M9
ImltYWdlIiB0aXRsZT0iU2luIGluZm9ybWFjacOzbi4iPjxpbWcgYWx0PSJTaW4g
aW5mb3JtYWNpw7NuLiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcv
d2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvZS9lMC9TeW1ib2xfY29tbWVudF92b3Rl
LnN2Zy8xNXB4LVN5bWJvbF9jb21tZW50X3ZvdGUuc3ZnLnBuZyIgd2lkdGg9IjE1
IiBoZWlnaHQ9IjE1IiAvPjwvYT48L3NtYWxsPjwvdGQ+Cjx0ZCBhbGlnbj0iY2Vu
dGVyIj48c21hbGw+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpTeW1ib2xfY29tbWVu
dF92b3RlLnN2ZyIgY2xhc3M9ImltYWdlIiB0aXRsZT0iU2luIGluZm9ybWFjacOz
bi4iPjxpbWcgYWx0PSJTaW4gaW5mb3JtYWNpw7NuLiIgc3JjPSJodHRwOi8vdXBs
b2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvZS9lMC9T
eW1ib2xfY29tbWVudF92b3RlLnN2Zy8xNXB4LVN5bWJvbF9jb21tZW50X3ZvdGUu
c3ZnLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiAvPjwvYT48L3NtYWxsPjwv
dGQ+CjwvdHI+Cjx0cj4KPHRkIGNvbHNwYW49IjE4Ij48c21hbGw+PGEgaHJlZj0i
L3dpa2kvQXJjaGl2bzpZZXNfY2hlY2suc3ZnIiBjbGFzcz0iaW1hZ2UiPjxpbWcg
YWx0PSJZZXMgY2hlY2suc3ZnIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlh
Lm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi9mL2ZiL1llc19jaGVjay5zdmcv
MTVweC1ZZXNfY2hlY2suc3ZnLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiAv
PjwvYT4gRmlybWFkbyB5IHJhdGlmaWNhZG8sIDxhIGhyZWY9Ii93aWtpL0FyY2hp
dm86Q2hlY2suc3ZnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSJDaGVjay5zdmci
IHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21t
b25zL3RodW1iLzIvMmEvQ2hlY2suc3ZnLzE1cHgtQ2hlY2suc3ZnLnBuZyIgd2lk
dGg9IjE1IiBoZWlnaHQ9IjE1IiAvPjwvYT4gZmlybWFkbyBwZXJvIG5vIHJhdGlm
aWNhZG8sIDxhIGhyZWY9Ii93aWtpL0FyY2hpdm86WF9tYXJrLnN2ZyIgY2xhc3M9
ImltYWdlIj48aW1nIGFsdD0iWCBtYXJrLnN2ZyIgc3JjPSJodHRwOi8vdXBsb2Fk
Lndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvYS9hMi9YX21h
cmsuc3ZnLzEwcHgtWF9tYXJrLnN2Zy5wbmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIx
MSIgLz48L2E+IG5pIGZpcm1hZG8gbmkgcmF0aWZpY2FkbywgPGEgaHJlZj0iL3dp
a2kvQXJjaGl2bzpTeW1ib2xfY29tbWVudF92b3RlLnN2ZyIgY2xhc3M9ImltYWdl
Ij48aW1nIGFsdD0iU3ltYm9sIGNvbW1lbnQgdm90ZS5zdmciIHNyYz0iaHR0cDov
L3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iL2Uv
ZTAvU3ltYm9sX2NvbW1lbnRfdm90ZS5zdmcvMTVweC1TeW1ib2xfY29tbWVudF92
b3RlLnN2Zy5wbmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgLz48L2E+IHNpbiBp
bmZvcm1hY2nDs24sIDxhIGhyZWY9Ii93aWtpL0FyY2hpdm86WmVpY2hlbl8xMDEu
c3ZnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSJaZWljaGVuIDEwMS5zdmciIHNy
Yz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25z
L3RodW1iLzMvMzgvWmVpY2hlbl8xMDEuc3ZnLzE1cHgtWmVpY2hlbl8xMDEuc3Zn
LnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjEzIiAvPjwvYT4gaGEgYWNjZWRpZG8g
YSBmaXJtYXIgeSByYXRpZmljYXIgZWwgw7NyZ2FubyBlbiBjdWVzdGnDs24sIHBl
cm8gdGFtYmnDqW4gcmVjb25vY2UgbGEgY29tcGV0ZW5jaWEgZGUgcmVjaWJpciB5
IHByb2Nlc2FyIGNvbXVuaWNhY2lvbmVzIGluZGl2aWR1YWxlcyBwb3IgcGFydGUg
ZGUgbG9zIMOzcmdhbm9zIGNvbXBldGVudGVzLjwvc21hbGw+PC90ZD4KPC90cj4K
PC90YWJsZT4KPGgyPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9
Ii93L2luZGV4LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQm
YW1wO3NlY3Rpb249MjAiIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IE9yZ2FuaXph
Y2nDs24gYWRtaW5pc3RyYXRpdmEiPmVkaXRhcjwvYT5dPC9zcGFuPiA8c3BhbiBj
bGFzcz0ibXctaGVhZGxpbmUiIGlkPSJPcmdhbml6YWNpLkMzLkIzbl9hZG1pbmlz
dHJhdGl2YSI+T3JnYW5pemFjacOzbiBhZG1pbmlzdHJhdGl2YTwvc3Bhbj48L2gy
Pgo8ZGl2IGNsYXNzPSJub3ByaW50IEFQIiBzdHlsZT0ibWFyZ2luOjAgMCAwLjJl
eCAxZW0iPjxpPjxzcGFuIHN0eWxlPSJmb250LXNpemU6ODclIj5BcnTDrWN1bG8g
cHJpbmNpcGFsOjwvc3Bhbj4gPGEgaHJlZj0iL3dpa2kvT3JnYW5pemFjaSVDMyVC
M25fdGVycml0b3JpYWxfZGVfTSVDMyVCM25hY28iIHRpdGxlPSJPcmdhbml6YWNp
w7NuIHRlcnJpdG9yaWFsIGRlIE3Ds25hY28iPk9yZ2FuaXphY2nDs24gdGVycml0
b3JpYWwgZGUgTcOzbmFjbzwvYT48L2k+PC9kaXY+CjxkaXYgY2xhc3M9InRodW1i
IHRsZWZ0Ij4KPGRpdiBjbGFzcz0idGh1bWJpbm5lciIgc3R5bGU9IndpZHRoOjI1
MnB4OyI+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpNb25hY281LnBuZyIgY2xhc3M9
ImltYWdlIj48aW1nIGFsdD0iIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlh
Lm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi8yLzJiL01vbmFjbzUucG5nLzI1
MHB4LU1vbmFjbzUucG5nIiB3aWR0aD0iMjUwIiBoZWlnaHQ9IjMxNSIgY2xhc3M9
InRodW1iaW1hZ2UiIC8+PC9hPgo8ZGl2IGNsYXNzPSJ0aHVtYmNhcHRpb24iPgo8
ZGl2IGNsYXNzPSJtYWduaWZ5Ij48YSBocmVmPSIvd2lraS9BcmNoaXZvOk1vbmFj
bzUucG5nIiBjbGFzcz0iaW50ZXJuYWwiIHRpdGxlPSJBdW1lbnRhciI+PGltZyBz
cmM9Imh0dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvc2tpbnMtMS41L2NvbW1vbi9p
bWFnZXMvbWFnbmlmeS1jbGlwLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjExIiBh
bHQ9IiIgLz48L2E+PC9kaXY+CkJhcnJpb3MgZGUgTcOzbmFjby48L2Rpdj4KPC9k
aXY+CjwvZGl2Pgo8cD5Nw7NuYWNvIGVzIGVsIHByaW5jaXBhZG8gbcOhcyBwZXF1
ZcOxbyBkZSBFdXJvcGEgYXPDrSBjb21vIHRhbWJpw6luIGVsIHNlZ3VuZG8gcGHD
rXMgbcOhcyBwZXF1ZcOxbyBkZWwgbXVuZG8sIHBvciBkZXRyw6FzIGRlbCBWYXRp
Y2Fuby4gRWwgZXN0YWRvIGNvbnNpc3RlIGVuIHVuYSBzb2xhIG11bmljaXBhbGlk
YWQgKDxpPmNvbW11bmU8L2k+KS4gTm8gaGF5IGRpc3RpbmNpw7NuIGdlb2dyw6Fm
aWNhIGVudHJlIGVsIEVzdGFkbyB5IGxhIENpdWRhZCBkZSBNw7NuYWNvLCBubyBv
YnN0YW50ZSBsYXMgcmVzcG9uc2FiaWxpZGFkZXMgZGVsIEdvYmllcm5vIChuaXZl
bCBlc3RhdGFsKSB5IGxhcyBkZSBsYSBNdW5jaXBhbGlkYWQgKG5pdmVsIG11bmlj
aXBhbCkgc29uIGRpZmVyZW50ZXMuIERlIGFjdWVyZG8gYSBsYSBjb25zdGl0dWNp
w7NuIGRlIDxhIGhyZWY9Ii93aWtpLzE5MTEiIHRpdGxlPSIxOTExIj4xOTExPC9h
PiwgZWwgcHJpbmNpcGFkbyBzZSBzdWJkaXZpZGlyw61hIGVuIHRyZXMgbXVuaWNp
cGFsaWRhZGVzOjwvcD4KPHVsPgo8bGk+TcOzbmFjbyAoPGEgaHJlZj0iL3dpa2kv
TW9uYWNvLVZpbGxlIiB0aXRsZT0iTW9uYWNvLVZpbGxlIj5Nb25hY28tVmlsbGU8
L2E+KSwgbGEgY2l1ZGFkIHZpZWphIGVuIHVuIHByb21vbnRvcmlvIHJvY29zbyBl
eHRlbmRpw6luZG9zZSBwb3IgZWwgTWVkaXRlcnLDoW5lbywgY29ub2NpZG8gY29t
byBsYSBSb2NhIGRlIE3Ds25hY28sIG8gc2ltcGxlbWVudGUgTGEgUm9jYSwgZG9u
ZGUgc2UgbG9jYWxpemEgZWwgcGFsYWNpby48L2xpPgo8bGk+PGEgaHJlZj0iL3dp
a2kvTW9udGVjYXJsb18oTSVDMyVCM25hY28pIiB0aXRsZT0iTW9udGVjYXJsbyAo
TcOzbmFjbykiIGNsYXNzPSJtdy1yZWRpcmVjdCI+TW9udGVjYXJsbzwvYT4sIGxh
IHByaW5jaXBhbCDDoXJlYSByZXNpZGVuY2lhbCB5IGhvdGVsZXJhIGNvbiBlbCA8
YSBocmVmPSIvd2lraS9DYXNpbm9fZGVfTW9udGVjYXJsbyIgdGl0bGU9IkNhc2lu
byBkZSBNb250ZWNhcmxvIj5DYXNpbm8gZGUgTW9udGVjYXJsbzwvYT4gZW4gZWwg
ZXN0ZSB5IG5vcmVzdGUuPC9saT4KPGxpPjxhIGhyZWY9Ii93aWtpL0xhX0NvbmRh
bWluZSIgdGl0bGU9IkxhIENvbmRhbWluZSI+TGEgQ29uZGFtaW5lPC9hPiwgbGEg
c2VjY2nDs24gbm9yb2VzdGUgZGUgbGEgcXVlIGZvcm1hIHBhcnRlIGVsIMOhcmVh
IHBvcnR1YXJpYS48L2xpPgo8L3VsPgo8cD5MYXMgdHJlcyBtdW5pY2lwYWxpZGFk
ZXMgZnVlcm9uIGZ1c2lvbmFkYXMgZW4gPGEgaHJlZj0iL3dpa2kvMTk1NCIgdGl0
bGU9IjE5NTQiPjE5NTQ8L2E+IChkZXNwdcOpcyBkZSB2YXJpYSBhY3VzYWNpb25l
cyBxdWUgZGVjw61hbiBxdWUgZWwgR29iaWVybm8gZXN0YWJhIGFjdHVhbmRvIGRl
IGFjdWVyZG8gY29uIGVsIGxlbWEgwqtEaXZpZGUgeSB2ZW5jZXLDoXPCuyksIHNp
biBlbWJhcmdvIHZvbHZpZXJvbiBhIHNlcGFyYXJzZSBtw6FzIHRhcmRlLCBhdW5x
dWUgZXN0YSB2ZXogY29uIGxhIGNhdGVnb3LDrWEgZGUgYmFycmlvczo8L3A+Cjx1
bD4KPGxpPjxhIGhyZWY9Ii93aWtpL0ZvbnR2aWVpbGxlXyhNJUMzJUIzbmFjbyki
IHRpdGxlPSJGb250dmllaWxsZSAoTcOzbmFjbykiPkZvbnR2aWVpbGxlPC9hPiwg
ZnVlIGNyZWFkbyBjb21vIGVsIDTCsCBiYXJyaW8sIHVuYSDDoXJlYSBjb25zdHJ1
aWRhIGVuIDxhIGhyZWY9Ii93aWtpL1RpZXJyYXNfZ2FuYWRhc19hbF9tYXIiIHRp
dGxlPSJUaWVycmFzIGdhbmFkYXMgYWwgbWFyIj5UaWVycmFzIGdhbmFkYXMgYWwg
bWFyPC9hPiAoIGVuIGxhIGTDqWNhZGEgZGUgMTk3MCk8L2xpPgo8bGk+PGEgaHJl
Zj0iL3dpa2kvTW9uZWdldGkiIHRpdGxlPSJNb25lZ2V0aSI+TW9uZWdldGk8L2E+
LCBzZSBjb252aXJ0acOzIGVuIGVsIHF1aW50byBkaXN0cml0byBkZSBNw7NuYWNv
LCBjcmVhZG8gYSBwYXJ0aXIgZGUgdW5hIHBhcnRlIGRlIExhIENvbmRhbWluYS48
L2xpPgo8bGk+PGEgaHJlZj0iL3dpa2kvTGFydm90dG8iIHRpdGxlPSJMYXJ2b3R0
byI+TGFydm90dG88L2E+LCBzZWdyZWdhZG8gZGUgTW9udGVjYXJsbywgc2llbmRv
IGVsIHNleHRvIGRpc3RyaXRvIGRlbCBwYcOtcy48L2xpPgo8L3VsPgo8dWw+Cjxs
aT48YSBocmVmPSIvd2lraS9MYV9Sb3Vzc2UvU2FuX1JvbWFuIiB0aXRsZT0iTGEg
Um91c3NlL1NhbiBSb21hbiI+TGEgUm91c3NlL1NhbiBSb21hbjwvYT4sIHBvc2V5
ZW5kbyBMZSBUw6luYW8sIHNlIGNvbnZpcnRpw7MgZW4gZWwgc8OpcHRpbW8gZGlz
dHJpdG8gZGUgTcOzbmFjbywgY3JlYWRvIHRhbWJpw6luIGEgcGFydGlyIGRlIE1v
bnRlY2FybG8uPC9saT4KPC91bD4KPHA+U3Vic2VjdWVudGVtZW50ZSwgc2UgY3Jl
YXJvbiBsb3MgMyDDumx0aW1vcyBiYXJyaW9zOjwvcD4KPHVsPgo8bGk+PGEgaHJl
Zj0iL3dpa2kvU2FuX01pZ3VlbF8oTSVDMyVCM25hY28pIiB0aXRsZT0iU2FuIE1p
Z3VlbCAoTcOzbmFjbykiPlNhbiBNaWd1ZWw8L2E+LCBzZWdyZWdhZGEgZGUgTW9u
dGVjYXJsby48L2xpPgo8bGk+PGEgaHJlZj0iL3dpa2kvTGFfQ29sbGUiIHRpdGxl
PSJMYSBDb2xsZSI+TGEgQ29sbGU8L2E+LCBzZWdyZWdhZGEgZGUgTGEgQ29uZGFt
aW5lLjwvbGk+CjxsaT48YSBocmVmPSIvd2lraS9MZXNfUmV2b2lyZXMiIHRpdGxl
PSJMZXMgUmV2b2lyZXMiPkxlcyBSZXZvaXJlczwvYT4sIG51ZXZvIGRpc3RyaXRv
IG1vbmVnYXNjbywgc2VncmVnYWRvIGRlIExhIENvbmRhbWluZS4gRW4gZXN0ZSBk
aXN0cml0byBzZSBsb2NhbGl6YSBlbCBKYXJkw61uIEV4w7N0aWNvLjwvbGk+Cjwv
dWw+CjxkaXYgY2xhc3M9InRodW1iIHRyaWdodCI+CjxkaXYgY2xhc3M9InRodW1i
aW5uZXIiIHN0eWxlPSJ3aWR0aDoyNTJweDsiPjxhIGhyZWY9Ii93aWtpL0FyY2hp
dm86TW9uYWNvQmVpTmFjaHQuanBnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSIi
IHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21t
b25zL3RodW1iL2EvYTkvTW9uYWNvQmVpTmFjaHQuanBnLzI1MHB4LU1vbmFjb0Jl
aU5hY2h0LmpwZyIgd2lkdGg9IjI1MCIgaGVpZ2h0PSIxMjkiIGNsYXNzPSJ0aHVt
YmltYWdlIiAvPjwvYT4KPGRpdiBjbGFzcz0idGh1bWJjYXB0aW9uIj4KPGRpdiBj
bGFzcz0ibWFnbmlmeSI+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpNb25hY29CZWlO
YWNodC5qcGciIGNsYXNzPSJpbnRlcm5hbCIgdGl0bGU9IkF1bWVudGFyIj48aW1n
IHNyYz0iaHR0cDovL2JpdHMud2lraW1lZGlhLm9yZy9za2lucy0xLjUvY29tbW9u
L2ltYWdlcy9tYWduaWZ5LWNsaXAucG5nIiB3aWR0aD0iMTUiIGhlaWdodD0iMTEi
IGFsdD0iIiAvPjwvYT48L2Rpdj4KVmlzdGEgbm9jdHVybmEgZGUgTcOzbmFjby48
L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8cD5VbiBiYXJyaW8gYWRpY2lvbmFsIGZ1ZSBw
bGFuZWFkbyBlbiBudWV2YXMgdGllcnJhcyBvYnRlbmlkYXMgYWwgbWFyLCBxdWUg
c2Vyw61hbiByZW1hdGFkYXMgcGFyYSBlbCAyMDE0LiBFbCBwcsOtbmNpcGUgQWxi
ZXJ0byBJSSBhbnVuY2nDsyBlbiBzdSBkaXNjdXJzbyBkZSBBw7FvIE51ZXZvIGVu
IDIwMDkgcXVlIGVzdG9zIHBsYW5lcyBoYW4gcXVlZGFkbyBlbiBzdXNwZW5zbyBk
ZWJpZG8gYSBsYSBzaXR1YWNpw7NuIGVjb27Ds21pY2EgYWN0dWFsLjwvcD4KPHA+
QWN0dWFsbWVudGUsIGVsIHByaW5jaXBhZG8gZXN0w6EgZGl2aWRpZG8gZW4gMTAg
YmFycmlvcyAoY29uIHN1cyByZXNwZWN0aXZvcyBuw7ptZXJvcyBvZmljaWFsZXM6
IGEgPGk+TGUgUG9ydGllcjwvaT4gKMKrRWwgUG9ydHVhcmlvwrspLCBlbCBiYXJy
aW8gcHJvcHVlc3RvLCBsZSBmdWUgYW50aWNpcGFkbyBlbCBuw7ptZXJvIDExLjwv
cD4KPHRhYmxlIGNsYXNzPSJ3aWtpdGFibGUiPgo8dHI+Cjx0aD5OcjwvdGg+Cjx0
aD48YSBocmVmPSIvd2lraS9CYXJyaW8iIHRpdGxlPSJCYXJyaW8iPkJhcnJpbzwv
YT48L3RoPgo8dGg+w4FyZWE8YnIgLz4KKG3Csik8L3RoPgo8dGg+w4FyZWE8YnIg
Lz4KKGhlY3TDoXJlYXMpPC90aD4KPHRoPlBvYmxhY2nDs248YnIgLz4KKDxhIGhy
ZWY9Ii93aWtpL0NlbnNvX2RlX3BvYmxhY2klQzMlQjNuIiB0aXRsZT0iQ2Vuc28g
ZGUgcG9ibGFjacOzbiI+Q2Vuc288L2E+PGJyIC8+CmRlIDIwMDApPC90aD4KPHRo
PkRlbnNpZGFkPGJyIC8+CmttPHN1cD4yPC9zdXA+PC90aD4KPHRoPjxhIGhyZWY9
Ii93L2luZGV4LnBocD90aXRsZT1DaXR5X2Jsb2NrJmFtcDthY3Rpb249ZWRpdCZh
bXA7cmVkbGluaz0xIiBjbGFzcz0ibmV3IiB0aXRsZT0iQ2l0eSBibG9jayAoYcO6
biBubyByZWRhY3RhZG8pIj5DaXR5PC9hPjxiciAvPgo8YSBocmVmPSIvd2lraS9N
YW56YW5hIiB0aXRsZT0iTWFuemFuYSI+TWFuemFuYXM8L2E+IDxpPijDrmxvdHMp
PC9pPjwvdGg+Cjx0aD5QdW50b3MgZGUgaW50ZXLDqXM8L3RoPgo8L3RyPgo8dHI+
Cjx0ZCBjb2xzcGFuPSI2IiBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRUZFRkVG
Ij48Yj5BbnRpZ3VhIG11bmljaXBhbGlkYWQgZGUgPGEgaHJlZj0iL3dpa2kvTW9u
YWNvLVZpbGxlIiB0aXRsZT0iTW9uYWNvLVZpbGxlIj5Nw7NuYWNvPC9hPjwvYj48
L3RkPgo8L3RyPgo8dHI+Cjx0ZD4wNTwvdGQ+Cjx0ZD48YSBocmVmPSIvd2lraS9N
b25hY28tVmlsbGUiIHRpdGxlPSJNb25hY28tVmlsbGUiPk1vbmFjby1WaWxsZTwv
YT48L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4xODQuNzUwPC90ZD4KPHRkIGFsaWdu
PSJyaWdodCI+MTgsNDc8L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4xLjAzNDwvdGQ+
Cjx0ZCBhbGlnbj0icmlnaHQiPjUuNTk3PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+
MTk8L3RkPgo8dGQ+TGEgQ2l1ZGFkIFZpZWphIGNvbiBlbCBwYWxhY2lvPC90ZD4K
PC90cj4KPHRyPgo8dGQgY29sc3Bhbj0iNiIgYWxpZ249ImNlbnRlciIgYmdjb2xv
cj0iI0VGRUZFRiI+PGI+QW50aWd1YSBtdW5pY2lwYWxpZGFkIGRlIDxhIGhyZWY9
Ii93aWtpL01vbnRlY2FybG8iIHRpdGxlPSJNb250ZWNhcmxvIj5Nb250ZWNhcmxv
PC9hPjwvYj48L3RkPgo8L3RyPgo8dHI+Cjx0ZD4wMTwvdGQ+Cjx0ZD48YSBocmVm
PSIvd2lraS9Nb250ZWNhcmxvIiB0aXRsZT0iTW9udGVjYXJsbyI+TW9udGVjYXJs
by9TcMOpbHVndWVzPC9hPiAoPGk+QmQuIERlcyBNb3VsaW5zLUF2LiBkZSBsYSBN
YWRvbmU8L2k+KTwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjI4MS40NjE8L3RkPgo8
dGQgYWxpZ249InJpZ2h0Ij4yOCwxNDwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjMu
MDM0PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+MTAuNzc5PC90ZD4KPHRkIGFsaWdu
PSJyaWdodCI+MjA8L3RkPgo8dGQ+ZWwgw6FyZWEgZGVsIGNhc2lubyB5IGxvcyBo
b3RlbGVzPC90ZD4KPC90cj4KPHRyPgo8dGQ+MDI8L3RkPgo8dGQ+PGEgaHJlZj0i
L3dpa2kvTGFfUm91c3NlL1Nhbl9Sb21hbiIgdGl0bGU9IkxhIFJvdXNzZS9TYW4g
Um9tYW4iPkxhIFJvdXNzZS9TYWludCBSb21hbjwvYT4gKDxpPkFubm9uY2lhZGUt
Q2jDonRlYXUgUMOpcmlnb3JkPC9pPik8L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4x
MDUuMjE1PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+MTAsNTI8L3RkPgo8dGQgYWxp
Z249InJpZ2h0Ij4zLjIyMzwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjMwLjYzMzwv
dGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjE1PC90ZD4KPHRkPkluY2x1eWUsIGVuIGVs
IG5vcnRlLCBMZSBUw6luYW88L3RkPgo8L3RyPgo8dHI+Cjx0ZD4wMzwvdGQ+Cjx0
ZD48YSBocmVmPSIvd2lraS9MYXJ2b3R0byIgdGl0bGU9IkxhcnZvdHRvIj5MYXJ2
b3R0by9CYXMgTW91bGluczwvYT4gKDxpPkxhcnZvdHRvLUJkIFBzc2UgR3JhY2U8
L2k+KTwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjMyOC40Nzk8L3RkPgo8dGQgYWxp
Z249InJpZ2h0Ij4zMiw4NDwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjUuNDQzPC90
ZD4KPHRkIGFsaWduPSJyaWdodCI+MTYuNTcwPC90ZD4KPHRkIGFsaWduPSJyaWdo
dCI+MTU8L3RkPgo8dGQ+w4FyZWEgZGUgcGFsYXlhIGRlbCBlc3RlPC90ZD4KPC90
cj4KPHRyPgo8dGQ+MTA8L3RkPgo8dGQ+PGEgaHJlZj0iL3dpa2kvU2FuX01pZ3Vl
bF8oTSVDMyVCM25hY28pIiB0aXRsZT0iU2FuIE1pZ3VlbCAoTcOzbmFjbykiPlNh
biBNaWd1ZWw8L2E+ICg8aT5Qc3NlIENoYXJsb3R0ZS1QYXJrIFBhbGFjZTwvaT4p
PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+MTQyLjIyMzwvdGQ+Cjx0ZCBhbGlnbj0i
cmlnaHQiPjE0LDIyPC90ZD4KPHRkIGFsaWduPSJyaWdodCI+My44MDc8L3RkPgo8
dGQgYWxpZ249InJpZ2h0Ij4yNi43Njg8L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4y
NDwvdGQ+Cjx0ZD7DgXJlYSBjZW50cmFsIHJlc2lkZW5jaWFsPC90ZD4KPC90cj4K
PHRyPgo8dGQgY29sc3Bhbj0iNiIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0VG
RUZFRiI+PGI+QW50aWd1YSBtdW5pY2lwYWxpZGFkIGRlIDxhIGhyZWY9Ii93aWtp
L0xhX0NvbmRhbWluZSIgdGl0bGU9IkxhIENvbmRhbWluZSI+TGEgQ29uZGFtaW5l
PC9hPjwvYj48L3RkPgo8L3RyPgo8dHI+Cjx0ZD4wNDwvdGQ+Cjx0ZD48YSBocmVm
PSIvd2lraS9MYV9Db25kYW1pbmUiIHRpdGxlPSJMYSBDb25kYW1pbmUiPkxhIENv
bmRhbWluZTwvYT48L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4yMzcuMjgzPC90ZD4K
PHRkIGFsaWduPSJyaWdodCI+MjMsNzI8L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4z
Ljg0NzwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjE2LjIxMzwvdGQ+Cjx0ZCBhbGln
bj0icmlnaHQiPjI3PC90ZD4KPHRkPkVsIMOhcmVhIHBvcnR1YXJpYSwgZW4gZWwg
bm9yb2VzdGU8L3RkPgo8L3RyPgo8dHI+Cjx0ZD4wNzwvdGQ+Cjx0ZD48YSBocmVm
PSIvd2lraS9MYV9Db2xsZSxfTW9uYWNvIiB0aXRsZT0iTGEgQ29sbGUsIE1vbmFj
byIgY2xhc3M9Im13LXJlZGlyZWN0Ij5MYSBDb2xsZTwvYT4gKDxpPlBsYXRpLVBh
c3RldXItQmQgQ2hhcmxlcyBJSUk8L2k+KTwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQi
PjE4OC4wNzM8L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4xOCw4MDwvdGQ+Cjx0ZCBh
bGlnbj0icmlnaHQiPjIuODIyPC90ZD4KPHRkIGFsaWduPSJyaWdodCI+MTUuMDA1
PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+MTU8L3RkPgo8dGQ+ZW4gZWwgZXh0cmVt
byBvZXN0ZSBjb24gQ2FwIGQnQWlsPC90ZD4KPC90cj4KPHRyPgo8dGQ+MDg8L3Rk
Pgo8dGQ+PGEgaHJlZj0iL3dpa2kvTGVzX1IlQzMlQTl2b2lyZXMiIHRpdGxlPSJM
ZXMgUsOpdm9pcmVzIiBjbGFzcz0ibXctcmVkaXJlY3QiPkxlcyBSw6l2b2lyZXM8
L2E+ICg8aT5IZWN0b3IgT3R0by1Ib25vcsOpIExhYmFuZGU8L2k+KTwvdGQ+Cjx0
ZCBhbGlnbj0icmlnaHQiPjc1Ljc0NzwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjcs
NTc8L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4yLjUxNTwvdGQ+Cjx0ZCBhbGlnbj0i
cmlnaHQiPjMzLjIwMzwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjExPC90ZD4KPHRk
PmNvbnRpZW5lIGVsIEphcmTDrW4gRXjDs3RpY288L3RkPgo8L3RyPgo8dHI+Cjx0
ZD4wOTwvdGQ+Cjx0ZD48YSBocmVmPSIvd2lraS9Nb25lZ2hldHRpIiB0aXRsZT0i
TW9uZWdoZXR0aSIgY2xhc3M9Im13LXJlZGlyZWN0Ij5Nb25lZ2hldHRpLyBCZCBk
ZSBCZWxnaXF1ZTwvYT4gKDxpPkJkIFJhaW5pZXIgSUlJLUJkIGRlIEJlbGdpcXVl
PC9pPjwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjEwNy4wNTY8L3RkPgo8dGQgYWxp
Z249InJpZ2h0Ij4xMCw3MDwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjMuMDAzPC90
ZD4KPHRkIGFsaWduPSJyaWdodCI+MjguMDUxPC90ZD4KPHRkIGFsaWduPSJyaWdo
dCI+MTg8L3RkPgo8dGQ+JiMxNjA7PC90ZD4KPC90cj4KPHRyPgo8dGQgY29sc3Bh
bj0iNiIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0VGRUZFRiI+PGI+bnVldmFz
IHRpZXJyYXMgZ2FuYWRhcyBhbCBtYXI8L2I+PC90ZD4KPC90cj4KPHRyPgo8dGQ+
MDY8L3RkPgo8dGQ+PGEgaHJlZj0iL3dpa2kvRm9udHZpZWlsbGUsX01vbmFjbyIg
dGl0bGU9IkZvbnR2aWVpbGxlLCBNb25hY28iIGNsYXNzPSJtdy1yZWRpcmVjdCI+
Rm9udHZpZWlsbGU8L2E+PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+MzI0LjE1Nzwv
dGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjMyLDQxPC90ZD4KPHRkIGFsaWduPSJyaWdo
dCI+My4yOTI8L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij4xMC4xNTY8L3RkPgo8dGQg
YWxpZ249InJpZ2h0Ij45PC90ZD4KPHRkPmNvbWVuemFkbyBlbiAxOTcxPC90ZD4K
PC90cj4KPHRyPgo8dGQ+MTE8L3RkPgo8dGQ+PGEgaHJlZj0iL3dpa2kvTGVfUG9y
dGllciIgdGl0bGU9IkxlIFBvcnRpZXIiPkxlIFBvcnRpZXI8L2E+PC90ZD4KPHRk
IGFsaWduPSJyaWdodCI+Mjc1LjAwMDxzdXA+MSk8L3N1cD48L3RkPgo8dGQgYWxp
Z249InJpZ2h0Ij4yNyw1MDwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPi08L3RkPgo8
dGQgYWxpZ249InJpZ2h0Ij4tPC90ZD4KPHRkIGFsaWduPSJyaWdodCI+LTwvdGQ+
Cjx0ZD5wbGFuZXMgc3VzcGVuZGlkb3MgcG9yIGVsIFByw61uY2lwZSBBbGJlcnRv
IGVuIDIwMDk8L3RkPgo8L3RyPgo8dHIgc3R5bGU9ImJhY2tncm91bmQ6ICNDQ0M7
Ij4KPHRkPiYjMTYwOzwvdGQ+Cjx0ZD5Nw7NuYWNvPC90ZD4KPHRkIGFsaWduPSJy
aWdodCI+MS45NzQuNDQ0PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+MTk3PC90ZD4K
PHRkIGFsaWduPSJyaWdodCI+MzIuMDIwPC90ZD4KPHRkIGFsaWduPSJyaWdodCI+
MTYuMjE3PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+MTczPC90ZD4KPHRkPiYjMTYw
OzwvdGQ+CjwvdHI+Cjx0cj4KPHRkIGNvbHNwYW49IjYiIHN0eWxlPSJiYWNrZ3Jv
dW5kOiAjZmZmZmZmOyI+PHN1cD4xKTwvc3VwPiDDgXJlYSBubyBpbmNsdWlkYSBl
biBlbCB0b3RhbCwgZXN0w6EgdGFuIHPDs2xvIHByb3B1ZXN0YTwvdGQ+CjwvdHI+
CjwvdGFibGU+CjxwPlBvciBtb3Rpdm9zIGVzdGFkw61zdGljb3MsIGxvcyBiYXJy
aW9zIGRlIE3Ds25hY28gZXN0w6FuIGRpdmlkaWRvcyBlbiAxNzMgbWFuemFuYXMg
KDxpPsOubG90czwvaT4pLCBjb21wYXJhYmxlcyBjb24gbG9zIGJsb3F1ZXMgY2Vu
c3VhbGVzIGVuIEVzdGFkb3MgVW5pZG9zLjwvcD4KPGgyPjxzcGFuIGNsYXNzPSJl
ZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1NJUMzJUIz
bmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3NlY3Rpb249MjEiIHRpdGxlPSJFZGl0
YXIgc2VjY2nDs246IEdlb2dyYWbDrWEiPmVkaXRhcjwvYT5dPC9zcGFuPiA8c3Bh
biBjbGFzcz0ibXctaGVhZGxpbmUiIGlkPSJHZW9ncmFmLkMzLkFEYSI+R2VvZ3Jh
ZsOtYTwvc3Bhbj48L2gyPgo8ZGl2IGNsYXNzPSJub3ByaW50IEFQIiBzdHlsZT0i
bWFyZ2luOjAgMCAwLjJleCAxZW0iPjxpPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
ODclIj5BcnTDrWN1bG8gcHJpbmNpcGFsOjwvc3Bhbj4gPGEgaHJlZj0iL3dpa2kv
R2VvZ3JhZiVDMyVBRGFfZGVfTSVDMyVCM25hY28iIHRpdGxlPSJHZW9ncmFmw61h
IGRlIE3Ds25hY28iPkdlb2dyYWbDrWEgZGUgTcOzbmFjbzwvYT48L2k+PC9kaXY+
CjxwPk3Ds25hY28gdGllbmUgdW5hIDxhIGhyZWY9Ii93aWtpL1N1cGVyZmljaWUi
IHRpdGxlPSJTdXBlcmZpY2llIj5zdXBlcmZpY2llPC9hPiBkZSBkb3MgPGEgaHJl
Zj0iL3dpa2kvS2lsJUMzJUIzbWV0cm8iIHRpdGxlPSJLaWzDs21ldHJvIj5raWzD
s21ldHJvczwvYT4gY3VhZHJhZG9zLiBFcyBlbCA8YSBocmVmPSIvd2lraS9Fc3Rh
ZG8iIHRpdGxlPSJFc3RhZG8iPmVzdGFkbzwvYT4gbcOhcyBwZXF1ZcOxbyBkZSA8
YSBocmVmPSIvd2lraS9FdXJvcGEiIHRpdGxlPSJFdXJvcGEiPkV1cm9wYTwvYT4g
ZGVzcHXDqXMgZGUgbGEgPGEgaHJlZj0iL3dpa2kvQ2l1ZGFkX2RlbF9WYXRpY2Fu
byIgdGl0bGU9IkNpdWRhZCBkZWwgVmF0aWNhbm8iPkNpdWRhZCBkZWwgVmF0aWNh
bm88L2E+LiBTZSBlbmN1ZW50cmEgc29icmUgdW4gcHJvbW9udG9yaW8gZGUgbGEg
PGEgaHJlZj0iL3dpa2kvQ29zdGFfQXp1bCIgdGl0bGU9IkNvc3RhIEF6dWwiPkNv
c3RhIEF6dWw8L2E+LCB5IHN1IHJlbGlldmUgaXJyZWd1bGFyIGVzdMOhIGZvcm1h
ZG8gcG9yIGxhcyDDumx0aW1hcyBlc3RyaWJhY2lvbmVzIGRlIGxvcyA8YSBocmVm
PSIvd2lraS9BbHBlcyIgdGl0bGU9IkFscGVzIj5BbHBlczwvYT4uIEdvemEgZGUg
dW4gZXhjZWxlbnRlIDxhIGhyZWY9Ii93aWtpL0NsaW1hX21lZGl0ZXJyJUMzJUEx
bmVvIiB0aXRsZT0iQ2xpbWEgbWVkaXRlcnLDoW5lbyI+Y2xpbWEgbWVkaXRlcnLD
oW5lbzwvYT4uPC9wPgo8dGFibGUgY2xhc3M9Indpa2l0YWJsZSIgc3R5bGU9ImZv
bnQtc2l6ZTo5MCU7d2lkdGg6MTAwJTtib3JkZXI6MHB4O3RleHQtYWxpZ246Y2Vu
dGVyO2xpbmUtaGVpZ2h0OjEyMCU7Ij4KPHRyPgo8dGggc3R5bGU9ImJhY2tncm91
bmQ6ICM5OUNDQ0M7IGNvbG9yOiAjMDAwMDgwIiBoZWlnaHQ9IjE3Ij5NZXM8L3Ro
Pgo8dGggc3R5bGU9ImJhY2tncm91bmQ6ICM5OUNDQ0M7IGNvbG9yOiMwMDAwODA7
Ij5FbmU8L3RoPgo8dGggc3R5bGU9ImJhY2tncm91bmQ6ICM5OUNDQ0M7IGNvbG9y
OiMwMDAwODA7Ij5GZWI8L3RoPgo8dGggc3R5bGU9ImJhY2tncm91bmQ6ICM5OUND
Q0M7IGNvbG9yOiMwMDAwODA7Ij5NYXI8L3RoPgo8dGggc3R5bGU9ImJhY2tncm91
bmQ6ICM5OUNDQ0M7IGNvbG9yOiMwMDAwODA7Ij5BYnI8L3RoPgo8dGggc3R5bGU9
ImJhY2tncm91bmQ6ICM5OUNDQ0M7IGNvbG9yOiMwMDAwODA7Ij5NYXk8L3RoPgo8
dGggc3R5bGU9ImJhY2tncm91bmQ6ICM5OUNDQ0M7IGNvbG9yOiMwMDAwODA7Ij5K
dW48L3RoPgo8dGggc3R5bGU9ImJhY2tncm91bmQ6ICM5OUNDQ0M7IGNvbG9yOiMw
MDAwODA7Ij5KdWw8L3RoPgo8dGggc3R5bGU9ImJhY2tncm91bmQ6ICM5OUNDQ0M7
IGNvbG9yOiMwMDAwODA7Ij5BZ288L3RoPgo8dGggc3R5bGU9ImJhY2tncm91bmQ6
ICM5OUNDQ0M7IGNvbG9yOiMwMDAwODA7Ij5TZXA8L3RoPgo8dGggc3R5bGU9ImJh
Y2tncm91bmQ6ICM5OUNDQ0M7IGNvbG9yOiMwMDAwODA7Ij5PY3Q8L3RoPgo8dGgg
c3R5bGU9ImJhY2tncm91bmQ6ICM5OUNDQ0M7IGNvbG9yOiMwMDAwODA7Ij5Ob3Y8
L3RoPgo8dGggc3R5bGU9ImJhY2tncm91bmQ6ICM5OUNDQ0M7IGNvbG9yOiMwMDAw
ODA7Ij5EaWM8L3RoPgo8L3RyPgo8dHI+Cjx0aCBzdHlsZT0iYmFja2dyb3VuZDog
Izk5Q0NDQzsgY29sb3I6IzAwMDA4MDsiPlRlbXAuIG1heC4gLyDCsEM8L3RoPgo8
dGQgc3R5bGU9ImJhY2tncm91bmQ6ICNGRkZGRkY7IGNvbG9yOiMwMDAwMDA7Ij4x
MiwyNTwvdGQ+Cjx0ZCBzdHlsZT0iYmFja2dyb3VuZDogI0ZGRkZGRjsgY29sb3I6
IzAwMDAwMDsiPjEyLDUyPC90ZD4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kOiAjRkZG
RkNDOyBjb2xvcjojMDAwMDAwOyI+MTMsOTc8L3RkPgo8dGQgc3R5bGU9ImJhY2tn
cm91bmQ6ICNGRkZGOTk7IGNvbG9yOiMwMDAwMDA7Ij4xNiwxMzwvdGQ+Cjx0ZCBz
dHlsZT0iYmFja2dyb3VuZDogI0ZGQ0M2NjsgY29sb3I6IzAwMDAwMDsiPjE5LDM2
PC90ZD4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kOiAjRkY4MDAwOyBjb2xvcjojMDAw
MDAwOyI+MjIsOTg8L3RkPgo8dGQgc3R5bGU9ImJhY2tncm91bmQ6ICNGRjgwMDA7
IGNvbG9yOiMwMDAwMDA7Ij4yNSw3ODwvdGQ+Cjx0ZCBzdHlsZT0iYmFja2dyb3Vu
ZDogI0ZGODAwMDsgY29sb3I6IzAwMDAwMDsiPjI1LDkzPC90ZD4KPHRkIHN0eWxl
PSJiYWNrZ3JvdW5kOiAjRkY4MDAwOyBjb2xvcjojMDAwMDAwOyI+MjMsODE8L3Rk
Pgo8dGQgc3R5bGU9ImJhY2tncm91bmQ6ICNGRkNDNjY7IGNvbG9yOiMwMDAwMDA7
Ij4xOSw5MDwvdGQ+Cjx0ZCBzdHlsZT0iYmFja2dyb3VuZDogI0ZGRkY5OTsgY29s
b3I6IzAwMDAwMDsiPjE2LDA5PC90ZD4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kOiAj
RkZGRkNDOyBjb2xvcjojMDAwMDAwOyI+MTMsNDE8L3RkPgo8L3RyPgo8dHI+Cjx0
aCBzdHlsZT0iYmFja2dyb3VuZDogIzk5Q0NDQzsgY29sb3I6IzAwMDA4MDsiIGhl
aWdodD0iMTY7Ij5UZW1wLiBtaW4uIC8gwrBDPC90aD4KPHRkIHN0eWxlPSJiYWNr
Z3JvdW5kOiAjODBGRkZGOyBjb2xvcjogYmxhY2s7Ij44LDA4PC90ZD4KPHRkIHN0
eWxlPSJiYWNrZ3JvdW5kOiAjODBGRkZGOyBjb2xvcjogYmxhY2s7Ij44LDE2PC90
ZD4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kOiAjODBGRkZGOyBjb2xvcjogYmxhY2s7
Ij45LDYwPC90ZD4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kOiAjRkZGRkZGOyBjb2xv
cjogYmxhY2s7Ij4xMSw2MjwvdGQ+Cjx0ZCBzdHlsZT0iYmFja2dyb3VuZDogI0ZG
RkZDQzsgY29sb3I6IGJsYWNrOyI+MTQsODM8L3RkPgo8dGQgc3R5bGU9ImJhY2tn
cm91bmQ6ICNGRkNDNjY7IGNvbG9yOiBibGFjazsiPjE4LDQ5PC90ZD4KPHRkIHN0
eWxlPSJiYWNrZ3JvdW5kOiAjRkY4MDAwOyBjb2xvcjogYmxhY2s7Ij4yMSwxODwv
dGQ+Cjx0ZCBzdHlsZT0iYmFja2dyb3VuZDogI0ZGODAwMDsgY29sb3I6IGJsYWNr
OyI+MjEsNTE8L3RkPgo8dGQgc3R5bGU9ImJhY2tncm91bmQ6ICNGRkNDNjY7IGNv
bG9yOiBibGFjazsiPjE5LDI4PC90ZD4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kOiAj
RkZGRjk5OyBjb2xvcjogYmxhY2s7Ij4xNSw1NzwvdGQ+Cjx0ZCBzdHlsZT0iYmFj
a2dyb3VuZDogI0ZGRkZGRjsgY29sb3I6IGJsYWNrOyI+MTEsOTE8L3RkPgo8dGQg
c3R5bGU9ImJhY2tncm91bmQ6ICM4MEZGRkY7IGNvbG9yOiBibGFjazsiPjksMjU8
L3RkPgo8L3RyPgo8dHI+Cjx0aCBzdHlsZT0iYmFja2dyb3VuZDogIzk5Q0NDQzsg
Y29sb3I6IzAwMDA4MDsiIGhlaWdodD0iMTY7Ij5Ow7ptZXJvIGRlIGTDrWFzIGRl
IGxsdXZpYTwvdGg+Cjx0ZCBzdHlsZT0iYmFja2dyb3VuZDogI0FGRUVFRTsgY29s
b3I6IGJsYWNrOyI+NSw5PC90ZD4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kOiAjRTBG
RkZGOyBjb2xvcjogYmxhY2s7Ij41LDI8L3RkPgo8dGQgc3R5bGU9ImJhY2tncm91
bmQ6ICNBRkVFRUU7IGNvbG9yOiBibGFjazsiPjYsNzwvdGQ+Cjx0ZCBzdHlsZT0i
YmFja2dyb3VuZDogI0FGRUVFRTsgY29sb3I6IGJsYWNrOyI+NiwwPC90ZD4KPHRk
IHN0eWxlPSJiYWNrZ3JvdW5kOiAjQUZFRUVFOyBjb2xvcjogYmxhY2s7Ij41LDY8
L3RkPgo8dGQgc3R5bGU9ImJhY2tncm91bmQ6ICNGRkZGRkY7IGNvbG9yOiBibGFj
azsiPjIsODwvdGQ+Cjx0ZCBzdHlsZT0iYmFja2dyb3VuZDogI0ZGRkZGRjsgY29s
b3I6IGJsYWNrOyI+MSwzPC90ZD4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kOiAjRkZG
RkZGOyBjb2xvcjogYmxhY2s7Ij4yLDU8L3RkPgo8dGQgc3R5bGU9ImJhY2tncm91
bmQ6ICNFMEZGRkY7IGNvbG9yOiBibGFjazsiPjQsNTwvdGQ+Cjx0ZCBzdHlsZT0i
YmFja2dyb3VuZDogIzg3Q0VFQjsgY29sb3I6IGJsYWNrOyI+Nyw1PC90ZD4KPHRk
IHN0eWxlPSJiYWNrZ3JvdW5kOiAjODdDRUVCOyBjb2xvcjogYmxhY2s7Ij43LDc8
L3RkPgo8dGQgc3R5bGU9ImJhY2tncm91bmQ6ICNBRkVFRUU7IGNvbG9yOiBibGFj
azsiPjYsODwvdGQ+CjwvdHI+Cjx0cj4KPHRkIGNvbHNwYW49IjE0IiBzdHlsZT0i
dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjkwJTsiPjxpPkZ1ZW50ZSYjMTYw
OzogPGEgaHJlZj0iaHR0cDovL3d3dy52aXNpdG1vbmFjby5jb20vaW5kZXguY2Zt
P2Z1c2VhY3Rpb249UGFnZS52aWV3UGFnZSZhbXA7cGFnZUlkPTc4NSIgY2xhc3M9
ImV4dGVybmFsIHRleHQiIHJlbD0ibm9mb2xsb3ciPkNsaW1hIGRlIE3Ds25hY28s
IHd3dy52aXNpdG1vbmFjby5jb20sIE1veWVubmUgZGVzIGFubsOpZXMgMTkxMSDD
oCAxOTg1PC9hPjwvaT48L3RkPgo8L3RyPgo8L3RhYmxlPgo8aDI+PHNwYW4gY2xh
c3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPU0l
QzMlQjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2VjdGlvbj0yMiIgdGl0bGU9
IkVkaXRhciBzZWNjacOzbjogRWNvbm9tw61hIj5lZGl0YXI8L2E+XTwvc3Bhbj4g
PHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iRWNvbm9tLkMzLkFEYSI+RWNv
bm9tw61hPC9zcGFuPjwvaDI+CjxkaXYgY2xhc3M9InRodW1iIHRyaWdodCI+Cjxk
aXYgY2xhc3M9InRodW1iaW5uZXIiIHN0eWxlPSJ3aWR0aDoxNTJweDsiPjxhIGhy
ZWY9Ii93aWtpL0FyY2hpdm86TW9uYWNvLTFldXJvXzIucG5nIiBjbGFzcz0iaW1h
Z2UiPjxpbWcgYWx0PSIiIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3Jn
L3dpa2lwZWRpYS9jb21tb25zLzkvOWIvTW9uYWNvLTFldXJvXzIucG5nIiB3aWR0
aD0iMTUwIiBoZWlnaHQ9IjE1MyIgY2xhc3M9InRodW1iaW1hZ2UiIC8+PC9hPgo8
ZGl2IGNsYXNzPSJ0aHVtYmNhcHRpb24iPgo8ZGl2IGNsYXNzPSJtYWduaWZ5Ij48
YSBocmVmPSIvd2lraS9BcmNoaXZvOk1vbmFjby0xZXVyb18yLnBuZyIgY2xhc3M9
ImludGVybmFsIiB0aXRsZT0iQXVtZW50YXIiPjxpbWcgc3JjPSJodHRwOi8vYml0
cy53aWtpbWVkaWEub3JnL3NraW5zLTEuNS9jb21tb24vaW1hZ2VzL21hZ25pZnkt
Y2xpcC5wbmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxMSIgYWx0PSIiIC8+PC9hPjwv
ZGl2PgpNb25lZGEgZGUgMeKCrCBkZSBNw7NuYWNvPC9kaXY+CjwvZGl2Pgo8L2Rp
dj4KPHRhYmxlIHN0eWxlPSIiIGNsYXNzPSJwbGFpbmxpbmtzIGFtYm94IGFtYm94
LXN0eWxlIj4KPHRyPgo8dGQgY2xhc3M9ImFtYm94LWltYWdlIj4KPGRpdiBzdHls
ZT0id2lkdGg6NTJweDsiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86VHJhbnNsYXRp
b25fYXJyb3cuc3ZnIiBjbGFzcz0iaW1hZ2UiIHRpdGxlPSJJY29ubyBtYWxhIHRy
YWR1Y2Npw7NuIj48aW1nIGFsdD0iSWNvbm8gbWFsYSB0cmFkdWNjacOzbiIgc3Jj
PSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMv
dGh1bWIvMi8yYS9UcmFuc2xhdGlvbl9hcnJvdy5zdmcvNTBweC1UcmFuc2xhdGlv
bl9hcnJvdy5zdmcucG5nIiB3aWR0aD0iNTAiIGhlaWdodD0iMTciIC8+PC9hPjwv
ZGl2Pgo8L3RkPgo8dGQgY2xhc3M9ImFtYm94LXRleHQiPjxiPkVsIHRleHRvIHF1
ZSBzaWd1ZSBlcyB1bmEgdHJhZHVjY2nDs24gZGVmZWN0dW9zYSBvIGluY29tcGxl
dGEuPC9iPjxiciAvPgo8c21hbGw+U2kgZGVzZWFzIGNvbGFib3JhciBjb24gV2lr
aXBlZGlhLCBidXNjYSBlbCBhcnTDrWN1bG8gb3JpZ2luYWwgeSA8c3BhbiBjbGFz
cz0icGxhaW5saW5rcyI+PGEgaHJlZj0iaHR0cDovL2VzLndpa2lwZWRpYS5vcmcv
dy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0IiBj
bGFzcz0iZXh0ZXJuYWwgdGV4dCIgcmVsPSJub2ZvbGxvdyI+bWVqb3JhIG8gZmlu
YWxpemEgZXN0YSB0cmFkdWNjacOzbjwvYT4uPGJyIC8+ClB1ZWRlcyBkYXIgYXZp
c28gYWwgYXV0b3IgcHJpbmNpcGFsIGRlbCBhcnTDrWN1bG8gcGVnYW5kbyBlbCBz
aWd1aWVudGUgY8OzZGlnbyBlbiBzdSBww6FnaW5hIGRlIGRpc2N1c2nDs246IDxj
b2RlPnt7c3Vic3Q6QXZpc28gbWFsdHJhZHVjaWRvfE3Ds25hY299fSB+fn5+PC9j
b2RlPjwvc3Bhbj48L3NtYWxsPjwvdGQ+CjwvdHI+CjwvdGFibGU+CjxkaXYgY2xh
c3M9Im5vcHJpbnQgQVAiIHN0eWxlPSJtYXJnaW46MCAwIDAuMmV4IDFlbSI+PGk+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4NyUiPkFydMOtY3VsbyBwcmluY2lwYWw6
PC9zcGFuPiA8YSBocmVmPSIvd2lraS9FY29ub20lQzMlQURhX2RlX00lQzMlQjNu
YWNvIiB0aXRsZT0iRWNvbm9tw61hIGRlIE3Ds25hY28iPkVjb25vbcOtYSBkZSBN
w7NuYWNvPC9hPjwvaT48L2Rpdj4KPGRpdiBjbGFzcz0idGh1bWIgdHJpZ2h0Ij4K
PGRpdiBjbGFzcz0idGh1bWJpbm5lciIgc3R5bGU9IndpZHRoOjE1MnB4OyI+PGEg
aHJlZj0iL3dpa2kvQXJjaGl2bzpIb3RlbF9kZV9QYXJpc18oTW9udGUtQ2FybG8p
LmpwZyIgY2xhc3M9ImltYWdlIj48aW1nIGFsdD0iIiBzcmM9Imh0dHA6Ly91cGxv
YWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi81LzViL0hv
dGVsX2RlX1BhcmlzXyUyOE1vbnRlLUNhcmxvJTI5LmpwZy8xNTBweC1Ib3RlbF9k
ZV9QYXJpc18lMjhNb250ZS1DYXJsbyUyOS5qcGciIHdpZHRoPSIxNTAiIGhlaWdo
dD0iMTEzIiBjbGFzcz0idGh1bWJpbWFnZSIgLz48L2E+CjxkaXYgY2xhc3M9InRo
dW1iY2FwdGlvbiI+CjxkaXYgY2xhc3M9Im1hZ25pZnkiPjxhIGhyZWY9Ii93aWtp
L0FyY2hpdm86SG90ZWxfZGVfUGFyaXNfKE1vbnRlLUNhcmxvKS5qcGciIGNsYXNz
PSJpbnRlcm5hbCIgdGl0bGU9IkF1bWVudGFyIj48aW1nIHNyYz0iaHR0cDovL2Jp
dHMud2lraW1lZGlhLm9yZy9za2lucy0xLjUvY29tbW9uL2ltYWdlcy9tYWduaWZ5
LWNsaXAucG5nIiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIGFsdD0iIiAvPjwvYT48
L2Rpdj4KPGEgaHJlZj0iL3dpa2kvSG90ZWxfZGVfUGFyJUMzJUFEcyIgdGl0bGU9
IkhvdGVsIGRlIFBhcsOtcyI+SG90ZWwgZGUgUGFyw61zPC9hPiwgTcOzbmFjbywg
YXRyYWNjacOzbiB0dXLDrXN0aWNhPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPHA+VW5h
IGRlIGxhIHByaW5jaXBhbGVzIGZ1ZW50ZXMgZGUgaW5ncmVzb3MgZGUgTcOzbmFj
byBlcyBlbCB0dXJpc21vLiBDYWRhIGHDsW8sIG11Y2hvcyB2aXNpdGFudGVzIHNl
IHNpZW50ZW4gYXRyYcOtZG9zIHBvciBzdSBhZ3JhZGFibGUgY2xpbWEgeSBzdSBs
dWpvc28gY2FzaW5vIChhIGxvcyBwcm9waW9zIGNpdWRhZGFub3MgZGUgTcOzbmFj
byBubyBzZSBsZXMgcGVybWl0ZSBqdWdhciBlbiBlbCBjYXNpbm8uKSBFbiAyMDAx
LCB1biBudWV2byBlIGltcG9ydGFudGUgcHJveWVjdG8gZGUgY29uc3RydWNjacOz
biBhbXBsacOzIGVsIG11ZWxsZSB1dGlsaXphZG8gcG9yIGNydWNlcm9zIGVuIGVs
IHB1ZXJ0byBwcmluY2lwYWwuIEVsIFByaW5jaXBhZG8gaGEgdHJhdGFkbyBkZSBk
aXZlcnNpZmljYXIgbG9zIHNlcnZpY2lvcyB5IGxhcyBwZXF1ZcOxYXMgaW5kdXN0
cmlhcyBkZSBhbHRvIHZhbG9yIGHDsWFkaWRvLCBubyBhc8OtIGFxdWVsbGFzIGlu
ZHVzdHJpYXMgY29udGFtaW5hbnRlcyB0YWxlcyBjb21vIGxhcyBkZSBjb3Ntw6l0
aWNvcyB5IGJpb3TDqXJtaWNhcy48L3A+CjxwPkVsIGVzdGFkbyBtYW50aWVuZSBs
b3MgbW9ub3BvbGlvcyBlbiBudW1lcm9zb3Mgc2VjdG9yZXMsIGNvbW8gbGEgZGlz
dHJpYnVjacOzbiBkZSB0YWJhY28geSBlbCBzZXJ2aWNpbyBwb3N0YWwuIExhIHJl
ZCB0ZWxlZsOzbmljYSAoTcOzbmFjbyBUZWxlY29tKSBmdWUgcHJvcGllZGFkIGRl
bCBlc3RhZG8gaW5pY2lhbG1lbnRlLCBwZXJvIGFjdHVhbG1lbnRlIGVsIGVzdGFk
byBwb3NlZSBlbCA0NSUgZGUgc3VzIGFjY2lvbmVzLCBlbCA0OSUgcGVydGVuZWNl
IGEgdGVsZWZvbm9zIGZpam9zIGUgaW5hbMOhbWJyaWNvcyBlbCA2JSBhIENvbXBh
Z25pZSBNb27DqWdhc3F1ZSBkZSBCYW5xdWUuIExhIHRlbGVmb27DrWEgc2lndWUg
c2llbmRvIHVuIG1vbm9wb2xpbyBhY3R1YWxtZW50ZS48L3A+CjxwPkxvcyBuaXZl
bGVzIGRlIHZpZGEgc29uIGFsdG9zLCBjb21wYXJhYmxlcyBhIGxvcyBkZSBsYXMg
w6FyZWFzIG1ldHJvcG9saXRhbmFzIHByw7NzcGVyYXMgZnJhbmNlc2FzLjwvcD4K
PHA+TcOzbmFjbyBubyBlcyBtaWVtYnJvIGRlIGxhIFVuacOzbiBFdXJvcGVhLCBw
ZXJvIGVzdMOhIGVzdHJlY2hhbWVudGUgdmluY3VsYWRvIGEgZWxsYSBhIHRyYXbD
qXMgZGUgc3UgdW5pw7NuIGFkdWFuZXJhIGNvbiBGcmFuY2lhLiBMYSBtb25lZGEg
ZGUgdXNvIGNvcnJpZW50ZSBlcyBlbCBldXJvLCBjb24gZGlzZcOxb3MgbW9uZWdh
c2NvcyBlbiBzdSBjYXJhIG5hY2lvbmFsLiBBbnRlcyBkZSAyMDAyIE3Ds25hY28g
dGVuw61hIHN1IHByb3BpYSBtb25lZGE6IGVsIGZyYW5jbyBtb25lZ2FzY28uPC9w
Pgo8aDM+PHNwYW4gY2xhc3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5k
ZXgucGhwP3RpdGxlPU0lQzMlQjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2Vj
dGlvbj0yMyIgdGl0bGU9IkVkaXRhciBzZWNjacOzbjogRmlzY2FsIj5lZGl0YXI8
L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iRmlzY2Fs
Ij5GaXNjYWw8L3NwYW4+PC9oMz4KPHA+TcOzbmFjbyBubyBhcGxpY2EgZ3JhdsOh
bWVuZXMgc29icmUgbGEgcmVudGEgYSBzdXMgaGFiaXRhbnRlcy4gTGEgYXVzZW5j
aWEgZGUgdW4gaW1wdWVzdG8gc29icmUgbGEgcmVudGEgcGVyc29uYWwgZW4gZWwg
UHJpbmNpcGFkbyBoYSBhdHJhw61kbyBhIHVuIG7Dum1lcm8gY29uc2lkZXJhYmxl
IGRlIHJpY29zICJyZWZ1Z2lhZG9zIGZpc2NhbGVzIiwgcmVzaWRlbnRlcyBkZSBw
YcOtc2VzIGV1cm9wZW9zIHF1ZSBvYnRpZW5lbiBsYSBtYXlvcsOtYSBkZSBzdXMg
aW5ncmVzb3MgZGUgbGEgYWN0aXZpZGFkIGZ1ZXJhIGRlIE3Ds25hY28uIEFsZ3Vu
b3Mgc29uIGNlbGVicmlkYWRlcyBjb21vIGNvbmR1Y3RvcmVzIGRlIEbDs3JtdWxh
IFVubywgcGVybyBsYSBncmFuIG1heW9yw61hIGRlIGVsbG9zIHNvbiBob21icmVz
IGRlIG5lZ29jaW9zIG1lbm9zIGNvbm9jaWRvcy48L3A+CjxoND48c3BhbiBjbGFz
cz0iZWRpdHNlY3Rpb24iPls8YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9TSVD
MyVCM25hY28mYW1wO2FjdGlvbj1lZGl0JmFtcDtzZWN0aW9uPTI0IiB0aXRsZT0i
RWRpdGFyIHNlY2Npw7NuOiBDYXNpbm8gZGUgTW9udGVjYXJsbyI+ZWRpdGFyPC9h
Pl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IkNhc2lub19k
ZV9Nb250ZWNhcmxvIj5DYXNpbm8gZGUgTW9udGVjYXJsbzwvc3Bhbj48L2g0Pgo8
ZGl2IGNsYXNzPSJub3ByaW50IEFQIiBzdHlsZT0ibWFyZ2luOjAgMCAwLjJleCAx
ZW0iPjxpPjxzcGFuIHN0eWxlPSJmb250LXNpemU6ODclIj5BcnTDrWN1bG8gcHJp
bmNpcGFsOjwvc3Bhbj4gPGEgaHJlZj0iL3dpa2kvQ2FzaW5vX2RlX01vbnRlX0Nh
cmxvIiB0aXRsZT0iQ2FzaW5vIGRlIE1vbnRlIENhcmxvIiBjbGFzcz0ibXctcmVk
aXJlY3QiPkNhc2lubyBkZSBNb250ZSBDYXJsbzwvYT48L2k+PC9kaXY+CjxkaXYg
Y2xhc3M9InRodW1iIHRyaWdodCI+CjxkaXYgY2xhc3M9InRodW1iaW5uZXIiIHN0
eWxlPSJ3aWR0aDoxNTJweDsiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86UmVhbF9N
b250ZV9DYXJsb19DYXNpbm8uanBnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSIi
IHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21t
b25zL3RodW1iLzMvMzYvUmVhbF9Nb250ZV9DYXJsb19DYXNpbm8uanBnLzE1MHB4
LVJlYWxfTW9udGVfQ2FybG9fQ2FzaW5vLmpwZyIgd2lkdGg9IjE1MCIgaGVpZ2h0
PSIxMDAiIGNsYXNzPSJ0aHVtYmltYWdlIiAvPjwvYT4KPGRpdiBjbGFzcz0idGh1
bWJjYXB0aW9uIj4KPGRpdiBjbGFzcz0ibWFnbmlmeSI+PGEgaHJlZj0iL3dpa2kv
QXJjaGl2bzpSZWFsX01vbnRlX0NhcmxvX0Nhc2luby5qcGciIGNsYXNzPSJpbnRl
cm5hbCIgdGl0bGU9IkF1bWVudGFyIj48aW1nIHNyYz0iaHR0cDovL2JpdHMud2lr
aW1lZGlhLm9yZy9za2lucy0xLjUvY29tbW9uL2ltYWdlcy9tYWduaWZ5LWNsaXAu
cG5nIiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIGFsdD0iIiAvPjwvYT48L2Rpdj4K
PGEgaHJlZj0iL3dpa2kvQ2FzaW5vX2RlX01vbnRlY2FybG8iIHRpdGxlPSJDYXNp
bm8gZGUgTW9udGVjYXJsbyI+Q2FzaW5vIGRlIE1vbnRlY2FybG88L2E+LCBNw7Nu
YWNvLjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxwPkVuIGVsIGHDsW8gPGEgaHJlZj0i
L3dpa2kvMjAwMCIgdGl0bGU9IjIwMDAiPjIwMDA8L2E+LCB1biBpbmZvcm1lIGRl
IGxvcyBwYXJsYW1lbnRhcmlvcyBmcmFuY2VzZXMgQXJuYXVkIE1vbnRlYm91cmcg
eSBWaW5jZW50IFBlaWxsb24gZGVjw61hIHF1ZSBNw7NuYWNvIGhhYsOtYSBhbGVn
YWRvIGxhIGxheGl0dWQgZGUgbGFzIHBvbMOtdGljYXMgZGUgYmxhbnF1ZW8gZGUg
ZGluZXJvLCBpbmNsdXNvIGRlbnRybyBkZSBzdSBmYW1vc28gY2FzaW5vLCB5IHF1
ZSBlbCBHb2JpZXJubyBkZSBNw7NuYWNvIGVqZXJjw61hIHByZXNpw7NuIHBvbMOt
dGljYSBzb2JyZSBlbCBwb2RlciBqdWRpY2lhbCBhIGZpbiBkZSBxdWUgbG9zIHBy
ZXN1bnRvcyBjcsOtbWVuZXMgbm8gc2VhbiBhZGVjdWFkYW1lbnRlIGludmVzdGln
YWRvcy48L3A+CjxwPkxhIE9yZ2FuaXphY2nDs24gcGFyYSBsYSBDb29wZXJhY2nD
s24geSBlbCBEZXNhcnJvbGxvIEVjb27Ds21pY28gKE9DREUpLCBwdWJsaWPDsyBl
biBlbCBhw7FvIDxhIGhyZWY9Ii93aWtpLzE5OTgiIHRpdGxlPSIxOTk4Ij4xOTk4
PC9hPiB1biBwcmltZXIgaW5mb3JtZSBzb2JyZSBsYXMgY29uc2VjdWVuY2lhcyBm
aXNjYWxlcyBkZSBsb3Mgc2lzdGVtYXMgZmluYW5jaWVyb3MgZGUgYWxndW5vcyBw
YcOtc2VzLiBNw7NuYWNvIGFwYXJlY8OtYSBlbiBsYSBsaXN0YSBkZSBsb3MgcGHD
rXNlcyBjb24gcG9jYSBjbGFyaWRhZCBmaXNjYWwsIHkgZW4gZWwgYcOxbyA8YSBo
cmVmPSIvd2lraS8yMDA0IiB0aXRsZT0iMjAwNCI+MjAwNDwvYT4sIGxhIE9DREUg
ZGVudW5jacOzIGVuIHN1IMO6bHRpbW8gaW5mb3JtZSBzdWJyYXlhbmRvIGxhIGZh
bHRhIGRlIGNvb3BlcmFjacOzbiBkZSBlc3RlIHByaW5jaXBhZG8gcGFyYSByZXZl
bGFyIGxhIGluZm9ybWFjacOzbiBmaW5hbmNpZXJhIGRlIHN1cyBjaXVkYWRhbm9z
LCBhc8OtIHRhbWJpw6luIGNvbW8gYSBBbmRvcnJhLCBlbCBQcmluY2lwYWRvIGRl
IExpZWNodGVuc3RlaW4sIExpYmVyaWEgeSBsYSBSZXDDumJsaWNhIGRlIGxhcyBJ
c2xhcyBNYXJzaGFsbC48L3A+CjxwPkVuIGVsIGHDsW8gMjAwMCwgZWwgR3J1cG8g
ZGUgQWNjacOzbiBGaW5hbmNpZXJhIChHQUZJKSBzdWJyYXnDsyBxdWUgTcOzbmFj
byBwYWRlY2UgdW5hIGZhbHRhIGRlIHJlY3Vyc29zIGFkZWN1YWRvcy4gQWwgUHJp
bmNpcGFkbyB5YSBubyBzZSBsbyBjb25zaWRlcmEgY3VscGFibGUgZW4gZWwgaW5m
b3JtZSBkZSA8YSBocmVmPSIvd2lraS8yMDA1IiB0aXRsZT0iMjAwNSI+MjAwNTwv
YT4gZGVsIEdBRkksIGFzw60gY29tbyBhIHRvZG9zIGxvcyBkZW3DoXMgdGVycml0
b3Jpb3MgZW4gZWwgaW5mb3JtZSBkZWwgPGEgaHJlZj0iL3dpa2kvMjAwNiIgdGl0
bGU9IjIwMDYiPjIwMDY8L2E+LjwvcD4KPHA+RGVzZGUgZWwgYcOxbyAyMDAzLCBl
bCA8YSBocmVmPSIvd2lraS9Gb25kb19Nb25ldGFyaW9fSW50ZXJuYWNpb25hbCIg
dGl0bGU9IkZvbmRvIE1vbmV0YXJpbyBJbnRlcm5hY2lvbmFsIj5Gb25kbyBNb25l
dGFyaW8gSW50ZXJuYWNpb25hbDwvYT4gKEZNSSkgaGEgZGV0ZXJtaW5hZG8gcXVl
IE3Ds25hY28sIGp1bnRvIGNvbiBvdHJvcyAzNiB0ZXJyaXRvcmlvcywgc2UgZW5j
dWVudHJhbiBjbGFzaWZpY2Fkb3MgY29tbyBwYXJhw61zb3MgZmlzY2FsZXMuPC9w
Pgo8cD5FbCA8YSBocmVmPSIvd2lraS9Db25zZWpvX2RlX0V1cm9wYSIgdGl0bGU9
IkNvbnNlam8gZGUgRXVyb3BhIj5Db25zZWpvIGRlIEV1cm9wYTwvYT4gZGVjaWRp
w7Mgb2JsaWdhciBhIGVtaXRpciBpbmZvcm1lcyBmaXNjYWxlcyBhIDIyIHRlcnJp
dG9yaW9zLCBNw7NuYWNvIGluY2x1aWRvLiBQb3IgbG8gdGFudG8sIHNlIGV2YWx1
w7MgZW50cmUgbG9zIGHDsW9zIDE5OTggeSAyMDAwIHVuYSBwcmltZXJhIHJvbmRh
LiBNw7NuYWNvIGVzIGVsIMO6bmljbyB0ZXJyaXRvcmlvIHF1ZSBzZSBuZWfDsyBh
IHJlYWxpemFyIGxhIHNlZ3VuZGEgcm9uZGEsIGluaWNpYWxtZW50ZSBwcmV2aXN0
byBwYXJhIGxvcyBhw7FvcyAyMDAxIHkgMjAwMywgbWllbnRyYXMgcXVlIGxvcyBv
dHJvcyAyMSB0ZXJyaXRvcmlvcyBlc3BlcmFuIGxhIGFwbGljYWNpw7NuIGRlIGxh
IHRlcmNlcmEgeSDDumx0aW1hIHJvbmRhLCBwcmV2aXN0YSBwYXJhIGxvcyBhw7Fv
cyAyMDA1IHkgMjAwNy48L3A+CjxkaXYgY2xhc3M9ImNlbnRlciI+CjxkaXYgY2xh
c3M9InRodW1iIHRub25lIj4KPGRpdiBjbGFzcz0idGh1bWJpbm5lciIgc3R5bGU9
IndpZHRoOjQ1MnB4OyI+PGEgaHJlZj0iL3dpa2kvQXJjaGl2bzpNb25hY29fQ2l0
eV8wMDEuanBnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSIiIHNyYz0iaHR0cDov
L3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iL2Iv
YmEvTW9uYWNvX0NpdHlfMDAxLmpwZy80NTBweC1Nb25hY29fQ2l0eV8wMDEuanBn
IiB3aWR0aD0iNDUwIiBoZWlnaHQ9IjE0MyIgY2xhc3M9InRodW1iaW1hZ2UiIC8+
PC9hPgo8ZGl2IGNsYXNzPSJ0aHVtYmNhcHRpb24iPgo8ZGl2IGNsYXNzPSJtYWdu
aWZ5Ij48YSBocmVmPSIvd2lraS9BcmNoaXZvOk1vbmFjb19DaXR5XzAwMS5qcGci
IGNsYXNzPSJpbnRlcm5hbCIgdGl0bGU9IkF1bWVudGFyIj48aW1nIHNyYz0iaHR0
cDovL2JpdHMud2lraW1lZGlhLm9yZy9za2lucy0xLjUvY29tbW9uL2ltYWdlcy9t
YWduaWZ5LWNsaXAucG5nIiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIGFsdD0iIiAv
PjwvYT48L2Rpdj4KUmVnacOzbiBkZSA8YSBocmVmPSIvd2lraS9MYV9Db25kYW1p
bmUiIHRpdGxlPSJMYSBDb25kYW1pbmUiPkxhIENvbmRhbWluZTwvYT4uPC9kaXY+
CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxoMj48c3BhbiBjbGFzcz0iZWRpdHNlY3Rp
b24iPls8YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1w
O2FjdGlvbj1lZGl0JmFtcDtzZWN0aW9uPTI1IiB0aXRsZT0iRWRpdGFyIHNlY2Np
w7NuOiBEZW1vZ3JhZsOtYSI+ZWRpdGFyPC9hPl08L3NwYW4+IDxzcGFuIGNsYXNz
PSJtdy1oZWFkbGluZSIgaWQ9IkRlbW9ncmFmLkMzLkFEYSI+RGVtb2dyYWbDrWE8
L3NwYW4+PC9oMj4KPGRpdiBjbGFzcz0idGh1bWIgdHJpZ2h0Ij4KPGRpdiBjbGFz
cz0idGh1bWJpbm5lciIgc3R5bGU9IndpZHRoOjIxMnB4OyI+PGEgaHJlZj0iL3dp
a2kvQXJjaGl2bzpNb25hY29fYWVyaWFsX3ZpZXcuanBnIiBjbGFzcz0iaW1hZ2Ui
PjxpbWcgYWx0PSIiIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dp
a2lwZWRpYS9jb21tb25zL3RodW1iLzMvM2IvTW9uYWNvX2FlcmlhbF92aWV3Lmpw
Zy8yMTBweC1Nb25hY29fYWVyaWFsX3ZpZXcuanBnIiB3aWR0aD0iMjEwIiBoZWln
aHQ9IjEzMCIgY2xhc3M9InRodW1iaW1hZ2UiIC8+PC9hPgo8ZGl2IGNsYXNzPSJ0
aHVtYmNhcHRpb24iPgo8ZGl2IGNsYXNzPSJtYWduaWZ5Ij48YSBocmVmPSIvd2lr
aS9BcmNoaXZvOk1vbmFjb19hZXJpYWxfdmlldy5qcGciIGNsYXNzPSJpbnRlcm5h
bCIgdGl0bGU9IkF1bWVudGFyIj48aW1nIHNyYz0iaHR0cDovL2JpdHMud2lraW1l
ZGlhLm9yZy9za2lucy0xLjUvY29tbW9uL2ltYWdlcy9tYWduaWZ5LWNsaXAucG5n
IiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIGFsdD0iIiAvPjwvYT48L2Rpdj4KVmlz
dGEgYcOpcmVhIGRlIE3Ds25hY28uPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPHRhYmxl
IGNsYXNzPSJ3aWtpdGFibGUgc29ydGFibGUiIGFsaWduPSJyaWdodCI+Cjx0cj4K
PHRoPk5hY2lvbmFsaWRhZDwvdGg+Cjx0aD5Qb2JsYWNpw7NuPHN1cCBpZD0iY2l0
ZV9yZWYtMTMiIGNsYXNzPSJyZWZlcmVuY2UiPjxhIGhyZWY9IiNjaXRlX25vdGUt
MTMiPjxzcGFuIGNsYXNzPSJjb3JjaGV0ZS1sbGFtYWRhIj5bPC9zcGFuPjE0PHNw
YW4gY2xhc3M9ImNvcmNoZXRlLWxsYW1hZGEiPl08L3NwYW4+PC9hPjwvc3VwPjwv
dGg+CjwvdHI+Cjx0cj4KPHRkPlRvdGFsPC90ZD4KPHRkPjMyLjc5NjwvdGQ+Cjwv
dHI+Cjx0cj4KPHRkPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86RmxhZ19vZl9Nb25h
Y28uc3ZnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSJGbGFnIG9mIE1vbmFjby5z
dmciIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9j
b21tb25zL3RodW1iL2UvZWEvRmxhZ19vZl9Nb25hY28uc3ZnLzIycHgtRmxhZ19v
Zl9Nb25hY28uc3ZnLnBuZyIgd2lkdGg9IjIyIiBoZWlnaHQ9IjE4IiBjbGFzcz0i
dGh1bWJib3JkZXIiIC8+PC9hPiYjMTYwOzxzdHJvbmcgY2xhc3M9InNlbGZsaW5r
Ij5Nw7NuYWNvPC9zdHJvbmc+PC90ZD4KPHRkPjYuMDg5PC90ZD4KPC90cj4KPHRy
Pgo8dGQ+PHNwYW4gY2xhc3M9ImZsYWdpY29uIj48aW1nIGFsdD0iQmFuZGVyYSBk
ZSBGcmFuY2lhIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtp
cGVkaWEvY29tbW9ucy90aHVtYi9jL2MzL0ZsYWdfb2ZfRnJhbmNlLnN2Zy8yMHB4
LUZsYWdfb2ZfRnJhbmNlLnN2Zy5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIxMyIg
Y2xhc3M9InRodW1iYm9yZGVyIiAvPiYjMTYwOzwvc3Bhbj48YSBocmVmPSIvd2lr
aS9GcmFuY2lhIiB0aXRsZT0iRnJhbmNpYSI+RnJhbmNpYTwvYT48L3RkPgo8dGQ+
MTAuMjI5PC90ZD4KPC90cj4KPHRyPgo8dGQ+PHNwYW4gY2xhc3M9ImZsYWdpY29u
Ij48aW1nIGFsdD0iQmFuZGVyYSBkZSBJdGFsaWEiIHNyYz0iaHR0cDovL3VwbG9h
ZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iLzAvMDMvRmxh
Z19vZl9JdGFseS5zdmcvMjBweC1GbGFnX29mX0l0YWx5LnN2Zy5wbmciIHdpZHRo
PSIyMCIgaGVpZ2h0PSIxMyIgY2xhc3M9InRodW1iYm9yZGVyIiAvPiYjMTYwOzwv
c3Bhbj48YSBocmVmPSIvd2lraS9JdGFsaWEiIHRpdGxlPSJJdGFsaWEiPkl0YWxp
YTwvYT48L3RkPgo8dGQ+Ni40MTA8L3RkPgo8L3RyPgo8dHI+Cjx0ZD48c3BhbiBj
bGFzcz0iZmxhZ2ljb24iPjxpbWcgYWx0PSJCYW5kZXJhIGRlbCBSZWlubyBVbmlk
byIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2Nv
bW1vbnMvdGh1bWIvYS9hZS9GbGFnX29mX3RoZV9Vbml0ZWRfS2luZ2RvbS5zdmcv
MjBweC1GbGFnX29mX3RoZV9Vbml0ZWRfS2luZ2RvbS5zdmcucG5nIiB3aWR0aD0i
MjAiIGhlaWdodD0iMTAiIGNsYXNzPSJ0aHVtYmJvcmRlciIgLz4mIzE2MDs8L3Nw
YW4+PGEgaHJlZj0iL3dpa2kvUmVpbm9fVW5pZG8iIHRpdGxlPSJSZWlubyBVbmlk
byI+UmVpbm8gVW5pZG88L2E+PC90ZD4KPHRkPjEuNzAzPC90ZD4KPC90cj4KPHRy
Pgo8dGQ+PHNwYW4gY2xhc3M9ImZsYWdpY29uIj48aW1nIGFsdD0iRmxhZyBvZiBT
d2l0emVybGFuZC5zdmciIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3Jn
L3dpa2lwZWRpYS9jb21tb25zL3RodW1iL2YvZjMvRmxhZ19vZl9Td2l0emVybGFu
ZC5zdmcvMjBweC1GbGFnX29mX1N3aXR6ZXJsYW5kLnN2Zy5wbmciIHdpZHRoPSIy
MCIgaGVpZ2h0PSIyMCIgY2xhc3M9InRodW1iYm9yZGVyIiAvPiYjMTYwOzwvc3Bh
bj48YSBocmVmPSIvd2lraS9TdWl6YSIgdGl0bGU9IlN1aXphIj5TdWl6YTwvYT48
L3RkPgo8dGQ+ODkwPC90ZD4KPC90cj4KPHRyPgo8dGQ+PGEgaHJlZj0iL3dpa2kv
QXJjaGl2bzpGbGFnX29mX0dlcm1hbnkuc3ZnIiBjbGFzcz0iaW1hZ2UiPjxpbWcg
YWx0PSJGbGFnIG9mIEdlcm1hbnkuc3ZnIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lr
aW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi9iL2JhL0ZsYWdfb2Zf
R2VybWFueS5zdmcvMjFweC1GbGFnX29mX0dlcm1hbnkuc3ZnLnBuZyIgd2lkdGg9
IjIxIiBoZWlnaHQ9IjEzIiBjbGFzcz0idGh1bWJib3JkZXIiIC8+PC9hPiYjMTYw
OzxhIGhyZWY9Ii93aWtpL0FsZW1hbmlhIiB0aXRsZT0iQWxlbWFuaWEiPkFsZW1h
bmlhPC9hPjwvdGQ+Cjx0ZD44MTI8L3RkPgo8L3RyPgo8dHI+Cjx0ZD48c3BhbiBj
bGFzcz0iZmxhZ2ljb24iPjxpbWcgYWx0PSJGbGFnIG9mIEJlbGdpdW0gKGNpdmls
KS5zdmciIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRp
YS9jb21tb25zL3RodW1iLzkvOTIvRmxhZ19vZl9CZWxnaXVtXyUyOGNpdmlsJTI5
LnN2Zy8yMHB4LUZsYWdfb2ZfQmVsZ2l1bV8lMjhjaXZpbCUyOS5zdmcucG5nIiB3
aWR0aD0iMjAiIGhlaWdodD0iMTMiIGNsYXNzPSJ0aHVtYmJvcmRlciIgLz4mIzE2
MDs8L3NwYW4+PGEgaHJlZj0iL3dpa2kvQiVDMyVBOWxnaWNhIiB0aXRsZT0iQsOp
bGdpY2EiPkLDqWxnaWNhPC9hPjwvdGQ+Cjx0ZD43ODg8L3RkPgo8L3RyPgo8dHI+
Cjx0ZD48c3BhbiBjbGFzcz0iZmxhZ2ljb24iPjxpbWcgYWx0PSJCYW5kZXJhIGRl
IFBvcnR1Z2FsIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtp
cGVkaWEvY29tbW9ucy90aHVtYi81LzVjL0ZsYWdfb2ZfUG9ydHVnYWwuc3ZnLzIw
cHgtRmxhZ19vZl9Qb3J0dWdhbC5zdmcucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0i
MTMiIGNsYXNzPSJ0aHVtYmJvcmRlciIgLz4mIzE2MDs8L3NwYW4+PGEgaHJlZj0i
L3dpa2kvUG9ydHVnYWwiIHRpdGxlPSJQb3J0dWdhbCI+UG9ydHVnYWw8L2E+PC90
ZD4KPHRkPjU2NjwvdGQ+CjwvdHI+Cjx0cj4KPHRkPjxzcGFuIGNsYXNzPSJmbGFn
aWNvbiI+PGltZyBhbHQ9IkJhbmRlcmEgZGUgbG9zIFBhw61zZXMgQmFqb3MiIHNy
Yz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25z
L3RodW1iLzIvMjAvRmxhZ19vZl90aGVfTmV0aGVybGFuZHMuc3ZnLzIwcHgtRmxh
Z19vZl90aGVfTmV0aGVybGFuZHMuc3ZnLnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9
IjEzIiBjbGFzcz0idGh1bWJib3JkZXIiIC8+JiMxNjA7PC9zcGFuPjxhIGhyZWY9
Ii93aWtpL1BhJUMzJUFEc2VzX0Jham9zIiB0aXRsZT0iUGHDrXNlcyBCYWpvcyI+
UGHDrXNlcyBCYWpvczwvYT48L3RkPgo8dGQ+NDI5PC90ZD4KPC90cj4KPHRyPgo8
dGQ+PHNwYW4gY2xhc3M9ImZsYWdpY29uIj48aW1nIGFsdD0iQmFuZGVyYSBkZSBT
dWVjaWEiIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRp
YS9jb21tb25zL3RodW1iLzQvNGMvRmxhZ19vZl9Td2VkZW4uc3ZnLzIwcHgtRmxh
Z19vZl9Td2VkZW4uc3ZnLnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjEzIiBjbGFz
cz0idGh1bWJib3JkZXIiIC8+JiMxNjA7PC9zcGFuPjxhIGhyZWY9Ii93aWtpL1N1
ZWNpYSIgdGl0bGU9IlN1ZWNpYSI+U3VlY2lhPC9hPjwvdGQ+Cjx0ZD4yOTA8L3Rk
Pgo8L3RyPgo8dHI+Cjx0ZD48c3BhbiBjbGFzcz0iZmxhZ2ljb24iPjxpbWcgYWx0
PSJCYW5kZXJhIGRlIEVzcGHDsWEiIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVk
aWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iLzkvOWEvRmxhZ19vZl9TcGFp
bi5zdmcvMjBweC1GbGFnX29mX1NwYWluLnN2Zy5wbmciIHdpZHRoPSIyMCIgaGVp
Z2h0PSIxMyIgY2xhc3M9InRodW1iYm9yZGVyIiAvPiYjMTYwOzwvc3Bhbj48YSBo
cmVmPSIvd2lraS9Fc3BhJUMzJUIxYSIgdGl0bGU9IkVzcGHDsWEiPkVzcGHDsWE8
L2E+PC90ZD4KPHRkPjI4MjwvdGQ+CjwvdHI+Cjx0cj4KPHRkPjxhIGhyZWY9Ii93
aWtpL0FyY2hpdm86RmxhZ19vZl9HcmVlY2Uuc3ZnIiBjbGFzcz0iaW1hZ2UiPjxp
bWcgYWx0PSJGbGFnIG9mIEdyZWVjZS5zdmciIHNyYz0iaHR0cDovL3VwbG9hZC53
aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iLzUvNWMvRmxhZ19v
Zl9HcmVlY2Uuc3ZnLzIwcHgtRmxhZ19vZl9HcmVlY2Uuc3ZnLnBuZyIgd2lkdGg9
IjIwIiBoZWlnaHQ9IjEzIiBjbGFzcz0idGh1bWJib3JkZXIiIC8+PC9hPiYjMTYw
OzxhIGhyZWY9Ii93aWtpL0dyZWNpYSIgdGl0bGU9IkdyZWNpYSI+R3JlY2lhPC9h
PjwvdGQ+Cjx0ZD4yMzc8L3RkPgo8L3RyPgo8dHI+Cjx0ZD48c3BhbiBjbGFzcz0i
ZmxhZ2ljb24iPjxpbWcgYWx0PSJCYW5kZXJhIGRlIEF1c3RyaWEiIHNyYz0iaHR0
cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1i
LzQvNDEvRmxhZ19vZl9BdXN0cmlhLnN2Zy8yMHB4LUZsYWdfb2ZfQXVzdHJpYS5z
dmcucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMTMiIGNsYXNzPSJ0aHVtYmJvcmRl
ciIgLz4mIzE2MDs8L3NwYW4+PGEgaHJlZj0iL3dpa2kvQXVzdHJpYSIgdGl0bGU9
IkF1c3RyaWEiPkF1c3RyaWE8L2E+PC90ZD4KPHRkPjE4MjwvdGQ+CjwvdHI+Cjx0
cj4KPHRkPjxzcGFuIGNsYXNzPSJmbGFnaWNvbiI+PGltZyBhbHQ9IkJhbmRlcmEg
ZGUgRGluYW1hcmNhIiBzcmM9Imh0dHA6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93
aWtpcGVkaWEvY29tbW9ucy90aHVtYi85LzljL0ZsYWdfb2ZfRGVubWFyay5zdmcv
MjBweC1GbGFnX29mX0Rlbm1hcmsuc3ZnLnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9
IjE1IiBjbGFzcz0idGh1bWJib3JkZXIiIC8+JiMxNjA7PC9zcGFuPjxhIGhyZWY9
Ii93aWtpL0RpbmFtYXJjYSIgdGl0bGU9IkRpbmFtYXJjYSI+RGluYW1hcmNhPC9h
PjwvdGQ+Cjx0ZD4xNDI8L3RkPgo8L3RyPgo8dHI+Cjx0ZD5PdHJvczwvdGQ+Cjx0
ZD4yLjk3MTwvdGQ+CjwvdHI+CjwvdGFibGU+CjxkaXYgY2xhc3M9Im5vcHJpbnQg
QVAiIHN0eWxlPSJtYXJnaW46MCAwIDAuMmV4IDFlbSI+PGk+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZTo4NyUiPkFydMOtY3VsbyBwcmluY2lwYWw6PC9zcGFuPiA8YSBo
cmVmPSIvd2lraS9EZW1vZ3JhZiVDMyVBRGFfZGVfTSVDMyVCM25hY28iIHRpdGxl
PSJEZW1vZ3JhZsOtYSBkZSBNw7NuYWNvIj5EZW1vZ3JhZsOtYSBkZSBNw7NuYWNv
PC9hPjwvaT48L2Rpdj4KPHA+RWwgUHJpbmNpcGFkbyBkZSBNw7NuYWNvIHBvc2Vl
IDM1Ljg1NiBoYWJpdGFudGVzLCBkZSBsb3MgY3VhbGVzIHVuIDE2JSBzb24gbW9u
ZWdhc2NvcyBkZSByZWxpZ2nDs24gY2F0w7NsaWNhLCBxdWUgZXMgbGEgcmVsaWdp
w7NuIGRlbCBlc3RhZG8uIEVsIHJlc3RvIGVzdMOhIGNvbXB1ZXN0byBwb3IgaW5t
aWdyYW50ZXMsIGVzcGVjaWFsbWVudGUgZnJhbmNlc2VzICg0NyUpIGUgaXRhbGlh
bm9zICgxNiUpLjwvcD4KPGRpdiBjbGFzcz0idGh1bWIgdHJpZ2h0Ij4KPGRpdiBj
bGFzcz0idGh1bWJpbm5lciIgc3R5bGU9IndpZHRoOjEwMnB4OyI+PGEgaHJlZj0i
L3dpa2kvQXJjaGl2bzpLYXRoZWRyYWxlX21vbmFjby5qcGciIGNsYXNzPSJpbWFn
ZSI+PGltZyBhbHQ9IiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcv
d2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvZS9lYy9LYXRoZWRyYWxlX21vbmFjby5q
cGcvMTAwcHgtS2F0aGVkcmFsZV9tb25hY28uanBnIiB3aWR0aD0iMTAwIiBoZWln
aHQ9IjEyNiIgY2xhc3M9InRodW1iaW1hZ2UiIC8+PC9hPgo8ZGl2IGNsYXNzPSJ0
aHVtYmNhcHRpb24iPgo8ZGl2IGNsYXNzPSJtYWduaWZ5Ij48YSBocmVmPSIvd2lr
aS9BcmNoaXZvOkthdGhlZHJhbGVfbW9uYWNvLmpwZyIgY2xhc3M9ImludGVybmFs
IiB0aXRsZT0iQXVtZW50YXIiPjxpbWcgc3JjPSJodHRwOi8vYml0cy53aWtpbWVk
aWEub3JnL3NraW5zLTEuNS9jb21tb24vaW1hZ2VzL21hZ25pZnktY2xpcC5wbmci
IHdpZHRoPSIxNSIgaGVpZ2h0PSIxMSIgYWx0PSIiIC8+PC9hPjwvZGl2Pgo8YSBo
cmVmPSIvd2lraS9DYXRlZHJhbCIgdGl0bGU9IkNhdGVkcmFsIj5DYXRlZHJhbDwv
YT4gZGUgTcOzbmFjby48L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8cD5FbCBwYcOtcyBj
dWVudGEgY29uIDMgZGlzdHJpdG9zOiA8YSBocmVmPSIvd2lraS9DaXVkYWRfZGVf
TSVDMyVCM25hY28iIHRpdGxlPSJDaXVkYWQgZGUgTcOzbmFjbyIgY2xhc3M9Im13
LXJlZGlyZWN0Ij5DaXVkYWQgZGUgTcOzbmFjbzwvYT4gcXVlIGVzIGVsIGNlbnRy
byBwb2zDrXRpY28sIHR1csOtc3RpY28geSBlbXByZXNhcmlhbCwgPGEgaHJlZj0i
L3dpa2kvTGFfQ29uZGFtaW5lIiB0aXRsZT0iTGEgQ29uZGFtaW5lIj5MYSBDb25k
YW1pbmU8L2E+LCB1YmljYWRvIGFsIG9lc3RlIGRlbCBlc3RhZG8gZXMgZWwgZGlz
dHJpdG8gZWNvbsOzbWljbyBlIGluZHVzdHJ0aWFsIGRlIE3Ds25hY28geSA8YSBo
cmVmPSIvd2lraS9Nb250ZWNhcmxvXyhNJUMzJUIzbmFjbykiIHRpdGxlPSJNb250
ZWNhcmxvIChNw7NuYWNvKSIgY2xhc3M9Im13LXJlZGlyZWN0Ij5Nb250ZWNhcmxv
PC9hPiwgZG9uZGUgc2UgZW5jdWVudHJhIGVsIGZhbW9zbyBDYXNpbm8uIEFkZW3D
oXMgZXMgZWwgcGHDrXMgbcOhcyBlZGlmaWNhZG8gZGUgRXVyb3BhIHkgdW5vIGRl
IGxvcyBtw6FzIGVkaWZpY2Fkb3MgZGVsIG11bmRvLiBTZWfDum4gZGF0b3MgZGUg
PGEgaHJlZj0iL3dpa2kvMjAxMCIgdGl0bGU9IjIwMTAiPjIwMTA8L2E+LCBNw7Nu
YWNvIGVzIGVsIHRlcnJpdG9yaW8gY29uIG1heW9yIDxhIGhyZWY9Ii93aWtpL0Vz
cGVyYW56YV9kZV92aWRhIiB0aXRsZT0iRXNwZXJhbnphIGRlIHZpZGEiPmVzcGVy
YW56YSBkZSB2aWRhPC9hPiBlbiBlbCBtdW5kbywgY29uIDg5LDc4IGHDsW9zIGRl
IGV4cGVjdGF0aXZhIGFsIG5hY2VyLjxzdXAgaWQ9ImNpdGVfcmVmLTE0IiBjbGFz
cz0icmVmZXJlbmNlIj48YSBocmVmPSIjY2l0ZV9ub3RlLTE0Ij48c3BhbiBjbGFz
cz0iY29yY2hldGUtbGxhbWFkYSI+Wzwvc3Bhbj4xNTxzcGFuIGNsYXNzPSJjb3Jj
aGV0ZS1sbGFtYWRhIj5dPC9zcGFuPjwvYT48L3N1cD48L3A+CjxoMj48c3BhbiBj
bGFzcz0iZWRpdHNlY3Rpb24iPls8YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9
TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0JmFtcDtzZWN0aW9uPTI2IiB0aXRs
ZT0iRWRpdGFyIHNlY2Npw7NuOiBSZWxpZ2nDs24geSBsZW5ndWFzIj5lZGl0YXI8
L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iUmVsaWdp
LkMzLkIzbl95X2xlbmd1YXMiPlJlbGlnacOzbiB5IGxlbmd1YXM8L3NwYW4+PC9o
Mj4KPGRpdiBjbGFzcz0ibm9wcmludCBBUCIgc3R5bGU9Im1hcmdpbjowIDAgMC4y
ZXggMWVtIj48aT48c3BhbiBzdHlsZT0iZm9udC1zaXplOjg3JSI+QXJ0w61jdWxv
IHByaW5jaXBhbDo8L3NwYW4+IDxhIGhyZWY9Ii93aWtpL0lkaW9tYXNfZGVfTSVD
MyVCM25hY28iIHRpdGxlPSJJZGlvbWFzIGRlIE3Ds25hY28iPklkaW9tYXMgZGUg
TcOzbmFjbzwvYT48L2k+PC9kaXY+CjxkaXYgY2xhc3M9Im5vcHJpbnQgQVAiIHN0
eWxlPSJtYXJnaW46MCAwIDAuMmV4IDFlbSI+PGk+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZTo4NyUiPkFydMOtY3VsbyBwcmluY2lwYWw6PC9zcGFuPiA8YSBocmVmPSIv
d2lraS9SZWxpZ2klQzMlQjNuX2VuX00lQzMlQjNuYWNvIiB0aXRsZT0iUmVsaWdp
w7NuIGVuIE3Ds25hY28iPlJlbGlnacOzbiBlbiBNw7NuYWNvPC9hPjwvaT48L2Rp
dj4KPHA+TGEgcmVsaWdpw7NuIG9maWNpYWwgZGUgTcOzbmFjbyBlcyBsYSByZWxp
Z2nDs24gY2F0w7NsaWNhIHJvbWFuYSwgcHJvZmVzYWRhIHBvciBhbHJlZGVkb3Ig
ZGUgOTAlIGRlIGxhIHBvYmxhY2nDs24sIG1pZW50cmFzIHF1ZSBlbCBpZGlvbWEg
cHJpbmNpcGFsIHkgb2ZpY2lhbCBkZSBNw7NuYWNvIGVzIGVsIDxhIGhyZWY9Ii93
aWtpL0ZyYW5jJUMzJUE5cyIgdGl0bGU9IkZyYW5jw6lzIiBjbGFzcz0ibXctcmVk
aXJlY3QiPmZyYW5jw6lzPC9hPiwgcGVybyBzZSBoYWJsYW4gZGl2ZXJzYXMgbGVu
Z3VhcywgaW5jbHV5ZW5kbyBlbCBtb25lZ2FzY28sIGVsIGlkaW9tYSBuYWNpb25h
bCBkZWwgcHVlYmxvIG1vbmVnYXNjbyB5IHF1ZSBlcyBlbnNlw7FhZG8gZW4gbGFz
IGVzY3VlbGFzIGp1bnRvIGNvbiBlbCBmcmFuY8Opcy4gQWRlbWFzIGRlIGhhYmxh
ciBlbCBJdGFsaWFubyBjb24gbXVjaGEgZmx1aWRlczwvcD4KPGgyPjxzcGFuIGNs
YXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1N
JUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3NlY3Rpb249MjciIHRpdGxl
PSJFZGl0YXIgc2VjY2nDs246IEN1bHR1cmEgeSBhcnRlIj5lZGl0YXI8L2E+XTwv
c3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iQ3VsdHVyYV95X2Fy
dGUiPkN1bHR1cmEgeSBhcnRlPC9zcGFuPjwvaDI+CjxkaXYgY2xhc3M9Im5vcHJp
bnQgQVAiIHN0eWxlPSJtYXJnaW46MCAwIDAuMmV4IDFlbSI+PGk+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZTo4NyUiPkFydMOtY3VsbyBwcmluY2lwYWw6PC9zcGFuPiA8
YSBocmVmPSIvd2lraS9DdWx0dXJhX2RlX00lQzMlQjNuYWNvIiB0aXRsZT0iQ3Vs
dHVyYSBkZSBNw7NuYWNvIj5DdWx0dXJhIGRlIE3Ds25hY288L2E+PC9pPjwvZGl2
Pgo8ZGl2IGNsYXNzPSJub3ByaW50IEFQIiBzdHlsZT0ibWFyZ2luOjAgMCAwLjJl
eCAxZW0iPjxpPjxzcGFuIHN0eWxlPSJmb250LXNpemU6ODclIj5BcnTDrWN1bG8g
cHJpbmNpcGFsOjwvc3Bhbj4gPGEgaHJlZj0iL3dpa2kvTSVDMyVCQXNpY2FfZGVf
TSVDMyVCM25hY28iIHRpdGxlPSJNw7pzaWNhIGRlIE3Ds25hY28iPk3DunNpY2Eg
ZGUgTcOzbmFjbzwvYT48L2k+PC9kaXY+CjxkaXYgY2xhc3M9InRodW1iIHRyaWdo
dCI+CjxkaXYgY2xhc3M9InRodW1iaW5uZXIiIHN0eWxlPSJ3aWR0aDoxNTJweDsi
PjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86TW9uYWNvX29wZXJhXzAzNC5qcGciIGNs
YXNzPSJpbWFnZSI+PGltZyBhbHQ9IiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2lt
ZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvNS81YS9Nb25hY29fb3Bl
cmFfMDM0LmpwZy8xNTBweC1Nb25hY29fb3BlcmFfMDM0LmpwZyIgd2lkdGg9IjE1
MCIgaGVpZ2h0PSIxMTMiIGNsYXNzPSJ0aHVtYmltYWdlIiAvPjwvYT4KPGRpdiBj
bGFzcz0idGh1bWJjYXB0aW9uIj4KPGRpdiBjbGFzcz0ibWFnbmlmeSI+PGEgaHJl
Zj0iL3dpa2kvQXJjaGl2bzpNb25hY29fb3BlcmFfMDM0LmpwZyIgY2xhc3M9Imlu
dGVybmFsIiB0aXRsZT0iQXVtZW50YXIiPjxpbWcgc3JjPSJodHRwOi8vYml0cy53
aWtpbWVkaWEub3JnL3NraW5zLTEuNS9jb21tb24vaW1hZ2VzL21hZ25pZnktY2xp
cC5wbmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxMSIgYWx0PSIiIC8+PC9hPjwvZGl2
Pgo8YSBocmVmPSIvd2lraS8lQzMlOTNwZXJhX2RlX01vbnRlY2FybG8iIHRpdGxl
PSLDk3BlcmEgZGUgTW9udGVjYXJsbyI+w5NwZXJhIGRlIE1vbnRlY2FybG88L2E+
LCBNw7NuYWNvLjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxwPkVuIE3Ds25hY28gcHJl
dmFsZWNlbiBsb3MgZXN0aWxvcyBhcnF1aXRlY3TDs25pY29zIHF1ZSBzZSBoYW4g
ZGFkbyBlbiBGcmFuY2lhLiBFbnRyZSBzdXMgY29uc3RydWNjaW9uZXMgbWFzIHNp
Z25pZmljYXRpdmFzIHNlIGVuY3VlbnRyYSBsYSA8YSBocmVmPSIvd2lraS9DYXRl
ZHJhbF9kZV9TYW5fTmljb2wlQzMlQTFzXyhNJUMzJUIzbmFjbykiIHRpdGxlPSJD
YXRlZHJhbCBkZSBTYW4gTmljb2zDoXMgKE3Ds25hY28pIj5DYXRlZHJhbCBkZSBN
w7NuYWNvPC9hPiBkZWwgYcOxbyA8YSBocmVmPSIvd2lraS8xODc1IiB0aXRsZT0i
MTg3NSI+MTg3NTwvYT4sIGNvbnN0cnVpZGEgY29uIHBpZWRyYXMgYmxhbmNhcyBk
ZSBMYSBUdXJiaWUgc29icmUgZWwgZW1wbGF6YW1pZW50byBkZSB1bmEgYW50aWd1
YSBpZ2xlc2lhIGRlbCBzaWdsbyBYSUkgZGVkaWNhZGEgYSBTYW4gTmljb2zDoXMu
IEVsIGVkaWZpY2lvIHByZXNlbnRhIHVuIGVzdGlsbyByb23DoW5pY28gYml6YW50
aW5vLCBtaWVudHJhcyBxdWUgc3UgaW50ZXJpb3IgYWxiZXJnYSBpbnRlcmVzYW50
ZXMgcGllemFzLiBPdHJhIGRlIGxhcyBjb25zdHJ1Y2Npb25lcyBlbWJsZW3DoXRp
Y2FzLCBhZGVtw6FzIGRlbCBQYWxhY2lvIFByaW5jaXBlc2NvLCBlcyBlbCBlZGlm
aWNpbyBxdWUgYWxiZXJnYSBlbCA8YSBocmVmPSIvd2lraS9NdXNlb19PY2Vhbm9n
ciVDMyVBMWZpY29fZGVfTSVDMyVCM25hY28iIHRpdGxlPSJNdXNlbyBPY2Vhbm9n
csOhZmljbyBkZSBNw7NuYWNvIj5NdXNlbyBPY2Vhbm9ncsOhZmljbzwvYT4geSBl
bCBBY3VhcmlvLiBTdSBpbXByZXNpb25hbnRlIGZhY2hhZGEsIGRlIGNhcmEgYWwg
bWFyLCBlcyBjb25zaWRlcmFkYSBjb21vIHVuYSBvYnJhIG1hZXN0cmEgZGUgYXJx
dWl0ZWN0dXJhIG1vbnVtZW50YWwuPC9wPgo8cD5Nw7NuYWNvIHBvc2VlIGxhIMOT
cGVyYSBkZSBNb250ZWNhcmxvLCBsYSA8YSBocmVmPSIvd2lraS9PcnF1ZXN0YV9G
aWxhcm0lQzMlQjNuaWNhX2RlX01vbnRlY2FybG8iIHRpdGxlPSJPcnF1ZXN0YSBG
aWxhcm3Ds25pY2EgZGUgTW9udGVjYXJsbyI+T3JxdWVzdGEgRmlsYXJtw7NuaWNh
IGRlIE1vbnRlY2FybG88L2E+IChlbiBmcmFuY8OpczogPGk+T3JjaGVzdHJlIFBo
aWxoYXJtb25pcXVlIGRlIE1vbnRlLUNhcmxvPC9pPiksIGVsIDxhIGhyZWY9Ii93
aWtpL0JhbGxldF9kZV9Nb250ZWNhcmxvIiB0aXRsZT0iQmFsbGV0IGRlIE1vbnRl
Y2FybG8iPkJhbGxldCBkZSBNb250ZWNhcmxvPC9hPiB5IHVuIHJlY29ub2NpZG8g
Q29ybyBpbmZhbnRpbCwgbG9zIFBlcXVlw7FvcyBjYW50b3JlcyBkZSBNw7NuYWNv
IChlbiBpbmdsw6lzOiA8aT5MaXR0bGUgU2luZ2VycyBvZiBNb25hY288L2k+KS48
L3A+CjxoMz48c3BhbiBjbGFzcz0iZWRpdHNlY3Rpb24iPls8YSBocmVmPSIvdy9p
bmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0JmFtcDtz
ZWN0aW9uPTI4IiB0aXRsZT0iRWRpdGFyIHNlY2Npw7NuOiBNZWRpb3MgZGUgY29t
dW5pY2FjacOzbiI+ZWRpdGFyPC9hPl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1o
ZWFkbGluZSIgaWQ9Ik1lZGlvc19kZV9jb211bmljYWNpLkMzLkIzbiI+TWVkaW9z
IGRlIGNvbXVuaWNhY2nDs248L3NwYW4+PC9oMz4KPGRpdiBjbGFzcz0ibm9wcmlu
dCBBUCIgc3R5bGU9Im1hcmdpbjowIDAgMC4yZXggMWVtIj48aT48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjg3JSI+QXJ0w61jdWxvIHByaW5jaXBhbDo8L3NwYW4+IDxh
IGhyZWY9Ii93aWtpL01lZGlvc19kZV9jb211bmljYWNpJUMzJUIzbl9lbl9NJUMz
JUIzbmFjbyIgdGl0bGU9Ik1lZGlvcyBkZSBjb211bmljYWNpw7NuIGVuIE3Ds25h
Y28iPk1lZGlvcyBkZSBjb211bmljYWNpw7NuIGVuIE3Ds25hY288L2E+PC9pPjwv
ZGl2Pgo8cD5Nw7NuYWNvIHBvc2VlIDMgY2FkZW5hcyBkZSB0ZWxldmlzacOzbiBx
dWUgZW1pdGVuIGVuIGZyYW5jw6lzICg8YSBocmVmPSIvd2lraS9Nb25hY29fSW5m
byIgdGl0bGU9Ik1vbmFjbyBJbmZvIj5Nb25hY28gSW5mbzwvYT4sIGRlIG5vdGlj
aWFzOyA8YSBocmVmPSIvd2lraS9UJUMzJUE5bCVDMyVBOV9Nb250ZS1DYXJsbyIg
dGl0bGU9IlTDqWzDqSBNb250ZS1DYXJsbyI+VMOpbMOpIE1vbnRlLUNhcmxvPC9h
PiwgZ2VuZXJhbGlzdGE7IHkgPGEgaHJlZj0iL3dpa2kvTUNNIiB0aXRsZT0iTUNN
Ij5NQ008L2E+LCB1biBjYW5hbCBtdXNpY2FsKSwgYWRlbcOhcyBkZSB2YXJpYXMg
cmFkaW9zIHkgcGVyacOzZGljb3MgdGFudG9zIGVzY3JpdG9zIGNvbW8gZGlnaXRh
bGVzLiBFbnRyZSBsb3MgbWVkaW9zIGVuIGxlbmd1YXMgZXh0cmFuamVyYXMgZGVz
dGFjYW4gMiByYWRpb3MgeSAxIHBlcmnDs2RpY28gZW4gaXRhbGlhbm8geSB1bmEg
cmFkaW8gZW4gaW5nbMOpcy48L3A+CjxoMj48c3BhbiBjbGFzcz0iZWRpdHNlY3Rp
b24iPls8YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1w
O2FjdGlvbj1lZGl0JmFtcDtzZWN0aW9uPTI5IiB0aXRsZT0iRWRpdGFyIHNlY2Np
w7NuOiBFZHVjYWNpw7NuIj5lZGl0YXI8L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9
Im13LWhlYWRsaW5lIiBpZD0iRWR1Y2FjaS5DMy5CM24iPkVkdWNhY2nDs248L3Nw
YW4+PC9oMj4KPGgzPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9
Ii93L2luZGV4LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQm
YW1wO3NlY3Rpb249MzAiIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IFByaW1hcmlh
IHkgU2VjdW5kYXJpYSI+ZWRpdGFyPC9hPl08L3NwYW4+IDxzcGFuIGNsYXNzPSJt
dy1oZWFkbGluZSIgaWQ9IlByaW1hcmlhX3lfU2VjdW5kYXJpYSI+UHJpbWFyaWEg
eSBTZWN1bmRhcmlhPC9zcGFuPjwvaDM+CjxwPk3Ds25hY28gdGllbmUgZGlleiBl
c2N1ZWxhcyBtYW50ZW5pZGFzIHBvciBlbCBlc3RhZG8sIGVudHJlIGVsbGFzOiBz
aWV0ZSBlc2N1ZWxhcyBkZSBwcmVlc2NvbGFyIHkgcHJpbWFyaWE7IHVuYSBlc2N1
ZWxhIHNlY3VuZGFyaWEgZWwgQ29sZWdpbyBDYXJsb3MgSUlJPHN1cCBpZD0iY2l0
ZV9yZWYtMTUiIGNsYXNzPSJyZWZlcmVuY2UiPjxhIGhyZWY9IiNjaXRlX25vdGUt
MTUiPjxzcGFuIGNsYXNzPSJjb3JjaGV0ZS1sbGFtYWRhIj5bPC9zcGFuPjE2PHNw
YW4gY2xhc3M9ImNvcmNoZXRlLWxsYW1hZGEiPl08L3NwYW4+PC9hPjwvc3VwPiAs
IHVuIGluc3RpdHV0byBxdWUgcHJvcG9yY2lvbmEgZm9ybWFjacOzbiBnZW5lcmFs
IHkgdMOpY25pY2EsIGVsIExpY2VvIEFsYmVydG8gSSw8c3VwIGlkPSJjaXRlX3Jl
Zi0xNiIgY2xhc3M9InJlZmVyZW5jZSI+PGEgaHJlZj0iI2NpdGVfbm90ZS0xNiI+
PHNwYW4gY2xhc3M9ImNvcmNoZXRlLWxsYW1hZGEiPls8L3NwYW4+MTc8c3BhbiBj
bGFzcz0iY29yY2hldGUtbGxhbWFkYSI+XTwvc3Bhbj48L2E+PC9zdXA+IHkgdW4g
aW5zdGl0dXRvIHF1ZSBvZnJlY2UgZm9ybWFjacOzbiBwcm9mZXNpb25hbCB5IGxh
IGZvcm1hY2nDs24gaG90ZWxlcmEsIGVsIDxpPkx5Y8OpZSB0ZWNobmlxdWUgZXQg
aMO0dGVsaWVyIGRlIE1vbnRlLUNhcmxvPC9pPjxzdXAgaWQ9ImNpdGVfcmVmLTE3
IiBjbGFzcz0icmVmZXJlbmNlIj48YSBocmVmPSIjY2l0ZV9ub3RlLTE3Ij48c3Bh
biBjbGFzcz0iY29yY2hldGUtbGxhbWFkYSI+Wzwvc3Bhbj4xODxzcGFuIGNsYXNz
PSJjb3JjaGV0ZS1sbGFtYWRhIj5dPC9zcGFuPjwvYT48L3N1cD4gVGFtYmnDqW4g
aGF5IGRvcyBlc2N1ZWxhcyByZWxpZ2lvc2FzIHByaXZhZGFzIHN1YnZlbmNpb25h
ZGFzLCBpbmNsdWlkYSBsYSA8aT5JbnN0aXR1dGlvbiBGcmFuw6dvaXMgZCdBc3Np
c2UgTmljb2xhcyBCYXJyw6k8L2k+IHkgbGEgPGk+RWNvbGUgZGVzIFPFk3VycyBE
b21pbmljYWluZXM8L2k+LCBhZGVtw6FzIGRlIHVuYSBlc2N1ZWxhIGludGVybmFj
aW9uYWwsIGxhIEVzY3VlbGEgSW50ZXJuYWNpb25hbCBkZSBNw7NuYWNvIC48L3A+
CjxoMz48c3BhbiBjbGFzcz0iZWRpdHNlY3Rpb24iPls8YSBocmVmPSIvdy9pbmRl
eC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0JmFtcDtzZWN0
aW9uPTMxIiB0aXRsZT0iRWRpdGFyIHNlY2Npw7NuOiBVbml2ZXJzaWRhZGVzIj5l
ZGl0YXI8L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0i
VW5pdmVyc2lkYWRlcyI+VW5pdmVyc2lkYWRlczwvc3Bhbj48L2gzPgo8cD5IYXkg
dW5hIHVuaXZlcnNpZGFkIHNpdHVhZGEgZW4gTcOzbmFjbzo8L3A+Cjx1bD4KPGxp
PkxhIDxhIGhyZWY9Ii93aWtpL1VuaXZlcnNpZGFkX0ludGVybmFjaW9uYWxfZGVf
TSVDMyVCM25hY28iIHRpdGxlPSJVbml2ZXJzaWRhZCBJbnRlcm5hY2lvbmFsIGRl
IE3Ds25hY28iPlVuaXZlcnNpZGFkIEludGVybmFjaW9uYWwgZGUgTcOzbmFjbzwv
YT4gY29ub2NpZGEgcG9yIHN1cyBzaWdsYXMgeSBub21icmUgZW4gaW5nbMOpcyBj
b21vIDxpPkludGVybmF0aW9uYWwgVW5pdmVyc2l0eSBvZiBNb25hY28gKElVTSk8
L2k+PC9saT4KPC91bD4KPGgyPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+Wzxh
IGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9u
PWVkaXQmYW1wO3NlY3Rpb249MzIiIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IFNl
Z3VyaWRhZCB5IGRlZmVuc2EiPmVkaXRhcjwvYT5dPC9zcGFuPiA8c3BhbiBjbGFz
cz0ibXctaGVhZGxpbmUiIGlkPSJTZWd1cmlkYWRfeV9kZWZlbnNhIj5TZWd1cmlk
YWQgeSBkZWZlbnNhPC9zcGFuPjwvaDI+CjxkaXYgY2xhc3M9Im5vcHJpbnQgQVAi
IHN0eWxlPSJtYXJnaW46MCAwIDAuMmV4IDFlbSI+PGk+PHNwYW4gc3R5bGU9ImZv
bnQtc2l6ZTo4NyUiPkFydMOtY3VsbyBwcmluY2lwYWw6PC9zcGFuPiA8YSBocmVm
PSIvd2lraS9Qb2xpYyVDMyVBRGFfZGVfTSVDMyVCM25hY28iIHRpdGxlPSJQb2xp
Y8OtYSBkZSBNw7NuYWNvIj5Qb2xpY8OtYSBkZSBNw7NuYWNvPC9hPjwvaT48L2Rp
dj4KPGRpdiBjbGFzcz0ibm9wcmludCBBUCIgc3R5bGU9Im1hcmdpbjowIDAgMC4y
ZXggMWVtIj48aT48c3BhbiBzdHlsZT0iZm9udC1zaXplOjg3JSI+QXJ0w61jdWxv
IHByaW5jaXBhbDo8L3NwYW4+IDxhIGhyZWY9Ii93aWtpL0Z1ZXJ6YXNfQXJtYWRh
c19kZV9NJUMzJUIzbmFjbyIgdGl0bGU9IkZ1ZXJ6YXMgQXJtYWRhcyBkZSBNw7Nu
YWNvIj5GdWVyemFzIEFybWFkYXMgZGUgTcOzbmFjbzwvYT48L2k+PC9kaXY+Cjxk
aXYgY2xhc3M9InRodW1iIHRyaWdodCI+CjxkaXYgY2xhc3M9InRodW1iaW5uZXIi
IHN0eWxlPSJ3aWR0aDoxNTJweDsiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86TW9u
ZWdhc3F1ZV9wb2xpY2VfY2Fycy5qcGciIGNsYXNzPSJpbWFnZSI+PGltZyBhbHQ9
IiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2Nv
bW1vbnMvdGh1bWIvOC84Yy9Nb25lZ2FzcXVlX3BvbGljZV9jYXJzLmpwZy8xNTBw
eC1Nb25lZ2FzcXVlX3BvbGljZV9jYXJzLmpwZyIgd2lkdGg9IjE1MCIgaGVpZ2h0
PSIxMDAiIGNsYXNzPSJ0aHVtYmltYWdlIiAvPjwvYT4KPGRpdiBjbGFzcz0idGh1
bWJjYXB0aW9uIj4KPGRpdiBjbGFzcz0ibWFnbmlmeSI+PGEgaHJlZj0iL3dpa2kv
QXJjaGl2bzpNb25lZ2FzcXVlX3BvbGljZV9jYXJzLmpwZyIgY2xhc3M9ImludGVy
bmFsIiB0aXRsZT0iQXVtZW50YXIiPjxpbWcgc3JjPSJodHRwOi8vYml0cy53aWtp
bWVkaWEub3JnL3NraW5zLTEuNS9jb21tb24vaW1hZ2VzL21hZ25pZnktY2xpcC5w
bmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxMSIgYWx0PSIiIC8+PC9hPjwvZGl2PgpV
biBSZW5hdWx0IFNjZW5pYyB5IHVuIEZvcmQgQy1NYXggZGUgbGEgUG9saWPDrWEg
ZGUgTcOzbmFjbzwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxwPk3Ds25hY28gbm8gZGlz
cG9uZSBkZSB1biBlasOpcmNpdG8sIHBlcm8gdGllbmUgdW4gcGVxdWXDsW8gZ3J1
cG8gZGUgZ3VhcmRhY29zdGFzLiBRdWllbmVzIHNlIGVuY2FyZ2FuIGRlIGxhIHNl
Z3VyaWRhZCBlbiBNw7NuYWNvIHNvbiBhcHJveGltYWRhbWVudGUgNTAwIHBvbGlj
w61hcyAoTcOzbmFjbyBlcyBlbCBlc3RhZG8gY29uIG1heW9yIG7Dum1lcm8gZGUg
cG9saWPDrWFzIHBvciBwZXJzb25hIGRlbCBtdW5kbywgNTE3IGFnZW50ZXMgcGFy
YSAzMi4wMDAgaGFiaXRhbnRlcykuIFRhbWJpw6luIGV4aXN0ZSBsYSBndWFyZGlh
IHJlYWwsIGxsYW1hZGEgPGEgaHJlZj0iL3dpa2kvQ29tcGElQzMlQjElQzMlQURh
X2RlX0NhcmFiaW5lcm9zX2RlbF9QciVDMyVBRG5jaXBlIiB0aXRsZT0iQ29tcGHD
scOtYSBkZSBDYXJhYmluZXJvcyBkZWwgUHLDrW5jaXBlIj5Db21wYcOxw61hIGRl
IENhcmFiaW5lcm9zIGRlbCBQcsOtbmNpcGU8L2E+ICg8aT5Db21wYWduaWUgZGVz
IENhcmFiaW5pZXJzIGR1IFByaW5jZTwvaT4pLCBzb24gdW5vcyA4MCBtaWVtYnJv
cy4gTGEgZGVmZW5zYSBkZWwgZXN0YWRvIGVzIHByb3BvcmNpb25hZGEgcG9yIEZy
YW5jaWEsIHNlZ8O6biBsb3MgPGEgaHJlZj0iL3dpa2kvVHJhdGFkb3NfRnJhbmNv
LU1vbmVnYXNjb3MiIHRpdGxlPSJUcmF0YWRvcyBGcmFuY28tTW9uZWdhc2NvcyI+
dHJhdGFkb3MgZmlybWFkb3M8L2E+IGNvbiBlc3RlIMO6bHRpbW8gcGHDrXMuPC9w
Pgo8aDI+PHNwYW4gY2xhc3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5k
ZXgucGhwP3RpdGxlPU0lQzMlQjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2Vj
dGlvbj0zMyIgdGl0bGU9IkVkaXRhciBzZWNjacOzbjogVHJhbnNwb3J0ZSI+ZWRp
dGFyPC9hPl08L3NwYW4+IDxzcGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IlRy
YW5zcG9ydGUiPlRyYW5zcG9ydGU8L3NwYW4+PC9oMj4KPGRpdiBjbGFzcz0ibm9w
cmludCBBUCIgc3R5bGU9Im1hcmdpbjowIDAgMC4yZXggMWVtIj48aT48c3BhbiBz
dHlsZT0iZm9udC1zaXplOjg3JSI+QXJ0w61jdWxvIHByaW5jaXBhbDo8L3NwYW4+
IDxhIGhyZWY9Ii93aWtpL1RyYW5zcG9ydGVfZGVfTSVDMyVCM25hY28iIHRpdGxl
PSJUcmFuc3BvcnRlIGRlIE3Ds25hY28iPlRyYW5zcG9ydGUgZGUgTcOzbmFjbzwv
YT48L2k+PC9kaXY+Cjx1bD4KPGxpPlbDrWFzIGZlcnLDqWFzCjx1bD4KPGxpPnRv
dGFsOjEuNyBrbTwvbGk+CjxsaT5hbmNobyBlc3TDoW5kYXI6MS43IGttIDEuNDM1
LW08L2xpPgo8L3VsPgo8L2xpPgo8L3VsPgo8ZGl2IGNsYXNzPSJ0aHVtYiB0cmln
aHQiPgo8ZGl2IGNsYXNzPSJ0aHVtYmlubmVyIiBzdHlsZT0id2lkdGg6MTUycHg7
Ij48YSBocmVmPSIvd2lraS9BcmNoaXZvOk1PTkFDT19ieV9jcmVhY3Rpb25zLmpw
ZyIgY2xhc3M9ImltYWdlIj48aW1nIGFsdD0iIiBzcmM9Imh0dHA6Ly91cGxvYWQu
d2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi80LzQ2L01PTkFD
T19ieV9jcmVhY3Rpb25zLmpwZy8xNTBweC1NT05BQ09fYnlfY3JlYWN0aW9ucy5q
cGciIHdpZHRoPSIxNTAiIGhlaWdodD0iMTEzIiBjbGFzcz0idGh1bWJpbWFnZSIg
Lz48L2E+CjxkaXYgY2xhc3M9InRodW1iY2FwdGlvbiI+CjxkaXYgY2xhc3M9Im1h
Z25pZnkiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86TU9OQUNPX2J5X2NyZWFjdGlv
bnMuanBnIiBjbGFzcz0iaW50ZXJuYWwiIHRpdGxlPSJBdW1lbnRhciI+PGltZyBz
cmM9Imh0dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvc2tpbnMtMS41L2NvbW1vbi9p
bWFnZXMvbWFnbmlmeS1jbGlwLnBuZyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjExIiBh
bHQ9IiIgLz48L2E+PC9kaXY+ClB1ZXJ0byBkZSA8YSBocmVmPSIvd2lraS9Gb250
dmllaWxsZV8oTSVDMyVCM25hY28pIiB0aXRsZT0iRm9udHZpZWlsbGUgKE3Ds25h
Y28pIj5Gb250dmllaWxsZTwvYT4gY29uc3RydWlkbyBlbiA8YSBocmVmPSIvd2lr
aS9UaWVycmFzX2dhbmFkYXNfYWxfbWFyIiB0aXRsZT0iVGllcnJhcyBnYW5hZGFz
IGFsIG1hciI+VGllcnJhcyBnYW5hZGFzIGFsIG1hcjwvYT48L2Rpdj4KPC9kaXY+
CjwvZGl2Pgo8dWw+CjxsaT5DYXJyZXRlcmFzCjx1bD4KPGxpPnRvdGFsOjUwIGtt
PC9saT4KPGxpPnBhdmltZW50YWRhczogNTAga208L2xpPgo8bGk+bm8gcGF2aW1l
bnRhZGFzOiAwIGttICgxOTk2IGVzdC4pPC9saT4KPC91bD4KPC9saT4KPC91bD4K
PHVsPgo8bGk+PGEgaHJlZj0iL3dpa2kvUHVlcnRvc19kZV9NJUMzJUIzbmFjbyIg
dGl0bGU9IlB1ZXJ0b3MgZGUgTcOzbmFjbyI+UHVlcnRvcyBkZSBNw7NuYWNvPC9h
Pgo8dWw+CjxsaT4yJiMxNjA7OiBIZXJjdWxlcyAoYW50aWd1bykgeSBGb250dmll
aWxsZSAobnVldm8pPC9saT4KPGxpPk1hcmluYSBtZXJjYW50ZTogMCAoMTk5OSBl
c3QuKTwvbGk+CjwvdWw+CjwvbGk+CjwvdWw+Cjx1bD4KPGxpPkFlcm9wdWVydG9z
Cjx1bD4KPGxpPkVzdMOhIGNvbmVjdGFkbyBjb24gZWwgYWVyb3B1ZXJ0byBkZSBO
aXphIGVuIEZyYW5jaWEgYSB0cmF2w6lzIGRlIHVuIHNlcnZpY2lvIGRlIGhlbGlj
w7NwdGVybzwvbGk+CjwvdWw+CjwvbGk+CjwvdWw+Cjx1bD4KPGxpPkhlbGlwdWVy
dG9zCjx1bD4KPGxpPjEgc2VydmljaW8gZW50cmUgZWwgYWVyb3B1ZXJ0byBpbnRl
cm5hY2lvbmFsIGRlIE5pemEgeSBlbCA8YSBocmVmPSIvd2lraS9IZWxpcHVlcnRv
X2RlX00lQzMlQjNuYWNvIiB0aXRsZT0iSGVsaXB1ZXJ0byBkZSBNw7NuYWNvIj5I
ZWxpcHVlcnRvIGRlIE3Ds25hY288L2E+PC9saT4KPC91bD4KPC9saT4KPC91bD4K
PGgyPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2luZGV4
LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3NlY3Rp
b249MzQiIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IERlcG9ydGVzIj5lZGl0YXI8
L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iRGVwb3J0
ZXMiPkRlcG9ydGVzPC9zcGFuPjwvaDI+CjxoMz48c3BhbiBjbGFzcz0iZWRpdHNl
Y3Rpb24iPls8YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28m
YW1wO2FjdGlvbj1lZGl0JmFtcDtzZWN0aW9uPTM1IiB0aXRsZT0iRWRpdGFyIHNl
Y2Npw7NuOiBGw7NybXVsYSAxIj5lZGl0YXI8L2E+XTwvc3Bhbj4gPHNwYW4gY2xh
c3M9Im13LWhlYWRsaW5lIiBpZD0iRi5DMy5CM3JtdWxhXzEiPkbDs3JtdWxhIDE8
L3NwYW4+PC9oMz4KPGRpdiBjbGFzcz0ibm9wcmludCBBUCIgc3R5bGU9Im1hcmdp
bjowIDAgMC4yZXggMWVtIj48aT48c3BhbiBzdHlsZT0iZm9udC1zaXplOjg3JSI+
QXJ0w61jdWxvIHByaW5jaXBhbDo8L3NwYW4+IDxhIGhyZWY9Ii93aWtpL0dyYW5f
UHJlbWlvX2RlX00lQzMlQjNuYWNvIiB0aXRsZT0iR3JhbiBQcmVtaW8gZGUgTcOz
bmFjbyI+R3JhbiBQcmVtaW8gZGUgTcOzbmFjbzwvYT48L2k+PC9kaXY+CjxkaXYg
Y2xhc3M9InRodW1iIHRyaWdodCI+CjxkaXYgY2xhc3M9InRodW1iaW5uZXIiIHN0
eWxlPSJ3aWR0aDoyMDJweDsiPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86TW9uYWNv
XzY4MC5KUEciIGNsYXNzPSJpbWFnZSI+PGltZyBhbHQ9IiIgc3JjPSJodHRwOi8v
dXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvYy9j
Yy9Nb25hY29fNjgwLkpQRy8yMDBweC1Nb25hY29fNjgwLkpQRyIgd2lkdGg9IjIw
MCIgaGVpZ2h0PSIxNTAiIGNsYXNzPSJ0aHVtYmltYWdlIiAvPjwvYT4KPGRpdiBj
bGFzcz0idGh1bWJjYXB0aW9uIj4KPGRpdiBjbGFzcz0ibWFnbmlmeSI+PGEgaHJl
Zj0iL3dpa2kvQXJjaGl2bzpNb25hY29fNjgwLkpQRyIgY2xhc3M9ImludGVybmFs
IiB0aXRsZT0iQXVtZW50YXIiPjxpbWcgc3JjPSJodHRwOi8vYml0cy53aWtpbWVk
aWEub3JnL3NraW5zLTEuNS9jb21tb24vaW1hZ2VzL21hZ25pZnktY2xpcC5wbmci
IHdpZHRoPSIxNSIgaGVpZ2h0PSIxMSIgYWx0PSIiIC8+PC9hPjwvZGl2PgpWaXN0
YSBkZSBsYXMgdHJpYnVuYXMgaW5zdGFsYWRhcyBlc3BlY2lhbG1lbnRlIHBhcmEg
ZWwgPGEgaHJlZj0iL3dpa2kvR3Jhbl9QcmVtaW9fZGVfTSVDMyVCM25hY28iIHRp
dGxlPSJHcmFuIFByZW1pbyBkZSBNw7NuYWNvIj5HcmFuIFByZW1pbyBkZSBNw7Nu
YWNvPC9hPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxwPkVuIGVsIHByaW5jaXBhZG8g
ZGUgTcOzbmFjbyBzZSBkaXNwdXRhIHVubyBkZSBsb3MgZ3JhbmRlcyBwcmVtaW9z
IG3DoXMgYW50aWd1b3MgZGUgbGEgPGEgaHJlZj0iL3dpa2kvRiVDMyVCM3JtdWxh
XzEiIHRpdGxlPSJGw7NybXVsYSAxIj5Gw7NybXVsYSAxPC9hPi4gRWwgR3JhbiBQ
cmVtaW8gZGUgTcOzbmFjbywgc2UgZGlzcHV0YSBhbnVhbG1lbnRlIHkgZnVlIG9y
Z2FuaXphZG8gcG9yIHByaW1lcmEgdmV6IGVuIDxhIGhyZWY9Ii93aWtpLzE5Mjki
IHRpdGxlPSIxOTI5Ij4xOTI5PC9hPi4gTGEgcHJpbWVyYSBjYXJyZXJhIGZ1ZSBn
YW5hZGEgcG9yIDxhIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1XaWxsaWFtX0dy
b3Zlci1XaWxsaWFtcyZhbXA7YWN0aW9uPWVkaXQmYW1wO3JlZGxpbms9MSIgY2xh
c3M9Im5ldyIgdGl0bGU9IldpbGxpYW0gR3JvdmVyLVdpbGxpYW1zIChhw7puIG5v
IHJlZGFjdGFkbykiPldpbGxpYW0gR3JvdmVyLVdpbGxpYW1zPC9hPiAobGxhbWFk
byAiV2lsbGlhbXMiKSBtYW5lamFuZG8gdW4gPGEgaHJlZj0iL3dpa2kvQnVnYXR0
aSIgdGl0bGU9IkJ1Z2F0dGkiPkJ1Z2F0dGk8L2E+IHBpbnRhZG8gdmVyZGUsIGNv
bG9yIHF1ZSBzZSBjb252ZXJ0aXLDrWEgY29uIGVsIHRpZW1wbyBlbiBpbnNpZ25p
YSBkZSBsb3MgY29ycmVkb3JlcyBicml0w6FuaWNvcy48L3A+CjxwPkVsIEdyYW4g
UHJlbWlvIGRlIE3Ds25hY28gc2UgZGlzcHV0YSBlbiBsYXMgY2FsbGVzIGRlIDxh
IGhyZWY9Ii93aWtpL01vbnRlY2FybG8iIHRpdGxlPSJNb250ZWNhcmxvIj5Nb250
ZWNhcmxvPC9hPiwgY29pbmNpZGllbmRvIGNvbiBsYSBmaWVzdGEgZGVsIDxhIGhy
ZWY9Ii93aWtpL0QlQzMlQURhX2RlX2xhX0FzY2Vuc2klQzMlQjNuIiB0aXRsZT0i
RMOtYSBkZSBsYSBBc2NlbnNpw7NuIj5Ew61hIGRlIGxhIEFzY2Vuc2nDs248L2E+
LiBUaWVuZSBncmFuIGNhbnRpZGFkIGRlIHN1YmlkYXMgeSBiYWphZGFzLCBlc3F1
aW5hcyBjZXJyYWRhcyB5IGVzdHJlY2hhcyB2w61hcywgcG9yIGxvIHF1ZSBwcm9i
YWJsZW1lbnRlIGVzIGVsIGNpcmN1aXRvIG3DoXMgYWdvdGFkb3IgcGFyYSBwaWxv
dG9zIHkgdmVow61jdWxvcy4gVGFtYmnDqW4gZXMgZWwgY2lyY3VpdG8gbcOhcyBw
ZWxpZ3Jvc28gZW50cmUgbG9zIHF1ZSBhY3R1YWxtZW50ZSBzZSB1dGlsaXphbiBl
biBsYXMgY29tcGV0ZW5jaWFzIGRlIEbDs3JtdWxhIDEuIFBvciBvdHJhIHBhcnRl
LCBlcyBlbCBjaXJjdWl0byBtw6FzIGVzcGVjdGFjdWxhciB5IHVubyBkZSBsb3Mg
bcOhcyBzZWd1aWRvcyBwb3IgbG9zIGVzcGVjdGFkb3JlcyBlbiBsYSB0ZWxldmlz
acOzbi48L3A+CjxwPkVsIEdyYW4gUHJlbWlvIGRlIE3Ds25hY28gZm9ybcOzIHBh
cnRlIGRlbCBwcmltZXIgY2FtcGVvbmF0byBkZSBGw7NybXVsYSAxIGVuIDxhIGhy
ZWY9Ii93aWtpLzE5NTAiIHRpdGxlPSIxOTUwIj4xOTUwPC9hPiwgeSBhIHBhcnRp
ciBkZSA8YSBocmVmPSIvd2lraS8xOTU1IiB0aXRsZT0iMTk1NSI+MTk1NTwvYT4g
c2UgaGEgZGlzcHV0YWRvIHRvZG9zIGxvcyBhw7Fvcy48L3A+CjxoMz48c3BhbiBj
bGFzcz0iZWRpdHNlY3Rpb24iPls8YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9
TSVDMyVCM25hY28mYW1wO2FjdGlvbj1lZGl0JmFtcDtzZWN0aW9uPTM2IiB0aXRs
ZT0iRWRpdGFyIHNlY2Npw7NuOiBUZW5pcyI+ZWRpdGFyPC9hPl08L3NwYW4+IDxz
cGFuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IlRlbmlzIj5UZW5pczwvc3Bhbj48
L2gzPgo8ZGl2IGNsYXNzPSJub3ByaW50IEFQIiBzdHlsZT0ibWFyZ2luOjAgMCAw
LjJleCAxZW0iPjxpPjxzcGFuIHN0eWxlPSJmb250LXNpemU6ODclIj5BcnTDrWN1
bG8gcHJpbmNpcGFsOjwvc3Bhbj4gPGEgaHJlZj0iL3dpa2kvTWFzdGVyc19kZV9N
b250ZV9DYXJsbyIgdGl0bGU9Ik1hc3RlcnMgZGUgTW9udGUgQ2FybG8iIGNsYXNz
PSJtdy1yZWRpcmVjdCI+TWFzdGVycyBkZSBNb250ZSBDYXJsbzwvYT48L2k+PC9k
aXY+CjxwPlRhbWJpw6luIGVuIE1vbnRlY2FybG8gc2UgZGlzcHV0YSBkZXNkZSA8
YSBocmVmPSIvd2lraS8xOTY5IiB0aXRsZT0iMTk2OSI+MTk2OTwvYT4gZWwgTWFz
dGVycyBkZSBNb250ZWNhcmxvLCB0b3JuZW8gZGUgY2F0ZWdvcsOtYSA8YSBocmVm
PSIvd2lraS9UZW5uaXNfTWFzdGVyc19TZXJpZXMiIHRpdGxlPSJUZW5uaXMgTWFz
dGVycyBTZXJpZXMiIGNsYXNzPSJtdy1yZWRpcmVjdCI+U2VyaWUgTWFzdGVyczwv
YT4gZGVsIHRvdXIgbWFzY3VsaW5vIGRlIGxhIDxhIGhyZWY9Ii93aWtpL0Fzb2Np
YWNpJUMzJUIzbl9kZV9UZW5pc3Rhc19Qcm9mZXNpb25hbGVzIiB0aXRsZT0iQXNv
Y2lhY2nDs24gZGUgVGVuaXN0YXMgUHJvZmVzaW9uYWxlcyI+QVRQPC9hPi48L3A+
CjxwPkRpc3B1dGFkbyBzb2JyZSB0aWVycmEgYmF0aWRhLCBlbCB0b3JuZW8gc2Ug
bGxldmEgYSBjYWJvIGNhZGEgYcOxbyBlbiBlbCBtZXMgZGUgYWJyaWwgbyBtYXlv
LiBBbnRlcyBkZSBsYSBjcmVhY2nDs24gZGUgbGEgVGVubmlzIE1hc3RlcnMgU2Vy
aWVzIGEgaW5pY2lvcyBkZSBsb3MgPGEgaHJlZj0iL3dpa2kvQSVDMyVCMW9zXzE5
OTAiIHRpdGxlPSJBw7FvcyAxOTkwIj45MDwvYT4sIGVsIGV2ZW50byBsbGV2YWJh
IGVsIG5vbWJyZSBkZSBBYmllcnRvIGRlIE1vbnRlY2FybG8uPC9wPgo8cD5FbCB0
b3JuZW8gZGUgTW9udGVjYXJsbyBzZSBkaXNwdXTDsyBwb3IgcHJpbWVyYSB2ZXog
ZW4gPGEgaHJlZj0iL3dpa2kvMTg5NyIgdGl0bGU9IjE4OTciPjE4OTc8L2E+LCBh
dW5xdWUgbGEgZXJhIGFiaWVydGEgZGUgZXN0ZSBldmVudG8gdHV2byBpbmljaW8g
ZW4gPGEgaHJlZj0iL3dpa2kvMTk2OSIgdGl0bGU9IjE5NjkiPjE5Njk8L2E+Ljwv
cD4KPGgzPjxzcGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2lu
ZGV4LnBocD90aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3Nl
Y3Rpb249MzciIHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IEbDunRib2wiPmVkaXRh
cjwvYT5dPC9zcGFuPiA8c3BhbiBjbGFzcz0ibXctaGVhZGxpbmUiIGlkPSJGLkMz
LkJBdGJvbCI+RsO6dGJvbDwvc3Bhbj48L2gzPgo8ZGl2IGNsYXNzPSJub3ByaW50
IEFQIiBzdHlsZT0ibWFyZ2luOjAgMCAwLjJleCAxZW0iPjxpPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6ODclIj5BcnTDrWN1bG8gcHJpbmNpcGFsOjwvc3Bhbj4gPGEg
aHJlZj0iL3dpa2kvU2VsZWNjaSVDMyVCM25fZGVfZiVDMyVCQXRib2xfZGVfTSVD
MyVCM25hY28iIHRpdGxlPSJTZWxlY2Npw7NuIGRlIGbDunRib2wgZGUgTcOzbmFj
byI+U2VsZWNjacOzbiBkZSBmw7p0Ym9sIGRlIE3Ds25hY288L2E+PC9pPjwvZGl2
Pgo8ZGl2IGNsYXNzPSJub3ByaW50IEFQIiBzdHlsZT0ibWFyZ2luOjAgMCAwLjJl
eCAxZW0iPjxpPjxzcGFuIHN0eWxlPSJmb250LXNpemU6ODclIj5BcnTDrWN1bG8g
cHJpbmNpcGFsOjwvc3Bhbj4gPGEgaHJlZj0iL3dpa2kvRiVDMyVCQXRib2xfZGVf
TSVDMyVCM25hY28iIHRpdGxlPSJGw7p0Ym9sIGRlIE3Ds25hY28iPkbDunRib2wg
ZGUgTcOzbmFjbzwvYT48L2k+PC9kaXY+CjxkaXYgY2xhc3M9InRodW1iIHRyaWdo
dCI+CjxkaXYgY2xhc3M9InRodW1iaW5uZXIiIHN0eWxlPSJ3aWR0aDoxNTJweDsi
PjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86U3RhZGlvbl92b25fTW9uYWNvX1NlaXRl
bmFuc2ljaHQuanBnIiBjbGFzcz0iaW1hZ2UiPjxpbWcgYWx0PSIiIHNyYz0iaHR0
cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1i
LzYvNjQvU3RhZGlvbl92b25fTW9uYWNvX1NlaXRlbmFuc2ljaHQuanBnLzE1MHB4
LVN0YWRpb25fdm9uX01vbmFjb19TZWl0ZW5hbnNpY2h0LmpwZyIgd2lkdGg9IjE1
MCIgaGVpZ2h0PSIyMDAiIGNsYXNzPSJ0aHVtYmltYWdlIiAvPjwvYT4KPGRpdiBj
bGFzcz0idGh1bWJjYXB0aW9uIj4KPGRpdiBjbGFzcz0ibWFnbmlmeSI+PGEgaHJl
Zj0iL3dpa2kvQXJjaGl2bzpTdGFkaW9uX3Zvbl9Nb25hY29fU2VpdGVuYW5zaWNo
dC5qcGciIGNsYXNzPSJpbnRlcm5hbCIgdGl0bGU9IkF1bWVudGFyIj48aW1nIHNy
Yz0iaHR0cDovL2JpdHMud2lraW1lZGlhLm9yZy9za2lucy0xLjUvY29tbW9uL2lt
YWdlcy9tYWduaWZ5LWNsaXAucG5nIiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIGFs
dD0iIiAvPjwvYT48L2Rpdj4KPGEgaHJlZj0iL3dpa2kvRXN0YWRpb19MdWlzX0lJ
IiB0aXRsZT0iRXN0YWRpbyBMdWlzIElJIj5Fc3RhZGlvIEx1aXMgSUk8L2E+Ljwv
ZGl2Pgo8L2Rpdj4KPC9kaXY+CjxwPk3Ds25hY28gcG9zZWUgc3UgcHJvcGlhIHNl
bGVjY2nDs24gbmFjaW9uYWwgZGUgZXN0ZSBkZXBvcnRlLCBhZGVtw6FzIGVsIHBy
aW5jaXBhbCBlcXVpcG8gZGUgPGEgaHJlZj0iL3dpa2kvRiVDMyVCQXRib2wiIHRp
dGxlPSJGw7p0Ym9sIj5mw7p0Ym9sPC9hPiBkZWwgcGHDrXMgZXMgPGEgaHJlZj0i
L3dpa2kvQVNfTW9uYWNvX0ZDIiB0aXRsZT0iQVMgTW9uYWNvIEZDIiBjbGFzcz0i
bXctcmVkaXJlY3QiPkFTIE1vbmFjbyBGQzwvYT4sIHF1ZSBqdWVnYSBlbiBsYSA8
YSBocmVmPSIvd2lraS9MaWd1ZV8xIiB0aXRsZT0iTGlndWUgMSI+TGlndWUgMTwv
YT4gPGEgaHJlZj0iL3dpa2kvRnJhbmNpYSIgdGl0bGU9IkZyYW5jaWEiPmZyYW5j
ZXNhPC9hPiB5IGRpc3B1dGEgc3VzIGVuY3VlbnRyb3MgbG9jYWxlcyBlbiBlbCA8
YSBocmVmPSIvd2lraS9Fc3RhZGlvX0x1aXNfSUkiIHRpdGxlPSJFc3RhZGlvIEx1
aXMgSUkiPkVzdGFkaW8gTHVpcyBJSTwvYT4uPHN1cCBpZD0iY2l0ZV9yZWYtMTgi
IGNsYXNzPSJyZWZlcmVuY2UiPjxhIGhyZWY9IiNjaXRlX25vdGUtMTgiPjxzcGFu
IGNsYXNzPSJjb3JjaGV0ZS1sbGFtYWRhIj5bPC9zcGFuPjE5PHNwYW4gY2xhc3M9
ImNvcmNoZXRlLWxsYW1hZGEiPl08L3NwYW4+PC9hPjwvc3VwPjwvcD4KPHA+RWwg
Q2x1YiBjb25zaWd1acOzIHNlciBmaW5hbGlzdGEgZW4gbGEgTGlnYSBkZSBDYW1w
ZW9uZXMgZGUgbGEgPGEgaHJlZj0iL3dpa2kvVUVGQSIgdGl0bGU9IlVFRkEiPlVF
RkE8L2E+IGVkaWNpw7NuIDIwMDMtMjAwNCwgbGEgY3VhbCBwZXJkacOzIGZyZW50
ZSBhbCBPcG9ydG8gZGUgUG9ydHVnYWwgY29uIHVuIG1hcmNhZG9yIGRlIDAtMy4g
RWwgbWlzbW8gdHV2byBsdWdhciBlbCA8YSBocmVmPSIvd2lraS8yNl9kZV9tYXlv
IiB0aXRsZT0iMjYgZGUgbWF5byI+MjYgZGUgbWF5bzwvYT4gZGUgPGEgaHJlZj0i
L3dpa2kvMjAwNCIgdGl0bGU9IjIwMDQiPjIwMDQ8L2E+IGVuIGVsIEFyZW5hIEF1
ZlNjaGFsa2UgZGUgR2Vsc2Vua2lyY2hlbiwgZW4gQWxlbWFuaWEuPC9wPgo8aDI+
PHNwYW4gY2xhc3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5kZXgucGhw
P3RpdGxlPU0lQzMlQjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2VjdGlvbj0z
OCIgdGl0bGU9IkVkaXRhciBzZWNjacOzbjogVsOpYXNlIHRhbWJpw6luIj5lZGl0
YXI8L2E+XTwvc3Bhbj4gPHNwYW4gY2xhc3M9Im13LWhlYWRsaW5lIiBpZD0iVi5D
My5BOWFzZV90YW1iaS5DMy5BOW4iPlbDqWFzZSB0YW1iacOpbjwvc3Bhbj48L2gy
Pgo8dWw+CjxsaT48YSBocmVmPSIvd2lraS9BcmNoaXZvOkNvYXRfb2ZfYXJtc19v
Zl9Nb25hY28uc3ZnIiBjbGFzcz0iaW1hZ2UiIHRpdGxlPSJWZXIgZWwgcG9ydGFs
IHNvYnJlIE3Ds25hY28iPjxpbWcgYWx0PSJWZXIgZWwgcG9ydGFsIHNvYnJlIE3D
s25hY28iIHNyYz0iaHR0cDovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRp
YS9jb21tb25zL3RodW1iL2MvYzgvQ29hdF9vZl9hcm1zX29mX01vbmFjby5zdmcv
MjBweC1Db2F0X29mX2FybXNfb2ZfTW9uYWNvLnN2Zy5wbmciIHdpZHRoPSIyMCIg
aGVpZ2h0PSIxOSIgLz48L2E+IDxhIGhyZWY9Ii93aWtpL1BvcnRhbDpNJUMzJUIz
bmFjbyIgdGl0bGU9IlBvcnRhbDpNw7NuYWNvIj5Qb3J0YWw6TcOzbmFjbzwvYT4u
IENvbnRlbmlkbyByZWxhY2lvbmFkbyBjb24gPGI+PHN0cm9uZyBjbGFzcz0ic2Vs
ZmxpbmsiPk3Ds25hY288L3N0cm9uZz48L2I+LjwvbGk+CjxsaT48YSBocmVmPSIv
d2lraS9MaXN0YV9kZV9Tb2JlcmFub3NfZGVfTSVDMyVCM25hY28iIHRpdGxlPSJM
aXN0YSBkZSBTb2JlcmFub3MgZGUgTcOzbmFjbyIgY2xhc3M9Im13LXJlZGlyZWN0
Ij5MaXN0YSBkZSBTb2JlcmFub3MgZGUgTcOzbmFjbzwvYT48L2xpPgo8L3VsPgo8
aDI+PHNwYW4gY2xhc3M9ImVkaXRzZWN0aW9uIj5bPGEgaHJlZj0iL3cvaW5kZXgu
cGhwP3RpdGxlPU0lQzMlQjNuYWNvJmFtcDthY3Rpb249ZWRpdCZhbXA7c2VjdGlv
bj0zOSIgdGl0bGU9IkVkaXRhciBzZWNjacOzbjogTm90YXMiPmVkaXRhcjwvYT5d
PC9zcGFuPiA8c3BhbiBjbGFzcz0ibXctaGVhZGxpbmUiIGlkPSJOb3RhcyI+Tm90
YXM8L3NwYW4+PC9oMj4KPGRpdiBjbGFzcz0ibGlzdGFyZWYgcmVmZXJlbmNlcy1z
bWFsbCIgc3R5bGU9Ii1tb3otY29sdW1uLWNvdW50OjI7IC13ZWJraXQtY29sdW1u
LWNvdW50OjI7IGNvbHVtbi1jb3VudDoyIj4KPG9sIGNsYXNzPSJyZWZlcmVuY2Vz
Ij4KPGxpIGlkPSJjaXRlX25vdGUtMCI+PGEgaHJlZj0iI2NpdGVfcmVmLTAiPuKG
kTwvYT4gTcOzbmFjbyBlcyB1bmEgPGEgaHJlZj0iL3dpa2kvQ2l1ZGFkX2VzdGFk
byIgdGl0bGU9IkNpdWRhZCBlc3RhZG8iPmNpdWRhZCBlc3RhZG88L2E+LjwvbGk+
CjxsaSBpZD0iY2l0ZV9ub3RlLTEiPjxhIGhyZWY9IiNjaXRlX3JlZi0xIj7ihpE8
L2E+IMKrPGEgaHJlZj0iaHR0cDovL3d3dy5qYXJkaW4tZXhvdGlxdWUubWMvZ3Jv
dHRlLmh0bSIgY2xhc3M9ImV4dGVybmFsIHRleHQiIHJlbD0ibm9mb2xsb3ciPkxh
IGdyb3R0ZSBkZSBs4oCZT2JzZXJ2YXRvaXJlPC9hPsK7IDxzcGFuIHN0eWxlPSJj
b2xvcjojNTU1OyI+KGVuIGZyYW5jw6lzKTwvc3Bhbj4uIENvbnN1bHRhZG8gZWwg
MTkgZGUgYWJyaWwmIzE2MDtkZSAyMDA5LjwvbGk+CjxsaSBpZD0iY2l0ZV9ub3Rl
LTIiPjxhIGhyZWY9IiNjaXRlX3JlZi0yIj7ihpE8L2E+IMKrPGEgaHJlZj0iaHR0
cDovL3d3dy5nb3V2Lm1jL2Rldnd3dy93d3duZXcubnNmLzE5MDkkLzczYmI0MmY3
ZDE2N2FhYjNjMTI1NzA2ZjAwNDljYzQxZnI/T3BlbkRvY3VtZW50JmFtcDs2RnIi
IGNsYXNzPSJleHRlcm5hbCB0ZXh0IiByZWw9Im5vZm9sbG93Ij5NdXPDqWUgZOKA
mUFudGhyb3BvbG9naWUgcHLDqWhpc3RvcmlxdWU8L2E+wrsgPHNwYW4gc3R5bGU9
ImNvbG9yOiM1NTU7Ij4oZW4gZnJhbmPDqXMpPC9zcGFuPi4gQ29uc3VsdGFkbyBl
bCAxOSBkZSBhYnJpbCYjMTYwO2RlIDIwMDkuPC9saT4KPGxpIGlkPSJjaXRlX25v
dGUtMyI+PGEgaHJlZj0iI2NpdGVfcmVmLTMiPuKGkTwvYT4gPGEgaHJlZj0iL3dp
a2kvT2ZpY2luYV9kZWxfQWx0b19Db21pc2lvbmFkb19wYXJhX2xvc19EZXJlY2hv
c19IdW1hbm9zIiB0aXRsZT0iT2ZpY2luYSBkZWwgQWx0byBDb21pc2lvbmFkbyBw
YXJhIGxvcyBEZXJlY2hvcyBIdW1hbm9zIiBjbGFzcz0ibXctcmVkaXJlY3QiPk9m
aWNpbmEgZGVsIEFsdG8gQ29taXNpb25hZG8gcGFyYSBsb3MgRGVyZWNob3MgSHVt
YW5vczwvYT4gKGxpc3RhIGFjdHVhbGl6YWRhKS4gwqs8YSBocmVmPSJodHRwOi8v
d3d3LnVuaGNoci5jaC90YnMvZG9jLm5zZi9uZXdodnN0YXR1c2J5Y291bnRyeT9P
cGVuVmlldyZhbXA7U3RhcnQ9MSZhbXA7Q291bnQ9MjUwJmFtcDtDb2xsYXBzZT0x
IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgcmVsPSJub2ZvbGxvdyI+TGlzdGEgZGUg
dG9kb3MgbG9zIEVzdGFkb3MgTWllbWJyb3MgZGUgbGFzIE5hY2lvbmVzIFVuaWRh
cyBxdWUgc29uIHBhcnRlIG8gc2lnbmF0YXJpb3MgZW4gbG9zIGRpdmVyc29zIGlu
c3RydW1lbnRvcyBkZSBkZXJlY2hvcyBodW1hbm9zIGRlIGxhcyBOYWNpb25lcyBV
bmlkYXM8L2E+wrsgPHNwYW4gc3R5bGU9ImNvbG9yOiM1NTU7Ij4oZW4gaW5nbMOp
cyk8L3NwYW4+ICh3ZWIpLiBDb25zdWx0YWRvIGVsIDIxIGRlIG9jdHVicmUmIzE2
MDtkZSAyMDA5LjwvbGk+CjxsaSBpZD0iY2l0ZV9ub3RlLTQiPjxhIGhyZWY9IiNj
aXRlX3JlZi00Ij7ihpE8L2E+IDxhIGhyZWY9Ii93aWtpL1BhY3RvX0ludGVybmFj
aW9uYWxfZGVfRGVyZWNob3NfRWNvbiVDMyVCM21pY29zLF9Tb2NpYWxlc195X0N1
bHR1cmFsZXMiIHRpdGxlPSJQYWN0byBJbnRlcm5hY2lvbmFsIGRlIERlcmVjaG9z
IEVjb27Ds21pY29zLCBTb2NpYWxlcyB5IEN1bHR1cmFsZXMiPlBhY3RvIEludGVy
bmFjaW9uYWwgZGUgRGVyZWNob3MgRWNvbsOzbWljb3MsIFNvY2lhbGVzIHkgQ3Vs
dHVyYWxlczwvYT4sIHZpZ2lsYWRvIHBvciBlbCBDb21pdMOpIGRlIERlcmVjaG9z
IEVjb27Ds21pY29zLCBTb2NpYWxlcyB5IEN1bHR1cmFsZXMuPGJyIC8+CiMgPGEg
aHJlZj0iL3dpa2kvUHJvdG9jb2xvX0ZhY3VsdGF0aXZvX2RlbF9QYWN0b19JbnRl
cm5hY2lvbmFsX2RlX0RlcmVjaG9zX0Vjb24lQzMlQjNtaWNvcyxfU29jaWFsZXNf
eV9DdWx0dXJhbGVzIiB0aXRsZT0iUHJvdG9jb2xvIEZhY3VsdGF0aXZvIGRlbCBQ
YWN0byBJbnRlcm5hY2lvbmFsIGRlIERlcmVjaG9zIEVjb27Ds21pY29zLCBTb2Np
YWxlcyB5IEN1bHR1cmFsZXMiPkNFU0NSLU9QPC9hPjogUHJvdG9jb2xvIEZhY3Vs
dGF0aXZvIGRlbCBQYWN0byBJbnRlcm5hY2lvbmFsIGRlIERlcmVjaG9zIEVjb27D
s21pY29zLCBTb2NpYWxlcyB5IEN1bHR1cmFsZXMgKDxhIGhyZWY9Imh0dHA6Ly93
d3cyLm9oY2hyLm9yZy9zcGFuaXNoL2xhdy9kb2NzL0EuUkVTLjYzLjExN19zcC5w
ZGYiIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiByZWw9Im5vZm9sbG93Ij52ZXJzacOz
biBwZGY8L2E+KS48L2xpPgo8bGkgaWQ9ImNpdGVfbm90ZS01Ij48YSBocmVmPSIj
Y2l0ZV9yZWYtNSI+4oaRPC9hPiA8YSBocmVmPSIvd2lraS9QYWN0b19JbnRlcm5h
Y2lvbmFsX2RlX0RlcmVjaG9zX0NpdmlsZXNfeV9Qb2wlQzMlQUR0aWNvcyIgdGl0
bGU9IlBhY3RvIEludGVybmFjaW9uYWwgZGUgRGVyZWNob3MgQ2l2aWxlcyB5IFBv
bMOtdGljb3MiPlBhY3RvIEludGVybmFjaW9uYWwgZGUgRGVyZWNob3MgQ2l2aWxl
cyB5IFBvbMOtdGljb3M8L2E+LCB2aWdpbGFkbyBwb3IgZWwgQ29taXTDqSBkZSBE
ZXJlY2hvcyBIdW1hbm9zLjxiciAvPgojIENDUFItT1AxOiA8YSBocmVmPSIvd2lr
aS9QcmltZXJfUHJvdG9jb2xvX0ZhY3VsdGF0aXZvX2RlbF9QYWN0b19JbnRlcm5h
Y2lvbmFsX2RlX0RlcmVjaG9zX0NpdmlsZXNfeV9Qb2wlQzMlQUR0aWNvcyIgdGl0
bGU9IlByaW1lciBQcm90b2NvbG8gRmFjdWx0YXRpdm8gZGVsIFBhY3RvIEludGVy
bmFjaW9uYWwgZGUgRGVyZWNob3MgQ2l2aWxlcyB5IFBvbMOtdGljb3MiPlByaW1l
ciBQcm90b2NvbG8gRmFjdWx0YXRpdm8gZGVsIFBhY3RvIEludGVybmFjaW9uYWwg
ZGUgRGVyZWNob3MgQ2l2aWxlcyB5IFBvbMOtdGljb3M8L2E+LCB2aWdpbGFkbyBw
b3IgZWwgQ29taXTDqSBkZSBEZXJlY2hvcyBIdW1hbm9zLjxiciAvPgojIENDUFIt
T1AyOiA8YSBocmVmPSIvd2lraS9TZWd1bmRvX1Byb3RvY29sb19GYWN1bHRhdGl2
b19kZWxfUGFjdG9fSW50ZXJuYWNpb25hbF9kZV9EZXJlY2hvc19DaXZpbGVzX3lf
UG9sJUMzJUFEdGljb3MiIHRpdGxlPSJTZWd1bmRvIFByb3RvY29sbyBGYWN1bHRh
dGl2byBkZWwgUGFjdG8gSW50ZXJuYWNpb25hbCBkZSBEZXJlY2hvcyBDaXZpbGVz
IHkgUG9sw610aWNvcyI+U2VndW5kbyBQcm90b2NvbG8gRmFjdWx0YXRpdm88L2E+
LCBkZXN0aW5hZG8gYSBhYm9saXIgbGEgPGEgaHJlZj0iL3dpa2kvUGVuYV9kZV9t
dWVydGUiIHRpdGxlPSJQZW5hIGRlIG11ZXJ0ZSI+cGVuYSBkZSBtdWVydGU8L2E+
LjwvbGk+CjxsaSBpZD0iY2l0ZV9ub3RlLTYiPjxhIGhyZWY9IiNjaXRlX3JlZi02
Ij7ihpE8L2E+IENvbnZlbmNpw7NuIEludGVybmFjaW9uYWwgc29icmUgbGEgRWxp
bWluYWNpw7NuIGRlIHRvZGFzIGxhcyBGb3JtYXMgZGUgRGlzY3JpbWluYWNpw7Nu
IFJhY2lhbCwgdmlnaWxhZGEgcG9yIGVsIENvbWl0w6kgcGFyYSBsYSBFbGltaW5h
Y2nDs24gZGUgRGlzY3JpbWluYWNpw7NuIFJhY2lhbC48L2xpPgo8bGkgaWQ9ImNp
dGVfbm90ZS03Ij48YSBocmVmPSIjY2l0ZV9yZWYtNyI+4oaRPC9hPiBDb252ZW5j
acOzbiBJbnRlcm5hY2lvbmFsIHBhcmEgbGEgcHJvdGVjY2nDs24gZGUgdG9kYXMg
bGFzIHBlcnNvbmFzIGNvbnRyYSBsYXMgZGVzYXBhcmljaW9uZXMgZm9yemFkYXMu
PC9saT4KPGxpIGlkPSJjaXRlX25vdGUtOCI+PGEgaHJlZj0iI2NpdGVfcmVmLTgi
PuKGkTwvYT4gPGEgaHJlZj0iL3dpa2kvQ0VEQVciIHRpdGxlPSJDRURBVyIgY2xh
c3M9Im13LXJlZGlyZWN0Ij5Db252ZW5jacOzbiBJbnRlcm5hY2lvbmFsIHNvYnJl
IGxhIEVsaW1pbmFjacOzbiBkZSB0b2RhcyBsYXMgRm9ybWFzIGRlIERpc2NyaW1p
bmFjacOzbiBjb250cmEgbGEgTXVqZXI8L2E+LCB2aWdpbGFkYSBwb3IgZWwgQ29t
aXTDqSBwYXJhIGxhIEVsaW1pbmFjacOzbiBkZSBEaXNjcmltaW5hY2nDs24gY29u
dHJhIGxhIE11amVyLjxiciAvPgojIENFREFXLU9QOiA8YSBocmVmPSJodHRwOi8v
d3d3Mi5vaGNoci5vcmcvc3BhbmlzaC9sYXcvY2VkYXctb25lLmh0bSIgY2xhc3M9
ImV4dGVybmFsIHRleHQiIHJlbD0ibm9mb2xsb3ciPlByb3RvY29sbyBGYWN1bHRh
dGl2byBkZSBsYSBDb252ZW5jacOzbiBzb2JyZSBsYSBFbGltaW5hY2nDs24gZGUg
dG9kYXMgbGFzIEZvcm1hcyBkZSBEaXNjcmltaW5hY2nDs24gY29udHJhIGxhIE11
amVyPC9hPi48L2xpPgo8bGkgaWQ9ImNpdGVfbm90ZS05Ij48YSBocmVmPSIjY2l0
ZV9yZWYtOSI+4oaRPC9hPiA8YSBocmVmPSJodHRwOi8vd3d3Mi5vaGNoci5vcmcv
c3BhbmlzaC9sYXcvY2F0Lmh0bSIgY2xhc3M9ImV4dGVybmFsIHRleHQiIHJlbD0i
bm9mb2xsb3ciPkNvbnZlbmNpw7NuIGNvbnRyYSBsYSB0b3J0dXJhIHkgb3Ryb3Mg
dHJhdG9zIG8gcGVuYXMgY3J1ZWxlcywgaW5odW1hbm9zIG8gZGVncmFkYW50ZXM8
L2E+LCB2aWdpbGFkYSBwb3IgZWwgQ29taXTDqSBjb250cmEgbGEgPGEgaHJlZj0i
L3dpa2kvVG9ydHVyYSIgdGl0bGU9IlRvcnR1cmEiPnRvcnR1cmE8L2E+LjxiciAv
PgojIENBVC1PUDogUHJvdG9jb2xvIEZhY3VsdGF0aXZvIGRlIGxhIENvbnZlbmNp
w7NuIGNvbnRyYSBsYSB0b3J0dXJhIHkgb3Ryb3MgdHJhdG9zIG8gcGVuYXMgY3J1
ZWxlcywgaW5odW1hbm9zIG8gZGVncmFkYW50ZXMuICg8YSBocmVmPSJodHRwOi8v
ZGFjY2Vzcy1vZHMudW4ub3JnL1RNUC8zNTg1Nzg4Lmh0bWwiIGNsYXNzPSJleHRl
cm5hbCB0ZXh0IiByZWw9Im5vZm9sbG93Ij52ZXJzacOzbiBwZGY8L2E+KTwvbGk+
CjxsaSBpZD0iY2l0ZV9ub3RlLTEwIj48YSBocmVmPSIjY2l0ZV9yZWYtMTAiPuKG
kTwvYT4gPGEgaHJlZj0iL3dpa2kvQ29udmVuY2klQzMlQjNuX3NvYnJlX2xvc19E
ZXJlY2hvc19kZWxfTmklQzMlQjFvIiB0aXRsZT0iQ29udmVuY2nDs24gc29icmUg
bG9zIERlcmVjaG9zIGRlbCBOacOxbyI+Q29udmVuY2nDs24gc29icmUgbG9zIERl
cmVjaG9zIGRlbCBOacOxbzwvYT4sIHZpZ2lsYWRhIHBvciBlbCBDb21pdMOpIGRl
IGxvcyBEZXJlY2hvcyBkZWwgTmnDsW8uPGJyIC8+CiMgQ1JDLU9QLUFDOiBQcm90
b2NvbG8gRmFjdWx0YXRpdm8gZGUgbGEgQ29udmVuY2nDs24gc29icmUgbG9zIERl
cmVjaG9zIGRlbCBOacOxbyByZWxhdGl2byBhIGxhIHBhcnRpY2lwYWNpw7NuIGVu
IGxvcyBjb25mbGljdG9zIGFybWFkb3MuPGJyIC8+CiMgQ1JDLU9QLVNDOiBQcm90
b2NvbG8gRmFjdWx0YXRpdm8gZGUgbGEgQ29udmVuY2nDs24gc29icmUgbG9zIERl
cmVjaG9zIGRlbCBOacOxbyByZWxhdGl2byBhIGxhIHZlbnRhIGRlIG5pw7Fvcywg
bGEgcHJvc3RpdHVjacOzbiBpbmZhbnRpbCB5IGxhIHV0aWxpemFjacOzbiBkZSBu
acOxb3MgZW4gbGEgPGEgaHJlZj0iL3dpa2kvUG9ybm9ncmFmJUMzJUFEYSIgdGl0
bGU9IlBvcm5vZ3JhZsOtYSI+cG9ybm9ncmFmw61hPC9hPi48L2xpPgo8bGkgaWQ9
ImNpdGVfbm90ZS0xMSI+PGEgaHJlZj0iI2NpdGVfcmVmLTExIj7ihpE8L2E+IENv
bnZlbmNpw7NuIEludGVybmFjaW9uYWwgc29icmUgbGEgcHJvdGVjY2nDs24gZGUg
bG9zIGRlcmVjaG9zIGRlIHRvZG9zIGxvcyB0cmFiYWphZG9yZXMgbWlncmF0b3Jp
b3MgeSBkZSBzdXMgZmFtaWxpYXJlcy4gTGEgY29udmVuY2nDs24gZW50cmFyw6Eg
ZW4gdmlnb3IgY3VhbmRvIHNlYSByYXRpZmljYWRhIHBvciB2ZWludGUgZXN0YWRv
cy48L2xpPgo8bGkgaWQ9ImNpdGVfbm90ZS0xMiI+PGEgaHJlZj0iI2NpdGVfcmVm
LTEyIj7ihpE8L2E+IDxhIGhyZWY9Ii93aWtpL0NvbnZlbmNpJUMzJUIzbl9zb2Jy
ZV9sb3NfRGVyZWNob3NfZGVfbGFzX1BlcnNvbmFzX2Nvbl9EaXNjYXBhY2lkYWQi
IHRpdGxlPSJDb252ZW5jacOzbiBzb2JyZSBsb3MgRGVyZWNob3MgZGUgbGFzIFBl
cnNvbmFzIGNvbiBEaXNjYXBhY2lkYWQiPkNvbnZlbmNpw7NuIHNvYnJlIGxvcyBE
ZXJlY2hvcyBkZSBsYXMgUGVyc29uYXMgY29uIERpc2NhcGFjaWRhZDwvYT4sIHZp
Z2lsYWRvIHBvciBlbCBDb21pdMOpIHNvYnJlIGxvcyBEZXJlY2hvcyBkZSBsYXMg
UGVyc29uYXMgY29uIERpc2NhcGFjaWRhZC48YnIgLz4KIyA8YSBocmVmPSIvd2lr
aS9Qcm90b2NvbG9fRmFjdWx0YXRpdm9fZGVfbGFfQ29udmVuY2klQzMlQjNuX3Nv
YnJlX2xvc19EZXJlY2hvc19kZV9sYXNfUGVyc29uYXNfY29uX0Rpc2NhcGFjaWRh
ZCIgdGl0bGU9IlByb3RvY29sbyBGYWN1bHRhdGl2byBkZSBsYSBDb252ZW5jacOz
biBzb2JyZSBsb3MgRGVyZWNob3MgZGUgbGFzIFBlcnNvbmFzIGNvbiBEaXNjYXBh
Y2lkYWQiPkNSUEQtT1A8L2E+OiA8YSBocmVmPSJodHRwOi8vd3d3Mi5vaGNoci5v
cmcvc3BhbmlzaC9sYXcvZGlzYWJpbGl0aWVzLW9wLmh0bSIgY2xhc3M9ImV4dGVy
bmFsIHRleHQiIHJlbD0ibm9mb2xsb3ciPlByb3RvY29sbyBGYWN1bHRhdGl2byBk
ZSBsYSBDb252ZW5jacOzbiBzb2JyZSBsb3MgRGVyZWNob3MgZGUgbGFzIFBlcnNv
bmFzIGNvbiBEaXNjYXBhY2lkYWQ8L2E+LjwvbGk+CjxsaSBpZD0iY2l0ZV9ub3Rl
LTEzIj48YSBocmVmPSIjY2l0ZV9yZWYtMTMiPuKGkTwvYT4gbmFtZT0iUmVjZW5z
ZW1lbnQyMDAiPC9saT4KPGxpIGlkPSJjaXRlX25vdGUtMTQiPjxhIGhyZWY9IiNj
aXRlX3JlZi0xNCI+4oaRPC9hPiA8YSBocmVmPSJodHRwczovL3d3dy5jaWEuZ292
L2xpYnJhcnkvcHVibGljYXRpb25zL3RoZS13b3JsZC1mYWN0Ym9vay9yYW5rb3Jk
ZXIvMjEwMnJhbmsuaHRtbCIgY2xhc3M9ImV4dGVybmFsIHRleHQiIHJlbD0ibm9m
b2xsb3ciPlRoZSBXb3JsZCBGYWN0Ym9vazwvYT48L2xpPgo8bGkgaWQ9ImNpdGVf
bm90ZS0xNSI+PGEgaHJlZj0iI2NpdGVfcmVmLTE1Ij7ihpE8L2E+IDxhIGhyZWY9
Imh0dHA6Ly93d3cuY29sbGVnZS1jaGFybGVzMy5tYy8iIGNsYXNzPSJleHRlcm5h
bCB0ZXh0IiByZWw9Im5vZm9sbG93Ij5Db2xsw6hnZSBDaGFybGVzIElJSTwvYT48
L2xpPgo8bGkgaWQ9ImNpdGVfbm90ZS0xNiI+PGEgaHJlZj0iI2NpdGVfcmVmLTE2
Ij7ihpE8L2E+IDxhIGhyZWY9Imh0dHA6Ly93d3cubHljZWUtYWxiZXJ0MWVyLm1j
LyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIHJlbD0ibm9mb2xsb3ciPkx5Y8OpZSBB
bGJlcnQgMWVyPC9hPjwvbGk+CjxsaSBpZD0iY2l0ZV9ub3RlLTE3Ij48YSBocmVm
PSIjY2l0ZV9yZWYtMTciPuKGkTwvYT4gwqs8YSBocmVmPSJodHRwOi8vd3d3Lmx5
Y2VlLXRlY2huaXF1ZS5tYy8iIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiByZWw9Im5v
Zm9sbG93Ij5MeWPDqWUgdGVjaG5pcXVlIGV0IGjDtHRlbGllciBkZSBNb250ZS1D
YXJsbzwvYT7CuyA8c3BhbiBzdHlsZT0iY29sb3I6IzU1NTsiPihlbiBmcmVuY2gp
PC9zcGFuPi4gQ29uc3VsdGFkbyBlbCAyMy0wNS0yMDA5LjwvbGk+CjxsaSBpZD0i
Y2l0ZV9ub3RlLTE4Ij48YSBocmVmPSIjY2l0ZV9yZWYtMTgiPuKGkTwvYT4gwqs8
YSBocmVmPSJodHRwOi8vd3d3LmFzbS1mYy5jb20vc3RhZGUuYXNweCIgY2xhc3M9
ImV4dGVybmFsIHRleHQiIHJlbD0ibm9mb2xsb3ciPlN0YWRlIExvdWlzIElJPC9h
PsK7LiYjMTYwO8KrZW4gPGEgaHJlZj0iL3dpa2kvSWRpb21hX2ZyYW5jJUMzJUE5
cyIgdGl0bGU9IklkaW9tYSBmcmFuY8OpcyI+ZnJhbmPDqXM8L2E+LCBlbiBsYSB3
ZWIgb2ZpY2lhbCBkZWwgY2x1Yi7Cuy48L2xpPgo8L29sPgo8L2Rpdj4KPGgyPjxz
cGFuIGNsYXNzPSJlZGl0c2VjdGlvbiI+WzxhIGhyZWY9Ii93L2luZGV4LnBocD90
aXRsZT1NJUMzJUIzbmFjbyZhbXA7YWN0aW9uPWVkaXQmYW1wO3NlY3Rpb249NDAi
IHRpdGxlPSJFZGl0YXIgc2VjY2nDs246IEVubGFjZXMgZXh0ZXJub3MiPmVkaXRh
cjwvYT5dPC9zcGFuPiA8c3BhbiBjbGFzcz0ibXctaGVhZGxpbmUiIGlkPSJFbmxh
Y2VzX2V4dGVybm9zIj5FbmxhY2VzIGV4dGVybm9zPC9zcGFuPjwvaDI+Cjx1bD4K
PGxpPjxhIGhyZWY9Ii93aWtpL0FyY2hpdm86Q29tbW9ucy1sb2dvLnN2ZyIgY2xh
c3M9ImltYWdlIiB0aXRsZT0iQ29sYWJvcmEgZW4gQ29tbW9ucy4iPjxpbWcgYWx0
PSJDb2xhYm9yYSBlbiBDb21tb25zLiIgc3JjPSJodHRwOi8vdXBsb2FkLndpa2lt
ZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvdGh1bWIvNC80YS9Db21tb25zLWxv
Z28uc3ZnLzE1cHgtQ29tbW9ucy1sb2dvLnN2Zy5wbmciIHdpZHRoPSIxNSIgaGVp
Z2h0PSIyMCIgLz48L2E+IDxhIGhyZWY9Ii93aWtpL1dpa2ltZWRpYV9Db21tb25z
IiB0aXRsZT0iV2lraW1lZGlhIENvbW1vbnMiPldpa2ltZWRpYSBDb21tb25zPC9h
PiBhbGJlcmdhIGNvbnRlbmlkbyBtdWx0aW1lZGlhIHNvYnJlIDxiPjxhIGhyZWY9
Imh0dHA6Ly9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9Nb25hY28iIGNsYXNz
PSJleHRpdyIgdGl0bGU9ImNvbW1vbnM6TW9uYWNvIj5Nw7NuYWNvPC9hPjwvYj4u
PHNwYW4gY2xhc3M9ImludGVyUHJvamVjdCI+PGEgaHJlZj0iaHR0cDovL2NvbW1v
bnMud2lraW1lZGlhLm9yZy93aWtpL01vbmFjbyIgY2xhc3M9ImV4dGl3IiB0aXRs
ZT0iY29tbW9uczpNb25hY28iPkNvbW1vbnM8L2E+PC9zcGFuPjwvbGk+CjxsaT48
YSBocmVmPSIvd2lraS9BcmNoaXZvOldpa2luZXdzLWxvZ28uc3ZnIiBjbGFzcz0i
aW1hZ2UiIHRpdGxlPSJDb2xhYm9yYSBlbiBXaWtpbm90aWNpYXMiPjxpbWcgYWx0
PSJDb2xhYm9yYSBlbiBXaWtpbm90aWNpYXMiIHNyYz0iaHR0cDovL3VwbG9hZC53
aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zL3RodW1iLzIvMjQvV2lraW5l
d3MtbG9nby5zdmcvMjBweC1XaWtpbmV3cy1sb2dvLnN2Zy5wbmciIHdpZHRoPSIy
MCIgaGVpZ2h0PSIxMSIgLz48L2E+IDxhIGhyZWY9Ii93aWtpL1dpa2lub3RpY2lh
cyIgdGl0bGU9Ildpa2lub3RpY2lhcyI+V2lraW5vdGljaWFzPC9hPiB0aWVuZSBu
b3RpY2lhcyByZWxhY2lvbmFkYXMgY29uIDxiPjxhIGhyZWY9Imh0dHA6Ly9lcy53
aWtpbmV3cy5vcmcvd2lraS9TcGVjaWFsOlNlYXJjaC9NJUMzJUIzbmFjbyIgY2xh
c3M9ImV4dGl3IiB0aXRsZT0ibjpTcGVjaWFsOlNlYXJjaC9Nw7NuYWNvIj5Nw7Nu
YWNvPC9hPjwvYj4uPHNwYW4gY2xhc3M9ImludGVyUHJvamVjdCI+PGEgaHJlZj0i
aHR0cDovL2VzLndpa2luZXdzLm9yZy93aWtpL00lQzMlQjNuYWNvIiBjbGFzcz0i
ZXh0aXciIHRpdGxlPSJuOk3Ds25hY28iPldpa2lub3RpY2lhczwvYT48L3NwYW4+
PC9saT4KPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cudHJhZGl0aW9ucy1tb25hY28u
Y29tL2ZldGVwcmluY2UucGhwP21lbnU9Mi8iIGNsYXNzPSJleHRlcm5hbCB0ZXh0
IiByZWw9Im5vZm9sbG93Ij5Db21pdMOpIGRlIFRyYWRpY2lvbmVzIE1vbmVnYXNj
YXM8L2E+IChlbiBmcmFuY8Opcyk8L2xpPgo8bGk+PGEgaHJlZj0iaHR0cDovL3d3
dy52aXNpdG1vbmFjby5jb20vaW5kZXguY2ZtLyIgY2xhc3M9ImV4dGVybmFsIHRl
eHQiIHJlbD0ibm9mb2xsb3ciPlDDoWdpbmEgV2ViIE9maWNpYWwgZGUgVHVyaXNt
bzwvYT4gKGVuIGZyYW5jw6lzIHkgZW4gaW5nbMOpcyk8L2xpPgo8bGk+PGEgaHJl
Zj0iaHR0cDovL3d3dy5tb25hY28uZ291di5tYy8iIGNsYXNzPSJleHRlcm5hbCB0
ZXh0IiByZWw9Im5vZm9sbG93Ij5TaXRpbyBXZWIgb2ZpY2lhbDwvYT4gKGVuIGZy
YW5jw6lzKTwvbGk+CjxsaT48YSBocmVmPSJodHRwOi8vd3d3Lm1vbmFjby5nb3V2
Lm1jL2Rldnd3dy93d3duZXcubnNmL0hvbWVHYi8iIGNsYXNzPSJleHRlcm5hbCB0
ZXh0IiByZWw9Im5vZm9sbG93Ij5TaXRpbyBXZWIgb2ZpY2lhbDwvYT4gKGVuIGlu
Z2zDqXMpPC9saT4KPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGUtY2FybG8u
bWMvaW5kZXgtbW9uYWNvX21vbnRlY2FybG8tZXMuaHRtbCIgY2xhc3M9ImV4dGVy
bmFsIHRleHQiIHJlbD0ibm9mb2xsb3ciPk1vbnRlLWNhcmxvPC9hPjwvbGk+Cjxs
aT48YSBocmVmPSJodHRwOi8vc2FiaW4ucm8vZ2FsbGVyeS9hbGJ1bTkwIiBjbGFz
cz0iZXh0ZXJuYWwgdGV4dCIgcmVsPSJub2ZvbGxvdyI+R2FsZXLDrWEgZm90b2dy
w6FmaWNhIGRlIE3Ds25hY288L2E+PC9saT4KPGxpPjxhIGhyZWY9Imh0dHA6Ly93
d3cuZWFydGhpbnBpY3R1cmVzLmNvbS9lcy9tdW5kby9tw7NuYWNvL23Ds25hY28i
IGNsYXNzPSJleHRlcm5hbCB0ZXh0IiByZWw9Im5vZm9sbG93Ij5JbcOhZ2VuZXMg
ZGUgTcOzbmFjbzwvYT48L2xpPgo8L3VsPgo8cD48c3BhbiBjbGFzcz0iZGVzdGFj
YWRvIiBpZD0iYWYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L3NwYW4+PC9wPgoK
CjwhLS0gCk5ld1BQIGxpbWl0IHJlcG9ydApQcmVwcm9jZXNzb3Igbm9kZSBjb3Vu
dDogNDE4Ny8xMDAwMDAwClBvc3QtZXhwYW5kIGluY2x1ZGUgc2l6ZTogNDA0MjAv
MjA0ODAwMCBieXRlcwpUZW1wbGF0ZSBhcmd1bWVudCBzaXplOiA4MTQ1LzIwNDgw
MDAgYnl0ZXMKRXhwZW5zaXZlIHBhcnNlciBmdW5jdGlvbiBjb3VudDogMC81MDAK
LS0+Cgo8IS0tIFNhdmVkIGluIHBhcnNlciBjYWNoZSB3aXRoIGtleSBlc3dpa2k6
cGNhY2hlOmlkaGFzaDoyMzU2NC0wITEhMCEhZXMhNCBhbmQgdGltZXN0YW1wIDIw
MTAwOTA5MjE1NTA0IC0tPgo8ZGl2IGNsYXNzPSJwcmludGZvb3RlciI+Ck9idGVu
aWRvIGRlICI8YSBocmVmPSJodHRwOi8vZXMud2lraXBlZGlhLm9yZy93aWtpL00l
QzMlQjNuYWNvIj5odHRwOi8vZXMud2lraXBlZGlhLm9yZy93aWtpL00lQzMlQjNu
YWNvPC9hPiI8L2Rpdj4KCQkJCTwhLS0gL2JvZHl0ZXh0IC0tPgoJCQkJCQkJCTwh
LS0gY2F0bGlua3MgLS0+CgkJCQk8ZGl2IGlkPSdjYXRsaW5rcycgY2xhc3M9J2Nh
dGxpbmtzJz48ZGl2IGlkPSJtdy1ub3JtYWwtY2F0bGlua3MiPjxhIGhyZWY9Ii93
aWtpL0VzcGVjaWFsOkNhdGVnb3IlQzMlQURhcyIgdGl0bGU9IkVzcGVjaWFsOkNh
dGVnb3LDrWFzIj5DYXRlZ29yw61hczwvYT46IDxzcGFuIGRpcj0nbHRyJz48YSBo
cmVmPSIvd2lraS9DYXRlZ29yJUMzJUFEYTpNJUMzJUIzbmFjbyIgdGl0bGU9IkNh
dGVnb3LDrWE6TcOzbmFjbyI+TcOzbmFjbzwvYT48L3NwYW4+IHwgPHNwYW4gZGly
PSdsdHInPjxhIGhyZWY9Ii93aWtpL0NhdGVnb3IlQzMlQURhOkxvY2FsaWRhZGVz
X2RlX0V1cm9wYSIgdGl0bGU9IkNhdGVnb3LDrWE6TG9jYWxpZGFkZXMgZGUgRXVy
b3BhIj5Mb2NhbGlkYWRlcyBkZSBFdXJvcGE8L2E+PC9zcGFuPjwvZGl2PjxkaXYg
aWQ9Im13LWhpZGRlbi1jYXRsaW5rcyIgY2xhc3M9Im13LWhpZGRlbi1jYXRzLWhp
ZGRlbiI+Q2F0ZWdvcsOtYXMgb2N1bHRhczogPHNwYW4gZGlyPSdsdHInPjxhIGhy
ZWY9Ii93aWtpL0NhdGVnb3IlQzMlQURhOldpa2lwZWRpYTpUcmFkdWNjaW9uZXNf
cGFyYV9tZWpvcmFyIiB0aXRsZT0iQ2F0ZWdvcsOtYTpXaWtpcGVkaWE6VHJhZHVj
Y2lvbmVzIHBhcmEgbWVqb3JhciI+V2lraXBlZGlhOlRyYWR1Y2Npb25lcyBwYXJh
IG1lam9yYXI8L2E+PC9zcGFuPiB8IDxzcGFuIGRpcj0nbHRyJz48YSBocmVmPSIv
d2lraS9DYXRlZ29yJUMzJUFEYTpXaWtpcGVkaWE6QXJ0JUMzJUFEY3Vsb3NfZGVz
dGFjYWRvc19lbl93OmFmIiB0aXRsZT0iQ2F0ZWdvcsOtYTpXaWtpcGVkaWE6QXJ0
w61jdWxvcyBkZXN0YWNhZG9zIGVuIHc6YWYiPldpa2lwZWRpYTpBcnTDrWN1bG9z
IGRlc3RhY2Fkb3MgZW4gdzphZjwvYT48L3NwYW4+PC9kaXY+PC9kaXY+CQkJCTwh
LS0gL2NhdGxpbmtzIC0tPgoJCQkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJ2aXN1YWxD
bGVhciI+PC9kaXY+CgkJCTwvZGl2PgoJCQk8IS0tIC9ib2R5Q29udGVudCAtLT4K
CQk8L2Rpdj4KCQk8IS0tIC9jb250ZW50IC0tPgoJCTwhLS0gaGVhZGVyIC0tPgoJ
CTxkaXYgaWQ9Im13LWhlYWQiIGNsYXNzPSJub3ByaW50Ij4KCQkJCjwhLS0gMCAt
LT4KPGRpdiBpZD0icC1wZXJzb25hbCIgY2xhc3M9IiI+Cgk8aDU+SGVycmFtaWVu
dGFzIHBlcnNvbmFsZXM8L2g1PgoJPHVsPgoJCQkJCTxsaSAgaWQ9InB0LXByZWZz
d2l0Y2gtbGluay1hbm9uIj48YSBocmVmPSJodHRwOi8vZXMud2lraXBlZGlhLm9y
Zy93L2luZGV4LnBocD90aXRsZT1Fc3BlY2lhbDpVc2FiaWxpdHlJbml0aWF0aXZl
UHJlZlN3aXRjaCZhbXA7ZnJvbT1NJUMzJUIzbmFjbyIgdGl0bGU9IkFwcmVuZGVy
IGFjZXJjYWRlbGFzbnVldmFzIGNhcmFjdGVyw61zdGljYXMiIGNsYXNzPSJuby10
ZXh0LXRyYW5zZm9ybSI+TnVldmFzIGNhcmFjdGVyw61zdGljYXM8L2E+PC9saT4K
CQkJCQk8bGkgIGlkPSJwdC1sb2dpbiI+PGEgaHJlZj0iL3cvaW5kZXgucGhwP3Rp
dGxlPUVzcGVjaWFsOkVudHJhciZhbXA7cmV0dXJudG89TSVDMyVCM25hY28iIHRp
dGxlPSJUZSBpbnZpdGFtb3MgYSByZWdpc3RyYXJzZSwgYXVucXVlIG5vIGVzIG9i
bGlnYXRvcmlvIFtvXSIgYWNjZXNza2V5PSJvIj5SZWdpc3RyYXJzZS9FbnRyYXI8
L2E+PC9saT4KCQkJPC91bD4KPC9kaXY+Cgo8IS0tIC8wIC0tPgoJCQk8ZGl2IGlk
PSJsZWZ0LW5hdmlnYXRpb24iPgoJCQkJCjwhLS0gMCAtLT4KPGRpdiBpZD0icC1u
YW1lc3BhY2VzIiBjbGFzcz0idmVjdG9yVGFicyI+Cgk8aDU+RXNwYWNpb3MgZGUg
bm9tYnJlczwvaDU+Cgk8dWw+CgkJCQkJPGxpICBpZD0iY2EtbnN0YWItbWFpbiIg
Y2xhc3M9InNlbGVjdGVkIj48YSBocmVmPSIvd2lraS9NJUMzJUIzbmFjbyIgIHRp
dGxlPSJWZXIgZWwgYXJ0w61jdWxvIFtjXSIgYWNjZXNza2V5PSJjIj48c3Bhbj5B
cnTDrWN1bG88L3NwYW4+PC9hPjwvbGk+CgkJCQkJPGxpICBpZD0iY2EtdGFsayI+
PGEgaHJlZj0iL3dpa2kvRGlzY3VzaSVDMyVCM246TSVDMyVCM25hY28iICB0aXRs
ZT0iRGlzY3VzacOzbiBhY2VyY2EgZGVsIGFydMOtY3VsbyBbdF0iIGFjY2Vzc2tl
eT0idCI+PHNwYW4+RGlzY3VzacOzbjwvc3Bhbj48L2E+PC9saT4KCQkJPC91bD4K
PC9kaXY+Cgo8IS0tIC8wIC0tPgoKPCEtLSAxIC0tPgo8ZGl2IGlkPSJwLXZhcmlh
bnRzIiBjbGFzcz0idmVjdG9yTWVudSBlbXB0eVBvcnRsZXQiPgoJCTxoNT48c3Bh
bj5WYXJpYW50ZXM8L3NwYW4+PGEgaHJlZj0iIyI+PC9hPjwvaDU+Cgk8ZGl2IGNs
YXNzPSJtZW51Ij4KCQk8dWw+CgkJCQkJPC91bD4KCTwvZGl2Pgo8L2Rpdj4KCjwh
LS0gLzEgLS0+CgkJCTwvZGl2PgoJCQk8ZGl2IGlkPSJyaWdodC1uYXZpZ2F0aW9u
Ij4KCQkJCQo8IS0tIDAgLS0+CjxkaXYgaWQ9InAtdmlld3MiIGNsYXNzPSJ2ZWN0
b3JUYWJzIj4KCTxoNT5WaXN0YXM8L2g1PgoJPHVsPgoJCQkJCTxsaSBpZD0iY2Et
dmlldyIgY2xhc3M9InNlbGVjdGVkIj48YSBocmVmPSIvd2lraS9NJUMzJUIzbmFj
byIgPjxzcGFuPkxlZXI8L3NwYW4+PC9hPjwvbGk+CgkJCQkJPGxpIGlkPSJjYS1l
ZGl0Ij48YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25hY28mYW1w
O2FjdGlvbj1lZGl0IiAgdGl0bGU9IlB1ZWRlcyBlZGl0YXIgZXN0YSBww6FnaW5h
LiBQb3IgZmF2b3IsIHVzYSBlbCBib3TDs24gZGUgcHJldmlzdWFsaXphY2nDs24g
YW50ZXMgZGUgZ3JhYmFyLiBbZV0iIGFjY2Vzc2tleT0iZSI+PHNwYW4+RWRpdGFy
PC9zcGFuPjwvYT48L2xpPgoJCQkJCTxsaSBpZD0iY2EtaGlzdG9yeSIgY2xhc3M9
ImNvbGxhcHNpYmxlICI+PGEgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPU0lQzMl
QjNuYWNvJmFtcDthY3Rpb249aGlzdG9yeSIgIHRpdGxlPSJWZXJzaW9uZXMgYW50
ZXJpb3JlcyBkZSBlc3RhIHDDoWdpbmEgeSBzdXMgYXV0b3JlcyBbaF0iIGFjY2Vz
c2tleT0iaCI+PHNwYW4+VmVyIGhpc3RvcmlhbDwvc3Bhbj48L2E+PC9saT4KCQkJ
PC91bD4KPC9kaXY+Cgo8IS0tIC8wIC0tPgoKPCEtLSAxIC0tPgo8ZGl2IGlkPSJw
LWNhY3Rpb25zIiBjbGFzcz0idmVjdG9yTWVudSBlbXB0eVBvcnRsZXQiPgoJPGg1
PjxzcGFuPkFjY2lvbmVzPC9zcGFuPjxhIGhyZWY9IiMiPjwvYT48L2g1PgoJPGRp
diBjbGFzcz0ibWVudSI+CgkJPHVsPgoJCQkJCTwvdWw+Cgk8L2Rpdj4KPC9kaXY+
Cgo8IS0tIC8xIC0tPgoKPCEtLSAyIC0tPgo8ZGl2IGlkPSJwLXNlYXJjaCI+Cgk8
aDU+PGxhYmVsIGZvcj0ic2VhcmNoSW5wdXQiPkJ1c2NhcjwvbGFiZWw+PC9oNT4K
CTxmb3JtIGFjdGlvbj0iL3cvaW5kZXgucGhwIiBpZD0ic2VhcmNoZm9ybSI+CgkJ
PGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0idGl0bGUiIHZhbHVlPSJFc3BlY2lh
bDpCdXNjYXIiLz4KCQkJCTxkaXYgaWQ9InNpbXBsZVNlYXJjaCI+CgkJCTxpbnB1
dCBpZD0ic2VhcmNoSW5wdXQiIG5hbWU9InNlYXJjaCIgdHlwZT0idGV4dCIgIHRp
dGxlPSJCdXNjYXIgZW4gZXN0ZSB3aWtpIFtmXSIgYWNjZXNza2V5PSJmIiAgdmFs
dWU9IiIgLz4KCQkJPGJ1dHRvbiBpZD0ic2VhcmNoQnV0dG9uIiB0eXBlPSdzdWJt
aXQnIG5hbWU9J2J1dHRvbicgIHRpdGxlPSJCdXNjYSBww6FnaW5hcyBjb24gZXN0
ZSB0ZXh0by4iPjxpbWcgc3JjPSJodHRwOi8vYml0cy53aWtpbWVkaWEub3JnL3Nr
aW5zLTEuNS92ZWN0b3IvaW1hZ2VzL3NlYXJjaC1sdHIucG5nPzI4M3IiIGFsdD0i
QnVzY2FyIiAvPjwvYnV0dG9uPgoJCTwvZGl2PgoJCQk8L2Zvcm0+CjwvZGl2PgoK
PCEtLSAvMiAtLT4KCQkJPC9kaXY+CgkJPC9kaXY+CgkJPCEtLSAvaGVhZGVyIC0t
PgoJCTwhLS0gcGFuZWwgLS0+CgkJCTxkaXYgaWQ9Im13LXBhbmVsIiBjbGFzcz0i
bm9wcmludCI+CgkJCQk8IS0tIGxvZ28gLS0+CgkJCQkJPGRpdiBpZD0icC1sb2dv
Ij48YSBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKGh0dHA6Ly91cGxvYWQu
d2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy84LzhjL1dpa2lwZWRpYS1s
b2dvLXYyLWVzLnBuZyk7IiBocmVmPSIvd2lraS9XaWtpcGVkaWE6UG9ydGFkYSIg
IHRpdGxlPSJQb3J0YWRhIj48L2E+PC9kaXY+CgkJCQk8IS0tIC9sb2dvIC0tPgoJ
CQkJCjwhLS0gU0VBUkNIIC0tPgoKPCEtLSAvU0VBUkNIIC0tPgoKPCEtLSBuYXZp
Z2F0aW9uIC0tPgo8ZGl2IGNsYXNzPSJwb3J0YWwiIGlkPSdwLW5hdmlnYXRpb24n
PgoJPGg1Pk5hdmVnYWNpw7NuPC9oNT4KCTxkaXYgY2xhc3M9ImJvZHkiPgoJCQkJ
PHVsPgoJCQkJCTxsaSBpZD0ibi1tYWlucGFnZS1kZXNjcmlwdGlvbiI+PGEgaHJl
Zj0iL3dpa2kvV2lraXBlZGlhOlBvcnRhZGEiIHRpdGxlPSJWaXNpdGFyIGxhIHDD
oWdpbmEgcHJpbmNpcGFsIFt6XSIgYWNjZXNza2V5PSJ6Ij5Qb3J0YWRhPC9hPjwv
bGk+CgkJCQkJPGxpIGlkPSJuLXBvcnRhbCI+PGEgaHJlZj0iL3dpa2kvUG9ydGFs
OkNvbXVuaWRhZCIgdGl0bGU9IkFjZXJjYSBkZWwgcHJveWVjdG8sIHF1w6kgcHVl
ZGUgaGFjZXIsIGTDs25kZSBlbmNvbnRyYXIgaW5mb3JtYWNpw7NuIj5Qb3J0YWwg
ZGUgbGEgY29tdW5pZGFkPC9hPjwvbGk+CgkJCQkJPGxpIGlkPSJuLWN1cnJlbnRl
dmVudHMiPjxhIGhyZWY9Ii93aWtpL1BvcnRhbDpBY3R1YWxpZGFkIiB0aXRsZT0i
SW5mb3JtYWNpw7NuIGRlIGNvbnRleHRvIHNvYnJlIGFjb250ZWNpbWllbnRvcyBh
Y3R1YWxlcyI+QWN0dWFsaWRhZDwvYT48L2xpPgoJCQkJCTxsaSBpZD0ibi1yZWNl
bnRjaGFuZ2VzIj48YSBocmVmPSIvd2lraS9Fc3BlY2lhbDpDYW1iaW9zUmVjaWVu
dGVzIiB0aXRsZT0iTGEgbGlzdGEgZGUgY2FtYmlvcyByZWNpZW50ZXMgZW4gZWwg
d2lraSBbcl0iIGFjY2Vzc2tleT0iciI+Q2FtYmlvcyByZWNpZW50ZXM8L2E+PC9s
aT4KCQkJCQk8bGkgaWQ9Im4tcmFuZG9tcGFnZSI+PGEgaHJlZj0iL3dpa2kvRXNw
ZWNpYWw6QWxlYXRvcmlhIiB0aXRsZT0iQ2FyZ2FyIHVuYSBww6FnaW5hIGFsZWF0
b3JpYW1lbnRlIFt4XSIgYWNjZXNza2V5PSJ4Ij5Qw6FnaW5hIGFsZWF0b3JpYTwv
YT48L2xpPgoJCQkJCTxsaSBpZD0ibi1oZWxwIj48YSBocmVmPSIvd2lraS9BeXVk
YTpDb250ZW5pZG9zIiB0aXRsZT0iRWwgbHVnYXIgcGFyYSBhcHJlbmRlciI+QXl1
ZGE8L2E+PC9saT4KCQkJCQk8bGkgaWQ9Im4tc2l0ZXN1cHBvcnQiPjxhIGhyZWY9
Imh0dHA6Ly93aWtpbWVkaWFmb3VuZGF0aW9uLm9yZy93aWtpL0RvbmFjaW9uZXMi
IHRpdGxlPSJBcMOzeWVub3MiPkRvbmFjaW9uZXM8L2E+PC9saT4KCQkJCQk8bGkg
aWQ9Im4tYnVnX2luX2FydGljbGUiPjxhIGhyZWY9Ii93aWtpL1dpa2lwZWRpYTpJ
bmZvcm1lc19kZV9lcnJvciI+Tm90aWZpY2FyIHVuIGVycm9yPC9hPjwvbGk+CgkJ
CQk8L3VsPgoJCQk8L2Rpdj4KPC9kaXY+Cgo8IS0tIC9uYXZpZ2F0aW9uIC0tPgoK
PCEtLSBjb2xsLXByaW50X2V4cG9ydCAtLT4KPGRpdiBjbGFzcz0icG9ydGFsIiBp
ZD0ncC1jb2xsLXByaW50X2V4cG9ydCc+Cgk8aDU+SW1wcmltaXIvZXhwb3J0YXI8
L2g1PgoJPGRpdiBjbGFzcz0iYm9keSI+CgkJCQk8dWwgaWQ9ImNvbGxlY3Rpb25Q
b3J0bGV0TGlzdCI+PGxpIGlkPSJjb2xsLWNyZWF0ZV9hX2Jvb2siPjxhIGhyZWY9
Ii93L2luZGV4LnBocD90aXRsZT1Fc3BlY2lhbDpMaWJybyZhbXA7Ym9va2NtZD1i
b29rX2NyZWF0b3ImYW1wO3JlZmVyZXI9TSVDMyVCM25hY28iIHRpdGxlPSJDcmVh
ciB1biBsaWJybyBvIGNvbGVjY2nDs24gZGUgcMOhZ2luYSIgcmVsPSJub2ZvbGxv
dyI+Q3JlYXIgdW4gbGlicm88L2E+PC9saT48bGkgaWQ9ImNvbGwtZG93bmxvYWQt
YXMtcmwiPjxhIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1Fc3BlY2lhbDpMaWJy
byZhbXA7Ym9va2NtZD1yZW5kZXJfYXJ0aWNsZSZhbXA7YXJ0dGl0bGU9TSVDMyVC
M25hY28mYW1wO29sZGlkPTQwMTUwMzYyJmFtcDt3cml0ZXI9cmwiIHRpdGxlPSJE
ZXNjYXJnYXIgdW5hIHZlcnNpw7NuIFBERiBkZSBlc3RhIHDDoWdpbmEgd2lraSIg
cmVsPSJub2ZvbGxvdyI+RGVzY2FyZ2FyIGNvbW8gUERGPC9hPjwvbGk+PGxpIGlk
PSJ0LXByaW50Ij48YSBocmVmPSIvdy9pbmRleC5waHA/dGl0bGU9TSVDMyVCM25h
Y28mYW1wO3ByaW50YWJsZT15ZXMiIHRpdGxlPSJWZXJzacOzbiBpbXByaW1pYmxl
IGRlIGxhIHDDoWdpbmEgW3BdIiBhY2Nlc3NrZXk9InAiPlZlcnNpw7NuIHBhcmEg
aW1wcmltaXI8L2E+PC9saT48L3VsPgkJCTwvZGl2Pgo8L2Rpdj4KCjwhLS0gL2Nv
bGwtcHJpbnRfZXhwb3J0IC0tPgoKPCEtLSBUT09MQk9YIC0tPgo8ZGl2IGNsYXNz
PSJwb3J0YWwiIGlkPSJwLXRiIj4KCTxoNT5IZXJyYW1pZW50YXM8L2g1PgoJPGRp
diBjbGFzcz0iYm9keSI+CgkJPHVsPgoJCQkJCTxsaSBpZD0idC13aGF0bGlua3No
ZXJlIj48YSBocmVmPSIvd2lraS9Fc3BlY2lhbDpMb1F1ZUVubGF6YUFxdSVDMyVB
RC9NJUMzJUIzbmFjbyIgdGl0bGU9Ikxpc3RhIGRlIHRvZGFzIGxhcyBww6FnaW5h
cyBkZWwgd2lraSBxdWUgZW5sYXphbiBjb24gw6lzdGEgW2pdIiBhY2Nlc3NrZXk9
ImoiPkxvIHF1ZSBlbmxhemEgYXF1w608L2E+PC9saT4KCQkJCQkJPGxpIGlkPSJ0
LXJlY2VudGNoYW5nZXNsaW5rZWQiPjxhIGhyZWY9Ii93aWtpL0VzcGVjaWFsOkNh
bWJpb3NFbkVubGF6YWRhcy9NJUMzJUIzbmFjbyIgdGl0bGU9IkNhbWJpb3MgcmVj
aWVudGVzIGVuIGxhcyBww6FnaW5hcyBxdWUgZW5sYXphbiBjb24gw6lzdGEgW2td
IiBhY2Nlc3NrZXk9ImsiPkNhbWJpb3MgZW4gZW5sYXphZGFzPC9hPjwvbGk+CgkJ
CQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQk8bGkgaWQ9InQtdXBs
b2FkIj48YSBocmVmPSJodHRwOi8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kv
Q29tbW9uczpVcGxvYWQvZXMiIHRpdGxlPSJTdWJpciBpbcOhZ2VuZXMgbyBhcmNo
aXZvcyBtdWx0aW1lZGlhIFt1XSIgYWNjZXNza2V5PSJ1Ij5TdWJpciBhcmNoaXZv
PC9hPjwvbGk+CgkJCQkJCQkJCQkJPGxpIGlkPSJ0LXNwZWNpYWxwYWdlcyI+PGEg
aHJlZj0iL3dpa2kvRXNwZWNpYWw6UCVDMyVBMWdpbmFzRXNwZWNpYWxlcyIgdGl0
bGU9Ikxpc3RhIGRlIHRvZGFzIGxhcyBww6FnaW5hcyBlc3BlY2lhbGVzIFtxXSIg
YWNjZXNza2V5PSJxIj5Qw6FnaW5hcyBlc3BlY2lhbGVzPC9hPjwvbGk+CgkJCQkJ
CQkJCQkJPGxpIGlkPSJ0LXBlcm1hbGluayI+PGEgaHJlZj0iL3cvaW5kZXgucGhw
P3RpdGxlPU0lQzMlQjNuYWNvJmFtcDtvbGRpZD00MDE1MDM2MiIgdGl0bGU9IkVu
bGFjZSBwZXJtYW5lbnRlIGEgZXN0YSB2ZXJzacOzbiBkZSBsYSBww6FnaW5hIj5F
bmxhY2UgcGVybWFuZW50ZTwvYT48L2xpPgoJCQkJPGxpIGlkPSJ0LWNpdGUiPjxh
IGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1Fc3BlY2lhbDpDaXRhciZhbXA7cGFn
ZT1NJUMzJUIzbmFjbyZhbXA7aWQ9NDAxNTAzNjIiIHRpdGxlPSJJbmZvcm1hY2nD
s24gZGUgY8OzbW8gY2l0YXIgZXN0YSBww6FnaW5hIj5DaXRhciBlc3RlIGFydMOt
Y3VsbzwvYT48L2xpPgkJPC91bD4KCTwvZGl2Pgo8L2Rpdj4KCjwhLS0gL1RPT0xC
T1ggLS0+Cgo8IS0tIExBTkdVQUdFUyAtLT4KPGRpdiBjbGFzcz0icG9ydGFsIiBp
ZD0icC1sYW5nIj4KCTxoNT5FbiBvdHJvcyBpZGlvbWFzPC9oNT4KCTxkaXYgY2xh
c3M9ImJvZHkiPgoJCTx1bD4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1hY2Ui
PjxhIGhyZWY9Imh0dHA6Ly9hY2Uud2lraXBlZGlhLm9yZy93aWtpL01vbmFrJUMz
JUI0IiB0aXRsZT0iTW9uYWvDtCI+QWPDqGg8L2E+PC9saT4KCQkJCQk8bGkgY2xh
c3M9ImludGVyd2lraS1hZiI+PGEgaHJlZj0iaHR0cDovL2FmLndpa2lwZWRpYS5v
cmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPkFmcmlrYWFuczwvYT48L2xp
PgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWFscyI+PGEgaHJlZj0iaHR0cDov
L2Fscy53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWNvIiB0aXRsZT0iTW9uYWNvIj5B
bGVtYW5uaXNjaDwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWFt
Ij48YSBocmVmPSJodHRwOi8vYW0ud2lraXBlZGlhLm9yZy93aWtpLyVFMSU4OCU5
RSVFMSU4QSU5MyVFMSU4QSVBRSIgdGl0bGU9IuGInuGKk+GKriI+4Yqg4Yib4Yit
4YqbPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktYW4iPjxhIGhy
ZWY9Imh0dHA6Ly9hbi53aWtpcGVkaWEub3JnL3dpa2kvTSVDMyVCQW5lZ3UiIHRp
dGxlPSJNw7puZWd1Ij5BcmFnb27DqXM8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9
ImludGVyd2lraS1hbmciPjxhIGhyZWY9Imh0dHA6Ly9hbmcud2lraXBlZGlhLm9y
Zy93aWtpL01vbmFjbyIgdGl0bGU9Ik1vbmFjbyI+w4ZuZ2xpc2M8L2E+PC9saT4K
CQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1hciI+PGEgaHJlZj0iaHR0cDovL2Fy
Lndpa2lwZWRpYS5vcmcvd2lraS8lRDklODUlRDklODglRDklODYlRDglQTclRDkl
ODMlRDklODgiIHRpdGxlPSLZhdmI2YbYp9mD2YgiPtin2YTYudix2KjZitipPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktYXJjIj48YSBocmVmPSJo
dHRwOi8vYXJjLndpa2lwZWRpYS5vcmcvd2lraS8lREMlQTElREMlOTglREMlQTIl
REMlOUYlREMlOTgiIHRpdGxlPSLcodyY3KLcn9yYIj7ckNyq3KHcndyQPC9hPjwv
bGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktYXJ6Ij48YSBocmVmPSJodHRw
Oi8vYXJ6Lndpa2lwZWRpYS5vcmcvd2lraS8lRDklODUlRDklODglRDklODYlRDgl
QTclRDklODMlRDklODgiIHRpdGxlPSLZhdmI2YbYp9mD2YgiPtmF2LXYsdmJPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktYXN0Ij48YSBocmVmPSJo
dHRwOi8vYXN0Lndpa2lwZWRpYS5vcmcvd2lraS9NJUMzJUIzbmFjbyIgdGl0bGU9
Ik3Ds25hY28iPkFzdHVyaWFudTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50
ZXJ3aWtpLWF6Ij48YSBocmVmPSJodHRwOi8vYXoud2lraXBlZGlhLm9yZy93aWtp
L01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+QXrJmXJiYXljYW5jYTwvYT48L2xpPgoJ
CQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWJhciI+PGEgaHJlZj0iaHR0cDovL2Jh
ci53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWNvIiB0aXRsZT0iTW9uYWNvIj5Cb2Fy
aXNjaDwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWJhdC1zbWci
PjxhIGhyZWY9Imh0dHA6Ly9iYXQtc21nLndpa2lwZWRpYS5vcmcvd2lraS9NdW9u
YWtzIiB0aXRsZT0iTXVvbmFrcyI+xb1lbWFpdMSXxaFrYTwvYT48L2xpPgoJCQkJ
CTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWJjbCI+PGEgaHJlZj0iaHR0cDovL2JjbC53
aWtpcGVkaWEub3JnL3dpa2kvTW9uYWtvIiB0aXRsZT0iTW9uYWtvIj5CaWtvbCBD
ZW50cmFsPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktYmUiPjxh
IGhyZWY9Imh0dHA6Ly9iZS53aWtpcGVkaWEub3JnL3dpa2kvJUQwJTkzJUQwJUJF
JUQxJTgwJUQwJUIwJUQwJUI0XyVEMCU5QyVEMCVCMCVEMCVCRCVEMCVCMCVEMCVC
QSVEMCVCMCIgdGl0bGU9ItCT0L7RgNCw0LQg0JzQsNC90LDQutCwIj7QkdC10LvQ
sNGA0YPRgdC60LDRjzwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtp
LWJlLXgtb2xkIj48YSBocmVmPSJodHRwOi8vYmUteC1vbGQud2lraXBlZGlhLm9y
Zy93aWtpLyVEMCU5QyVEMCVCMCVEMCVCRCVEMCVCMCVEMCVCQSVEMCVCMCIgdGl0
bGU9ItCc0LDQvdCw0LrQsCI+0JHQtdC70LDRgNGD0YHQutCw0Y8gKNGC0LDRgNCw
0YjQutC10LLRltGG0LApPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndp
a2ktYmciPjxhIGhyZWY9Imh0dHA6Ly9iZy53aWtpcGVkaWEub3JnL3dpa2kvJUQw
JTlDJUQwJUJFJUQwJUJEJUQwJUIwJUQwJUJBJUQwJUJFIiB0aXRsZT0i0JzQvtC9
0LDQutC+Ij7QkdGK0LvQs9Cw0YDRgdC60Lg8L2E+PC9saT4KCQkJCQk8bGkgY2xh
c3M9ImludGVyd2lraS1iaSI+PGEgaHJlZj0iaHR0cDovL2JpLndpa2lwZWRpYS5v
cmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPkJpc2xhbWE8L2E+PC9saT4K
CQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1ibiI+PGEgaHJlZj0iaHR0cDovL2Ju
Lndpa2lwZWRpYS5vcmcvd2lraS8lRTAlQTYlQUUlRTAlQTclOEIlRTAlQTYlQTgl
RTAlQTYlQkUlRTAlQTYlOTUlRTAlQTclOEIiIHRpdGxlPSLgpq7gp4vgpqjgpr7g
ppXgp4siPuCmrOCmvuCmguCmsuCmvjwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0i
aW50ZXJ3aWtpLWJvIj48YSBocmVmPSJodHRwOi8vYm8ud2lraXBlZGlhLm9yZy93
aWtpLyVFMCVCRCU5OCVFMCVCRCVCQyVFMCVCQyU4QiVFMCVCRCU5MyVFMCVCQyU4
QiVFMCVCRCU4MSVFMCVCRCVCQyVFMCVCQyU4RCIgdGl0bGU9IuC9mOC9vOC8i+C9
k+C8i+C9geC9vOC8jSI+4L2W4L284L2R4LyL4L2h4L2y4L2CPC9hPjwvbGk+CgkJ
CQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktYnB5Ij48YSBocmVmPSJodHRwOi8vYnB5
Lndpa2lwZWRpYS5vcmcvd2lraS8lRTAlQTYlQUUlRTAlQTclOEIlRTAlQTYlQTgl
RTAlQTYlQkUlRTAlQTYlOTUlRTAlQTclOEIiIHRpdGxlPSLgpq7gp4vgpqjgpr7g
ppXgp4siPuCmh+CmruCmvuCmsCDgpqDgpr7gprAv4Kas4Ka/4Ka34KeN4Kaj4KeB
4Kaq4KeN4Kaw4Ka/4Kav4Ka84Ka+IOCmruCmo+Cmv+CmquCngeCmsOCngDwvYT48
L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWJyIj48YSBocmVmPSJodHRw
Oi8vYnIud2lraXBlZGlhLm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+
QnJlemhvbmVnPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktYnMi
PjxhIGhyZWY9Imh0dHA6Ly9icy53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWtvIiB0
aXRsZT0iTW9uYWtvIj5Cb3NhbnNraTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0i
aW50ZXJ3aWtpLWNhIj48YSBocmVmPSJodHRwOi8vY2Eud2lraXBlZGlhLm9yZy93
aWtpL00lQzMlQjJuYWNvIiB0aXRsZT0iTcOybmFjbyI+Q2F0YWzDoDwvYT48L2xp
PgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWNlIj48YSBocmVmPSJodHRwOi8v
Y2Uud2lraXBlZGlhLm9yZy93aWtpLyVEMCU5QyVEMCVCRSVEMCVCRCVEMCVCMCVE
MCVCQSVEMCVCRSIgdGl0bGU9ItCc0L7QvdCw0LrQviI+0J3QvtGF0YfQuNC50L08
L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1jZWIiPjxhIGhyZWY9
Imh0dHA6Ly9jZWIud2lraXBlZGlhLm9yZy93aWtpL01vbmFjbyIgdGl0bGU9Ik1v
bmFjbyI+Q2VidWFubzwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtp
LWNyaCI+PGEgaHJlZj0iaHR0cDovL2NyaC53aWtpcGVkaWEub3JnL3dpa2kvTW9u
YWtvIiB0aXRsZT0iTW9uYWtvIj5RxLFyxLFtdGF0YXJjYTwvYT48L2xpPgoJCQkJ
CTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWNzIj48YSBocmVmPSJodHRwOi8vY3Mud2lr
aXBlZGlhLm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+xIxlc2t5PC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktY3UiPjxhIGhyZWY9Imh0
dHA6Ly9jdS53aWtpcGVkaWEub3JnL3dpa2kvJUQwJTlDJUQwJUJFJUQwJUJEJUQw
JUIwJUQwJUJBJUQwJUJFIiB0aXRsZT0i0JzQvtC90LDQutC+Ij7QodC70L7QstGj
zIHQvdGM0YHQutGKIC8g4rCU4rCO4rCR4rCC4rCh4rCQ4rCg4rCU4rCN4rCfPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktY3YiPjxhIGhyZWY9Imh0
dHA6Ly9jdi53aWtpcGVkaWEub3JnL3dpa2kvJUQwJTlDJUQwJUJFJUQwJUJEJUQw
JUIwJUQwJUJBJUQwJUJFIiB0aXRsZT0i0JzQvtC90LDQutC+Ij7Qp9OR0LLQsNGI
0LvQsDwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWN5Ij48YSBo
cmVmPSJodHRwOi8vY3kud2lraXBlZGlhLm9yZy93aWtpL01vbmFjbyIgdGl0bGU9
Ik1vbmFjbyI+Q3ltcmFlZzwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3
aWtpLWRhIj48YSBocmVmPSJodHRwOi8vZGEud2lraXBlZGlhLm9yZy93aWtpL01v
bmFjbyIgdGl0bGU9Ik1vbmFjbyI+RGFuc2s8L2E+PC9saT4KCQkJCQk8bGkgY2xh
c3M9ImludGVyd2lraS1kZSI+PGEgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5v
cmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPkRldXRzY2g8L2E+PC9saT4K
CQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1kaXEiPjxhIGhyZWY9Imh0dHA6Ly9k
aXEud2lraXBlZGlhLm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+WmF6
YWtpPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktZHNiIj48YSBo
cmVmPSJodHRwOi8vZHNiLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxl
PSJNb25hY28iPkRvbG5vc2VyYnNraTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0i
aW50ZXJ3aWtpLWR2Ij48YSBocmVmPSJodHRwOi8vZHYud2lraXBlZGlhLm9yZy93
aWtpLyVERSU4OSVERSVBRSVERSU4MiVERSVBNyVERSU4NiVERSVBRiIgdGl0bGU9
It6J3q7egt6n3oberyI+3oveqN6I3qzegN6o3oTept6Q3rA8L2E+PC9saT4KCQkJ
CQk8bGkgY2xhc3M9ImludGVyd2lraS1lZSI+PGEgaHJlZj0iaHR0cDovL2VlLndp
a2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPkXKi2VnYmU8
L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1lbCI+PGEgaHJlZj0i
aHR0cDovL2VsLndpa2lwZWRpYS5vcmcvd2lraS8lQ0UlOUMlQ0UlQkYlQ0UlQkQl
Q0UlQjElQ0UlQkElQ0YlOEMiIHRpdGxlPSLOnM6/zr3Osc66z4wiPs6VzrvOu863
zr3Ouc66zqw8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1lbiI+
PGEgaHJlZj0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRp
dGxlPSJNb25hY28iPkVuZ2xpc2g8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9Imlu
dGVyd2lraS1lbyI+PGEgaHJlZj0iaHR0cDovL2VvLndpa2lwZWRpYS5vcmcvd2lr
aS9Nb25ha28iIHRpdGxlPSJNb25ha28iPkVzcGVyYW50bzwvYT48L2xpPgoJCQkJ
CTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWV0Ij48YSBocmVmPSJodHRwOi8vZXQud2lr
aXBlZGlhLm9yZy93aWtpL01vbmFjbyIgdGl0bGU9Ik1vbmFjbyI+RWVzdGk8L2E+
PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1ldSI+PGEgaHJlZj0iaHR0
cDovL2V1Lndpa2lwZWRpYS5vcmcvd2lraS9Nb25ha28iIHRpdGxlPSJNb25ha28i
PkV1c2thcmE8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1leHQi
PjxhIGhyZWY9Imh0dHA6Ly9leHQud2lraXBlZGlhLm9yZy93aWtpL00lQzMlQjNu
YWN1IiB0aXRsZT0iTcOzbmFjdSI+RXN0cmVtZcOxdTwvYT48L2xpPgoJCQkJCTxs
aSBjbGFzcz0iaW50ZXJ3aWtpLWZhIj48YSBocmVmPSJodHRwOi8vZmEud2lraXBl
ZGlhLm9yZy93aWtpLyVEOSU4NSVEOSU4OCVEOSU4NiVEOCVBNyVEQSVBOSVEOSU4
OCIgdGl0bGU9ItmF2YjZhtin2qnZiCI+2YHYp9ix2LPbjDwvYT48L2xpPgoJCQkJ
CTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWZpIj48YSBocmVmPSJodHRwOi8vZmkud2lr
aXBlZGlhLm9yZy93aWtpL01vbmFjbyIgdGl0bGU9Ik1vbmFjbyI+U3VvbWk8L2E+
PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1maXUtdnJvIj48YSBocmVm
PSJodHRwOi8vZml1LXZyby53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWNvIiB0aXRs
ZT0iTW9uYWNvIj5Ww7VybzwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3
aWtpLWZvIj48YSBocmVmPSJodHRwOi8vZm8ud2lraXBlZGlhLm9yZy93aWtpL01v
bmFrbyIgdGl0bGU9Ik1vbmFrbyI+RsO4cm95c2t0PC9hPjwvbGk+CgkJCQkJPGxp
IGNsYXNzPSJpbnRlcndpa2ktZnIiPjxhIGhyZWY9Imh0dHA6Ly9mci53aWtpcGVk
aWEub3JnL3dpa2kvTW9uYWNvIiB0aXRsZT0iTW9uYWNvIj5GcmFuw6dhaXM8L2E+
PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1mcnAiPjxhIGhyZWY9Imh0
dHA6Ly9mcnAud2lraXBlZGlhLm9yZy93aWtpL01vbmFjJUMzJUI0IiB0aXRsZT0i
TW9uYWPDtCI+QXJwZXRhbjwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3
aWtpLWZ5Ij48YSBocmVmPSJodHRwOi8vZnkud2lraXBlZGlhLm9yZy93aWtpL01v
bmFrbyIgdGl0bGU9Ik1vbmFrbyI+RnJ5c2s8L2E+PC9saT4KCQkJCQk8bGkgY2xh
c3M9ImludGVyd2lraS1nYSI+PGEgaHJlZj0iaHR0cDovL2dhLndpa2lwZWRpYS5v
cmcvd2lraS9Nb25hYyVDMyVCMyIgdGl0bGU9Ik1vbmFjw7MiPkdhZWlsZ2U8L2E+
PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1nZCI+PGEgaHJlZj0iaHR0
cDovL2dkLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28i
PkfDoGlkaGxpZzwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWds
Ij48YSBocmVmPSJodHRwOi8vZ2wud2lraXBlZGlhLm9yZy93aWtpL00lQzMlQjNu
YWNvXy1fTW9uYWNvIiB0aXRsZT0iTcOzbmFjbyAtIE1vbmFjbyI+R2FsZWdvPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktZ3UiPjxhIGhyZWY9Imh0
dHA6Ly9ndS53aWtpcGVkaWEub3JnL3dpa2kvJUUwJUFBJUFFJUUwJUFCJThCJUUw
JUFBJUE4JUUwJUFCJTg1JUUwJUFBJTk1JUUwJUFCJThCIiB0aXRsZT0i4Kqu4KuL
4Kqo4KuF4KqV4KuLIj7gqpfgq4HgqpzgqrDgqr7gqqTgq4A8L2E+PC9saT4KCQkJ
CQk8bGkgY2xhc3M9ImludGVyd2lraS1ndiI+PGEgaHJlZj0iaHR0cDovL2d2Lndp
a2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPkdhZWxnPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktaGFrIj48YSBocmVmPSJo
dHRwOi8vaGFrLndpa2lwZWRpYS5vcmcvd2lraS9NJUMzJUI0LW5hJUNDJThEcC1r
JUMzJUI0IiB0aXRsZT0iTcO0LW5hzI1wLWvDtCI+SGFrLWvDoi1mYTwvYT48L2xp
PgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWhhdyI+PGEgaHJlZj0iaHR0cDov
L2hhdy53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWtvIiB0aXRsZT0iTW9uYWtvIj5I
YXdhaWBpPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktaGUiPjxh
IGhyZWY9Imh0dHA6Ly9oZS53aWtpcGVkaWEub3JnL3dpa2kvJUQ3JTlFJUQ3JTk1
JUQ3JUEwJUQ3JTkwJUQ3JUE3JUQ3JTk1IiB0aXRsZT0i157Xldeg15DXp9eVIj7X
oteR16jXmdeqPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktaGki
PjxhIGhyZWY9Imh0dHA6Ly9oaS53aWtpcGVkaWEub3JnL3dpa2kvJUUwJUE0JUFF
JUUwJUE1JThCJUUwJUE0JUE4JUUwJUE1JTg4JUUwJUE0JTk1JUUwJUE1JThCIiB0
aXRsZT0i4KSu4KWL4KSo4KWI4KSV4KWLIj7gpLngpL/gpKjgpY3gpKbgpYA8L2E+
PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1oaWYiPjxhIGhyZWY9Imh0
dHA6Ly9oaWYud2lraXBlZGlhLm9yZy93aWtpL01vbmFjbyIgdGl0bGU9Ik1vbmFj
byI+RmlqaSBIaW5kaTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtp
LWhyIj48YSBocmVmPSJodHRwOi8vaHIud2lraXBlZGlhLm9yZy93aWtpL01vbmFr
byIgdGl0bGU9Ik1vbmFrbyI+SHJ2YXRza2k8L2E+PC9saT4KCQkJCQk8bGkgY2xh
c3M9ImludGVyd2lraS1oc2IiPjxhIGhyZWY9Imh0dHA6Ly9oc2Iud2lraXBlZGlh
Lm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+SG9ybmpvc2VyYnNjZTwv
YT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWh0Ij48YSBocmVmPSJo
dHRwOi8vaHQud2lraXBlZGlhLm9yZy93aWtpL01vbmFrb18oa2FwaXRhbCkiIHRp
dGxlPSJNb25ha28gKGthcGl0YWwpIj5LcmV5w7JsIGF5aXN5ZW48L2E+PC9saT4K
CQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1odSI+PGEgaHJlZj0iaHR0cDovL2h1
Lndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPk1hZ3lh
cjwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWh5Ij48YSBocmVm
PSJodHRwOi8vaHkud2lraXBlZGlhLm9yZy93aWtpLyVENSU4NCVENSVCOCVENSVC
NiVENSVBMSVENSVBRiVENSVCOCIgdGl0bGU9ItWE1bjVttWh1a/VuCI+1YDVodW1
1aXWgNWl1bY8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1pYSI+
PGEgaHJlZj0iaHR0cDovL2lhLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY29fKHBy
aW5jaXBhdG8pIiB0aXRsZT0iTW9uYWNvIChwcmluY2lwYXRvKSI+SW50ZXJsaW5n
dWE8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1pZCI+PGEgaHJl
Zj0iaHR0cDovL2lkLndpa2lwZWRpYS5vcmcvd2lraS9Nb25ha28iIHRpdGxlPSJN
b25ha28iPkJhaGFzYSBJbmRvbmVzaWE8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9
ImludGVyd2lraS1pZSI+PGEgaHJlZj0iaHR0cDovL2llLndpa2lwZWRpYS5vcmcv
d2lraS9NJUMzJUIzbmFjbyIgdGl0bGU9Ik3Ds25hY28iPkludGVybGluZ3VlPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktaWxvIj48YSBocmVmPSJo
dHRwOi8vaWxvLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25h
Y28iPklsb2thbm88L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1p
byI+PGEgaHJlZj0iaHR0cDovL2lvLndpa2lwZWRpYS5vcmcvd2lraS9Nb25ha29f
KGxhbmRvKSIgdGl0bGU9Ik1vbmFrbyAobGFuZG8pIj5JZG88L2E+PC9saT4KCQkJ
CQk8bGkgY2xhc3M9ImludGVyd2lraS1pcyI+PGEgaHJlZj0iaHR0cDovL2lzLndp
a2lwZWRpYS5vcmcvd2lraS9NJUMzJUIzbmFrJUMzJUIzIiB0aXRsZT0iTcOzbmFr
w7MiPsONc2xlbnNrYTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtp
LWl0Ij48YSBocmVmPSJodHRwOi8vaXQud2lraXBlZGlhLm9yZy93aWtpL1ByaW5j
aXBhdG9fZGlfTW9uYWNvIiB0aXRsZT0iUHJpbmNpcGF0byBkaSBNb25hY28iPkl0
YWxpYW5vPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktamEiPjxh
IGhyZWY9Imh0dHA6Ly9qYS53aWtpcGVkaWEub3JnL3dpa2kvJUUzJTgzJUEyJUUz
JTgzJThBJUUzJTgyJUIzIiB0aXRsZT0i44Oi44OK44KzIj7ml6XmnKzoqp48L2E+
PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1qdiI+PGEgaHJlZj0iaHR0
cDovL2p2Lndpa2lwZWRpYS5vcmcvd2lraS9Nb25ha28iIHRpdGxlPSJNb25ha28i
PkJhc2EgSmF3YTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWth
Ij48YSBocmVmPSJodHRwOi8va2Eud2lraXBlZGlhLm9yZy93aWtpLyVFMSU4MyU5
QiVFMSU4MyU5RCVFMSU4MyU5QyVFMSU4MyU5MCVFMSU4MyU5OSVFMSU4MyU5RCIg
dGl0bGU9IuGDm+GDneGDnOGDkOGDmeGDnSI+4YOl4YOQ4YOg4YOX4YOj4YOa4YOY
PC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2kta2ciPjxhIGhyZWY9
Imh0dHA6Ly9rZy53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWtvIiB0aXRsZT0iTW9u
YWtvIj5Lb25nbzwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWtr
Ij48YSBocmVmPSJodHRwOi8va2sud2lraXBlZGlhLm9yZy93aWtpLyVEMCU5QyVE
MCVCRSVEMCVCRCVEMCVCMCVEMCVCQSVEMCVCRSIgdGl0bGU9ItCc0L7QvdCw0LrQ
viI+0prQsNC30LDSm9GI0LA8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVy
d2lraS1rbCI+PGEgaHJlZj0iaHR0cDovL2tsLndpa2lwZWRpYS5vcmcvd2lraS9N
b25hY28iIHRpdGxlPSJNb25hY28iPkthbGFhbGxpc3V0PC9hPjwvbGk+CgkJCQkJ
PGxpIGNsYXNzPSJpbnRlcndpa2kta24iPjxhIGhyZWY9Imh0dHA6Ly9rbi53aWtp
cGVkaWEub3JnL3dpa2kvJUUwJUIyJUFFJUUwJUIzJThBJUUwJUIyJUE4JUUwJUIy
JUJFJUUwJUIyJTk1JUUwJUIzJThBIiB0aXRsZT0i4LKu4LOK4LKo4LK+4LKV4LOK
Ij7gspXgsqjgs43gsqjgsqE8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVy
d2lraS1rbyI+PGEgaHJlZj0iaHR0cDovL2tvLndpa2lwZWRpYS5vcmcvd2lraS8l
RUIlQUElQTglRUIlODIlOTglRUMlQkQlOTQiIHRpdGxlPSLrqqjrgpjsvZQiPu2V
nOq1reyWtDwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWtyYyI+
PGEgaHJlZj0iaHR0cDovL2tyYy53aWtpcGVkaWEub3JnL3dpa2kvJUQwJTlDJUQw
JUJFJUQwJUJEJUQwJUIwJUQwJUJBJUQwJUJFIiB0aXRsZT0i0JzQvtC90LDQutC+
Ij7QmtGK0LDRgNCw0YfQsNC5LdCc0LDQu9C60YrQsNGAPC9hPjwvbGk+CgkJCQkJ
PGxpIGNsYXNzPSJpbnRlcndpa2kta3MiPjxhIGhyZWY9Imh0dHA6Ly9rcy53aWtp
cGVkaWEub3JnL3dpa2kvJUUwJUE0JUFFJUUwJUE1JThCJUUwJUE0JUE4JUUwJUE0
JUJFJUUwJUE0JTk1JUUwJUE1JThCIiB0aXRsZT0i4KSu4KWL4KSo4KS+4KSV4KWL
Ij7gpJXgpLbgpY3gpK7gpYDgpLDgpYAgLSAo2YPYtNmF2YrYsdmKKTwvYT48L2xp
PgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWtzaCI+PGEgaHJlZj0iaHR0cDov
L2tzaC53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWtrbyIgdGl0bGU9Ik1vbmFra28i
PlJpcG9hcmlzY2g8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1r
dSI+PGEgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9Nb25ha28i
IHRpdGxlPSJNb25ha28iPkt1cmTDrjwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0i
aW50ZXJ3aWtpLWt2Ij48YSBocmVmPSJodHRwOi8va3Yud2lraXBlZGlhLm9yZy93
aWtpLyVEMCU5QyVEMCVCRSVEMCVCRCVEMCVCMCVEMCVCQSVEMCVCRSIgdGl0bGU9
ItCc0L7QvdCw0LrQviI+0JrQvtC80Lg8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9
ImludGVyd2lraS1rdyI+PGEgaHJlZj0iaHR0cDovL2t3Lndpa2lwZWRpYS5vcmcv
d2lraS9Nb25ha28iIHRpdGxlPSJNb25ha28iPktlcm5ld2VrPC9hPjwvbGk+CgkJ
CQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktbGEiPjxhIGhyZWY9Imh0dHA6Ly9sYS53
aWtpcGVkaWEub3JnL3dpa2kvTW9ub2VjdXMiIHRpdGxlPSJNb25vZWN1cyI+TGF0
aW5hPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktbGFkIj48YSBo
cmVmPSJodHRwOi8vbGFkLndpa2lwZWRpYS5vcmcvd2lraS9Nb25ha28iIHRpdGxl
PSJNb25ha28iPkxhZGlubzwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3
aWtpLWxiIj48YSBocmVmPSJodHRwOi8vbGIud2lraXBlZGlhLm9yZy93aWtpL01v
bmFjbyIgdGl0bGU9Ik1vbmFjbyI+TMOrdHplYnVlcmdlc2NoPC9hPjwvbGk+CgkJ
CQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktbGkiPjxhIGhyZWY9Imh0dHA6Ly9saS53
aWtpcGVkaWEub3JnL3dpa2kvTW9uYWNvIiB0aXRsZT0iTW9uYWNvIj5MaW1idXJn
czwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWxpaiI+PGEgaHJl
Zj0iaHR0cDovL2xpai53aWtpcGVkaWEub3JnL3dpa2kvUHJpbiVDMyVBN2lwJUMz
JUIydV9kZV9Nb25lZ28iIHRpdGxlPSJQcmluw6dpcMOydSBkZSBNb25lZ28iPkzD
rWd1cnU8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1sbiI+PGEg
aHJlZj0iaHR0cDovL2xuLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxl
PSJNb25hY28iPkxpbmfDoWxhPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRl
cndpa2ktbHQiPjxhIGhyZWY9Imh0dHA6Ly9sdC53aWtpcGVkaWEub3JnL3dpa2kv
TW9uYWthcyIgdGl0bGU9Ik1vbmFrYXMiPkxpZXR1dmnFszwvYT48L2xpPgoJCQkJ
CTxsaSBjbGFzcz0iaW50ZXJ3aWtpLWx2Ij48YSBocmVmPSJodHRwOi8vbHYud2lr
aXBlZGlhLm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+TGF0dmllxaF1
PC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktbWhyIj48YSBocmVm
PSJodHRwOi8vbWhyLndpa2lwZWRpYS5vcmcvd2lraS8lRDAlOUMlRDAlQkUlRDAl
QkQlRDAlQjAlRDAlQkElRDAlQkVfJUQwJUJFJUQwJUJEJUQwJUJCJUQxJThCJUQw
JUJBIiB0aXRsZT0i0JzQvtC90LDQutC+INC+0L3Qu9GL0LoiPtCe0LvRi9C6INCc
0LDRgNC40Lk8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1taSI+
PGEgaHJlZj0iaHR0cDovL21pLndpa2lwZWRpYS5vcmcvd2lraS9NYW5ha28iIHRp
dGxlPSJNYW5ha28iPk3EgW9yaTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50
ZXJ3aWtpLW1rIj48YSBocmVmPSJodHRwOi8vbWsud2lraXBlZGlhLm9yZy93aWtp
LyVEMCU5QyVEMCVCRSVEMCVCRCVEMCVCMCVEMCVCQSVEMCVCRSIgdGl0bGU9ItCc
0L7QvdCw0LrQviI+0JzQsNC60LXQtNC+0L3RgdC60Lg8L2E+PC9saT4KCQkJCQk8
bGkgY2xhc3M9ImludGVyd2lraS1tbCI+PGEgaHJlZj0iaHR0cDovL21sLndpa2lw
ZWRpYS5vcmcvd2lraS8lRTAlQjQlQUUlRTAlQjUlOEElRTAlQjQlQTMlRTAlQjQl
QkUlRTAlQjQlOTUlRTAlQjUlOEQlRTAlQjQlOTUlRTAlQjUlOEIiIHRpdGxlPSLg
tK7gtYrgtKPgtL7gtJXgtY3gtJXgtYsiPuC0ruC0suC0r+C0vuC0s+C0gjwvYT48
L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLW1uIj48YSBocmVmPSJodHRw
Oi8vbW4ud2lraXBlZGlhLm9yZy93aWtpLyVEMCU5QyVEMCVCRSVEMCVCRCVEMCVC
MCVEMCVCQSVEMCVCRSIgdGl0bGU9ItCc0L7QvdCw0LrQviI+0JzQvtC90LPQvtC7
PC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktbXIiPjxhIGhyZWY9
Imh0dHA6Ly9tci53aWtpcGVkaWEub3JnL3dpa2kvJUUwJUE0JUFFJUUwJUE1JThC
JUUwJUE0JUE4JUUwJUE1JTg1JUUwJUE0JTk1JUUwJUE1JThCIiB0aXRsZT0i4KSu
4KWL4KSo4KWF4KSV4KWLIj7gpK7gpLDgpL7gpKDgpYA8L2E+PC9saT4KCQkJCQk8
bGkgY2xhc3M9ImludGVyd2lraS1tcyI+PGEgaHJlZj0iaHR0cDovL21zLndpa2lw
ZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPkJhaGFzYSBNZWxh
eXU8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1tdCI+PGEgaHJl
Zj0iaHR0cDovL210Lndpa2lwZWRpYS5vcmcvd2lraS9Nb25ha28iIHRpdGxlPSJN
b25ha28iPk1hbHRpPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2kt
bmEiPjxhIGhyZWY9Imh0dHA6Ly9uYS53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWNv
IiB0aXRsZT0iTW9uYWNvIj5Eb3JlcmluIE5hb2VybzwvYT48L2xpPgoJCQkJCTxs
aSBjbGFzcz0iaW50ZXJ3aWtpLW5haCI+PGEgaHJlZj0iaHR0cDovL25haC53aWtp
cGVkaWEub3JnL3dpa2kvTW9uYWNvIiB0aXRsZT0iTW9uYWNvIj5OxIFodWF0bDwv
YT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLW5kcyI+PGEgaHJlZj0i
aHR0cDovL25kcy53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWNvIiB0aXRsZT0iTW9u
YWNvIj5QbGF0dGTDvMO8dHNjaDwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50
ZXJ3aWtpLW5kcy1ubCI+PGEgaHJlZj0iaHR0cDovL25kcy1ubC53aWtpcGVkaWEu
b3JnL3dpa2kvTW9uYWNvIiB0aXRsZT0iTW9uYWNvIj5OZWRlcnNha3Npc2NoPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktbmUiPjxhIGhyZWY9Imh0
dHA6Ly9uZS53aWtpcGVkaWEub3JnL3dpa2kvJUUwJUE0JUFFJUUwJUE1JThCJUUw
JUE0JUE4JUUwJUE0JUJFJUUwJUE0JTk1JUUwJUE1JThCIiB0aXRsZT0i4KSu4KWL
4KSo4KS+4KSV4KWLIj7gpKjgpYfgpKrgpL7gpLLgpYA8L2E+PC9saT4KCQkJCQk8
bGkgY2xhc3M9ImludGVyd2lraS1ubCI+PGEgaHJlZj0iaHR0cDovL25sLndpa2lw
ZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPk5lZGVybGFuZHM8
L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1ubiI+PGEgaHJlZj0i
aHR0cDovL25uLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25h
Y28iPuKAqk5vcnNrIChueW5vcnNrKeKArDwvYT48L2xpPgoJCQkJCTxsaSBjbGFz
cz0iaW50ZXJ3aWtpLW5vIj48YSBocmVmPSJodHRwOi8vbm8ud2lraXBlZGlhLm9y
Zy93aWtpL01vbmFjbyIgdGl0bGU9Ik1vbmFjbyI+4oCqTm9yc2sgKGJva23DpWwp
4oCsPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktbm92Ij48YSBo
cmVmPSJodHRwOi8vbm92Lndpa2lwZWRpYS5vcmcvd2lraS9Nb25ha28iIHRpdGxl
PSJNb25ha28iPk5vdmlhbDwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3
aWtpLW9jIj48YSBocmVmPSJodHRwOi8vb2Mud2lraXBlZGlhLm9yZy93aWtpL00l
QzMlQjNuZWd1ZSIgdGl0bGU9Ik3Ds25lZ3VlIj5PY2NpdGFuPC9hPjwvbGk+CgkJ
CQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktb3MiPjxhIGhyZWY9Imh0dHA6Ly9vcy53
aWtpcGVkaWEub3JnL3dpa2kvJUQwJTlDJUQwJUJFJUQwJUJEJUQwJUIwJUQwJUJB
JUQwJUJFIiB0aXRsZT0i0JzQvtC90LDQutC+Ij7QmNGA0L7QvdCw0YM8L2E+PC9s
aT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1wYW0iPjxhIGhyZWY9Imh0dHA6
Ly9wYW0ud2lraXBlZGlhLm9yZy93aWtpL01vbmFjbyIgdGl0bGU9Ik1vbmFjbyI+
S2FwYW1wYW5nYW48L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1w
aWgiPjxhIGhyZWY9Imh0dHA6Ly9waWgud2lraXBlZGlhLm9yZy93aWtpL01vbmFr
byIgdGl0bGU9Ik1vbmFrbyI+Tm9yZnVrIC8gUGl0a2VybjwvYT48L2xpPgoJCQkJ
CTxsaSBjbGFzcz0iaW50ZXJ3aWtpLXBsIj48YSBocmVmPSJodHRwOi8vcGwud2lr
aXBlZGlhLm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+UG9sc2tpPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktcG1zIj48YSBocmVmPSJo
dHRwOi8vcG1zLndpa2lwZWRpYS5vcmcvd2lraS9Qcmluc2lwJUMzJUEwXyVDMyVB
QmRfTSVDMyVCMm5hY28iIHRpdGxlPSJQcmluc2lww6Agw6tkIE3Dsm5hY28iPlBp
ZW1vbnTDqGlzPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktcG5i
Ij48YSBocmVmPSJodHRwOi8vcG5iLndpa2lwZWRpYS5vcmcvd2lraS8lRDklODUl
RDklODglRDklODYlRDglQTclREElQTklRDklODgiIHRpdGxlPSLZhdmI2YbYp9qp
2YgiPtm+2YbYrNin2KjbjDwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3
aWtpLXBzIj48YSBocmVmPSJodHRwOi8vcHMud2lraXBlZGlhLm9yZy93aWtpLyVE
OSU4NSVEOSU4OCVEOSU4NiVEOCVBNyVEQSVBOSVEOSU4OCIgdGl0bGU9ItmF2YjZ
htin2qnZiCI+2b7amtiq2Yg8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVy
d2lraS1wdCI+PGEgaHJlZj0iaHR0cDovL3B0Lndpa2lwZWRpYS5vcmcvd2lraS9N
JUMzJUIzbmFjbyIgdGl0bGU9Ik3Ds25hY28iPlBvcnR1Z3XDqnM8L2E+PC9saT4K
CQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1xdSI+PGEgaHJlZj0iaHR0cDovL3F1
Lndpa2lwZWRpYS5vcmcvd2lraS9NdW5ha3UiIHRpdGxlPSJNdW5ha3UiPlJ1bmEg
U2ltaTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLXJtIj48YSBo
cmVmPSJodHRwOi8vcm0ud2lraXBlZGlhLm9yZy93aWtpL01vbmFjbyIgdGl0bGU9
Ik1vbmFjbyI+UnVtYW50c2NoPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRl
cndpa2ktcm8iPjxhIGhyZWY9Imh0dHA6Ly9yby53aWtpcGVkaWEub3JnL3dpa2kv
TW9uYWNvIiB0aXRsZT0iTW9uYWNvIj5Sb23Dom7EgzwvYT48L2xpPgoJCQkJCTxs
aSBjbGFzcz0iaW50ZXJ3aWtpLXJ1Ij48YSBocmVmPSJodHRwOi8vcnUud2lraXBl
ZGlhLm9yZy93aWtpLyVEMCU5QyVEMCVCRSVEMCVCRCVEMCVCMCVEMCVCQSVEMCVC
RSIgdGl0bGU9ItCc0L7QvdCw0LrQviI+0KDRg9GB0YHQutC40Lk8L2E+PC9saT4K
CQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1zYSI+PGEgaHJlZj0iaHR0cDovL3Nh
Lndpa2lwZWRpYS5vcmcvd2lraS8lRTAlQTQlQUUlRTAlQTUlOEIlRTAlQTQlQTgl
RTAlQTQlQkUlRTAlQTQlOTUlRTAlQTUlOEIiIHRpdGxlPSLgpK7gpYvgpKjgpL7g
pJXgpYsiPuCkuOCkguCkuOCljeCkleClg+CkpDwvYT48L2xpPgoJCQkJCTxsaSBj
bGFzcz0iaW50ZXJ3aWtpLXNhaCI+PGEgaHJlZj0iaHR0cDovL3NhaC53aWtpcGVk
aWEub3JnL3dpa2kvJUQwJTlDJUQwJUJFJUQwJUJEJUQwJUIwJUQwJUJBJUQwJUJF
IiB0aXRsZT0i0JzQvtC90LDQutC+Ij7QodCw0YXQsCDRgtGL0LvQsDwvYT48L2xp
PgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLXNjbiI+PGEgaHJlZj0iaHR0cDov
L3Njbi53aWtpcGVkaWEub3JnL3dpa2kvUHJpbmNpcGF0dV9kaV9NJUMzJUIybmFj
dSIgdGl0bGU9IlByaW5jaXBhdHUgZGkgTcOybmFjdSI+U2ljaWxpYW51PC9hPjwv
bGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktc2NvIj48YSBocmVmPSJodHRw
Oi8vc2NvLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28i
PlNjb3RzPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktc2UiPjxh
IGhyZWY9Imh0dHA6Ly9zZS53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWNvIiB0aXRs
ZT0iTW9uYWNvIj5Tw6FtZWdpZWxsYTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0i
aW50ZXJ3aWtpLXNoIj48YSBocmVmPSJodHRwOi8vc2gud2lraXBlZGlhLm9yZy93
aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+U3Jwc2tvaHJ2YXRza2kgLyDQodGA
0L/RgdC60L7RhdGA0LLQsNGC0YHQutC4PC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNz
PSJpbnRlcndpa2ktc2ltcGxlIj48YSBocmVmPSJodHRwOi8vc2ltcGxlLndpa2lw
ZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25hY28iPlNpbXBsZSBFbmds
aXNoPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktc2siPjxhIGhy
ZWY9Imh0dHA6Ly9zay53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWtvIiB0aXRsZT0i
TW9uYWtvIj5TbG92ZW7EjWluYTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50
ZXJ3aWtpLXNsIj48YSBocmVmPSJodHRwOi8vc2wud2lraXBlZGlhLm9yZy93aWtp
L01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+U2xvdmVuxaHEjWluYTwvYT48L2xpPgoJ
CQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLXNxIj48YSBocmVmPSJodHRwOi8vc3Eu
d2lraXBlZGlhLm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+U2hxaXA8
L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS1zciI+PGEgaHJlZj0i
aHR0cDovL3NyLndpa2lwZWRpYS5vcmcvd2lraS8lRDAlOUMlRDAlQkUlRDAlQkQl
RDAlQjAlRDAlQkElRDAlQkUiIHRpdGxlPSLQnNC+0L3QsNC60L4iPtCh0YDQv9GB
0LrQuCAvIFNycHNraTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtp
LXN2Ij48YSBocmVmPSJodHRwOi8vc3Yud2lraXBlZGlhLm9yZy93aWtpL01vbmFj
byIgdGl0bGU9Ik1vbmFjbyI+U3ZlbnNrYTwvYT48L2xpPgoJCQkJCTxsaSBjbGFz
cz0iaW50ZXJ3aWtpLXN3Ij48YSBocmVmPSJodHRwOi8vc3cud2lraXBlZGlhLm9y
Zy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+S2lzd2FoaWxpPC9hPjwvbGk+
CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktc3psIj48YSBocmVmPSJodHRwOi8v
c3psLndpa2lwZWRpYS5vcmcvd2lraS9NJUM1JUFGbmFrbyIgdGl0bGU9Ik3Fr25h
a28iPsWabMWvbnNraTwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtp
LXRhIj48YSBocmVmPSJodHRwOi8vdGEud2lraXBlZGlhLm9yZy93aWtpLyVFMCVB
RSVBRSVFMCVBRiU4QSVFMCVBRSVBOSVFMCVBRSVCRSVFMCVBRSU5NSVFMCVBRiU4
RCVFMCVBRSU5NSVFMCVBRiU4QiIgdGl0bGU9IuCuruCviuCuqeCuvuCuleCvjeCu
leCviyI+4K6k4K6u4K6/4K604K+NPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJp
bnRlcndpa2ktdGciPjxhIGhyZWY9Imh0dHA6Ly90Zy53aWtpcGVkaWEub3JnL3dp
a2kvJUQwJTlDJUQwJUJFJUQwJUJEJUQwJUIwJUQwJUJBJUQwJUJFIiB0aXRsZT0i
0JzQvtC90LDQutC+Ij7QotC+0rfQuNC606M8L2E+PC9saT4KCQkJCQk8bGkgY2xh
c3M9ImludGVyd2lraS10aCI+PGEgaHJlZj0iaHR0cDovL3RoLndpa2lwZWRpYS5v
cmcvd2lraS8lRTAlQjglOUIlRTAlQjglQTMlRTAlQjglQjAlRTAlQjklODAlRTAl
QjglOTclRTAlQjglQTglRTAlQjklODIlRTAlQjglQTElRTAlQjglOTklRTAlQjgl
QjIlRTAlQjklODIlRTAlQjglODEiIHRpdGxlPSLguJvguKPguLDguYDguJfguKjg
uYLguKHguJnguLLguYLguIEiPuC5hOC4l+C4ojwvYT48L2xpPgoJCQkJCTxsaSBj
bGFzcz0iaW50ZXJ3aWtpLXRsIj48YSBocmVmPSJodHRwOi8vdGwud2lraXBlZGlh
Lm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+VGFnYWxvZzwvYT48L2xp
PgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLXRyIj48YSBocmVmPSJodHRwOi8v
dHIud2lraXBlZGlhLm9yZy93aWtpL01vbmFrbyIgdGl0bGU9Ik1vbmFrbyI+VMO8
cmvDp2U8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS11ZG0iPjxh
IGhyZWY9Imh0dHA6Ly91ZG0ud2lraXBlZGlhLm9yZy93aWtpLyVEMCU5QyVEMCVC
RSVEMCVCRCVEMCVCMCVEMCVCQSVEMCVCRSIgdGl0bGU9ItCc0L7QvdCw0LrQviI+
0KPQtNC80YPRgNGCPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2kt
dWciPjxhIGhyZWY9Imh0dHA6Ly91Zy53aWtpcGVkaWEub3JnL3dpa2kvJUQ5JTg1
JUQ5JTg4JUQ5JTg2JUQ4JUE3JUQ5JTgzJUQ5JTg4IiB0aXRsZT0i2YXZiNmG2KfZ
g9mIIj7YptuH2YrYutuH2LHahtuVIC8gVXlnaHVyY2hl4oCOPC9hPjwvbGk+CgkJ
CQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktdWsiPjxhIGhyZWY9Imh0dHA6Ly91ay53
aWtpcGVkaWEub3JnL3dpa2kvJUQwJTlDJUQwJUJFJUQwJUJEJUQwJUIwJUQwJUJB
JUQwJUJFIiB0aXRsZT0i0JzQvtC90LDQutC+Ij7Qo9C60YDQsNGX0L3RgdGM0LrQ
sDwvYT48L2xpPgoJCQkJCTxsaSBjbGFzcz0iaW50ZXJ3aWtpLXVyIj48YSBocmVm
PSJodHRwOi8vdXIud2lraXBlZGlhLm9yZy93aWtpLyVEOSU4NSVEOSU4NiVEOCVB
NyVEQSVBOSVEOSU4OCIgdGl0bGU9ItmF2YbYp9qp2YgiPtin2LHYr9mIPC9hPjwv
bGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktdXoiPjxhIGhyZWY9Imh0dHA6
Ly91ei53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWtvIiB0aXRsZT0iTW9uYWtvIj5P
J3piZWs8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS12ZWMiPjxh
IGhyZWY9Imh0dHA6Ly92ZWMud2lraXBlZGlhLm9yZy93aWtpL1ByaW5zaXBhdG9f
ZGVfTSVDMyVCMm5hY28iIHRpdGxlPSJQcmluc2lwYXRvIGRlIE3Dsm5hY28iPlbD
qG5ldG88L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS12aSI+PGEg
aHJlZj0iaHR0cDovL3ZpLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxl
PSJNb25hY28iPlRp4bq/bmcgVmnhu4d0PC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNz
PSJpbnRlcndpa2ktdm8iPjxhIGhyZWY9Imh0dHA6Ly92by53aWtpcGVkaWEub3Jn
L3dpa2kvTW9uYWslQzMlQTRuIiB0aXRsZT0iTW9uYWvDpG4iPlZvbGFww7xrPC9h
PjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktd2FyIj48YSBocmVmPSJo
dHRwOi8vd2FyLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hY28iIHRpdGxlPSJNb25h
Y28iPldpbmFyYXk8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS13
byI+PGEgaHJlZj0iaHR0cDovL3dvLndpa2lwZWRpYS5vcmcvd2lraS9Nb25hYWtv
IiB0aXRsZT0iTW9uYWFrbyI+V29sb2Y8L2E+PC9saT4KCQkJCQk8bGkgY2xhc3M9
ImludGVyd2lraS14YWwiPjxhIGhyZWY9Imh0dHA6Ly94YWwud2lraXBlZGlhLm9y
Zy93aWtpLyVEMCU5QyVEMCVCRSVEMCVCRCVEMCVCMCVEMCVCQSVEMCVCOCVEMCVC
RF8lRDAlOUQlRDElODMlRDElODIlRDAlQjMiIHRpdGxlPSLQnNC+0L3QsNC60LjQ
vSDQndGD0YLQsyI+0KXQsNC70YzQvNCzPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNz
PSJpbnRlcndpa2kteWkiPjxhIGhyZWY9Imh0dHA6Ly95aS53aWtpcGVkaWEub3Jn
L3dpa2kvJUQ3JTlFJUQ3JTkwJUQ3JUEwJUQ3JTkwJUQ3JUE3JUQ3JTkwIiB0aXRs
ZT0i157XkNeg15DXp9eQIj7XmdeZ1rTXk9eZ16k8L2E+PC9saT4KCQkJCQk8bGkg
Y2xhc3M9ImludGVyd2lraS15byI+PGEgaHJlZj0iaHR0cDovL3lvLndpa2lwZWRp
YS5vcmcvd2lraS9NJUMzJUIzbmFrJUMzJUIyIiB0aXRsZT0iTcOzbmFrw7IiPllv
csO5YsOhPC9hPjwvbGk+CgkJCQkJPGxpIGNsYXNzPSJpbnRlcndpa2ktemgiPjxh
IGhyZWY9Imh0dHA6Ly96aC53aWtpcGVkaWEub3JnL3dpa2kvJUU2JTkxJUE5JUU3
JUJBJUIzJUU1JTkzJUE1IiB0aXRsZT0i5pGp57qz5ZOlIj7kuK3mloc8L2E+PC9s
aT4KCQkJCQk8bGkgY2xhc3M9ImludGVyd2lraS16aC1taW4tbmFuIj48YSBocmVm
PSJodHRwOi8vemgtbWluLW5hbi53aWtpcGVkaWEub3JnL3dpa2kvTW9uYWNvIiB0
aXRsZT0iTW9uYWNvIj5Cw6JuLWzDom0tZ8O6PC9hPjwvbGk+CgkJCQkJPGxpIGNs
YXNzPSJpbnRlcndpa2ktemgteXVlIj48YSBocmVmPSJodHRwOi8vemgteXVlLndp
a2lwZWRpYS5vcmcvd2lraS8lRTYlOTElQTklRTclQjQlOEQlRTUlOTMlQTUiIHRp
dGxlPSLmkanntI3lk6UiPueyteiqnjwvYT48L2xpPgoJCQkJPC91bD4KCTwvZGl2
Pgo8L2Rpdj4KCjwhLS0gL0xBTkdVQUdFUyAtLT4KCQkJPC9kaXY+CgkJPCEtLSAv
cGFuZWwgLS0+CgkJPCEtLSBmb290ZXIgLS0+CgkJPGRpdiBpZD0iZm9vdGVyIj4K
CQkJCQkJCQkJCQk8dWwgaWQ9ImZvb3Rlci1pbmZvIj4KCQkJCQkJCQkJCQkJCQkJ
CQk8bGkgaWQ9ImZvb3Rlci1pbmZvLWxhc3Rtb2QiPiBFc3RhIHDDoWdpbmEgZnVl
IG1vZGlmaWNhZGEgcG9yIMO6bHRpbWEgdmV6IGVsIDkgc2VwIDIwMTAsIGEgbGFz
IDIxOjU1LjwvbGk+CgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJPGxpIGlkPSJmb290
ZXItaW5mby1jb3B5cmlnaHQiPkVsIHRleHRvIGVzdMOhIGRpc3BvbmlibGUgYmFq
byBsYSA8YSBocmVmPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNl
cy9ieS1zYS8zLjAvZGVlZC5lcyI+TGljZW5jaWEgQ3JlYXRpdmUgQ29tbW9ucyBS
ZWNvbm9jaW1pZW50byBDb21wYXJ0aXIgSWd1YWwgMy4wPC9hPjsgcG9kcsOtYW4g
c2VyIGFwbGljYWJsZXMgY2zDoXVzdWxhcyBhZGljaW9uYWxlcy4gTGVlIGxvcyA8
YSBocmVmPSJodHRwOi8vd2lraW1lZGlhZm91bmRhdGlvbi5vcmcvd2lraS9UZXJt
c19vZl9Vc2UiPnTDqXJtaW5vcyBkZSB1c288L2E+IHBhcmEgbcOhcyBpbmZvcm1h
Y2nDs24uPC9saT4KCQkJCQkJCQkJCQkJCQkJPC91bD4KCQkJCQkJCQkJCQkJCQkJ
PHVsIGlkPSJmb290ZXItcGxhY2VzIj4KCQkJCQkJCQkJCQkJCQkJCQk8bGkgaWQ9
ImZvb3Rlci1wbGFjZXMtcHJpdmFjeSI+PGEgaHJlZj0iaHR0cDovL3dpa2ltZWRp
YWZvdW5kYXRpb24ub3JnL3dpa2kvUG9sJUMzJUFEdGljYV9kZV9wcml2YWNpZGFk
IiB0aXRsZT0id2lraW1lZGlhOlBvbMOtdGljYSBkZSBwcml2YWNpZGFkIj5Qb2zD
rXRpY2EgZGUgcHJpdmFjaWRhZDwvYT48L2xpPgoJCQkJCQkJCQkJCQkJCQkJCQkJ
CQkJCTxsaSBpZD0iZm9vdGVyLXBsYWNlcy1hYm91dCI+PGEgaHJlZj0iL3dpa2kv
V2lraXBlZGlhOkFjZXJjYV9kZSIgdGl0bGU9Ildpa2lwZWRpYTpBY2VyY2EgZGUi
PkFjZXJjYSBkZSBXaWtpcGVkaWE8L2E+PC9saT4KCQkJCQkJCQkJCQkJCQkJCQkJ
CQkJCQk8bGkgaWQ9ImZvb3Rlci1wbGFjZXMtZGlzY2xhaW1lciI+PGEgaHJlZj0i
L3dpa2kvV2lraXBlZGlhOkxpbWl0YWNpJUMzJUIzbl9nZW5lcmFsX2RlX3Jlc3Bv
bnNhYmlsaWRhZCIgdGl0bGU9Ildpa2lwZWRpYTpMaW1pdGFjacOzbiBnZW5lcmFs
IGRlIHJlc3BvbnNhYmlsaWRhZCI+RGVzY2FyZ28gZGUgcmVzcG9uc2FiaWxpZGFk
PC9hPjwvbGk+CgkJCQkJCQkJCQkJCQkJCTwvdWw+CgkJCQkJCQkJCQk8dWwgaWQ9
ImZvb3Rlci1pY29ucyIgY2xhc3M9Im5vcHJpbnQiPgoJCQkJCQkJCTxsaSBpZD0i
Zm9vdGVyLWljb24tcG93ZXJlZGJ5Ij48YSBocmVmPSJodHRwOi8vd3d3Lm1lZGlh
d2lraS5vcmcvIj48aW1nIHNyYz0iaHR0cDovL2JpdHMud2lraW1lZGlhLm9yZy9z
a2lucy0xLjUvY29tbW9uL2ltYWdlcy9wb3dlcmVkYnlfbWVkaWF3aWtpXzg4eDMx
LnBuZyIgaGVpZ2h0PSIzMSIgd2lkdGg9Ijg4IiBhbHQ9IlBvd2VyZWQgYnkgTWVk
aWFXaWtpIiAvPjwvYT48L2xpPgoJCQkJCQkJCQkJCQk8bGkgaWQ9ImZvb3Rlci1p
Y29uLWNvcHlyaWdodCI+PGEgaHJlZj0iaHR0cDovL3dpa2ltZWRpYWZvdW5kYXRp
b24ub3JnLyI+PGltZyBzcmM9Ii9pbWFnZXMvd2lraW1lZGlhLWJ1dHRvbi5wbmci
IHdpZHRoPSI4OCIgaGVpZ2h0PSIzMSIgYWx0PSJXaWtpbWVkaWEgRm91bmRhdGlv
biIvPjwvYT48L2xpPgoJCQkJCQkJPC91bD4KCQkJPGRpdiBzdHlsZT0iY2xlYXI6
Ym90aCI+PC9kaXY+CgkJPC9kaXY+CgkJPCEtLSAvZm9vdGVyIC0tPgoJCTwhLS0g
Zml4YWxwaGEgLS0+CgkJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiBp
ZiAoIHdpbmRvdy5pc01TSUU1NSApIGZpeGFscGhhKCk7IDwvc2NyaXB0PgoJCTwh
LS0gL2ZpeGFscGhhIC0tPgoJCQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCI+aWYgKHdpbmRvdy5ydW5PbmxvYWRIb29rKSBydW5PbmxvYWRIb29rKCk7PC9z
Y3JpcHQ+CgkJPCEtLSBTZXJ2ZWQgYnkgc3J2MjU4IGluIDAuMDUzIHNlY3MuIC0t
PgkJCTwvYm9keT4KPC9odG1sPgo=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=favicon.ico
Content-Type: image/x-icon; name=favicon.ico
Content-Location: http://es.wikipedia.org/favicon.ico
Content-Transfer-Encoding: Base64
AAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAA
AAAAAAAAEAAAAAAAAAAEAgQAhIOEAMjHyABIR0gA6ejpAGlqaQCpqKkAKCgoAPz9
/AAZGBkAmJiYANjZ2ABXWFcAent6ALm6uQA8OjwAiIiIiIiIiIiIiI4oiL6IiIiI
gzuIV4iIiIhndo53KIiIiB/WvXoYiIiIfEZfWBSIiIEGi/foqoiIgzuL84i9iIjp
GIoMiEHoiMkos3FojmiLlUipYliEWIF+iDe0GoRa7D6GPbjcu1yIiIiIiIiIiIiI
iIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/page-base.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAANQTFRF9vb2AAsjqgAAAApJREFUCB1j
YAAAAAIAAc/INeUAAAAASUVORK5CYII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/border.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAANQTFRFp9f5cVVvXwAAAApJREFUCB1j
YAAAAAIAAc/INeUAAAAASUVORK5CYII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/page-fade.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAMAAACT+SJTAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAFdQTFRF+fn49/f2+/v89vf3/v79/v3+
/v/++fj4/fz89/f4+fr5/f79/Pv8+Pn59/b2+/v7/f38+Pj4+vr5+vr7/Pz8+fn5
9vb29/j4+vr6/v7+/f399/f3////vR8U6wAAADxJREFUeNotwgcOgCAURMEnKnaw
Yr3/Od38kBm+zHObmoqBx8y07OIYiWxyyUrPITDRsHBKx2tKCgKJ9AOMswMINl/f
OQAAAABJRU5ErkJggg==
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/tab-break.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAEAAAAuCAMAAADeMYNYAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAGBQTFRFyuf7xeX6vuL6td76qtn5+vv7
9/n7rtr5/Pz84vH7sNv6weP60en7qNf56vX74PD77fb7zuj77/b8stz65/P78/j8
8ff83e/7uuD61ev79Pj75PL72Oz72+370+v7uN/6UiPZnwAAAD1JREFUeNpNwccB
gCAABMFFMaMIZkz9d+k9naH+LbTUxMJKZGRg1pMGz8bNxcGDI4AY7cjY9SVn0pZK
rfYfcHYCb27V9m8AAAAASUVORK5CYII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/tab-normal-fade.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAMAAABw8qpSAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAFpQTFRF/P3++fv9+vz+6vT46vP49/r9
+Pv9p9f57PT6+/z+7PT59vr98/j77vb69Pn89Pn76vL48ff67fT68ff77vX6/v//
9fr86PL4+/3+7/b68vf7/f7+/v7/////unDFUAAAADpJREFUeNrFwoURg0AAALDg
Li3SYvuvyR9LcInrZYvzcTzgrxIHUZDLNFa9QWs3+dh0Zl+lWiI1+iluKncJSLF7
CNkAAAAASUVORK5CYII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/tab-current-fade.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAEAAABkAQMAAAB94sgjAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAANQTFRF////p8QbyAAAAAxJREFUCB1j
YBgeAAAAyAABP2UdiQAAAABJRU5ErkJggg==
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/search-fade.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAEAAAAQBAMAAAAlsQiEAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACpQTFRF9vf3/v/++fr5/Pv8+/v7/f38
+Pj4+fn59vb2+vr6/v7+/f399/f3////Hp8+5gAAACVJREFUCNdjaGBoYDjAkACE
BQwKDBMYHBgMGAIYNgDhAoYLDBcAdIAIAfO0JnYAAAAASUVORK5CYII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/portal-break.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAIwAAAABCAMAAAA7MLYKAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAEtQTFRF29vb2tra4ODg6urq5OTk4uLi
6+vr7e3t7Ozs8PDw5+fn4+Pj4eHh3d3d39/f6Ojo5eXl6enp8fHx8/Pz8vLy7+/v
3Nzc2dnZ2NjYnErj7QAAAD1JREFUeNq0wQUBACAMALDj7hf6JyUFGxzEnYhC9GaN
PG1xVffGDErk/iCigLl1XV2xM49lfAxEaSM+AQYA9HMKuv4liFQAAAAASUVORK5C
YII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/bullet-icon.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAUAAAANCAMAAABW4lS6AAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRFAFKM////QIUK9QAAAAJ0Uk5T
/wDltzBKAAAAGklEQVR42mJgBAEGokgGBjBGBxBxsBqAAAMACHwALd5r8ygAAAAA
SUVORK5CYII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/external-link-ltr-icon.png?2
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAMAAAC67D+PAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAGBQTFRF////AGb/AGbMmcz/M5nMZpnM
////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7feQVwAAAAd0Uk5T////////
ABpLA0YAAAA6SURBVHjaJMtBDgBABARBs4P/P3kbfZCKEE3aAmUFLVu5fCQfGQ7n
ciTV0GW9zp4Ds+B5SMcLfgEGADSKAPVZzedhAAAAAElFTkSuQmCC
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/lock-icon.png?2
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAMAAAC67D+PAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADBQTFRF8+JXpJMI//GB5NNI9ONY6urq
+Odc//i78N9U795T6dhN28tJ/+5jsbKwiIqF////GRZMogAAABB0Uk5T////////
////////////AOAjXRkAAABCSURBVHjabMxLDgAhCANQdHQcP7T3v63UhashafKg
CUbSAThpkteIqEvsQdUaN2Ks1lafOMz5vUz2w/I9h/fDFmAADPcEmtmwR7AAAAAA
SUVORK5CYII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/images/user-icon.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAMAAABxsOwqAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAGBQTFRF78mOboqv0K93R2uZ4a1a5rp2
N2mnMmGd/Pr4k6zMMFySTXWr2Jg157Vn4Zst9unUl6a836ZMr7CwooVQPXGwpLnW
5KQ/vMne+O/gXXiV6+zt5Orx1t7n7/Dwgpm5////xZOJMQAAACB0Uk5T////////
/////////////////////////////////wBcXBvtAAAAY0lEQVR42hzKSQKAIAwE
wWAMQUBBQdzN/38p0pepw4DI3vVzH0RADBCNpTOVYaZAxYefZaQyNZplqrXDeiTv
07EJ3C67uGR0F7yo9bAyYwSFrJ1iywoi19HW2gjPiy11fgIMAJ51Bh79zDO4AAAA
AElFTkSuQmCC
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=main-ltr.css
Content-Type: text/css; charset=UTF-8; name=main-ltr.css
Content-Location: http://bits.wikimedia.org/skins-1.5/vector/main-ltr.css?283r
Content-Transfer-Encoding: 8bit
/*
* main-rtl.css is automatically generated using CSSJanus, a python script for
* creating RTL versions of otherwise LTR stylesheets.
*
* You may download the tool to rebuild this stylesheet
* http://code.google.com/p/cssjanus/
*
* An online version of this tool can be used at:
* http://cssjanus.commoner.com/
*
* The following command is used to generate the RTL version of this file
* ./cssjanus.py --swap_ltr_rtl_in_url < main-ltr.css > main-rtl.css
*
* Any rules which should not be flipped should be prepended with @noflip in
* a comment block.
*/
/* Framework */
html,
body {
height: 100%;
margin: 0;
padding: 0;
font-family: sans-serif;
font-size: 1em;
}
body {
background-color: #f3f3f3;
background-image: url(images/page-base.png?1);
}
/* Content */
#content {
margin-left: 10em;
padding: 1em;
background-image: url(images/border.png?1);
background-position: top left;
background-repeat: repeat-y;
background-color: white;
color: black;
}
/* Head */
#mw-page-base {
height: 5em;
background-color: white;
background-image: url(images/page-fade.png?1);
background-position: bottom left;
background-repeat: repeat-x;
}
#mw-head-base {
margin-top: -5em;
margin-left: 10em;
height: 5em;
background-image: url(images/border.png?1);
background-position: bottom left;
background-repeat: repeat-x;
}
div#mw-head {
position: absolute;
top: 0;
right: 0;
width: 100%;
}
div#mw-head h5 {
margin: 0;
padding: 0;
}
/* Hide empty portlets */
div.emptyPortlet {
display: none;
}
/* Personal */
#p-personal {
position: absolute;
top: 0;
padding-left: 10em;
right: 0.75em;
}
#p-personal h5 {
display: none;
}
#p-personal ul {
list-style: none;
margin: 0;
padding: 0;
}
/* @noflip */
#p-personal li {
line-height: 1.125em;
float: left;
}
/* This one flips! */
#p-personal li {
margin-left: 0.75em;
margin-top: 0.5em;
font-size: 0.75em;
white-space: nowrap;
}
/* Navigation Containers */
#left-navigation {
position: absolute;
left: 10em;
top: 2.5em;
}
#right-navigation {
float: right;
margin-top: 2.5em;
}
/* Navigation Labels */
div.vectorTabs h5,
div.vectorMenu h5 span {
display: none;
}
/* Namespaces and Views */
/* @noflip */
div.vectorTabs {
float: left;
height: 2.5em;
}
div.vectorTabs {
background-image: url(images/tab-break.png?1);
background-position: bottom left;
background-repeat: no-repeat;
padding-left: 1px;
}
/* @noflip */
div.vectorTabs ul {
float: left;
}
div.vectorTabs ul {
height: 100%;
list-style: none;
margin: 0;
padding: 0;
}
/* @noflip */
div.vectorTabs ul li {
float: left;
}
/* OVERRIDDEN BY COMPLIANT BROWSERS */
div.vectorTabs ul li {
line-height: 1.125em;
display: inline-block;
height: 100%;
margin: 0;
padding: 0;
background-color: #f3f3f3;
background-image: url(images/tab-normal-fade.png?1);
background-position: bottom left;
background-repeat: repeat-x;
white-space:nowrap;
}
/* IGNORED BY IE6 */
div.vectorTabs ul > li {
display: block;
}
div.vectorTabs li.selected {
background-image: url(images/tab-current-fade.png?1);
}
/* OVERRIDDEN BY COMPLIANT BROWSERS */
div.vectorTabs li a {
display: inline-block;
height: 2.5em;
padding-left: 0.4em;
padding-right: 0.4em;
background-image: url(images/tab-break.png?1);
background-position: bottom right;
background-repeat: no-repeat;
}
div.vectorTabs li a,
div.vectorTabs li a span {
color: #0645ad;
cursor: pointer;
}
div.vectorTabs li a span {
font-size: 0.8em;
}
/* IGNORED BY IE6 */
div.vectorTabs li > a {
display: block;
}
/* OVERRIDDEN BY COMPLIANT BROWSERS */
div.vectorTabs a span {
display: inline-block;
padding-top: 1.25em;
}
/* IGNORED BY IE6 */
/* @noflip */
div.vectorTabs a > span {
float: left;
display: block;
}
div.vectorTabs li.selected a,
div.vectorTabs li.selected a span,
div.vectorTabs li.selected a:visited
div.vectorTabs li.selected a:visited span {
color: #333333;
text-decoration: none;
}
div.vectorTabs li.new a,
div.vectorTabs li.new a span,
div.vectorTabs li.new a:visited,
div.vectorTabs li.new a:visited span {
color: #a55858;
}
/* Variants and Actions */
/* @noflip */
div.vectorMenu {
direction: ltr;
float: left;
background-image: url(images/arrow-down-icon.png?1);
background-position: 100% 60%;
background-repeat: no-repeat;
cursor: pointer;
}
/* @noflip */
body.rtl div.vectorMenu {
direction: rtl;
}
/* OVERRIDDEN BY COMPLIANT BROWSERS */
/* @noflip */
div#mw-head div.vectorMenu h5 {
float: left;
background-image: url(images/tab-break.png?1);
background-repeat: no-repeat;
}
/* IGNORED BY IE6 */
div#mw-head div.vectorMenu > h5 {
background-image: none;
}
div#mw-head div.vectorMenu h5 {
background-position: bottom left;
margin-left: -1px;
}
div#mw-head div.vectorMenu h4 {
display: inline-block;
float: left;
font-size: 0.8em;
padding-left: 0.5em;
padding-top: 1.375em;
font-weight: normal;
border: none;
}
/* OVERRIDDEN BY COMPLIANT BROWSERS */
/* @noflip */
div.vectorMenu h5 a {
display: inline-block;
width: 24px;
height: 2.5em;
text-decoration: none;
background-image: url(images/tab-break.png?1);
background-repeat: no-repeat;
}
div.vectorMenu h5 a{
background-position: bottom right;
}
/* IGNORED BY IE6 */
div.vectorMenu h5 > a {
display: block;
}
div.vectorMenu div.menu {
position: relative;
display: none;
clear: both;
text-align: left;
}
/* OVERRIDDEN BY COMPLIANT BROWSERS */
/* @noflip */
body.rtl div.vectorMenu div.menu {
margin-left: 24px;
}
/* IGNORED BY IE6 */
/* @noflip */
body.rtl div.vectorMenu > div.menu {
margin-left: auto;
}
/* Fixes old versions of FireFox */
/* @noflip */
body.rtl div.vectorMenu > div.menu,
x:-moz-any-link {
margin-left: 23px;
}
div.vectorMenu:hover div.menu {
display: block;
}
div.vectorMenu ul {
position: absolute;
background-color: white;
border: solid 1px silver;
border-top-width: 0;
list-style: none;
list-style-image: none;
list-style-type: none;
padding: 0;
margin: 0;
margin-left: -1px;
text-align: left;
}
/* Fixes old versions of FireFox */
div.vectorMenu ul,
x:-moz-any-link {
min-width: 5em;
}
/* Returns things back to normal in modern versions of FireFox */
div.vectorMenu ul,
x:-moz-any-link,
x:default {
min-width: 0;
}
div.vectorMenu li {
padding: 0;
margin: 0;
text-align: left;
line-height: 1em;
}
/* OVERRIDDEN BY COMPLIANT BROWSERS */
div.vectorMenu li a {
display: inline-block;
padding: 0.5em;
white-space: nowrap;
}
/* IGNORED BY IE6 */
div.vectorMenu li > a {
display: block;
}
div.vectorMenu li a {
color: #0645ad;
cursor: pointer;
font-size: 0.8em;
}
div.vectorMenu li.selected a,
div.vectorMenu li.selected a:visited {
color: #333333;
text-decoration: none;
}
/* Search */
#p-search h5 {
display: none;
}
/* @noflip */
#p-search {
float: left;
}
#p-search {
margin-right: 0.5em;
margin-left: 0.5em;
}
#p-search form,
#p-search input {
margin: 0;
margin-top: 0.4em;
}
#simpleSearch {
margin-top: 0.65em;
position: relative;
min-height: 1px; /* Gotta trigger hasLayout for IE7 */
border: solid 1px #AAAAAA;
background-color: white;
background-image: url(images/search-fade.png?1);
background-position: top left;
background-repeat: repeat-x;
}
#simpleSearch label {
font-size: 13px;
top: 0.25em;
}
div#simpleSearch .placeholder {
color: #999999;
}
div#simpleSearch input::-webkit-input-placeholder {
color: #999999;
}
div#simpleSearch input#searchInput {
margin: 0;
border-width: 0;
padding: 3px;
vertical-align: top;
font-size: 13px;
width: 14em;
background-color: transparent;
}
/* OVERRIDDEN BY COMPLIANT BROWSERS */
#simpleSearch button#searchButton {
padding: 0;
margin: 0 5px;
border: none;
cursor: pointer;
background-color: transparent;
font-size: x-small;
}
div#simpleSearch button#searchButton img {
border: none;
margin: 0;
padding: 0;
vertical-align: middle;
}
/* Panel */
div#mw-panel {
position: absolute;
top: 160px;
padding-top: 1em;
width: 10em;
left: 0;
}
div#mw-panel div.portal {
padding-bottom: 1.5em;
}
div#mw-panel div.portal h5 {
font-weight: normal;
color: #444444;
padding: 0.25em;
padding-top: 0;
padding-left: 1.75em;
cursor: default;
border: none;
font-size: 0.75em;
}
div#mw-panel div.portal div.body {
margin: 0;
padding-top: 0.5em;
margin-left: 1.25em;
background-image: url(images/portal-break.png?1);
background-repeat: no-repeat;
background-position: top left;
}
div#mw-panel div.portal div.body ul {
list-style: none;
list-style-image: none;
list-style-type: none;
padding: 0;
margin: 0;
}
div#mw-panel div.portal div.body ul li {
line-height: 1.125em;
padding: 0;
padding-bottom: 0.5em;
margin: 0;
overflow: hidden;
font-size: 0.75em;
}
div#mw-panel div.portal div.body ul li a {
color: #0645ad;
}
div#mw-panel div.portal div.body ul li a:visited {
color: #0b0080;
}
/* Footer */
#footer {
margin-left: 10em;
margin-top: 0;
padding: 0.75em;
background-image: url(images/border.png?1);
background-position: top left;
background-repeat: repeat-x;
}
#footer ul {
list-style: none;
list-style-image: none;
list-style-type: none;
margin: 0;
padding: 0;
}
#footer ul li {
margin: 0;
padding: 0;
padding-top: 0.5em;
padding-bottom: 0.5em;
color: #333333;
font-size: 0.7em;
}
#footer #footer-icons {
float: right;
}
/* @noflip */
body.ltr #footer #footer-places {
float: left;
}
#footer #footer-info li {
line-height: 1.4em;
}
#footer #footer-icons li {
float: left;
margin-left: 0.5em;
line-height: 2em;
}
#footer #footer-places li {
float: left;
margin-right: 1em;
line-height: 2em;
}
/* Logo */
#p-logo {
position: absolute;
top: -160px;
left: 0;
width: 10em;
height: 160px;
}
#p-logo a {
display: block;
width: 10em;
height: 160px;
background-repeat: no-repeat;
background-position: center center;
text-decoration: none;
}
/*
*
* The following code is highly modified from monobook. It would be nice if the
* preftoc id was more human readable like preferences-toc for instance,
* howerver this would require backporting the other skins.
*/
/* Preferences */
#preftoc {
/* Tabs */
width: 100%;
float: left;
clear: both;
margin: 0 !important;
padding: 0 !important;
background-image: url(images/preferences-break.png?1);
background-position: bottom left;
background-repeat: no-repeat;
}
#preftoc li {
/* Tab */
float: left;
margin: 0;
padding: 0;
padding-right: 1px;
height: 2.25em;
white-space: nowrap;
list-style-type: none;
list-style-image: none;
background-image: url(images/preferences-break.png?1);
background-position: bottom right;
background-repeat: no-repeat;
}
/* IGNORED BY IE6 */
#preftoc li:first-child {
margin-left: 1px;
}
#preftoc a,
#preftoc a:active {
display: inline-block;
position: relative;
color: #0645ad;
padding: 0.5em;
text-decoration: none;
background-image: none;
font-size: 0.9em;
}
#preftoc a:hover {
text-decoration: underline;
}
#preftoc li.selected a {
background-image: url(images/preferences-fade.png?1);
background-position: bottom;
background-repeat: repeat-x;
color: #333333;
text-decoration: none;
}
#preferences {
float: left;
width: 100%;
margin: 0;
margin-top: -2px;
clear: both;
border: solid 1px #cccccc;
background-color: #f9f9f9;
background-image: url(images/preferences-base.png?1);
}
#preferences fieldset.prefsection {
border: none;
padding: 0;
margin: 1em;
}
#preferences fieldset.prefsection fieldset {
border: none;
border-top: solid 1px #cccccc;
}
#preferences legend {
color: #666666;
}
#preferences fieldset.prefsection legend.mainLegend {
display: none;
}
#preferences td {
padding-left: 0.5em;
padding-right: 0.5em;
}
#preferences td.htmlform-tip {
font-size: x-small;
padding: .2em 2em;
color: #666666;
}
#preferences div.mw-prefs-buttons {
padding: 1em;
}
#preferences div.mw-prefs-buttons input {
margin-right: 0.25em;
}
/*
* Styles for the user login and create account forms
*/
#userlogin, #userloginForm {
border: solid 1px #cccccc;
padding: 1.2em;
margin: .5em;
float: left;
}
#userlogin {
min-width: 20em;
max-width: 90%;
width: 40em;
}
/*
*
* The following code is slightly modified from monobook
*
*/
#content {
line-height: 1.5em;
}
#bodyContent {
font-size: 0.8em;
}
/* Links */
a {
text-decoration: none;
color: #0645ad;
background: none;
}
a:visited {
color: #0b0080;
}
a:active {
color: #faa700;
}
a:hover {
text-decoration: underline;
}
a.stub {
color: #772233;
}
a.new, #p-personal a.new {
color: #ba0000;
}
a.new:visited, #p-personal a.new:visited {
color: #a55858;
}
/* Inline Elements */
img {
border: none;
vertical-align: middle;
}
hr {
height: 1px;
color: #aaa;
background-color: #aaa;
border: 0;
margin: .2em 0 .2em 0;
}
/* Structural Elements */
h1,
h2,
h3,
h4,
h5,
h6 {
color: black;
background: none;
font-weight: normal;
margin: 0;
padding-top: .5em;
padding-bottom: .17em;
border-bottom: 1px solid #aaa;
width: auto;
}
h1 { font-size: 188%; }
h1 .editsection { font-size: 53%; }
h2 { font-size: 150%; }
h2 .editsection { font-size: 67%; }
h3,
h4,
h5,
h6 {
border-bottom: none;
font-weight: bold;
}
h3 { font-size: 132%; }
h3 .editsection { font-size: 76%; font-weight: normal; }
h4 { font-size: 116%; }
h4 .editsection { font-size: 86%; font-weight: normal; }
h5 { font-size: 100%; }
h5 .editsection { font-weight: normal; }
h6 { font-size: 80%; }
h6 .editsection { font-size: 125%; font-weight: normal; }
p {
margin: .4em 0 .5em 0;
line-height: 1.5em;
}
p img {
margin: 0;
}
abbr,
acronym,
.explain {
border-bottom: 1px dotted black;
color: black;
background: none;
cursor: help;
}
q {
font-family: Times, "Times New Roman", serif;
font-style: italic;
}
/* Disabled for now
blockquote {
font-family: Times, "Times New Roman", serif;
font-style: italic;
}*/
pre, code, tt {
/*
* It's important for this rule to first reference an actual font name, some browsers will render the monospace text
* too small otherwise, namely Firefox, Chrome and Safari
*/
font-family: monospace, "Courier New";
}
code {
background-color: #f9f9f9;
}
pre {
padding: 1em;
border: 1px dashed #2f6fab;
color: black;
background-color: #f9f9f9;
line-height: 1.1em;
}
ul {
line-height: 1.5em;
list-style-type: square;
margin: .3em 0 0 1.5em;
padding: 0;
list-style-image: url(images/bullet-icon.png?1);
}
ol {
line-height: 1.5em;
margin: .3em 0 0 3.2em;
padding: 0;
list-style-image: none;
}
li {
margin-bottom: .1em;
}
dt {
font-weight: bold;
margin-bottom: .1em;
}
dl {
margin-top: .2em;
margin-bottom: .5em;
}
dd {
line-height: 1.5em;
margin-left: 2em;
margin-bottom: .1em;
}
/* Tables */
table {
font-size: 100%;
color: black;
/* we don't want the bottom borders of s to be visible through
* floated tables */
background-color: white;
}
fieldset table {
/* but keep table layouts in forms clean... */
background: none;
}
/* Forms */
fieldset {
border: 1px solid #2f6fab;
margin: 1em 0 1em 0;
padding: 0 1em 1em;
line-height: 1.5em;
}
fieldset.nested {
margin: 0 0 0.5em 0;
padding: 0 0.5em 0.5em;
}
legend {
padding: .5em;
font-size: 95%;
}
form {
border: none;
margin: 0;
}
textarea {
width: 100%;
padding: .1em;
}
select {
vertical-align: top;
}
/* Table of Contents */
#toc,
.toc,
.mw-warning {
border: 1px solid #aaa;
background-color: #f9f9f9;
padding: 5px;
font-size: 95%;
}
#toc h2,
.toc h2 {
display: inline;
border: none;
padding: 0;
font-size: 100%;
font-weight: bold;
}
#toc #toctitle,
.toc #toctitle,
#toc .toctitle,
.toc .toctitle {
text-align: center;
}
#toc ul,
.toc ul {
list-style-type: none;
list-style-image: none;
margin-left: 0;
padding-left: 0;
text-align: left;
}
#toc ul ul,
.toc ul ul {
margin: 0 0 0 2em;
}
#toc .toctoggle,
.toc .toctoggle {
font-size: 94%;
}
/* Images */
div.floatright, table.floatright {
clear: right;
float: right;
position: relative;
margin: 0 0 .5em .5em;
border: 0;
}
div.floatright p { font-style: italic; }
div.floatleft, table.floatleft {
float: left;
clear: left;
position: relative;
margin: 0 .5em .5em 0;
border: 0;
}
div.floatleft p { font-style: italic; }
/* Thumbnails */
div.thumb {
margin-bottom: .5em;
border-style: solid;
border-color: white;
width: auto;
background-color: transparent;
}
div.thumbinner {
border: 1px solid #ccc;
padding: 3px !important;
background-color: #f9f9f9;
font-size: 94%;
text-align: center;
overflow: hidden;
}
html .thumbimage {
border: 1px solid #ccc;
}
html .thumbcaption {
border: none;
text-align: left;
line-height: 1.4em;
padding: 3px !important;
font-size: 94%;
}
div.magnify {
float: right;
border: none !important;
background: none !important;
}
div.magnify a, div.magnify img {
display: block;
border: none !important;
background: none !important;
}
/* @noflip */
div.tright {
clear: right;
float: right;
border-width: .5em 0 .8em 1.4em;
}
/* @noflip */
div.tleft {
float: left;
clear: left;
margin-right: .5em;
border-width: .5em 1.4em .8em 0;
}
img.thumbborder {
border: 1px solid #dddddd;
}
.hiddenStructure {
display: none;
}
/* Warning */
.mw-warning {
margin-left: 50px;
margin-right: 50px;
text-align: center;
}
/* User Message */
.usermessage {
background-color: #ffce7b;
border: 1px solid #ffa500;
color: black;
font-weight: bold;
margin: 2em 0 1em;
padding: .5em 1em;
vertical-align: middle;
}
/* Site Notice (includes notices from CentralNotice extension) */
#siteNotice {
text-align: center;
font-size: 0.8em;
margin: 0;
}
#localNotice {
margin-bottom: 0.9em;
}
/* Categories */
.catlinks {
border: 1px solid #aaa;
background-color: #f9f9f9;
padding: 5px;
margin-top: 1em;
clear: both;
}
/* Sub-navigation */
#siteSub {
display: none;
}
#jump-to-nav {
display: none;
}
#contentSub, #contentSub2 {
font-size: 84%;
line-height: 1.2em;
margin: 0 0 1.4em 1em;
color: #7d7d7d;
width: auto;
}
span.subpages {
display: block;
}
/* Emulate Center */
.center {
width: 100%;
text-align: center;
}
*.center * {
margin-left: auto;
margin-right: auto;
}
/* Small for tables and similar */
.small, .small * {
font-size: 94%;
}
table.small {
font-size: 100%;
}
/* Edge Cases for Content */
h1, h2 {
margin-bottom: .6em;
}
h3, h4, h5 {
margin-bottom: .3em;
}
#firstHeading {
padding-top: 0;
margin-top: 0;
padding-top: 0;
margin-bottom: 0.1em;
line-height: 1.2em;
font-size: 1.6em;
padding-bottom: 0;
}
#content a.external,
#content a[href ^="gopher://"] {
background: url(images/external-link-ltr-icon.png?2) center right no-repeat;
padding: 0 13px 0 0;
}
#content a[href ^="https://"],
.link-https {
background: url(images/lock-icon.png?2) center right no-repeat;
padding: 0 13px 0 0;
}
#content a[href ^="mailto:"],
.link-mailto {
background: url(images/mail-icon.png?2) center right no-repeat;
padding: 0 13px 0 0;
}
#content a[href ^="news://"] {
background: url(images/news-icon.png?2) center right no-repeat;
padding: 0 13px 0 0;
}
#content a[href ^="ftp://"],
.link-ftp {
background: url(images/file-icon.png?2) center right no-repeat;
padding: 0 13px 0 0;
}
#content a[href ^="irc://"],
#content a.extiw[href ^="irc://"],
.link-irc {
background: url(images/talk-icon.png?2) center right no-repeat;
padding: 0 13px 0 0;
}
#content a.external[href $=".ogg"], #content a.external[href $=".OGG"],
#content a.external[href $=".mid"], #content a.external[href $=".MID"],
#content a.external[href $=".midi"], #content a.external[href $=".MIDI"],
#content a.external[href $=".mp3"], #content a.external[href $=".MP3"],
#content a.external[href $=".wav"], #content a.external[href $=".WAV"],
#content a.external[href $=".wma"], #content a.external[href $=".WMA"],
.link-audio {
background: url("images/audio-icon.png?2") center right no-repeat;
padding: 0 13px 0 0;
}
#content a.external[href $=".ogm"], #content a.external[href $=".OGM"],
#content a.external[href $=".avi"], #content a.external[href $=".AVI"],
#content a.external[href $=".mpeg"], #content a.external[href $=".MPEG"],
#content a.external[href $=".mpg"], #content a.external[href $=".MPG"],
.link-video {
background: url("images/video-icon.png?2") center right no-repeat;
padding: 0 13px 0 0;
}
#content a.external[href $=".pdf"], #content a.external[href $=".PDF"],
#content a.external[href *=".pdf#"], #content a.external[href *=".PDF#"],
#content a.external[href *=".pdf?"], #content a.external[href *=".PDF?"],
.link-document {
background: url("images/document-icon.png?2") center right no-repeat;
padding: 0 13px 0 0;
}
/* Interwiki Styling (Disabled) */
#content a.extiw,
#content a.extiw:active {
color: #36b;
background: none;
padding: 0;
}
#content a.external {
color: #36b;
}
#content .printfooter {
display: none;
}
/* Icon for Usernames */
#pt-userpage,
#pt-anonuserpage,
#pt-login {
background: url(images/user-icon.png?1) left top no-repeat;
padding-left: 15px !important;
text-transform: none;
}
.toccolours {
border: 1px solid #aaa;
background-color: #f9f9f9;
padding: 5px;
font-size: 95%;
}
#bodyContent {
position: relative;
width: 100%;
}
#mw-js-message {
font-size: 0.8em;
}
div#bodyContent {
line-height: 1.5em;
}
/* Watch/Unwatch Icon Styling */
#ca-unwatch.icon,
#ca-watch.icon {
margin-right:1px;
}
#ca-unwatch.icon a,
#ca-watch.icon a {
margin: 0;
padding: 0;
outline: none;
display: block;
width: 26px;
height: 2.5em;
}
#ca-unwatch.icon a {
background-image: url(images/watch-icons.png?1);
background-position: -43px 60%;
}
#ca-watch.icon a {
background-image: url(images/watch-icons.png?1);
background-position: 5px 60%;
}
#ca-unwatch.icon a:hover {
background-image: url(images/watch-icons.png?1);
background-position: -67px 60%;
}
#ca-watch.icon a:hover {
background-image: url(images/watch-icons.png?1);
background-position: -19px 60%;
}
#ca-unwatch.icon a.loading,
#ca-watch.icon a.loading {
background-image: url(images/watch-icon-loading.gif?1);
background-position: center 60%;
}
#ca-unwatch.icon a span,
#ca-watch.icon a span {
display: none;
}
div.vectorTabs ul {
background-image:url(images/tab-break.png?1);
background-position:right bottom;
background-repeat:no-repeat;
}
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=shared.css
Content-Type: text/css; charset=UTF-8; name=shared.css
Content-Location: http://bits.wikimedia.org/skins-1.5/common/shared.css?283r
Content-Transfer-Encoding: 8bit
/**
* CSS in this file is used by *all* skins (that have any CSS at all). Be
* careful what you put in here, since what looks good in one skin may not in
* another, but don't ignore the poor non-Monobook users either.
*/
/* Colored watchlist and recent changes numbers */
.mw-plusminus-pos { color: #006400; } /* dark green */
.mw-plusminus-neg { color: #8b0000; } /* dark red */
.mw-plusminus-null { color: #aaa; } /* gray */
/* Comment and username portions of RC entries */
span.comment {
font-style: italic;
}
span.changedby {
font-size: 95%;
}
/* Math */
.texvc { direction: ltr; unicode-bidi: embed; }
img.tex { vertical-align: middle; }
span.texhtml { font-family: serif; }
/* add a bit of margin space between the preview and the toolbar */
/* this replaces the ugly
we used to insert into the page source */
#wikiPreview.ontop { margin-bottom: 1em; }
/* Stop floats from intruding into edit area in previews */
#editform, #toolbar, #wpTextbox1 { clear: both; }
div#mw-js-message {
margin: 1em 5%;
padding: 0.5em 2.5%;
border: solid 1px #ddd;
background-color: #fcfcfc;
}
/* Edit section links */
.editsection {
float: right;
margin-left: 5px;
}
/**
* File histories
*/
h2#filehistory {
clear: both;
}
table.filehistory th,
table.filehistory td {
vertical-align:top;
}
table.filehistory th {
text-align: left;
}
table.filehistory td.mw-imagepage-filesize,
table.filehistory th.mw-imagepage-filesize {
white-space:nowrap;
}
table.filehistory td.filehistory-selected {
font-weight: bold;
}
/*
* rev_deleted stuff
*/
li span.deleted, span.history-deleted {
text-decoration: line-through;
color: #888;
font-style: italic;
}
/**
* Patrol stuff
*/
.not-patrolled {
background-color: #ffa;
}
.unpatrolled {
font-weight: bold;
color: red;
}
div.patrollink {
font-size: 75%;
text-align: right;
}
/**
* Forms
*/
body.ltr td.mw-label { text-align: right; }
body.ltr td.mw-input { text-align: left; }
body.ltr td.mw-submit { text-align: left; }
body.rtl td.mw-label { text-align: left; }
body.rtl td.mw-input { text-align: right; }
body.rtl td.mw-submit { text-align: right; }
td.mw-label { vertical-align: top; }
.prefsection td.mw-label { width: 20%; }
.prefsection table { width: 100%; }
td.mw-submit { white-space: nowrap; }
table.mw-htmlform-nolabel td.mw-label { width: 0 !important; }
tr.mw-htmlform-vertical-label td.mw-label {
text-align: left !important;
}
input#wpSummary {
width: 80%;
}
/**
* Image captions
*/
body.rtl .thumbcaption { text-align:right; }
body.rtl .magnify { float:left; }
body.ltr .thumbcaption { text-align:left; }
body.ltr .magnify { float:right; }
/**
* Hidden categories
*/
.mw-hidden-cats-hidden { display: none; }
.catlinks-allhidden { display: none; }
/* Convenience links to edit block, delete and protect reasons */
p.mw-ipb-conveniencelinks, p.mw-protect-editreasons,
p.mw-filedelete-editreasons, p.mw-delete-editreasons,
p.mw-revdel-editreasons {
font-size: 90%;
float: right;
}
/* Search results */
.searchresults {
}
.searchresults p {
margin-left: 0.4em;
margin-top: 1em;
margin-bottom: 1.2em;
}
div.searchresult {
font-size: 95%;
width:38em;
}
.mw-search-results {
margin-left: 0.4em;
}
.mw-search-results li {
padding-bottom: 1em;
list-style:none;
list-style-image:none;
}
.mw-search-results li a {
font-size: 108%;
}
.mw-search-result-data {
color: green;
font-size: 97%;
}
.mw-search-formheader {
background-color: #f3f3f3;
margin-top: 1em;
border: 1px solid silver;
}
.mw-search-formheader div.search-types {
float:left;
padding-left: 0.25em;
}
.rtl .mw-search-formheader div.search-types {
float: right;
}
.mw-search-formheader div.search-types ul {
margin: 0 !important;
padding: 0 !important;
list-style: none !important;
}
.mw-search-formheader div.search-types ul li {
float: left;
margin: 0;
padding: 0;
}
.mw-search-formheader div.search-types ul li a {
display: block;
padding: 0.5em;
}
.mw-search-formheader div.search-types ul li.current a {
color: #333333;
cursor: default;
}
.mw-search-formheader div.search-types ul li.current a:hover {
text-decoration: none;
}
.mw-search-formheader div.results-info {
float: right;
padding: 0.5em;
padding-right: 0.75em;
}
.mw-search-formheader div.results-info ul {
margin: 0 !important;
padding: 0 !important;
list-style: none !important;
}
.mw-search-formheader div.results-info ul li {
float: right;
margin: 0;
padding: 0;
}
fieldset#mw-searchoptions {
margin: 0;
padding-left: 0.75em !important;
padding-right: 0.75em !important;
padding-bottom: 0.5em !important;
padding-top: 0.5em !important;
border: none;
background-color: #f9f9f9;
border: 1px solid silver !important;
border-top-width: 0 !important;
}
fieldset#mw-searchoptions legend {
display: none;
}
fieldset#mw-searchoptions h4 {
padding: 0;
margin: 0;
float: left;
}
.rtl fieldset#mw-searchoptions h4 {
float: right;
}
fieldset#mw-searchoptions div#mw-search-togglebox {
float: right;
}
.rtl fieldset#mw-searchoptions div#mw-search-togglebox {
float: left;
}
fieldset#mw-searchoptions div#mw-search-togglebox label {
margin-right: 0.25em;
}
fieldset#mw-searchoptions div#mw-search-togglebox input {
margin-left: 0.25em;
}
fieldset#mw-searchoptions table {
float: left;
margin-right: 3em;
}
fieldset#mw-searchoptions table td {
padding-right: 1em;
}
.rtl fieldset#mw-searchoptions table td {
padding-left: 1em;
padding-right: 0;
}
body.rtl fieldset#mw-searchoptions table {
margin-right: 0;
margin-left: 3em;
float: right;
}
fieldset#mw-searchoptions div.divider {
clear: both;
border-bottom: 1px solid #DDDDDD;
padding-top: 0.5em;
margin-bottom: 0.5em;
}
td#mw-search-menu {
padding-left:6em;
font-size:85%;
}
div#mw-search-interwiki {
float: right;
width: 18em;
border-style: solid;
border-color: #AAAAAA;
border-width: 1px;
margin-top: 2ex;
}
.rtl div#mw-search-interwiki {
float: left;
}
div#mw-search-interwiki li {
font-size: 95%;
}
.mw-search-interwiki-more {
float: right;
font-size: 90%;
}
.rtl .mw-search-interwiki-more {
float: left;
}
div#mw-search-interwiki-caption {
text-align: center;
font-weight: bold;
font-size: 95%;
}
.mw-search-interwiki-project {
font-size: 97%;
text-align: left;
padding-left: 0.2em;
padding-right: 0.15em;
padding-bottom: 0.2em;
padding-top: 0.15em;
background-color:#ececec;
border-top:1px solid #BBBBBB;
}
.rtl .mw-search-interwiki-project {
text-align: right;
}
span.searchalttitle {
font-size: 95%;
}
div.searchdidyoumean {
font-size: 127%;
margin-top: 0.8em;
/* Note that this color won't affect the link, as desired. */
color: #c00;
}
div.searchdidyoumean em {
font-weight: bold;
}
.searchmatch {
font-weight: bold;
}
table#mw-search-top-table {
background-color: transparent;
}
/*
* Advanced PowerSearch box
*/
td#mw-search-togglebox {
text-align: right;
}
table#mw-search-powertable {
width:100%;
}
form#powersearch {
clear: both;
}
/*
* UserRights stuff
*/
.mw-userrights-disabled {
color: #888;
}
table.mw-userrights-groups * td,table.mw-userrights-groups * th {
padding-right: 1.5em;
}
/*
* OpenSearch ajax suggestions
*/
.os-suggest {
overflow: auto;
overflow-x: hidden;
position: absolute;
top: 0px;
left: 0px;
width: 0px;
background-color: white;
background-color: Window;
border-style: solid;
border-color: #AAAAAA;
border-width: 1px;
z-index:99;
font-size:95%;
}
table.os-suggest-results {
font-size: 95%;
cursor: pointer;
border: 0;
border-collapse: collapse;
width: 100%;
}
.os-suggest-result, .os-suggest-result-hl {
white-space: nowrap;
background-color: white;
background-color: Window;
color: black;
color: WindowText;
padding: 2px;
}
.os-suggest-result-hl,
.os-suggest-result-hl-webkit {
background-color: #4C59A6;
color: white;
}
.os-suggest-result-hl {
/* System colors are misimplemented in Safari 3.0 and earlier,
making highlighted text illegible... */
background-color: Highlight;
color: HighlightText;
}
.os-suggest-toggle {
position: relative;
left: 1ex;
font-size: 65%;
}
.os-suggest-toggle-def {
position: absolute;
top: 0px;
left: 0px;
font-size: 65%;
visibility: hidden;
}
/* Page history styling */
/* the auto-generated edit comments */
.autocomment { color: gray; }
#pagehistory .history-user {
margin-left: 0.4em;
margin-right: 0.2em;
}
#pagehistory span.minor { font-weight: bold; }
#pagehistory li { border: 1px solid white; }
#pagehistory li.selected {
background-color: #f9f9f9;
border: 1px dashed #aaa;
}
/** Generic minor/bot/newpage styling */
.newpage, .minor, .bot {
font-weight: bold;
}
/* Special:Contributions styling */
.mw-uctop {
font-weight: bold;
}
/* Special:ListGroupRights styling */
table.mw-listgrouprights-table tr {
vertical-align: top;
}
.listgrouprights-revoked { text-decoration: line-through; }
/* Special:Statistics styling */
td.mw-statistics-numbers {
text-align: right;
}
/* Special:SpecialPages styling */
h4.mw-specialpagesgroup {
background-color: #dcdcdc;
padding: 2px;
margin: .3em 0em 0em 0em;
}
.mw-specialpagerestricted {
font-weight: bold;
}
#shared-image-dup, #shared-image-conflict {
font-style: italic;
}
/* Special:EmailUser styling */
table.mw-emailuser-table {
width: 98%;
}
td#mw-emailuser-sender, td#mw-emailuser-recipient {
font-weight: bold;
}
/* Special:Allpages styling */
table.allpageslist {
background-color: transparent;
}
table.mw-allpages-table-form, table.mw-allpages-table-chunk {
background-color: transparent;
width: 100%;
}
td.mw-allpages-alphaindexline {
text-align: right;
}
td.mw-allpages-nav, p.mw-allpages-nav {
text-align: right;
font-size: smaller;
margin-bottom: 1em;
}
table.mw-allpages-table-form tr {
vertical-align: top;
}
/* Special:Prefixindex styling */
table#mw-prefixindex-list-table,
table#mw-prefixindex-nav-table {
width: 98%;
background-color: transparent;
}
td#mw-prefixindex-nav-form {
font-size: smaller;
margin-bottom: 1em;
text-align: right;
vertical-align: top;
}
/*
* Recreating deleted page warning
* Reupload file warning
* Page protection warning
* incl. log entries for these warnings
*/
div.mw-warning-with-logexcerpt {
padding: 3px;
margin-bottom: 3px;
border: 2px solid #2F6FAB;
clear: both;
}
div.mw-warning-with-logexcerpt ul li {
font-size: 90%;
}
/* (show/hide) revision deletion links */
span.mw-revdelundel-link,
strong.mw-revdelundel-link {
font-size: 90%;
}
span.mw-revdelundel-hidden,
input.mw-revdelundel-hidden {
visibility: hidden;
}
td.mw-revdel-checkbox, th.mw-revdel-checkbox {
padding-right: 10px;
text-align: center;
}
/* feed links */
a.feedlink {
background: url("images/feed-icon.png") center left no-repeat;
padding-left: 16px;
}
/* Plainlinks - this can be used to switch
* off special external link styling */
.plainlinks a {
background: none !important;
padding: 0 !important;
}
/* wikitable class for skinning normal tables */
table.wikitable {
margin: 1em 1em 1em 0;
background: #f9f9f9;
border: 1px #aaa solid;
border-collapse: collapse;
}
.wikitable th, .wikitable td {
border: 1px #aaa solid;
padding: 0.2em;
}
.wikitable th {
background: #f2f2f2;
text-align: center;
}
.wikitable caption {
font-weight: bold;
}
/* hide initially collapsed collapsable tables */
table.collapsed tr.collapsable {
display: none;
}
/* success and error messages */
.success {
color: green;
font-size: larger;
}
.error {
color: red;
font-size: larger;
}
.errorbox, .successbox {
font-size: larger;
border: 2px solid;
padding: .5em 1em;
float: left;
margin-bottom: 2em;
color: #000;
}
.errorbox {
border-color: red;
background-color: #fff2f2;
}
.successbox {
border-color: green;
background-color: #dfd;
}
.errorbox h2, .successbox h2 {
font-size: 1em;
font-weight: bold;
display: inline;
margin: 0 .5em 0 0;
border: none;
}
/* Note on preview page */
.previewnote {
color: #c00;
margin-bottom: 1em;
}
.previewnote p {
text-indent: 3em;
margin: 0.8em 0;
}
.visualClear {
clear: both;
}
#mw_trackbacks {
border: solid 1px #bbbbff;
background-color: #eeeeff;
padding: 0.2em;
}
/*
Table pager (e.g. Special:Imagelist)
- remove underlines from the navigation link
- collapse borders
- set the borders to outsets (similar to Special:Allmessages)
- remove line wrapping for all td and th, set background color
- restore line wrapping for the last two table cells (description and size)
*/
.TablePager { min-width: 80%; }
.TablePager_nav a { text-decoration: none; }
.TablePager { border-collapse: collapse; }
.TablePager, .TablePager td, .TablePager th {
border: 1px solid #aaaaaa;
padding: 0 0.15em 0 0.15em;
}
.TablePager th { background-color: #eeeeff }
.TablePager td { background-color: #ffffff }
.TablePager tr:hover td { background-color: #eeeeff }
.imagelist td, .imagelist th { white-space: nowrap }
.imagelist .TablePager_col_links { background-color: #eeeeff }
.imagelist .TablePager_col_img_description { white-space: normal }
.imagelist th.TablePager_sort { background-color: #ccccff }
/* Allmessages table */
#mw-allmessagestable .allmessages-customised td.am_default {
background-color: #fcffc4;
}
#mw-allmessagestable tr.allmessages-customised:hover td.am_default {
background-color: #faff90;
}
#mw-allmessagestable td.am_actual {
background-color: #e2ffe2;
}
#mw-allmessagestable tr.allmessages-customised:hover + tr.allmessages-customised td.am_actual {
background-color: #b1ffb1;
}
/* filetoc */
ul#filetoc {
text-align: center;
border: 1px solid #aaaaaa;
background-color: #f9f9f9;
padding: 5px;
font-size: 95%;
margin-bottom: 0.5em;
margin-left: 0;
margin-right: 0;
}
#filetoc li {
display: inline;
list-style-type: none;
padding-right: 2em;
}
/* Classes for EXIF data display */
table.mw_metadata {
font-size: 0.8em;
margin-left: 0.5em;
margin-bottom: 0.5em;
width: 300px;
}
table.mw_metadata caption {
font-weight: bold;
}
table.mw_metadata th {
font-weight: normal;
}
table.mw_metadata td {
padding: 0.1em;
}
table.mw_metadata {
border: none;
border-collapse: collapse;
}
table.mw_metadata td, table.mw_metadata th {
text-align: center;
border: 1px solid #aaaaaa;
padding-left: 0.1em;
padding-right: 0.1em;
}
table.mw_metadata th {
background-color: #f9f9f9;
}
table.mw_metadata td {
background-color: #fcfcfc;
}
/* Galleries */
table.gallery {
border: 1px solid #ccc;
margin: 2px;
padding: 2px;
background-color: white;
}
table.gallery tr {
vertical-align: top;
}
table.gallery td {
vertical-align: top;
background-color: #f9f9f9;
border: solid 2px white;
}
table.gallery caption {
font-weight: bold;
}
div.gallerybox {
margin: 2px;
}
div.gallerybox div.thumb {
text-align: center;
border: 1px solid #ccc;
margin: 2px;
}
div.gallerytext {
overflow: hidden;
font-size: 94%;
padding: 2px 4px;
}
table.mw-enhanced-rc {
background: none;
border:0;
border-spacing:0;
}
td.mw-enhanced-rc {
white-space:nowrap;
padding:0;
vertical-align:top;
font-family:monospace
}
#mw-addcategory-prompt {
display: inline;
margin-left: 1em;
}
#mw-addcategory-prompt input {
margin-left: 0.5em;
margin-right: 0.5em;
}
.mw-remove-category {
padding: 8px;
background-image: url(images/remove.png);
background-position: center center;
background-repeat: no-repeat;
}
.mw-ajax-addcategory {
padding-left: 20px;
background-image: url(images/add.png);
background-position: left center;
background-repeat: no-repeat;
}
.mw-ajax-loader {
background-image: url(images/ajax-loader.gif);
background-position: center center;
background-repeat: no-repeat;
padding: 16px;
position: relative;
top: -16px;
}
.mw-small-spinner {
padding: 10px !important;
margin-right: 0.6em;
background-image: url(images/spinner.gif);
background-position: center center;
background-repeat: no-repeat;
}
/* Sort arrows added by SortableTables */
a.sortheader {
margin: 0 0.3em;
}
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=commonPrint.css
Content-Type: text/css; charset=UTF-8; name=commonPrint.css
Content-Location: http://bits.wikimedia.org/skins-1.5/common/commonPrint.css?283r
Content-Transfer-Encoding: 8bit
/*
** MediaWiki Print style sheet for CSS2-capable browsers.
** Copyright Gabriel Wicke, http://www.aulinx.de/
**
** Derived from the plone (http://plone.org/) styles
** Copyright Alexander Limi
*/
/* Thanks to A List Apart (http://alistapart.com/) for useful extras */
a.stub,
a.new{ color:#ba0000; text-decoration:none; }
#toc {
/*border:1px solid #2f6fab;*/
border:1px solid #aaaaaa;
background-color:#f9f9f9;
padding:5px;
}
.tocindent {
margin-left: 2em;
}
.tocline {
margin-bottom: 0px;
}
/* images */
div.floatright {
float: right;
clear: right;
margin: 0;
position:relative;
border: 0.5em solid White;
border-width: 0.5em 0 0.8em 1.4em;
}
div.floatright p { font-style: italic;}
div.floatleft {
float: left;
margin: 0.3em 0.5em 0.5em 0;
position:relative;
border: 0.5em solid White;
border-width: 0.5em 1.4em 0.8em 0;
}
div.floatleft p { font-style: italic; }
/* thumbnails */
div.thumb {
margin-bottom: 0.5em;
border-style: solid; border-color: White;
width: auto;
overflow: hidden;
}
div.thumbinner {
border:1px solid #cccccc;
padding: 3px !important;
background-color:#f9f9f9;
font-size: 94%;
text-align: center;
}
html .thumbimage {
border:1px solid #cccccc;
}
html .thumbcaption {
border: none;
padding: 0.3em 0 0.1em 0;
}
div.magnify { display: none; }
div.tright {
float: right;
clear: right;
border-width: 0.5em 0 0.8em 1.4em;
}
div.tleft {
float: left;
margin-right:0.5em;
border-width: 0.5em 1.4em 0.8em 0;
}
img.thumbborder {
border: 1px solid #dddddd;
}
/* table standards */
table.rimage {
float:right;
width:1pt;
position:relative;
margin-left:1em;
margin-bottom:1em;
text-align:center;
}
body {
background: White;
/*font-size: 11pt !important;*/
color: Black;
margin: 0;
padding: 0;
}
.noprint,
div#jump-to-nav,
div.top,
div#column-one,
#colophon,
.editsection,
.toctoggle,
.tochidden,
div#f-poweredbyico,
div#f-copyrightico,
li#viewcount,
li#about,
li#disclaimer,
li#privacy,
#mw-hidden-catlinks {
/* Hides all the elements irrelevant for printing */
display: none;
}
ul {
list-style-type: square;
}
#content {
background: none;
border: none ! important;
padding: 0 ! important;
margin: 0 ! important;
}
#footer {
background : white;
color : black;
border-top: 1px solid black;
}
h1, h2, h3, h4, h5, h6 {
font-weight: bold;
}
p, .documentDescription {
margin: 1em 0 ! important;
line-height: 1.2em;
}
.tocindent p {
margin: 0 0 0 0 ! important;
}
pre {
border: 1pt dashed black;
white-space: pre;
font-size: 8pt;
overflow: auto;
padding: 1em 0;
background : white;
color : black;
}
table.listing,
table.listing td {
border: 1pt solid black;
border-collapse: collapse;
}
a {
color: Black !important;
background: none !important;
padding: 0 !important;
}
a:link, a:visited {
color: #520;
background: transparent;
text-decoration: underline;
}
#content a.external.text:after, #content a.external.autonumber:after {
/* Expand URLs for printing */
content: " (" attr(href) ") ";
}
#globalWrapper {
width: 100% !important;
min-width: 0 !important;
}
#content {
background : white;
color : black;
}
#column-content {
margin: 0 !important;
}
#column-content #content {
padding: 1em;
margin: 0 !important;
}
/* MSIE/Win doesn't understand 'inherit' */
a, a.external, a.new, a.stub {
color: black ! important;
text-decoration: none ! important;
}
/* Continue ... */
a, a.external, a.new, a.stub {
color: inherit ! important;
text-decoration: inherit ! important;
}
img { border: none; }
img.tex { vertical-align: middle; }
span.texhtml { font-family: serif; }
#siteNotice { display: none; }
div.gallerybox {
border: 1px solid #cccccc;
background-color:#f9f9f9;
width: 150px;
}
div.gallerytext {
overflow: visible;
}
/*
** Diff rendering
*/
table.diff { background:white; }
td.diff-otitle { background:#ffffff; }
td.diff-ntitle { background:#ffffff; }
td.diff-addedline {
background:#ccffcc;
font-size: smaller;
border: solid 2px black;
}
td.diff-deletedline {
background:#ffffaa;
font-size: smaller;
border: dotted 2px black;
}
td.diff-context {
background:#eeeeee;
font-size: smaller;
}
.diffchange {
color: silver;
font-weight: bold;
text-decoration: underline;
}
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/w/extensions/UsabilityInitiative/images/vector/collapsibleNav/portal-break.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAIwAAAABCAMAAAA7MLYKAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAEtQTFRF29vb2tra4ODg6urq5OTk4uLi
6+vr7e3t7Ozs8PDw5+fn4+Pj4eHh3d3d39/f6Ojo5eXl6enp8fHx8/Pz8vLy7+/v
3Nzc2dnZ2NjYnErj7QAAAD1JREFUeNq0wQUBACAMALDj7hf6JyUFGxzEnYhC9GaN
PG1xVffGDErk/iCigLl1XV2xM49lfAxEaSM+AQYA9HMKuv4liFQAAAAASUVORK5C
YII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/w/extensions/UsabilityInitiative/images/vector/collapsibleNav/arrow-down.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA9QTFRFeXl53d3dmpqasbGx////GU0i
EgAAAAV0Uk5T/////wD7tg5TAAAAK0lEQVQI12NwgQIG0hhCDAwMTCJAhqMCA4Mi
WEoIJABiOCooQhULi5BqMgB2bh4svs8t+QAAAABJRU5ErkJggg==
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://bits.wikimedia.org/w/extensions/UsabilityInitiative/images/vector/collapsibleNav/arrow-right.png?1
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAxQTFRF3d3deXl5////nZ2dQA6SoAAA
AAN0Uk5T//8A18oNQQAAADNJREFUeNpiYEIDDMQKMKALMDOgCTDCRWACcBG4AEwE
IcDITEAFuhnotmC4g4EEzwEEGAADqgHmQSPJKgAAAABJRU5ErkJggg==
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=combined.min.css
Content-Type: text/css; charset=UTF-8; name=combined.min.css
Content-Location: http://bits.wikimedia.org/w/extensions/UsabilityInitiative/css/combined.min.css?117
Content-Transfer-Encoding: 8bit
.suggestions{
overflow:hidden;
position:absolute;
top:0px;
left:0px;
width:0px;
border:none;
z-index:99;
padding:0;
margin:-1px 0 0 0;
}
.suggestions-special{
position:relative;
background-color:Window;
font-size:0.8em;
cursor:pointer;
border:solid 1px #aaaaaa;
padding:0;
margin:0;
margin-top:-2px;
display:none;
padding:0.25em 0.25em;
line-height:1.25em;
}
.suggestions-results{
background-color:white;
background-color:Window;
font-size:0.8em;
cursor:pointer;
border:solid 1px #aaaaaa;
padding:0;
margin:0;
}
.suggestions-result{
color:black;
color:WindowText;
margin:0;
line-height:1.5em;
padding:0.01em 0.25em;
}
.suggestions-result-current{
background-color:#4C59A6;
background-color:Highlight;
color:white;
color:HighlightText;
}
.suggestions-special .special-label{
font-size:0.8em;
color:gray;
}
.suggestions-special .special-query{
color:black;
font-style:italic;
}
.suggestions-special .special-hover{
background-color:silver;
}
.suggestions-result-current .special-label,
.suggestions-result-current .special-query{
color:white;
color:HighlightText;
}
.autoellipsis-matched,
.highlight{
font-weight:bold;
}
#mw-panel.collapsible-nav div.portal{
background-image:url(../images/vector/collapsibleNav/portal-break.png?1);
background-position:left top;
background-repeat:no-repeat;
padding:0.25em 0 !important;
margin:-11px 9px 10px 11px;
}
body.rtl #mw-panel.collapsible-nav div.portal{
background-position:right top;
margin:-11px 11px 10px 9px;
}
#mw-panel.collapsible-nav div.portal h5{
color:#4D4D4D;
font-weight:normal;
background:url(../images/vector/collapsibleNav/arrow-down.png?1) 0 50% no-repeat;
padding:4px 0 3px 1.5em;
margin-bottom:0px;
}
body.rtl #mw-panel.collapsible-nav div.portal h5{
background:url(../images/vector/collapsibleNav/arrow-down.png?1) 100% 50% no-repeat;
padding:4px 1.5em 3px 0;
}
#mw-panel.collapsible-nav div.collapsed h5{
color:#0645AD;
background:url(../images/vector/collapsibleNav/arrow-right.png?1) 0 50% no-repeat;
margin-bottom:0px;
}
body.rtl #mw-panel.collapsible-nav div.collapsed h5{
background:url(../images/vector/collapsibleNav/arrow-left.png?1) 100% 50% no-repeat;
}
#mw-panel.collapsible-nav div h5:hover{
cursor:pointer;
text-decoration:none;
}
#mw-panel.collapsible-nav div.collapsed h5:hover{
text-decoration:underline;
}
#mw-panel.collapsible-nav div.portal div.body{
background:none !important;
padding-top:0px;
display:none;
}
#mw-panel.collapsible-nav div.persistent div.body{
display:block;
}
#mw-panel.collapsible-nav div.first h5{
display:none;
}
#mw-panel.collapsible-nav div.persistent h5{
background:none !important;
padding-left:0.7em;
cursor:default;
}
#mw-panel.collapsible-nav div.portal div.body ul li{
padding:0.25em 0;
}
#mw-panel.collapsible-nav div.first{
background-image:none;
margin-top:0px;
}
#mw-panel.collapsible-nav div.persistent div.body{
margin-left:0.5em;
}
body.rtl #mw-panel.collapsible-nav div.persistent div.body{
margin-left:0;
margin-right:0.5em;
}
form#editform{
margin:0;
padding:0;
}
#wpSummary,#wpSummaryLabel{
margin-bottom:1em;
}
.wikiEditor-ui textarea#wpTextbox1{
border:none;
padding:0;
margin:-1px;
line-height:1.5em;
}
.wikiEditor-ui .wikiEditor-ui-text > textarea#wpTextbox1{
margin:0;
}
.wikiEditor-ui{
float:left;
position:relative;
clear:both;
width:100%;
background-color:#E0EEf7;
border:solid silver 1px;
}
body.rtl .wikiEditor-ui{
float:right;
}
.wikiEditor-ui .wikiEditor-ui-bottom{
}
.wikiEditor-ui .wikiEditor-ui-text{
line-height:0;
}
.wikiEditor-ui .wikiEditor-ui-top{
position:relative;
border-bottom:solid silver 1px;
}
.wikiEditor-ui .wikiEditor-ui-left{
float:left;
width:100%;
}
body.rtl .wikiEditor-ui .wikiEditor-ui-left{
float:right;
}
.wikiEditor-ui .wikiEditor-ui-right{
float:right;
background:#F3F3F3;
overflow:hidden;
}
body.rtl .wikiEditor-ui .wikiEditor-ui-right{
float:left;
}
.wikiEditor-wikitext{
float:left;
width:100%;
}
.wikiEditor-ui-controls{
float:left;
width:100%;
background-color:white;
margin-top:-1px;
border-bottom:solid 1px silver;
}
.wikiEditor-ui-tabs{
float:left;
height:2.5em;
margin-left:-1px;
background-color:white;
border-left:solid 1px silver;
border-top:solid 1px silver;
}
.wikiEditor-ui-buttons{
float:right;
height:2.5em;
margin-right:-1px;
background-color:white;
padding-left:1em;
border-top:solid 1px white;
}
.wikiEditor-ui-buttons button{
margin-left:0.5em;
}
.wikiEditor-ui-tabs div{
float:left;
height:2.5em;
background-color:#f3f3f3;
border-right:solid 1px silver;
border-bottom:solid 1px silver;
}
.wikiEditor-ui-tabs div.current{
border-bottom:solid 1px white;
background-color:white;
}
.wikiEditor-ui-tabs div a{
display:inline-block;
padding:0 0.75em;
line-height:2.5em;
color:#0645AD;
}
.wikiEditor-ui-tabs div.current a{
color:#333333;
}
.wikiEditor-ui-tabs div.current a:hover{
text-decoration:none;
}
.wikiEditor-view-wikitext{
line-height:1em;
}
.wikiEditor-ui-loading{
background:#f3f3f3;
z-index:10;
position:absolute;
top:0;
left:0;
text-align:center;
height:100%;
width:100%;
border:1px solid silver;
margin:-1px;
}
.wikiEditor-ui-loading span{
display:block;
height:24px;
width:24px;
background:url( ../images/wikiEditor/toolbar/loading.gif ) 0 0 no-repeat;
text-indent:-9999px;
margin:0 auto;
}
.wikiEditor-toolbar-dialog table{
margin-top:0.75em;
}
.wikiEditor-toolbar-dialog table td{
padding:0.5em;
height:3em;
overflow:visible;
}
div.suggestions{
z-index:1099;
}
.wikiEditor-toolbar-dialog .ui-dialog-titlebar-close:hover{
text-decoration:none;
}
.wikiEditor-toolbar-dialog .ui-dialog-content .status-invalid input{
border:2px solid red;
padding:2px 1px;
}
.wikiEditor-toolbar-dialog .ui-dialog-titlebar{
padding:0.9em 1.4em 0.6em !important;
}
.wikiEditor-toolbar-dialog table td{
padding:0 !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-buttonpane button{
-moz-border-radius:4px;
-webkit-border-radius:4px;
padding:0.2em 0.6em 0.15em !important;
margin:0.5em 0 0.5em 0.4em !important;
border:1px solid #a6a6a6 !important;
background:#f2f2f2 url( ../images/wikiEditor/dialogs/button_off.png?1) repeat-x scroll 50% 100% !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-buttonpane button:hover{
border-color:#6e7273;
background:#e1e1e1 url( ../images/wikiEditor/dialogs/button_over.png?1) repeat-x scroll 50% 100% !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-buttonpane button:active,
.wikiEditor-toolbar-dialog .ui-dialog-buttonpane button:focus{
border-color:#707271;
background:#bfbfbf url( ../images/wikiEditor/dialogs/button_down.png?1) repeat-x scroll 50% 100% !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-buttonpane button.disabled{
color:#7f7f7f;
border-color:#cccccc;
background:#f2f2f2 url( ../images/wikiEditor/dialogs/button_disabled.png?1) repeat-x scroll 50% 100% !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-buttonpane button::-moz-focus-inner{
border:0;
}
.wikiEditor-toolbar-dialog .ui-widget-header{
background:#f0f0f0 url( ../images/wikiEditor/dialogs/titlebar_fade.png?1) repeat-x scroll 50% 100% !important;
}
.wikiEditor-toolbar-dialog .ui-icon-closethick{
background:url( ../images/wikiEditor/dialogs/close_x.png?1) no-repeat 50% 50% !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-buttonpane{
margin-top:0 !important;
padding:0.3em 1.4em 0.5em 1.4em !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-content fieldset{
border:none !important;
margin:0 !important;
padding:0 !important;
}
.wikiEditor-toolbar-dialog .ui-widget-header{
border-bottom:1px solid #6bc8f3 !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-content input[type=text]{
-moz-box-sizing:border-box;
-ms-box-sizing:border-box;
-webkit-box-sizing:border-box;
-khtml-box-sizing:border-box;
}
.wikiEditor-toolbar-dialog .ui-dialog-content input[type="radio"],
.wikiEditor-toolbar-dialog .ui-dialog-content input[type="checkbox"]{
margin-left:0;
}
.wikiEditor-toolbar-dialog .ui-dialog-titlebar-close{
padding:0;
}
body.ltr .wikiEditor-toolbar-dialog .ui-dialog-titlebar-close{
right:0.9em;
}
.wikieditor-toolbar-field-wrapper{
padding:0 0 25px 0;
}
.wikieditor-toolbar-floated-field-wrapper{
float:left;
margin-right:2em;
}
.wikieditor-toolbar-dialog-hint{
color:#999999;
}
.wikiEditor-toolbar-dialog,
.wikiEditor-toolbar-dialog .ui-widget-content{
border:none !important;
}
#wikieditor-toolbar-table-dialog fieldset{
width:218px;
padding:0;
float:left;
}
body.rtl #wikieditor-toolbar-table-dialog fieldset{
float:right;
}
#wikieditor-toolbar-table-dialog .wikieditor-toolbar-table-preview-wrapper{
width:330px;
padding:0;
float:right;
}
body.rtl #wikieditor-toolbar-table-dialog .wikieditor-toolbar-table-preview-wrapper{
float:left;
}
body.rtl .wikiEditor-toolbar-dialog .wikieditor-toolbar-table-preview-wrapper table{
margin-left:1em;
margin-right:0;
}
.wikieditor-toolbar-table-preview-content *{
cursor:default;
}
.wikiEditor-toolbar-dialog .wikieditor-toolbar-table-preview-wrapper table{
width:100% !important;
}
.wikiEditor-toolbar-dialog .wikieditor-toolbar-table-preview-content table td{
padding:10px 4px !important;
height:auto !important;
}
.wikiEditor-toolbar-dialog .wikieditor-toolbar-table-preview-content table th{
padding:7px 3px !important;
}
.wikieditor-toolbar-table-dimension-fields .wikieditor-toolbar-field-wrapper{
float:left;
margin-right:20px;
vertical-align:bottom;
}
body.rtl .wikieditor-toolbar-table-dimension-fields .wikieditor-toolbar-field-wrapper{
float:right;
margin-right:0px;
margin-left:20px;
}
.wikiEditor-toolbar-dialog .ui-dialog-content{
padding:30px 20px 0 !important;
}
.wikieditor-toolbar-dialog-wrapper{
width:100%;
}
#wikieditor-toolbar-link-int-target-status{
float:right;
}
#wikieditor-toolbar-link-int-target,
#wikieditor-toolbar-link-int-text{
width:100%;
}
#wikieditor-toolbar-tool-link-int-target-label{
float:left;
line-height:1.7em;
}
#wikieditor-toolbar-link-int-target-status-loading{
line-height:1.7em;
}
#wikieditor-toolbar-link-int-target-status-exists,
#wikieditor-toolbar-link-int-target-status-notexists,
#wikieditor-toolbar-link-int-target-status-invalid,
#wikieditor-toolbar-link-int-target-status-external{
padding-left:30px;
background-position:0 50%;
background-repeat:no-repeat;
}
#wikieditor-toolbar-link-int-target-status-exists{
background-image:url( ../images/wikiEditor/dialogs/insert-link-exists.png?1);
}
#wikieditor-toolbar-link-int-target-status-notexists{
background-image:url( ../images/wikiEditor/dialogs/insert-link-notexists.png?1);
}
#wikieditor-toolbar-link-int-target-status-invalid{
background-image:url( ../images/wikiEditor/dialogs/insert-link-invalid.png?1);
}
#wikieditor-toolbar-link-int-target-status-external{
background-image:url( ../images/wikiEditor/dialogs/insert-link-external.png?1);
}
#wikieditor-toolbar-reference-dialog label{
float:left;
line-height:1.7em;
}
#wikieditor-toolbar-reference-text{
width:100%;
}
body.rtl .wikiEditor-toolbar-dialog .ui-dialog-buttonpane button{
float:left;
margin:0.5em 0.4em 0.5em 0 !important;
}
body.rtl .wikiEditor-toolbar-dialog .ui-dialog-titlebar-close{
left:0.9em;
right:auto;
}
body.rtl .wikiEditor-toolbar-dialog .ui-dialog-title{
float:right;
}
body.rtl #wikieditor-toolbar-link-int-target-status{
float:left;
}
body.rtl #wikieditor-toolbar-tool-link-int-target-label{
float:right;
}
body.rtl .wikieditor-toolbar-floated-field-wrapper{
float:right;
margin-right:0;
margin-left:2em;
}
body.rtl #wikieditor-toolbar-link-int-target-status-exists,
body.rtl #wikieditor-toolbar-link-int-target-status-notexists,
body.rtl #wikieditor-toolbar-link-int-target-status-invalid,
body.rtl #wikieditor-toolbar-link-int-target-status-external{
padding-left:0;
padding-right:30px;
background-position:100% 50%;
}
body.rtl #wikieditor-toolbar-link-int-target-status-external{
background-image:url( ../images/wikiEditor/dialogs/insert-link-external-rtl.png?1);
}
body.rtl #wikieditor-toolbar-reference-dialog label{
float:right;
}
.wikiEditor-template-dialog-fields label{
text-transform:capitalize;
float:left;
width:25%;
line-height:2.25em;
}
.wikiEditor-template-dialog-fields textarea{
float:right;
width:70%;
line-height:1.5em;
height:1.5em;
}
.wikiEditor-template-dialog-fields .wikiEditor-template-dialog-field-wrapper{
padding:0.75em 0.33em;
border-bottom:dashed 1px silver;
clear:both;
}
.wikiEditor-template-dialog-fields .wikiEditor-template-dialog-field-wrapper:first-child{
padding-top:0;
}
.wikiEditor-template-dialog-fields .wikiEditor-template-dialog-field-wrapper:last-child{
border-bottom:none;
}
.wikieditor-toolbar-table-dimension-fields:after,
.wikieditor-toolbar-dialog-wrapper:after{
visibility:hidden;
display:block;
font-size:0;
content:" ";
clear:both;
height:0;
}
.wikieditor-toolbar-table-dimension-fields,
.wikieditor-toolbar-dialog-wrapper{
display:inline-table;
}
* html .wikieditor-toolbar-table-dimension-fields,
* html .wikieditor-toolbar-dialog-wrapper{
height:1%;
}
.wikieditor-toolbar-table-dimension-fields,
.wikieditor-toolbar-dialog-wrapper{
display:block;
}
.wikiEditor-toolbar-dialog .ui-dialog-buttonpane{
border-top:1px solid #cccccc !important;
}
.wikiEditor-toolbar-dialog .ui-dialog-content{
padding-bottom:1em !important;
}
.wikiEditor-dialog-editoptions{
margin-top:15px;
}
.wikiEditor-publish-dialog-copywarn{
margin-top:0.5em;
}
.wikiEditor-publish-dialog-summary{
margin-top:1.5em;
}
.wikiEditor-publish-dialog-options{
margin-top:1.5em;
}
.wikiEditor-ui-toolbar{
position:relative;
width:100%;
}
.wikiEditor-ui-toolbar .sections{
float:left;
width:100%;
clear:both;
height:0;
}
body.rtl .wikiEditor-ui-toolbar .sections{
float:right;
}
.wikiEditor-ui-toolbar .sections .section{
display:none;
float:left;
width:100%;
border-top:solid 1px #DDDDDD;
background-color:#E0EEf7;
}
.wikiEditor-ui-toolbar{
background-image:url(../images/wikiEditor/toolbar/base.png?1);
background-position:left top;
background-repeat:repeat-x;
}
/*
.wikiEditor-ui-toolbar .toolbar{
background-image:url(../images/wikiEditor/toolbar/base.png?1);
background-position:left top;
}
*/
body.rtl .wikiEditor-ui-toolbar .sections .section{
float:right;
}
.wikiEditor-ui-toolbar .sections div .spinner{
display:none;
}
.wikiEditor-ui-toolbar .sections .loading .spinner{
display:block;
background-image:url(../images/wikiEditor/toolbar/loading.gif?2);
background-position:left center;
background-repeat:no-repeat;
padding-left:32px;
margin-left:0.5em;
height:32px;
float:left;
color:#666666;
}
body.rtl .wikiEditor-ui-toolbar .sections .loading .spinner{
background-position:right center;
padding-left:0;
padding-right:32px;
margin-left:0;
margin-right:0.5em;
float:right;
}
.wikiEditor-ui-toolbar .tabs,
.wikiEditor-ui-toolbar .section-main{
position:relative;
float:left;
height:26px;
}
body.rtl .wikiEditor-ui-toolbar .tabs,
body.rtl .wikiEditor-ui-toolbar .section-main{
float:right;
}
.wikiEditor-ui-toolbar .group{
float:left;
height:26px;
padding-right:6px;
border-right:solid 1px #DDDDDD;
margin:3px;
}
body.rtl .wikiEditor-ui-toolbar .group{
float:right;
padding-right:0;
padding-left:6px;
border-right:none;
border-left:solid 1px #DDDDDD;
}
.wikiEditor-ui-toolbar .group-search{
float:right;
padding:0 0 0 6px;
border-right:none;
border-left:1px solid #DDDDDD;
}
.wikiEditor-ui-toolbar .group-insert{
border-right:none;
}
body.rtl .wikiEditor-ui-toolbar .group-search{
float:left;
padding:0 6px 0 0;
border-left:none;
border-right:1px solid #DDDDDD;
}
body.rtl .wikiEditor-ui-toolbar .group-insert{
border-left:none;
}
.wikiEditor-toolbar-spritedButton{
background:url(../images/wikiEditor/toolbar/button-sprite.png?1) 0 0 no-repeat;
display:block;
float:left;
height:22px;
text-indent:-9999px;
width:22px;
padding:2px;
cursor:pointer;
overflow:hidden;
}
.wikiEditor-ui-toolbar .tabs{
list-style:none;
margin:3px;
}
.wikiEditor-ui-toolbar .tabs span.tab{
display:inline-block;
float:left;
line-height:26px;
}
.wikiEditor-ui-toolbar .tabs > span.tab{
display:block;
}
body.rtl .wikiEditor-ui-toolbar .tabs > span.tab{
float:right;
}
.wikiEditor-ui-toolbar .tabs span.tab a,
.wikiEditor-ui-toolbar .tabs span.tab a:visited{
display:inline-block;
float:left;
padding-left:18px;
padding-right:12px;
height:26px;
cursor:pointer;
color:#0645ad;
background-image:url(../images/wikiEditor/toolbar/arrow-right.png?1);
background-position:left center;
background-repeat:no-repeat;
}
body.rtl .wikiEditor-ui-toolbar .tabs span.tab a,
body.rtl .wikiEditor-ui-toolbar .tabs span.tab a:visited{
padding-left:12px;
padding-right:18px;
background-image:url(../images/wikiEditor/toolbar/arrow-left.png?1);
background-position:right center;
}
body.rtl .wikiEditor-ui-toolbar .tabs > span.tab > a,
body.rtl .wikiEditor-ui-toolbar .tabs > pan.tab > a:visited{
float:right;
}
.wikiEditor-ui-toolbar .tabs span.tab a.current,
.wikiEditor-ui-toolbar .tabs span.tab a.current:visited{
color:#333333;
background-image:url(../images/wikiEditor/toolbar/arrow-down.png?1);
}
body.rtl .wikiEditor-ui-toolbar .tabs span.tab a.current,
body.rtl .wikiEditor-ui-toolbar .tabs span.tab a.current:visited{
background-image:url(../images/wikiEditor/toolbar/arrow-down.png?1);
}
.wikiEditor-ui-toolbar .tabs span.tab a.current:hover{
text-decoration:none;
}
.wikiEditor-ui-toolbar .tabs span.tab a.loading{
background-image:url(../images/wikiEditor/toolbar/loading-small.gif?1) !important;
}
.wikiEditor-ui-toolbar .group .label{
float:left;
border:0px;
height:22px;
line-height:22px;
margin:2px;
margin-left:5px;
margin-right:8px;
color:#777777;
cursor:default;
}
body.rtl .wikiEditor-ui-toolbar .group > .label{
float:right;
margin-left:8px;
margin-right:5px;
}
.wikiEditor-ui-toolbar .group img.tool{
float:left;
border:0px;
height:22px;
width:22px;
padding:2px;
cursor:pointer;
}
body.rtl .wikiEditor-ui-toolbar .group > img.tool{
float:right;
}
.wikiEditor-ui-toolbar .group .tool-select{
float:left;
margin:2px;
height:22px;
cursor:pointer;
border:solid 1px silver;
padding:0;
margin-right:0;
cursor:pointer;
background-color:#ffffff;
}
body.rtl .wikiEditor-ui-toolbar .group > .tool-select{
float:right;
}
.wikiEditor-ui-toolbar .group .tool-select .label{
background-image:url(../images/wikiEditor/toolbar/arrow-down.png?1);
background-position:center right;
background-repeat:no-repeat;
padding:0;
margin:0;
padding-left:4px;
padding-right:22px;
margin-right:4px;
cursor:pointer;
text-decoration:none;
color:#333333;
}
body.rtl .wikiEditor-ui-toolbar .group .tool-select .label{
background-position:center left;
padding-right:4px;
padding-left:22px;
margin-left:4px;
margin-right:0;
}
body.rtl .wikiEditor-ui-toolbar .group .tool-select .menu{
clear:both;
}
.wikiEditor-ui-toolbar .group .tool-select .menu .options{
position:absolute;
display:none;
margin-left:-1px;
border:solid 1px silver;
background-color:#ffffff;
}
body.rtl .wikiEditor-ui-toolbar .group .tool-select .menu{
margin-left:-1px;
margin-right:-1px;
}
.wikiEditor-ui-toolbar .group .tool-select .options {
margin-top:22px;
}
.wikiEditor-ui-toolbar .group .tool-select .options .option{
display:block;
padding:0.5em;
text-decoration:none;
color:black;
white-space:nowrap;
}
.wikiEditor-ui-toolbar .group .tool-select .options .option:hover{
background-color:#E0EEf7;
}
.wikiEditor-ui-toolbar .group .tool-select .options .option[rel=heading-2]{
font-size:150%;
font-weight:normal;
}
.wikiEditor-ui-toolbar .group .tool-select .options .option[rel=heading-3]{
font-size:132%;
font-weight:normal;
}
.wikiEditor-ui-toolbar .group .tool-select .options .option[rel=heading-4]{
font-size:116%;
font-weight:normal;
}
.wikiEditor-ui-toolbar .group .tool-select .options .option[rel=heading-5]{
font-size:100%;
font-weight:bold;
}
.wikiEditor-ui-toolbar .booklet .index{
float:left;
width:20%;
height:125px;
overflow:auto;
}
body.rtl .wikiEditor-ui-toolbar .booklet .index{
float:right;
}
.wikiEditor-ui-toolbar .booklet .index div{
padding:4px;
padding-left:6px;
cursor:pointer;
color:#0645ad;
}
body.rtl .wikiEditor-ui-toolbar .booklet .index div{
padding-left:4px;
padding-right:6px;
}
.wikiEditor-ui-toolbar .booklet .index .current{
background-color:#FAFAFA;
color:#333333;
cursor:default;
}
.wikiEditor-ui-toolbar .booklet .pages{
float:right;
width:80%;
height:125px;
overflow:auto;
background-color:#FAFAFA;
}
body.rtl .wikiEditor-ui-toolbar .booklet .pages{
float:left;
}
.wikiEditor-ui-toolbar .page-table table{
padding-left:5px;
padding-right:5px;
background:none;
}
.wikiEditor-ui-toolbar .page-table th{
color:#999999;
}
.wikiEditor-ui-toolbar .page-table td{
color:black;
border-top:solid 1px #EEEEEE;
}
.wikiEditor-ui-toolbar .page-table th,
.wikiEditor-ui-toolbar .page-table td{
text-align:left;
padding:5px;
margin:0px;
}
body.rtl .wikiEditor-ui-toolbar .page-table th,
body.rtl .wikiEditor-ui-toolbar .page-table td{
text-align:right;
}
.wikiEditor-ui-toolbar .section-help .page-table td.cell-syntax,
.wikiEditor-ui-toolbar .section-help .page-table td.syntax{
font-family:monospace;
}
.wikiEditor-ui-toolbar .section-help .page-table td.syntax,
.wikiEditor-ui-toolbar .section-help .page-table td.cell-syntax,
.wikiEditor-ui-toolbar .section-help .page-table td.cell-result,
.wikiEditor-ui-toolbar .section-help .page-table td.result{
width:40%;
}
.wikiEditor-ui-toolbar .section-help .page-table td.description,
.wikiEditor-ui-toolbar .section-help .page-table td.description{
width:20%;
}
.wikiEditor-ui-toolbar .page-characters div span{
border:solid 1px #DDDDDD;
padding:5px;
padding-left:8px;
padding-right:8px;
margin-left:5px;
margin-top:5px;
height:1em;
float:left;
display:block;
color:black;
text-decoration:none;
cursor:pointer;
font-family:monospace;
font-size:1.25em;
}
body.rtl .wikiEditor-ui-toolbar .page-characters > div > span,
.wikiEditor-ui-toolbar .page-characters div[dir=rtl] span{
direction:rtl;
float:right;
margin-left:0;
margin-right:5px;
}
.wikiEditor-ui-toolbar .page-characters div span:hover{
background-color:white;
text-decoration:none;
border-color:#a8d7f9;
}
.ui-widget table td.wikieditor-toolbar-table-preview-wrapper span{
padding:4px 6px 0px;
display:block;
}
.ui-widget table .wikieditor-toolbar-table-preview-frame{
width:340px;
background:#fff;
padding:10px;
overflow:hidden;
display:block;
position:relative;
}
.ui-widget table .wikieditor-toolbar-table-preview-content{
width:375px;
display:block;
}
.ui-widget table .wikieditor-toolbar-table-preview{
width:340px;
}
.ui-widget table td.wikieditor-toolbar-table-preview-wrapper{
background:#e5e5e5;
padding:10px;
}
.wikiEditor-preview-loading{
padding:1em;
background-color:white;
}
.wikiEditor-preview-loading span{
color:#666666;
}
.wikiEditor-preview-spinner{
padding-right:1em;
}
.wikiEditor-preview-contents{
padding:1em;
background-color:white;
}
#wikiEditor-0-preview-dialog .wikiEditor-ui-loading{
overflow:hidden;
border:none;
}
.ui-dialog .ui-dialog-buttonpane{
margin:0 !important;
}
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=jquery-ui-1.7.2.css
Content-Type: text/css; charset=UTF-8; name=jquery-ui-1.7.2.css
Content-Location: http://bits.wikimedia.org/w/extensions/UsabilityInitiative/css/vector/jquery-ui-1.7.2.css?1.7.2y
Content-Transfer-Encoding: Quoted-Printable
/*
* jQuery UI CSS Framework
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt=
) licenses.
*/
/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-he=
ight: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:after { content: "."; display: block; height: 0; cle=
ar: both; visibility: hidden; }
.ui-helper-clearfix { display: inline-block; }
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix { height:1%; }
.ui-helper-clearfix { display:block; }
/* end clearfix */
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: =
absolute; opacity: 0; filter:Alpha(Opacity=3D0); }
/* Interaction Cues
----------------------------------*/
.ui-state-disabled { cursor: default !important; }
/* Icons
----------------------------------*/
/* states and images */
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; back=
ground-repeat: no-repeat; }
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; h=
eight: 100%; }
/*
* jQuery UI CSS Framework
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt=
) licenses.
* To view and modify this theme, visit http://jqueryui.com/themeroller/?=
ffDefault=3Dsans-serif&fwDefault=3Dnormal&fsDefault=3D1em&cornerRadius=3D=
0&bgColorHeader=3De2eef6&bgTextureHeader=3D04_highlight_hard.png&bgImgOp=
acityHeader=3D100&borderColorHeader=3Dc0c0c0&fcHeader=3D333333&iconColor=
Header=3D333333&bgColorContent=3Dffffff&bgTextureContent=3D01_flat.png&b=
gImgOpacityContent=3D100&borderColorContent=3Dc0c0c0&fcContent=3D000000&=
iconColorContent=3D000000&bgColorDefault=3De2eef6&bgTextureDefault=3D04_=
highlight_hard.png&bgImgOpacityDefault=3D100&borderColorDefault=3Dc0c0c0=
&fcDefault=3D333333&iconColorDefault=3D333333&bgColorHover=3Dffffff&bgTe=
xtureHover=3D04_highlight_hard.png&bgImgOpacityHover=3D100&borderColorHo=
ver=3Dc0c0c0&fcHover=3D333333&iconColorHover=3D333333&bgColorActive=3Dff=
ffff&bgTextureActive=3D01_flat.png&bgImgOpacityActive=3D100&borderColorA=
ctive=3Dc0c0c0&fcActive=3D333333&iconColorActive=3D333333&bgColorHighlig=
ht=3Dfbf9ee&bgTextureHighlight=3D04_highlight_hard.png&bgImgOpacityHighl=
ight=3D55&borderColorHighlight=3Dfcefa1&fcHighlight=3D363636&iconColorHi=
ghlight=3D2e83ff&bgColorError=3Dfef1ec&bgTextureError=3D05_inset_soft.pn=
g&bgImgOpacityError=3D95&borderColorError=3Dcd0a0a&fcError=3Dcd0a0a&icon=
ColorError=3Dcd0a0a&bgColorOverlay=3D000000&bgTextureOverlay=3D01_flat.p=
ng&bgImgOpacityOverlay=3D0&opacityOverlay=3D75&bgColorShadow=3D000000&bg=
TextureShadow=3D01_flat.png&bgImgOpacityShadow=3D0&opacityShadow=3D30&th=
icknessShadow=3D8px&offsetTopShadow=3D-8px&offsetLeftShadow=3D-8px&corne=
rRadiusShadow=3D8px
*/
/* Component containers
----------------------------------*/
.ui-widget { font-family: sans-serif; font-size: 0.9em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget but=
ton { font-family: sans-serif; font-size: 1em; }
.ui-widget-content { border: 1px solid #c0c0c0; background: #ffffff url(=
images/ui-bg_flat_100_ffffff_40x100.png) 50% 50% repeat-x; color: #00000=
0; }
.ui-widget-content a { color: #000000; }
.ui-widget-header { border-bottom: 1px solid #c0c0c0; line-height: 1em; =
background: #e2eef6 url(images/ui-bg_highlight-hard_100_e2eef6_1x100.png=
) 50% 50% repeat-x; color: #333333; font-weight: bold; }
.ui-widget-header a { color: #333333; }
/* Interaction states
----------------------------------*/
.ui-state-default, .ui-widget-content .ui-state-default { border: 1px so=
lid #c0c0c0; background: #e2eef6 url(images/ui-bg_highlight-hard_100_e2e=
ef6_1x100.png) 50% 50% repeat-x; font-weight: normal; color: #333333; ou=
tline: none; }
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visit=
ed { color: #333333; text-decoration: none; outline: none; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .u=
i-widget-content .ui-state-focus { border: 1px solid #c0c0c0; background=
: #ffffff url(images/ui-bg_highlight-hard_100_ffffff_1x100.png) 50% 50% =
repeat-x; font-weight: normal; color: #333333; outline: none; }
.ui-state-hover a, .ui-state-hover a:hover { color: #333333; text-decora=
tion: none; outline: none; }
.ui-state-active, .ui-widget-content .ui-state-active { border: 1px soli=
d #c0c0c0; background: #ffffff url(images/ui-bg_flat_100_ffffff_40x100.p=
ng) 50% 50% repeat-x; font-weight: normal; color: #333333; outline: none=
; }
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited =
{ color: #333333; outline: none; text-decoration: none; }
/* Interaction Cues
----------------------------------*/
.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px=
solid #fcefa1; background: #fbf9ee url(images/ui-bg_highlight-hard_55_f=
bf9ee_1x100.png) 50% top repeat-x; color: #363636; }
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color:=
#363636; }
.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #=
cd0a0a; background: #fef1ec url(images/ui-bg_inset-soft_95_fef1ec_1x100.=
png) 50% bottom repeat-x; color: #cd0a0a; }
.ui-state-error a, .ui-widget-content .ui-state-error a { color: #cd0a0a=
; }
.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #=
cd0a0a; }
.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35=
; filter:Alpha(Opacity=3D35); background-image: none; }
.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-wei=
ght: bold; }
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opac=
ity: .7; filter:Alpha(Opacity=3D70); font-weight: normal; }
/* Icons
----------------------------------*/
/* states and images */
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-ic=
ons_000000_256x240.png); }
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_00000=
0_256x240.png); }
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_333333=
_256x240.png); }
.ui-state-default .ui-icon { background-image: url(images/ui-icons_33333=
3_256x240.png); }
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: ur=
l(images/ui-icons_333333_256x240.png); }
.ui-state-active .ui-icon {background-image: url(images/ui-icons_333333_=
256x240.png); }
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83=
ff_256x240.png); }
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-imag=
e: url(images/ui-icons_cd0a0a_256x240.png); }
/* positioning */
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-off { background-position: -96px -144px; }
.ui-icon-radio-on { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-tl { -moz-border-radius-topleft: 0; -webkit-border-top-left-r=
adius: 0; }
.ui-corner-tr { -moz-border-radius-topright: 0; -webkit-border-top-right=
-radius: 0; }
.ui-corner-bl { -moz-border-radius-bottomleft: 0; -webkit-border-bottom-=
left-radius: 0; }
.ui-corner-br { -moz-border-radius-bottomright: 0; -webkit-border-bottom=
-right-radius: 0; }
.ui-corner-top { -moz-border-radius-topleft: 0; -webkit-border-top-left-=
radius: 0; -moz-border-radius-topright: 0; -webkit-border-top-right-radi=
us: 0; }
.ui-corner-bottom { -moz-border-radius-bottomleft: 0; -webkit-border-bot=
tom-left-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bo=
ttom-right-radius: 0; }
.ui-corner-right { -moz-border-radius-topright: 0; -webkit-border-top-r=
ight-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom=
-right-radius: 0; }
.ui-corner-left { -moz-border-radius-topleft: 0; -webkit-border-top-left=
-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left=
-radius: 0; }
.ui-corner-all { -moz-border-radius: 0; -webkit-border-radius: 0; }
/* Overlays */
.ui-widget-overlay { background: #000000 url(images/ui-bg_flat_0_000000_=
40x100.png) 50% 50% repeat-x; opacity: .75;filter:Alpha(Opacity=3D75); }=
.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #00=
0000 url(images/ui-bg_flat_0_000000_40x100.png) 50% 50% repeat-x; opacit=
y: .30;filter:Alpha(Opacity=3D30); -moz-border-radius: 8px; -webkit-bord=
er-radius: 8px; }/* Accordion
----------------------------------*/
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative=
; margin-top: 1px; zoom: 1; }
.ui-accordion .ui-accordion-li-fix { display: inline; }
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important;=
}
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; p=
adding: .5em .5em .5em 2.2em; }
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: =
.5em; top: 50%; margin-top: -8px; }
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0;=
margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; ove=
rflow: auto; display: none; }
.ui-accordion .ui-accordion-content-active { display: block; }/* Datepic=
ker
----------------------------------*/
.ui-datepicker { width: 17em; padding: .2em .2em 0; }
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0=
; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {=
position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-=
next-hover { top: 1px; }
.ui-datepicker .ui-datepicker-prev { left:2px; }
.ui-datepicker .ui-datepicker-next { right:2px; }
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-n=
ext span { display: block; position: absolute; left: 50%; margin-left: -=
8px; top: 50%; margin-top: -8px; }
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8e=
m; text-align: center; }
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; =
margin:1px 0; }
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month, =
.ui-datepicker select.ui-datepicker-year { width: 49%;}
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: r=
ight; }
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: col=
lapse; margin:0 0 .4em; }
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight:=
bold; border: 0; }
.ui-datepicker td { border: 0; padding: 1px; }
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .=
2em; text-align: right; text-decoration: none; }
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margi=
n: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-b=
ottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: =
.5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:aut=
o; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { =
float:left; }
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi { width:auto; }
.ui-datepicker-multi .ui-datepicker-group { float:left; }
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 au=
to .4em; }
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { b=
order-left-width:0; }
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {=
border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
.ui-datepicker-row-break { clear:both; width:100%; }
/* RTL support */
.ui-datepicker-rtl { direction: rtl; }
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }=
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }=
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-curren=
t { float:right; }
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { bor=
der-right-width:0; border-left-width:1px; }
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { b=
order-right-width:0; border-left-width:1px; }
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
.ui-datepicker-cover {
display: none; /*sorry for IE5*/
display/**/: block; /*sorry for IE5*/
position: absolute; /*must have*/
z-index: -1; /*must have*/
filter: mask(); /*must have*/
top: -4px; /*must have*/
left: -4px; /*must have*/
width: 200px; /*must have*/
height: 200px; /*must have*/
}/* Dialog
----------------------------------*/
.ui-dialog { position: relative; padding: 0; width: 300px; }
.ui-dialog .ui-dialog-titlebar { padding: .75em; position: relative; }
.ui-dialog .ui-dialog-title { float: left; margin: 0; } =
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .75em;=
top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px;=
}
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px;=
}
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titleb=
ar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background=
: none; overflow: auto; zoom: 1; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0=
0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em=
.4em; }
.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4e=
m .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.=
4em; width:auto; overflow:visible; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bot=
tom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }
/* Progressbar
----------------------------------*/
.ui-progressbar { height:2em; text-align: left; }
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }/* Re=
sizable
----------------------------------*/
.ui-resizable { position: relative;}
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 9999=
9; display: block;}
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-=
resizable-handle { display: none; }
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px;=
left: 0px; }
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5=
px; left: 0px; }
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; h=
eight: 100%; }
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; he=
ight: 100%; }
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: =
1px; bottom: 1px; }
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5p=
x; bottom: -5px; }
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5p=
x; top: -5px; }
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5=
px; top: -5px;}/* Slider
----------------------------------*/
.ui-slider { position: relative; text-align: left; }
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.=
2em; height: 1.2em; cursor: default; }
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size:=
.7em; display: block; border: 0; }
.ui-slider-horizontal { height: .8em; }
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em=
; }
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
.ui-slider-horizontal .ui-slider-range-max { right: 0; }
.ui-slider-vertical { width: .8em; height: 100px; }
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; mar=
gin-bottom: -.6em; }
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
.ui-slider-vertical .ui-slider-range-max { top: 0; }/* Tabs
----------------------------------*/
.ui-tabs { padding: .2em; zoom: 1; }
.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .=
2em .2em 0; }
.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-botto=
m-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; }
.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding=
: .5em 1em; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-=
bottom-width: 0; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui=
-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { curs=
or: text; }
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li=
.ui-tabs-selected a { cursor: pointer; } /* first selector in group seem=
s obsolete, but required to overcome bug in Opera applying cursor: text =
overall if defined elsewhere... */
.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-wid=
th: 0; background: none; }
.ui-tabs .ui-tabs-hide { display: none !important; }
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/gif
Content-Location: http://upload.wikimedia.org/wikipedia/commons/2/23/Icons-mini-file_acrobat.gif
Content-Transfer-Encoding: Base64
R0lGODlhEAAQAMQfAOmNjMfHx9UqJ3Fvb9hoZqmpqbe3t96pqPn4+IeHh9ra2qRS
UOXl5dtFQ9i2turq6uDg4NTT0+7u7uzMy/DX15OTk9/Ew99+fa89PN+Yl/Hp6eLi
4vPz8/v7+////////yH5BAEAAB8ALAAAAAAQABAAAAWgoCeO5PidHhOtQWC8Reyh
EdLdOB5Usxd1HARnSOy0eD4gkUO5UHAJUaAjqVYBl8zjgYh6pg/J9mFpZBiMrsjQ
GaMZDQsEovYYEI/3hiEQWBQcA2scaBtzBxkZcRoDCB4FhBuGEBcOCg19GBePHJJz
CgQEDQQZBxgAjwiTChcNlSuBIhVpHBMNDRRiDxwKgo8JFQkCGAsJA8fHXiQAuCUj
IQA7
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=index.css
Content-Type: text/css; charset=UTF-8; name=index.css
Content-Location: http://es.wikipedia.org/w/index.php?title=MediaWiki:Common.css&usemsgcache=yes&ctype=text%2Fcss&smaxage=2678400&action=raw&maxage=2678400
Content-Transfer-Encoding: 8bit
/* Common CSS para todas las pieles */
/* Arregla problemas interlineado para y */
sup, sub {
line-height: 1em;
}
/* Ocultar tÃtulo y categorÃas en la Portada*/
body.page-Wikipedia_Portada h1.firstHeading, body.page-Wikipedia_Portada #catlinks { display:none; }
/* Códigos sobre referencias */
ol.references {font-size: 100%}
.references-small {font-size: 90%}
.references-2column {font-size: 90%; -moz-column-count: 2; column-count:2}
/* Las referencias ahora no pueden ser texto en negrita o italico */
sup.reference {
font-weight: normal;
font-style: normal;
}
/* Colorea de azul al clickear referencias */
ol.references > li:target,
sup.reference:target,
span.citation:target, cite:target {
background-color: #DEF;
}
/* Estilo para citacion */
span.citation, cite {
font-style: normal;
word-wrap: break-word;
}
/* Esto permite arreglar las duplicaciones de urls en plantillas de referencias como Plantilla:Citación. */
@media screen, handheld, projection {
span.citation *.printonly, cite *.printonly {
display: none;
}
}
/* Llamadas al pie: Quitar corchetes */
.corchete-llamada {display: none}
/* [[Plantilla:Listaref]] */
@media print {
.listaref {
-moz-column-count: 1 !important
}
}
/* CSS para infoboxes */
.infobox {
border: 1px solid #aaa;
background-color: #f9f9f9;
color: #000;
margin-bottom: 0.5em;
margin-left: 1em;
padding: 0.2em;
float: right;
clear: right;
}
.infobox td, .infobox th,
.infobox_v2 td, .infobox_v2 th {
vertical-align: top;
}
.infobox caption {
font-size: larger;
margin-left: inherit;
}
/* infoboxes V2 ("nuevas") */
.infobox_v2 {
border: 1px solid #B4BBC8;
background-color: #f9f9f9;
color: #000;
margin: .5em 0 .5em 1em;
padding: .4em;
clear: right;
float: right;
font-size: 90%;
line-height: 1.5em;
width: 22.5em
}
.infobox_v2 .cabecera {
font-size: 140%;
font-weight: bolder;
height: 45px;
line-height: 1.2em;
text-align: center;
vertical-align: middle
}
.infobox_v2 .media {
font-weight: bolder;
height: 35px;
text-align: center;
vertical-align: middle
}
/* Gráficos transparentes de cabecera */
.cabecera.default {}
.media.audio {background:url(http://upload.wikimedia.org/wikipedia/commons/thumb/a/a6/Gnome-speakernotes.png/35px-Gnome-speakernotes.png) no-repeat top left}
.media.video {background:url(http://upload.wikimedia.org/wikipedia/en/thumb/2/20/Tango-video-x-generic.png/35px-Tango-video-x-generic.png) no-repeat top left}
/* Códigos para tipos especificos de infoboxes */
.infobox.bordered {
border-collapse: collapse;
}
.infobox.bordered td,
.infobox.bordered th {
border: 1px solid #B4BBC8;
}
.infobox.bordered .borderless td,
.infobox.bordered .borderless th {
border: 0;
}
.infobox.sisterproject {
width: 20em;
font-size: 90%;
}
@media print {
.infobox.sisterproject {
display: none;
}
}
.infobox.geography,
.infobox_v2.geography {
text-align: left;
border-collapse: collapse;
line-height: 1.2em;
font-size: 90%;
border: solid 1px #B4BBC8;
}
.infobox.geography td,
.infobox.geography th,
.infobox_v2.geography td,
.infobox_v2.geography th {
border-top: solid 1px #B4BBC8;
padding: .4em .6em;
}
.infobox.geography .mergedtoprow td,
.infobox.geography .mergedtoprow th,
.infobox_v2.geography .mergedtoprow td,
.infobox_v2.geography .mergedtoprow th {
border-top: solid 1px #B4BBC8;
padding: .4em .6em .2em .6em;
}
.infobox.geography .mergedrow td,
.infobox.geography .mergedrow th,
.infobox_v2.geography .mergedrow td,
.infobox_v2.geography .mergedrow td {
border: 0;
padding: 0 .6em .2em .6em;
}
.infobox.geography .mergedbottomrow td,
.infobox.geography .mergedbottomrow th,
.infobox_v2.geography .mergedbottomrow td,
.infobox_v2.geography .mergedbottomrow th {
border-top: 0;
border-bottom: solid 1px #B4BBC8;
padding: 0 .6em .4em .6em;
}
.infobox.geography .maptable td,
.infobox.geography .maptable th,
.infobox_v2.geography .maptable td,
.infobox_v2.geography .maptable th {
border: 0;
padding: 0;
}
/* Infobox sin uso conocido, deberia ser borrado al comprobarse que ya no se usa */
.InfoDerecha {
clear: right;
float: right;
margin: 0 0 1em 1em;
}
/* CSS relacionado con el uso de coordenadas
To display coordinates using the notation in the source code, write this in your User:Username/monobook.css:
.geo-default {display: inline} .geo-nondefault {display: none}
.geo-dec {display: inline} .geo-dms {display: inline}
To display coordinates using decimal notation, write this in your User:Username/monobook.css:
.geo-default {display: inline} .geo-nondefault {display: inline}
.geo-dec {display: inline} .geo-dms {display: none}
To display coordinates using DMS notation, write this in your User:Username/monobook.css:
.geo-default {display: inline} .geo-nondefault {display: inline}
.geo-dec {display: none} .geo-dms {display: inline}
To display coordinates in both decimal and DMS notation, write this in your User:Username/monobook.css:
.geo-default {display: inline} .geo-nondefault {display: inline}
.geo-dec {display: inline} .geo-dms {display: inline}
.geo-multi-punct {display: inline}
See [[Plantilla:Coor link]] for how these are used.
Note that the classes "geo", "longitude", and "latitude" are not just styles but also used by the [[Geo microformat]], so the names should not be changed.
*/
/* CSS predeterminado, puede modificarse usando las reglas de arriba */
.geo-default, .geo-dms, .geo-dec { display: inline; }
.geo-nondefault, .geo-multi-punct { display: none; }
.longitude, .latitude { white-space: nowrap; }
/* This is used for the Geo microformat, but no style is needed for now other than .geo-dec. */
.geo {}
/*******************************************************************/
/********* Estilos para diferentes funcionalidades menores *********/
/*******************************************************************/
/* Desambiguaciones */
#disambig {
border-top: 3px double #ccc;
border-bottom: 3px double #ccc;
}
/* Plantilla de cita */
.citado {
font-size: 90%;
background-color: #F9F9F9;
padding: 5px 10px;
}
/* Estilos para sitenotice y similares */
.notice {
text-align: justify;
margin: 1em;
padding: 0.2em;
}
/* Support for Template:IPA, Template:Unicode and Template:Polytonic.
* The second declarations reset the styles for all browsers except
* IE6, which chokes on the empty comment tags. */
.IPA {
font-family: "Charis SIL", "Doulos SIL", Gentium, GentiumAlt,
"DejaVu Sans", Code2000, "TITUS Cyberbit Basic",
"Arial Unicode MS", "Lucida Sans Unicode",
"Chrysanthi Unicode";
font-family /**/: inherit;
}
.Unicode {
font-family: Code2000, Code2001, "Free Serif", "TITUS Cyberbit Basic",
"Doulos SIL", "Chrysanthi Unicode", "Bitstream Cyberbit",
"Bitstream CyberBase", Thryomanes, Gentium, GentiumAlt,
"Lucida Grande", "Free Sans", "Arial Unicode MS",
"Microsoft Sans Serif", "Lucida Sans Unicode";
font-family /**/: inherit;
}
.polytonic {
font-family: "Athena Unicode", Gentium, "Palatino Linotype",
"Arial Unicode MS", "Lucida Sans Unicode",
"Lucida Grande", Code2000;
font-family /**/: inherit;
}
/* Ayudita para [[Especial:Allpages]] y categorÃas: los redirects aparecen en cursiva */
.allpagesredirect, .redirect-in-category {font-style: italic}
/* Cambiar el icono de los archivos PDF */
#bodyContent a[href$=".pdf"].external,
#bodyContent a[href*=".pdf?"].external,
#bodyContent a[href*=".pdf#"].external,
#bodyContent a[href$=".PDF"].external,
#bodyContent a[href*=".PDF?"].external,
#bodyContent a[href*=".PDF#"].external {
background: url(http://upload.wikimedia.org/wikipedia/commons/2/23/Icons-mini-file_acrobat.gif) center right no-repeat;
padding-right: 16px;
}
/* Change the external link icon to an Adobe icon anywhere the PDFlink class */
span.PDFlink a {
background: url("http://upload.wikimedia.org/wikipedia/commons/2/23/Icons-mini-file_acrobat.gif") center right no-repeat;
padding-right: 17px;
}
/* Ocultar texto para los no bibliotecarios */
.para_biblios {display: none}
.rotate_0 {display: block}
.rotate_1, .rotate_2, .rotate_3, .rotate_4, .rotate_5, .rotate_6, .rotate_7, .rotate_8, .rotate_9 {display: none}
.mw-specialpages-table, /* [[Especial:SpecialPages]]: alinear a la izquierda, en vez de estar justificado */
body.ns-14 div#mw-pages /* CategorÃas con alineación a la izquierda, no justificada */
{text-align:left}
/* otros */
body.page-Especial_Registro fieldset p small {font-size:100%}
/* [[Plantilla:No firmado]], más pequeño */
span.nofirmado {font-size:smaller}
/*InterProject */
.interProject {
display:none;
clear: both;
border-top: 2px dotted #aaa;
margin-top: 2em;
}
/* CSS para plegables, documentación en [[:en:Wikipedia:NavFrame]] */
div.NavFrame {
margin: 0;
padding: 4px;
border: 1px solid #aaa;
text-align: center;
border-collapse: collapse;
font-size: 95%;
}
div.NavFrame + div.NavFrame {
border-top-style: none;
border-top-style: hidden;
}
div.NavPic {
background-color: #fff;
margin: 0;
padding: 2px;
float: left;
}
div.NavFrame div.NavHead {
height: 1.6em;
font-weight: bold;
background-color: #ccf;
position: relative;
}
div.NavFrame p,
div.NavFrame div.NavContent,
div.NavFrame div.NavContent p {
font-size: 100%;
}
div.NavEnd {
margin: 0;
padding: 0;
line-height: 1px;
clear: both;
}
a.NavToggle {
position: absolute;
top: 0;
right: 3px;
font-weight: normal;
font-size: 90%;
}
/* TABLAS */
/* La clase wikitable ya existe en shared.css; y prettytable esta obsoleta,
cuando se reemplaze todas las llamadas a prettytable eliminar estas reglas */
table.wikitable, table.prettytable {
margin: 1em 1em 1em 1em;
padding: 0.5em;
font-size: 95%;
background-color: #f9f9f9;
border: 1px #aaa solid;
border-collapse: collapse;
}
table.wikitable th, table.wikitable td,
table.prettytable th, table.prettytable td {
border: 1px #aaa solid;
padding: 0.2em;
}
table.wikitable th,
table.prettytable th {
background-color: #f2f2f2;
text-align: center;
}
table.wikitable caption,
table.prettytable caption {
margin-left: inherit;
margin-right: inherit;
}
/*** Cajas de aviso en discusión nuevas (ambox) que son blancas y con
* una cinta de color a la izquierda */
table.ambox {
margin: 0 10%; /* Will not overlap with other elements */
border-collapse: collapse;
background-color: #fbfbfb;
border: 1px solid #aaa;
border-left: 10px solid #1e90ff; /* Default "notice" blue */
}
table.ambox th.ambox-text, table.ambox td.ambox-text { /* The message body cell(s) */
padding: 0.25em 0.5em; /* 0.5em left/right */
width: 100%; /* Make all templates the same width regardless of text size */
}
table.ambox td.ambox-image { /* The left image cell */
padding: 2px 0px 2px 0.5em; /* 0.5em left, 0px right */
text-align: center;
}
table.ambox td.ambox-imageright { /* The right image cell */
padding: 2px 4px 2px 0px; /* 0px left, 4px right */
text-align: center;
}
table.ambox-notice {border-left: 10px solid #1e90ff} /* Blue */
table.ambox-delete, table.ambox-serious {border-left: 10px solid #b22222} /* Red */
table.ambox-content {border-left: 10px solid #f28500} /* Orange */
table.ambox-style {border-left: 10px solid #f4c430} /* Yellow */
table.ambox-merge {border-left: 10px solid #9932cc} /* Purple */
table.ambox-growth {border-left: 10px solid #228b22} /* Green */
table.ambox-protection {border-left: 10px solid #bba} /* Gray */
table.ambox.ambox-mini { /* Small floating box variant */
float: right;
clear: right;
margin: 0 0 0 1em;
width: 25%;
}
@media print { /* Do not print article message box */
.ambox {display: none}
}
/* Footer and header message box styles */
table.fmbox {
clear: both;
margin: 0.2em 0;
width: 100%;
border: 1px solid #aaa;
background: #f9f9f9; /* Default "system" gray */
}
table.fmbox-system {
background: #f9f9f9;
}
table.fmbox-warning {
border: 1px solid #bb7070; /* Dark pink */
background: #ffdbdb; /* Pink */
}
table.fmbox-editnotice {
background: transparent;
}
div.fmbox-system {
clear: both;
margin: 0.2em 0;
border: 1px solid #aaa;
background: #f9f9f9;
padding: 0.25em 0.9em;
}
/* Ciertas cajas para discusión que NO son ambox (no tienen cinta de color)
por ejemplo, la caja grande de artÃculo destacado */
.messagebox {
border: 1px solid #aaa;
background-color: #f9f9f9;
width: 80%;
margin: 0 auto 1em auto;
padding: .2em;
}
.messagebox.merge {
border: 1px solid #c0b8cc;
background-color: #f0e5ff;
text-align: center;
}
.messagebox.cleanup {
border: 1px solid #9f9fff;
background-color: #efefff;
text-align: center;
}
.messagebox.standard-talk {
border: 1px solid #c0c090;
background-color: #f8eaba;
margin: 4px auto;
}
/** Estilos para tablas.
** EXPERIMENTAL **
la idea es, si se quiere que la primera columna de la tabla esté alineada
a la derecha, la segunda centrada y la tercera a la izquierda, usar
{| class="col1der col2cen col3izq"
en vez de repetir "style='text-align:right'", etc, en '''cada''' celda
**/
table.col1der TD:first-child {text-align:right}
table.col1izq TD:first-child {text-align:left}
table.col1cen TD:first-child {text-align:center}
table.col2der TD:first-child + TD {text-align:right}
table.col2izq TD:first-child + TD {text-align:left}
table.col2cen TD:first-child + TD {text-align:center}
table.col3der TD:first-child + TD + TD {text-align:right}
table.col3izq TD:first-child + TD + TD {text-align:left}
table.col3cen TD:first-child + TD + TD {text-align:center}
table.col4der TD:first-child + TD + TD + TD {text-align:right}
table.col4izq TD:first-child + TD + TD + TD {text-align:left}
table.col4cen TD:first-child + TD + TD + TD {text-align:center}
table.col5der TD:first-child + TD + TD + TD + TD {text-align:right}
table.col5izq TD:first-child + TD + TD + TD + TD {text-align:left}
table.col5cen TD:first-child + TD + TD + TD + TD {text-align:center}
/* Put a checker background at the image description page only visible if the image has transparent background */
#file img {background: url(http://upload.wikimedia.org/wikipedia/commons/5/5d/Checker-16x16.png) repeat}
/* Disponibilidad para tareas de mantenimiento/Tablas por dÃa/semana */
table.user-availability {
text-align:center;
border:1px solid #333366;
}
table.user-availability th {
font-size:110%
}
table.user-availability .toprow td+td {
width:30px;
height:10px;
background-color:#eee;
border:1px solid #aaa
}
table.user-availability .off {
font-size:80%;
border:1px solid #aaa;
background-color:#fff;
}
table.user-availability .onn {
font-size:80%;
border:1px solid #aaa;
background-color:#cfc;
}
table.user-availability .wrk {
font-size:80%;
border:1px solid #aaa;
background-color:#ccf;
}
table.user-availability .cll {
font-size:80%;
border:1px solid #aaa;
background-color:#ffd;
}
table.user-availability .key {
font-size:90%;
border-top:1px dashed #000;
text-align:right
}
table.user-availability .key span {
padding:2px
}
/* Clases obsoletas, reemplazar por "plainlinks nourlexpansion"
Quita padding para enlaces externos mostrados sin icono
[[Plantilla:Ref]] ya no se usa asi que no tiene muchos usos */
#bodyContent .plainlinks a,
.plainlinksneverexpand {
background: none !important;
padding: 0 !important;
}
.plainlinksneverexpand .urlexpansion {
display : none !important;
}
.plainlinksneverexpand a {
background: none !important;
padding: 0 !important
}
/* With MediaWiki 1.5, the mechanism has changed: instead of a SPAN of class "urlexpansion"
following the anchor A, the anchor itself now has class "external autonumber" and the
expansion is inserted when printing (see the common printing style sheet at
http://en.wikipedia.org/skins-1.5/common/commonPrint.css) using the ":after" pseudo-
element of CSS. We have to switch this off for links due to Template:Ref!
*/
.plainlinksneverexpand a.external.text:after {
display: none !important;
}
.plainlinksneverexpand a.external.autonumber:after {
display: none !important;
}
.border-radius4 {
border-radius: 4px; /* CSS 3 */
-moz-border-radius: 4px; /* Firefox */
-webkit-border-radius: 4px; /* Safari 3.0+ */
}
.border-radius6 {
border-radius: 6px; /* CSS 3 */
-moz-border-radius: 6px; /* Firefox */
-webkit-border-radius: 6px; /* Safari 3.0+ */
}
.abbr {/* al estilo de la etiquieta */
cursor: help;
border-bottom: 1px dotted #000;
}
div.editOptions {
text-align: left;
}
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=index.css
Content-Type: text/css; charset=UTF-8; name=index.css
Content-Location: http://es.wikipedia.org/w/index.php?title=MediaWiki:Print.css&usemsgcache=yes&ctype=text%2Fcss&smaxage=2678400&action=raw&maxage=2678400
Content-Transfer-Encoding: 8bit
/* CSS placed here will affect the print output */
.ns-0 .ambox, .ns-104 .ambox,
.ns-0 .navbox, .ns-104 .navbox,
.ns-0 .infobox.sisterproject, .ns-104 .infobox.sisterproject,
.ns-0 .dablink, .ns-104 .dablink,
.ns-0 .metadata, .ns-104 .metadata,
#privacy, #about, #disclaimer, #contentSub, .editlink,
span.collapseButton, a.NavToggle,
.noprint {
display: none;
}
/* Add formatting to make sure that "external references" from templates
like [[Template:Ref]] do not get URL expansion, not even when printed.
The anchor itself has class "external autonumber" and the url expansion
is inserted when printing (see the common printing style sheet at
http://en.wikipedia.org/skins-1.5/common/commonPrint.css) using the
":after" pseudo-element of CSS. Also hide in elements.
*/
#content cite a.external.text:after,
.nourlexpansion a.external.text:after,
.nourlexpansion a.external.autonumber:after {
display: none !important;
}
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=index.css
Content-Type: text/css; charset=UTF-8; name=index.css
Content-Location: http://es.wikipedia.org/w/index.php?title=MediaWiki:Handheld.css&usemsgcache=yes&ctype=text%2Fcss&smaxage=2678400&action=raw&maxage=2678400
Content-Transfer-Encoding: 8bit
/* CSS placed here will affect handheld devices based on the skin configured in $wgHandheldStyle */
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://upload.wikimedia.org/wikipedia/commons/d/d4/Monobook-bullet-star.png
Content-Transfer-Encoding: Base64
iVBORw0KGgoAAAANSUhEUgAAAAkAAAANCAYAAAB7AEQGAAAABmJLR0QA/wD/AP+g
vaeTAAAAxUlEQVQY07VQOwrCUBCcfQSJQmy08XXiFbyBJxCCB/IOFnoJT+ANLBPQ
Siy00gQSMJLPG4ug8WGhjQPLMrvDMIyQxDco/IA/isxx9RmS5GtMEjDfjGiSgO93
Zbssrf2EVIcFzWUD3g5AmTQfpwvpDKH6EygZ+EAR2wKg5kUMGfgQkuD9zHI7BfJr
I2r14IzXEFeLAgBxtYhq2zlUG+JqaSqoMvB+AhwPSs8Ax6t5lTUVmHTHcj8n8ygk
CeZRWO7nNOmOJPEAfbJw/sF2Eh8AAAAASUVORK5CYII=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=index.css
Content-Type: text/css; charset=UTF-8; name=index.css
Content-Location: http://es.wikipedia.org/w/index.php?title=MediaWiki:Vector.css&usemsgcache=yes&ctype=text%2Fcss&smaxage=2678400&action=raw&maxage=2678400
Content-Transfer-Encoding: 8bit
/* Los estilos CSS colocados aquà se aplicarán para todos los usuarios que usen la piel Vector. */
/* SÃmbolos para artÃculos buenos y destacados */
div.topicon {
position: absolute;
top: -35px;
margin-right: 1px;
display: block !important;
}
/* SÃmbolos para buenos y destacados en interwikis */
#mw-panel div.portal div.body ul li.destacado {
background: url("http://upload.wikimedia.org/wikipedia/commons/d/d4/Monobook-bullet-star.png") no-repeat 0% 0%;
margin-left: -10px;
padding-left: 10px;
}
#mw-panel div.portal div.body ul li.bueno {
background: url("http://upload.wikimedia.org/wikipedia/commons/thumb/e/e5/Art%C3%ADculo_bueno.svg/10px-Art%C3%ADculo_bueno.svg.png") no-repeat 0% 0%;
margin-left: -10px;
padding-left: 10px;
}
/** CSS para las coordenadas en esquina **/
#coordinates {
display:inline;
position:absolute; z-index:1; border:none; background:none; right:0; top:-1.4em; float:right; margin:0; padding:0;
line-height:11px; text-align:right; text-indent:0; font-size:10px; text-transform:none; white-space:nowrap;
}
pre {
font-size: 10pt;
}
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=index.css
Content-Type: text/css; charset=UTF-8; name=index.css
Content-Location: http://es.wikipedia.org/w/index.php?title=-&action=raw&maxage=2678400&gen=css
Content-Transfer-Encoding: 8bit
/* generated user stylesheet */
a.new, #quickbar a.new { color: #CC2200; }
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=wikibits.js
Content-Type: application/x-javascript; charset=UTF-8; name=wikibits.js
Content-Location: http://bits.wikimedia.org/skins-1.5/common/wikibits.js?283r
Content-Transfer-Encoding: Base64
Ly8gTWVkaWFXaWtpIEphdmFTY3JpcHQgc3VwcG9ydCBmdW5jdGlvbnMKCnZhciBj
bGllbnRQQyA9IG5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKTsgLy8g
R2V0IGNsaWVudCBpbmZvCnZhciBpc19nZWNrbyA9IC9nZWNrby8udGVzdCggY2xp
ZW50UEMgKSAmJgoJIS9raHRtbHxzcG9vZmVyfG5ldHNjYXBlXC83XC4wLy50ZXN0
KGNsaWVudFBDKTsKdmFyIHdlYmtpdF9tYXRjaCA9IGNsaWVudFBDLm1hdGNoKC9h
cHBsZXdlYmtpdFwvKFxkKykvKTsKaWYgKHdlYmtpdF9tYXRjaCkgewoJdmFyIGlz
X3NhZmFyaSA9IGNsaWVudFBDLmluZGV4T2YoJ2FwcGxld2Via2l0JykgIT0gLTEg
JiYKCQljbGllbnRQQy5pbmRleE9mKCdzcG9vZmVyJykgPT0gLTE7Cgl2YXIgaXNf
c2FmYXJpX3dpbiA9IGlzX3NhZmFyaSAmJiBjbGllbnRQQy5pbmRleE9mKCd3aW5k
b3dzJykgIT0gLTE7Cgl2YXIgd2Via2l0X3ZlcnNpb24gPSBwYXJzZUludCh3ZWJr
aXRfbWF0Y2hbMV0pOwp9Ci8vIEZvciBhY2Nlc3NrZXlzOyBub3RlIHRoYXQgRkYz
KyBpcyBpbmNsdWRlZCBoZXJlIQp2YXIgaXNfZmYyID0gL2ZpcmVmb3hcL1syLTld
fG1pbmVmaWVsZFwvMy8udGVzdCggY2xpZW50UEMgKTsKdmFyIGZmMl9idWdzID0g
L2ZpcmVmb3hcLzIvLnRlc3QoIGNsaWVudFBDICk7Ci8vIFRoZXNlIGFyZW4ndCB1
c2VkIGhlcmUsIGJ1dCBzb21lIGN1c3RvbSBzY3JpcHRzIHJlbHkgb24gdGhlbQp2
YXIgaXNfZmYyX3dpbiA9IGlzX2ZmMiAmJiBjbGllbnRQQy5pbmRleE9mKCd3aW5k
b3dzJykgIT0gLTE7CnZhciBpc19mZjJfeDExID0gaXNfZmYyICYmIGNsaWVudFBD
LmluZGV4T2YoJ3gxMScpICE9IC0xOwppZiAoY2xpZW50UEMuaW5kZXhPZignb3Bl
cmEnKSAhPSAtMSkgewoJdmFyIGlzX29wZXJhID0gdHJ1ZTsKCXZhciBpc19vcGVy
YV9wcmVzZXZlbiA9IHdpbmRvdy5vcGVyYSAmJiAhZG9jdW1lbnQuY2hpbGROb2Rl
czsKCXZhciBpc19vcGVyYV9zZXZlbiA9IHdpbmRvdy5vcGVyYSAmJiBkb2N1bWVu
dC5jaGlsZE5vZGVzOwoJdmFyIGlzX29wZXJhXzk1ID0gL29wZXJhXC8oOVwuWzUt
OV18WzEtOV1bMC05XSkvLnRlc3QoIGNsaWVudFBDICk7Cgl2YXIgb3BlcmE2X2J1
Z3MgPSBpc19vcGVyYV9wcmVzZXZlbjsKCXZhciBvcGVyYTdfYnVncyA9IGlzX29w
ZXJhX3NldmVuICYmICFpc19vcGVyYV85NTsKCXZhciBvcGVyYTk1X2J1Z3MgPSAv
b3BlcmFcLyg5XC41KS8udGVzdCggY2xpZW50UEMgKTsKfQovLyBBcyByZWNvbW1l
bmRlZCBieSA8aHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5
L21zNTM3NTA5LmFzcHg+LAovLyBhdm9pZGluZyBmYWxzZSBwb3NpdGl2ZXMgZnJv
bSBtb3JvbmljIGV4dGVuc2lvbnMgdGhhdCBhcHBlbmQgdG8gdGhlIElFIFVBCi8v
IHN0cmluZyAoYnVnIDIzMTcxKQp2YXIgaWU2X2J1Z3MgPSBmYWxzZTsKaWYgKCAv
TVNJRSAoWzAtOV17MSx9W1wuMC05XXswLH0pLy5leGVjKCBjbGllbnRQQyApICE9
IG51bGwKJiYgcGFyc2VGbG9hdCggUmVnRXhwLiQxICkgPD0gNi4wICkgewoJaWU2
X2J1Z3MgPSB0cnVlOwp9CgovLyBHbG9iYWwgZXh0ZXJuYWwgb2JqZWN0cyB1c2Vk
IGJ5IHRoaXMgc2NyaXB0LgovKmV4dGVybiB0YSwgc3R5bGVwYXRoLCBza2luICov
CgovLyBhZGQgYW55IG9ubG9hZCBmdW5jdGlvbnMgaW4gdGhpcyBob29rIChwbGVh
c2UgZG9uJ3QgaGFyZC1jb2RlIGFueSBldmVudHMgaW4gdGhlIHhodG1sIHNvdXJj
ZSkKdmFyIGRvbmVPbmxvYWRIb29rOwoKaWYgKCF3aW5kb3cub25sb2FkRnVuY3Rz
KSB7Cgl2YXIgb25sb2FkRnVuY3RzID0gW107Cn0KCmZ1bmN0aW9uIGFkZE9ubG9h
ZEhvb2soIGhvb2tGdW5jdCApIHsKCS8vIEFsbG93cyBhZGQtb24gc2NyaXB0cyB0
byBhZGQgb25sb2FkIGZ1bmN0aW9ucwoJaWYoICFkb25lT25sb2FkSG9vayApIHsK
CQlvbmxvYWRGdW5jdHNbb25sb2FkRnVuY3RzLmxlbmd0aF0gPSBob29rRnVuY3Q7
Cgl9IGVsc2UgewoJCWhvb2tGdW5jdCgpOyAgLy8gYnVnIGluIE1TSUUgc2NyaXB0
IGxvYWRpbmcKCX0KfQoKZnVuY3Rpb24gaG9va0V2ZW50KCBob29rTmFtZSwgaG9v
a0Z1bmN0ICkgewoJYWRkSGFuZGxlciggd2luZG93LCBob29rTmFtZSwgaG9va0Z1
bmN0ICk7Cn0KCmZ1bmN0aW9uIGltcG9ydFNjcmlwdCggcGFnZSApIHsKCS8vIFRP
RE86IG1pZ2h0IHdhbnQgdG8gaW50cm9kdWNlIGEgdXRpbGl0eSBmdW5jdGlvbiB0
byBtYXRjaCB3ZlVybGVuY29kZSgpIGluIFBIUAoJdmFyIHVyaSA9IHdnU2NyaXB0
ICsgJz90aXRsZT0nICsKCQllbmNvZGVVUklDb21wb25lbnQocGFnZS5yZXBsYWNl
KC8gL2csJ18nKSkucmVwbGFjZSgvJTJGL2lnLCcvJykucmVwbGFjZSgvJTNBL2ln
LCc6JykgKwoJCScmYWN0aW9uPXJhdyZjdHlwZT10ZXh0L2phdmFzY3JpcHQnOwoJ
cmV0dXJuIGltcG9ydFNjcmlwdFVSSSggdXJpICk7Cn0KCnZhciBsb2FkZWRTY3Jp
cHRzID0ge307IC8vIGluY2x1ZGVkLXNjcmlwdHMgdHJhY2tlcgpmdW5jdGlvbiBp
bXBvcnRTY3JpcHRVUkkoIHVybCApIHsKCWlmICggbG9hZGVkU2NyaXB0c1t1cmxd
ICkgewoJCXJldHVybiBudWxsOwoJfQoJbG9hZGVkU2NyaXB0c1t1cmxdID0gdHJ1
ZTsKCXZhciBzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggJ3NjcmlwdCcgKTsK
CXMuc2V0QXR0cmlidXRlKCAnc3JjJywgdXJsICk7CglzLnNldEF0dHJpYnV0ZSgg
J3R5cGUnLCAndGV4dC9qYXZhc2NyaXB0JyApOwoJZG9jdW1lbnQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoJ2hlYWQnKVswXS5hcHBlbmRDaGlsZCggcyApOwoJcmV0dXJu
IHM7Cn0KCmZ1bmN0aW9uIGltcG9ydFN0eWxlc2hlZXQoIHBhZ2UgKSB7CglyZXR1
cm4gaW1wb3J0U3R5bGVzaGVldFVSSSggd2dTY3JpcHQgKyAnP2FjdGlvbj1yYXcm
Y3R5cGU9dGV4dC9jc3MmdGl0bGU9JyArIGVuY29kZVVSSUNvbXBvbmVudCggcGFn
ZS5yZXBsYWNlKC8gL2csJ18nKSApICk7Cn0KCmZ1bmN0aW9uIGltcG9ydFN0eWxl
c2hlZXRVUkkoIHVybCwgbWVkaWEgKSB7Cgl2YXIgbCA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoICdsaW5rJyApOwoJbC50eXBlID0gJ3RleHQvY3NzJzsKCWwucmVs
ID0gJ3N0eWxlc2hlZXQnOwoJbC5ocmVmID0gdXJsOwoJaWYoIG1lZGlhICkgewoJ
CWwubWVkaWEgPSBtZWRpYTsKCX0KCWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCdoZWFkJylbMF0uYXBwZW5kQ2hpbGQoIGwgKTsKCXJldHVybiBsOwp9Cgpm
dW5jdGlvbiBhcHBlbmRDU1MoIHRleHQgKSB7Cgl2YXIgcyA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoICdzdHlsZScgKTsKCXMudHlwZSA9ICd0ZXh0L2Nzcyc7Cglz
LnJlbCA9ICdzdHlsZXNoZWV0JzsKCWlmICggcy5zdHlsZVNoZWV0ICkgewoJCXMu
c3R5bGVTaGVldC5jc3NUZXh0ID0gdGV4dDsgLy8gSUUKCX0gZWxzZSB7CgkJcy5h
cHBlbmRDaGlsZCggZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIHRleHQgKyAnJyAp
ICk7IC8vIFNhZmFyaSBzb21ldGltZXMgYm9ya3Mgb24gbnVsbAoJfQoJZG9jdW1l
bnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXS5hcHBlbmRDaGlsZCgg
cyApOwoJcmV0dXJuIHM7Cn0KCi8vIFNwZWNpYWwgc3R5bGVzaGVldCBsaW5rcyBm
b3IgTW9ub2Jvb2sgb25seSAoc2VlIGJ1ZyAxNDcxNykKaWYgKCB0eXBlb2Ygc3R5
bGVwYXRoICE9ICd1bmRlZmluZWQnICYmIHNraW4gPT0gJ21vbm9ib29rJyApIHsK
CWlmICggb3BlcmE2X2J1Z3MgKSB7CgkJaW1wb3J0U3R5bGVzaGVldFVSSSggc3R5
bGVwYXRoICsgJy8nICsgc2tpbiArICcvT3BlcmE2Rml4ZXMuY3NzJyApOwoJfSBl
bHNlIGlmICggb3BlcmE3X2J1Z3MgKSB7CgkJaW1wb3J0U3R5bGVzaGVldFVSSSgg
c3R5bGVwYXRoICsgJy8nICsgc2tpbiArICcvT3BlcmE3Rml4ZXMuY3NzJyApOwoJ
fSBlbHNlIGlmICggb3BlcmE5NV9idWdzICkgewoJCWltcG9ydFN0eWxlc2hlZXRV
UkkoIHN0eWxlcGF0aCArICcvJyArIHNraW4gKyAnL09wZXJhOUZpeGVzLmNzcycg
KTsKCX0gZWxzZSBpZiAoIGZmMl9idWdzICkgewoJCWltcG9ydFN0eWxlc2hlZXRV
UkkoIHN0eWxlcGF0aCArICcvJyArIHNraW4gKyAnL0ZGMkZpeGVzLmNzcycgKTsK
CX0KfQoKCmlmICggd2dCcmVha0ZyYW1lcyApIHsKCS8vIFVuLXRyYXAgdXMgZnJv
bSBmcmFtZXNldHMKCWlmICggd2luZG93LnRvcCAhPSB3aW5kb3cgKSB7CgkJd2lu
ZG93LnRvcC5sb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbjsKCX0KfQoKZnVuY3Rp
b24gc2hvd1RvY1RvZ2dsZSgpIHsKCWlmICggZG9jdW1lbnQuY3JlYXRlVGV4dE5v
ZGUgKSB7CgkJLy8gVXNlcyBET00gY2FsbHMgdG8gYXZvaWQgZG9jdW1lbnQud3Jp
dGUgKyBYSFRNTCBpc3N1ZXMKCgkJdmFyIGxpbmtIb2xkZXIgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCggJ3RvY3RpdGxlJyApOwoJCXZhciBleGlzdGluZ0xpbmsg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCggJ3RvZ2dsZWxpbmsnICk7CgkJaWYg
KCAhbGlua0hvbGRlciB8fCBleGlzdGluZ0xpbmsgKSB7CgkJCS8vIERvbid0IGFk
ZCB0aGUgdG9nZ2xlIGxpbmsgdHdpY2UKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIG91
dGVyU3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICdzcGFuJyApOwoJCW91
dGVyU3Bhbi5jbGFzc05hbWUgPSAndG9jdG9nZ2xlJzsKCgkJdmFyIHRvZ2dsZUxp
bmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAnYScgKTsKCQl0b2dnbGVMaW5r
LmlkID0gJ3RvZ2dsZWxpbmsnOwoJCXRvZ2dsZUxpbmsuY2xhc3NOYW1lID0gJ2lu
dGVybmFsJzsKCQl0b2dnbGVMaW5rLmhyZWYgPSAnIyc7CgkJYWRkQ2xpY2tIYW5k
bGVyKCB0b2dnbGVMaW5rLCBmdW5jdGlvbiggZXZ0ICkgeyB0b2dnbGVUb2MoKTsg
cmV0dXJuIGtpbGxFdnQoIGV2dCApOyB9ICk7CgkJCgkJdG9nZ2xlTGluay5hcHBl
bmRDaGlsZCggZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIHRvY0hpZGVUZXh0ICkg
KTsKCgkJb3V0ZXJTcGFuLmFwcGVuZENoaWxkKCBkb2N1bWVudC5jcmVhdGVUZXh0
Tm9kZSggJ1snICkgKTsKCQlvdXRlclNwYW4uYXBwZW5kQ2hpbGQoIHRvZ2dsZUxp
bmsgKTsKCQlvdXRlclNwYW4uYXBwZW5kQ2hpbGQoIGRvY3VtZW50LmNyZWF0ZVRl
eHROb2RlKCAnXScgKSApOwoKCQlsaW5rSG9sZGVyLmFwcGVuZENoaWxkKCBkb2N1
bWVudC5jcmVhdGVUZXh0Tm9kZSggJyAnICkgKTsKCQlsaW5rSG9sZGVyLmFwcGVu
ZENoaWxkKCBvdXRlclNwYW4gKTsKCgkJdmFyIGNvb2tpZVBvcyA9IGRvY3VtZW50
LmNvb2tpZS5pbmRleE9mKCAiaGlkZXRvYz0iICk7CgkJaWYgKCBjb29raWVQb3Mg
PiAtMSAmJiBkb2N1bWVudC5jb29raWUuY2hhckF0KCBjb29raWVQb3MgKyA4ICkg
PT0gMSApIHsKCQkJdG9nZ2xlVG9jKCk7CgkJfQoJfQp9CgpmdW5jdGlvbiBjaGFu
Z2VUZXh0KCBlbCwgbmV3VGV4dCApIHsKCS8vIFNhZmFyaSB3b3JrIGFyb3VuZAoJ
aWYgKCBlbC5pbm5lclRleHQgKSB7CgkJZWwuaW5uZXJUZXh0ID0gbmV3VGV4dDsK
CX0gZWxzZSBpZiAoIGVsLmZpcnN0Q2hpbGQgJiYgZWwuZmlyc3RDaGlsZC5ub2Rl
VmFsdWUgKSB7CgkJZWwuZmlyc3RDaGlsZC5ub2RlVmFsdWUgPSBuZXdUZXh0OwoJ
fQp9CgpmdW5jdGlvbiBraWxsRXZ0KCBldnQgKSB7CglldnQgPSBldnQgfHwgd2lu
ZG93LmV2ZW50IHx8IHdpbmRvdy5FdmVudDsgLy8gVzNDLCBJRSwgTmV0c2NhcGUK
CWlmICggdHlwZW9mICggZXZ0LnByZXZlbnREZWZhdWx0ICkgIT0gJ3VuZGVmaW5l
ZCcgKSB7CgkJZXZ0LnByZXZlbnREZWZhdWx0KCk7IC8vIERvbid0IGZvbGxvdyB0
aGUgbGluawoJCWV2dC5zdG9wUHJvcGFnYXRpb24oKTsKCX0gZWxzZSB7CgkJZXZ0
LmNhbmNlbEJ1YmJsZSA9IHRydWU7IC8vIElFCgl9CglyZXR1cm4gZmFsc2U7IC8v
IERvbid0IGZvbGxvdyB0aGUgbGluayAoSUUpCn0KCmZ1bmN0aW9uIHRvZ2dsZVRv
YygpIHsKCXZhciB0b2NtYWluID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoICd0
b2MnICk7Cgl2YXIgdG9jID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RvYycp
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCd1bCcpWzBdOwoJdmFyIHRvZ2dsZUxpbmsg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCggJ3RvZ2dsZWxpbmsnICk7CgoJaWYg
KCB0b2MgJiYgdG9nZ2xlTGluayAmJiB0b2Muc3R5bGUuZGlzcGxheSA9PSAnbm9u
ZScgKSB7CgkJY2hhbmdlVGV4dCggdG9nZ2xlTGluaywgdG9jSGlkZVRleHQgKTsK
CQl0b2Muc3R5bGUuZGlzcGxheSA9ICdibG9jayc7CgkJZG9jdW1lbnQuY29va2ll
ID0gImhpZGV0b2M9MCI7CgkJdG9jbWFpbi5jbGFzc05hbWUgPSAndG9jJzsKCX0g
ZWxzZSB7CgkJY2hhbmdlVGV4dCggdG9nZ2xlTGluaywgdG9jU2hvd1RleHQgKTsK
CQl0b2Muc3R5bGUuZGlzcGxheSA9ICdub25lJzsKCQlkb2N1bWVudC5jb29raWUg
PSAiaGlkZXRvYz0xIjsKCQl0b2NtYWluLmNsYXNzTmFtZSA9ICd0b2MgdG9jaGlk
ZGVuJzsKCX0KfQoKdmFyIG13RWRpdEJ1dHRvbnMgPSBbXTsKdmFyIG13Q3VzdG9t
RWRpdEJ1dHRvbnMgPSBbXTsgLy8gZWcgdG8gYWRkIGluIE1lZGlhV2lraTpDb21t
b24uanMKCmZ1bmN0aW9uIGVzY2FwZVF1b3RlcyggdGV4dCApIHsKCXZhciByZSA9
IG5ldyBSZWdFeHAoICInIiwgImciICk7Cgl0ZXh0ID0gdGV4dC5yZXBsYWNlKCBy
ZSwgIlxcJyIgKTsKCXJlID0gbmV3IFJlZ0V4cCggIlxcbiIsICJnIiApOwoJdGV4
dCA9IHRleHQucmVwbGFjZSggcmUsICJcXG4iICk7CglyZXR1cm4gZXNjYXBlUXVv
dGVzSFRNTCggdGV4dCApOwp9CgpmdW5jdGlvbiBlc2NhcGVRdW90ZXNIVE1MKCB0
ZXh0ICkgewoJdmFyIHJlID0gbmV3IFJlZ0V4cCggJyYnLCAiZyIgKTsKCXRleHQg
PSB0ZXh0LnJlcGxhY2UoIHJlLCAiJmFtcDsiICk7CglyZSA9IG5ldyBSZWdFeHAo
ICciJywgImciICk7Cgl0ZXh0ID0gdGV4dC5yZXBsYWNlKCByZSwgIiZxdW90OyIg
KTsKCXJlID0gbmV3IFJlZ0V4cCggJzwnLCAiZyIgKTsKCXRleHQgPSB0ZXh0LnJl
cGxhY2UoIHJlLCAiJmx0OyIgKTsKCXJlID0gbmV3IFJlZ0V4cCggJz4nLCAiZyIg
KTsKCXRleHQgPSB0ZXh0LnJlcGxhY2UoIHJlLCAiJmd0OyIgKTsKCXJldHVybiB0
ZXh0Owp9CgovKioKICogU2V0IHRoZSBhY2Nlc3NrZXkgcHJlZml4IGJhc2VkIG9u
IGJyb3dzZXIgZGV0ZWN0aW9uLgogKi8KdmFyIHRvb2x0aXBBY2Nlc3NLZXlQcmVm
aXggPSAnYWx0LSc7CmlmICggaXNfb3BlcmEgKSB7Cgl0b29sdGlwQWNjZXNzS2V5
UHJlZml4ID0gJ3NoaWZ0LWVzYy0nOwp9IGVsc2UgaWYgKCAhaXNfc2FmYXJpX3dp
biAmJiBpc19zYWZhcmkgJiYgd2Via2l0X3ZlcnNpb24gPiA1MjYgKSB7Cgl0b29s
dGlwQWNjZXNzS2V5UHJlZml4ID0gJ2N0cmwtYWx0LSc7Cn0gZWxzZSBpZiAoICFp
c19zYWZhcmlfd2luICYmICggaXNfc2FmYXJpCgkJfHwgY2xpZW50UEMuaW5kZXhP
ZignbWFjJykgIT0gLTEKCQl8fCBjbGllbnRQQy5pbmRleE9mKCdrb25xdWVyb3In
KSAhPSAtMSApICkgewoJdG9vbHRpcEFjY2Vzc0tleVByZWZpeCA9ICdjdHJsLSc7
Cn0gZWxzZSBpZiAoIGlzX2ZmMiApIHsKCXRvb2x0aXBBY2Nlc3NLZXlQcmVmaXgg
PSAnYWx0LXNoaWZ0LSc7Cn0KdmFyIHRvb2x0aXBBY2Nlc3NLZXlSZWdleHAgPSAv
XFsoY3RybC0pPyhhbHQtKT8oc2hpZnQtKT8oZXNjLSk/KC4pXF0kLzsKCi8qKgog
KiBBZGQgdGhlIGFwcHJvcHJpYXRlIHByZWZpeCB0byB0aGUgYWNjZXNza2V5IHNo
b3duIGluIHRoZSB0b29sdGlwLgogKiBJZiB0aGUgbm9kZUxpc3QgcGFyYW1ldGVy
IGlzIGdpdmVuLCBvbmx5IHRob3NlIG5vZGVzIGFyZSB1cGRhdGVkOwogKiBvdGhl
cndpc2UsIGFsbCB0aGUgbm9kZXMgdGhhdCB3aWxsIHByb2JhYmx5IGhhdmUgYWNj
ZXNza2V5cyBieQogKiBkZWZhdWx0IGFyZSB1cGRhdGVkLgogKgogKiBAcGFyYW0g
QXJyYXkgbm9kZUxpc3QgLS0gbGlzdCBvZiBlbGVtZW50cyB0byB1cGRhdGUKICov
CmZ1bmN0aW9uIHVwZGF0ZVRvb2x0aXBBY2Nlc3NLZXlzKCBub2RlTGlzdCApIHsK
CWlmICggIW5vZGVMaXN0ICkgewoJCS8vIFJhdGhlciB0aGFuIHNjYW4gYWxsIGxp
bmtzIG9uIHRoZSB3aG9sZSBwYWdlLCB3ZSBjYW4ganVzdCBzY2FuIHRoZXNlCgkJ
Ly8gY29udGFpbmVycyB3aGljaCBjb250YWluIHRoZSByZWxldmFudCBsaW5rcy4g
VGhpcyBpcyByZWFsbHkganVzdCBhbgoJCS8vIG9wdGltaXphdGlvbiB0ZWNobmlx
dWUuCgkJdmFyIGxpbmtDb250YWluZXJzID0gWwoJCQknY29sdW1uLW9uZScsIC8v
IE1vbm9ib29rIGFuZCBNb2Rlcm4KCQkJJ213LWhlYWQnLCAnbXctcGFuZWwnLCAn
cC1sb2dvJyAvLyBWZWN0b3IKCQldOwoJCWZvciAoIHZhciBpIGluIGxpbmtDb250
YWluZXJzICkgewoJCQl2YXIgbGlua0NvbnRhaW5lciA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCBsaW5rQ29udGFpbmVyc1tpXSApOwoJCQlpZiAoIGxpbmtDb250
YWluZXIgKSB7CgkJCQl1cGRhdGVUb29sdGlwQWNjZXNzS2V5cyggbGlua0NvbnRh
aW5lci5nZXRFbGVtZW50c0J5VGFnTmFtZSggJ2EnICkgKTsKCQkJfQoJCX0KCQkv
LyB0aGVzZSBhcmUgcmFyZSBlbm91Z2ggdGhhdCBubyBzdWNoIG9wdGltaXphdGlv
biBpcyBuZWVkZWQKCQl1cGRhdGVUb29sdGlwQWNjZXNzS2V5cyggZG9jdW1lbnQu
Z2V0RWxlbWVudHNCeVRhZ05hbWUoICdpbnB1dCcgKSApOwoJCXVwZGF0ZVRvb2x0
aXBBY2Nlc3NLZXlzKCBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSggJ2xh
YmVsJyApICk7CgkJcmV0dXJuOwoJfQoKCWZvciAoIHZhciBpID0gMDsgaSA8IG5v
ZGVMaXN0Lmxlbmd0aDsgaSsrICkgewoJCXZhciBlbGVtZW50ID0gbm9kZUxpc3Rb
aV07CgkJdmFyIHRpcCA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlKCAndGl0bGUnICk7
CgkJaWYgKCB0aXAgJiYgdG9vbHRpcEFjY2Vzc0tleVJlZ2V4cC5leGVjKCB0aXAg
KSApIHsKCQkJdGlwID0gdGlwLnJlcGxhY2UodG9vbHRpcEFjY2Vzc0tleVJlZ2V4
cCwKCQkJCQkgICdbJyArIHRvb2x0aXBBY2Nlc3NLZXlQcmVmaXggKyAiJDVdIik7
CgkJCWVsZW1lbnQuc2V0QXR0cmlidXRlKCAndGl0bGUnLCB0aXAgKTsKCQl9Cgl9
Cn0KCi8qKgogKiBBZGQgYSBsaW5rIHRvIG9uZSBvZiB0aGUgcG9ydGxldCBtZW51
cyBvbiB0aGUgcGFnZSwgaW5jbHVkaW5nOgogKgogKiBwLWNhY3Rpb25zOiBDb250
ZW50IGFjdGlvbnMgKHNob3duIGFzIHRhYnMgYWJvdmUgdGhlIG1haW4gY29udGVu
dCBpbiBNb25vYm9vaykKICogcC1wZXJzb25hbDogUGVyc29uYWwgdG9vbHMgKHNo
b3duIGF0IHRoZSB0b3AgcmlnaHQgb2YgdGhlIHBhZ2UgaW4gTW9ub2Jvb2spCiAq
IHAtbmF2aWdhdGlvbjogTmF2aWdhdGlvbgogKiBwLXRiOiBUb29sYm94CiAqCiAq
IFRoaXMgZnVuY3Rpb24gZXhpc3RzIGZvciB0aGUgY29udmVuaWVuY2Ugb2YgY3Vz
dG9tIEpTIGF1dGhvcnMuICBBbGwKICogYnV0IHRoZSBmaXJzdCB0aHJlZSBwYXJh
bWV0ZXJzIGFyZSBvcHRpb25hbCwgdGhvdWdoIHByb3ZpZGluZyBhdAogKiBsZWFz
dCBhbiBpZCBhbmQgYSB0b29sdGlwIGlzIHJlY29tbWVuZGVkLgogKgogKiBCeSBk
ZWZhdWx0IHRoZSBuZXcgbGluayB3aWxsIGJlIGFkZGVkIHRvIHRoZSBlbmQgb2Yg
dGhlIGxpc3QuICBUbwogKiBhZGQgdGhlIGxpbmsgYmVmb3JlIGEgZ2l2ZW4gZXhp
c3RpbmcgaXRlbSwgcGFzcyB0aGUgRE9NIG5vZGUgb2YKICogdGhhdCBpdGVtIChl
YXNpbHkgb2J0YWluZWQgd2l0aCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgpKSBh
cyB0aGUKICogbmV4dG5vZGUgcGFyYW1ldGVyOyB0byBhZGQgdGhlIGxpbmsgX2Fm
dGVyXyBhbiBleGlzdGluZyBpdGVtLCBwYXNzCiAqIHRoZSBub2RlJ3MgbmV4dFNp
YmxpbmcgaW5zdGVhZC4KICoKICogQHBhcmFtIFN0cmluZyBwb3J0bGV0IC0tIGlk
IG9mIHRoZSB0YXJnZXQgcG9ydGxldCAoInAtY2FjdGlvbnMiLCAicC1wZXJzb25h
bCIsICJwLW5hdmlnYXRpb24iIG9yICJwLXRiIikKICogQHBhcmFtIFN0cmluZyBo
cmVmIC0tIGxpbmsgVVJMCiAqIEBwYXJhbSBTdHJpbmcgdGV4dCAtLSBsaW5rIHRl
eHQgKHdpbGwgYmUgYXV0b21hdGljYWxseSBsb3dlcmNhc2VkIGJ5IENTUyBmb3Ig
cC1jYWN0aW9ucyBpbiBNb25vYm9vaykKICogQHBhcmFtIFN0cmluZyBpZCAtLSBp
ZCBvZiB0aGUgbmV3IGl0ZW0sIHNob3VsZCBiZSB1bmlxdWUgYW5kIHByZWZlcmFi
bHkgaGF2ZSB0aGUgYXBwcm9wcmlhdGUgcHJlZml4ICgiY2EtIiwgInB0LSIsICJu
LSIgb3IgInQtIikKICogQHBhcmFtIFN0cmluZyB0b29sdGlwIC0tIHRleHQgdG8g
c2hvdyB3aGVuIGhvdmVyaW5nIG92ZXIgdGhlIGxpbmssIHdpdGhvdXQgYWNjZXNz
a2V5IHN1ZmZpeAogKiBAcGFyYW0gU3RyaW5nIGFjY2Vzc2tleSAtLSBhY2Nlc3Nr
ZXkgdG8gYWN0aXZhdGUgdGhpcyBsaW5rIChvbmUgY2hhcmFjdGVyLCB0cnkgdG8g
YXZvaWQgY29uZmxpY3RzKQogKiBAcGFyYW0gTm9kZSBuZXh0bm9kZSAtLSB0aGUg
RE9NIG5vZGUgYmVmb3JlIHdoaWNoIHRoZSBuZXcgaXRlbSBzaG91bGQgYmUgYWRk
ZWQsIHNob3VsZCBiZSBhbm90aGVyIGl0ZW0gaW4gdGhlIHNhbWUgbGlzdAogKgog
KiBAcmV0dXJuIE5vZGUgLS0gdGhlIERPTSBub2RlIG9mIHRoZSBuZXcgaXRlbSAo
YW4gTEkgZWxlbWVudCkgb3IgbnVsbAogKi8KZnVuY3Rpb24gYWRkUG9ydGxldExp
bmsoIHBvcnRsZXQsIGhyZWYsIHRleHQsIGlkLCB0b29sdGlwLCBhY2Nlc3NrZXks
IG5leHRub2RlICkgewoJdmFyIHJvb3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCggcG9ydGxldCApOwoJaWYgKCAhcm9vdCApIHsKCQlyZXR1cm4gbnVsbDsKCX0K
CXZhciBub2RlID0gcm9vdC5nZXRFbGVtZW50c0J5VGFnTmFtZSggJ3VsJyApWzBd
OwoJaWYgKCAhbm9kZSApIHsKCQlyZXR1cm4gbnVsbDsKCX0KCgkvLyB1bmhpZGUg
cG9ydGxldCBpZiBpdCB3YXMgaGlkZGVuIGJlZm9yZQoJcm9vdC5jbGFzc05hbWUg
PSByb290LmNsYXNzTmFtZS5yZXBsYWNlKCAvKF58ICllbXB0eVBvcnRsZXQoIHwk
KS8sICIkMiIgKTsKCgl2YXIgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ICdzcGFuJyApOwoJc3Bhbi5hcHBlbmRDaGlsZCggZG9jdW1lbnQuY3JlYXRlVGV4
dE5vZGUoIHRleHQgKSApOwoKCXZhciBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCggJ2EnICk7CglsaW5rLmFwcGVuZENoaWxkKCBzcGFuICk7CglsaW5rLmhy
ZWYgPSBocmVmOwoKCXZhciBpdGVtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgg
J2xpJyApOwoJaXRlbS5hcHBlbmRDaGlsZCggbGluayApOwoJaWYgKCBpZCApIHsK
CQlpdGVtLmlkID0gaWQ7Cgl9CgoJaWYgKCBhY2Nlc3NrZXkgKSB7CgkJbGluay5z
ZXRBdHRyaWJ1dGUoICdhY2Nlc3NrZXknLCBhY2Nlc3NrZXkgKTsKCQl0b29sdGlw
ICs9ICcgWycgKyBhY2Nlc3NrZXkgKyAnXSc7Cgl9CglpZiAoIHRvb2x0aXAgKSB7
CgkJbGluay5zZXRBdHRyaWJ1dGUoICd0aXRsZScsIHRvb2x0aXAgKTsKCX0KCWlm
ICggYWNjZXNza2V5ICYmIHRvb2x0aXAgKSB7CgkJdXBkYXRlVG9vbHRpcEFjY2Vz
c0tleXMoIG5ldyBBcnJheSggbGluayApICk7Cgl9CgoJaWYgKCBuZXh0bm9kZSAm
JiBuZXh0bm9kZS5wYXJlbnROb2RlID09IG5vZGUgKSB7CgkJbm9kZS5pbnNlcnRC
ZWZvcmUoIGl0ZW0sIG5leHRub2RlICk7Cgl9IGVsc2UgewoJCW5vZGUuYXBwZW5k
Q2hpbGQoIGl0ZW0gKTsgIC8vIElFIGNvbXBhdGliaWxpdHkgKD8pCgl9CgoJcmV0
dXJuIGl0ZW07Cn0KCmZ1bmN0aW9uIGdldElubmVyVGV4dCggZWwgKSB7CglpZiAo
IHR5cGVvZiBlbCA9PSAnc3RyaW5nJyApIHsKCQlyZXR1cm4gZWw7Cgl9CglpZiAo
IHR5cGVvZiBlbCA9PSAndW5kZWZpbmVkJyApIHsKCQlyZXR1cm4gZWw7Cgl9Cglp
ZiAoIGVsLnRleHRDb250ZW50ICkgewoJCXJldHVybiBlbC50ZXh0Q29udGVudDsg
Ly8gbm90IG5lZWRlZCBidXQgaXQgaXMgZmFzdGVyCgl9CglpZiAoIGVsLmlubmVy
VGV4dCApIHsKCQlyZXR1cm4gZWwuaW5uZXJUZXh0OyAvLyBJRSBkb2Vzbid0IGhh
dmUgdGV4dENvbnRlbnQKCX0KCXZhciBzdHIgPSAnJzsKCgl2YXIgY3MgPSBlbC5j
aGlsZE5vZGVzOwoJdmFyIGwgPSBjcy5sZW5ndGg7Cglmb3IgKCB2YXIgaSA9IDA7
IGkgPCBsOyBpKysgKSB7CgkJc3dpdGNoICggY3NbaV0ubm9kZVR5cGUgKSB7CgkJ
CWNhc2UgMTogLy8gRUxFTUVOVF9OT0RFCgkJCQlzdHIgKz0gdHNfZ2V0SW5uZXJU
ZXh0KCBjc1tpXSApOwoJCQkJYnJlYWs7CgkJCWNhc2UgMzoJLy8gVEVYVF9OT0RF
CgkJCQlzdHIgKz0gY3NbaV0ubm9kZVZhbHVlOwoJCQkJYnJlYWs7CgkJfQoJfQoJ
cmV0dXJuIHN0cjsKfQoKLyogRHVtbXkgZm9yIGRlcHJlY2F0ZWQgZnVuY3Rpb24g
Ki8KZnVuY3Rpb24gYWtleXR0KCBkb0lkICkgewp9Cgp2YXIgY2hlY2tib3hlczsK
dmFyIGxhc3RDaGVja2JveDsKCmZ1bmN0aW9uIHNldHVwQ2hlY2tib3hTaGlmdENs
aWNrKCkgewoJY2hlY2tib3hlcyA9IFtdOwoJbGFzdENoZWNrYm94ID0gbnVsbDsK
CXZhciBpbnB1dHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSggJ2lu
cHV0JyApOwoJYWRkQ2hlY2tib3hDbGlja0hhbmRsZXJzKCBpbnB1dHMgKTsKfQoK
ZnVuY3Rpb24gYWRkQ2hlY2tib3hDbGlja0hhbmRsZXJzKCBpbnB1dHMsIHN0YXJ0
ICkgewoJaWYgKCAhc3RhcnQgKSB7CgkJc3RhcnQgPSAwOwoJfQoKCXZhciBmaW5p
c2ggPSBzdGFydCArIDI1MDsKCWlmICggZmluaXNoID4gaW5wdXRzLmxlbmd0aCAp
IHsKCQlmaW5pc2ggPSBpbnB1dHMubGVuZ3RoOwoJfQoKCWZvciAoIHZhciBpID0g
c3RhcnQ7IGkgPCBmaW5pc2g7IGkrKyApIHsKCQl2YXIgY2IgPSBpbnB1dHNbaV07
CgkJaWYgKCAhY2IudHlwZSB8fCBjYi50eXBlLnRvTG93ZXJDYXNlKCkgIT0gJ2No
ZWNrYm94JyB8fCAoICcgJyArIGNiLmNsYXNzTmFtZSArICcgJyApLmluZGV4T2Yo
ICcgbm9zaGlmdHNlbGVjdCAnICkgICE9IC0xICkgewoJCQljb250aW51ZTsKCQl9
CgkJdmFyIGVuZCA9IGNoZWNrYm94ZXMubGVuZ3RoOwoJCWNoZWNrYm94ZXNbZW5k
XSA9IGNiOwoJCWNiLmluZGV4ID0gZW5kOwoJCWNiLm9uY2xpY2sgPSBjaGVja2Jv
eENsaWNrSGFuZGxlcjsKCX0KCglpZiAoIGZpbmlzaCA8IGlucHV0cy5sZW5ndGgg
KSB7CgkJc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCWFkZENoZWNrYm94Q2xp
Y2tIYW5kbGVycyggaW5wdXRzLCBmaW5pc2ggKTsKCQl9LCAyMDAgKTsKCX0KfQoK
ZnVuY3Rpb24gY2hlY2tib3hDbGlja0hhbmRsZXIoIGUgKSB7CglpZiAoIHR5cGVv
ZiBlID09ICd1bmRlZmluZWQnICkgewoJCWUgPSB3aW5kb3cuZXZlbnQ7Cgl9Cglp
ZiAoICFlLnNoaWZ0S2V5IHx8IGxhc3RDaGVja2JveCA9PT0gbnVsbCApIHsKCQls
YXN0Q2hlY2tib3ggPSB0aGlzLmluZGV4OwoJCXJldHVybiB0cnVlOwoJfQoJdmFy
IGVuZFN0YXRlID0gdGhpcy5jaGVja2VkOwoJdmFyIHN0YXJ0LCBmaW5pc2g7Cglp
ZiAoIHRoaXMuaW5kZXggPCBsYXN0Q2hlY2tib3ggKSB7CgkJc3RhcnQgPSB0aGlz
LmluZGV4ICsgMTsKCQlmaW5pc2ggPSBsYXN0Q2hlY2tib3g7Cgl9IGVsc2UgewoJ
CXN0YXJ0ID0gbGFzdENoZWNrYm94OwoJCWZpbmlzaCA9IHRoaXMuaW5kZXggLSAx
OwoJfQoJZm9yICggdmFyIGkgPSBzdGFydDsgaSA8PSBmaW5pc2g7ICsraSApIHsK
CQljaGVja2JveGVzW2ldLmNoZWNrZWQgPSBlbmRTdGF0ZTsKCQlpZiggaSA+IHN0
YXJ0ICYmIHR5cGVvZiBjaGVja2JveGVzW2ldLm9uY2hhbmdlID09ICdmdW5jdGlv
bicgKSB7CgkJCWNoZWNrYm94ZXNbaV0ub25jaGFuZ2UoKTsgLy8gZmlyZSB0cmln
Z2VycwoJCX0KCX0KCWxhc3RDaGVja2JveCA9IHRoaXMuaW5kZXg7CglyZXR1cm4g
dHJ1ZTsKfQoKCi8qCglXcml0dGVuIGJ5IEpvbmF0aGFuIFNub29rLCBodHRwOi8v
d3d3LnNub29rLmNhL2pvbmF0aGFuCglBZGQtb25zIGJ5IFJvYmVydCBOeW1hbiwg
aHR0cDovL3d3dy5yb2JlcnRueW1hbi5jb20KCUF1dGhvciBzYXlzICJUaGUgY3Jl
ZGl0IGNvbW1lbnQgaXMgYWxsIGl0IHRha2VzLCBubyBsaWNlbnNlLiBHbyBjcmF6
eSB3aXRoIGl0ITotKSIKCUZyb20gaHR0cDovL3d3dy5yb2JlcnRueW1hbi5jb20v
MjAwNS8xMS8wNy90aGUtdWx0aW1hdGUtZ2V0ZWxlbWVudHNieWNsYXNzbmFtZS8K
Ki8KZnVuY3Rpb24gZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSggb0VsbSwgc3RyVGFn
TmFtZSwgb0NsYXNzTmFtZXMgKSB7Cgl2YXIgYXJyUmV0dXJuRWxlbWVudHMgPSBu
ZXcgQXJyYXkoKTsKCWlmICggdHlwZW9mKCBvRWxtLmdldEVsZW1lbnRzQnlDbGFz
c05hbWUgKSA9PSAnZnVuY3Rpb24nICkgewoJCS8qIFVzZSBhIG5hdGl2ZSBpbXBs
ZW1lbnRhdGlvbiB3aGVyZSBwb3NzaWJsZSBGRjMsIFNhZjMuMiwgT3BlcmEgOS41
ICovCgkJdmFyIGFyck5hdGl2ZVJldHVybiA9IG9FbG0uZ2V0RWxlbWVudHNCeUNs
YXNzTmFtZSggb0NsYXNzTmFtZXMgKTsKCQlpZiAoIHN0clRhZ05hbWUgPT0gJyon
ICkgewoJCQlyZXR1cm4gYXJyTmF0aXZlUmV0dXJuOwoJCX0KCQlmb3IgKCB2YXIg
aCA9IDA7IGggPCBhcnJOYXRpdmVSZXR1cm4ubGVuZ3RoOyBoKysgKSB7CgkJCWlm
KCBhcnJOYXRpdmVSZXR1cm5baF0udGFnTmFtZS50b0xvd2VyQ2FzZSgpID09IHN0
clRhZ05hbWUudG9Mb3dlckNhc2UoKSApIHsKCQkJCWFyclJldHVybkVsZW1lbnRz
W2FyclJldHVybkVsZW1lbnRzLmxlbmd0aF0gPSBhcnJOYXRpdmVSZXR1cm5baF07
CgkJCX0KCQl9CgkJcmV0dXJuIGFyclJldHVybkVsZW1lbnRzOwoJfQoJdmFyIGFy
ckVsZW1lbnRzID0gKCBzdHJUYWdOYW1lID09ICcqJyAmJiBvRWxtLmFsbCApID8g
b0VsbS5hbGwgOiBvRWxtLmdldEVsZW1lbnRzQnlUYWdOYW1lKCBzdHJUYWdOYW1l
ICk7Cgl2YXIgYXJyUmVnRXhwQ2xhc3NOYW1lcyA9IG5ldyBBcnJheSgpOwoJaWYo
IHR5cGVvZiBvQ2xhc3NOYW1lcyA9PSAnb2JqZWN0JyApIHsKCQlmb3IoIHZhciBp
ID0gMDsgaSA8IG9DbGFzc05hbWVzLmxlbmd0aDsgaSsrICkgewoJCQlhcnJSZWdF
eHBDbGFzc05hbWVzW2FyclJlZ0V4cENsYXNzTmFtZXMubGVuZ3RoXSA9CgkJCQlu
ZXcgUmVnRXhwKCIoXnxcXHMpIiArIG9DbGFzc05hbWVzW2ldLnJlcGxhY2UoL1wt
L2csICJcXC0iKSArICIoXFxzfCQpIik7CgkJfQoJfSBlbHNlIHsKCQlhcnJSZWdF
eHBDbGFzc05hbWVzW2FyclJlZ0V4cENsYXNzTmFtZXMubGVuZ3RoXSA9CgkJCW5l
dyBSZWdFeHAoIihefFxccykiICsgb0NsYXNzTmFtZXMucmVwbGFjZSgvXC0vZywg
IlxcLSIpICsgIihcXHN8JCkiKTsKCX0KCXZhciBvRWxlbWVudDsKCXZhciBiTWF0
Y2hlc0FsbDsKCWZvciggdmFyIGogPSAwOyBqIDwgYXJyRWxlbWVudHMubGVuZ3Ro
OyBqKysgKSB7CgkJb0VsZW1lbnQgPSBhcnJFbGVtZW50c1tqXTsKCQliTWF0Y2hl
c0FsbCA9IHRydWU7CgkJZm9yKCB2YXIgayA9IDA7IGsgPCBhcnJSZWdFeHBDbGFz
c05hbWVzLmxlbmd0aDsgaysrICkgewoJCQlpZiggIWFyclJlZ0V4cENsYXNzTmFt
ZXNba10udGVzdCggb0VsZW1lbnQuY2xhc3NOYW1lICkgKSB7CgkJCQliTWF0Y2hl
c0FsbCA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJCX0KCQl9CgkJaWYoIGJNYXRjaGVz
QWxsICkgewoJCQlhcnJSZXR1cm5FbGVtZW50c1thcnJSZXR1cm5FbGVtZW50cy5s
ZW5ndGhdID0gb0VsZW1lbnQ7CgkJfQoJfQoJcmV0dXJuICggYXJyUmV0dXJuRWxl
bWVudHMgKTsKfQoKZnVuY3Rpb24gcmVkaXJlY3RUb0ZyYWdtZW50KCBmcmFnbWVu
dCApIHsKCXZhciBtYXRjaCA9IG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL0Fw
cGxlV2ViS2l0XC8oXGQrKS8pOwoJaWYgKCBtYXRjaCApIHsKCQl2YXIgd2ViS2l0
VmVyc2lvbiA9IHBhcnNlSW50KCBtYXRjaFsxXSApOwoJCWlmICggd2ViS2l0VmVy
c2lvbiA8IDQyMCApIHsKCQkJLy8gUmVsZWFzZWQgU2FmYXJpIHcvIFdlYktpdCA0
MTguOS4xIG1lc3NlcyB1cCBob3JyaWJseQoJCQkvLyBOaWdodGxpZXMgb2YgNDIw
KyBhcmUgb2sKCQkJcmV0dXJuOwoJCX0KCX0KCWlmICggaXNfZ2Vja28gKSB7CgkJ
Ly8gTW96aWxsYSBuZWVkcyB0byB3YWl0IHVudGlsIGFmdGVyIGxvYWQsIG90aGVy
d2lzZSB0aGUgd2luZG93IGRvZXNuJ3Qgc2Nyb2xsCgkJYWRkT25sb2FkSG9vayhm
dW5jdGlvbigpIHsKCQkJaWYgKCB3aW5kb3cubG9jYXRpb24uaGFzaCA9PSAnJyAp
IHsKCQkJCXdpbmRvdy5sb2NhdGlvbi5oYXNoID0gZnJhZ21lbnQ7CgkJCX0KCQl9
KTsKCX0gZWxzZSB7CgkJaWYgKCB3aW5kb3cubG9jYXRpb24uaGFzaCA9PSAnJyAp
IHsKCQkJd2luZG93LmxvY2F0aW9uLmhhc2ggPSBmcmFnbWVudDsKCQl9Cgl9Cn0K
Ci8qCiAqIFRhYmxlIHNvcnRpbmcgc2NyaXB0IGJhc2VkIG9uIG9uZSAoYykgMTk5
Ny0yMDA2IFN0dWFydCBMYW5ncmlkZ2UgYW5kIEpvb3N0CiAqIGRlIFZhbGs6CiAq
IGh0dHA6Ly93d3cuam9vc3RkZXZhbGsubmwvY29kZS9zb3J0YWJsZS10YWJsZS8K
ICogaHR0cDovL3d3dy5rcnlvZ2VuaXgub3JnL2NvZGUvYnJvd3Nlci9zb3J0dGFi
bGUvCiAqCiAqIEB0b2RvIGRvbid0IGJyZWFrIG9uIGNvbHNwYW5zL3Jvd3NwYW5z
IChidWcgODAyOCkKICogQHRvZG8gbGFuZ3VhZ2Utc3BlY2lmaWMgZGlnaXQgZ3Jv
dXBpbmcvZGVjaW1hbHMgKGJ1ZyA4MDYzKQogKiBAdG9kbyBzdXBwb3J0IGFsbCBh
Y2NlcHRlZCBkYXRlIGZvcm1hdHMgKGJ1ZyA4MjI2KQogKi8KCnZhciB0c19pbWFn
ZV9wYXRoID0gc3R5bGVwYXRoICsgJy9jb21tb24vaW1hZ2VzLyc7CnZhciB0c19p
bWFnZV91cCA9ICdzb3J0X3VwLmdpZic7CnZhciB0c19pbWFnZV9kb3duID0gJ3Nv
cnRfZG93bi5naWYnOwp2YXIgdHNfaW1hZ2Vfbm9uZSA9ICdzb3J0X25vbmUuZ2lm
JzsKdmFyIHRzX2V1cm9wZWFuZGF0ZSA9IHdnQ29udGVudExhbmd1YWdlICE9ICdl
bic7IC8vIFRoZSBub24tQW1lcmljYW4taW5jbGluZWQgY2FuIGNoYW5nZSB0byAi
dHJ1ZSIKdmFyIHRzX2FsdGVybmF0ZV9yb3dfY29sb3JzID0gZmFsc2U7CnZhciB0
c19udW1iZXJfdHJhbnNmb3JtX3RhYmxlID0gbnVsbDsKdmFyIHRzX251bWJlcl9y
ZWdleCA9IG51bGw7CgpmdW5jdGlvbiBzb3J0YWJsZXNfaW5pdCgpIHsKCXZhciBp
ZG51bSA9IDA7CgkvLyBGaW5kIGFsbCB0YWJsZXMgd2l0aCBjbGFzcyBzb3J0YWJs
ZSBhbmQgbWFrZSB0aGVtIHNvcnRhYmxlCgl2YXIgdGFibGVzID0gZ2V0RWxlbWVu
dHNCeUNsYXNzTmFtZSggZG9jdW1lbnQsICd0YWJsZScsICdzb3J0YWJsZScgKTsK
CWZvciAoIHZhciB0aSA9IDA7IHRpIDwgdGFibGVzLmxlbmd0aCA7IHRpKysgKSB7
CgkJaWYgKCAhdGFibGVzW3RpXS5pZCApIHsKCQkJdGFibGVzW3RpXS5zZXRBdHRy
aWJ1dGUoICdpZCcsICdzb3J0YWJsZV90YWJsZV9pZF8nICsgaWRudW0gKTsKCQkJ
KytpZG51bTsKCQl9CgkJdHNfbWFrZVNvcnRhYmxlKCB0YWJsZXNbdGldICk7Cgl9
Cn0KCmZ1bmN0aW9uIHRzX21ha2VTb3J0YWJsZSggdGFibGUgKSB7Cgl2YXIgZmly
c3RSb3c7CglpZiAoIHRhYmxlLnJvd3MgJiYgdGFibGUucm93cy5sZW5ndGggPiAw
ICkgewoJCWlmICggdGFibGUudEhlYWQgJiYgdGFibGUudEhlYWQucm93cy5sZW5n
dGggPiAwICkgewoJCQlmaXJzdFJvdyA9IHRhYmxlLnRIZWFkLnJvd3NbdGFibGUu
dEhlYWQucm93cy5sZW5ndGgtMV07CgkJfSBlbHNlIHsKCQkJZmlyc3RSb3cgPSB0
YWJsZS5yb3dzWzBdOwoJCX0KCX0KCWlmICggIWZpcnN0Um93ICkgewoJCXJldHVy
bjsKCX0KCgkvLyBXZSBoYXZlIGEgZmlyc3Qgcm93OiBhc3N1bWUgaXQncyB0aGUg
aGVhZGVyLCBhbmQgbWFrZSBpdHMgY29udGVudHMgY2xpY2thYmxlIGxpbmtzCglm
b3IgKCB2YXIgaSA9IDA7IGkgPCBmaXJzdFJvdy5jZWxscy5sZW5ndGg7IGkrKyAp
IHsKCQl2YXIgY2VsbCA9IGZpcnN0Um93LmNlbGxzW2ldOwoJCWlmICggKCcgJyAr
IGNlbGwuY2xhc3NOYW1lICsgJyAnKS5pbmRleE9mKCcgdW5zb3J0YWJsZSAnKSA9
PSAtMSApIHsKCQkJY2VsbC5pbm5lckhUTUwgKz0gJzxhIGhyZWY9IiMiIGNsYXNz
PSJzb3J0aGVhZGVyIiAnCgkJCQkrICdvbmNsaWNrPSJ0c19yZXNvcnRUYWJsZSh0
aGlzKTtyZXR1cm4gZmFsc2U7Ij4nCgkJCQkrICc8c3BhbiBjbGFzcz0ic29ydGFy
cm93Ij4nCgkJCQkrICc8aW1nIHNyYz0iJwoJCQkJKyB0c19pbWFnZV9wYXRoCgkJ
CQkrIHRzX2ltYWdlX25vbmUKCQkJCSsgJyIgYWx0PSImZGFycjsiLz48L3NwYW4+
PC9hPic7CgkJfQoJfQoJaWYgKCB0c19hbHRlcm5hdGVfcm93X2NvbG9ycyApIHsK
CQl0c19hbHRlcm5hdGUoIHRhYmxlICk7Cgl9Cn0KCmZ1bmN0aW9uIHRzX2dldElu
bmVyVGV4dCggZWwgKSB7CglyZXR1cm4gZ2V0SW5uZXJUZXh0KCBlbCApOwp9Cgpm
dW5jdGlvbiB0c19yZXNvcnRUYWJsZSggbG5rICkgewoJLy8gZ2V0IHRoZSBzcGFu
Cgl2YXIgc3BhbiA9IGxuay5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc3BhbicpWzBd
OwoKCXZhciB0ZCA9IGxuay5wYXJlbnROb2RlOwoJdmFyIHRyID0gdGQucGFyZW50
Tm9kZTsKCXZhciBjb2x1bW4gPSB0ZC5jZWxsSW5kZXg7CgoJdmFyIHRhYmxlID0g
dHIucGFyZW50Tm9kZTsKCXdoaWxlICggdGFibGUgJiYgISggdGFibGUudGFnTmFt
ZSAmJiB0YWJsZS50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT0gJ3RhYmxlJyApICkg
ewoJCXRhYmxlID0gdGFibGUucGFyZW50Tm9kZTsKCX0KCWlmICggIXRhYmxlICkg
ewoJCXJldHVybjsKCX0KCglpZiAoIHRhYmxlLnJvd3MubGVuZ3RoIDw9IDEgKSB7
CgkJcmV0dXJuOwoJfQoKCS8vIEdlbmVyYXRlIHRoZSBudW1iZXIgdHJhbnNmb3Jt
IHRhYmxlIGlmIGl0J3Mgbm90IGRvbmUgYWxyZWFkeQoJaWYgKCB0c19udW1iZXJf
dHJhbnNmb3JtX3RhYmxlID09PSBudWxsICkgewoJCXRzX2luaXRUcmFuc2Zvcm1U
YWJsZSgpOwoJfQoKCS8vIFdvcmsgb3V0IGEgdHlwZSBmb3IgdGhlIGNvbHVtbgoJ
Ly8gU2tpcCB0aGUgZmlyc3Qgcm93IGlmIHRoYXQncyB3aGVyZSB0aGUgaGVhZGlu
Z3MgYXJlCgl2YXIgcm93U3RhcnQgPSAoIHRhYmxlLnRIZWFkICYmIHRhYmxlLnRI
ZWFkLnJvd3MubGVuZ3RoID4gMCA/IDAgOiAxICk7CgoJdmFyIGl0bSA9ICcnOwoJ
Zm9yICggdmFyIGkgPSByb3dTdGFydDsgaSA8IHRhYmxlLnJvd3MubGVuZ3RoOyBp
KysgKSB7CgkJaWYgKCB0YWJsZS5yb3dzW2ldLmNlbGxzLmxlbmd0aCA+IGNvbHVt
biApIHsKCQkJaXRtID0gdHNfZ2V0SW5uZXJUZXh0KHRhYmxlLnJvd3NbaV0uY2Vs
bHNbY29sdW1uXSk7CgkJCWl0bSA9IGl0bS5yZXBsYWNlKC9eW1xzXHhhMF0rLywg
JycpLnJlcGxhY2UoL1tcc1x4YTBdKyQvLCAnJyk7CgkJCWlmICggaXRtICE9ICcn
ICkgewoJCQkJYnJlYWs7CgkJCX0KCQl9Cgl9CgoJLy8gVE9ETzogYnVnIDgyMjYs
IGxvY2FsaXNlZCBkYXRlIGZvcm1hdHMKCXZhciBzb3J0Zm4gPSB0c19zb3J0X2dl
bmVyaWM7Cgl2YXIgcHJlcHJvY2Vzc29yID0gdHNfdG9Mb3dlckNhc2U7CglpZiAo
IC9eXGRcZFtcLy4gLV1bYS16QS1aXXszfVtcLy4gLV1cZFxkXGRcZCQvLnRlc3Qo
IGl0bSApICkgewoJCXByZXByb2Nlc3NvciA9IHRzX2RhdGVUb1NvcnRLZXk7Cgl9
IGVsc2UgaWYgKCAvXlxkXGRbXC8uLV1cZFxkW1wvLi1dXGRcZFxkXGQkLy50ZXN0
KCBpdG0gKSApIHsKCQlwcmVwcm9jZXNzb3IgPSB0c19kYXRlVG9Tb3J0S2V5OwoJ
fSBlbHNlIGlmICggL15cZFxkW1wvLi1dXGRcZFtcLy4tXVxkXGQkLy50ZXN0KCBp
dG0gKSApIHsKCQlwcmVwcm9jZXNzb3IgPSB0c19kYXRlVG9Tb3J0S2V5OwoJCS8v
IChtaW51cyBzaWduKShbcG91bmQgZG9sbGFyIGV1cm8geWVuIGN1cnJlbmN5XXxj
ZW50cykKCX0gZWxzZSBpZiAoIC8oXihbLVx1MjIxMl0gKik/W1x1MDBhMyRcdTIw
YWNcdTAwYTRcdTAwYTVdfFx1MDBhMiQpLy50ZXN0KCBpdG0gKSApIHsKCQlwcmVw
cm9jZXNzb3IgPSB0c19jdXJyZW5jeVRvU29ydEtleTsKCX0gZWxzZSBpZiAoIHRz
X251bWJlcl9yZWdleC50ZXN0KCBpdG0gKSApIHsKCQlwcmVwcm9jZXNzb3IgPSB0
c19wYXJzZUZsb2F0OwoJfQoKCXZhciByZXZlcnNlID0gKCBzcGFuLmdldEF0dHJp
YnV0ZSggJ3NvcnRkaXInICkgPT0gJ2Rvd24nICk7CgoJdmFyIG5ld1Jvd3MgPSBu
ZXcgQXJyYXkoKTsKCXZhciBzdGF0aWNSb3dzID0gbmV3IEFycmF5KCk7Cglmb3Ig
KCB2YXIgaiA9IHJvd1N0YXJ0OyBqIDwgdGFibGUucm93cy5sZW5ndGg7IGorKyAp
IHsKCQl2YXIgcm93ID0gdGFibGUucm93c1tqXTsKCQlpZiggKCcgJyArIHJvdy5j
bGFzc05hbWUgKyAnICcpLmluZGV4T2YoJyB1bnNvcnRhYmxlICcpIDwgMCApIHsK
CQkJdmFyIGtleVRleHQgPSB0c19nZXRJbm5lclRleHQoIHJvdy5jZWxsc1tjb2x1
bW5dICk7CgkJCWlmKCBrZXlUZXh0ID09PSB1bmRlZmluZWQgKSB7CgkJCQlrZXlU
ZXh0ID0gJyc7IAoJCQl9CgkJCXZhciBvbGRJbmRleCA9ICggcmV2ZXJzZSA/IC1q
IDogaiApOwoJCQl2YXIgcHJlcHJvY2Vzc2VkID0gcHJlcHJvY2Vzc29yKCBrZXlU
ZXh0LnJlcGxhY2UoL15bXHNceGEwXSsvLCAnJykucmVwbGFjZSgvW1xzXHhhMF0r
JC8sICcnKSApOwoKCQkJbmV3Um93c1tuZXdSb3dzLmxlbmd0aF0gPSBuZXcgQXJy
YXkoIHJvdywgcHJlcHJvY2Vzc2VkLCBvbGRJbmRleCApOwoJCX0gZWxzZSB7CgkJ
CXN0YXRpY1Jvd3Nbc3RhdGljUm93cy5sZW5ndGhdID0gbmV3IEFycmF5KCByb3cs
IGZhbHNlLCBqLXJvd1N0YXJ0ICk7CgkJfQoJfQoKCW5ld1Jvd3Muc29ydCggc29y
dGZuICk7CgoJdmFyIGFycm93SFRNTDsKCWlmICggcmV2ZXJzZSApIHsKCQlhcnJv
d0hUTUwgPSAnPGltZyBzcmM9IicgKyB0c19pbWFnZV9wYXRoICsgdHNfaW1hZ2Vf
ZG93biArICciIGFsdD0iJmRhcnI7Ii8+JzsKCQluZXdSb3dzLnJldmVyc2UoKTsK
CQlzcGFuLnNldEF0dHJpYnV0ZSggJ3NvcnRkaXInLCAndXAnICk7Cgl9IGVsc2Ug
ewoJCWFycm93SFRNTCA9ICc8aW1nIHNyYz0iJyArIHRzX2ltYWdlX3BhdGggKyB0
c19pbWFnZV91cCArICciIGFsdD0iJnVhcnI7Ii8+JzsKCQlzcGFuLnNldEF0dHJp
YnV0ZSggJ3NvcnRkaXInLCAnZG93bicgKTsKCX0KCglmb3IgKCB2YXIgaSA9IDA7
IGkgPCBzdGF0aWNSb3dzLmxlbmd0aDsgaSsrICkgewoJCXZhciByb3cgPSBzdGF0
aWNSb3dzW2ldOwoJCW5ld1Jvd3Muc3BsaWNlKCByb3dbMl0sIDAsIHJvdyApOwoJ
fQoKCS8vIFdlIGFwcGVuZENoaWxkIHJvd3MgdGhhdCBhbHJlYWR5IGV4aXN0IHRv
IHRoZSB0Ym9keSwgc28gaXQgbW92ZXMgdGhlbSByYXRoZXIgdGhhbiBjcmVhdGlu
ZyBuZXcgb25lcwoJLy8gZG9uJ3QgZG8gc29ydGJvdHRvbSByb3dzCglmb3IgKCB2
YXIgaSA9IDA7IGkgPCBuZXdSb3dzLmxlbmd0aDsgaSsrICkgewoJCWlmICggKCAn
ICcgKyBuZXdSb3dzW2ldWzBdLmNsYXNzTmFtZSArICcgJykuaW5kZXhPZignIHNv
cnRib3R0b20gJykgPT0gLTEgKSB7CgkJCXRhYmxlLnRCb2RpZXNbMF0uYXBwZW5k
Q2hpbGQoIG5ld1Jvd3NbaV1bMF0gKTsKCQl9Cgl9CgkvLyBkbyBzb3J0Ym90dG9t
IHJvd3Mgb25seQoJZm9yICggdmFyIGkgPSAwOyBpIDwgbmV3Um93cy5sZW5ndGg7
IGkrKyApIHsKCQlpZiAoICggJyAnICsgbmV3Um93c1tpXVswXS5jbGFzc05hbWUg
KyAnICcpLmluZGV4T2YoJyBzb3J0Ym90dG9tICcpICE9IC0xICkgewoJCQl0YWJs
ZS50Qm9kaWVzWzBdLmFwcGVuZENoaWxkKCBuZXdSb3dzW2ldWzBdICk7CgkJfQoJ
fQoKCS8vIERlbGV0ZSBhbnkgb3RoZXIgYXJyb3dzIHRoZXJlIG1heSBiZSBzaG93
aW5nCgl2YXIgc3BhbnMgPSBnZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCB0ciwgJ3Nw
YW4nLCAnc29ydGFycm93JyApOwoJZm9yICggdmFyIGkgPSAwOyBpIDwgc3BhbnMu
bGVuZ3RoOyBpKysgKSB7CgkJc3BhbnNbaV0uaW5uZXJIVE1MID0gJzxpbWcgc3Jj
PSInICsgdHNfaW1hZ2VfcGF0aCArIHRzX2ltYWdlX25vbmUgKyAnIiBhbHQ9IiZk
YXJyOyIvPic7Cgl9CglzcGFuLmlubmVySFRNTCA9IGFycm93SFRNTDsKCglpZiAo
IHRzX2FsdGVybmF0ZV9yb3dfY29sb3JzICkgewoJCXRzX2FsdGVybmF0ZSggdGFi
bGUgKTsKCX0KfQoKZnVuY3Rpb24gdHNfaW5pdFRyYW5zZm9ybVRhYmxlKCkgewoJ
aWYgKCB0eXBlb2Ygd2dTZXBhcmF0b3JUcmFuc2Zvcm1UYWJsZSA9PSAndW5kZWZp
bmVkJwoJCQl8fCAoIHdnU2VwYXJhdG9yVHJhbnNmb3JtVGFibGVbMF0gPT0gJycg
JiYgd2dEaWdpdFRyYW5zZm9ybVRhYmxlWzJdID09ICcnICkgKQoJewoJCWRpZ2l0
Q2xhc3MgPSAiWzAtOSwuXSI7CgkJdHNfbnVtYmVyX3RyYW5zZm9ybV90YWJsZSA9
IGZhbHNlOwoJfSBlbHNlIHsKCQl0c19udW1iZXJfdHJhbnNmb3JtX3RhYmxlID0g
e307CgkJLy8gVW5wYWNrIHRoZSB0cmFuc2Zvcm0gdGFibGUKCQkvLyBTZXBhcmF0
b3JzCgkJYXNjaWkgPSB3Z1NlcGFyYXRvclRyYW5zZm9ybVRhYmxlWzBdLnNwbGl0
KCJcdCIpOwoJCWxvY2FsaXNlZCA9IHdnU2VwYXJhdG9yVHJhbnNmb3JtVGFibGVb
MV0uc3BsaXQoIlx0Iik7CgkJZm9yICggdmFyIGkgPSAwOyBpIDwgYXNjaWkubGVu
Z3RoOyBpKysgKSB7CgkJCXRzX251bWJlcl90cmFuc2Zvcm1fdGFibGVbbG9jYWxp
c2VkW2ldXSA9IGFzY2lpW2ldOwoJCX0KCQkvLyBEaWdpdHMKCQlhc2NpaSA9IHdn
RGlnaXRUcmFuc2Zvcm1UYWJsZVswXS5zcGxpdCgiXHQiKTsKCQlsb2NhbGlzZWQg
PSB3Z0RpZ2l0VHJhbnNmb3JtVGFibGVbMV0uc3BsaXQoIlx0Iik7CgkJZm9yICgg
dmFyIGkgPSAwOyBpIDwgYXNjaWkubGVuZ3RoOyBpKysgKSB7CgkJCXRzX251bWJl
cl90cmFuc2Zvcm1fdGFibGVbbG9jYWxpc2VkW2ldXSA9IGFzY2lpW2ldOwoJCX0K
CgkJLy8gQ29uc3RydWN0IHJlZ2V4IGZvciBudW1iZXIgaWRlbnRpZmljYXRpb24K
CQlkaWdpdHMgPSBbJzAnLCAnMScsICcyJywgJzMnLCAnNCcsICc1JywgJzYnLCAn
NycsICc4JywgJzknLCAnLCcsICdcXC4nXTsKCQltYXhEaWdpdExlbmd0aCA9IDE7
CgkJZm9yICggdmFyIGRpZ2l0IGluIHRzX251bWJlcl90cmFuc2Zvcm1fdGFibGUg
KSB7CgkJCS8vIEVzY2FwZSByZWdleCBtZXRhY2hhcmFjdGVycwoJCQlkaWdpdHMu
cHVzaCgKCQkJCWRpZ2l0LnJlcGxhY2UoIC9bXFxcXCRcKlwrXD9cLlwoXClcfFx7
XH1cW1xdXC1dLywKCQkJCQlmdW5jdGlvbiggcyApIHsgcmV0dXJuICdcXCcgKyBz
OyB9ICkKCQkJKTsKCQkJaWYgKCBkaWdpdC5sZW5ndGggPiBtYXhEaWdpdExlbmd0
aCApIHsKCQkJCW1heERpZ2l0TGVuZ3RoID0gZGlnaXQubGVuZ3RoOwoJCQl9CgkJ
fQoJCWlmICggbWF4RGlnaXRMZW5ndGggPiAxICkgewoJCQlkaWdpdENsYXNzID0g
J1snICsgZGlnaXRzLmpvaW4oICcnLCBkaWdpdHMgKSArICddJzsKCQl9IGVsc2Ug
ewoJCQlkaWdpdENsYXNzID0gJygnICsgZGlnaXRzLmpvaW4oICd8JywgZGlnaXRz
ICkgKyAnKSc7CgkJfQoJfQoKCS8vIFdlIGFsbG93IGEgdHJhaWxpbmcgcGVyY2Vu
dCBzaWduLCB3aGljaCB3ZSBqdXN0IHN0cmlwLiAgVGhpcyB3b3JrcyBmaW5lCgkv
LyBpZiBwZXJjZW50cyBhbmQgcmVndWxhciBudW1iZXJzIGFyZW4ndCBiZWluZyBt
aXhlZC4KCXRzX251bWJlcl9yZWdleCA9IG5ldyBSZWdFeHAoCgkJIl4oIiArCgkJ
CSJbLStcdTIyMTJdP1swLTldWzAtOSxdKihcXC5bMC05LF0qKT8oRVstK1x1MjIx
Ml0/WzAtOV1bMC05LF0qKT8iICsgLy8gRm9ydHJhbi1zdHlsZSBzY2llbnRpZmlj
CgkJCSJ8IiArCgkJCSJbLStcdTIyMTJdPyIgKyBkaWdpdENsYXNzICsgIislPyIg
KyAvLyBHZW5lcmljIGxvY2FsaXNlZAoJCSIpJCIsICJpIgoJKTsKfQoKZnVuY3Rp
b24gdHNfdG9Mb3dlckNhc2UoIHMgKSB7CglyZXR1cm4gcy50b0xvd2VyQ2FzZSgp
Owp9CgpmdW5jdGlvbiB0c19kYXRlVG9Tb3J0S2V5KCBkYXRlICkgewoJLy8geTJr
IG5vdGVzOiB0d28gZGlnaXQgeWVhcnMgbGVzcyB0aGFuIDUwIGFyZSB0cmVhdGVk
IGFzIDIwWFgsIGdyZWF0ZXIgdGhhbiA1MCBhcmUgdHJlYXRlZCBhcyAxOVhYCglp
ZiAoIGRhdGUubGVuZ3RoID09IDExICkgewoJCXN3aXRjaCAoIGRhdGUuc3Vic3Ry
KCAzLCAzICkudG9Mb3dlckNhc2UoKSApIHsKCQkJY2FzZSAnamFuJzoKCQkJCXZh
ciBtb250aCA9ICcwMSc7CgkJCQlicmVhazsKCQkJY2FzZSAnZmViJzoKCQkJCXZh
ciBtb250aCA9ICcwMic7CgkJCQlicmVhazsKCQkJY2FzZSAnbWFyJzoKCQkJCXZh
ciBtb250aCA9ICcwMyc7CgkJCQlicmVhazsKCQkJY2FzZSAnYXByJzoKCQkJCXZh
ciBtb250aCA9ICcwNCc7CgkJCQlicmVhazsKCQkJY2FzZSAnbWF5JzoKCQkJCXZh
ciBtb250aCA9ICcwNSc7CgkJCQlicmVhazsKCQkJY2FzZSAnanVuJzoKCQkJCXZh
ciBtb250aCA9ICcwNic7CgkJCQlicmVhazsKCQkJY2FzZSAnanVsJzoKCQkJCXZh
ciBtb250aCA9ICcwNyc7CgkJCQlicmVhazsKCQkJY2FzZSAnYXVnJzoKCQkJCXZh
ciBtb250aCA9ICcwOCc7CgkJCQlicmVhazsKCQkJY2FzZSAnc2VwJzoKCQkJCXZh
ciBtb250aCA9ICcwOSc7CgkJCQlicmVhazsKCQkJY2FzZSAnb2N0JzoKCQkJCXZh
ciBtb250aCA9ICcxMCc7CgkJCQlicmVhazsKCQkJY2FzZSAnbm92JzoKCQkJCXZh
ciBtb250aCA9ICcxMSc7CgkJCQlicmVhazsKCQkJY2FzZSAnZGVjJzoKCQkJCXZh
ciBtb250aCA9ICcxMic7CgkJCQlicmVhazsKCQkJLy8gZGVmYXVsdDogdmFyIG1v
bnRoID0gJzAwJzsKCQl9CgkJcmV0dXJuIGRhdGUuc3Vic3RyKCA3LCA0ICkgKyBt
b250aCArIGRhdGUuc3Vic3RyKCAwLCAyICk7Cgl9IGVsc2UgaWYgKCBkYXRlLmxl
bmd0aCA9PSAxMCApIHsKCQlpZiAoIHRzX2V1cm9wZWFuZGF0ZSA9PSBmYWxzZSAp
IHsKCQkJcmV0dXJuIGRhdGUuc3Vic3RyKCA2LCA0ICkgKyBkYXRlLnN1YnN0cigg
MCwgMiApICsgZGF0ZS5zdWJzdHIoIDMsIDIgKTsKCQl9IGVsc2UgewoJCQlyZXR1
cm4gZGF0ZS5zdWJzdHIoIDYsIDQgKSArIGRhdGUuc3Vic3RyKCAzLCAyICkgKyBk
YXRlLnN1YnN0ciggMCwgMiApOwoJCX0KCX0gZWxzZSBpZiAoIGRhdGUubGVuZ3Ro
ID09IDggKSB7CgkJeXIgPSBkYXRlLnN1YnN0ciggNiwgMiApOwoJCWlmICggcGFy
c2VJbnQoIHlyICkgPCA1MCApIHsKCQkJeXIgPSAnMjAnICsgeXI7CgkJfSBlbHNl
IHsKCQkJeXIgPSAnMTknICsgeXI7CgkJfQoJCWlmICggdHNfZXVyb3BlYW5kYXRl
ID09IHRydWUgKSB7CgkJCXJldHVybiB5ciArIGRhdGUuc3Vic3RyKCAzLCAyICkg
KyBkYXRlLnN1YnN0ciggMCwgMiApOwoJCX0gZWxzZSB7CgkJCXJldHVybiB5ciAr
IGRhdGUuc3Vic3RyKCAwLCAyICkgKyBkYXRlLnN1YnN0ciggMywgMiApOwoJCX0K
CX0KCXJldHVybiAnMDAwMDAwMDAnOwp9CgpmdW5jdGlvbiB0c19wYXJzZUZsb2F0
KCBzICkgewoJaWYgKCAhcyApIHsKCQlyZXR1cm4gMDsKCX0KCWlmICggdHNfbnVt
YmVyX3RyYW5zZm9ybV90YWJsZSAhPSBmYWxzZSApIHsKCQl2YXIgbmV3TnVtID0g
JycsIGM7CgoJCWZvciAoIHZhciBwID0gMDsgcCA8IHMubGVuZ3RoOyBwKysgKSB7
CgkJCWMgPSBzLmNoYXJBdCggcCApOwoJCQlpZiAoIGMgaW4gdHNfbnVtYmVyX3Ry
YW5zZm9ybV90YWJsZSApIHsKCQkJCW5ld051bSArPSB0c19udW1iZXJfdHJhbnNm
b3JtX3RhYmxlW2NdOwoJCQl9IGVsc2UgewoJCQkJbmV3TnVtICs9IGM7CgkJCX0K
CQl9CgkJcyA9IG5ld051bTsKCX0KCW51bSA9IHBhcnNlRmxvYXQoIHMucmVwbGFj
ZSgvWywgXS9nLCAnJykucmVwbGFjZSgiXHUyMjEyIiwgJy0nKSApOwoJcmV0dXJu
ICggaXNOYU4oIG51bSApID8gLUluZmluaXR5IDogbnVtICk7Cn0KCmZ1bmN0aW9u
IHRzX2N1cnJlbmN5VG9Tb3J0S2V5KCBzICkgewoJcmV0dXJuIHRzX3BhcnNlRmxv
YXQocy5yZXBsYWNlKC9bXi1cdTIyMTIwLTkuLF0vZywnJykpOwp9CgpmdW5jdGlv
biB0c19zb3J0X2dlbmVyaWMoIGEsIGIgKSB7CglyZXR1cm4gYVsxXSA8IGJbMV0g
PyAtMSA6IGFbMV0gPiBiWzFdID8gMSA6IGFbMl0gLSBiWzJdOwp9CgpmdW5jdGlv
biB0c19hbHRlcm5hdGUoIHRhYmxlICkgewoJLy8gVGFrZSBvYmplY3QgdGFibGUg
YW5kIGdldCBhbGwgaXQncyB0Ym9kaWVzLgoJdmFyIHRhYmxlQm9kaWVzID0gdGFi
bGUuZ2V0RWxlbWVudHNCeVRhZ05hbWUoICd0Ym9keScgKTsKCS8vIExvb3AgdGhy
b3VnaCB0aGVzZSB0Ym9kaWVzCglmb3IgKCB2YXIgaSA9IDA7IGkgPCB0YWJsZUJv
ZGllcy5sZW5ndGg7IGkrKyApIHsKCQkvLyBUYWtlIHRoZSB0Ym9keSwgYW5kIGdl
dCBhbGwgaXQncyByb3dzCgkJdmFyIHRhYmxlUm93cyA9IHRhYmxlQm9kaWVzW2ld
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCAndHInICk7CgkJLy8gTG9vcCB0aHJvdWdo
IHRoZXNlIHJvd3MKCQkvLyBTdGFydCBhdCAxIGJlY2F1c2Ugd2Ugd2FudCB0byBs
ZWF2ZSB0aGUgaGVhZGluZyByb3cgdW50b3VjaGVkCgkJZm9yICggdmFyIGogPSAw
OyBqIDwgdGFibGVSb3dzLmxlbmd0aDsgaisrICkgewoJCQkvLyBDaGVjayBpZiBq
IGlzIGV2ZW4sIGFuZCBhcHBseSBjbGFzc2VzIGZvciBib3RoIHBvc3NpYmxlIHJl
c3VsdHMKCQkJdmFyIG9sZENsYXNzZXMgPSB0YWJsZVJvd3Nbal0uY2xhc3NOYW1l
LnNwbGl0KCcgJyk7CgkJCXZhciBuZXdDbGFzc05hbWUgPSAnJzsKCQkJZm9yICgg
dmFyIGsgPSAwOyBrIDwgb2xkQ2xhc3Nlcy5sZW5ndGg7IGsrKyApIHsKCQkJCWlm
ICggb2xkQ2xhc3Nlc1trXSAhPSAnJyAmJiBvbGRDbGFzc2VzW2tdICE9ICdldmVu
JyAmJiBvbGRDbGFzc2VzW2tdICE9ICdvZGQnICkgewoJCQkJCW5ld0NsYXNzTmFt
ZSArPSBvbGRDbGFzc2VzW2tdICsgJyAnOwoJCQkJfQoJCQl9CgkJCXRhYmxlUm93
c1tqXS5jbGFzc05hbWUgPSBuZXdDbGFzc05hbWUgKyAoIGogJSAyID09IDAgPyAn
ZXZlbicgOiAnb2RkJyApOwoJCX0KCX0KfQoKLyoKICogRW5kIG9mIHRhYmxlIHNv
cnRpbmcgY29kZQogKi8KCgovKioKICogQWRkIGEgY3V0ZSBsaXR0bGUgYm94IGF0
IHRoZSB0b3Agb2YgdGhlIHNjcmVlbiB0byBpbmZvcm0gdGhlIHVzZXIgb2YKICog
c29tZXRoaW5nLCByZXBsYWNpbmcgYW55IHByZWV4aXN0aW5nIG1lc3NhZ2UuCiAq
CiAqIEBwYXJhbSBTdHJpbmcgLW9yLSBEb20gT2JqZWN0IG1lc3NhZ2UgSFRNTCB0
byBiZSBwdXQgaW5zaWRlIHRoZSByaWdodCBkaXYKICogQHBhcmFtIFN0cmluZyBj
bGFzc05hbWUgICBVc2VkIGluIGFkZGluZyBhIGNsYXNzOyBzaG91bGQgYmUgZGlm
ZmVyZW50IGZvciBlYWNoCiAqICAgY2FsbCB0byBhbGxvdyBDU1MvSlMgdG8gaGlk
ZSBkaWZmZXJlbnQgYm94ZXMuICBudWxsID0gbm8gY2xhc3MgdXNlZC4KICogQHJl
dHVybiBCb29sZWFuICAgICAgIFRydWUgb24gc3VjY2VzcywgZmFsc2Ugb24gZmFp
bHVyZQogKi8KZnVuY3Rpb24ganNNc2coIG1lc3NhZ2UsIGNsYXNzTmFtZSApIHsK
CWlmICggIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkICkgewoJCXJldHVybiBmYWxz
ZTsKCX0KCS8vIFdlIHNwZWNpYWwtY2FzZSBza2luIHN0cnVjdHVyZXMgcHJvdmlk
ZWQgYnkgdGhlIHNvZnR3YXJlLiAgU2tpbnMgdGhhdAoJLy8gY2hvb3NlIHRvIGFi
YW5kb24gb3Igc2lnbmlmaWNhbnRseSBtb2RpZnkgb3VyIGZvcm1hdHRpbmcgY2Fu
IGp1c3QgZGVmaW5lCgkvLyBhbiBtdy1qcy1tZXNzYWdlIGRpdiB0byBzdGFydCB3
aXRoLgoJdmFyIG1lc3NhZ2VEaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgg
J213LWpzLW1lc3NhZ2UnICk7CglpZiAoICFtZXNzYWdlRGl2ICkgewoJCW1lc3Nh
Z2VEaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAnZGl2JyApOwoJCWlmICgg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoICdjb2x1bW4tY29udGVudCcgKQoJCSYm
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCAnY29udGVudCcgKSApIHsKCQkJLy8g
TW9ub0Jvb2ssIHByZXN1bWFibHkKCQkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ICdjb250ZW50JyApLmluc2VydEJlZm9yZSgKCQkJCW1lc3NhZ2VEaXYsCgkJCQlk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCggJ2NvbnRlbnQnICkuZmlyc3RDaGlsZAoJ
CQkpOwoJCX0gZWxzZSBpZiAoIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCAnY29u
dGVudCcgKQoJCSYmIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCAnYXJ0aWNsZScg
KSApIHsKCQkJLy8gTm9uLU1vbm9ib29rIGJ1dCBzdGlsbCByZWNvZ25pemFibGUg
KG9sZC1zdHlsZSkKCQkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoICdhcnRpY2xl
JykuaW5zZXJ0QmVmb3JlKAoJCQkJbWVzc2FnZURpdiwKCQkJCWRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCAnYXJ0aWNsZScgKS5maXJzdENoaWxkCgkJCSk7CgkJfSBl
bHNlIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCX0KCgltZXNzYWdlRGl2LnNldEF0
dHJpYnV0ZSggJ2lkJywgJ213LWpzLW1lc3NhZ2UnICk7CgltZXNzYWdlRGl2LnN0
eWxlLmRpc3BsYXkgPSAnYmxvY2snOwoJaWYoIGNsYXNzTmFtZSApIHsKCQltZXNz
YWdlRGl2LnNldEF0dHJpYnV0ZSggJ2NsYXNzJywgJ213LWpzLW1lc3NhZ2UtJyAr
IGNsYXNzTmFtZSApOwoJfQoKCWlmICggdHlwZW9mIG1lc3NhZ2UgPT09ICdvYmpl
Y3QnICkgewoJCXdoaWxlICggbWVzc2FnZURpdi5oYXNDaGlsZE5vZGVzKCkgKSB7
IC8vIFJlbW92ZSBvbGQgY29udGVudAoJCQltZXNzYWdlRGl2LnJlbW92ZUNoaWxk
KCBtZXNzYWdlRGl2LmZpcnN0Q2hpbGQgKTsKCQl9CgkJbWVzc2FnZURpdi5hcHBl
bmRDaGlsZCggbWVzc2FnZSApOyAvLyBBcHBlbmQgbmV3IGNvbnRlbnQKCX0gZWxz
ZSB7CgkJbWVzc2FnZURpdi5pbm5lckhUTUwgPSBtZXNzYWdlOwoJfQoJcmV0dXJu
IHRydWU7Cn0KCi8qKgogKiBJbmplY3QgYSBjdXRlIGxpdHRsZSBwcm9ncmVzcyBz
cGlubmVyIGFmdGVyIHRoZSBzcGVjaWZpZWQgZWxlbWVudAogKgogKiBAcGFyYW0g
ZWxlbWVudCBFbGVtZW50IHRvIGluamVjdCBhZnRlcgogKiBAcGFyYW0gaWQgSWRl
bnRpZmllciBzdHJpbmcgKGZvciB1c2Ugd2l0aCByZW1vdmVTcGlubmVyKCksIGJl
bG93KQogKi8KZnVuY3Rpb24gaW5qZWN0U3Bpbm5lciggZWxlbWVudCwgaWQgKSB7
Cgl2YXIgc3Bpbm5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICdpbWcnICk7
CglzcGlubmVyLmlkID0gJ213LXNwaW5uZXItJyArIGlkOwoJc3Bpbm5lci5zcmMg
PSBzdHlsZXBhdGggKyAnL2NvbW1vbi9pbWFnZXMvc3Bpbm5lci5naWYnOwoJc3Bp
bm5lci5hbHQgPSBzcGlubmVyLnRpdGxlID0gJy4uLic7CglpZiggZWxlbWVudC5u
ZXh0U2libGluZyApIHsKCQllbGVtZW50LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3Jl
KCBzcGlubmVyLCBlbGVtZW50Lm5leHRTaWJsaW5nICk7Cgl9IGVsc2UgewoJCWVs
ZW1lbnQucGFyZW50Tm9kZS5hcHBlbmRDaGlsZCggc3Bpbm5lciApOwoJfQp9Cgov
KioKICogUmVtb3ZlIGEgcHJvZ3Jlc3Mgc3Bpbm5lciBhZGRlZCB3aXRoIGluamVj
dFNwaW5uZXIoKQogKgogKiBAcGFyYW0gaWQgSWRlbnRpZmllciBzdHJpbmcKICov
CmZ1bmN0aW9uIHJlbW92ZVNwaW5uZXIoIGlkICkgewoJdmFyIHNwaW5uZXIgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCggJ213LXNwaW5uZXItJyArIGlkICk7Cglp
Ziggc3Bpbm5lciApIHsKCQlzcGlubmVyLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQo
IHNwaW5uZXIgKTsKCX0KfQoKZnVuY3Rpb24gcnVuT25sb2FkSG9vaygpIHsKCS8v
IGRvbid0IHJ1biBhbnl0aGluZyBiZWxvdyB0aGlzIGZvciBub24tZG9tIGJyb3dz
ZXJzCglpZiAoIGRvbmVPbmxvYWRIb29rIHx8ICEoIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkICYmIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lICkgKSB7CgkJ
cmV0dXJuOwoJfQoKCS8vIHNldCB0aGlzIGJlZm9yZSBydW5uaW5nIGFueSBob29r
cywgc2luY2UgYW55IGVycm9ycyBiZWxvdwoJLy8gbWlnaHQgY2F1c2UgdGhlIGZ1
bmN0aW9uIHRvIHRlcm1pbmF0ZSBwcmVtYXR1cmVseQoJZG9uZU9ubG9hZEhvb2sg
PSB0cnVlOwoKCXVwZGF0ZVRvb2x0aXBBY2Nlc3NLZXlzKCBudWxsICk7CglzZXR1
cENoZWNrYm94U2hpZnRDbGljaygpOwoJc29ydGFibGVzX2luaXQoKTsKCgkvLyBS
dW4gYW55IGFkZGVkLW9uIGZ1bmN0aW9ucwoJZm9yICggdmFyIGkgPSAwOyBpIDwg
b25sb2FkRnVuY3RzLmxlbmd0aDsgaSsrICkgewoJCW9ubG9hZEZ1bmN0c1tpXSgp
OwoJfQp9CgovKioKICogQWRkIGFuIGV2ZW50IGhhbmRsZXIgdG8gYW4gZWxlbWVu
dAogKgogKiBAcGFyYW0gRWxlbWVudCBlbGVtZW50IEVsZW1lbnQgdG8gYWRkIGhh
bmRsZXIgdG8KICogQHBhcmFtIFN0cmluZyBhdHRhY2ggRXZlbnQgdG8gYXR0YWNo
IHRvCiAqIEBwYXJhbSBjYWxsYWJsZSBoYW5kbGVyIEV2ZW50IGhhbmRsZXIgY2Fs
bGJhY2sKICovCmZ1bmN0aW9uIGFkZEhhbmRsZXIoIGVsZW1lbnQsIGF0dGFjaCwg
aGFuZGxlciApIHsKCWlmKCB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lciApIHsKCQll
bGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoIGF0dGFjaCwgaGFuZGxlciwgZmFsc2Ug
KTsKCX0gZWxzZSBpZiggd2luZG93LmF0dGFjaEV2ZW50ICkgewoJCWVsZW1lbnQu
YXR0YWNoRXZlbnQoICdvbicgKyBhdHRhY2gsIGhhbmRsZXIgKTsKCX0KfQoKLyoq
CiAqIEFkZCBhIGNsaWNrIGV2ZW50IGhhbmRsZXIgdG8gYW4gZWxlbWVudAogKgog
KiBAcGFyYW0gRWxlbWVudCBlbGVtZW50IEVsZW1lbnQgdG8gYWRkIGhhbmRsZXIg
dG8KICogQHBhcmFtIGNhbGxhYmxlIGhhbmRsZXIgRXZlbnQgaGFuZGxlciBjYWxs
YmFjawogKi8KZnVuY3Rpb24gYWRkQ2xpY2tIYW5kbGVyKCBlbGVtZW50LCBoYW5k
bGVyICkgewoJYWRkSGFuZGxlciggZWxlbWVudCwgJ2NsaWNrJywgaGFuZGxlciAp
Owp9CgovKioKICogUmVtb3ZlcyBhbiBldmVudCBoYW5kbGVyIGZyb20gYW4gZWxl
bWVudAogKgogKiBAcGFyYW0gRWxlbWVudCBlbGVtZW50IEVsZW1lbnQgdG8gcmVt
b3ZlIGhhbmRsZXIgZnJvbQogKiBAcGFyYW0gU3RyaW5nIHJlbW92ZSBFdmVudCB0
byByZW1vdmUKICogQHBhcmFtIGNhbGxhYmxlIGhhbmRsZXIgRXZlbnQgaGFuZGxl
ciBjYWxsYmFjayB0byByZW1vdmUKICovCmZ1bmN0aW9uIHJlbW92ZUhhbmRsZXIo
IGVsZW1lbnQsIHJlbW92ZSwgaGFuZGxlciApIHsKCWlmKCB3aW5kb3cucmVtb3Zl
RXZlbnRMaXN0ZW5lciApIHsKCQllbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIo
IHJlbW92ZSwgaGFuZGxlciwgZmFsc2UgKTsKCX0gZWxzZSBpZiggd2luZG93LmRl
dGFjaEV2ZW50ICkgewoJCWVsZW1lbnQuZGV0YWNoRXZlbnQoICdvbicgKyByZW1v
dmUsIGhhbmRsZXIgKTsKCX0KfQovLyBub3RlOiBhbGwgc2tpbnMgc2hvdWxkIGNh
bGwgcnVuT25sb2FkSG9vaygpIGF0IHRoZSBlbmQgb2YgaHRtbCBvdXRwdXQsCi8v
ICAgICAgc28gdGhlIGJlbG93IHNob3VsZCBiZSByZWR1bmRhbnQuIEl0J3MgdGhl
cmUganVzdCBpbiBjYXNlLgpob29rRXZlbnQoICdsb2FkJywgcnVuT25sb2FkSG9v
ayApOwoKaWYgKCBpZTZfYnVncyApIHsKCWltcG9ydFNjcmlwdFVSSSggc3R5bGVw
YXRoICsgJy9jb21tb24vSUVGaXhlcy5qcycgKTsKfQoKLy8gRm9yIGZ1dHVyZSB1
c2UuCm13ID0ge307CgoK
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=jquery.min.js
Content-Type: application/x-javascript; charset=UTF-8; name=jquery.min.js
Content-Location: http://bits.wikimedia.org/skins-1.5/common/jquery.min.js?283r
Content-Transfer-Encoding: Base64
CihmdW5jdGlvbigpe3Zhcgp3aW5kb3c9dGhpcyx1bmRlZmluZWQsX2pRdWVyeT13
aW5kb3cualF1ZXJ5LF8kPXdpbmRvdy4kLGpRdWVyeT13aW5kb3cualF1ZXJ5PXdp
bmRvdy4kPWZ1bmN0aW9uKHNlbGVjdG9yLGNvbnRleHQpe3JldHVybiBuZXcgalF1
ZXJ5LmZuLmluaXQoc2VsZWN0b3IsY29udGV4dCk7fSxxdWlja0V4cHI9L15bXjxd
Kig8KC58XHMpKz4pW14+XSokfF4jKFtcdy1dKykkLyxpc1NpbXBsZT0vXi5bXjoj
XFtcLixdKiQvO2pRdWVyeS5mbj1qUXVlcnkucHJvdG90eXBlPXtpbml0OmZ1bmN0
aW9uKHNlbGVjdG9yLGNvbnRleHQpe3NlbGVjdG9yPXNlbGVjdG9yfHxkb2N1bWVu
dDtpZihzZWxlY3Rvci5ub2RlVHlwZSl7dGhpc1swXT1zZWxlY3Rvcjt0aGlzLmxl
bmd0aD0xO3RoaXMuY29udGV4dD1zZWxlY3RvcjtyZXR1cm4gdGhpczt9CmlmKHR5
cGVvZiBzZWxlY3Rvcj09PSJzdHJpbmciKXt2YXIgbWF0Y2g9cXVpY2tFeHByLmV4
ZWMoc2VsZWN0b3IpO2lmKG1hdGNoJiYobWF0Y2hbMV18fCFjb250ZXh0KSl7aWYo
bWF0Y2hbMV0pCnNlbGVjdG9yPWpRdWVyeS5jbGVhbihbbWF0Y2hbMV1dLGNvbnRl
eHQpO2Vsc2V7dmFyIGVsZW09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobWF0Y2hb
M10pO2lmKGVsZW0mJmVsZW0uaWQhPW1hdGNoWzNdKQpyZXR1cm4galF1ZXJ5KCku
ZmluZChzZWxlY3Rvcik7dmFyIHJldD1qUXVlcnkoZWxlbXx8W10pO3JldC5jb250
ZXh0PWRvY3VtZW50O3JldC5zZWxlY3Rvcj1zZWxlY3RvcjtyZXR1cm4gcmV0O319
ZWxzZQpyZXR1cm4galF1ZXJ5KGNvbnRleHQpLmZpbmQoc2VsZWN0b3IpO31lbHNl
IGlmKGpRdWVyeS5pc0Z1bmN0aW9uKHNlbGVjdG9yKSkKcmV0dXJuIGpRdWVyeShk
b2N1bWVudCkucmVhZHkoc2VsZWN0b3IpO2lmKHNlbGVjdG9yLnNlbGVjdG9yJiZz
ZWxlY3Rvci5jb250ZXh0KXt0aGlzLnNlbGVjdG9yPXNlbGVjdG9yLnNlbGVjdG9y
O3RoaXMuY29udGV4dD1zZWxlY3Rvci5jb250ZXh0O30KcmV0dXJuIHRoaXMuc2V0
QXJyYXkoalF1ZXJ5LmlzQXJyYXkoc2VsZWN0b3IpP3NlbGVjdG9yOmpRdWVyeS5t
YWtlQXJyYXkoc2VsZWN0b3IpKTt9LHNlbGVjdG9yOiIiLGpxdWVyeToiMS4zLjIi
LHNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sZW5ndGg7fSxnZXQ6ZnVuY3Rp
b24obnVtKXtyZXR1cm4gbnVtPT09dW5kZWZpbmVkP0FycmF5LnByb3RvdHlwZS5z
bGljZS5jYWxsKHRoaXMpOnRoaXNbbnVtXTt9LHB1c2hTdGFjazpmdW5jdGlvbihl
bGVtcyxuYW1lLHNlbGVjdG9yKXt2YXIgcmV0PWpRdWVyeShlbGVtcyk7cmV0LnBy
ZXZPYmplY3Q9dGhpcztyZXQuY29udGV4dD10aGlzLmNvbnRleHQ7aWYobmFtZT09
PSJmaW5kIikKcmV0LnNlbGVjdG9yPXRoaXMuc2VsZWN0b3IrKHRoaXMuc2VsZWN0
b3I/IiAiOiIiKStzZWxlY3RvcjtlbHNlIGlmKG5hbWUpCnJldC5zZWxlY3Rvcj10
aGlzLnNlbGVjdG9yKyIuIituYW1lKyIoIitzZWxlY3RvcisiKSI7cmV0dXJuIHJl
dDt9LHNldEFycmF5OmZ1bmN0aW9uKGVsZW1zKXt0aGlzLmxlbmd0aD0wO0FycmF5
LnByb3RvdHlwZS5wdXNoLmFwcGx5KHRoaXMsZWxlbXMpO3JldHVybiB0aGlzO30s
ZWFjaDpmdW5jdGlvbihjYWxsYmFjayxhcmdzKXtyZXR1cm4galF1ZXJ5LmVhY2go
dGhpcyxjYWxsYmFjayxhcmdzKTt9LGluZGV4OmZ1bmN0aW9uKGVsZW0pe3JldHVy
biBqUXVlcnkuaW5BcnJheShlbGVtJiZlbGVtLmpxdWVyeT9lbGVtWzBdOmVsZW0s
dGhpcyk7fSxhdHRyOmZ1bmN0aW9uKG5hbWUsdmFsdWUsdHlwZSl7dmFyIG9wdGlv
bnM9bmFtZTtpZih0eXBlb2YgbmFtZT09PSJzdHJpbmciKQppZih2YWx1ZT09PXVu
ZGVmaW5lZCkKcmV0dXJuIHRoaXNbMF0mJmpRdWVyeVt0eXBlfHwiYXR0ciJdKHRo
aXNbMF0sbmFtZSk7ZWxzZXtvcHRpb25zPXt9O29wdGlvbnNbbmFtZV09dmFsdWU7
fQpyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGkpe2ZvcihuYW1lIGluIG9wdGlv
bnMpCmpRdWVyeS5hdHRyKHR5cGU/dGhpcy5zdHlsZTp0aGlzLG5hbWUsalF1ZXJ5
LnByb3AodGhpcyxvcHRpb25zW25hbWVdLHR5cGUsaSxuYW1lKSk7fSk7fSxjc3M6
ZnVuY3Rpb24oa2V5LHZhbHVlKXtpZigoa2V5PT0nd2lkdGgnfHxrZXk9PSdoZWln
aHQnKSYmcGFyc2VGbG9hdCh2YWx1ZSk8MCkKdmFsdWU9dW5kZWZpbmVkO3JldHVy
biB0aGlzLmF0dHIoa2V5LHZhbHVlLCJjdXJDU1MiKTt9LHRleHQ6ZnVuY3Rpb24o
dGV4dCl7aWYodHlwZW9mIHRleHQhPT0ib2JqZWN0IiYmdGV4dCE9bnVsbCkKcmV0
dXJuIHRoaXMuZW1wdHkoKS5hcHBlbmQoKHRoaXNbMF0mJnRoaXNbMF0ub3duZXJE
b2N1bWVudHx8ZG9jdW1lbnQpLmNyZWF0ZVRleHROb2RlKHRleHQpKTt2YXIgcmV0
PSIiO2pRdWVyeS5lYWNoKHRleHR8fHRoaXMsZnVuY3Rpb24oKXtqUXVlcnkuZWFj
aCh0aGlzLmNoaWxkTm9kZXMsZnVuY3Rpb24oKXtpZih0aGlzLm5vZGVUeXBlIT04
KQpyZXQrPXRoaXMubm9kZVR5cGUhPTE/dGhpcy5ub2RlVmFsdWU6alF1ZXJ5LmZu
LnRleHQoW3RoaXNdKTt9KTt9KTtyZXR1cm4gcmV0O30sd3JhcEFsbDpmdW5jdGlv
bihodG1sKXtpZih0aGlzWzBdKXt2YXIgd3JhcD1qUXVlcnkoaHRtbCx0aGlzWzBd
Lm93bmVyRG9jdW1lbnQpLmNsb25lKCk7aWYodGhpc1swXS5wYXJlbnROb2RlKQp3
cmFwLmluc2VydEJlZm9yZSh0aGlzWzBdKTt3cmFwLm1hcChmdW5jdGlvbigpe3Zh
ciBlbGVtPXRoaXM7d2hpbGUoZWxlbS5maXJzdENoaWxkKQplbGVtPWVsZW0uZmly
c3RDaGlsZDtyZXR1cm4gZWxlbTt9KS5hcHBlbmQodGhpcyk7fQpyZXR1cm4gdGhp
czt9LHdyYXBJbm5lcjpmdW5jdGlvbihodG1sKXtyZXR1cm4gdGhpcy5lYWNoKGZ1
bmN0aW9uKCl7alF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkud3JhcEFsbChodG1sKTt9
KTt9LHdyYXA6ZnVuY3Rpb24oaHRtbCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlv
bigpe2pRdWVyeSh0aGlzKS53cmFwQWxsKGh0bWwpO30pO30sYXBwZW5kOmZ1bmN0
aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLHRydWUsZnVuY3Rp
b24oZWxlbSl7aWYodGhpcy5ub2RlVHlwZT09MSkKdGhpcy5hcHBlbmRDaGlsZChl
bGVtKTt9KTt9LHByZXBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kb21NYW5p
cChhcmd1bWVudHMsdHJ1ZSxmdW5jdGlvbihlbGVtKXtpZih0aGlzLm5vZGVUeXBl
PT0xKQp0aGlzLmluc2VydEJlZm9yZShlbGVtLHRoaXMuZmlyc3RDaGlsZCk7fSk7
fSxiZWZvcmU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kb21NYW5pcChhcmd1bWVu
dHMsZmFsc2UsZnVuY3Rpb24oZWxlbSl7dGhpcy5wYXJlbnROb2RlLmluc2VydEJl
Zm9yZShlbGVtLHRoaXMpO30pO30sYWZ0ZXI6ZnVuY3Rpb24oKXtyZXR1cm4gdGhp
cy5kb21NYW5pcChhcmd1bWVudHMsZmFsc2UsZnVuY3Rpb24oZWxlbSl7dGhpcy5w
YXJlbnROb2RlLmluc2VydEJlZm9yZShlbGVtLHRoaXMubmV4dFNpYmxpbmcpO30p
O30sZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHJldk9iamVjdHx8alF1ZXJ5
KFtdKTt9LHB1c2g6W10ucHVzaCxzb3J0OltdLnNvcnQsc3BsaWNlOltdLnNwbGlj
ZSxmaW5kOmZ1bmN0aW9uKHNlbGVjdG9yKXtpZih0aGlzLmxlbmd0aD09PTEpe3Zh
ciByZXQ9dGhpcy5wdXNoU3RhY2soW10sImZpbmQiLHNlbGVjdG9yKTtyZXQubGVu
Z3RoPTA7alF1ZXJ5LmZpbmQoc2VsZWN0b3IsdGhpc1swXSxyZXQpO3JldHVybiBy
ZXQ7fWVsc2V7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGpRdWVyeS51bmlxdWUoalF1
ZXJ5Lm1hcCh0aGlzLGZ1bmN0aW9uKGVsZW0pe3JldHVybiBqUXVlcnkuZmluZChz
ZWxlY3RvcixlbGVtKTt9KSksImZpbmQiLHNlbGVjdG9yKTt9fSxjbG9uZTpmdW5j
dGlvbihldmVudHMpe3ZhciByZXQ9dGhpcy5tYXAoZnVuY3Rpb24oKXtpZighalF1
ZXJ5LnN1cHBvcnQubm9DbG9uZUV2ZW50JiYhalF1ZXJ5LmlzWE1MRG9jKHRoaXMp
KXt2YXIgaHRtbD10aGlzLm91dGVySFRNTDtpZighaHRtbCl7dmFyIGRpdj10aGlz
Lm93bmVyRG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZGl2LmFwcGVuZENo
aWxkKHRoaXMuY2xvbmVOb2RlKHRydWUpKTtodG1sPWRpdi5pbm5lckhUTUw7fQpy
ZXR1cm4galF1ZXJ5LmNsZWFuKFtodG1sLnJlcGxhY2UoLyBqUXVlcnlcZCs9Iig/
OlxkK3xudWxsKSIvZywiIikucmVwbGFjZSgvXlxzKi8sIiIpXSlbMF07fWVsc2UK
cmV0dXJuIHRoaXMuY2xvbmVOb2RlKHRydWUpO30pO2lmKGV2ZW50cz09PXRydWUp
e3ZhciBvcmlnPXRoaXMuZmluZCgiKiIpLmFuZFNlbGYoKSxpPTA7cmV0LmZpbmQo
IioiKS5hbmRTZWxmKCkuZWFjaChmdW5jdGlvbigpe2lmKHRoaXMubm9kZU5hbWUh
PT1vcmlnW2ldLm5vZGVOYW1lKQpyZXR1cm47dmFyIGV2ZW50cz1qUXVlcnkuZGF0
YShvcmlnW2ldLCJldmVudHMiKTtmb3IodmFyIHR5cGUgaW4gZXZlbnRzKXtmb3Io
dmFyIGhhbmRsZXIgaW4gZXZlbnRzW3R5cGVdKXtqUXVlcnkuZXZlbnQuYWRkKHRo
aXMsdHlwZSxldmVudHNbdHlwZV1baGFuZGxlcl0sZXZlbnRzW3R5cGVdW2hhbmRs
ZXJdLmRhdGEpO319CmkrKzt9KTt9CnJldHVybiByZXQ7fSxmaWx0ZXI6ZnVuY3Rp
b24oc2VsZWN0b3Ipe3JldHVybiB0aGlzLnB1c2hTdGFjayhqUXVlcnkuaXNGdW5j
dGlvbihzZWxlY3RvcikmJmpRdWVyeS5ncmVwKHRoaXMsZnVuY3Rpb24oZWxlbSxp
KXtyZXR1cm4gc2VsZWN0b3IuY2FsbChlbGVtLGkpO30pfHxqUXVlcnkubXVsdGlG
aWx0ZXIoc2VsZWN0b3IsalF1ZXJ5LmdyZXAodGhpcyxmdW5jdGlvbihlbGVtKXty
ZXR1cm4gZWxlbS5ub2RlVHlwZT09PTE7fSkpLCJmaWx0ZXIiLHNlbGVjdG9yKTt9
LGNsb3Nlc3Q6ZnVuY3Rpb24oc2VsZWN0b3Ipe3ZhciBwb3M9alF1ZXJ5LmV4cHIu
bWF0Y2guUE9TLnRlc3Qoc2VsZWN0b3IpP2pRdWVyeShzZWxlY3Rvcik6bnVsbCxj
bG9zZXI9MDtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgY3VyPXRoaXM7
d2hpbGUoY3VyJiZjdXIub3duZXJEb2N1bWVudCl7aWYocG9zP3Bvcy5pbmRleChj
dXIpPi0xOmpRdWVyeShjdXIpLmlzKHNlbGVjdG9yKSl7alF1ZXJ5LmRhdGEoY3Vy
LCJjbG9zZXN0IixjbG9zZXIpO3JldHVybiBjdXI7fQpjdXI9Y3VyLnBhcmVudE5v
ZGU7Y2xvc2VyKys7fX0pO30sbm90OmZ1bmN0aW9uKHNlbGVjdG9yKXtpZih0eXBl
b2Ygc2VsZWN0b3I9PT0ic3RyaW5nIikKaWYoaXNTaW1wbGUudGVzdChzZWxlY3Rv
cikpCnJldHVybiB0aGlzLnB1c2hTdGFjayhqUXVlcnkubXVsdGlGaWx0ZXIoc2Vs
ZWN0b3IsdGhpcyx0cnVlKSwibm90IixzZWxlY3Rvcik7ZWxzZQpzZWxlY3Rvcj1q
UXVlcnkubXVsdGlGaWx0ZXIoc2VsZWN0b3IsdGhpcyk7dmFyIGlzQXJyYXlMaWtl
PXNlbGVjdG9yLmxlbmd0aCYmc2VsZWN0b3Jbc2VsZWN0b3IubGVuZ3RoLTFdIT09
dW5kZWZpbmVkJiYhc2VsZWN0b3Iubm9kZVR5cGU7cmV0dXJuIHRoaXMuZmlsdGVy
KGZ1bmN0aW9uKCl7cmV0dXJuIGlzQXJyYXlMaWtlP2pRdWVyeS5pbkFycmF5KHRo
aXMsc2VsZWN0b3IpPDA6dGhpcyE9c2VsZWN0b3I7fSk7fSxhZGQ6ZnVuY3Rpb24o
c2VsZWN0b3Ipe3JldHVybiB0aGlzLnB1c2hTdGFjayhqUXVlcnkudW5pcXVlKGpR
dWVyeS5tZXJnZSh0aGlzLmdldCgpLHR5cGVvZiBzZWxlY3Rvcj09PSJzdHJpbmci
P2pRdWVyeShzZWxlY3Rvcik6alF1ZXJ5Lm1ha2VBcnJheShzZWxlY3RvcikpKSk7
fSxpczpmdW5jdGlvbihzZWxlY3Rvcil7cmV0dXJuISFzZWxlY3RvciYmalF1ZXJ5
Lm11bHRpRmlsdGVyKHNlbGVjdG9yLHRoaXMpLmxlbmd0aD4wO30saGFzQ2xhc3M6
ZnVuY3Rpb24oc2VsZWN0b3Ipe3JldHVybiEhc2VsZWN0b3ImJnRoaXMuaXMoIi4i
K3NlbGVjdG9yKTt9LHZhbDpmdW5jdGlvbih2YWx1ZSl7aWYodmFsdWU9PT11bmRl
ZmluZWQpe3ZhciBlbGVtPXRoaXNbMF07aWYoZWxlbSl7aWYoalF1ZXJ5Lm5vZGVO
YW1lKGVsZW0sJ29wdGlvbicpKQpyZXR1cm4oZWxlbS5hdHRyaWJ1dGVzLnZhbHVl
fHx7fSkuc3BlY2lmaWVkP2VsZW0udmFsdWU6ZWxlbS50ZXh0O2lmKGpRdWVyeS5u
b2RlTmFtZShlbGVtLCJzZWxlY3QiKSl7dmFyIGluZGV4PWVsZW0uc2VsZWN0ZWRJ
bmRleCx2YWx1ZXM9W10sb3B0aW9ucz1lbGVtLm9wdGlvbnMsb25lPWVsZW0udHlw
ZT09InNlbGVjdC1vbmUiO2lmKGluZGV4PDApCnJldHVybiBudWxsO2Zvcih2YXIg
aT1vbmU/aW5kZXg6MCxtYXg9b25lP2luZGV4KzE6b3B0aW9ucy5sZW5ndGg7aTxt
YXg7aSsrKXt2YXIgb3B0aW9uPW9wdGlvbnNbaV07aWYob3B0aW9uLnNlbGVjdGVk
KXt2YWx1ZT1qUXVlcnkob3B0aW9uKS52YWwoKTtpZihvbmUpCnJldHVybiB2YWx1
ZTt2YWx1ZXMucHVzaCh2YWx1ZSk7fX0KcmV0dXJuIHZhbHVlczt9CnJldHVybihl
bGVtLnZhbHVlfHwiIikucmVwbGFjZSgvXHIvZywiIik7fQpyZXR1cm4gdW5kZWZp
bmVkO30KaWYodHlwZW9mIHZhbHVlPT09Im51bWJlciIpCnZhbHVlKz0nJztyZXR1
cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7aWYodGhpcy5ub2RlVHlwZSE9MSkKcmV0
dXJuO2lmKGpRdWVyeS5pc0FycmF5KHZhbHVlKSYmL3JhZGlvfGNoZWNrYm94Ly50
ZXN0KHRoaXMudHlwZSkpCnRoaXMuY2hlY2tlZD0oalF1ZXJ5LmluQXJyYXkodGhp
cy52YWx1ZSx2YWx1ZSk+PTB8fGpRdWVyeS5pbkFycmF5KHRoaXMubmFtZSx2YWx1
ZSk+PTApO2Vsc2UgaWYoalF1ZXJ5Lm5vZGVOYW1lKHRoaXMsInNlbGVjdCIpKXt2
YXIgdmFsdWVzPWpRdWVyeS5tYWtlQXJyYXkodmFsdWUpO2pRdWVyeSgib3B0aW9u
Iix0aGlzKS5lYWNoKGZ1bmN0aW9uKCl7dGhpcy5zZWxlY3RlZD0oalF1ZXJ5Lmlu
QXJyYXkodGhpcy52YWx1ZSx2YWx1ZXMpPj0wfHxqUXVlcnkuaW5BcnJheSh0aGlz
LnRleHQsdmFsdWVzKT49MCk7fSk7aWYoIXZhbHVlcy5sZW5ndGgpCnRoaXMuc2Vs
ZWN0ZWRJbmRleD0tMTt9ZWxzZQp0aGlzLnZhbHVlPXZhbHVlO30pO30saHRtbDpm
dW5jdGlvbih2YWx1ZSl7cmV0dXJuIHZhbHVlPT09dW5kZWZpbmVkPyh0aGlzWzBd
P3RoaXNbMF0uaW5uZXJIVE1MLnJlcGxhY2UoLyBqUXVlcnlcZCs9Iig/OlxkK3xu
dWxsKSIvZywiIik6bnVsbCk6dGhpcy5lbXB0eSgpLmFwcGVuZCh2YWx1ZSk7fSxy
ZXBsYWNlV2l0aDpmdW5jdGlvbih2YWx1ZSl7cmV0dXJuIHRoaXMuYWZ0ZXIodmFs
dWUpLnJlbW92ZSgpO30sZXE6ZnVuY3Rpb24oaSl7cmV0dXJuIHRoaXMuc2xpY2Uo
aSwraSsxKTt9LHNsaWNlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNr
KEFycmF5LnByb3RvdHlwZS5zbGljZS5hcHBseSh0aGlzLGFyZ3VtZW50cyksInNs
aWNlIixBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpLmpvaW4o
IiwiKSk7fSxtYXA6ZnVuY3Rpb24oY2FsbGJhY2spe3JldHVybiB0aGlzLnB1c2hT
dGFjayhqUXVlcnkubWFwKHRoaXMsZnVuY3Rpb24oZWxlbSxpKXtyZXR1cm4gY2Fs
bGJhY2suY2FsbChlbGVtLGksZWxlbSk7fSkpO30sYW5kU2VsZjpmdW5jdGlvbigp
e3JldHVybiB0aGlzLmFkZCh0aGlzLnByZXZPYmplY3QpO30sZG9tTWFuaXA6ZnVu
Y3Rpb24oYXJncyx0YWJsZSxjYWxsYmFjayl7aWYodGhpc1swXSl7dmFyIGZyYWdt
ZW50PSh0aGlzWzBdLm93bmVyRG9jdW1lbnR8fHRoaXNbMF0pLmNyZWF0ZURvY3Vt
ZW50RnJhZ21lbnQoKSxzY3JpcHRzPWpRdWVyeS5jbGVhbihhcmdzLCh0aGlzWzBd
Lm93bmVyRG9jdW1lbnR8fHRoaXNbMF0pLGZyYWdtZW50KSxmaXJzdD1mcmFnbWVu
dC5maXJzdENoaWxkO2lmKGZpcnN0KQpmb3IodmFyIGk9MCxsPXRoaXMubGVuZ3Ro
O2k8bDtpKyspCmNhbGxiYWNrLmNhbGwocm9vdCh0aGlzW2ldLGZpcnN0KSx0aGlz
Lmxlbmd0aD4xfHxpPjA/ZnJhZ21lbnQuY2xvbmVOb2RlKHRydWUpOmZyYWdtZW50
KTtpZihzY3JpcHRzKQpqUXVlcnkuZWFjaChzY3JpcHRzLGV2YWxTY3JpcHQpO30K
cmV0dXJuIHRoaXM7ZnVuY3Rpb24gcm9vdChlbGVtLGN1cil7cmV0dXJuIHRhYmxl
JiZqUXVlcnkubm9kZU5hbWUoZWxlbSwidGFibGUiKSYmalF1ZXJ5Lm5vZGVOYW1l
KGN1ciwidHIiKT8oZWxlbS5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGJvZHkiKVsw
XXx8ZWxlbS5hcHBlbmRDaGlsZChlbGVtLm93bmVyRG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgidGJvZHkiKSkpOmVsZW07fX19O2pRdWVyeS5mbi5pbml0LnByb3RvdHlw
ZT1qUXVlcnkuZm47ZnVuY3Rpb24gZXZhbFNjcmlwdChpLGVsZW0pe2lmKGVsZW0u
c3JjKQpqUXVlcnkuYWpheCh7dXJsOmVsZW0uc3JjLGFzeW5jOmZhbHNlLGRhdGFU
eXBlOiJzY3JpcHQifSk7ZWxzZQpqUXVlcnkuZ2xvYmFsRXZhbChlbGVtLnRleHR8
fGVsZW0udGV4dENvbnRlbnR8fGVsZW0uaW5uZXJIVE1MfHwiIik7aWYoZWxlbS5w
YXJlbnROb2RlKQplbGVtLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZWxlbSk7fQpm
dW5jdGlvbiBub3coKXtyZXR1cm4rbmV3IERhdGU7fQpqUXVlcnkuZXh0ZW5kPWpR
dWVyeS5mbi5leHRlbmQ9ZnVuY3Rpb24oKXt2YXIgdGFyZ2V0PWFyZ3VtZW50c1sw
XXx8e30saT0xLGxlbmd0aD1hcmd1bWVudHMubGVuZ3RoLGRlZXA9ZmFsc2Usb3B0
aW9ucztpZih0eXBlb2YgdGFyZ2V0PT09ImJvb2xlYW4iKXtkZWVwPXRhcmdldDt0
YXJnZXQ9YXJndW1lbnRzWzFdfHx7fTtpPTI7fQppZih0eXBlb2YgdGFyZ2V0IT09
Im9iamVjdCImJiFqUXVlcnkuaXNGdW5jdGlvbih0YXJnZXQpKQp0YXJnZXQ9e307
aWYobGVuZ3RoPT1pKXt0YXJnZXQ9dGhpczstLWk7fQpmb3IoO2k8bGVuZ3RoO2kr
KykKaWYoKG9wdGlvbnM9YXJndW1lbnRzW2ldKSE9bnVsbCkKZm9yKHZhciBuYW1l
IGluIG9wdGlvbnMpe3ZhciBzcmM9dGFyZ2V0W25hbWVdLGNvcHk9b3B0aW9uc1tu
YW1lXTtpZih0YXJnZXQ9PT1jb3B5KQpjb250aW51ZTtpZihkZWVwJiZjb3B5JiZ0
eXBlb2YgY29weT09PSJvYmplY3QiJiYhY29weS5ub2RlVHlwZSkKdGFyZ2V0W25h
bWVdPWpRdWVyeS5leHRlbmQoZGVlcCxzcmN8fChjb3B5Lmxlbmd0aCE9bnVsbD9b
XTp7fSksY29weSk7ZWxzZSBpZihjb3B5IT09dW5kZWZpbmVkKQp0YXJnZXRbbmFt
ZV09Y29weTt9CnJldHVybiB0YXJnZXQ7fTt2YXIgZXhjbHVkZT0vei0/aW5kZXh8
Zm9udC0/d2VpZ2h0fG9wYWNpdHl8em9vbXxsaW5lLT9oZWlnaHQvaSxkZWZhdWx0
Vmlldz1kb2N1bWVudC5kZWZhdWx0Vmlld3x8e30sdG9TdHJpbmc9T2JqZWN0LnBy
b3RvdHlwZS50b1N0cmluZztqUXVlcnkuZXh0ZW5kKHtub0NvbmZsaWN0OmZ1bmN0
aW9uKGRlZXApe3dpbmRvdy4kPV8kO2lmKGRlZXApCndpbmRvdy5qUXVlcnk9X2pR
dWVyeTtyZXR1cm4galF1ZXJ5O30saXNGdW5jdGlvbjpmdW5jdGlvbihvYmope3Jl
dHVybiB0b1N0cmluZy5jYWxsKG9iaik9PT0iW29iamVjdCBGdW5jdGlvbl0iO30s
aXNBcnJheTpmdW5jdGlvbihvYmope3JldHVybiB0b1N0cmluZy5jYWxsKG9iaik9
PT0iW29iamVjdCBBcnJheV0iO30saXNYTUxEb2M6ZnVuY3Rpb24oZWxlbSl7cmV0
dXJuIGVsZW0ubm9kZVR5cGU9PT05JiZlbGVtLmRvY3VtZW50RWxlbWVudC5ub2Rl
TmFtZSE9PSJIVE1MInx8ISFlbGVtLm93bmVyRG9jdW1lbnQmJmpRdWVyeS5pc1hN
TERvYyhlbGVtLm93bmVyRG9jdW1lbnQpO30sZ2xvYmFsRXZhbDpmdW5jdGlvbihk
YXRhKXtpZihkYXRhJiYvXFMvLnRlc3QoZGF0YSkpe3ZhciBoZWFkPWRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF18fGRvY3VtZW50LmRvY3Vt
ZW50RWxlbWVudCxzY3JpcHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0
Iik7c2NyaXB0LnR5cGU9InRleHQvamF2YXNjcmlwdCI7aWYoalF1ZXJ5LnN1cHBv
cnQuc2NyaXB0RXZhbCkKc2NyaXB0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0
ZVRleHROb2RlKGRhdGEpKTtlbHNlCnNjcmlwdC50ZXh0PWRhdGE7aGVhZC5pbnNl
cnRCZWZvcmUoc2NyaXB0LGhlYWQuZmlyc3RDaGlsZCk7aGVhZC5yZW1vdmVDaGls
ZChzY3JpcHQpO319LG5vZGVOYW1lOmZ1bmN0aW9uKGVsZW0sbmFtZSl7cmV0dXJu
IGVsZW0ubm9kZU5hbWUmJmVsZW0ubm9kZU5hbWUudG9VcHBlckNhc2UoKT09bmFt
ZS50b1VwcGVyQ2FzZSgpO30sZWFjaDpmdW5jdGlvbihvYmplY3QsY2FsbGJhY2ss
YXJncyl7dmFyIG5hbWUsaT0wLGxlbmd0aD1vYmplY3QubGVuZ3RoO2lmKGFyZ3Mp
e2lmKGxlbmd0aD09PXVuZGVmaW5lZCl7Zm9yKG5hbWUgaW4gb2JqZWN0KQppZihj
YWxsYmFjay5hcHBseShvYmplY3RbbmFtZV0sYXJncyk9PT1mYWxzZSkKYnJlYWs7
fWVsc2UKZm9yKDtpPGxlbmd0aDspCmlmKGNhbGxiYWNrLmFwcGx5KG9iamVjdFtp
KytdLGFyZ3MpPT09ZmFsc2UpCmJyZWFrO31lbHNle2lmKGxlbmd0aD09PXVuZGVm
aW5lZCl7Zm9yKG5hbWUgaW4gb2JqZWN0KQppZihjYWxsYmFjay5jYWxsKG9iamVj
dFtuYW1lXSxuYW1lLG9iamVjdFtuYW1lXSk9PT1mYWxzZSkKYnJlYWs7fWVsc2UK
Zm9yKHZhciB2YWx1ZT1vYmplY3RbMF07aTxsZW5ndGgmJmNhbGxiYWNrLmNhbGwo
dmFsdWUsaSx2YWx1ZSkhPT1mYWxzZTt2YWx1ZT1vYmplY3RbKytpXSl7fX0KcmV0
dXJuIG9iamVjdDt9LHByb3A6ZnVuY3Rpb24oZWxlbSx2YWx1ZSx0eXBlLGksbmFt
ZSl7aWYoalF1ZXJ5LmlzRnVuY3Rpb24odmFsdWUpKQp2YWx1ZT12YWx1ZS5jYWxs
KGVsZW0saSk7cmV0dXJuIHR5cGVvZiB2YWx1ZT09PSJudW1iZXIiJiZ0eXBlPT0i
Y3VyQ1NTIiYmIWV4Y2x1ZGUudGVzdChuYW1lKT92YWx1ZSsicHgiOnZhbHVlO30s
Y2xhc3NOYW1lOnthZGQ6ZnVuY3Rpb24oZWxlbSxjbGFzc05hbWVzKXtqUXVlcnku
ZWFjaCgoY2xhc3NOYW1lc3x8IiIpLnNwbGl0KC9ccysvKSxmdW5jdGlvbihpLGNs
YXNzTmFtZSl7aWYoZWxlbS5ub2RlVHlwZT09MSYmIWpRdWVyeS5jbGFzc05hbWUu
aGFzKGVsZW0uY2xhc3NOYW1lLGNsYXNzTmFtZSkpCmVsZW0uY2xhc3NOYW1lKz0o
ZWxlbS5jbGFzc05hbWU/IiAiOiIiKStjbGFzc05hbWU7fSk7fSxyZW1vdmU6ZnVu
Y3Rpb24oZWxlbSxjbGFzc05hbWVzKXtpZihlbGVtLm5vZGVUeXBlPT0xKQplbGVt
LmNsYXNzTmFtZT1jbGFzc05hbWVzIT09dW5kZWZpbmVkP2pRdWVyeS5ncmVwKGVs
ZW0uY2xhc3NOYW1lLnNwbGl0KC9ccysvKSxmdW5jdGlvbihjbGFzc05hbWUpe3Jl
dHVybiFqUXVlcnkuY2xhc3NOYW1lLmhhcyhjbGFzc05hbWVzLGNsYXNzTmFtZSk7
fSkuam9pbigiICIpOiIiO30saGFzOmZ1bmN0aW9uKGVsZW0sY2xhc3NOYW1lKXty
ZXR1cm4gZWxlbSYmalF1ZXJ5LmluQXJyYXkoY2xhc3NOYW1lLChlbGVtLmNsYXNz
TmFtZXx8ZWxlbSkudG9TdHJpbmcoKS5zcGxpdCgvXHMrLykpPi0xO319LHN3YXA6
ZnVuY3Rpb24oZWxlbSxvcHRpb25zLGNhbGxiYWNrKXt2YXIgb2xkPXt9O2Zvcih2
YXIgbmFtZSBpbiBvcHRpb25zKXtvbGRbbmFtZV09ZWxlbS5zdHlsZVtuYW1lXTtl
bGVtLnN0eWxlW25hbWVdPW9wdGlvbnNbbmFtZV07fQpjYWxsYmFjay5jYWxsKGVs
ZW0pO2Zvcih2YXIgbmFtZSBpbiBvcHRpb25zKQplbGVtLnN0eWxlW25hbWVdPW9s
ZFtuYW1lXTt9LGNzczpmdW5jdGlvbihlbGVtLG5hbWUsZm9yY2UsZXh0cmEpe2lm
KG5hbWU9PSJ3aWR0aCJ8fG5hbWU9PSJoZWlnaHQiKXt2YXIgdmFsLHByb3BzPXtw
b3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGRlbiIsZGlzcGxheToi
YmxvY2sifSx3aGljaD1uYW1lPT0id2lkdGgiP1siTGVmdCIsIlJpZ2h0Il06WyJU
b3AiLCJCb3R0b20iXTtmdW5jdGlvbiBnZXRXSCgpe3ZhbD1uYW1lPT0id2lkdGgi
P2VsZW0ub2Zmc2V0V2lkdGg6ZWxlbS5vZmZzZXRIZWlnaHQ7aWYoZXh0cmE9PT0i
Ym9yZGVyIikKcmV0dXJuO2pRdWVyeS5lYWNoKHdoaWNoLGZ1bmN0aW9uKCl7aWYo
IWV4dHJhKQp2YWwtPXBhcnNlRmxvYXQoalF1ZXJ5LmN1ckNTUyhlbGVtLCJwYWRk
aW5nIit0aGlzLHRydWUpKXx8MDtpZihleHRyYT09PSJtYXJnaW4iKQp2YWwrPXBh
cnNlRmxvYXQoalF1ZXJ5LmN1ckNTUyhlbGVtLCJtYXJnaW4iK3RoaXMsdHJ1ZSkp
fHwwO2Vsc2UKdmFsLT1wYXJzZUZsb2F0KGpRdWVyeS5jdXJDU1MoZWxlbSwiYm9y
ZGVyIit0aGlzKyJXaWR0aCIsdHJ1ZSkpfHwwO30pO30KaWYoZWxlbS5vZmZzZXRX
aWR0aCE9PTApCmdldFdIKCk7ZWxzZQpqUXVlcnkuc3dhcChlbGVtLHByb3BzLGdl
dFdIKTtyZXR1cm4gTWF0aC5tYXgoMCxNYXRoLnJvdW5kKHZhbCkpO30KcmV0dXJu
IGpRdWVyeS5jdXJDU1MoZWxlbSxuYW1lLGZvcmNlKTt9LGN1ckNTUzpmdW5jdGlv
bihlbGVtLG5hbWUsZm9yY2Upe3ZhciByZXQsc3R5bGU9ZWxlbS5zdHlsZTtpZihu
YW1lPT0ib3BhY2l0eSImJiFqUXVlcnkuc3VwcG9ydC5vcGFjaXR5KXtyZXQ9alF1
ZXJ5LmF0dHIoc3R5bGUsIm9wYWNpdHkiKTtyZXR1cm4gcmV0PT0iIj8iMSI6cmV0
O30KaWYobmFtZS5tYXRjaCgvZmxvYXQvaSkpCm5hbWU9c3R5bGVGbG9hdDtpZigh
Zm9yY2UmJnN0eWxlJiZzdHlsZVtuYW1lXSkKcmV0PXN0eWxlW25hbWVdO2Vsc2Ug
aWYoZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZSl7aWYobmFtZS5tYXRjaCgv
ZmxvYXQvaSkpCm5hbWU9ImZsb2F0IjtuYW1lPW5hbWUucmVwbGFjZSgvKFtBLVpd
KS9nLCItJDEiKS50b0xvd2VyQ2FzZSgpO3RyeXt2YXIgY29tcHV0ZWRTdHlsZT1k
ZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKGVsZW0sbnVsbCk7fWNhdGNoKGUp
e30KaWYoY29tcHV0ZWRTdHlsZSkKcmV0PWNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVy
dHlWYWx1ZShuYW1lKTtpZihuYW1lPT0ib3BhY2l0eSImJnJldD09IiIpCnJldD0i
MSI7fWVsc2UgaWYoZWxlbS5jdXJyZW50U3R5bGUpe3ZhciBjYW1lbENhc2U9bmFt
ZS5yZXBsYWNlKC9cLShcdykvZyxmdW5jdGlvbihhbGwsbGV0dGVyKXtyZXR1cm4g
bGV0dGVyLnRvVXBwZXJDYXNlKCk7fSk7cmV0PWVsZW0uY3VycmVudFN0eWxlW25h
bWVdfHxlbGVtLmN1cnJlbnRTdHlsZVtjYW1lbENhc2VdO2lmKCEvXlxkKyhweCk/
JC9pLnRlc3QocmV0KSYmL15cZC8udGVzdChyZXQpKXt2YXIgbGVmdD1zdHlsZS5s
ZWZ0LHJzTGVmdD1lbGVtLnJ1bnRpbWVTdHlsZS5sZWZ0O2VsZW0ucnVudGltZVN0
eWxlLmxlZnQ9ZWxlbS5jdXJyZW50U3R5bGUubGVmdDtzdHlsZS5sZWZ0PXJldHx8
MDtyZXQ9c3R5bGUucGl4ZWxMZWZ0KyJweCI7c3R5bGUubGVmdD1sZWZ0O2VsZW0u
cnVudGltZVN0eWxlLmxlZnQ9cnNMZWZ0O319CnJldHVybiByZXQ7fSxjbGVhbjpm
dW5jdGlvbihlbGVtcyxjb250ZXh0LGZyYWdtZW50KXtjb250ZXh0PWNvbnRleHR8
fGRvY3VtZW50O2lmKHR5cGVvZiBjb250ZXh0LmNyZWF0ZUVsZW1lbnQ9PT0idW5k
ZWZpbmVkIikKY29udGV4dD1jb250ZXh0Lm93bmVyRG9jdW1lbnR8fGNvbnRleHRb
MF0mJmNvbnRleHRbMF0ub3duZXJEb2N1bWVudHx8ZG9jdW1lbnQ7aWYoIWZyYWdt
ZW50JiZlbGVtcy5sZW5ndGg9PT0xJiZ0eXBlb2YgZWxlbXNbMF09PT0ic3RyaW5n
Iil7dmFyIG1hdGNoPS9ePChcdyspXHMqXC8/PiQvLmV4ZWMoZWxlbXNbMF0pO2lm
KG1hdGNoKQpyZXR1cm5bY29udGV4dC5jcmVhdGVFbGVtZW50KG1hdGNoWzFdKV07
fQp2YXIgcmV0PVtdLHNjcmlwdHM9W10sZGl2PWNvbnRleHQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7alF1ZXJ5LmVhY2goZWxlbXMsZnVuY3Rpb24oaSxlbGVtKXtpZih0
eXBlb2YgZWxlbT09PSJudW1iZXIiKQplbGVtKz0nJztpZighZWxlbSkKcmV0dXJu
O2lmKHR5cGVvZiBlbGVtPT09InN0cmluZyIpe2VsZW09ZWxlbS5yZXBsYWNlKC8o
PChcdyspW14+XSo/KVwvPi9nLGZ1bmN0aW9uKGFsbCxmcm9udCx0YWcpe3JldHVy
biB0YWcubWF0Y2goL14oYWJicnxicnxjb2x8aW1nfGlucHV0fGxpbmt8bWV0YXxw
YXJhbXxocnxhcmVhfGVtYmVkKSQvaSk/YWxsOmZyb250KyI+PC8iK3RhZysiPiI7
fSk7dmFyIHRhZ3M9ZWxlbS5yZXBsYWNlKC9eXHMrLywiIikuc3Vic3RyaW5nKDAs
MTApLnRvTG93ZXJDYXNlKCk7dmFyIHdyYXA9IXRhZ3MuaW5kZXhPZigiPG9wdCIp
JiZbMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJd
fHwhdGFncy5pbmRleE9mKCI8bGVnIikmJlsxLCI8ZmllbGRzZXQ+IiwiPC9maWVs
ZHNldD4iXXx8dGFncy5tYXRjaCgvXjwodGhlYWR8dGJvZHl8dGZvb3R8Y29sZ3xj
YXApLykmJlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXXx8IXRhZ3MuaW5kZXhPZigi
PHRyIikmJlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXXx8
KCF0YWdzLmluZGV4T2YoIjx0ZCIpfHwhdGFncy5pbmRleE9mKCI8dGgiKSkmJlsz
LCI8dGFibGU+PHRib2R5Pjx0cj4iLCI8L3RyPjwvdGJvZHk+PC90YWJsZT4iXXx8
IXRhZ3MuaW5kZXhPZigiPGNvbCIpJiZbMiwiPHRhYmxlPjx0Ym9keT48L3Rib2R5
Pjxjb2xncm91cD4iLCI8L2NvbGdyb3VwPjwvdGFibGU+Il18fCFqUXVlcnkuc3Vw
cG9ydC5odG1sU2VyaWFsaXplJiZbMSwiZGl2PGRpdj4iLCI8L2Rpdj4iXXx8WzAs
IiIsIiJdO2Rpdi5pbm5lckhUTUw9d3JhcFsxXStlbGVtK3dyYXBbMl07d2hpbGUo
d3JhcFswXS0tKQpkaXY9ZGl2Lmxhc3RDaGlsZDtpZighalF1ZXJ5LnN1cHBvcnQu
dGJvZHkpe3ZhciBoYXNCb2R5PS88dGJvZHkvaS50ZXN0KGVsZW0pLHRib2R5PSF0
YWdzLmluZGV4T2YoIjx0YWJsZSIpJiYhaGFzQm9keT9kaXYuZmlyc3RDaGlsZCYm
ZGl2LmZpcnN0Q2hpbGQuY2hpbGROb2Rlczp3cmFwWzFdPT0iPHRhYmxlPiImJiFo
YXNCb2R5P2Rpdi5jaGlsZE5vZGVzOltdO2Zvcih2YXIgaj10Ym9keS5sZW5ndGgt
MTtqPj0wOy0taikKaWYoalF1ZXJ5Lm5vZGVOYW1lKHRib2R5W2pdLCJ0Ym9keSIp
JiYhdGJvZHlbal0uY2hpbGROb2Rlcy5sZW5ndGgpCnRib2R5W2pdLnBhcmVudE5v
ZGUucmVtb3ZlQ2hpbGQodGJvZHlbal0pO30KaWYoIWpRdWVyeS5zdXBwb3J0Lmxl
YWRpbmdXaGl0ZXNwYWNlJiYvXlxzLy50ZXN0KGVsZW0pKQpkaXYuaW5zZXJ0QmVm
b3JlKGNvbnRleHQuY3JlYXRlVGV4dE5vZGUoZWxlbS5tYXRjaCgvXlxzKi8pWzBd
KSxkaXYuZmlyc3RDaGlsZCk7ZWxlbT1qUXVlcnkubWFrZUFycmF5KGRpdi5jaGls
ZE5vZGVzKTt9CmlmKGVsZW0ubm9kZVR5cGUpCnJldC5wdXNoKGVsZW0pO2Vsc2UK
cmV0PWpRdWVyeS5tZXJnZShyZXQsZWxlbSk7fSk7aWYoZnJhZ21lbnQpe2Zvcih2
YXIgaT0wO3JldFtpXTtpKyspe2lmKGpRdWVyeS5ub2RlTmFtZShyZXRbaV0sInNj
cmlwdCIpJiYoIXJldFtpXS50eXBlfHxyZXRbaV0udHlwZS50b0xvd2VyQ2FzZSgp
PT09InRleHQvamF2YXNjcmlwdCIpKXtzY3JpcHRzLnB1c2gocmV0W2ldLnBhcmVu
dE5vZGU/cmV0W2ldLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQocmV0W2ldKTpyZXRb
aV0pO31lbHNle2lmKHJldFtpXS5ub2RlVHlwZT09PTEpCnJldC5zcGxpY2UuYXBw
bHkocmV0LFtpKzEsMF0uY29uY2F0KGpRdWVyeS5tYWtlQXJyYXkocmV0W2ldLmdl
dEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSkpKTtmcmFnbWVudC5hcHBlbmRD
aGlsZChyZXRbaV0pO319CnJldHVybiBzY3JpcHRzO30KcmV0dXJuIHJldDt9LGF0
dHI6ZnVuY3Rpb24oZWxlbSxuYW1lLHZhbHVlKXtpZighZWxlbXx8ZWxlbS5ub2Rl
VHlwZT09M3x8ZWxlbS5ub2RlVHlwZT09OCkKcmV0dXJuIHVuZGVmaW5lZDt2YXIg
bm90eG1sPSFqUXVlcnkuaXNYTUxEb2MoZWxlbSksc2V0PXZhbHVlIT09dW5kZWZp
bmVkO25hbWU9bm90eG1sJiZqUXVlcnkucHJvcHNbbmFtZV18fG5hbWU7aWYoZWxl
bS50YWdOYW1lKXt2YXIgc3BlY2lhbD0vaHJlZnxzcmN8c3R5bGUvLnRlc3QobmFt
ZSk7aWYobmFtZT09InNlbGVjdGVkIiYmZWxlbS5wYXJlbnROb2RlKQplbGVtLnBh
cmVudE5vZGUuc2VsZWN0ZWRJbmRleDtpZihuYW1lIGluIGVsZW0mJm5vdHhtbCYm
IXNwZWNpYWwpe2lmKHNldCl7aWYobmFtZT09InR5cGUiJiZqUXVlcnkubm9kZU5h
bWUoZWxlbSwiaW5wdXQiKSYmZWxlbS5wYXJlbnROb2RlKQp0aHJvdyJ0eXBlIHBy
b3BlcnR5IGNhbid0IGJlIGNoYW5nZWQiO2VsZW1bbmFtZV09dmFsdWU7fQppZihq
UXVlcnkubm9kZU5hbWUoZWxlbSwiZm9ybSIpJiZlbGVtLmdldEF0dHJpYnV0ZU5v
ZGUobmFtZSkpCnJldHVybiBlbGVtLmdldEF0dHJpYnV0ZU5vZGUobmFtZSkubm9k
ZVZhbHVlO2lmKG5hbWU9PSJ0YWJJbmRleCIpe3ZhciBhdHRyaWJ1dGVOb2RlPWVs
ZW0uZ2V0QXR0cmlidXRlTm9kZSgidGFiSW5kZXgiKTtyZXR1cm4gYXR0cmlidXRl
Tm9kZSYmYXR0cmlidXRlTm9kZS5zcGVjaWZpZWQ/YXR0cmlidXRlTm9kZS52YWx1
ZTplbGVtLm5vZGVOYW1lLm1hdGNoKC8oYnV0dG9ufGlucHV0fG9iamVjdHxzZWxl
Y3R8dGV4dGFyZWEpL2kpPzA6ZWxlbS5ub2RlTmFtZS5tYXRjaCgvXihhfGFyZWEp
JC9pKSYmZWxlbS5ocmVmPzA6dW5kZWZpbmVkO30KcmV0dXJuIGVsZW1bbmFtZV07
fQppZighalF1ZXJ5LnN1cHBvcnQuc3R5bGUmJm5vdHhtbCYmbmFtZT09InN0eWxl
IikKcmV0dXJuIGpRdWVyeS5hdHRyKGVsZW0uc3R5bGUsImNzc1RleHQiLHZhbHVl
KTtpZihzZXQpCmVsZW0uc2V0QXR0cmlidXRlKG5hbWUsIiIrdmFsdWUpO3ZhciBh
dHRyPSFqUXVlcnkuc3VwcG9ydC5ocmVmTm9ybWFsaXplZCYmbm90eG1sJiZzcGVj
aWFsP2VsZW0uZ2V0QXR0cmlidXRlKG5hbWUsMik6ZWxlbS5nZXRBdHRyaWJ1dGUo
bmFtZSk7cmV0dXJuIGF0dHI9PT1udWxsP3VuZGVmaW5lZDphdHRyO30KaWYoIWpR
dWVyeS5zdXBwb3J0Lm9wYWNpdHkmJm5hbWU9PSJvcGFjaXR5Iil7aWYoc2V0KXtl
bGVtLnpvb209MTtlbGVtLmZpbHRlcj0oZWxlbS5maWx0ZXJ8fCIiKS5yZXBsYWNl
KC9hbHBoYVwoW14pXSpcKS8sIiIpKwoocGFyc2VJbnQodmFsdWUpKycnPT0iTmFO
Ij8iIjoiYWxwaGEob3BhY2l0eT0iK3ZhbHVlKjEwMCsiKSIpO30KcmV0dXJuIGVs
ZW0uZmlsdGVyJiZlbGVtLmZpbHRlci5pbmRleE9mKCJvcGFjaXR5PSIpPj0wPyhw
YXJzZUZsb2F0KGVsZW0uZmlsdGVyLm1hdGNoKC9vcGFjaXR5PShbXildKikvKVsx
XSkvMTAwKSsnJzoiIjt9Cm5hbWU9bmFtZS5yZXBsYWNlKC8tKFthLXpdKS9pZyxm
dW5jdGlvbihhbGwsbGV0dGVyKXtyZXR1cm4gbGV0dGVyLnRvVXBwZXJDYXNlKCk7
fSk7aWYoc2V0JiZ2YWx1ZSE9J05hTnB4JyYmdmFsdWUhPSdudWxscHgnKQplbGVt
W25hbWVdPXZhbHVlO3JldHVybiBlbGVtW25hbWVdO30sdHJpbTpmdW5jdGlvbih0
ZXh0KXtyZXR1cm4odGV4dHx8IiIpLnJlcGxhY2UoL15ccyt8XHMrJC9nLCIiKTt9
LG1ha2VBcnJheTpmdW5jdGlvbihhcnJheSl7dmFyIHJldD1bXTtpZihhcnJheSE9
bnVsbCl7dmFyIGk9YXJyYXkubGVuZ3RoO2lmKGk9PW51bGx8fHR5cGVvZiBhcnJh
eT09PSJzdHJpbmcifHxqUXVlcnkuaXNGdW5jdGlvbihhcnJheSl8fGFycmF5LnNl
dEludGVydmFsKQpyZXRbMF09YXJyYXk7ZWxzZQp3aGlsZShpKQpyZXRbLS1pXT1h
cnJheVtpXTt9CnJldHVybiByZXQ7fSxpbkFycmF5OmZ1bmN0aW9uKGVsZW0sYXJy
YXkpe2Zvcih2YXIgaT0wLGxlbmd0aD1hcnJheS5sZW5ndGg7aTxsZW5ndGg7aSsr
KQppZihhcnJheVtpXT09PWVsZW0pCnJldHVybiBpO3JldHVybi0xO30sbWVyZ2U6
ZnVuY3Rpb24oZmlyc3Qsc2Vjb25kKXt2YXIgaT0wLGVsZW0scG9zPWZpcnN0Lmxl
bmd0aDtpZighalF1ZXJ5LnN1cHBvcnQuZ2V0QWxsKXt3aGlsZSgoZWxlbT1zZWNv
bmRbaSsrXSkhPW51bGwpCmlmKGVsZW0ubm9kZVR5cGUhPTgpCmZpcnN0W3Bvcysr
XT1lbGVtO31lbHNlCndoaWxlKChlbGVtPXNlY29uZFtpKytdKSE9bnVsbCkKZmly
c3RbcG9zKytdPWVsZW07cmV0dXJuIGZpcnN0O30sdW5pcXVlOmZ1bmN0aW9uKGFy
cmF5KXt2YXIgcmV0PVtdLGRvbmU9e307dHJ5e2Zvcih2YXIgaT0wLGxlbmd0aD1h
cnJheS5sZW5ndGg7aTxsZW5ndGg7aSsrKXt2YXIgaWQ9alF1ZXJ5LmRhdGEoYXJy
YXlbaV0pO2lmKCFkb25lW2lkXSl7ZG9uZVtpZF09dHJ1ZTtyZXQucHVzaChhcnJh
eVtpXSk7fX19Y2F0Y2goZSl7cmV0PWFycmF5O30KcmV0dXJuIHJldDt9LGdyZXA6
ZnVuY3Rpb24oZWxlbXMsY2FsbGJhY2ssaW52KXt2YXIgcmV0PVtdO2Zvcih2YXIg
aT0wLGxlbmd0aD1lbGVtcy5sZW5ndGg7aTxsZW5ndGg7aSsrKQppZighaW52IT0h
Y2FsbGJhY2soZWxlbXNbaV0saSkpCnJldC5wdXNoKGVsZW1zW2ldKTtyZXR1cm4g
cmV0O30sbWFwOmZ1bmN0aW9uKGVsZW1zLGNhbGxiYWNrKXt2YXIgcmV0PVtdO2Zv
cih2YXIgaT0wLGxlbmd0aD1lbGVtcy5sZW5ndGg7aTxsZW5ndGg7aSsrKXt2YXIg
dmFsdWU9Y2FsbGJhY2soZWxlbXNbaV0saSk7aWYodmFsdWUhPW51bGwpCnJldFty
ZXQubGVuZ3RoXT12YWx1ZTt9CnJldHVybiByZXQuY29uY2F0LmFwcGx5KFtdLHJl
dCk7fX0pO3ZhciB1c2VyQWdlbnQ9bmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2Vy
Q2FzZSgpO2pRdWVyeS5icm93c2VyPXt2ZXJzaW9uOih1c2VyQWdlbnQubWF0Y2go
Ly4rKD86cnZ8aXR8cmF8aWUpW1wvOiBdKFtcZC5dKykvKXx8WzAsJzAnXSlbMV0s
c2FmYXJpOi93ZWJraXQvLnRlc3QodXNlckFnZW50KSxvcGVyYTovb3BlcmEvLnRl
c3QodXNlckFnZW50KSxtc2llOi9tc2llLy50ZXN0KHVzZXJBZ2VudCkmJiEvb3Bl
cmEvLnRlc3QodXNlckFnZW50KSxtb3ppbGxhOi9tb3ppbGxhLy50ZXN0KHVzZXJB
Z2VudCkmJiEvKGNvbXBhdGlibGV8d2Via2l0KS8udGVzdCh1c2VyQWdlbnQpfTtq
UXVlcnkuZWFjaCh7cGFyZW50OmZ1bmN0aW9uKGVsZW0pe3JldHVybiBlbGVtLnBh
cmVudE5vZGU7fSxwYXJlbnRzOmZ1bmN0aW9uKGVsZW0pe3JldHVybiBqUXVlcnku
ZGlyKGVsZW0sInBhcmVudE5vZGUiKTt9LG5leHQ6ZnVuY3Rpb24oZWxlbSl7cmV0
dXJuIGpRdWVyeS5udGgoZWxlbSwyLCJuZXh0U2libGluZyIpO30scHJldjpmdW5j
dGlvbihlbGVtKXtyZXR1cm4galF1ZXJ5Lm50aChlbGVtLDIsInByZXZpb3VzU2li
bGluZyIpO30sbmV4dEFsbDpmdW5jdGlvbihlbGVtKXtyZXR1cm4galF1ZXJ5LmRp
cihlbGVtLCJuZXh0U2libGluZyIpO30scHJldkFsbDpmdW5jdGlvbihlbGVtKXty
ZXR1cm4galF1ZXJ5LmRpcihlbGVtLCJwcmV2aW91c1NpYmxpbmciKTt9LHNpYmxp
bmdzOmZ1bmN0aW9uKGVsZW0pe3JldHVybiBqUXVlcnkuc2libGluZyhlbGVtLnBh
cmVudE5vZGUuZmlyc3RDaGlsZCxlbGVtKTt9LGNoaWxkcmVuOmZ1bmN0aW9uKGVs
ZW0pe3JldHVybiBqUXVlcnkuc2libGluZyhlbGVtLmZpcnN0Q2hpbGQpO30sY29u
dGVudHM6ZnVuY3Rpb24oZWxlbSl7cmV0dXJuIGpRdWVyeS5ub2RlTmFtZShlbGVt
LCJpZnJhbWUiKT9lbGVtLmNvbnRlbnREb2N1bWVudHx8ZWxlbS5jb250ZW50V2lu
ZG93LmRvY3VtZW50OmpRdWVyeS5tYWtlQXJyYXkoZWxlbS5jaGlsZE5vZGVzKTt9
fSxmdW5jdGlvbihuYW1lLGZuKXtqUXVlcnkuZm5bbmFtZV09ZnVuY3Rpb24oc2Vs
ZWN0b3Ipe3ZhciByZXQ9alF1ZXJ5Lm1hcCh0aGlzLGZuKTtpZihzZWxlY3RvciYm
dHlwZW9mIHNlbGVjdG9yPT0ic3RyaW5nIikKcmV0PWpRdWVyeS5tdWx0aUZpbHRl
cihzZWxlY3RvcixyZXQpO3JldHVybiB0aGlzLnB1c2hTdGFjayhqUXVlcnkudW5p
cXVlKHJldCksbmFtZSxzZWxlY3Rvcik7fTt9KTtqUXVlcnkuZWFjaCh7YXBwZW5k
VG86ImFwcGVuZCIscHJlcGVuZFRvOiJwcmVwZW5kIixpbnNlcnRCZWZvcmU6ImJl
Zm9yZSIsaW5zZXJ0QWZ0ZXI6ImFmdGVyIixyZXBsYWNlQWxsOiJyZXBsYWNlV2l0
aCJ9LGZ1bmN0aW9uKG5hbWUsb3JpZ2luYWwpe2pRdWVyeS5mbltuYW1lXT1mdW5j
dGlvbihzZWxlY3Rvcil7dmFyIHJldD1bXSxpbnNlcnQ9alF1ZXJ5KHNlbGVjdG9y
KTtmb3IodmFyIGk9MCxsPWluc2VydC5sZW5ndGg7aTxsO2krKyl7dmFyIGVsZW1z
PShpPjA/dGhpcy5jbG9uZSh0cnVlKTp0aGlzKS5nZXQoKTtqUXVlcnkuZm5bb3Jp
Z2luYWxdLmFwcGx5KGpRdWVyeShpbnNlcnRbaV0pLGVsZW1zKTtyZXQ9cmV0LmNv
bmNhdChlbGVtcyk7fQpyZXR1cm4gdGhpcy5wdXNoU3RhY2socmV0LG5hbWUsc2Vs
ZWN0b3IpO307fSk7alF1ZXJ5LmVhY2goe3JlbW92ZUF0dHI6ZnVuY3Rpb24obmFt
ZSl7alF1ZXJ5LmF0dHIodGhpcyxuYW1lLCIiKTtpZih0aGlzLm5vZGVUeXBlPT0x
KQp0aGlzLnJlbW92ZUF0dHJpYnV0ZShuYW1lKTt9LGFkZENsYXNzOmZ1bmN0aW9u
KGNsYXNzTmFtZXMpe2pRdWVyeS5jbGFzc05hbWUuYWRkKHRoaXMsY2xhc3NOYW1l
cyk7fSxyZW1vdmVDbGFzczpmdW5jdGlvbihjbGFzc05hbWVzKXtqUXVlcnkuY2xh
c3NOYW1lLnJlbW92ZSh0aGlzLGNsYXNzTmFtZXMpO30sdG9nZ2xlQ2xhc3M6ZnVu
Y3Rpb24oY2xhc3NOYW1lcyxzdGF0ZSl7aWYodHlwZW9mIHN0YXRlIT09ImJvb2xl
YW4iKQpzdGF0ZT0halF1ZXJ5LmNsYXNzTmFtZS5oYXModGhpcyxjbGFzc05hbWVz
KTtqUXVlcnkuY2xhc3NOYW1lW3N0YXRlPyJhZGQiOiJyZW1vdmUiXSh0aGlzLGNs
YXNzTmFtZXMpO30scmVtb3ZlOmZ1bmN0aW9uKHNlbGVjdG9yKXtpZighc2VsZWN0
b3J8fGpRdWVyeS5maWx0ZXIoc2VsZWN0b3IsW3RoaXNdKS5sZW5ndGgpe2pRdWVy
eSgiKiIsdGhpcykuYWRkKFt0aGlzXSkuZWFjaChmdW5jdGlvbigpe2pRdWVyeS5l
dmVudC5yZW1vdmUodGhpcyk7alF1ZXJ5LnJlbW92ZURhdGEodGhpcyk7fSk7aWYo
dGhpcy5wYXJlbnROb2RlKQp0aGlzLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhp
cyk7fX0sZW1wdHk6ZnVuY3Rpb24oKXtqUXVlcnkodGhpcykuY2hpbGRyZW4oKS5y
ZW1vdmUoKTt3aGlsZSh0aGlzLmZpcnN0Q2hpbGQpCnRoaXMucmVtb3ZlQ2hpbGQo
dGhpcy5maXJzdENoaWxkKTt9fSxmdW5jdGlvbihuYW1lLGZuKXtqUXVlcnkuZm5b
bmFtZV09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lYWNoKGZuLGFyZ3VtZW50cyk7
fTt9KTtmdW5jdGlvbiBudW0oZWxlbSxwcm9wKXtyZXR1cm4gZWxlbVswXSYmcGFy
c2VJbnQoalF1ZXJ5LmN1ckNTUyhlbGVtWzBdLHByb3AsdHJ1ZSksMTApfHwwO30K
dmFyIGV4cGFuZG89ImpRdWVyeSIrbm93KCksdXVpZD0wLHdpbmRvd0RhdGE9e307
alF1ZXJ5LmV4dGVuZCh7Y2FjaGU6e30sZGF0YTpmdW5jdGlvbihlbGVtLG5hbWUs
ZGF0YSl7ZWxlbT1lbGVtPT13aW5kb3c/d2luZG93RGF0YTplbGVtO3ZhciBpZD1l
bGVtW2V4cGFuZG9dO2lmKCFpZCkKaWQ9ZWxlbVtleHBhbmRvXT0rK3V1aWQ7aWYo
bmFtZSYmIWpRdWVyeS5jYWNoZVtpZF0pCmpRdWVyeS5jYWNoZVtpZF09e307aWYo
ZGF0YSE9PXVuZGVmaW5lZCkKalF1ZXJ5LmNhY2hlW2lkXVtuYW1lXT1kYXRhO3Jl
dHVybiBuYW1lP2pRdWVyeS5jYWNoZVtpZF1bbmFtZV06aWQ7fSxyZW1vdmVEYXRh
OmZ1bmN0aW9uKGVsZW0sbmFtZSl7ZWxlbT1lbGVtPT13aW5kb3c/d2luZG93RGF0
YTplbGVtO3ZhciBpZD1lbGVtW2V4cGFuZG9dO2lmKG5hbWUpe2lmKGpRdWVyeS5j
YWNoZVtpZF0pe2RlbGV0ZSBqUXVlcnkuY2FjaGVbaWRdW25hbWVdO25hbWU9IiI7
Zm9yKG5hbWUgaW4galF1ZXJ5LmNhY2hlW2lkXSkKYnJlYWs7aWYoIW5hbWUpCmpR
dWVyeS5yZW1vdmVEYXRhKGVsZW0pO319ZWxzZXt0cnl7ZGVsZXRlIGVsZW1bZXhw
YW5kb107fWNhdGNoKGUpe2lmKGVsZW0ucmVtb3ZlQXR0cmlidXRlKQplbGVtLnJl
bW92ZUF0dHJpYnV0ZShleHBhbmRvKTt9CmRlbGV0ZSBqUXVlcnkuY2FjaGVbaWRd
O319LHF1ZXVlOmZ1bmN0aW9uKGVsZW0sdHlwZSxkYXRhKXtpZihlbGVtKXt0eXBl
PSh0eXBlfHwiZngiKSsicXVldWUiO3ZhciBxPWpRdWVyeS5kYXRhKGVsZW0sdHlw
ZSk7aWYoIXF8fGpRdWVyeS5pc0FycmF5KGRhdGEpKQpxPWpRdWVyeS5kYXRhKGVs
ZW0sdHlwZSxqUXVlcnkubWFrZUFycmF5KGRhdGEpKTtlbHNlIGlmKGRhdGEpCnEu
cHVzaChkYXRhKTt9CnJldHVybiBxO30sZGVxdWV1ZTpmdW5jdGlvbihlbGVtLHR5
cGUpe3ZhciBxdWV1ZT1qUXVlcnkucXVldWUoZWxlbSx0eXBlKSxmbj1xdWV1ZS5z
aGlmdCgpO2lmKCF0eXBlfHx0eXBlPT09ImZ4IikKZm49cXVldWVbMF07aWYoZm4h
PT11bmRlZmluZWQpCmZuLmNhbGwoZWxlbSk7fX0pO2pRdWVyeS5mbi5leHRlbmQo
e2RhdGE6ZnVuY3Rpb24oa2V5LHZhbHVlKXt2YXIgcGFydHM9a2V5LnNwbGl0KCIu
Iik7cGFydHNbMV09cGFydHNbMV0/Ii4iK3BhcnRzWzFdOiIiO2lmKHZhbHVlPT09
dW5kZWZpbmVkKXt2YXIgZGF0YT10aGlzLnRyaWdnZXJIYW5kbGVyKCJnZXREYXRh
IitwYXJ0c1sxXSsiISIsW3BhcnRzWzBdXSk7aWYoZGF0YT09PXVuZGVmaW5lZCYm
dGhpcy5sZW5ndGgpCmRhdGE9alF1ZXJ5LmRhdGEodGhpc1swXSxrZXkpO3JldHVy
biBkYXRhPT09dW5kZWZpbmVkJiZwYXJ0c1sxXT90aGlzLmRhdGEocGFydHNbMF0p
OmRhdGE7fWVsc2UKcmV0dXJuIHRoaXMudHJpZ2dlcigic2V0RGF0YSIrcGFydHNb
MV0rIiEiLFtwYXJ0c1swXSx2YWx1ZV0pLmVhY2goZnVuY3Rpb24oKXtqUXVlcnku
ZGF0YSh0aGlzLGtleSx2YWx1ZSk7fSk7fSxyZW1vdmVEYXRhOmZ1bmN0aW9uKGtl
eSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2pRdWVyeS5yZW1vdmVEYXRh
KHRoaXMsa2V5KTt9KTt9LHF1ZXVlOmZ1bmN0aW9uKHR5cGUsZGF0YSl7aWYodHlw
ZW9mIHR5cGUhPT0ic3RyaW5nIil7ZGF0YT10eXBlO3R5cGU9ImZ4Ijt9CmlmKGRh
dGE9PT11bmRlZmluZWQpCnJldHVybiBqUXVlcnkucXVldWUodGhpc1swXSx0eXBl
KTtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIHF1ZXVlPWpRdWVyeS5x
dWV1ZSh0aGlzLHR5cGUsZGF0YSk7aWYodHlwZT09ImZ4IiYmcXVldWUubGVuZ3Ro
PT0xKQpxdWV1ZVswXS5jYWxsKHRoaXMpO30pO30sZGVxdWV1ZTpmdW5jdGlvbih0
eXBlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7alF1ZXJ5LmRlcXVldWUo
dGhpcyx0eXBlKTt9KTt9fSk7KGZ1bmN0aW9uKCl7dmFyIGNodW5rZXI9LygoPzpc
KCg/OlwoW14oKV0rXCl8W14oKV0rKStcKXxcWyg/OlxbW15bXF1dKlxdfFsnIl1b
XiciXSpbJyJdfFteW1xdJyJdKykrXF18XFwufFteID4rfiwoXFtcXF0rKSt8Wz4r
fl0pKFxzKixccyopPy9nLGRvbmU9MCx0b1N0cmluZz1PYmplY3QucHJvdG90eXBl
LnRvU3RyaW5nO3ZhciBTaXp6bGU9ZnVuY3Rpb24oc2VsZWN0b3IsY29udGV4dCxy
ZXN1bHRzLHNlZWQpe3Jlc3VsdHM9cmVzdWx0c3x8W107Y29udGV4dD1jb250ZXh0
fHxkb2N1bWVudDtpZihjb250ZXh0Lm5vZGVUeXBlIT09MSYmY29udGV4dC5ub2Rl
VHlwZSE9PTkpCnJldHVybltdO2lmKCFzZWxlY3Rvcnx8dHlwZW9mIHNlbGVjdG9y
IT09InN0cmluZyIpe3JldHVybiByZXN1bHRzO30KdmFyIHBhcnRzPVtdLG0sc2V0
LGNoZWNrU2V0LGNoZWNrLG1vZGUsZXh0cmEscHJ1bmU9dHJ1ZTtjaHVua2VyLmxh
c3RJbmRleD0wO3doaWxlKChtPWNodW5rZXIuZXhlYyhzZWxlY3RvcikpIT09bnVs
bCl7cGFydHMucHVzaChtWzFdKTtpZihtWzJdKXtleHRyYT1SZWdFeHAucmlnaHRD
b250ZXh0O2JyZWFrO319CmlmKHBhcnRzLmxlbmd0aD4xJiZvcmlnUE9TLmV4ZWMo
c2VsZWN0b3IpKXtpZihwYXJ0cy5sZW5ndGg9PT0yJiZFeHByLnJlbGF0aXZlW3Bh
cnRzWzBdXSl7c2V0PXBvc1Byb2Nlc3MocGFydHNbMF0rcGFydHNbMV0sY29udGV4
dCk7fWVsc2V7c2V0PUV4cHIucmVsYXRpdmVbcGFydHNbMF1dP1tjb250ZXh0XTpT
aXp6bGUocGFydHMuc2hpZnQoKSxjb250ZXh0KTt3aGlsZShwYXJ0cy5sZW5ndGgp
e3NlbGVjdG9yPXBhcnRzLnNoaWZ0KCk7aWYoRXhwci5yZWxhdGl2ZVtzZWxlY3Rv
cl0pCnNlbGVjdG9yKz1wYXJ0cy5zaGlmdCgpO3NldD1wb3NQcm9jZXNzKHNlbGVj
dG9yLHNldCk7fX19ZWxzZXt2YXIgcmV0PXNlZWQ/e2V4cHI6cGFydHMucG9wKCks
c2V0Om1ha2VBcnJheShzZWVkKX06U2l6emxlLmZpbmQocGFydHMucG9wKCkscGFy
dHMubGVuZ3RoPT09MSYmY29udGV4dC5wYXJlbnROb2RlP2NvbnRleHQucGFyZW50
Tm9kZTpjb250ZXh0LGlzWE1MKGNvbnRleHQpKTtzZXQ9U2l6emxlLmZpbHRlcihy
ZXQuZXhwcixyZXQuc2V0KTtpZihwYXJ0cy5sZW5ndGg+MCl7Y2hlY2tTZXQ9bWFr
ZUFycmF5KHNldCk7fWVsc2V7cHJ1bmU9ZmFsc2U7fQp3aGlsZShwYXJ0cy5sZW5n
dGgpe3ZhciBjdXI9cGFydHMucG9wKCkscG9wPWN1cjtpZighRXhwci5yZWxhdGl2
ZVtjdXJdKXtjdXI9IiI7fWVsc2V7cG9wPXBhcnRzLnBvcCgpO30KaWYocG9wPT1u
dWxsKXtwb3A9Y29udGV4dDt9CkV4cHIucmVsYXRpdmVbY3VyXShjaGVja1NldCxw
b3AsaXNYTUwoY29udGV4dCkpO319CmlmKCFjaGVja1NldCl7Y2hlY2tTZXQ9c2V0
O30KaWYoIWNoZWNrU2V0KXt0aHJvdyJTeW50YXggZXJyb3IsIHVucmVjb2duaXpl
ZCBleHByZXNzaW9uOiAiKyhjdXJ8fHNlbGVjdG9yKTt9CmlmKHRvU3RyaW5nLmNh
bGwoY2hlY2tTZXQpPT09IltvYmplY3QgQXJyYXldIil7aWYoIXBydW5lKXtyZXN1
bHRzLnB1c2guYXBwbHkocmVzdWx0cyxjaGVja1NldCk7fWVsc2UgaWYoY29udGV4
dC5ub2RlVHlwZT09PTEpe2Zvcih2YXIgaT0wO2NoZWNrU2V0W2ldIT1udWxsO2kr
Kyl7aWYoY2hlY2tTZXRbaV0mJihjaGVja1NldFtpXT09PXRydWV8fGNoZWNrU2V0
W2ldLm5vZGVUeXBlPT09MSYmY29udGFpbnMoY29udGV4dCxjaGVja1NldFtpXSkp
KXtyZXN1bHRzLnB1c2goc2V0W2ldKTt9fX1lbHNle2Zvcih2YXIgaT0wO2NoZWNr
U2V0W2ldIT1udWxsO2krKyl7aWYoY2hlY2tTZXRbaV0mJmNoZWNrU2V0W2ldLm5v
ZGVUeXBlPT09MSl7cmVzdWx0cy5wdXNoKHNldFtpXSk7fX19fWVsc2V7bWFrZUFy
cmF5KGNoZWNrU2V0LHJlc3VsdHMpO30KaWYoZXh0cmEpe1NpenpsZShleHRyYSxj
b250ZXh0LHJlc3VsdHMsc2VlZCk7aWYoc29ydE9yZGVyKXtoYXNEdXBsaWNhdGU9
ZmFsc2U7cmVzdWx0cy5zb3J0KHNvcnRPcmRlcik7aWYoaGFzRHVwbGljYXRlKXtm
b3IodmFyIGk9MTtpPHJlc3VsdHMubGVuZ3RoO2krKyl7aWYocmVzdWx0c1tpXT09
PXJlc3VsdHNbaS0xXSl7cmVzdWx0cy5zcGxpY2UoaS0tLDEpO319fX19CnJldHVy
biByZXN1bHRzO307U2l6emxlLm1hdGNoZXM9ZnVuY3Rpb24oZXhwcixzZXQpe3Jl
dHVybiBTaXp6bGUoZXhwcixudWxsLG51bGwsc2V0KTt9O1NpenpsZS5maW5kPWZ1
bmN0aW9uKGV4cHIsY29udGV4dCxpc1hNTCl7dmFyIHNldCxtYXRjaDtpZighZXhw
cil7cmV0dXJuW107fQpmb3IodmFyIGk9MCxsPUV4cHIub3JkZXIubGVuZ3RoO2k8
bDtpKyspe3ZhciB0eXBlPUV4cHIub3JkZXJbaV0sbWF0Y2g7aWYoKG1hdGNoPUV4
cHIubWF0Y2hbdHlwZV0uZXhlYyhleHByKSkpe3ZhciBsZWZ0PVJlZ0V4cC5sZWZ0
Q29udGV4dDtpZihsZWZ0LnN1YnN0cihsZWZ0Lmxlbmd0aC0xKSE9PSJcXCIpe21h
dGNoWzFdPShtYXRjaFsxXXx8IiIpLnJlcGxhY2UoL1xcL2csIiIpO3NldD1FeHBy
LmZpbmRbdHlwZV0obWF0Y2gsY29udGV4dCxpc1hNTCk7aWYoc2V0IT1udWxsKXtl
eHByPWV4cHIucmVwbGFjZShFeHByLm1hdGNoW3R5cGVdLCIiKTticmVhazt9fX19
CmlmKCFzZXQpe3NldD1jb250ZXh0LmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIik7
fQpyZXR1cm57c2V0OnNldCxleHByOmV4cHJ9O307U2l6emxlLmZpbHRlcj1mdW5j
dGlvbihleHByLHNldCxpbnBsYWNlLG5vdCl7dmFyIG9sZD1leHByLHJlc3VsdD1b
XSxjdXJMb29wPXNldCxtYXRjaCxhbnlGb3VuZCxpc1hNTEZpbHRlcj1zZXQmJnNl
dFswXSYmaXNYTUwoc2V0WzBdKTt3aGlsZShleHByJiZzZXQubGVuZ3RoKXtmb3Io
dmFyIHR5cGUgaW4gRXhwci5maWx0ZXIpe2lmKChtYXRjaD1FeHByLm1hdGNoW3R5
cGVdLmV4ZWMoZXhwcikpIT1udWxsKXt2YXIgZmlsdGVyPUV4cHIuZmlsdGVyW3R5
cGVdLGZvdW5kLGl0ZW07YW55Rm91bmQ9ZmFsc2U7aWYoY3VyTG9vcD09cmVzdWx0
KXtyZXN1bHQ9W107fQppZihFeHByLnByZUZpbHRlclt0eXBlXSl7bWF0Y2g9RXhw
ci5wcmVGaWx0ZXJbdHlwZV0obWF0Y2gsY3VyTG9vcCxpbnBsYWNlLHJlc3VsdCxu
b3QsaXNYTUxGaWx0ZXIpO2lmKCFtYXRjaCl7YW55Rm91bmQ9Zm91bmQ9dHJ1ZTt9
ZWxzZSBpZihtYXRjaD09PXRydWUpe2NvbnRpbnVlO319CmlmKG1hdGNoKXtmb3Io
dmFyIGk9MDsoaXRlbT1jdXJMb29wW2ldKSE9bnVsbDtpKyspe2lmKGl0ZW0pe2Zv
dW5kPWZpbHRlcihpdGVtLG1hdGNoLGksY3VyTG9vcCk7dmFyIHBhc3M9bm90XiEh
Zm91bmQ7aWYoaW5wbGFjZSYmZm91bmQhPW51bGwpe2lmKHBhc3Mpe2FueUZvdW5k
PXRydWU7fWVsc2V7Y3VyTG9vcFtpXT1mYWxzZTt9fWVsc2UgaWYocGFzcyl7cmVz
dWx0LnB1c2goaXRlbSk7YW55Rm91bmQ9dHJ1ZTt9fX19CmlmKGZvdW5kIT09dW5k
ZWZpbmVkKXtpZighaW5wbGFjZSl7Y3VyTG9vcD1yZXN1bHQ7fQpleHByPWV4cHIu
cmVwbGFjZShFeHByLm1hdGNoW3R5cGVdLCIiKTtpZighYW55Rm91bmQpe3JldHVy
bltdO30KYnJlYWs7fX19CmlmKGV4cHI9PW9sZCl7aWYoYW55Rm91bmQ9PW51bGwp
e3Rocm93IlN5bnRheCBlcnJvciwgdW5yZWNvZ25pemVkIGV4cHJlc3Npb246ICIr
ZXhwcjt9ZWxzZXticmVhazt9fQpvbGQ9ZXhwcjt9CnJldHVybiBjdXJMb29wO307
dmFyIEV4cHI9U2l6emxlLnNlbGVjdG9ycz17b3JkZXI6WyJJRCIsIk5BTUUiLCJU
QUciXSxtYXRjaDp7SUQ6LyMoKD86W1x3XHUwMGMwLVx1RkZGRl8tXXxcXC4pKykv
LENMQVNTOi9cLigoPzpbXHdcdTAwYzAtXHVGRkZGXy1dfFxcLikrKS8sTkFNRTov
XFtuYW1lPVsnIl0qKCg/Oltcd1x1MDBjMC1cdUZGRkZfLV18XFwuKSspWyciXSpc
XS8sQVRUUjovXFtccyooKD86W1x3XHUwMGMwLVx1RkZGRl8tXXxcXC4pKylccyoo
PzooXFM/PSlccyooWyciXSopKC4qPylcM3wpXHMqXF0vLFRBRzovXigoPzpbXHdc
dTAwYzAtXHVGRkZGXCpfLV18XFwuKSspLyxDSElMRDovOihvbmx5fG50aHxsYXN0
fGZpcnN0KS1jaGlsZCg/OlwoKGV2ZW58b2RkfFtcZG4rLV0qKVwpKT8vLFBPUzov
OihudGh8ZXF8Z3R8bHR8Zmlyc3R8bGFzdHxldmVufG9kZCkoPzpcKChcZCopXCkp
Pyg/PVteLV18JCkvLFBTRVVETzovOigoPzpbXHdcdTAwYzAtXHVGRkZGXy1dfFxc
LikrKSg/OlwoKFsnIl0qKSgoPzpcKFteXCldK1wpfFteXDJcKFwpXSopKylcMlwp
KT8vfSxhdHRyTWFwOnsiY2xhc3MiOiJjbGFzc05hbWUiLCJmb3IiOiJodG1sRm9y
In0sYXR0ckhhbmRsZTp7aHJlZjpmdW5jdGlvbihlbGVtKXtyZXR1cm4gZWxlbS5n
ZXRBdHRyaWJ1dGUoImhyZWYiKTt9fSxyZWxhdGl2ZTp7IisiOmZ1bmN0aW9uKGNo
ZWNrU2V0LHBhcnQsaXNYTUwpe3ZhciBpc1BhcnRTdHI9dHlwZW9mIHBhcnQ9PT0i
c3RyaW5nIixpc1RhZz1pc1BhcnRTdHImJiEvXFcvLnRlc3QocGFydCksaXNQYXJ0
U3RyTm90VGFnPWlzUGFydFN0ciYmIWlzVGFnO2lmKGlzVGFnJiYhaXNYTUwpe3Bh
cnQ9cGFydC50b1VwcGVyQ2FzZSgpO30KZm9yKHZhciBpPTAsbD1jaGVja1NldC5s
ZW5ndGgsZWxlbTtpPGw7aSsrKXtpZigoZWxlbT1jaGVja1NldFtpXSkpe3doaWxl
KChlbGVtPWVsZW0ucHJldmlvdXNTaWJsaW5nKSYmZWxlbS5ub2RlVHlwZSE9PTEp
e30KY2hlY2tTZXRbaV09aXNQYXJ0U3RyTm90VGFnfHxlbGVtJiZlbGVtLm5vZGVO
YW1lPT09cGFydD9lbGVtfHxmYWxzZTplbGVtPT09cGFydDt9fQppZihpc1BhcnRT
dHJOb3RUYWcpe1NpenpsZS5maWx0ZXIocGFydCxjaGVja1NldCx0cnVlKTt9fSwi
PiI6ZnVuY3Rpb24oY2hlY2tTZXQscGFydCxpc1hNTCl7dmFyIGlzUGFydFN0cj10
eXBlb2YgcGFydD09PSJzdHJpbmciO2lmKGlzUGFydFN0ciYmIS9cVy8udGVzdChw
YXJ0KSl7cGFydD1pc1hNTD9wYXJ0OnBhcnQudG9VcHBlckNhc2UoKTtmb3IodmFy
IGk9MCxsPWNoZWNrU2V0Lmxlbmd0aDtpPGw7aSsrKXt2YXIgZWxlbT1jaGVja1Nl
dFtpXTtpZihlbGVtKXt2YXIgcGFyZW50PWVsZW0ucGFyZW50Tm9kZTtjaGVja1Nl
dFtpXT1wYXJlbnQubm9kZU5hbWU9PT1wYXJ0P3BhcmVudDpmYWxzZTt9fX1lbHNl
e2Zvcih2YXIgaT0wLGw9Y2hlY2tTZXQubGVuZ3RoO2k8bDtpKyspe3ZhciBlbGVt
PWNoZWNrU2V0W2ldO2lmKGVsZW0pe2NoZWNrU2V0W2ldPWlzUGFydFN0cj9lbGVt
LnBhcmVudE5vZGU6ZWxlbS5wYXJlbnROb2RlPT09cGFydDt9fQppZihpc1BhcnRT
dHIpe1NpenpsZS5maWx0ZXIocGFydCxjaGVja1NldCx0cnVlKTt9fX0sIiI6ZnVu
Y3Rpb24oY2hlY2tTZXQscGFydCxpc1hNTCl7dmFyIGRvbmVOYW1lPWRvbmUrKyxj
aGVja0ZuPWRpckNoZWNrO2lmKCFwYXJ0Lm1hdGNoKC9cVy8pKXt2YXIgbm9kZUNo
ZWNrPXBhcnQ9aXNYTUw/cGFydDpwYXJ0LnRvVXBwZXJDYXNlKCk7Y2hlY2tGbj1k
aXJOb2RlQ2hlY2s7fQpjaGVja0ZuKCJwYXJlbnROb2RlIixwYXJ0LGRvbmVOYW1l
LGNoZWNrU2V0LG5vZGVDaGVjayxpc1hNTCk7fSwifiI6ZnVuY3Rpb24oY2hlY2tT
ZXQscGFydCxpc1hNTCl7dmFyIGRvbmVOYW1lPWRvbmUrKyxjaGVja0ZuPWRpckNo
ZWNrO2lmKHR5cGVvZiBwYXJ0PT09InN0cmluZyImJiFwYXJ0Lm1hdGNoKC9cVy8p
KXt2YXIgbm9kZUNoZWNrPXBhcnQ9aXNYTUw/cGFydDpwYXJ0LnRvVXBwZXJDYXNl
KCk7Y2hlY2tGbj1kaXJOb2RlQ2hlY2s7fQpjaGVja0ZuKCJwcmV2aW91c1NpYmxp
bmciLHBhcnQsZG9uZU5hbWUsY2hlY2tTZXQsbm9kZUNoZWNrLGlzWE1MKTt9fSxm
aW5kOntJRDpmdW5jdGlvbihtYXRjaCxjb250ZXh0LGlzWE1MKXtpZih0eXBlb2Yg
Y29udGV4dC5nZXRFbGVtZW50QnlJZCE9PSJ1bmRlZmluZWQiJiYhaXNYTUwpe3Zh
ciBtPWNvbnRleHQuZ2V0RWxlbWVudEJ5SWQobWF0Y2hbMV0pO3JldHVybiBtP1tt
XTpbXTt9fSxOQU1FOmZ1bmN0aW9uKG1hdGNoLGNvbnRleHQsaXNYTUwpe2lmKHR5
cGVvZiBjb250ZXh0LmdldEVsZW1lbnRzQnlOYW1lIT09InVuZGVmaW5lZCIpe3Zh
ciByZXQ9W10scmVzdWx0cz1jb250ZXh0LmdldEVsZW1lbnRzQnlOYW1lKG1hdGNo
WzFdKTtmb3IodmFyIGk9MCxsPXJlc3VsdHMubGVuZ3RoO2k8bDtpKyspe2lmKHJl
c3VsdHNbaV0uZ2V0QXR0cmlidXRlKCJuYW1lIik9PT1tYXRjaFsxXSl7cmV0LnB1
c2gocmVzdWx0c1tpXSk7fX0KcmV0dXJuIHJldC5sZW5ndGg9PT0wP251bGw6cmV0
O319LFRBRzpmdW5jdGlvbihtYXRjaCxjb250ZXh0KXtyZXR1cm4gY29udGV4dC5n
ZXRFbGVtZW50c0J5VGFnTmFtZShtYXRjaFsxXSk7fX0scHJlRmlsdGVyOntDTEFT
UzpmdW5jdGlvbihtYXRjaCxjdXJMb29wLGlucGxhY2UscmVzdWx0LG5vdCxpc1hN
TCl7bWF0Y2g9IiAiK21hdGNoWzFdLnJlcGxhY2UoL1xcL2csIiIpKyIgIjtpZihp
c1hNTCl7cmV0dXJuIG1hdGNoO30KZm9yKHZhciBpPTAsZWxlbTsoZWxlbT1jdXJM
b29wW2ldKSE9bnVsbDtpKyspe2lmKGVsZW0pe2lmKG5vdF4oZWxlbS5jbGFzc05h
bWUmJigiICIrZWxlbS5jbGFzc05hbWUrIiAiKS5pbmRleE9mKG1hdGNoKT49MCkp
e2lmKCFpbnBsYWNlKQpyZXN1bHQucHVzaChlbGVtKTt9ZWxzZSBpZihpbnBsYWNl
KXtjdXJMb29wW2ldPWZhbHNlO319fQpyZXR1cm4gZmFsc2U7fSxJRDpmdW5jdGlv
bihtYXRjaCl7cmV0dXJuIG1hdGNoWzFdLnJlcGxhY2UoL1xcL2csIiIpO30sVEFH
OmZ1bmN0aW9uKG1hdGNoLGN1ckxvb3Ape2Zvcih2YXIgaT0wO2N1ckxvb3BbaV09
PT1mYWxzZTtpKyspe30KcmV0dXJuIGN1ckxvb3BbaV0mJmlzWE1MKGN1ckxvb3Bb
aV0pP21hdGNoWzFdOm1hdGNoWzFdLnRvVXBwZXJDYXNlKCk7fSxDSElMRDpmdW5j
dGlvbihtYXRjaCl7aWYobWF0Y2hbMV09PSJudGgiKXt2YXIgdGVzdD0vKC0/KShc
ZCopbigoPzpcK3wtKT9cZCopLy5leGVjKG1hdGNoWzJdPT0iZXZlbiImJiIybiJ8
fG1hdGNoWzJdPT0ib2RkIiYmIjJuKzEifHwhL1xELy50ZXN0KG1hdGNoWzJdKSYm
IjBuKyIrbWF0Y2hbMl18fG1hdGNoWzJdKTttYXRjaFsyXT0odGVzdFsxXSsodGVz
dFsyXXx8MSkpLTA7bWF0Y2hbM109dGVzdFszXS0wO30KbWF0Y2hbMF09ZG9uZSsr
O3JldHVybiBtYXRjaDt9LEFUVFI6ZnVuY3Rpb24obWF0Y2gsY3VyTG9vcCxpbnBs
YWNlLHJlc3VsdCxub3QsaXNYTUwpe3ZhciBuYW1lPW1hdGNoWzFdLnJlcGxhY2Uo
L1xcL2csIiIpO2lmKCFpc1hNTCYmRXhwci5hdHRyTWFwW25hbWVdKXttYXRjaFsx
XT1FeHByLmF0dHJNYXBbbmFtZV07fQppZihtYXRjaFsyXT09PSJ+PSIpe21hdGNo
WzRdPSIgIittYXRjaFs0XSsiICI7fQpyZXR1cm4gbWF0Y2g7fSxQU0VVRE86ZnVu
Y3Rpb24obWF0Y2gsY3VyTG9vcCxpbnBsYWNlLHJlc3VsdCxub3Qpe2lmKG1hdGNo
WzFdPT09Im5vdCIpe2lmKG1hdGNoWzNdLm1hdGNoKGNodW5rZXIpLmxlbmd0aD4x
fHwvXlx3Ly50ZXN0KG1hdGNoWzNdKSl7bWF0Y2hbM109U2l6emxlKG1hdGNoWzNd
LG51bGwsbnVsbCxjdXJMb29wKTt9ZWxzZXt2YXIgcmV0PVNpenpsZS5maWx0ZXIo
bWF0Y2hbM10sY3VyTG9vcCxpbnBsYWNlLHRydWVebm90KTtpZighaW5wbGFjZSl7
cmVzdWx0LnB1c2guYXBwbHkocmVzdWx0LHJldCk7fQpyZXR1cm4gZmFsc2U7fX1l
bHNlIGlmKEV4cHIubWF0Y2guUE9TLnRlc3QobWF0Y2hbMF0pfHxFeHByLm1hdGNo
LkNISUxELnRlc3QobWF0Y2hbMF0pKXtyZXR1cm4gdHJ1ZTt9CnJldHVybiBtYXRj
aDt9LFBPUzpmdW5jdGlvbihtYXRjaCl7bWF0Y2gudW5zaGlmdCh0cnVlKTtyZXR1
cm4gbWF0Y2g7fX0sZmlsdGVyczp7ZW5hYmxlZDpmdW5jdGlvbihlbGVtKXtyZXR1
cm4gZWxlbS5kaXNhYmxlZD09PWZhbHNlJiZlbGVtLnR5cGUhPT0iaGlkZGVuIjt9
LGRpc2FibGVkOmZ1bmN0aW9uKGVsZW0pe3JldHVybiBlbGVtLmRpc2FibGVkPT09
dHJ1ZTt9LGNoZWNrZWQ6ZnVuY3Rpb24oZWxlbSl7cmV0dXJuIGVsZW0uY2hlY2tl
ZD09PXRydWU7fSxzZWxlY3RlZDpmdW5jdGlvbihlbGVtKXtlbGVtLnBhcmVudE5v
ZGUuc2VsZWN0ZWRJbmRleDtyZXR1cm4gZWxlbS5zZWxlY3RlZD09PXRydWU7fSxw
YXJlbnQ6ZnVuY3Rpb24oZWxlbSl7cmV0dXJuISFlbGVtLmZpcnN0Q2hpbGQ7fSxl
bXB0eTpmdW5jdGlvbihlbGVtKXtyZXR1cm4hZWxlbS5maXJzdENoaWxkO30saGFz
OmZ1bmN0aW9uKGVsZW0saSxtYXRjaCl7cmV0dXJuISFTaXp6bGUobWF0Y2hbM10s
ZWxlbSkubGVuZ3RoO30saGVhZGVyOmZ1bmN0aW9uKGVsZW0pe3JldHVybi9oXGQv
aS50ZXN0KGVsZW0ubm9kZU5hbWUpO30sdGV4dDpmdW5jdGlvbihlbGVtKXtyZXR1
cm4idGV4dCI9PT1lbGVtLnR5cGU7fSxyYWRpbzpmdW5jdGlvbihlbGVtKXtyZXR1
cm4icmFkaW8iPT09ZWxlbS50eXBlO30sY2hlY2tib3g6ZnVuY3Rpb24oZWxlbSl7
cmV0dXJuImNoZWNrYm94Ij09PWVsZW0udHlwZTt9LGZpbGU6ZnVuY3Rpb24oZWxl
bSl7cmV0dXJuImZpbGUiPT09ZWxlbS50eXBlO30scGFzc3dvcmQ6ZnVuY3Rpb24o
ZWxlbSl7cmV0dXJuInBhc3N3b3JkIj09PWVsZW0udHlwZTt9LHN1Ym1pdDpmdW5j
dGlvbihlbGVtKXtyZXR1cm4ic3VibWl0Ij09PWVsZW0udHlwZTt9LGltYWdlOmZ1
bmN0aW9uKGVsZW0pe3JldHVybiJpbWFnZSI9PT1lbGVtLnR5cGU7fSxyZXNldDpm
dW5jdGlvbihlbGVtKXtyZXR1cm4icmVzZXQiPT09ZWxlbS50eXBlO30sYnV0dG9u
OmZ1bmN0aW9uKGVsZW0pe3JldHVybiJidXR0b24iPT09ZWxlbS50eXBlfHxlbGVt
Lm5vZGVOYW1lLnRvVXBwZXJDYXNlKCk9PT0iQlVUVE9OIjt9LGlucHV0OmZ1bmN0
aW9uKGVsZW0pe3JldHVybi9pbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uL2ku
dGVzdChlbGVtLm5vZGVOYW1lKTt9fSxzZXRGaWx0ZXJzOntmaXJzdDpmdW5jdGlv
bihlbGVtLGkpe3JldHVybiBpPT09MDt9LGxhc3Q6ZnVuY3Rpb24oZWxlbSxpLG1h
dGNoLGFycmF5KXtyZXR1cm4gaT09PWFycmF5Lmxlbmd0aC0xO30sZXZlbjpmdW5j
dGlvbihlbGVtLGkpe3JldHVybiBpJTI9PT0wO30sb2RkOmZ1bmN0aW9uKGVsZW0s
aSl7cmV0dXJuIGklMj09PTE7fSxsdDpmdW5jdGlvbihlbGVtLGksbWF0Y2gpe3Jl
dHVybiBpPG1hdGNoWzNdLTA7fSxndDpmdW5jdGlvbihlbGVtLGksbWF0Y2gpe3Jl
dHVybiBpPm1hdGNoWzNdLTA7fSxudGg6ZnVuY3Rpb24oZWxlbSxpLG1hdGNoKXty
ZXR1cm4gbWF0Y2hbM10tMD09aTt9LGVxOmZ1bmN0aW9uKGVsZW0saSxtYXRjaCl7
cmV0dXJuIG1hdGNoWzNdLTA9PWk7fX0sZmlsdGVyOntQU0VVRE86ZnVuY3Rpb24o
ZWxlbSxtYXRjaCxpLGFycmF5KXt2YXIgbmFtZT1tYXRjaFsxXSxmaWx0ZXI9RXhw
ci5maWx0ZXJzW25hbWVdO2lmKGZpbHRlcil7cmV0dXJuIGZpbHRlcihlbGVtLGks
bWF0Y2gsYXJyYXkpO31lbHNlIGlmKG5hbWU9PT0iY29udGFpbnMiKXtyZXR1cm4o
ZWxlbS50ZXh0Q29udGVudHx8ZWxlbS5pbm5lclRleHR8fCIiKS5pbmRleE9mKG1h
dGNoWzNdKT49MDt9ZWxzZSBpZihuYW1lPT09Im5vdCIpe3ZhciBub3Q9bWF0Y2hb
M107Zm9yKHZhciBpPTAsbD1ub3QubGVuZ3RoO2k8bDtpKyspe2lmKG5vdFtpXT09
PWVsZW0pe3JldHVybiBmYWxzZTt9fQpyZXR1cm4gdHJ1ZTt9fSxDSElMRDpmdW5j
dGlvbihlbGVtLG1hdGNoKXt2YXIgdHlwZT1tYXRjaFsxXSxub2RlPWVsZW07c3dp
dGNoKHR5cGUpe2Nhc2Unb25seSc6Y2FzZSdmaXJzdCc6d2hpbGUobm9kZT1ub2Rl
LnByZXZpb3VzU2libGluZyl7aWYobm9kZS5ub2RlVHlwZT09PTEpcmV0dXJuIGZh
bHNlO30KaWYodHlwZT09J2ZpcnN0JylyZXR1cm4gdHJ1ZTtub2RlPWVsZW07Y2Fz
ZSdsYXN0Jzp3aGlsZShub2RlPW5vZGUubmV4dFNpYmxpbmcpe2lmKG5vZGUubm9k
ZVR5cGU9PT0xKXJldHVybiBmYWxzZTt9CnJldHVybiB0cnVlO2Nhc2UnbnRoJzp2
YXIgZmlyc3Q9bWF0Y2hbMl0sbGFzdD1tYXRjaFszXTtpZihmaXJzdD09MSYmbGFz
dD09MCl7cmV0dXJuIHRydWU7fQp2YXIgZG9uZU5hbWU9bWF0Y2hbMF0scGFyZW50
PWVsZW0ucGFyZW50Tm9kZTtpZihwYXJlbnQmJihwYXJlbnQuc2l6Y2FjaGUhPT1k
b25lTmFtZXx8IWVsZW0ubm9kZUluZGV4KSl7dmFyIGNvdW50PTA7Zm9yKG5vZGU9
cGFyZW50LmZpcnN0Q2hpbGQ7bm9kZTtub2RlPW5vZGUubmV4dFNpYmxpbmcpe2lm
KG5vZGUubm9kZVR5cGU9PT0xKXtub2RlLm5vZGVJbmRleD0rK2NvdW50O319CnBh
cmVudC5zaXpjYWNoZT1kb25lTmFtZTt9CnZhciBkaWZmPWVsZW0ubm9kZUluZGV4
LWxhc3Q7aWYoZmlyc3Q9PTApe3JldHVybiBkaWZmPT0wO31lbHNle3JldHVybihk
aWZmJWZpcnN0PT0wJiZkaWZmL2ZpcnN0Pj0wKTt9fX0sSUQ6ZnVuY3Rpb24oZWxl
bSxtYXRjaCl7cmV0dXJuIGVsZW0ubm9kZVR5cGU9PT0xJiZlbGVtLmdldEF0dHJp
YnV0ZSgiaWQiKT09PW1hdGNoO30sVEFHOmZ1bmN0aW9uKGVsZW0sbWF0Y2gpe3Jl
dHVybihtYXRjaD09PSIqIiYmZWxlbS5ub2RlVHlwZT09PTEpfHxlbGVtLm5vZGVO
YW1lPT09bWF0Y2g7fSxDTEFTUzpmdW5jdGlvbihlbGVtLG1hdGNoKXtyZXR1cm4o
IiAiKyhlbGVtLmNsYXNzTmFtZXx8ZWxlbS5nZXRBdHRyaWJ1dGUoImNsYXNzIikp
KyIgIikuaW5kZXhPZihtYXRjaCk+LTE7fSxBVFRSOmZ1bmN0aW9uKGVsZW0sbWF0
Y2gpe3ZhciBuYW1lPW1hdGNoWzFdLHJlc3VsdD1FeHByLmF0dHJIYW5kbGVbbmFt
ZV0/RXhwci5hdHRySGFuZGxlW25hbWVdKGVsZW0pOmVsZW1bbmFtZV0hPW51bGw/
ZWxlbVtuYW1lXTplbGVtLmdldEF0dHJpYnV0ZShuYW1lKSx2YWx1ZT1yZXN1bHQr
IiIsdHlwZT1tYXRjaFsyXSxjaGVjaz1tYXRjaFs0XTtyZXR1cm4gcmVzdWx0PT1u
dWxsP3R5cGU9PT0iIT0iOnR5cGU9PT0iPSI/dmFsdWU9PT1jaGVjazp0eXBlPT09
Iio9Ij92YWx1ZS5pbmRleE9mKGNoZWNrKT49MDp0eXBlPT09In49Ij8oIiAiK3Zh
bHVlKyIgIikuaW5kZXhPZihjaGVjayk+PTA6IWNoZWNrP3ZhbHVlJiZyZXN1bHQh
PT1mYWxzZTp0eXBlPT09IiE9Ij92YWx1ZSE9Y2hlY2s6dHlwZT09PSJePSI/dmFs
dWUuaW5kZXhPZihjaGVjayk9PT0wOnR5cGU9PT0iJD0iP3ZhbHVlLnN1YnN0cih2
YWx1ZS5sZW5ndGgtY2hlY2subGVuZ3RoKT09PWNoZWNrOnR5cGU9PT0ifD0iP3Zh
bHVlPT09Y2hlY2t8fHZhbHVlLnN1YnN0cigwLGNoZWNrLmxlbmd0aCsxKT09PWNo
ZWNrKyItIjpmYWxzZTt9LFBPUzpmdW5jdGlvbihlbGVtLG1hdGNoLGksYXJyYXkp
e3ZhciBuYW1lPW1hdGNoWzJdLGZpbHRlcj1FeHByLnNldEZpbHRlcnNbbmFtZV07
aWYoZmlsdGVyKXtyZXR1cm4gZmlsdGVyKGVsZW0saSxtYXRjaCxhcnJheSk7fX19
fTt2YXIgb3JpZ1BPUz1FeHByLm1hdGNoLlBPUztmb3IodmFyIHR5cGUgaW4gRXhw
ci5tYXRjaCl7RXhwci5tYXRjaFt0eXBlXT1SZWdFeHAoRXhwci5tYXRjaFt0eXBl
XS5zb3VyY2UrLyg/IVteXFtdKlxdKSg/IVteXChdKlwpKS8uc291cmNlKTt9CnZh
ciBtYWtlQXJyYXk9ZnVuY3Rpb24oYXJyYXkscmVzdWx0cyl7YXJyYXk9QXJyYXku
cHJvdG90eXBlLnNsaWNlLmNhbGwoYXJyYXkpO2lmKHJlc3VsdHMpe3Jlc3VsdHMu
cHVzaC5hcHBseShyZXN1bHRzLGFycmF5KTtyZXR1cm4gcmVzdWx0czt9CnJldHVy
biBhcnJheTt9O3RyeXtBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChkb2N1bWVu
dC5kb2N1bWVudEVsZW1lbnQuY2hpbGROb2Rlcyk7fWNhdGNoKGUpe21ha2VBcnJh
eT1mdW5jdGlvbihhcnJheSxyZXN1bHRzKXt2YXIgcmV0PXJlc3VsdHN8fFtdO2lm
KHRvU3RyaW5nLmNhbGwoYXJyYXkpPT09IltvYmplY3QgQXJyYXldIil7QXJyYXku
cHJvdG90eXBlLnB1c2guYXBwbHkocmV0LGFycmF5KTt9ZWxzZXtpZih0eXBlb2Yg
YXJyYXkubGVuZ3RoPT09Im51bWJlciIpe2Zvcih2YXIgaT0wLGw9YXJyYXkubGVu
Z3RoO2k8bDtpKyspe3JldC5wdXNoKGFycmF5W2ldKTt9fWVsc2V7Zm9yKHZhciBp
PTA7YXJyYXlbaV07aSsrKXtyZXQucHVzaChhcnJheVtpXSk7fX19CnJldHVybiBy
ZXQ7fTt9CnZhciBzb3J0T3JkZXI7aWYoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50
LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKXtzb3J0T3JkZXI9ZnVuY3Rpb24oYSxi
KXt2YXIgcmV0PWEuY29tcGFyZURvY3VtZW50UG9zaXRpb24oYikmND8tMTphPT09
Yj8wOjE7aWYocmV0PT09MCl7aGFzRHVwbGljYXRlPXRydWU7fQpyZXR1cm4gcmV0
O307fWVsc2UgaWYoInNvdXJjZUluZGV4ImluIGRvY3VtZW50LmRvY3VtZW50RWxl
bWVudCl7c29ydE9yZGVyPWZ1bmN0aW9uKGEsYil7dmFyIHJldD1hLnNvdXJjZUlu
ZGV4LWIuc291cmNlSW5kZXg7aWYocmV0PT09MCl7aGFzRHVwbGljYXRlPXRydWU7
fQpyZXR1cm4gcmV0O307fWVsc2UgaWYoZG9jdW1lbnQuY3JlYXRlUmFuZ2Upe3Nv
cnRPcmRlcj1mdW5jdGlvbihhLGIpe3ZhciBhUmFuZ2U9YS5vd25lckRvY3VtZW50
LmNyZWF0ZVJhbmdlKCksYlJhbmdlPWIub3duZXJEb2N1bWVudC5jcmVhdGVSYW5n
ZSgpO2FSYW5nZS5zZWxlY3ROb2RlKGEpO2FSYW5nZS5jb2xsYXBzZSh0cnVlKTti
UmFuZ2Uuc2VsZWN0Tm9kZShiKTtiUmFuZ2UuY29sbGFwc2UodHJ1ZSk7dmFyIHJl
dD1hUmFuZ2UuY29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLlNUQVJUX1RPX0VO
RCxiUmFuZ2UpO2lmKHJldD09PTApe2hhc0R1cGxpY2F0ZT10cnVlO30KcmV0dXJu
IHJldDt9O30KKGZ1bmN0aW9uKCl7dmFyIGZvcm09ZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZm9ybSIpLGlkPSJzY3JpcHQiKyhuZXcgRGF0ZSkuZ2V0VGltZSgpO2Zv
cm0uaW5uZXJIVE1MPSI8aW5wdXQgbmFtZT0nIitpZCsiJy8+Ijt2YXIgcm9vdD1k
b2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7cm9vdC5pbnNlcnRCZWZvcmUoZm9ybSxy
b290LmZpcnN0Q2hpbGQpO2lmKCEhZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQp
KXtFeHByLmZpbmQuSUQ9ZnVuY3Rpb24obWF0Y2gsY29udGV4dCxpc1hNTCl7aWYo
dHlwZW9mIGNvbnRleHQuZ2V0RWxlbWVudEJ5SWQhPT0idW5kZWZpbmVkIiYmIWlz
WE1MKXt2YXIgbT1jb250ZXh0LmdldEVsZW1lbnRCeUlkKG1hdGNoWzFdKTtyZXR1
cm4gbT9tLmlkPT09bWF0Y2hbMV18fHR5cGVvZiBtLmdldEF0dHJpYnV0ZU5vZGUh
PT0idW5kZWZpbmVkIiYmbS5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpLm5vZGVWYWx1
ZT09PW1hdGNoWzFdP1ttXTp1bmRlZmluZWQ6W107fX07RXhwci5maWx0ZXIuSUQ9
ZnVuY3Rpb24oZWxlbSxtYXRjaCl7dmFyIG5vZGU9dHlwZW9mIGVsZW0uZ2V0QXR0
cmlidXRlTm9kZSE9PSJ1bmRlZmluZWQiJiZlbGVtLmdldEF0dHJpYnV0ZU5vZGUo
ImlkIik7cmV0dXJuIGVsZW0ubm9kZVR5cGU9PT0xJiZub2RlJiZub2RlLm5vZGVW
YWx1ZT09PW1hdGNoO307fQpyb290LnJlbW92ZUNoaWxkKGZvcm0pO30pKCk7KGZ1
bmN0aW9uKCl7dmFyIGRpdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtk
aXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgiIikpO2lmKGRp
di5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aD4wKXtFeHByLmZpbmQu
VEFHPWZ1bmN0aW9uKG1hdGNoLGNvbnRleHQpe3ZhciByZXN1bHRzPWNvbnRleHQu
Z2V0RWxlbWVudHNCeVRhZ05hbWUobWF0Y2hbMV0pO2lmKG1hdGNoWzFdPT09Iioi
KXt2YXIgdG1wPVtdO2Zvcih2YXIgaT0wO3Jlc3VsdHNbaV07aSsrKXtpZihyZXN1
bHRzW2ldLm5vZGVUeXBlPT09MSl7dG1wLnB1c2gocmVzdWx0c1tpXSk7fX0KcmVz
dWx0cz10bXA7fQpyZXR1cm4gcmVzdWx0czt9O30KZGl2LmlubmVySFRNTD0iPGEg
aHJlZj0nIyc+PC9hPiI7aWYoZGl2LmZpcnN0Q2hpbGQmJnR5cGVvZiBkaXYuZmly
c3RDaGlsZC5nZXRBdHRyaWJ1dGUhPT0idW5kZWZpbmVkIiYmZGl2LmZpcnN0Q2hp
bGQuZ2V0QXR0cmlidXRlKCJocmVmIikhPT0iIyIpe0V4cHIuYXR0ckhhbmRsZS5o
cmVmPWZ1bmN0aW9uKGVsZW0pe3JldHVybiBlbGVtLmdldEF0dHJpYnV0ZSgiaHJl
ZiIsMik7fTt9fSkoKTtpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKShmdW5j
dGlvbigpe3ZhciBvbGRTaXp6bGU9U2l6emxlLGRpdj1kb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJkaXYiKTtkaXYuaW5uZXJIVE1MPSI8cCBjbGFzcz0nVEVTVCc+PC9w
PiI7aWYoZGl2LnF1ZXJ5U2VsZWN0b3JBbGwmJmRpdi5xdWVyeVNlbGVjdG9yQWxs
KCIuVEVTVCIpLmxlbmd0aD09PTApe3JldHVybjt9ClNpenpsZT1mdW5jdGlvbihx
dWVyeSxjb250ZXh0LGV4dHJhLHNlZWQpe2NvbnRleHQ9Y29udGV4dHx8ZG9jdW1l
bnQ7aWYoIXNlZWQmJmNvbnRleHQubm9kZVR5cGU9PT05JiYhaXNYTUwoY29udGV4
dCkpe3RyeXtyZXR1cm4gbWFrZUFycmF5KGNvbnRleHQucXVlcnlTZWxlY3RvckFs
bChxdWVyeSksZXh0cmEpO31jYXRjaChlKXt9fQpyZXR1cm4gb2xkU2l6emxlKHF1
ZXJ5LGNvbnRleHQsZXh0cmEsc2VlZCk7fTtTaXp6bGUuZmluZD1vbGRTaXp6bGUu
ZmluZDtTaXp6bGUuZmlsdGVyPW9sZFNpenpsZS5maWx0ZXI7U2l6emxlLnNlbGVj
dG9ycz1vbGRTaXp6bGUuc2VsZWN0b3JzO1NpenpsZS5tYXRjaGVzPW9sZFNpenps
ZS5tYXRjaGVzO30pKCk7aWYoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFt
ZSYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmdldEVsZW1lbnRzQnlDbGFzc05h
bWUpKGZ1bmN0aW9uKCl7dmFyIGRpdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJk
aXYiKTtkaXYuaW5uZXJIVE1MPSI8ZGl2IGNsYXNzPSd0ZXN0IGUnPjwvZGl2Pjxk
aXYgY2xhc3M9J3Rlc3QnPjwvZGl2PiI7aWYoZGl2LmdldEVsZW1lbnRzQnlDbGFz
c05hbWUoImUiKS5sZW5ndGg9PT0wKQpyZXR1cm47ZGl2Lmxhc3RDaGlsZC5jbGFz
c05hbWU9ImUiO2lmKGRpdi5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJlIikubGVu
Z3RoPT09MSkKcmV0dXJuO0V4cHIub3JkZXIuc3BsaWNlKDEsMCwiQ0xBU1MiKTtF
eHByLmZpbmQuQ0xBU1M9ZnVuY3Rpb24obWF0Y2gsY29udGV4dCxpc1hNTCl7aWYo
dHlwZW9mIGNvbnRleHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSE9PSJ1bmRlZmlu
ZWQiJiYhaXNYTUwpe3JldHVybiBjb250ZXh0LmdldEVsZW1lbnRzQnlDbGFzc05h
bWUobWF0Y2hbMV0pO319O30pKCk7ZnVuY3Rpb24gZGlyTm9kZUNoZWNrKGRpcixj
dXIsZG9uZU5hbWUsY2hlY2tTZXQsbm9kZUNoZWNrLGlzWE1MKXt2YXIgc2liRGly
PWRpcj09InByZXZpb3VzU2libGluZyImJiFpc1hNTDtmb3IodmFyIGk9MCxsPWNo
ZWNrU2V0Lmxlbmd0aDtpPGw7aSsrKXt2YXIgZWxlbT1jaGVja1NldFtpXTtpZihl
bGVtKXtpZihzaWJEaXImJmVsZW0ubm9kZVR5cGU9PT0xKXtlbGVtLnNpemNhY2hl
PWRvbmVOYW1lO2VsZW0uc2l6c2V0PWk7fQplbGVtPWVsZW1bZGlyXTt2YXIgbWF0
Y2g9ZmFsc2U7d2hpbGUoZWxlbSl7aWYoZWxlbS5zaXpjYWNoZT09PWRvbmVOYW1l
KXttYXRjaD1jaGVja1NldFtlbGVtLnNpenNldF07YnJlYWs7fQppZihlbGVtLm5v
ZGVUeXBlPT09MSYmIWlzWE1MKXtlbGVtLnNpemNhY2hlPWRvbmVOYW1lO2VsZW0u
c2l6c2V0PWk7fQppZihlbGVtLm5vZGVOYW1lPT09Y3VyKXttYXRjaD1lbGVtO2Jy
ZWFrO30KZWxlbT1lbGVtW2Rpcl07fQpjaGVja1NldFtpXT1tYXRjaDt9fX0KZnVu
Y3Rpb24gZGlyQ2hlY2soZGlyLGN1cixkb25lTmFtZSxjaGVja1NldCxub2RlQ2hl
Y2ssaXNYTUwpe3ZhciBzaWJEaXI9ZGlyPT0icHJldmlvdXNTaWJsaW5nIiYmIWlz
WE1MO2Zvcih2YXIgaT0wLGw9Y2hlY2tTZXQubGVuZ3RoO2k8bDtpKyspe3ZhciBl
bGVtPWNoZWNrU2V0W2ldO2lmKGVsZW0pe2lmKHNpYkRpciYmZWxlbS5ub2RlVHlw
ZT09PTEpe2VsZW0uc2l6Y2FjaGU9ZG9uZU5hbWU7ZWxlbS5zaXpzZXQ9aTt9CmVs
ZW09ZWxlbVtkaXJdO3ZhciBtYXRjaD1mYWxzZTt3aGlsZShlbGVtKXtpZihlbGVt
LnNpemNhY2hlPT09ZG9uZU5hbWUpe21hdGNoPWNoZWNrU2V0W2VsZW0uc2l6c2V0
XTticmVhazt9CmlmKGVsZW0ubm9kZVR5cGU9PT0xKXtpZighaXNYTUwpe2VsZW0u
c2l6Y2FjaGU9ZG9uZU5hbWU7ZWxlbS5zaXpzZXQ9aTt9CmlmKHR5cGVvZiBjdXIh
PT0ic3RyaW5nIil7aWYoZWxlbT09PWN1cil7bWF0Y2g9dHJ1ZTticmVhazt9fWVs
c2UgaWYoU2l6emxlLmZpbHRlcihjdXIsW2VsZW1dKS5sZW5ndGg+MCl7bWF0Y2g9
ZWxlbTticmVhazt9fQplbGVtPWVsZW1bZGlyXTt9CmNoZWNrU2V0W2ldPW1hdGNo
O319fQp2YXIgY29udGFpbnM9ZG9jdW1lbnQuY29tcGFyZURvY3VtZW50UG9zaXRp
b24/ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlv
bihiKSYxNjt9OmZ1bmN0aW9uKGEsYil7cmV0dXJuIGEhPT1iJiYoYS5jb250YWlu
cz9hLmNvbnRhaW5zKGIpOnRydWUpO307dmFyIGlzWE1MPWZ1bmN0aW9uKGVsZW0p
e3JldHVybiBlbGVtLm5vZGVUeXBlPT09OSYmZWxlbS5kb2N1bWVudEVsZW1lbnQu
bm9kZU5hbWUhPT0iSFRNTCJ8fCEhZWxlbS5vd25lckRvY3VtZW50JiZpc1hNTChl
bGVtLm93bmVyRG9jdW1lbnQpO307dmFyIHBvc1Byb2Nlc3M9ZnVuY3Rpb24oc2Vs
ZWN0b3IsY29udGV4dCl7dmFyIHRtcFNldD1bXSxsYXRlcj0iIixtYXRjaCxyb290
PWNvbnRleHQubm9kZVR5cGU/W2NvbnRleHRdOmNvbnRleHQ7d2hpbGUoKG1hdGNo
PUV4cHIubWF0Y2guUFNFVURPLmV4ZWMoc2VsZWN0b3IpKSl7bGF0ZXIrPW1hdGNo
WzBdO3NlbGVjdG9yPXNlbGVjdG9yLnJlcGxhY2UoRXhwci5tYXRjaC5QU0VVRE8s
IiIpO30Kc2VsZWN0b3I9RXhwci5yZWxhdGl2ZVtzZWxlY3Rvcl0/c2VsZWN0b3Ir
IioiOnNlbGVjdG9yO2Zvcih2YXIgaT0wLGw9cm9vdC5sZW5ndGg7aTxsO2krKyl7
U2l6emxlKHNlbGVjdG9yLHJvb3RbaV0sdG1wU2V0KTt9CnJldHVybiBTaXp6bGUu
ZmlsdGVyKGxhdGVyLHRtcFNldCk7fTtqUXVlcnkuZmluZD1TaXp6bGU7alF1ZXJ5
LmZpbHRlcj1TaXp6bGUuZmlsdGVyO2pRdWVyeS5leHByPVNpenpsZS5zZWxlY3Rv
cnM7alF1ZXJ5LmV4cHJbIjoiXT1qUXVlcnkuZXhwci5maWx0ZXJzO1NpenpsZS5z
ZWxlY3RvcnMuZmlsdGVycy5oaWRkZW49ZnVuY3Rpb24oZWxlbSl7cmV0dXJuIGVs
ZW0ub2Zmc2V0V2lkdGg9PT0wfHxlbGVtLm9mZnNldEhlaWdodD09PTA7fTtTaXp6
bGUuc2VsZWN0b3JzLmZpbHRlcnMudmlzaWJsZT1mdW5jdGlvbihlbGVtKXtyZXR1
cm4gZWxlbS5vZmZzZXRXaWR0aD4wfHxlbGVtLm9mZnNldEhlaWdodD4wO307U2l6
emxlLnNlbGVjdG9ycy5maWx0ZXJzLmFuaW1hdGVkPWZ1bmN0aW9uKGVsZW0pe3Jl
dHVybiBqUXVlcnkuZ3JlcChqUXVlcnkudGltZXJzLGZ1bmN0aW9uKGZuKXtyZXR1
cm4gZWxlbT09PWZuLmVsZW07fSkubGVuZ3RoO307alF1ZXJ5Lm11bHRpRmlsdGVy
PWZ1bmN0aW9uKGV4cHIsZWxlbXMsbm90KXtpZihub3Qpe2V4cHI9Ijpub3QoIitl
eHByKyIpIjt9CnJldHVybiBTaXp6bGUubWF0Y2hlcyhleHByLGVsZW1zKTt9O2pR
dWVyeS5kaXI9ZnVuY3Rpb24oZWxlbSxkaXIpe3ZhciBtYXRjaGVkPVtdLGN1cj1l
bGVtW2Rpcl07d2hpbGUoY3VyJiZjdXIhPWRvY3VtZW50KXtpZihjdXIubm9kZVR5
cGU9PTEpCm1hdGNoZWQucHVzaChjdXIpO2N1cj1jdXJbZGlyXTt9CnJldHVybiBt
YXRjaGVkO307alF1ZXJ5Lm50aD1mdW5jdGlvbihjdXIscmVzdWx0LGRpcixlbGVt
KXtyZXN1bHQ9cmVzdWx0fHwxO3ZhciBudW09MDtmb3IoO2N1cjtjdXI9Y3VyW2Rp
cl0pCmlmKGN1ci5ub2RlVHlwZT09MSYmKytudW09PXJlc3VsdCkKYnJlYWs7cmV0
dXJuIGN1cjt9O2pRdWVyeS5zaWJsaW5nPWZ1bmN0aW9uKG4sZWxlbSl7dmFyIHI9
W107Zm9yKDtuO249bi5uZXh0U2libGluZyl7aWYobi5ub2RlVHlwZT09MSYmbiE9
ZWxlbSkKci5wdXNoKG4pO30KcmV0dXJuIHI7fTtyZXR1cm47d2luZG93LlNpenps
ZT1TaXp6bGU7fSkoKTtqUXVlcnkuZXZlbnQ9e2FkZDpmdW5jdGlvbihlbGVtLHR5
cGVzLGhhbmRsZXIsZGF0YSl7aWYoZWxlbS5ub2RlVHlwZT09M3x8ZWxlbS5ub2Rl
VHlwZT09OCkKcmV0dXJuO2lmKGVsZW0uc2V0SW50ZXJ2YWwmJmVsZW0hPXdpbmRv
dykKZWxlbT13aW5kb3c7aWYoIWhhbmRsZXIuZ3VpZCkKaGFuZGxlci5ndWlkPXRo
aXMuZ3VpZCsrO2lmKGRhdGEhPT11bmRlZmluZWQpe3ZhciBmbj1oYW5kbGVyO2hh
bmRsZXI9dGhpcy5wcm94eShmbik7aGFuZGxlci5kYXRhPWRhdGE7fQp2YXIgZXZl
bnRzPWpRdWVyeS5kYXRhKGVsZW0sImV2ZW50cyIpfHxqUXVlcnkuZGF0YShlbGVt
LCJldmVudHMiLHt9KSxoYW5kbGU9alF1ZXJ5LmRhdGEoZWxlbSwiaGFuZGxlIil8
fGpRdWVyeS5kYXRhKGVsZW0sImhhbmRsZSIsZnVuY3Rpb24oKXtyZXR1cm4gdHlw
ZW9mIGpRdWVyeSE9PSJ1bmRlZmluZWQiJiYhalF1ZXJ5LmV2ZW50LnRyaWdnZXJl
ZD9qUXVlcnkuZXZlbnQuaGFuZGxlLmFwcGx5KGFyZ3VtZW50cy5jYWxsZWUuZWxl
bSxhcmd1bWVudHMpOnVuZGVmaW5lZDt9KTtoYW5kbGUuZWxlbT1lbGVtO2pRdWVy
eS5lYWNoKHR5cGVzLnNwbGl0KC9ccysvKSxmdW5jdGlvbihpbmRleCx0eXBlKXt2
YXIgbmFtZXNwYWNlcz10eXBlLnNwbGl0KCIuIik7dHlwZT1uYW1lc3BhY2VzLnNo
aWZ0KCk7aGFuZGxlci50eXBlPW5hbWVzcGFjZXMuc2xpY2UoKS5zb3J0KCkuam9p
bigiLiIpO3ZhciBoYW5kbGVycz1ldmVudHNbdHlwZV07aWYoalF1ZXJ5LmV2ZW50
LnNwZWNpYWxBbGxbdHlwZV0pCmpRdWVyeS5ldmVudC5zcGVjaWFsQWxsW3R5cGVd
LnNldHVwLmNhbGwoZWxlbSxkYXRhLG5hbWVzcGFjZXMpO2lmKCFoYW5kbGVycyl7
aGFuZGxlcnM9ZXZlbnRzW3R5cGVdPXt9O2lmKCFqUXVlcnkuZXZlbnQuc3BlY2lh
bFt0eXBlXXx8alF1ZXJ5LmV2ZW50LnNwZWNpYWxbdHlwZV0uc2V0dXAuY2FsbChl
bGVtLGRhdGEsbmFtZXNwYWNlcyk9PT1mYWxzZSl7aWYoZWxlbS5hZGRFdmVudExp
c3RlbmVyKQplbGVtLmFkZEV2ZW50TGlzdGVuZXIodHlwZSxoYW5kbGUsZmFsc2Up
O2Vsc2UgaWYoZWxlbS5hdHRhY2hFdmVudCkKZWxlbS5hdHRhY2hFdmVudCgib24i
K3R5cGUsaGFuZGxlKTt9fQpoYW5kbGVyc1toYW5kbGVyLmd1aWRdPWhhbmRsZXI7
alF1ZXJ5LmV2ZW50Lmdsb2JhbFt0eXBlXT10cnVlO30pO2VsZW09bnVsbDt9LGd1
aWQ6MSxnbG9iYWw6e30scmVtb3ZlOmZ1bmN0aW9uKGVsZW0sdHlwZXMsaGFuZGxl
cil7aWYoZWxlbS5ub2RlVHlwZT09M3x8ZWxlbS5ub2RlVHlwZT09OCkKcmV0dXJu
O3ZhciBldmVudHM9alF1ZXJ5LmRhdGEoZWxlbSwiZXZlbnRzIikscmV0LGluZGV4
O2lmKGV2ZW50cyl7aWYodHlwZXM9PT11bmRlZmluZWR8fCh0eXBlb2YgdHlwZXM9
PT0ic3RyaW5nIiYmdHlwZXMuY2hhckF0KDApPT0iLiIpKQpmb3IodmFyIHR5cGUg
aW4gZXZlbnRzKQp0aGlzLnJlbW92ZShlbGVtLHR5cGUrKHR5cGVzfHwiIikpO2Vs
c2V7aWYodHlwZXMudHlwZSl7aGFuZGxlcj10eXBlcy5oYW5kbGVyO3R5cGVzPXR5
cGVzLnR5cGU7fQpqUXVlcnkuZWFjaCh0eXBlcy5zcGxpdCgvXHMrLyksZnVuY3Rp
b24oaW5kZXgsdHlwZSl7dmFyIG5hbWVzcGFjZXM9dHlwZS5zcGxpdCgiLiIpO3R5
cGU9bmFtZXNwYWNlcy5zaGlmdCgpO3ZhciBuYW1lc3BhY2U9UmVnRXhwKCIoXnxc
XC4pIituYW1lc3BhY2VzLnNsaWNlKCkuc29ydCgpLmpvaW4oIi4qXFwuIikrIihc
XC58JCkiKTtpZihldmVudHNbdHlwZV0pe2lmKGhhbmRsZXIpCmRlbGV0ZSBldmVu
dHNbdHlwZV1baGFuZGxlci5ndWlkXTtlbHNlCmZvcih2YXIgaGFuZGxlIGluIGV2
ZW50c1t0eXBlXSkKaWYobmFtZXNwYWNlLnRlc3QoZXZlbnRzW3R5cGVdW2hhbmRs
ZV0udHlwZSkpCmRlbGV0ZSBldmVudHNbdHlwZV1baGFuZGxlXTtpZihqUXVlcnku
ZXZlbnQuc3BlY2lhbEFsbFt0eXBlXSkKalF1ZXJ5LmV2ZW50LnNwZWNpYWxBbGxb
dHlwZV0udGVhcmRvd24uY2FsbChlbGVtLG5hbWVzcGFjZXMpO2ZvcihyZXQgaW4g
ZXZlbnRzW3R5cGVdKWJyZWFrO2lmKCFyZXQpe2lmKCFqUXVlcnkuZXZlbnQuc3Bl
Y2lhbFt0eXBlXXx8alF1ZXJ5LmV2ZW50LnNwZWNpYWxbdHlwZV0udGVhcmRvd24u
Y2FsbChlbGVtLG5hbWVzcGFjZXMpPT09ZmFsc2Upe2lmKGVsZW0ucmVtb3ZlRXZl
bnRMaXN0ZW5lcikKZWxlbS5yZW1vdmVFdmVudExpc3RlbmVyKHR5cGUsalF1ZXJ5
LmRhdGEoZWxlbSwiaGFuZGxlIiksZmFsc2UpO2Vsc2UgaWYoZWxlbS5kZXRhY2hF
dmVudCkKZWxlbS5kZXRhY2hFdmVudCgib24iK3R5cGUsalF1ZXJ5LmRhdGEoZWxl
bSwiaGFuZGxlIikpO30KcmV0PW51bGw7ZGVsZXRlIGV2ZW50c1t0eXBlXTt9fX0p
O30KZm9yKHJldCBpbiBldmVudHMpYnJlYWs7aWYoIXJldCl7dmFyIGhhbmRsZT1q
UXVlcnkuZGF0YShlbGVtLCJoYW5kbGUiKTtpZihoYW5kbGUpaGFuZGxlLmVsZW09
bnVsbDtqUXVlcnkucmVtb3ZlRGF0YShlbGVtLCJldmVudHMiKTtqUXVlcnkucmVt
b3ZlRGF0YShlbGVtLCJoYW5kbGUiKTt9fX0sdHJpZ2dlcjpmdW5jdGlvbihldmVu
dCxkYXRhLGVsZW0sYnViYmxpbmcpe3ZhciB0eXBlPWV2ZW50LnR5cGV8fGV2ZW50
O2lmKCFidWJibGluZyl7ZXZlbnQ9dHlwZW9mIGV2ZW50PT09Im9iamVjdCI/ZXZl
bnRbZXhwYW5kb10/ZXZlbnQ6alF1ZXJ5LmV4dGVuZChqUXVlcnkuRXZlbnQodHlw
ZSksZXZlbnQpOmpRdWVyeS5FdmVudCh0eXBlKTtpZih0eXBlLmluZGV4T2YoIiEi
KT49MCl7ZXZlbnQudHlwZT10eXBlPXR5cGUuc2xpY2UoMCwtMSk7ZXZlbnQuZXhj
bHVzaXZlPXRydWU7fQppZighZWxlbSl7ZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7
aWYodGhpcy5nbG9iYWxbdHlwZV0pCmpRdWVyeS5lYWNoKGpRdWVyeS5jYWNoZSxm
dW5jdGlvbigpe2lmKHRoaXMuZXZlbnRzJiZ0aGlzLmV2ZW50c1t0eXBlXSkKalF1
ZXJ5LmV2ZW50LnRyaWdnZXIoZXZlbnQsZGF0YSx0aGlzLmhhbmRsZS5lbGVtKTt9
KTt9CmlmKCFlbGVtfHxlbGVtLm5vZGVUeXBlPT0zfHxlbGVtLm5vZGVUeXBlPT04
KQpyZXR1cm4gdW5kZWZpbmVkO2V2ZW50LnJlc3VsdD11bmRlZmluZWQ7ZXZlbnQu
dGFyZ2V0PWVsZW07ZGF0YT1qUXVlcnkubWFrZUFycmF5KGRhdGEpO2RhdGEudW5z
aGlmdChldmVudCk7fQpldmVudC5jdXJyZW50VGFyZ2V0PWVsZW07dmFyIGhhbmRs
ZT1qUXVlcnkuZGF0YShlbGVtLCJoYW5kbGUiKTtpZihoYW5kbGUpCmhhbmRsZS5h
cHBseShlbGVtLGRhdGEpO2lmKCghZWxlbVt0eXBlXXx8KGpRdWVyeS5ub2RlTmFt
ZShlbGVtLCdhJykmJnR5cGU9PSJjbGljayIpKSYmZWxlbVsib24iK3R5cGVdJiZl
bGVtWyJvbiIrdHlwZV0uYXBwbHkoZWxlbSxkYXRhKT09PWZhbHNlKQpldmVudC5y
ZXN1bHQ9ZmFsc2U7aWYoIWJ1YmJsaW5nJiZlbGVtW3R5cGVdJiYhZXZlbnQuaXNE
ZWZhdWx0UHJldmVudGVkKCkmJiEoalF1ZXJ5Lm5vZGVOYW1lKGVsZW0sJ2EnKSYm
dHlwZT09ImNsaWNrIikpe3RoaXMudHJpZ2dlcmVkPXRydWU7dHJ5e2VsZW1bdHlw
ZV0oKTt9Y2F0Y2goZSl7fX0KdGhpcy50cmlnZ2VyZWQ9ZmFsc2U7aWYoIWV2ZW50
LmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpe3ZhciBwYXJlbnQ9ZWxlbS5wYXJlbnRO
b2RlfHxlbGVtLm93bmVyRG9jdW1lbnQ7aWYocGFyZW50KQpqUXVlcnkuZXZlbnQu
dHJpZ2dlcihldmVudCxkYXRhLHBhcmVudCx0cnVlKTt9fSxoYW5kbGU6ZnVuY3Rp
b24oZXZlbnQpe3ZhciBhbGwsaGFuZGxlcnM7ZXZlbnQ9YXJndW1lbnRzWzBdPWpR
dWVyeS5ldmVudC5maXgoZXZlbnR8fHdpbmRvdy5ldmVudCk7ZXZlbnQuY3VycmVu
dFRhcmdldD10aGlzO3ZhciBuYW1lc3BhY2VzPWV2ZW50LnR5cGUuc3BsaXQoIi4i
KTtldmVudC50eXBlPW5hbWVzcGFjZXMuc2hpZnQoKTthbGw9IW5hbWVzcGFjZXMu
bGVuZ3RoJiYhZXZlbnQuZXhjbHVzaXZlO3ZhciBuYW1lc3BhY2U9UmVnRXhwKCIo
XnxcXC4pIituYW1lc3BhY2VzLnNsaWNlKCkuc29ydCgpLmpvaW4oIi4qXFwuIikr
IihcXC58JCkiKTtoYW5kbGVycz0oalF1ZXJ5LmRhdGEodGhpcywiZXZlbnRzIil8
fHt9KVtldmVudC50eXBlXTtmb3IodmFyIGogaW4gaGFuZGxlcnMpe3ZhciBoYW5k
bGVyPWhhbmRsZXJzW2pdO2lmKGFsbHx8bmFtZXNwYWNlLnRlc3QoaGFuZGxlci50
eXBlKSl7ZXZlbnQuaGFuZGxlcj1oYW5kbGVyO2V2ZW50LmRhdGE9aGFuZGxlci5k
YXRhO3ZhciByZXQ9aGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyk7aWYocmV0
IT09dW5kZWZpbmVkKXtldmVudC5yZXN1bHQ9cmV0O2lmKHJldD09PWZhbHNlKXtl
dmVudC5wcmV2ZW50RGVmYXVsdCgpO2V2ZW50LnN0b3BQcm9wYWdhdGlvbigpO319
CmlmKGV2ZW50LmlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkKCkpCmJyZWFr
O319fSxwcm9wczoiYWx0S2V5IGF0dHJDaGFuZ2UgYXR0ck5hbWUgYnViYmxlcyBi
dXR0b24gY2FuY2VsYWJsZSBjaGFyQ29kZSBjbGllbnRYIGNsaWVudFkgY3RybEtl
eSBjdXJyZW50VGFyZ2V0IGRhdGEgZGV0YWlsIGV2ZW50UGhhc2UgZnJvbUVsZW1l
bnQgaGFuZGxlciBrZXlDb2RlIG1ldGFLZXkgbmV3VmFsdWUgb3JpZ2luYWxUYXJn
ZXQgcGFnZVggcGFnZVkgcHJldlZhbHVlIHJlbGF0ZWROb2RlIHJlbGF0ZWRUYXJn
ZXQgc2NyZWVuWCBzY3JlZW5ZIHNoaWZ0S2V5IHNyY0VsZW1lbnQgdGFyZ2V0IHRv
RWxlbWVudCB2aWV3IHdoZWVsRGVsdGEgd2hpY2giLnNwbGl0KCIgIiksZml4OmZ1
bmN0aW9uKGV2ZW50KXtpZihldmVudFtleHBhbmRvXSkKcmV0dXJuIGV2ZW50O3Zh
ciBvcmlnaW5hbEV2ZW50PWV2ZW50O2V2ZW50PWpRdWVyeS5FdmVudChvcmlnaW5h
bEV2ZW50KTtmb3IodmFyIGk9dGhpcy5wcm9wcy5sZW5ndGgscHJvcDtpOyl7cHJv
cD10aGlzLnByb3BzWy0taV07ZXZlbnRbcHJvcF09b3JpZ2luYWxFdmVudFtwcm9w
XTt9CmlmKCFldmVudC50YXJnZXQpCmV2ZW50LnRhcmdldD1ldmVudC5zcmNFbGVt
ZW50fHxkb2N1bWVudDtpZihldmVudC50YXJnZXQubm9kZVR5cGU9PTMpCmV2ZW50
LnRhcmdldD1ldmVudC50YXJnZXQucGFyZW50Tm9kZTtpZighZXZlbnQucmVsYXRl
ZFRhcmdldCYmZXZlbnQuZnJvbUVsZW1lbnQpCmV2ZW50LnJlbGF0ZWRUYXJnZXQ9
ZXZlbnQuZnJvbUVsZW1lbnQ9PWV2ZW50LnRhcmdldD9ldmVudC50b0VsZW1lbnQ6
ZXZlbnQuZnJvbUVsZW1lbnQ7aWYoZXZlbnQucGFnZVg9PW51bGwmJmV2ZW50LmNs
aWVudFghPW51bGwpe3ZhciBkb2M9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGJv
ZHk9ZG9jdW1lbnQuYm9keTtldmVudC5wYWdlWD1ldmVudC5jbGllbnRYKyhkb2Mm
JmRvYy5zY3JvbGxMZWZ0fHxib2R5JiZib2R5LnNjcm9sbExlZnR8fDApLShkb2Mu
Y2xpZW50TGVmdHx8MCk7ZXZlbnQucGFnZVk9ZXZlbnQuY2xpZW50WSsoZG9jJiZk
b2Muc2Nyb2xsVG9wfHxib2R5JiZib2R5LnNjcm9sbFRvcHx8MCktKGRvYy5jbGll
bnRUb3B8fDApO30KaWYoIWV2ZW50LndoaWNoJiYoKGV2ZW50LmNoYXJDb2RlfHxl
dmVudC5jaGFyQ29kZT09PTApP2V2ZW50LmNoYXJDb2RlOmV2ZW50LmtleUNvZGUp
KQpldmVudC53aGljaD1ldmVudC5jaGFyQ29kZXx8ZXZlbnQua2V5Q29kZTtpZigh
ZXZlbnQubWV0YUtleSYmZXZlbnQuY3RybEtleSkKZXZlbnQubWV0YUtleT1ldmVu
dC5jdHJsS2V5O2lmKCFldmVudC53aGljaCYmZXZlbnQuYnV0dG9uKQpldmVudC53
aGljaD0oZXZlbnQuYnV0dG9uJjE/MTooZXZlbnQuYnV0dG9uJjI/MzooZXZlbnQu
YnV0dG9uJjQ/MjowKSkpO3JldHVybiBldmVudDt9LHByb3h5OmZ1bmN0aW9uKGZu
LHByb3h5KXtwcm94eT1wcm94eXx8ZnVuY3Rpb24oKXtyZXR1cm4gZm4uYXBwbHko
dGhpcyxhcmd1bWVudHMpO307cHJveHkuZ3VpZD1mbi5ndWlkPWZuLmd1aWR8fHBy
b3h5Lmd1aWR8fHRoaXMuZ3VpZCsrO3JldHVybiBwcm94eTt9LHNwZWNpYWw6e3Jl
YWR5OntzZXR1cDpiaW5kUmVhZHksdGVhcmRvd246ZnVuY3Rpb24oKXt9fX0sc3Bl
Y2lhbEFsbDp7bGl2ZTp7c2V0dXA6ZnVuY3Rpb24oc2VsZWN0b3IsbmFtZXNwYWNl
cyl7alF1ZXJ5LmV2ZW50LmFkZCh0aGlzLG5hbWVzcGFjZXNbMF0sbGl2ZUhhbmRs
ZXIpO30sdGVhcmRvd246ZnVuY3Rpb24obmFtZXNwYWNlcyl7aWYobmFtZXNwYWNl
cy5sZW5ndGgpe3ZhciByZW1vdmU9MCxuYW1lPVJlZ0V4cCgiKF58XFwuKSIrbmFt
ZXNwYWNlc1swXSsiKFxcLnwkKSIpO2pRdWVyeS5lYWNoKChqUXVlcnkuZGF0YSh0
aGlzLCJldmVudHMiKS5saXZlfHx7fSksZnVuY3Rpb24oKXtpZihuYW1lLnRlc3Qo
dGhpcy50eXBlKSkKcmVtb3ZlKys7fSk7aWYocmVtb3ZlPDEpCmpRdWVyeS5ldmVu
dC5yZW1vdmUodGhpcyxuYW1lc3BhY2VzWzBdLGxpdmVIYW5kbGVyKTt9fX19fTtq
UXVlcnkuRXZlbnQ9ZnVuY3Rpb24oc3JjKXtpZighdGhpcy5wcmV2ZW50RGVmYXVs
dCkKcmV0dXJuIG5ldyBqUXVlcnkuRXZlbnQoc3JjKTtpZihzcmMmJnNyYy50eXBl
KXt0aGlzLm9yaWdpbmFsRXZlbnQ9c3JjO3RoaXMudHlwZT1zcmMudHlwZTt9ZWxz
ZQp0aGlzLnR5cGU9c3JjO3RoaXMudGltZVN0YW1wPW5vdygpO3RoaXNbZXhwYW5k
b109dHJ1ZTt9O2Z1bmN0aW9uIHJldHVybkZhbHNlKCl7cmV0dXJuIGZhbHNlO30K
ZnVuY3Rpb24gcmV0dXJuVHJ1ZSgpe3JldHVybiB0cnVlO30KalF1ZXJ5LkV2ZW50
LnByb3RvdHlwZT17cHJldmVudERlZmF1bHQ6ZnVuY3Rpb24oKXt0aGlzLmlzRGVm
YXVsdFByZXZlbnRlZD1yZXR1cm5UcnVlO3ZhciBlPXRoaXMub3JpZ2luYWxFdmVu
dDtpZighZSkKcmV0dXJuO2lmKGUucHJldmVudERlZmF1bHQpCmUucHJldmVudERl
ZmF1bHQoKTtlLnJldHVyblZhbHVlPWZhbHNlO30sc3RvcFByb3BhZ2F0aW9uOmZ1
bmN0aW9uKCl7dGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1yZXR1cm5UcnVlO3Zh
ciBlPXRoaXMub3JpZ2luYWxFdmVudDtpZighZSkKcmV0dXJuO2lmKGUuc3RvcFBy
b3BhZ2F0aW9uKQplLnN0b3BQcm9wYWdhdGlvbigpO2UuY2FuY2VsQnViYmxlPXRy
dWU7fSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt0aGlzLmlz
SW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkPXJldHVyblRydWU7dGhpcy5zdG9w
UHJvcGFnYXRpb24oKTt9LGlzRGVmYXVsdFByZXZlbnRlZDpyZXR1cm5GYWxzZSxp
c1Byb3BhZ2F0aW9uU3RvcHBlZDpyZXR1cm5GYWxzZSxpc0ltbWVkaWF0ZVByb3Bh
Z2F0aW9uU3RvcHBlZDpyZXR1cm5GYWxzZX07dmFyIHdpdGhpbkVsZW1lbnQ9ZnVu
Y3Rpb24oZXZlbnQpe3ZhciBwYXJlbnQ9ZXZlbnQucmVsYXRlZFRhcmdldDt3aGls
ZShwYXJlbnQmJnBhcmVudCE9dGhpcykKdHJ5e3BhcmVudD1wYXJlbnQucGFyZW50
Tm9kZTt9CmNhdGNoKGUpe3BhcmVudD10aGlzO30KaWYocGFyZW50IT10aGlzKXtl
dmVudC50eXBlPWV2ZW50LmRhdGE7alF1ZXJ5LmV2ZW50LmhhbmRsZS5hcHBseSh0
aGlzLGFyZ3VtZW50cyk7fX07alF1ZXJ5LmVhY2goe21vdXNlb3ZlcjonbW91c2Vl
bnRlcicsbW91c2VvdXQ6J21vdXNlbGVhdmUnfSxmdW5jdGlvbihvcmlnLGZpeCl7
alF1ZXJ5LmV2ZW50LnNwZWNpYWxbZml4XT17c2V0dXA6ZnVuY3Rpb24oKXtqUXVl
cnkuZXZlbnQuYWRkKHRoaXMsb3JpZyx3aXRoaW5FbGVtZW50LGZpeCk7fSx0ZWFy
ZG93bjpmdW5jdGlvbigpe2pRdWVyeS5ldmVudC5yZW1vdmUodGhpcyxvcmlnLHdp
dGhpbkVsZW1lbnQpO319O30pO2pRdWVyeS5mbi5leHRlbmQoe2JpbmQ6ZnVuY3Rp
b24odHlwZSxkYXRhLGZuKXtyZXR1cm4gdHlwZT09InVubG9hZCI/dGhpcy5vbmUo
dHlwZSxkYXRhLGZuKTp0aGlzLmVhY2goZnVuY3Rpb24oKXtqUXVlcnkuZXZlbnQu
YWRkKHRoaXMsdHlwZSxmbnx8ZGF0YSxmbiYmZGF0YSk7fSk7fSxvbmU6ZnVuY3Rp
b24odHlwZSxkYXRhLGZuKXt2YXIgb25lPWpRdWVyeS5ldmVudC5wcm94eShmbnx8
ZGF0YSxmdW5jdGlvbihldmVudCl7alF1ZXJ5KHRoaXMpLnVuYmluZChldmVudCxv
bmUpO3JldHVybihmbnx8ZGF0YSkuYXBwbHkodGhpcyxhcmd1bWVudHMpO30pO3Jl
dHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtqUXVlcnkuZXZlbnQuYWRkKHRoaXMs
dHlwZSxvbmUsZm4mJmRhdGEpO30pO30sdW5iaW5kOmZ1bmN0aW9uKHR5cGUsZm4p
e3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtqUXVlcnkuZXZlbnQucmVtb3Zl
KHRoaXMsdHlwZSxmbik7fSk7fSx0cmlnZ2VyOmZ1bmN0aW9uKHR5cGUsZGF0YSl7
cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2pRdWVyeS5ldmVudC50cmlnZ2Vy
KHR5cGUsZGF0YSx0aGlzKTt9KTt9LHRyaWdnZXJIYW5kbGVyOmZ1bmN0aW9uKHR5
cGUsZGF0YSl7aWYodGhpc1swXSl7dmFyIGV2ZW50PWpRdWVyeS5FdmVudCh0eXBl
KTtldmVudC5wcmV2ZW50RGVmYXVsdCgpO2V2ZW50LnN0b3BQcm9wYWdhdGlvbigp
O2pRdWVyeS5ldmVudC50cmlnZ2VyKGV2ZW50LGRhdGEsdGhpc1swXSk7cmV0dXJu
IGV2ZW50LnJlc3VsdDt9fSx0b2dnbGU6ZnVuY3Rpb24oZm4pe3ZhciBhcmdzPWFy
Z3VtZW50cyxpPTE7d2hpbGUoaTxhcmdzLmxlbmd0aCkKalF1ZXJ5LmV2ZW50LnBy
b3h5KGZuLGFyZ3NbaSsrXSk7cmV0dXJuIHRoaXMuY2xpY2soalF1ZXJ5LmV2ZW50
LnByb3h5KGZuLGZ1bmN0aW9uKGV2ZW50KXt0aGlzLmxhc3RUb2dnbGU9KHRoaXMu
bGFzdFRvZ2dsZXx8MCklaTtldmVudC5wcmV2ZW50RGVmYXVsdCgpO3JldHVybiBh
cmdzW3RoaXMubGFzdFRvZ2dsZSsrXS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fGZh
bHNlO30pKTt9LGhvdmVyOmZ1bmN0aW9uKGZuT3Zlcixmbk91dCl7cmV0dXJuIHRo
aXMubW91c2VlbnRlcihmbk92ZXIpLm1vdXNlbGVhdmUoZm5PdXQpO30scmVhZHk6
ZnVuY3Rpb24oZm4pe2JpbmRSZWFkeSgpO2lmKGpRdWVyeS5pc1JlYWR5KQpmbi5j
YWxsKGRvY3VtZW50LGpRdWVyeSk7ZWxzZQpqUXVlcnkucmVhZHlMaXN0LnB1c2go
Zm4pO3JldHVybiB0aGlzO30sbGl2ZTpmdW5jdGlvbih0eXBlLGZuKXt2YXIgcHJv
eHk9alF1ZXJ5LmV2ZW50LnByb3h5KGZuKTtwcm94eS5ndWlkKz10aGlzLnNlbGVj
dG9yK3R5cGU7alF1ZXJ5KGRvY3VtZW50KS5iaW5kKGxpdmVDb252ZXJ0KHR5cGUs
dGhpcy5zZWxlY3RvciksdGhpcy5zZWxlY3Rvcixwcm94eSk7cmV0dXJuIHRoaXM7
fSxkaWU6ZnVuY3Rpb24odHlwZSxmbil7alF1ZXJ5KGRvY3VtZW50KS51bmJpbmQo
bGl2ZUNvbnZlcnQodHlwZSx0aGlzLnNlbGVjdG9yKSxmbj97Z3VpZDpmbi5ndWlk
K3RoaXMuc2VsZWN0b3IrdHlwZX06bnVsbCk7cmV0dXJuIHRoaXM7fX0pO2Z1bmN0
aW9uIGxpdmVIYW5kbGVyKGV2ZW50KXt2YXIgY2hlY2s9UmVnRXhwKCIoXnxcXC4p
IitldmVudC50eXBlKyIoXFwufCQpIiksc3RvcD10cnVlLGVsZW1zPVtdO2pRdWVy
eS5lYWNoKGpRdWVyeS5kYXRhKHRoaXMsImV2ZW50cyIpLmxpdmV8fFtdLGZ1bmN0
aW9uKGksZm4pe2lmKGNoZWNrLnRlc3QoZm4udHlwZSkpe3ZhciBlbGVtPWpRdWVy
eShldmVudC50YXJnZXQpLmNsb3Nlc3QoZm4uZGF0YSlbMF07aWYoZWxlbSkKZWxl
bXMucHVzaCh7ZWxlbTplbGVtLGZuOmZufSk7fX0pO2VsZW1zLnNvcnQoZnVuY3Rp
b24oYSxiKXtyZXR1cm4galF1ZXJ5LmRhdGEoYS5lbGVtLCJjbG9zZXN0IiktalF1
ZXJ5LmRhdGEoYi5lbGVtLCJjbG9zZXN0Iik7fSk7alF1ZXJ5LmVhY2goZWxlbXMs
ZnVuY3Rpb24oKXtpZih0aGlzLmZuLmNhbGwodGhpcy5lbGVtLGV2ZW50LHRoaXMu
Zm4uZGF0YSk9PT1mYWxzZSkKcmV0dXJuKHN0b3A9ZmFsc2UpO30pO3JldHVybiBz
dG9wO30KZnVuY3Rpb24gbGl2ZUNvbnZlcnQodHlwZSxzZWxlY3Rvcil7cmV0dXJu
WyJsaXZlIix0eXBlLHNlbGVjdG9yLnJlcGxhY2UoL1wuL2csImAiKS5yZXBsYWNl
KC8gL2csInwiKV0uam9pbigiLiIpO30KalF1ZXJ5LmV4dGVuZCh7aXNSZWFkeTpm
YWxzZSxyZWFkeUxpc3Q6W10scmVhZHk6ZnVuY3Rpb24oKXtpZighalF1ZXJ5Lmlz
UmVhZHkpe2pRdWVyeS5pc1JlYWR5PXRydWU7aWYoalF1ZXJ5LnJlYWR5TGlzdCl7
alF1ZXJ5LmVhY2goalF1ZXJ5LnJlYWR5TGlzdCxmdW5jdGlvbigpe3RoaXMuY2Fs
bChkb2N1bWVudCxqUXVlcnkpO30pO2pRdWVyeS5yZWFkeUxpc3Q9bnVsbDt9CmpR
dWVyeShkb2N1bWVudCkudHJpZ2dlckhhbmRsZXIoInJlYWR5Iik7fX19KTt2YXIg
cmVhZHlCb3VuZD1mYWxzZTtmdW5jdGlvbiBiaW5kUmVhZHkoKXtpZihyZWFkeUJv
dW5kKXJldHVybjtyZWFkeUJvdW5kPXRydWU7aWYoZG9jdW1lbnQuYWRkRXZlbnRM
aXN0ZW5lcil7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExv
YWRlZCIsZnVuY3Rpb24oKXtkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJE
T01Db250ZW50TG9hZGVkIixhcmd1bWVudHMuY2FsbGVlLGZhbHNlKTtqUXVlcnku
cmVhZHkoKTt9LGZhbHNlKTt9ZWxzZSBpZihkb2N1bWVudC5hdHRhY2hFdmVudCl7
ZG9jdW1lbnQuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsZnVuY3Rp
b24oKXtpZihkb2N1bWVudC5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIil7ZG9jdW1l
bnQuZGV0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsYXJndW1lbnRzLmNh
bGxlZSk7alF1ZXJ5LnJlYWR5KCk7fX0pO2lmKGRvY3VtZW50LmRvY3VtZW50RWxl
bWVudC5kb1Njcm9sbCYmd2luZG93PT13aW5kb3cudG9wKShmdW5jdGlvbigpe2lm
KGpRdWVyeS5pc1JlYWR5KXJldHVybjt0cnl7ZG9jdW1lbnQuZG9jdW1lbnRFbGVt
ZW50LmRvU2Nyb2xsKCJsZWZ0Iik7fWNhdGNoKGVycm9yKXtzZXRUaW1lb3V0KGFy
Z3VtZW50cy5jYWxsZWUsMCk7cmV0dXJuO30KalF1ZXJ5LnJlYWR5KCk7fSkoKTt9
CmpRdWVyeS5ldmVudC5hZGQod2luZG93LCJsb2FkIixqUXVlcnkucmVhZHkpO30K
alF1ZXJ5LmVhY2goKCJibHVyLGZvY3VzLGxvYWQscmVzaXplLHNjcm9sbCx1bmxv
YWQsY2xpY2ssZGJsY2xpY2ssIisibW91c2Vkb3duLG1vdXNldXAsbW91c2Vtb3Zl
LG1vdXNlb3Zlcixtb3VzZW91dCxtb3VzZWVudGVyLG1vdXNlbGVhdmUsIisiY2hh
bmdlLHNlbGVjdCxzdWJtaXQsa2V5ZG93bixrZXlwcmVzcyxrZXl1cCxlcnJvciIp
LnNwbGl0KCIsIiksZnVuY3Rpb24oaSxuYW1lKXtqUXVlcnkuZm5bbmFtZV09ZnVu
Y3Rpb24oZm4pe3JldHVybiBmbj90aGlzLmJpbmQobmFtZSxmbik6dGhpcy50cmln
Z2VyKG5hbWUpO307fSk7alF1ZXJ5KHdpbmRvdykuYmluZCgndW5sb2FkJyxmdW5j
dGlvbigpe2Zvcih2YXIgaWQgaW4galF1ZXJ5LmNhY2hlKQppZihpZCE9MSYmalF1
ZXJ5LmNhY2hlW2lkXS5oYW5kbGUpCmpRdWVyeS5ldmVudC5yZW1vdmUoalF1ZXJ5
LmNhY2hlW2lkXS5oYW5kbGUuZWxlbSk7fSk7KGZ1bmN0aW9uKCl7alF1ZXJ5LnN1
cHBvcnQ9e307dmFyIHJvb3Q9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHNjcmlw
dD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSxkaXY9ZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiZGl2IiksaWQ9InNjcmlwdCIrKG5ldyBEYXRlKS5nZXRU
aW1lKCk7ZGl2LnN0eWxlLmRpc3BsYXk9Im5vbmUiO2Rpdi5pbm5lckhUTUw9JyAg
IDxsaW5rLz48dGFibGU+PC90YWJsZT48YSBocmVmPSIvYSIgc3R5bGU9ImNvbG9y
OnJlZDtmbG9hdDpsZWZ0O29wYWNpdHk6LjU7Ij5hPC9hPjxzZWxlY3Q+PG9wdGlv
bj50ZXh0PC9vcHRpb24+PC9zZWxlY3Q+PG9iamVjdD48cGFyYW0vPjwvb2JqZWN0
Pic7dmFyIGFsbD1kaXYuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKSxhPWRpdi5n
ZXRFbGVtZW50c0J5VGFnTmFtZSgiYSIpWzBdO2lmKCFhbGx8fCFhbGwubGVuZ3Ro
fHwhYSl7cmV0dXJuO30KalF1ZXJ5LnN1cHBvcnQ9e2xlYWRpbmdXaGl0ZXNwYWNl
OmRpdi5maXJzdENoaWxkLm5vZGVUeXBlPT0zLHRib2R5OiFkaXYuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoInRib2R5IikubGVuZ3RoLG9iamVjdEFsbDohIWRpdi5nZXRF
bGVtZW50c0J5VGFnTmFtZSgib2JqZWN0IilbMF0uZ2V0RWxlbWVudHNCeVRhZ05h
bWUoIioiKS5sZW5ndGgsaHRtbFNlcmlhbGl6ZTohIWRpdi5nZXRFbGVtZW50c0J5
VGFnTmFtZSgibGluayIpLmxlbmd0aCxzdHlsZTovcmVkLy50ZXN0KGEuZ2V0QXR0
cmlidXRlKCJzdHlsZSIpKSxocmVmTm9ybWFsaXplZDphLmdldEF0dHJpYnV0ZSgi
aHJlZiIpPT09Ii9hIixvcGFjaXR5OmEuc3R5bGUub3BhY2l0eT09PSIwLjUiLGNz
c0Zsb2F0OiEhYS5zdHlsZS5jc3NGbG9hdCxzY3JpcHRFdmFsOmZhbHNlLG5vQ2xv
bmVFdmVudDp0cnVlLGJveE1vZGVsOm51bGx9O3NjcmlwdC50eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiO3RyeXtzY3JpcHQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRl
VGV4dE5vZGUoIndpbmRvdy4iK2lkKyI9MTsiKSk7fWNhdGNoKGUpe30Kcm9vdC5p
bnNlcnRCZWZvcmUoc2NyaXB0LHJvb3QuZmlyc3RDaGlsZCk7aWYod2luZG93W2lk
XSl7alF1ZXJ5LnN1cHBvcnQuc2NyaXB0RXZhbD10cnVlO2RlbGV0ZSB3aW5kb3db
aWRdO30Kcm9vdC5yZW1vdmVDaGlsZChzY3JpcHQpO2lmKGRpdi5hdHRhY2hFdmVu
dCYmZGl2LmZpcmVFdmVudCl7ZGl2LmF0dGFjaEV2ZW50KCJvbmNsaWNrIixmdW5j
dGlvbigpe2pRdWVyeS5zdXBwb3J0Lm5vQ2xvbmVFdmVudD1mYWxzZTtkaXYuZGV0
YWNoRXZlbnQoIm9uY2xpY2siLGFyZ3VtZW50cy5jYWxsZWUpO30pO2Rpdi5jbG9u
ZU5vZGUodHJ1ZSkuZmlyZUV2ZW50KCJvbmNsaWNrIik7fQpqUXVlcnkoZnVuY3Rp
b24oKXt2YXIgZGl2PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2Rpdi5z
dHlsZS53aWR0aD1kaXYuc3R5bGUucGFkZGluZ0xlZnQ9IjFweCI7ZG9jdW1lbnQu
Ym9keS5hcHBlbmRDaGlsZChkaXYpO2pRdWVyeS5ib3hNb2RlbD1qUXVlcnkuc3Vw
cG9ydC5ib3hNb2RlbD1kaXYub2Zmc2V0V2lkdGg9PT0yO2RvY3VtZW50LmJvZHku
cmVtb3ZlQ2hpbGQoZGl2KS5zdHlsZS5kaXNwbGF5PSdub25lJzt9KTt9KSgpO3Zh
ciBzdHlsZUZsb2F0PWpRdWVyeS5zdXBwb3J0LmNzc0Zsb2F0PyJjc3NGbG9hdCI6
InN0eWxlRmxvYXQiO2pRdWVyeS5wcm9wcz17ImZvciI6Imh0bWxGb3IiLCJjbGFz
cyI6ImNsYXNzTmFtZSIsImZsb2F0IjpzdHlsZUZsb2F0LGNzc0Zsb2F0OnN0eWxl
RmxvYXQsc3R5bGVGbG9hdDpzdHlsZUZsb2F0LHJlYWRvbmx5OiJyZWFkT25seSIs
bWF4bGVuZ3RoOiJtYXhMZW5ndGgiLGNlbGxzcGFjaW5nOiJjZWxsU3BhY2luZyIs
cm93c3Bhbjoicm93U3BhbiIsdGFiaW5kZXg6InRhYkluZGV4In07alF1ZXJ5LmZu
LmV4dGVuZCh7X2xvYWQ6alF1ZXJ5LmZuLmxvYWQsbG9hZDpmdW5jdGlvbih1cmws
cGFyYW1zLGNhbGxiYWNrKXtpZih0eXBlb2YgdXJsIT09InN0cmluZyIpCnJldHVy
biB0aGlzLl9sb2FkKHVybCk7dmFyIG9mZj11cmwuaW5kZXhPZigiICIpO2lmKG9m
Zj49MCl7dmFyIHNlbGVjdG9yPXVybC5zbGljZShvZmYsdXJsLmxlbmd0aCk7dXJs
PXVybC5zbGljZSgwLG9mZik7fQp2YXIgdHlwZT0iR0VUIjtpZihwYXJhbXMpCmlm
KGpRdWVyeS5pc0Z1bmN0aW9uKHBhcmFtcykpe2NhbGxiYWNrPXBhcmFtcztwYXJh
bXM9bnVsbDt9ZWxzZSBpZih0eXBlb2YgcGFyYW1zPT09Im9iamVjdCIpe3BhcmFt
cz1qUXVlcnkucGFyYW0ocGFyYW1zKTt0eXBlPSJQT1NUIjt9CnZhciBzZWxmPXRo
aXM7alF1ZXJ5LmFqYXgoe3VybDp1cmwsdHlwZTp0eXBlLGRhdGFUeXBlOiJodG1s
IixkYXRhOnBhcmFtcyxjb21wbGV0ZTpmdW5jdGlvbihyZXMsc3RhdHVzKXtpZihz
dGF0dXM9PSJzdWNjZXNzInx8c3RhdHVzPT0ibm90bW9kaWZpZWQiKQpzZWxmLmh0
bWwoc2VsZWN0b3I/alF1ZXJ5KCI8ZGl2Lz4iKS5hcHBlbmQocmVzLnJlc3BvbnNl
VGV4dC5yZXBsYWNlKC88c2NyaXB0KC58XHMpKj9cL3NjcmlwdD4vZywiIikpLmZp
bmQoc2VsZWN0b3IpOnJlcy5yZXNwb25zZVRleHQpO2lmKGNhbGxiYWNrKQpzZWxm
LmVhY2goY2FsbGJhY2ssW3Jlcy5yZXNwb25zZVRleHQsc3RhdHVzLHJlc10pO319
KTtyZXR1cm4gdGhpczt9LHNlcmlhbGl6ZTpmdW5jdGlvbigpe3JldHVybiBqUXVl
cnkucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKTt9LHNlcmlhbGl6ZUFycmF5
OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIHRo
aXMuZWxlbWVudHM/alF1ZXJ5Lm1ha2VBcnJheSh0aGlzLmVsZW1lbnRzKTp0aGlz
O30pLmZpbHRlcihmdW5jdGlvbigpe3JldHVybiB0aGlzLm5hbWUmJiF0aGlzLmRp
c2FibGVkJiYodGhpcy5jaGVja2VkfHwvc2VsZWN0fHRleHRhcmVhL2kudGVzdCh0
aGlzLm5vZGVOYW1lKXx8L3RleHR8aGlkZGVufHBhc3N3b3JkfHNlYXJjaC9pLnRl
c3QodGhpcy50eXBlKSk7fSkubWFwKGZ1bmN0aW9uKGksZWxlbSl7dmFyIHZhbD1q
UXVlcnkodGhpcykudmFsKCk7cmV0dXJuIHZhbD09bnVsbD9udWxsOmpRdWVyeS5p
c0FycmF5KHZhbCk/alF1ZXJ5Lm1hcCh2YWwsZnVuY3Rpb24odmFsLGkpe3JldHVy
bntuYW1lOmVsZW0ubmFtZSx2YWx1ZTp2YWx9O30pOntuYW1lOmVsZW0ubmFtZSx2
YWx1ZTp2YWx9O30pLmdldCgpO319KTtqUXVlcnkuZWFjaCgiYWpheFN0YXJ0LGFq
YXhTdG9wLGFqYXhDb21wbGV0ZSxhamF4RXJyb3IsYWpheFN1Y2Nlc3MsYWpheFNl
bmQiLnNwbGl0KCIsIiksZnVuY3Rpb24oaSxvKXtqUXVlcnkuZm5bb109ZnVuY3Rp
b24oZil7cmV0dXJuIHRoaXMuYmluZChvLGYpO307fSk7dmFyIGpzYz1ub3coKTtq
UXVlcnkuZXh0ZW5kKHtnZXQ6ZnVuY3Rpb24odXJsLGRhdGEsY2FsbGJhY2ssdHlw
ZSl7aWYoalF1ZXJ5LmlzRnVuY3Rpb24oZGF0YSkpe2NhbGxiYWNrPWRhdGE7ZGF0
YT1udWxsO30KcmV0dXJuIGpRdWVyeS5hamF4KHt0eXBlOiJHRVQiLHVybDp1cmws
ZGF0YTpkYXRhLHN1Y2Nlc3M6Y2FsbGJhY2ssZGF0YVR5cGU6dHlwZX0pO30sZ2V0
U2NyaXB0OmZ1bmN0aW9uKHVybCxjYWxsYmFjayl7cmV0dXJuIGpRdWVyeS5nZXQo
dXJsLG51bGwsY2FsbGJhY2ssInNjcmlwdCIpO30sZ2V0SlNPTjpmdW5jdGlvbih1
cmwsZGF0YSxjYWxsYmFjayl7cmV0dXJuIGpRdWVyeS5nZXQodXJsLGRhdGEsY2Fs
bGJhY2ssImpzb24iKTt9LHBvc3Q6ZnVuY3Rpb24odXJsLGRhdGEsY2FsbGJhY2ss
dHlwZSl7aWYoalF1ZXJ5LmlzRnVuY3Rpb24oZGF0YSkpe2NhbGxiYWNrPWRhdGE7
ZGF0YT17fTt9CnJldHVybiBqUXVlcnkuYWpheCh7dHlwZToiUE9TVCIsdXJsOnVy
bCxkYXRhOmRhdGEsc3VjY2VzczpjYWxsYmFjayxkYXRhVHlwZTp0eXBlfSk7fSxh
amF4U2V0dXA6ZnVuY3Rpb24oc2V0dGluZ3Mpe2pRdWVyeS5leHRlbmQoalF1ZXJ5
LmFqYXhTZXR0aW5ncyxzZXR0aW5ncyk7fSxhamF4U2V0dGluZ3M6e3VybDpsb2Nh
dGlvbi5ocmVmLGdsb2JhbDp0cnVlLHR5cGU6IkdFVCIsY29udGVudFR5cGU6ImFw
cGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIscHJvY2Vzc0RhdGE6dHJ1
ZSxhc3luYzp0cnVlLHhocjpmdW5jdGlvbigpe3JldHVybiB3aW5kb3cuQWN0aXZl
WE9iamVjdD9uZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEhUVFAiKTpu
ZXcgWE1MSHR0cFJlcXVlc3QoKTt9LGFjY2VwdHM6e3htbDoiYXBwbGljYXRpb24v
eG1sLCB0ZXh0L3htbCIsaHRtbDoidGV4dC9odG1sIixzY3JpcHQ6InRleHQvamF2
YXNjcmlwdCwgYXBwbGljYXRpb24vamF2YXNjcmlwdCIsanNvbjoiYXBwbGljYXRp
b24vanNvbiwgdGV4dC9qYXZhc2NyaXB0Iix0ZXh0OiJ0ZXh0L3BsYWluIixfZGVm
YXVsdDoiKi8qIn19LGxhc3RNb2RpZmllZDp7fSxhamF4OmZ1bmN0aW9uKHMpe3M9
alF1ZXJ5LmV4dGVuZCh0cnVlLHMsalF1ZXJ5LmV4dGVuZCh0cnVlLHt9LGpRdWVy
eS5hamF4U2V0dGluZ3MscykpO3ZhciBqc29ucCxqc3JlPS89XD8oJnwkKS9nLHN0
YXR1cyxkYXRhLHR5cGU9cy50eXBlLnRvVXBwZXJDYXNlKCk7aWYocy5kYXRhJiZz
LnByb2Nlc3NEYXRhJiZ0eXBlb2Ygcy5kYXRhIT09InN0cmluZyIpCnMuZGF0YT1q
UXVlcnkucGFyYW0ocy5kYXRhKTtpZihzLmRhdGFUeXBlPT0ianNvbnAiKXtpZih0
eXBlPT0iR0VUIil7aWYoIXMudXJsLm1hdGNoKGpzcmUpKQpzLnVybCs9KHMudXJs
Lm1hdGNoKC9cPy8pPyImIjoiPyIpKyhzLmpzb25wfHwiY2FsbGJhY2siKSsiPT8i
O31lbHNlIGlmKCFzLmRhdGF8fCFzLmRhdGEubWF0Y2goanNyZSkpCnMuZGF0YT0o
cy5kYXRhP3MuZGF0YSsiJiI6IiIpKyhzLmpzb25wfHwiY2FsbGJhY2siKSsiPT8i
O3MuZGF0YVR5cGU9Impzb24iO30KaWYocy5kYXRhVHlwZT09Impzb24iJiYocy5k
YXRhJiZzLmRhdGEubWF0Y2goanNyZSl8fHMudXJsLm1hdGNoKGpzcmUpKSl7anNv
bnA9Impzb25wIitqc2MrKztpZihzLmRhdGEpCnMuZGF0YT0ocy5kYXRhKyIiKS5y
ZXBsYWNlKGpzcmUsIj0iK2pzb25wKyIkMSIpO3MudXJsPXMudXJsLnJlcGxhY2Uo
anNyZSwiPSIranNvbnArIiQxIik7cy5kYXRhVHlwZT0ic2NyaXB0Ijt3aW5kb3db
anNvbnBdPWZ1bmN0aW9uKHRtcCl7ZGF0YT10bXA7c3VjY2VzcygpO2NvbXBsZXRl
KCk7d2luZG93W2pzb25wXT11bmRlZmluZWQ7dHJ5e2RlbGV0ZSB3aW5kb3dbanNv
bnBdO31jYXRjaChlKXt9CmlmKGhlYWQpCmhlYWQucmVtb3ZlQ2hpbGQoc2NyaXB0
KTt9O30KaWYocy5kYXRhVHlwZT09InNjcmlwdCImJnMuY2FjaGU9PW51bGwpCnMu
Y2FjaGU9ZmFsc2U7aWYocy5jYWNoZT09PWZhbHNlJiZ0eXBlPT0iR0VUIil7dmFy
IHRzPW5vdygpO3ZhciByZXQ9cy51cmwucmVwbGFjZSgvKFw/fCYpXz0uKj8oJnwk
KS8sIiQxXz0iK3RzKyIkMiIpO3MudXJsPXJldCsoKHJldD09cy51cmwpPyhzLnVy
bC5tYXRjaCgvXD8vKT8iJiI6Ij8iKSsiXz0iK3RzOiIiKTt9CmlmKHMuZGF0YSYm
dHlwZT09IkdFVCIpe3MudXJsKz0ocy51cmwubWF0Y2goL1w/Lyk/IiYiOiI/Iikr
cy5kYXRhO3MuZGF0YT1udWxsO30KaWYocy5nbG9iYWwmJiFqUXVlcnkuYWN0aXZl
KyspCmpRdWVyeS5ldmVudC50cmlnZ2VyKCJhamF4U3RhcnQiKTt2YXIgcGFydHM9
L14oXHcrOik/XC9cLyhbXlwvPyNdKykvLmV4ZWMocy51cmwpO2lmKHMuZGF0YVR5
cGU9PSJzY3JpcHQiJiZ0eXBlPT0iR0VUIiYmcGFydHMmJihwYXJ0c1sxXSYmcGFy
dHNbMV0hPWxvY2F0aW9uLnByb3RvY29sfHxwYXJ0c1syXSE9bG9jYXRpb24uaG9z
dCkpe3ZhciBoZWFkPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFk
IilbMF07dmFyIHNjcmlwdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQi
KTtzY3JpcHQuc3JjPXMudXJsO2lmKHMuc2NyaXB0Q2hhcnNldCkKc2NyaXB0LmNo
YXJzZXQ9cy5zY3JpcHRDaGFyc2V0O2lmKCFqc29ucCl7dmFyIGRvbmU9ZmFsc2U7
c2NyaXB0Lm9ubG9hZD1zY3JpcHQub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9u
KCl7aWYoIWRvbmUmJighdGhpcy5yZWFkeVN0YXRlfHx0aGlzLnJlYWR5U3RhdGU9
PSJsb2FkZWQifHx0aGlzLnJlYWR5U3RhdGU9PSJjb21wbGV0ZSIpKXtkb25lPXRy
dWU7c3VjY2VzcygpO2NvbXBsZXRlKCk7c2NyaXB0Lm9ubG9hZD1zY3JpcHQub25y
ZWFkeXN0YXRlY2hhbmdlPW51bGw7aGVhZC5yZW1vdmVDaGlsZChzY3JpcHQpO319
O30KaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO3JldHVybiB1bmRlZmluZWQ7fQp2
YXIgcmVxdWVzdERvbmU9ZmFsc2U7dmFyIHhocj1zLnhocigpO2lmKHMudXNlcm5h
bWUpCnhoci5vcGVuKHR5cGUscy51cmwscy5hc3luYyxzLnVzZXJuYW1lLHMucGFz
c3dvcmQpO2Vsc2UKeGhyLm9wZW4odHlwZSxzLnVybCxzLmFzeW5jKTt0cnl7aWYo
cy5kYXRhKQp4aHIuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIixzLmNv
bnRlbnRUeXBlKTtpZihzLmlmTW9kaWZpZWQpCnhoci5zZXRSZXF1ZXN0SGVhZGVy
KCJJZi1Nb2RpZmllZC1TaW5jZSIsalF1ZXJ5Lmxhc3RNb2RpZmllZFtzLnVybF18
fCJUaHUsIDAxIEphbiAxOTcwIDAwOjAwOjAwIEdNVCIpO3hoci5zZXRSZXF1ZXN0
SGVhZGVyKCJYLVJlcXVlc3RlZC1XaXRoIiwiWE1MSHR0cFJlcXVlc3QiKTt4aHIu
c2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IixzLmRhdGFUeXBlJiZzLmFjY2VwdHNb
cy5kYXRhVHlwZV0/cy5hY2NlcHRzW3MuZGF0YVR5cGVdKyIsICovKiI6cy5hY2Nl
cHRzLl9kZWZhdWx0KTt9Y2F0Y2goZSl7fQppZihzLmJlZm9yZVNlbmQmJnMuYmVm
b3JlU2VuZCh4aHIscyk9PT1mYWxzZSl7aWYocy5nbG9iYWwmJiEtLWpRdWVyeS5h
Y3RpdmUpCmpRdWVyeS5ldmVudC50cmlnZ2VyKCJhamF4U3RvcCIpO3hoci5hYm9y
dCgpO3JldHVybiBmYWxzZTt9CmlmKHMuZ2xvYmFsKQpqUXVlcnkuZXZlbnQudHJp
Z2dlcigiYWpheFNlbmQiLFt4aHIsc10pO3ZhciBvbnJlYWR5c3RhdGVjaGFuZ2U9
ZnVuY3Rpb24oaXNUaW1lb3V0KXtpZih4aHIucmVhZHlTdGF0ZT09MCl7aWYoaXZh
bCl7Y2xlYXJJbnRlcnZhbChpdmFsKTtpdmFsPW51bGw7aWYocy5nbG9iYWwmJiEt
LWpRdWVyeS5hY3RpdmUpCmpRdWVyeS5ldmVudC50cmlnZ2VyKCJhamF4U3RvcCIp
O319ZWxzZSBpZighcmVxdWVzdERvbmUmJnhociYmKHhoci5yZWFkeVN0YXRlPT00
fHxpc1RpbWVvdXQ9PSJ0aW1lb3V0Iikpe3JlcXVlc3REb25lPXRydWU7aWYoaXZh
bCl7Y2xlYXJJbnRlcnZhbChpdmFsKTtpdmFsPW51bGw7fQpzdGF0dXM9aXNUaW1l
b3V0PT0idGltZW91dCI/InRpbWVvdXQiOiFqUXVlcnkuaHR0cFN1Y2Nlc3MoeGhy
KT8iZXJyb3IiOnMuaWZNb2RpZmllZCYmalF1ZXJ5Lmh0dHBOb3RNb2RpZmllZCh4
aHIscy51cmwpPyJub3Rtb2RpZmllZCI6InN1Y2Nlc3MiO2lmKHN0YXR1cz09InN1
Y2Nlc3MiKXt0cnl7ZGF0YT1qUXVlcnkuaHR0cERhdGEoeGhyLHMuZGF0YVR5cGUs
cyk7fWNhdGNoKGUpe3N0YXR1cz0icGFyc2VyZXJyb3IiO319CmlmKHN0YXR1cz09
InN1Y2Nlc3MiKXt2YXIgbW9kUmVzO3RyeXttb2RSZXM9eGhyLmdldFJlc3BvbnNl
SGVhZGVyKCJMYXN0LU1vZGlmaWVkIik7fWNhdGNoKGUpe30KaWYocy5pZk1vZGlm
aWVkJiZtb2RSZXMpCmpRdWVyeS5sYXN0TW9kaWZpZWRbcy51cmxdPW1vZFJlcztp
ZighanNvbnApCnN1Y2Nlc3MoKTt9ZWxzZQpqUXVlcnkuaGFuZGxlRXJyb3Iocyx4
aHIsc3RhdHVzKTtjb21wbGV0ZSgpO2lmKGlzVGltZW91dCkKeGhyLmFib3J0KCk7
aWYocy5hc3luYykKeGhyPW51bGw7fX07aWYocy5hc3luYyl7dmFyIGl2YWw9c2V0
SW50ZXJ2YWwob25yZWFkeXN0YXRlY2hhbmdlLDEzKTtpZihzLnRpbWVvdXQ+MCkK
c2V0VGltZW91dChmdW5jdGlvbigpe2lmKHhociYmIXJlcXVlc3REb25lKQpvbnJl
YWR5c3RhdGVjaGFuZ2UoInRpbWVvdXQiKTt9LHMudGltZW91dCk7fQp0cnl7eGhy
LnNlbmQocy5kYXRhKTt9Y2F0Y2goZSl7alF1ZXJ5LmhhbmRsZUVycm9yKHMseGhy
LG51bGwsZSk7fQppZighcy5hc3luYykKb25yZWFkeXN0YXRlY2hhbmdlKCk7ZnVu
Y3Rpb24gc3VjY2Vzcygpe2lmKHMuc3VjY2VzcykKcy5zdWNjZXNzKGRhdGEsc3Rh
dHVzKTtpZihzLmdsb2JhbCkKalF1ZXJ5LmV2ZW50LnRyaWdnZXIoImFqYXhTdWNj
ZXNzIixbeGhyLHNdKTt9CmZ1bmN0aW9uIGNvbXBsZXRlKCl7aWYocy5jb21wbGV0
ZSkKcy5jb21wbGV0ZSh4aHIsc3RhdHVzKTtpZihzLmdsb2JhbCkKalF1ZXJ5LmV2
ZW50LnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW3hocixzXSk7aWYocy5nbG9iYWwm
JiEtLWpRdWVyeS5hY3RpdmUpCmpRdWVyeS5ldmVudC50cmlnZ2VyKCJhamF4U3Rv
cCIpO30KcmV0dXJuIHhocjt9LGhhbmRsZUVycm9yOmZ1bmN0aW9uKHMseGhyLHN0
YXR1cyxlKXtpZihzLmVycm9yKXMuZXJyb3IoeGhyLHN0YXR1cyxlKTtpZihzLmds
b2JhbCkKalF1ZXJ5LmV2ZW50LnRyaWdnZXIoImFqYXhFcnJvciIsW3hocixzLGVd
KTt9LGFjdGl2ZTowLGh0dHBTdWNjZXNzOmZ1bmN0aW9uKHhocil7dHJ5e3JldHVy
biF4aHIuc3RhdHVzJiZsb2NhdGlvbi5wcm90b2NvbD09ImZpbGU6Inx8KHhoci5z
dGF0dXM+PTIwMCYmeGhyLnN0YXR1czwzMDApfHx4aHIuc3RhdHVzPT0zMDR8fHho
ci5zdGF0dXM9PTEyMjM7fWNhdGNoKGUpe30KcmV0dXJuIGZhbHNlO30saHR0cE5v
dE1vZGlmaWVkOmZ1bmN0aW9uKHhocix1cmwpe3RyeXt2YXIgeGhyUmVzPXhoci5n
ZXRSZXNwb25zZUhlYWRlcigiTGFzdC1Nb2RpZmllZCIpO3JldHVybiB4aHIuc3Rh
dHVzPT0zMDR8fHhoclJlcz09alF1ZXJ5Lmxhc3RNb2RpZmllZFt1cmxdO31jYXRj
aChlKXt9CnJldHVybiBmYWxzZTt9LGh0dHBEYXRhOmZ1bmN0aW9uKHhocix0eXBl
LHMpe3ZhciBjdD14aHIuZ2V0UmVzcG9uc2VIZWFkZXIoImNvbnRlbnQtdHlwZSIp
LHhtbD10eXBlPT0ieG1sInx8IXR5cGUmJmN0JiZjdC5pbmRleE9mKCJ4bWwiKT49
MCxkYXRhPXhtbD94aHIucmVzcG9uc2VYTUw6eGhyLnJlc3BvbnNlVGV4dDtpZih4
bWwmJmRhdGEuZG9jdW1lbnRFbGVtZW50LnRhZ05hbWU9PSJwYXJzZXJlcnJvciIp
CnRocm93InBhcnNlcmVycm9yIjtpZihzJiZzLmRhdGFGaWx0ZXIpCmRhdGE9cy5k
YXRhRmlsdGVyKGRhdGEsdHlwZSk7aWYodHlwZW9mIGRhdGE9PT0ic3RyaW5nIil7
aWYodHlwZT09InNjcmlwdCIpCmpRdWVyeS5nbG9iYWxFdmFsKGRhdGEpO2lmKHR5
cGU9PSJqc29uIikKZGF0YT13aW5kb3dbImV2YWwiXSgiKCIrZGF0YSsiKSIpO30K
cmV0dXJuIGRhdGE7fSxwYXJhbTpmdW5jdGlvbihhKXt2YXIgcz1bXTtmdW5jdGlv
biBhZGQoa2V5LHZhbHVlKXtzW3MubGVuZ3RoXT1lbmNvZGVVUklDb21wb25lbnQo
a2V5KSsnPScrZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKTt9O2lmKGpRdWVyeS5p
c0FycmF5KGEpfHxhLmpxdWVyeSkKalF1ZXJ5LmVhY2goYSxmdW5jdGlvbigpe2Fk
ZCh0aGlzLm5hbWUsdGhpcy52YWx1ZSk7fSk7ZWxzZQpmb3IodmFyIGogaW4gYSkK
aWYoalF1ZXJ5LmlzQXJyYXkoYVtqXSkpCmpRdWVyeS5lYWNoKGFbal0sZnVuY3Rp
b24oKXthZGQoaix0aGlzKTt9KTtlbHNlCmFkZChqLGpRdWVyeS5pc0Z1bmN0aW9u
KGFbal0pP2Fbal0oKTphW2pdKTtyZXR1cm4gcy5qb2luKCImIikucmVwbGFjZSgv
JTIwL2csIisiKTt9fSk7dmFyIGVsZW1kaXNwbGF5PXt9LHRpbWVySWQsZnhBdHRy
cz1bWyJoZWlnaHQiLCJtYXJnaW5Ub3AiLCJtYXJnaW5Cb3R0b20iLCJwYWRkaW5n
VG9wIiwicGFkZGluZ0JvdHRvbSJdLFsid2lkdGgiLCJtYXJnaW5MZWZ0IiwibWFy
Z2luUmlnaHQiLCJwYWRkaW5nTGVmdCIsInBhZGRpbmdSaWdodCJdLFsib3BhY2l0
eSJdXTtmdW5jdGlvbiBnZW5GeCh0eXBlLG51bSl7dmFyIG9iaj17fTtqUXVlcnku
ZWFjaChmeEF0dHJzLmNvbmNhdC5hcHBseShbXSxmeEF0dHJzLnNsaWNlKDAsbnVt
KSksZnVuY3Rpb24oKXtvYmpbdGhpc109dHlwZTt9KTtyZXR1cm4gb2JqO30KalF1
ZXJ5LmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbihzcGVlZCxjYWxsYmFjayl7aWYo
c3BlZWQpe3JldHVybiB0aGlzLmFuaW1hdGUoZ2VuRngoInNob3ciLDMpLHNwZWVk
LGNhbGxiYWNrKTt9ZWxzZXtmb3IodmFyIGk9MCxsPXRoaXMubGVuZ3RoO2k8bDtp
Kyspe3ZhciBvbGQ9alF1ZXJ5LmRhdGEodGhpc1tpXSwib2xkZGlzcGxheSIpO3Ro
aXNbaV0uc3R5bGUuZGlzcGxheT1vbGR8fCIiO2lmKGpRdWVyeS5jc3ModGhpc1tp
XSwiZGlzcGxheSIpPT09Im5vbmUiKXt2YXIgdGFnTmFtZT10aGlzW2ldLnRhZ05h
bWUsZGlzcGxheTtpZihlbGVtZGlzcGxheVt0YWdOYW1lXSl7ZGlzcGxheT1lbGVt
ZGlzcGxheVt0YWdOYW1lXTt9ZWxzZXt2YXIgZWxlbT1qUXVlcnkoIjwiK3RhZ05h
bWUrIiAvPiIpLmFwcGVuZFRvKCJib2R5Iik7ZGlzcGxheT1lbGVtLmNzcygiZGlz
cGxheSIpO2lmKGRpc3BsYXk9PT0ibm9uZSIpCmRpc3BsYXk9ImJsb2NrIjtlbGVt
LnJlbW92ZSgpO2VsZW1kaXNwbGF5W3RhZ05hbWVdPWRpc3BsYXk7fQpqUXVlcnku
ZGF0YSh0aGlzW2ldLCJvbGRkaXNwbGF5IixkaXNwbGF5KTt9fQpmb3IodmFyIGk9
MCxsPXRoaXMubGVuZ3RoO2k8bDtpKyspe3RoaXNbaV0uc3R5bGUuZGlzcGxheT1q
UXVlcnkuZGF0YSh0aGlzW2ldLCJvbGRkaXNwbGF5Iil8fCIiO30KcmV0dXJuIHRo
aXM7fX0saGlkZTpmdW5jdGlvbihzcGVlZCxjYWxsYmFjayl7aWYoc3BlZWQpe3Jl
dHVybiB0aGlzLmFuaW1hdGUoZ2VuRngoImhpZGUiLDMpLHNwZWVkLGNhbGxiYWNr
KTt9ZWxzZXtmb3IodmFyIGk9MCxsPXRoaXMubGVuZ3RoO2k8bDtpKyspe3ZhciBv
bGQ9alF1ZXJ5LmRhdGEodGhpc1tpXSwib2xkZGlzcGxheSIpO2lmKCFvbGQmJm9s
ZCE9PSJub25lIikKalF1ZXJ5LmRhdGEodGhpc1tpXSwib2xkZGlzcGxheSIsalF1
ZXJ5LmNzcyh0aGlzW2ldLCJkaXNwbGF5IikpO30KZm9yKHZhciBpPTAsbD10aGlz
Lmxlbmd0aDtpPGw7aSsrKXt0aGlzW2ldLnN0eWxlLmRpc3BsYXk9Im5vbmUiO30K
cmV0dXJuIHRoaXM7fX0sX3RvZ2dsZTpqUXVlcnkuZm4udG9nZ2xlLHRvZ2dsZTpm
dW5jdGlvbihmbixmbjIpe3ZhciBib29sPXR5cGVvZiBmbj09PSJib29sZWFuIjty
ZXR1cm4galF1ZXJ5LmlzRnVuY3Rpb24oZm4pJiZqUXVlcnkuaXNGdW5jdGlvbihm
bjIpP3RoaXMuX3RvZ2dsZS5hcHBseSh0aGlzLGFyZ3VtZW50cyk6Zm49PW51bGx8
fGJvb2w/dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIHN0YXRlPWJvb2w/Zm46alF1
ZXJ5KHRoaXMpLmlzKCI6aGlkZGVuIik7alF1ZXJ5KHRoaXMpW3N0YXRlPyJzaG93
IjoiaGlkZSJdKCk7fSk6dGhpcy5hbmltYXRlKGdlbkZ4KCJ0b2dnbGUiLDMpLGZu
LGZuMik7fSxmYWRlVG86ZnVuY3Rpb24oc3BlZWQsdG8sY2FsbGJhY2spe3JldHVy
biB0aGlzLmFuaW1hdGUoe29wYWNpdHk6dG99LHNwZWVkLGNhbGxiYWNrKTt9LGFu
aW1hdGU6ZnVuY3Rpb24ocHJvcCxzcGVlZCxlYXNpbmcsY2FsbGJhY2spe3ZhciBv
cHRhbGw9alF1ZXJ5LnNwZWVkKHNwZWVkLGVhc2luZyxjYWxsYmFjayk7cmV0dXJu
IHRoaXNbb3B0YWxsLnF1ZXVlPT09ZmFsc2U/ImVhY2giOiJxdWV1ZSJdKGZ1bmN0
aW9uKCl7dmFyIG9wdD1qUXVlcnkuZXh0ZW5kKHt9LG9wdGFsbCkscCxoaWRkZW49
dGhpcy5ub2RlVHlwZT09MSYmalF1ZXJ5KHRoaXMpLmlzKCI6aGlkZGVuIiksc2Vs
Zj10aGlzO2ZvcihwIGluIHByb3Ape2lmKHByb3BbcF09PSJoaWRlIiYmaGlkZGVu
fHxwcm9wW3BdPT0ic2hvdyImJiFoaWRkZW4pCnJldHVybiBvcHQuY29tcGxldGUu
Y2FsbCh0aGlzKTtpZigocD09ImhlaWdodCJ8fHA9PSJ3aWR0aCIpJiZ0aGlzLnN0
eWxlKXtvcHQuZGlzcGxheT1qUXVlcnkuY3NzKHRoaXMsImRpc3BsYXkiKTtvcHQu
b3ZlcmZsb3c9dGhpcy5zdHlsZS5vdmVyZmxvdzt9fQppZihvcHQub3ZlcmZsb3ch
PW51bGwpCnRoaXMuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiI7b3B0LmN1ckFuaW09
alF1ZXJ5LmV4dGVuZCh7fSxwcm9wKTtqUXVlcnkuZWFjaChwcm9wLGZ1bmN0aW9u
KG5hbWUsdmFsKXt2YXIgZT1uZXcgalF1ZXJ5LmZ4KHNlbGYsb3B0LG5hbWUpO2lm
KC90b2dnbGV8c2hvd3xoaWRlLy50ZXN0KHZhbCkpCmVbdmFsPT0idG9nZ2xlIj9o
aWRkZW4/InNob3ciOiJoaWRlIjp2YWxdKHByb3ApO2Vsc2V7dmFyIHBhcnRzPXZh
bC50b1N0cmluZygpLm1hdGNoKC9eKFsrLV09KT8oW1xkKy0uXSspKC4qKSQvKSxz
dGFydD1lLmN1cih0cnVlKXx8MDtpZihwYXJ0cyl7dmFyIGVuZD1wYXJzZUZsb2F0
KHBhcnRzWzJdKSx1bml0PXBhcnRzWzNdfHwicHgiO2lmKHVuaXQhPSJweCIpe3Nl
bGYuc3R5bGVbbmFtZV09KGVuZHx8MSkrdW5pdDtzdGFydD0oKGVuZHx8MSkvZS5j
dXIodHJ1ZSkpKnN0YXJ0O3NlbGYuc3R5bGVbbmFtZV09c3RhcnQrdW5pdDt9Cmlm
KHBhcnRzWzFdKQplbmQ9KChwYXJ0c1sxXT09Ii09Ij8tMToxKSplbmQpK3N0YXJ0
O2UuY3VzdG9tKHN0YXJ0LGVuZCx1bml0KTt9ZWxzZQplLmN1c3RvbShzdGFydCx2
YWwsIiIpO319KTtyZXR1cm4gdHJ1ZTt9KTt9LHN0b3A6ZnVuY3Rpb24oY2xlYXJR
dWV1ZSxnb3RvRW5kKXt2YXIgdGltZXJzPWpRdWVyeS50aW1lcnM7aWYoY2xlYXJR
dWV1ZSkKdGhpcy5xdWV1ZShbXSk7dGhpcy5lYWNoKGZ1bmN0aW9uKCl7Zm9yKHZh
ciBpPXRpbWVycy5sZW5ndGgtMTtpPj0wO2ktLSkKaWYodGltZXJzW2ldLmVsZW09
PXRoaXMpe2lmKGdvdG9FbmQpCnRpbWVyc1tpXSh0cnVlKTt0aW1lcnMuc3BsaWNl
KGksMSk7fX0pO2lmKCFnb3RvRW5kKQp0aGlzLmRlcXVldWUoKTtyZXR1cm4gdGhp
czt9fSk7alF1ZXJ5LmVhY2goe3NsaWRlRG93bjpnZW5GeCgic2hvdyIsMSksc2xp
ZGVVcDpnZW5GeCgiaGlkZSIsMSksc2xpZGVUb2dnbGU6Z2VuRngoInRvZ2dsZSIs
MSksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlk
ZSJ9fSxmdW5jdGlvbihuYW1lLHByb3BzKXtqUXVlcnkuZm5bbmFtZV09ZnVuY3Rp
b24oc3BlZWQsY2FsbGJhY2spe3JldHVybiB0aGlzLmFuaW1hdGUocHJvcHMsc3Bl
ZWQsY2FsbGJhY2spO307fSk7alF1ZXJ5LmV4dGVuZCh7c3BlZWQ6ZnVuY3Rpb24o
c3BlZWQsZWFzaW5nLGZuKXt2YXIgb3B0PXR5cGVvZiBzcGVlZD09PSJvYmplY3Qi
P3NwZWVkOntjb21wbGV0ZTpmbnx8IWZuJiZlYXNpbmd8fGpRdWVyeS5pc0Z1bmN0
aW9uKHNwZWVkKSYmc3BlZWQsZHVyYXRpb246c3BlZWQsZWFzaW5nOmZuJiZlYXNp
bmd8fGVhc2luZyYmIWpRdWVyeS5pc0Z1bmN0aW9uKGVhc2luZykmJmVhc2luZ307
b3B0LmR1cmF0aW9uPWpRdWVyeS5meC5vZmY/MDp0eXBlb2Ygb3B0LmR1cmF0aW9u
PT09Im51bWJlciI/b3B0LmR1cmF0aW9uOmpRdWVyeS5meC5zcGVlZHNbb3B0LmR1
cmF0aW9uXXx8alF1ZXJ5LmZ4LnNwZWVkcy5fZGVmYXVsdDtvcHQub2xkPW9wdC5j
b21wbGV0ZTtvcHQuY29tcGxldGU9ZnVuY3Rpb24oKXtpZihvcHQucXVldWUhPT1m
YWxzZSkKalF1ZXJ5KHRoaXMpLmRlcXVldWUoKTtpZihqUXVlcnkuaXNGdW5jdGlv
bihvcHQub2xkKSkKb3B0Lm9sZC5jYWxsKHRoaXMpO307cmV0dXJuIG9wdDt9LGVh
c2luZzp7bGluZWFyOmZ1bmN0aW9uKHAsbixmaXJzdE51bSxkaWZmKXtyZXR1cm4g
Zmlyc3ROdW0rZGlmZipwO30sc3dpbmc6ZnVuY3Rpb24ocCxuLGZpcnN0TnVtLGRp
ZmYpe3JldHVybigoLU1hdGguY29zKHAqTWF0aC5QSSkvMikrMC41KSpkaWZmK2Zp
cnN0TnVtO319LHRpbWVyczpbXSxmeDpmdW5jdGlvbihlbGVtLG9wdGlvbnMscHJv
cCl7dGhpcy5vcHRpb25zPW9wdGlvbnM7dGhpcy5lbGVtPWVsZW07dGhpcy5wcm9w
PXByb3A7aWYoIW9wdGlvbnMub3JpZykKb3B0aW9ucy5vcmlnPXt9O319KTtqUXVl
cnkuZngucHJvdG90eXBlPXt1cGRhdGU6ZnVuY3Rpb24oKXtpZih0aGlzLm9wdGlv
bnMuc3RlcCkKdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVsZW0sdGhpcy5u
b3csdGhpcyk7KGpRdWVyeS5meC5zdGVwW3RoaXMucHJvcF18fGpRdWVyeS5meC5z
dGVwLl9kZWZhdWx0KSh0aGlzKTtpZigodGhpcy5wcm9wPT0iaGVpZ2h0Inx8dGhp
cy5wcm9wPT0id2lkdGgiKSYmdGhpcy5lbGVtLnN0eWxlKQp0aGlzLmVsZW0uc3R5
bGUuZGlzcGxheT0iYmxvY2siO30sY3VyOmZ1bmN0aW9uKGZvcmNlKXtpZih0aGlz
LmVsZW1bdGhpcy5wcm9wXSE9bnVsbCYmKCF0aGlzLmVsZW0uc3R5bGV8fHRoaXMu
ZWxlbS5zdHlsZVt0aGlzLnByb3BdPT1udWxsKSkKcmV0dXJuIHRoaXMuZWxlbVt0
aGlzLnByb3BdO3ZhciByPXBhcnNlRmxvYXQoalF1ZXJ5LmNzcyh0aGlzLmVsZW0s
dGhpcy5wcm9wLGZvcmNlKSk7cmV0dXJuIHImJnI+LTEwMDAwP3I6cGFyc2VGbG9h
dChqUXVlcnkuY3VyQ1NTKHRoaXMuZWxlbSx0aGlzLnByb3ApKXx8MDt9LGN1c3Rv
bTpmdW5jdGlvbihmcm9tLHRvLHVuaXQpe3RoaXMuc3RhcnRUaW1lPW5vdygpO3Ro
aXMuc3RhcnQ9ZnJvbTt0aGlzLmVuZD10bzt0aGlzLnVuaXQ9dW5pdHx8dGhpcy51
bml0fHwicHgiO3RoaXMubm93PXRoaXMuc3RhcnQ7dGhpcy5wb3M9dGhpcy5zdGF0
ZT0wO3ZhciBzZWxmPXRoaXM7ZnVuY3Rpb24gdChnb3RvRW5kKXtyZXR1cm4gc2Vs
Zi5zdGVwKGdvdG9FbmQpO30KdC5lbGVtPXRoaXMuZWxlbTtpZih0KCkmJmpRdWVy
eS50aW1lcnMucHVzaCh0KSYmIXRpbWVySWQpe3RpbWVySWQ9c2V0SW50ZXJ2YWwo
ZnVuY3Rpb24oKXt2YXIgdGltZXJzPWpRdWVyeS50aW1lcnM7Zm9yKHZhciBpPTA7
aTx0aW1lcnMubGVuZ3RoO2krKykKaWYoIXRpbWVyc1tpXSgpKQp0aW1lcnMuc3Bs
aWNlKGktLSwxKTtpZighdGltZXJzLmxlbmd0aCl7Y2xlYXJJbnRlcnZhbCh0aW1l
cklkKTt0aW1lcklkPXVuZGVmaW5lZDt9fSwxMyk7fX0sc2hvdzpmdW5jdGlvbigp
e3RoaXMub3B0aW9ucy5vcmlnW3RoaXMucHJvcF09alF1ZXJ5LmF0dHIodGhpcy5l
bGVtLnN0eWxlLHRoaXMucHJvcCk7dGhpcy5vcHRpb25zLnNob3c9dHJ1ZTt0aGlz
LmN1c3RvbSh0aGlzLnByb3A9PSJ3aWR0aCJ8fHRoaXMucHJvcD09ImhlaWdodCI/
MTowLHRoaXMuY3VyKCkpO2pRdWVyeSh0aGlzLmVsZW0pLnNob3coKTt9LGhpZGU6
ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMub3JpZ1t0aGlzLnByb3BdPWpRdWVyeS5h
dHRyKHRoaXMuZWxlbS5zdHlsZSx0aGlzLnByb3ApO3RoaXMub3B0aW9ucy5oaWRl
PXRydWU7dGhpcy5jdXN0b20odGhpcy5jdXIoKSwwKTt9LHN0ZXA6ZnVuY3Rpb24o
Z290b0VuZCl7dmFyIHQ9bm93KCk7aWYoZ290b0VuZHx8dD49dGhpcy5vcHRpb25z
LmR1cmF0aW9uK3RoaXMuc3RhcnRUaW1lKXt0aGlzLm5vdz10aGlzLmVuZDt0aGlz
LnBvcz10aGlzLnN0YXRlPTE7dGhpcy51cGRhdGUoKTt0aGlzLm9wdGlvbnMuY3Vy
QW5pbVt0aGlzLnByb3BdPXRydWU7dmFyIGRvbmU9dHJ1ZTtmb3IodmFyIGkgaW4g
dGhpcy5vcHRpb25zLmN1ckFuaW0pCmlmKHRoaXMub3B0aW9ucy5jdXJBbmltW2ld
IT09dHJ1ZSkKZG9uZT1mYWxzZTtpZihkb25lKXtpZih0aGlzLm9wdGlvbnMuZGlz
cGxheSE9bnVsbCl7dGhpcy5lbGVtLnN0eWxlLm92ZXJmbG93PXRoaXMub3B0aW9u
cy5vdmVyZmxvdzt0aGlzLmVsZW0uc3R5bGUuZGlzcGxheT10aGlzLm9wdGlvbnMu
ZGlzcGxheTtpZihqUXVlcnkuY3NzKHRoaXMuZWxlbSwiZGlzcGxheSIpPT0ibm9u
ZSIpCnRoaXMuZWxlbS5zdHlsZS5kaXNwbGF5PSJibG9jayI7fQppZih0aGlzLm9w
dGlvbnMuaGlkZSkKalF1ZXJ5KHRoaXMuZWxlbSkuaGlkZSgpO2lmKHRoaXMub3B0
aW9ucy5oaWRlfHx0aGlzLm9wdGlvbnMuc2hvdykKZm9yKHZhciBwIGluIHRoaXMu
b3B0aW9ucy5jdXJBbmltKQpqUXVlcnkuYXR0cih0aGlzLmVsZW0uc3R5bGUscCx0
aGlzLm9wdGlvbnMub3JpZ1twXSk7dGhpcy5vcHRpb25zLmNvbXBsZXRlLmNhbGwo
dGhpcy5lbGVtKTt9CnJldHVybiBmYWxzZTt9ZWxzZXt2YXIgbj10LXRoaXMuc3Rh
cnRUaW1lO3RoaXMuc3RhdGU9bi90aGlzLm9wdGlvbnMuZHVyYXRpb247dGhpcy5w
b3M9alF1ZXJ5LmVhc2luZ1t0aGlzLm9wdGlvbnMuZWFzaW5nfHwoalF1ZXJ5LmVh
c2luZy5zd2luZz8ic3dpbmciOiJsaW5lYXIiKV0odGhpcy5zdGF0ZSxuLDAsMSx0
aGlzLm9wdGlvbnMuZHVyYXRpb24pO3RoaXMubm93PXRoaXMuc3RhcnQrKCh0aGlz
LmVuZC10aGlzLnN0YXJ0KSp0aGlzLnBvcyk7dGhpcy51cGRhdGUoKTt9CnJldHVy
biB0cnVlO319O2pRdWVyeS5leHRlbmQoalF1ZXJ5LmZ4LHtzcGVlZHM6e3Nsb3c6
NjAwLGZhc3Q6MjAwLF9kZWZhdWx0OjQwMH0sc3RlcDp7b3BhY2l0eTpmdW5jdGlv
bihmeCl7alF1ZXJ5LmF0dHIoZnguZWxlbS5zdHlsZSwib3BhY2l0eSIsZngubm93
KTt9LF9kZWZhdWx0OmZ1bmN0aW9uKGZ4KXtpZihmeC5lbGVtLnN0eWxlJiZmeC5l
bGVtLnN0eWxlW2Z4LnByb3BdIT1udWxsKQpmeC5lbGVtLnN0eWxlW2Z4LnByb3Bd
PWZ4Lm5vdytmeC51bml0O2Vsc2UKZnguZWxlbVtmeC5wcm9wXT1meC5ub3c7fX19
KTtpZihkb2N1bWVudC5kb2N1bWVudEVsZW1lbnRbImdldEJvdW5kaW5nQ2xpZW50
UmVjdCJdKQpqUXVlcnkuZm4ub2Zmc2V0PWZ1bmN0aW9uKCl7aWYoIXRoaXNbMF0p
cmV0dXJue3RvcDowLGxlZnQ6MH07aWYodGhpc1swXT09PXRoaXNbMF0ub3duZXJE
b2N1bWVudC5ib2R5KXJldHVybiBqUXVlcnkub2Zmc2V0LmJvZHlPZmZzZXQodGhp
c1swXSk7dmFyIGJveD10aGlzWzBdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGRv
Yz10aGlzWzBdLm93bmVyRG9jdW1lbnQsYm9keT1kb2MuYm9keSxkb2NFbGVtPWRv
Yy5kb2N1bWVudEVsZW1lbnQsY2xpZW50VG9wPWRvY0VsZW0uY2xpZW50VG9wfHxi
b2R5LmNsaWVudFRvcHx8MCxjbGllbnRMZWZ0PWRvY0VsZW0uY2xpZW50TGVmdHx8
Ym9keS5jbGllbnRMZWZ0fHwwLHRvcD1ib3gudG9wKyhzZWxmLnBhZ2VZT2Zmc2V0
fHxqUXVlcnkuYm94TW9kZWwmJmRvY0VsZW0uc2Nyb2xsVG9wfHxib2R5LnNjcm9s
bFRvcCktY2xpZW50VG9wLGxlZnQ9Ym94LmxlZnQrKHNlbGYucGFnZVhPZmZzZXR8
fGpRdWVyeS5ib3hNb2RlbCYmZG9jRWxlbS5zY3JvbGxMZWZ0fHxib2R5LnNjcm9s
bExlZnQpLWNsaWVudExlZnQ7cmV0dXJue3RvcDp0b3AsbGVmdDpsZWZ0fTt9O2Vs
c2UKalF1ZXJ5LmZuLm9mZnNldD1mdW5jdGlvbigpe2lmKCF0aGlzWzBdKXJldHVy
bnt0b3A6MCxsZWZ0OjB9O2lmKHRoaXNbMF09PT10aGlzWzBdLm93bmVyRG9jdW1l
bnQuYm9keSlyZXR1cm4galF1ZXJ5Lm9mZnNldC5ib2R5T2Zmc2V0KHRoaXNbMF0p
O2pRdWVyeS5vZmZzZXQuaW5pdGlhbGl6ZWR8fGpRdWVyeS5vZmZzZXQuaW5pdGlh
bGl6ZSgpO3ZhciBlbGVtPXRoaXNbMF0sb2Zmc2V0UGFyZW50PWVsZW0ub2Zmc2V0
UGFyZW50LHByZXZPZmZzZXRQYXJlbnQ9ZWxlbSxkb2M9ZWxlbS5vd25lckRvY3Vt
ZW50LGNvbXB1dGVkU3R5bGUsZG9jRWxlbT1kb2MuZG9jdW1lbnRFbGVtZW50LGJv
ZHk9ZG9jLmJvZHksZGVmYXVsdFZpZXc9ZG9jLmRlZmF1bHRWaWV3LHByZXZDb21w
dXRlZFN0eWxlPWRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZWxlbSxudWxs
KSx0b3A9ZWxlbS5vZmZzZXRUb3AsbGVmdD1lbGVtLm9mZnNldExlZnQ7d2hpbGUo
KGVsZW09ZWxlbS5wYXJlbnROb2RlKSYmZWxlbSE9PWJvZHkmJmVsZW0hPT1kb2NF
bGVtKXtjb21wdXRlZFN0eWxlPWRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUo
ZWxlbSxudWxsKTt0b3AtPWVsZW0uc2Nyb2xsVG9wLGxlZnQtPWVsZW0uc2Nyb2xs
TGVmdDtpZihlbGVtPT09b2Zmc2V0UGFyZW50KXt0b3ArPWVsZW0ub2Zmc2V0VG9w
LGxlZnQrPWVsZW0ub2Zmc2V0TGVmdDtpZihqUXVlcnkub2Zmc2V0LmRvZXNOb3RB
ZGRCb3JkZXImJiEoalF1ZXJ5Lm9mZnNldC5kb2VzQWRkQm9yZGVyRm9yVGFibGVB
bmRDZWxscyYmL150KGFibGV8ZHxoKSQvaS50ZXN0KGVsZW0udGFnTmFtZSkpKQp0
b3ArPXBhcnNlSW50KGNvbXB1dGVkU3R5bGUuYm9yZGVyVG9wV2lkdGgsMTApfHww
LGxlZnQrPXBhcnNlSW50KGNvbXB1dGVkU3R5bGUuYm9yZGVyTGVmdFdpZHRoLDEw
KXx8MDtwcmV2T2Zmc2V0UGFyZW50PW9mZnNldFBhcmVudCxvZmZzZXRQYXJlbnQ9
ZWxlbS5vZmZzZXRQYXJlbnQ7fQppZihqUXVlcnkub2Zmc2V0LnN1YnRyYWN0c0Jv
cmRlckZvck92ZXJmbG93Tm90VmlzaWJsZSYmY29tcHV0ZWRTdHlsZS5vdmVyZmxv
dyE9PSJ2aXNpYmxlIikKdG9wKz1wYXJzZUludChjb21wdXRlZFN0eWxlLmJvcmRl
clRvcFdpZHRoLDEwKXx8MCxsZWZ0Kz1wYXJzZUludChjb21wdXRlZFN0eWxlLmJv
cmRlckxlZnRXaWR0aCwxMCl8fDA7cHJldkNvbXB1dGVkU3R5bGU9Y29tcHV0ZWRT
dHlsZTt9CmlmKHByZXZDb21wdXRlZFN0eWxlLnBvc2l0aW9uPT09InJlbGF0aXZl
Inx8cHJldkNvbXB1dGVkU3R5bGUucG9zaXRpb249PT0ic3RhdGljIikKdG9wKz1i
b2R5Lm9mZnNldFRvcCxsZWZ0Kz1ib2R5Lm9mZnNldExlZnQ7aWYocHJldkNvbXB1
dGVkU3R5bGUucG9zaXRpb249PT0iZml4ZWQiKQp0b3ArPU1hdGgubWF4KGRvY0Vs
ZW0uc2Nyb2xsVG9wLGJvZHkuc2Nyb2xsVG9wKSxsZWZ0Kz1NYXRoLm1heChkb2NF
bGVtLnNjcm9sbExlZnQsYm9keS5zY3JvbGxMZWZ0KTtyZXR1cm57dG9wOnRvcCxs
ZWZ0OmxlZnR9O307alF1ZXJ5Lm9mZnNldD17aW5pdGlhbGl6ZTpmdW5jdGlvbigp
e2lmKHRoaXMuaW5pdGlhbGl6ZWQpcmV0dXJuO3ZhciBib2R5PWRvY3VtZW50LmJv
ZHksY29udGFpbmVyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpLGlubmVy
RGl2LGNoZWNrRGl2LHRhYmxlLHRkLHJ1bGVzLHByb3AsYm9keU1hcmdpblRvcD1i
b2R5LnN0eWxlLm1hcmdpblRvcCxodG1sPSc8ZGl2IHN0eWxlPSJwb3NpdGlvbjph
YnNvbHV0ZTt0b3A6MDtsZWZ0OjA7bWFyZ2luOjA7Ym9yZGVyOjVweCBzb2xpZCAj
MDAwO3BhZGRpbmc6MDt3aWR0aDoxcHg7aGVpZ2h0OjFweDsiPjxkaXY+PC9kaXY+
PC9kaXY+PHRhYmxlIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0
OjA7bWFyZ2luOjA7Ym9yZGVyOjVweCBzb2xpZCAjMDAwO3BhZGRpbmc6MDt3aWR0
aDoxcHg7aGVpZ2h0OjFweDsiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0i
MCI+PHRyPjx0ZD48L3RkPjwvdHI+PC90YWJsZT4nO3J1bGVzPXtwb3NpdGlvbjon
YWJzb2x1dGUnLHRvcDowLGxlZnQ6MCxtYXJnaW46MCxib3JkZXI6MCx3aWR0aDon
MXB4JyxoZWlnaHQ6JzFweCcsdmlzaWJpbGl0eTonaGlkZGVuJ307Zm9yKHByb3Ag
aW4gcnVsZXMpY29udGFpbmVyLnN0eWxlW3Byb3BdPXJ1bGVzW3Byb3BdO2NvbnRh
aW5lci5pbm5lckhUTUw9aHRtbDtib2R5Lmluc2VydEJlZm9yZShjb250YWluZXIs
Ym9keS5maXJzdENoaWxkKTtpbm5lckRpdj1jb250YWluZXIuZmlyc3RDaGlsZCxj
aGVja0Rpdj1pbm5lckRpdi5maXJzdENoaWxkLHRkPWlubmVyRGl2Lm5leHRTaWJs
aW5nLmZpcnN0Q2hpbGQuZmlyc3RDaGlsZDt0aGlzLmRvZXNOb3RBZGRCb3JkZXI9
KGNoZWNrRGl2Lm9mZnNldFRvcCE9PTUpO3RoaXMuZG9lc0FkZEJvcmRlckZvclRh
YmxlQW5kQ2VsbHM9KHRkLm9mZnNldFRvcD09PTUpO2lubmVyRGl2LnN0eWxlLm92
ZXJmbG93PSdoaWRkZW4nLGlubmVyRGl2LnN0eWxlLnBvc2l0aW9uPSdyZWxhdGl2
ZSc7dGhpcy5zdWJ0cmFjdHNCb3JkZXJGb3JPdmVyZmxvd05vdFZpc2libGU9KGNo
ZWNrRGl2Lm9mZnNldFRvcD09PS01KTtib2R5LnN0eWxlLm1hcmdpblRvcD0nMXB4
Jzt0aGlzLmRvZXNOb3RJbmNsdWRlTWFyZ2luSW5Cb2R5T2Zmc2V0PShib2R5Lm9m
ZnNldFRvcD09PTApO2JvZHkuc3R5bGUubWFyZ2luVG9wPWJvZHlNYXJnaW5Ub3A7
Ym9keS5yZW1vdmVDaGlsZChjb250YWluZXIpO3RoaXMuaW5pdGlhbGl6ZWQ9dHJ1
ZTt9LGJvZHlPZmZzZXQ6ZnVuY3Rpb24oYm9keSl7alF1ZXJ5Lm9mZnNldC5pbml0
aWFsaXplZHx8alF1ZXJ5Lm9mZnNldC5pbml0aWFsaXplKCk7dmFyIHRvcD1ib2R5
Lm9mZnNldFRvcCxsZWZ0PWJvZHkub2Zmc2V0TGVmdDtpZihqUXVlcnkub2Zmc2V0
LmRvZXNOb3RJbmNsdWRlTWFyZ2luSW5Cb2R5T2Zmc2V0KQp0b3ArPXBhcnNlSW50
KGpRdWVyeS5jdXJDU1MoYm9keSwnbWFyZ2luVG9wJyx0cnVlKSwxMCl8fDAsbGVm
dCs9cGFyc2VJbnQoalF1ZXJ5LmN1ckNTUyhib2R5LCdtYXJnaW5MZWZ0Jyx0cnVl
KSwxMCl8fDA7cmV0dXJue3RvcDp0b3AsbGVmdDpsZWZ0fTt9fTtqUXVlcnkuZm4u
ZXh0ZW5kKHtwb3NpdGlvbjpmdW5jdGlvbigpe3ZhciBsZWZ0PTAsdG9wPTAscmVz
dWx0cztpZih0aGlzWzBdKXt2YXIgb2Zmc2V0UGFyZW50PXRoaXMub2Zmc2V0UGFy
ZW50KCksb2Zmc2V0PXRoaXMub2Zmc2V0KCkscGFyZW50T2Zmc2V0PS9eYm9keXxo
dG1sJC9pLnRlc3Qob2Zmc2V0UGFyZW50WzBdLnRhZ05hbWUpP3t0b3A6MCxsZWZ0
OjB9Om9mZnNldFBhcmVudC5vZmZzZXQoKTtvZmZzZXQudG9wLT1udW0odGhpcywn
bWFyZ2luVG9wJyk7b2Zmc2V0LmxlZnQtPW51bSh0aGlzLCdtYXJnaW5MZWZ0Jyk7
cGFyZW50T2Zmc2V0LnRvcCs9bnVtKG9mZnNldFBhcmVudCwnYm9yZGVyVG9wV2lk
dGgnKTtwYXJlbnRPZmZzZXQubGVmdCs9bnVtKG9mZnNldFBhcmVudCwnYm9yZGVy
TGVmdFdpZHRoJyk7cmVzdWx0cz17dG9wOm9mZnNldC50b3AtcGFyZW50T2Zmc2V0
LnRvcCxsZWZ0Om9mZnNldC5sZWZ0LXBhcmVudE9mZnNldC5sZWZ0fTt9CnJldHVy
biByZXN1bHRzO30sb2Zmc2V0UGFyZW50OmZ1bmN0aW9uKCl7dmFyIG9mZnNldFBh
cmVudD10aGlzWzBdLm9mZnNldFBhcmVudHx8ZG9jdW1lbnQuYm9keTt3aGlsZShv
ZmZzZXRQYXJlbnQmJighL15ib2R5fGh0bWwkL2kudGVzdChvZmZzZXRQYXJlbnQu
dGFnTmFtZSkmJmpRdWVyeS5jc3Mob2Zmc2V0UGFyZW50LCdwb3NpdGlvbicpPT0n
c3RhdGljJykpCm9mZnNldFBhcmVudD1vZmZzZXRQYXJlbnQub2Zmc2V0UGFyZW50
O3JldHVybiBqUXVlcnkob2Zmc2V0UGFyZW50KTt9fSk7alF1ZXJ5LmVhY2goWydM
ZWZ0JywnVG9wJ10sZnVuY3Rpb24oaSxuYW1lKXt2YXIgbWV0aG9kPSdzY3JvbGwn
K25hbWU7alF1ZXJ5LmZuW21ldGhvZF09ZnVuY3Rpb24odmFsKXtpZighdGhpc1sw
XSlyZXR1cm4gbnVsbDtyZXR1cm4gdmFsIT09dW5kZWZpbmVkP3RoaXMuZWFjaChm
dW5jdGlvbigpe3RoaXM9PXdpbmRvd3x8dGhpcz09ZG9jdW1lbnQ/d2luZG93LnNj
cm9sbFRvKCFpP3ZhbDpqUXVlcnkod2luZG93KS5zY3JvbGxMZWZ0KCksaT92YWw6
alF1ZXJ5KHdpbmRvdykuc2Nyb2xsVG9wKCkpOnRoaXNbbWV0aG9kXT12YWw7fSk6
dGhpc1swXT09d2luZG93fHx0aGlzWzBdPT1kb2N1bWVudD9zZWxmW2k/J3BhZ2VZ
T2Zmc2V0JzoncGFnZVhPZmZzZXQnXXx8alF1ZXJ5LmJveE1vZGVsJiZkb2N1bWVu
dC5kb2N1bWVudEVsZW1lbnRbbWV0aG9kXXx8ZG9jdW1lbnQuYm9keVttZXRob2Rd
OnRoaXNbMF1bbWV0aG9kXTt9O30pO2pRdWVyeS5lYWNoKFsiSGVpZ2h0IiwiV2lk
dGgiXSxmdW5jdGlvbihpLG5hbWUpe3ZhciB0bD1pPyJMZWZ0IjoiVG9wIixicj1p
PyJSaWdodCI6IkJvdHRvbSIsbG93ZXI9bmFtZS50b0xvd2VyQ2FzZSgpO2pRdWVy
eS5mblsiaW5uZXIiK25hbWVdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXNbMF0/alF1
ZXJ5LmNzcyh0aGlzWzBdLGxvd2VyLGZhbHNlLCJwYWRkaW5nIik6bnVsbDt9O2pR
dWVyeS5mblsib3V0ZXIiK25hbWVdPWZ1bmN0aW9uKG1hcmdpbil7cmV0dXJuIHRo
aXNbMF0/alF1ZXJ5LmNzcyh0aGlzWzBdLGxvd2VyLGZhbHNlLG1hcmdpbj8ibWFy
Z2luIjoiYm9yZGVyIik6bnVsbDt9O3ZhciB0eXBlPW5hbWUudG9Mb3dlckNhc2Uo
KTtqUXVlcnkuZm5bdHlwZV09ZnVuY3Rpb24oc2l6ZSl7cmV0dXJuIHRoaXNbMF09
PXdpbmRvdz9kb2N1bWVudC5jb21wYXRNb2RlPT0iQ1NTMUNvbXBhdCImJmRvY3Vt
ZW50LmRvY3VtZW50RWxlbWVudFsiY2xpZW50IituYW1lXXx8ZG9jdW1lbnQuYm9k
eVsiY2xpZW50IituYW1lXTp0aGlzWzBdPT1kb2N1bWVudD9NYXRoLm1heChkb2N1
bWVudC5kb2N1bWVudEVsZW1lbnRbImNsaWVudCIrbmFtZV0sZG9jdW1lbnQuYm9k
eVsic2Nyb2xsIituYW1lXSxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnRbInNjcm9s
bCIrbmFtZV0sZG9jdW1lbnQuYm9keVsib2Zmc2V0IituYW1lXSxkb2N1bWVudC5k
b2N1bWVudEVsZW1lbnRbIm9mZnNldCIrbmFtZV0pOnNpemU9PT11bmRlZmluZWQ/
KHRoaXMubGVuZ3RoP2pRdWVyeS5jc3ModGhpc1swXSx0eXBlKTpudWxsKTp0aGlz
LmNzcyh0eXBlLHR5cGVvZiBzaXplPT09InN0cmluZyI/c2l6ZTpzaXplKyJweCIp
O307fSk7fSkoKTskaj1qUXVlcnkubm9Db25mbGljdCgpOw==
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=ajax.js
Content-Type: application/x-javascript; charset=UTF-8; name=ajax.js
Content-Location: http://bits.wikimedia.org/skins-1.5/common/ajax.js?283r
Content-Transfer-Encoding: Base64
Ly8gcmVtb3RlIHNjcmlwdGluZyBsaWJyYXJ5Ci8vIChjKSBjb3B5cmlnaHQgMjAw
NSBtb2Rlcm5tZXRob2QsIGluYwp2YXIgc2FqYXhfZGVidWdfbW9kZSA9IGZhbHNl
Owp2YXIgc2FqYXhfcmVxdWVzdF90eXBlID0gIkdFVCI7CgovKioKKiBpZiBzYWph
eF9kZWJ1Z19tb2RlIGlzIHRydWUsIHRoaXMgZnVuY3Rpb24gb3V0cHV0cyBnaXZl
biB0aGUgbWVzc2FnZSBpbnRvIAoqIHRoZSBlbGVtZW50IHdpdGggaWQgPSBzYWph
eF9kZWJ1ZzsgaWYgbm8gc3VjaCBlbGVtZW50IGV4aXN0cyBpbiB0aGUgZG9jdW1l
bnQsIAoqIGl0IGlzIGluamVjdGVkLgoqLwpmdW5jdGlvbiBzYWpheF9kZWJ1Zyh0
ZXh0KSB7CglpZiAoIXNhamF4X2RlYnVnX21vZGUpIHJldHVybiBmYWxzZTsKCgl2
YXIgZT0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NhamF4X2RlYnVnJyk7CgoJ
aWYgKCFlKSB7CgkJZT0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOwoJCWUu
Y2xhc3NOYW1lPSAnc2FqYXhfZGVidWcnOwoJCWUuaWQ9ICdzYWpheF9kZWJ1Zyc7
CgoJCXZhciBiPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYm9keSIp
WzBdOwoKCQlpZiAoYi5maXJzdENoaWxkKSBiLmluc2VydEJlZm9yZShlLCBiLmZp
cnN0Q2hpbGQpOwoJCWVsc2UgYi5hcHBlbmRDaGlsZChlKTsKCX0KCgl2YXIgbT0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CgltLmFwcGVuZENoaWxkKCBk
b2N1bWVudC5jcmVhdGVUZXh0Tm9kZSggdGV4dCApICk7CgoJZS5hcHBlbmRDaGls
ZCggbSApOwoKCXJldHVybiB0cnVlOwp9CgovKioKKiBjb21wYXRpYmlsaXR5IHdy
YXBwZXIgZm9yIGNyZWF0aW5nIGEgbmV3IFhNTEh0dHBSZXF1ZXN0IG9iamVjdC4K
Ki8KZnVuY3Rpb24gc2FqYXhfaW5pdF9vYmplY3QoKSB7CglzYWpheF9kZWJ1Zygi
c2FqYXhfaW5pdF9vYmplY3QoKSBjYWxsZWQuLiIpCgl2YXIgQTsKCXRyeSB7CgkJ
Ly8gVHJ5IHRoZSBuZXcgc3R5bGUgYmVmb3JlIEFjdGl2ZVggc28gd2UgZG9uJ3QK
CQkvLyB1bm5lY2Vzc2FyaWx5IHRyaWdnZXIgd2FybmluZ3MgaW4gSUUgNyB3aGVu
CgkJLy8gc2V0IHRvIHByb21wdCBhYm91dCBBY3RpdmVYIHVzYWdlCgkJQSA9IG5l
dyBYTUxIdHRwUmVxdWVzdCgpOwoJfSBjYXRjaCAoZSkgewoJCXRyeSB7CgkJCUE9
bmV3IEFjdGl2ZVhPYmplY3QoIk1zeG1sMi5YTUxIVFRQIik7CgkJfSBjYXRjaCAo
ZSkgewoJCQl0cnkgewoJCQkJQT1uZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0
LlhNTEhUVFAiKTsKCQkJfSBjYXRjaCAob2MpIHsKCQkJCUE9bnVsbDsKCQkJfQoJ
CX0KCX0KCWlmICghQSkKCQlzYWpheF9kZWJ1ZygiQ291bGQgbm90IGNyZWF0ZSBj
b25uZWN0aW9uIG9iamVjdC4iKTsKCglyZXR1cm4gQTsKfQoKLyoqCiogUGVyZm9y
bSBhbiBhamF4IGNhbGwgdG8gbWVkaWF3aWtpLiBDYWxscyBhcmUgaGFuZGVsZWQg
YnkgQWpheERpc3BhdGNoZXIucGhwCiogICBmdW5jX25hbWUgLSB0aGUgbmFtZSBv
ZiB0aGUgZnVuY3Rpb24gdG8gY2FsbC4gTXVzdCBiZSByZWdpc3RlcmVkIGluICR3
Z0FqYXhFeHBvcnRMaXN0CiogICBhcmdzIC0gYW4gYXJyYXkgb2YgYXJndW1lbnRz
IHRvIHRoYXQgZnVuY3Rpb24KKiAgIHRhcmdldCAtIHRoZSB0YXJnZXQgdGhhdCB3
aWxsIGhhbmRsZSB0aGUgcmVzdWx0IG9mIHRoZSBjYWxsLiBJZiB0aGlzIGlzIGEg
ZnVuY3Rpb24sCiogICAgICAgICAgICBpZiB3aWxsIGJlIGNhbGxlZCB3aXRoIHRo
ZSBYTUxIdHRwUmVxdWVzdCBhcyBhIHBhcmFtZXRlcjsgaWYgaXQncyBhbiBpbnB1
dAoqICAgICAgICAgICAgZWxlbWVudCwgaXRzIHZhbHVlIHdpbGwgYmUgc2V0IHRv
IHRoZSByZXN1bHRUZXh0OyBpZiBpdCdzIGFub3RoZXIgdHlwZSBvZgoqICAgICAg
ICAgICAgZWxlbWVudCwgaXRzIGlubmVySFRNTCB3aWxsIGJlIHNldCB0byB0aGUg
cmVzdWx0VGV4dC4KKgoqIEV4YW1wbGU6CiogICAgc2FqYXhfZG9fY2FsbCgnZG9G
b28nLCBbMSwgMiwgM10sIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaG93Rm9v
IikpOwoqCiogVGhpcyB3aWxsIGNhbGwgdGhlIGRvRm9vIGZ1bmN0aW9uIHZpYSBN
ZWRpYVdpa2kncyBBamF4RGlzcGF0Y2hlciwgd2l0aAoqICgxLCAyLCAzKSBhcyB0
aGUgcGFyYW1ldGVyIGxpc3QsIGFuZCB3aWxsIHNob3cgdGhlIHJlc3VsdCBpbiB0
aGUgZWxlbWVudAoqIHdpdGggaWQgPSBzaG93Rm9vCiovCmZ1bmN0aW9uIHNhamF4
X2RvX2NhbGwoZnVuY19uYW1lLCBhcmdzLCB0YXJnZXQpIHsKCXZhciBpLCB4LCBu
OwoJdmFyIHVyaTsKCXZhciBwb3N0X2RhdGE7Cgl1cmkgPSB3Z1NlcnZlciArCgkJ
KCh3Z1NjcmlwdCA9PSBudWxsKSA/ICh3Z1NjcmlwdFBhdGggKyAiL2luZGV4LnBo
cCIpIDogd2dTY3JpcHQpICsKCQkiP2FjdGlvbj1hamF4IjsKCWlmIChzYWpheF9y
ZXF1ZXN0X3R5cGUgPT0gIkdFVCIpIHsKCQlpZiAodXJpLmluZGV4T2YoIj8iKSA9
PSAtMSkKCQkJdXJpID0gdXJpICsgIj9ycz0iICsgZW5jb2RlVVJJQ29tcG9uZW50
KGZ1bmNfbmFtZSk7CgkJZWxzZQoJCQl1cmkgPSB1cmkgKyAiJnJzPSIgKyBlbmNv
ZGVVUklDb21wb25lbnQoZnVuY19uYW1lKTsKCQlmb3IgKGkgPSAwOyBpIDwgYXJn
cy5sZW5ndGg7IGkrKykKCQkJdXJpID0gdXJpICsgIiZyc2FyZ3NbXT0iICsgZW5j
b2RlVVJJQ29tcG9uZW50KGFyZ3NbaV0pOwoJCS8vdXJpID0gdXJpICsgIiZyc3Ju
ZD0iICsgbmV3IERhdGUoKS5nZXRUaW1lKCk7CgkJcG9zdF9kYXRhID0gbnVsbDsK
CX0gZWxzZSB7CgkJcG9zdF9kYXRhID0gInJzPSIgKyBlbmNvZGVVUklDb21wb25l
bnQoZnVuY19uYW1lKTsKCQlmb3IgKGkgPSAwOyBpIDwgYXJncy5sZW5ndGg7IGkr
KykKCQkJcG9zdF9kYXRhID0gcG9zdF9kYXRhICsgIiZyc2FyZ3NbXT0iICsgZW5j
b2RlVVJJQ29tcG9uZW50KGFyZ3NbaV0pOwoJfQoJeCA9IHNhamF4X2luaXRfb2Jq
ZWN0KCk7CglpZiAoIXgpIHsKCQlhbGVydCgiQUpBWCBub3Qgc3VwcG9ydGVkIik7
CgkJcmV0dXJuIGZhbHNlOwoJfQoKCXRyeSB7CgkJeC5vcGVuKHNhamF4X3JlcXVl
c3RfdHlwZSwgdXJpLCB0cnVlKTsKCX0gY2F0Y2ggKGUpIHsKCQlpZiAod2luZG93
LmxvY2F0aW9uLmhvc3RuYW1lID09ICJsb2NhbGhvc3QiKSB7CgkJCWFsZXJ0KCJZ
b3VyIGJyb3dzZXIgYmxvY2tzIFhNTEh0dHBSZXF1ZXN0IHRvICdsb2NhbGhvc3Qn
LCB0cnkgdXNpbmcgYSByZWFsIGhvc3RuYW1lIGZvciBkZXZlbG9wbWVudC90ZXN0
aW5nLiIpOwoJCX0KCQl0aHJvdyBlOwoJfQoJaWYgKHNhamF4X3JlcXVlc3RfdHlw
ZSA9PSAiUE9TVCIpIHsKCQl4LnNldFJlcXVlc3RIZWFkZXIoIk1ldGhvZCIsICJQ
T1NUICIgKyB1cmkgKyAiIEhUVFAvMS4xIik7CgkJeC5zZXRSZXF1ZXN0SGVhZGVy
KCJDb250ZW50LVR5cGUiLCAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNv
ZGVkIik7Cgl9Cgl4LnNldFJlcXVlc3RIZWFkZXIoIlByYWdtYSIsICJjYWNoZT15
ZXMiKTsKCXguc2V0UmVxdWVzdEhlYWRlcigiQ2FjaGUtQ29udHJvbCIsICJuby10
cmFuc2Zvcm0iKTsKCXgub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKSB7
CgkJaWYgKHgucmVhZHlTdGF0ZSAhPSA0KQoJCQlyZXR1cm47CgoJCXNhamF4X2Rl
YnVnKCJyZWNlaXZlZCAoIiArIHguc3RhdHVzICsgIiAiICsgeC5zdGF0dXNUZXh0
ICsgIikgIiArIHgucmVzcG9uc2VUZXh0KTsKCgkJLy9pZiAoeC5zdGF0dXMgIT0g
MjAwKQoJCS8vCWFsZXJ0KCJFcnJvcjogIiArIHguc3RhdHVzICsgIiAiICsgeC5z
dGF0dXNUZXh0ICsgIjogIiArIHgucmVzcG9uc2VUZXh0KTsKCQkvL2Vsc2UKCgkJ
aWYgKCB0eXBlb2YoIHRhcmdldCApID09ICdmdW5jdGlvbicgKSB7CgkJCXRhcmdl
dCggeCApOwoJCX0KCQllbHNlIGlmICggdHlwZW9mKCB0YXJnZXQgKSA9PSAnb2Jq
ZWN0JyApIHsKCQkJaWYgKCB0YXJnZXQudGFnTmFtZSA9PSAnSU5QVVQnICkgewoJ
CQkJaWYgKHguc3RhdHVzID09IDIwMCkgdGFyZ2V0LnZhbHVlPSB4LnJlc3BvbnNl
VGV4dDsKCQkJCS8vZWxzZSBhbGVydCgiRXJyb3I6ICIgKyB4LnN0YXR1cyArICIg
IiArIHguc3RhdHVzVGV4dCArICIgKCIgKyB4LnJlc3BvbnNlVGV4dCArICIpIik7
CgkJCX0KCQkJZWxzZSB7CgkJCQlpZiAoeC5zdGF0dXMgPT0gMjAwKSB0YXJnZXQu
aW5uZXJIVE1MID0geC5yZXNwb25zZVRleHQ7CgkJCQllbHNlIHRhcmdldC5pbm5l
ckhUTUw9ICI8ZGl2IGNsYXNzPSdlcnJvcic+RXJyb3I6ICIgKyB4LnN0YXR1cyAr
ICIgIiArIHguc3RhdHVzVGV4dCArICIgKCIgKyB4LnJlc3BvbnNlVGV4dCArICIp
PC9kaXY+IjsKCQkJfQoJCX0KCQllbHNlIHsKCQkJYWxlcnQoImJhZCB0YXJnZXQg
Zm9yIHNhamF4X2RvX2NhbGw6IG5vdCBhIGZ1bmN0aW9uIG9yIG9iamVjdDogIiAr
IHRhcmdldCk7CgkJfQoKCQlyZXR1cm47Cgl9CgoJc2FqYXhfZGVidWcoZnVuY19u
YW1lICsgIiB1cmkgPSAiICsgdXJpICsgIiAvIHBvc3QgPSAiICsgcG9zdF9kYXRh
KTsKCXguc2VuZChwb3N0X2RhdGEpOwoJc2FqYXhfZGVidWcoZnVuY19uYW1lICsg
IiB3YWl0aW5nLi4iKTsKCWRlbGV0ZSB4OwoKCXJldHVybiB0cnVlOwp9CgovKioK
ICogQHJldHVybiBib29sZWFuIHdoZXRoZXIgdGhlIGJyb3dzZXIgc3VwcG9ydHMg
WE1MSHR0cFJlcXVlc3QKICovCmZ1bmN0aW9uIHdmU3VwcG9ydHNBamF4KCkgewoJ
dmFyIHJlcXVlc3QgPSBzYWpheF9pbml0X29iamVjdCgpOwoJdmFyIHN1cHBvcnRz
QWpheCA9IHJlcXVlc3QgPyB0cnVlIDogZmFsc2U7CglkZWxldGUgcmVxdWVzdDsK
CXJldHVybiBzdXBwb3J0c0FqYXg7Cn0KCg==
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=mwsuggest.js
Content-Type: application/x-javascript; charset=UTF-8; name=mwsuggest.js
Content-Location: http://bits.wikimedia.org/skins-1.5/common/mwsuggest.js?283r
Content-Transfer-Encoding: Base64
LyoKICogT3BlblNlYXJjaCBhamF4IHN1Z2dlc3Rpb24gZW5naW5lIGZvciBNZWRp
YVdpa2kKICoKICogdXNlcyBjb3JlIE1lZGlhV2lraSBvcGVuIHNlYXJjaCBzdXBw
b3J0IHRvIGZldGNoIHN1Z2dlc3Rpb25zCiAqIGFuZCBzaG93IHRoZW0gYmVsb3cg
c2VhcmNoIGJveGVzIGFuZCBvdGhlciBpbnB1dHMKICoKICogYnkgUm9iZXJ0IFN0
b2puaWMgKEFwcmlsIDIwMDgpCiAqLwoKLy8gc2VhcmNoX2JveF9pZCAtPiBSZXN1
bHRzIG9iamVjdAp2YXIgb3NfbWFwID0ge307Ci8vIGNhY2hlZCBkYXRhLCB1cmwg
LT4ganNvbl90ZXh0CnZhciBvc19jYWNoZSA9IHt9OwovLyBnbG9iYWwgdmFyaWFi
bGVzIGZvciBzdWdnZXN0X2tleXByZXNzCnZhciBvc19jdXJfa2V5cHJlc3NlZCA9
IDA7CnZhciBvc19rZXlwcmVzc2VkX2NvdW50ID0gMDsKLy8gdHlwZTogVGltZXIK
dmFyIG9zX3RpbWVyID0gbnVsbDsKLy8gdGllIG1vdXNlZG93bi91cCBldmVudHMK
dmFyIG9zX21vdXNlX3ByZXNzZWQgPSBmYWxzZTsKdmFyIG9zX21vdXNlX251bSA9
IC0xOwovLyBpZiB0cnVlLCB0aGUgbGFzdCBjaGFuZ2Ugd2FzIG1hZGUgYnkgbW91
c2UgKGFuZCBub3Qga2V5Ym9hcmQpCnZhciBvc19tb3VzZV9tb3ZlZCA9IGZhbHNl
OwovLyBkZWxheSBiZXR3ZWVuIGtleXByZXNzIGFuZCBzdWdnZXN0aW9uIChpbiBt
cykKdmFyIG9zX3NlYXJjaF90aW1lb3V0ID0gMjUwOwovLyB0aGVzZSBwYWlycyBv
ZiBpbnB1dHMvZm9ybXMgd2lsbCBiZSBhdXRvbG9hZGVkIGF0IHN0YXJ0dXAKdmFy
IG9zX2F1dG9sb2FkX2lucHV0cyA9IG5ldyBBcnJheSgnc2VhcmNoSW5wdXQnLCAn
c2VhcmNoSW5wdXQyJywgJ3Bvd2VyU2VhcmNoVGV4dCcsICdzZWFyY2hUZXh0Jyk7
CnZhciBvc19hdXRvbG9hZF9mb3JtcyA9IG5ldyBBcnJheSgnc2VhcmNoZm9ybScs
ICdzZWFyY2hmb3JtMicsICdwb3dlcnNlYXJjaCcsICdzZWFyY2gnICk7Ci8vIGlm
IHdlIHN0b3BwZWQgdGhlIHNlcnZpY2UKdmFyIG9zX2lzX3N0b3BwZWQgPSBmYWxz
ZTsKLy8gbWF4IGxpbmVzIHRvIHNob3cgaW4gc3VnZ2VzdCB0YWJsZQp2YXIgb3Nf
bWF4X2xpbmVzX3Blcl9zdWdnZXN0ID0gNzsKLy8gbnVtYmVyIG9mIHN0ZXBzIHRv
IGFuaW1hdGUgZXhwYW5zaW9uL2NvbnRyYWN0aW9uIG9mIGNvbnRhaW5lciB3aWR0
aAp2YXIgb3NfYW5pbWF0aW9uX3N0ZXBzID0gNjsKLy8gbnVtIG9mIHBpeGVscyBv
ZiBzbWFsbGVzdCBzdGVwCnZhciBvc19hbmltYXRpb25fbWluX3N0ZXAgPSAyOwov
LyBkZWxheSBiZXR3ZWVuIHN0ZXBzIChpbiBtcykKdmFyIG9zX2FuaW1hdGlvbl9k
ZWxheSA9IDMwOwovLyBtYXggd2lkdGggb2YgY29udGFpbmVyIGluIHBlcmNlbnQg
b2Ygbm9ybWFsIHNpemUgKDEgPT0gMTAwJSkKdmFyIG9zX2NvbnRhaW5lcl9tYXhf
d2lkdGggPSAyOwovLyBjdXJyZW50bHkgYWN0aXZlIGFuaW1hdGlvbiB0aW1lcgp2
YXIgb3NfYW5pbWF0aW9uX3RpbWVyID0gbnVsbDsKLyoqCiAqIDxkYXRhbGlzdD4g
aXMgYSBuZXcgSFRNTDUgZWxlbWVudCB0aGF0IGFsbG93cyB5b3UgdG8gbWFudWFs
bHkgc3VwcGx5CiAqIHN1Z2dlc3Rpb24gbGlzdHMgYW5kIGhhdmUgdGhlbSByZW5k
ZXJlZCBhY2NvcmRpbmcgdG8gdGhlIHJpZ2h0IHBsYXRmb3JtCiAqIGNvbnZlbnRp
b25zLiAgSG93ZXZlciwgdGhlIG9ubHkgc2hpcHBpbmcgYnJvd3NlciBhcyBvZiBl
YXJseSAyMDEwIGlzIE9wZXJhLAogKiBhbmQgdGhhdCBoYXMgYSBmYXRhbCBwcm9i
bGVtOiB0aGUgc3VnZ2VzdGlvbiBsYWdzIGJlaGluZCB3aGF0IHRoZSB1c2VyIHR5
cGVzCiAqIGJ5IG9uZSBrZXlwcmVzcy4gIChSZXBvcnRlZCBhcyBEU0stMjc2ODcw
IHRvIE9wZXJhJ3Mgc2VjcmV0IGJ1ZyB0cmFja2VyLikKICogVGhlIGNvZGUgaGVy
ZSBvdGhlcndpc2Ugc2VlbXMgdG8gd29yaywgdGhvdWdoLCBzbyB0aGlzIGNhbiBi
ZSBmbGlwcGVkIG9uCiAqIChtYXliZSB3aXRoIGEgVUEgY2hlY2spIHdoZW4gc29t
ZSBicm93c2VyIGhhcyBhIGJldHRlciBpbXBsZW1lbnRhdGlvbi4KICovCi8vIHZh
ciBvc191c2VfZGF0YWxpc3QgPSAnbGlzdCcgaW4gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCggJ2lucHV0JyApOwp2YXIgb3NfdXNlX2RhdGFsaXN0ID0gZmFsc2U7Cgov
KiogVGltZW91dCB0aW1lciBjbGFzcyB0aGF0IHdpbGwgZmV0Y2ggdGhlIHJlc3Vs
dHMgKi8KZnVuY3Rpb24gb3NfVGltZXIoIGlkLCByLCBxdWVyeSApIHsKCXRoaXMu
aWQgPSBpZDsKCXRoaXMuciA9IHI7Cgl0aGlzLnF1ZXJ5ID0gcXVlcnk7Cn0KCi8q
KiBQcm9wZXJ0eSBjbGFzcyBmb3Igc2luZ2xlIHNlYXJjaCBib3ggKi8KZnVuY3Rp
b24gb3NfUmVzdWx0cyggbmFtZSwgZm9ybW5hbWUgKSB7Cgl0aGlzLnNlYXJjaGZv
cm0gPSBmb3JtbmFtZTsgLy8gaWQgb2YgdGhlIHNlYXJjaGZvcm0KCXRoaXMuc2Vh
cmNoYm94ID0gbmFtZTsgLy8gaWQgb2YgdGhlIHNlYXJjaGJveAoJdGhpcy5jb250
YWluZXIgPSBuYW1lICsgJ1N1Z2dlc3QnOyAvLyBkaXYgdGhhdCBob2xkcyByZXN1
bHRzCgl0aGlzLnJlc3VsdFRhYmxlID0gbmFtZSArICdSZXN1bHQnOyAvLyBpZCBi
YXNlIGZvciB0aGUgcmVzdWx0IHRhYmxlICgrbnVtID0gdGFibGUgcm93KQoJdGhp
cy5yZXN1bHRUZXh0ID0gbmFtZSArICdSZXN1bHRUZXh0JzsgLy8gaWQgYmFzZSBm
b3IgdGhlIHNwYW5zIHdpdGhpbiByZXN1bHQgdGFibGVzICgrbnVtKQoJdGhpcy50
b2dnbGUgPSBuYW1lICsgJ1RvZ2dsZSc7IC8vIGRpdiB0aGF0IGhhcyB0aGUgdG9n
Z2xlIChlbmFibGUvZGlzYWJsZSkgbGluawoJdGhpcy5xdWVyeSA9IG51bGw7IC8v
IGxhc3QgcHJvY2Vzc2VkIHF1ZXJ5Cgl0aGlzLnJlc3VsdHMgPSBudWxsOyAgLy8g
cGFyc2VkIHRpdGxlcwoJdGhpcy5yZXN1bHRDb3VudCA9IDA7IC8vIG51bWJlciBv
ZiByZXN1bHRzCgl0aGlzLm9yaWdpbmFsID0gbnVsbDsgLy8gcXVlcnkgdGhhdCB1
c2VyIGVudGVyZWQKCXRoaXMuc2VsZWN0ZWQgPSAtMTsgLy8gd2hpY2ggcmVzdWx0
IGlzIHNlbGVjdGVkCgl0aGlzLmNvbnRhaW5lckNvdW50ID0gMDsgLy8gbnVtYmVy
IG9mIHJlc3VsdHMgdmlzaWJsZSBpbiBjb250YWluZXIKCXRoaXMuY29udGFpbmVy
Um93ID0gMDsgLy8gaGVpZ2h0IG9mIHJlc3VsdCBmaWVsZCBpbiB0aGUgY29udGFp
bmVyCgl0aGlzLmNvbnRhaW5lclRvdGFsID0gMDsgLy8gdG90YWwgaGVpZ2h0IG9m
IHRoZSBjb250YWluZXIgd2lsbCBhbGwgcmVzdWx0cwoJdGhpcy52aXNpYmxlID0g
ZmFsc2U7IC8vIGlmIGNvbnRhaW5lciBpcyB2aXNpYmxlCgl0aGlzLnN0YXlIaWRk
ZW4gPSBmYWxzZTsgLy8gZG9uJ3QgdHJ5IHRvIHNob3cgaWYgbG9zdCBmb2N1cwp9
CgovKiogVGltZXIgdXNlciB0byBhbmltYXRlIGV4cGFuc2lvbi9jb250cmFjdGlv
biBvZiBjb250YWluZXIgd2lkdGggKi8KZnVuY3Rpb24gb3NfQW5pbWF0aW9uVGlt
ZXIoIHIsIHRhcmdldCApIHsKCXRoaXMuciA9IHI7Cgl2YXIgY3VycmVudCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKHIuY29udGFpbmVyKS5vZmZzZXRXaWR0aDsK
CXRoaXMuaW5jID0gTWF0aC5yb3VuZCggKCB0YXJnZXQgLSBjdXJyZW50ICkgLyBv
c19hbmltYXRpb25fc3RlcHMgKTsKCWlmKCB0aGlzLmluYyA8IG9zX2FuaW1hdGlv
bl9taW5fc3RlcCAmJiB0aGlzLmluYyA+PTAgKSB7CgkJdGhpcy5pbmMgPSBvc19h
bmltYXRpb25fbWluX3N0ZXA7IC8vIG1pbmltYWwgYW5pbWF0aW9uIHN0ZXAKCX0K
CWlmKCB0aGlzLmluYyA+IC1vc19hbmltYXRpb25fbWluX3N0ZXAgJiYgdGhpcy5p
bmMgPCAwICkgewoJCXRoaXMuaW5jID0gLW9zX2FuaW1hdGlvbl9taW5fc3RlcDsK
CX0KCXRoaXMudGFyZ2V0ID0gdGFyZ2V0Owp9CgovKioqKioqKioqKioqKioqKioq
CiAqIEluaXRpYWxpemF0aW9uCiAqKioqKioqKioqKioqKioqKiovCgovKiogSW5p
dGlhbGl6YXRpb24sIGNhbGwgdXBvbiBwYWdlIG9ubG9hZCAqLwpmdW5jdGlvbiBv
c19NV1N1Z2dlc3RJbml0KCkgewoJZm9yKCBpID0gMDsgaSA8IG9zX2F1dG9sb2Fk
X2lucHV0cy5sZW5ndGg7IGkrKyApIHsKCQl2YXIgaWQgPSBvc19hdXRvbG9hZF9p
bnB1dHNbaV07CgkJdmFyIGZvcm0gPSBvc19hdXRvbG9hZF9mb3Jtc1tpXTsKCQll
bGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIGlkICk7CgkJaWYoIGVs
ZW1lbnQgIT0gbnVsbCApIHsKCQkJb3NfaW5pdEhhbmRsZXJzKCBpZCwgZm9ybSwg
ZWxlbWVudCApOwoJCX0KCX0KfQoKLyoqIEluaXQgUmVzdWx0IG9iamVjdHMgYW5k
IGV2ZW50IGhhbmRsZXJzICovCmZ1bmN0aW9uIG9zX2luaXRIYW5kbGVycyggbmFt
ZSwgZm9ybW5hbWUsIGVsZW1lbnQgKSB7Cgl2YXIgciA9IG5ldyBvc19SZXN1bHRz
KCBuYW1lLCBmb3JtbmFtZSApOwoJLy8gZXZlbnQgaGFuZGxlcgoJb3NfaG9va0V2
ZW50KCBlbGVtZW50LCAna2V5dXAnLCBmdW5jdGlvbiggZXZlbnQgKSB7IG9zX2V2
ZW50S2V5dXAoIGV2ZW50ICk7IH0gKTsKCW9zX2hvb2tFdmVudCggZWxlbWVudCwg
J2tleWRvd24nLCBmdW5jdGlvbiggZXZlbnQgKSB7IG9zX2V2ZW50S2V5ZG93bigg
ZXZlbnQgKTsgfSApOwoJb3NfaG9va0V2ZW50KCBlbGVtZW50LCAna2V5cHJlc3Mn
LCBmdW5jdGlvbiggZXZlbnQgKSB7IG9zX2V2ZW50S2V5cHJlc3MoIGV2ZW50ICk7
IH0gKTsKCWlmICggIW9zX3VzZV9kYXRhbGlzdCApIHsKCQkvLyBUaGVzZSBhcmUg
bmVlZGVkIGZvciB0aGUgZGl2IGhhY2sgdG8gaGlkZSBpdCBpZiB0aGUgdXNlciBi
bHVycy4KCQlvc19ob29rRXZlbnQoIGVsZW1lbnQsICdibHVyJywgZnVuY3Rpb24o
IGV2ZW50ICkgeyBvc19ldmVudEJsdXIoIGV2ZW50ICk7IH0gKTsKCQlvc19ob29r
RXZlbnQoIGVsZW1lbnQsICdmb2N1cycsIGZ1bmN0aW9uKCBldmVudCApIHsgb3Nf
ZXZlbnRGb2N1cyggZXZlbnQgKTsgfSApOwoJCS8vIFdlIGRvbid0IHdhbnQgYnJv
d3NlciBhdXRvLXN1Z2dlc3Rpb25zIGludGVyZmVyaW5nIHdpdGggb3VyIGRpdiwg
YnV0CgkJLy8gYXV0b2NvbXBsZXRlIG11c3QgYmUgb24gZm9yIGRhdGFsaXN0IHRv
IHdvcmsgKGF0IGxlYXN0IGluIE9wZXJhCgkJLy8gMTAuMTApLgoJCWVsZW1lbnQu
c2V0QXR0cmlidXRlKCAnYXV0b2NvbXBsZXRlJywgJ29mZicgKTsKCX0KCS8vIHN0
b3BwaW5nIGhhbmRsZXIKCW9zX2hvb2tFdmVudCggZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoIGZvcm1uYW1lICksICdzdWJtaXQnLCBmdW5jdGlvbiggZXZlbnQgKSB7
IHJldHVybiBvc19ldmVudE9uc3VibWl0KCBldmVudCApOyB9ICk7Cglvc19tYXBb
bmFtZV0gPSByOwoJLy8gdG9nZ2xlIGxpbmsKCWlmKCBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCggci50b2dnbGUgKSA9PSBudWxsICkgewoJCS8vIFRPRE86IGRpc2Fi
bGUgdGhpcyB3aGlsZSB3ZSBmaWd1cmUgb3V0IGEgd2F5IGZvciB0aGlzIHRvIHdv
cmsgaW4gYWxsIGJyb3dzZXJzCgkJLyogaWYoIG5hbWUgPT0gJ3NlYXJjaElucHV0
JyApIHsKCQkJLy8gc3BlY2lhbCBjYXNlOiBwbGFjZSBhYm92ZSB0aGUgbWFpbiBz
ZWFyY2ggYm94CgkJCXZhciB0ID0gb3NfY3JlYXRlVG9nZ2xlKCByLCAnb3Mtc3Vn
Z2VzdC10b2dnbGUnICk7CgkJCXZhciBzZWFyY2hCb2R5ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoICdzZWFyY2hCb2R5JyApOwoJCQl2YXIgZmlyc3QgPSBzZWFy
Y2hCb2R5LnBhcmVudE5vZGUuZmlyc3RDaGlsZC5uZXh0U2libGluZy5hcHBlbmRD
aGlsZCh0KTsKCQl9IGVsc2UgewoJCQkvLyBkZWZhdWx0OiBwbGFjZSBiZWxvdyBz
ZWFyY2ggYm94IHRvIHRoZSByaWdodAoJCQl2YXIgdCA9IG9zX2NyZWF0ZVRvZ2ds
ZSggciwgJ29zLXN1Z2dlc3QtdG9nZ2xlLWRlZicgKTsKCQkJdmFyIHRvcCA9IGVs
ZW1lbnQub2Zmc2V0VG9wICsgZWxlbWVudC5vZmZzZXRIZWlnaHQ7CgkJCXZhciBs
ZWZ0ID0gZWxlbWVudC5vZmZzZXRMZWZ0ICsgZWxlbWVudC5vZmZzZXRXaWR0aDsK
CQkJdC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7CgkJCXQuc3R5bGUudG9w
ID0gdG9wICsgJ3B4JzsKCQkJdC5zdHlsZS5sZWZ0ID0gbGVmdCArICdweCc7CgkJ
CWVsZW1lbnQucGFyZW50Tm9kZS5hcHBlbmRDaGlsZCggdCApOwoJCQkvLyBvbmx5
IG5vdyB3aWR0aCBnZXRzIGNhbGN1bGF0ZWQsIHNoaWZ0IHJpZ2h0CgkJCWxlZnQg
LT0gdC5vZmZzZXRXaWR0aDsKCQkJdC5zdHlsZS5sZWZ0ID0gbGVmdCArICdweCc7
CgkJCXQuc3R5bGUudmlzaWJpbGl0eSA9ICd2aXNpYmxlJzsKCQl9ICovCgl9Cgp9
CgpmdW5jdGlvbiBvc19ob29rRXZlbnQoIGVsZW1lbnQsIGhvb2tOYW1lLCBob29r
RnVuY3QgKSB7CglpZiAoIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lciApIHsKCQll
bGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoIGhvb2tOYW1lLCBob29rRnVuY3QsIGZh
bHNlICk7Cgl9IGVsc2UgaWYgKCB3aW5kb3cuYXR0YWNoRXZlbnQgKSB7CgkJZWxl
bWVudC5hdHRhY2hFdmVudCggJ29uJyArIGhvb2tOYW1lLCBob29rRnVuY3QgKTsK
CX0KfQoKLyoqKioqKioqKioqKioqKioqKioqCiAqICBLZXlib2FyZCBldmVudHMK
ICoqKioqKioqKioqKioqKioqKioqLwoKLyoqIEV2ZW50IGhhbmRsZXIgdGhhdCB3
aWxsIGZldGNoIHJlc3VsdHMgb24ga2V5dXAgKi8KZnVuY3Rpb24gb3NfZXZlbnRL
ZXl1cCggZSApIHsKCXZhciB0YXJnID0gb3NfZ2V0VGFyZ2V0KCBlICk7Cgl2YXIg
ciA9IG9zX21hcFt0YXJnLmlkXTsKCWlmKCByID09IG51bGwgKSB7CgkJcmV0dXJu
OyAvLyBub3Qgb3VyIGV2ZW50Cgl9CgoJLy8gc29tZSBicm93c2VycyB3b24ndCBn
ZW5lcmF0ZSBrZXlwcmVzc2VkIGZvciBhcnJvdyBrZXlzLCBjYXRjaCBpdAoJaWYo
IG9zX2tleXByZXNzZWRfY291bnQgPT0gMCApIHsKCQlvc19wcm9jZXNzS2V5KCBy
LCBvc19jdXJfa2V5cHJlc3NlZCwgdGFyZyApOwoJfQoJdmFyIHF1ZXJ5ID0gdGFy
Zy52YWx1ZTsKCW9zX2ZldGNoUmVzdWx0cyggciwgcXVlcnksIG9zX3NlYXJjaF90
aW1lb3V0ICk7Cn0KCi8qKiBjYXRjaCBhcnJvd3MgdXAvZG93biBhbmQgZXNjYXBl
IHRvIGhpZGUgdGhlIHN1Z2dlc3Rpb25zICovCmZ1bmN0aW9uIG9zX3Byb2Nlc3NL
ZXkoIHIsIGtleXByZXNzZWQsIHRhcmcgKSB7CglpZiAoIGtleXByZXNzZWQgPT0g
NDAgJiYgIXIudmlzaWJsZSAmJiBvc190aW1lciA9PSBudWxsICkgewoJCS8vIElm
IHRoZSB1c2VyIGhpdHMgdGhlIGRvd24gYXJyb3csIGZldGNoIHJlc3VsdHMgaW1t
ZWRpYXRlbHkgaWYgbm9uZQoJCS8vIGFyZSBhbHJlYWR5IGRpc3BsYXllZC4KCQly
LnF1ZXJ5ID0gJyc7CgkJb3NfZmV0Y2hSZXN1bHRzKCByLCB0YXJnLnZhbHVlLCAw
ICk7Cgl9CgkvLyBPdGhlcndpc2UsIGlmIHdlJ3JlIG5vdCB1c2luZyBkYXRhbGlz
dCwgd2UgbmVlZCB0byBoYW5kbGUgc2Nyb2xsaW5nIGFuZAoJLy8gc28gb24uCglp
ZiAoIG9zX3VzZV9kYXRhbGlzdCApIHsKCQlyZXR1cm47Cgl9CglpZiAoIGtleXBy
ZXNzZWQgPT0gNDAgKSB7IC8vIEFycm93IERvd24KCQlpZiAoIHIudmlzaWJsZSAp
IHsKCQkJb3NfY2hhbmdlSGlnaGxpZ2h0KCByLCByLnNlbGVjdGVkLCByLnNlbGVj
dGVkICsgMSwgdHJ1ZSApOwoJCX0KCX0gZWxzZSBpZiAoIGtleXByZXNzZWQgPT0g
MzggKSB7IC8vIEFycm93IFVwCgkJaWYgKCByLnZpc2libGUgKSB7CgkJCW9zX2No
YW5nZUhpZ2hsaWdodCggciwgci5zZWxlY3RlZCwgci5zZWxlY3RlZCAtIDEsIHRy
dWUgKTsKCQl9Cgl9IGVsc2UgaWYoIGtleXByZXNzZWQgPT0gMjcgKSB7IC8vIEVz
Y2FwZQoJCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLnNlYXJjaGJveCApLnZh
bHVlID0gci5vcmlnaW5hbDsKCQlyLnF1ZXJ5ID0gci5vcmlnaW5hbDsKCQlvc19o
aWRlUmVzdWx0cyggciApOwoJfSBlbHNlIGlmKCByLnF1ZXJ5ICE9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCByLnNlYXJjaGJveCApLnZhbHVlICkgewoJCS8vIG9z
X2hpZGVSZXN1bHRzKCByICk7IC8vIGRvbid0IHNob3cgb2xkIHN1Z2dlc3Rpb25z
Cgl9Cn0KCi8qKiBXaGVuIGtleXMgaXMgaGVsZCBkb3duIHVzZSBhIHRpbWVyIHRv
IG91dHB1dCByZWd1bGFyIGV2ZW50cyAqLwpmdW5jdGlvbiBvc19ldmVudEtleXBy
ZXNzKCBlICkgewoJdmFyIHRhcmcgPSBvc19nZXRUYXJnZXQoIGUgKTsKCXZhciBy
ID0gb3NfbWFwW3RhcmcuaWRdOwoJaWYoIHIgPT0gbnVsbCApIHsKCQlyZXR1cm47
IC8vIG5vdCBvdXIgZXZlbnQKCX0KCgl2YXIga2V5cHJlc3NlZCA9IG9zX2N1cl9r
ZXlwcmVzc2VkOwoKCW9zX2tleXByZXNzZWRfY291bnQrKzsKCW9zX3Byb2Nlc3NL
ZXkoIHIsIGtleXByZXNzZWQsIHRhcmcgKTsKfQoKLyoqIENhdGNoIHRoZSBrZXkg
Y29kZSAoRmlyZWZveCBidWcpICovCmZ1bmN0aW9uIG9zX2V2ZW50S2V5ZG93bigg
ZSApIHsKCWlmICggIWUgKSB7CgkJZSA9IHdpbmRvdy5ldmVudDsKCX0KCXZhciB0
YXJnID0gb3NfZ2V0VGFyZ2V0KCBlICk7Cgl2YXIgciA9IG9zX21hcFt0YXJnLmlk
XTsKCWlmKCByID09IG51bGwgKSB7CgkJcmV0dXJuOyAvLyBub3Qgb3VyIGV2ZW50
Cgl9CgoJb3NfbW91c2VfbW92ZWQgPSBmYWxzZTsKCglvc19jdXJfa2V5cHJlc3Nl
ZCA9ICggZS5rZXlDb2RlID09IHVuZGVmaW5lZCApID8gZS53aGljaCA6IGUua2V5
Q29kZTsKCW9zX2tleXByZXNzZWRfY291bnQgPSAwOwp9CgoKLyoqIFdoZW4gdGhl
IGZvcm0gaXMgc3VibWl0dGVkIGhpZGUgZXZlcnl0aGluZywgY2FuY2VsIHVwZGF0
ZXMuLi4gKi8KZnVuY3Rpb24gb3NfZXZlbnRPbnN1Ym1pdCggZSApIHsKCXZhciB0
YXJnID0gb3NfZ2V0VGFyZ2V0KCBlICk7CgoJb3NfaXNfc3RvcHBlZCA9IHRydWU7
CgkvLyBraWxsIHRpbWVkIHJlcXVlc3RzCglpZiggb3NfdGltZXIgIT0gbnVsbCAm
JiBvc190aW1lci5pZCAhPSBudWxsICkgewoJCWNsZWFyVGltZW91dCggb3NfdGlt
ZXIuaWQgKTsKCQlvc190aW1lciA9IG51bGw7Cgl9CgkvLyBIaWRlIGFsbCBzdWdn
ZXN0aW9ucwoJZm9yKCBpID0gMDsgaSA8IG9zX2F1dG9sb2FkX2lucHV0cy5sZW5n
dGg7IGkrKyApIHsKCQl2YXIgciA9IG9zX21hcFtvc19hdXRvbG9hZF9pbnB1dHNb
aV1dOwoJCWlmKCByICE9IG51bGwgKSB7CgkJCXZhciBiID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIHIuc2VhcmNoZm9ybSApOwoJCQlpZiggYiAhPSBudWxsICYm
IGIgPT0gdGFyZyApIHsKCQkJCS8vIHNldCBxdWVyeSB2YWx1ZSBzbyB0aGUgaGFu
ZGxlciB3b24ndCB0cnkgdG8gZmV0Y2ggYWRkaXRpb25hbCByZXN1bHRzCgkJCQly
LnF1ZXJ5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIHIuc2VhcmNoYm94ICku
dmFsdWU7CgkJCX0KCQkJb3NfaGlkZVJlc3VsdHMoIHIgKTsKCQl9Cgl9CglyZXR1
cm4gdHJ1ZTsKfQoKCgovKiogSGlkZSByZXN1bHRzIGZyb20gdGhlIHVzZXIsIGVp
dGhlciBtYWtpbmcgdGhlIGRpdiB2aXNpYmlsaXR5PWhpZGRlbiBvcgogKiBkZXRh
Y2hpbmcgdGhlIGRhdGFsaXN0IGZyb20gdGhlIGlucHV0LiAqLwpmdW5jdGlvbiBv
c19oaWRlUmVzdWx0cyggciApIHsKCWlmICggb3NfdXNlX2RhdGFsaXN0ICkgewoJ
CWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLnNlYXJjaGJveCApLnNldEF0dHJp
YnV0ZSggJ2xpc3QnLCAnJyApOwoJfSBlbHNlIHsKCQl2YXIgYyA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCByLmNvbnRhaW5lciApOwoJCWlmICggYyAhPSBudWxs
ICkgewoJCQljLnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJzsKCQl9Cgl9Cgly
LnZpc2libGUgPSBmYWxzZTsKCXIuc2VsZWN0ZWQgPSAtMTsKfQoKZnVuY3Rpb24g
b3NfZGVjb2RlVmFsdWUoIHZhbHVlICkgewoJaWYgKCBkZWNvZGVVUklDb21wb25l
bnQgKSB7CgkJcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCggdmFsdWUgKTsKCX0K
CWlmKCB1bmVzY2FwZSApIHsKCQlyZXR1cm4gdW5lc2NhcGUoIHZhbHVlICk7Cgl9
CglyZXR1cm4gbnVsbDsKfQoKZnVuY3Rpb24gb3NfZW5jb2RlUXVlcnkoIHZhbHVl
ICkgewoJaWYgKCBlbmNvZGVVUklDb21wb25lbnQgKSB7CgkJcmV0dXJuIGVuY29k
ZVVSSUNvbXBvbmVudCggdmFsdWUgKTsKCX0KCWlmKCBlc2NhcGUgKSB7CgkJcmV0
dXJuIGVzY2FwZSggdmFsdWUgKTsKCX0KCXJldHVybiBudWxsOwp9CgovKiogSGFu
ZGxlcyBkYXRhIGZyb20gWE1MSHR0cFJlcXVlc3QsIGFuZCB1cGRhdGVzIHRoZSBz
dWdnZXN0IHJlc3VsdHMgKi8KZnVuY3Rpb24gb3NfdXBkYXRlUmVzdWx0cyggciwg
cXVlcnksIHRleHQsIGNhY2hlS2V5ICkgewoJb3NfY2FjaGVbY2FjaGVLZXldID0g
dGV4dDsKCXIucXVlcnkgPSBxdWVyeTsKCXIub3JpZ2luYWwgPSBxdWVyeTsKCWlm
KCB0ZXh0ID09ICcnICkgewoJCXIucmVzdWx0cyA9IG51bGw7CgkJci5yZXN1bHRD
b3VudCA9IDA7CgkJb3NfaGlkZVJlc3VsdHMoIHIgKTsKCX0gZWxzZSB7CgkJdHJ5
IHsKCQkJdmFyIHAgPSBldmFsKCAnKCcgKyB0ZXh0ICsgJyknICk7IC8vIHNpbXBs
ZSBqc29uIHBhcnNlLCBjb3VsZCBkbyBhIHNhZmVyIG9uZQoJCQlpZiggcC5sZW5n
dGggPCAyIHx8IHBbMV0ubGVuZ3RoID09IDAgKSB7CgkJCQlyLnJlc3VsdHMgPSBu
dWxsOwoJCQkJci5yZXN1bHRDb3VudCA9IDA7CgkJCQlvc19oaWRlUmVzdWx0cygg
ciApOwoJCQkJcmV0dXJuOwoJCQl9CgkJCWlmICggb3NfdXNlX2RhdGFsaXN0ICkg
ewoJCQkJb3Nfc2V0dXBEYXRhbGlzdCggciwgcFsxXSApOwoJCQl9IGVsc2UgewoJ
CQkJb3Nfc2V0dXBEaXYoIHIsIHBbMV0gKTsKCQkJfQoJCX0gY2F0Y2goIGUgKSB7
CgkJCS8vIGJhZCByZXNwb25zZSBmcm9tIHNlcnZlciBvciBzdWNoCgkJCW9zX2hp
ZGVSZXN1bHRzKCByICk7CgkJCW9zX2NhY2hlW2NhY2hlS2V5XSA9IG51bGw7CgkJ
fQoJfQp9CgovKioKICogQ3JlYXRlIGFuZCBwb3B1bGF0ZSBhIDxkYXRhbGlzdD4u
CiAqCiAqIEBwYXJhbSByICAgICAgIG9zX1Jlc3VsdCBvYmplY3QKICogQHBhcmFt
IHJlc3VsdHMgQXJyYXkgb2YgdGhlIG5ldyByZXN1bHRzIHRvIHJlcGxhY2UgZXhp
c3Rpbmcgb25lcwogKi8KZnVuY3Rpb24gb3Nfc2V0dXBEYXRhbGlzdCggciwgcmVz
dWx0cyApIHsKCXZhciBzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIHIuc2Vh
cmNoYm94ICk7Cgl2YXIgYyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLmNv
bnRhaW5lciApOwoJaWYgKCBjID09IG51bGwgKSB7CgkJYyA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoICdkYXRhbGlzdCcgKTsKCQljLnNldEF0dHJpYnV0ZSggJ2lk
Jywgci5jb250YWluZXIgKTsKCQlkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKCBj
ICk7Cgl9IGVsc2UgewoJCWMuaW5uZXJIVE1MID0gJyc7Cgl9CglzLnNldEF0dHJp
YnV0ZSggJ2xpc3QnLCByLmNvbnRhaW5lciApOwoKCXIucmVzdWx0cyA9IG5ldyBB
cnJheSgpOwoJci5yZXN1bHRDb3VudCA9IHJlc3VsdHMubGVuZ3RoOwoJci52aXNp
YmxlID0gdHJ1ZTsKCWZvciAoIGkgPSAwOyBpIDwgcmVzdWx0cy5sZW5ndGg7IGkr
KyApIHsKCQl2YXIgdGl0bGUgPSBvc19kZWNvZGVWYWx1ZSggcmVzdWx0c1tpXSAp
OwoJCXZhciBvcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAnb3B0aW9uJyAp
OwoJCW9wdC52YWx1ZSA9IHRpdGxlOwoJCXIucmVzdWx0c1tpXSA9IHRpdGxlOwoJ
CWMuYXBwZW5kQ2hpbGQoIG9wdCApOwoJfQp9CgovKiogRmV0Y2ggbmFtZXNwYWNl
cyBmcm9tIGNoZWNrYm94ZXMgb3IgaGlkZGVuIGZpZWxkcyBpbiB0aGUgc2VhcmNo
IGZvcm0sCiAgICBpZiBub25lIGRlZmluZWQgdXNlIHdnU2VhcmNoTmFtZXNwYWNl
cyBnbG9iYWwgKi8KZnVuY3Rpb24gb3NfZ2V0TmFtZXNwYWNlcyggciApIHsKCXZh
ciBuYW1lc3BhY2VzID0gJyc7Cgl2YXIgZWxlbWVudHMgPSBkb2N1bWVudC5mb3Jt
c1tyLnNlYXJjaGZvcm1dLmVsZW1lbnRzOwoJZm9yKCBpID0gMDsgaSA8IGVsZW1l
bnRzLmxlbmd0aDsgaSsrICkgewoJCXZhciBuYW1lID0gZWxlbWVudHNbaV0ubmFt
ZTsKCQlpZiggdHlwZW9mIG5hbWUgIT0gJ3VuZGVmaW5lZCcgJiYgbmFtZS5sZW5n
dGggPiAyICYmIG5hbWVbMF0gPT0gJ24nICYmCgkJCW5hbWVbMV0gPT0gJ3MnICYm
ICgKCQkJCSggZWxlbWVudHNbaV0udHlwZSA9PSAnY2hlY2tib3gnICYmIGVsZW1l
bnRzW2ldLmNoZWNrZWQgKSB8fAoJCQkJKCBlbGVtZW50c1tpXS50eXBlID09ICdo
aWRkZW4nICYmIGVsZW1lbnRzW2ldLnZhbHVlID09ICcxJyApCgkJCSkKCQkpIHsK
CQkJaWYoIG5hbWVzcGFjZXMgIT0gJycgKSB7CgkJCQluYW1lc3BhY2VzICs9ICd8
JzsKCQkJfQoJCQluYW1lc3BhY2VzICs9IG5hbWUuc3Vic3RyaW5nKCAyICk7CgkJ
fQoJfQoJaWYoIG5hbWVzcGFjZXMgPT0gJycgKSB7CgkJbmFtZXNwYWNlcyA9IHdn
U2VhcmNoTmFtZXNwYWNlcy5qb2luKCd8Jyk7Cgl9CglyZXR1cm4gbmFtZXNwYWNl
czsKfQoKLyoqIFVwZGF0ZSByZXN1bHRzIGlmIHVzZXIgaGFzbid0IGFscmVhZHkg
dHlwZWQgc29tZXRoaW5nIGVsc2UgKi8KZnVuY3Rpb24gb3NfdXBkYXRlSWZSZWxl
dmFudCggciwgcXVlcnksIHRleHQsIGNhY2hlS2V5ICkgewoJdmFyIHQgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCggci5zZWFyY2hib3ggKTsKCWlmKCB0ICE9IG51
bGwgJiYgdC52YWx1ZSA9PSBxdWVyeSApIHsgLy8gY2hlY2sgaWYgcmVzcG9uc2Ug
aXMgc3RpbGwgcmVsZXZhbnQKCQlvc191cGRhdGVSZXN1bHRzKCByLCBxdWVyeSwg
dGV4dCwgY2FjaGVLZXkgKTsKCX0KCXIucXVlcnkgPSBxdWVyeTsKfQoKLyoqIEZl
dGNoIHJlc3VsdHMgYWZ0ZXIgc29tZSB0aW1lb3V0ICovCmZ1bmN0aW9uIG9zX2Rl
bGF5ZWRGZXRjaCgpIHsKCWlmKCBvc190aW1lciA9PSBudWxsICkgewoJCXJldHVy
bjsKCX0KCXZhciByID0gb3NfdGltZXIucjsKCXZhciBxdWVyeSA9IG9zX3RpbWVy
LnF1ZXJ5OwoJb3NfdGltZXIgPSBudWxsOwoJdmFyIHBhdGggPSB3Z01XU3VnZ2Vz
dFRlbXBsYXRlLnJlcGxhY2UoICJ7bmFtZXNwYWNlc30iLCBvc19nZXROYW1lc3Bh
Y2VzKCByICkgKQoJCQkJCQkJCQkucmVwbGFjZSggIntkYm5hbWV9Iiwgd2dEQm5h
bWUgKQoJCQkJCQkJCQkucmVwbGFjZSggIntzZWFyY2hUZXJtc30iLCBvc19lbmNv
ZGVRdWVyeSggcXVlcnkgKSApOwoKCS8vIHRyeSB0byBnZXQgZnJvbSBjYWNoZSwg
aWYgbm90IGZldGNoIHVzaW5nIGFqYXgKCXZhciBjYWNoZWQgPSBvc19jYWNoZVtw
YXRoXTsKCWlmKCBjYWNoZWQgIT0gbnVsbCAmJiBjYWNoZWQgIT0gdW5kZWZpbmVk
ICkgewoJCW9zX3VwZGF0ZUlmUmVsZXZhbnQoIHIsIHF1ZXJ5LCBjYWNoZWQsIHBh
dGggKTsKCX0gZWxzZSB7CgkJdmFyIHhtbGh0dHAgPSBzYWpheF9pbml0X29iamVj
dCgpOwoJCWlmKCB4bWxodHRwICkgewoJCQl0cnkgewoJCQkJeG1saHR0cC5vcGVu
KCAnR0VUJywgcGF0aCwgdHJ1ZSApOwoJCQkJeG1saHR0cC5vbnJlYWR5c3RhdGVj
aGFuZ2UgPSBmdW5jdGlvbigpIHsKCQkJCQlpZiAoIHhtbGh0dHAucmVhZHlTdGF0
ZSA9PSA0ICYmIHR5cGVvZiBvc191cGRhdGVJZlJlbGV2YW50ID09ICdmdW5jdGlv
bicgKSB7CgkJCQkJCW9zX3VwZGF0ZUlmUmVsZXZhbnQoIHIsIHF1ZXJ5LCB4bWxo
dHRwLnJlc3BvbnNlVGV4dCwgcGF0aCApOwoJCQkJCX0KCQkJCX07CgkJCQl4bWxo
dHRwLnNlbmQoIG51bGwgKTsKCQkJfSBjYXRjaCAoIGUgKSB7CgkJCQlpZiAoIHdp
bmRvdy5sb2NhdGlvbi5ob3N0bmFtZSA9PSAnbG9jYWxob3N0JyApIHsKCQkJCQlh
bGVydCggIllvdXIgYnJvd3NlciBibG9ja3MgWE1MSHR0cFJlcXVlc3QgdG8gJ2xv
Y2FsaG9zdCcsIHRyeSB1c2luZyBhIHJlYWwgaG9zdG5hbWUgZm9yIGRldmVsb3Bt
ZW50L3Rlc3RpbmcuIiApOwoJCQkJfQoJCQkJdGhyb3cgZTsKCQkJfQoJCX0KCX0K
fQoKLyoqIEluaXQgdGltZWQgdXBkYXRlIHZpYSBvc19kZWxheWVkVXBkYXRlKCkg
Ki8KZnVuY3Rpb24gb3NfZmV0Y2hSZXN1bHRzKCByLCBxdWVyeSwgdGltZW91dCAp
IHsKCWlmKCBxdWVyeSA9PSAnJyApIHsKCQlyLnF1ZXJ5ID0gJyc7CgkJb3NfaGlk
ZVJlc3VsdHMoIHIgKTsKCQlyZXR1cm47Cgl9IGVsc2UgaWYoIHF1ZXJ5ID09IHIu
cXVlcnkgKSB7CgkJcmV0dXJuOyAvLyBubyBjaGFuZ2UKCX0KCglvc19pc19zdG9w
cGVkID0gZmFsc2U7IC8vIG1ha2Ugc3VyZSB3ZSdyZSBydW5uaW5nCgoJLy8gY2Fu
Y2VsIGFueSBwZW5kaW5nIGZldGNoZXMKCWlmKCBvc190aW1lciAhPSBudWxsICYm
IG9zX3RpbWVyLmlkICE9IG51bGwgKSB7CgkJY2xlYXJUaW1lb3V0KCBvc190aW1l
ci5pZCApOwoJfQoJLy8gc2NoZWR1bGUgZGVsYXllZCBmZXRjaGluZyBvZiByZXN1
bHRzCglpZiggdGltZW91dCAhPSAwICkgewoJCW9zX3RpbWVyID0gbmV3IG9zX1Rp
bWVyKCBzZXRUaW1lb3V0KCAib3NfZGVsYXllZEZldGNoKCkiLCB0aW1lb3V0ICks
IHIsIHF1ZXJ5ICk7Cgl9IGVsc2UgewoJCW9zX3RpbWVyID0gbmV3IG9zX1RpbWVy
KCBudWxsLCByLCBxdWVyeSApOwoJCW9zX2RlbGF5ZWRGZXRjaCgpOyAvLyBkbyBp
dCBub3chCgl9Cn0KCi8qKiBGaW5kIGV2ZW50IHRhcmdldCAqLwpmdW5jdGlvbiBv
c19nZXRUYXJnZXQoIGUgKSB7CglpZiAoICFlICkgewoJCWUgPSB3aW5kb3cuZXZl
bnQ7Cgl9CglpZiAoIGUudGFyZ2V0ICkgewoJCXJldHVybiBlLnRhcmdldDsKCX0g
ZWxzZSBpZiAoIGUuc3JjRWxlbWVudCApIHsKCQlyZXR1cm4gZS5zcmNFbGVtZW50
OwoJfSBlbHNlIHsKCQlyZXR1cm4gbnVsbDsKCX0KfQoKLyoqIENoZWNrIGlmIHgg
aXMgYSB2YWxpZCBpbnRlZ2VyICovCmZ1bmN0aW9uIG9zX2lzTnVtYmVyKCB4ICkg
ewoJaWYoIHggPT0gJycgfHwgaXNOYU4oIHggKSApIHsKCQlyZXR1cm4gZmFsc2U7
Cgl9Cglmb3IoIHZhciBpID0gMDsgaSA8IHgubGVuZ3RoOyBpKysgKSB7CgkJdmFy
IGMgPSB4LmNoYXJBdCggaSApOwoJCWlmKCAhKCBjID49ICcwJyAmJiBjIDw9ICc5
JyApICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJfQoJcmV0dXJuIHRydWU7Cn0K
Ci8qKiBDYWxsIHRoaXMgdG8gZW5hYmxlIHN1Z2dlc3Rpb25zIG9uIGlucHV0IChp
ZD1pbnB1dElkKSwgb24gYSBmb3JtIChuYW1lPWZvcm1OYW1lKSAqLwpmdW5jdGlv
biBvc19lbmFibGVTdWdnZXN0aW9uc09uKCBpbnB1dElkLCBmb3JtTmFtZSApIHsK
CW9zX2luaXRIYW5kbGVycyggaW5wdXRJZCwgZm9ybU5hbWUsIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCBpbnB1dElkICkgKTsKfQoKLyoqIENhbGwgdGhpcyB0byBk
aXNhYmxlIHN1Z2dlc3Rpb3Mgb24gaW5wdXQgYm94IChpZD1pbnB1dElkKSAqLwpm
dW5jdGlvbiBvc19kaXNhYmxlU3VnZ2VzdGlvbnNPbiggaW5wdXRJZCApIHsKCXIg
PSBvc19tYXBbaW5wdXRJZF07CglpZiggciAhPSBudWxsICkgewoJCS8vIGNhbmNl
bC9oaWRlIHJlc3VsdHMKCQlvc190aW1lciA9IG51bGw7CgkJb3NfaGlkZVJlc3Vs
dHMoIHIgKTsKCQkvLyB0dXJuIGF1dG9jb21wbGV0ZSBvbiAhCgkJZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoIGlucHV0SWQgKS5zZXRBdHRyaWJ1dGUoICdhdXRvY29t
cGxldGUnLCAnb24nICk7CgkJLy8gcmVtb3ZlIGRlc2NyaXB0b3IKCQlvc19tYXBb
aW5wdXRJZF0gPSBudWxsOwoJfQoKCS8vIFJlbW92ZSB0aGUgZWxlbWVudCBmcm9t
IHRoZSBvc19hdXRvbG9hZF8qIGFycmF5cwoJdmFyIGluZGV4ID0gb3NfYXV0b2xv
YWRfaW5wdXRzLmluZGV4T2YoIGlucHV0SWQgKTsKCWlmICggaW5kZXggPj0gMCAp
IHsKCQlvc19hdXRvbG9hZF9pbnB1dHNbaW5kZXhdID0gb3NfYXV0b2xvYWRfZm9y
bXNbaW5kZXhdID0gJyc7Cgl9Cn0KCi8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKICogRGl2LW9ubHkgZnVuY3Rpb25zIChp
cnJlbGV2YW50IGZvciBkYXRhbGlzdCkKICoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KCi8qKiBFdmVudDogbG9zcyBvZiBm
b2N1cyBvZiBpbnB1dCBib3ggKi8KZnVuY3Rpb24gb3NfZXZlbnRCbHVyKCBlICkg
ewoJdmFyIHRhcmcgPSBvc19nZXRUYXJnZXQoIGUgKTsKCXZhciByID0gb3NfbWFw
W3RhcmcuaWRdOwoJaWYoIHIgPT0gbnVsbCApIHsKCQlyZXR1cm47IC8vIG5vdCBv
dXIgZXZlbnQKCX0KCWlmKCAhb3NfbW91c2VfcHJlc3NlZCApIHsKCQlvc19oaWRl
UmVzdWx0cyggciApOwoJCS8vIGZvcmNlIGNhbnZhcyB0byBzdGF5IGhpZGRlbgoJ
CXIuc3RheUhpZGRlbiA9IHRydWU7CgkJLy8gY2FuY2VsIGFueSBwZW5kaW5nIGZl
dGNoZXMKCQlpZiggb3NfdGltZXIgIT0gbnVsbCAmJiBvc190aW1lci5pZCAhPSBu
dWxsICkgewoJCQljbGVhclRpbWVvdXQoIG9zX3RpbWVyLmlkICk7CgkJfQoJCW9z
X3RpbWVyID0gbnVsbDsKCX0KfQoKLyoqIEV2ZW50OiBmb2N1cyAoY2F0Y2ggb25s
eSB3aGVuIHN0b3BwZWQpICovCmZ1bmN0aW9uIG9zX2V2ZW50Rm9jdXMoIGUgKSB7
Cgl2YXIgdGFyZyA9IG9zX2dldFRhcmdldCggZSApOwoJdmFyIHIgPSBvc19tYXBb
dGFyZy5pZF07CglpZiggciA9PSBudWxsICkgewoJCXJldHVybjsgLy8gbm90IG91
ciBldmVudAoJfQoJci5zdGF5SGlkZGVuID0gZmFsc2U7Cn0KCi8qKgogKiBDcmVh
dGUgYW5kIHBvcHVsYXRlIGEgPGRpdj4sIGZvciBub24tPGRhdGFsaXN0Pi1zdXBw
b3J0aW5nIGJyb3dzZXJzLgogKgogKiBAcGFyYW0gciAgICAgICBvc19SZXN1bHQg
b2JqZWN0CiAqIEBwYXJhbSByZXN1bHRzIEFycmF5IG9mIHRoZSBuZXcgcmVzdWx0
cyB0byByZXBsYWNlIGV4aXN0aW5nIG9uZXMKICovCmZ1bmN0aW9uIG9zX3NldHVw
RGl2KCByLCByZXN1bHRzICkgewoJdmFyIGMgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCggci5jb250YWluZXIgKTsKCWlmICggYyA9PSBudWxsICkgewoJCWMgPSBv
c19jcmVhdGVDb250YWluZXIoIHIgKTsKCX0KCWMuaW5uZXJIVE1MID0gb3NfY3Jl
YXRlUmVzdWx0VGFibGUoIHIsIHJlc3VsdHMgKTsKCS8vIGluaXQgY29udGFpbmVy
IHRhYmxlIHNpemVzCgl2YXIgdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCBy
LnJlc3VsdFRhYmxlICk7CglyLmNvbnRhaW5lclRvdGFsID0gdC5vZmZzZXRIZWln
aHQ7CglyLmNvbnRhaW5lclJvdyA9IHQub2Zmc2V0SGVpZ2h0IC8gci5yZXN1bHRD
b3VudDsKCW9zX2ZpdENvbnRhaW5lciggciApOwoJb3NfdHJpbVJlc3VsdFRleHQo
IHIgKTsKCW9zX3Nob3dSZXN1bHRzKCByICk7Cn0KCi8qKiBDcmVhdGUgdGhlIHJl
c3VsdCB0YWJsZSB0byBiZSBwbGFjZWQgaW4gdGhlIGNvbnRhaW5lciBkaXYgKi8K
ZnVuY3Rpb24gb3NfY3JlYXRlUmVzdWx0VGFibGUoIHIsIHJlc3VsdHMgKSB7Cgl2
YXIgYyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLmNvbnRhaW5lciApOwoJ
dmFyIHdpZHRoID0gYy5vZmZzZXRXaWR0aCAtIG9zX29wZXJhV2lkdGhGaXgoIGMu
b2Zmc2V0V2lkdGggKTsKCXZhciBodG1sID0gJzx0YWJsZSBjbGFzcz0ib3Mtc3Vn
Z2VzdC1yZXN1bHRzIiBpZD0iJyArIHIucmVzdWx0VGFibGUgKyAnIiBzdHlsZT0i
d2lkdGg6ICcgKyB3aWR0aCArICdweDsiPic7CglyLnJlc3VsdHMgPSBuZXcgQXJy
YXkoKTsKCXIucmVzdWx0Q291bnQgPSByZXN1bHRzLmxlbmd0aDsKCWZvciggaSA9
IDA7IGkgPCByZXN1bHRzLmxlbmd0aDsgaSsrICkgewoJCXZhciB0aXRsZSA9IG9z
X2RlY29kZVZhbHVlKCByZXN1bHRzW2ldICk7CgkJci5yZXN1bHRzW2ldID0gdGl0
bGU7CgkJaHRtbCArPSAnPHRyPjx0ZCBjbGFzcz0ib3Mtc3VnZ2VzdC1yZXN1bHQi
IGlkPSInICsgci5yZXN1bHRUYWJsZSArIGkgKyAnIj48c3BhbiBpZD0iJyArIHIu
cmVzdWx0VGV4dCArIGkgKyAnIj4nICsgdGl0bGUgKyAnPC9zcGFuPjwvdGQ+PC90
cj4nOwoJfQoJaHRtbCArPSAnPC90YWJsZT4nOwoJcmV0dXJuIGh0bWw7Cn0KCi8q
KiBTaG93IHJlc3VsdHMgZGl2ICovCmZ1bmN0aW9uIG9zX3Nob3dSZXN1bHRzKCBy
ICkgewoJaWYoIG9zX2lzX3N0b3BwZWQgKSB7CgkJcmV0dXJuOwoJfQoJaWYoIHIu
c3RheUhpZGRlbiApIHsKCQlyZXR1cm47Cgl9Cglvc19maXRDb250YWluZXIoIHIg
KTsKCXZhciBjID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIHIuY29udGFpbmVy
ICk7CglyLnNlbGVjdGVkID0gLTE7CglpZiggYyAhPSBudWxsICkgewoJCWMuc2Ny
b2xsVG9wID0gMDsKCQljLnN0eWxlLnZpc2liaWxpdHkgPSAndmlzaWJsZSc7CgkJ
ci52aXNpYmxlID0gdHJ1ZTsKCX0KfQoKZnVuY3Rpb24gb3Nfb3BlcmFXaWR0aEZp
eCggeCApIHsKCS8vIEZvciBicm93c2VycyB0aGF0IGRvbid0IHVuZGVyc3RhbmQg
b3ZlcmZsb3cteCwgZXN0aW1hdGUgc2Nyb2xsYmFyIHdpZHRoCglpZiggdHlwZW9m
IGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3dYICE9ICdzdHJpbmcnICkgewoJ
CXJldHVybiAzMDsKCX0KCXJldHVybiAwOwp9CgovKiogQnJvd2VyLWRlcGVuZGVu
dCBmdW5jdGlvbnMgdG8gZmluZCB3aW5kb3cgaW5uZXIgc2l6ZSwgYW5kIHNjcm9s
bCBzdGF0dXMgKi8KZnVuY3Rpb24gZl9jbGllbnRXaWR0aCgpIHsKCXJldHVybiBm
X2ZpbHRlclJlc3VsdHMoCgkJd2luZG93LmlubmVyV2lkdGggPyB3aW5kb3cuaW5u
ZXJXaWR0aCA6IDAsCgkJZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50ID8gZG9jdW1l
bnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoIDogMCwKCQlkb2N1bWVudC5i
b2R5ID8gZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aCA6IDAKCSk7Cn0KCmZ1bmN0
aW9uIGZfY2xpZW50SGVpZ2h0KCkgewoJcmV0dXJuIGZfZmlsdGVyUmVzdWx0cygK
CQl3aW5kb3cuaW5uZXJIZWlnaHQgPyB3aW5kb3cuaW5uZXJIZWlnaHQgOiAwLAoJ
CWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCA/IGRvY3VtZW50LmRvY3VtZW50RWxl
bWVudC5jbGllbnRIZWlnaHQgOiAwLAoJCWRvY3VtZW50LmJvZHkgPyBkb2N1bWVu
dC5ib2R5LmNsaWVudEhlaWdodCA6IDAKCSk7Cn0KCmZ1bmN0aW9uIGZfc2Nyb2xs
TGVmdCgpIHsKCXJldHVybiBmX2ZpbHRlclJlc3VsdHMoCgkJd2luZG93LnBhZ2VY
T2Zmc2V0ID8gd2luZG93LnBhZ2VYT2Zmc2V0IDogMCwKCQlkb2N1bWVudC5kb2N1
bWVudEVsZW1lbnQgPyBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVm
dCA6IDAsCgkJZG9jdW1lbnQuYm9keSA/IGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVm
dCA6IDAKCSk7Cn0KCmZ1bmN0aW9uIGZfc2Nyb2xsVG9wKCkgewoJcmV0dXJuIGZf
ZmlsdGVyUmVzdWx0cygKCQl3aW5kb3cucGFnZVlPZmZzZXQgPyB3aW5kb3cucGFn
ZVlPZmZzZXQgOiAwLAoJCWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCA/IGRvY3Vt
ZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgOiAwLAoJCWRvY3VtZW50LmJv
ZHkgPyBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCA6IDAKCSk7Cn0KCmZ1bmN0aW9u
IGZfZmlsdGVyUmVzdWx0cyggbl93aW4sIG5fZG9jZWwsIG5fYm9keSApIHsKCXZh
ciBuX3Jlc3VsdCA9IG5fd2luID8gbl93aW4gOiAwOwoJaWYgKCBuX2RvY2VsICYm
ICggIW5fcmVzdWx0IHx8ICggbl9yZXN1bHQgPiBuX2RvY2VsICkgKSApIHsKCQlu
X3Jlc3VsdCA9IG5fZG9jZWw7Cgl9CglyZXR1cm4gbl9ib2R5ICYmICggIW5fcmVz
dWx0IHx8ICggbl9yZXN1bHQgPiBuX2JvZHkgKSApID8gbl9ib2R5IDogbl9yZXN1
bHQ7Cn0KCi8qKiBHZXQgdGhlIGhlaWdodCBhdmFpbGFibGUgZm9yIHRoZSByZXN1
bHRzIGNvbnRhaW5lciAqLwpmdW5jdGlvbiBvc19hdmFpbGFibGVIZWlnaHQoIHIg
KSB7Cgl2YXIgYWJzVG9wID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIHIuY29u
dGFpbmVyICkuc3R5bGUudG9wOwoJdmFyIHB4ID0gYWJzVG9wLmxhc3RJbmRleE9m
KCAncHgnICk7CglpZiggcHggPiAwICkgewoJCWFic1RvcCA9IGFic1RvcC5zdWJz
dHJpbmcoIDAsIHB4ICk7Cgl9CglyZXR1cm4gZl9jbGllbnRIZWlnaHQoKSAtICgg
YWJzVG9wIC0gZl9zY3JvbGxUb3AoKSApOwp9CgovKiogR2V0IGVsZW1lbnQgYWJz
b2x1dGUgcG9zaXRpb24ge2xlZnQsdG9wfSAqLwpmdW5jdGlvbiBvc19nZXRFbGVt
ZW50UG9zaXRpb24oIGVsZW1JRCApIHsKCXZhciBvZmZzZXRUcmFpbCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCBlbGVtSUQgKTsKCXZhciBvZmZzZXRMZWZ0ID0g
MDsKCXZhciBvZmZzZXRUb3AgPSAwOwoJd2hpbGUgKCBvZmZzZXRUcmFpbCApIHsK
CQlvZmZzZXRMZWZ0ICs9IG9mZnNldFRyYWlsLm9mZnNldExlZnQ7CgkJb2Zmc2V0
VG9wICs9IG9mZnNldFRyYWlsLm9mZnNldFRvcDsKCQlvZmZzZXRUcmFpbCA9IG9m
ZnNldFRyYWlsLm9mZnNldFBhcmVudDsKCX0KCWlmICggbmF2aWdhdG9yLnVzZXJB
Z2VudC5pbmRleE9mKCdNYWMnKSAhPSAtMSAmJiB0eXBlb2YgZG9jdW1lbnQuYm9k
eS5sZWZ0TWFyZ2luICE9ICd1bmRlZmluZWQnICkgewoJCW9mZnNldExlZnQgKz0g
ZG9jdW1lbnQuYm9keS5sZWZ0TWFyZ2luOwoJCW9mZnNldFRvcCArPSBkb2N1bWVu
dC5ib2R5LnRvcE1hcmdpbjsKCX0KCXJldHVybiB7IGxlZnQ6b2Zmc2V0TGVmdCwg
dG9wOm9mZnNldFRvcCB9Owp9CgovKiogQ3JlYXRlIHRoZSBjb250YWluZXIgZGl2
IHRoYXQgd2lsbCBob2xkIHRoZSBzdWdnZXN0ZWQgdGl0bGVzICovCmZ1bmN0aW9u
IG9zX2NyZWF0ZUNvbnRhaW5lciggciApIHsKCXZhciBjID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCggJ2RpdicgKTsKCXZhciBzID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoIHIuc2VhcmNoYm94ICk7Cgl2YXIgcG9zID0gb3NfZ2V0RWxlbWVudFBv
c2l0aW9uKCByLnNlYXJjaGJveCApOwoJdmFyIGxlZnQgPSBwb3MubGVmdDsKCXZh
ciB0b3AgPSBwb3MudG9wICsgcy5vZmZzZXRIZWlnaHQ7CgljLmNsYXNzTmFtZSA9
ICdvcy1zdWdnZXN0JzsKCWMuc2V0QXR0cmlidXRlKCAnaWQnLCByLmNvbnRhaW5l
ciApOwoJZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCggYyApOwoKCS8vIGR5bmFt
aWNhbGx5IGdlbmVyYXRlZCBzdHlsZSBwYXJhbXMKCS8vIElFIHdvcmthcm91bmQs
IGNhbm5vdCBleHBsaWNpdGVseSBzZXQgInN0eWxlIiBhdHRyaWJ1dGUKCWMgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCggci5jb250YWluZXIgKTsKCWMuc3R5bGUu
dG9wID0gdG9wICsgJ3B4JzsKCWMuc3R5bGUubGVmdCA9IGxlZnQgKyAncHgnOwoJ
Yy5zdHlsZS53aWR0aCA9IHMub2Zmc2V0V2lkdGggKyAncHgnOwoKCS8vIG1vdXNl
IGV2ZW50IGhhbmRsZXJzCgljLm9ubW91c2VvdmVyID0gZnVuY3Rpb24oIGV2ZW50
ICkgeyBvc19ldmVudE1vdXNlb3Zlciggci5zZWFyY2hib3gsIGV2ZW50ICk7IH07
CgljLm9ubW91c2Vtb3ZlID0gZnVuY3Rpb24oIGV2ZW50ICkgeyBvc19ldmVudE1v
dXNlbW92ZSggci5zZWFyY2hib3gsIGV2ZW50ICk7IH07CgljLm9ubW91c2Vkb3du
ID0gZnVuY3Rpb24oIGV2ZW50ICkgeyByZXR1cm4gb3NfZXZlbnRNb3VzZWRvd24o
IHIuc2VhcmNoYm94LCBldmVudCApOyB9OwoJYy5vbm1vdXNldXAgPSBmdW5jdGlv
biggZXZlbnQgKSB7IG9zX2V2ZW50TW91c2V1cCggci5zZWFyY2hib3gsIGV2ZW50
ICk7IH07CglyZXR1cm4gYzsKfQoKLyoqIGNoYW5nZSBjb250YWluZXIgaGVpZ2h0
IHRvIGZpdCB0byBzY3JlZW4gKi8KZnVuY3Rpb24gb3NfZml0Q29udGFpbmVyKCBy
ICkgewoJdmFyIGMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCggci5jb250YWlu
ZXIgKTsKCXZhciBoID0gb3NfYXZhaWxhYmxlSGVpZ2h0KCByICkgLSAyMDsKCXZh
ciBpbmMgPSByLmNvbnRhaW5lclJvdzsKCWggPSBwYXJzZUludCggaCAvIGluYyAp
ICogaW5jOwoJaWYoIGggPCAoIDIgKiBpbmMgKSAmJiByLnJlc3VsdENvdW50ID4g
MSApIHsgLy8gbWluOiB0d28gcmVzdWx0cwoJCWggPSAyICogaW5jOwoJfQoJaWYo
ICggaCAvIGluYyApID4gb3NfbWF4X2xpbmVzX3Blcl9zdWdnZXN0ICkgewoJCWgg
PSBpbmMgKiBvc19tYXhfbGluZXNfcGVyX3N1Z2dlc3Q7Cgl9CglpZiggaCA8IHIu
Y29udGFpbmVyVG90YWwgKSB7CgkJYy5zdHlsZS5oZWlnaHQgPSBoICsgJ3B4JzsK
CQlyLmNvbnRhaW5lckNvdW50ID0gcGFyc2VJbnQoIE1hdGgucm91bmQoIGggLyBp
bmMgKSApOwoJfSBlbHNlIHsKCQljLnN0eWxlLmhlaWdodCA9IHIuY29udGFpbmVy
VG90YWwgKyAncHgnOwoJCXIuY29udGFpbmVyQ291bnQgPSByLnJlc3VsdENvdW50
OwoJfQp9CgovKiogSWYgc29tZSBlbnRyaWVzIGFyZSBsb25nZXIgdGhhbiB0aGUg
Ym94LCByZXBsYWNlIHRleHQgd2l0aCAiLi4uIiAqLwpmdW5jdGlvbiBvc190cmlt
UmVzdWx0VGV4dCggciApIHsKCS8vIGZpbmQgbWF4IHdpZHRoLCBmaXJzdCBzZWUg
aWYgd2UgY291bGQgZXhwYW5kIHRoZSBjb250YWluZXIgdG8gZml0IGl0Cgl2YXIg
bWF4VyA9IDA7Cglmb3IoIHZhciBpID0gMDsgaSA8IHIucmVzdWx0Q291bnQ7IGkr
KyApIHsKCQl2YXIgZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLnJlc3Vs
dFRleHQgKyBpICk7CgkJaWYoIGUub2Zmc2V0V2lkdGggPiBtYXhXICkgewoJCQlt
YXhXID0gZS5vZmZzZXRXaWR0aDsKCQl9Cgl9Cgl2YXIgdyA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCByLmNvbnRhaW5lciApLm9mZnNldFdpZHRoOwoJdmFyIGZp
eCA9IDA7CglpZiggci5jb250YWluZXJDb3VudCA8IHIucmVzdWx0Q291bnQgKSB7
CgkJZml4ID0gMjA7IC8vIGdpdmUgMjBweCBmb3Igc2Nyb2xsYmFyCgl9IGVsc2Ug
ewoJCWZpeCA9IG9zX29wZXJhV2lkdGhGaXgoIHcgKTsKCX0KCWlmKCBmaXggPCA0
ICkgewoJCWZpeCA9IDQ7IC8vIGJhc2ljIHBhZGRpbmcKCX0KCW1heFcgKz0gZml4
OwoKCS8vIHJlc2l6ZSBjb250YWluZXIgdG8gZml0IG1vcmUgZGF0YSBpZiBwZXJt
aXR0ZWQKCXZhciBub3JtVyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLnNl
YXJjaGJveCApLm9mZnNldFdpZHRoOwoJdmFyIHByb3AgPSBtYXhXIC8gbm9ybVc7
CglpZiggcHJvcCA+IG9zX2NvbnRhaW5lcl9tYXhfd2lkdGggKSB7CgkJcHJvcCA9
IG9zX2NvbnRhaW5lcl9tYXhfd2lkdGg7Cgl9IGVsc2UgaWYoIHByb3AgPCAxICkg
ewoJCXByb3AgPSAxOwoJfQoJdmFyIG5ld1cgPSBNYXRoLnJvdW5kKCBub3JtVyAq
IHByb3AgKTsKCWlmKCB3ICE9IG5ld1cgKSB7CgkJdyA9IG5ld1c7CgkJaWYoIG9z
X2FuaW1hdGlvbl90aW1lciAhPSBudWxsICkgewoJCQljbGVhckludGVydmFsKCBv
c19hbmltYXRpb25fdGltZXIuaWQgKTsKCQl9CgkJb3NfYW5pbWF0aW9uX3RpbWVy
ID0gbmV3IG9zX0FuaW1hdGlvblRpbWVyKCByLCB3ICk7CgkJb3NfYW5pbWF0aW9u
X3RpbWVyLmlkID0gc2V0SW50ZXJ2YWwoICJvc19hbmltYXRlQ2hhbmdlV2lkdGgo
KSIsIG9zX2FuaW1hdGlvbl9kZWxheSApOwoJCXcgLT0gZml4OyAvLyB0aGlzIG11
Y2ggaXMgcmVzZXJ2ZWQKCX0KCgkvLyB0cmltIHJlc3VsdHMKCWlmKCB3IDwgMTAg
KSB7CgkJcmV0dXJuOwoJfQoJZm9yKCB2YXIgaSA9IDA7IGkgPCByLnJlc3VsdENv
dW50OyBpKysgKSB7CgkJdmFyIGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgg
ci5yZXN1bHRUZXh0ICsgaSApOwoJCXZhciByZXBsYWNlID0gMTsKCQl2YXIgbGFz
dFcgPSBlLm9mZnNldFdpZHRoICsgMTsKCQl2YXIgaXRlcmF0aW9uID0gMDsKCQl2
YXIgY2hhbmdlZFRleHQgPSBmYWxzZTsKCQl3aGlsZSggZS5vZmZzZXRXaWR0aCA+
IHcgJiYgKCBlLm9mZnNldFdpZHRoIDwgbGFzdFcgfHwgaXRlcmF0aW9uIDwgMiAp
ICkgewoJCQljaGFuZ2VkVGV4dCA9IHRydWU7CgkJCWxhc3RXID0gZS5vZmZzZXRX
aWR0aDsKCQkJdmFyIGwgPSBlLmlubmVySFRNTDsKCQkJZS5pbm5lckhUTUwgPSBs
LnN1YnN0cmluZyggMCwgbC5sZW5ndGggLSByZXBsYWNlICkgKyAnLi4uJzsKCQkJ
aXRlcmF0aW9uKys7CgkJCXJlcGxhY2UgPSA0OyAvLyBob3cgbWFueSBjaGFycyB0
byByZXBsYWNlCgkJfQoJCWlmKCBjaGFuZ2VkVGV4dCApIHsKCQkJLy8gc2hvdyBo
aW50IGZvciB0cmltbWVkIHRpdGxlcwoJCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCggci5yZXN1bHRUYWJsZSArIGkgKS5zZXRBdHRyaWJ1dGUoICd0aXRsZScsIHIu
cmVzdWx0c1tpXSApOwoJCX0KCX0KfQoKLyoqIEludm9rZWQgb24gdGltZXIgdG8g
YW5pbWF0ZSBjaGFuZ2UgaW4gY29udGFpbmVyIHdpZHRoICovCmZ1bmN0aW9uIG9z
X2FuaW1hdGVDaGFuZ2VXaWR0aCgpIHsKCXZhciByID0gb3NfYW5pbWF0aW9uX3Rp
bWVyLnI7Cgl2YXIgYyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLmNvbnRh
aW5lciApOwoJdmFyIHcgPSBjLm9mZnNldFdpZHRoOwoJdmFyIG5vcm1XID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoIHIuc2VhcmNoYm94ICkub2Zmc2V0V2lkdGg7
Cgl2YXIgbm9ybUwgPSBvc19nZXRFbGVtZW50UG9zaXRpb24oIHIuc2VhcmNoYm94
ICkubGVmdDsKCXZhciBpbmMgPSBvc19hbmltYXRpb25fdGltZXIuaW5jOwoJdmFy
IHRhcmdldCA9IG9zX2FuaW1hdGlvbl90aW1lci50YXJnZXQ7Cgl2YXIgbncgPSB3
ICsgaW5jOwoJaWYoICggaW5jID4gMCAmJiBudyA+PSB0YXJnZXQgKSB8fCAoIGlu
YyA8PSAwICYmIG53IDw9IHRhcmdldCApICkgewoJCS8vIGZpbmlzaGVkICEKCQlj
LnN0eWxlLndpZHRoID0gdGFyZ2V0ICsgJ3B4JzsKCQljbGVhckludGVydmFsKCBv
c19hbmltYXRpb25fdGltZXIuaWQgKTsKCQlvc19hbmltYXRpb25fdGltZXIgPSBu
dWxsOwoJfSBlbHNlIHsKCQkvLyBpbi1wcm9ncmVzcwoJCWMuc3R5bGUud2lkdGgg
PSBudyArICdweCc7CgkJaWYoIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kaXIg
PT0gJ3J0bCcgKSB7CgkJCWMuc3R5bGUubGVmdCA9ICggbm9ybUwgKyBub3JtVyAr
ICggdGFyZ2V0IC0gbncgKSAtIG9zX2FuaW1hdGlvbl90aW1lci50YXJnZXQgLSAx
ICkgKyAncHgnOwoJCX0KCX0KfQoKLyoqIENoYW5nZSB0aGUgaGlnaGxpZ2h0ZWQg
cm93IChpLmUuIHN1Z2dlc3Rpb24pLCBmcm9tIHBvc2l0aW9uIGN1ciB0byBuZXh0
ICovCmZ1bmN0aW9uIG9zX2NoYW5nZUhpZ2hsaWdodCggciwgY3VyLCBuZXh0LCB1
cGRhdGVTZWFyY2hCb3ggKSB7CglpZiAoIG5leHQgPj0gci5yZXN1bHRDb3VudCAp
IHsKCQluZXh0ID0gci5yZXN1bHRDb3VudCAtIDE7Cgl9CglpZiAoIG5leHQgPCAt
MSApIHsKCQluZXh0ID0gLTE7Cgl9CglyLnNlbGVjdGVkID0gbmV4dDsKCWlmICgg
Y3VyID09IG5leHQgKSB7CgkJcmV0dXJuOyAvLyBub3RoaW5nIHRvIGRvLgoJfQoK
CWlmKCBjdXIgPj0gMCApIHsKCQl2YXIgY3VyUm93ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoIHIucmVzdWx0VGFibGUgKyBjdXIgKTsKCQlpZiggY3VyUm93ICE9
IG51bGwgKSB7CgkJCWN1clJvdy5jbGFzc05hbWUgPSAnb3Mtc3VnZ2VzdC1yZXN1
bHQnOwoJCX0KCX0KCXZhciBuZXdUZXh0OwoJaWYoIG5leHQgPj0gMCApIHsKCQl2
YXIgbmV4dFJvdyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLnJlc3VsdFRh
YmxlICsgbmV4dCApOwoJCWlmKCBuZXh0Um93ICE9IG51bGwgKSB7CgkJCW5leHRS
b3cuY2xhc3NOYW1lID0gb3NfSGlnaGxpZ2h0Q2xhc3MoKTsKCQl9CgkJbmV3VGV4
dCA9IHIucmVzdWx0c1tuZXh0XTsKCX0gZWxzZSB7CgkJbmV3VGV4dCA9IHIub3Jp
Z2luYWw7Cgl9CgoJLy8gYWRqdXN0IHRoZSBzY3JvbGxiYXIgaWYgYW55CglpZigg
ci5jb250YWluZXJDb3VudCA8IHIucmVzdWx0Q291bnQgKSB7CgkJdmFyIGMgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCggci5jb250YWluZXIgKTsKCQl2YXIgdlN0
YXJ0ID0gYy5zY3JvbGxUb3AgLyByLmNvbnRhaW5lclJvdzsKCQl2YXIgdkVuZCA9
IHZTdGFydCArIHIuY29udGFpbmVyQ291bnQ7CgkJaWYoIG5leHQgPCB2U3RhcnQg
KSB7CgkJCWMuc2Nyb2xsVG9wID0gbmV4dCAqIHIuY29udGFpbmVyUm93OwoJCX0g
ZWxzZSBpZiggbmV4dCA+PSB2RW5kICkgewoJCQljLnNjcm9sbFRvcCA9ICggbmV4
dCAtIHIuY29udGFpbmVyQ291bnQgKyAxICkgKiByLmNvbnRhaW5lclJvdzsKCQl9
Cgl9CgoJLy8gdXBkYXRlIHRoZSBjb250ZW50cyBvZiB0aGUgc2VhcmNoIGJveAoJ
aWYoIHVwZGF0ZVNlYXJjaEJveCApIHsKCQlvc191cGRhdGVTZWFyY2hRdWVyeSgg
ciwgbmV3VGV4dCApOwoJfQp9CgpmdW5jdGlvbiBvc19IaWdobGlnaHRDbGFzcygp
IHsKCXZhciBtYXRjaCA9IG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL0FwcGxl
V2ViS2l0XC8oXGQrKS8pOwoJaWYgKCBtYXRjaCApIHsKCQl2YXIgd2ViS2l0VmVy
c2lvbiA9IHBhcnNlSW50KCBtYXRjaFsxXSApOwoJCWlmICggd2ViS2l0VmVyc2lv
biA8IDUyMyApIHsKCQkJLy8gQ1NTIHN5c3RlbSBoaWdobGlnaHQgY29sb3JzIGJy
b2tlbiBvbiBvbGQgU2FmYXJpCgkJCS8vIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD02MTI5CgkJCS8vIFNhZmFyaSAzLjAuNCwgMy4xIGtu
b3duIG9rCgkJCXJldHVybiAnb3Mtc3VnZ2VzdC1yZXN1bHQtaGwtd2Via2l0JzsK
CQl9Cgl9CglyZXR1cm4gJ29zLXN1Z2dlc3QtcmVzdWx0LWhsJzsKfQoKZnVuY3Rp
b24gb3NfdXBkYXRlU2VhcmNoUXVlcnkoIHIsIG5ld1RleHQgKSB7Cglkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCggci5zZWFyY2hib3ggKS52YWx1ZSA9IG5ld1RleHQ7
CglyLnF1ZXJ5ID0gbmV3VGV4dDsKfQoKCi8qKioqKioqKioqKioqKioqKioqKgog
KiAgTW91c2UgZXZlbnRzCiAqKioqKioqKioqKioqKioqKioqKi8KCi8qKiBNb3Vz
ZSBvdmVyIHRoZSBjb250YWluZXIgKi8KZnVuY3Rpb24gb3NfZXZlbnRNb3VzZW92
ZXIoIHNyY0lkLCBlICkgewoJdmFyIHRhcmcgPSBvc19nZXRUYXJnZXQoIGUgKTsK
CXZhciByID0gb3NfbWFwW3NyY0lkXTsKCWlmKCByID09IG51bGwgfHwgIW9zX21v
dXNlX21vdmVkICkgewoJCXJldHVybjsgLy8gbm90IG91ciBldmVudAoJfQoJdmFy
IG51bSA9IG9zX2dldE51bWJlclN1ZmZpeCggdGFyZy5pZCApOwoJaWYoIG51bSA+
PSAwICkgewoJCW9zX2NoYW5nZUhpZ2hsaWdodCggciwgci5zZWxlY3RlZCwgbnVt
LCBmYWxzZSApOwoJfQp9CgovKiBHZXQgcm93IHdoZXJlIHRoZSBldmVudCBvY2N1
cmVkIChmcm9tIGl0cyBpZCkgKi8KZnVuY3Rpb24gb3NfZ2V0TnVtYmVyU3VmZml4
KCBpZCApIHsKCXZhciBudW0gPSBpZC5zdWJzdHJpbmcoIGlkLmxlbmd0aCAtIDIg
KTsKCWlmKCAhKCBudW0uY2hhckF0KCAwICkgPj0gJzAnICYmIG51bS5jaGFyQXQo
IDAgKSA8PSAnOScgKSApIHsKCQludW0gPSBudW0uc3Vic3RyaW5nKCAxICk7Cgl9
CglpZiggb3NfaXNOdW1iZXIoIG51bSApICkgewoJCXJldHVybiBwYXJzZUludCgg
bnVtICk7Cgl9IGVsc2UgewoJCXJldHVybiAtMTsKCX0KfQoKLyoqIFNhdmUgbW91
c2UgbW92ZSBhcyBsYXN0IGFjdGlvbiAqLwpmdW5jdGlvbiBvc19ldmVudE1vdXNl
bW92ZSggc3JjSWQsIGUgKSB7Cglvc19tb3VzZV9tb3ZlZCA9IHRydWU7Cn0KCi8q
KiBNb3VzZSBidXR0b24gaGVsZCBkb3duLCByZWdpc3RlciBwb3NzaWJsZSBjbGlj
ayAqLwpmdW5jdGlvbiBvc19ldmVudE1vdXNlZG93biggc3JjSWQsIGUgKSB7Cgl2
YXIgdGFyZyA9IG9zX2dldFRhcmdldCggZSApOwoJdmFyIHIgPSBvc19tYXBbc3Jj
SWRdOwoJaWYoIHIgPT0gbnVsbCApIHsKCQlyZXR1cm47IC8vIG5vdCBvdXIgZXZl
bnQKCX0KCXZhciBudW0gPSBvc19nZXROdW1iZXJTdWZmaXgoIHRhcmcuaWQgKTsK
Cglvc19tb3VzZV9wcmVzc2VkID0gdHJ1ZTsKCWlmKCBudW0gPj0gMCApIHsKCQlv
c19tb3VzZV9udW0gPSBudW07CgkJLy8gb3NfdXBkYXRlU2VhcmNoUXVlcnkoIHIs
IHIucmVzdWx0c1tudW1dICk7Cgl9CgkvLyBrZWVwIHRoZSBmb2N1cyBvbiB0aGUg
c2VhcmNoIGZpZWxkCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCggci5zZWFyY2hi
b3ggKS5mb2N1cygpOwoKCXJldHVybiBmYWxzZTsgLy8gcHJldmVudHMgc2VsZWN0
aW9uCn0KCi8qKiBNb3VzZSBidXR0b24gcmVsZWFzZWQsIGNoZWNrIGZvciBjbGlj
ayBvbiBzb21lIHJvdyAqLwpmdW5jdGlvbiBvc19ldmVudE1vdXNldXAoIHNyY0lk
LCBlICkgewoJdmFyIHRhcmcgPSBvc19nZXRUYXJnZXQoIGUgKTsKCXZhciByID0g
b3NfbWFwW3NyY0lkXTsKCWlmKCByID09IG51bGwgKSB7CgkJcmV0dXJuOyAvLyBu
b3Qgb3VyIGV2ZW50Cgl9Cgl2YXIgbnVtID0gb3NfZ2V0TnVtYmVyU3VmZml4KCB0
YXJnLmlkICk7CgoJaWYoIG51bSA+PSAwICYmIG9zX21vdXNlX251bSA9PSBudW0g
KSB7CgkJb3NfdXBkYXRlU2VhcmNoUXVlcnkoIHIsIHIucmVzdWx0c1tudW1dICk7
CgkJb3NfaGlkZVJlc3VsdHMoIHIgKTsKCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCggci5zZWFyY2hmb3JtICkuc3VibWl0KCk7Cgl9Cglvc19tb3VzZV9wcmVzc2Vk
ID0gZmFsc2U7CgkvLyBrZWVwIHRoZSBmb2N1cyBvbiB0aGUgc2VhcmNoIGZpZWxk
Cglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCggci5zZWFyY2hib3ggKS5mb2N1cygp
Owp9CgovKiogVG9nZ2xlIHN0dWZmIHNlZW1zIHRvIGJlIGRlYWQgY29kZT8gKi8K
Ci8qKiBSZXR1cm4gdGhlIHNwYW4gZWxlbWVudCB0aGF0IGNvbnRhaW5zIHRoZSB0
b2dnbGUgbGluayAqLwpmdW5jdGlvbiBvc19jcmVhdGVUb2dnbGUoIHIsIGNsYXNz
TmFtZSApIHsKCXZhciB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggJ3NwYW4n
ICk7Cgl0LmNsYXNzTmFtZSA9IGNsYXNzTmFtZTsKCXQuc2V0QXR0cmlidXRlKCAn
aWQnLCByLnRvZ2dsZSApOwoJdmFyIGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCAnYScgKTsKCWxpbmsuc2V0QXR0cmlidXRlKCAnaHJlZicsICdqYXZhc2Ny
aXB0OnZvaWQoMCk7JyApOwoJbGluay5vbmNsaWNrID0gZnVuY3Rpb24oKSB7IG9z
X3RvZ2dsZSggci5zZWFyY2hib3gsIHIuc2VhcmNoZm9ybSApOyB9OwoJdmFyIG1z
ZyA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCB3Z01XU3VnZ2VzdE1lc3NhZ2Vz
WzBdICk7CglsaW5rLmFwcGVuZENoaWxkKCBtc2cgKTsKCXQuYXBwZW5kQ2hpbGQo
IGxpbmsgKTsKCXJldHVybiB0Owp9CgovKiogQ2FsbCB3aGVuIHVzZXIgY2xpY2tz
IG9uIHNvbWUgb2YgdGhlIHRvZ2dsZSBsaW5rcyAqLwpmdW5jdGlvbiBvc190b2dn
bGUoIGlucHV0SWQsIGZvcm1OYW1lICkgewoJciA9IG9zX21hcFtpbnB1dElkXTsK
CXZhciBtc2cgPSAnJzsKCWlmKCByID09IG51bGwgKSB7CgkJb3NfZW5hYmxlU3Vn
Z2VzdGlvbnNPbiggaW5wdXRJZCwgZm9ybU5hbWUgKTsKCQlyID0gb3NfbWFwW2lu
cHV0SWRdOwoJCW1zZyA9IHdnTVdTdWdnZXN0TWVzc2FnZXNbMF07Cgl9IGVsc2V7
CgkJb3NfZGlzYWJsZVN1Z2dlc3Rpb25zT24oIGlucHV0SWQsIGZvcm1OYW1lICk7
CgkJbXNnID0gd2dNV1N1Z2dlc3RNZXNzYWdlc1sxXTsKCX0KCS8vIGNoYW5nZSBt
ZXNzYWdlCgl2YXIgbGluayA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCByLnRv
Z2dsZSApLmZpcnN0Q2hpbGQ7CglsaW5rLnJlcGxhY2VDaGlsZCggZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUoIG1zZyApLCBsaW5rLmZpcnN0Q2hpbGQgKTsKfQoKaG9v
a0V2ZW50KCAnbG9hZCcsIG9zX01XU3VnZ2VzdEluaXQgKTsK
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=MobileRedirect.js
Content-Type: application/x-javascript; charset=UTF-8; name=MobileRedirect.js
Content-Location: http://bits.wikimedia.org/w/extensions/WikimediaMobile/MobileRedirect.js?2.2
Content-Transfer-Encoding: Base64
LyoqIE1vYmlsZSBSZWRpcmVjdCBIZWxwZXIKICoKICogIFJlZGlyZWN0cyB0byBh
IHdpa2ltZWRpYS1tb2JpbGUgaW5zdGFsbGF0aW9uIGZvciB2aWV3ZXJzIG9uIGlQ
aG9uZSwgaVBvZCAKICogIFRvdWNoLCBQYWxtIFByZSwgYW5kIEFuZHJvaWQgZGV2
aWNlcy4KICoKICogIFlvdSBjYW4gdHVybiBvZmYgdGhlIHJlZGlyZWN0IGJ5IHNl
dHRpbmcgdGhlIGNvb2tpZSAic3RvcE1vYmlsZVJlZGlyZWN0PXRydWUiCiAqLwpp
ZiAoIC8oQW5kcm9pZHxpUGhvbmV8aVBvZHx3ZWJPU3xOZXRGcm9udHxPcGVyYSBN
aW5pfFNFTUMtQnJvd3NlcnxQbGF5U3RhdGlvbiBQb3J0YWJsZXxOaW50ZW5kbyBX
aWl8QmxhY2tCZXJyeSkvCgkudGVzdCggbmF2aWdhdG9yLnVzZXJBZ2VudCApICkK
ewoJKGZ1bmN0aW9uICgpIHsKCQlmdW5jdGlvbiBoYXZlU3RvcENvb2tpZSgpIHsK
CQkJcmV0dXJuIChkb2N1bWVudC5jb29raWUuaW5kZXhPZigic3RvcE1vYmlsZVJl
ZGlyZWN0PXRydWUiKSA+PSAwKTsKCQl9CgoJCWZ1bmN0aW9uIGdldE1vYmlsZVVy
bCgpIHsKCQkJdmFyIG1haW5QYWdlID0gd2dNYWluUGFnZVRpdGxlLnJlcGxhY2Uo
LyAvZywgJ18nKTsKCQkJdmFyIHVybCA9IHdnV2lraW1lZGlhTW9iaWxlVXJsICsg
Jy8nOwoJCQlpZiAod2dQYWdlTmFtZSA9PSBtYWluUGFnZSkgewoJCQkJdXJsICs9
ICc6OkhvbWUnOyAvLyBTcGVjaWFsIGNhc2UKCQkJfSBlbHNlIHsKCQkJCXVybCAr
PSBlbmNvZGVVUklDb21wb25lbnQod2dQYWdlTmFtZSkucmVwbGFjZSgnJTJGJywn
LycpLnJlcGxhY2UoJyUzQScsJzonKTsKCQkJfQoJCQl1cmwgKz0gJz93YXNSZWRp
cmVjdGVkPXRydWUnOwoJCQlyZXR1cm4gdXJsOwoJCX0KCgkJLy8gRG9uJ3QgcmVk
aXJlY3QgaWYgd2UgaGF2ZSB0aGUgc3RvcCBjb29raWUKCQlpZiAoaGF2ZVN0b3BD
b29raWUoKSkgcmV0dXJuOwoKCQkvLyBEb24ndCByZWRpcmVjdCBzcGVjaWFsIHBh
Z2VzCgkJaWYgKHdnTmFtZXNwYWNlTnVtYmVyIDwgMCkgcmV0dXJuOwoKCQkvLyBE
b24ndCByZWRpcmVjdCBVUkxzIHRoYXQgYXJlbid0IHNpbXBsZSBwYWdlIHZpZXdz
CgkJaWYgKGRvY3VtZW50LmxvY2F0aW9uLnNlYXJjaCAmJiBkb2N1bWVudC5sb2Nh
dGlvbi5zZWFyY2gubGVuZ3RoID4gMCkgewoJCQl2YXIgcGFyYW1zID0gZG9jdW1l
bnQubG9jYXRpb24uc2VhcmNoLnN1YnN0cigxKS5zcGxpdCgnJicpOwoJCQlmb3Ig
KHZhciBpID0gMDsgaSA8IHBhcmFtcy5sZW5ndGg7IGkrKykgewoJCQkJdmFyIHBh
cmFtUGFydHMgPSBwYXJhbXNbaV0uc3BsaXQoJz0nKTsKCQkJCWlmIChwYXJhbVBh
cnRzLmxlbmd0aCAmJiBwYXJhbVBhcnRzWzBdICE9ICd0aXRsZScpIHsKCQkJCQly
ZXR1cm47CgkJCQl9CgkJCX0KCQl9CgoJCWRvY3VtZW50LmxvY2F0aW9uID0gZ2V0
TW9iaWxlVXJsKCk7Cgl9KSgpOwp9Cg==
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=plugins.combined.min.js
Content-Type: application/x-javascript; charset=UTF-8; name=plugins.combined.min.js
Content-Location: http://bits.wikimedia.org/w/extensions/UsabilityInitiative/js/plugins.combined.min.js?283r
Content-Transfer-Encoding: Base64
CmlmKHR5cGVvZiBtdz09J3VuZGVmaW5lZCcpe213PXt9O30KbXcudXNhYmlsaXR5
PXsnbWVzc2FnZXMnOnt9fQptdy51c2FiaWxpdHkubG9hZD1mdW5jdGlvbihkZXBz
LGNhbGxiYWNrKXt2YXIgbmVlZEpVST1mYWxzZTtmb3IodmFyIGk9MDtpPGRlcHMu
bGVuZ3RoJiYhbmVlZEpVSTtpKyspe2lmKGRlcHNbaV09PSckai51aScpe25lZWRK
VUk9dHJ1ZTt9fQppZihuZWVkSlVJJiZ0eXBlb2YgJGoudWk9PSd1bmRlZmluZWQn
KXskai5nZXRTY3JpcHQod2dTY3JpcHRQYXRoKycvZXh0ZW5zaW9ucy9Vc2FiaWxp
dHlJbml0aWF0aXZlL2pzL2pzMnN0b3BnYXAvanVpLmNvbWJpbmVkLm1pbi5qcycs
Y2FsbGJhY2spO31lbHNle2NhbGxiYWNrKCk7fX07bXcudXNhYmlsaXR5LmFkZE1l
c3NhZ2VzPWZ1bmN0aW9uKG1lc3NhZ2VzKXtmb3IodmFyIGtleSBpbiBtZXNzYWdl
cyl7dGhpcy5tZXNzYWdlc1trZXldPW1lc3NhZ2VzW2tleV07fX07bXcudXNhYmls
aXR5LmdldE1zZz1mdW5jdGlvbihrZXksYXJncyl7aWYoIShrZXkgaW4gdGhpcy5t
ZXNzYWdlcykpe3JldHVybidbJytrZXkrJ10nO30KdmFyIG1zZz10aGlzLm1lc3Nh
Z2VzW2tleV07aWYodHlwZW9mIGFyZ3M9PSdvYmplY3QnfHx0eXBlb2YgYXJncz09
J2FycmF5Jyl7Zm9yKHZhciBhcmdLZXkgaW4gYXJncyl7bXNnPW1zZy5yZXBsYWNl
KCdcJCcrKHBhcnNlSW50KGFyZ0tleSkrMSksYXJnc1thcmdLZXldKTt9fWVsc2Ug
aWYodHlwZW9mIGFyZ3M9PSdzdHJpbmcnfHx0eXBlb2YgYXJncz09J251bWJlcicp
e21zZz1tc2cucmVwbGFjZSgnJDEnLGFyZ3MpO30KcmV0dXJuIG1zZzt9O213LnVz
YWJpbGl0eS50ZXN0QnJvd3Nlcj1mdW5jdGlvbihtYXApe3ZhciBicm93c2VyPW1h
cFskaignYm9keScpLmlzKCcucnRsJyk/J3J0bCc6J2x0ciddWyRqLmJyb3dzZXIu
bmFtZV07aWYodHlwZW9mIGJyb3dzZXI9PSdib29sZWFuJyl7cmV0dXJuIGJyb3dz
ZXI7fQppZih0eXBlb2YgYnJvd3NlciE9PSdvYmplY3QnKXtyZXR1cm4gdHJ1ZTt9
CmZvcih2YXIgY29uZGl0aW9uIGluIGJyb3dzZXIpe3ZhciBvcD1icm93c2VyW2Nv
bmRpdGlvbl1bMF07dmFyIHZhbD1icm93c2VyW2NvbmRpdGlvbl1bMV07aWYodmFs
PT09ZmFsc2Upe3JldHVybiBmYWxzZTt9ZWxzZSBpZih0eXBlb2YgdmFsPT0nc3Ry
aW5nJyl7aWYoIShldmFsKCckai5icm93c2VyLnZlcnNpb24nK29wKyciJyt2YWwr
JyInKSkpe3JldHVybiBmYWxzZTt9fWVsc2UgaWYodHlwZW9mIHZhbD09J251bWJl
cicpe2lmKCEoZXZhbCgnJGouYnJvd3Nlci52ZXJzaW9uTnVtYmVyJytvcCt2YWwp
KSl7cmV0dXJuIGZhbHNlO319fQpyZXR1cm4gdHJ1ZTt9O213LnVzYWJpbGl0eS5n
ZXRNYXhUYWJJbmRleD1mdW5jdGlvbigpe3ZhciBtYXhUST0wOyRqKCdbdGFiaW5k
ZXhdJykuZWFjaChmdW5jdGlvbigpe3ZhciB0aT1wYXJzZUludCgkaih0aGlzKS5h
dHRyKCd0YWJpbmRleCcpKTtpZih0aT5tYXhUSSl7bWF4VEk9dGk7fX0pO3JldHVy
biBtYXhUSTt9OyhmdW5jdGlvbigkKXskLndoaWxlQXN5bmM9ZnVuY3Rpb24ob3B0
cykKe3ZhciBkZWxheT1NYXRoLmFicyhvcHRzLmRlbGF5KXx8MTAsYnVsaz1pc05h
TihvcHRzLmJ1bGspPzUwMDpNYXRoLmFicyhvcHRzLmJ1bGspLHRlc3Q9b3B0cy50
ZXN0fHxmdW5jdGlvbigpe3JldHVybiB0cnVlO30sbG9vcD1vcHRzLmxvb3B8fGZ1
bmN0aW9uKCl7fSxlbmQ9b3B0cy5lbmR8fGZ1bmN0aW9uKCl7fTsoZnVuY3Rpb24o
KXt2YXIgdD1mYWxzZSxiZWdpbj1uZXcgRGF0ZSgpO3doaWxlKHQ9dGVzdCgpKQp7
bG9vcCgpO2lmKGJ1bGs9PT0wfHwobmV3IERhdGUoKS1iZWdpbik+YnVsaykKe2Jy
ZWFrO319CmlmKHQpCntzZXRUaW1lb3V0KGFyZ3VtZW50cy5jYWxsZWUsZGVsYXkp
O30KZWxzZQp7ZW5kKCk7fX0pKCk7fQokLmVhY2hBc3luYz1mdW5jdGlvbihhcnJh
eSxvcHRzKQp7dmFyIGk9MCxsPWFycmF5Lmxlbmd0aCxsb29wPW9wdHMubG9vcHx8
ZnVuY3Rpb24oKXt9OyQud2hpbGVBc3luYygkLmV4dGVuZChvcHRzLHt0ZXN0OmZ1
bmN0aW9uKCl7cmV0dXJuIGk8bDt9LGxvb3A6ZnVuY3Rpb24oKQp7dmFyIHZhbD1h
cnJheVtpXTtyZXR1cm4gbG9vcC5jYWxsKHZhbCxpKyssdmFsKTt9fSkpO30KJC5m
bi5lYWNoQXN5bmM9ZnVuY3Rpb24ob3B0cykKeyQuZWFjaEFzeW5jKHRoaXMsb3B0
cyk7cmV0dXJuIHRoaXM7fX0pKGpRdWVyeSk7KGZ1bmN0aW9uKCQpe3ZhciBjYWNo
ZT17fTt2YXIgbWF0Y2hUZXh0Q2FjaGU9e307JC5mbi5hdXRvRWxsaXBzaXM9ZnVu
Y3Rpb24ob3B0aW9ucyl7b3B0aW9ucz0kLmV4dGVuZCh7J3Bvc2l0aW9uJzonY2Vu
dGVyJywndG9vbHRpcCc6ZmFsc2UsJ3Jlc3RvcmVUZXh0JzpmYWxzZSwnaGFzU3Bh
bic6ZmFsc2UsJ21hdGNoVGV4dCc6bnVsbH0sb3B0aW9ucyk7JCh0aGlzKS5lYWNo
KGZ1bmN0aW9uKCl7dmFyICR0aGlzPSQodGhpcyk7aWYob3B0aW9ucy5yZXN0b3Jl
VGV4dCl7aWYoISR0aGlzLmRhdGEoJ2F1dG9FbGxpcHNpcy5vcmlnaW5hbFRleHQn
KSl7JHRoaXMuZGF0YSgnYXV0b0VsbGlwc2lzLm9yaWdpbmFsVGV4dCcsJHRoaXMu
dGV4dCgpKTt9ZWxzZXskdGhpcy50ZXh0KCR0aGlzLmRhdGEoJ2F1dG9FbGxpcHNp
cy5vcmlnaW5hbFRleHQnKSk7fX0KdmFyICRjb250YWluZXI9JHRoaXM7dmFyICR0
cmltbWFibGVUZXh0PW51bGw7dmFyICRwcm90ZWN0ZWRUZXh0PW51bGw7aWYob3B0
aW9ucy5oYXNTcGFuKXskdHJpbW1hYmxlVGV4dD0kdGhpcy5jaGlsZHJlbihvcHRp
b25zLnNlbGVjdG9yKTt9ZWxzZXskdHJpbW1hYmxlVGV4dD0kKCc8c3BhbiAvPicp
LmNzcygnd2hpdGVTcGFjZScsJ25vd3JhcCcpLnRleHQoJHRoaXMudGV4dCgpKTsk
dGhpcy5lbXB0eSgpLmFwcGVuZCgkdHJpbW1hYmxlVGV4dCk7fQp2YXIgdGV4dD0k
Y29udGFpbmVyLnRleHQoKTt2YXIgdHJpbW1hYmxlVGV4dD0kdHJpbW1hYmxlVGV4
dC50ZXh0KCk7dmFyIHc9JGNvbnRhaW5lci53aWR0aCgpO3ZhciBwdz0kcHJvdGVj
dGVkVGV4dD8kcHJvdGVjdGVkVGV4dC53aWR0aCgpOjA7aWYoISh0ZXh0IGluIGNh
Y2hlKSl7Y2FjaGVbdGV4dF09e307fQppZihvcHRpb25zLm1hdGNoVGV4dCYmISh0
ZXh0IGluIG1hdGNoVGV4dENhY2hlKSl7bWF0Y2hUZXh0Q2FjaGVbdGV4dF09e307
fQppZihvcHRpb25zLm1hdGNoVGV4dCYmIShvcHRpb25zLm1hdGNoVGV4dCBpbiBt
YXRjaFRleHRDYWNoZVt0ZXh0XSkpe21hdGNoVGV4dENhY2hlW3RleHRdW29wdGlv
bnMubWF0Y2hUZXh0XT17fTt9CmlmKCFvcHRpb25zLm1hdGNoVGV4dCYmdyBpbiBj
YWNoZVt0ZXh0XSl7JGNvbnRhaW5lci5odG1sKGNhY2hlW3RleHRdW3ddKTtpZihv
cHRpb25zLnRvb2x0aXApCiRjb250YWluZXIuYXR0cigndGl0bGUnLHRleHQpO3Jl
dHVybjt9CmlmKG9wdGlvbnMubWF0Y2hUZXh0JiZvcHRpb25zLm1hdGNoVGV4dCBp
biBtYXRjaFRleHRDYWNoZVt0ZXh0XSYmdyBpbiBtYXRjaFRleHRDYWNoZVt0ZXh0
XVtvcHRpb25zLm1hdGNoVGV4dF0peyRjb250YWluZXIuaHRtbChtYXRjaFRleHRD
YWNoZVt0ZXh0XVtvcHRpb25zLm1hdGNoVGV4dF1bd10pO2lmKG9wdGlvbnMudG9v
bHRpcCkKJGNvbnRhaW5lci5hdHRyKCd0aXRsZScsdGV4dCk7cmV0dXJuO30KaWYo
JHRyaW1tYWJsZVRleHQud2lkdGgoKStwdz53KXtzd2l0Y2gob3B0aW9ucy5wb3Np
dGlvbil7Y2FzZSdyaWdodCc6dmFyIGw9MCxyPXRyaW1tYWJsZVRleHQubGVuZ3Ro
O2Rve3ZhciBtPU1hdGguY2VpbCgobCtyKS8yKTskdHJpbW1hYmxlVGV4dC50ZXh0
KHRyaW1tYWJsZVRleHQuc3Vic3RyKDAsbSkrJy4uLicpO2lmKCR0cmltbWFibGVU
ZXh0LndpZHRoKCkrcHc+dyl7cj1tLTE7fWVsc2V7bD1tO319d2hpbGUobDxyKTsk
dHJpbW1hYmxlVGV4dC50ZXh0KHRyaW1tYWJsZVRleHQuc3Vic3RyKDAsbCkrJy4u
LicpO2JyZWFrO2Nhc2UnY2VudGVyJzp2YXIgaT1bTWF0aC5yb3VuZCh0cmltbWFi
bGVUZXh0Lmxlbmd0aC8yKSxNYXRoLnJvdW5kKHRyaW1tYWJsZVRleHQubGVuZ3Ro
LzIpXTt2YXIgc2lkZT0xO3doaWxlKCR0cmltbWFibGVUZXh0Lm91dGVyV2lkdGgo
KStwdz53JiZpWzBdPjApeyR0cmltbWFibGVUZXh0LnRleHQodHJpbW1hYmxlVGV4
dC5zdWJzdHIoMCxpWzBdKSsnLi4uJyt0cmltbWFibGVUZXh0LnN1YnN0cihpWzFd
KSk7aWYoc2lkZT09MCl7aVswXS0tO3NpZGU9MTt9ZWxzZXtpWzFdKys7c2lkZT0w
O319CmJyZWFrO2Nhc2UnbGVmdCc6dmFyIHI9MDt3aGlsZSgkdHJpbW1hYmxlVGV4
dC5vdXRlcldpZHRoKCkrcHc+dyYmcjx0cmltbWFibGVUZXh0Lmxlbmd0aCl7JHRy
aW1tYWJsZVRleHQudGV4dCgnLi4uJyt0cmltbWFibGVUZXh0LnN1YnN0cihyKSk7
cisrO30KYnJlYWs7fX0KaWYob3B0aW9ucy50b29sdGlwKXskY29udGFpbmVyLmF0
dHIoJ3RpdGxlJyx0ZXh0KTt9CmlmKG9wdGlvbnMubWF0Y2hUZXh0KXskY29udGFp
bmVyLmhpZ2hsaWdodFRleHQob3B0aW9ucy5tYXRjaFRleHQpO21hdGNoVGV4dENh
Y2hlW3RleHRdW29wdGlvbnMubWF0Y2hUZXh0XVt3XT0kY29udGFpbmVyLmh0bWwo
KTt9ZWxzZXtjYWNoZVt0ZXh0XVt3XT0kY29udGFpbmVyLmh0bWwoKTt9fSk7fTt9
KShqUXVlcnkpOyhmdW5jdGlvbigkKXskLmJyb3dzZXJUZXN0PWZ1bmN0aW9uKGEs
eil7dmFyIHU9J3Vua25vd24nLHg9J1gnLG09ZnVuY3Rpb24ocixoKXtmb3IodmFy
IGk9MDtpPGgubGVuZ3RoO2k9aSsxKXtyPXIucmVwbGFjZShoW2ldWzBdLGhbaV1b
MV0pO30KcmV0dXJuIHI7fSxjPWZ1bmN0aW9uKGksYSxiLGMpe3ZhciByPXtuYW1l
Om0oKGEuZXhlYyhpKXx8W3UsdV0pWzFdLGIpfTtyW3IubmFtZV09dHJ1ZTtyLnZl
cnNpb249KGMuZXhlYyhpKXx8W3gseCx4LHhdKVszXTtpZihyLm5hbWUubWF0Y2go
L3NhZmFyaS8pJiZyLnZlcnNpb24+NDAwKXtyLnZlcnNpb249JzIuMCc7fQppZihy
Lm5hbWU9PT0ncHJlc3RvJyl7ci52ZXJzaW9uPSgkLmJyb3dzZXIudmVyc2lvbj45
LjI3KT8nZnV0aGFyayc6J2xpbmVhcl9iJzt9CmlmKHIubmFtZT09PSdvcGVyYScm
JiQuYnJvd3Nlci52ZXJzaW9uPj05Ljgpe3IudmVyc2lvbj1pLm1hdGNoKC92ZXJz
aW9uXC8oWzAtOVwuXSopL2kpWzFdfHwxMDt9CnIudmVyc2lvbk51bWJlcj1wYXJz
ZUZsb2F0KHIudmVyc2lvbiwxMCl8fDA7ci52ZXJzaW9uWD0oci52ZXJzaW9uIT09
eCk/KHIudmVyc2lvbisnJykuc3Vic3RyKDAsMSk6eDtyLmNsYXNzTmFtZT1yLm5h
bWUrci52ZXJzaW9uWDtyZXR1cm4gcjt9O2E9KGEubWF0Y2goL09wZXJhfE5hdmln
YXRvcnxNaW5lZmllbGR8S0hUTUx8Q2hyb21lfFBMQVlTVEFUSU9OIDMvKT9tKGEs
W1svKEZpcmVmb3h8TVNJRXxLSFRNTCxcc2xpa2Vcc0dlY2tvfEtvbnF1ZXJvcikv
LCcnXSxbJ0Nocm9tZSBTYWZhcmknLCdDaHJvbWUnXSxbJ0tIVE1MJywnS29ucXVl
cm9yJ10sWydNaW5lZmllbGQnLCdGaXJlZm94J10sWydOYXZpZ2F0b3InLCdOZXRz
Y2FwZSddLFsnUExBWVNUQVRJT04gMycsJ1BTMyddXSk6YSkudG9Mb3dlckNhc2Uo
KTskLmJyb3dzZXI9JC5leHRlbmQoKCF6KT8kLmJyb3dzZXI6e30sYyhhLC8oY2Ft
aW5vfGNocm9tZXxmaXJlZm94fG5ldHNjYXBlfGtvbnF1ZXJvcnxseW54fG1zaWV8
b3BlcmF8c2FmYXJpfGlwb2R8aXBob25lfGJsYWNrYmVycnl8cHMzfGRvY29tbykv
LFtdLC8oY2FtaW5vfGNocm9tZXxmaXJlZm94fG5ldHNjYXBlfG5ldHNjYXBlNnxv
cGVyYXx2ZXJzaW9ufGtvbnF1ZXJvcnxseW54fG1zaWV8c2FmYXJpfHBzMykoXC98
XDs/XHN8KShbYS16MC05XC5cK10qPykoXDt8ZGV2fHJlbHxcKXxcc3wkKS8pKTsk
LmxheW91dD1jKGEsLyhnZWNrb3xrb25xdWVyb3J8bXNpZXxvcGVyYXx3ZWJraXQp
LyxbWydrb25xdWVyb3InLCdraHRtbCddLFsnbXNpZScsJ3RyaWRlbnQnXSxbJ29w
ZXJhJywncHJlc3RvJ11dLC8oYXBwbGV3ZWJraXR8cnZ8a29ucXVlcm9yfG1zaWUp
KFw6fFwvfFxzKShbYS16MC05XC5dKj8pKFw7fFwpfFxzKS8pOyQub3M9e25hbWU6
KC8od2lufG1hY3xsaW51eHxzdW5vc3xzb2xhcmlzfGlwaG9uZSkvLmV4ZWMobmF2
aWdhdG9yLnBsYXRmb3JtLnRvTG93ZXJDYXNlKCkpfHxbdV0pWzBdLnJlcGxhY2Uo
J3N1bm9zJywnc29sYXJpcycpfTtpZigheil7JCgnaHRtbCcpLmFkZENsYXNzKFsk
Lm9zLm5hbWUsJC5icm93c2VyLm5hbWUsJC5icm93c2VyLmNsYXNzTmFtZSwkLmxh
eW91dC5uYW1lLCQubGF5b3V0LmNsYXNzTmFtZV0uam9pbignICcpKTt9fTskLmJy
b3dzZXJUZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO30pKGpRdWVyeSk7KGZ1bmN0
aW9uKCQpeyQuZm4uY29sbGFwc2libGVUYWJzPWZ1bmN0aW9uKCQkb3B0aW9ucyl7
aWYoIXRoaXMubGVuZ3RoKXJldHVybiB0aGlzO3ZhciAkc2V0dGluZ3M9JC5leHRl
bmQoe30sJC5jb2xsYXBzaWJsZVRhYnMuZGVmYXVsdHMsJCRvcHRpb25zKTt0aGlz
LmVhY2goZnVuY3Rpb24oKXt2YXIgJHRoaXM9JCh0aGlzKTskLmNvbGxhcHNpYmxl
VGFicy5pbnN0YW5jZXM9KCQuY29sbGFwc2libGVUYWJzLmluc3RhbmNlcy5sZW5n
dGg9PTA/JHRoaXM6JC5jb2xsYXBzaWJsZVRhYnMuaW5zdGFuY2VzLmFkZCgkdGhp
cykpOyR0aGlzLmRhdGEoJ2NvbGxhcHNpYmxlVGFic1NldHRpbmdzJywkc2V0dGlu
Z3MpOyR0aGlzLmNoaWxkcmVuKCRzZXR0aW5ncy5jb2xsYXBzaWJsZSkuZWFjaChm
dW5jdGlvbigpeyQuY29sbGFwc2libGVUYWJzLmFkZERhdGEoJCh0aGlzKSk7fSk7
fSk7aWYoISQuY29sbGFwc2libGVUYWJzLmJvdW5kRXZlbnQpeyQod2luZG93KS5k
ZWxheWVkQmluZCgnNTAwJywncmVzaXplJyxmdW5jdGlvbigpeyQuY29sbGFwc2li
bGVUYWJzLmhhbmRsZVJlc2l6ZSgpO30pO30KJC5jb2xsYXBzaWJsZVRhYnMuaGFu
ZGxlUmVzaXplKCk7cmV0dXJuIHRoaXM7fTskLmNvbGxhcHNpYmxlVGFicz17aW5z
dGFuY2VzOltdLGJvdW5kRXZlbnQ6bnVsbCxkZWZhdWx0czp7ZXhwYW5kZWRDb250
YWluZXI6JyNwLXZpZXdzIHVsJyxjb2xsYXBzZWRDb250YWluZXI6JyNwLWNhY3Rp
b25zIHVsJyxjb2xsYXBzaWJsZTonbGkuY29sbGFwc2libGUnLHNoaWZ0aW5nOmZh
bHNlLGV4cGFuZENvbmRpdGlvbjpmdW5jdGlvbihlbGVXaWR0aCl7cmV0dXJuKCQo
JyNsZWZ0LW5hdmlnYXRpb24nKS5wb3NpdGlvbigpLmxlZnQrJCgnI2xlZnQtbmF2
aWdhdGlvbicpLndpZHRoKCkpPCgkKCcjcmlnaHQtbmF2aWdhdGlvbicpLnBvc2l0
aW9uKCkubGVmdC1lbGVXaWR0aCk7fSxjb2xsYXBzZUNvbmRpdGlvbjpmdW5jdGlv
bigpe3JldHVybigkKCcjbGVmdC1uYXZpZ2F0aW9uJykucG9zaXRpb24oKS5sZWZ0
KyQoJyNsZWZ0LW5hdmlnYXRpb24nKS53aWR0aCgpKT4kKCcjcmlnaHQtbmF2aWdh
dGlvbicpLnBvc2l0aW9uKCkubGVmdDt9fSxhZGREYXRhOmZ1bmN0aW9uKCRjb2xs
YXBzaWJsZSl7dmFyICRzZXR0aW5ncz0kY29sbGFwc2libGUucGFyZW50KCkuZGF0
YSgnY29sbGFwc2libGVUYWJzU2V0dGluZ3MnKTskY29sbGFwc2libGUuZGF0YSgn
Y29sbGFwc2libGVUYWJzU2V0dGluZ3MnLHsnZXhwYW5kZWRDb250YWluZXInOiRz
ZXR0aW5ncy5leHBhbmRlZENvbnRhaW5lciwnY29sbGFwc2VkQ29udGFpbmVyJzok
c2V0dGluZ3MuY29sbGFwc2VkQ29udGFpbmVyLCdleHBhbmRlZFdpZHRoJzokY29s
bGFwc2libGUud2lkdGgoKSwncHJldkVsZW1lbnQnOiRjb2xsYXBzaWJsZS5wcmV2
KCl9KTt9LGdldFNldHRpbmdzOmZ1bmN0aW9uKCRjb2xsYXBzaWJsZSl7dmFyICRz
ZXR0aW5ncz0kY29sbGFwc2libGUuZGF0YSgnY29sbGFwc2libGVUYWJzU2V0dGlu
Z3MnKTtpZih0eXBlb2YgJHNldHRpbmdzPT0ndW5kZWZpbmVkJyl7JC5jb2xsYXBz
aWJsZVRhYnMuYWRkRGF0YSgkY29sbGFwc2libGUpOyRzZXR0aW5ncz0kY29sbGFw
c2libGUuZGF0YSgnY29sbGFwc2libGVUYWJzU2V0dGluZ3MnKTt9CnJldHVybiAk
c2V0dGluZ3M7fSxoYW5kbGVSZXNpemU6ZnVuY3Rpb24oZSl7JC5jb2xsYXBzaWJs
ZVRhYnMuaW5zdGFuY2VzLmVhY2goZnVuY3Rpb24oKXt2YXIgJHRoaXM9JCh0aGlz
KSxkYXRhPSQuY29sbGFwc2libGVUYWJzLmdldFNldHRpbmdzKCR0aGlzKTtpZihk
YXRhLnNoaWZ0aW5nKXJldHVybjtpZigkdGhpcy5jaGlsZHJlbihkYXRhLmNvbGxh
cHNpYmxlKS5sZW5ndGg+MCYmZGF0YS5jb2xsYXBzZUNvbmRpdGlvbigpKXskdGhp
cy50cmlnZ2VyKCJiZWZvcmVUYWJDb2xsYXBzZSIpOyQuY29sbGFwc2libGVUYWJz
Lm1vdmVUb0NvbGxhcHNlZCgkdGhpcy5jaGlsZHJlbihkYXRhLmNvbGxhcHNpYmxl
Kyc6bGFzdCcpKTt9CmlmKCQoZGF0YS5jb2xsYXBzZWRDb250YWluZXIrJyAnK2Rh
dGEuY29sbGFwc2libGUpLmxlbmd0aD4wJiZkYXRhLmV4cGFuZENvbmRpdGlvbigk
LmNvbGxhcHNpYmxlVGFicy5nZXRTZXR0aW5ncygkKGRhdGEuY29sbGFwc2VkQ29u
dGFpbmVyKS5jaGlsZHJlbihkYXRhLmNvbGxhcHNpYmxlKyI6Zmlyc3QiKSkuZXhw
YW5kZWRXaWR0aCkpeyR0aGlzLnRyaWdnZXIoImJlZm9yZVRhYkV4cGFuZCIpOyQu
Y29sbGFwc2libGVUYWJzLm1vdmVUb0V4cGFuZGVkKGRhdGEuY29sbGFwc2VkQ29u
dGFpbmVyKyIgIitkYXRhLmNvbGxhcHNpYmxlKyc6Zmlyc3QnKTt9fSk7fSxtb3Zl
VG9Db2xsYXBzZWQ6ZnVuY3Rpb24oZWxlKXt2YXIgJG1vdmluZz0kKGVsZSk7dmFy
IGRhdGE9JC5jb2xsYXBzaWJsZVRhYnMuZ2V0U2V0dGluZ3MoJG1vdmluZyk7dmFy
IGRhdGFFeHA9JC5jb2xsYXBzaWJsZVRhYnMuZ2V0U2V0dGluZ3MoZGF0YS5leHBh
bmRlZENvbnRhaW5lcik7ZGF0YUV4cC5zaGlmdGluZz10cnVlOyRtb3ZpbmcucmVt
b3ZlKCkucHJlcGVuZFRvKGRhdGEuY29sbGFwc2VkQ29udGFpbmVyKS5kYXRhKCdj
b2xsYXBzaWJsZVRhYnNTZXR0aW5ncycsZGF0YSk7ZGF0YUV4cC5zaGlmdGluZz1m
YWxzZTskLmNvbGxhcHNpYmxlVGFicy5oYW5kbGVSZXNpemUoKTt9LG1vdmVUb0V4
cGFuZGVkOmZ1bmN0aW9uKGVsZSl7dmFyICRtb3Zpbmc9JChlbGUpO3ZhciBkYXRh
PSQuY29sbGFwc2libGVUYWJzLmdldFNldHRpbmdzKCRtb3ZpbmcpO3ZhciBkYXRh
RXhwPSQuY29sbGFwc2libGVUYWJzLmdldFNldHRpbmdzKGRhdGEuZXhwYW5kZWRD
b250YWluZXIpO2RhdGFFeHAuc2hpZnRpbmc9dHJ1ZTskbW92aW5nLnJlbW92ZSgp
Lmluc2VydEFmdGVyKGRhdGEucHJldkVsZW1lbnQpLmRhdGEoJ2NvbGxhcHNpYmxl
VGFic1NldHRpbmdzJyxkYXRhKTtkYXRhRXhwLnNoaWZ0aW5nPWZhbHNlOyQuY29s
bGFwc2libGVUYWJzLmhhbmRsZVJlc2l6ZSgpO319O30pKGpRdWVyeSk7KGZ1bmN0
aW9uKGpRdWVyeSl7alF1ZXJ5LmVhY2goWydiYWNrZ3JvdW5kQ29sb3InLCdib3Jk
ZXJCb3R0b21Db2xvcicsJ2JvcmRlckxlZnRDb2xvcicsJ2JvcmRlclJpZ2h0Q29s
b3InLCdib3JkZXJUb3BDb2xvcicsJ2NvbG9yJywnb3V0bGluZUNvbG9yJ10sZnVu
Y3Rpb24oaSxhdHRyKXtqUXVlcnkuZnguc3RlcFthdHRyXT1mdW5jdGlvbihmeCl7
aWYoZnguc3RhdGU9PTApe2Z4LnN0YXJ0PWdldENvbG9yKGZ4LmVsZW0sYXR0cik7
ZnguZW5kPWdldFJHQihmeC5lbmQpO30KZnguZWxlbS5zdHlsZVthdHRyXT0icmdi
KCIrW01hdGgubWF4KE1hdGgubWluKHBhcnNlSW50KChmeC5wb3MqKGZ4LmVuZFsw
XS1meC5zdGFydFswXSkpK2Z4LnN0YXJ0WzBdKSwyNTUpLDApLE1hdGgubWF4KE1h
dGgubWluKHBhcnNlSW50KChmeC5wb3MqKGZ4LmVuZFsxXS1meC5zdGFydFsxXSkp
K2Z4LnN0YXJ0WzFdKSwyNTUpLDApLE1hdGgubWF4KE1hdGgubWluKHBhcnNlSW50
KChmeC5wb3MqKGZ4LmVuZFsyXS1meC5zdGFydFsyXSkpK2Z4LnN0YXJ0WzJdKSwy
NTUpLDApXS5qb2luKCIsIikrIikiO319KTtmdW5jdGlvbiBnZXRSR0IoY29sb3Ip
e3ZhciByZXN1bHQ7aWYoY29sb3ImJmNvbG9yLmNvbnN0cnVjdG9yPT1BcnJheSYm
Y29sb3IubGVuZ3RoPT0zKQpyZXR1cm4gY29sb3I7aWYocmVzdWx0PS9yZ2JcKFxz
KihbMC05XXsxLDN9KVxzKixccyooWzAtOV17MSwzfSlccyosXHMqKFswLTldezEs
M30pXHMqXCkvLmV4ZWMoY29sb3IpKQpyZXR1cm5bcGFyc2VJbnQocmVzdWx0WzFd
KSxwYXJzZUludChyZXN1bHRbMl0pLHBhcnNlSW50KHJlc3VsdFszXSldO2lmKHJl
c3VsdD0vcmdiXChccyooWzAtOV0rKD86XC5bMC05XSspPylcJVxzKixccyooWzAt
OV0rKD86XC5bMC05XSspPylcJVxzKixccyooWzAtOV0rKD86XC5bMC05XSspPylc
JVxzKlwpLy5leGVjKGNvbG9yKSkKcmV0dXJuW3BhcnNlRmxvYXQocmVzdWx0WzFd
KSoyLjU1LHBhcnNlRmxvYXQocmVzdWx0WzJdKSoyLjU1LHBhcnNlRmxvYXQocmVz
dWx0WzNdKSoyLjU1XTtpZihyZXN1bHQ9LyMoW2EtZkEtRjAtOV17Mn0pKFthLWZB
LUYwLTldezJ9KShbYS1mQS1GMC05XXsyfSkvLmV4ZWMoY29sb3IpKQpyZXR1cm5b
cGFyc2VJbnQocmVzdWx0WzFdLDE2KSxwYXJzZUludChyZXN1bHRbMl0sMTYpLHBh
cnNlSW50KHJlc3VsdFszXSwxNildO2lmKHJlc3VsdD0vIyhbYS1mQS1GMC05XSko
W2EtZkEtRjAtOV0pKFthLWZBLUYwLTldKS8uZXhlYyhjb2xvcikpCnJldHVybltw
YXJzZUludChyZXN1bHRbMV0rcmVzdWx0WzFdLDE2KSxwYXJzZUludChyZXN1bHRb
Ml0rcmVzdWx0WzJdLDE2KSxwYXJzZUludChyZXN1bHRbM10rcmVzdWx0WzNdLDE2
KV07cmV0dXJuIGNvbG9yc1tqUXVlcnkudHJpbShjb2xvcikudG9Mb3dlckNhc2Uo
KV07fQpmdW5jdGlvbiBnZXRDb2xvcihlbGVtLGF0dHIpe3ZhciBjb2xvcjtkb3tj
b2xvcj1qUXVlcnkuY3VyQ1NTKGVsZW0sYXR0cik7aWYoY29sb3IhPScnJiZjb2xv
ciE9J3RyYW5zcGFyZW50J3x8alF1ZXJ5Lm5vZGVOYW1lKGVsZW0sImJvZHkiKSkK
YnJlYWs7YXR0cj0iYmFja2dyb3VuZENvbG9yIjt9d2hpbGUoZWxlbT1lbGVtLnBh
cmVudE5vZGUpO3JldHVybiBnZXRSR0IoY29sb3IpO307dmFyIGNvbG9ycz17YXF1
YTpbMCwyNTUsMjU1XSxhenVyZTpbMjQwLDI1NSwyNTVdLGJlaWdlOlsyNDUsMjQ1
LDIyMF0sYmxhY2s6WzAsMCwwXSxibHVlOlswLDAsMjU1XSxicm93bjpbMTY1LDQy
LDQyXSxjeWFuOlswLDI1NSwyNTVdLGRhcmtibHVlOlswLDAsMTM5XSxkYXJrY3lh
bjpbMCwxMzksMTM5XSxkYXJrZ3JleTpbMTY5LDE2OSwxNjldLGRhcmtncmVlbjpb
MCwxMDAsMF0sZGFya2toYWtpOlsxODksMTgzLDEwN10sZGFya21hZ2VudGE6WzEz
OSwwLDEzOV0sZGFya29saXZlZ3JlZW46Wzg1LDEwNyw0N10sZGFya29yYW5nZTpb
MjU1LDE0MCwwXSxkYXJrb3JjaGlkOlsxNTMsNTAsMjA0XSxkYXJrcmVkOlsxMzks
MCwwXSxkYXJrc2FsbW9uOlsyMzMsMTUwLDEyMl0sZGFya3Zpb2xldDpbMTQ4LDAs
MjExXSxmdWNoc2lhOlsyNTUsMCwyNTVdLGdvbGQ6WzI1NSwyMTUsMF0sZ3JlZW46
WzAsMTI4LDBdLGluZGlnbzpbNzUsMCwxMzBdLGtoYWtpOlsyNDAsMjMwLDE0MF0s
bGlnaHRibHVlOlsxNzMsMjE2LDIzMF0sbGlnaHRjeWFuOlsyMjQsMjU1LDI1NV0s
bGlnaHRncmVlbjpbMTQ0LDIzOCwxNDRdLGxpZ2h0Z3JleTpbMjExLDIxMSwyMTFd
LGxpZ2h0cGluazpbMjU1LDE4MiwxOTNdLGxpZ2h0eWVsbG93OlsyNTUsMjU1LDIy
NF0sbGltZTpbMCwyNTUsMF0sbWFnZW50YTpbMjU1LDAsMjU1XSxtYXJvb246WzEy
OCwwLDBdLG5hdnk6WzAsMCwxMjhdLG9saXZlOlsxMjgsMTI4LDBdLG9yYW5nZTpb
MjU1LDE2NSwwXSxwaW5rOlsyNTUsMTkyLDIwM10scHVycGxlOlsxMjgsMCwxMjhd
LHZpb2xldDpbMTI4LDAsMTI4XSxyZWQ6WzI1NSwwLDBdLHNpbHZlcjpbMTkyLDE5
MiwxOTJdLHdoaXRlOlsyNTUsMjU1LDI1NV0seWVsbG93OlsyNTUsMjU1LDBdfTt9
KShqUXVlcnkpO2pRdWVyeS5jb29raWU9ZnVuY3Rpb24obmFtZSx2YWx1ZSxvcHRp
b25zKXtpZih0eXBlb2YgdmFsdWUhPSd1bmRlZmluZWQnKXtvcHRpb25zPW9wdGlv
bnN8fHt9O2lmKHZhbHVlPT09bnVsbCl7dmFsdWU9Jyc7b3B0aW9ucy5leHBpcmVz
PS0xO30KdmFyIGV4cGlyZXM9Jyc7aWYob3B0aW9ucy5leHBpcmVzJiYodHlwZW9m
IG9wdGlvbnMuZXhwaXJlcz09J251bWJlcid8fG9wdGlvbnMuZXhwaXJlcy50b1VU
Q1N0cmluZykpe3ZhciBkYXRlO2lmKHR5cGVvZiBvcHRpb25zLmV4cGlyZXM9PSdu
dW1iZXInKXtkYXRlPW5ldyBEYXRlKCk7ZGF0ZS5zZXRUaW1lKGRhdGUuZ2V0VGlt
ZSgpKyhvcHRpb25zLmV4cGlyZXMqMjQqNjAqNjAqMTAwMCkpO31lbHNle2RhdGU9
b3B0aW9ucy5leHBpcmVzO30KZXhwaXJlcz0nOyBleHBpcmVzPScrZGF0ZS50b1VU
Q1N0cmluZygpO30KdmFyIHBhdGg9b3B0aW9ucy5wYXRoPyc7IHBhdGg9Jysob3B0
aW9ucy5wYXRoKTonJzt2YXIgZG9tYWluPW9wdGlvbnMuZG9tYWluPyc7IGRvbWFp
bj0nKyhvcHRpb25zLmRvbWFpbik6Jyc7dmFyIHNlY3VyZT1vcHRpb25zLnNlY3Vy
ZT8nOyBzZWN1cmUnOicnO2RvY3VtZW50LmNvb2tpZT1bbmFtZSwnPScsZW5jb2Rl
VVJJQ29tcG9uZW50KHZhbHVlKSxleHBpcmVzLHBhdGgsZG9tYWluLHNlY3VyZV0u
am9pbignJyk7fWVsc2V7dmFyIGNvb2tpZVZhbHVlPW51bGw7aWYoZG9jdW1lbnQu
Y29va2llJiZkb2N1bWVudC5jb29raWUhPScnKXt2YXIgY29va2llcz1kb2N1bWVu
dC5jb29raWUuc3BsaXQoJzsnKTtmb3IodmFyIGk9MDtpPGNvb2tpZXMubGVuZ3Ro
O2krKyl7dmFyIGNvb2tpZT1qUXVlcnkudHJpbShjb29raWVzW2ldKTtpZihjb29r
aWUuc3Vic3RyaW5nKDAsbmFtZS5sZW5ndGgrMSk9PShuYW1lKyc9Jykpe2Nvb2tp
ZVZhbHVlPWRlY29kZVVSSUNvbXBvbmVudChjb29raWUuc3Vic3RyaW5nKG5hbWUu
bGVuZ3RoKzEpKTticmVhazt9fX0KcmV0dXJuIGNvb2tpZVZhbHVlO319OyhmdW5j
dGlvbigkKXtmdW5jdGlvbiBlbmNvZGVFdmVudChldmVudCl7cmV0dXJuIGV2ZW50
LnJlcGxhY2UoLy0vZywnLS0nKS5yZXBsYWNlKC8gL2csJy0nKTt9CiQuZm4uZXh0
ZW5kKHtkZWxheWVkQmluZDpmdW5jdGlvbih0aW1lb3V0LGV2ZW50LGRhdGEsY2Fs
bGJhY2spe3ZhciBlbmNFdmVudD1lbmNvZGVFdmVudChldmVudCk7cmV0dXJuIHRo
aXMuZWFjaChmdW5jdGlvbigpe3ZhciB0aGF0PXRoaXM7aWYoISgkKHRoaXMpLmRh
dGEoJ19kZWxheWVkQmluZEJvdW5kLScrZW5jRXZlbnQrJy0nK3RpbWVvdXQpKSl7
JCh0aGlzKS5kYXRhKCdfZGVsYXllZEJpbmRCb3VuZC0nK2VuY0V2ZW50KyctJyt0
aW1lb3V0LHRydWUpOyQodGhpcykuYmluZChldmVudCxmdW5jdGlvbigpe3ZhciB0
aW1lcklEPSQodGhpcykuZGF0YSgnX2RlbGF5ZWRCaW5kVGltZXJJRC0nK2VuY0V2
ZW50KyctJyt0aW1lb3V0KTtpZih0eXBlb2YgdGltZXJJRCE9J3VuZGVmaW5lZCcp
CmNsZWFyVGltZW91dCh0aW1lcklEKTt0aW1lcklEPXNldFRpbWVvdXQoZnVuY3Rp
b24oKXskKHRoYXQpLnRyaWdnZXIoJ19kZWxheWVkQmluZC0nK2VuY0V2ZW50Kyct
Jyt0aW1lb3V0KTt9LHRpbWVvdXQpOyQodGhpcykuZGF0YSgnX2RlbGF5ZWRCaW5k
VGltZXJJRC0nK2VuY0V2ZW50KyctJyt0aW1lb3V0LHRpbWVySUQpO30pO30KJCh0
aGlzKS5iaW5kKCdfZGVsYXllZEJpbmQtJytlbmNFdmVudCsnLScrdGltZW91dCxk
YXRhLGNhbGxiYWNrKTt9KTt9LGRlbGF5ZWRCaW5kQ2FuY2VsOmZ1bmN0aW9uKHRp
bWVvdXQsZXZlbnQpe3ZhciBlbmNFdmVudD1lbmNvZGVFdmVudChldmVudCk7cmV0
dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0aW1lcklEPSQodGhpcykuZGF0
YSgnX2RlbGF5ZWRCaW5kVGltZXJJRC0nK2VuY0V2ZW50KyctJyt0aW1lb3V0KTtp
Zih0eXBlb2YgdGltZXJJRCE9J3VuZGVmaW5lZCcpCmNsZWFyVGltZW91dCh0aW1l
cklEKTt9KTt9LGRlbGF5ZWRCaW5kVW5iaW5kOmZ1bmN0aW9uKHRpbWVvdXQsZXZl
bnQsY2FsbGJhY2spe3ZhciBlbmNFdmVudD1lbmNvZGVFdmVudChldmVudCk7cmV0
dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpeyQodGhpcykudW5iaW5kKCdfZGVsYXll
ZEJpbmQtJytlbmNFdmVudCsnLScrdGltZW91dCxjYWxsYmFjayk7fSk7fX0pO30p
KGpRdWVyeSk7KGZ1bmN0aW9uKCQpeyQuaGlnaGxpZ2h0VGV4dD17c3BsaXRBbmRI
aWdobGlnaHQ6ZnVuY3Rpb24obm9kZSxwYXQpe3ZhciBwYXRBcnJheT1wYXQuc3Bs
aXQoIiAiKTtmb3IodmFyIGk9MDtpPHBhdEFycmF5Lmxlbmd0aDtpKyspe2lmKHBh
dEFycmF5W2ldLmxlbmd0aD09MCljb250aW51ZTskLmhpZ2hsaWdodFRleHQuaW5u
ZXJIaWdobGlnaHQobm9kZSxwYXRBcnJheVtpXSk7fQpyZXR1cm4gbm9kZTt9LGlu
bmVySGlnaGxpZ2h0OmZ1bmN0aW9uKG5vZGUscGF0KXtpZihub2RlLm5vZGVUeXBl
PT0zKXt2YXIgcG9zPW5vZGUuZGF0YS5zZWFyY2gobmV3IFJlZ0V4cCgiXFxiIitS
ZWdFeHAuZXNjYXBlKHBhdCksImkiKSk7aWYocG9zPj0wKXt2YXIgc3Bhbm5vZGU9
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO3NwYW5ub2RlLmNsYXNzTmFt
ZT0naGlnaGxpZ2h0Jzt2YXIgbWlkZGxlYml0PW5vZGUuc3BsaXRUZXh0KHBvcyk7
bWlkZGxlYml0LnNwbGl0VGV4dChwYXQubGVuZ3RoKTt2YXIgbWlkZGxlY2xvbmU9
bWlkZGxlYml0LmNsb25lTm9kZSh0cnVlKTtzcGFubm9kZS5hcHBlbmRDaGlsZCht
aWRkbGVjbG9uZSk7bWlkZGxlYml0LnBhcmVudE5vZGUucmVwbGFjZUNoaWxkKHNw
YW5ub2RlLG1pZGRsZWJpdCk7fX1lbHNlIGlmKG5vZGUubm9kZVR5cGU9PTEmJm5v
ZGUuY2hpbGROb2RlcyYmIS8oc2NyaXB0fHN0eWxlKS9pLnRlc3Qobm9kZS50YWdO
YW1lKSYmIShub2RlLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09J3NwYW4nJiZub2Rl
LmNsYXNzTmFtZS5tYXRjaCgvXGJoaWdobGlnaHQvKSkpe2Zvcih2YXIgaT0wO2k8
bm9kZS5jaGlsZE5vZGVzLmxlbmd0aDsrK2kpeyQuaGlnaGxpZ2h0VGV4dC5pbm5l
ckhpZ2hsaWdodChub2RlLmNoaWxkTm9kZXNbaV0scGF0KTt9fX19OyQuZm4uaGln
aGxpZ2h0VGV4dD1mdW5jdGlvbihtYXRjaFN0cmluZyl7cmV0dXJuICQodGhpcyku
ZWFjaChmdW5jdGlvbigpe3ZhciAkdGhpcz0kKHRoaXMpOyR0aGlzLmRhdGEoJ2hp
Z2hsaWdodFRleHQnLHtvcmlnaW5hbFRleHQ6JHRoaXMudGV4dCgpfSk7JC5oaWdo
bGlnaHRUZXh0LnNwbGl0QW5kSGlnaGxpZ2h0KHRoaXMsbWF0Y2hTdHJpbmcpO30p
O307fSkoalF1ZXJ5KTsoZnVuY3Rpb24oJCl7JC5zdWdnZXN0aW9ucz17Y2FuY2Vs
OmZ1bmN0aW9uKGNvbnRleHQpe2lmKGNvbnRleHQuZGF0YS50aW1lcklEIT1udWxs
KXtjbGVhclRpbWVvdXQoY29udGV4dC5kYXRhLnRpbWVySUQpO30KaWYodHlwZW9m
IGNvbnRleHQuY29uZmlnLmNhbmNlbD09J2Z1bmN0aW9uJyl7Y29udGV4dC5jb25m
aWcuY2FuY2VsLmNhbGwoY29udGV4dC5kYXRhLiR0ZXh0Ym94KTt9fSxyZXN0b3Jl
OmZ1bmN0aW9uKGNvbnRleHQpe2NvbnRleHQuZGF0YS4kdGV4dGJveC52YWwoY29u
dGV4dC5kYXRhLnByZXZUZXh0KTt9LHVwZGF0ZTpmdW5jdGlvbihjb250ZXh0LGRl
bGF5ZWQpe2Z1bmN0aW9uIG1heWJlRmV0Y2goKXtpZihjb250ZXh0LmRhdGEuJHRl
eHRib3gudmFsKCkhPT1jb250ZXh0LmRhdGEucHJldlRleHQpe2NvbnRleHQuZGF0
YS5wcmV2VGV4dD1jb250ZXh0LmRhdGEuJHRleHRib3gudmFsKCk7aWYodHlwZW9m
IGNvbnRleHQuY29uZmlnLmZldGNoPT0nZnVuY3Rpb24nKXtjb250ZXh0LmNvbmZp
Zy5mZXRjaC5jYWxsKGNvbnRleHQuZGF0YS4kdGV4dGJveCxjb250ZXh0LmRhdGEu
JHRleHRib3gudmFsKCkpO319fQppZihjb250ZXh0LmRhdGEudGltZXJJRCE9bnVs
bCl7Y2xlYXJUaW1lb3V0KGNvbnRleHQuZGF0YS50aW1lcklEKTt9CmlmKGRlbGF5
ZWQpe2NvbnRleHQuZGF0YS50aW1lcklEPXNldFRpbWVvdXQobWF5YmVGZXRjaCxj
b250ZXh0LmNvbmZpZy5kZWxheSk7fWVsc2V7bWF5YmVGZXRjaCgpO30KJC5zdWdn
ZXN0aW9ucy5zcGVjaWFsKGNvbnRleHQpO30sc3BlY2lhbDpmdW5jdGlvbihjb250
ZXh0KXtpZih0eXBlb2YgY29udGV4dC5jb25maWcuc3BlY2lhbC5yZW5kZXI9PSdm
dW5jdGlvbicpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXskc3BlY2lhbD1jb250ZXh0
LmRhdGEuJGNvbnRhaW5lci5maW5kKCcuc3VnZ2VzdGlvbnMtc3BlY2lhbCcpO2Nv
bnRleHQuY29uZmlnLnNwZWNpYWwucmVuZGVyLmNhbGwoJHNwZWNpYWwsY29udGV4
dC5kYXRhLiR0ZXh0Ym94LnZhbCgpKTt9LDEpO319LGNvbmZpZ3VyZTpmdW5jdGlv
bihjb250ZXh0LHByb3BlcnR5LHZhbHVlKXtzd2l0Y2gocHJvcGVydHkpe2Nhc2Un
ZmV0Y2gnOmNhc2UnY2FuY2VsJzpjYXNlJ3NwZWNpYWwnOmNhc2UncmVzdWx0Jzpj
YXNlJyRyZWdpb24nOmNvbnRleHQuY29uZmlnW3Byb3BlcnR5XT12YWx1ZTticmVh
aztjYXNlJ3N1Z2dlc3Rpb25zJzpjb250ZXh0LmNvbmZpZ1twcm9wZXJ0eV09dmFs
dWU7aWYodHlwZW9mIGNvbnRleHQuZGF0YSE9PSd1bmRlZmluZWQnKXtpZihjb250
ZXh0LmRhdGEuJHRleHRib3gudmFsKCkubGVuZ3RoPT0wKXtjb250ZXh0LmRhdGEu
JGNvbnRhaW5lci5oaWRlKCk7fWVsc2V7Y29udGV4dC5kYXRhLiRjb250YWluZXIu
c2hvdygpO3ZhciBuZXdDU1M9eyd0b3AnOmNvbnRleHQuY29uZmlnLiRyZWdpb24u
b2Zmc2V0KCkudG9wK2NvbnRleHQuY29uZmlnLiRyZWdpb24ub3V0ZXJIZWlnaHQo
KSwnYm90dG9tJzonYXV0bycsJ3dpZHRoJzpjb250ZXh0LmNvbmZpZy4kcmVnaW9u
Lm91dGVyV2lkdGgoKSwnaGVpZ2h0JzonYXV0byd9CmlmKGNvbnRleHQuY29uZmln
LnBvc2l0aW9uRnJvbUxlZnQpe25ld0NTU1snbGVmdCddPWNvbnRleHQuY29uZmln
LiRyZWdpb24ub2Zmc2V0KCkubGVmdDtuZXdDU1NbJ3JpZ2h0J109J2F1dG8nO31l
bHNle25ld0NTU1snbGVmdCddPSdhdXRvJztuZXdDU1NbJ3JpZ2h0J109JCgnYm9k
eScpLndpZHRoKCktKGNvbnRleHQuY29uZmlnLiRyZWdpb24ub2Zmc2V0KCkubGVm
dCtjb250ZXh0LmNvbmZpZy4kcmVnaW9uLm91dGVyV2lkdGgoKSk7fQpjb250ZXh0
LmRhdGEuJGNvbnRhaW5lci5jc3MobmV3Q1NTKTt2YXIgJHJlc3VsdHM9Y29udGV4
dC5kYXRhLiRjb250YWluZXIuY2hpbGRyZW4oJy5zdWdnZXN0aW9ucy1yZXN1bHRz
Jyk7JHJlc3VsdHMuZW1wdHkoKTt2YXIgZXhwV2lkdGg9LTE7dmFyICRhdXRvRWxs
aXBzZU1lPSQoW10pO3ZhciBtYXRjaGVkVGV4dD1udWxsO2Zvcih2YXIgaT0wO2k8
Y29udGV4dC5jb25maWcuc3VnZ2VzdGlvbnMubGVuZ3RoO2krKyl7dmFyIHRleHQ9
Y29udGV4dC5jb25maWcuc3VnZ2VzdGlvbnNbaV07dmFyICRyZXN1bHQ9JCgnPGRp
diAvPicpLmFkZENsYXNzKCdzdWdnZXN0aW9ucy1yZXN1bHQnKS5hdHRyKCdyZWwn
LGkpLmRhdGEoJ3RleHQnLGNvbnRleHQuY29uZmlnLnN1Z2dlc3Rpb25zW2ldKS5t
b3VzZW1vdmUoZnVuY3Rpb24oZSl7Y29udGV4dC5kYXRhLnNlbGVjdGVkV2l0aE1v
dXNlPXRydWU7JC5zdWdnZXN0aW9ucy5oaWdobGlnaHQoY29udGV4dCwkKHRoaXMp
LmNsb3Nlc3QoJy5zdWdnZXN0aW9ucy1yZXN1bHRzIGRpdicpLGZhbHNlKTt9KS5h
cHBlbmRUbygkcmVzdWx0cyk7aWYodHlwZW9mIGNvbnRleHQuY29uZmlnLnJlc3Vs
dC5yZW5kZXI9PSdmdW5jdGlvbicpe2NvbnRleHQuY29uZmlnLnJlc3VsdC5yZW5k
ZXIuY2FsbCgkcmVzdWx0LGNvbnRleHQuY29uZmlnLnN1Z2dlc3Rpb25zW2ldKTt9
ZWxzZXtpZihjb250ZXh0LmNvbmZpZy5oaWdobGlnaHRJbnB1dCl7bWF0Y2hlZFRl
eHQ9Y29udGV4dC5kYXRhLnByZXZUZXh0O30KJHJlc3VsdC5hcHBlbmQoJCgnPHNw
YW4gLz4nKS5jc3MoJ3doaXRlU3BhY2UnLCdub3dyYXAnKS50ZXh0KHRleHQpKTt2
YXIgJHNwYW49JHJlc3VsdC5jaGlsZHJlbignc3BhbicpO2lmKCRzcGFuLm91dGVy
V2lkdGgoKT4kcmVzdWx0LndpZHRoKCkmJiRzcGFuLm91dGVyV2lkdGgoKT5leHBX
aWR0aCl7ZXhwV2lkdGg9JHNwYW4ub3V0ZXJXaWR0aCgpKyhjb250ZXh0LmRhdGEu
JGNvbnRhaW5lci53aWR0aCgpLSRzcGFuLnBhcmVudCgpLndpZHRoKCkpO30KJGF1
dG9FbGxpcHNlTWU9JGF1dG9FbGxpcHNlTWUuYWRkKCRyZXN1bHQpO319CmlmKGV4
cFdpZHRoPmNvbnRleHQuZGF0YS4kY29udGFpbmVyLndpZHRoKCkpe3ZhciBtYXhX
aWR0aD1jb250ZXh0LmNvbmZpZy5tYXhFeHBhbmRGYWN0b3IqY29udGV4dC5kYXRh
LiR0ZXh0Ym94LndpZHRoKCk7Y29udGV4dC5kYXRhLiRjb250YWluZXIud2lkdGgo
TWF0aC5taW4oZXhwV2lkdGgsbWF4V2lkdGgpKTt9CiRhdXRvRWxsaXBzZU1lLmF1
dG9FbGxpcHNpcyh7aGFzU3Bhbjp0cnVlLHRvb2x0aXA6dHJ1ZSxtYXRjaFRleHQ6
bWF0Y2hlZFRleHR9KTt9fQpicmVhaztjYXNlJ21heFJvd3MnOmNvbnRleHQuY29u
ZmlnW3Byb3BlcnR5XT1NYXRoLm1heCgxLE1hdGgubWluKDEwMCx2YWx1ZSkpO2Jy
ZWFrO2Nhc2UnZGVsYXknOmNvbnRleHQuY29uZmlnW3Byb3BlcnR5XT1NYXRoLm1h
eCgwLE1hdGgubWluKDEyMDAsdmFsdWUpKTticmVhaztjYXNlJ21heEV4cGFuZEZh
Y3Rvcic6Y29udGV4dC5jb25maWdbcHJvcGVydHldPU1hdGgubWF4KDEsdmFsdWUp
O2JyZWFrO2Nhc2Unc3VibWl0T25DbGljayc6Y2FzZSdwb3NpdGlvbkZyb21MZWZ0
JzpjYXNlJ2hpZ2hsaWdodElucHV0Jzpjb250ZXh0LmNvbmZpZ1twcm9wZXJ0eV09
dmFsdWU/dHJ1ZTpmYWxzZTticmVhazt9fSxoaWdobGlnaHQ6ZnVuY3Rpb24oY29u
dGV4dCxyZXN1bHQsdXBkYXRlVGV4dGJveCl7dmFyIHNlbGVjdGVkPWNvbnRleHQu
ZGF0YS4kY29udGFpbmVyLmZpbmQoJy5zdWdnZXN0aW9ucy1yZXN1bHQtY3VycmVu
dCcpO2lmKCFyZXN1bHQuZ2V0fHxzZWxlY3RlZC5nZXQoMCkhPXJlc3VsdC5nZXQo
MCkpe2lmKHJlc3VsdD09J3ByZXYnKXtpZihzZWxlY3RlZC5pcygnLnN1Z2dlc3Rp
b25zLXNwZWNpYWwnKSl7cmVzdWx0PWNvbnRleHQuZGF0YS4kY29udGFpbmVyLmZp
bmQoJy5zdWdnZXN0aW9ucy1yZXN1bHQ6bGFzdCcpfWVsc2V7cmVzdWx0PXNlbGVj
dGVkLnByZXYoKTtpZihzZWxlY3RlZC5sZW5ndGg9PTApe2lmKGNvbnRleHQuZGF0
YS4kY29udGFpbmVyLmZpbmQoJy5zdWdnZXN0aW9ucy1zcGVjaWFsJykuaHRtbCgp
IT0iIil7cmVzdWx0PWNvbnRleHQuZGF0YS4kY29udGFpbmVyLmZpbmQoJy5zdWdn
ZXN0aW9ucy1zcGVjaWFsJyk7fWVsc2V7cmVzdWx0PWNvbnRleHQuZGF0YS4kY29u
dGFpbmVyLmZpbmQoJy5zdWdnZXN0aW9ucy1yZXN1bHRzIGRpdjpsYXN0Jyk7fX19
fWVsc2UgaWYocmVzdWx0PT0nbmV4dCcpe2lmKHNlbGVjdGVkLmxlbmd0aD09MCl7
cmVzdWx0PWNvbnRleHQuZGF0YS4kY29udGFpbmVyLmZpbmQoJy5zdWdnZXN0aW9u
cy1yZXN1bHRzIGRpdjpmaXJzdCcpO2lmKHJlc3VsdC5sZW5ndGg9PTAmJmNvbnRl
eHQuZGF0YS4kY29udGFpbmVyLmZpbmQoJy5zdWdnZXN0aW9ucy1zcGVjaWFsJyku
aHRtbCgpIT0iIil7cmVzdWx0PWNvbnRleHQuZGF0YS4kY29udGFpbmVyLmZpbmQo
Jy5zdWdnZXN0aW9ucy1zcGVjaWFsJyk7fX1lbHNle3Jlc3VsdD1zZWxlY3RlZC5u
ZXh0KCk7aWYoc2VsZWN0ZWQuaXMoJy5zdWdnZXN0aW9ucy1zcGVjaWFsJykpe3Jl
c3VsdD0kKFtdKTt9ZWxzZSBpZihyZXN1bHQubGVuZ3RoPT0wJiZjb250ZXh0LmRh
dGEuJGNvbnRhaW5lci5maW5kKCcuc3VnZ2VzdGlvbnMtc3BlY2lhbCcpLmh0bWwo
KSE9IiIpe3Jlc3VsdD1jb250ZXh0LmRhdGEuJGNvbnRhaW5lci5maW5kKCcuc3Vn
Z2VzdGlvbnMtc3BlY2lhbCcpO319fQpzZWxlY3RlZC5yZW1vdmVDbGFzcygnc3Vn
Z2VzdGlvbnMtcmVzdWx0LWN1cnJlbnQnKTtyZXN1bHQuYWRkQ2xhc3MoJ3N1Z2dl
c3Rpb25zLXJlc3VsdC1jdXJyZW50Jyk7fQppZih1cGRhdGVUZXh0Ym94KXtpZihy
ZXN1bHQubGVuZ3RoPT0wfHxyZXN1bHQuaXMoJy5zdWdnZXN0aW9ucy1zcGVjaWFs
JykpeyQuc3VnZ2VzdGlvbnMucmVzdG9yZShjb250ZXh0KTt9ZWxzZXtjb250ZXh0
LmRhdGEuJHRleHRib3gudmFsKHJlc3VsdC5kYXRhKCd0ZXh0JykpO2NvbnRleHQu
ZGF0YS4kdGV4dGJveC5jaGFuZ2UoKTt9CmNvbnRleHQuZGF0YS4kdGV4dGJveC50
cmlnZ2VyKCdjaGFuZ2UnKTt9fSxrZXlwcmVzczpmdW5jdGlvbihlLGNvbnRleHQs
a2V5KXt2YXIgd2FzVmlzaWJsZT1jb250ZXh0LmRhdGEuJGNvbnRhaW5lci5pcygn
OnZpc2libGUnKTt2YXIgcHJldmVudERlZmF1bHQ9ZmFsc2U7c3dpdGNoKGtleSl7
Y2FzZSA0MDppZih3YXNWaXNpYmxlKXskLnN1Z2dlc3Rpb25zLmhpZ2hsaWdodChj
b250ZXh0LCduZXh0Jyx0cnVlKTtjb250ZXh0LmRhdGEuc2VsZWN0ZWRXaXRoTW91
c2U9ZmFsc2U7fWVsc2V7JC5zdWdnZXN0aW9ucy51cGRhdGUoY29udGV4dCxmYWxz
ZSk7fQpwcmV2ZW50RGVmYXVsdD10cnVlO2JyZWFrO2Nhc2UgMzg6aWYod2FzVmlz
aWJsZSl7JC5zdWdnZXN0aW9ucy5oaWdobGlnaHQoY29udGV4dCwncHJldicsdHJ1
ZSk7Y29udGV4dC5kYXRhLnNlbGVjdGVkV2l0aE1vdXNlPWZhbHNlO30KcHJldmVu
dERlZmF1bHQ9d2FzVmlzaWJsZTticmVhaztjYXNlIDI3OmNvbnRleHQuZGF0YS4k
Y29udGFpbmVyLmhpZGUoKTskLnN1Z2dlc3Rpb25zLnJlc3RvcmUoY29udGV4dCk7
JC5zdWdnZXN0aW9ucy5jYW5jZWwoY29udGV4dCk7Y29udGV4dC5kYXRhLiR0ZXh0
Ym94LnRyaWdnZXIoJ2NoYW5nZScpO3ByZXZlbnREZWZhdWx0PXdhc1Zpc2libGU7
YnJlYWs7Y2FzZSAxMzpjb250ZXh0LmRhdGEuJGNvbnRhaW5lci5oaWRlKCk7cHJl
dmVudERlZmF1bHQ9d2FzVmlzaWJsZTtzZWxlY3RlZD1jb250ZXh0LmRhdGEuJGNv
bnRhaW5lci5maW5kKCcuc3VnZ2VzdGlvbnMtcmVzdWx0LWN1cnJlbnQnKTtpZihz
ZWxlY3RlZC5zaXplKCk9PTB8fGNvbnRleHQuZGF0YS5zZWxlY3RlZFdpdGhNb3Vz
ZSl7JC5zdWdnZXN0aW9ucy5jYW5jZWwoY29udGV4dCk7Y29udGV4dC5jb25maWcu
JHJlZ2lvbi5jbG9zZXN0KCdmb3JtJykuc3VibWl0KCk7fWVsc2UgaWYoc2VsZWN0
ZWQuaXMoJy5zdWdnZXN0aW9ucy1zcGVjaWFsJykpe2lmKHR5cGVvZiBjb250ZXh0
LmNvbmZpZy5zcGVjaWFsLnNlbGVjdD09J2Z1bmN0aW9uJyl7Y29udGV4dC5jb25m
aWcuc3BlY2lhbC5zZWxlY3QuY2FsbChzZWxlY3RlZCxjb250ZXh0LmRhdGEuJHRl
eHRib3gpO319ZWxzZXtpZih0eXBlb2YgY29udGV4dC5jb25maWcucmVzdWx0LnNl
bGVjdD09J2Z1bmN0aW9uJyl7JC5zdWdnZXN0aW9ucy5oaWdobGlnaHQoY29udGV4
dCxzZWxlY3RlZCx0cnVlKTtjb250ZXh0LmNvbmZpZy5yZXN1bHQuc2VsZWN0LmNh
bGwoc2VsZWN0ZWQsY29udGV4dC5kYXRhLiR0ZXh0Ym94KTt9ZWxzZXskLnN1Z2dl
c3Rpb25zLmhpZ2hsaWdodChjb250ZXh0LHNlbGVjdGVkLHRydWUpO319CmJyZWFr
O2RlZmF1bHQ6JC5zdWdnZXN0aW9ucy51cGRhdGUoY29udGV4dCx0cnVlKTticmVh
azt9CmlmKHByZXZlbnREZWZhdWx0KXtlLnByZXZlbnREZWZhdWx0KCk7ZS5zdG9w
SW1tZWRpYXRlUHJvcGFnYXRpb24oKTt9fX07JC5mbi5zdWdnZXN0aW9ucz1mdW5j
dGlvbigpe3ZhciByZXR1cm5WYWx1ZT1udWxsO3ZhciBhcmdzPWFyZ3VtZW50czsk
KHRoaXMpLmVhY2goZnVuY3Rpb24oKXt2YXIgY29udGV4dD0kKHRoaXMpLmRhdGEo
J3N1Z2dlc3Rpb25zLWNvbnRleHQnKTtpZih0eXBlb2YgY29udGV4dD09J3VuZGVm
aW5lZCd8fGNvbnRleHQ9PW51bGwpe2NvbnRleHQ9e2NvbmZpZzp7J2ZldGNoJzpm
dW5jdGlvbigpe30sJ2NhbmNlbCc6ZnVuY3Rpb24oKXt9LCdzcGVjaWFsJzp7fSwn
cmVzdWx0Jzp7fSwnJHJlZ2lvbic6JCh0aGlzKSwnc3VnZ2VzdGlvbnMnOltdLCdt
YXhSb3dzJzo3LCdkZWxheSc6MTIwLCdzdWJtaXRPbkNsaWNrJzpmYWxzZSwnbWF4
RXhwYW5kRmFjdG9yJzozLCdwb3NpdGlvbkZyb21MZWZ0Jzp0cnVlLCdoaWdobGln
aHRJbnB1dCc6ZmFsc2V9fTt9CmlmKGFyZ3MubGVuZ3RoPjApe2lmKHR5cGVvZiBh
cmdzWzBdPT0nb2JqZWN0Jyl7Zm9yKHZhciBrZXkgaW4gYXJnc1swXSl7JC5zdWdn
ZXN0aW9ucy5jb25maWd1cmUoY29udGV4dCxrZXksYXJnc1swXVtrZXldKTt9fWVs
c2UgaWYodHlwZW9mIGFyZ3NbMF09PSdzdHJpbmcnKXtpZihhcmdzLmxlbmd0aD4x
KXskLnN1Z2dlc3Rpb25zLmNvbmZpZ3VyZShjb250ZXh0LGFyZ3NbMF0sYXJnc1sx
XSk7fWVsc2UgaWYocmV0dXJuVmFsdWU9PW51bGwpe3JldHVyblZhbHVlPShhcmdz
WzBdaW4gY29udGV4dC5jb25maWc/dW5kZWZpbmVkOmNvbnRleHQuY29uZmlnW2Fy
Z3NbMF1dKTt9fX0KaWYodHlwZW9mIGNvbnRleHQuZGF0YT09J3VuZGVmaW5lZCcp
e2NvbnRleHQuZGF0YT17J3RpbWVySUQnOm51bGwsJ3ByZXZUZXh0JzpudWxsLCd2
aXNpYmxlUmVzdWx0cyc6MCwnbW91c2VEb3duT24nOiQoW10pLCckdGV4dGJveCc6
JCh0aGlzKSwnc2VsZWN0ZWRXaXRoTW91c2UnOmZhbHNlfTt2YXIgbmV3Q1NTPXsn
dG9wJzpNYXRoLnJvdW5kKGNvbnRleHQuZGF0YS4kdGV4dGJveC5vZmZzZXQoKS50
b3ArY29udGV4dC5kYXRhLiR0ZXh0Ym94Lm91dGVySGVpZ2h0KCkpLCd3aWR0aCc6
Y29udGV4dC5kYXRhLiR0ZXh0Ym94Lm91dGVyV2lkdGgoKSwnZGlzcGxheSc6J25v
bmUnfQppZihjb250ZXh0LmNvbmZpZy5wb3NpdGlvbkZyb21MZWZ0KXtuZXdDU1Nb
J2xlZnQnXT1jb250ZXh0LmNvbmZpZy4kcmVnaW9uLm9mZnNldCgpLmxlZnQ7bmV3
Q1NTWydyaWdodCddPSdhdXRvJzt9ZWxzZXtuZXdDU1NbJ2xlZnQnXT0nYXV0byc7
bmV3Q1NTWydyaWdodCddPSQoJ2JvZHknKS53aWR0aCgpLShjb250ZXh0LmNvbmZp
Zy4kcmVnaW9uLm9mZnNldCgpLmxlZnQrY29udGV4dC5jb25maWcuJHJlZ2lvbi5v
dXRlcldpZHRoKCkpO30KY29udGV4dC5kYXRhLiRjb250YWluZXI9JCgnPGRpdiAv
PicpLmNzcyhuZXdDU1MpLmFkZENsYXNzKCdzdWdnZXN0aW9ucycpLmFwcGVuZCgk
KCc8ZGl2IC8+JykuYWRkQ2xhc3MoJ3N1Z2dlc3Rpb25zLXJlc3VsdHMnKS5tb3Vz
ZWRvd24oZnVuY3Rpb24oZSl7Y29udGV4dC5kYXRhLm1vdXNlRG93bk9uPSQoZS50
YXJnZXQpLmNsb3Nlc3QoJy5zdWdnZXN0aW9ucy1yZXN1bHRzIGRpdicpO30pLm1v
dXNldXAoZnVuY3Rpb24oZSl7dmFyICRyZXN1bHQ9JChlLnRhcmdldCkuY2xvc2Vz
dCgnLnN1Z2dlc3Rpb25zLXJlc3VsdHMgZGl2Jyk7dmFyICRvdGhlcj1jb250ZXh0
LmRhdGEubW91c2VEb3duT247Y29udGV4dC5kYXRhLm1vdXNlRG93bk9uPSQoW10p
O2lmKCRyZXN1bHQuZ2V0KDApIT0kb3RoZXIuZ2V0KDApKXtyZXR1cm47fQokLnN1
Z2dlc3Rpb25zLmhpZ2hsaWdodChjb250ZXh0LCRyZXN1bHQsdHJ1ZSk7Y29udGV4
dC5kYXRhLiRjb250YWluZXIuaGlkZSgpO2lmKHR5cGVvZiBjb250ZXh0LmNvbmZp
Zy5yZXN1bHQuc2VsZWN0PT0nZnVuY3Rpb24nKXtjb250ZXh0LmNvbmZpZy5yZXN1
bHQuc2VsZWN0LmNhbGwoJHJlc3VsdCxjb250ZXh0LmRhdGEuJHRleHRib3gpO30K
Y29udGV4dC5kYXRhLiR0ZXh0Ym94LmZvY3VzKCk7fSkpLmFwcGVuZCgkKCc8ZGl2
IC8+JykuYWRkQ2xhc3MoJ3N1Z2dlc3Rpb25zLXNwZWNpYWwnKS5tb3VzZWRvd24o
ZnVuY3Rpb24oZSl7Y29udGV4dC5kYXRhLm1vdXNlRG93bk9uPSQoZS50YXJnZXQp
LmNsb3Nlc3QoJy5zdWdnZXN0aW9ucy1zcGVjaWFsJyk7fSkubW91c2V1cChmdW5j
dGlvbihlKXt2YXIgJHNwZWNpYWw9JChlLnRhcmdldCkuY2xvc2VzdCgnLnN1Z2dl
c3Rpb25zLXNwZWNpYWwnKTt2YXIgJG90aGVyPWNvbnRleHQuZGF0YS5tb3VzZURv
d25Pbjtjb250ZXh0LmRhdGEubW91c2VEb3duT249JChbXSk7aWYoJHNwZWNpYWwu
Z2V0KDApIT0kb3RoZXIuZ2V0KDApKXtyZXR1cm47fQpjb250ZXh0LmRhdGEuJGNv
bnRhaW5lci5oaWRlKCk7aWYodHlwZW9mIGNvbnRleHQuY29uZmlnLnNwZWNpYWwu
c2VsZWN0PT0nZnVuY3Rpb24nKXtjb250ZXh0LmNvbmZpZy5zcGVjaWFsLnNlbGVj
dC5jYWxsKCRzcGVjaWFsLGNvbnRleHQuZGF0YS4kdGV4dGJveCk7fQpjb250ZXh0
LmRhdGEuJHRleHRib3guZm9jdXMoKTt9KS5tb3VzZW1vdmUoZnVuY3Rpb24oZSl7
Y29udGV4dC5kYXRhLnNlbGVjdGVkV2l0aE1vdXNlPXRydWU7JC5zdWdnZXN0aW9u
cy5oaWdobGlnaHQoY29udGV4dCwkKGUudGFyZ2V0KS5jbG9zZXN0KCcuc3VnZ2Vz
dGlvbnMtc3BlY2lhbCcpLGZhbHNlKTt9KSkuYXBwZW5kVG8oJCgnYm9keScpKTsk
KHRoaXMpLmF0dHIoJ2F1dG9jb21wbGV0ZScsJ29mZicpLmtleWRvd24oZnVuY3Rp
b24oZSl7Y29udGV4dC5kYXRhLmtleXByZXNzZWQ9KGUua2V5Q29kZT09dW5kZWZp
bmVkKT9lLndoaWNoOmUua2V5Q29kZTtjb250ZXh0LmRhdGEua2V5cHJlc3NlZENv
dW50PTA7c3dpdGNoKGNvbnRleHQuZGF0YS5rZXlwcmVzc2VkKXtjYXNlIDQwOmUu
cHJldmVudERlZmF1bHQoKTtlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO2Jy
ZWFrO2Nhc2UgMzg6Y2FzZSAyNzpjYXNlIDEzOmlmKGNvbnRleHQuZGF0YS4kY29u
dGFpbmVyLmlzKCc6dmlzaWJsZScpKXtlLnByZXZlbnREZWZhdWx0KCk7ZS5zdG9w
SW1tZWRpYXRlUHJvcGFnYXRpb24oKTt9fX0pLmtleXByZXNzKGZ1bmN0aW9uKGUp
e2NvbnRleHQuZGF0YS5rZXlwcmVzc2VkQ291bnQrKzskLnN1Z2dlc3Rpb25zLmtl
eXByZXNzKGUsY29udGV4dCxjb250ZXh0LmRhdGEua2V5cHJlc3NlZCk7fSkua2V5
dXAoZnVuY3Rpb24oZSl7aWYoY29udGV4dC5kYXRhLmtleXByZXNzZWRDb3VudD09
MCl7JC5zdWdnZXN0aW9ucy5rZXlwcmVzcyhlLGNvbnRleHQsY29udGV4dC5kYXRh
LmtleXByZXNzZWQpO319KS5ibHVyKGZ1bmN0aW9uKCl7aWYoY29udGV4dC5kYXRh
Lm1vdXNlRG93bk9uLmxlbmd0aD4wKXtyZXR1cm47fQpjb250ZXh0LmRhdGEuJGNv
bnRhaW5lci5oaWRlKCk7JC5zdWdnZXN0aW9ucy5jYW5jZWwoY29udGV4dCk7fSk7
fQokKHRoaXMpLmRhdGEoJ3N1Z2dlc3Rpb25zLWNvbnRleHQnLGNvbnRleHQpO30p
O3JldHVybiByZXR1cm5WYWx1ZSE9PW51bGw/cmV0dXJuVmFsdWU6JCh0aGlzKTt9
O30pKGpRdWVyeSk7KGZ1bmN0aW9uKCQpeyQuZm4udGV4dFNlbGVjdGlvbj1mdW5j
dGlvbihjb21tYW5kLG9wdGlvbnMpe3ZhciBmbj17Z2V0Q29udGVudHM6ZnVuY3Rp
b24oKXtyZXR1cm4gdGhpcy52YWwoKTt9LGdldFNlbGVjdGlvbjpmdW5jdGlvbigp
e3ZhciBlPXRoaXMuZ2V0KDApO3ZhciByZXR2YWw9Jyc7aWYoJChlKS5pcygnOmhp
ZGRlbicpKXt9ZWxzZSBpZihkb2N1bWVudC5zZWxlY3Rpb24mJmRvY3VtZW50LnNl
bGVjdGlvbi5jcmVhdGVSYW5nZSl7ZS5mb2N1cygpO3ZhciByYW5nZT1kb2N1bWVu
dC5zZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKTtyZXR2YWw9cmFuZ2UudGV4dDt9ZWxz
ZSBpZihlLnNlbGVjdGlvblN0YXJ0fHxlLnNlbGVjdGlvblN0YXJ0PT0nMCcpe3Jl
dHZhbD1lLnZhbHVlLnN1YnN0cmluZyhlLnNlbGVjdGlvblN0YXJ0LGUuc2VsZWN0
aW9uRW5kKTt9CnJldHVybiByZXR2YWw7fSxlbmNhcHN1bGF0ZVNlbGVjdGlvbjpm
dW5jdGlvbihvcHRpb25zKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZnVu
Y3Rpb24gY2hlY2tTZWxlY3RlZFRleHQoKXtpZighc2VsVGV4dCl7c2VsVGV4dD1v
cHRpb25zLnBlcmk7aXNTYW1wbGU9dHJ1ZTt9ZWxzZSBpZihvcHRpb25zLnJlcGxh
Y2Upe3NlbFRleHQ9b3B0aW9ucy5wZXJpO31lbHNlIGlmKHNlbFRleHQuY2hhckF0
KHNlbFRleHQubGVuZ3RoLTEpPT0nICcpe3NlbFRleHQ9c2VsVGV4dC5zdWJzdHJp
bmcoMCxzZWxUZXh0Lmxlbmd0aC0xKTtvcHRpb25zLnBvc3QrPScgJzt9fQp2YXIg
aXNTYW1wbGU9ZmFsc2U7aWYodGhpcy5zdHlsZS5kaXNwbGF5PT0nbm9uZScpe31l
bHNlIGlmKHRoaXMuc2VsZWN0aW9uU3RhcnR8fHRoaXMuc2VsZWN0aW9uU3RhcnQ9
PScwJyl7JCh0aGlzKS5mb2N1cygpO3ZhciBzZWxUZXh0PSQodGhpcykudGV4dFNl
bGVjdGlvbignZ2V0U2VsZWN0aW9uJyk7dmFyIHN0YXJ0UG9zPXRoaXMuc2VsZWN0
aW9uU3RhcnQ7dmFyIGVuZFBvcz10aGlzLnNlbGVjdGlvbkVuZDt2YXIgc2Nyb2xs
VG9wPXRoaXMuc2Nyb2xsVG9wO2NoZWNrU2VsZWN0ZWRUZXh0KCk7aWYob3B0aW9u
cy5vd25saW5lKXtpZihzdGFydFBvcyE9MCYmdGhpcy52YWx1ZS5jaGFyQXQoc3Rh
cnRQb3MtMSkhPSJcbiIpe29wdGlvbnMucHJlPSJcbiIrb3B0aW9ucy5wcmU7fQpp
Zih0aGlzLnZhbHVlLmNoYXJBdChlbmRQb3MpIT0iXG4iKXtvcHRpb25zLnBvc3Qr
PSJcbiI7fX0KdGhpcy52YWx1ZT10aGlzLnZhbHVlLnN1YnN0cmluZygwLHN0YXJ0
UG9zKStvcHRpb25zLnByZStzZWxUZXh0K29wdGlvbnMucG9zdCsKdGhpcy52YWx1
ZS5zdWJzdHJpbmcoZW5kUG9zLHRoaXMudmFsdWUubGVuZ3RoKTt0aGlzLnNjcm9s
bFRvcD1zY3JvbGxUb3A7aWYod2luZG93Lm9wZXJhKXtvcHRpb25zLnByZT1vcHRp
b25zLnByZS5yZXBsYWNlKC9ccj9cbi9nLCJcclxuIik7c2VsVGV4dD1zZWxUZXh0
LnJlcGxhY2UoL1xyP1xuL2csIlxyXG4iKTtvcHRpb25zLnBvc3Q9b3B0aW9ucy5w
b3N0LnJlcGxhY2UoL1xyP1xuL2csIlxyXG4iKTt9CmlmKGlzU2FtcGxlJiZvcHRp
b25zLnNlbGVjdFBlcmkpe3RoaXMuc2VsZWN0aW9uU3RhcnQ9c3RhcnRQb3Mrb3B0
aW9ucy5wcmUubGVuZ3RoO3RoaXMuc2VsZWN0aW9uRW5kPXN0YXJ0UG9zK29wdGlv
bnMucHJlLmxlbmd0aCtzZWxUZXh0Lmxlbmd0aDt9ZWxzZXt0aGlzLnNlbGVjdGlv
blN0YXJ0PXN0YXJ0UG9zK29wdGlvbnMucHJlLmxlbmd0aCtzZWxUZXh0Lmxlbmd0
aCsKb3B0aW9ucy5wb3N0Lmxlbmd0aDt0aGlzLnNlbGVjdGlvbkVuZD10aGlzLnNl
bGVjdGlvblN0YXJ0O319ZWxzZSBpZihkb2N1bWVudC5zZWxlY3Rpb24mJmRvY3Vt
ZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSl7JCh0aGlzKS5mb2N1cygpO2lmKGNv
bnRleHQpe2NvbnRleHQuZm4ucmVzdG9yZVN0dWZmRm9ySUUoKTt9CnZhciBzZWxU
ZXh0PSQodGhpcykudGV4dFNlbGVjdGlvbignZ2V0U2VsZWN0aW9uJyk7dmFyIHNj
cm9sbFRvcD10aGlzLnNjcm9sbFRvcDt2YXIgcmFuZ2U9ZG9jdW1lbnQuc2VsZWN0
aW9uLmNyZWF0ZVJhbmdlKCk7aWYob3B0aW9ucy5vd25saW5lJiZyYW5nZS5tb3Zl
U3RhcnQpe3ZhciByYW5nZTI9ZG9jdW1lbnQuc2VsZWN0aW9uLmNyZWF0ZVJhbmdl
KCk7cmFuZ2UyLmNvbGxhcHNlKCk7cmFuZ2UyLm1vdmVTdGFydCgnY2hhcmFjdGVy
JywtMSk7aWYocmFuZ2UyLnRleHQhPSJcciImJnJhbmdlMi50ZXh0IT0iXG4iJiZy
YW5nZTIudGV4dCE9IiIpe29wdGlvbnMucHJlPSJcbiIrb3B0aW9ucy5wcmU7fQp2
YXIgcmFuZ2UzPWRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpO3Jhbmdl
My5jb2xsYXBzZShmYWxzZSk7cmFuZ2UzLm1vdmVFbmQoJ2NoYXJhY3RlcicsMSk7
aWYocmFuZ2UzLnRleHQhPSJcciImJnJhbmdlMy50ZXh0IT0iXG4iJiZyYW5nZTMu
dGV4dCE9IiIpe29wdGlvbnMucG9zdCs9IlxuIjt9fQpjaGVja1NlbGVjdGVkVGV4
dCgpO3JhbmdlLnRleHQ9b3B0aW9ucy5wcmUrc2VsVGV4dCtvcHRpb25zLnBvc3Q7
aWYoaXNTYW1wbGUmJm9wdGlvbnMuc2VsZWN0UGVyaSYmcmFuZ2UubW92ZVN0YXJ0
KXtyYW5nZS5tb3ZlU3RhcnQoJ2NoYXJhY3RlcicsLW9wdGlvbnMucG9zdC5sZW5n
dGgtc2VsVGV4dC5sZW5ndGgpO3JhbmdlLm1vdmVFbmQoJ2NoYXJhY3RlcicsLW9w
dGlvbnMucG9zdC5sZW5ndGgpO30KcmFuZ2Uuc2VsZWN0KCk7dGhpcy5zY3JvbGxU
b3A9c2Nyb2xsVG9wO30KJCh0aGlzKS50cmlnZ2VyKCdlbmNhcHN1bGF0ZVNlbGVj
dGlvbicsW29wdGlvbnMucHJlLG9wdGlvbnMucGVyaSxvcHRpb25zLnBvc3Qsb3B0
aW9ucy5vd25saW5lLG9wdGlvbnMucmVwbGFjZV0pO30pO30sZ2V0Q2FyZXRQb3Np
dGlvbjpmdW5jdGlvbihvcHRpb25zKXtmdW5jdGlvbiBnZXRDYXJldChlKXt2YXIg
Y2FyZXRQb3M9MCxlbmRQb3M9MDtpZigkLmJyb3dzZXIubXNpZSl7dmFyIHByZUZp
bmlzaGVkPWZhbHNlO3ZhciBwZXJpRmluaXNoZWQ9ZmFsc2U7dmFyIHBvc3RGaW5p
c2hlZD1mYWxzZTt2YXIgcHJlVGV4dCxyYXdQcmVUZXh0LHBlcmlUZXh0O3ZhciBy
YXdQZXJpVGV4dCxwb3N0VGV4dCxyYXdQb3N0VGV4dDt2YXIgcGVyaVJhbmdlPWRv
Y3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpLmR1cGxpY2F0ZSgpO3ZhciBw
cmVSYW5nZT1kb2N1bWVudC5ib2R5LmNyZWF0ZVRleHRSYW5nZSgpO3ByZVJhbmdl
Lm1vdmVUb0VsZW1lbnRUZXh0KGUpO3ByZVJhbmdlLnNldEVuZFBvaW50KCJFbmRU
b1N0YXJ0IixwZXJpUmFuZ2UpO3ZhciBwb3N0UmFuZ2U9ZG9jdW1lbnQuYm9keS5j
cmVhdGVUZXh0UmFuZ2UoKTtwb3N0UmFuZ2UubW92ZVRvRWxlbWVudFRleHQoZSk7
cG9zdFJhbmdlLnNldEVuZFBvaW50KCJTdGFydFRvRW5kIixwZXJpUmFuZ2UpO3By
ZVRleHQ9cmF3UHJlVGV4dD1wcmVSYW5nZS50ZXh0O3BlcmlUZXh0PXJhd1BlcmlU
ZXh0PXBlcmlSYW5nZS50ZXh0O3Bvc3RUZXh0PXJhd1Bvc3RUZXh0PXBvc3RSYW5n
ZS50ZXh0O2Rve2lmKCFwcmVGaW5pc2hlZCl7aWYocHJlUmFuZ2UuY29tcGFyZUVu
ZFBvaW50cygiU3RhcnRUb0VuZCIscHJlUmFuZ2UpPT0wKXtwcmVGaW5pc2hlZD10
cnVlO31lbHNle3ByZVJhbmdlLm1vdmVFbmQoImNoYXJhY3RlciIsLTEpCmlmKHBy
ZVJhbmdlLnRleHQ9PXByZVRleHQpe3Jhd1ByZVRleHQrPSJcclxuIjt9ZWxzZXtw
cmVGaW5pc2hlZD10cnVlO319fQppZighcGVyaUZpbmlzaGVkKXtpZihwZXJpUmFu
Z2UuY29tcGFyZUVuZFBvaW50cygiU3RhcnRUb0VuZCIscGVyaVJhbmdlKT09MCl7
cGVyaUZpbmlzaGVkPXRydWU7fWVsc2V7cGVyaVJhbmdlLm1vdmVFbmQoImNoYXJh
Y3RlciIsLTEpCmlmKHBlcmlSYW5nZS50ZXh0PT1wZXJpVGV4dCl7cmF3UGVyaVRl
eHQrPSJcclxuIjt9ZWxzZXtwZXJpRmluaXNoZWQ9dHJ1ZTt9fX0KaWYoIXBvc3RG
aW5pc2hlZCl7aWYocG9zdFJhbmdlLmNvbXBhcmVFbmRQb2ludHMoIlN0YXJ0VG9F
bmQiLHBvc3RSYW5nZSk9PTApe3Bvc3RGaW5pc2hlZD10cnVlO31lbHNle3Bvc3RS
YW5nZS5tb3ZlRW5kKCJjaGFyYWN0ZXIiLC0xKQppZihwb3N0UmFuZ2UudGV4dD09
cG9zdFRleHQpe3Jhd1Bvc3RUZXh0Kz0iXHJcbiI7fWVsc2V7cG9zdEZpbmlzaGVk
PXRydWU7fX19fXdoaWxlKCghcHJlRmluaXNoZWR8fCFwZXJpRmluaXNoZWR8fCFw
b3N0RmluaXNoZWQpKTtjYXJldFBvcz1yYXdQcmVUZXh0LnJlcGxhY2UoL1xyXG4v
ZywiXG4iKS5sZW5ndGg7ZW5kUG9zPWNhcmV0UG9zK3Jhd1BlcmlUZXh0LnJlcGxh
Y2UoL1xyXG4vZywiXG4iKS5sZW5ndGg7fWVsc2UgaWYoZS5zZWxlY3Rpb25TdGFy
dHx8ZS5zZWxlY3Rpb25TdGFydD09JzAnKXtjYXJldFBvcz1lLnNlbGVjdGlvblN0
YXJ0O2VuZFBvcz1lLnNlbGVjdGlvbkVuZDt9CnJldHVybiBvcHRpb25zLnN0YXJ0
QW5kRW5kP1tjYXJldFBvcyxlbmRQb3NdOmNhcmV0UG9zO30KcmV0dXJuIGdldENh
cmV0KHRoaXMuZ2V0KDApKTt9LHNldFNlbGVjdGlvbjpmdW5jdGlvbihvcHRpb25z
KXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7aWYoJCh0aGlzKS5pcygnOmhp
ZGRlbicpKXt9ZWxzZSBpZih0aGlzLnNlbGVjdGlvblN0YXJ0fHx0aGlzLnNlbGVj
dGlvblN0YXJ0PT0nMCcpe2lmKG9wdGlvbnMuc3RhcnQ+dGhpcy5zZWxlY3Rpb25F
bmQpe3RoaXMuc2VsZWN0aW9uRW5kPW9wdGlvbnMuZW5kO3RoaXMuc2VsZWN0aW9u
U3RhcnQ9b3B0aW9ucy5zdGFydDt9ZWxzZXt0aGlzLnNlbGVjdGlvblN0YXJ0PW9w
dGlvbnMuc3RhcnQ7dGhpcy5zZWxlY3Rpb25FbmQ9b3B0aW9ucy5lbmQ7fX1lbHNl
IGlmKGRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKXt2YXIgc2VsZWN0aW9u
PWRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCk7c2VsZWN0aW9uLm1vdmVU
b0VsZW1lbnRUZXh0KHRoaXMpO3ZhciBsZW5ndGg9dGhpcy52YWx1ZS5sZW5ndGg7
dmFyIG5ld0xpbmVzPXRoaXMudmFsdWUubWF0Y2goL1xuL2cpO2lmKG5ld0xpbmVz
KWxlbmd0aD1sZW5ndGgtbmV3TGluZXMubGVuZ3RoO3NlbGVjdGlvbi5tb3ZlU3Rh
cnQoJ2NoYXJhY3Rlcicsb3B0aW9ucy5zdGFydCk7c2VsZWN0aW9uLm1vdmVFbmQo
J2NoYXJhY3RlcicsLWxlbmd0aCtvcHRpb25zLmVuZCk7dHJ5e3NlbGVjdGlvbi5z
ZWxlY3QoKTt9Y2F0Y2goZSl7fX19KTt9LHNjcm9sbFRvQ2FyZXRQb3NpdGlvbjpm
dW5jdGlvbihvcHRpb25zKXtmdW5jdGlvbiBnZXRMaW5lTGVuZ3RoKGUpe3JldHVy
biBNYXRoLmZsb29yKGUuc2Nyb2xsV2lkdGgvKCQub3MubmFtZT09J2xpbnV4Jz83
OjgpKTt9CmZ1bmN0aW9uIGdldENhcmV0U2Nyb2xsUG9zaXRpb24oZSl7dmFyIHRl
eHQ9ZS52YWx1ZS5yZXBsYWNlKC9cci9nLCIiKTt2YXIgY2FyZXQ9JChlKS50ZXh0
U2VsZWN0aW9uKCdnZXRDYXJldFBvc2l0aW9uJyk7dmFyIGxpbmVMZW5ndGg9Z2V0
TGluZUxlbmd0aChlKTt2YXIgcm93PTA7dmFyIGNoYXJJbkxpbmU9MDt2YXIgbGFz
dFNwYWNlSW5MaW5lPTA7Zm9yKGk9MDtpPGNhcmV0O2krKyl7Y2hhckluTGluZSsr
O2lmKHRleHQuY2hhckF0KGkpPT0iICIpe2xhc3RTcGFjZUluTGluZT1jaGFySW5M
aW5lO31lbHNlIGlmKHRleHQuY2hhckF0KGkpPT0iXG4iKXtsYXN0U3BhY2VJbkxp
bmU9MDtjaGFySW5MaW5lPTA7cm93Kys7fQppZihjaGFySW5MaW5lPmxpbmVMZW5n
dGgpe2lmKGxhc3RTcGFjZUluTGluZT4wKXtjaGFySW5MaW5lPWNoYXJJbkxpbmUt
bGFzdFNwYWNlSW5MaW5lO2xhc3RTcGFjZUluTGluZT0wO3JvdysrO319fQp2YXIg
bmV4dFNwYWNlPTA7Zm9yKGo9Y2FyZXQ7ajxjYXJldCtsaW5lTGVuZ3RoO2orKyl7
aWYodGV4dC5jaGFyQXQoaik9PSIgInx8dGV4dC5jaGFyQXQoaik9PSJcbiJ8fGNh
cmV0PT10ZXh0Lmxlbmd0aCl7bmV4dFNwYWNlPWo7YnJlYWs7fX0KaWYobmV4dFNw
YWNlPmxpbmVMZW5ndGgmJmNhcmV0PD1saW5lTGVuZ3RoKXtjaGFySW5MaW5lPWNh
cmV0LWxhc3RTcGFjZUluTGluZTtyb3crKzt9CnJldHVybigkLm9zLm5hbWU9PSdt
YWMnPzEzOigkLm9zLm5hbWU9PSdsaW51eCc/MTU6MTYpKSpyb3c7fQpyZXR1cm4g
dGhpcy5lYWNoKGZ1bmN0aW9uKCl7aWYoJCh0aGlzKS5pcygnOmhpZGRlbicpKXt9
ZWxzZSBpZih0aGlzLnNlbGVjdGlvblN0YXJ0fHx0aGlzLnNlbGVjdGlvblN0YXJ0
PT0nMCcpe3ZhciBzY3JvbGw9Z2V0Q2FyZXRTY3JvbGxQb3NpdGlvbih0aGlzKTtp
ZihvcHRpb25zLmZvcmNlfHxzY3JvbGw8JCh0aGlzKS5zY3JvbGxUb3AoKXx8c2Ny
b2xsPiQodGhpcykuc2Nyb2xsVG9wKCkrJCh0aGlzKS5oZWlnaHQoKSkKJCh0aGlz
KS5zY3JvbGxUb3Aoc2Nyb2xsKTt9ZWxzZSBpZihkb2N1bWVudC5zZWxlY3Rpb24m
JmRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSl7dmFyIHJhbmdlPWRvY3Vt
ZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCk7dmFyIHNhdmVkUmFuZ2U9ZG9jdW1l
bnQuc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCk7dmFyIHBvcz0kKHRoaXMpLnRleHRT
ZWxlY3Rpb24oJ2dldENhcmV0UG9zaXRpb24nKTt2YXIgb2xkU2Nyb2xsVG9wPXRo
aXMuc2Nyb2xsVG9wO3JhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KHRoaXMpO3Jhbmdl
LmNvbGxhcHNlKCk7cmFuZ2UubW92ZSgnY2hhcmFjdGVyJyxwb3MrMSk7cmFuZ2Uu
c2VsZWN0KCk7aWYodGhpcy5zY3JvbGxUb3AhPW9sZFNjcm9sbFRvcCkKdGhpcy5z
Y3JvbGxUb3ArPXJhbmdlLm9mZnNldFRvcDtlbHNlIGlmKG9wdGlvbnMuZm9yY2Up
e3JhbmdlLm1vdmUoJ2NoYXJhY3RlcicsLTEpO3JhbmdlLnNlbGVjdCgpO30Kc2F2
ZWRSYW5nZS5zZWxlY3QoKTt9CiQodGhpcykudHJpZ2dlcignc2Nyb2xsVG9Qb3Np
dGlvbicpO30pO319O3N3aXRjaChjb21tYW5kKXtjYXNlJ2VuY2Fwc3VsYXRlU2Vs
ZWN0aW9uJzpvcHRpb25zPSQuZXh0ZW5kKHsncHJlJzonJywncGVyaSc6JycsJ3Bv
c3QnOicnLCdvd25saW5lJzpmYWxzZSwncmVwbGFjZSc6ZmFsc2UsJ3NlbGVjdFBl
cmknOnRydWV9LG9wdGlvbnMpO2JyZWFrO2Nhc2UnZ2V0Q2FyZXRQb3NpdGlvbic6
b3B0aW9ucz0kLmV4dGVuZCh7J3N0YXJ0QW5kRW5kJzpmYWxzZX0sb3B0aW9ucyk7
YnJlYWs7Y2FzZSdzZXRTZWxlY3Rpb24nOm9wdGlvbnM9JC5leHRlbmQoeydzdGFy
dCc6dW5kZWZpbmVkLCdlbmQnOnVuZGVmaW5lZCwnc3RhcnRDb250YWluZXInOnVu
ZGVmaW5lZCwnZW5kQ29udGFpbmVyJzp1bmRlZmluZWR9LG9wdGlvbnMpO2lmKG9w
dGlvbnMuZW5kPT09dW5kZWZpbmVkKQpvcHRpb25zLmVuZD1vcHRpb25zLnN0YXJ0
O2lmKG9wdGlvbnMuZW5kQ29udGFpbmVyPT11bmRlZmluZWQpCm9wdGlvbnMuZW5k
Q29udGFpbmVyPW9wdGlvbnMuc3RhcnRDb250YWluZXI7YnJlYWs7Y2FzZSdzY3Jv
bGxUb0NhcmV0UG9zaXRpb24nOm9wdGlvbnM9JC5leHRlbmQoeydmb3JjZSc6ZmFs
c2V9LG9wdGlvbnMpO2JyZWFrO30KdmFyIGNvbnRleHQ9JCh0aGlzKS5kYXRhKCd3
aWtpRWRpdG9yLWNvbnRleHQnKTt2YXIgaGFzSWZyYW1lPWNvbnRleHQhPT11bmRl
ZmluZWQmJmNvbnRleHQuJGlmcmFtZSE9PXVuZGVmaW5lZDt2YXIgbmVlZFNhdmU9
ZmFsc2U7aWYoaGFzSWZyYW1lJiZjb250ZXh0LnNhdmVkU2VsZWN0aW9uIT09bnVs
bCl7Y29udGV4dC5mbi5yZXN0b3JlU2VsZWN0aW9uKCk7bmVlZFNhdmU9dHJ1ZTt9
CnJldHZhbD0oaGFzSWZyYW1lP2NvbnRleHQuZm46Zm4pW2NvbW1hbmRdLmNhbGwo
dGhpcyxvcHRpb25zKTtpZihoYXNJZnJhbWUmJm5lZWRTYXZlKXtjb250ZXh0LmZu
LnNhdmVTZWxlY3Rpb24oKTt9CnJldHVybiByZXR2YWw7fTt9KShqUXVlcnkpOyhm
dW5jdGlvbigkKXskLndpa2lFZGl0b3I9eydtb2R1bGVzJzp7fSwnaW5zdGFuY2Vz
JzpbXSwnYnJvd3NlcnMnOnsnbHRyJzp7J21zaWUnOltbJz49Jyw3XV0sJ2ZpcmVm
b3gnOltbJz49JywyXV0sJ29wZXJhJzpbWyc+PScsOS42XV0sJ3NhZmFyaSc6W1sn
Pj0nLDNdXSwnY2hyb21lJzpbWyc+PScsM11dLCduZXRzY2FwZSc6W1snPj0nLDld
XSwnYmxhY2tiZXJyeSc6ZmFsc2UsJ2lwb2QnOmZhbHNlLCdpcGhvbmUnOmZhbHNl
fSwncnRsJzp7J21zaWUnOltbJz49Jyw4XV0sJ2ZpcmVmb3gnOltbJz49JywyXV0s
J29wZXJhJzpbWyc+PScsOS42XV0sJ3NhZmFyaSc6W1snPj0nLDNdXSwnY2hyb21l
JzpbWyc+PScsM11dLCduZXRzY2FwZSc6W1snPj0nLDldXSwnYmxhY2tiZXJyeSc6
ZmFsc2UsJ2lwb2QnOmZhbHNlLCdpcGhvbmUnOmZhbHNlfX0sJ2ltZ1BhdGgnOndn
U2NyaXB0UGF0aCsnL2V4dGVuc2lvbnMvVXNhYmlsaXR5SW5pdGlhdGl2ZS9pbWFn
ZXMvd2lraUVkaXRvci8nLCdpc1N1cHBvcnRlZCc6ZnVuY3Rpb24obW9kdWxlKXtp
Zihtb2R1bGUmJnR5cGVvZiBtb2R1bGUubmFtZSE9J3VuZGVmaW5lZCcmJihtb2R1
bGUubmFtZT09J3RvYyd8fG1vZHVsZS5uYW1lPT0naGlnaGxpZ2h0JykmJnR5cGVv
ZiB3Z1JlYWxseUdpdmVNZVRPQz09J3VuZGVmaW5lZCcpe3JldHVybiBtb2R1bGUu
c3VwcG9ydGVkPWZhbHNlO30KdmFyIG1vZD1tb2R1bGUmJidicm93c2VycydpbiBt
b2R1bGU/bW9kdWxlOiQud2lraUVkaXRvcjtpZih0eXBlb2YgbW9kLnN1cHBvcnRl
ZCE9PSd1bmRlZmluZWQnKXtyZXR1cm4gbW9kLnN1cHBvcnRlZDt9CnJldHVybiBt
b2Quc3VwcG9ydGVkPW13LnVzYWJpbGl0eS50ZXN0QnJvd3Nlcihtb2QuYnJvd3Nl
cnMpO30sJ2lzUmVxdWlyZWQnOmZ1bmN0aW9uKG1vZHVsZSxyZXF1aXJlbWVudCl7
aWYodHlwZW9mIG1vZHVsZVsncmVxJ10hPT0ndW5kZWZpbmVkJyl7Zm9yKHJlcSBp
biBtb2R1bGVbJ3JlcSddKXtpZihtb2R1bGVbJ3JlcSddW3JlcV09PXJlcXVpcmVt
ZW50KXtyZXR1cm4gdHJ1ZTt9fX0KcmV0dXJuIGZhbHNlO30sJ2F1dG9Nc2cnOmZ1
bmN0aW9uKG9iamVjdCxwcm9wZXJ0eSl7aWYodHlwZW9mIHByb3BlcnR5PT0nb2Jq
ZWN0Jyl7Zm9yKHZhciBpIGluIHByb3BlcnR5KXtpZihwcm9wZXJ0eVtpXWluIG9i
amVjdHx8cHJvcGVydHlbaV0rJ01zZydpbiBvYmplY3Qpe3Byb3BlcnR5PXByb3Bl
cnR5W2ldO2JyZWFrO319fQppZihwcm9wZXJ0eSBpbiBvYmplY3Qpe3JldHVybiBv
YmplY3RbcHJvcGVydHldO31lbHNlIGlmKHByb3BlcnR5KydNc2cnaW4gb2JqZWN0
KXtpZih0eXBlb2Ygb2JqZWN0W3Byb3BlcnR5KydNc2cnXT09J29iamVjdCcpe3Jl
dHVybiBtdy51c2FiaWxpdHkuZ2V0TXNnLmFwcGx5KG13LnVzYWJpbGl0eSxvYmpl
Y3RbcHJvcGVydHkrJ01zZyddKTt9ZWxzZXtyZXR1cm4gbXcudXNhYmlsaXR5Lmdl
dE1zZyhvYmplY3RbcHJvcGVydHkrJ01zZyddKTt9fWVsc2V7cmV0dXJuJyc7fX0s
J2F1dG9MYW5nJzpmdW5jdGlvbihvYmplY3QsbGFuZyl7cmV0dXJuIG9iamVjdFts
YW5nfHx3Z1VzZXJMYW5ndWFnZV18fG9iamVjdFsnZGVmYXVsdCddfHxvYmplY3Q7
fSwnYXV0b0ljb24nOmZ1bmN0aW9uKGljb24scGF0aCxsYW5nKXt2YXIgc3JjPSQu
d2lraUVkaXRvci5hdXRvTGFuZyhpY29uLGxhbmcpO3BhdGg9cGF0aHx8JC53aWtp
RWRpdG9yLmltZ1BhdGg7aWYoc3JjLnN1YnN0cigwLDcpIT0naHR0cDovLycmJnNy
Yy5zdWJzdHIoMCw4KSE9J2h0dHBzOi8vJyYmc3JjWzBdIT0nLycpe3NyYz1wYXRo
K3NyYzt9CnJldHVybiBzcmMrJz8nK3dnV2lraUVkaXRvckljb25WZXJzaW9uO30s
J2F1dG9JY29uT3JPZmZzZXQnOmZ1bmN0aW9uKGljb24sb2Zmc2V0LHBhdGgsbGFu
Zyl7bGFuZz1sYW5nfHx3Z1VzZXJMYW5ndWFnZTtpZih0eXBlb2Ygb2Zmc2V0PT0n
b2JqZWN0JyYmbGFuZyBpbiBvZmZzZXQpe3JldHVybiBvZmZzZXRbbGFuZ107fWVs
c2UgaWYodHlwZW9mIGljb249PSdvYmplY3QnJiZsYW5nIGluIGljb24pe3JldHVy
biAkLndpa2lFZGl0b3IuYXV0b0ljb24oaWNvbix1bmRlZmluZWQsbGFuZyk7fWVs
c2V7cmV0dXJuICQud2lraUVkaXRvci5hdXRvTGFuZyhvZmZzZXQsbGFuZyk7fX19
OyQuZm4ud2lraUVkaXRvcj1mdW5jdGlvbigpe2lmKCEkai53aWtpRWRpdG9yLmlz
U3VwcG9ydGVkKCkpe3JldHVybiAkKHRoaXMpO30KdmFyIGNvbnRleHQ9JCh0aGlz
KS5kYXRhKCd3aWtpRWRpdG9yLWNvbnRleHQnKTtpZighY29udGV4dHx8dHlwZW9m
IGNvbnRleHQ9PSd1bmRlZmluZWQnKXtjb250ZXh0PXsnJHRleHRhcmVhJzokKHRo
aXMpLCd2aWV3cyc6e30sJ21vZHVsZXMnOnt9LCdkYXRhJzp7fSwnaW5zdGFuY2Un
OiQud2lraUVkaXRvci5pbnN0YW5jZXMucHVzaCgkKHRoaXMpKS0xLCdvZmZzZXRz
JzpudWxsLCdodG1sVG9UZXh0TWFwJzp7fSwnb2xkSFRNTCc6bnVsbCwnb2xkRGVs
YXllZEhUTUwnOm51bGwsJ29sZERlbGF5ZWRTZWwnOm51bGwsJ3NhdmVkU2VsZWN0
aW9uJzpudWxsLCdoaXN0b3J5JzpbXSwnaGlzdG9yeVBvc2l0aW9uJzotMSwnb2xk
RGVsYXllZEhpc3RvcnlQb3NpdGlvbic6LTF9O2NvbnRleHQuYXBpPXsnYWRkTW9k
dWxlJzpmdW5jdGlvbihjb250ZXh0LGRhdGEpe3ZhciBtb2R1bGVzPXt9O2lmKHR5
cGVvZiBkYXRhPT0nc3RyaW5nJyl7bW9kdWxlc1tkYXRhXT17fTt9ZWxzZSBpZih0
eXBlb2YgZGF0YT09J29iamVjdCcpe21vZHVsZXM9ZGF0YTt9CmZvcih2YXIgbW9k
dWxlIGluIG1vZHVsZXMpe2lmKHR5cGVvZiBtb2R1bGU9PSdzdHJpbmcnJiYkLndp
a2lFZGl0b3IuaXNTdXBwb3J0ZWQoJC53aWtpRWRpdG9yLm1vZHVsZXNbbW9kdWxl
XSkpe2lmKCdhcGknaW4gJC53aWtpRWRpdG9yLm1vZHVsZXNbbW9kdWxlXSl7Zm9y
KHZhciBjYWxsIGluICQud2lraUVkaXRvci5tb2R1bGVzW21vZHVsZV0uYXBpKXtp
ZighKGNhbGwgaW4gY29udGV4dC5hcGkpKXtjb250ZXh0LmFwaVtjYWxsXT0kLndp
a2lFZGl0b3IubW9kdWxlc1ttb2R1bGVdLmFwaVtjYWxsXTt9fX0KaWYoJ2ZuJ2lu
ICQud2lraUVkaXRvci5tb2R1bGVzW21vZHVsZV0mJidjcmVhdGUnaW4gJC53aWtp
RWRpdG9yLm1vZHVsZXNbbW9kdWxlXS5mbil7Y29udGV4dC5tb2R1bGVzW21vZHVs
ZV09e307JC53aWtpRWRpdG9yLm1vZHVsZXNbbW9kdWxlXS5mbi5jcmVhdGUoY29u
dGV4dCxtb2R1bGVzW21vZHVsZV0pO319fX19O2NvbnRleHQuZXZ0PXsna2V5ZG93
bic6ZnVuY3Rpb24oZXZlbnQpe3N3aXRjaChldmVudC53aGljaCl7Y2FzZSA5Omlm
KGV2ZW50LmN0cmxLZXl8fGV2ZW50LmFsdEtleXx8ZXZlbnQuc2hpZnRLZXkpe3Jl
dHVybiB0cnVlO31lbHNle3ZhciAkdGFiaW5kZXhMaXN0PSRqKCdbdGFiaW5kZXhd
OnZpc2libGUnKS5zb3J0KGZ1bmN0aW9uKGEsYil7cmV0dXJuIGEudGFiSW5kZXgt
Yi50YWJJbmRleDt9KTtmb3IodmFyIGk9MDtpPCR0YWJpbmRleExpc3QubGVuZ3Ro
O2krKyl7aWYoJHRhYmluZGV4TGlzdC5lcShpKS5hdHRyKCdpZCcpPT1jb250ZXh0
LiRpZnJhbWUuYXR0cignaWQnKSl7JHRhYmluZGV4TGlzdC5nZXQoaSsxKS5mb2N1
cygpO2JyZWFrO319CnJldHVybiBmYWxzZTt9CmJyZWFrO2Nhc2UgODY6aWYoZXZl
bnQuY3RybEtleSYmJC5icm93c2VyLm1zaWUpe2NvbnRleHQuZXZ0LnBhc3RlKGV2
ZW50KTt9CmJyZWFrO30KcmV0dXJuIHRydWU7fSwnY2hhbmdlJzpmdW5jdGlvbihl
dmVudCl7ZXZlbnQuZGF0YS5zY29wZT0nZGl2aXNpb24nO3ZhciBuZXdIVE1MPWNv
bnRleHQuJGNvbnRlbnQuaHRtbCgpO2lmKGNvbnRleHQub2xkSFRNTCE9bmV3SFRN
TCl7Y29udGV4dC5mbi5wdXJnZU9mZnNldHMoKTtjb250ZXh0Lm9sZEhUTUw9bmV3
SFRNTDtldmVudC5kYXRhLnNjb3BlPSdyZWFsY2hhbmdlJzt9CmlmKGNvbnRleHQu
JGNvbnRlbnQuY2hpbGRyZW4oKS5sZW5ndGg9PTApe2NvbnRleHQuJGNvbnRlbnQu
YXBwZW5kKCc8cD48L3A+Jyk7fQpyZXR1cm4gdHJ1ZTt9LCdkZWxheWVkQ2hhbmdl
JzpmdW5jdGlvbihldmVudCl7ZXZlbnQuZGF0YS5zY29wZT0nZGl2aXNpb24nO3Zh
ciBuZXdIVE1MPWNvbnRleHQuJGNvbnRlbnQuaHRtbCgpO2lmKGNvbnRleHQub2xk
RGVsYXllZEhUTUwhPW5ld0hUTUwpe2NvbnRleHQub2xkRGVsYXllZEhUTUw9bmV3
SFRNTDtldmVudC5kYXRhLnNjb3BlPSdyZWFsY2hhbmdlJzt2YXIgY3Vyc29yUG9z
PWNvbnRleHQuZm4uZ2V0Q2FyZXRQb3NpdGlvbigpO3ZhciB0PWNvbnRleHQuZm4u
Z2V0T2Zmc2V0KGN1cnNvclBvc1swXSk7aWYoISQuYnJvd3Nlci5tc2llJiZ0JiZ0
Lm5vZGUubm9kZU5hbWU9PScjdGV4dCcmJnQubm9kZS5wYXJlbnROb2RlLm5vZGVO
YW1lLnRvTG93ZXJDYXNlKCk9PSdib2R5Jyl7JCh0Lm5vZGUpLndyYXAoIjxwPjwv
cD4iKTtjb250ZXh0LmZuLnB1cmdlT2Zmc2V0cygpO2NvbnRleHQuZm4uc2V0U2Vs
ZWN0aW9uKHtzdGFydDpjdXJzb3JQb3NbMF0sZW5kOmN1cnNvclBvc1sxXX0pO319
CmNvbnRleHQuZm4udXBkYXRlSGlzdG9yeShldmVudC5kYXRhLnNjb3BlPT0ncmVh
bGNoYW5nZScpO3JldHVybiB0cnVlO30sJ2N1dCc6ZnVuY3Rpb24oZXZlbnQpe3Nl
dFRpbWVvdXQoZnVuY3Rpb24oKXtjb250ZXh0LiRjb250ZW50LmZpbmQoJ2JyJyku
ZWFjaChmdW5jdGlvbigpe2lmKCQodGhpcykucGFyZW50KCkuaXMoJ2JvZHknKSl7
JCh0aGlzKS53cmFwKCQoJzxwPjwvcD4nKSk7fX0pO30sMTAwKTtyZXR1cm4gdHJ1
ZTt9LCdwYXN0ZSc6ZnVuY3Rpb24oZXZlbnQpe3ZhciBjdXJzb3JQb3M9Y29udGV4
dC5mbi5nZXRDYXJldFBvc2l0aW9uKCk7dmFyIG9mZnNldD0wO3ZhciBvbGRMZW5n
dGg9Y29udGV4dC5mbi5nZXRDb250ZW50cygpLmxlbmd0aDtjb250ZXh0LiRjb250
ZW50LmZpbmQoJyonKS5hZGRDbGFzcygnd2lraUVkaXRvcicpO2lmKCQubGF5b3V0
Lm5hbWUhPT0nd2Via2l0Jyl7Y29udGV4dC4kY29udGVudC5hZGRDbGFzcygncGFz
dGluZycpO30Kc2V0VGltZW91dChmdW5jdGlvbigpe2NvbnRleHQuJGNvbnRlbnQu
ZmluZCgnc2NyaXB0LHN0eWxlLGltZyxpbnB1dCxzZWxlY3QsdGV4dGFyZWEsaHIs
YnV0dG9uLGxpbmssbWV0YScpLnJlbW92ZSgpO3ZhciAkc2VsZWN0aW9uPWNvbnRl
eHQuJGNvbnRlbnQuZmluZCgnOm5vdCgud2lraUVkaXRvciknKTt2YXIgbm9kZVRv
RGVsZXRlPVtdO3ZhciBmaXJzdERpcnR5Tm9kZTtpZigkc2VsZWN0aW9uLmxlbmd0
aD09MCl7Zmlyc3REaXJ0eU5vZGU9Y29udGV4dC5mbi5nZXRPZmZzZXQoY3Vyc29y
UG9zWzBdKS5ub2RlO31lbHNle2ZpcnN0RGlydHlOb2RlPSRzZWxlY3Rpb24uZXEo
MClbMF07fQp3aGlsZShmaXJzdERpcnR5Tm9kZSE9bnVsbCl7d2hpbGUoZmlyc3RE
aXJ0eU5vZGUucGFyZW50Tm9kZS5ub2RlTmFtZSE9J0JPRFknJiYhJChmaXJzdERp
cnR5Tm9kZS5wYXJlbnROb2RlKS5oYXNDbGFzcygnd2lraUVkaXRvcicpKXtmaXJz
dERpcnR5Tm9kZT1maXJzdERpcnR5Tm9kZS5wYXJlbnROb2RlO30Kd2hpbGUoZmly
c3REaXJ0eU5vZGUucHJldmlvdXNTaWJsaW5nIT1udWxsJiYhJChmaXJzdERpcnR5
Tm9kZS5wcmV2aW91c1NpYmxpbmcpLmhhc0NsYXNzKCd3aWtpRWRpdG9yJykpe2lm
KCQoZmlyc3REaXJ0eU5vZGUucHJldmlvdXNTaWJsaW5nKS5oYXNDbGFzcygnI2Nv
bW1lbnQnKSl7JChmaXJzdERpcnR5Tm9kZSkucmVtb3ZlKCk7fWVsc2V7Zmlyc3RE
aXJ0eU5vZGU9Zmlyc3REaXJ0eU5vZGUucHJldmlvdXNTaWJsaW5nO319CnZhciAk
bGFzdERpcnR5Tm9kZT0kKGZpcnN0RGlydHlOb2RlKTt2YXIgY2M9bWFrZUNvbnRl
bnRDb2xsZWN0b3IoJC5icm93c2VyLG51bGwpO3doaWxlKGZpcnN0RGlydHlOb2Rl
IT1udWxsJiYhJChmaXJzdERpcnR5Tm9kZSkuaGFzQ2xhc3MoJ3dpa2lFZGl0b3In
KSl7Y2MuY29sbGVjdENvbnRlbnQoZmlyc3REaXJ0eU5vZGUpO2NjLm5vdGlmeU5l
eHROb2RlKGZpcnN0RGlydHlOb2RlLm5leHRTaWJsaW5nKTtwYXN0ZWRDb250ZW50
PWNjLmdldExpbmVzKCk7aWYoKHBhc3RlZENvbnRlbnQubGVuZ3RoPD0xfHxwYXN0
ZWRDb250ZW50W3Bhc3RlZENvbnRlbnQubGVuZ3RoLTFdIT09IiIpJiZmaXJzdERp
cnR5Tm9kZS5uZXh0U2libGluZyl7bm9kZVRvRGVsZXRlLnB1c2goZmlyc3REaXJ0
eU5vZGUpO2ZpcnN0RGlydHlOb2RlPWZpcnN0RGlydHlOb2RlLm5leHRTaWJsaW5n
O2NjLmNvbGxlY3RDb250ZW50KGZpcnN0RGlydHlOb2RlKTtjYy5ub3RpZnlOZXh0
Tm9kZShmaXJzdERpcnR5Tm9kZS5uZXh0U2libGluZyk7fQpub2RlVG9EZWxldGUu
cHVzaChmaXJzdERpcnR5Tm9kZSk7Zmlyc3REaXJ0eU5vZGU9Zmlyc3REaXJ0eU5v
ZGUubmV4dFNpYmxpbmc7fQp2YXIgY2NEYXRhPWNjLmZpbmlzaCgpO3ZhciBwYXN0
ZWRDb250ZW50PWNjRGF0YS5saW5lcztpZihwYXN0ZWRDb250ZW50Lmxlbmd0aD09
MCYmZmlyc3REaXJ0eU5vZGUpe29mZnNldCs9JChmaXJzdERpcnR5Tm9kZSkudGV4
dCgpLmxlbmd0aDt9CmlmKG5vZGVUb0RlbGV0ZS5sZW5ndGg+MCl7JGxhc3REaXJ0
eU5vZGU9JChub2RlVG9EZWxldGVbbm9kZVRvRGVsZXRlLmxlbmd0aC0xXSk7fQp2
YXIgdGVzdFZhbD0nJzt0ZXN0VmFsPSQobm9kZVRvRGVsZXRlWzBdKS50ZXh0KCk7
dmFyIHBhc3RlZFByZXR0eT0nJztmb3IodmFyIGk9MDtpPHBhc3RlZENvbnRlbnQu
bGVuZ3RoO2krKyl7cGFzdGVkUHJldHR5PXBhc3RlZENvbnRlbnRbaV0ucmVwbGFj
ZSgvJi9nLCcmYW1wOycpLnJlcGxhY2UoLzwvZywnJmx0OycpLnJlcGxhY2UoLz4v
ZywnJmd0OycpLnJlcGxhY2UoL1xyP1xuL2csJ1xcbicpO21hdGNoPXBhc3RlZENv
bnRlbnRbaV0ubWF0Y2goL15bXHNdK1teXHNdLyk7aWYobWF0Y2ghPW51bGwmJm1h
dGNoLmxlbmd0aD4wKXtpbmRleD1tYXRjaFswXS5sZW5ndGg7bGVhZGluZ1NwYWNl
PW1hdGNoWzBdLnJlcGxhY2UoL1tcc10vZywnJm5ic3A7Jyk7cGFzdGVkUHJldHR5
PWxlYWRpbmdTcGFjZStwYXN0ZWRQcmV0dHkuc3Vic3RyaW5nKGluZGV4LHBhc3Rl
ZFByZXR0eS5sZW5ndGgpO30KJG5ld0VsZW1lbnQ9JCgnPHAgY2xhc3M9Indpa2lF
ZGl0b3IiID48L3A+Jyk7aWYocGFzdGVkUHJldHR5KXskbmV3RWxlbWVudC5odG1s
KCc8c3BhbiBjbGFzcyA9ICJ3aWtpRWRpdG9yIj4nK3Bhc3RlZFByZXR0eSsnPC9z
cGFuPicpO31lbHNleyRuZXdFbGVtZW50Lmh0bWwoJzxiciBjbGFzcz0id2lraUVk
aXRvciI+Jyk7fQokbmV3RWxlbWVudC5pbnNlcnRBZnRlcigkbGFzdERpcnR5Tm9k
ZSk7b2Zmc2V0Kz1wYXN0ZWRQcmV0dHkubGVuZ3RoOyRsYXN0RGlydHlOb2RlPSRu
ZXdFbGVtZW50O30Kd2hpbGUobm9kZVRvRGVsZXRlLmxlbmd0aD4wKXskKG5vZGVU
b0RlbGV0ZS5wb3AoKSkucmVtb3ZlKCk7fQokc2VsZWN0aW9uPWNvbnRleHQuJGNv
bnRlbnQuZmluZCgnOm5vdCgud2lraUVkaXRvciknKTtpZigkc2VsZWN0aW9uLmxl
bmd0aD09MCl7Zmlyc3REaXJ0eU5vZGU9bnVsbDt9ZWxzZXtmaXJzdERpcnR5Tm9k
ZT0kc2VsZWN0aW9uLmVxKDApWzBdO319CmNvbnRleHQuJGNvbnRlbnQuZmluZCgn
Lndpa2lFZGl0b3InKS5yZW1vdmVDbGFzcygnd2lraUVkaXRvcicpO3ZhciByZXN0
b3JlVG89Y3Vyc29yUG9zWzFdK29mZnNldDtjb250ZXh0LmZuLnNldFNlbGVjdGlv
bih7c3RhcnQ6cmVzdG9yZVRvLGVuZDpyZXN0b3JlVG99KTt9LDApO3JldHVybiB0
cnVlO30sJ3JlYWR5JzpmdW5jdGlvbihldmVudCl7Y29udGV4dC5oaXN0b3J5LnB1
c2goeydodG1sJzpjb250ZXh0LiRjb250ZW50Lmh0bWwoKSwnc2VsJzpjb250ZXh0
LmZuLmdldENhcmV0UG9zaXRpb24oKX0pO3JldHVybiB0cnVlO319O2NvbnRleHQu
Zm49eyd0cmlnZ2VyJzpmdW5jdGlvbihuYW1lLGV2ZW50KXtpZih0eXBlb2YgZXZl
bnQ9PSd1bmRlZmluZWQnKXtldmVudD17J3R5cGUnOidjdXN0b20nfTt9CmlmKHR5
cGVvZiBldmVudC5kYXRhPT0ndW5kZWZpbmVkJyl7ZXZlbnQuZGF0YT17fTt9Cmlm
KG5hbWUgaW4gY29udGV4dC5ldnQpe2lmKCFjb250ZXh0LmV2dFtuYW1lXShldmVu
dCkpe3JldHVybiBmYWxzZTt9fQp2YXIgcmV0dXJuRnJvbU1vZHVsZXM9bnVsbDtm
b3IodmFyIG1vZHVsZSBpbiBjb250ZXh0Lm1vZHVsZXMpe2lmKG1vZHVsZSBpbiAk
Lndpa2lFZGl0b3IubW9kdWxlcyYmJ2V2dCdpbiAkLndpa2lFZGl0b3IubW9kdWxl
c1ttb2R1bGVdJiZuYW1lIGluICQud2lraUVkaXRvci5tb2R1bGVzW21vZHVsZV0u
ZXZ0KXt2YXIgcmV0PSQud2lraUVkaXRvci5tb2R1bGVzW21vZHVsZV0uZXZ0W25h
bWVdKGNvbnRleHQsZXZlbnQpO2lmKHJldCE9bnVsbCl7aWYocmV0dXJuRnJvbU1v
ZHVsZXM9PW51bGwpe3JldHVybkZyb21Nb2R1bGVzPXJldDt9ZWxzZXtyZXR1cm5G
cm9tTW9kdWxlcz1yZXR1cm5Gcm9tTW9kdWxlcyYmcmV0O319fX0KaWYocmV0dXJu
RnJvbU1vZHVsZXMhPW51bGwpe3JldHVybiByZXR1cm5Gcm9tTW9kdWxlczt9ZWxz
ZXtyZXR1cm4gdHJ1ZTt9fSwnYWRkQnV0dG9uJzpmdW5jdGlvbihvcHRpb25zKXtj
b250ZXh0LiRjb250cm9scy5zaG93KCk7Y29udGV4dC4kYnV0dG9ucy5zaG93KCk7
cmV0dXJuICQoJzxidXR0b24gLz4nKS50ZXh0KCQud2lraUVkaXRvci5hdXRvTXNn
KG9wdGlvbnMsJ2NhcHRpb24nKSkuY2xpY2sob3B0aW9ucy5hY3Rpb24pLmFwcGVu
ZFRvKGNvbnRleHQuJGJ1dHRvbnMpO30sJ2FkZFZpZXcnOmZ1bmN0aW9uKG9wdGlv
bnMpe2Z1bmN0aW9uIGFkZFRhYihvcHRpb25zKXtjb250ZXh0LiRjb250cm9scy5z
aG93KCk7Y29udGV4dC4kdGFicy5zaG93KCk7cmV0dXJuICQoJzxkaXY+PC9kaXY+
JykuYXR0cigncmVsJywnd2lraUVkaXRvci11aS12aWV3LScrb3B0aW9ucy5uYW1l
KS5hZGRDbGFzcyhjb250ZXh0LnZpZXc9PW9wdGlvbnMubmFtZT8nY3VycmVudCc6
bnVsbCkuYXBwZW5kKCQoJzxhPjwvYT4nKS5hdHRyKCdocmVmJywnIycpLm1vdXNl
ZG93bihmdW5jdGlvbigpe3JldHVybiBmYWxzZTt9KS5jbGljayhmdW5jdGlvbihl
dmVudCl7Y29udGV4dC4kdWkuZmluZCgnLndpa2lFZGl0b3ItdWktdmlldycpLmhp
ZGUoKTtjb250ZXh0LiR1aS5maW5kKCcuJyskKHRoaXMpLnBhcmVudCgpLmF0dHIo
J3JlbCcpKS5zaG93KCk7Y29udGV4dC4kdGFicy5maW5kKCdkaXYnKS5yZW1vdmVD
bGFzcygnY3VycmVudCcpOyQodGhpcykucGFyZW50KCkuYWRkQ2xhc3MoJ2N1cnJl
bnQnKTskKHRoaXMpLmJsdXIoKTtpZignaW5pdCdpbiBvcHRpb25zJiZ0eXBlb2Yg
b3B0aW9ucy5pbml0PT0nZnVuY3Rpb24nKXtvcHRpb25zLmluaXQoY29udGV4dCk7
fQpldmVudC5wcmV2ZW50RGVmYXVsdCgpO3JldHVybiBmYWxzZTt9KS50ZXh0KCQu
d2lraUVkaXRvci5hdXRvTXNnKG9wdGlvbnMsJ3RpdGxlJykpKS5hcHBlbmRUbyhj
b250ZXh0LiR0YWJzKTt9CmlmKCFjb250ZXh0LiR0YWJzLmNoaWxkcmVuKCkuc2l6
ZSgpKXthZGRUYWIoeyduYW1lJzond2lraXRleHQnLCd0aXRsZU1zZyc6J3dpa2ll
ZGl0b3Itd2lraXRleHQtdGFiJ30pO30KYWRkVGFiKG9wdGlvbnMpO3JldHVybiAk
KCc8ZGl2PjwvZGl2PicpLmFkZENsYXNzKCd3aWtpRWRpdG9yLXVpLXZpZXcgd2lr
aUVkaXRvci11aS12aWV3LScrb3B0aW9ucy5uYW1lKS5oaWRlKCkuYXBwZW5kVG8o
Y29udGV4dC4kdWkpO30sJ2hpZ2hsaWdodExpbmUnOmZ1bmN0aW9uKCRlbGVtZW50
LG1vZGUpe2lmKCEkZWxlbWVudC5pcygncCcpKXskZWxlbWVudD0kZWxlbWVudC5j
bG9zZXN0KCdwJyk7fQokZWxlbWVudC5jc3MoJ2JhY2tncm91bmRDb2xvcicsJyNB
QUNDRkYnKTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7JGVsZW1lbnQuYW5pbWF0ZSh7
J2JhY2tncm91bmRDb2xvcic6J3doaXRlJ30sJ3Nsb3cnKTt9LDEwMCk7c2V0VGlt
ZW91dChmdW5jdGlvbigpeyRlbGVtZW50LmNzcygnYmFja2dyb3VuZENvbG9yJywn
d2hpdGUnKTt9LDEwMDApO30sJ2h0bWxUb1RleHQnOmZ1bmN0aW9uKGh0bWwpe2lm
KGh0bWwgaW4gY29udGV4dC5odG1sVG9UZXh0TWFwKXtyZXR1cm4gY29udGV4dC5o
dG1sVG9UZXh0TWFwW2h0bWxdO30KdmFyIG9yaWdIVE1MPWh0bWw7aHRtbD1odG1s
LnJlcGxhY2UoL1xyP1xuL2csIiIpLnJlcGxhY2UoLyZuYnNwOy9nLCIgIikucmVw
bGFjZSgvXDxiclteXD5dKlw+XDxcL3BcPi9naSwnPC9wPicpLnJlcGxhY2UoL1w8
XC9wXD5ccypcPHBbXlw+XSpcPi9naSwiXG4iKS5yZXBsYWNlKC9cPGJyW15cPl0q
XD4vZ2ksIlxuIikucmVwbGFjZSgvXDxcL3BcPihcbiopXDxwW15cPl0qXD4vZ2ks
IiQxXG4iKS5yZXBsYWNlKC9cPHBbXlw+XSpcPjxwW15cPl0qXD4vZ2ksJzxwPicp
LnJlcGxhY2UoL1w8XC9wXD48XC9wXD4vZ2ksJzwvcD4nKTt2YXIgbGVhZGluZz1o
dG1sLm1hdGNoKC9eXHMqLylbMF07dmFyIHRyYWlsaW5nPWh0bWwubWF0Y2goL1xz
KiQvKVswXTtodG1sPWh0bWwuc3Vic3RyKGxlYWRpbmcubGVuZ3RoLGh0bWwubGVu
Z3RoLWxlYWRpbmcubGVuZ3RoLXRyYWlsaW5nLmxlbmd0aCk7dmFyICRwcmU9JCgn
PHByZT4nK2h0bWwrJzwvcHJlPicpOyRwcmUuZmluZCgnLndpa2lFZGl0b3Itbm9p
bmNsdWRlJykuZWFjaChmdW5jdGlvbigpeyQodGhpcykucmVtb3ZlKCk7fSk7JHBy
ZS5maW5kKCcud2lraUVkaXRvci10YWInKS5lYWNoKGZ1bmN0aW9uKCl7JCh0aGlz
KS50ZXh0KCJcdCIpO30pOyRwcmUuZmluZCgnYnInKS5lYWNoKGZ1bmN0aW9uKCl7
JCh0aGlzKS5yZXBsYWNlV2l0aCgiXG4iKTt9KTskcHJlLmZpbmQoJ3AnKS5lYWNo
KGZ1bmN0aW9uKCl7dmFyIHRleHQ9JCh0aGlzKS50ZXh0KCk7dmFyIHQ9bmV3IGNv
bnRleHQuZm4ucmF3VHJhdmVyc2VyKHRoaXMuZmlyc3RDaGlsZCx0aGlzLCRwcmUu
Z2V0KDApLHRydWUpLnByZXYoKTt3aGlsZSh0JiZ0Lm5vZGUubm9kZU5hbWUhPScj
dGV4dCcmJnQubm9kZS5ub2RlTmFtZSE9J0JSJyYmdC5ub2RlLm5vZGVOYW1lIT0n
UCcpe3Q9dC5wcmV2KCk7fQppZih0KXt0ZXh0PSJcbiIrdGV4dDt9CnQ9bmV3IGNv
bnRleHQuZm4ucmF3VHJhdmVyc2VyKHRoaXMubGFzdENoaWxkLHRoaXMsJHByZS5n
ZXQoMCksdHJ1ZSkubmV4dCgpO3doaWxlKHQmJnQubm9kZS5ub2RlTmFtZSE9JyN0
ZXh0JyYmdC5ub2RlLm5vZGVOYW1lIT0nQlInJiZ0Lm5vZGUubm9kZU5hbWUhPSdQ
Jyl7dD10Lm5leHQoKTt9CmlmKHQmJiF0LmluUCYmdC5ub2RlLm5vZGVOYW1lPT0n
I3RleHQnJiZ0Lm5vZGUubm9kZVZhbHVlLmNoYXJBdCgwKSE9J1xuJyYmdC5ub2Rl
Lm5vZGVWYWx1ZS5jaGFyQXQoMCkhPSdccicpe3RleHQrPSJcbiI7fQokKHRoaXMp
LnRleHQodGV4dCk7fSk7dmFyIHJldHZhbDtpZigkLmJyb3dzZXIubXNpZSl7cmV0
dmFsPSQoJzxwcmU+JyskcHJlLmh0bWwoKSsnPC9wcmU+JykudGV4dCgpLnJlcGxh
Y2UoL1xyL2csJ1xuJyk7fWVsc2V7cmV0dmFsPSRwcmUudGV4dCgpO30KcmV0dXJu
IGNvbnRleHQuaHRtbFRvVGV4dE1hcFtvcmlnSFRNTF09bGVhZGluZytyZXR2YWwr
dHJhaWxpbmc7fSwnYmVmb3JlU2VsZWN0aW9uJzpmdW5jdGlvbihjbGFzc25hbWUs
c3RyaWN0KXtpZih0eXBlb2YgY2xhc3NuYW1lPT0ndW5kZWZpbmVkJyl7Y2xhc3Nu
YW1lPScnO30KdmFyIGU9bnVsbCxvZmZzZXQ9bnVsbDtpZihjb250ZXh0LiRpZnJh
bWVbMF0uY29udGVudFdpbmRvdy5nZXRTZWxlY3Rpb24pe3ZhciBzZWxlY3Rpb249
Y29udGV4dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0aW9uKCk7
aWYoc2VsZWN0aW9uLmJhc2VOb2RlIT09bnVsbCl7ZT1zZWxlY3Rpb24uZ2V0UmFu
Z2VBdCgwKS5zdGFydENvbnRhaW5lcjtvZmZzZXQ9c2VsZWN0aW9uLmdldFJhbmdl
QXQoMCkuc3RhcnRPZmZzZXQ7fWVsc2V7cmV0dXJuIG51bGw7fQp2YXIgYm9keT1j
b250ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5kb2N1bWVudC5ib2R5O2lm
KCQuYnJvd3Nlci5vcGVyYSYmZT09Ym9keSYmb2Zmc2V0PT0xKXtyZXR1cm4gbnVs
bDt9fQppZighZSYmY29udGV4dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZG9j
dW1lbnQuc2VsZWN0aW9uKXt2YXIgcmFuZ2U9Y29udGV4dC4kaWZyYW1lWzBdLmNv
bnRlbnRXaW5kb3cuZG9jdW1lbnQuc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCk7dmFy
IHJhbmdlMj1jb250ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5kb2N1bWVu
dC5ib2R5LmNyZWF0ZVRleHRSYW5nZSgpO3RyeXtyYW5nZTIuc2V0RW5kUG9pbnQo
J0VuZFRvU3RhcnQnLHJhbmdlKTt9Y2F0Y2goZXgpe3JldHVybiBudWxsO30KdmFy
IHNlZWtQb3M9Y29udGV4dC5mbi5odG1sVG9UZXh0KHJhbmdlMi5odG1sVGV4dCku
bGVuZ3RoO3ZhciBvZmZzZXQ9Y29udGV4dC5mbi5nZXRPZmZzZXQoc2Vla1Bvcyk7
ZT1vZmZzZXQ/b2Zmc2V0Lm5vZGU6bnVsbDtvZmZzZXQ9b2Zmc2V0P29mZnNldC5v
ZmZzZXQ6bnVsbDtpZighZSl7cmV0dXJuIG51bGw7fX0KaWYoZS5ub2RlTmFtZSE9
JyN0ZXh0Jyl7dmFyIG5ld0U9ZS5maXJzdENoaWxkO2Zvcih2YXIgaT0wO2k8b2Zm
c2V0LTEmJm5ld0U7aSsrKXtuZXdFPW5ld0UubmV4dFNpYmxpbmc7fQp3aGlsZShu
ZXdFJiZuZXdFLmxhc3RDaGlsZCl7bmV3RT1uZXdFLmxhc3RDaGlsZDt9CmU9bmV3
RXx8ZTt9CnZhciBjbGFzc1N0cj0nICcrY2xhc3NuYW1lKycgJzt3aGlsZShlKXtp
Zighc3RyaWN0JiYoIWNsYXNzbmFtZXx8KCcgJytlLmNsYXNzTmFtZSsnICcpLmlu
ZGV4T2YoY2xhc3NTdHIpIT0tMSkpe3JldHVybiAkKGUpO30KdmFyIG5leHQ9ZS5w
cmV2aW91c1NpYmxpbmc7d2hpbGUobmV4dCYmbmV4dC5sYXN0Q2hpbGQpe25leHQ9
bmV4dC5sYXN0Q2hpbGQ7fQplPW5leHR8fGUucGFyZW50Tm9kZTtzdHJpY3Q9ZmFs
c2U7fQpyZXR1cm4gJChbXSk7fSwncmF3VHJhdmVyc2VyJzpmdW5jdGlvbihub2Rl
LGluUCxhbmNlc3Rvcixza2lwTm9pbmNsdWRlKXt0aGlzLm5vZGU9bm9kZTt0aGlz
LmluUD1pblA7dGhpcy5hbmNlc3Rvcj1hbmNlc3Rvcjt0aGlzLnNraXBOb2luY2x1
ZGU9c2tpcE5vaW5jbHVkZTt0aGlzLm5leHQ9ZnVuY3Rpb24oKXt2YXIgcD10aGlz
Lm5vZGU7dmFyIG5leHRJblA9dGhpcy5pblA7d2hpbGUocCYmIXAubmV4dFNpYmxp
bmcpe3A9cC5wYXJlbnROb2RlO2lmKHA9PXRoaXMuYW5jZXN0b3Ipe3A9bnVsbDt9
CmlmKHAmJnAubm9kZU5hbWU9PSJQIil7bmV4dEluUD1udWxsO319CnA9cD9wLm5l
eHRTaWJsaW5nOm51bGw7aWYocCYmcC5ub2RlTmFtZT09IlAiKXtuZXh0SW5QPXA7
fQpkb3tpZih0aGlzLnNraXBOb2luY2x1ZGUpe3doaWxlKHAmJignICcrcC5jbGFz
c05hbWUrJyAnKS5pbmRleE9mKCcgd2lraUVkaXRvci1ub2luY2x1ZGUgJykhPS0x
KXtwPXAubmV4dFNpYmxpbmc7fX0KaWYocCYmcC5maXJzdENoaWxkKXtwPXAuZmly
c3RDaGlsZDtpZihwLm5vZGVOYW1lPT0iUCIpe25leHRJblA9cDt9fX13aGlsZShw
JiZwLmZpcnN0Q2hpbGQpO3JldHVybiBwP3snbm9kZSc6cCwnaW5QJzpuZXh0SW5Q
LCdhbmNlc3Rvcic6dGhpcy5hbmNlc3Rvciwnc2tpcE5vaW5jbHVkZSc6dGhpcy5z
a2lwTm9pbmNsdWRlLCduZXh0Jzp0aGlzLm5leHQsJ3ByZXYnOnRoaXMucHJldn06
bnVsbDt9O3RoaXMucHJldj1mdW5jdGlvbigpe3ZhciBwPXRoaXMubm9kZTt2YXIg
cHJldkluUD10aGlzLmluUDt3aGlsZShwJiYhcC5wcmV2aW91c1NpYmxpbmcpe3A9
cC5wYXJlbnROb2RlO2lmKHA9PXRoaXMuYW5jZXN0b3Ipe3A9bnVsbDt9CmlmKHAm
JnAubm9kZU5hbWU9PSJQIil7cHJldkluUD1udWxsO319CnA9cD9wLnByZXZpb3Vz
U2libGluZzpudWxsO2lmKHAmJnAubm9kZU5hbWU9PSJQIil7cHJldkluUD1wO30K
ZG97aWYodGhpcy5za2lwTm9pbmNsdWRlKXt3aGlsZShwJiYoJyAnK3AuY2xhc3NO
YW1lKycgJykuaW5kZXhPZignIHdpa2lFZGl0b3Itbm9pbmNsdWRlICcpIT0tMSl7
cD1wLnByZXZpb3VzU2libGluZzt9fQppZihwJiZwLmxhc3RDaGlsZCl7cD1wLmxh
c3RDaGlsZDtpZihwLm5vZGVOYW1lPT0iUCIpe3ByZXZJblA9cDt9fX13aGlsZShw
JiZwLmxhc3RDaGlsZCk7cmV0dXJuIHA/eydub2RlJzpwLCdpblAnOnByZXZJblAs
J2FuY2VzdG9yJzp0aGlzLmFuY2VzdG9yLCdza2lwTm9pbmNsdWRlJzp0aGlzLnNr
aXBOb2luY2x1ZGUsJ25leHQnOnRoaXMubmV4dCwncHJldic6dGhpcy5wcmV2fTpu
dWxsO307fSwndHJhdmVyc2VyJzpmdW5jdGlvbihzdGFydCl7dmFyIHN0YXJ0Tm9k
ZT1zdGFydC5qcXVlcnk/c3RhcnQuZ2V0KDApOnN0YXJ0O3ZhciBub2RlPXN0YXJ0
Tm9kZTt2YXIgaW5QPW5vZGUubm9kZU5hbWU9PSJQIj9ub2RlOm51bGw7ZG97d2hp
bGUobm9kZSYmKCcgJytub2RlLmNsYXNzTmFtZSsnICcpLmluZGV4T2YoJyB3aWtp
RWRpdG9yLW5vaW5jbHVkZSAnKSE9LTEpe25vZGU9bm9kZS5uZXh0U2libGluZzt9
CmlmKG5vZGUmJm5vZGUuZmlyc3RDaGlsZCl7bm9kZT1ub2RlLmZpcnN0Q2hpbGQ7
aWYobm9kZS5ub2RlTmFtZT09IlAiKXtpblA9bm9kZTt9fX13aGlsZShub2RlJiZu
b2RlLmZpcnN0Q2hpbGQpO3JldHVybiBuZXcgY29udGV4dC5mbi5yYXdUcmF2ZXJz
ZXIobm9kZSxpblAsc3RhcnROb2RlLHRydWUpO30sJ2dldE9mZnNldCc6ZnVuY3Rp
b24ob2Zmc2V0KXtpZighY29udGV4dC5vZmZzZXRzKXtjb250ZXh0LmZuLnJlZnJl
c2hPZmZzZXRzKCk7fQppZihvZmZzZXQgaW4gY29udGV4dC5vZmZzZXRzKXtyZXR1
cm4gY29udGV4dC5vZmZzZXRzW29mZnNldF07fQp2YXIgbG93ZXJCb3VuZD0tMTtm
b3IodmFyIG8gaW4gY29udGV4dC5vZmZzZXRzKXt2YXIgcmVhbE89cGFyc2VJbnQo
byk7aWYocmVhbE88b2Zmc2V0JiZyZWFsTz5sb3dlckJvdW5kKXtsb3dlckJvdW5k
PXJlYWxPO319CmlmKCEobG93ZXJCb3VuZCBpbiBjb250ZXh0Lm9mZnNldHMpKXty
ZXR1cm4gbnVsbDt9CnZhciBiYXNlPWNvbnRleHQub2Zmc2V0c1tsb3dlckJvdW5k
XTtyZXR1cm4gY29udGV4dC5vZmZzZXRzW29mZnNldF09eydub2RlJzpiYXNlLm5v
ZGUsJ29mZnNldCc6YmFzZS5vZmZzZXQrb2Zmc2V0LWxvd2VyQm91bmQsJ2xlbmd0
aCc6YmFzZS5sZW5ndGgsJ2xhc3RUZXh0Tm9kZSc6YmFzZS5sYXN0VGV4dE5vZGV9
O30sJ3B1cmdlT2Zmc2V0cyc6ZnVuY3Rpb24oKXtjb250ZXh0Lm9mZnNldHM9bnVs
bDt9LCdyZWZyZXNoT2Zmc2V0cyc6ZnVuY3Rpb24oKXtjb250ZXh0Lm9mZnNldHM9
W107dmFyIHQ9Y29udGV4dC5mbi50cmF2ZXJzZXIoY29udGV4dC4kY29udGVudCk7
dmFyIHBvcz0wLGxhc3RUZXh0Tm9kZT1udWxsO3doaWxlKHQpe2lmKHQubm9kZS5u
b2RlTmFtZSE9JyN0ZXh0JyYmdC5ub2RlLm5vZGVOYW1lIT0nQlInKXt0PXQubmV4
dCgpO2NvbnRpbnVlO30KdmFyIG5leHRQb3M9dC5ub2RlLm5vZGVOYW1lPT0nI3Rl
eHQnP3Bvcyt0Lm5vZGUubm9kZVZhbHVlLmxlbmd0aDpwb3MrMTt2YXIgbmV4dFQ9
dC5uZXh0KCk7dmFyIGxlYXZpbmdQPXQubm9kZS5ub2RlTmFtZT09JyN0ZXh0JyYm
dC5pblAmJm5leHRUJiYoIW5leHRULmluUHx8bmV4dFQuaW5QIT10LmluUCk7Y29u
dGV4dC5vZmZzZXRzW3Bvc109eydub2RlJzp0Lm5vZGUsJ29mZnNldCc6MCwnbGVu
Z3RoJzpuZXh0UG9zLXBvcysobGVhdmluZ1A/MTowKSwnbGFzdFRleHROb2RlJzps
YXN0VGV4dE5vZGV9O2lmKGxlYXZpbmdQKXtjb250ZXh0Lm9mZnNldHNbbmV4dFBv
c109eydub2RlJzp0Lm5vZGUsJ29mZnNldCc6bmV4dFBvcy1wb3MsJ2xlbmd0aCc6
bmV4dFBvcy1wb3MrMSwnbGFzdFRleHROb2RlJzpsYXN0VGV4dE5vZGV9O30KcG9z
PW5leHRQb3MrKGxlYXZpbmdQPzE6MCk7aWYodC5ub2RlLm5vZGVOYW1lPT0nI3Rl
eHQnKXtsYXN0VGV4dE5vZGU9dC5ub2RlO30KdD1uZXh0VDt9fSwnc2F2ZVNlbGVj
dGlvbic6ZnVuY3Rpb24oKXtpZighJC5icm93c2VyLm1zaWUpe3JldHVybjt9Cmlm
KHR5cGVvZiBjb250ZXh0LiRpZnJhbWUhPSd1bmRlZmluZWQnKXtjb250ZXh0LiRp
ZnJhbWVbMF0uY29udGVudFdpbmRvdy5mb2N1cygpO2NvbnRleHQuc2F2ZWRTZWxl
Y3Rpb249Y29udGV4dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQu
c2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCk7fWVsc2V7Y29udGV4dC4kdGV4dGFyZWEu
Zm9jdXMoKTtjb250ZXh0LnNhdmVkU2VsZWN0aW9uPWRvY3VtZW50LnNlbGVjdGlv
bi5jcmVhdGVSYW5nZSgpO319LCdyZXN0b3JlU2VsZWN0aW9uJzpmdW5jdGlvbigp
e2lmKCEkLmJyb3dzZXIubXNpZXx8Y29udGV4dC5zYXZlZFNlbGVjdGlvbj09PW51
bGwpe3JldHVybjt9CmlmKHR5cGVvZiBjb250ZXh0LiRpZnJhbWUhPSd1bmRlZmlu
ZWQnKXtjb250ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5mb2N1cygpO31l
bHNle2NvbnRleHQuJHRleHRhcmVhLmZvY3VzKCk7fQpjb250ZXh0LnNhdmVkU2Vs
ZWN0aW9uLnNlbGVjdCgpO2NvbnRleHQuc2F2ZWRTZWxlY3Rpb249bnVsbDt9LCd1
cGRhdGVIaXN0b3J5JzpmdW5jdGlvbihodG1sQ2hhbmdlKXt2YXIgbmV3SFRNTD1j
b250ZXh0LiRjb250ZW50Lmh0bWwoKTt2YXIgbmV3U2VsPWNvbnRleHQuZm4uZ2V0
Q2FyZXRQb3NpdGlvbigpO2lmKGNvbnRleHQuaGlzdG9yeS5sZW5ndGg9PTB8fCho
dG1sQ2hhbmdlJiZjb250ZXh0Lm9sZERlbGF5ZWRIaXN0b3J5UG9zaXRpb249PWNv
bnRleHQuaGlzdG9yeVBvc2l0aW9uKSl7Y29udGV4dC5vbGREZWxheWVkU2VsPW5l
d1NlbDtpZihjb250ZXh0Lmhpc3RvcnlQb3NpdGlvbjwtMSl7Y29udGV4dC5oaXN0
b3J5LnNwbGljZShjb250ZXh0Lmhpc3RvcnkubGVuZ3RoK2NvbnRleHQuaGlzdG9y
eVBvc2l0aW9uKzEpO2NvbnRleHQuaGlzdG9yeVBvc2l0aW9uPS0xO30KY29udGV4
dC5oaXN0b3J5LnB1c2goeydodG1sJzpuZXdIVE1MLCdzZWwnOm5ld1NlbH0pO3do
aWxlKGNvbnRleHQuaGlzdG9yeS5sZW5ndGg+MTApe2NvbnRleHQuaGlzdG9yeS5z
aGlmdCgpO319ZWxzZSBpZihjb250ZXh0Lm9sZERlbGF5ZWRTZWwhPW5ld1NlbCl7
Y29udGV4dC5vbGREZWxheWVkU2VsPW5ld1NlbDtjb250ZXh0Lmhpc3RvcnlbY29u
dGV4dC5oaXN0b3J5Lmxlbmd0aCtjb250ZXh0Lmhpc3RvcnlQb3NpdGlvbl0uc2Vs
PW5ld1NlbDt9CmNvbnRleHQub2xkRGVsYXllZEhpc3RvcnlQb3NpdGlvbj1jb250
ZXh0Lmhpc3RvcnlQb3NpdGlvbjt9LCdzZXR1cElmcmFtZSc6ZnVuY3Rpb24oKXtj
b250ZXh0LiRpZnJhbWU9JCgnPGlmcmFtZT48L2lmcmFtZT4nKS5hdHRyKHsnZnJh
bWVCb3JkZXInOjAsJ2JvcmRlcic6MCwndGFiaW5kZXgnOjEsJ3NyYyc6d2dTY3Jp
cHRQYXRoKycvZXh0ZW5zaW9ucy9Vc2FiaWxpdHlJbml0aWF0aXZlL2pzL3BsdWdp
bnMvanF1ZXJ5Lndpa2lFZGl0b3IuaHRtbD8nKydpbnN0YW5jZT0nK2NvbnRleHQu
aW5zdGFuY2UrJyZ0cz0nKyhuZXcgRGF0ZSgpKS5nZXRUaW1lKCkrJyZpcz1jb250
ZW50JywnaWQnOid3aWtpRWRpdG9yLWlmcmFtZS0nK2NvbnRleHQuaW5zdGFuY2V9
KS5jc3MoeydiYWNrZ3JvdW5kQ29sb3InOid3aGl0ZScsJ3dpZHRoJzonMTAwJScs
J2hlaWdodCc6Y29udGV4dC4kdGV4dGFyZWEuaGVpZ2h0KCksJ2Rpc3BsYXknOidu
b25lJywnb3ZlcmZsb3cteSc6J3Njcm9sbCcsJ292ZXJmbG93LXgnOidoaWRkZW4n
fSkuaW5zZXJ0QWZ0ZXIoY29udGV4dC4kdGV4dGFyZWEpLmxvYWQoZnVuY3Rpb24o
KXtpZighdGhpcy5pc1NlY29uZFJ1bil7Y29udGV4dC4kaWZyYW1lWzBdLmNvbnRl
bnRXaW5kb3cuZG9jdW1lbnQuZGVzaWduTW9kZT0nb24nO2lmKCQuYnJvd3Nlci5t
c2llKXt0aGlzLmlzU2Vjb25kUnVuPXRydWU7cmV0dXJuO319CmNvbnRleHQuJGNv
bnRlbnQ9JChjb250ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5kb2N1bWVu
dC5ib2R5KTtmb3IobW9kdWxlIGluIGNvbnRleHQubW9kdWxlcyl7Y29udGV4dC4k
Y29udGVudC5hZGRDbGFzcygnd2lraUVkaXRvci0nK21vZHVsZSk7fQp2YXIgaHRt
bD1jb250ZXh0LiR0ZXh0YXJlYS52YWwoKS5yZXBsYWNlKC8mZXNjOy9nLCcmZXNj
O2VzYzsnKS5yZXBsYWNlKC9cPHBcPi9nLCcmZXNjOyZsdDtwJmd0OycpLnJlcGxh
Y2UoL1w8XC9wXD4vZywnJmVzYzsmbHQ7L3AmZ3Q7JykucmVwbGFjZSgvXDxzcGFu
IGNsYXNzPSJ3aWtpRWRpdG9yLXRhYiJcPlw8XC9zcGFuXD4vZywnJmVzYzsmbHQ7
c3BhbiZuYnNwO2NsYXNzPSZxdW90O3dpa2lFZGl0b3ItdGFiJnF1b3Q7Jmd0OyZs
dDsvc3BhbiZndDsnKS5yZXBsYWNlKC8mbmJzcDsvZywnJmVzYzsmYW1wO25ic3A7
Jyk7aWYoJC5icm93c2VyLm1zaWUpe2h0bWw9aHRtbC5yZXBsYWNlKC9cdC9nLCc8
c3BhbiBjbGFzcz0id2lraUVkaXRvci10YWIiPjwvc3Bhbj4nKTtpZigkLmJyb3dz
ZXIudmVyc2lvbk51bWJlcjw9Nyl7aHRtbD1odG1sLnJlcGxhY2UoLyAvZywiJm5i
c3A7Iik7fWVsc2V7aHRtbD1odG1sLnJlcGxhY2UoLyhefFxuKSAvZywiJDEmbmJz
cDsiKTt9fQpodG1sPSQoJzxkaXYgLz4nKS50ZXh0KCc8cD4nK2h0bWwucmVwbGFj
ZSgvXHI/XG4vZywnPC9wPjxwPicpKyc8L3A+JykuaHRtbCgpLnJlcGxhY2UoLyZh
bXA7bmJzcDsvZywnJm5ic3A7JykucmVwbGFjZSgvJmx0O3AmZ3Q7L2csJzxwPicp
LnJlcGxhY2UoLyZsdDtcL3AmZ3Q7L2csJzwvcD4nKS5yZXBsYWNlKC8mbHQ7c3Bh
biggfCZuYnNwOyljbGFzcz0oInwmcXVvdDspd2lraUVkaXRvci10YWIoInwmcXVv
dDspJmd0OyZsdDtcL3NwYW4mZ3Q7L2csJzxzcGFuIGNsYXNzPSJ3aWtpRWRpdG9y
LXRhYiI+PC9zcGFuPicpLnJlcGxhY2UoLzxwPjxcL3A+L2csJzxwPjxicj48L3A+
JykucmVwbGFjZSgvJmFtcDtlc2M7JmFtcDthbXA7bmJzcDsvZywnJmFtcDtuYnNw
OycpLnJlcGxhY2UoLyZhbXA7ZXNjOyZhbXA7bHQ7cCZhbXA7Z3Q7L2csJyZsdDtw
Jmd0OycpLnJlcGxhY2UoLyZhbXA7ZXNjOyZhbXA7bHQ7XC9wJmFtcDtndDsvZywn
Jmx0Oy9wJmd0OycpLnJlcGxhY2UoLyZhbXA7ZXNjOyZhbXA7bHQ7c3BhbiZhbXA7
bmJzcDtjbGFzcz0mYW1wO3F1b3Q7d2lraUVkaXRvci10YWImYW1wO3F1b3Q7JmFt
cDtndDsmYW1wO2x0O1wvc3BhbiZhbXA7Z3Q7L2csJyZsdDtzcGFuIGNsYXNzPSJ3
aWtpRWRpdG9yLXRhYiImZ3Q7Jmx0O1wvc3BhbiZndDsnKS5yZXBsYWNlKC8mYW1w
O2VzYztlc2M7L2csJyZhbXA7ZXNjOycpO2NvbnRleHQuJGNvbnRlbnQuaHRtbCho
dG1sKTtpZigkKCdib2R5JykuaXMoJy5ydGwnKSl7Y29udGV4dC4kY29udGVudC5h
ZGRDbGFzcygncnRsJykuYXR0cignZGlyJywncnRsJyk7fQpjb250ZXh0LiR0ZXh0
YXJlYS5hdHRyKCdkaXNhYmxlZCcsdHJ1ZSk7Y29udGV4dC4kdGV4dGFyZWEuaGlk
ZSgpO2NvbnRleHQuJGlmcmFtZS5zaG93KCk7Y29udGV4dC5mbi50cmlnZ2VyKCdy
ZWFkeScpO2NvbnRleHQub2xkSFRNTD1jb250ZXh0Lm9sZERlbGF5ZWRIVE1MPWNv
bnRleHQuJGNvbnRlbnQuaHRtbCgpOyQoY29udGV4dC4kaWZyYW1lWzBdLmNvbnRl
bnRXaW5kb3cuZG9jdW1lbnQpLmJpbmQoJ2tleWRvd24nLGZ1bmN0aW9uKGV2ZW50
KXtldmVudC5qUXVlcnlOb2RlPWNvbnRleHQuZm4uZ2V0RWxlbWVudEF0Q3Vyc29y
KCk7cmV0dXJuIGNvbnRleHQuZm4udHJpZ2dlcigna2V5ZG93bicsZXZlbnQpO30p
LmJpbmQoJ2tleXVwJyxmdW5jdGlvbihldmVudCl7ZXZlbnQualF1ZXJ5Tm9kZT1j
b250ZXh0LmZuLmdldEVsZW1lbnRBdEN1cnNvcigpO3JldHVybiBjb250ZXh0LmZu
LnRyaWdnZXIoJ2tleXVwJyxldmVudCk7fSkuYmluZCgna2V5cHJlc3MnLGZ1bmN0
aW9uKGV2ZW50KXtldmVudC5qUXVlcnlOb2RlPWNvbnRleHQuZm4uZ2V0RWxlbWVu
dEF0Q3Vyc29yKCk7cmV0dXJuIGNvbnRleHQuZm4udHJpZ2dlcigna2V5cHJlc3Mn
LGV2ZW50KTt9KS5iaW5kKCdwYXN0ZScsZnVuY3Rpb24oZXZlbnQpe3JldHVybiBj
b250ZXh0LmZuLnRyaWdnZXIoJ3Bhc3RlJyxldmVudCk7fSkuYmluZCgnY3V0Jyxm
dW5jdGlvbihldmVudCl7cmV0dXJuIGNvbnRleHQuZm4udHJpZ2dlcignY3V0Jyxl
dmVudCk7fSkuYmluZCgna2V5dXAgcGFzdGUgbW91c2V1cCBjdXQgZW5jYXBzdWxh
dGVTZWxlY3Rpb24nLGZ1bmN0aW9uKGV2ZW50KXtyZXR1cm4gY29udGV4dC5mbi50
cmlnZ2VyKCdjaGFuZ2UnLGV2ZW50KTt9KS5kZWxheWVkQmluZCgyNTAsJ2tleXVw
IHBhc3RlIG1vdXNldXAgY3V0IGVuY2Fwc3VsYXRlU2VsZWN0aW9uJyxmdW5jdGlv
bihldmVudCl7Y29udGV4dC5mbi50cmlnZ2VyKCdkZWxheWVkQ2hhbmdlJyxldmVu
dCk7fSk7fSk7Y29udGV4dC4kdGV4dGFyZWEuY2xvc2VzdCgnZm9ybScpLnN1Ym1p
dChmdW5jdGlvbigpe2NvbnRleHQuJHRleHRhcmVhLmF0dHIoJ2Rpc2FibGVkJyxm
YWxzZSk7Y29udGV4dC4kdGV4dGFyZWEudmFsKGNvbnRleHQuJHRleHRhcmVhLnRl
eHRTZWxlY3Rpb24oJ2dldENvbnRlbnRzJykpO30pO2NvbnRleHQuZmFsbGJhY2tX
aW5kb3dPbkJlZm9yZVVubG9hZD13aW5kb3cub25iZWZvcmV1bmxvYWQ7d2luZG93
Lm9uYmVmb3JldW5sb2FkPWZ1bmN0aW9uKCl7Y29udGV4dC4kdGV4dGFyZWEudmFs
KGNvbnRleHQuJHRleHRhcmVhLnRleHRTZWxlY3Rpb24oJ2dldENvbnRlbnRzJykp
O2lmKGNvbnRleHQuZmFsbGJhY2tXaW5kb3dPbkJlZm9yZVVubG9hZCl7cmV0dXJu
IGNvbnRleHQuZmFsbGJhY2tXaW5kb3dPbkJlZm9yZVVubG9hZCgpO319O30sJ2dl
dEVsZW1lbnRBdEN1cnNvcic6ZnVuY3Rpb24oKXtpZihjb250ZXh0LiRpZnJhbWVb
MF0uY29udGVudFdpbmRvdy5nZXRTZWxlY3Rpb24pe3ZhciBzZWxlY3Rpb249Y29u
dGV4dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYo
c2VsZWN0aW9uLnJhbmdlQ291bnQ9PTApe3JldHVybiAkKFtdKTt9CnZhciBzYz1z
ZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS5zdGFydENvbnRhaW5lcjtpZihzYy5ub2Rl
TmFtZT09IiN0ZXh0IilzYz1zYy5wYXJlbnROb2RlO3JldHVybiAkKHNjKTt9ZWxz
ZSBpZihjb250ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5kb2N1bWVudC5z
ZWxlY3Rpb24pe3ZhciBzZWxlY3Rpb249Y29udGV4dC4kaWZyYW1lWzBdLmNvbnRl
bnRXaW5kb3cuZG9jdW1lbnQuc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCk7cmV0dXJu
ICQoc2VsZWN0aW9uLnBhcmVudEVsZW1lbnQoKSk7fX0sJ2dldENvbnRlbnRzJzpm
dW5jdGlvbigpe3ZhciBodG1sO2lmKCQuYnJvd3Nlci5tc2llKXt2YXIgJGM9JChj
b250ZXh0LiRjb250ZW50LmdldCgwKS5jbG9uZU5vZGUodHJ1ZSkpOyRjLmZpbmQo
J3AnKS5lYWNoKGZ1bmN0aW9uKCl7aWYoJCh0aGlzKS5odG1sKCk9PScnKXskKHRo
aXMpLnJlcGxhY2VXaXRoKCc8cD48L3A+Jyk7fX0pO2h0bWw9JGMuaHRtbCgpO31l
bHNle2h0bWw9Y29udGV4dC4kY29udGVudC5odG1sKCk7fQpyZXR1cm4gY29udGV4
dC5mbi5odG1sVG9UZXh0KGh0bWwpO30sJ2dldFNlbGVjdGlvbic6ZnVuY3Rpb24o
KXt2YXIgcmV0dmFsO2lmKGNvbnRleHQuJGlmcmFtZVswXS5jb250ZW50V2luZG93
LmdldFNlbGVjdGlvbil7cmV0dmFsPWNvbnRleHQuJGlmcmFtZVswXS5jb250ZW50
V2luZG93LmdldFNlbGVjdGlvbigpO2lmKCQuYnJvd3Nlci5vcGVyYSl7aWYocmV0
dmFsLnJhbmdlQ291bnQ+MCl7cmV0dmFsPWNvbnRleHQuZm4uaHRtbFRvVGV4dCgk
KCc8cHJlIC8+JykuYXBwZW5kKHJldHZhbC5nZXRSYW5nZUF0KDApLmNsb25lQ29u
dGVudHMoKSkuaHRtbCgpKTt9ZWxzZXtyZXR2YWw9Jyc7fX19ZWxzZSBpZihjb250
ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5kb2N1bWVudC5zZWxlY3Rpb24p
e3JldHZhbD1jb250ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5kb2N1bWVu
dC5zZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKTt9CmlmKHR5cGVvZiByZXR2YWwudGV4
dCE9J3VuZGVmaW5lZCcpe3JldHZhbD1jb250ZXh0LmZuLmh0bWxUb1RleHQocmV0
dmFsLmh0bWxUZXh0KTt9ZWxzZSBpZih0eXBlb2YgcmV0dmFsLnRvU3RyaW5nIT0n
dW5kZWZpbmVkJyl7cmV0dmFsPXJldHZhbC50b1N0cmluZygpO30KcmV0dXJuIHJl
dHZhbDt9LCdlbmNhcHN1bGF0ZVNlbGVjdGlvbic6ZnVuY3Rpb24ob3B0aW9ucyl7
dmFyIHNlbFRleHQ9JCh0aGlzKS50ZXh0U2VsZWN0aW9uKCdnZXRTZWxlY3Rpb24n
KTt2YXIgc2VsVGV4dEFycjt2YXIgY29sbGFwc2VUb0VuZD1mYWxzZTt2YXIgc2Vs
ZWN0QWZ0ZXI9ZmFsc2U7dmFyIHNldFNlbGVjdGlvblRvPW51bGw7dmFyIHByZT1v
cHRpb25zLnByZSxwb3N0PW9wdGlvbnMucG9zdDtpZighc2VsVGV4dCl7c2VsVGV4
dD1vcHRpb25zLnBlcmk7c2VsZWN0QWZ0ZXI9dHJ1ZTt9ZWxzZSBpZihvcHRpb25z
LnBlcmk9PXNlbFRleHQucmVwbGFjZSgvXHMrJC8sJycpKXtzZWxUZXh0PXNlbFRl
eHQucmVwbGFjZSgvXHMrJC8sJycpO2NvbGxhcHNlVG9FbmQ9dHJ1ZTtzZWxlY3RB
ZnRlcj10cnVlO31lbHNlIGlmKG9wdGlvbnMucmVwbGFjZSl7c2VsVGV4dD1vcHRp
b25zLnBlcmk7fWVsc2UgaWYoc2VsVGV4dC5jaGFyQXQoc2VsVGV4dC5sZW5ndGgt
MSk9PScgJyl7c2VsVGV4dD1zZWxUZXh0LnN1YnN0cmluZygwLHNlbFRleHQubGVu
Z3RoLTEpO3Bvc3QrPScgJzt9CmlmKG9wdGlvbnMuc3BsaXRsaW5lcyl7c2VsVGV4
dEFycj1zZWxUZXh0LnNwbGl0KC9cbi8pO30KaWYoY29udGV4dC4kaWZyYW1lWzBd
LmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0aW9uKXt2YXIgcmFuZ2U9Y29udGV4dC4k
aWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0aW9uKCkuZ2V0UmFuZ2VB
dCgwKTtpZihjb2xsYXBzZVRvRW5kKXtpZihyYW5nZS5lbmRDb250YWluZXIubm9k
ZU5hbWU9PSdCUicpe3JhbmdlLnNldEVuZEJlZm9yZShyYW5nZS5lbmRDb250YWlu
ZXIpO30KcmFuZ2UuY29sbGFwc2UoZmFsc2UpO30KaWYob3B0aW9ucy5vd25saW5l
KXt2YXIgYXRTdGFydD1mYWxzZSxhdEVuZD1mYWxzZTt2YXIgYm9keT1jb250ZXh0
LiRjb250ZW50LmdldCgwKTtpZihyYW5nZS5zdGFydE9mZnNldD09MCl7YXRTdGFy
dD10cnVlO31lbHNlIGlmKHJhbmdlLnN0YXJ0Q29udGFpbmVyPT1ib2R5KXt2YXIg
bj1ib2R5LmZpcnN0Q2hpbGQ7Zm9yKHZhciBpPTA7aTxyYW5nZS5zdGFydE9mZnNl
dC0xJiZuO2krKyl7bj1uLm5leHRTaWJsaW5nO30KaWYobiYmbi5ub2RlTmFtZT09
J0JSJyl7YXRTdGFydD10cnVlO31lbHNle2F0RW5kPXRydWU7fX0KaWYoKHJhbmdl
LmVuZE9mZnNldD09MCYmcmFuZ2UuZW5kQ29udGFpbmVyLm5vZGVWYWx1ZT09bnVs
bCl8fChyYW5nZS5lbmRDb250YWluZXIubm9kZU5hbWU9PScjdGV4dCcmJnJhbmdl
LmVuZE9mZnNldD09cmFuZ2UuZW5kQ29udGFpbmVyLm5vZGVWYWx1ZS5sZW5ndGgp
fHwocmFuZ2UuZW5kQ29udGFpbmVyLm5vZGVOYW1lPT0nUCcmJnJhbmdlLmVuZENv
bnRhaW5lci5ub2RlVmFsdWU9PW51bGwpKXthdEVuZD10cnVlO30KaWYoIWF0U3Rh
cnQpe3ByZT0iXG4iK29wdGlvbnMucHJlO30KaWYoIWF0RW5kKXtwb3N0Kz0iXG4i
O319CnZhciBpbnNlcnRUZXh0PSIiO2lmKG9wdGlvbnMuc3BsaXRsaW5lcyl7Zm9y
KHZhciBqPTA7ajxzZWxUZXh0QXJyLmxlbmd0aDtqKyspe2luc2VydFRleHQ9aW5z
ZXJ0VGV4dCtwcmUrc2VsVGV4dEFycltqXStwb3N0O2lmKGohPXNlbFRleHRBcnIu
bGVuZ3RoLTEpe2luc2VydFRleHQrPSJcbiI7fX19ZWxzZXtpbnNlcnRUZXh0PXBy
ZStzZWxUZXh0K3Bvc3Q7fQp2YXIgaW5zZXJ0TGluZXM9aW5zZXJ0VGV4dC5zcGxp
dCgiXG4iKTtyYW5nZS5leHRyYWN0Q29udGVudHMoKTt2YXIgZmlyc3ROb2RlPW51
bGwsbGFzdE5vZGU9bnVsbDt2YXIgc2VsU0M9bnVsbCxzZWxFQz1udWxsLHNlbFNP
PW51bGwsc2VsRU89bnVsbCxvZmZzZXQ9MDtmb3IodmFyIGk9aW5zZXJ0TGluZXMu
bGVuZ3RoLTE7aT49MDtpLS0pe2ZpcnN0Tm9kZT1jb250ZXh0LiRpZnJhbWVbMF0u
Y29udGVudFdpbmRvdy5kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShpbnNlcnRMaW5l
c1tpXSk7cmFuZ2UuaW5zZXJ0Tm9kZShmaXJzdE5vZGUpO2xhc3ROb2RlPWxhc3RO
b2RlfHxmaXJzdE5vZGU7dmFyIG5ld09mZnNldD1vZmZzZXQraW5zZXJ0TGluZXNb
aV0ubGVuZ3RoO2lmKCFzZWxFQyYmcG9zdC5sZW5ndGg8PW5ld09mZnNldCl7c2Vs
RUM9Zmlyc3ROb2RlO3NlbEVPPXNlbEVDLm5vZGVWYWx1ZS5sZW5ndGgtKHBvc3Qu
bGVuZ3RoLW9mZnNldCk7fQppZihzZWxFQyYmIXNlbFNDJiZwcmUubGVuZ3RoPj1p
bnNlcnRUZXh0Lmxlbmd0aC1uZXdPZmZzZXQpe3NlbFNDPWZpcnN0Tm9kZTtzZWxT
Tz1wcmUubGVuZ3RoLShpbnNlcnRUZXh0Lmxlbmd0aC1uZXdPZmZzZXQpO30Kb2Zm
c2V0PW5ld09mZnNldDtpZihpPjApe2ZpcnN0Tm9kZT1jb250ZXh0LiRpZnJhbWVb
MF0uY29udGVudFdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdicicpO3Jh
bmdlLmluc2VydE5vZGUoZmlyc3ROb2RlKTtuZXdPZmZzZXQ9b2Zmc2V0KzE7aWYo
IXNlbEVDJiZwb3N0Lmxlbmd0aDw9bmV3T2Zmc2V0KXtzZWxFQz1maXJzdE5vZGU7
c2VsRU89MS0ocG9zdC5sZW5ndGgtb2Zmc2V0KTt9CmlmKHNlbEVDJiYhc2VsU0Mm
JnByZS5sZW5ndGg+PWluc2VydFRleHQubGVuZ3RoLW5ld09mZnNldCl7c2VsU0M9
Zmlyc3ROb2RlO3NlbFNPPXByZS5sZW5ndGgtKGluc2VydFRleHQubGVuZ3RoLW5l
d09mZnNldCk7fQpvZmZzZXQ9bmV3T2Zmc2V0O319CmlmKGZpcnN0Tm9kZSl7Y29u
dGV4dC5mbi5zY3JvbGxUb1RvcCgkKGZpcnN0Tm9kZS5wYXJlbnROb2RlKSk7fQpp
ZihzZWxlY3RBZnRlcil7c2V0U2VsZWN0aW9uVG89e3N0YXJ0Q29udGFpbmVyOnNl
bFNDLGVuZENvbnRhaW5lcjpzZWxFQyxzdGFydDpzZWxTTyxlbmQ6c2VsRU99O31l
bHNlIGlmKGxhc3ROb2RlKXtzZXRTZWxlY3Rpb25Ubz17c3RhcnRDb250YWluZXI6
bGFzdE5vZGUsZW5kQ29udGFpbmVyOmxhc3ROb2RlLHN0YXJ0Omxhc3ROb2RlLm5v
ZGVWYWx1ZS5sZW5ndGgsZW5kOmxhc3ROb2RlLm5vZGVWYWx1ZS5sZW5ndGh9O319
ZWxzZSBpZihjb250ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5kb2N1bWVu
dC5zZWxlY3Rpb24pe2NvbnRleHQuJGlmcmFtZVswXS5jb250ZW50V2luZG93LmZv
Y3VzKCk7dmFyIHJhbmdlPWNvbnRleHQuJGlmcmFtZVswXS5jb250ZW50V2luZG93
LmRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpO2lmKG9wdGlvbnMub3du
bGluZSYmcmFuZ2UubW92ZVN0YXJ0KXt2YXIgcmFuZ2UyPWNvbnRleHQuJGlmcmFt
ZVswXS5jb250ZW50V2luZG93LmRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5n
ZSgpO3JhbmdlMi5jb2xsYXBzZSgpO3JhbmdlMi5tb3ZlU3RhcnQoJ2NoYXJhY3Rl
cicsLTEpO2lmKHJhbmdlMi50ZXh0IT0iXHIiJiZyYW5nZTIudGV4dCE9IlxuIiYm
cmFuZ2UyLnRleHQhPSIiKXtwcmU9IlxuIitwcmU7fQp2YXIgcmFuZ2UzPWNvbnRl
eHQuJGlmcmFtZVswXS5jb250ZW50V2luZG93LmRvY3VtZW50LnNlbGVjdGlvbi5j
cmVhdGVSYW5nZSgpO3JhbmdlMy5jb2xsYXBzZShmYWxzZSk7cmFuZ2UzLm1vdmVF
bmQoJ2NoYXJhY3RlcicsMSk7aWYocmFuZ2UzLnRleHQhPSJcciImJnJhbmdlMy50
ZXh0IT0iXG4iJiZyYW5nZTMudGV4dCE9IiIpe3Bvc3QrPSJcbiI7fX0KaWYoY29s
bGFwc2VUb0VuZCl7cmFuZ2UuY29sbGFwc2UoZmFsc2UpO30KdmFyIGluc2VydFRl
eHQ9IiI7aWYob3B0aW9ucy5zcGxpdGxpbmVzKXtmb3IodmFyIGo9MDtqPHNlbFRl
eHRBcnIubGVuZ3RoO2orKyl7aW5zZXJ0VGV4dD1pbnNlcnRUZXh0K3ByZStzZWxU
ZXh0QXJyW2pdK3Bvc3Q7aWYoaiE9c2VsVGV4dEFyci5sZW5ndGgtMSl7aW5zZXJ0
VGV4dCs9IlxuIjt9fX1lbHNle2luc2VydFRleHQ9cHJlK3NlbFRleHQrcG9zdDt9
CnJhbmdlLnBhc3RlSFRNTChpbnNlcnRUZXh0LnJlcGxhY2UoL1w8L2csJyZsdDsn
KS5yZXBsYWNlKC8+L2csJyZndDsnKS5yZXBsYWNlKC9ccj9cbi9nLCc8YnIgLz4n
KSk7aWYoc2VsZWN0QWZ0ZXIpe3JhbmdlLm1vdmVTdGFydCgnY2hhcmFjdGVyJywt
cG9zdC5sZW5ndGgtc2VsVGV4dC5sZW5ndGgpO3JhbmdlLm1vdmVFbmQoJ2NoYXJh
Y3RlcicsLXBvc3QubGVuZ3RoKTtyYW5nZS5zZWxlY3QoKTt9fQppZihzZXRTZWxl
Y3Rpb25Ubyl7Y29udGV4dC5mbi5zZXRTZWxlY3Rpb24oc2V0U2VsZWN0aW9uVG8p
O30KJChjb250ZXh0LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5kb2N1bWVudCku
dHJpZ2dlcignZW5jYXBzdWxhdGVTZWxlY3Rpb24nLFtwcmUsb3B0aW9ucy5wZXJp
LHBvc3Qsb3B0aW9ucy5vd25saW5lLG9wdGlvbnMucmVwbGFjZV0pO3JldHVybiBj
b250ZXh0LiR0ZXh0YXJlYTt9LCdnZXRDYXJldFBvc2l0aW9uJzpmdW5jdGlvbihv
cHRpb25zKXt2YXIgc3RhcnRQb3M9bnVsbCxlbmRQb3M9bnVsbDtpZihjb250ZXh0
LiRpZnJhbWVbMF0uY29udGVudFdpbmRvdy5nZXRTZWxlY3Rpb24pe3ZhciBzZWxl
Y3Rpb249Y29udGV4dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0
aW9uKCk7aWYoc2VsZWN0aW9uLnJhbmdlQ291bnQ9PTApe3JldHVyblswLDBdO30K
dmFyIHNjPXNlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnN0YXJ0Q29udGFpbmVyLGVj
PXNlbGVjdGlvbi5nZXRSYW5nZUF0KDApLmVuZENvbnRhaW5lcjt2YXIgc289c2Vs
ZWN0aW9uLmdldFJhbmdlQXQoMCkuc3RhcnRPZmZzZXQsZW89c2VsZWN0aW9uLmdl
dFJhbmdlQXQoMCkuZW5kT2Zmc2V0O2lmKHNjLm5vZGVOYW1lPT0nQk9EWScpe3Zh
ciBuPXNjLmZpcnN0Q2hpbGQ7Zm9yKHZhciBpPTA7aTxzby0xJiZuO2krKyl7bj1u
Lm5leHRTaWJsaW5nO30Kc2M9bjtzbz0wO30KaWYoZWMubm9kZU5hbWU9PSdCT0RZ
Jyl7dmFyIG49ZWMuZmlyc3RDaGlsZDtmb3IodmFyIGk9MDtpPGVvLTEmJm47aSsr
KXtuPW4ubmV4dFNpYmxpbmc7fQplYz1uO2VvPTA7fQp3aGlsZShzYy5maXJzdENo
aWxkKXtzYz1zYy5maXJzdENoaWxkO30Kd2hpbGUoZWMuZmlyc3RDaGlsZCl7ZWM9
ZWMuZmlyc3RDaGlsZDt9CmNvbnRleHQuZm4uZ2V0T2Zmc2V0KDApO3ZhciBvO2Zv
cihvIGluIGNvbnRleHQub2Zmc2V0cyl7aWYoc3RhcnRQb3M9PT1udWxsJiZjb250
ZXh0Lm9mZnNldHNbb10ubm9kZT09c2Mpe3N0YXJ0UG9zPX5+bytzby1jb250ZXh0
Lm9mZnNldHNbb10ub2Zmc2V0O30KaWYoc3RhcnRQb3MhPT1udWxsJiZjb250ZXh0
Lm9mZnNldHNbb10ubm9kZT09ZWMpe2VuZFBvcz1+fm8rZW8tY29udGV4dC5vZmZz
ZXRzW29dLm9mZnNldDticmVhazt9fX1lbHNlIGlmKGNvbnRleHQuJGlmcmFtZVsw
XS5jb250ZW50V2luZG93LmRvY3VtZW50LnNlbGVjdGlvbil7dmFyIGQ9Y29udGV4
dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7dmFyIHBvc3RGaW5p
c2hlZD1mYWxzZTt2YXIgcGVyaUZpbmlzaGVkPWZhbHNlO3ZhciBwb3N0RmluaXNo
ZWQ9ZmFsc2U7dmFyIHByZVRleHQscmF3UHJlVGV4dCxwZXJpVGV4dDt2YXIgcmF3
UGVyaVRleHQscG9zdFRleHQscmF3UG9zdFRleHQ7dHJ5e3ZhciBwZXJpUmFuZ2U9
ZC5zZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKS5kdXBsaWNhdGUoKTt2YXIgcHJlUmFu
Z2U9ZC5ib2R5LmNyZWF0ZVRleHRSYW5nZSgpO3ByZVJhbmdlLnNldEVuZFBvaW50
KCJFbmRUb1N0YXJ0IixwZXJpUmFuZ2UpO3ZhciBwb3N0UmFuZ2U9ZC5ib2R5LmNy
ZWF0ZVRleHRSYW5nZSgpO3Bvc3RSYW5nZS5zZXRFbmRQb2ludCgiU3RhcnRUb0Vu
ZCIscGVyaVJhbmdlKTtwcmVUZXh0PXJhd1ByZVRleHQ9cHJlUmFuZ2UudGV4dDtw
ZXJpVGV4dD1yYXdQZXJpVGV4dD1wZXJpUmFuZ2UudGV4dDtwb3N0VGV4dD1yYXdQ
b3N0VGV4dD1wb3N0UmFuZ2UudGV4dDtkb3tpZighcG9zdEZpbmlzaGVkKXtpZihw
cmVSYW5nZS5jb21wYXJlRW5kUG9pbnRzKCJTdGFydFRvRW5kIixwcmVSYW5nZSk9
PTApe3Bvc3RGaW5pc2hlZD10cnVlO31lbHNle3ByZVJhbmdlLm1vdmVFbmQoImNo
YXJhY3RlciIsLTEpCmlmKHByZVJhbmdlLnRleHQ9PXByZVRleHQpe3Jhd1ByZVRl
eHQrPSJcclxuIjt9ZWxzZXtwb3N0RmluaXNoZWQ9dHJ1ZTt9fX0KaWYoIXBlcmlG
aW5pc2hlZCl7aWYocGVyaVJhbmdlLmNvbXBhcmVFbmRQb2ludHMoIlN0YXJ0VG9F
bmQiLHBlcmlSYW5nZSk9PTApe3BlcmlGaW5pc2hlZD10cnVlO31lbHNle3BlcmlS
YW5nZS5tb3ZlRW5kKCJjaGFyYWN0ZXIiLC0xKQppZihwZXJpUmFuZ2UudGV4dD09
cGVyaVRleHQpe3Jhd1BlcmlUZXh0Kz0iXHJcbiI7fWVsc2V7cGVyaUZpbmlzaGVk
PXRydWU7fX19CmlmKCFwb3N0RmluaXNoZWQpe2lmKHBvc3RSYW5nZS5jb21wYXJl
RW5kUG9pbnRzKCJTdGFydFRvRW5kIixwb3N0UmFuZ2UpPT0wKXtwb3N0RmluaXNo
ZWQ9dHJ1ZTt9ZWxzZXtwb3N0UmFuZ2UubW92ZUVuZCgiY2hhcmFjdGVyIiwtMSkK
aWYocG9zdFJhbmdlLnRleHQ9PXBvc3RUZXh0KXtyYXdQb3N0VGV4dCs9IlxyXG4i
O31lbHNle3Bvc3RGaW5pc2hlZD10cnVlO319fX13aGlsZSgoIXBvc3RGaW5pc2hl
ZHx8IXBlcmlGaW5pc2hlZHx8IXBvc3RGaW5pc2hlZCkpO3N0YXJ0UG9zPXJhd1By
ZVRleHQucmVwbGFjZSgvXHJcbi9nLCJcbiIpLmxlbmd0aDtlbmRQb3M9c3RhcnRQ
b3MrcmF3UGVyaVRleHQucmVwbGFjZSgvXHJcbi9nLCJcbiIpLmxlbmd0aDt9Y2F0
Y2goZSl7c3RhcnRQb3M9ZW5kUG9zPTA7fX0KcmV0dXJuW3N0YXJ0UG9zLGVuZFBv
c107fSwnc2V0U2VsZWN0aW9uJzpmdW5jdGlvbihvcHRpb25zKXt2YXIgc2M9b3B0
aW9ucy5zdGFydENvbnRhaW5lcixlYz1vcHRpb25zLmVuZENvbnRhaW5lcjtzYz1z
YyYmc2MuanF1ZXJ5P3NjWzBdOnNjO2VjPWVjJiZlYy5qcXVlcnk/ZWNbMF06ZWM7
aWYoY29udGV4dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0aW9u
KXt2YXIgc3RhcnQ9b3B0aW9ucy5zdGFydCxlbmQ9b3B0aW9ucy5lbmQ7aWYoIXNj
fHwhZWMpe3ZhciBzPWNvbnRleHQuZm4uZ2V0T2Zmc2V0KHN0YXJ0KTt2YXIgZT1j
b250ZXh0LmZuLmdldE9mZnNldChlbmQpO3NjPXM/cy5ub2RlOm51bGw7ZWM9ZT9l
Lm5vZGU6bnVsbDtzdGFydD1zP3Mub2Zmc2V0Om51bGw7ZW5kPWU/ZS5vZmZzZXQ6
bnVsbDtpZihzYyE9bnVsbCYmc2Mubm9kZU5hbWU9PScjdGV4dCcmJnN0YXJ0PnNj
Lm5vZGVWYWx1ZS5sZW5ndGgpe3N0YXJ0PXNjLm5vZGVWYWx1ZS5sZW5ndGgtMTt9
CmlmKGVjIT1udWxsJiZlYy5ub2RlTmFtZT09JyN0ZXh0JyYmZW5kPmVjLm5vZGVW
YWx1ZS5sZW5ndGgpe2VuZD1lYy5ub2RlVmFsdWUubGVuZ3RoLTE7fX0KaWYoIXNj
fHwhZWMpe3JldHVybiBjb250ZXh0LiR0ZXh0YXJlYTt9CnZhciBzZWw9Y29udGV4
dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0aW9uKCk7d2hpbGUo
c2MuZmlyc3RDaGlsZCYmc2Mubm9kZU5hbWUhPScjdGV4dCcpe3NjPXNjLmZpcnN0
Q2hpbGQ7fQp3aGlsZShlYy5maXJzdENoaWxkJiZlYy5ub2RlTmFtZSE9JyN0ZXh0
Jyl7ZWM9ZWMuZmlyc3RDaGlsZDt9CnZhciByYW5nZT1jb250ZXh0LiRpZnJhbWVb
MF0uY29udGVudFdpbmRvdy5kb2N1bWVudC5jcmVhdGVSYW5nZSgpO3JhbmdlLnNl
dFN0YXJ0KHNjLHN0YXJ0KTtyYW5nZS5zZXRFbmQoZWMsZW5kKTtzZWwucmVtb3Zl
QWxsUmFuZ2VzKCk7c2VsLmFkZFJhbmdlKHJhbmdlKTtjb250ZXh0LiRpZnJhbWVb
MF0uY29udGVudFdpbmRvdy5mb2N1cygpO31lbHNlIGlmKGNvbnRleHQuJGlmcmFt
ZVswXS5jb250ZW50V2luZG93LmRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdl
KXt2YXIgcmFuZ2U9Y29udGV4dC4kaWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZG9j
dW1lbnQuYm9keS5jcmVhdGVUZXh0UmFuZ2UoKTtpZihzYyl7cmFuZ2UubW92ZVRv
RWxlbWVudFRleHQoc2MpO30KcmFuZ2UuY29sbGFwc2UoKTtyYW5nZS5tb3ZlRW5k
KCdjaGFyYWN0ZXInLG9wdGlvbnMuc3RhcnQpO3ZhciByYW5nZTI9Y29udGV4dC4k
aWZyYW1lWzBdLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQuYm9keS5jcmVhdGVUZXh0
UmFuZ2UoKTtpZihlYyl7cmFuZ2UyLm1vdmVUb0VsZW1lbnRUZXh0KGVjKTt9CnJh
bmdlMi5jb2xsYXBzZSgpO3JhbmdlMi5tb3ZlRW5kKCdjaGFyYWN0ZXInLG9wdGlv
bnMuZW5kKTt2YXIgbWF0Y2hlcyxjb3VudGVkPTA7d2hpbGUobWF0Y2hlcz1yYW5n
ZS5odG1sVGV4dC5tYXRjaCgvXDxcL3BcPihcPGJyW15cPl0qXD4pK1w8cFw+L2dp
KSl7aWYobWF0Y2hlcy5sZW5ndGg8PWNvdW50ZWQpCmJyZWFrO3JhbmdlLm1vdmVF
bmQoJ2NoYXJhY3RlcicsbWF0Y2hlcy5sZW5ndGgpO2NvdW50ZWQrPW1hdGNoZXMu
bGVuZ3RoO30KcmFuZ2UyLm1vdmVFbmQoJ2NoYXJhY3RlcicsY291bnRlZCk7d2hp
bGUobWF0Y2hlcz1yYW5nZTIuaHRtbFRleHQubWF0Y2goL1w8XC9wXD4oXDxiclte
XD5dKlw+KStcPHBcPi9naSkpe2lmKG1hdGNoZXMubGVuZ3RoPD1jb3VudGVkKQpi
cmVhaztyYW5nZTIubW92ZUVuZCgnY2hhcmFjdGVyJyxtYXRjaGVzLmxlbmd0aCk7
Y291bnRlZCs9bWF0Y2hlcy5sZW5ndGg7fQpyYW5nZTIuc2V0RW5kUG9pbnQoJ1N0
YXJ0VG9FbmQnLHJhbmdlKTtyYW5nZTIuc2VsZWN0KCk7fQpyZXR1cm4gY29udGV4
dC4kdGV4dGFyZWE7fSwnc2Nyb2xsVG9DYXJldFBvc2l0aW9uJzpmdW5jdGlvbihv
cHRpb25zKXtjb250ZXh0LmZuLnNjcm9sbFRvVG9wKGNvbnRleHQuZm4uZ2V0RWxl
bWVudEF0Q3Vyc29yKCksdHJ1ZSk7fSwnc2Nyb2xsVG9Ub3AnOmZ1bmN0aW9uKCRl
bGVtZW50LGZvcmNlKXt2YXIgaHRtbD1jb250ZXh0LiRjb250ZW50LmNsb3Nlc3Qo
J2h0bWwnKSxib2R5PWNvbnRleHQuJGNvbnRlbnQuY2xvc2VzdCgnYm9keScpLHBh
cmVudEh0bWw9JCgnaHRtbCcpLHBhcmVudEJvZHk9JCgnYm9keScpO3ZhciB5PSRl
bGVtZW50Lm9mZnNldCgpLnRvcDtpZighJC5icm93c2VyLm1zaWUmJiEkZWxlbWVu
dC5pcygnYm9keScpKXt5PXBhcmVudEh0bWwuc2Nyb2xsVG9wKCk+MD95K2h0bWwu
c2Nyb2xsVG9wKCktcGFyZW50SHRtbC5zY3JvbGxUb3AoKTp5O3k9cGFyZW50Qm9k
eS5zY3JvbGxUb3AoKT4wP3krYm9keS5zY3JvbGxUb3AoKS1wYXJlbnRCb2R5LnNj
cm9sbFRvcCgpOnk7fQp2YXIgdG9wQm91bmQ9aHRtbC5zY3JvbGxUb3AoKT5ib2R5
LnNjcm9sbFRvcCgpP2h0bWwuc2Nyb2xsVG9wKCk6Ym9keS5zY3JvbGxUb3AoKSxi
b3R0b21Cb3VuZD10b3BCb3VuZCtjb250ZXh0LiRpZnJhbWUuaGVpZ2h0KCk7aWYo
Zm9yY2V8fHk8dG9wQm91bmR8fHk+Ym90dG9tQm91bmQpe2h0bWwuc2Nyb2xsVG9w
KHkpO2JvZHkuc2Nyb2xsVG9wKHkpO30KJGVsZW1lbnQudHJpZ2dlcignc2Nyb2xs
VG9Ub3AnKTt9LCdzYXZlU3R1ZmZGb3JJRSc6ZnVuY3Rpb24oKXtpZighJC5icm93
c2VyLm1zaWV8fGNvbnRleHQuJGlmcmFtZSkKcmV0dXJuO3ZhciBJSGF0ZUlFPXsn
c2Nyb2xsVG9wJzpjb250ZXh0LiR0ZXh0YXJlYS5zY3JvbGxUb3AoKSwncG9zJzpj
b250ZXh0LiR0ZXh0YXJlYS50ZXh0U2VsZWN0aW9uKCdnZXRDYXJldFBvc2l0aW9u
Jyx7c3RhcnRBbmRFbmQ6dHJ1ZX0pfTtjb250ZXh0LiR0ZXh0YXJlYS5kYXRhKCdJ
SGF0ZUlFJyxJSGF0ZUlFKTt9LCdyZXN0b3JlU3R1ZmZGb3JJRSc6ZnVuY3Rpb24o
KXtpZighJC5icm93c2VyLm1zaWV8fGNvbnRleHQuJGlmcmFtZSkKcmV0dXJuO3Zh
ciBJSGF0ZUlFPWNvbnRleHQuJHRleHRhcmVhLmRhdGEoJ0lIYXRlSUUnKTtpZigh
SUhhdGVJRSkKcmV0dXJuO2NvbnRleHQuJHRleHRhcmVhLnNjcm9sbFRvcChJSGF0
ZUlFLnNjcm9sbFRvcCk7Y29udGV4dC4kdGV4dGFyZWEudGV4dFNlbGVjdGlvbign
c2V0U2VsZWN0aW9uJyx7c3RhcnQ6SUhhdGVJRS5wb3NbMF0sZW5kOklIYXRlSUUu
cG9zWzFdfSk7Y29udGV4dC4kdGV4dGFyZWEuZGF0YSgnSUhhdGVJRScsbnVsbCk7
fX07Y29udGV4dC4kdGV4dGFyZWEud3JhcEFsbCgkKCc8ZGl2PjwvZGl2PicpLmFk
ZENsYXNzKCd3aWtpRWRpdG9yLXVpJykpLndyYXBBbGwoJCgnPGRpdj48L2Rpdj4n
KS5hZGRDbGFzcygnd2lraUVkaXRvci11aS12aWV3IHdpa2lFZGl0b3ItdWktdmll
dy13aWtpdGV4dCcpKS53cmFwQWxsKCQoJzxkaXY+PC9kaXY+JykuYWRkQ2xhc3Mo
J3dpa2lFZGl0b3ItdWktbGVmdCcpKS53cmFwQWxsKCQoJzxkaXY+PC9kaXY+Jyku
YWRkQ2xhc3MoJ3dpa2lFZGl0b3ItdWktYm90dG9tJykpLndyYXBBbGwoJCgnPGRp
dj48L2Rpdj4nKS5hZGRDbGFzcygnd2lraUVkaXRvci11aS10ZXh0JykpO2NvbnRl
eHQuJHVpPWNvbnRleHQuJHRleHRhcmVhLnBhcmVudCgpLnBhcmVudCgpLnBhcmVu
dCgpLnBhcmVudCgpLnBhcmVudCgpO2NvbnRleHQuJHdpa2l0ZXh0PWNvbnRleHQu
JHRleHRhcmVhLnBhcmVudCgpLnBhcmVudCgpLnBhcmVudCgpLnBhcmVudCgpO2Nv
bnRleHQuJHdpa2l0ZXh0LmJlZm9yZSgkKCc8ZGl2PjwvZGl2PicpLmFkZENsYXNz
KCd3aWtpRWRpdG9yLXVpLWNvbnRyb2xzJykuYXBwZW5kKCQoJzxkaXY+PC9kaXY+
JykuYWRkQ2xhc3MoJ3dpa2lFZGl0b3ItdWktdGFicycpLmhpZGUoKSkuYXBwZW5k
KCQoJzxkaXY+PC9kaXY+JykuYWRkQ2xhc3MoJ3dpa2lFZGl0b3ItdWktYnV0dG9u
cycpKSkuYmVmb3JlKCQoJzxkaXYgc3R5bGU9ImNsZWFyOmJvdGg7Ij48L2Rpdj4n
KSk7Y29udGV4dC4kY29udHJvbHM9Y29udGV4dC4kdWkuZmluZCgnLndpa2lFZGl0
b3ItdWktYnV0dG9ucycpLmhpZGUoKTtjb250ZXh0LiRidXR0b25zPWNvbnRleHQu
JHVpLmZpbmQoJy53aWtpRWRpdG9yLXVpLWJ1dHRvbnMnKTtjb250ZXh0LiR0YWJz
PWNvbnRleHQuJHVpLmZpbmQoJy53aWtpRWRpdG9yLXVpLXRhYnMnKTtjb250ZXh0
LiR1aS5hZnRlcigkKCc8ZGl2IHN0eWxlPSJjbGVhcjpib3RoOyI+PC9kaXY+Jykp
O2NvbnRleHQuJHdpa2l0ZXh0LmFwcGVuZCgkKCc8ZGl2PjwvZGl2PicpLmFkZENs
YXNzKCd3aWtpRWRpdG9yLXVpLXJpZ2h0JykpO2NvbnRleHQuJHdpa2l0ZXh0LmZp
bmQoJy53aWtpRWRpdG9yLXVpLWxlZnQnKS5wcmVwZW5kKCQoJzxkaXY+PC9kaXY+
JykuYWRkQ2xhc3MoJ3dpa2lFZGl0b3ItdWktdG9wJykpO2NvbnRleHQudmlldz0n
d2lraXRleHQnOyQod2luZG93KS5yZXNpemUoZnVuY3Rpb24oZXZlbnQpe2NvbnRl
eHQuZm4udHJpZ2dlcigncmVzaXplJyxldmVudCk7fSk7fQp2YXIgYXJncz0kLm1h
a2VBcnJheShhcmd1bWVudHMpO2lmKHR5cGVvZiBjb250ZXh0LiRpZnJhbWU9PT0n
dW5kZWZpbmVkJyYmYXJnc1swXT09J2FkZE1vZHVsZScmJnR5cGVvZiBhcmdzWzFd
IT0ndW5kZWZpbmVkJyl7dmFyIG1vZHVsZXM9YXJnc1sxXTtpZih0eXBlb2YgbW9k
dWxlcyE9Im9iamVjdCIpe21vZHVsZXM9e307bW9kdWxlc1thcmdzWzFdXT0nJzt9
CmZvcihtb2R1bGUgaW4gbW9kdWxlcyl7aWYobW9kdWxlIGluICQud2lraUVkaXRv
ci5tb2R1bGVzJiYkLndpa2lFZGl0b3IuaXNTdXBwb3J0ZWQoJC53aWtpRWRpdG9y
Lm1vZHVsZXNbbW9kdWxlXSkmJiQud2lraUVkaXRvci5pc1JlcXVpcmVkKCQud2lr
aUVkaXRvci5tb2R1bGVzW21vZHVsZV0sJ2lmcmFtZScpKXtjb250ZXh0LmZuLnNl
dHVwSWZyYW1lKCk7YnJlYWs7fX19CmlmKGFyZ3MubGVuZ3RoPjApe3ZhciBjYWxs
PWFyZ3Muc2hpZnQoKTtpZihjYWxsIGluIGNvbnRleHQuYXBpKXtjb250ZXh0LmFw
aVtjYWxsXShjb250ZXh0LHR5cGVvZiBhcmdzWzBdPT0ndW5kZWZpbmVkJz97fTph
cmdzWzBdKTt9fQpyZXR1cm4gJCh0aGlzKS5kYXRhKCd3aWtpRWRpdG9yLWNvbnRl
eHQnLGNvbnRleHQpO307fSkoalF1ZXJ5KTtSZWdFeHAuZXNjYXBlPWZ1bmN0aW9u
KHMpe3JldHVybiBzLnJlcGxhY2UoLyhbLiorP14ke30oKXxcL1xcW1xdXSkvZywn
XFwkMScpO307KGZ1bmN0aW9uKCQpeyQud2lraUVkaXRvci5tb2R1bGVzLmRpYWxv
Z3M9eydicm93c2Vycyc6eydsdHInOnsnbXNpZSc6W1snPj0nLDddXSwnZmlyZWZv
eCc6W1snPj0nLDJdLFsnIT0nLCcyLjAnXSxbJyE9JywnMi4wLjAuMSddLFsnIT0n
LCcyLjAuMC4yJ10sWychPScsJzIuMC4wLjMnXSxbJyE9JywnMi4wLjAuNCddXSwn
b3BlcmEnOltbJz49Jyw5LjZdXSwnc2FmYXJpJzpbWyc+PScsM11dLCdjaHJvbWUn
OltbJz49JywzXV19LCdydGwnOnsnbXNpZSc6W1snPj0nLDddXSwnZmlyZWZveCc6
W1snPj0nLDJdLFsnIT0nLCcyLjAnXSxbJyE9JywnMi4wLjAuMSddLFsnIT0nLCcy
LjAuMC4yJ10sWychPScsJzIuMC4wLjMnXSxbJyE9JywnMi4wLjAuNCddXSwnb3Bl
cmEnOltbJz49Jyw5LjZdXSwnc2FmYXJpJzpbWyc+PScsM11dLCdjaHJvbWUnOltb
Jz49JywzXV19fSxhcGk6e2FkZERpYWxvZzpmdW5jdGlvbihjb250ZXh0LGRhdGEp
eyQud2lraUVkaXRvci5tb2R1bGVzLmRpYWxvZ3MuZm4uY3JlYXRlKGNvbnRleHQs
ZGF0YSl9LG9wZW5EaWFsb2c6ZnVuY3Rpb24oY29udGV4dCxtb2R1bGUpe213LnVz
YWJpbGl0eS5sb2FkKFsnJGoudWknLCckai51aS5kaWFsb2cnLCckai51aS5kcmFn
Z2FibGUnLCckai51aS5yZXNpemFibGUnXSxmdW5jdGlvbigpe2lmKG1vZHVsZSBp
biAkLndpa2lFZGl0b3IubW9kdWxlcy5kaWFsb2dzLm1vZHVsZXMpe3ZhciBtb2Q9
JC53aWtpRWRpdG9yLm1vZHVsZXMuZGlhbG9ncy5tb2R1bGVzW21vZHVsZV07dmFy
ICRkaWFsb2c9JCgnIycrbW9kLmlkKTtpZigkZGlhbG9nLmxlbmd0aD09MCl7JC53
aWtpRWRpdG9yLm1vZHVsZXMuZGlhbG9ncy5mbi5yZWFsbHlDcmVhdGUoY29udGV4
dCxtb2QpOyRkaWFsb2c9JCgnIycrbW9kLmlkKTt9CiRkaWFsb2cuY2xvc2VzdCgn
LnVpLWRpYWxvZycpLmZpbmQoJy51aS1kaWFsb2ctdGl0bGViYXItY2xvc2UnKS5y
ZW1vdmVDbGFzcygndWktc3RhdGUtZm9jdXMnKTskZGlhbG9nLmRpYWxvZygnb3Bl
bicpO319KTt9LGNsb3NlRGlhbG9nOmZ1bmN0aW9uKGNvbnRleHQsbW9kdWxlKXtp
Zihtb2R1bGUgaW4gJC53aWtpRWRpdG9yLm1vZHVsZXMuZGlhbG9ncy5tb2R1bGVz
KXskKCcjJyskLndpa2lFZGl0b3IubW9kdWxlcy5kaWFsb2dzLm1vZHVsZXNbbW9k
dWxlXS5pZCkuZGlhbG9nKCdjbG9zZScpO319fSxmbjp7Y3JlYXRlOmZ1bmN0aW9u
KGNvbnRleHQsY29uZmlnKXtmb3IobW9kIGluIGNvbmZpZyl7dmFyIG1vZHVsZT1j
b25maWdbbW9kXTt2YXIgZmlsdGVyZWQ9ZmFsc2U7aWYodHlwZW9mIG1vZHVsZS5m
aWx0ZXJzIT0ndW5kZWZpbmVkJyl7Zm9yKHZhciBpPTA7aTxtb2R1bGUuZmlsdGVy
cy5sZW5ndGg7aSsrKXtpZigkKG1vZHVsZS5maWx0ZXJzW2ldKS5sZW5ndGg9PTAp
e2ZpbHRlcmVkPXRydWU7YnJlYWs7fX19CmlmKCFmaWx0ZXJlZCYmJC53aWtpRWRp
dG9yLmlzU3VwcG9ydGVkKG1vZHVsZSkmJiQoJyMnK21vZHVsZS5pZCkuc2l6ZSgp
PT0wKXskLndpa2lFZGl0b3IubW9kdWxlcy5kaWFsb2dzLm1vZHVsZXNbbW9kXT1t
b2R1bGU7aWYodHlwZW9mIGNvbnRleHQuJGlmcmFtZT09J3VuZGVmaW5lZCcmJiQu
d2lraUVkaXRvci5pc1JlcXVpcmVkKG1vZHVsZSwnaWZyYW1lJykpe2NvbnRleHQu
Zm4uc2V0dXBJZnJhbWUoKTt9CmNvbnRleHQuJHRleHRhcmVhLnRyaWdnZXIoJ3dp
a2lFZGl0b3ItZGlhbG9ncy1zZXR1cC0nK21vZCk7fX19LHJlYWxseUNyZWF0ZTpm
dW5jdGlvbihjb250ZXh0LG1vZHVsZSl7dmFyIGNvbmZpZ3VyYXRpb249bW9kdWxl
LmRpYWxvZztjb25maWd1cmF0aW9uLmJnaWZyYW1lPXRydWU7Y29uZmlndXJhdGlv
bi5hdXRvT3Blbj1mYWxzZTtjb25maWd1cmF0aW9uLm1vZGFsPXRydWU7Y29uZmln
dXJhdGlvbi50aXRsZT0kLndpa2lFZGl0b3IuYXV0b01zZyhtb2R1bGUsJ3RpdGxl
Jyk7Y29uZmlndXJhdGlvbi5uZXdCdXR0b25zPXt9O2Zvcihtc2cgaW4gY29uZmln
dXJhdGlvbi5idXR0b25zKQpjb25maWd1cmF0aW9uLm5ld0J1dHRvbnNbbXcudXNh
YmlsaXR5LmdldE1zZyhtc2cpXT1jb25maWd1cmF0aW9uLmJ1dHRvbnNbbXNnXTtj
b25maWd1cmF0aW9uLmJ1dHRvbnM9Y29uZmlndXJhdGlvbi5uZXdCdXR0b25zO3Zh
ciBkaWFsb2dEaXY9JCgnPGRpdiAvPicpLmF0dHIoJ2lkJyxtb2R1bGUuaWQpLmh0
bWwobW9kdWxlLmh0bWwpLmRhdGEoJ2NvbnRleHQnLGNvbnRleHQpLmFwcGVuZFRv
KCQoJ2JvZHknKSkuZWFjaChtb2R1bGUuaW5pdCkuZGlhbG9nKGNvbmZpZ3VyYXRp
b24pOyQud2lraUVkaXRvci5tb2R1bGVzLmRpYWxvZ3MuZm4uc2V0VGFiaW5kZXhl
cyhkaWFsb2dEaXYuY2xvc2VzdCgnLnVpLWRpYWxvZycpLmZpbmQoJ2J1dHRvbicp
Lm5vdCgnW3RhYmluZGV4XScpKTtpZighKCdyZXNpemVtZSdpbiBtb2R1bGUpfHxt
b2R1bGUucmVzaXplbWUpe2RpYWxvZ0Rpdi5iaW5kKCdkaWFsb2dvcGVuJywkLndp
a2lFZGl0b3IubW9kdWxlcy5kaWFsb2dzLmZuLnJlc2l6ZSkuZmluZCgnLnVpLXRh
YnMnKS5iaW5kKCd0YWJzc2hvdycsZnVuY3Rpb24oKXskKHRoaXMpLmNsb3Nlc3Qo
Jy51aS1kaWFsb2ctY29udGVudCcpLmVhY2goJC53aWtpRWRpdG9yLm1vZHVsZXMu
ZGlhbG9ncy5mbi5yZXNpemUpO30pO30KZGlhbG9nRGl2LmJpbmQoJ2RpYWxvZ2Ns
b3NlJyxmdW5jdGlvbigpe2NvbnRleHQuZm4ucmVzdG9yZVNlbGVjdGlvbigpO30p
O2NvbnRleHQuJHRleHRhcmVhLnRyaWdnZXIoJ3dpa2lFZGl0b3ItZGlhbG9ncy1s
b2FkZWQtJyttb2QpO30scmVzaXplOmZ1bmN0aW9uKCl7dmFyIHdyYXBwZXI9JCh0
aGlzKS5jbG9zZXN0KCcudWktZGlhbG9nJyk7dmFyIG9sZFdpZHRoPXdyYXBwZXIu
d2lkdGgoKTt2YXIgb2xkSGlkZGVuPSQodGhpcykuZmluZCgnKicpLm5vdCgnOnZp
c2libGUnKTtvbGRIaWRkZW4uZWFjaChmdW5jdGlvbigpeyQodGhpcykuZGF0YSgn
b2xkc3R5bGUnLCQodGhpcykuYXR0cignc3R5bGUnKSk7fSk7b2xkSGlkZGVuLnNo
b3coKTt2YXIgb2xkV1M9JCh0aGlzKS5jc3MoJ3doaXRlLXNwYWNlJyk7JCh0aGlz
KS5jc3MoJ3doaXRlLXNwYWNlJywnbm93cmFwJyk7aWYod3JhcHBlci53aWR0aCgp
PD0kKHRoaXMpLmdldCgwKS5zY3JvbGxXaWR0aCl7dmFyIHRoaXNXaWR0aD0kKHRo
aXMpLmRhdGEoJ3RoaXNXaWR0aCcpPyQodGhpcykuZGF0YSgndGhpc1dpZHRoJyk6
MDt0aGlzV2lkdGg9TWF0aC5tYXgoJCh0aGlzKS5nZXQoMCkuc2Nyb2xsV2lkdGgs
dGhpc1dpZHRoKTskKHRoaXMpLndpZHRoKHRoaXNXaWR0aCk7JCh0aGlzKS5kYXRh
KCd0aGlzV2lkdGgnLHRoaXNXaWR0aCk7dmFyIHdyYXBwZXJXaWR0aD0kKHRoaXMp
LmRhdGEoJ3dyYXBwZXJXaWR0aCcpPyQodGhpcykuZGF0YSgnd3JhcHBlcldpZHRo
Jyk6MDt3cmFwcGVyV2lkdGg9TWF0aC5tYXgod3JhcHBlci5nZXQoMCkuc2Nyb2xs
V2lkdGgsd3JhcHBlcldpZHRoKTt3cmFwcGVyLndpZHRoKHdyYXBwZXJXaWR0aCk7
JCh0aGlzKS5kYXRhKCd3cmFwcGVyV2lkdGgnLHdyYXBwZXJXaWR0aCk7JCh0aGlz
KS5kaWFsb2coeyd3aWR0aCc6d3JhcHBlci53aWR0aCgpfSk7d3JhcHBlci5jc3Mo
J2xlZnQnLHBhcnNlSW50KHdyYXBwZXIuY3NzKCdsZWZ0JykpLSh3cmFwcGVyLndp
ZHRoKCktb2xkV2lkdGgpLzIpO30KJCh0aGlzKS5jc3MoJ3doaXRlLXNwYWNlJyxv
bGRXUyk7b2xkSGlkZGVuLmVhY2goZnVuY3Rpb24oKXskKHRoaXMpLmF0dHIoJ3N0
eWxlJywkKHRoaXMpLmRhdGEoJ29sZHN0eWxlJykpO30pO30sc2V0VGFiaW5kZXhl
czpmdW5jdGlvbigkZWxlbWVudHMpe3ZhciB0YWJJbmRleD1tdy51c2FiaWxpdHku
Z2V0TWF4VGFiSW5kZXgoKSsxOyRlbGVtZW50cy5lYWNoKGZ1bmN0aW9uKCl7JGoo
dGhpcykuYXR0cigndGFiaW5kZXgnLHRhYkluZGV4KyspO30pO319LG1vZHVsZXM6
e30scXVpY2tEaWFsb2c6ZnVuY3Rpb24oYm9keSxzZXR0aW5ncyl7JCgnPGRpdiAv
PicpLnRleHQoYm9keSkuYXBwZW5kVG8oJCgnYm9keScpKS5kaWFsb2coJC5leHRl
bmQoe2JnaWZyYW1lOnRydWUsbW9kYWw6dHJ1ZX0sc2V0dGluZ3MpKS5kaWFsb2co
J29wZW4nKTt9fTt9KShqUXVlcnkpOyhmdW5jdGlvbigkKXskLndpa2lFZGl0b3Iu
bW9kdWxlcy50b29sYmFyPXthcGk6e2FkZFRvVG9vbGJhcjpmdW5jdGlvbihjb250
ZXh0LGRhdGEpe2Zvcih0eXBlIGluIGRhdGEpe3N3aXRjaCh0eXBlKXtjYXNlJ3Nl
Y3Rpb25zJzp2YXIgJHNlY3Rpb25zPWNvbnRleHQubW9kdWxlcy50b29sYmFyLiR0
b29sYmFyLmZpbmQoJ2Rpdi5zZWN0aW9ucycpO3ZhciAkdGFicz1jb250ZXh0Lm1v
ZHVsZXMudG9vbGJhci4kdG9vbGJhci5maW5kKCdkaXYudGFicycpO2ZvcihzZWN0
aW9uIGluIGRhdGFbdHlwZV0pe2lmKHNlY3Rpb249PSdtYWluJyl7Y29udGV4dC5t
b2R1bGVzLnRvb2xiYXIuJHRvb2xiYXIucHJlcGVuZCgkLndpa2lFZGl0b3IubW9k
dWxlcy50b29sYmFyLmZuLmJ1aWxkU2VjdGlvbihjb250ZXh0LHNlY3Rpb24sZGF0
YVt0eXBlXVtzZWN0aW9uXSkpO2NvbnRpbnVlO30KJHNlY3Rpb25zLmFwcGVuZCgk
Lndpa2lFZGl0b3IubW9kdWxlcy50b29sYmFyLmZuLmJ1aWxkU2VjdGlvbihjb250
ZXh0LHNlY3Rpb24sZGF0YVt0eXBlXVtzZWN0aW9uXSkpOyR0YWJzLmFwcGVuZCgk
Lndpa2lFZGl0b3IubW9kdWxlcy50b29sYmFyLmZuLmJ1aWxkVGFiKGNvbnRleHQs
c2VjdGlvbixkYXRhW3R5cGVdW3NlY3Rpb25dKSk7JHNlY3Rpb249JHNlY3Rpb25z
LmZpbmQoJy5zZWN0aW9uOnZpc2libGUnKTtpZigkc2VjdGlvbi5zaXplKCkpeyRz
ZWN0aW9ucy5hbmltYXRlKHsnaGVpZ2h0Jzokc2VjdGlvbi5vdXRlckhlaWdodCgp
fSwnZmFzdCcpO319CmJyZWFrO2Nhc2UnZ3JvdXBzJzppZighKCdzZWN0aW9uJ2lu
IGRhdGEpKXtjb250aW51ZTt9CnZhciAkc2VjdGlvbj1jb250ZXh0Lm1vZHVsZXMu
dG9vbGJhci4kdG9vbGJhci5maW5kKCdkaXZbcmVsPScrZGF0YS5zZWN0aW9uKydd
LnNlY3Rpb24nKTtmb3IoZ3JvdXAgaW4gZGF0YVt0eXBlXSl7JHNlY3Rpb24uYXBw
ZW5kKCQud2lraUVkaXRvci5tb2R1bGVzLnRvb2xiYXIuZm4uYnVpbGRHcm91cChj
b250ZXh0LGdyb3VwLGRhdGFbdHlwZV1bZ3JvdXBdKSk7fQpicmVhaztjYXNlJ3Rv
b2xzJzppZighKCdzZWN0aW9uJ2luIGRhdGEmJidncm91cCdpbiBkYXRhKSl7Y29u
dGludWU7fQp2YXIgJGdyb3VwPWNvbnRleHQubW9kdWxlcy50b29sYmFyLiR0b29s
YmFyLmZpbmQoJ2RpdltyZWw9JytkYXRhLnNlY3Rpb24rJ10uc2VjdGlvbiAnKydk
aXZbcmVsPScrZGF0YS5ncm91cCsnXS5ncm91cCcpO2Zvcih0b29sIGluIGRhdGFb
dHlwZV0peyRncm91cC5hcHBlbmQoJC53aWtpRWRpdG9yLm1vZHVsZXMudG9vbGJh
ci5mbi5idWlsZFRvb2woY29udGV4dCx0b29sLGRhdGFbdHlwZV1bdG9vbF0pKTt9
CmlmKCRncm91cC5jaGlsZHJlbigpLmxlbmd0aCl7JGdyb3VwLnNob3coKTt9CmJy
ZWFrO2Nhc2UncGFnZXMnOmlmKCEoJ3NlY3Rpb24naW4gZGF0YSkpe2NvbnRpbnVl
O30KdmFyICRwYWdlcz1jb250ZXh0Lm1vZHVsZXMudG9vbGJhci4kdG9vbGJhci5m
aW5kKCdkaXZbcmVsPScrZGF0YS5zZWN0aW9uKyddLnNlY3Rpb24gLnBhZ2VzJyk7
dmFyICRpbmRleD1jb250ZXh0Lm1vZHVsZXMudG9vbGJhci4kdG9vbGJhci5maW5k
KCdkaXZbcmVsPScrZGF0YS5zZWN0aW9uKyddLnNlY3Rpb24gLmluZGV4Jyk7Zm9y
KHBhZ2UgaW4gZGF0YVt0eXBlXSl7JHBhZ2VzLmFwcGVuZCgkLndpa2lFZGl0b3Iu
bW9kdWxlcy50b29sYmFyLmZuLmJ1aWxkUGFnZShjb250ZXh0LHBhZ2UsZGF0YVt0
eXBlXVtwYWdlXSkpOyRpbmRleC5hcHBlbmQoJC53aWtpRWRpdG9yLm1vZHVsZXMu
dG9vbGJhci5mbi5idWlsZEJvb2ttYXJrKGNvbnRleHQscGFnZSxkYXRhW3R5cGVd
W3BhZ2VdKSk7fQokLndpa2lFZGl0b3IubW9kdWxlcy50b29sYmFyLmZuLnVwZGF0
ZUJvb2tsZXRTZWxlY3Rpb24oY29udGV4dCxwYWdlLCRwYWdlcywkaW5kZXgpO2Jy
ZWFrO2Nhc2Uncm93cyc6aWYoISgnc2VjdGlvbidpbiBkYXRhJiYncGFnZSdpbiBk
YXRhKSl7Y29udGludWU7fQp2YXIgJHRhYmxlPWNvbnRleHQubW9kdWxlcy50b29s
YmFyLiR0b29sYmFyLmZpbmQoJ2RpdltyZWw9JytkYXRhLnNlY3Rpb24rJ10uc2Vj
dGlvbiAnKydkaXZbcmVsPScrZGF0YS5wYWdlKyddLnBhZ2UgdGFibGUnKTtmb3Io
cm93IGluIGRhdGFbdHlwZV0peyR0YWJsZS5hcHBlbmQoJC53aWtpRWRpdG9yLm1v
ZHVsZXMudG9vbGJhci5mbi5idWlsZFJvdyhjb250ZXh0LGRhdGFbdHlwZV1bcm93
XSkpO30KYnJlYWs7Y2FzZSdjaGFyYWN0ZXJzJzppZighKCdzZWN0aW9uJ2luIGRh
dGEmJidwYWdlJ2luIGRhdGEpKXtjb250aW51ZTt9CiRjaGFyYWN0ZXJzPWNvbnRl
eHQubW9kdWxlcy50b29sYmFyLiR0b29sYmFyLmZpbmQoJ2RpdltyZWw9JytkYXRh
LnNlY3Rpb24rJ10uc2VjdGlvbiAnKydkaXZbcmVsPScrZGF0YS5wYWdlKyddLnBh
Z2UgZGl2Jyk7dmFyIGFjdGlvbnM9JGNoYXJhY3RlcnMuZGF0YSgnYWN0aW9ucycp
O2ZvcihjaGFyYWN0ZXIgaW4gZGF0YVt0eXBlXSl7JGNoYXJhY3RlcnMuYXBwZW5k
KCQoJC53aWtpRWRpdG9yLm1vZHVsZXMudG9vbGJhci5mbi5idWlsZENoYXJhY3Rl
cihkYXRhW3R5cGVdW2NoYXJhY3Rlcl0sYWN0aW9ucykpLm1vdXNlZG93bihmdW5j
dGlvbihlKXtjb250ZXh0LmZuLnNhdmVTdHVmZkZvcklFKCk7ZS5wcmV2ZW50RGVm
YXVsdCgpO3JldHVybiBmYWxzZTt9KS5jbGljayhmdW5jdGlvbihlKXskLndpa2lF
ZGl0b3IubW9kdWxlcy50b29sYmFyLmZuLmRvQWN0aW9uKCQodGhpcykucGFyZW50
KCkuZGF0YSgnY29udGV4dCcpLCQodGhpcykucGFyZW50KCkuZGF0YSgnYWN0aW9u
cycpWyQodGhpcykuYXR0cigncmVsJyldKTtlLnByZXZlbnREZWZhdWx0KCk7cmV0
dXJuIGZhbHNlO30pKTt9CmJyZWFrO2RlZmF1bHQ6YnJlYWs7fX19LHJlbW92ZUZy
b21Ub29sYmFyOmZ1bmN0aW9uKGNvbnRleHQsZGF0YSl7aWYodHlwZW9mIGRhdGEu
c2VjdGlvbj09J3N0cmluZycpe3ZhciB0YWI9J2Rpdi50YWJzIHNwYW5bcmVsPScr
ZGF0YS5zZWN0aW9uKyddLnRhYic7dmFyIHRhcmdldD0nZGl2W3JlbD0nK2RhdGEu
c2VjdGlvbisnXS5zZWN0aW9uJzt2YXIgZ3JvdXA9bnVsbDtpZih0eXBlb2YgZGF0
YS5ncm91cD09J3N0cmluZycpe3RhcmdldCs9JyBkaXZbcmVsPScrZGF0YS5ncm91
cCsnXS5ncm91cCc7aWYodHlwZW9mIGRhdGEudG9vbD09J3N0cmluZycpe2dyb3Vw
PXRhcmdldDt0YXJnZXQrPScgZGl2W3JlbD0nK2RhdGEudG9vbCsnXS50b29sJzt9
fWVsc2UgaWYodHlwZW9mIGRhdGEucGFnZT09J3N0cmluZycpe3ZhciBpbmRleD10
YXJnZXQrJyBkaXYuaW5kZXggZGl2W3JlbD0nK2RhdGEucGFnZSsnXSc7dGFyZ2V0
Kz0nIGRpdi5wYWdlcyBkaXZbcmVsPScrZGF0YS5wYWdlKyddLnBhZ2UnO2lmKHR5
cGVvZiBkYXRhLmNoYXJhY3Rlcj09J3N0cmluZycpe3RhcmdldCs9JyBhW3JlbD0n
K2RhdGEuY2hhcmFjdGVyKyddJzt9ZWxzZSBpZih0eXBlb2YgZGF0YS5yb3c9PSdu
dW1iZXInKXt0YXJnZXQrPScgdGFibGUgdHI6bm90KDpoYXModGgpKTplcSgnK2Rh
dGEucm93KycpJzt9ZWxzZXtjb250ZXh0Lm1vZHVsZXMudG9vbGJhci4kdG9vbGJh
ci5maW5kKGluZGV4KS5yZW1vdmUoKTskLndpa2lFZGl0b3IubW9kdWxlcy50b29s
YmFyLmZuLnVwZGF0ZUJvb2tsZXRTZWxlY3Rpb24oY29udGV4dCxudWxsLGNvbnRl
eHQubW9kdWxlcy50b29sYmFyLiR0b29sYmFyLmZpbmQodGFyZ2V0KSxjb250ZXh0
Lm1vZHVsZXMudG9vbGJhci4kdG9vbGJhci5maW5kKGluZGV4KSk7fX1lbHNle2Nv
bnRleHQubW9kdWxlcy50b29sYmFyLiR0b29sYmFyLmZpbmQodGFiKS5yZW1vdmUo
KTt9CmNvbnRleHQubW9kdWxlcy50b29sYmFyLiR0b29sYmFyLmZpbmQodGFyZ2V0
KS5yZW1vdmUoKTtpZihncm91cCl7JGdyb3VwPWNvbnRleHQubW9kdWxlcy50b29s
YmFyLiR0b29sYmFyLmZpbmQoZ3JvdXApO2lmKCRncm91cC5jaGlsZHJlbigpLmxl
bmd0aD09MCl7JGdyb3VwLmhpZGUoKTt9fX19fSxldnQ6e3Jlc2l6ZTpmdW5jdGlv
bihjb250ZXh0LGV2ZW50KXtjb250ZXh0LiR1aS5maW5kKCcuc2VjdGlvbnMnKS5o
ZWlnaHQoY29udGV4dC4kdWkuZmluZCgnLnNlY3Rpb25zIC5zZWN0aW9uLXZpc2li
bGUnKS5vdXRlckhlaWdodCgpKTt9LHRvY0NvbGxhcHNlOmZ1bmN0aW9uKGNvbnRl
eHQsZXZlbnQpeyQud2lraUVkaXRvci5tb2R1bGVzLnRvb2xiYXIuZXZ0LnJlc2l6
ZShjb250ZXh0LGV2ZW50KTt9LHRvY0V4cGFuZDpmdW5jdGlvbihjb250ZXh0LGV2
ZW50KXskLndpa2lFZGl0b3IubW9kdWxlcy50b29sYmFyLmV2dC5yZXNpemUoY29u
dGV4dCxldmVudCk7fX0sZm46e2NyZWF0ZTpmdW5jdGlvbihjb250ZXh0LGNvbmZp
Zyl7aWYoJyR0b29sYmFyJ2luIGNvbnRleHQubW9kdWxlcy50b29sYmFyKXtyZXR1
cm47fQpjb250ZXh0Lm1vZHVsZXMudG9vbGJhci4kdG9vbGJhcj0kKCc8ZGl2IC8+
JykuYWRkQ2xhc3MoJ3dpa2lFZGl0b3ItdWktdG9vbGJhcicpLmF0dHIoJ2lkJywn
d2lraUVkaXRvci11aS10b29sYmFyJyk7JC53aWtpRWRpdG9yLm1vZHVsZXMudG9v
bGJhci5mbi5idWlsZChjb250ZXh0LGNvbmZpZyk7Y29udGV4dC4kdWkuZmluZCgn
Lndpa2lFZGl0b3ItdWktdG9wJykuYXBwZW5kKGNvbnRleHQubW9kdWxlcy50b29s
YmFyLiR0b29sYmFyKTt9LGRvQWN0aW9uOmZ1bmN0aW9uKGNvbnRleHQsYWN0aW9u
LHNvdXJjZSl7aWYoJC50cmFja0FjdGlvbiE9dW5kZWZpbmVkJiZzb3VyY2UuY2xv
c2VzdCgnLndpa2lFZGl0b3ItdWktdG9vbGJhcicpLnNpemUoKSl7dmFyIHJlbHM9
W107dmFyIHN0ZXA9c291cmNlO3ZhciBpPTA7d2hpbGUoIXN0ZXAuaGFzQ2xhc3Mo
J3dpa2lFZGl0b3ItdWktdG9vbGJhcicpKXtpZihpPjI1KXticmVhazt9CmkrKzt2
YXIgcmVsPXN0ZXAuYXR0cigncmVsJyk7aWYocmVsKXtyZWxzLnB1c2goc3RlcC5h
dHRyKCdyZWwnKSk7fQpzdGVwPXN0ZXAucGFyZW50KCk7fQpyZWxzLnJldmVyc2Uo
KTt2YXIgaWQ9cmVscy5qb2luKCcuJyk7JC50cmFja0FjdGlvbihpZCk7fQpzd2l0
Y2goYWN0aW9uLnR5cGUpe2Nhc2UncmVwbGFjZSc6Y2FzZSdlbmNhcHN1bGF0ZSc6
dmFyIHBhcnRzPXsncHJlJzokLndpa2lFZGl0b3IuYXV0b01zZyhhY3Rpb24ub3B0
aW9ucywncHJlJyksJ3BlcmknOiQud2lraUVkaXRvci5hdXRvTXNnKGFjdGlvbi5v
cHRpb25zLCdwZXJpJyksJ3Bvc3QnOiQud2lraUVkaXRvci5hdXRvTXNnKGFjdGlv
bi5vcHRpb25zLCdwb3N0Jyl9O3ZhciByZXBsYWNlPWFjdGlvbi50eXBlPT0ncmVw
bGFjZSc7aWYoJ3JlZ2V4J2luIGFjdGlvbi5vcHRpb25zJiYncmVnZXhSZXBsYWNl
J2luIGFjdGlvbi5vcHRpb25zKXt2YXIgc2VsZWN0aW9uPWNvbnRleHQuJHRleHRh
cmVhLnRleHRTZWxlY3Rpb24oJ2dldFNlbGVjdGlvbicpO2lmKHNlbGVjdGlvbiE9
JycmJnNlbGVjdGlvbi5tYXRjaChhY3Rpb24ub3B0aW9ucy5yZWdleCkpe3BhcnRz
LnBlcmk9c2VsZWN0aW9uLnJlcGxhY2UoYWN0aW9uLm9wdGlvbnMucmVnZXgsYWN0
aW9uLm9wdGlvbnMucmVnZXhSZXBsYWNlKTtwYXJ0cy5wcmU9cGFydHMucG9zdD0n
JztyZXBsYWNlPXRydWU7fX0KY29udGV4dC4kdGV4dGFyZWEudGV4dFNlbGVjdGlv
bignZW5jYXBzdWxhdGVTZWxlY3Rpb24nLCQuZXh0ZW5kKHt9LGFjdGlvbi5vcHRp
b25zLHBhcnRzLHsncmVwbGFjZSc6cmVwbGFjZX0pKTtpZih0eXBlb2YgY29udGV4
dC4kaWZyYW1lIT09J3VuZGVmaW5lZCcpe2NvbnRleHQuJGlmcmFtZVswXS5jb250
ZW50V2luZG93LmZvY3VzKCk7fQpicmVhaztjYXNlJ2NhbGxiYWNrJzppZih0eXBl
b2YgYWN0aW9uLmV4ZWN1dGU9PSdmdW5jdGlvbicpe2FjdGlvbi5leGVjdXRlKGNv
bnRleHQpO30KYnJlYWs7Y2FzZSdkaWFsb2cnOmNvbnRleHQuZm4uc2F2ZVNlbGVj
dGlvbigpO2NvbnRleHQuJHRleHRhcmVhLndpa2lFZGl0b3IoJ29wZW5EaWFsb2cn
LGFjdGlvbi5tb2R1bGUpO2JyZWFrO2RlZmF1bHQ6YnJlYWs7fX0sYnVpbGRHcm91
cDpmdW5jdGlvbihjb250ZXh0LGlkLGdyb3VwKXt2YXIgJGdyb3VwPSQoJzxkaXYg
Lz4nKS5hdHRyKHsnY2xhc3MnOidncm91cCBncm91cC0nK2lkLCdyZWwnOmlkfSk7
dmFyIGxhYmVsPSQud2lraUVkaXRvci5hdXRvTXNnKGdyb3VwLCdsYWJlbCcpO2lm
KGxhYmVsKXskZ3JvdXAuYXBwZW5kKCc8ZGl2IGNsYXNzPSJsYWJlbCI+JytsYWJl
bCsnPC9kaXY+Jyl9CnZhciBlbXB0eT10cnVlO2lmKCd0b29scydpbiBncm91cCl7
Zm9yKHRvb2wgaW4gZ3JvdXAudG9vbHMpe3ZhciB0b29sPSQud2lraUVkaXRvci5t
b2R1bGVzLnRvb2xiYXIuZm4uYnVpbGRUb29sKGNvbnRleHQsdG9vbCxncm91cC50
b29sc1t0b29sXSk7aWYodG9vbCl7ZW1wdHk9ZW1wdHkmJnRvb2wuY3NzKCdkaXNw
bGF5Jyk9PSdub25lJzskZ3JvdXAuYXBwZW5kKHRvb2wpO319fQppZihlbXB0eSl7
JGdyb3VwLmhpZGUoKTt9CnJldHVybiAkZ3JvdXA7fSxidWlsZFRvb2w6ZnVuY3Rp
b24oY29udGV4dCxpZCx0b29sKXtpZignZmlsdGVycydpbiB0b29sKXtmb3IoZmls
dGVyIGluIHRvb2wuZmlsdGVycyl7aWYoJCh0b29sLmZpbHRlcnNbZmlsdGVyXSku
c2l6ZSgpPT0wKXtyZXR1cm4gbnVsbDt9fX0KdmFyIGxhYmVsPSQud2lraUVkaXRv
ci5hdXRvTXNnKHRvb2wsJ2xhYmVsJyk7c3dpdGNoKHRvb2wudHlwZSl7Y2FzZSdi
dXR0b24nOnZhciBzcmM9JC53aWtpRWRpdG9yLmF1dG9JY29uKHRvb2wuaWNvbiwk
Lndpa2lFZGl0b3IuaW1nUGF0aCsndG9vbGJhci8nKTt2YXIgJGJ1dHRvbj1udWxs
O2lmKCdvZmZzZXQnaW4gdG9vbCl7dmFyIG9mZnNldE9ySWNvbj0kLndpa2lFZGl0
b3IuYXV0b0ljb25Pck9mZnNldCh0b29sLmljb24sdG9vbC5vZmZzZXQsJC53aWtp
RWRpdG9yLmltZ1BhdGgrJ3Rvb2xiYXIvJyk7aWYodHlwZW9mIG9mZnNldE9ySWNv
bj09J29iamVjdCcpeyRidXR0b249JCgnPHNwYW4gLz4nKS5hdHRyKHsnYWx0Jzps
YWJlbCwndGl0bGUnOmxhYmVsLCdyZWwnOmlkLCdjbGFzcyc6J3dpa2lFZGl0b3It
dG9vbGJhci1zcHJpdGVkQnV0dG9uJ30pLnRleHQobGFiZWwpLmNzcygnYmFja2dy
b3VuZFBvc2l0aW9uJyxvZmZzZXRPckljb25bMF0rJ3B4ICcrb2Zmc2V0T3JJY29u
WzFdKydweCcpO319CmlmKCEkYnV0dG9uKXskYnV0dG9uPSQoJzxpbWcgLz4nKS5h
dHRyKHsnc3JjJzpzcmMsJ3dpZHRoJzoyMiwnaGVpZ2h0JzoyMiwnYWx0JzpsYWJl
bCwndGl0bGUnOmxhYmVsLCdyZWwnOmlkLCdjbGFzcyc6J3Rvb2wgdG9vbC1idXR0
b24nfSk7fQppZignYWN0aW9uJ2luIHRvb2wpeyRidXR0b24uZGF0YSgnYWN0aW9u
Jyx0b29sLmFjdGlvbikuZGF0YSgnY29udGV4dCcsY29udGV4dCkubW91c2Vkb3du
KGZ1bmN0aW9uKGUpe2NvbnRleHQuZm4uc2F2ZVN0dWZmRm9ySUUoKTtlLnByZXZl
bnREZWZhdWx0KCk7cmV0dXJuIGZhbHNlO30pLmNsaWNrKGZ1bmN0aW9uKGUpeyQu
d2lraUVkaXRvci5tb2R1bGVzLnRvb2xiYXIuZm4uZG9BY3Rpb24oJCh0aGlzKS5k
YXRhKCdjb250ZXh0JyksJCh0aGlzKS5kYXRhKCdhY3Rpb24nKSwkKHRoaXMpKTtl
LnByZXZlbnREZWZhdWx0KCk7cmV0dXJuIGZhbHNlO30pO2lmKHRvb2wuYWN0aW9u
LnR5cGU9PSdkaWFsb2cnJiYhKHRvb2wuYWN0aW9uLm1vZHVsZSBpbiAkLndpa2lF
ZGl0b3IubW9kdWxlcy5kaWFsb2dzLm1vZHVsZXMpKXskYnV0dG9uLmhpZGUoKTtj
b250ZXh0LiR0ZXh0YXJlYS5iaW5kKCd3aWtpRWRpdG9yLWRpYWxvZ3Mtc2V0dXAt
Jyt0b29sLmFjdGlvbi5tb2R1bGUse2J1dHRvbjokYnV0dG9ufSxmdW5jdGlvbihl
dmVudCl7ZXZlbnQuZGF0YS5idXR0b24uc2hvdygpLnBhcmVudCgpLnNob3coKTt9
KTt9fQpyZXR1cm4gJGJ1dHRvbjtjYXNlJ3NlbGVjdCc6dmFyICRzZWxlY3Q9JCgn
PGRpdiAvPicpLmF0dHIoeydyZWwnOmlkLCdjbGFzcyc6J3Rvb2wgdG9vbC1zZWxl
Y3QnfSk7dmFyICRvcHRpb25zPSQoJzxkaXYgLz4nKS5hZGRDbGFzcygnb3B0aW9u
cycpO2lmKCdsaXN0J2luIHRvb2wpe2ZvcihvcHRpb24gaW4gdG9vbC5saXN0KXt2
YXIgb3B0aW9uTGFiZWw9JC53aWtpRWRpdG9yLmF1dG9Nc2codG9vbC5saXN0W29w
dGlvbl0sJ2xhYmVsJyk7JG9wdGlvbnMuYXBwZW5kKCQoJzxhIC8+JykuZGF0YSgn
YWN0aW9uJyx0b29sLmxpc3Rbb3B0aW9uXS5hY3Rpb24pLmRhdGEoJ2NvbnRleHQn
LGNvbnRleHQpLm1vdXNlZG93bihmdW5jdGlvbihlKXtjb250ZXh0LmZuLnNhdmVT
dHVmZkZvcklFKCk7ZS5wcmV2ZW50RGVmYXVsdCgpO3JldHVybiBmYWxzZTt9KS5j
bGljayhmdW5jdGlvbihlKXskLndpa2lFZGl0b3IubW9kdWxlcy50b29sYmFyLmZu
LmRvQWN0aW9uKCQodGhpcykuZGF0YSgnY29udGV4dCcpLCQodGhpcykuZGF0YSgn
YWN0aW9uJyksJCh0aGlzKSk7aWYoJCh0aGlzKS5wYXJlbnQoKS5pcygnOnZpc2li
bGUnKSl7JCh0aGlzKS5wYXJlbnQoKS5hbmltYXRlKHsnb3BhY2l0eSc6J3RvZ2ds
ZSd9LCdmYXN0Jyk7fQplLnByZXZlbnREZWZhdWx0KCk7cmV0dXJuIGZhbHNlO30p
LnRleHQob3B0aW9uTGFiZWwpLmFkZENsYXNzKCdvcHRpb24nKS5hdHRyKHsncmVs
JzpvcHRpb24sJ2hyZWYnOicjJ30pKTt9fQokc2VsZWN0LmFwcGVuZCgkKCc8ZGl2
IC8+JykuYWRkQ2xhc3MoJ21lbnUnKS5hcHBlbmQoJG9wdGlvbnMpKTskc2VsZWN0
LmFwcGVuZCgkKCc8YSAvPicpLmFkZENsYXNzKCdsYWJlbCcpLnRleHQobGFiZWwp
LmRhdGEoJ29wdGlvbnMnLCRvcHRpb25zKS5hdHRyKCdocmVmJywnIycpLm1vdXNl
ZG93bihmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCk7cmV0dXJuIGZhbHNl
O30pLmNsaWNrKGZ1bmN0aW9uKGUpeyQodGhpcykuZGF0YSgnb3B0aW9ucycpLmFu
aW1hdGUoeydvcGFjaXR5JzondG9nZ2xlJ30sJ2Zhc3QnKTtlLnByZXZlbnREZWZh
dWx0KCk7cmV0dXJuIGZhbHNlO30pKTtyZXR1cm4gJHNlbGVjdDtkZWZhdWx0OnJl
dHVybiBudWxsO319LGJ1aWxkQm9va21hcms6ZnVuY3Rpb24oY29udGV4dCxpZCxw
YWdlKXt2YXIgbGFiZWw9JC53aWtpRWRpdG9yLmF1dG9Nc2cocGFnZSwnbGFiZWwn
KTtyZXR1cm4gJCgnPGRpdiAvPicpLnRleHQobGFiZWwpLmF0dHIoJ3JlbCcsaWQp
LmRhdGEoJ2NvbnRleHQnLGNvbnRleHQpLm1vdXNlZG93bihmdW5jdGlvbihlKXtl
LnByZXZlbnREZWZhdWx0KCk7cmV0dXJuIGZhbHNlO30pLmNsaWNrKGZ1bmN0aW9u
KGV2ZW50KXskKHRoaXMpLnBhcmVudCgpLnBhcmVudCgpLmZpbmQoJy5wYWdlJyku
aGlkZSgpOyQodGhpcykucGFyZW50KCkucGFyZW50KCkuZmluZCgnLnBhZ2UtJysk
KHRoaXMpLmF0dHIoJ3JlbCcpKS5zaG93KCk7JCh0aGlzKS5zaWJsaW5ncygpLnJl
bW92ZUNsYXNzKCdjdXJyZW50Jyk7JCh0aGlzKS5hZGRDbGFzcygnY3VycmVudCcp
O3ZhciBzZWN0aW9uPSQodGhpcykucGFyZW50KCkucGFyZW50KCkuYXR0cigncmVs
Jyk7JC5jb29raWUoJ3dpa2lFZGl0b3ItJyskKHRoaXMpLmRhdGEoJ2NvbnRleHQn
KS5pbnN0YW5jZSsnLWJvb2tsZXQtJytzZWN0aW9uKyctcGFnZScsJCh0aGlzKS5h
dHRyKCdyZWwnKSx7ZXhwaXJlczozMCxwYXRoOicvJ30pO2lmKCQudHJhY2tBY3Rp
b24hPXVuZGVmaW5lZCl7JC50cmFja0FjdGlvbihzZWN0aW9uKycuJyskKHRoaXMp
LmF0dHIoJ3JlbCcpKTt9CmV2ZW50LnByZXZlbnREZWZhdWx0KCk7cmV0dXJuIGZh
bHNlO30pfSxidWlsZFBhZ2U6ZnVuY3Rpb24oY29udGV4dCxpZCxwYWdlKXt2YXIg
JHBhZ2U9JCgnPGRpdiAvPicpLmF0dHIoeydjbGFzcyc6J3BhZ2UgcGFnZS0nK2lk
LCdyZWwnOmlkfSk7c3dpdGNoKHBhZ2UubGF5b3V0KXtjYXNlJ3RhYmxlJzokcGFn
ZS5hZGRDbGFzcygncGFnZS10YWJsZScpO3ZhciBodG1sPSc8dGFibGUgY2VsbHBh
ZGRpbmc9MCBjZWxsc3BhY2luZz0wICcrJ2JvcmRlcj0wIHdpZHRoPSIxMDAlIiBj
bGFzcz0idGFibGUgdGFibGUtJytpZCsnIj4nO2lmKCdoZWFkaW5ncydpbiBwYWdl
KXtodG1sKz0kLndpa2lFZGl0b3IubW9kdWxlcy50b29sYmFyLmZuLmJ1aWxkSGVh
ZGluZyhjb250ZXh0LHBhZ2UuaGVhZGluZ3MpfQppZigncm93cydpbiBwYWdlKXtm
b3Iocm93IGluIHBhZ2Uucm93cyl7aHRtbCs9JC53aWtpRWRpdG9yLm1vZHVsZXMu
dG9vbGJhci5mbi5idWlsZFJvdyhjb250ZXh0LHBhZ2Uucm93c1tyb3ddKX19CiRw
YWdlLmh0bWwoaHRtbCk7YnJlYWs7Y2FzZSdjaGFyYWN0ZXJzJzokcGFnZS5hZGRD
bGFzcygncGFnZS1jaGFyYWN0ZXJzJyk7JGNoYXJhY3RlcnM9JCgnPGRpdiAvPicp
LmRhdGEoJ2NvbnRleHQnLGNvbnRleHQpLmRhdGEoJ2FjdGlvbnMnLHt9KTt2YXIg
YWN0aW9ucz0kY2hhcmFjdGVycy5kYXRhKCdhY3Rpb25zJyk7aWYoJ2xhbmd1YWdl
J2luIHBhZ2UpeyRjaGFyYWN0ZXJzLmF0dHIoJ2xhbmcnLHBhZ2UubGFuZ3VhZ2Up
O30KaWYoJ2RpcmVjdGlvbidpbiBwYWdlKXskY2hhcmFjdGVycy5hdHRyKCdkaXIn
LHBhZ2UuZGlyZWN0aW9uKTt9CmlmKCdjaGFyYWN0ZXJzJ2luIHBhZ2Upe3ZhciBo
dG1sPScnO2Zvcih2YXIgaT0wO2k8cGFnZS5jaGFyYWN0ZXJzLmxlbmd0aDtpKysp
e2h0bWwrPSQud2lraUVkaXRvci5tb2R1bGVzLnRvb2xiYXIuZm4uYnVpbGRDaGFy
YWN0ZXIocGFnZS5jaGFyYWN0ZXJzW2ldLGFjdGlvbnMpO30KJGNoYXJhY3RlcnMu
aHRtbChodG1sKS5jaGlsZHJlbigpLm1vdXNlZG93bihmdW5jdGlvbihlKXtjb250
ZXh0LmZuLnNhdmVTdHVmZkZvcklFKCk7ZS5wcmV2ZW50RGVmYXVsdCgpO3JldHVy
biBmYWxzZTt9KS5jbGljayhmdW5jdGlvbihlKXskLndpa2lFZGl0b3IubW9kdWxl
cy50b29sYmFyLmZuLmRvQWN0aW9uKCQodGhpcykucGFyZW50KCkuZGF0YSgnY29u
dGV4dCcpLCQodGhpcykucGFyZW50KCkuZGF0YSgnYWN0aW9ucycpWyQodGhpcyku
YXR0cigncmVsJyldLCQodGhpcykpO2UucHJldmVudERlZmF1bHQoKTtyZXR1cm4g
ZmFsc2U7fSk7fQokcGFnZS5hcHBlbmQoJGNoYXJhY3RlcnMpO2JyZWFrO30KcmV0
dXJuICRwYWdlO30sYnVpbGRIZWFkaW5nOmZ1bmN0aW9uKGNvbnRleHQsaGVhZGlu
Z3Mpe3ZhciBodG1sPSc8dHI+Jztmb3IoaGVhZGluZyBpbiBoZWFkaW5ncyl7aHRt
bCs9Jzx0aD4nKyQud2lraUVkaXRvci5hdXRvTXNnKGhlYWRpbmdzW2hlYWRpbmdd
LFsnaHRtbCcsJ3RleHQnXSkrJzwvdGg+Jzt9CnJldHVybiBodG1sO30sYnVpbGRS
b3c6ZnVuY3Rpb24oY29udGV4dCxyb3cpe3ZhciBodG1sPSc8dHI+Jztmb3IoY2Vs
bCBpbiByb3cpe2h0bWwrPSc8dGQgY2xhc3M9ImNlbGwgY2VsbC0nK2NlbGwrJyIg
dmFsaWduPSJ0b3AiPjxzcGFuPicrCiQud2lraUVkaXRvci5hdXRvTXNnKHJvd1tj
ZWxsXSxbJ2h0bWwnLCd0ZXh0J10pKyc8L3NwYW4+PC90ZD4nO30KaHRtbCs9Jzwv
dHI+JztyZXR1cm4gaHRtbDt9LGJ1aWxkQ2hhcmFjdGVyOmZ1bmN0aW9uKGNoYXJh
Y3RlcixhY3Rpb25zKXtpZih0eXBlb2YgY2hhcmFjdGVyPT0nc3RyaW5nJyl7Y2hh
cmFjdGVyPXsnbGFiZWwnOmNoYXJhY3RlciwnYWN0aW9uJzp7J3R5cGUnOidyZXBs
YWNlJywnb3B0aW9ucyc6eydwZXJpJzpjaGFyYWN0ZXIsJ3NlbGVjdFBlcmknOmZh
bHNlfX19O31lbHNlIGlmKDAgaW4gY2hhcmFjdGVyJiYxIGluIGNoYXJhY3Rlcil7
Y2hhcmFjdGVyPXsnbGFiZWwnOmNoYXJhY3RlclswXSwnYWN0aW9uJzp7J3R5cGUn
OidyZXBsYWNlJywnb3B0aW9ucyc6eydwZXJpJzpjaGFyYWN0ZXJbMV0sJ3NlbGVj
dFBlcmknOmZhbHNlfX19O30KaWYoJ2FjdGlvbidpbiBjaGFyYWN0ZXImJidsYWJl
bCdpbiBjaGFyYWN0ZXIpe2FjdGlvbnNbY2hhcmFjdGVyLmxhYmVsXT1jaGFyYWN0
ZXIuYWN0aW9uO3JldHVybic8c3BhbiByZWw9IicrY2hhcmFjdGVyLmxhYmVsKyci
PicrY2hhcmFjdGVyLmxhYmVsKyc8L3NwYW4+Jzt9fSxidWlsZFRhYjpmdW5jdGlv
bihjb250ZXh0LGlkLHNlY3Rpb24pe3ZhciBzZWxlY3RlZD0kLmNvb2tpZSgnd2lr
aUVkaXRvci0nK2NvbnRleHQuaW5zdGFuY2UrJy10b29sYmFyLXNlY3Rpb24nKTtp
ZihzZWxlY3RlZCE9bnVsbCl7JC5jb29raWUoJ3dpa2lFZGl0b3ItJytjb250ZXh0
Lmluc3RhbmNlKyctdG9vbGJhci1zZWN0aW9uJyxzZWxlY3RlZCx7ZXhwaXJlczoz
MCxwYXRoOicvJ30pO30KcmV0dXJuICQoJzxzcGFuIC8+JykuYXR0cih7J2NsYXNz
JzondGFiIHRhYi0nK2lkLCdyZWwnOmlkfSkuYXBwZW5kKCQoJzxhIC8+JykuYWRk
Q2xhc3Moc2VsZWN0ZWQ9PWlkPydjdXJyZW50JzpudWxsKS5hdHRyKCdocmVmJywn
IycpLnRleHQoJC53aWtpRWRpdG9yLmF1dG9Nc2coc2VjdGlvbiwnbGFiZWwnKSku
ZGF0YSgnY29udGV4dCcsY29udGV4dCkubW91c2V1cChmdW5jdGlvbihlKXskKHRo
aXMpLmJsdXIoKTt9KS5tb3VzZWRvd24oZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVm
YXVsdCgpO3JldHVybiBmYWxzZTt9KS5jbGljayhmdW5jdGlvbihlKXt2YXIgJHNl
Y3Rpb25zPSQodGhpcykuZGF0YSgnY29udGV4dCcpLiR1aS5maW5kKCcuc2VjdGlv
bnMnKTt2YXIgJHNlY3Rpb249JCh0aGlzKS5kYXRhKCdjb250ZXh0JykuJHVpLmZp
bmQoJy5zZWN0aW9uLScrJCh0aGlzKS5wYXJlbnQoKS5hdHRyKCdyZWwnKSk7dmFy
IHNob3c9JHNlY3Rpb24uY3NzKCdkaXNwbGF5Jyk9PSdub25lJzskcHJldmlvdXNT
ZWN0aW9ucz0kc2VjdGlvbi5wYXJlbnQoKS5maW5kKCcuc2VjdGlvbi12aXNpYmxl
Jyk7JHByZXZpb3VzU2VjdGlvbnMuY3NzKCdwb3NpdGlvbicsJ2Fic29sdXRlJyk7
JHByZXZpb3VzU2VjdGlvbnMucmVtb3ZlQ2xhc3MoJ3NlY3Rpb24tdmlzaWJsZScp
OyRwcmV2aW91c1NlY3Rpb25zLmZhZGVPdXQoJ2Zhc3QnLGZ1bmN0aW9uKCl7JCh0
aGlzKS5jc3MoJ3Bvc2l0aW9uJywncmVsYXRpdmUnKTt9KTskKHRoaXMpLnBhcmVu
dCgpLnBhcmVudCgpLmZpbmQoJ2EnKS5yZW1vdmVDbGFzcygnY3VycmVudCcpOyRz
ZWN0aW9ucy5jc3MoJ292ZXJmbG93JywnaGlkZGVuJyk7ZnVuY3Rpb24gYW5pbWF0
ZSgkdGhpcyl7JHNlY3Rpb25zLmNzcygnZGlzcGxheScsJ2Jsb2NrJykuYW5pbWF0
ZSh7J2hlaWdodCc6JHNlY3Rpb24ub3V0ZXJIZWlnaHQoKX0sJHNlY3Rpb24ub3V0
ZXJIZWlnaHQoKSoyLGZ1bmN0aW9uKCl7JCh0aGlzKS5jc3MoJ292ZXJmbG93Jywn
dmlzaWJsZScpLmNzcygnaGVpZ2h0JywnYXV0bycpO2NvbnRleHQuZm4udHJpZ2dl
cigncmVzaXplJyk7fSk7fQppZihzaG93KXskc2VjdGlvbi5hZGRDbGFzcygnc2Vj
dGlvbi12aXNpYmxlJyk7JHNlY3Rpb24uZmFkZUluKCdmYXN0Jyk7aWYoJHNlY3Rp
b24uaGFzQ2xhc3MoJ2xvYWRpbmcnKSl7dmFyICR0aGlzPSQodGhpcyk7JHRoaXMu
YWRkQ2xhc3MoJ2N1cnJlbnQgbG9hZGluZycpO3NldFRpbWVvdXQoZnVuY3Rpb24o
KXskc2VjdGlvbi50cmlnZ2VyKCdsb2FkU2VjdGlvbicpO2FuaW1hdGUoJCh0aGlz
KSk7JHRoaXMucmVtb3ZlQ2xhc3MoJ2xvYWRpbmcnKTt9LDEwMDApO31lbHNle2Fu
aW1hdGUoJCh0aGlzKSk7JCh0aGlzKS5hZGRDbGFzcygnY3VycmVudCcpO319ZWxz
ZXskc2VjdGlvbnMuY3NzKCdoZWlnaHQnLCRzZWN0aW9uLm91dGVySGVpZ2h0KCkp
LmFuaW1hdGUoeydoZWlnaHQnOidoaWRlJ30sJHNlY3Rpb24ub3V0ZXJIZWlnaHQo
KSoyLGZ1bmN0aW9uKCl7JCh0aGlzKS5jc3MoeydvdmVyZmxvdyc6J3Zpc2libGUn
LCdoZWlnaHQnOjB9KTtjb250ZXh0LmZuLnRyaWdnZXIoJ3Jlc2l6ZScpO30pO30K
aWYoJC50cmFja0FjdGlvbiE9dW5kZWZpbmVkKXskLnRyYWNrQWN0aW9uKCRzZWN0
aW9uLmF0dHIoJ3JlbCcpKycuJysoc2hvdz8nc2hvdyc6J2hpZGUnKSk7fQokLmNv
b2tpZSgnd2lraUVkaXRvci0nKyQodGhpcykuZGF0YSgnY29udGV4dCcpLmluc3Rh
bmNlKyctdG9vbGJhci1zZWN0aW9uJyxzaG93PyRzZWN0aW9uLmF0dHIoJ3JlbCcp
Om51bGwse2V4cGlyZXM6MzAscGF0aDonLyd9KTtlLnByZXZlbnREZWZhdWx0KCk7
cmV0dXJuIGZhbHNlO30pKTt9LGJ1aWxkU2VjdGlvbjpmdW5jdGlvbihjb250ZXh0
LGlkLHNlY3Rpb24pe3ZhciAkc2VjdGlvbj0kKCc8ZGl2IC8+JykuYXR0cih7J2Ns
YXNzJzpzZWN0aW9uLnR5cGUrJyBzZWN0aW9uIHNlY3Rpb24tJytpZCwncmVsJzpp
ZH0pO3ZhciBzZWxlY3RlZD0kLmNvb2tpZSgnd2lraUVkaXRvci0nK2NvbnRleHQu
aW5zdGFuY2UrJy10b29sYmFyLXNlY3Rpb24nKTt2YXIgc2hvdz1zZWxlY3RlZD09
aWQ7aWYodHlwZW9mIHNlY3Rpb24uZGVmZXJMb2FkIT0ndW5kZWZpbmVkJyYmc2Vj
dGlvbi5kZWZlckxvYWQmJmlkIT09J21haW4nJiYhc2hvdyl7JHNlY3Rpb24uYWRk
Q2xhc3MoJ2xvYWRpbmcnKS5hcHBlbmQoJCgnPGRpdiAvPicpLmFkZENsYXNzKCdz
cGlubmVyJykpOyRzZWN0aW9uLmJpbmQoJ2xvYWRTZWN0aW9uJyxmdW5jdGlvbigp
eyQud2lraUVkaXRvci5tb2R1bGVzLnRvb2xiYXIuZm4ucmVhbGx5QnVpbGRTZWN0
aW9uKGNvbnRleHQsaWQsc2VjdGlvbiwkc2VjdGlvbik7JHNlY3Rpb24ucmVtb3Zl
Q2xhc3MoJ2xvYWRpbmcnKTt9KTt9ZWxzZXskLndpa2lFZGl0b3IubW9kdWxlcy50
b29sYmFyLmZuLnJlYWxseUJ1aWxkU2VjdGlvbihjb250ZXh0LGlkLHNlY3Rpb24s
JHNlY3Rpb24pO30KaWYoaWQhPT0nbWFpbicpeyRzZWN0aW9uLmNzcygnZGlzcGxh
eScsc2hvdz8nYmxvY2snOidub25lJyk7aWYoc2hvdykKJHNlY3Rpb24uYWRkQ2xh
c3MoJ3NlY3Rpb24tdmlzaWJsZScpO30KcmV0dXJuICRzZWN0aW9uO30scmVhbGx5
QnVpbGRTZWN0aW9uOmZ1bmN0aW9uKGNvbnRleHQsaWQsc2VjdGlvbiwkc2VjdGlv
bil7Y29udGV4dC4kdGV4dGFyZWEudHJpZ2dlcignd2lraUVkaXRvci10b29sYmFy
LWJ1aWxkU2VjdGlvbi0nKyRzZWN0aW9uLmF0dHIoJ3JlbCcpLFtzZWN0aW9uXSk7
c3dpdGNoKHNlY3Rpb24udHlwZSl7Y2FzZSd0b29sYmFyJzppZignZ3JvdXBzJ2lu
IHNlY3Rpb24pe2Zvcihncm91cCBpbiBzZWN0aW9uLmdyb3Vwcyl7JHNlY3Rpb24u
YXBwZW5kKCQud2lraUVkaXRvci5tb2R1bGVzLnRvb2xiYXIuZm4uYnVpbGRHcm91
cChjb250ZXh0LGdyb3VwLHNlY3Rpb24uZ3JvdXBzW2dyb3VwXSkpO319CmJyZWFr
O2Nhc2UnYm9va2xldCc6dmFyICRwYWdlcz0kKCc8ZGl2IC8+JykuYWRkQ2xhc3Mo
J3BhZ2VzJyk7dmFyICRpbmRleD0kKCc8ZGl2IC8+JykuYWRkQ2xhc3MoJ2luZGV4
Jyk7aWYoJ3BhZ2VzJ2luIHNlY3Rpb24pe2ZvcihwYWdlIGluIHNlY3Rpb24ucGFn
ZXMpeyRwYWdlcy5hcHBlbmQoJC53aWtpRWRpdG9yLm1vZHVsZXMudG9vbGJhci5m
bi5idWlsZFBhZ2UoY29udGV4dCxwYWdlLHNlY3Rpb24ucGFnZXNbcGFnZV0pKTsk
aW5kZXguYXBwZW5kKCQud2lraUVkaXRvci5tb2R1bGVzLnRvb2xiYXIuZm4uYnVp
bGRCb29rbWFyayhjb250ZXh0LHBhZ2Usc2VjdGlvbi5wYWdlc1twYWdlXSkpO319
CiRzZWN0aW9uLmFwcGVuZCgkaW5kZXgpLmFwcGVuZCgkcGFnZXMpOyQud2lraUVk
aXRvci5tb2R1bGVzLnRvb2xiYXIuZm4udXBkYXRlQm9va2xldFNlbGVjdGlvbihj
b250ZXh0LGlkLCRwYWdlcywkaW5kZXgpO2JyZWFrO319LHVwZGF0ZUJvb2tsZXRT
ZWxlY3Rpb246ZnVuY3Rpb24oY29udGV4dCxpZCwkcGFnZXMsJGluZGV4KXt2YXIg
Y29va2llPSd3aWtpRWRpdG9yLScrY29udGV4dC5pbnN0YW5jZSsnLWJvb2tsZXQt
JytpZCsnLXBhZ2UnO3ZhciBzZWxlY3RlZD0kLmNvb2tpZShjb29raWUpO2lmKHNl
bGVjdGVkIT1udWxsKXskLmNvb2tpZShjb29raWUsc2VsZWN0ZWQse2V4cGlyZXM6
MzAscGF0aDonLyd9KTt9CnZhciAkc2VsZWN0ZWRJbmRleD0kaW5kZXguZmluZCgn
KltyZWw9JytzZWxlY3RlZCsnXScpO2lmKCRzZWxlY3RlZEluZGV4LnNpemUoKT09
MCl7c2VsZWN0ZWQ9JGluZGV4LmNoaWxkcmVuKCkuZXEoMCkuYXR0cigncmVsJyk7
JC5jb29raWUoY29va2llLHNlbGVjdGVkLHtleHBpcmVzOjMwLHBhdGg6Jy8nfSk7
fQokcGFnZXMuY2hpbGRyZW4oKS5oaWRlKCk7JHBhZ2VzLmZpbmQoJypbcmVsPScr
c2VsZWN0ZWQrJ10nKS5zaG93KCk7JGluZGV4LmNoaWxkcmVuKCkucmVtb3ZlQ2xh
c3MoJ2N1cnJlbnQnKTskc2VsZWN0ZWRJbmRleC5hZGRDbGFzcygnY3VycmVudCcp
O30sYnVpbGQ6ZnVuY3Rpb24oY29udGV4dCxjb25maWcpe3ZhciAkdGFicz0kKCc8
ZGl2IC8+JykuYWRkQ2xhc3MoJ3RhYnMnKS5hcHBlbmRUbyhjb250ZXh0Lm1vZHVs
ZXMudG9vbGJhci4kdG9vbGJhcik7dmFyICRzZWN0aW9ucz0kKCc8ZGl2IC8+Jyku
YWRkQ2xhc3MoJ3NlY3Rpb25zJykuYXBwZW5kVG8oY29udGV4dC5tb2R1bGVzLnRv
b2xiYXIuJHRvb2xiYXIpO2NvbnRleHQubW9kdWxlcy50b29sYmFyLiR0b29sYmFy
LmFwcGVuZCgkKCc8ZGl2IC8+JykuY3NzKCdjbGVhcicsJ2JvdGgnKSk7dmFyIHNl
Y3Rpb25RdWV1ZT1bXTtmb3Ioc2VjdGlvbiBpbiBjb25maWcpe2lmKHNlY3Rpb249
PSdtYWluJyl7Y29udGV4dC5tb2R1bGVzLnRvb2xiYXIuJHRvb2xiYXIucHJlcGVu
ZCgkLndpa2lFZGl0b3IubW9kdWxlcy50b29sYmFyLmZuLmJ1aWxkU2VjdGlvbihj
b250ZXh0LHNlY3Rpb24sY29uZmlnW3NlY3Rpb25dKSk7fWVsc2V7c2VjdGlvblF1
ZXVlLnB1c2goeyckc2VjdGlvbnMnOiRzZWN0aW9ucywnY29udGV4dCc6Y29udGV4
dCwnaWQnOnNlY3Rpb24sJ2NvbmZpZyc6Y29uZmlnW3NlY3Rpb25dfSk7JHRhYnMu
YXBwZW5kKCQud2lraUVkaXRvci5tb2R1bGVzLnRvb2xiYXIuZm4uYnVpbGRUYWIo
Y29udGV4dCxzZWN0aW9uLGNvbmZpZ1tzZWN0aW9uXSkpO319CiQuZWFjaEFzeW5j
KHNlY3Rpb25RdWV1ZSx7J2J1bGsnOjAsJ2VuZCc6ZnVuY3Rpb24oKXt2YXIgb2xk
VmFsdWU9JCgnYm9keScpLmNzcygncG9zaXRpb24nKTskKCdib2R5JykuY3NzKCdw
b3NpdGlvbicsJ3N0YXRpYycpOyQoJ2JvZHknKS5jc3MoJ3Bvc2l0aW9uJyxvbGRW
YWx1ZSk7fSwnbG9vcCc6ZnVuY3Rpb24oaSxzKXtzLiRzZWN0aW9ucy5hcHBlbmQo
JC53aWtpRWRpdG9yLm1vZHVsZXMudG9vbGJhci5mbi5idWlsZFNlY3Rpb24ocy5j
b250ZXh0LHMuaWQscy5jb25maWcpKTt2YXIgJHNlY3Rpb249cy4kc2VjdGlvbnMu
ZmluZCgnLnNlY3Rpb246dmlzaWJsZScpO2lmKCRzZWN0aW9uLnNpemUoKSl7JHNl
Y3Rpb25zLmFuaW1hdGUoeydoZWlnaHQnOiRzZWN0aW9uLm91dGVySGVpZ2h0KCl9
LCRzZWN0aW9uLm91dGVySGVpZ2h0KCkqMixmdW5jdGlvbigpe2NvbnRleHQuZm4u
dHJpZ2dlcigncmVzaXplJyk7fSk7fX19KTt9fX07fSkoalF1ZXJ5KTs=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=Vector.combined.min.js
Content-Type: application/x-javascript; charset=UTF-8; name=Vector.combined.min.js
Content-Location: http://bits.wikimedia.org/w/extensions/UsabilityInitiative/Vector/Vector.combined.min.js?283r
Content-Transfer-Encoding: Base64
CiRqKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpe2lmKCF3Z1ZlY3RvckVuYWJs
ZWRNb2R1bGVzLmNvbGxhcHNpYmxlbmF2KXtyZXR1cm4gdHJ1ZTt9CnZhciBtYXA9
eydsdHInOnsnbXNpZSc6W1snPj0nLDddXSwnb3BlcmEnOltbJz49Jyw5LjZdXSwn
a29ucXVlcm9yJzpbWyc+PScsNC4wXV0sJ2JsYWNrYmVycnknOmZhbHNlLCdpcG9k
JzpmYWxzZSwnaXBob25lJzpmYWxzZSwncHMzJzpmYWxzZX0sJ3J0bCc6eydtc2ll
JzpbWyc+PScsN11dLCdvcGVyYSc6W1snPj0nLDkuNl1dLCdrb25xdWVyb3InOltb
Jz49Jyw0LjBdXSwnYmxhY2tiZXJyeSc6ZmFsc2UsJ2lwb2QnOmZhbHNlLCdpcGhv
bmUnOmZhbHNlLCdwczMnOmZhbHNlfX07aWYoIW13LnVzYWJpbGl0eS50ZXN0QnJv
d3NlcihtYXApKXtyZXR1cm4gdHJ1ZTt9CnZhciB2ZXJzaW9uPTE7aWYod2dDb2xs
YXBzaWJsZU5hdkZvcmNlTmV3VmVyc2lvbil7dmVyc2lvbj0yO31lbHNle2lmKHdn
Q29sbGFwc2libGVOYXZCdWNrZXRUZXN0KXt2ZXJzaW9uPSRqLmNvb2tpZSgndmVj
dG9yLW5hdi1wcmVmLXZlcnNpb24nKTtpZih2ZXJzaW9uPT1udWxsKXt2ZXJzaW9u
PU1hdGgucm91bmQoTWF0aC5yYW5kb20oKSsxKTskai5jb29raWUoJ3ZlY3Rvci1u
YXYtcHJlZi12ZXJzaW9uJyx2ZXJzaW9uLHsnZXhwaXJlcyc6MzAsJ3BhdGgnOicv
J30pO319fQppZih2ZXJzaW9uPT0yKXt2YXIgbGltaXQ9NTt2YXIgdGhyZXNob2xk
PTM7JGooJyNwLWxhbmcgdWwnKS5hZGRDbGFzcygnc2Vjb25kYXJ5JykuYmVmb3Jl
KCc8dWwgY2xhc3M9InByaW1hcnkiPjwvdWw+Jyk7dmFyIGxhbmd1YWdlcz1bJ2Vu
JywnZnInLCdkZScsJ2VzJywncHQnLCdpdCcsJ3J1JywnamEnLCdubCcsJ3BsJywn
emgnLCdzdicsJ2FyJywndHInLCd1aycsJ2ZpJywnbm8nLCdjYScsJ3JvJywnaHUn
LCdrc2gnLCdpZCcsJ2hlJywnY3MnLCd2aScsJ2tvJywnc3InLCdmYScsJ2RhJywn
ZW8nLCdzaycsJ3RoJywnbHQnLCd2bycsJ2JnJywnc2wnLCdocicsJ2hpJywnZXQn
LCdtaycsJ3NpbXBsZScsJ25ldycsJ21zJywnbm4nLCdnbCcsJ2VsJywnZXUnLCdr
YScsJ3RsJywnYm4nLCdsdicsJ21sJywnYnMnLCd0ZScsJ2xhJywnYXonLCdzaCcs
J3dhcicsJ2JyJywnaXMnLCdtcicsJ2JlLXgtb2xkJywnc3EnLCdjeScsJ2xiJywn
dGEnLCd6aC1jbGFzc2ljYWwnLCdhbicsJ2p2JywnaHQnLCdvYycsJ2JweScsJ2Nl
YicsJ3VyJywnemgteXVlJywncG1zJywnc2NuJywnYmUnLCdyb2EtcnVwJywncXUn
LCdhZicsJ3N3JywnbmRzJywnZnknLCdsbW8nLCd3YScsJ2t1JywnaHknLCdzdScs
J3lpJywnaW8nLCdvcycsJ2dhJywnYXN0JywnbmFwJywndmVjJywnZ3UnLCdjdics
J2JhdC1zbWcnLCdrbicsJ3V6JywnemgtbWluLW5hbicsJ3NpJywnYWxzJywneW8n
LCdsaScsJ2dhbicsJ2FyeicsJ3NhaCcsJ3R0JywnYmFyJywnZ2QnLCd0ZycsJ2tr
JywncGFtJywnaHNiJywncm9hLXRhcmEnLCduYWgnLCdtbicsJ3ZscycsJ2d2Jywn
bWknLCdhbScsJ2lhJywnY28nLCduZScsJ2ZvJywnbmRzLW5sJywnZ2xrJywnbXQn
LCdhbmcnLCd3dXUnLCdkdicsJ2ttJywnc2NvJywnYmNsJywnbWcnLCdteScsJ2Rp
cScsJ3RrJywnc3psJywndWcnLCdmaXUtdnJvJywnc2MnLCdybScsJ25ybScsJ3Bz
JywnbnYnLCdoaWYnLCdibycsJ3NlJywnc2EnLCdwbmInLCdtYXAtYm1zJywnbGFk
JywnbGlqJywnY3JoJywnZnVyJywna3cnLCd0bycsJ3BhJywnamJvJywnYmEnLCdp
bG8nLCdjc2InLCd3bycsJ3hhbCcsJ2tyYycsJ2NrYicsJ3BhZycsJ2xuJywnZnJw
JywnbXpuJywnY2UnLCdub3YnLCdrdicsJ2VtbCcsJ2duJywna3knLCdwZGMnLCds
bycsJ2hhdycsJ21ocicsJ2RzYicsJ3N0cScsJ3RwaScsJ2FyYycsJ2hhaycsJ2ll
Jywnc28nLCdiaCcsJ2V4dCcsJ213bCcsJ3NkJywnaWcnLCdteXYnLCdheScsJ2l1
JywnbmEnLCdjdScsJ3BpJywna2wnLCd0eScsJ2xiZScsJ2FiJywnZ290Jywnc20n
LCdhcycsJ21vJywnZWUnLCd6ZWEnLCdhdicsJ2FjZScsJ2tnJywnYm0nLCdjZG8n
LCdjYmstemFtJywna2FiJywnb20nLCdjaHInLCdwYXAnLCd1ZG0nLCdrcycsJ3p1
Jywncm15JywnY3InLCdjaCcsJ3N0JywnaWsnLCdtZGYnLCdrYWEnLCdhYScsJ2Zq
Jywnc3JuJywndGV0Jywnb3InLCdwbnQnLCdidWcnLCdzcycsJ3RzJywncGNkJywn
cGloJywnemEnLCdzZycsJ2xnJywnYnhyJywneGgnLCdhaycsJ2hhJywnYmknLCd2
ZScsJ3RuJywnZmYnLCdkeicsJ3RpJywna2knLCdueScsJ3J3JywnY2h5JywndHcn
LCdzbicsJ3R1bScsJ25nJywncm4nLCdtaCcsJ2lpJywnY2hvJywnaHonLCdrcics
J2hvJywnbXVzJywna2onXTt2YXIgYWNjZXB0TGFuZ0Nvb2tpZT0kai5jb29raWUo
J2FjY2VwdC1sYW5ndWFnZScpO2lmKGFjY2VwdExhbmdDb29raWUhPW51bGwpe2lm
KGFjY2VwdExhbmdDb29raWUhPScnKXtsYW5ndWFnZXM9YWNjZXB0TGFuZ0Nvb2tp
ZS5zcGxpdCgnLCcpLmNvbmNhdChsYW5ndWFnZXMpO319ZWxzZXskai5nZXRKU09O
KHdnU2NyaXB0UGF0aCsnL2FwaS5waHA/YWN0aW9uPXF1ZXJ5Jm1ldGE9dXNlcmlu
Zm8mdWlwcm9wPWFjY2VwdGxhbmcmZm9ybWF0PWpzb24nLGZ1bmN0aW9uKGRhdGEp
e3ZhciBsYW5ncz1bXTtpZih0eXBlb2YgZGF0YS5xdWVyeSE9J3VuZGVmaW5lZCcm
JnR5cGVvZiBkYXRhLnF1ZXJ5LnVzZXJpbmZvIT0ndW5kZWZpbmVkJyYmdHlwZW9m
IGRhdGEucXVlcnkudXNlcmluZm8uYWNjZXB0bGFuZyE9J3VuZGVmaW5lZCcpe2Zv
cih2YXIgaj0wO2o8ZGF0YS5xdWVyeS51c2VyaW5mby5hY2NlcHRsYW5nLmxlbmd0
aDtqKyspe2lmKGRhdGEucXVlcnkudXNlcmluZm8uYWNjZXB0bGFuZ1tqXS5xIT0w
KXtsYW5ncy5wdXNoKGRhdGEucXVlcnkudXNlcmluZm8uYWNjZXB0bGFuZ1tqXVsn
KiddKTt9fX0KJGouY29va2llKCdhY2NlcHQtbGFuZ3VhZ2UnLGxhbmdzLmpvaW4o
JywnKSx7J3BhdGgnOicvJywnZXhwaXJlcyc6MzB9KTt9KTt9CnZhciAkcHJpbWFy
eT0kaignI3AtbGFuZyB1bC5wcmltYXJ5Jyk7dmFyICRzZWNvbmRhcnk9JGooJyNw
LWxhbmcgdWwuc2Vjb25kYXJ5Jyk7aWYoJHNlY29uZGFyeS5jaGlsZHJlbigpLmxl
bmd0aDxsaW1pdCt0aHJlc2hvbGQpe2xpbWl0Kz10aHJlc2hvbGQ7fQp2YXIgY291
bnQ9MDtmb3IodmFyIGk9MDtpPGxhbmd1YWdlcy5sZW5ndGg7aSsrKXt2YXIgJGxp
bms9JHNlY29uZGFyeS5maW5kKCcuaW50ZXJ3aWtpLScrbGFuZ3VhZ2VzW2ldKTtp
ZigkbGluay5sZW5ndGgpe2lmKGNvdW50Kys8bGltaXQpeyRsaW5rLmFwcGVuZFRv
KCRwcmltYXJ5KTt9ZWxzZXticmVhazt9fX0KaWYoY291bnQ8bGltaXQpeyRzZWNv
bmRhcnkuY2hpbGRyZW4oKS5lYWNoKGZ1bmN0aW9uKCl7aWYoY291bnQrKzxsaW1p
dCl7JGoodGhpcykuYXBwZW5kVG8oJHByaW1hcnkpO31lbHNle3JldHVybiBmYWxz
ZTt9fSk7fQppZigkc2Vjb25kYXJ5LmNoaWxkcmVuKCkubGVuZ3RoPT0wKXskc2Vj
b25kYXJ5LnJlbW92ZSgpO31lbHNleyRqKCcjcC1sYW5nJykuYWZ0ZXIoJzxkaXYg
aWQ9InAtbGFuZy1tb3JlIiBjbGFzcz0icG9ydGFsIj48aDU+PC9oNT48ZGl2IGNs
YXNzPSJib2R5Ij48L2Rpdj48L2Rpdj4nKTskaignI3AtbGFuZy1tb3JlIGg1Jyku
dGV4dChtdy51c2FiaWxpdHkuZ2V0TXNnKCd2ZWN0b3ItY29sbGFwc2libGVuYXYt
bW9yZScpKTskc2Vjb25kYXJ5LmFwcGVuZFRvKCRqKCcjcC1sYW5nLW1vcmUgZGl2
LmJvZHknKSk7fQokaignI3AtbGFuZycpLmFkZENsYXNzKCdwZXJzaXN0ZW50Jyk7
fQokaignI213LXBhbmVsID4gZGl2LnBvcnRhbDpmaXJzdCcpLmFkZENsYXNzKCdm
aXJzdCBwZXJzaXN0ZW50Jyk7JGooJyNtdy1wYW5lbCcpLmFkZENsYXNzKCdjb2xs
YXBzaWJsZS1uYXYnKTskaignI213LXBhbmVsID4gZGl2LnBvcnRhbDpub3QoLnBl
cnNpc3RlbnQpJykuZWFjaChmdW5jdGlvbihpKXt2YXIgaWQ9JGoodGhpcykuYXR0
cignaWQnKTt2YXIgc3RhdGU9JGouY29va2llKCd2ZWN0b3ItbmF2LScraWQpO2lm
KHN0YXRlPT0ndHJ1ZSd8fChzdGF0ZT09bnVsbCYmaTwxKXx8KHN0YXRlPT1udWxs
JiZ2ZXJzaW9uPT0xJiZpZD09J3AtbGFuZycpKXskaih0aGlzKS5hZGRDbGFzcygn
ZXhwYW5kZWQnKS5maW5kKCdkaXYuYm9keScpLnNob3coKTt9ZWxzZXskaih0aGlz
KS5hZGRDbGFzcygnY29sbGFwc2VkJyk7fQppZihzdGF0ZSE9bnVsbCl7JGouY29v
a2llKCd2ZWN0b3ItbmF2LScrJGoodGhpcykuYXR0cignaWQnKSxzdGF0ZSx7J2V4
cGlyZXMnOjMwLCdwYXRoJzonLyd9KTt9fSk7ZnVuY3Rpb24gdG9nZ2xlKCRlbGVt
ZW50KXskai5jb29raWUoJ3ZlY3Rvci1uYXYtJyskZWxlbWVudC5wYXJlbnQoKS5h
dHRyKCdpZCcpLCRlbGVtZW50LnBhcmVudCgpLmlzKCcuY29sbGFwc2VkJykseydl
eHBpcmVzJzozMCwncGF0aCc6Jy8nfSk7JGVsZW1lbnQucGFyZW50KCkudG9nZ2xl
Q2xhc3MoJ2V4cGFuZGVkJykudG9nZ2xlQ2xhc3MoJ2NvbGxhcHNlZCcpLmZpbmQo
J2Rpdi5ib2R5Jykuc2xpZGVUb2dnbGUoJ2Zhc3QnKTt9CnZhciAkaGVhZGluZ3M9
JGooJyNtdy1wYW5lbCA+IGRpdi5wb3J0YWw6bm90KC5wZXJzaXN0ZW50KSA+IGg1
Jyk7dmFyIHRhYkluZGV4PW13LnVzYWJpbGl0eS5nZXRNYXhUYWJJbmRleCgpKzE7
JGooJyNzZWFyY2hJbnB1dCcpLmF0dHIoJ3RhYmluZGV4Jyx0YWJJbmRleCsrKTsk
aGVhZGluZ3MuZWFjaChmdW5jdGlvbigpeyRqKHRoaXMpLmF0dHIoJ3RhYmluZGV4
Jyx0YWJJbmRleCsrKTt9KTskaGVhZGluZ3Mua2V5ZG93bihmdW5jdGlvbihldmVu
dCl7aWYoZXZlbnQud2hpY2g9PTEzfHxldmVudC53aGljaD09MzIpe3RvZ2dsZSgk
aih0aGlzKSk7fX0pLm1vdXNlZG93bihmdW5jdGlvbigpe3RvZ2dsZSgkaih0aGlz
KSk7JGoodGhpcykuYmx1cigpO3JldHVybiBmYWxzZTt9KTt9KTskaihkb2N1bWVu
dCkucmVhZHkoZnVuY3Rpb24oKXtpZighd2dWZWN0b3JFbmFibGVkTW9kdWxlcy5j
b2xsYXBzaWJsZXRhYnMpe3JldHVybiB0cnVlO30KdmFyIHJ0bD0kaignYm9keScp
LmlzKCcucnRsJyk7JGouY29sbGFwc2libGVUYWJzLm1vdmVUb0NvbGxhcHNlZD1m
dW5jdGlvbihlbGUpe3ZhciAkbW92aW5nPSRqKGVsZSk7JGouY29sbGFwc2libGVU
YWJzLmdldFNldHRpbmdzKCRqKCRqLmNvbGxhcHNpYmxlVGFicy5nZXRTZXR0aW5n
cygkbW92aW5nKS5leHBhbmRlZENvbnRhaW5lcikpLnNoaWZ0aW5nPXRydWU7dmFy
IGRhdGE9JGouY29sbGFwc2libGVUYWJzLmdldFNldHRpbmdzKCRtb3ZpbmcpO3Zh
ciB0YXJnZXQ9ZGF0YS5jb2xsYXBzZWRDb250YWluZXI7JG1vdmluZy5jc3MoInBv
c2l0aW9uIiwicmVsYXRpdmUiKS5jc3MoKHJ0bD8nbGVmdCc6J3JpZ2h0JyksMCku
YW5pbWF0ZSh7d2lkdGg6JzFweCd9LCJub3JtYWwiLGZ1bmN0aW9uKCl7JGoodGhp
cykuaGlkZSgpOyRqKCc8c3BhbiBjbGFzcz0icGxhY2Vob2xkZXIiIHN0eWxlPSJk
aXNwbGF5Om5vbmU7Ij48L3NwYW4+JykuaW5zZXJ0QWZ0ZXIodGhpcyk7JGoodGhp
cykucmVtb3ZlKCkucHJlcGVuZFRvKHRhcmdldCkuZGF0YSgnY29sbGFwc2libGVU
YWJzU2V0dGluZ3MnLGRhdGEpOyRqKHRoaXMpLmF0dHIoJ3N0eWxlJywnZGlzcGxh
eTpsaXN0LWl0ZW07Jyk7JGouY29sbGFwc2libGVUYWJzLmdldFNldHRpbmdzKCRq
KCRqLmNvbGxhcHNpYmxlVGFicy5nZXRTZXR0aW5ncygkaihlbGUpKS5leHBhbmRl
ZENvbnRhaW5lcikpLnNoaWZ0aW5nPWZhbHNlOyRqLmNvbGxhcHNpYmxlVGFicy5o
YW5kbGVSZXNpemUoKTt9KTt9OyRqLmNvbGxhcHNpYmxlVGFicy5tb3ZlVG9FeHBh
bmRlZD1mdW5jdGlvbihlbGUpe3ZhciAkbW92aW5nPSRqKGVsZSk7JGouY29sbGFw
c2libGVUYWJzLmdldFNldHRpbmdzKCRqKCRqLmNvbGxhcHNpYmxlVGFicy5nZXRT
ZXR0aW5ncygkbW92aW5nKS5leHBhbmRlZENvbnRhaW5lcikpLnNoaWZ0aW5nPXRy
dWU7dmFyIGRhdGE9JGouY29sbGFwc2libGVUYWJzLmdldFNldHRpbmdzKCRtb3Zp
bmcpO3ZhciAkdGFyZ2V0PSRqKGRhdGEuZXhwYW5kZWRDb250YWluZXIpLmZpbmQo
J3NwYW4ucGxhY2Vob2xkZXI6Zmlyc3QnKTt2YXIgZXhwYW5kZWRXaWR0aD1kYXRh
LmV4cGFuZGVkV2lkdGg7JG1vdmluZy5jc3MoInBvc2l0aW9uIiwicmVsYXRpdmUi
KS5jc3MoKHJ0bD8ncmlnaHQnOidsZWZ0JyksMCkuY3NzKCd3aWR0aCcsJzFweCcp
OyR0YXJnZXQucmVwbGFjZVdpdGgoJG1vdmluZy5yZW1vdmUoKS5jc3MoJ3dpZHRo
JywnMXB4JykuZGF0YSgnY29sbGFwc2libGVUYWJzU2V0dGluZ3MnLGRhdGEpLmFu
aW1hdGUoe3dpZHRoOmV4cGFuZGVkV2lkdGgrInB4In0sIm5vcm1hbCIsZnVuY3Rp
b24oKXskaih0aGlzKS5hdHRyKCdzdHlsZScsJ2Rpc3BsYXk6YmxvY2s7Jyk7JGou
Y29sbGFwc2libGVUYWJzLmdldFNldHRpbmdzKCRqKCRqLmNvbGxhcHNpYmxlVGFi
cy5nZXRTZXR0aW5ncygkbW92aW5nKS5leHBhbmRlZENvbnRhaW5lcikpLnNoaWZ0
aW5nPWZhbHNlOyRqLmNvbGxhcHNpYmxlVGFicy5oYW5kbGVSZXNpemUoKTt9KSk7
fTskaignI3Atdmlld3MgdWwnKS5iaW5kKCJiZWZvcmVUYWJDb2xsYXBzZSIsZnVu
Y3Rpb24oKXtpZigkaignI3AtY2FjdGlvbnMnKS5jc3MoJ2Rpc3BsYXknKT09J25v
bmUnKQokaigiI3AtY2FjdGlvbnMiKS5hZGRDbGFzcygiZmlsbGVkUG9ydGxldCIp
LnJlbW92ZUNsYXNzKCJlbXB0eVBvcnRsZXQiKS5maW5kKCdoNScpLmNzcygnd2lk
dGgnLCcxcHgnKS5hbmltYXRlKHsnd2lkdGgnOicyNnB4J30sMzkwKTt9KS5iaW5k
KCJiZWZvcmVUYWJFeHBhbmQiLGZ1bmN0aW9uKCl7aWYoJGooJyNwLWNhY3Rpb25z
IGxpJykubGVuZ3RoPT0xKQokaigiI3AtY2FjdGlvbnMgaDUiKS5hbmltYXRlKHsn
d2lkdGgnOicxcHgnfSwzNzAsZnVuY3Rpb24oKXskaih0aGlzKS5hdHRyKCdzdHls
ZScsJycpLnBhcmVudCgpLmFkZENsYXNzKCJlbXB0eVBvcnRsZXQiKS5yZW1vdmVD
bGFzcygiZmlsbGVkUG9ydGxldCIpO30pO30pLmNvbGxhcHNpYmxlVGFicyh7ZXhw
YW5kQ29uZGl0aW9uOmZ1bmN0aW9uKGVsZVdpZHRoKXtpZihydGwpe3JldHVybigk
aignI3JpZ2h0LW5hdmlnYXRpb24nKS5wb3NpdGlvbigpLmxlZnQrJGooJyNyaWdo
dC1uYXZpZ2F0aW9uJykud2lkdGgoKSsxKTwoJGooJyNsZWZ0LW5hdmlnYXRpb24n
KS5wb3NpdGlvbigpLmxlZnQtZWxlV2lkdGgpO31lbHNle3JldHVybigkaignI2xl
ZnQtbmF2aWdhdGlvbicpLnBvc2l0aW9uKCkubGVmdCskaignI2xlZnQtbmF2aWdh
dGlvbicpLndpZHRoKCkrMSk8KCRqKCcjcmlnaHQtbmF2aWdhdGlvbicpLnBvc2l0
aW9uKCkubGVmdC1lbGVXaWR0aCk7fX0sY29sbGFwc2VDb25kaXRpb246ZnVuY3Rp
b24oKXtpZihydGwpe3JldHVybigkaignI3JpZ2h0LW5hdmlnYXRpb24nKS5wb3Np
dGlvbigpLmxlZnQrJGooJyNyaWdodC1uYXZpZ2F0aW9uJykud2lkdGgoKSk+JGoo
JyNsZWZ0LW5hdmlnYXRpb24nKS5wb3NpdGlvbigpLmxlZnQ7fWVsc2V7cmV0dXJu
KCRqKCcjbGVmdC1uYXZpZ2F0aW9uJykucG9zaXRpb24oKS5sZWZ0KyRqKCcjbGVm
dC1uYXZpZ2F0aW9uJykud2lkdGgoKSk+JGooJyNyaWdodC1uYXZpZ2F0aW9uJyku
cG9zaXRpb24oKS5sZWZ0O319fSk7fSk7JGooZG9jdW1lbnQpLnJlYWR5KGZ1bmN0
aW9uKCl7aWYoIXdnVmVjdG9yRW5hYmxlZE1vZHVsZXMuZWRpdHdhcm5pbmd8fCRq
KCcjd3BUZXh0Ym94MScpLnNpemUoKT09MCl7cmV0dXJuIHRydWU7fQokaignI3dw
VGV4dGJveDEsICN3cFN1bW1hcnknKS5lYWNoKGZ1bmN0aW9uKCl7JGoodGhpcyku
ZGF0YSgnb3JpZ3RleHQnLCRqKHRoaXMpLnZhbCgpKTt9KTt2YXIgZmFsbGJhY2tX
aW5kb3dPbkJlZm9yZVVubG9hZD13aW5kb3cub25iZWZvcmV1bmxvYWQ7dmFyIG91
cldpbmRvd09uQmVmb3JlVW5sb2FkPWZ1bmN0aW9uKCl7dmFyIGZhbGxiYWNrUmVz
dWx0PXVuZGVmaW5lZDt2YXIgcmV0dmFsPXVuZGVmaW5lZDt2YXIgdGhpc0Z1bmM9
YXJndW1lbnRzLmNhbGxlZTtpZihmYWxsYmFja1dpbmRvd09uQmVmb3JlVW5sb2Fk
KXtmYWxsYmFja1Jlc3VsdD1mYWxsYmFja1dpbmRvd09uQmVmb3JlVW5sb2FkKCk7
fQppZihmYWxsYmFja1Jlc3VsdCE9PXVuZGVmaW5lZCl7cmV0dmFsPWZhbGxiYWNr
UmVzdWx0O31lbHNle2lmKHdnQWN0aW9uPT0nc3VibWl0J3x8JGooJyN3cFRleHRi
b3gxJykuZGF0YSgnb3JpZ3RleHQnKSE9JGooJyN3cFRleHRib3gxJykudmFsKCl8
fCRqKCcjd3BTdW1tYXJ5JykuZGF0YSgnb3JpZ3RleHQnKSE9JGooJyN3cFN1bW1h
cnknKS52YWwoKSl7cmV0dmFsPW13LnVzYWJpbGl0eS5nZXRNc2coJ3ZlY3Rvci1l
ZGl0d2FybmluZy13YXJuaW5nJyk7fX0Kd2luZG93Lm9uYmVmb3JldW5sb2FkPW51
bGw7aWYocmV0dmFsIT09dW5kZWZpbmVkKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7
d2luZG93Lm9uYmVmb3JldW5sb2FkPXRoaXNGdW5jO30pO3JldHVybiByZXR2YWw7
fX07dmFyIHBhZ2VTaG93SGFuZGxlcj1mdW5jdGlvbigpe3dpbmRvdy5vbmJlZm9y
ZXVubG9hZD1vdXJXaW5kb3dPbkJlZm9yZVVubG9hZDt9O3BhZ2VTaG93SGFuZGxl
cigpO2lmKHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKXt3aW5kb3cuYWRkRXZlbnRM
aXN0ZW5lcigncGFnZXNob3cnLHBhZ2VTaG93SGFuZGxlcixmYWxzZSk7fWVsc2Ug
aWYod2luZG93LmF0dGFjaEV2ZW50KXt3aW5kb3cuYXR0YWNoRXZlbnQoJ3BhZ2Vz
aG93JyxwYWdlU2hvd0hhbmRsZXIpO30KJGooJ2Zvcm0nKS5zdWJtaXQoZnVuY3Rp
b24oKXt3aW5kb3cub25iZWZvcmV1bmxvYWQ9ZmFsbGJhY2tXaW5kb3dPbkJlZm9y
ZVVubG9hZDt9KTt9KTt2YXIgZmFsbGJhY2tXaW5kb3dPbkJlZm9yZVVubG9hZD1u
dWxsO2lmKHdnVmVjdG9yRW5hYmxlZE1vZHVsZXMuc2ltcGxlc2VhcmNoJiZza2lu
PT0ndmVjdG9yJyYmdHlwZW9mIG9zX2F1dG9sb2FkX2lucHV0cyE9PSd1bmRlZmlu
ZWQnJiZvc19hdXRvbG9hZF9mb3JtcyE9PSd1bmRlZmluZWQnKXtvc19hdXRvbG9h
ZF9pbnB1dHM9W107b3NfYXV0b2xvYWRfZm9ybXM9W107fQokaihkb2N1bWVudCku
cmVhZHkoZnVuY3Rpb24oKXtpZighd2dWZWN0b3JFbmFibGVkTW9kdWxlcy5zaW1w
bGVzZWFyY2h8fHdnVmVjdG9yUHJlZmVyZW5jZXMuc2ltcGxlc2VhcmNoLmRpc2Fi
bGVzdWdnZXN0fHxza2luIT0ndmVjdG9yJyl7cmV0dXJuIHRydWU7fQp2YXIgbW9k
PXsnYnJvd3NlcnMnOnsnbHRyJzp7J29wZXJhJzpbWyc+PScsOS42XV0sJ2RvY29t
byc6ZmFsc2UsJ2JsYWNrYmVycnknOmZhbHNlLCdpcG9kJzpmYWxzZSwnaXBob25l
JzpmYWxzZX0sJ3J0bCc6eydvcGVyYSc6W1snPj0nLDkuNl1dLCdkb2NvbW8nOmZh
bHNlLCdibGFja2JlcnJ5JzpmYWxzZSwnaXBvZCc6ZmFsc2UsJ2lwaG9uZSc6ZmFs
c2V9fX07aWYoISRqLndpa2lFZGl0b3IuaXNTdXBwb3J0ZWQobW9kKSl7cmV0dXJu
IHRydWU7fQppZigncGxhY2Vob2xkZXInaW4gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgnaW5wdXQnKSl7JGooJ2RpdiNzaW1wbGVTZWFyY2ggPiBpbnB1dCNzZWFyY2hJ
bnB1dCcpLmF0dHIoJ3BsYWNlaG9sZGVyJyxtdy51c2FiaWxpdHkuZ2V0TXNnKCd2
ZWN0b3Itc2ltcGxlc2VhcmNoLXNlYXJjaCcpKTt9ZWxzZXskaignZGl2I3NpbXBs
ZVNlYXJjaCA+IGlucHV0I3NlYXJjaElucHV0JykuZWFjaChmdW5jdGlvbigpe3Zh
ciAkaW5wdXQ9JGoodGhpcyk7JGlucHV0LmJpbmQoJ2JsdXInLGZ1bmN0aW9uKCl7
aWYoJGlucHV0LnZhbCgpLmxlbmd0aD09MCl7JGlucHV0LnZhbChtdy51c2FiaWxp
dHkuZ2V0TXNnKCd2ZWN0b3Itc2ltcGxlc2VhcmNoLXNlYXJjaCcpKS5hZGRDbGFz
cygncGxhY2Vob2xkZXInKTt9fSkuYmluZCgnZm9jdXMnLGZ1bmN0aW9uKCl7aWYo
JGlucHV0Lmhhc0NsYXNzKCdwbGFjZWhvbGRlcicpKXskaW5wdXQudmFsKCcnKS5y
ZW1vdmVDbGFzcygncGxhY2Vob2xkZXInKTt9fSkucGFyZW50cygnZm9ybScpLmJp
bmQoJ3N1Ym1pdCcsZnVuY3Rpb24oKXskaW5wdXQudHJpZ2dlcignZm9jdXMnKTt9
KTtpZigkaW5wdXQudmFsKCk9PScnKXskaW5wdXQudHJpZ2dlcignYmx1cicpO319
KTt9CiRqKCcjc2VhcmNoSW5wdXQsICNzZWFyY2hJbnB1dDIsICNwb3dlclNlYXJj
aFRleHQsICNzZWFyY2hUZXh0Jykuc3VnZ2VzdGlvbnMoe2ZldGNoOmZ1bmN0aW9u
KHF1ZXJ5KXt2YXIgJHRoaXM9JGoodGhpcyk7dmFyIHJlcXVlc3Q9JGouYWpheCh7
dXJsOndnU2NyaXB0UGF0aCsnL2FwaS5waHAnLGRhdGE6eydhY3Rpb24nOidvcGVu
c2VhcmNoJywnc2VhcmNoJzpxdWVyeSwnbmFtZXNwYWNlJzowLCdzdWdnZXN0Jzon
J30sZGF0YVR5cGU6J2pzb24nLHN1Y2Nlc3M6ZnVuY3Rpb24oZGF0YSl7JHRoaXMu
c3VnZ2VzdGlvbnMoJ3N1Z2dlc3Rpb25zJyxkYXRhWzFdKTt9fSk7JGoodGhpcyku
ZGF0YSgncmVxdWVzdCcscmVxdWVzdCk7fSxjYW5jZWw6ZnVuY3Rpb24oKXt2YXIg
cmVxdWVzdD0kaih0aGlzKS5kYXRhKCdyZXF1ZXN0Jyk7aWYocmVxdWVzdCYmdHlw
ZW9mIHJlcXVlc3QuYWJvcnQ9PSdmdW5jdGlvbicpe3JlcXVlc3QuYWJvcnQoKTsk
aih0aGlzKS5yZW1vdmVEYXRhKCdyZXF1ZXN0Jyk7fX0scmVzdWx0OntzZWxlY3Q6
ZnVuY3Rpb24oJHRleHRib3gpeyR0ZXh0Ym94LmNsb3Nlc3QoJ2Zvcm0nKS5zdWJt
aXQoKTt9fSxkZWxheToxMjAscG9zaXRpb25Gcm9tTGVmdDokaignYm9keScpLmlz
KCcucnRsJyksaGlnaGxpZ2h0SW5wdXQ6dHJ1ZX0pLmJpbmQoJ3Bhc3RlIGN1dCcs
ZnVuY3Rpb24oZSl7JGoodGhpcykudHJpZ2dlcigna2V5cHJlc3MnKTt9KTskaign
I3NlYXJjaElucHV0Jykuc3VnZ2VzdGlvbnMoe3Jlc3VsdDp7c2VsZWN0OmZ1bmN0
aW9uKCR0ZXh0Ym94KXskdGV4dGJveC5jbG9zZXN0KCdmb3JtJykuc3VibWl0KCk7
fX0sc3BlY2lhbDp7cmVuZGVyOmZ1bmN0aW9uKHF1ZXJ5KXtpZigkaih0aGlzKS5j
aGlsZHJlbigpLnNpemUoKT09MCl7JGoodGhpcykuc2hvdygpCiRsYWJlbD0kaign
PGRpdiAvPicpLmFkZENsYXNzKCdzcGVjaWFsLWxhYmVsJykudGV4dChtdy51c2Fi
aWxpdHkuZ2V0TXNnKCd2ZWN0b3Itc2ltcGxlc2VhcmNoLWNvbnRhaW5pbmcnKSku
YXBwZW5kVG8oJGoodGhpcykpOyRxdWVyeT0kaignPGRpdiAvPicpLmFkZENsYXNz
KCdzcGVjaWFsLXF1ZXJ5JykudGV4dChxdWVyeSkuYXBwZW5kVG8oJGoodGhpcykp
OyRxdWVyeS5hdXRvRWxsaXBzaXMoKTt9ZWxzZXskaih0aGlzKS5maW5kKCcuc3Bl
Y2lhbC1xdWVyeScpLmVtcHR5KCkudGV4dChxdWVyeSkuYXV0b0VsbGlwc2lzKCk7
fX0sc2VsZWN0OmZ1bmN0aW9uKCR0ZXh0Ym94KXskdGV4dGJveC5jbG9zZXN0KCdm
b3JtJykuYXBwZW5kKCRqKCc8aW5wdXQgLz4nKS5hdHRyKHsndHlwZSc6J2hpZGRl
bicsJ25hbWUnOidmdWxsdGV4dCcsJ3ZhbHVlJzoxfSkpOyR0ZXh0Ym94LmNsb3Nl
c3QoJ2Zvcm0nKS5zdWJtaXQoKTt9fSwkcmVnaW9uOiRqKCcjc2ltcGxlU2VhcmNo
Jyl9KTt9KTs=
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=centralnotice.js
Content-Type: text/javascript; charset=utf-8; name=centralnotice.js
Content-Location: http://upload.wikimedia.org/centralnotice/wikipedia/es/centralnotice.js?283r
Content-Transfer-Encoding: 8bit
function toggleNotice() {
var notice = document.getElementById('centralNotice');
if (!wgNoticeToggleState) {
notice.className = notice.className.replace('collapsed', 'expanded');
toggleNoticeCookie('0');
} else {
notice.className = notice.className.replace('expanded', 'collapsed');
toggleNoticeCookie('1');
}
wgNoticeToggleState = !wgNoticeToggleState;
}
function toggleNoticeStyle(elems, display) {
if(elems)
for(var i=0;i' + wgNotice+'';
------------593EbJThBn2TVX69B2Huu6
Content-Disposition: inline; filename=index.js
Content-Type: text/javascript; charset=UTF-8; name=index.js
Content-Location: http://es.wikipedia.org/w/index.php?title=-&action=raw&gen=js&useskin=vector&283r
Content-Transfer-Encoding: 8bit
/* generated javascript */
var skin = 'vector';
var stylepath = 'http://bits.wikimedia.org/skins-1.5';
/* MediaWiki:Common.js */
window.hitos = [];
function hito(nombre) {
window.hitos.push([nombre, new Date().getTime()]);
}
hito("C Common.js");
/*
* Description: Redirects from /User:UserName/skin.js or .css to the user's actual skin page
* Maintainer: Cacycle
*/
if (wgArticleId == 0 && wgUserName) {
var slash = wgPageName.indexOf('/');
var norm = wgPageName.substr(0, slash) + wgPageName.substr(slash).toLowerCase();
var test = 'Usuario:' + wgUserName.replace(/ /g, '_') + '/skin.';
var ext = null;
if (norm == test + 'js') ext = 'js';
else if (norm == test + 'css') ext = 'css';
if (ext != null) window.location.href = window.location.href.replace(/\/skin.(css|js)/i, '/' + skin + '.' + ext);
}
/** Execute function on page load *********************************************
*
* Description: Wrapper around addOnloadHook() for backwards compatibility.
* Will be removed in the near future.
* Maintainers: [[User:R. Koot]]
*/
function addLoadEvent( f ) { addOnloadHook( f ); }
/* Test if an element has a certain class **************************************
*
* Description: Uses regular expressions and caching for better performance.
* Maintainers: [[User:Mike Dillon]], [[User:R. Koot]], [[User:SG]]
*/
var hasClass = (function () {
var reCache = {};
return function (element, className) {
return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
};
})();
/** Internet Explorer bug fix **************************************************
*
* Description: UNDOCUMENTED
* Maintainers: [[User:Tom-]]?
*/
if (window.showModalDialog && document.compatMode)
{
var oldWidth;
var docEl = document.documentElement;
function fixIEScroll()
{
if (!oldWidth || docEl.clientWidth > oldWidth)
doFixIEScroll();
else
setTimeout(doFixIEScroll, 1);
oldWidth = docEl.clientWidth;
}
function doFixIEScroll() {
docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth < 4) ? "hidden" : "";
}
try {
document.attachEvent("onreadystatechange", fixIEScroll);
attachEvent("onresize", fixIEScroll);
}
catch(e) { }
}
//fix edit summary prompt for undo
//this code fixes the fact that the undo function combined with the "no edit summary prompter" causes problems if leaving the
//edit summary unchanged
//this was added by [[User:Deskana]], code by [[User:Tra]]
addOnloadHook(function () {
if (document.location.search.indexOf("undo=") != -1
&& document.getElementsByName('wpAutoSummary')[0]) {
document.getElementsByName('wpAutoSummary')[0].value='';
}
})
/*
== Búsqueda especial extendida (specialsearch) ==
Añade a la página [[Special:Search]] enlaces a buscadores externos como Yahoo, Google, MSN Live y Exalead.
Trabaja en conjunto con el módulo [[MediaWiki:SpecialSearch.js]] y está basado en [[w:fr:MediaWiki:Monobook.js]].
*/
addOnloadHook( function() {
if ((wgCanonicalNamespace == "Special") && (wgCanonicalSpecialPageName == "Search"))
importScript('MediaWiki:SpecialSearch.js');
} );
/*
== Cerrar mensajes ==
Ver ejemplo en [[Usuario:Chabacano/FÃrmalo]], por [[Usuario:Platonides]].
*/
addOnloadHook( function() {
hito("C cerrar mensajes");
if (document.getElementById("cierraPadre")) {
document.getElementById("cierraPadre").childNodes[0].onclick= function () {
document.getElementById("cierraPadre").style.cursor = 'pointer';
document.getElementById("cierraPadre").parentNode.style.display = 'none';
return false; /*no seguir el href*/}
}
hito("F cerrar mensajes");
});
/*
== Scripts sólo para biblios ==
*/
function userInGroup(group) {
return (wgUserGroups && (('|' + wgUserGroups.join('|') + '|').indexOf('|' + group + '|') != -1));
}
if (userInGroup('sysop')) importScript("MediaWiki:Sysop.js");
/*
== Wikimedia Player ==
Añade reproductor en la misma página.
*/
document.write('');
// == Mejoras de diseño de la Portada ==
/** Mejoras de diseño de la Portada *********************************************************
*
* Descripción: Varias mejoras de diseño para la portada, incluyendo un
* enlace adicional a la lista completa de idiomas disponibles.
* Adaptado de [[en:MediaWiki:Common.js]]
*/
function mainPageAppendCompleteListLink() {
hito("C mainPageAppendCompleteListLink");
try {
var node = document.getElementById( "p-lang" )
.getElementsByTagName('div')[0]
.getElementsByTagName('ul')[0];
var aNode = document.createElement( 'a' );
var liNode = document.createElement( 'li' );
aNode.appendChild( document.createTextNode( 'Lista completa' ) );
aNode.setAttribute( 'href' , 'http://meta.wikimedia.org/wiki/Lista_de_Wikipedias' );
liNode.appendChild( aNode );
liNode.style.fontWeight = 'bold';
node.appendChild( liNode );
} catch(e) {
// lets just ignore what's happened
//return;
}
hito("F mainPageAppendCompleteListLink");
}
if ( wgPageName == "Wikipedia:Portada" ) {
addOnloadHook( mainPageAppendCompleteListLink );
}
// == Redefinición de ordenación de tablas "sortable" ==
// Traido de la Inclopedia. Ordena nombres de meses en español y cambia puntos por comas.
function ts_resortTable(lnk) {
// get the span
var span = lnk.getElementsByTagName('span')[0];
var td = lnk.parentNode;
var tr = td.parentNode;
var column = td.cellIndex;
var table = tr.parentNode;
while (table && !(table.tagName && table.tagName.toLowerCase() == 'table'))
table = table.parentNode;
if (!table) return;
if (table.rows.length <= 1) return;
// Generate the number transform table if it's not done already
if (ts_number_transform_table == null) {
ts_initTransformTable();
}
// Work out a type for the column
// Skip the first row if that's where the headings are
var rowStart = (table.tHead && table.tHead.rows.length > 0 ? 0 : 1);
var itm = "";
for (var i = rowStart; i < table.rows.length; i++) {
if (table.rows[i].cells.length > column) {
itm = ts_getInnerText(table.rows[i].cells[column]);
itm = itm.replace(/^[\s\xa0]+/, "").replace(/[\s\xa0]+$/, "");
if (itm != "") break;
}
}
// TODO: bug 8226, localised date formats
var sortfn = ts_sort_generic;
var preprocessor = ts_toLowerCase;
if (/\d\d? de [a-zA-Z]+ de \d+$/.test(itm)) {
preprocessor = ts_dateToSortKey;
} else if (/^\d\d[\/.-]\d\d[\/.-]\d\d\d\d$/.test(itm)) {
preprocessor = ts_dateToSortKey;
} else if (/^\d\d[\/.-]\d\d[\/.-]\d\d$/.test(itm)) {
preprocessor = ts_dateToSortKey;
// pound dollar euro yen currency cents
} else if (/(^[\u00a3$\u20ac\u00a4\u00a5]|\u00a2$)/.test(itm)) {
preprocessor = ts_currencyToSortKey;
} else if (ts_number_regex.test(itm)) {
preprocessor = ts_parseFloat;
}
var reverse = (span.getAttribute("sortdir") == 'down');
var newRows = new Array();
var staticRows = new Array();
for (var j = rowStart; j < table.rows.length; j++) {
var row = table.rows[j];
if((" "+row.className+" ").indexOf(" unsortable ") < 0) {
var keyText = ts_getInnerText(row.cells[column]);
var oldIndex = (reverse ? -j : j);
var preprocessed = preprocessor( keyText );
newRows[newRows.length] = new Array(row, preprocessed, oldIndex);
} else staticRows[staticRows.length] = new Array(row, false, j-rowStart);
}
newRows.sort(sortfn);
var arrowHTML;
if (reverse) {
arrowHTML = '';
newRows.reverse();
span.setAttribute('sortdir','up');
} else {
arrowHTML = '';
span.setAttribute('sortdir','down');
}
for (var i = 0; i < staticRows.length; i++) {
var row = staticRows[i];
newRows.splice(row[2], 0, row);
}
// We appendChild rows that already exist to the tbody, so it moves them rather than creating new ones
// don't do sortbottom rows
for (var i = 0; i < newRows.length; i++) {
if ((" "+newRows[i][0].className+" ").indexOf(" sortbottom ") == -1)
table.tBodies[0].appendChild(newRows[i][0]);
}
// do sortbottom rows only
for (var i = 0; i < newRows.length; i++) {
if ((" "+newRows[i][0].className+" ").indexOf(" sortbottom ") != -1)
table.tBodies[0].appendChild(newRows[i][0]);
}
// Delete any other arrows there may be showing
var spans = getElementsByClassName(tr, "span", "sortarrow");
for (var i = 0; i < spans.length; i++) {
spans[i].innerHTML = '';
}
span.innerHTML = arrowHTML;
if (ts_alternate_row_colors) {
ts_alternate(table);
}
}
function ts_dateToSortKey(date) {
if (date.length > 14) {
date = date.toLowerCase();
if (date.charAt(1) == " " || date.charAt(1) == "-") {
var dia = '0' + date.charAt(0);
} else {
var dia = date.substr(0, 2);
}
var iniciomes = date.indexOf(" de ") + 4;
var finmes = date.lastIndexOf(" de ");
var longmes = finmes - iniciomes;
switch (date.substr(iniciomes, longmes)) {
case "enero": var mes = "01"; break;
case "febrero": var mes = "02"; break;
case "marzo": var mes = "03"; break;
case "abril": var mes = "04"; break;
case "mayo": var mes = "05"; break;
case "junio": var mes = "06"; break;
case "julio": var mes = "07"; break;
case "agosto": var mes = "08"; break;
case "septiembre": var mes = "09"; break;
case "octubre": var mes = "10"; break;
case "noviembre": var mes = "11"; break;
case "diciembre": var mes = "12"; break;
}
for (var anno = date.substr(finmes + 4); anno.length < 4; anno = '0' + anno);
return anno + mes + dia;
} else if (date.length == 10) {
if (ts_europeandate == false) {
return date.substr(6,4)+date.substr(0,2)+date.substr(3,2);
} else {
return date.substr(6,4)+date.substr(3,2)+date.substr(0,2);
}
} else if (date.length == 8) {
yr = date.substr(6,2);
if (parseInt(yr) < 50) {
yr = '20'+yr;
} else {
yr = '19'+yr;
}
if (ts_europeandate == true) {
return yr+date.substr(3,2)+date.substr(0,2);
} else {
return yr+date.substr(0,2)+date.substr(3,2);
}
}
return "00000000";
}
function ts_parseFloat(num) {
if (!num) return 0;
num = num.replace(/\./g, "");
num = num.replace(/,/, ".");
num = parseFloat(num);
return (isNaN(num) ? 0 : num);
}
function ts_sort_generic(a,b) {
if ( (typeof a[1] == "string") && (typeof b[1] == "string") ) {
/* Don't do this if it's eg. 'number'. We don't want that and number doesn't have .toLowerCase() */
var aa = a[1].toLowerCase();
var bb = b[1].toLowerCase();
return(aa.localeCompare(bb));
} else {
return a[1] < b[1] ? -1 : a[1] > b[1] ? 1 : a[2] - b[2]; //Original ts_sort_generic
}
}
var wma_settings =
{
buttonImage: "http://upload.wikimedia.org/wikipedia/commons/thumb/9/9a/Erioll_world.svg/15px-Erioll_world.svg.png"
}
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
var autoCollapse = 2;
var collapseCaption = "ocultar";
var expandCaption = "mostrar";
function collapseTable( tableIndex )
{
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = "none";
}
Button.firstChild.data = expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
}
function createCollapseButtons()
{
hito("C createCollapseButtons");
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
for ( var i = 0; i < Tables.length; i++ ) {
if ( hasClass( Tables[i], "collapsible" ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
if (!HeaderRow) continue;
var Header = HeaderRow.getElementsByTagName( "th" )[0];
if (!Header) continue;
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( "[" ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( "]" ) );
Header.insertBefore( Button, Header.childNodes[0] );
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
collapseTable( i );
}
}
hito("F createCollapseButtons");
}
addOnloadHook( createCollapseButtons );
// == Código del plegado/desplegado de plantillas ==
var NavigationBarHide = 'Plegar';
var NavigationBarShow = 'Desplegar';
var NavigationBarShowDefault = 0;
document.write('